@rabbi696/ezrouter 0.5.91 → 0.5.93

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 (898) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +3 -2
  3. package/app/.next-cli-build/build-manifest.json +2 -2
  4. package/app/.next-cli-build/routes-manifest.json +6 -0
  5. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +2 -2
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/convoy/page.js +2 -2
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/convoy/page_client-reference-manifest.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/error-log/page.js +2 -2
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/error-log/page_client-reference-manifest.js +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-health/page.js +2 -2
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-health/page_client-reference-manifest.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  57. package/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  58. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  59. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  60. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  61. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  62. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  63. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  64. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  65. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  66. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  67. package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  68. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  69. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  70. package/app/.next-cli-build/server/app/_not-found.rsc +3 -3
  71. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
  72. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  73. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +3 -3
  74. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  75. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  76. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  77. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  78. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  79. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  80. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  81. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  82. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
  83. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js +1 -1
  84. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js +1 -1
  85. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js +1 -1
  86. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js +2 -2
  87. package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  88. package/app/.next-cli-build/server/app/api/changelog/route.js +1 -1
  89. package/app/.next-cli-build/server/app/api/cli/providers/codex/route.js +1 -1
  90. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +1 -1
  91. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  92. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  93. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  94. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  95. package/app/.next-cli-build/server/app/api/cli-tools/codex-native/models/route.js +1 -1
  96. package/app/.next-cli-build/server/app/api/cli-tools/codex-native/readiness/route.js +2 -2
  97. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +2 -2
  98. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  99. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  100. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  101. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  102. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  103. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +2 -2
  104. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  105. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +1 -1
  106. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  107. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  108. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  109. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  110. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  111. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +1 -1
  112. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  113. package/app/.next-cli-build/server/app/api/combos/[id]/test/route.js +1 -1
  114. package/app/.next-cli-build/server/app/api/combos/export/route.js +1 -1
  115. package/app/.next-cli-build/server/app/api/combos/import/route.js +1 -1
  116. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  117. package/app/.next-cli-build/server/app/api/combos/test/route.js +1 -1
  118. package/app/.next-cli-build/server/app/api/convoy/rules/route.js +1 -1
  119. package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  120. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  121. package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  122. package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  123. package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  124. package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  125. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  126. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  127. package/app/.next-cli-build/server/app/api/internal/codex-native/lease/[action]/route.js +1 -1
  128. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  129. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  130. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  131. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
  132. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  133. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  134. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  135. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  136. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  137. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  138. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  139. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  140. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  141. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  142. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  143. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  144. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  145. package/app/.next-cli-build/server/app/api/oauth/callback/route.js +1 -0
  146. package/app/.next-cli-build/server/app/api/oauth/callback/route.js.nft.json +1 -0
  147. package/app/.next-cli-build/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -0
  148. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  149. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  150. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  151. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  152. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  153. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  154. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  155. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  156. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  157. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  158. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  159. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  160. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  161. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  162. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  163. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  164. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  165. package/app/.next-cli-build/server/app/api/providers/[id]/refresh-profile/route.js +1 -1
  166. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  167. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  168. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  169. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  170. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  171. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  172. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  173. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  174. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  175. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  176. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  177. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  178. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  179. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  180. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  181. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  182. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +1 -1
  183. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
  184. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  185. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  186. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  187. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  188. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  189. package/app/.next-cli-build/server/app/api/routing-health/route.js +1 -1
  190. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  191. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  192. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  194. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  195. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  196. package/app/.next-cli-build/server/app/api/token-saver/stats/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/token-saver/stream/route.js +2 -2
  198. package/app/.next-cli-build/server/app/api/tool-disclosure/stats/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  200. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  201. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  202. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  203. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  204. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  205. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  206. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  207. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  208. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  209. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  210. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  211. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  212. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  213. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  214. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  215. package/app/.next-cli-build/server/app/api/usage/error-logs/route.js +2 -2
  216. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  217. package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  218. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  219. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  220. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  221. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  222. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  223. package/app/.next-cli-build/server/app/api/v1/alpha/search/route.js +1 -1
  224. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  225. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  226. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  228. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/v1/codex/alpha/search/route.js +1 -1
  230. package/app/.next-cli-build/server/app/api/v1/codex/images/edits/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/v1/codex/images/generations/route.js +1 -1
  232. package/app/.next-cli-build/server/app/api/v1/codex/memories/trace_summarize/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/v1/codex/models/route.js +1 -1
  234. package/app/.next-cli-build/server/app/api/v1/codex/responses/compact/route.js +1 -1
  235. package/app/.next-cli-build/server/app/api/v1/codex/responses/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  237. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  238. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  240. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  241. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  242. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  243. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  244. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  245. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  246. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  247. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  248. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  249. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  250. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  251. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  252. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  253. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  254. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  255. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  256. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  257. package/app/.next-cli-build/server/app/callback/page.js +2 -2
  258. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  259. package/app/.next-cli-build/server/app/callback.html +1 -1
  260. package/app/.next-cli-build/server/app/callback.rsc +4 -4
  261. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  262. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  263. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +3 -3
  264. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  265. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
  266. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  267. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  268. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
  269. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  270. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  271. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  272. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  273. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
  274. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  275. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
  276. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  277. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  278. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
  279. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  280. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  281. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  282. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  283. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
  284. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  285. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  286. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  287. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  288. package/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
  289. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  290. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  291. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  292. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  293. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
  294. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  295. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  296. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  297. package/app/.next-cli-build/server/app/dashboard/convoy.html +1 -1
  298. package/app/.next-cli-build/server/app/dashboard/convoy.rsc +5 -5
  299. package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk/dashboard/convoy/__PAGE__.segment.rsc +2 -2
  300. package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk/dashboard/convoy.segment.rsc +1 -1
  301. package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  302. package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  303. package/app/.next-cli-build/server/app/dashboard/convoy.segments/_full.segment.rsc +5 -5
  304. package/app/.next-cli-build/server/app/dashboard/convoy.segments/_head.segment.rsc +1 -1
  305. package/app/.next-cli-build/server/app/dashboard/convoy.segments/_index.segment.rsc +3 -3
  306. package/app/.next-cli-build/server/app/dashboard/convoy.segments/_tree.segment.rsc +1 -1
  307. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  308. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
  309. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  310. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  311. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  312. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  313. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
  314. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  315. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  316. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  317. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  318. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
  319. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  320. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  321. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  322. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  323. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  324. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
  325. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  326. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +3 -3
  327. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  328. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  329. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
  330. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  331. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  332. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  333. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  334. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
  335. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  336. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
  337. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  338. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  339. package/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
  340. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  341. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  342. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  343. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  344. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
  345. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  346. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  347. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  348. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  349. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
  350. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  351. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  352. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  353. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  354. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  355. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  356. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  357. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  358. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  359. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  360. package/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
  361. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  362. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  363. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  364. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  365. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  366. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  367. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  368. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  369. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  370. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
  371. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  372. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  373. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  374. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  375. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
  376. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  377. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
  378. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  379. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  380. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
  381. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
  382. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
  383. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  384. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  385. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
  386. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
  387. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +3 -3
  388. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
  389. package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  390. package/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
  391. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  392. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  393. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  394. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  395. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  396. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  397. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
  398. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  399. package/app/.next-cli-build/server/app/dashboard/routing-health.html +1 -1
  400. package/app/.next-cli-build/server/app/dashboard/routing-health.rsc +5 -5
  401. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk/dashboard/routing-health/__PAGE__.segment.rsc +2 -2
  402. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk/dashboard/routing-health.segment.rsc +1 -1
  403. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  404. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  405. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_full.segment.rsc +5 -5
  406. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_head.segment.rsc +1 -1
  407. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_index.segment.rsc +3 -3
  408. package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_tree.segment.rsc +1 -1
  409. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  410. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  411. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  412. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
  413. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
  414. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  415. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  416. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  417. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  418. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  419. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  420. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  421. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  422. package/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
  423. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  424. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  425. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  426. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  427. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
  428. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  429. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +3 -3
  430. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  431. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  432. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
  433. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  434. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  435. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  436. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  437. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
  438. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  439. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +3 -3
  440. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  441. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  442. package/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
  443. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  444. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  445. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  446. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  447. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  448. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  449. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  450. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  451. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  452. package/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
  453. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  454. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  455. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  456. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  457. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
  458. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  459. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  460. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  461. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  462. package/app/.next-cli-build/server/app/dashboard.rsc +5 -5
  463. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  464. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  465. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  466. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
  467. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  468. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +3 -3
  469. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  470. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  471. package/app/.next-cli-build/server/app/index.html +1 -1
  472. package/app/.next-cli-build/server/app/index.rsc +3 -3
  473. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  474. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
  475. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  476. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +3 -3
  477. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  478. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  479. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  480. package/app/.next-cli-build/server/app/landing.html +1 -1
  481. package/app/.next-cli-build/server/app/landing.rsc +3 -3
  482. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
  483. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  484. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +3 -3
  485. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  486. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  487. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  488. package/app/.next-cli-build/server/app/login/page.js +2 -2
  489. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  490. package/app/.next-cli-build/server/app/login.html +1 -1
  491. package/app/.next-cli-build/server/app/login.rsc +4 -4
  492. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
  493. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  494. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +3 -3
  495. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  496. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  497. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  498. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  499. package/app/.next-cli-build/server/app/page.js +2 -2
  500. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  501. package/app/.next-cli-build/server/app-paths-manifest.json +3 -2
  502. package/app/.next-cli-build/server/chunks/412.js +1 -1
  503. package/app/.next-cli-build/server/chunks/4123.js +1 -1
  504. package/app/.next-cli-build/server/chunks/476.js +1 -1
  505. package/app/.next-cli-build/server/chunks/5615.js +2 -2
  506. package/app/.next-cli-build/server/chunks/5767.js +1 -1
  507. package/app/.next-cli-build/server/chunks/7456.js +1 -1
  508. package/app/.next-cli-build/server/chunks/7591.js +1 -1
  509. package/app/.next-cli-build/server/chunks/7775.js +1 -1
  510. package/app/.next-cli-build/server/chunks/8251.js +2 -2
  511. package/app/.next-cli-build/server/chunks/8901.js +1 -1
  512. package/app/.next-cli-build/server/chunks/921.js +1 -1
  513. package/app/.next-cli-build/server/chunks/9212.js +1 -1
  514. package/app/.next-cli-build/server/chunks/9489.js +1 -1
  515. package/app/.next-cli-build/server/chunks/9998.js +1 -1
  516. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  517. package/app/.next-cli-build/server/pages/404.html +1 -1
  518. package/app/.next-cli-build/server/pages/500.html +1 -1
  519. package/app/.next-cli-build/static/VHMm9HLeUVCQCF2x_3Z-B/_buildManifest.js +1 -0
  520. package/app/.next-cli-build/static/chunks/{1321-e8782f6e41fa5fdc.js → 1321-4aebb5633e0c0688.js} +1 -1
  521. package/app/.next-cli-build/static/chunks/{5497-30c2637cfca081d3.js → 5497-32f6787aab00b2fe.js} +3 -3
  522. package/app/.next-cli-build/static/chunks/app/_global-error/page-27e63c5064200d37.js +1 -0
  523. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-27e63c5064200d37.js +1 -0
  524. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-27e63c5064200d37.js +1 -0
  525. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-27e63c5064200d37.js +1 -0
  526. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-27e63c5064200d37.js +1 -0
  527. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-27e63c5064200d37.js +1 -0
  528. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-27e63c5064200d37.js +1 -0
  529. package/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-27e63c5064200d37.js +1 -0
  530. package/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-27e63c5064200d37.js +1 -0
  531. package/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-27e63c5064200d37.js +1 -0
  532. package/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-27e63c5064200d37.js +1 -0
  533. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-27e63c5064200d37.js +1 -0
  534. package/app/.next-cli-build/static/chunks/app/api/changelog/route-27e63c5064200d37.js +1 -0
  535. package/app/.next-cli-build/static/chunks/app/api/cli/providers/codex/route-27e63c5064200d37.js +1 -0
  536. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-27e63c5064200d37.js +1 -0
  537. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-27e63c5064200d37.js +1 -0
  538. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-27e63c5064200d37.js +1 -0
  539. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-27e63c5064200d37.js +1 -0
  540. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-27e63c5064200d37.js +1 -0
  541. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-native/models/route-27e63c5064200d37.js +1 -0
  542. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-native/readiness/route-27e63c5064200d37.js +1 -0
  543. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-27e63c5064200d37.js +1 -0
  544. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-27e63c5064200d37.js +1 -0
  545. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-27e63c5064200d37.js +1 -0
  546. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-27e63c5064200d37.js +1 -0
  547. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-27e63c5064200d37.js +1 -0
  548. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-27e63c5064200d37.js +1 -0
  549. package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-27e63c5064200d37.js +1 -0
  550. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-27e63c5064200d37.js +1 -0
  551. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-27e63c5064200d37.js +1 -0
  552. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-27e63c5064200d37.js +1 -0
  553. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-27e63c5064200d37.js +1 -0
  554. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-27e63c5064200d37.js +1 -0
  555. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-27e63c5064200d37.js +1 -0
  556. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-27e63c5064200d37.js +1 -0
  557. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-27e63c5064200d37.js +1 -0
  558. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-27e63c5064200d37.js +1 -0
  559. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/test/route-27e63c5064200d37.js +1 -0
  560. package/app/.next-cli-build/static/chunks/app/api/combos/export/route-27e63c5064200d37.js +1 -0
  561. package/app/.next-cli-build/static/chunks/app/api/combos/import/route-27e63c5064200d37.js +1 -0
  562. package/app/.next-cli-build/static/chunks/app/api/combos/route-27e63c5064200d37.js +1 -0
  563. package/app/.next-cli-build/static/chunks/app/api/combos/test/route-27e63c5064200d37.js +1 -0
  564. package/app/.next-cli-build/static/chunks/app/api/convoy/rules/route-27e63c5064200d37.js +1 -0
  565. package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-27e63c5064200d37.js +1 -0
  566. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-27e63c5064200d37.js +1 -0
  567. package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-27e63c5064200d37.js +1 -0
  568. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-27e63c5064200d37.js +1 -0
  569. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-27e63c5064200d37.js +1 -0
  570. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-27e63c5064200d37.js +1 -0
  571. package/app/.next-cli-build/static/chunks/app/api/health/route-27e63c5064200d37.js +1 -0
  572. package/app/.next-cli-build/static/chunks/app/api/init/route-27e63c5064200d37.js +1 -0
  573. package/app/.next-cli-build/static/chunks/app/api/internal/codex-native/lease/[action]/route-27e63c5064200d37.js +1 -0
  574. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-27e63c5064200d37.js +1 -0
  575. package/app/.next-cli-build/static/chunks/app/api/keys/route-27e63c5064200d37.js +1 -0
  576. package/app/.next-cli-build/static/chunks/app/api/locale/route-27e63c5064200d37.js +1 -0
  577. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-27e63c5064200d37.js +1 -0
  578. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-27e63c5064200d37.js +1 -0
  579. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-27e63c5064200d37.js +1 -0
  580. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-27e63c5064200d37.js +1 -0
  581. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-27e63c5064200d37.js +1 -0
  582. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-27e63c5064200d37.js +1 -0
  583. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-27e63c5064200d37.js +1 -0
  584. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-27e63c5064200d37.js +1 -0
  585. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-27e63c5064200d37.js +1 -0
  586. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-27e63c5064200d37.js +1 -0
  587. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-27e63c5064200d37.js +1 -0
  588. package/app/.next-cli-build/static/chunks/app/api/models/route-27e63c5064200d37.js +1 -0
  589. package/app/.next-cli-build/static/chunks/app/api/models/test/route-27e63c5064200d37.js +1 -0
  590. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-27e63c5064200d37.js +1 -0
  591. package/app/.next-cli-build/static/chunks/app/api/oauth/callback/route-27e63c5064200d37.js +1 -0
  592. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-27e63c5064200d37.js +1 -0
  593. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-27e63c5064200d37.js +1 -0
  594. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-27e63c5064200d37.js +1 -0
  595. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-27e63c5064200d37.js +1 -0
  596. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-27e63c5064200d37.js +1 -0
  597. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-27e63c5064200d37.js +1 -0
  598. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-27e63c5064200d37.js +1 -0
  599. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-27e63c5064200d37.js +1 -0
  600. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-27e63c5064200d37.js +1 -0
  601. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-27e63c5064200d37.js +1 -0
  602. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-27e63c5064200d37.js +1 -0
  603. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-27e63c5064200d37.js +1 -0
  604. package/app/.next-cli-build/static/chunks/app/api/pricing/route-27e63c5064200d37.js +1 -0
  605. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-27e63c5064200d37.js +1 -0
  606. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-27e63c5064200d37.js +1 -0
  607. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-27e63c5064200d37.js +1 -0
  608. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-27e63c5064200d37.js +1 -0
  609. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/refresh-profile/route-27e63c5064200d37.js +1 -0
  610. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-27e63c5064200d37.js +1 -0
  611. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-27e63c5064200d37.js +1 -0
  612. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-27e63c5064200d37.js +1 -0
  613. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-27e63c5064200d37.js +1 -0
  614. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-27e63c5064200d37.js +1 -0
  615. package/app/.next-cli-build/static/chunks/app/api/providers/route-27e63c5064200d37.js +1 -0
  616. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-27e63c5064200d37.js +1 -0
  617. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-27e63c5064200d37.js +1 -0
  618. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-27e63c5064200d37.js +1 -0
  619. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-27e63c5064200d37.js +1 -0
  620. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-27e63c5064200d37.js +1 -0
  621. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-27e63c5064200d37.js +1 -0
  622. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-27e63c5064200d37.js +1 -0
  623. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-27e63c5064200d37.js +1 -0
  624. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-27e63c5064200d37.js +1 -0
  625. package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-27e63c5064200d37.js +1 -0
  626. package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-27e63c5064200d37.js +1 -0
  627. package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-27e63c5064200d37.js +1 -0
  628. package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-27e63c5064200d37.js +1 -0
  629. package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-27e63c5064200d37.js +1 -0
  630. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-27e63c5064200d37.js +1 -0
  631. package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-27e63c5064200d37.js +1 -0
  632. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-27e63c5064200d37.js +1 -0
  633. package/app/.next-cli-build/static/chunks/app/api/routing-health/route-27e63c5064200d37.js +1 -0
  634. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-27e63c5064200d37.js +1 -0
  635. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-27e63c5064200d37.js +1 -0
  636. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-27e63c5064200d37.js +1 -0
  637. package/app/.next-cli-build/static/chunks/app/api/settings/route-27e63c5064200d37.js +1 -0
  638. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-27e63c5064200d37.js +1 -0
  639. package/app/.next-cli-build/static/chunks/app/api/tags/route-27e63c5064200d37.js +1 -0
  640. package/app/.next-cli-build/static/chunks/app/api/token-saver/stats/route-27e63c5064200d37.js +1 -0
  641. package/app/.next-cli-build/static/chunks/app/api/token-saver/stream/route-27e63c5064200d37.js +1 -0
  642. package/app/.next-cli-build/static/chunks/app/api/tool-disclosure/stats/route-27e63c5064200d37.js +1 -0
  643. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-27e63c5064200d37.js +1 -0
  644. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-27e63c5064200d37.js +1 -0
  645. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-27e63c5064200d37.js +1 -0
  646. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-27e63c5064200d37.js +1 -0
  647. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-27e63c5064200d37.js +1 -0
  648. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-27e63c5064200d37.js +1 -0
  649. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-27e63c5064200d37.js +1 -0
  650. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-27e63c5064200d37.js +1 -0
  651. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-27e63c5064200d37.js +1 -0
  652. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-27e63c5064200d37.js +1 -0
  653. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-27e63c5064200d37.js +1 -0
  654. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-27e63c5064200d37.js +1 -0
  655. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-27e63c5064200d37.js +1 -0
  656. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-27e63c5064200d37.js +1 -0
  657. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-27e63c5064200d37.js +1 -0
  658. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-27e63c5064200d37.js +1 -0
  659. package/app/.next-cli-build/static/chunks/app/api/usage/error-logs/route-27e63c5064200d37.js +1 -0
  660. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-27e63c5064200d37.js +1 -0
  661. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-27e63c5064200d37.js +1 -0
  662. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-27e63c5064200d37.js +1 -0
  663. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-27e63c5064200d37.js +1 -0
  664. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-27e63c5064200d37.js +1 -0
  665. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-27e63c5064200d37.js +1 -0
  666. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-27e63c5064200d37.js +1 -0
  667. package/app/.next-cli-build/static/chunks/app/api/v1/alpha/search/route-27e63c5064200d37.js +1 -0
  668. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-27e63c5064200d37.js +1 -0
  669. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-27e63c5064200d37.js +1 -0
  670. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-27e63c5064200d37.js +1 -0
  671. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-27e63c5064200d37.js +1 -0
  672. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-27e63c5064200d37.js +1 -0
  673. package/app/.next-cli-build/static/chunks/app/api/v1/codex/alpha/search/route-27e63c5064200d37.js +1 -0
  674. package/app/.next-cli-build/static/chunks/app/api/v1/codex/images/edits/route-27e63c5064200d37.js +1 -0
  675. package/app/.next-cli-build/static/chunks/app/api/v1/codex/images/generations/route-27e63c5064200d37.js +1 -0
  676. package/app/.next-cli-build/static/chunks/app/api/v1/codex/memories/trace_summarize/route-27e63c5064200d37.js +1 -0
  677. package/app/.next-cli-build/static/chunks/app/api/v1/codex/models/route-27e63c5064200d37.js +1 -0
  678. package/app/.next-cli-build/static/chunks/app/api/v1/codex/responses/compact/route-27e63c5064200d37.js +1 -0
  679. package/app/.next-cli-build/static/chunks/app/api/v1/codex/responses/route-27e63c5064200d37.js +1 -0
  680. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-27e63c5064200d37.js +1 -0
  681. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-27e63c5064200d37.js +1 -0
  682. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-27e63c5064200d37.js +1 -0
  683. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-27e63c5064200d37.js +1 -0
  684. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-27e63c5064200d37.js +1 -0
  685. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-27e63c5064200d37.js +1 -0
  686. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-27e63c5064200d37.js +1 -0
  687. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-27e63c5064200d37.js +1 -0
  688. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-27e63c5064200d37.js +1 -0
  689. package/app/.next-cli-build/static/chunks/app/api/v1/route-27e63c5064200d37.js +1 -0
  690. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-27e63c5064200d37.js +1 -0
  691. package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-27e63c5064200d37.js +1 -0
  692. package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-27e63c5064200d37.js +1 -0
  693. package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-27e63c5064200d37.js +1 -0
  694. package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-27e63c5064200d37.js +1 -0
  695. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-27e63c5064200d37.js +1 -0
  696. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-27e63c5064200d37.js +1 -0
  697. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-27e63c5064200d37.js +1 -0
  698. package/app/.next-cli-build/static/chunks/app/api/version/route-27e63c5064200d37.js +1 -0
  699. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-27e63c5064200d37.js +1 -0
  700. package/app/.next-cli-build/static/chunks/app/api/version/update/route-27e63c5064200d37.js +1 -0
  701. package/app/.next-cli-build/static/chunks/app/callback/page-b93ca76b99d6b49c.js +1 -0
  702. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-27e63c5064200d37.js +1 -0
  703. package/app/.next-cli-build/static/chunks/app/page-27e63c5064200d37.js +1 -0
  704. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-27e63c5064200d37.js +1 -0
  705. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-27e63c5064200d37.js +1 -0
  706. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-27e63c5064200d37.js +1 -0
  707. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-27e63c5064200d37.js +1 -0
  708. package/app/CHANGELOG.md +15 -0
  709. package/app/package.json +1 -1
  710. package/app/public/CHANGELOG.md +15 -0
  711. package/package.json +1 -1
  712. package/app/.next-cli-build/static/a81yMsO4XgDuWFncvWrN6/_buildManifest.js +0 -1
  713. package/app/.next-cli-build/static/chunks/app/_global-error/page-938edd13e0345b6e.js +0 -1
  714. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-938edd13e0345b6e.js +0 -1
  715. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-938edd13e0345b6e.js +0 -1
  716. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-938edd13e0345b6e.js +0 -1
  717. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-938edd13e0345b6e.js +0 -1
  718. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-938edd13e0345b6e.js +0 -1
  719. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-938edd13e0345b6e.js +0 -1
  720. package/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-938edd13e0345b6e.js +0 -1
  721. package/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-938edd13e0345b6e.js +0 -1
  722. package/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-938edd13e0345b6e.js +0 -1
  723. package/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-938edd13e0345b6e.js +0 -1
  724. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-938edd13e0345b6e.js +0 -1
  725. package/app/.next-cli-build/static/chunks/app/api/changelog/route-938edd13e0345b6e.js +0 -1
  726. package/app/.next-cli-build/static/chunks/app/api/cli/providers/codex/route-938edd13e0345b6e.js +0 -1
  727. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-938edd13e0345b6e.js +0 -1
  728. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-938edd13e0345b6e.js +0 -1
  729. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-938edd13e0345b6e.js +0 -1
  730. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-938edd13e0345b6e.js +0 -1
  731. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-938edd13e0345b6e.js +0 -1
  732. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-native/models/route-938edd13e0345b6e.js +0 -1
  733. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-native/readiness/route-938edd13e0345b6e.js +0 -1
  734. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-938edd13e0345b6e.js +0 -1
  735. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-938edd13e0345b6e.js +0 -1
  736. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-938edd13e0345b6e.js +0 -1
  737. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-938edd13e0345b6e.js +0 -1
  738. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-938edd13e0345b6e.js +0 -1
  739. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-938edd13e0345b6e.js +0 -1
  740. package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-938edd13e0345b6e.js +0 -1
  741. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-938edd13e0345b6e.js +0 -1
  742. package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-938edd13e0345b6e.js +0 -1
  743. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-938edd13e0345b6e.js +0 -1
  744. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-938edd13e0345b6e.js +0 -1
  745. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-938edd13e0345b6e.js +0 -1
  746. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-938edd13e0345b6e.js +0 -1
  747. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-938edd13e0345b6e.js +0 -1
  748. package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-938edd13e0345b6e.js +0 -1
  749. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-938edd13e0345b6e.js +0 -1
  750. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/test/route-938edd13e0345b6e.js +0 -1
  751. package/app/.next-cli-build/static/chunks/app/api/combos/export/route-938edd13e0345b6e.js +0 -1
  752. package/app/.next-cli-build/static/chunks/app/api/combos/import/route-938edd13e0345b6e.js +0 -1
  753. package/app/.next-cli-build/static/chunks/app/api/combos/route-938edd13e0345b6e.js +0 -1
  754. package/app/.next-cli-build/static/chunks/app/api/combos/test/route-938edd13e0345b6e.js +0 -1
  755. package/app/.next-cli-build/static/chunks/app/api/convoy/rules/route-938edd13e0345b6e.js +0 -1
  756. package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-938edd13e0345b6e.js +0 -1
  757. package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-938edd13e0345b6e.js +0 -1
  758. package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-938edd13e0345b6e.js +0 -1
  759. package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-938edd13e0345b6e.js +0 -1
  760. package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-938edd13e0345b6e.js +0 -1
  761. package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-938edd13e0345b6e.js +0 -1
  762. package/app/.next-cli-build/static/chunks/app/api/health/route-938edd13e0345b6e.js +0 -1
  763. package/app/.next-cli-build/static/chunks/app/api/init/route-938edd13e0345b6e.js +0 -1
  764. package/app/.next-cli-build/static/chunks/app/api/internal/codex-native/lease/[action]/route-938edd13e0345b6e.js +0 -1
  765. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-938edd13e0345b6e.js +0 -1
  766. package/app/.next-cli-build/static/chunks/app/api/keys/route-938edd13e0345b6e.js +0 -1
  767. package/app/.next-cli-build/static/chunks/app/api/locale/route-938edd13e0345b6e.js +0 -1
  768. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-938edd13e0345b6e.js +0 -1
  769. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-938edd13e0345b6e.js +0 -1
  770. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-938edd13e0345b6e.js +0 -1
  771. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-938edd13e0345b6e.js +0 -1
  772. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-938edd13e0345b6e.js +0 -1
  773. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-938edd13e0345b6e.js +0 -1
  774. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-938edd13e0345b6e.js +0 -1
  775. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-938edd13e0345b6e.js +0 -1
  776. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-938edd13e0345b6e.js +0 -1
  777. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-938edd13e0345b6e.js +0 -1
  778. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-938edd13e0345b6e.js +0 -1
  779. package/app/.next-cli-build/static/chunks/app/api/models/route-938edd13e0345b6e.js +0 -1
  780. package/app/.next-cli-build/static/chunks/app/api/models/test/route-938edd13e0345b6e.js +0 -1
  781. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-938edd13e0345b6e.js +0 -1
  782. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-938edd13e0345b6e.js +0 -1
  783. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-938edd13e0345b6e.js +0 -1
  784. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-938edd13e0345b6e.js +0 -1
  785. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-938edd13e0345b6e.js +0 -1
  786. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-938edd13e0345b6e.js +0 -1
  787. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-938edd13e0345b6e.js +0 -1
  788. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-938edd13e0345b6e.js +0 -1
  789. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-938edd13e0345b6e.js +0 -1
  790. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-938edd13e0345b6e.js +0 -1
  791. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-938edd13e0345b6e.js +0 -1
  792. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-938edd13e0345b6e.js +0 -1
  793. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-938edd13e0345b6e.js +0 -1
  794. package/app/.next-cli-build/static/chunks/app/api/pricing/route-938edd13e0345b6e.js +0 -1
  795. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-938edd13e0345b6e.js +0 -1
  796. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-938edd13e0345b6e.js +0 -1
  797. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-938edd13e0345b6e.js +0 -1
  798. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-938edd13e0345b6e.js +0 -1
  799. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/refresh-profile/route-938edd13e0345b6e.js +0 -1
  800. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-938edd13e0345b6e.js +0 -1
  801. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-938edd13e0345b6e.js +0 -1
  802. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-938edd13e0345b6e.js +0 -1
  803. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-938edd13e0345b6e.js +0 -1
  804. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-938edd13e0345b6e.js +0 -1
  805. package/app/.next-cli-build/static/chunks/app/api/providers/route-938edd13e0345b6e.js +0 -1
  806. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-938edd13e0345b6e.js +0 -1
  807. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-938edd13e0345b6e.js +0 -1
  808. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-938edd13e0345b6e.js +0 -1
  809. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-938edd13e0345b6e.js +0 -1
  810. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-938edd13e0345b6e.js +0 -1
  811. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-938edd13e0345b6e.js +0 -1
  812. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-938edd13e0345b6e.js +0 -1
  813. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-938edd13e0345b6e.js +0 -1
  814. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-938edd13e0345b6e.js +0 -1
  815. package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-938edd13e0345b6e.js +0 -1
  816. package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-938edd13e0345b6e.js +0 -1
  817. package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-938edd13e0345b6e.js +0 -1
  818. package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-938edd13e0345b6e.js +0 -1
  819. package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-938edd13e0345b6e.js +0 -1
  820. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-938edd13e0345b6e.js +0 -1
  821. package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-938edd13e0345b6e.js +0 -1
  822. package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-938edd13e0345b6e.js +0 -1
  823. package/app/.next-cli-build/static/chunks/app/api/routing-health/route-938edd13e0345b6e.js +0 -1
  824. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-938edd13e0345b6e.js +0 -1
  825. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-938edd13e0345b6e.js +0 -1
  826. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-938edd13e0345b6e.js +0 -1
  827. package/app/.next-cli-build/static/chunks/app/api/settings/route-938edd13e0345b6e.js +0 -1
  828. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-938edd13e0345b6e.js +0 -1
  829. package/app/.next-cli-build/static/chunks/app/api/tags/route-938edd13e0345b6e.js +0 -1
  830. package/app/.next-cli-build/static/chunks/app/api/token-saver/stats/route-938edd13e0345b6e.js +0 -1
  831. package/app/.next-cli-build/static/chunks/app/api/token-saver/stream/route-938edd13e0345b6e.js +0 -1
  832. package/app/.next-cli-build/static/chunks/app/api/tool-disclosure/stats/route-938edd13e0345b6e.js +0 -1
  833. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-938edd13e0345b6e.js +0 -1
  834. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-938edd13e0345b6e.js +0 -1
  835. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-938edd13e0345b6e.js +0 -1
  836. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-938edd13e0345b6e.js +0 -1
  837. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-938edd13e0345b6e.js +0 -1
  838. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-938edd13e0345b6e.js +0 -1
  839. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-938edd13e0345b6e.js +0 -1
  840. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-938edd13e0345b6e.js +0 -1
  841. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-938edd13e0345b6e.js +0 -1
  842. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-938edd13e0345b6e.js +0 -1
  843. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-938edd13e0345b6e.js +0 -1
  844. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-938edd13e0345b6e.js +0 -1
  845. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-938edd13e0345b6e.js +0 -1
  846. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-938edd13e0345b6e.js +0 -1
  847. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-938edd13e0345b6e.js +0 -1
  848. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-938edd13e0345b6e.js +0 -1
  849. package/app/.next-cli-build/static/chunks/app/api/usage/error-logs/route-938edd13e0345b6e.js +0 -1
  850. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-938edd13e0345b6e.js +0 -1
  851. package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-938edd13e0345b6e.js +0 -1
  852. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-938edd13e0345b6e.js +0 -1
  853. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-938edd13e0345b6e.js +0 -1
  854. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-938edd13e0345b6e.js +0 -1
  855. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-938edd13e0345b6e.js +0 -1
  856. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-938edd13e0345b6e.js +0 -1
  857. package/app/.next-cli-build/static/chunks/app/api/v1/alpha/search/route-938edd13e0345b6e.js +0 -1
  858. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-938edd13e0345b6e.js +0 -1
  859. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-938edd13e0345b6e.js +0 -1
  860. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-938edd13e0345b6e.js +0 -1
  861. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-938edd13e0345b6e.js +0 -1
  862. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-938edd13e0345b6e.js +0 -1
  863. package/app/.next-cli-build/static/chunks/app/api/v1/codex/alpha/search/route-938edd13e0345b6e.js +0 -1
  864. package/app/.next-cli-build/static/chunks/app/api/v1/codex/images/edits/route-938edd13e0345b6e.js +0 -1
  865. package/app/.next-cli-build/static/chunks/app/api/v1/codex/images/generations/route-938edd13e0345b6e.js +0 -1
  866. package/app/.next-cli-build/static/chunks/app/api/v1/codex/memories/trace_summarize/route-938edd13e0345b6e.js +0 -1
  867. package/app/.next-cli-build/static/chunks/app/api/v1/codex/models/route-938edd13e0345b6e.js +0 -1
  868. package/app/.next-cli-build/static/chunks/app/api/v1/codex/responses/compact/route-938edd13e0345b6e.js +0 -1
  869. package/app/.next-cli-build/static/chunks/app/api/v1/codex/responses/route-938edd13e0345b6e.js +0 -1
  870. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-938edd13e0345b6e.js +0 -1
  871. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-938edd13e0345b6e.js +0 -1
  872. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-938edd13e0345b6e.js +0 -1
  873. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-938edd13e0345b6e.js +0 -1
  874. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-938edd13e0345b6e.js +0 -1
  875. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-938edd13e0345b6e.js +0 -1
  876. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-938edd13e0345b6e.js +0 -1
  877. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-938edd13e0345b6e.js +0 -1
  878. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-938edd13e0345b6e.js +0 -1
  879. package/app/.next-cli-build/static/chunks/app/api/v1/route-938edd13e0345b6e.js +0 -1
  880. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-938edd13e0345b6e.js +0 -1
  881. package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-938edd13e0345b6e.js +0 -1
  882. package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-938edd13e0345b6e.js +0 -1
  883. package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-938edd13e0345b6e.js +0 -1
  884. package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-938edd13e0345b6e.js +0 -1
  885. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-938edd13e0345b6e.js +0 -1
  886. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-938edd13e0345b6e.js +0 -1
  887. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-938edd13e0345b6e.js +0 -1
  888. package/app/.next-cli-build/static/chunks/app/api/version/route-938edd13e0345b6e.js +0 -1
  889. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-938edd13e0345b6e.js +0 -1
  890. package/app/.next-cli-build/static/chunks/app/api/version/update/route-938edd13e0345b6e.js +0 -1
  891. package/app/.next-cli-build/static/chunks/app/callback/page-5d184cec883271e3.js +0 -1
  892. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-938edd13e0345b6e.js +0 -1
  893. package/app/.next-cli-build/static/chunks/app/page-938edd13e0345b6e.js +0 -1
  894. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-938edd13e0345b6e.js +0 -1
  895. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-938edd13e0345b6e.js +0 -1
  896. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-938edd13e0345b6e.js +0 -1
  897. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-938edd13e0345b6e.js +0 -1
  898. /package/app/.next-cli-build/static/{a81yMsO4XgDuWFncvWrN6 → VHMm9HLeUVCQCF2x_3Z-B}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=5018,a.ids=[5018],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},26814:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>aa,patchFetch:()=>_,routeModule:()=>X,serverHooks:()=>$,workAsyncStorage:()=>Y,workUnitAsyncStorage:()=>Z});var d={};c.r(d),c.d(d,{OPTIONS:()=>V,POST:()=>W});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23433),w=c(29273),x=c(89718),y=c(38775),z=c(89865),A=c(60290),B=c(47456),C=c(85640),D=c(39141);let E={"jina-ai":"https://api.jina.ai/v1/embeddings"},F=a=>D.B$[a]?.embeddingConfig||{};function G(a){let b=F(a);return{buildUrl:()=>F(a).baseUrl||E[a],buildHeaders:a=>({"Content-Type":"application/json",...{Authorization:`Bearer ${a.apiKey||a.accessToken}`},...b.headers||{}}),buildBody:(a,{input:b,encoding_format:c,dimensions:d})=>{let e={model:a,input:b};if(c&&(e.encoding_format=c),null!=d&&""!==d){let a=Number(d);Number.isFinite(a)&&a>0&&(e.dimensions=a)}return e},normalize:a=>a}}function H(a){return a.startsWith("models/")?a:`models/${a}`}let I={buildUrl:(a,b,{input:c}={})=>{let d=b.apiKey||b.accessToken,e=H(a),f=Array.isArray(c)?"batchEmbedContents":"embedContent";return`https://generativelanguage.googleapis.com/v1beta/${e}:${f}?key=${encodeURIComponent(d)}`},buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,{input:b,dimensions:c})=>{let d=H(a),e=Number(c),f=Number.isFinite(e)&&e>0;return Array.isArray(b)?{requests:b.map(a=>({model:d,content:{parts:[{text:String(a)}]},...f?{outputDimensionality:e}:{}}))}:{model:d,content:{parts:[{text:String(b)}]},...f?{outputDimensionality:e}:{}}},normalize:(a,b)=>{if("list"===a.object&&Array.isArray(a.data))return a;let c=[];return Array.isArray(a.embeddings)?c=a.embeddings.map((a,b)=>({object:"embedding",index:b,embedding:a.values||[]})):a.embedding?.values&&(c=[{object:"embedding",index:0,embedding:a.embedding.values}]),{object:"list",data:c,model:b,usage:{prompt_tokens:0,total_tokens:0}}}};var J=c(74986);let K={...G("openai"),buildUrl:(a,b)=>{let c=(b?.providerSpecificData?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,"").replace(/\/embeddings$/,"");return`${c}/embeddings`},buildHeaders:a=>(0,J.im)({"Content-Type":"application/json"},a?.providerSpecificData||{},{Authorization:`Bearer ${a?.apiKey||a?.accessToken}`})},L=G("openai");class M extends Error{constructor(){super('Self-hosted Embedding needs an endpoint: set this connection\'s baseUrl to the OpenAI base URL of your server, e.g. http://host:8080/v1 (note the /v1 — "/embeddings" is appended to it). Refusing to fall back to api.openai.com, which would send your input and API key to OpenAI.'),this.name="MissingBaseUrlError",this.isConfigError=!0}}let N={...L,buildUrl:(a,b)=>{let c=b?.providerSpecificData?.baseUrl;if(!c||!String(c).trim())throw new M;let d=String(c).trim().replace(/\/$/,"").replace(/\/embeddings$/,"");return`${d}/embeddings`}};var O=c(4630);let P={...Object.fromEntries(["openai","openrouter","mistral","voyage-ai","fireworks","together","nebius","github","nvidia","jina-ai","vercel-ai-gateway"].map(a=>[a,G(a)])),gemini:I,google_ai_studio:I,"selfhosted-embedding":N,"ollama-local":{buildUrl:(a,b)=>{let c=((0,O.Ak)(b)||"").replace(/\/+$/,"");return`${c}/v1/embeddings`},buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,{input:b,encoding_format:c,dimensions:d})=>{let e={model:a,input:b};if(c&&(e.encoding_format=c),null!=d&&""!==d){let a=Number(d);Number.isFinite(a)&&a>0&&(e.dimensions=a)}return e},normalize:a=>a}};async function Q({body:a,modelInfo:b,credentials:c,log:d,onCredentialsRefreshed:e,onRequestSuccess:f}){let g,h,i,j,k,{provider:l,model:m}=b,n=a.input;if(!n)return(0,z.A1)(A.gx.BAD_REQUEST,"Missing required field: input");if("string"!=typeof n&&!Array.isArray(n))return(0,z.A1)(A.gx.BAD_REQUEST,"input must be a string or array of strings");let o=P[l]?P[l]:l?.startsWith?.("openai-compatible-")||l?.startsWith?.("custom-embedding-")?K:null;if(!o)return(0,z.A1)(A.gx.BAD_REQUEST,`Provider '${l}' does not support embeddings.`);let p={input:n};try{g=o.buildUrl(m,c,p),h=o.buildHeaders(c,p),i=o.buildBody(m,{input:n,encoding_format:a.encoding_format||"float",dimensions:a.dimensions})}catch(a){return d?.debug?.("EMBEDDINGS",`Request build failed: ${a.message}`),(0,z.A1)(A.gx.BAD_REQUEST,`[${l}/${m}] ${a.message}`)}d?.debug?.("EMBEDDINGS",`${l.toUpperCase()} | ${m} | input_type=${Array.isArray(n)?`array[${n.length}]`:"string"}`);try{j=await fetch(g,{method:"POST",headers:h,body:JSON.stringify(i),..."function"==typeof AbortSignal?.timeout?{signal:AbortSignal.timeout(A.pH)}:{}})}catch(b){let a=(0,z.lR)(b,l,m,A.gx.BAD_GATEWAY);return d?.debug?.("EMBEDDINGS",`Fetch error: ${a}`),(0,z.A1)(A.gx.BAD_GATEWAY,a)}let q=(0,B.SB)(l);if(!q?.noAuth&&(j.status===A.gx.UNAUTHORIZED||j.status===A.gx.FORBIDDEN)){let a=await (0,C.qZ)(()=>q.refreshCredentials(c,d),3,d);if(a?.accessToken||a?.apiKey){d?.info?.("TOKEN",`${l.toUpperCase()} | refreshed for embeddings`),Object.assign(c,a),e&&await e(a);try{let a=o.buildHeaders(c,p),b=o.buildUrl(m,c,p);j=await fetch(b,{method:"POST",headers:a,body:JSON.stringify(i)})}catch{d?.warn?.("TOKEN",`${l.toUpperCase()} | retry after refresh failed`)}}else d?.warn?.("TOKEN",`${l.toUpperCase()} | refresh failed`)}if(!j.ok){let{statusCode:a,message:b}=await (0,z.zL)(j),c=(0,z.lR)(Error(b),l,m,a);return d?.debug?.("EMBEDDINGS",`Provider error: ${c}`),(0,z.A1)(a,c)}try{k=await j.json()}catch{return(0,z.A1)(A.gx.BAD_GATEWAY,`Invalid JSON response from ${l}`)}f&&await f();let r=o.normalize(k,m);return d?.debug?.("EMBEDDINGS",`Success | usage=${JSON.stringify(r.usage||{})}`),{success:!0,usage:r.usage||null,response:new Response(JSON.stringify(r),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}var R=c(7803),S=c(67828),T=c(47370);async function U(a){let b;try{b=await a.json()}catch{return R.warn("EMBEDDINGS","Invalid JSON body"),(0,z.yj)(A.gx.BAD_REQUEST,"Invalid JSON body")}let c=new URL(a.url),d=b.model;R.request("POST",`${c.pathname} | ${d}`);let{apiKey:e,valid:f}=await (0,v.$A)(a);if(e?R.debug("AUTH",`API Key: ${R.maskKey(e)}`):R.debug("AUTH","No API key provided (local mode)"),(await (0,x.mt)()).requireApiKey){if(!e)return R.warn("AUTH","Missing API key (requireApiKey=true)"),(0,z.yj)(A.gx.UNAUTHORIZED,"Missing API key");if(!f)return R.warn("AUTH","Invalid API key (requireApiKey=true)"),(0,z.yj)(A.gx.UNAUTHORIZED,"Invalid API key")}if(!d)return R.warn("EMBEDDINGS","Missing model"),(0,z.yj)(A.gx.BAD_REQUEST,"Missing model");if(!b.input)return R.warn("EMBEDDINGS","Missing input"),(0,z.yj)(A.gx.BAD_REQUEST,"Missing required field: input");let g=await (0,y.mA)(d);if(!g.provider)return R.warn("EMBEDDINGS","Invalid model format",{model:d}),(0,z.yj)(A.gx.BAD_REQUEST,"Invalid model format");let{provider:h,model:i}=g,j=await (0,w.K)(a,{model:`${h}/${i}`,body:b});if(j.error)return j.error;d!==`${h}/${i}`?R.info("ROUTING",`${d} → ${h}/${i}`):R.info("ROUTING",`Provider: ${h}, Model: ${i}`);let k=new Set,l=null,m=null;for(;;){let a=await (0,v.c1)(h,k,i);if(!a||a.allRateLimited){if(a?.allRateLimited){let b=l||a.lastError||"Unavailable",c=m||Number(a.lastErrorCode)||A.gx.SERVICE_UNAVAILABLE;return R.warn("EMBEDDINGS",`[${h}/${i}] ${b} (${a.retryAfterHuman})`),(0,z.wO)(c,`[${h}/${i}] ${b}`,a.retryAfter,a.retryAfterHuman)}if(0===k.size)return R.error("AUTH",`No credentials for provider: ${h}`),(0,z.yj)(A.gx.BAD_REQUEST,`No credentials for provider: ${h}`);return R.warn("EMBEDDINGS","No more accounts available",{provider:h}),(0,z.yj)(m||A.gx.SERVICE_UNAVAILABLE,l||"All accounts unavailable")}R.info("AUTH",`\x1b[32mUsing ${h} account: ${a.connectionName}\x1b[0m`);let d=await (0,S.checkAndRefreshToken)(h,a,(0,B.SB)(h)),f=await Q({body:{...b,model:`${h}/${i}`},modelInfo:{provider:h,model:i},credentials:d,log:R,onCredentialsRefreshed:async b=>{await (0,S.vN)(a.connectionId,{...b,existingProviderSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,v.Pt)(a.connectionId,a,i)}});if(f.success){let b=function(a){if(!a||"object"!=typeof a||Array.isArray(a)||!0===a.estimated)return null;let b=a.prompt_tokens??a.input_tokens,c=a.completion_tokens??a.output_tokens??0,d=a.total_tokens;return!Number.isSafeInteger(b)||b<=0||0!==c||d!==b?null:{prompt_tokens:b,completion_tokens:0,total_tokens:d}}(f.usage);return b&&(0,T.sZ)({provider:h,model:i,connectionId:a.connectionId,apiKey:e,endpoint:c.pathname,tokens:b,status:"success"}).catch(()=>{}),f.response}let{shouldFallback:g}=await (0,v.vk)(a.connectionId,f.status,f.error,h,i);if(g){R.warn("AUTH",`Account ${a.connectionName} unavailable (${f.status}), trying fallback`),k.add(a.connectionId),l=f.error,m=f.status;continue}return f.response}}async function V(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function W(a){return await U(a)}let X=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/embeddings/route",pathname:"/api/v1/embeddings",filename:"route",bundlePath:"app/api/v1/embeddings/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/embeddings/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:Y,workUnitAsyncStorage:Z,serverHooks:$}=X;function _(){return(0,g.patchFetch)({workAsyncStorage:Y,workUnitAsyncStorage:Z})}async function aa(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),X.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/embeddings/route";"/index"===d&&(d="/");let e=await X.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||X.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===X.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await X.getIncrementalCache(a,x,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>X.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>X.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await X.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await X.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await X.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},38775:(a,b,c)=>{c.d(b,{d_:()=>j,mA:()=>h});var d=c(89718),e=c(66451),f=c(99471);c(45502);let g={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function h(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&g[b.providerAlias]?{...b,provider:g[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);if(e)return{provider:e.id,model:c.model};let f=(await (0,d.Fh)({type:"custom-video"})).find(a=>a.prefix===c.providerAlias);return f?{provider:f.id,model:c.model}:{provider:c.provider,model:c.model}}if(await (0,d.Dj)(c.model))return{provider:null,model:c.model};let f=await i(c.model);return f||(0,e.js)(a,d.OM)}async function i(a){try{let b=(await (0,d.uv)()).find(b=>b&&b.id===a&&("llm"===b.type||!b.type));if(b&&b.providerAlias)return{provider:(0,e.g2)(b.providerAlias),model:b.id}}catch{}try{let b=await (0,d.OM)(),c=(0,e.sc)(a,b);if(c)return c}catch{}let b=(0,e.PN)(a);if(b)return{provider:b,model:a};try{let b=await (0,f.w)(a);if(b)return b}catch{}return null}async function j(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},47370:(a,b,c)=>{c.d(b,{BY:()=>d.BY,E5:()=>d.E5,QB:()=>d.QB,SL:()=>d.SL,Zx:()=>d.Zx,_V:()=>d._V,j$:()=>d.j$,ox:()=>d.ox,rg:()=>d.rg,sZ:()=>d.sZ,uw:()=>d.uw,wV:()=>d.wV});var d=c(5129)},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66451:(a,b,c)=>{c.d(b,{PN:()=>k,Xh:()=>l,ff:()=>i,g2:()=>j,js:()=>n,sc:()=>m});var d=c(45502),e=c(27335);let f={el:"elevenlabs",jina:"jina-ai","jina-ai":"jina-ai",polly:"aws-polly","aws-polly":"aws-polly"};for(let a of d.A)for(let b of(f[a.id]=a.id,a.alias&&(f[a.alias]=a.id),a.aliases||[]))f[b]=a.id;let g={"grok-build":"gcli/grok-build"},h=new Map;for(let a of d.A)a.noAuth&&a.modelsFetcher&&a.alias&&h.set(a.id,a.alias);function i(a,b){let c,d,e;if(a&&"object"==typeof a?(c=a.requestedModel,d=a.provider,e=a.model):(c=a,d=b?.provider,e=b?.model),!c||c.includes("/"))return c;let f=h.get(d);return f?`${f}/${e}`:c}function j(a){return f[a]||a}function k(a){if(!a)return null;let b=[];for(let[c,d]of Object.entries(e.PROVIDER_MODELS))Array.isArray(d)&&d.some(b=>b&&b.id===a)&&b.push(c);if(0===b.length)return null;if(1===b.length)return j(b[0]);let c=b.find(b=>a.startsWith(b));return c?j(c):null}function l(a){if(!a)return{provider:null,model:null,isAlias:!1,providerAlias:null};if(a.includes("/")){let b=a.indexOf("/"),c=a.slice(0,b),d=a.slice(b+1);return{provider:j(c),model:d,isAlias:!1,providerAlias:c}}return{provider:null,model:a,isAlias:!0,providerAlias:null}}function m(a,b){if(!b)return null;let c=b[a];if(!c)return null;if("string"==typeof c&&c.includes("/")){let a=c.indexOf("/");return{provider:j(c.slice(0,a)),model:c.slice(a+1)}}return"object"==typeof c&&c.provider&&c.model?{provider:j(c.provider),model:c.model}:null}async function n(a,b){let c=l(a);if(!c.isAlias)return{provider:c.provider,model:c.model};let d="function"==typeof b?await b():b,e=m(c.model,d)||m(c.model,g);return e||{provider:function(a){if(!a)return"openai";let b=a.toLowerCase();return"default"===b||"auto"===b?"cursor":o.find(([a])=>a.test(b))?.[1]||"openai"}(c.model),model:c.model}}let o=[[/^claude-/,"anthropic"],[/^gemini-/,"gemini"],[/^grok-/,"xai"],[/^gpt-/,"openai"],[/^o[134]/,"openai"],[/^deepseek-/,"openrouter"]]},67677:(a,b,c)=>{c.d(b,{Gh:()=>k,IF:()=>p,O9:()=>g,OF:()=>o,WL:()=>h,_6:()=>j,_L:()=>m,bC:()=>n,f5:()=>l,lm:()=>f});var d=c(19956);let e="1"===process.env.LOG_USAGE_VERBOSE,f={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function g(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=2e3),void 0!==b.prompt_tokens&&(b.prompt_tokens+=2e3),void 0!==b.total_tokens?b.total_tokens+=2e3:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function h(a,b){if(!a||"object"!=typeof a)return a;let c={[d.h.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.OPENAI_RESPONSES]:["input_tokens","output_tokens","input_tokens_details","output_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"]},e=c[b];b===d.h.GEMINI_CLI||b===d.h.ANTIGRAVITY?e=c[d.h.GEMINI]:b===d.h.OPENAI_RESPONSE?e=c[d.h.OPENAI_RESPONSES]:e||(e=c.default);let f={};for(let b of e)void 0!==a[b]&&(f[b]=a[b]);return f}function i(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b={},c=(a,c)=>{if(null==c)return;let d=Number(c);Number.isFinite(d)&&(b[a]=d)},d=(a,c)=>{if(null==c||""===c)return;let d=Number(c);Number.isFinite(d)&&d>=0&&(b[a]=d)};return(c("prompt_tokens",a?.prompt_tokens),c("completion_tokens",a?.completion_tokens),c("total_tokens",a?.total_tokens),c("cache_read_input_tokens",a?.cache_read_input_tokens),c("cache_creation_input_tokens",a?.cache_creation_input_tokens),c("cached_tokens",a?.cached_tokens),c("reasoning_tokens",a?.reasoning_tokens),d("cost_usd",a?.cost_usd),d("cost_in_usd",a?.cost_in_usd),d("cost_in_usd_ticks",a?.cost_in_usd_ticks),a?.prompt_tokens_details&&"object"==typeof a.prompt_tokens_details&&(b.prompt_tokens_details=a.prompt_tokens_details),a?.completion_tokens_details&&"object"==typeof a.completion_tokens_details&&(b.completion_tokens_details=a.completion_tokens_details),0===Object.keys(b).length)?null:b}function j(a){let b;if(!a||"object"!=typeof a||Array.isArray(a))return null;let c=a=>Number.isFinite(Number(a))?Number(a):0,d=c(a.completion_tokens??a.output_tokens),e=c(a.reasoning_tokens),f=c(a.cache_creation_input_tokens??a.prompt_tokens_details?.cache_creation_tokens),g=c(a.prompt_tokens??a.input_tokens);void 0===a.cached_tokens&&(void 0!==a.cache_read_input_tokens||void 0!==a.cache_creation_input_tokens)?g=g+(b=c(a.cache_read_input_tokens))+f:b=c(a.cached_tokens??a.prompt_tokens_details?.cached_tokens);let h={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,cached_tokens:b,cache_creation_input_tokens:f},i=b=>{if(null===a[b]||void 0===a[b]||""===a[b])return;let c=Number(a[b]);Number.isFinite(c)&&c>=0&&(h[b]=c)};return i("cost_usd"),i("cost_in_usd"),i("cost_in_usd_ticks"),e>0&&(h.reasoning_tokens=e),h}function k(a){if(!a||"object"!=typeof a)return!1;for(let b of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof a[b]&&a[b]>0)return!0;return!1}function l(a){if(!a||"object"!=typeof a)return null;if("message_start"===a.type&&a.message?.usage&&"object"==typeof a.message.usage){let b=a.message.usage;return i({prompt_tokens:b.input_tokens||0,completion_tokens:b.output_tokens||0,cache_read_input_tokens:b.cache_read_input_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks})}if("message_delta"===a.type&&a.usage&&"object"==typeof a.usage)return i({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,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks});if(("response.completed"===a.type||"response.done"===a.type)&&a.response?.usage&&"object"==typeof a.response.usage){let b=a.response.usage,c=b.input_tokens_details?.cached_tokens;return i({prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cached_tokens:c,reasoning_tokens:b.output_tokens_details?.reasoning_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks,prompt_tokens_details:c?{cached_tokens:c}:void 0})}if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return i({prompt_tokens:a.usage.prompt_tokens,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens||a.usage.prompt_cache_hit_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks,prompt_tokens_details:a.usage.prompt_tokens_details,completion_tokens_details:a.usage.completion_tokens_details});let b=a.usageMetadata||a.response?.usageMetadata;return b&&"object"==typeof b?i({prompt_tokens:b.promptTokenCount||0,completion_tokens:b.candidatesTokenCount||0,total_tokens:b.totalTokenCount,cached_tokens:b.cachedContentTokenCount,reasoning_tokens:b.thoughtsTokenCount}):!0===a.done&&"number"==typeof a.prompt_eval_count?i({prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}):null}function m(a,b){if(!a)return b||null;if(!b)return a;let c={...a};for(let[a,d]of Object.entries(b))"number"==typeof d&&Number.isFinite(d)?c[a]=Math.max("number"==typeof c[a]?c[a]:0,d):d&&"object"==typeof d&&(c[a]=d);return c}function n(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a).length;return Math.ceil(b/4)}catch(a){return 0}}function o(a,b,c=d.h.OPENAI){var e,f;return e=n(a),f=b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c===d.h.CLAUDE?g({input_tokens:e,output_tokens:f,estimated:!0}):g({prompt_tokens:e,completion_tokens:f,total_tokens:e+f,estimated:!0})}function p(a,b,c=null,d=null,g=null){if(!b||"object"!=typeof b||!e)return;let h=a?.toUpperCase()||"UNKNOWN",i=b?.prompt_tokens||b?.input_tokens||0,j=b?.completion_tokens||b?.output_tokens||0,k=d?d.slice(0,8)+"...":"unknown",l=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${f.green}[USAGE] ${h} | in=${i} | out=${j} | account=${k}${f.reset}`;b.estimated&&(l+=` ${f.yellow}(estimated)${f.reset}`);let m=b.cache_read_input_tokens||b.cached_tokens||b.prompt_tokens_details?.cached_tokens;m&&(l+=` | cache_read=${m}`);let n=b.cache_creation_input_tokens;n&&(l+=` | cache_create=${n}`);let o=b.reasoning_tokens;o&&(l+=` | reasoning=${o}`),console.log(l)}},68001:(a,b,c)=>{c.d(b,{S:()=>f});var d=c(38071);let e=["big-pickle"],f={"openrouter-free":a=>a.filter(a=>a.pricing?.prompt==="0"&&a.pricing?.completion==="0"&&a.context_length>=2e5).map(a=>({id:a.id,name:a.name,contextLength:a.context_length})).sort((a,b)=>b.contextLength-a.contextLength),"opencode-free":a=>a.filter(a=>a.id?.endsWith("-free")||e.includes(a.id)).map(a=>({id:a.id,name:a.id})),"mimo-free":a=>(Array.isArray(a)?a:[]).filter(a=>a.id?.startsWith("mimo")||a.name?.toLowerCase().includes("mimo")).map(a=>({id:a.id,name:a.name||a.id})),"nous-free":d.pD}},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},74075:a=>{a.exports=require("zlib")},74986:(a,b,c)=>{c.d(b,{im:()=>i,z5:()=>j});let d={default:{label:"Default",headers:{}},"claude-cli":{label:"Claude CLI",headers:c(92675).$B},"codex-cli":{label:"Codex CLI",headers:{originator:"codex_cli_rs","User-Agent":"codex_cli_rs/0.136.0"}},openclaw:{label:"OpenClaw",headers:{"User-Agent":"openclaw/2026.2.3"}},custom:{label:"Custom",headers:{}}},e=new Set(["authorization","x-api-key","api-key","cookie"]);function f(a){return d[a]?a:"default"}function g(a){let b={};for(let[c,d]of a){let a=String(c||"").trim();if(!a||e.has(String(a||"").trim().toLowerCase())||null==d)continue;let f=String(d).trim();f&&(b[a]=f)}return b}function h(a){if(!a)return{};if("object"==typeof a&&!Array.isArray(a))return g(Object.entries(a));let b=String(a).trim();if(!b)return{};if(b.startsWith("{")){let a=JSON.parse(b);return!a||"object"!=typeof a||Array.isArray(a)?{}:g(Object.entries(a))}return g(function(a){let b=[];for(let c of String(a||"").split(/\r?\n/)){let a=c.trim();if(!a||a.startsWith("#"))continue;let d=a.indexOf(":");d<=0||b.push([a.slice(0,d),a.slice(d+1)])}return b}(b))}function i(a={},b={},c={}){return{...a||{},...function(a={}){let b=f(a.clientIdentityProfile);return"custom"===b?h(a.clientIdentityHeaders):{...d[b]?.headers||{}}}(b),...c||{}}}function j(a={}){let b=f(a.clientIdentityProfile);return{clientIdentityProfile:b,clientIdentityHeaders:"custom"===b?h(a.clientIdentityHeaders):{}}}},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},89865:(a,b,c)=>{c.d(b,{A1:()=>h,lR:()=>j,wO:()=>i,yj:()=>f,zL:()=>g});var d=c(87252),e=c(60290);function f(a,b,c){let e;return new Response(JSON.stringify((e=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:e.type,code:c??e.code}})),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function g(a,b=null){let c,f="";try{f=await a.text()}catch{f=""}let h="",i=null,j=!1;try{let a=JSON.parse(f);if(h=a.error?.message||a.message||a.error||f,c=a.error?.code||a.code,i=a.error?.metadata?.provider_name||null,"string"==typeof h){let a=/^Invalid URL:\s*(.*)$/.exec(h);a&&(j=""===a[1].trim())}}catch{h=f}let k="string"==typeof h?h:JSON.stringify(h);if((i||j)&&(a.status===e.gx.BAD_GATEWAY||a.status===e.gx.SERVER_ERROR||502===a.status||500===a.status)){let a=i?`OpenRouter upstream "${i}" returned an invalid routing URL — its endpoint is misconfigured on OpenRouter's side`:"Upstream returned an invalid (empty) routing URL";k=`${k} — ${a}. Try a different model, or set \`provider: { allow_fallbacks: true }\` to opt into OpenRouter's automatic upstream fallback.`}let l=k||d.O[a.status]||`Upstream error: ${a.status}`;if(b&&"function"==typeof b.parseError)try{let d=b.parseError(a,f);if(d&&"object"==typeof d){let b=d.message&&d.message!==f?d.message:l;return{statusCode:d.status||a.status,message:b,resetsAtMs:d.resetsAtMs,code:d.code??c}}}catch{}return{statusCode:a.status,message:l,code:c}}function h(a,b,c,d){return{success:!1,status:a,error:b,resetsAtMs:c,response:f(a,b,d)}}function i(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function j(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},99471:(a,b,c)=>{c.d(b,{Y:()=>k,w:()=>j});var d=c(68001);let e=null,f=0,g=null;async function h(){let a=new AbortController,b=setTimeout(()=>a.abort(),5e3);try{let b=await fetch("https://opencode.ai/zen/v1/models",{signal:a.signal});if(!b.ok)return e||[];let c=await b.json(),g=c.data??c.models??c,h=d.S["opencode-free"](Array.isArray(g)?g:[]);return e=h,f=Date.now(),h}catch{return e||[]}finally{clearTimeout(b)}}async function i(){if(e&&Date.now()-f<6e5)return e;if(!g){g=h();try{return await g}finally{g=null}}return g}async function j(a){let b=(await i()).find(b=>b&&b.id===a);return b?{provider:"opencode",model:b.id}:"big-pickle"===a||String(a).endsWith("-free")?{provider:"opencode",model:a}:null}async function k(){return await i()}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7774,7965,5502,1522,4646,3904,8851,8946,8129,3148,9884,871,7828,7353,9276,2547,7456,5841],()=>b(b.s=26814));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=5018,a.ids=[5018],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},38775:(a,b,c)=>{c.d(b,{d_:()=>j,mA:()=>h});var d=c(89718),e=c(66451),f=c(99471);c(45502);let g={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function h(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&g[b.providerAlias]?{...b,provider:g[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);if(e)return{provider:e.id,model:c.model};let f=(await (0,d.Fh)({type:"custom-video"})).find(a=>a.prefix===c.providerAlias);return f?{provider:f.id,model:c.model}:{provider:c.provider,model:c.model}}if(await (0,d.Dj)(c.model))return{provider:null,model:c.model};let f=await i(c.model);return f||(0,e.js)(a,d.OM)}async function i(a){try{let b=(await (0,d.uv)()).find(b=>b&&b.id===a&&("llm"===b.type||!b.type));if(b&&b.providerAlias)return{provider:(0,e.g2)(b.providerAlias),model:b.id}}catch{}try{let b=await (0,d.OM)(),c=(0,e.sc)(a,b);if(c)return c}catch{}let b=(0,e.PN)(a);if(b)return{provider:b,model:a};try{let b=await (0,f.w)(a);if(b)return b}catch{}return null}async function j(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},47370:(a,b,c)=>{c.d(b,{BY:()=>d.BY,E5:()=>d.E5,QB:()=>d.QB,SL:()=>d.SL,Zx:()=>d.Zx,_V:()=>d._V,j$:()=>d.j$,ox:()=>d.ox,rg:()=>d.rg,sZ:()=>d.sZ,uw:()=>d.uw,wV:()=>d.wV});var d=c(5129)},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},65361:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>aa,patchFetch:()=>_,routeModule:()=>X,serverHooks:()=>$,workAsyncStorage:()=>Y,workUnitAsyncStorage:()=>Z});var d={};c.r(d),c.d(d,{OPTIONS:()=>V,POST:()=>W});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23433),w=c(29273),x=c(89718),y=c(38775),z=c(89865),A=c(60290),B=c(47456),C=c(85640),D=c(39141);let E={"jina-ai":"https://api.jina.ai/v1/embeddings"},F=a=>D.B$[a]?.embeddingConfig||{};function G(a){let b=F(a);return{buildUrl:()=>F(a).baseUrl||E[a],buildHeaders:a=>({"Content-Type":"application/json",...{Authorization:`Bearer ${a.apiKey||a.accessToken}`},...b.headers||{}}),buildBody:(a,{input:b,encoding_format:c,dimensions:d})=>{let e={model:a,input:b};if(c&&(e.encoding_format=c),null!=d&&""!==d){let a=Number(d);Number.isFinite(a)&&a>0&&(e.dimensions=a)}return e},normalize:a=>a}}function H(a){return a.startsWith("models/")?a:`models/${a}`}let I={buildUrl:(a,b,{input:c}={})=>{let d=b.apiKey||b.accessToken,e=H(a),f=Array.isArray(c)?"batchEmbedContents":"embedContent";return`https://generativelanguage.googleapis.com/v1beta/${e}:${f}?key=${encodeURIComponent(d)}`},buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,{input:b,dimensions:c})=>{let d=H(a),e=Number(c),f=Number.isFinite(e)&&e>0;return Array.isArray(b)?{requests:b.map(a=>({model:d,content:{parts:[{text:String(a)}]},...f?{outputDimensionality:e}:{}}))}:{model:d,content:{parts:[{text:String(b)}]},...f?{outputDimensionality:e}:{}}},normalize:(a,b)=>{if("list"===a.object&&Array.isArray(a.data))return a;let c=[];return Array.isArray(a.embeddings)?c=a.embeddings.map((a,b)=>({object:"embedding",index:b,embedding:a.values||[]})):a.embedding?.values&&(c=[{object:"embedding",index:0,embedding:a.embedding.values}]),{object:"list",data:c,model:b,usage:{prompt_tokens:0,total_tokens:0}}}};var J=c(74986);let K={...G("openai"),buildUrl:(a,b)=>{let c=(b?.providerSpecificData?.baseUrl||"https://api.openai.com/v1").replace(/\/$/,"").replace(/\/embeddings$/,"");return`${c}/embeddings`},buildHeaders:a=>(0,J.im)({"Content-Type":"application/json"},a?.providerSpecificData||{},{Authorization:`Bearer ${a?.apiKey||a?.accessToken}`})},L=G("openai");class M extends Error{constructor(){super('Self-hosted Embedding needs an endpoint: set this connection\'s baseUrl to the OpenAI base URL of your server, e.g. http://host:8080/v1 (note the /v1 — "/embeddings" is appended to it). Refusing to fall back to api.openai.com, which would send your input and API key to OpenAI.'),this.name="MissingBaseUrlError",this.isConfigError=!0}}let N={...L,buildUrl:(a,b)=>{let c=b?.providerSpecificData?.baseUrl;if(!c||!String(c).trim())throw new M;let d=String(c).trim().replace(/\/$/,"").replace(/\/embeddings$/,"");return`${d}/embeddings`}};var O=c(4630);let P={...Object.fromEntries(["openai","openrouter","mistral","voyage-ai","fireworks","together","nebius","github","nvidia","jina-ai","vercel-ai-gateway"].map(a=>[a,G(a)])),gemini:I,google_ai_studio:I,"selfhosted-embedding":N,"ollama-local":{buildUrl:(a,b)=>{let c=((0,O.Ak)(b)||"").replace(/\/+$/,"");return`${c}/v1/embeddings`},buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,{input:b,encoding_format:c,dimensions:d})=>{let e={model:a,input:b};if(c&&(e.encoding_format=c),null!=d&&""!==d){let a=Number(d);Number.isFinite(a)&&a>0&&(e.dimensions=a)}return e},normalize:a=>a}};async function Q({body:a,modelInfo:b,credentials:c,log:d,onCredentialsRefreshed:e,onRequestSuccess:f}){let g,h,i,j,k,{provider:l,model:m}=b,n=a.input;if(!n)return(0,z.A1)(A.gx.BAD_REQUEST,"Missing required field: input");if("string"!=typeof n&&!Array.isArray(n))return(0,z.A1)(A.gx.BAD_REQUEST,"input must be a string or array of strings");let o=P[l]?P[l]:l?.startsWith?.("openai-compatible-")||l?.startsWith?.("custom-embedding-")?K:null;if(!o)return(0,z.A1)(A.gx.BAD_REQUEST,`Provider '${l}' does not support embeddings.`);let p={input:n};try{g=o.buildUrl(m,c,p),h=o.buildHeaders(c,p),i=o.buildBody(m,{input:n,encoding_format:a.encoding_format||"float",dimensions:a.dimensions})}catch(a){return d?.debug?.("EMBEDDINGS",`Request build failed: ${a.message}`),(0,z.A1)(A.gx.BAD_REQUEST,`[${l}/${m}] ${a.message}`)}d?.debug?.("EMBEDDINGS",`${l.toUpperCase()} | ${m} | input_type=${Array.isArray(n)?`array[${n.length}]`:"string"}`);try{j=await fetch(g,{method:"POST",headers:h,body:JSON.stringify(i),..."function"==typeof AbortSignal?.timeout?{signal:AbortSignal.timeout(A.pH)}:{}})}catch(b){let a=(0,z.lR)(b,l,m,A.gx.BAD_GATEWAY);return d?.debug?.("EMBEDDINGS",`Fetch error: ${a}`),(0,z.A1)(A.gx.BAD_GATEWAY,a)}let q=(0,B.SB)(l);if(!q?.noAuth&&(j.status===A.gx.UNAUTHORIZED||j.status===A.gx.FORBIDDEN)){let a=await (0,C.qZ)(()=>q.refreshCredentials(c,d),3,d);if(a?.accessToken||a?.apiKey){d?.info?.("TOKEN",`${l.toUpperCase()} | refreshed for embeddings`),Object.assign(c,a),e&&await e(a);try{let a=o.buildHeaders(c,p),b=o.buildUrl(m,c,p);j=await fetch(b,{method:"POST",headers:a,body:JSON.stringify(i)})}catch{d?.warn?.("TOKEN",`${l.toUpperCase()} | retry after refresh failed`)}}else d?.warn?.("TOKEN",`${l.toUpperCase()} | refresh failed`)}if(!j.ok){let{statusCode:a,message:b}=await (0,z.zL)(j),c=(0,z.lR)(Error(b),l,m,a);return d?.debug?.("EMBEDDINGS",`Provider error: ${c}`),(0,z.A1)(a,c)}try{k=await j.json()}catch{return(0,z.A1)(A.gx.BAD_GATEWAY,`Invalid JSON response from ${l}`)}f&&await f();let r=o.normalize(k,m);return d?.debug?.("EMBEDDINGS",`Success | usage=${JSON.stringify(r.usage||{})}`),{success:!0,usage:r.usage||null,response:new Response(JSON.stringify(r),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}var R=c(7803),S=c(67828),T=c(47370);async function U(a){let b;try{b=await a.json()}catch{return R.warn("EMBEDDINGS","Invalid JSON body"),(0,z.yj)(A.gx.BAD_REQUEST,"Invalid JSON body")}let c=new URL(a.url),d=b.model;R.request("POST",`${c.pathname} | ${d}`);let{apiKey:e,valid:f}=await (0,v.$A)(a);if(e?R.debug("AUTH",`API Key: ${R.maskKey(e)}`):R.debug("AUTH","No API key provided (local mode)"),(await (0,x.mt)()).requireApiKey){if(!e)return R.warn("AUTH","Missing API key (requireApiKey=true)"),(0,z.yj)(A.gx.UNAUTHORIZED,"Missing API key");if(!f)return R.warn("AUTH","Invalid API key (requireApiKey=true)"),(0,z.yj)(A.gx.UNAUTHORIZED,"Invalid API key")}if(!d)return R.warn("EMBEDDINGS","Missing model"),(0,z.yj)(A.gx.BAD_REQUEST,"Missing model");if(!b.input)return R.warn("EMBEDDINGS","Missing input"),(0,z.yj)(A.gx.BAD_REQUEST,"Missing required field: input");let g=await (0,y.mA)(d);if(!g.provider)return R.warn("EMBEDDINGS","Invalid model format",{model:d}),(0,z.yj)(A.gx.BAD_REQUEST,"Invalid model format");let{provider:h,model:i}=g,j=await (0,w.K)(a,{model:`${h}/${i}`,body:b});if(j.error)return j.error;d!==`${h}/${i}`?R.info("ROUTING",`${d} → ${h}/${i}`):R.info("ROUTING",`Provider: ${h}, Model: ${i}`);let k=new Set,l=null,m=null;for(;;){let a=await (0,v.c1)(h,k,i);if(!a||a.allRateLimited){if(a?.allRateLimited){let b=l||a.lastError||"Unavailable",c=m||Number(a.lastErrorCode)||A.gx.SERVICE_UNAVAILABLE;return R.warn("EMBEDDINGS",`[${h}/${i}] ${b} (${a.retryAfterHuman})`),(0,z.wO)(c,`[${h}/${i}] ${b}`,a.retryAfter,a.retryAfterHuman)}if(0===k.size)return R.error("AUTH",`No credentials for provider: ${h}`),(0,z.yj)(A.gx.BAD_REQUEST,`No credentials for provider: ${h}`);return R.warn("EMBEDDINGS","No more accounts available",{provider:h}),(0,z.yj)(m||A.gx.SERVICE_UNAVAILABLE,l||"All accounts unavailable")}R.info("AUTH",`\x1b[32mUsing ${h} account: ${a.connectionName}\x1b[0m`);let d=await (0,S.checkAndRefreshToken)(h,a,(0,B.SB)(h)),f=await Q({body:{...b,model:`${h}/${i}`},modelInfo:{provider:h,model:i},credentials:d,log:R,onCredentialsRefreshed:async b=>{await (0,S.vN)(a.connectionId,{...b,existingProviderSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,v.Pt)(a.connectionId,a,i)}});if(f.success){let b=function(a){if(!a||"object"!=typeof a||Array.isArray(a)||!0===a.estimated)return null;let b=a.prompt_tokens??a.input_tokens,c=a.completion_tokens??a.output_tokens??0,d=a.total_tokens;return!Number.isSafeInteger(b)||b<=0||0!==c||d!==b?null:{prompt_tokens:b,completion_tokens:0,total_tokens:d}}(f.usage);return b&&(0,T.sZ)({provider:h,model:i,connectionId:a.connectionId,apiKey:e,endpoint:c.pathname,tokens:b,status:"success"}).catch(()=>{}),f.response}let{shouldFallback:g}=await (0,v.vk)(a.connectionId,f.status,f.error,h,i);if(g){R.warn("AUTH",`Account ${a.connectionName} unavailable (${f.status}), trying fallback`),k.add(a.connectionId),l=f.error,m=f.status;continue}return f.response}}async function V(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function W(a){return await U(a)}let X=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/embeddings/route",pathname:"/api/v1/embeddings",filename:"route",bundlePath:"app/api/v1/embeddings/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/embeddings/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:Y,workUnitAsyncStorage:Z,serverHooks:$}=X;function _(){return(0,g.patchFetch)({workAsyncStorage:Y,workUnitAsyncStorage:Z})}async function aa(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),X.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/embeddings/route";"/index"===d&&(d="/");let e=await X.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||X.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===X.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await X.getIncrementalCache(a,x,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>X.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>X.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await X.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await X.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await X.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},66451:(a,b,c)=>{c.d(b,{PN:()=>k,Xh:()=>l,ff:()=>i,g2:()=>j,js:()=>n,sc:()=>m});var d=c(45502),e=c(27335);let f={el:"elevenlabs",jina:"jina-ai","jina-ai":"jina-ai",polly:"aws-polly","aws-polly":"aws-polly"};for(let a of d.A)for(let b of(f[a.id]=a.id,a.alias&&(f[a.alias]=a.id),a.aliases||[]))f[b]=a.id;let g={"grok-build":"gcli/grok-build"},h=new Map;for(let a of d.A)a.noAuth&&a.modelsFetcher&&a.alias&&h.set(a.id,a.alias);function i(a,b){let c,d,e;if(a&&"object"==typeof a?(c=a.requestedModel,d=a.provider,e=a.model):(c=a,d=b?.provider,e=b?.model),!c||c.includes("/"))return c;let f=h.get(d);return f?`${f}/${e}`:c}function j(a){return f[a]||a}function k(a){if(!a)return null;let b=[];for(let[c,d]of Object.entries(e.PROVIDER_MODELS))Array.isArray(d)&&d.some(b=>b&&b.id===a)&&b.push(c);if(0===b.length)return null;if(1===b.length)return j(b[0]);let c=b.find(b=>a.startsWith(b));return c?j(c):null}function l(a){if(!a)return{provider:null,model:null,isAlias:!1,providerAlias:null};if(a.includes("/")){let b=a.indexOf("/"),c=a.slice(0,b),d=a.slice(b+1);return{provider:j(c),model:d,isAlias:!1,providerAlias:c}}return{provider:null,model:a,isAlias:!0,providerAlias:null}}function m(a,b){if(!b)return null;let c=b[a];if(!c)return null;if("string"==typeof c&&c.includes("/")){let a=c.indexOf("/");return{provider:j(c.slice(0,a)),model:c.slice(a+1)}}return"object"==typeof c&&c.provider&&c.model?{provider:j(c.provider),model:c.model}:null}async function n(a,b){let c=l(a);if(!c.isAlias)return{provider:c.provider,model:c.model};let d="function"==typeof b?await b():b,e=m(c.model,d)||m(c.model,g);return e||{provider:function(a){if(!a)return"openai";let b=a.toLowerCase();return"default"===b||"auto"===b?"cursor":o.find(([a])=>a.test(b))?.[1]||"openai"}(c.model),model:c.model}}let o=[[/^claude-/,"anthropic"],[/^gemini-/,"gemini"],[/^grok-/,"xai"],[/^gpt-/,"openai"],[/^o[134]/,"openai"],[/^deepseek-/,"openrouter"]]},67677:(a,b,c)=>{c.d(b,{Gh:()=>k,IF:()=>p,O9:()=>g,OF:()=>o,WL:()=>h,_6:()=>j,_L:()=>m,bC:()=>n,f5:()=>l,lm:()=>f});var d=c(19956);let e="1"===process.env.LOG_USAGE_VERBOSE,f={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function g(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=2e3),void 0!==b.prompt_tokens&&(b.prompt_tokens+=2e3),void 0!==b.total_tokens?b.total_tokens+=2e3:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function h(a,b){if(!a||"object"!=typeof a)return a;let c={[d.h.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.OPENAI_RESPONSES]:["input_tokens","output_tokens","input_tokens_details","output_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"]},e=c[b];b===d.h.GEMINI_CLI||b===d.h.ANTIGRAVITY?e=c[d.h.GEMINI]:b===d.h.OPENAI_RESPONSE?e=c[d.h.OPENAI_RESPONSES]:e||(e=c.default);let f={};for(let b of e)void 0!==a[b]&&(f[b]=a[b]);return f}function i(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b={},c=(a,c)=>{if(null==c)return;let d=Number(c);Number.isFinite(d)&&(b[a]=d)},d=(a,c)=>{if(null==c||""===c)return;let d=Number(c);Number.isFinite(d)&&d>=0&&(b[a]=d)};return(c("prompt_tokens",a?.prompt_tokens),c("completion_tokens",a?.completion_tokens),c("total_tokens",a?.total_tokens),c("cache_read_input_tokens",a?.cache_read_input_tokens),c("cache_creation_input_tokens",a?.cache_creation_input_tokens),c("cached_tokens",a?.cached_tokens),c("reasoning_tokens",a?.reasoning_tokens),d("cost_usd",a?.cost_usd),d("cost_in_usd",a?.cost_in_usd),d("cost_in_usd_ticks",a?.cost_in_usd_ticks),a?.prompt_tokens_details&&"object"==typeof a.prompt_tokens_details&&(b.prompt_tokens_details=a.prompt_tokens_details),a?.completion_tokens_details&&"object"==typeof a.completion_tokens_details&&(b.completion_tokens_details=a.completion_tokens_details),0===Object.keys(b).length)?null:b}function j(a){let b;if(!a||"object"!=typeof a||Array.isArray(a))return null;let c=a=>Number.isFinite(Number(a))?Number(a):0,d=c(a.completion_tokens??a.output_tokens),e=c(a.reasoning_tokens),f=c(a.cache_creation_input_tokens??a.prompt_tokens_details?.cache_creation_tokens),g=c(a.prompt_tokens??a.input_tokens);void 0===a.cached_tokens&&(void 0!==a.cache_read_input_tokens||void 0!==a.cache_creation_input_tokens)?g=g+(b=c(a.cache_read_input_tokens))+f:b=c(a.cached_tokens??a.prompt_tokens_details?.cached_tokens);let h={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,cached_tokens:b,cache_creation_input_tokens:f},i=b=>{if(null===a[b]||void 0===a[b]||""===a[b])return;let c=Number(a[b]);Number.isFinite(c)&&c>=0&&(h[b]=c)};return i("cost_usd"),i("cost_in_usd"),i("cost_in_usd_ticks"),e>0&&(h.reasoning_tokens=e),h}function k(a){if(!a||"object"!=typeof a)return!1;for(let b of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof a[b]&&a[b]>0)return!0;return!1}function l(a){if(!a||"object"!=typeof a)return null;if("message_start"===a.type&&a.message?.usage&&"object"==typeof a.message.usage){let b=a.message.usage;return i({prompt_tokens:b.input_tokens||0,completion_tokens:b.output_tokens||0,cache_read_input_tokens:b.cache_read_input_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks})}if("message_delta"===a.type&&a.usage&&"object"==typeof a.usage)return i({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,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks});if(("response.completed"===a.type||"response.done"===a.type)&&a.response?.usage&&"object"==typeof a.response.usage){let b=a.response.usage,c=b.input_tokens_details?.cached_tokens;return i({prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cached_tokens:c,reasoning_tokens:b.output_tokens_details?.reasoning_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks,prompt_tokens_details:c?{cached_tokens:c}:void 0})}if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return i({prompt_tokens:a.usage.prompt_tokens,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens||a.usage.prompt_cache_hit_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks,prompt_tokens_details:a.usage.prompt_tokens_details,completion_tokens_details:a.usage.completion_tokens_details});let b=a.usageMetadata||a.response?.usageMetadata;return b&&"object"==typeof b?i({prompt_tokens:b.promptTokenCount||0,completion_tokens:b.candidatesTokenCount||0,total_tokens:b.totalTokenCount,cached_tokens:b.cachedContentTokenCount,reasoning_tokens:b.thoughtsTokenCount}):!0===a.done&&"number"==typeof a.prompt_eval_count?i({prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}):null}function m(a,b){if(!a)return b||null;if(!b)return a;let c={...a};for(let[a,d]of Object.entries(b))"number"==typeof d&&Number.isFinite(d)?c[a]=Math.max("number"==typeof c[a]?c[a]:0,d):d&&"object"==typeof d&&(c[a]=d);return c}function n(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a).length;return Math.ceil(b/4)}catch(a){return 0}}function o(a,b,c=d.h.OPENAI){var e,f;return e=n(a),f=b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c===d.h.CLAUDE?g({input_tokens:e,output_tokens:f,estimated:!0}):g({prompt_tokens:e,completion_tokens:f,total_tokens:e+f,estimated:!0})}function p(a,b,c=null,d=null,g=null){if(!b||"object"!=typeof b||!e)return;let h=a?.toUpperCase()||"UNKNOWN",i=b?.prompt_tokens||b?.input_tokens||0,j=b?.completion_tokens||b?.output_tokens||0,k=d?d.slice(0,8)+"...":"unknown",l=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${f.green}[USAGE] ${h} | in=${i} | out=${j} | account=${k}${f.reset}`;b.estimated&&(l+=` ${f.yellow}(estimated)${f.reset}`);let m=b.cache_read_input_tokens||b.cached_tokens||b.prompt_tokens_details?.cached_tokens;m&&(l+=` | cache_read=${m}`);let n=b.cache_creation_input_tokens;n&&(l+=` | cache_create=${n}`);let o=b.reasoning_tokens;o&&(l+=` | reasoning=${o}`),console.log(l)}},68001:(a,b,c)=>{c.d(b,{S:()=>f});var d=c(38071);let e=["big-pickle"],f={"openrouter-free":a=>a.filter(a=>a.pricing?.prompt==="0"&&a.pricing?.completion==="0"&&a.context_length>=2e5).map(a=>({id:a.id,name:a.name,contextLength:a.context_length})).sort((a,b)=>b.contextLength-a.contextLength),"opencode-free":a=>a.filter(a=>a.id?.endsWith("-free")||e.includes(a.id)).map(a=>({id:a.id,name:a.id})),"mimo-free":a=>(Array.isArray(a)?a:[]).filter(a=>a.id?.startsWith("mimo")||a.name?.toLowerCase().includes("mimo")).map(a=>({id:a.id,name:a.name||a.id})),"nous-free":d.pD}},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},74075:a=>{a.exports=require("zlib")},74986:(a,b,c)=>{c.d(b,{im:()=>i,z5:()=>j});let d={default:{label:"Default",headers:{}},"claude-cli":{label:"Claude CLI",headers:c(92675).$B},"codex-cli":{label:"Codex CLI",headers:{originator:"codex_cli_rs","User-Agent":"codex_cli_rs/0.136.0"}},openclaw:{label:"OpenClaw",headers:{"User-Agent":"openclaw/2026.2.3"}},custom:{label:"Custom",headers:{}}},e=new Set(["authorization","x-api-key","api-key","cookie"]);function f(a){return d[a]?a:"default"}function g(a){let b={};for(let[c,d]of a){let a=String(c||"").trim();if(!a||e.has(String(a||"").trim().toLowerCase())||null==d)continue;let f=String(d).trim();f&&(b[a]=f)}return b}function h(a){if(!a)return{};if("object"==typeof a&&!Array.isArray(a))return g(Object.entries(a));let b=String(a).trim();if(!b)return{};if(b.startsWith("{")){let a=JSON.parse(b);return!a||"object"!=typeof a||Array.isArray(a)?{}:g(Object.entries(a))}return g(function(a){let b=[];for(let c of String(a||"").split(/\r?\n/)){let a=c.trim();if(!a||a.startsWith("#"))continue;let d=a.indexOf(":");d<=0||b.push([a.slice(0,d),a.slice(d+1)])}return b}(b))}function i(a={},b={},c={}){return{...a||{},...function(a={}){let b=f(a.clientIdentityProfile);return"custom"===b?h(a.clientIdentityHeaders):{...d[b]?.headers||{}}}(b),...c||{}}}function j(a={}){let b=f(a.clientIdentityProfile);return{clientIdentityProfile:b,clientIdentityHeaders:"custom"===b?h(a.clientIdentityHeaders):{}}}},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},89865:(a,b,c)=>{c.d(b,{A1:()=>h,lR:()=>j,wO:()=>i,yj:()=>f,zL:()=>g});var d=c(87252),e=c(60290);function f(a,b,c){let e;return new Response(JSON.stringify((e=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:e.type,code:c??e.code}})),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function g(a,b=null){let c,f="";try{f=await a.text()}catch{f=""}let h="",i=null,j=!1;try{let a=JSON.parse(f);if(h=a.error?.message||a.message||a.error||f,c=a.error?.code||a.code,i=a.error?.metadata?.provider_name||null,"string"==typeof h){let a=/^Invalid URL:\s*(.*)$/.exec(h);a&&(j=""===a[1].trim())}}catch{h=f}let k="string"==typeof h?h:JSON.stringify(h);if((i||j)&&(a.status===e.gx.BAD_GATEWAY||a.status===e.gx.SERVER_ERROR||502===a.status||500===a.status)){let a=i?`OpenRouter upstream "${i}" returned an invalid routing URL — its endpoint is misconfigured on OpenRouter's side`:"Upstream returned an invalid (empty) routing URL";k=`${k} — ${a}. Try a different model, or set \`provider: { allow_fallbacks: true }\` to opt into OpenRouter's automatic upstream fallback.`}let l=k||d.O[a.status]||`Upstream error: ${a.status}`;if(b&&"function"==typeof b.parseError)try{let d=b.parseError(a,f);if(d&&"object"==typeof d){let b=d.message&&d.message!==f?d.message:l;return{statusCode:d.status||a.status,message:b,resetsAtMs:d.resetsAtMs,code:d.code??c}}}catch{}return{statusCode:a.status,message:l,code:c}}function h(a,b,c,d){return{success:!1,status:a,error:b,resetsAtMs:c,response:f(a,b,d)}}function i(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function j(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},99471:(a,b,c)=>{c.d(b,{Y:()=>k,w:()=>j});var d=c(68001);let e=null,f=0,g=null;async function h(){let a=new AbortController,b=setTimeout(()=>a.abort(),5e3);try{let b=await fetch("https://opencode.ai/zen/v1/models",{signal:a.signal});if(!b.ok)return e||[];let c=await b.json(),g=c.data??c.models??c,h=d.S["opencode-free"](Array.isArray(g)?g:[]);return e=h,f=Date.now(),h}catch{return e||[]}finally{clearTimeout(b)}}async function i(){if(e&&Date.now()-f<6e5)return e;if(!g){g=h();try{return await g}finally{g=null}}return g}async function j(a){let b=(await i()).find(b=>b&&b.id===a);return b?{provider:"opencode",model:b.id}:"big-pickle"===a||String(a).endsWith("-free")?{provider:"opencode",model:a}:null}async function k(){return await i()}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7774,7965,5502,1522,4646,3904,8851,8946,8129,3148,9884,871,7828,7353,9276,2547,7456,5841],()=>b(b.s=65361));module.exports=c})();
@@ -1,6 +1,6 @@
1
- "use strict";(()=>{var a={};a.id=8870,a.ids=[8870],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},36244:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>aC,patchFetch:()=>aB,routeModule:()=>ax,serverHooks:()=>aA,workAsyncStorage:()=>ay,workUnitAsyncStorage:()=>az});var d={};c.r(d),c.d(d,{OPTIONS:()=>av,POST:()=>aw});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23433),w=c(29273),x=c(89718),y=c(38775),z=c(89865),A=c(60290),B=c(85640),C=c(47456),D=c(39141);let E=a=>D.B$[a]?.imageConfig||{};function F(a){let b=E(a);return{buildUrl:()=>E(a).baseUrl,buildHeaders:a=>{let c={"Content-Type":"application/json",...b.headers||{}},d=a?.apiKey||a?.accessToken;return d&&(c.Authorization=`Bearer ${d}`),c},buildBody:(a,c)=>{let{prompt:d,n:e=1,size:f="1024x1024",quality:g,style:h,response_format:i}=c,j={model:a,prompt:d,n:e,size:f};if(g&&(j.quality=g),h&&(j.style=h),i&&(j.response_format=i),Array.isArray(b.bodyFields)){let a={};for(let c of b.bodyFields)void 0!==j[c]&&(a[c]=j[c]);return a}return j},normalize:a=>a}}let G=a=>new Promise(b=>setTimeout(b,a));function H(a){return a&&"string"==typeof a&&({"1024x1024":"1:1","1024x1792":"9:16","1792x1024":"16:9","1024x1536":"2:3","1536x1024":"3:2"})[a]||"1:1"}async function I(a){let b=await fetch(a);if(!b.ok)throw Error(`Failed to fetch image: ${b.status}`);let c=await b.arrayBuffer();return Buffer.from(c).toString("base64")}function J(){return Math.floor(Date.now()/1e3)}let K=D.B$.gemini?.imageConfig?.baseUrl;var L=c(77598),M=c(4630),N=c(81358);let O=M.xq.codex.baseUrl,P="-image",Q="high";function R(a){return a&&"string"==typeof a?/^data:image\//i.test(a)||/^https?:\/\//i.test(a)?a:`data:image/png;base64,${a}`:null}async function S(a,b,c={}){let d=a.body.getReader(),e=new TextDecoder,f="",g=null,h=null,i=0,j=0;for(;;){let a,{done:k,value:l}=await d.read();if(k)break;for(i+=l?.byteLength||0,f+=e.decode(l,{stream:!0});-1!==(a=f.indexOf("\n\n"));){let d=f.slice(0,a);f=f.slice(a+2);let e=d.split("\n"),k=null,l="";for(let a of e)a.startsWith("event:")?k=a.slice(6).trim():a.startsWith("data:")&&(l+=a.slice(5).trim());if(!k)continue;k!==h&&(b?.info?.("IMAGE",`codex progress: ${k}`),h=k);let m=Date.now();if(c.onProgress&&m-j>200&&(j=m,c.onProgress({stage:k,bytesReceived:i})),"response.image_generation_call.partial_image"===k&&l)try{let a=JSON.parse(l);c.onPartialImage&&a?.partial_image_b64&&c.onPartialImage({b64_json:a.partial_image_b64,index:a.partial_image_index})}catch{}if("response.output_item.done"===k&&l)try{let a=JSON.parse(l),b=a?.item;b?.type==="image_generation_call"&&b.result&&(g=b.result)}catch{}}}return g}let T=D.B$.sdwebui?.imageConfig?.baseUrl,U=D.B$.comfyui?.imageConfig?.baseUrl,V=D.B$.huggingface?.imageConfig?.baseUrl,W=D.B$.nanobanana?.imageConfig||{},X=W.baseUrl,Y=W.pollUrl,Z=D.B$["fal-ai"]?.imageConfig?.baseUrl,$=D.B$["stability-ai"]?.imageConfig?.baseUrl,_=D.B$["black-forest-labs"]?.imageConfig?.baseUrl,aa=D.B$.runwayml?.imageConfig?.baseUrl,ab=D.B$["cloudflare-ai"]?.imageConfig?.baseUrl,ac=new Set(["@cf/black-forest-labs/flux-2-dev","@cf/black-forest-labs/flux-2-klein-4b","@cf/black-forest-labs/flux-2-klein-9b"]),ad=["negative_prompt","guidance","seed","num_steps","steps","strength"];function ae(a){var b;let c;return{...(b=a.size,!(c=/^(\d+)x(\d+)$/.exec(String(b||"")))?{}:{width:Number(c[1]),height:Number(c[2])}),...Number.isFinite(Number(a.width))?{width:Number(a.width)}:{},...Number.isFinite(Number(a.height))?{height:Number(a.height)}:{}}}async function af(a){if(Array.isArray(a))return{bytes:a,b64:Buffer.from(a).toString("base64")};if("string"!=typeof a)return null;let b=a.trim();if(!b)return null;if(/^https?:\/\//i.test(b)){let a=await I(b);return{bytes:ag(a),b64:a}}let c=/^data:image\/[^;]+;base64,(.+)$/i.exec(b),d=c?c[1]:b;return{bytes:ag(d),b64:d}}function ag(a){try{return Array.from(Buffer.from(a,"base64"))}catch{return a}}function ah(a,b,c){for(let d of ad){let e=b[d];null!=e&&""!==e&&c(a,d,e)}}async function ai(a){let b={prompt:a.prompt,...ae(a)};ah(b,a,(a,b,c)=>{a[b]=c});let c=await af(a.image);c&&(b.image_b64=c.b64,b.image=c.bytes);let d=await af(a.mask_image||a.maskImage||a.mask);return d&&(b.mask_b64=d.b64,b.mask=d.bytes,b.mask_image=d.bytes),b}function aj(a){var b;if(a?.created&&Array.isArray(a?.data))return a;let c=a?.result??a,d=Array.isArray(c?.responses)?c.responses.find(a=>a?.success!==!1)?.result:null;if(d)return aj(d);let e="string"==typeof(b=("string"==typeof c?c:null)||c?.image||c?.data?.[0]?.b64_json||c?.data?.[0]?.url)&&b?/^data:image\/[^;]+;base64,/i.test(b)?{b64_json:b.replace(/^data:image\/[^;]+;base64,/i,"")}:/^https?:\/\//i.test(b)?{url:b}:{b64_json:b}:null;return{created:J(),data:e?[e]:[]}}var ak=c(50186);async function al(a){if(!a||"string"!=typeof a)return null;let b=(0,ak.W$)(a);if(!b&&/^https?:\/\//i.test(a)){let c=await (0,ak.ni)(a,{timeoutMs:15e3});b=c?(0,ak.W$)(c.url):null}return b?.mimeType?.startsWith("image/")?{inlineData:{mimeType:(0,ak.$)(Buffer.from(b.base64.slice(0,32),"base64"))||b.mimeType,data:b.base64}}:/^[A-Za-z0-9+/]/.test(a)&&a.length>100&&!a.startsWith("http")?{inlineData:{mimeType:"image/png",data:a}}:null}let am={openai:F("openai"),minimax:F("minimax"),openrouter:F("openrouter"),recraft:F("recraft"),"vercel-ai-gateway":F("vercel-ai-gateway"),xai:F("xai"),gemini:{buildUrl:(a,b)=>{let c=b?.apiKey||b?.accessToken,d=a.replace(/^models\//,"");return`${K}/${d}:generateContent?key=${encodeURIComponent(c)}`},buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,b)=>({contents:[{parts:[{text:b.prompt}]}],generationConfig:{responseModalities:["TEXT","IMAGE"]}}),normalize:(a,b)=>{let c=(a.candidates?.[0]?.content?.parts||[]).filter(a=>a.inlineData?.data).map(a=>({b64_json:a.inlineData.data}));return{created:J(),data:c.length>0?c:[{b64_json:"",revised_prompt:b}]}}},codex:{stream:!0,buildUrl:()=>O,buildHeaders:a=>{let b=(0,N.a)(a?.providerSpecificData,a?.idToken);return{accept:"text/event-stream, application/json",authorization:`Bearer ${a?.accessToken||""}`,"chatgpt-account-id":b||"","content-type":"application/json",originator:"codex_cli_rs",session_id:(0,L.randomUUID)(),"user-agent":"codex_cli_rs/0.136.0",version:"0.136.0","x-client-request-id":(0,L.randomUUID)()}},buildBody:(a,b)=>{let c=[];Array.isArray(b.images)&&b.images.forEach(a=>{let b=R(a);b&&c.push(b)});let d=R(b.image);d&&c.push(d);let e=b.image_detail||Q,f={type:"image_generation",output_format:(b.output_format||"png").toLowerCase()};return b.size&&""!==b.size&&(f.size=b.size),b.quality&&""!==b.quality&&(f.quality=b.quality),b.background&&""!==b.background&&(f.background=b.background),{model:a.endsWith(P)?a.slice(0,-P.length):a,instructions:"",input:[{type:"message",role:"user",content:function(a,b,c=Q){let d=[];return b.forEach((a,b)=>{d.push({type:"input_text",text:`<image name=image${b+1}>`}),d.push({type:"input_image",image_url:a,detail:c}),d.push({type:"input_text",text:"</image>"})}),d.push({type:"input_text",text:a}),d}(b.prompt,c,e)}],tools:[f],tool_choice:"auto",parallel_tool_calls:!1,prompt_cache_key:(0,L.randomUUID)(),stream:!0,store:!1,reasoning:null}},async parseResponse(a,{log:b,streamToClient:c,onRequestSuccess:d}){if(c){let c;return{sseResponse:(c=new ReadableStream({async start(c){let e=new TextEncoder,f=(a,b)=>{c.enqueue(e.encode(`event: ${a}
1
+ "use strict";(()=>{var a={};a.id=8870,a.ids=[8870],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},30274:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>aC,patchFetch:()=>aB,routeModule:()=>ax,serverHooks:()=>aA,workAsyncStorage:()=>ay,workUnitAsyncStorage:()=>az});var d={};c.r(d),c.d(d,{OPTIONS:()=>av,POST:()=>aw});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23433),w=c(29273),x=c(89718),y=c(38775),z=c(89865),A=c(60290),B=c(85640),C=c(47456),D=c(39141);let E=a=>D.B$[a]?.imageConfig||{};function F(a){let b=E(a);return{buildUrl:()=>E(a).baseUrl,buildHeaders:a=>{let c={"Content-Type":"application/json",...b.headers||{}},d=a?.apiKey||a?.accessToken;return d&&(c.Authorization=`Bearer ${d}`),c},buildBody:(a,c)=>{let{prompt:d,n:e=1,size:f="1024x1024",quality:g,style:h,response_format:i}=c,j={model:a,prompt:d,n:e,size:f};if(g&&(j.quality=g),h&&(j.style=h),i&&(j.response_format=i),Array.isArray(b.bodyFields)){let a={};for(let c of b.bodyFields)void 0!==j[c]&&(a[c]=j[c]);return a}return j},normalize:a=>a}}let G=a=>new Promise(b=>setTimeout(b,a));function H(a){return a&&"string"==typeof a&&({"1024x1024":"1:1","1024x1792":"9:16","1792x1024":"16:9","1024x1536":"2:3","1536x1024":"3:2"})[a]||"1:1"}async function I(a){let b=await fetch(a);if(!b.ok)throw Error(`Failed to fetch image: ${b.status}`);let c=await b.arrayBuffer();return Buffer.from(c).toString("base64")}function J(){return Math.floor(Date.now()/1e3)}let K=D.B$.gemini?.imageConfig?.baseUrl;var L=c(77598),M=c(4630),N=c(81358);let O=M.xq.codex.baseUrl,P="-image",Q="high";function R(a){return a&&"string"==typeof a?/^data:image\//i.test(a)||/^https?:\/\//i.test(a)?a:`data:image/png;base64,${a}`:null}async function S(a,b,c={}){let d=a.body.getReader(),e=new TextDecoder,f="",g=null,h=null,i=0,j=0;for(;;){let a,{done:k,value:l}=await d.read();if(k)break;for(i+=l?.byteLength||0,f+=e.decode(l,{stream:!0});-1!==(a=f.indexOf("\n\n"));){let d=f.slice(0,a);f=f.slice(a+2);let e=d.split("\n"),k=null,l="";for(let a of e)a.startsWith("event:")?k=a.slice(6).trim():a.startsWith("data:")&&(l+=a.slice(5).trim());if(!k)continue;k!==h&&(b?.info?.("IMAGE",`codex progress: ${k}`),h=k);let m=Date.now();if(c.onProgress&&m-j>200&&(j=m,c.onProgress({stage:k,bytesReceived:i})),"response.image_generation_call.partial_image"===k&&l)try{let a=JSON.parse(l);c.onPartialImage&&a?.partial_image_b64&&c.onPartialImage({b64_json:a.partial_image_b64,index:a.partial_image_index})}catch{}if("response.output_item.done"===k&&l)try{let a=JSON.parse(l),b=a?.item;b?.type==="image_generation_call"&&b.result&&(g=b.result)}catch{}}}return g}let T=D.B$.sdwebui?.imageConfig?.baseUrl,U=D.B$.comfyui?.imageConfig?.baseUrl,V=D.B$.huggingface?.imageConfig?.baseUrl,W=D.B$.nanobanana?.imageConfig||{},X=W.baseUrl,Y=W.pollUrl,Z=D.B$["fal-ai"]?.imageConfig?.baseUrl,$=D.B$["stability-ai"]?.imageConfig?.baseUrl,_=D.B$["black-forest-labs"]?.imageConfig?.baseUrl,aa=D.B$.runwayml?.imageConfig?.baseUrl,ab=D.B$["cloudflare-ai"]?.imageConfig?.baseUrl,ac=new Set(["@cf/black-forest-labs/flux-2-dev","@cf/black-forest-labs/flux-2-klein-4b","@cf/black-forest-labs/flux-2-klein-9b"]),ad=["negative_prompt","guidance","seed","num_steps","steps","strength"];function ae(a){var b;let c;return{...(b=a.size,!(c=/^(\d+)x(\d+)$/.exec(String(b||"")))?{}:{width:Number(c[1]),height:Number(c[2])}),...Number.isFinite(Number(a.width))?{width:Number(a.width)}:{},...Number.isFinite(Number(a.height))?{height:Number(a.height)}:{}}}async function af(a){if(Array.isArray(a))return{bytes:a,b64:Buffer.from(a).toString("base64")};if("string"!=typeof a)return null;let b=a.trim();if(!b)return null;if(/^https?:\/\//i.test(b)){let a=await I(b);return{bytes:ag(a),b64:a}}let c=/^data:image\/[^;]+;base64,(.+)$/i.exec(b),d=c?c[1]:b;return{bytes:ag(d),b64:d}}function ag(a){try{return Array.from(Buffer.from(a,"base64"))}catch{return a}}function ah(a,b,c){for(let d of ad){let e=b[d];null!=e&&""!==e&&c(a,d,e)}}async function ai(a){let b={prompt:a.prompt,...ae(a)};ah(b,a,(a,b,c)=>{a[b]=c});let c=await af(a.image);c&&(b.image_b64=c.b64,b.image=c.bytes);let d=await af(a.mask_image||a.maskImage||a.mask);return d&&(b.mask_b64=d.b64,b.mask=d.bytes,b.mask_image=d.bytes),b}function aj(a){var b;if(a?.created&&Array.isArray(a?.data))return a;let c=a?.result??a,d=Array.isArray(c?.responses)?c.responses.find(a=>a?.success!==!1)?.result:null;if(d)return aj(d);let e="string"==typeof(b=("string"==typeof c?c:null)||c?.image||c?.data?.[0]?.b64_json||c?.data?.[0]?.url)&&b?/^data:image\/[^;]+;base64,/i.test(b)?{b64_json:b.replace(/^data:image\/[^;]+;base64,/i,"")}:/^https?:\/\//i.test(b)?{url:b}:{b64_json:b}:null;return{created:J(),data:e?[e]:[]}}var ak=c(50186);async function al(a){if(!a||"string"!=typeof a)return null;let b=(0,ak.W$)(a);if(!b&&/^https?:\/\//i.test(a)){let c=await (0,ak.ni)(a,{timeoutMs:15e3});b=c?(0,ak.W$)(c.url):null}return b?.mimeType?.startsWith("image/")?{inlineData:{mimeType:(0,ak.$)(Buffer.from(b.base64.slice(0,32),"base64"))||b.mimeType,data:b.base64}}:/^[A-Za-z0-9+/]/.test(a)&&a.length>100&&!a.startsWith("http")?{inlineData:{mimeType:"image/png",data:a}}:null}let am={openai:F("openai"),minimax:F("minimax"),openrouter:F("openrouter"),recraft:F("recraft"),"vercel-ai-gateway":F("vercel-ai-gateway"),xai:F("xai"),gemini:{buildUrl:(a,b)=>{let c=b?.apiKey||b?.accessToken,d=a.replace(/^models\//,"");return`${K}/${d}:generateContent?key=${encodeURIComponent(c)}`},buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,b)=>({contents:[{parts:[{text:b.prompt}]}],generationConfig:{responseModalities:["TEXT","IMAGE"]}}),normalize:(a,b)=>{let c=(a.candidates?.[0]?.content?.parts||[]).filter(a=>a.inlineData?.data).map(a=>({b64_json:a.inlineData.data}));return{created:J(),data:c.length>0?c:[{b64_json:"",revised_prompt:b}]}}},codex:{stream:!0,buildUrl:()=>O,buildHeaders:a=>{let b=(0,N.a)(a?.providerSpecificData,a?.idToken);return{accept:"text/event-stream, application/json",authorization:`Bearer ${a?.accessToken||""}`,"chatgpt-account-id":b||"","content-type":"application/json",originator:"codex_cli_rs",session_id:(0,L.randomUUID)(),"user-agent":"codex_cli_rs/0.136.0",version:"0.136.0","x-client-request-id":(0,L.randomUUID)()}},buildBody:(a,b)=>{let c=[];Array.isArray(b.images)&&b.images.forEach(a=>{let b=R(a);b&&c.push(b)});let d=R(b.image);d&&c.push(d);let e=b.image_detail||Q,f={type:"image_generation",output_format:(b.output_format||"png").toLowerCase()};return b.size&&""!==b.size&&(f.size=b.size),b.quality&&""!==b.quality&&(f.quality=b.quality),b.background&&""!==b.background&&(f.background=b.background),{model:a.endsWith(P)?a.slice(0,-P.length):a,instructions:"",input:[{type:"message",role:"user",content:function(a,b,c=Q){let d=[];return b.forEach((a,b)=>{d.push({type:"input_text",text:`<image name=image${b+1}>`}),d.push({type:"input_image",image_url:a,detail:c}),d.push({type:"input_text",text:"</image>"})}),d.push({type:"input_text",text:a}),d}(b.prompt,c,e)}],tools:[f],tool_choice:"auto",parallel_tool_calls:!1,prompt_cache_key:(0,L.randomUUID)(),stream:!0,store:!1,reasoning:null}},async parseResponse(a,{log:b,streamToClient:c,onRequestSuccess:d}){if(c){let c;return{sseResponse:(c=new ReadableStream({async start(c){let e=new TextEncoder,f=(a,b)=>{c.enqueue(e.encode(`event: ${a}
2
2
  data: ${JSON.stringify(b)}
3
3
 
4
4
  `))};try{let c=await S(a,b,{onProgress:a=>f("progress",a),onPartialImage:a=>f("partial_image",a)});c?(d&&await d(),f("done",{created:J(),data:[{b64_json:c}]})):f("error",{message:"Codex did not return an image. Account may not be entitled (Plus/Pro required)."})}catch(a){f("error",{message:a?.message||"Stream failed"})}finally{c.close()}}}),new Response(c,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no","Access-Control-Allow-Origin":"*"}}))}}let e=await S(a,b);if(!e)throw Error("Codex did not return an image. Account may not be entitled (Plus/Pro required).");return{created:J(),data:[{b64_json:e}]}},normalize:a=>a},sdwebui:{noAuth:!0,buildUrl:()=>T,buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,b)=>{let{prompt:c,n:d=1,size:e="1024x1024"}=b,[f,g]=e.split("x").map(Number);return{prompt:c,width:f||512,height:g||512,steps:20,batch_size:d}},normalize:a=>{let b=Array.isArray(a.images)?a.images.map(a=>({b64_json:a})):[];return{created:J(),data:b}}},comfyui:{noAuth:!0,buildUrl:()=>U,buildHeaders:()=>({"Content-Type":"application/json"}),buildBody:(a,b)=>({prompt:b.prompt}),normalize:a=>a},huggingface:{buildUrl:a=>`${V}/${a}`,buildHeaders:a=>{let b={"Content-Type":"application/json"},c=a?.apiKey||a?.accessToken;return c&&(b.Authorization=`Bearer ${c}`),b},buildBody:(a,b)=>({inputs:b.prompt}),async parseResponse(a){let b=await a.arrayBuffer(),c=Buffer.from(b).toString("base64");return{created:J(),data:[{b64_json:c}]}},normalize:a=>a},nanobanana:{async:!0,buildUrl:()=>X,buildHeaders:a=>{let b={"Content-Type":"application/json"},c=a?.apiKey||a?.accessToken;return c&&(b.Authorization=`Bearer ${c}`),b},buildBody:(a,b)=>{let c=H(b.size),d=!!(b.image||Array.isArray(b.images)&&b.images.length),e={prompt:b.prompt,type:d?"IMAGETOIAMGE":"TEXTTOIAMGE",numImages:b.n||1,image_size:c,callBackUrl:"https://localhost/callback"};if(d){let a=Array.isArray(b.images)?b.images.filter(Boolean):[];b.image&&a.push(b.image),e.imageUrls=a}return e},async parseResponse(a,{headers:b}){let c=await a.json();if(200!==c.code)throw Error(c.msg||"NanoBanana submit failed");let d=c.data?.taskId;if(!d)throw Error("NanoBanana: no taskId returned");let e=`${Y}?taskId=${encodeURIComponent(d)}`,f=Date.now()+12e4;for(;Date.now()<f;){await G(1500);let a=await fetch(e,{headers:b});if(!a.ok)throw Error(`NanoBanana status ${a.status}`);let c=await a.json(),d=c.data?.successFlag;if(1===d)return c.data;if(2===d||3===d)throw Error(c.data?.errorMessage||"NanoBanana generation failed")}throw Error("NanoBanana polling timeout")},normalize:(a,b)=>{let c=a.response?.resultImageUrl||a.response?.originImageUrl;return c?{created:J(),data:[{url:c,revised_prompt:b}]}:{created:J(),data:[]}}},antigravity:{useExecutor:!0,buildUrl:()=>"",buildHeaders:()=>({}),buildBody:()=>({}),async executeViaExecutor(a,b,c,d){var e,f;let g,h=(0,C.SB)("antigravity");if(!h)throw Error("Antigravity executor not found");let i=[];Array.isArray(b.images)&&i.push(...b.images),Array.isArray(b.image)?i.push(...b.image):b.image&&i.push(b.image);let j=[];for(let a of i){let b=await al(a);if(!b){let a=Error("Invalid reference image. Use a data URL, HTTP(S) URL, or raw base64 image.");throw a.status=400,a.retryable=!1,a}j.push(b)}j.push({text:(e=b.prompt,g=(f=i.length)>0?`Use all ${f} attached reference image${1===f?"":"s"} in the result. `:"",`Generate an image as the final response. ${g}Do not answer with text only.
5
5
 
6
- ${e}`)});let k=await h.execute({model:a,body:{contents:[{role:"user",parts:j}]},stream:!1,credentials:c,log:d});if(!k.response.ok){let a=await k.response.text(),b=Error(a||`HTTP ${k.response.status}`);throw b.status=k.response.status,b.resetsAtMs=function(a){try{let b=JSON.parse(a);for(let a of b?.error?.details||[]){let b=a?.metadata?.quotaResetTimeStamp,c=b?Date.parse(b):NaN;if(Number.isFinite(c)&&c>Date.now())return c;let d=a?.retryDelay,e="string"==typeof d?d.match(/^(\d+(?:\.\d+)?)s$/):null;if(e){let a=1e3*Number(e[1]);if(Number.isFinite(a)&&a>0)return Date.now()+a}}}catch{}return null}(a),b}return k.response.json()},normalize:(a,b)=>{let c=a.candidates||a.response?.candidates||[],d=c[0]?.content?.parts||[],e=d.map(a=>a.inlineData||a.inline_data).filter(a=>a?.data).map(a=>({b64_json:a.data}));if(0===e.length){let a=d.map(a=>a.text).filter(Boolean).join(" ").trim();throw Error(a?`Antigravity returned text instead of an image: ${a}`:"Antigravity did not return an image.")}return{created:J(),data:e}}},"fal-ai":{async:!0,buildUrl:a=>`${Z}/${a}`,buildHeaders:a=>{let b=a?.apiKey||a?.accessToken;return{"Content-Type":"application/json",Authorization:`Key ${b}`}},buildBody:(a,b)=>{let c={prompt:b.prompt,num_images:b.n||1};return b.size&&(c.image_size=H(b.size)),b.image&&(c.image_url=b.image),c},async parseResponse(a,{headers:b}){let{status_url:c,response_url:d}=await a.json(),e=Date.now()+12e4;for(;Date.now()<e;){await G(1500);let a=await fetch(c,{headers:b});if(!a.ok)throw Error(`Fal status ${a.status}`);let e=await a.json();if("COMPLETED"===e.status){let a=await fetch(d,{headers:b});return await a.json()}if("FAILED"===e.status)throw Error(e.error||"Fal generation failed")}throw Error("Fal polling timeout")},normalize:a=>{let b=Array.isArray(a.images)?a.images:a.image?[a.image]:[];return{created:J(),data:b.map(a=>({url:a.url||a}))}}},"stability-ai":{buildUrl:a=>`${$}/${a.includes("ultra")?"ultra":a.includes("sd3")?"sd3":"core"}`,buildHeaders:a=>{let b=a?.apiKey||a?.accessToken;return{"Content-Type":"application/json",Authorization:`Bearer ${b}`,Accept:"application/json"}},buildBody:(a,b)=>{let c={prompt:b.prompt,output_format:(b.output_format||"png").toLowerCase()};return b.size&&(c.aspect_ratio=H(b.size)),b.style&&(c.style_preset=b.style),a.includes("sd3")&&(c.model=a),c},normalize:a=>a.image?{created:J(),data:[{b64_json:a.image}]}:{created:J(),data:[]}},"black-forest-labs":{async:!0,buildUrl:a=>`${_}/${a}`,buildHeaders:a=>({"Content-Type":"application/json","x-key":a?.apiKey||a?.accessToken}),buildBody:(a,b)=>{let c={prompt:b.prompt};if(b.size){let[a,d]=b.size.split("x").map(Number);a&&(c.width=a),d&&(c.height=d)}return b.image&&(c.image_prompt=b.image),c},async parseResponse(a,{headers:b}){let c=(await a.json()).polling_url;if(!c)throw Error("BFL: no polling_url returned");let d=Date.now()+12e4;for(;Date.now()<d;){await G(1500);let a=await fetch(c,{headers:{"x-key":b["x-key"],Accept:"application/json"}});if(!a.ok)throw Error(`BFL status ${a.status}`);let d=await a.json();if("Ready"===d.status)return d;if("Error"===d.status||"Failed"===d.status)throw Error(d.error||"BFL generation failed")}throw Error("BFL polling timeout")},normalize:a=>{let b=a.result?.sample;return b?{created:J(),data:[{url:b}]}:{created:J(),data:[]}}},runwayml:{async:!0,buildUrl:a=>`${aa}/${a.includes("image")?"text_to_image":"image_to_video"}`,buildHeaders:a=>{let b=a?.apiKey||a?.accessToken;return{"Content-Type":"application/json",Authorization:`Bearer ${b}`,"X-Runway-Version":"2024-11-06"}},buildBody:(a,b)=>{let c=!a.includes("image"),d=H(b.size);return c?{promptText:b.prompt,model:a,ratio:d,duration:5,...b.image?{promptImage:b.image}:{}}:{promptText:b.prompt,model:a,ratio:d,...b.image?{referenceImages:[{uri:b.image}]}:{}}},async parseResponse(a,{headers:b}){let{id:c}=await a.json();if(!c)throw Error("Runway: no task id returned");let d=`${aa}/tasks/${c}`,e=Date.now()+12e4;for(;Date.now()<e;){await G(1500);let a=await fetch(d,{headers:b});if(!a.ok)throw Error(`Runway status ${a.status}`);let c=await a.json();if("SUCCEEDED"===c.status)return c;if("FAILED"===c.status||"CANCELLED"===c.status)throw Error(c.failure||"Runway task failed")}throw Error("Runway polling timeout")},normalize:a=>{let b=Array.isArray(a.output)?a.output:[];return{created:J(),data:b.map(a=>({url:a}))}}},"cloudflare-ai":{buildUrl:(a,b)=>{let c=b?.providerSpecificData?.accountId;if(!c)throw Error("cloudflare-ai requires accountId in providerSpecificData");return`${ab}/${c}/ai/run/${a}`},buildHeaders:(a,b)=>{let c={};"u">typeof FormData&&b instanceof FormData||(c["Content-Type"]="application/json");let d=a?.apiKey||a?.accessToken;return d&&(c.Authorization=`Bearer ${d}`),c},buildBody:async(a,b)=>ac.has(a)?function(a){let b=new FormData;for(let[c,d]of(b.append("prompt",a.prompt),Object.entries(ae(a))))b.append(c,String(d));return ah(b,a,(a,b,c)=>{a.append(b,String(c))}),b}(b):await ai(b),async parseResponse(a){if((a.headers.get("Content-Type")||"").toLowerCase().startsWith("image/")){let b=await a.arrayBuffer();return{created:J(),data:[{b64_json:Buffer.from(b).toString("base64")}]}}return aj(await a.json())},normalize:aj}};function an(a){return"u">typeof FormData&&a instanceof FormData||"string"==typeof a?a:JSON.stringify(a)}async function ao({body:a,modelInfo:b,credentials:c,log:d,streamToClient:e=!1,binaryOutput:f=!1,onCredentialsRefreshed:g,onRequestSuccess:h}){let i,j,k,l,m,{provider:n,model:o}=b;if(!a.prompt)return(0,z.A1)(A.gx.BAD_REQUEST,"Missing required field: prompt");let p=am[n]||null;if(!p)return(0,z.A1)(A.gx.BAD_REQUEST,`Provider '${n}' does not support image generation`);if(p.useExecutor&&p.executeViaExecutor)try{d?.debug?.("IMAGE",`${n.toUpperCase()} | ${o} | prompt="${a.prompt.slice(0,50)}..." (executor)`);let b=await p.executeViaExecutor(o,a,c,d);h&&await h();let e=p.normalize(b,a.prompt),g=e.created&&Array.isArray(e.data)?e:b;if(f){let b=g.data?.[0],c=b?.b64_json;if(!c&&b?.url)try{c=await I(b.url)}catch{}if(c){let b=Buffer.from(c,"base64"),d=(a.output_format||"png").toLowerCase();return{success:!0,response:new Response(b,{headers:{"Content-Type":"jpeg"===d||"jpg"===d?"image/jpeg":"webp"===d?"image/webp":"image/png","Content-Disposition":`inline; filename="image.${"jpeg"===d?"jpg":d}"`,"Access-Control-Allow-Origin":"*"}})}}}return{success:!0,response:new Response(JSON.stringify(g),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}catch(c){let a=Number(c?.statusCode||c?.status)||A.gx.BAD_GATEWAY,b=(0,z.lR)(c,n,o,a);return d?.debug?.("IMAGE",`Executor error: ${b}`),{...(0,z.A1)(a,b,c?.resetsAtMs),retryable:c?.retryable!==!1}}try{i=p.buildUrl(o,c),k=await p.buildBody(o,a),j=p.buildHeaders(c,k,o,a)}catch(a){return{...(0,z.A1)(A.gx.BAD_REQUEST,a.message||`Invalid ${n} image request`),retryable:!1}}d?.debug?.("IMAGE",`${n.toUpperCase()} | ${o} | prompt="${a.prompt.slice(0,50)}..."`);try{l=await fetch(i,{method:"POST",headers:j,body:an(k)})}catch(b){let a=(0,z.lR)(b,n,o,A.gx.BAD_GATEWAY);return d?.debug?.("IMAGE",`Fetch error: ${a}`),(0,z.A1)(A.gx.BAD_GATEWAY,a)}let q=(0,C.SB)(n);if(!q?.noAuth&&!p.noAuth&&(l.status===A.gx.UNAUTHORIZED||l.status===A.gx.FORBIDDEN)){let b=await (0,B.qZ)(()=>q.refreshCredentials(c,d),3,d);if(b?.accessToken||b?.apiKey){d?.info?.("TOKEN",`${n.toUpperCase()} | refreshed for image generation`),Object.assign(c,b),g&&await g(b);try{let b=await p.buildBody(o,a),d=p.buildHeaders(c,b,o,a),e=p.buildUrl(o,c);l=await fetch(e,{method:"POST",headers:d,body:an(b)})}catch{d?.warn?.("TOKEN",`${n.toUpperCase()} | retry after refresh failed`)}}else d?.warn?.("TOKEN",`${n.toUpperCase()} | refresh failed`)}if(!l.ok){let{statusCode:a,message:b}=await (0,z.zL)(l),c=(0,z.lR)(Error(b),n,o,a);return d?.debug?.("IMAGE",`Provider error: ${c}`),(0,z.A1)(a,c)}try{if(p.parseResponse){if(m=await p.parseResponse(l,{headers:j,log:d,streamToClient:e,onRequestSuccess:h,url:i,requestBody:k,model:o,body:a}),m?.sseResponse)return{success:!0,response:m.sseResponse}}else m=await l.json()}catch(a){return(0,z.A1)(A.gx.BAD_GATEWAY,a.message||`Invalid response from ${n}`)}h&&await h();let r=p.normalize(m,a.prompt),s=r.created&&Array.isArray(r.data)?r:m;if(f){let b=s.data?.[0],c=b?.b64_json;if(!c&&b?.url)try{c=await I(b.url)}catch{}if(c){let b=Buffer.from(c,"base64"),d=(a.output_format||"png").toLowerCase();return{success:!0,response:new Response(b,{headers:{"Content-Type":"jpeg"===d||"jpg"===d?"image/jpeg":"webp"===d?"image/webp":"image/png","Content-Disposition":`inline; filename="image.${"jpeg"===d?"jpg":d}"`,"Access-Control-Allow-Origin":"*"}})}}}return{success:!0,response:new Response(JSON.stringify(s),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}var ap=c(67828),aq=c(57362),ar=c(7803);let as=new Set(["sdwebui","comfyui"]);async function at(a){let b;try{b=await a.json()}catch{return(0,z.yj)(A.gx.BAD_REQUEST,"Invalid JSON body")}let c=new URL(a.url),d=a.headers.get("x-connection-id")||null,e=(a.headers.get("accept")||"").includes("text/event-stream"),f="binary"===c.searchParams.get("response_format"),g=b.model,{apiKey:h,valid:i}=await (0,v.$A)(a),j=await (0,x.mt)();if(j.requireApiKey){if(!h)return(0,z.yj)(A.gx.UNAUTHORIZED,"Missing API key");if(!i)return(0,z.yj)(A.gx.UNAUTHORIZED,"Invalid API key")}if(!g)return(0,z.yj)(A.gx.BAD_REQUEST,"Missing model");if(!b.prompt)return(0,z.yj)(A.gx.BAD_REQUEST,"Missing required field: prompt");let k=await (0,y.d_)(g);if(k){let c=j.comboStrategies||{},h=c[g]?.fallbackStrategy||j.comboStrategy||"fallback",i=j.comboStickyRoundRobinLimit;return ar.info("IMAGE",`Combo "${g}" with ${k.length} models (strategy: ${h}, sticky: ${i})`),(0,aq.Pr)({body:b,models:k,handleSingleModel:(b,c)=>au(b,c,a,{wantsStream:e,binaryOutput:f,preferredConnectionId:d}),log:ar,comboName:g,comboStrategy:h,comboStickyLimit:i})}return au(b,g,a,{wantsStream:e,binaryOutput:f,preferredConnectionId:d})}async function au(a,b,c,{wantsStream:d,binaryOutput:e,preferredConnectionId:f}={}){let g=await (0,y.mA)(b);if(!g.provider)return(0,z.yj)(A.gx.BAD_REQUEST,"Invalid model format");let{provider:h,model:i}=g,j=await (0,w.K)(c,{model:`${h}/${i}`,body:a});if(j.error)return j.error;if(as.has(h)){let b=await ao({body:a,modelInfo:{provider:h,model:i},credentials:null,binaryOutput:e});return b.success?b.response:(0,z.yj)(b.status||A.gx.BAD_GATEWAY,b.error||"Image generation failed")}let k=new Set,l=null,m=null;for(;;){let b=await (0,v.c1)(h,k,i,{preferredConnectionId:f});if(!b||b.allRateLimited){if(b?.allRateLimited){let a=l||b.lastError||"Unavailable",c=m||Number(b.lastErrorCode)||A.gx.SERVICE_UNAVAILABLE;return(0,z.wO)(c,`[${h}/${i}] ${a}`,b.retryAfter,b.retryAfterHuman)}if(0===k.size)return(0,z.yj)(A.gx.BAD_REQUEST,`No credentials for provider: ${h}`);return(0,z.yj)(m||A.gx.SERVICE_UNAVAILABLE,l||"All accounts unavailable")}let c=await (0,ap.checkAndRefreshToken)(h,b,(0,C.SB)(h)),g=await ao({body:a,modelInfo:{provider:h,model:i},credentials:c,streamToClient:d,binaryOutput:e,onCredentialsRefreshed:async a=>{await (0,ap.vN)(b.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,v.Pt)(b.connectionId,b,i)}});if(g.success)return function(a,b){if(!a||!b?.connectionId)return a;let c=new Headers(a.headers);c.set("x-connection-id",b.connectionId);let d=new Set((c.get("Access-Control-Expose-Headers")||"").split(",").map(a=>a.trim()).filter(Boolean));return d.add("x-connection-id"),c.set("Access-Control-Expose-Headers",[...d].join(", ")),new Response(a.body,{status:a.status,statusText:a.statusText,headers:c})}(g.response,b);if(!1===g.retryable)return g.response;let{shouldFallback:j}=await (0,v.vk)(b.connectionId,g.status,g.error,h,i,g.resetsAtMs);if(j){k.add(b.connectionId),l=g.error,m=g.status;continue}return g.response}}async function av(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function aw(a){return await at(a)}let ax=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/images/generations/route",pathname:"/api/v1/images/generations",filename:"route",bundlePath:"app/api/v1/images/generations/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/images/generations/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:ay,workUnitAsyncStorage:az,serverHooks:aA}=ax;function aB(){return(0,g.patchFetch)({workAsyncStorage:ay,workUnitAsyncStorage:az})}async function aC(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),ax.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/images/generations/route";"/index"===d&&(d="/");let e=await ax.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||ax.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===ax.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await ax.getIncrementalCache(a,x,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>ax.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>ax.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await ax.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await ax.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await ax.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},38775:(a,b,c)=>{c.d(b,{d_:()=>j,mA:()=>h});var d=c(89718),e=c(66451),f=c(99471);c(45502);let g={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function h(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&g[b.providerAlias]?{...b,provider:g[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);if(e)return{provider:e.id,model:c.model};let f=(await (0,d.Fh)({type:"custom-video"})).find(a=>a.prefix===c.providerAlias);return f?{provider:f.id,model:c.model}:{provider:c.provider,model:c.model}}if(await (0,d.Dj)(c.model))return{provider:null,model:c.model};let f=await i(c.model);return f||(0,e.js)(a,d.OM)}async function i(a){try{let b=(await (0,d.uv)()).find(b=>b&&b.id===a&&("llm"===b.type||!b.type));if(b&&b.providerAlias)return{provider:(0,e.g2)(b.providerAlias),model:b.id}}catch{}try{let b=await (0,d.OM)(),c=(0,e.sc)(a,b);if(c)return c}catch{}let b=(0,e.PN)(a);if(b)return{provider:b,model:a};try{let b=await (0,f.w)(a);if(b)return b}catch{}return null}async function j(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66451:(a,b,c)=>{c.d(b,{PN:()=>k,Xh:()=>l,ff:()=>i,g2:()=>j,js:()=>n,sc:()=>m});var d=c(45502),e=c(27335);let f={el:"elevenlabs",jina:"jina-ai","jina-ai":"jina-ai",polly:"aws-polly","aws-polly":"aws-polly"};for(let a of d.A)for(let b of(f[a.id]=a.id,a.alias&&(f[a.alias]=a.id),a.aliases||[]))f[b]=a.id;let g={"grok-build":"gcli/grok-build"},h=new Map;for(let a of d.A)a.noAuth&&a.modelsFetcher&&a.alias&&h.set(a.id,a.alias);function i(a,b){let c,d,e;if(a&&"object"==typeof a?(c=a.requestedModel,d=a.provider,e=a.model):(c=a,d=b?.provider,e=b?.model),!c||c.includes("/"))return c;let f=h.get(d);return f?`${f}/${e}`:c}function j(a){return f[a]||a}function k(a){if(!a)return null;let b=[];for(let[c,d]of Object.entries(e.PROVIDER_MODELS))Array.isArray(d)&&d.some(b=>b&&b.id===a)&&b.push(c);if(0===b.length)return null;if(1===b.length)return j(b[0]);let c=b.find(b=>a.startsWith(b));return c?j(c):null}function l(a){if(!a)return{provider:null,model:null,isAlias:!1,providerAlias:null};if(a.includes("/")){let b=a.indexOf("/"),c=a.slice(0,b),d=a.slice(b+1);return{provider:j(c),model:d,isAlias:!1,providerAlias:c}}return{provider:null,model:a,isAlias:!0,providerAlias:null}}function m(a,b){if(!b)return null;let c=b[a];if(!c)return null;if("string"==typeof c&&c.includes("/")){let a=c.indexOf("/");return{provider:j(c.slice(0,a)),model:c.slice(a+1)}}return"object"==typeof c&&c.provider&&c.model?{provider:j(c.provider),model:c.model}:null}async function n(a,b){let c=l(a);if(!c.isAlias)return{provider:c.provider,model:c.model};let d="function"==typeof b?await b():b,e=m(c.model,d)||m(c.model,g);return e||{provider:function(a){if(!a)return"openai";let b=a.toLowerCase();return"default"===b||"auto"===b?"cursor":o.find(([a])=>a.test(b))?.[1]||"openai"}(c.model),model:c.model}}let o=[[/^claude-/,"anthropic"],[/^gemini-/,"gemini"],[/^grok-/,"xai"],[/^gpt-/,"openai"],[/^o[134]/,"openai"],[/^deepseek-/,"openrouter"]]},68001:(a,b,c)=>{c.d(b,{S:()=>f});var d=c(38071);let e=["big-pickle"],f={"openrouter-free":a=>a.filter(a=>a.pricing?.prompt==="0"&&a.pricing?.completion==="0"&&a.context_length>=2e5).map(a=>({id:a.id,name:a.name,contextLength:a.context_length})).sort((a,b)=>b.contextLength-a.contextLength),"opencode-free":a=>a.filter(a=>a.id?.endsWith("-free")||e.includes(a.id)).map(a=>({id:a.id,name:a.id})),"mimo-free":a=>(Array.isArray(a)?a:[]).filter(a=>a.id?.startsWith("mimo")||a.name?.toLowerCase().includes("mimo")).map(a=>({id:a.id,name:a.name||a.id})),"nous-free":d.pD}},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},99471:(a,b,c)=>{c.d(b,{Y:()=>k,w:()=>j});var d=c(68001);let e=null,f=0,g=null;async function h(){let a=new AbortController,b=setTimeout(()=>a.abort(),5e3);try{let b=await fetch("https://opencode.ai/zen/v1/models",{signal:a.signal});if(!b.ok)return e||[];let c=await b.json(),g=c.data??c.models??c,h=d.S["opencode-free"](Array.isArray(g)?g:[]);return e=h,f=Date.now(),h}catch{return e||[]}finally{clearTimeout(b)}}async function i(){if(e&&Date.now()-f<6e5)return e;if(!g){g=h();try{return await g}finally{g=null}}return g}async function j(a){let b=(await i()).find(b=>b&&b.id===a);return b?{provider:"opencode",model:b.id}:"big-pickle"===a||String(a).endsWith("-free")?{provider:"opencode",model:a}:null}async function k(){return await i()}}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7774,7965,5502,1522,4646,3904,8851,8946,8129,3148,9884,871,7828,7353,9276,2547,7456,7362,5841],()=>b(b.s=36244));module.exports=c})();
6
+ ${e}`)});let k=await h.execute({model:a,body:{contents:[{role:"user",parts:j}]},stream:!1,credentials:c,log:d});if(!k.response.ok){let a=await k.response.text(),b=Error(a||`HTTP ${k.response.status}`);throw b.status=k.response.status,b.resetsAtMs=function(a){try{let b=JSON.parse(a);for(let a of b?.error?.details||[]){let b=a?.metadata?.quotaResetTimeStamp,c=b?Date.parse(b):NaN;if(Number.isFinite(c)&&c>Date.now())return c;let d=a?.retryDelay,e="string"==typeof d?d.match(/^(\d+(?:\.\d+)?)s$/):null;if(e){let a=1e3*Number(e[1]);if(Number.isFinite(a)&&a>0)return Date.now()+a}}}catch{}return null}(a),b}return k.response.json()},normalize:(a,b)=>{let c=a.candidates||a.response?.candidates||[],d=c[0]?.content?.parts||[],e=d.map(a=>a.inlineData||a.inline_data).filter(a=>a?.data).map(a=>({b64_json:a.data}));if(0===e.length){let a=d.map(a=>a.text).filter(Boolean).join(" ").trim();throw Error(a?`Antigravity returned text instead of an image: ${a}`:"Antigravity did not return an image.")}return{created:J(),data:e}}},"fal-ai":{async:!0,buildUrl:a=>`${Z}/${a}`,buildHeaders:a=>{let b=a?.apiKey||a?.accessToken;return{"Content-Type":"application/json",Authorization:`Key ${b}`}},buildBody:(a,b)=>{let c={prompt:b.prompt,num_images:b.n||1};return b.size&&(c.image_size=H(b.size)),b.image&&(c.image_url=b.image),c},async parseResponse(a,{headers:b}){let{status_url:c,response_url:d}=await a.json(),e=Date.now()+12e4;for(;Date.now()<e;){await G(1500);let a=await fetch(c,{headers:b});if(!a.ok)throw Error(`Fal status ${a.status}`);let e=await a.json();if("COMPLETED"===e.status){let a=await fetch(d,{headers:b});return await a.json()}if("FAILED"===e.status)throw Error(e.error||"Fal generation failed")}throw Error("Fal polling timeout")},normalize:a=>{let b=Array.isArray(a.images)?a.images:a.image?[a.image]:[];return{created:J(),data:b.map(a=>({url:a.url||a}))}}},"stability-ai":{buildUrl:a=>`${$}/${a.includes("ultra")?"ultra":a.includes("sd3")?"sd3":"core"}`,buildHeaders:a=>{let b=a?.apiKey||a?.accessToken;return{"Content-Type":"application/json",Authorization:`Bearer ${b}`,Accept:"application/json"}},buildBody:(a,b)=>{let c={prompt:b.prompt,output_format:(b.output_format||"png").toLowerCase()};return b.size&&(c.aspect_ratio=H(b.size)),b.style&&(c.style_preset=b.style),a.includes("sd3")&&(c.model=a),c},normalize:a=>a.image?{created:J(),data:[{b64_json:a.image}]}:{created:J(),data:[]}},"black-forest-labs":{async:!0,buildUrl:a=>`${_}/${a}`,buildHeaders:a=>({"Content-Type":"application/json","x-key":a?.apiKey||a?.accessToken}),buildBody:(a,b)=>{let c={prompt:b.prompt};if(b.size){let[a,d]=b.size.split("x").map(Number);a&&(c.width=a),d&&(c.height=d)}return b.image&&(c.image_prompt=b.image),c},async parseResponse(a,{headers:b}){let c=(await a.json()).polling_url;if(!c)throw Error("BFL: no polling_url returned");let d=Date.now()+12e4;for(;Date.now()<d;){await G(1500);let a=await fetch(c,{headers:{"x-key":b["x-key"],Accept:"application/json"}});if(!a.ok)throw Error(`BFL status ${a.status}`);let d=await a.json();if("Ready"===d.status)return d;if("Error"===d.status||"Failed"===d.status)throw Error(d.error||"BFL generation failed")}throw Error("BFL polling timeout")},normalize:a=>{let b=a.result?.sample;return b?{created:J(),data:[{url:b}]}:{created:J(),data:[]}}},runwayml:{async:!0,buildUrl:a=>`${aa}/${a.includes("image")?"text_to_image":"image_to_video"}`,buildHeaders:a=>{let b=a?.apiKey||a?.accessToken;return{"Content-Type":"application/json",Authorization:`Bearer ${b}`,"X-Runway-Version":"2024-11-06"}},buildBody:(a,b)=>{let c=!a.includes("image"),d=H(b.size);return c?{promptText:b.prompt,model:a,ratio:d,duration:5,...b.image?{promptImage:b.image}:{}}:{promptText:b.prompt,model:a,ratio:d,...b.image?{referenceImages:[{uri:b.image}]}:{}}},async parseResponse(a,{headers:b}){let{id:c}=await a.json();if(!c)throw Error("Runway: no task id returned");let d=`${aa}/tasks/${c}`,e=Date.now()+12e4;for(;Date.now()<e;){await G(1500);let a=await fetch(d,{headers:b});if(!a.ok)throw Error(`Runway status ${a.status}`);let c=await a.json();if("SUCCEEDED"===c.status)return c;if("FAILED"===c.status||"CANCELLED"===c.status)throw Error(c.failure||"Runway task failed")}throw Error("Runway polling timeout")},normalize:a=>{let b=Array.isArray(a.output)?a.output:[];return{created:J(),data:b.map(a=>({url:a}))}}},"cloudflare-ai":{buildUrl:(a,b)=>{let c=b?.providerSpecificData?.accountId;if(!c)throw Error("cloudflare-ai requires accountId in providerSpecificData");return`${ab}/${c}/ai/run/${a}`},buildHeaders:(a,b)=>{let c={};"u">typeof FormData&&b instanceof FormData||(c["Content-Type"]="application/json");let d=a?.apiKey||a?.accessToken;return d&&(c.Authorization=`Bearer ${d}`),c},buildBody:async(a,b)=>ac.has(a)?function(a){let b=new FormData;for(let[c,d]of(b.append("prompt",a.prompt),Object.entries(ae(a))))b.append(c,String(d));return ah(b,a,(a,b,c)=>{a.append(b,String(c))}),b}(b):await ai(b),async parseResponse(a){if((a.headers.get("Content-Type")||"").toLowerCase().startsWith("image/")){let b=await a.arrayBuffer();return{created:J(),data:[{b64_json:Buffer.from(b).toString("base64")}]}}return aj(await a.json())},normalize:aj}};function an(a){return"u">typeof FormData&&a instanceof FormData||"string"==typeof a?a:JSON.stringify(a)}async function ao({body:a,modelInfo:b,credentials:c,log:d,streamToClient:e=!1,binaryOutput:f=!1,onCredentialsRefreshed:g,onRequestSuccess:h}){let i,j,k,l,m,{provider:n,model:o}=b;if(!a.prompt)return(0,z.A1)(A.gx.BAD_REQUEST,"Missing required field: prompt");let p=am[n]||null;if(!p)return(0,z.A1)(A.gx.BAD_REQUEST,`Provider '${n}' does not support image generation`);if(p.useExecutor&&p.executeViaExecutor)try{d?.debug?.("IMAGE",`${n.toUpperCase()} | ${o} | prompt="${a.prompt.slice(0,50)}..." (executor)`);let b=await p.executeViaExecutor(o,a,c,d);h&&await h();let e=p.normalize(b,a.prompt),g=e.created&&Array.isArray(e.data)?e:b;if(f){let b=g.data?.[0],c=b?.b64_json;if(!c&&b?.url)try{c=await I(b.url)}catch{}if(c){let b=Buffer.from(c,"base64"),d=(a.output_format||"png").toLowerCase();return{success:!0,response:new Response(b,{headers:{"Content-Type":"jpeg"===d||"jpg"===d?"image/jpeg":"webp"===d?"image/webp":"image/png","Content-Disposition":`inline; filename="image.${"jpeg"===d?"jpg":d}"`,"Access-Control-Allow-Origin":"*"}})}}}return{success:!0,response:new Response(JSON.stringify(g),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}catch(c){let a=Number(c?.statusCode||c?.status)||A.gx.BAD_GATEWAY,b=(0,z.lR)(c,n,o,a);return d?.debug?.("IMAGE",`Executor error: ${b}`),{...(0,z.A1)(a,b,c?.resetsAtMs),retryable:c?.retryable!==!1}}try{i=p.buildUrl(o,c),k=await p.buildBody(o,a),j=p.buildHeaders(c,k,o,a)}catch(a){return{...(0,z.A1)(A.gx.BAD_REQUEST,a.message||`Invalid ${n} image request`),retryable:!1}}d?.debug?.("IMAGE",`${n.toUpperCase()} | ${o} | prompt="${a.prompt.slice(0,50)}..."`);try{l=await fetch(i,{method:"POST",headers:j,body:an(k)})}catch(b){let a=(0,z.lR)(b,n,o,A.gx.BAD_GATEWAY);return d?.debug?.("IMAGE",`Fetch error: ${a}`),(0,z.A1)(A.gx.BAD_GATEWAY,a)}let q=(0,C.SB)(n);if(!q?.noAuth&&!p.noAuth&&(l.status===A.gx.UNAUTHORIZED||l.status===A.gx.FORBIDDEN)){let b=await (0,B.qZ)(()=>q.refreshCredentials(c,d),3,d);if(b?.accessToken||b?.apiKey){d?.info?.("TOKEN",`${n.toUpperCase()} | refreshed for image generation`),Object.assign(c,b),g&&await g(b);try{let b=await p.buildBody(o,a),d=p.buildHeaders(c,b,o,a),e=p.buildUrl(o,c);l=await fetch(e,{method:"POST",headers:d,body:an(b)})}catch{d?.warn?.("TOKEN",`${n.toUpperCase()} | retry after refresh failed`)}}else d?.warn?.("TOKEN",`${n.toUpperCase()} | refresh failed`)}if(!l.ok){let{statusCode:a,message:b}=await (0,z.zL)(l),c=(0,z.lR)(Error(b),n,o,a);return d?.debug?.("IMAGE",`Provider error: ${c}`),(0,z.A1)(a,c)}try{if(p.parseResponse){if(m=await p.parseResponse(l,{headers:j,log:d,streamToClient:e,onRequestSuccess:h,url:i,requestBody:k,model:o,body:a}),m?.sseResponse)return{success:!0,response:m.sseResponse}}else m=await l.json()}catch(a){return(0,z.A1)(A.gx.BAD_GATEWAY,a.message||`Invalid response from ${n}`)}h&&await h();let r=p.normalize(m,a.prompt),s=r.created&&Array.isArray(r.data)?r:m;if(f){let b=s.data?.[0],c=b?.b64_json;if(!c&&b?.url)try{c=await I(b.url)}catch{}if(c){let b=Buffer.from(c,"base64"),d=(a.output_format||"png").toLowerCase();return{success:!0,response:new Response(b,{headers:{"Content-Type":"jpeg"===d||"jpg"===d?"image/jpeg":"webp"===d?"image/webp":"image/png","Content-Disposition":`inline; filename="image.${"jpeg"===d?"jpg":d}"`,"Access-Control-Allow-Origin":"*"}})}}}return{success:!0,response:new Response(JSON.stringify(s),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}var ap=c(67828),aq=c(57362),ar=c(7803);let as=new Set(["sdwebui","comfyui"]);async function at(a){let b;try{b=await a.json()}catch{return(0,z.yj)(A.gx.BAD_REQUEST,"Invalid JSON body")}let c=new URL(a.url),d=a.headers.get("x-connection-id")||null,e=(a.headers.get("accept")||"").includes("text/event-stream"),f="binary"===c.searchParams.get("response_format"),g=b.model,{apiKey:h,valid:i}=await (0,v.$A)(a),j=await (0,x.mt)();if(j.requireApiKey){if(!h)return(0,z.yj)(A.gx.UNAUTHORIZED,"Missing API key");if(!i)return(0,z.yj)(A.gx.UNAUTHORIZED,"Invalid API key")}if(!g)return(0,z.yj)(A.gx.BAD_REQUEST,"Missing model");if(!b.prompt)return(0,z.yj)(A.gx.BAD_REQUEST,"Missing required field: prompt");let k=await (0,y.d_)(g);if(k){let c=j.comboStrategies||{},h=c[g]?.fallbackStrategy||j.comboStrategy||"fallback",i=j.comboStickyRoundRobinLimit;return ar.info("IMAGE",`Combo "${g}" with ${k.length} models (strategy: ${h}, sticky: ${i})`),(0,aq.Pr)({body:b,models:k,handleSingleModel:(b,c)=>au(b,c,a,{wantsStream:e,binaryOutput:f,preferredConnectionId:d}),log:ar,comboName:g,comboStrategy:h,comboStickyLimit:i})}return au(b,g,a,{wantsStream:e,binaryOutput:f,preferredConnectionId:d})}async function au(a,b,c,{wantsStream:d,binaryOutput:e,preferredConnectionId:f}={}){let g=await (0,y.mA)(b);if(!g.provider)return(0,z.yj)(A.gx.BAD_REQUEST,"Invalid model format");let{provider:h,model:i}=g,j=await (0,w.K)(c,{model:`${h}/${i}`,body:a});if(j.error)return j.error;if(as.has(h)){let b=await ao({body:a,modelInfo:{provider:h,model:i},credentials:null,binaryOutput:e});return b.success?b.response:(0,z.yj)(b.status||A.gx.BAD_GATEWAY,b.error||"Image generation failed")}let k=new Set,l=null,m=null;for(;;){let b=await (0,v.c1)(h,k,i,{preferredConnectionId:f});if(!b||b.allRateLimited){if(b?.allRateLimited){let a=l||b.lastError||"Unavailable",c=m||Number(b.lastErrorCode)||A.gx.SERVICE_UNAVAILABLE;return(0,z.wO)(c,`[${h}/${i}] ${a}`,b.retryAfter,b.retryAfterHuman)}if(0===k.size)return(0,z.yj)(A.gx.BAD_REQUEST,`No credentials for provider: ${h}`);return(0,z.yj)(m||A.gx.SERVICE_UNAVAILABLE,l||"All accounts unavailable")}let c=await (0,ap.checkAndRefreshToken)(h,b,(0,C.SB)(h)),g=await ao({body:a,modelInfo:{provider:h,model:i},credentials:c,streamToClient:d,binaryOutput:e,onCredentialsRefreshed:async a=>{await (0,ap.vN)(b.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,v.Pt)(b.connectionId,b,i)}});if(g.success)return function(a,b){if(!a||!b?.connectionId)return a;let c=new Headers(a.headers);c.set("x-connection-id",b.connectionId);let d=new Set((c.get("Access-Control-Expose-Headers")||"").split(",").map(a=>a.trim()).filter(Boolean));return d.add("x-connection-id"),c.set("Access-Control-Expose-Headers",[...d].join(", ")),new Response(a.body,{status:a.status,statusText:a.statusText,headers:c})}(g.response,b);if(!1===g.retryable)return g.response;let{shouldFallback:j}=await (0,v.vk)(b.connectionId,g.status,g.error,h,i,g.resetsAtMs);if(j){k.add(b.connectionId),l=g.error,m=g.status;continue}return g.response}}async function av(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function aw(a){return await at(a)}let ax=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/images/generations/route",pathname:"/api/v1/images/generations",filename:"route",bundlePath:"app/api/v1/images/generations/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/images/generations/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:ay,workUnitAsyncStorage:az,serverHooks:aA}=ax;function aB(){return(0,g.patchFetch)({workAsyncStorage:ay,workUnitAsyncStorage:az})}async function aC(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),ax.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/images/generations/route";"/index"===d&&(d="/");let e=await ax.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||ax.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===ax.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await ax.getIncrementalCache(a,x,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>ax.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>ax.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await ax.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await ax.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await ax.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},38775:(a,b,c)=>{c.d(b,{d_:()=>j,mA:()=>h});var d=c(89718),e=c(66451),f=c(99471);c(45502);let g={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function h(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&g[b.providerAlias]?{...b,provider:g[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);if(e)return{provider:e.id,model:c.model};let f=(await (0,d.Fh)({type:"custom-video"})).find(a=>a.prefix===c.providerAlias);return f?{provider:f.id,model:c.model}:{provider:c.provider,model:c.model}}if(await (0,d.Dj)(c.model))return{provider:null,model:c.model};let f=await i(c.model);return f||(0,e.js)(a,d.OM)}async function i(a){try{let b=(await (0,d.uv)()).find(b=>b&&b.id===a&&("llm"===b.type||!b.type));if(b&&b.providerAlias)return{provider:(0,e.g2)(b.providerAlias),model:b.id}}catch{}try{let b=await (0,d.OM)(),c=(0,e.sc)(a,b);if(c)return c}catch{}let b=(0,e.PN)(a);if(b)return{provider:b,model:a};try{let b=await (0,f.w)(a);if(b)return b}catch{}return null}async function j(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66451:(a,b,c)=>{c.d(b,{PN:()=>k,Xh:()=>l,ff:()=>i,g2:()=>j,js:()=>n,sc:()=>m});var d=c(45502),e=c(27335);let f={el:"elevenlabs",jina:"jina-ai","jina-ai":"jina-ai",polly:"aws-polly","aws-polly":"aws-polly"};for(let a of d.A)for(let b of(f[a.id]=a.id,a.alias&&(f[a.alias]=a.id),a.aliases||[]))f[b]=a.id;let g={"grok-build":"gcli/grok-build"},h=new Map;for(let a of d.A)a.noAuth&&a.modelsFetcher&&a.alias&&h.set(a.id,a.alias);function i(a,b){let c,d,e;if(a&&"object"==typeof a?(c=a.requestedModel,d=a.provider,e=a.model):(c=a,d=b?.provider,e=b?.model),!c||c.includes("/"))return c;let f=h.get(d);return f?`${f}/${e}`:c}function j(a){return f[a]||a}function k(a){if(!a)return null;let b=[];for(let[c,d]of Object.entries(e.PROVIDER_MODELS))Array.isArray(d)&&d.some(b=>b&&b.id===a)&&b.push(c);if(0===b.length)return null;if(1===b.length)return j(b[0]);let c=b.find(b=>a.startsWith(b));return c?j(c):null}function l(a){if(!a)return{provider:null,model:null,isAlias:!1,providerAlias:null};if(a.includes("/")){let b=a.indexOf("/"),c=a.slice(0,b),d=a.slice(b+1);return{provider:j(c),model:d,isAlias:!1,providerAlias:c}}return{provider:null,model:a,isAlias:!0,providerAlias:null}}function m(a,b){if(!b)return null;let c=b[a];if(!c)return null;if("string"==typeof c&&c.includes("/")){let a=c.indexOf("/");return{provider:j(c.slice(0,a)),model:c.slice(a+1)}}return"object"==typeof c&&c.provider&&c.model?{provider:j(c.provider),model:c.model}:null}async function n(a,b){let c=l(a);if(!c.isAlias)return{provider:c.provider,model:c.model};let d="function"==typeof b?await b():b,e=m(c.model,d)||m(c.model,g);return e||{provider:function(a){if(!a)return"openai";let b=a.toLowerCase();return"default"===b||"auto"===b?"cursor":o.find(([a])=>a.test(b))?.[1]||"openai"}(c.model),model:c.model}}let o=[[/^claude-/,"anthropic"],[/^gemini-/,"gemini"],[/^grok-/,"xai"],[/^gpt-/,"openai"],[/^o[134]/,"openai"],[/^deepseek-/,"openrouter"]]},68001:(a,b,c)=>{c.d(b,{S:()=>f});var d=c(38071);let e=["big-pickle"],f={"openrouter-free":a=>a.filter(a=>a.pricing?.prompt==="0"&&a.pricing?.completion==="0"&&a.context_length>=2e5).map(a=>({id:a.id,name:a.name,contextLength:a.context_length})).sort((a,b)=>b.contextLength-a.contextLength),"opencode-free":a=>a.filter(a=>a.id?.endsWith("-free")||e.includes(a.id)).map(a=>({id:a.id,name:a.id})),"mimo-free":a=>(Array.isArray(a)?a:[]).filter(a=>a.id?.startsWith("mimo")||a.name?.toLowerCase().includes("mimo")).map(a=>({id:a.id,name:a.name||a.id})),"nous-free":d.pD}},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},99471:(a,b,c)=>{c.d(b,{Y:()=>k,w:()=>j});var d=c(68001);let e=null,f=0,g=null;async function h(){let a=new AbortController,b=setTimeout(()=>a.abort(),5e3);try{let b=await fetch("https://opencode.ai/zen/v1/models",{signal:a.signal});if(!b.ok)return e||[];let c=await b.json(),g=c.data??c.models??c,h=d.S["opencode-free"](Array.isArray(g)?g:[]);return e=h,f=Date.now(),h}catch{return e||[]}finally{clearTimeout(b)}}async function i(){if(e&&Date.now()-f<6e5)return e;if(!g){g=h();try{return await g}finally{g=null}}return g}async function j(a){let b=(await i()).find(b=>b&&b.id===a);return b?{provider:"opencode",model:b.id}:"big-pickle"===a||String(a).endsWith("-free")?{provider:"opencode",model:a}:null}async function k(){return await i()}}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7774,7965,5502,1522,4646,3904,8851,8946,8129,3148,9884,871,7828,7353,9276,2547,7456,7362,5841],()=>b(b.s=30274));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=6529,a.ids=[6529],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63884:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{OPTIONS:()=>w,POST:()=>z,estimateAnthropicInputTokens:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527);let v={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"};async function w(){return new Response(null,{headers:v})}function x(a){return null==a?0:"string"==typeof a?a.length:"number"==typeof a||"boolean"==typeof a?String(a).length:Array.isArray(a)?a.reduce((a,b)=>a+x(b),0):"object"==typeof a?Object.entries(a).reduce((a,[b,c])=>a+b.length+x(c),0):0}function y(a={}){let b=Array.isArray(a.messages)?a.messages:[],c=x(a.system)+x(a.tools);for(let a of b)c+=function(a){if(!a||"object"!=typeof a)return 0;let b=a.content;return"string"==typeof b?b.length:Array.isArray(b)?b.reduce((a,b)=>a+function(a){if(null==a)return 0;if("string"==typeof a)return a.length;if("object"!=typeof a)return x(a);switch(a.type){case"text":return x(a.text);case"tool_use":return x(a.name)+x(a.input);case"tool_result":return x(a.content);case"thinking":return x(a.thinking);default:return x(a)}}(b),0):x(b)}(a);return Math.ceil(c/4)}async function z(a){let b;try{b=await a.json()}catch{return new Response(JSON.stringify({error:"Invalid JSON body"}),{status:400,headers:{"Content-Type":"application/json",...v}})}return new Response(JSON.stringify({input_tokens:y(b)}),{headers:{"Content-Type":"application/json",...v}})}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/messages/count_tokens/route",pathname:"/api/v1/messages/count_tokens",filename:"route",bundlePath:"app/api/v1/messages/count_tokens/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/messages/count_tokens/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/messages/count_tokens/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||A.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===A.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await A.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await A.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},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()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741],()=>b(b.s=63884));module.exports=c})();
1
+ (()=>{var a={};a.id=6529,a.ids=[6529],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68608:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{OPTIONS:()=>w,POST:()=>z,estimateAnthropicInputTokens:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527);let v={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"};async function w(){return new Response(null,{headers:v})}function x(a){return null==a?0:"string"==typeof a?a.length:"number"==typeof a||"boolean"==typeof a?String(a).length:Array.isArray(a)?a.reduce((a,b)=>a+x(b),0):"object"==typeof a?Object.entries(a).reduce((a,[b,c])=>a+b.length+x(c),0):0}function y(a={}){let b=Array.isArray(a.messages)?a.messages:[],c=x(a.system)+x(a.tools);for(let a of b)c+=function(a){if(!a||"object"!=typeof a)return 0;let b=a.content;return"string"==typeof b?b.length:Array.isArray(b)?b.reduce((a,b)=>a+function(a){if(null==a)return 0;if("string"==typeof a)return a.length;if("object"!=typeof a)return x(a);switch(a.type){case"text":return x(a.text);case"tool_use":return x(a.name)+x(a.input);case"tool_result":return x(a.content);case"thinking":return x(a.thinking);default:return x(a)}}(b),0):x(b)}(a);return Math.ceil(c/4)}async function z(a){let b;try{b=await a.json()}catch{return new Response(JSON.stringify({error:"Invalid JSON body"}),{status:400,headers:{"Content-Type":"application/json",...v}})}return new Response(JSON.stringify({input_tokens:y(b)}),{headers:{"Content-Type":"application/json",...v}})}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/messages/count_tokens/route",pathname:"/api/v1/messages/count_tokens",filename:"route",bundlePath:"app/api/v1/messages/count_tokens/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/messages/count_tokens/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/messages/count_tokens/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||A.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===A.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await A.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await A.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},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()}}},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741],()=>b(b.s=68608));module.exports=c})();
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=748,a.ids=[615,748,7335],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},4630:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(39141);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},27335:(a,b,c)=>{c.d(b,{Xg:()=>s,PROVIDER_MODELS:()=>f.vq,fZ:()=>j,cY:()=>u,ez:()=>o,ux:()=>n,OA:()=>p,kt:()=>q,KC:()=>t,SM:()=>i});var d=c(4630),e=c(45502),f=c(39141),g=c(6595);let h="-review";function i(a){return f.vq[a]||[]}function j(a){let b=f.vq[a];return b?.[0]?.id||null}let k=new Set(["kr","kiro"]),l=new Map;for(let[a,b]of Object.entries(f.vq)){if(!Array.isArray(b))continue;let c=new Map,d=new Map;for(let e of b)if(e?.id!=null&&(c.set(e.id,e),k.has(a))){let a=(0,g.Kq)(e.id);a!==e.id&&d.set(a,e)}l.set(a,{exact:c,normalized:d})}function m(a,b,c){if(!a)return;let d=l.get(c);if(d){let a=d.exact.get(b);return a||(d.normalized.size?d.normalized.get(b):void 0)}let e=a.find(a=>a.id===b);if(e)return e;if(!k.has(c))return;let f=(0,g.Kq)(b);if(f!==b)return a.find(a=>a.id===f)}function n(a,b){let c=s[a]||a,d=f.vq[c]||f.vq[a];return d?(0,g.gr)(m(d,b,c)):null}function o(a,b){let c=s[a]||a,d=f.vq[c]||f.vq[a];return d?(0,g.ec)(m(d,b,c)):null}function p(a,b){let c=s[a]||a,d=f.vq[c]||f.vq[a];if(!d)return null;let e=m(d,b,c);return e?.kind||e?.type||null}function q(a,b){let c=s[a]||a,d="string"==typeof b?b.match(/\([^()]+\)\s*$/):null,e=d?d[0]:"",g=e?b.slice(0,d.index).trim():b,i=m(f.vq[c]||f.vq[a],g,c),j=i?.upstreamModelId||i?.id;if(j){let a=j.match(/\([^()]+\)\s*$/),b=a?.[0]||"";return(b?j.slice(0,a.index).trim():j)+(e||b)}return"cx"===c&&"string"==typeof g&&g.endsWith(h)?g.slice(0,-h.length)+e:g+e}let r=Object.fromEntries(e.A.filter(a=>a.alias&&a.alias!==a.id).map(a=>[a.id,a.alias])),s=Object.fromEntries(Object.keys(d.xq).map(a=>[a,r[a]||a]));function t(a){let b=s[a]||a;return f.vq[b]||[]}function u(a,b){return(0,g.g5)(m(f.vq[a],b,a))}},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},40615:(a,b,c)=>{c.d(b,{AI_PROVIDERS:()=>u,js:()=>A,DI:()=>n,fg:()=>k,Pd:()=>o,Vj:()=>p,IS:()=>h,nJ:()=>i,zN:()=>j,JH:()=>m,jO:()=>C,wb:()=>B,br:()=>l,wG:()=>z,zt:()=>v,gb:()=>r,gC:()=>s,AR:()=>t,mq:()=>q,rs:()=>w,p5:()=>y});var d=c(45502);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.A.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.A.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.baseUrlField?{baseUrlField:a.baseUrlField}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.models?{models:a.models}:{},...a.authModes?{authModes:a.authModes}:{},...a.features?{features:{...a.features}}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m="openai-compatible-",n="anthropic-compatible-",o="custom-embedding-",p="custom-video-";function q(a){return"string"==typeof a&&a.startsWith(m)}function r(a){return"string"==typeof a&&a.startsWith(n)}function s(a){return"string"==typeof a&&a.startsWith(o)}function t(a){return"string"==typeof a&&a.startsWith(p)}let u={...h,...i,...j,...k,...l};function v(a){for(let b of Object.values(u))if(b.alias===a||b.id===a)return b;return null}function w(a){let b=v(a);return b?.id||a}let x={nvidia:40};function y(a,b){let c=(a?.rpmByProvider||{})[b];if(0===c||"0"===c)return 0;let d=Number(c);return Number.isFinite(d)&&d>0?d:x[b]||0}function z(a){let b=u[a];return b?.alias||a}let A=Object.values(u).reduce((a,b)=>(a[b.alias]=b.id,a),{});Object.values(u).reduce((a,b)=>(a[b.id]=b.alias,a),{});let B=d.A.filter(a=>a.features?.usage).map(a=>a.id),C=d.A.filter(a=>a.features?.usageApikey).map(a=>a.id)},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},42982:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{OPTIONS:()=>z,POST:()=>A});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(79489),w=c(2547);let x=!1;async function y(){x||(await (0,w.Ai)(),x=!0)}async function z(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function A(a){return await y(),await (0,v.P)(a)}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/messages/route",pathname:"/api/v1/messages",filename:"route",bundlePath:"app/api/v1/messages/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/messages/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/messages/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79646:a=>{a.exports=require("child_process")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7774,7965,5502,1522,4646,3904,8851,8946,8129,3148,9884,871,7828,7353,9276,2547,7456,369,7362,9489],()=>b(b.s=42982));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=748,a.ids=[615,748,7335],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},4630:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(39141);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},9449:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{OPTIONS:()=>z,POST:()=>A});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(79489),w=c(2547);let x=!1;async function y(){x||(await (0,w.Ai)(),x=!0)}async function z(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function A(a){return await y(),await (0,v.P)(a)}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/messages/route",pathname:"/api/v1/messages",filename:"route",bundlePath:"app/api/v1/messages/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/messages/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/messages/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},27335:(a,b,c)=>{c.d(b,{Xg:()=>s,PROVIDER_MODELS:()=>f.vq,fZ:()=>j,cY:()=>u,ez:()=>o,ux:()=>n,OA:()=>p,kt:()=>q,KC:()=>t,SM:()=>i});var d=c(4630),e=c(45502),f=c(39141),g=c(6595);let h="-review";function i(a){return f.vq[a]||[]}function j(a){let b=f.vq[a];return b?.[0]?.id||null}let k=new Set(["kr","kiro"]),l=new Map;for(let[a,b]of Object.entries(f.vq)){if(!Array.isArray(b))continue;let c=new Map,d=new Map;for(let e of b)if(e?.id!=null&&(c.set(e.id,e),k.has(a))){let a=(0,g.Kq)(e.id);a!==e.id&&d.set(a,e)}l.set(a,{exact:c,normalized:d})}function m(a,b,c){if(!a)return;let d=l.get(c);if(d){let a=d.exact.get(b);return a||(d.normalized.size?d.normalized.get(b):void 0)}let e=a.find(a=>a.id===b);if(e)return e;if(!k.has(c))return;let f=(0,g.Kq)(b);if(f!==b)return a.find(a=>a.id===f)}function n(a,b){let c=s[a]||a,d=f.vq[c]||f.vq[a];return d?(0,g.gr)(m(d,b,c)):null}function o(a,b){let c=s[a]||a,d=f.vq[c]||f.vq[a];return d?(0,g.ec)(m(d,b,c)):null}function p(a,b){let c=s[a]||a,d=f.vq[c]||f.vq[a];if(!d)return null;let e=m(d,b,c);return e?.kind||e?.type||null}function q(a,b){let c=s[a]||a,d="string"==typeof b?b.match(/\([^()]+\)\s*$/):null,e=d?d[0]:"",g=e?b.slice(0,d.index).trim():b,i=m(f.vq[c]||f.vq[a],g,c),j=i?.upstreamModelId||i?.id;if(j){let a=j.match(/\([^()]+\)\s*$/),b=a?.[0]||"";return(b?j.slice(0,a.index).trim():j)+(e||b)}return"cx"===c&&"string"==typeof g&&g.endsWith(h)?g.slice(0,-h.length)+e:g+e}let r=Object.fromEntries(e.A.filter(a=>a.alias&&a.alias!==a.id).map(a=>[a.id,a.alias])),s=Object.fromEntries(Object.keys(d.xq).map(a=>[a,r[a]||a]));function t(a){let b=s[a]||a;return f.vq[b]||[]}function u(a,b){return(0,g.g5)(m(f.vq[a],b,a))}},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},40615:(a,b,c)=>{c.d(b,{AI_PROVIDERS:()=>u,js:()=>A,DI:()=>n,fg:()=>k,Pd:()=>o,Vj:()=>p,IS:()=>h,nJ:()=>i,zN:()=>j,JH:()=>m,jO:()=>C,wb:()=>B,br:()=>l,wG:()=>z,zt:()=>v,gb:()=>r,gC:()=>s,AR:()=>t,mq:()=>q,rs:()=>w,p5:()=>y});var d=c(45502);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.A.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.A.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.baseUrlField?{baseUrlField:a.baseUrlField}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.models?{models:a.models}:{},...a.authModes?{authModes:a.authModes}:{},...a.features?{features:{...a.features}}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m="openai-compatible-",n="anthropic-compatible-",o="custom-embedding-",p="custom-video-";function q(a){return"string"==typeof a&&a.startsWith(m)}function r(a){return"string"==typeof a&&a.startsWith(n)}function s(a){return"string"==typeof a&&a.startsWith(o)}function t(a){return"string"==typeof a&&a.startsWith(p)}let u={...h,...i,...j,...k,...l};function v(a){for(let b of Object.values(u))if(b.alias===a||b.id===a)return b;return null}function w(a){let b=v(a);return b?.id||a}let x={nvidia:40};function y(a,b){let c=(a?.rpmByProvider||{})[b];if(0===c||"0"===c)return 0;let d=Number(c);return Number.isFinite(d)&&d>0?d:x[b]||0}function z(a){let b=u[a];return b?.alias||a}let A=Object.values(u).reduce((a,b)=>(a[b.alias]=b.id,a),{});Object.values(u).reduce((a,b)=>(a[b.id]=b.alias,a),{});let B=d.A.filter(a=>a.features?.usage).map(a=>a.id),C=d.A.filter(a=>a.features?.usageApikey).map(a=>a.id)},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79646:a=>{a.exports=require("child_process")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7774,7965,5502,1522,4646,3904,8851,8946,8129,3148,9884,871,7828,7353,9276,2547,7456,369,7362,9489],()=>b(b.s=9449));module.exports=c})();
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=6107,a.ids=[6107],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},73496:a=>{a.exports=require("http2")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},96905:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>E,patchFetch:()=>D,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var d={};c.r(d),c.d(d,{GET:()=>y,OPTIONS:()=>x});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(476);let w={image:["image"],tts:["tts"],stt:["stt"],embedding:["embedding"],"image-to-text":["imageToText"],web:["webSearch","webFetch"]};async function x(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function y(a,{params:b}){try{let{kind:c}=await b,d=w[c];if(!d)return Response.json({error:{message:`Unknown model kind: ${c}. Supported: ${Object.keys(w).join(", ")}`,type:"invalid_request_error"}},{status:404,headers:{"Access-Control-Allow-Origin":"*"}});let e=await (0,v.getModelListPolicy)(a);if(e.error)return Response.json({error:{message:"Invalid API key",type:"authentication_error"}},{status:401,headers:{"Access-Control-Allow-Origin":"*"}});let f=await (0,v.buildModelsList)(d,{apiKey:e.key});return Response.json({object:"list",data:f},{headers:{"Access-Control-Allow-Origin":"*"}})}catch(a){return console.log("Error fetching models by kind:",a),Response.json({error:{message:a.message,type:"server_error"}},{status:500})}}let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/models/[kind]/route",pathname:"/api/v1/models/[kind]",filename:"route",bundlePath:"app/api/v1/models/[kind]/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/models/[kind]/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function D(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function E(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/models/[kind]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7965,5502,1522,4646,1329,3904,8851,8946,8129,3148,9884,871,7828,9276,48,476],()=>b(b.s=96905));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=6107,a.ids=[6107],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},8086:a=>{a.exports=require("module")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},25444:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>E,patchFetch:()=>D,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var d={};c.r(d),c.d(d,{GET:()=>y,OPTIONS:()=>x});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(476);let w={image:["image"],tts:["tts"],stt:["stt"],embedding:["embedding"],"image-to-text":["imageToText"],web:["webSearch","webFetch"]};async function x(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function y(a,{params:b}){try{let{kind:c}=await b,d=w[c];if(!d)return Response.json({error:{message:`Unknown model kind: ${c}. Supported: ${Object.keys(w).join(", ")}`,type:"invalid_request_error"}},{status:404,headers:{"Access-Control-Allow-Origin":"*"}});let e=await (0,v.getModelListPolicy)(a);if(e.error)return Response.json({error:{message:"Invalid API key",type:"authentication_error"}},{status:401,headers:{"Access-Control-Allow-Origin":"*"}});let f=await (0,v.buildModelsList)(d,{apiKey:e.key});return Response.json({object:"list",data:f},{headers:{"Access-Control-Allow-Origin":"*"}})}catch(a){return console.log("Error fetching models by kind:",a),Response.json({error:{message:a.message,type:"server_error"}},{status:500})}}let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/models/[kind]/route",pathname:"/api/v1/models/[kind]",filename:"route",bundlePath:"app/api/v1/models/[kind]/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Volumes/Files/Projects/EzRouter/EzRouter/src/app/api/v1/models/[kind]/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function D(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function E(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/models/[kind]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71553:a=>{a.exports=require("node:dns/promises")},71622:a=>{a.exports=import("open")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},73496:a=>{a.exports=require("http2")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81630:a=>{a.exports=require("http")},81787:a=>{a.exports=require("bun:sqlite")},83997:a=>{a.exports=require("tty")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,7965,5502,1522,4646,3904,1329,8851,8946,8129,3148,9884,871,7828,9276,48,476],()=>b(b.s=25444));module.exports=c})();