omniroute 3.4.7 → 3.4.8

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 (256) hide show
  1. package/app/.next/BUILD_ID +1 -1
  2. package/app/.next/build-manifest.json +3 -3
  3. package/app/.next/prerender-manifest.json +3 -3
  4. package/app/.next/server/app/(dashboard)/dashboard/agents/page_client-reference-manifest.js +1 -1
  5. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  6. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
  7. package/app/.next/server/app/(dashboard)/dashboard/audit/page_client-reference-manifest.js +1 -1
  8. package/app/.next/server/app/(dashboard)/dashboard/auto-combo/page_client-reference-manifest.js +1 -1
  9. package/app/.next/server/app/(dashboard)/dashboard/cache/page_client-reference-manifest.js +1 -1
  10. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  11. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  12. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  13. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  14. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  15. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  16. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
  17. package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
  18. package/app/.next/server/app/(dashboard)/dashboard/memory/page_client-reference-manifest.js +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  20. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  21. package/app/.next/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  22. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  23. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  24. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  25. package/app/.next/server/app/(dashboard)/dashboard/search-tools/page_client-reference-manifest.js +1 -1
  26. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  27. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  28. package/app/.next/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  30. package/app/.next/server/app/400/page_client-reference-manifest.js +1 -1
  31. package/app/.next/server/app/401/page_client-reference-manifest.js +1 -1
  32. package/app/.next/server/app/403/page_client-reference-manifest.js +1 -1
  33. package/app/.next/server/app/408/page_client-reference-manifest.js +1 -1
  34. package/app/.next/server/app/429/page_client-reference-manifest.js +1 -1
  35. package/app/.next/server/app/500/page_client-reference-manifest.js +1 -1
  36. package/app/.next/server/app/502/page_client-reference-manifest.js +1 -1
  37. package/app/.next/server/app/503/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/_global-error.html +1 -1
  39. package/app/.next/server/app/_global-error.rsc +1 -1
  40. package/app/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  41. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  42. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  43. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  44. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  45. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  46. package/app/.next/server/app/api/system/version/route.js.nft.json +1 -1
  47. package/app/.next/server/app/api/v1/api/chat/route.js +15 -15
  48. package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  49. package/app/.next/server/app/api/v1/audio/speech/route.js +11 -11
  50. package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  51. package/app/.next/server/app/api/v1/audio/transcriptions/route.js +5 -5
  52. package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  53. package/app/.next/server/app/api/v1/chat/completions/route.js +14 -14
  54. package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  55. package/app/.next/server/app/api/v1/completions/route.js +14 -14
  56. package/app/.next/server/app/api/v1/completions/route.js.nft.json +1 -1
  57. package/app/.next/server/app/api/v1/images/generations/route.js +10 -10
  58. package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  59. package/app/.next/server/app/api/v1/messages/route.js +16 -16
  60. package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
  61. package/app/.next/server/app/api/v1/models/route.js +5 -5
  62. package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
  63. package/app/.next/server/app/api/v1/moderations/route.js +9 -9
  64. package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
  65. package/app/.next/server/app/api/v1/music/generations/route.js +10 -10
  66. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +16 -16
  67. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
  68. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +7 -7
  69. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
  70. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +10 -10
  71. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
  72. package/app/.next/server/app/api/v1/rerank/route.js +9 -9
  73. package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
  74. package/app/.next/server/app/api/v1/responses/[...path]/route.js +16 -16
  75. package/app/.next/server/app/api/v1/responses/[...path]/route.js.nft.json +1 -1
  76. package/app/.next/server/app/api/v1/responses/route.js +16 -16
  77. package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
  78. package/app/.next/server/app/api/v1/route.js +5 -5
  79. package/app/.next/server/app/api/v1/route.js.nft.json +1 -1
  80. package/app/.next/server/app/api/v1/search/analytics/route.js +7 -7
  81. package/app/.next/server/app/api/v1/search/analytics/route.js.nft.json +1 -1
  82. package/app/.next/server/app/api/v1/videos/generations/route.js +10 -10
  83. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +14 -14
  84. package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  85. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  86. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  87. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  88. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  89. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  90. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  91. package/app/.next/server/app/maintenance/page_client-reference-manifest.js +1 -1
  92. package/app/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  93. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  94. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  95. package/app/.next/server/app/status/page_client-reference-manifest.js +1 -1
  96. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  97. package/app/.next/server/chunks/{[root-of-the-server]__0nxyldc._.js → [root-of-the-server]__0-zca2p._.js} +1 -1
  98. package/app/.next/server/chunks/{[root-of-the-server]__0urvs3.._.js → [root-of-the-server]__01hbf~_._.js} +1 -1
  99. package/app/.next/server/chunks/[root-of-the-server]__01ojood._.js +1 -1
  100. package/app/.next/server/chunks/[root-of-the-server]__030_-af._.js +1 -1
  101. package/app/.next/server/chunks/{[root-of-the-server]__0j~-yu1._.js → [root-of-the-server]__03l6k3k._.js} +1 -1
  102. package/app/.next/server/chunks/{[root-of-the-server]__01b8762._.js → [root-of-the-server]__05~jdzu._.js} +1 -1
  103. package/app/.next/server/chunks/{[root-of-the-server]__07eee_s._.js → [root-of-the-server]__08~6j3q._.js} +1 -1
  104. package/app/.next/server/chunks/[root-of-the-server]__0a8ozdb._.js +1 -1
  105. package/app/.next/server/chunks/[root-of-the-server]__0bd4ccn._.js +2 -2
  106. package/app/.next/server/chunks/{[root-of-the-server]__0_a98vk._.js → [root-of-the-server]__0d6bqbw._.js} +1 -1
  107. package/app/.next/server/chunks/{[root-of-the-server]__0_c_.ye._.js → [root-of-the-server]__0f2rz58._.js} +1 -1
  108. package/app/.next/server/chunks/[root-of-the-server]__0jp3yj4._.js +1 -1
  109. package/app/.next/server/chunks/{[root-of-the-server]__06stuoz._.js → [root-of-the-server]__0jvnjwl._.js} +1 -1
  110. package/app/.next/server/chunks/[root-of-the-server]__0mj7x5~._.js +1 -1
  111. package/app/.next/server/chunks/[root-of-the-server]__0n-~kvf._.js +1 -1
  112. package/app/.next/server/chunks/{[root-of-the-server]__0-y3k-t._.js → [root-of-the-server]__0nzi7ym._.js} +1 -1
  113. package/app/.next/server/chunks/[root-of-the-server]__0ofxxzh._.js +2 -2
  114. package/app/.next/server/chunks/{[root-of-the-server]__0uu3t5x._.js → [root-of-the-server]__0pd~24c._.js} +2 -2
  115. package/app/.next/server/chunks/[root-of-the-server]__0s1dq3.._.js +1 -1
  116. package/app/.next/server/chunks/[root-of-the-server]__0tsl88m._.js +1 -1
  117. package/app/.next/server/chunks/[root-of-the-server]__0u5-mph._.js +1 -1
  118. package/app/.next/server/chunks/{[root-of-the-server]__0vi3.0k._.js → [root-of-the-server]__0uryxsh._.js} +1 -1
  119. package/app/.next/server/chunks/{[root-of-the-server]__0lwc40h._.js → [root-of-the-server]__0v1kwmx._.js} +1 -1
  120. package/app/.next/server/chunks/{[root-of-the-server]__04y3b4q._.js → [root-of-the-server]__0vt49c9._.js} +1 -1
  121. package/app/.next/server/chunks/{[root-of-the-server]__0pylsu2._.js → [root-of-the-server]__0vy97gy._.js} +2 -2
  122. package/app/.next/server/chunks/{[root-of-the-server]__0~s45~f._.js → [root-of-the-server]__0wd~o5b._.js} +1 -1
  123. package/app/.next/server/chunks/[root-of-the-server]__0x5yxjy._.js +2 -2
  124. package/app/.next/server/chunks/{[root-of-the-server]__0vmajf6._.js → [root-of-the-server]__0x_hqjb._.js} +1 -1
  125. package/app/.next/server/chunks/[root-of-the-server]__0~0hd.s._.js +2 -2
  126. package/app/.next/server/chunks/{[root-of-the-server]__10~-ypp._.js → [root-of-the-server]__11ptf~3._.js} +1 -1
  127. package/app/.next/server/chunks/_00.pgsp._.js +1 -1
  128. package/app/.next/server/chunks/_013gowh._.js +1 -1
  129. package/app/.next/server/chunks/{_0ucpa5q._.js → _02._8wx._.js} +1 -1
  130. package/app/.next/server/chunks/_036lxbr._.js +1 -1
  131. package/app/.next/server/chunks/_05reh6o._.js +1 -1
  132. package/app/.next/server/chunks/{_0-~thzo._.js → _083_x9z._.js} +2 -2
  133. package/app/.next/server/chunks/_083a5zg._.js +1 -1
  134. package/app/.next/server/chunks/{_004r3br._.js → _08cwbl2._.js} +2 -2
  135. package/app/.next/server/chunks/_0a3.3sc._.js +1 -1
  136. package/app/.next/server/chunks/_0c.abwr._.js +1 -1
  137. package/app/.next/server/chunks/_0dfpto1._.js +1 -1
  138. package/app/.next/server/chunks/_0due8oe._.js +1 -1
  139. package/app/.next/server/chunks/_0h-j8c2._.js +1 -1
  140. package/app/.next/server/chunks/_0vx-r0i._.js +2 -2
  141. package/app/.next/server/chunks/_0w4f3bm._.js +1 -1
  142. package/app/.next/server/chunks/_10.rw9f._.js +1 -1
  143. package/app/.next/server/chunks/open-sse_0dawtxk._.js +2 -2
  144. package/app/.next/server/chunks/open-sse_0p~.88y._.js +1 -1
  145. package/app/.next/server/chunks/open-sse_0sthby3._.js +1 -1
  146. package/app/.next/server/chunks/src_0cbm0~g._.js +1 -1
  147. package/app/.next/server/chunks/src_shared_utils_apiKey_ts_0gzf59_._.js +1 -1
  148. package/app/.next/server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js +1 -1
  149. package/app/.next/server/chunks/ssr/_008ht2n._.js +1 -1
  150. package/app/.next/server/chunks/ssr/_0oo1f90._.js +1 -1
  151. package/app/.next/server/chunks/ssr/src_04s-8a5._.js +1 -1
  152. package/app/.next/server/chunks/ssr/src_0vjsxxr._.js +1 -1
  153. package/app/.next/server/chunks/ssr/src_shared_utils_apiKey_ts_0l8g1z8._.js +1 -1
  154. package/app/.next/server/middleware-build-manifest.js +3 -3
  155. package/app/.next/server/pages/500.html +1 -1
  156. package/app/.next/server/server-reference-manifest.js +1 -1
  157. package/app/.next/server/server-reference-manifest.json +1 -1
  158. package/app/.next/static/chunks/0ipwpwjb2g0uv.js +1 -0
  159. package/app/.next/static/chunks/0~c--kcvaumm~.js +1 -0
  160. package/app/.next/static/chunks/{02q7h~xz7j6i3.js → 0~v1trn07bitv.js} +1 -1
  161. package/app/CHANGELOG.md +12 -0
  162. package/app/bin/reset-password.mjs +3 -1
  163. package/app/docs/openapi.yaml +1 -1
  164. package/app/open-sse/config/registryUtils.ts +1 -0
  165. package/app/open-sse/config/videoRegistry.ts +1 -3
  166. package/app/open-sse/executors/antigravity.ts +22 -12
  167. package/app/open-sse/executors/gemini-cli.ts +3 -1
  168. package/app/open-sse/executors/qoder.ts +1 -8
  169. package/app/open-sse/handlers/audioSpeech.ts +1 -0
  170. package/app/open-sse/handlers/chatCore.ts +2 -1
  171. package/app/open-sse/handlers/embeddings.ts +1 -0
  172. package/app/open-sse/handlers/imageGeneration.ts +6 -2
  173. package/app/open-sse/handlers/musicGeneration.ts +9 -2
  174. package/app/open-sse/handlers/search.ts +1 -0
  175. package/app/open-sse/handlers/videoGeneration.ts +11 -3
  176. package/app/open-sse/mcp-server/index.ts +0 -1
  177. package/app/open-sse/package.json +1 -1
  178. package/app/open-sse/services/claudeCodeCompatible.ts +2 -2
  179. package/app/open-sse/services/modelCapabilities.ts +3 -4
  180. package/app/open-sse/services/qoderCli.ts +5 -2
  181. package/app/open-sse/services/tokenRefresh.ts +3 -1
  182. package/app/open-sse/services/usage.ts +13 -9
  183. package/app/open-sse/services/workflowFSM.ts +298 -61
  184. package/app/open-sse/translator/index.ts +5 -1
  185. package/app/open-sse/translator/response/gemini-to-openai.ts +5 -1
  186. package/app/open-sse/utils/progressTracker.ts +4 -1
  187. package/app/open-sse/utils/stream.ts +7 -1
  188. package/app/open-sse/utils/streamPayloadCollector.ts +5 -1
  189. package/app/package-lock.json +3 -3
  190. package/app/package.json +1 -1
  191. package/app/scripts/check-route-validation.mjs +3 -1
  192. package/app/scripts/i18n/apply-priority-overrides.mjs +7 -1
  193. package/app/scripts/prepublish.mjs +2 -2
  194. package/app/scripts/run-protocol-clients-tests.mjs +7 -1
  195. package/app/src/app/(dashboard)/dashboard/analytics/components/DiversityScoreCard.tsx +1 -1
  196. package/app/src/app/(dashboard)/dashboard/auto-combo/page.tsx +0 -1
  197. package/app/src/app/(dashboard)/dashboard/media/MediaPageClient.tsx +9 -3
  198. package/app/src/app/(dashboard)/dashboard/providers/[id]/page.tsx +25 -23
  199. package/app/src/app/(dashboard)/dashboard/search-tools/components/SearchHistory.tsx +3 -1
  200. package/app/src/app/api/auth/status/route.ts +1 -3
  201. package/app/src/app/api/mcp/sse/route.ts +2 -2
  202. package/app/src/app/api/mcp/status/route.ts +1 -2
  203. package/app/src/app/api/mcp/stream/route.ts +5 -3
  204. package/app/src/app/api/openapi/spec/route.ts +4 -1
  205. package/app/src/app/api/openapi/try/route.ts +4 -1
  206. package/app/src/app/api/providers/[id]/models/route.ts +4 -4
  207. package/app/src/app/api/providers/[id]/sync-models/route.ts +9 -3
  208. package/app/src/app/api/settings/auto-disable-accounts/route.ts +6 -1
  209. package/app/src/app/api/skills/[id]/route.ts +4 -1
  210. package/app/src/app/api/v1/issues/report/route.ts +9 -1
  211. package/app/src/app/api/v1beta/models/route.ts +8 -6
  212. package/app/src/app/api/webhooks/[id]/route.ts +9 -7
  213. package/app/src/domain/fallbackPolicy.ts +0 -1
  214. package/app/src/domain/modelAvailability.ts +0 -1
  215. package/app/src/domain/providerExpiration.ts +2 -6
  216. package/app/src/lib/db/models.ts +23 -13
  217. package/app/src/lib/evals/evalRunner.ts +0 -1
  218. package/app/src/lib/evals/scheduler.ts +2 -6
  219. package/app/src/lib/oauth/services/antigravity.ts +6 -1
  220. package/app/src/lib/oauth/services/kiro.ts +12 -2
  221. package/app/src/lib/oauth/services/oauth.ts +10 -2
  222. package/app/src/lib/oauth/utils/server.ts +4 -1
  223. package/app/src/lib/plugins/index.ts +2 -8
  224. package/app/src/lib/usageAnalytics.ts +5 -1
  225. package/app/src/mitm/manager.js +1 -1
  226. package/app/src/mitm/manager.ts +1 -1
  227. package/app/src/shared/components/Button.tsx +0 -1
  228. package/app/src/shared/components/Card.tsx +0 -2
  229. package/app/src/shared/components/FilterBar.tsx +4 -12
  230. package/app/src/shared/components/Input.tsx +1 -1
  231. package/app/src/shared/components/Modal.tsx +0 -1
  232. package/app/src/shared/components/NotificationToast.tsx +1 -3
  233. package/app/src/shared/components/Select.tsx +1 -1
  234. package/app/src/shared/components/Sidebar.tsx +3 -3
  235. package/app/src/shared/components/ThemeToggle.tsx +7 -1
  236. package/app/src/shared/constants/cliCompatProviders.ts +0 -1
  237. package/app/src/shared/constants/errorCodes.ts +114 -19
  238. package/app/src/shared/utils/apiKey.ts +2 -4
  239. package/app/src/shared/utils/fetchTimeout.ts +0 -1
  240. package/app/src/shared/utils/inputSanitizer.ts +8 -4
  241. package/app/src/shared/utils/requestTimeout.ts +5 -1
  242. package/app/src/sse/handlers/chat.ts +1 -0
  243. package/app/src/sse/services/auth.ts +8 -3
  244. package/app/src/sse/services/streamState.ts +5 -1
  245. package/app/src/store/notificationStore.ts +3 -7
  246. package/app/tests/unit/t20-t22-provider-headers.test.mjs +3 -1
  247. package/bin/reset-password.mjs +3 -1
  248. package/open-sse/mcp-server/__tests__/glmCodingProviderConfig.test.ts +5 -1
  249. package/open-sse/mcp-server/index.ts +0 -1
  250. package/package.json +1 -1
  251. package/app/.next/server/chunks/_0-jnvci._.js +0 -19
  252. package/app/.next/static/chunks/0l88mho31mflv.js +0 -1
  253. package/app/.next/static/chunks/0wt-4zl7_gil8.js +0 -1
  254. /package/app/.next/static/{ri1SkwBU-ygQ2qIDe8jf2 → 1dZBzAZ8QsddVCQRQtqjg}/_buildManifest.js +0 -0
  255. /package/app/.next/static/{ri1SkwBU-ygQ2qIDe8jf2 → 1dZBzAZ8QsddVCQRQtqjg}/_clientMiddlewareManifest.js +0 -0
  256. /package/app/.next/static/{ri1SkwBU-ygQ2qIDe8jf2 → 1dZBzAZ8QsddVCQRQtqjg}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},36886,e=>{"use strict";var r=e.i(254799);process.env.API_KEY_SECRET||console.error("[SECURITY] API_KEY_SECRET is not set. API key CRC validation is disabled."),e.s(["generateApiKeyWithMachine",0,function(e){let t,o=function(){let e="abcdefghijklmnopqrstuvwxyz0123456789",r="";for(let t=0;t<6;t++)r+=e.charAt(Math.floor(Math.random()*e.length));return r}(),i=(t=function(){let e=process.env.API_KEY_SECRET||"omniroute-default-insecure-api-key-secret";if(!e||""===e.trim())throw Error("API_KEY_SECRET is required for API key CRC operations");return e}(),r.default.createHmac("sha256",t).update(e+o).digest("hex").slice(0,8));return{key:`sk-${e}-${o}-${i}`,keyId:o}}])}];
1
+ module.exports=[254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},36886,e=>{"use strict";var r=e.i(254799);process.env.API_KEY_SECRET||console.error("[SECURITY] API_KEY_SECRET is not set. API key CRC validation is disabled."),e.s(["generateApiKeyWithMachine",0,function(e){let t,i=r.default.randomBytes(3).toString("hex"),o=(t=function(){let e=process.env.API_KEY_SECRET||"omniroute-default-insecure-api-key-secret";if(!e||""===e.trim())throw Error("API_KEY_SECRET is required for API key CRC operations");return e}(),r.default.createHmac("sha256",t).update(e+i).digest("hex").slice(0,8));return{key:`sk-${e}-${i}-${o}`,keyId:i}}])}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__01ojood._.js.map
@@ -1,4 +1,4 @@
1
1
  module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var s=Object.defineProperty,a=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>f,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>p,stringifyCookie:()=>c};for(var u in l)s(o,u,{get:l[u],enumerable:!0});function c(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),s=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?s:`${s}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[s,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(s,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...s]=d(e),{domain:a,expires:n,httponly:i,maxage:o,path:l,samesite:u,secure:c,partitioned:p,priority:f}=Object.fromEntries(s.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,v,y={name:t,value:decodeURIComponent(r),domain:a,...n&&{expires:new Date(n)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...u&&{sameSite:h.includes(g=(g=u).toLowerCase())?g:void 0},...c&&{secure:!0},...f&&{priority:m.includes(v=(v=f).toLowerCase())?v:void 0},...p&&{partitioned:!0}};let e={};for(let t in y)y[t]&&(e[t]=y[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of n(t))i.call(e,o)||void 0===o||s(e,o,{get:()=>t[o],enumerable:!(r=a(t,o))||r.enumerable});return e})(s({},"__esModule",{value:!0}),o);var h=["strict","lax","none"],m=["low","medium","high"],f=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let s="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===s).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,s=this._parsed;return s.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(s).map(([e,t])=>c(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>c(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,s;this._parsed=new Map,this._headers=e;const a=null!=(s=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?s:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,s,a,n,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,n=!1;l();)if(","===(r=e.charAt(o))){for(s=o,o+=1,l(),a=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(n=!0,o=a,i.push(e.substring(t,s)),t=o):o=s+1}else o+=1;(!n||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(a)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let s="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===s)}has(e){return this._parsed.has(e)}set(...e){let[t,r,s]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...s})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=c(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(c).join("; ")}}},677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var s=e.i(677850),a=t([s]);[s]=a.then?(await a)():a,s.z.object({password:s.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let s=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:s.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},180725,e=>{"use strict";e.i(245272),e.s([])},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return s.registerServerReference}});let s=e.r(997953)},195975,(e,t,r)=>{"use strict";function s(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return s}})},428660,e=>e.a(async(t,r)=>{try{var s=e.i(745015),a=e.i(89171);e.i(180725);var n=e.i(186920),i=e.i(676088),o=e.i(200392),l=e.i(195975),u=t([i,o]);async function c(e){try{let{searchParams:t}=new URL(e.url),r=t.get("tool"),s=await (0,n.getMitmAlias)(r||void 0);return a.NextResponse.json({aliases:s})}catch(e){return console.log("Error fetching MITM aliases:",e.message),a.NextResponse.json({error:"Failed to fetch aliases"},{status:500})}}async function d(e){let t;try{t=await e.json()}catch{return a.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,o.validateBody)(i.cliMitmAliasUpdateSchema,t);if((0,o.isValidationFailure)(e))return a.NextResponse.json({error:e.error},{status:400});let{tool:r,mappings:s}=e.data,l={};for(let[e,t]of Object.entries(s))t&&t.trim()&&(l[e]=t.trim());return await (0,n.setMitmAliasAll)(r,l),a.NextResponse.json({success:!0,aliases:l})}catch(e){return console.log("Error saving MITM aliases:",e.message),a.NextResponse.json({error:"Failed to save aliases"},{status:500})}}[i,o]=u.then?(await u)():u,(0,l.ensureServerEntryExports)([c,d]),(0,s.registerServerReference)(c,"40e645beb03eaa2a73833bd56b87f9339a50978fb0",null),(0,s.registerServerReference)(d,"40c253095f9919c9555140832bc5ced61547b53743",null),e.s(["GET",0,c,"PUT",0,d]),r()}catch(e){r(e)}},!1),681974,e=>e.a(async(t,r)=>{try{var s=e.i(747909),a=e.i(174017),n=e.i(996250),i=e.i(759756),o=e.i(561916),l=e.i(174677),u=e.i(869741),c=e.i(316795),d=e.i(487718),p=e.i(995169),h=e.i(47587),m=e.i(666012),f=e.i(570101),g=e.i(626937),v=e.i(10372),y=e.i(193695);e.i(820232);var x=e.i(600220),R=e.i(428660),b=t([R]);[R]=b.then?(await b)():b;let w=new s.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/cli-tools/antigravity-mitm/alias/route",pathname:"/api/cli-tools/antigravity-mitm/alias",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/antigravity-mitm/alias/route.ts",nextConfigOutput:"standalone",userland:R,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:E,serverHooks:C}=w;async function _(e,t,r){r.requestMeta&&(0,i.setRequestMeta)(e,r.requestMeta),w.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/cli-tools/antigravity-mitm/alias/route";s=s.replace(/\/index$/,"")||"/";let n=await w.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!n)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:R,params:b,nextConfig:_,parsedUrl:A,isDraftMode:E,prerenderManifest:C,routerServerContext:S,isOnDemandRevalidate:j,revalidateOnlyGenerated:O,resolvedPathname:P,clientReferenceManifest:k,serverActionsManifest:N}=n,T=(0,u.normalizeAppPath)(s),M=!!(C.dynamicRoutes[T]||C.routes[P]),q=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,A,!1):t.end("This page could not be found"),null);if(M&&!E){let e=!!C.routes[P],t=C.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(_.adapterPath)return await q();throw new y.NoFallbackError}}let I=null;!M||w.isDev||E||(I=P,I="/index"===I?"/":I);let D=!0===w.isDev||!M,U=M&&!D;N&&k&&(0,l.setManifestsSingleton)({page:s,clientReferenceManifest:k,serverActionsManifest:N});let $=e.method||"GET",H=(0,o.getTracer)(),F=H.getActiveScopeSpan(),B=!!(null==S?void 0:S.isWrappedByNextServer),L=!!(0,i.getRequestMeta)(e,"minimalMode"),K=(0,i.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,_,C,L);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let z={params:b,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:D,incrementalCache:K,cacheLifeProfiles:_.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>w.onRequestError(e,t,s,a,S)},sharedContext:{buildId:R}},V=new c.NodeNextRequest(e),G=new c.NodeNextResponse(t),X=d.NextRequestAdapter.fromNodeNextRequest(V,(0,d.signalFromNodeResponse)(t));try{let n,i=async e=>w.handle(X,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${$} ${s}`)}),l=async n=>{var o,l;let u=async({previousCacheEntry:a})=>{try{if(!L&&j&&O&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let o=z.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let l=z.renderOpts.collectedTags;if(!M)return await (0,m.sendResponse)(V,G,s,z.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[v.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,S),t}},c=await w.handleResponse({req:e,nextConfig:_,cacheKey:I,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:O,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:L});if(!M)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",j?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return L&&M||d.delete(v.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,g.getCacheControlHeader)(c.cacheControl)),await (0,m.sendResponse)(V,G,new Response(c.value.body,{headers:d,status:c.value.status||200})),null};B&&F?await l(F):(n=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${s}`,kind:o.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof y.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,S),M)throw t;return await (0,m.sendResponse)(V,G,new Response(null,{status:500})),null}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:E})},"routeModule",0,w,"serverHooks",0,C,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,E]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))}];
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return s}})},428660,e=>e.a(async(t,r)=>{try{var s=e.i(745015),a=e.i(89171);e.i(180725);var n=e.i(186920),i=e.i(676088),o=e.i(200392),l=e.i(195975),u=t([i,o]);async function c(e){try{let{searchParams:t}=new URL(e.url),r=t.get("tool"),s=await (0,n.getMitmAlias)(r||void 0);return a.NextResponse.json({aliases:s})}catch(e){return console.log("Error fetching MITM aliases:",e.message),a.NextResponse.json({error:"Failed to fetch aliases"},{status:500})}}async function d(e){let t;try{t=await e.json()}catch{return a.NextResponse.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let e=(0,o.validateBody)(i.cliMitmAliasUpdateSchema,t);if((0,o.isValidationFailure)(e))return a.NextResponse.json({error:e.error},{status:400});let{tool:r,mappings:s}=e.data,l={};for(let[e,t]of Object.entries(s))t&&t.trim()&&(l[e]=t.trim());return await (0,n.setMitmAliasAll)(r,l),a.NextResponse.json({success:!0,aliases:l})}catch(e){return console.log("Error saving MITM aliases:",e.message),a.NextResponse.json({error:"Failed to save aliases"},{status:500})}}[i,o]=u.then?(await u)():u,(0,l.ensureServerEntryExports)([c,d]),(0,s.registerServerReference)(c,"402128ffa5dc046e1d53b2f28c144f5ed489107ddf",null),(0,s.registerServerReference)(d,"405db9b259a2911015f1f46fe8fe83d6967b814e08",null),e.s(["GET",0,c,"PUT",0,d]),r()}catch(e){r(e)}},!1),681974,e=>e.a(async(t,r)=>{try{var s=e.i(747909),a=e.i(174017),n=e.i(996250),i=e.i(759756),o=e.i(561916),l=e.i(174677),u=e.i(869741),c=e.i(316795),d=e.i(487718),p=e.i(995169),h=e.i(47587),m=e.i(666012),f=e.i(570101),g=e.i(626937),v=e.i(10372),y=e.i(193695);e.i(820232);var x=e.i(600220),R=e.i(428660),b=t([R]);[R]=b.then?(await b)():b;let w=new s.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/cli-tools/antigravity-mitm/alias/route",pathname:"/api/cli-tools/antigravity-mitm/alias",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cli-tools/antigravity-mitm/alias/route.ts",nextConfigOutput:"standalone",userland:R,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:E,serverHooks:C}=w;async function _(e,t,r){r.requestMeta&&(0,i.setRequestMeta)(e,r.requestMeta),w.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/cli-tools/antigravity-mitm/alias/route";s=s.replace(/\/index$/,"")||"/";let n=await w.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!n)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:R,params:b,nextConfig:_,parsedUrl:A,isDraftMode:E,prerenderManifest:C,routerServerContext:S,isOnDemandRevalidate:j,revalidateOnlyGenerated:O,resolvedPathname:P,clientReferenceManifest:k,serverActionsManifest:N}=n,T=(0,u.normalizeAppPath)(s),M=!!(C.dynamicRoutes[T]||C.routes[P]),q=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,A,!1):t.end("This page could not be found"),null);if(M&&!E){let e=!!C.routes[P],t=C.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(_.adapterPath)return await q();throw new y.NoFallbackError}}let I=null;!M||w.isDev||E||(I=P,I="/index"===I?"/":I);let D=!0===w.isDev||!M,U=M&&!D;N&&k&&(0,l.setManifestsSingleton)({page:s,clientReferenceManifest:k,serverActionsManifest:N});let $=e.method||"GET",H=(0,o.getTracer)(),F=H.getActiveScopeSpan(),B=!!(null==S?void 0:S.isWrappedByNextServer),L=!!(0,i.getRequestMeta)(e,"minimalMode"),K=(0,i.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,_,C,L);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let z={params:b,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:D,incrementalCache:K,cacheLifeProfiles:_.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>w.onRequestError(e,t,s,a,S)},sharedContext:{buildId:R}},V=new c.NodeNextRequest(e),G=new c.NodeNextResponse(t),X=d.NextRequestAdapter.fromNodeNextRequest(V,(0,d.signalFromNodeResponse)(t));try{let n,i=async e=>w.handle(X,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${$} ${s}`)}),l=async n=>{var o,l;let u=async({previousCacheEntry:a})=>{try{if(!L&&j&&O&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let o=z.renderOpts.pendingWaitUntil;o&&r.waitUntil&&(r.waitUntil(o),o=void 0);let l=z.renderOpts.collectedTags;if(!M)return await (0,m.sendResponse)(V,G,s,z.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[v.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,S),t}},c=await w.handleResponse({req:e,nextConfig:_,cacheKey:I,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:O,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:L});if(!M)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",j?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return L&&M||d.delete(v.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,g.getCacheControlHeader)(c.cacheControl)),await (0,m.sendResponse)(V,G,new Response(c.value.body,{headers:d,status:c.value.status||200})),null};B&&F?await l(F):(n=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${s}`,kind:o.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof y.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,S),M)throw t;return await (0,m.sendResponse)(V,G,new Response(null,{status:500})),null}}e.s(["handler",0,_,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:E})},"routeModule",0,w,"serverHooks",0,C,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,E]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))}];
3
3
 
4
4
  //# sourceMappingURL=%5Broot-of-the-server%5D__030_-af._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},663370,632802,477468,e=>{"use strict";let t=new TextEncoder,r=new TextDecoder;function n(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=[];for(let r=0;r<e.length;r+=32768)t.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(t.join(""))}function a(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}e.s(["concat",0,function(...e){let t=new Uint8Array(e.reduce((e,{length:t})=>e+t,0)),r=0;for(let n of e)t.set(n,r),r+=n.length;return t},"decoder",0,r,"encode",0,function(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if(n>127)throw TypeError("non-ASCII string encountered in encode()");t[r]=n}return t},"encoder",0,t],632802),e.s(["decodeBase64",0,a,"encodeBase64",0,n],477468),e.s(["decode",0,function(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:r.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=r.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return a(t)}catch{throw TypeError("The input to be decoded is not correctly encoded.")}},"encode",0,function(e){let r=e;return("string"==typeof r&&(r=t.encode(r)),Uint8Array.prototype.toBase64)?r.toBase64({alphabet:"base64url",omitPadding:!0}):n(r).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}],663370)},865466,e=>{"use strict";class t extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}}class r extends t{[Symbol.asyncIterator];static code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";constructor(e="multiple matching keys found in the JSON Web Key Set",t){super(e,t)}}e.s(["JOSEAlgNotAllowed",0,class extends t{static code="ERR_JOSE_ALG_NOT_ALLOWED";code="ERR_JOSE_ALG_NOT_ALLOWED"},"JOSENotSupported",0,class extends t{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"},"JWSInvalid",0,class extends t{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"},"JWSSignatureVerificationFailed",0,class extends t{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}},"JWTClaimValidationFailed",0,class extends t{static code="ERR_JWT_CLAIM_VALIDATION_FAILED";code="ERR_JWT_CLAIM_VALIDATION_FAILED";claim;reason;payload;constructor(e,t,r="unspecified",n="unspecified"){super(e,{cause:{claim:r,reason:n,payload:t}}),this.claim=r,this.reason=n,this.payload=t}},"JWTExpired",0,class extends t{static code="ERR_JWT_EXPIRED";code="ERR_JWT_EXPIRED";claim;reason;payload;constructor(e,t,r="unspecified",n="unspecified"){super(e,{cause:{claim:r,reason:n,payload:t}}),this.claim=r,this.reason=n,this.payload=t}},"JWTInvalid",0,class extends t{static code="ERR_JWT_INVALID";code="ERR_JWT_INVALID"}])},177278,e=>{"use strict";function t(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}e.s(["isDisjoint",0,function(...e){let t,r=e.filter(Boolean);if(0===r.length||1===r.length)return!0;for(let e of r){let r=Object.keys(e);if(!t||0===t.size){t=new Set(r);continue}for(let e of r){if(t.has(e))return!1;t.add(e)}}return!0},"isJWK",0,e=>t(e)&&"string"==typeof e.kty,"isObject",0,t,"isPrivateJWK",0,e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d),"isPublicJWK",0,e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv,"isSecretJWK",0,e=>"oct"===e.kty&&"string"==typeof e.k])},178904,e=>e.a(async(t,r)=>{try{var n=e.i(224010),a=e.i(311250),o=t([a]);async function s(){return new Response(null,{headers:{"Access-Control-Allow-Origin":n.CORS_ORIGIN,"Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function i(e){return await (0,a.handleChat)(e)}[a]=o.then?(await o)():o,e.s(["OPTIONS",0,s,"POST",0,i]),r()}catch(e){r(e)}},!1),326713,e=>e.a(async(t,r)=>{try{var n=e.i(747909),a=e.i(174017),o=e.i(996250),s=e.i(759756),i=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),h=e.i(47587),_=e.i(666012),R=e.i(570101),E=e.i(626937),f=e.i(10372),y=e.i(193695);e.i(820232);var v=e.i(600220),A=e.i(178904),g=t([A]);[A]=g.then?(await g)():g;let O=new n.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/v1/responses/route",pathname:"/api/v1/responses",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/v1/responses/route.ts",nextConfigOutput:"standalone",userland:A,...{}}),{workAsyncStorage:T,workUnitAsyncStorage:S,serverHooks:I}=O;async function m(e,t,r){r.requestMeta&&(0,s.setRequestMeta)(e,r.requestMeta),O.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/v1/responses/route";n=n.replace(/\/index$/,"")||"/";let o=await O.prepare(e,t,{srcPage:n,multiZoneDraftMode:!1});if(!o)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:A,params:g,nextConfig:m,parsedUrl:T,isDraftMode:S,prerenderManifest:I,routerServerContext:C,isOnDemandRevalidate:w,revalidateOnlyGenerated:P,resolvedPathname:b,clientReferenceManifest:x,serverActionsManifest:N}=o,D=(0,c.normalizeAppPath)(n),U=!!(I.dynamicRoutes[D]||I.routes[b]),J=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,T,!1):t.end("This page could not be found"),null);if(U&&!S){let e=!!I.routes[b],t=I.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(m.adapterPath)return await J();throw new y.NoFallbackError}}let k=null;!U||O.isDev||S||(k=b,k="/index"===k?"/":k);let j=!0===O.isDev||!U,L=U&&!j;N&&x&&(0,l.setManifestsSingleton)({page:n,clientReferenceManifest:x,serverActionsManifest:N});let W=e.method||"GET",M=(0,i.getTracer)(),q=M.getActiveScopeSpan(),H=!!(null==C?void 0:C.isWrappedByNextServer),K=!!(0,s.getRequestMeta)(e,"minimalMode"),B=(0,s.getRequestMeta)(e,"incrementalCache")||await O.getIncrementalCache(e,m,I,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let F={params:g,previewProps:I.preview,renderOpts:{experimental:{authInterrupts:!!m.experimental.authInterrupts},cacheComponents:!!m.cacheComponents,supportsDynamicResponse:j,incrementalCache:B,cacheLifeProfiles:m.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>O.onRequestError(e,t,n,a,C)},sharedContext:{buildId:A}},G=new d.NodeNextRequest(e),V=new d.NodeNextResponse(t),$=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o,s=async e=>O.handle($,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${W} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),o&&o!==e&&(o.setAttribute("http.route",a),o.updateName(t))}else e.updateName(`${W} ${n}`)}),l=async o=>{var i,l;let c=async({previousCacheEntry:a})=>{try{if(!K&&w&&P&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await s(o);e.fetchMetrics=F.renderOpts.fetchMetrics;let i=F.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let l=F.renderOpts.collectedTags;if(!U)return await (0,_.sendResponse)(G,V,n,F.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,R.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,a=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==a?void 0:a.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:n,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:w})},!1,C),t}},d=await O.handleResponse({req:e,nextConfig:m,cacheKey:k,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:K});if(!U)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,R.fromNodeOutgoingHttpHeaders)(d.value.headers);return K&&U||u.delete(f.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,E.getCacheControlHeader)(d.cacheControl)),await (0,_.sendResponse)(G,V,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};H&&q?await l(q):(o=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${W} ${n}`,kind:i.SpanKind.SERVER,attributes:{"http.method":W,"http.target":e.url}},l),void 0,!H))}catch(t){if(t instanceof y.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:w})},!1,C),U)throw t;return await (0,_.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,m,"patchFetch",0,function(){return(0,o.patchFetch)({workAsyncStorage:T,workUnitAsyncStorage:S})},"routeModule",0,O,"serverHooks",0,I,"workAsyncStorage",0,T,"workUnitAsyncStorage",0,S]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},605589,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localDb_ts_0ml5l_h._.js"].map(t=>e.l(t))).then(()=>t(969738)))},901259,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_http2_0j-h654._.js"].map(t=>e.l(t))).then(()=>t(925328)))},828068,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_promptCache_index_ts_0jus6ym._.js"].map(t=>e.l(t))).then(()=>t(198426)))},537776,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_usageDb_ts_0oz3f~n._.js"].map(t=>e.l(t))).then(()=>t(36197)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0j~-yu1._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__03l6k3k._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),n=t([a]);[a]=n.then?(await n)():n,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},663370,632802,477468,e=>{"use strict";let t=new TextEncoder,r=new TextDecoder;function a(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=[];for(let r=0;r<e.length;r+=32768)t.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(t.join(""))}function n(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}e.s(["concat",0,function(...e){let t=new Uint8Array(e.reduce((e,{length:t})=>e+t,0)),r=0;for(let a of e)t.set(a,r),r+=a.length;return t},"decoder",0,r,"encode",0,function(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++){let a=e.charCodeAt(r);if(a>127)throw TypeError("non-ASCII string encountered in encode()");t[r]=a}return t},"encoder",0,t],632802),e.s(["decodeBase64",0,n,"encodeBase64",0,a],477468),e.s(["decode",0,function(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:r.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=r.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return n(t)}catch{throw TypeError("The input to be decoded is not correctly encoded.")}},"encode",0,function(e){let r=e;return("string"==typeof r&&(r=t.encode(r)),Uint8Array.prototype.toBase64)?r.toBase64({alphabet:"base64url",omitPadding:!0}):a(r).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}],663370)},865466,e=>{"use strict";class t extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}}class r extends t{[Symbol.asyncIterator];static code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";constructor(e="multiple matching keys found in the JSON Web Key Set",t){super(e,t)}}e.s(["JOSEAlgNotAllowed",0,class extends t{static code="ERR_JOSE_ALG_NOT_ALLOWED";code="ERR_JOSE_ALG_NOT_ALLOWED"},"JOSENotSupported",0,class extends t{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"},"JWSInvalid",0,class extends t{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"},"JWSSignatureVerificationFailed",0,class extends t{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}},"JWTClaimValidationFailed",0,class extends t{static code="ERR_JWT_CLAIM_VALIDATION_FAILED";code="ERR_JWT_CLAIM_VALIDATION_FAILED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTExpired",0,class extends t{static code="ERR_JWT_EXPIRED";code="ERR_JWT_EXPIRED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTInvalid",0,class extends t{static code="ERR_JWT_INVALID";code="ERR_JWT_INVALID"}])},177278,e=>{"use strict";function t(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}e.s(["isDisjoint",0,function(...e){let t,r=e.filter(Boolean);if(0===r.length||1===r.length)return!0;for(let e of r){let r=Object.keys(e);if(!t||0===t.size){t=new Set(r);continue}for(let e of r){if(t.has(e))return!1;t.add(e)}}return!0},"isJWK",0,e=>t(e)&&"string"==typeof e.kty,"isObject",0,t,"isPrivateJWK",0,e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d),"isPublicJWK",0,e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv,"isSecretJWK",0,e=>"oct"===e.kty&&"string"==typeof e.k])},328538,e=>e.a(async(t,r)=>{try{var a=e.i(224010),n=e.i(311250),s=e.i(352812),o=e.i(676088),i=e.i(200392),l=t([n,o,i]);[n,o,i]=l.then?(await l)():l;let p=!1;async function c(){p||(await (0,s.initTranslators)(),p=!0,console.log("[SSE] Translators initialized for /v1beta/models"))}async function d(){return new Response(null,{headers:{"Access-Control-Allow-Origin":a.CORS_ORIGIN,"Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function u(e,{params:t}){let r;await c();try{r=await e.json()}catch{return Response.json({error:{message:"Invalid request",details:[{field:"body",message:"Invalid JSON body"}]}},{status:400})}try{let a,{path:s}=await t;if(s.length>=2){let e=s[0],t=s[1].replace(":generateContent","").replace(":streamGenerateContent","");a=`${e}/${t}`}else a=s[0].replace(":generateContent","").replace(":streamGenerateContent","");let l=(0,i.validateBody)(o.v1betaGeminiGenerateSchema,r);if((0,i.isValidationFailure)(l))return Response.json({error:l.error},{status:400});let c=l.data,d=function(e,t){let r=[];if(e.systemInstruction){let t=e.systemInstruction.parts?.map(e=>e.text).join("\n")||"";t&&r.push({role:"system",content:t})}if(e.contents)for(let t of e.contents){let e="model"===t.role?"assistant":"user",a=t.parts?.map(e=>e.text).join("\n")||"";r.push({role:e,content:a})}let a=e.generationConfig?.stream!==!1;return{model:t,messages:r,stream:a,max_tokens:e.generationConfig?.maxOutputTokens,temperature:e.generationConfig?.temperature,top_p:e.generationConfig?.topP}}(c,a),u=new Request(e.url,{method:"POST",headers:e.headers,body:JSON.stringify(d)});return await (0,n.handleChat)(u,(0,n.buildClientRawRequest)(e,r))}catch(e){return console.log("Error handling Gemini request:",e),Response.json({error:{message:e.message,code:500}},{status:500})}}e.s(["OPTIONS",0,d,"POST",0,u]),r()}catch(e){r(e)}},!1),199782,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),s=e.i(996250),o=e.i(759756),i=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),h=e.i(47587),_=e.i(666012),f=e.i(570101),R=e.i(626937),m=e.i(10372),E=e.i(193695);e.i(820232);var g=e.i(600220),y=e.i(328538),v=t([y]);[y]=v.then?(await v)():v;let I=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/v1beta/models/[...path]/route",pathname:"/api/v1beta/models/[...path]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/v1beta/models/[...path]/route.ts",nextConfigOutput:"standalone",userland:y,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:O,serverHooks:C}=I;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),I.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/v1beta/models/[...path]/route";a=a.replace(/\/index$/,"")||"/";let s=await I.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:y,params:v,nextConfig:A,parsedUrl:S,isDraftMode:O,prerenderManifest:C,routerServerContext:T,isOnDemandRevalidate:w,revalidateOnlyGenerated:b,resolvedPathname:P,clientReferenceManifest:x,serverActionsManifest:N}=s,D=(0,c.normalizeAppPath)(a),j=!!(C.dynamicRoutes[D]||C.routes[P]),k=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,S,!1):t.end("This page could not be found"),null);if(j&&!O){let e=!!C.routes[P],t=C.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await k();throw new E.NoFallbackError}}let J=null;!j||I.isDev||O||(J=P,J="/index"===J?"/":J);let U=!0===I.isDev||!j,L=j&&!U;N&&x&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:x,serverActionsManifest:N});let W=e.method||"GET",q=(0,i.getTracer)(),M=q.getActiveScopeSpan(),B=!!(null==T?void 0:T.isWrappedByNextServer),H=!!(0,o.getRequestMeta)(e,"minimalMode"),K=(0,o.getRequestMeta)(e,"incrementalCache")||await I.getIncrementalCache(e,A,C,H);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let F={params:v,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:U,incrementalCache:K,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>I.onRequestError(e,t,a,n,T)},sharedContext:{buildId:y}},G=new d.NodeNextRequest(e),V=new d.NodeNextResponse(t),$=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let s,o=async e=>I.handle($,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=q.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${W} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${W} ${a}`)}),l=async s=>{var i,l;let c=async({previousCacheEntry:n})=>{try{if(!H&&w&&b&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=F.renderOpts.fetchMetrics;let i=F.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let l=F.renderOpts.collectedTags;if(!j)return await (0,_.sendResponse)(G,V,a,F.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:w})},!1,T),t}},d=await I.handleResponse({req:e,nextConfig:A,cacheKey:J,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:b,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:H});if(!j)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});H||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),O&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return H&&j||u.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,R.getCacheControlHeader)(d.cacheControl)),await (0,_.sendResponse)(G,V,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};B&&M?await l(M):(s=q.getActiveScopeSpan(),await q.withPropagatedContext(e.headers,()=>q.trace(p.BaseServerSpan.handleRequest,{spanName:`${W} ${a}`,kind:i.SpanKind.SERVER,attributes:{"http.method":W,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof E.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:w})},!1,T),j)throw t;return await (0,_.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:O})},"routeModule",0,I,"serverHooks",0,C,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,O]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},605589,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localDb_ts_0ml5l_h._.js"].map(t=>e.l(t))).then(()=>t(969738)))},901259,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_http2_0j-h654._.js"].map(t=>e.l(t))).then(()=>t(925328)))},828068,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_promptCache_index_ts_0jus6ym._.js"].map(t=>e.l(t))).then(()=>t(198426)))},537776,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_usageDb_ts_0oz3f~n._.js"].map(t=>e.l(t))).then(()=>t(36197)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__01b8762._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__05~jdzu._.js.map
@@ -3,4 +3,4 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
3
3
  GROUP BY provider ORDER BY cnt DESC`).all(),c={"serper-search":.001,"brave-search":.003,"perplexity-search":.005,"exa-search":.01,"tavily-search":.004},d={},h=0;for(let e of u){let t=(c[e.provider]??.001)*e.cnt;d[e.provider]={count:e.cnt,costUsd:t},h+=t}let m=e.prepare(`SELECT COUNT(*) as cnt FROM call_logs
4
4
  WHERE request_type = 'search' AND duration > 0 AND duration < 5`).get(),g=m?.cnt??0,f=r>0?Math.round(g/r*100):0;return y.NextResponse.json({total:r,today:s,cached:g,errors:o,totalCostUsd:h,byProvider:d,cacheHitRate:f,avgDurationMs:p,last24h:[]})}catch(e){return console.error("[/api/v1/search/analytics]",e instanceof Error?e.message:String(e)),y.NextResponse.json({error:"Internal server error"},{status:500})}}e.s(["GET",0,E],647110);var _=e.i(647110);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/v1/search/analytics/route",pathname:"/api/v1/search/analytics",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/v1/search/analytics/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:w,workUnitAsyncStorage:A,serverHooks:O}=C;async function b(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),C.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/v1/search/analytics/route";y=y.replace(/\/index$/,"")||"/";let x=await C.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,params:E,nextConfig:_,parsedUrl:w,isDraftMode:A,prerenderManifest:O,routerServerContext:b,isOnDemandRevalidate:S,revalidateOnlyGenerated:N,resolvedPathname:T,clientReferenceManifest:k,serverActionsManifest:P}=x,j=(0,o.normalizeAppPath)(y),q=!!(O.dynamicRoutes[j]||O.routes[T]),D=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,w,!1):t.end("This page could not be found"),null);if(q&&!A){let e=!!O.routes[T],t=O.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(_.adapterPath)return await D();throw new f.NoFallbackError}}let U=null;!q||C.isDev||A||(U="/index"===(U=T)?"/":U);let M=!0===C.isDev||!q,H=q&&!M;P&&k&&(0,i.setManifestsSingleton)({page:y,clientReferenceManifest:k,serverActionsManifest:P});let I=e.method||"GET",$=(0,s.getTracer)(),L=$.getActiveScopeSpan(),F=!!(null==b?void 0:b.isWrappedByNextServer),K=!!(0,n.getRequestMeta)(e,"minimalMode"),B=(0,n.getRequestMeta)(e,"incrementalCache")||await C.getIncrementalCache(e,_,O,K);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let W={params:E,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:M,incrementalCache:B,cacheLifeProfiles:_.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>C.onRequestError(e,t,a,n,b)},sharedContext:{buildId:R}},G=new l.NodeNextRequest(e),z=new l.NodeNextResponse(t),V=p.NextRequestAdapter.fromNodeNextRequest(G,(0,p.signalFromNodeResponse)(t));try{let n,i=async e=>C.handle(V,W).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${I} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${I} ${y}`)}),o=async n=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!K&&S&&N&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=W.renderOpts.fetchMetrics;let o=W.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=W.renderOpts.collectedTags;if(!q)return await (0,d.sendResponse)(G,z,s,W.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,a=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,b),t}},p=await C.handleResponse({req:e,nextConfig:_,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:N,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:K});if(!q)return null;if((null==p||null==(s=p.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(o=p.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",S?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return K&&q||u.delete(g.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(p.cacheControl)),await (0,d.sendResponse)(G,z,new Response(p.value.body,{headers:u,status:p.value.status||200})),null};F&&L?await o(L):(n=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(u.BaseServerSpan.handleRequest,{spanName:`${I} ${y}`,kind:s.SpanKind.SERVER,attributes:{"http.method":I,"http.target":e.url}},o),void 0,!F))}catch(t){if(t instanceof f.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,b),q)throw t;return await (0,d.sendResponse)(G,z,new Response(null,{status:500})),null}}e.s(["handler",0,b,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:A})},"routeModule",0,C,"serverHooks",0,O,"workAsyncStorage",0,w,"workUnitAsyncStorage",0,A],284937)},606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))}];
5
5
 
6
- //# sourceMappingURL=%5Broot-of-the-server%5D__07eee_s._.js.map
6
+ //# sourceMappingURL=%5Broot-of-the-server%5D__08~6j3q._.js.map
@@ -2,6 +2,6 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
2
2
  Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function R(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function A(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await R(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function E(e,t,r){await c.default.mkdir(e,{recursive:!0});let a=u.default.join(e,"config.yaml"),n=`port: ${t}
3
3
  host: 127.0.0.1
4
4
  log_level: warn
5
- `;return await c.default.writeFile(a,n),a}async function b(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await E(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),b(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function k(e,r,a=3e4,n){j(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function j(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await A(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await b(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return k(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);j(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function U(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&j(e),k(e,o),{pid:n,port:i}}async function D(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,D,"installTool",0,J,"restartTool",0,U,"startTool",0,W,"stopTool",0,N],64634)},456594,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),i=e.i(561916),o=e.i(174677),s=e.i(869741),l=e.i(316795),c=e.i(487718),d=e.i(995169),u=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),y=e.i(10372),m=e.i(193695);e.i(820232);var g=e.i(600220),w=e.i(745015),v=e.i(89171),_=e.i(64634),x=e.i(724999);async function R(e){let t=await (0,x.requireManagementAuth)(e);if(t)return t;try{let{searchParams:t}=new URL(e.url),r=t.get("tool")||"cliproxyapi",a=await (0,_.checkForUpdates)(r);return v.NextResponse.json(a)}catch(e){return console.error("[version-manager] check-update error:",e),v.NextResponse.json({error:"Failed to check for updates"},{status:500})}}(0,e.i(195975).ensureServerEntryExports)([R]),(0,w.registerServerReference)(R,"40ed8a0c525514bdb33313be52e54980b1e64eb530",null),e.s(["GET",0,R],761191);var A=e.i(761191);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/version-manager/check-update/route",pathname:"/api/version-manager/check-update",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/check-update/route.ts",nextConfigOutput:"standalone",userland:A,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:b,serverHooks:I}=S;async function T(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),S.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/version-manager/check-update/route";w=w.replace(/\/index$/,"")||"/";let v=await S.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:R,parsedUrl:A,isDraftMode:E,prerenderManifest:b,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:k}=v,j=(0,s.normalizeAppPath)(w),J=!!(b.dynamicRoutes[j]||b.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,A,!1):t.end("This page could not be found"),null);if(J&&!E){let e=!!b.routes[O],t=b.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(R.adapterPath)return await W();throw new m.NoFallbackError}}let N=null;!J||S.isDev||E||(N="/index"===(N=O)?"/":N);let U=!0===S.isDev||!J,D=J&&!U;k&&C&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:C,serverActionsManifest:k});let $=e.method||"GET",M=(0,i.getTracer)(),L=M.getActiveScopeSpan(),H=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,n.getRequestMeta)(e,"minimalMode"),F=(0,n.getRequestMeta)(e,"incrementalCache")||await S.getIncrementalCache(e,R,b,q);null==F||F.resetRequestCache(),globalThis.__incrementalCache=F;let V={params:x,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:U,incrementalCache:F,cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=c.NextRequestAdapter.fromNodeNextRequest(B,(0,c.signalFromNodeResponse)(t));try{let n,o=async e=>S.handle(G,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${$} ${w}`)}),s=async n=>{var i,s;let l=async({previousCacheEntry:r})=>{try{if(!q&&T&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(n);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,p.sendResponse)(B,K,i,V.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[y.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,a=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,I),t}},c=await S.handleResponse({req:e,nextConfig:R,cacheKey:N,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:q});if(!J)return null;if((null==c||null==(i=c.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(s=c.value)?void 0:s.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return q&&J||d.delete(y.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,h.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(B,K,new Response(c.value.body,{headers:d,status:c.value.status||200})),null};H&&L?await s(L):(n=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${w}`,kind:i.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},s),void 0,!H))}catch(t){if(t instanceof m.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",0,T,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:b})},"routeModule",0,S,"serverHooks",0,I,"workAsyncStorage",0,E,"workUnitAsyncStorage",0,b],456594)},606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
5
+ `;return await c.default.writeFile(a,n),a}async function b(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await E(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),b(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function k(e,r,a=3e4,n){j(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function j(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await A(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await b(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return k(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);j(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function U(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&j(e),k(e,o),{pid:n,port:i}}async function D(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,D,"installTool",0,J,"restartTool",0,U,"startTool",0,W,"stopTool",0,N],64634)},456594,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),i=e.i(561916),o=e.i(174677),s=e.i(869741),l=e.i(316795),c=e.i(487718),d=e.i(995169),u=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),y=e.i(10372),m=e.i(193695);e.i(820232);var g=e.i(600220),w=e.i(745015),v=e.i(89171),_=e.i(64634),x=e.i(724999);async function R(e){let t=await (0,x.requireManagementAuth)(e);if(t)return t;try{let{searchParams:t}=new URL(e.url),r=t.get("tool")||"cliproxyapi",a=await (0,_.checkForUpdates)(r);return v.NextResponse.json(a)}catch(e){return console.error("[version-manager] check-update error:",e),v.NextResponse.json({error:"Failed to check for updates"},{status:500})}}(0,e.i(195975).ensureServerEntryExports)([R]),(0,w.registerServerReference)(R,"40a57beb00b3797cf4adb9530c16b723a4a96d30dc",null),e.s(["GET",0,R],761191);var A=e.i(761191);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/version-manager/check-update/route",pathname:"/api/version-manager/check-update",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/check-update/route.ts",nextConfigOutput:"standalone",userland:A,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:b,serverHooks:I}=S;async function T(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),S.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/version-manager/check-update/route";w=w.replace(/\/index$/,"")||"/";let v=await S.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:R,parsedUrl:A,isDraftMode:E,prerenderManifest:b,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:k}=v,j=(0,s.normalizeAppPath)(w),J=!!(b.dynamicRoutes[j]||b.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,A,!1):t.end("This page could not be found"),null);if(J&&!E){let e=!!b.routes[O],t=b.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(R.adapterPath)return await W();throw new m.NoFallbackError}}let N=null;!J||S.isDev||E||(N="/index"===(N=O)?"/":N);let U=!0===S.isDev||!J,D=J&&!U;k&&C&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:C,serverActionsManifest:k});let $=e.method||"GET",M=(0,i.getTracer)(),L=M.getActiveScopeSpan(),H=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,n.getRequestMeta)(e,"minimalMode"),F=(0,n.getRequestMeta)(e,"incrementalCache")||await S.getIncrementalCache(e,R,b,q);null==F||F.resetRequestCache(),globalThis.__incrementalCache=F;let V={params:x,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:U,incrementalCache:F,cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=c.NextRequestAdapter.fromNodeNextRequest(B,(0,c.signalFromNodeResponse)(t));try{let n,o=async e=>S.handle(G,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${$} ${w}`)}),s=async n=>{var i,s;let l=async({previousCacheEntry:r})=>{try{if(!q&&T&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(n);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,p.sendResponse)(B,K,i,V.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[y.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,a=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,I),t}},c=await S.handleResponse({req:e,nextConfig:R,cacheKey:N,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:q});if(!J)return null;if((null==c||null==(i=c.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(s=c.value)?void 0:s.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return q&&J||d.delete(y.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,h.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(B,K,new Response(c.value.body,{headers:d,status:c.value.status||200})),null};H&&L?await s(L):(n=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${w}`,kind:i.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},s),void 0,!H))}catch(t){if(t instanceof m.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",0,T,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:b})},"routeModule",0,S,"serverHooks",0,I,"workAsyncStorage",0,E,"workUnitAsyncStorage",0,b],456594)},606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
6
6
 
7
7
  //# sourceMappingURL=%5Broot-of-the-server%5D__0a8ozdb._.js.map
@@ -1,7 +1,7 @@
1
1
  module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var a=Object.defineProperty,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={},l={RequestCookies:()=>y,ResponseCookies:()=>m,parseCookie:()=>u,parseSetCookie:()=>p,stringifyCookie:()=>d};for(var c in l)a(s,c,{get:l[c],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),a=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?a:`${a}; ${r.join("; ")}`}function u(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[a,n]=[r.slice(0,e),r.slice(e+1)];try{t.set(a,decodeURIComponent(null!=n?n:"true"))}catch{}}return t}function p(e){if(!e)return;let[[t,r],...a]=u(e),{domain:n,expires:i,httponly:o,maxage:s,path:l,samesite:c,secure:d,partitioned:p,priority:y}=Object.fromEntries(a.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var m,g,w={name:t,value:decodeURIComponent(r),domain:n,...i&&{expires:new Date(i)},...o&&{httpOnly:!0},..."string"==typeof s&&{maxAge:Number(s)},path:l,...c&&{sameSite:f.includes(m=(m=c).toLowerCase())?m:void 0},...d&&{secure:!0},...y&&{priority:h.includes(g=(g=y).toLowerCase())?g:void 0},...p&&{partitioned:!0}};let e={};for(let t in w)w[t]&&(e[t]=w[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of i(t))o.call(e,s)||void 0===s||a(e,s,{get:()=>t[s],enumerable:!(r=n(t,s))||r.enumerable});return e})(a({},"__esModule",{value:!0}),s);var f=["strict","lax","none"],h=["low","medium","high"],y=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of u(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===a).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,a=this._parsed;return a.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(a).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},m=class{constructor(e){var t,r,a;this._parsed=new Map,this._headers=e;const n=null!=(a=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?a:[];for(const e of Array.isArray(n)?n:function(e){if(!e)return[];var t,r,a,n,i,o=[],s=0;function l(){for(;s<e.length&&/\s/.test(e.charAt(s));)s+=1;return s<e.length}for(;s<e.length;){for(t=s,i=!1;l();)if(","===(r=e.charAt(s))){for(a=s,s+=1,l(),n=s;s<e.length&&"="!==(r=e.charAt(s))&&";"!==r&&","!==r;)s+=1;s<e.length&&"="===e.charAt(s)?(i=!0,s=n,o.push(e.substring(t,a)),t=s):s=a+1}else s+=1;(!i||s>=e.length)&&o.push(e.substring(t,e.length))}return o}(n)){const t=p(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let a="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===a)}has(e){return this._parsed.has(e)}set(...e){let[t,r,a]=1===e.length?[e[0].name,e[0].value,e[0]]:e,n=this._parsed;return n.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...a})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(n,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),n=t([a]);[a]=n.then?(await n)():n,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},663370,632802,477468,e=>{"use strict";let t=new TextEncoder,r=new TextDecoder;function a(e){if(Uint8Array.prototype.toBase64)return e.toBase64();let t=[];for(let r=0;r<e.length;r+=32768)t.push(String.fromCharCode.apply(null,e.subarray(r,r+32768)));return btoa(t.join(""))}function n(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return r}e.s(["concat",0,function(...e){let t=new Uint8Array(e.reduce((e,{length:t})=>e+t,0)),r=0;for(let a of e)t.set(a,r),r+=a.length;return t},"decoder",0,r,"encode",0,function(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++){let a=e.charCodeAt(r);if(a>127)throw TypeError("non-ASCII string encountered in encode()");t[r]=a}return t},"encoder",0,t],632802),e.s(["decodeBase64",0,n,"encodeBase64",0,a],477468),e.s(["decode",0,function(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:r.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=r.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return n(t)}catch{throw TypeError("The input to be decoded is not correctly encoded.")}},"encode",0,function(e){let r=e;return("string"==typeof r&&(r=t.encode(r)),Uint8Array.prototype.toBase64)?r.toBase64({alphabet:"base64url",omitPadding:!0}):a(r).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}],663370)},865466,e=>{"use strict";class t extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t),this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}}class r extends t{[Symbol.asyncIterator];static code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";code="ERR_JWKS_MULTIPLE_MATCHING_KEYS";constructor(e="multiple matching keys found in the JSON Web Key Set",t){super(e,t)}}e.s(["JOSEAlgNotAllowed",0,class extends t{static code="ERR_JOSE_ALG_NOT_ALLOWED";code="ERR_JOSE_ALG_NOT_ALLOWED"},"JOSENotSupported",0,class extends t{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"},"JWSInvalid",0,class extends t{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"},"JWSSignatureVerificationFailed",0,class extends t{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}},"JWTClaimValidationFailed",0,class extends t{static code="ERR_JWT_CLAIM_VALIDATION_FAILED";code="ERR_JWT_CLAIM_VALIDATION_FAILED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTExpired",0,class extends t{static code="ERR_JWT_EXPIRED";code="ERR_JWT_EXPIRED";claim;reason;payload;constructor(e,t,r="unspecified",a="unspecified"){super(e,{cause:{claim:r,reason:a,payload:t}}),this.claim=r,this.reason=a,this.payload=t}},"JWTInvalid",0,class extends t{static code="ERR_JWT_INVALID";code="ERR_JWT_INVALID"}])},177278,e=>{"use strict";function t(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}e.s(["isDisjoint",0,function(...e){let t,r=e.filter(Boolean);if(0===r.length||1===r.length)return!0;for(let e of r){let r=Object.keys(e);if(!t||0===t.size){t=new Set(r);continue}for(let e of r){if(t.has(e))return!1;t.add(e)}}return!0},"isJWK",0,e=>t(e)&&"string"==typeof e.kty,"isObject",0,t,"isPrivateJWK",0,e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d),"isPublicJWK",0,e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv,"isSecretJWK",0,e=>"oct"===e.kty&&"string"==typeof e.k])},709939,e=>{"use strict";var t=e.i(663370),r=e.i(293233),a=e.i(865466),n=e.i(632802),i=e.i(913658),o=e.i(177278),s=e.i(48215),l=e.i(252665),c=e.i(18083);async function d(e,d,u){if(!(0,o.isObject)(e))throw new a.JWSInvalid("Flattened JWS must be an object");if(void 0===e.protected&&void 0===e.header)throw new a.JWSInvalid('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==e.protected&&"string"!=typeof e.protected)throw new a.JWSInvalid("JWS Protected Header incorrect type");if(void 0===e.payload)throw new a.JWSInvalid("JWS Payload missing");if("string"!=typeof e.signature)throw new a.JWSInvalid("JWS Signature missing or incorrect type");if(void 0!==e.header&&!(0,o.isObject)(e.header))throw new a.JWSInvalid("JWS Unprotected Header incorrect type");let p={};if(e.protected)try{let r=(0,t.decode)(e.protected);p=JSON.parse(n.decoder.decode(r))}catch{throw new a.JWSInvalid("JWS Protected Header is invalid")}if(!(0,o.isDisjoint)(p,e.header))throw new a.JWSInvalid("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");let f={...p,...e.header},h=(0,l.validateCrit)(a.JWSInvalid,new Map([["b64",!0]]),u?.crit,p,f),y=!0;if(h.has("b64")&&"boolean"!=typeof(y=p.b64))throw new a.JWSInvalid('The "b64" (base64url-encode payload) Header Parameter must be a boolean');let{alg:m}=f;if("string"!=typeof m||!m)throw new a.JWSInvalid('JWS "alg" (Algorithm) Header Parameter missing or invalid');let g=u&&function(e,t){if(void 0!==t&&(!Array.isArray(t)||t.some(e=>"string"!=typeof e)))throw TypeError(`"${e}" option must be an array of strings`);if(t)return new Set(t)}("algorithms",u.algorithms);if(g&&!g.has(m))throw new a.JOSEAlgNotAllowed('"alg" (Algorithm) Header Parameter value not allowed');if(y){if("string"!=typeof e.payload)throw new a.JWSInvalid("JWS Payload must be a string")}else if("string"!=typeof e.payload&&!(e.payload instanceof Uint8Array))throw new a.JWSInvalid("JWS Payload must be a string or an Uint8Array instance");let w=!1;"function"==typeof d&&(d=await d(p,e),w=!0),(0,s.checkKeyType)(m,d,"verify");let v=(0,n.concat)(void 0!==e.protected?(0,n.encode)(e.protected):new Uint8Array,(0,n.encode)("."),"string"==typeof e.payload?y?(0,n.encode)(e.payload):n.encoder.encode(e.payload):e.payload),_=(0,i.decodeBase64url)(e.signature,"signature",a.JWSInvalid),x=await (0,c.normalizeKey)(d,m);if(!await (0,r.verify)(m,x,_,v))throw new a.JWSSignatureVerificationFailed;let A={payload:y?(0,i.decodeBase64url)(e.payload,"payload",a.JWSInvalid):"string"==typeof e.payload?n.encoder.encode(e.payload):e.payload};return(void 0!==e.protected&&(A.protectedHeader=p),void 0!==e.header&&(A.unprotectedHeader=e.header),w)?{...A,key:x}:A}async function u(e,t,r){if(e instanceof Uint8Array&&(e=n.decoder.decode(e)),"string"!=typeof e)throw new a.JWSInvalid("Compact JWS must be a string or Uint8Array");let{0:i,1:o,2:s,length:l}=e.split(".");if(3!==l)throw new a.JWSInvalid("Invalid Compact JWS");let c=await d({payload:o,protected:i,signature:s},t,r),u={payload:c.payload,protectedHeader:c.protectedHeader};return"function"==typeof t?{...u,key:c.key}:u}var p=e.i(224472);async function f(e,t,r){let n=await u(e,t,r);if(n.protectedHeader.crit?.includes("b64")&&!1===n.protectedHeader.b64)throw new a.JWTInvalid("JWTs MUST NOT use unencoded payload");let i={payload:(0,p.validateClaimsSet)(n.protectedHeader,n.payload,r),protectedHeader:n.protectedHeader};return"function"==typeof t?{...i,key:n.key}:i}e.s(["jwtVerify",0,f],709939)},235328,e=>{"use strict";var t=e.i(709939),r=e.i(493458);e.i(245272);var a=e.i(548941);async function n(a){if(!await i())return!0;let n=a.headers.get("authorization");if(n?.startsWith("Bearer ")){let t=n.slice(7);try{let{validateApiKey:r}=await e.A(734680);if(await r(t))return!0}catch{}}if(process.env.JWT_SECRET)try{let e=await (0,r.cookies)(),a=e.get("auth_token")?.value;if(a){let e=new TextEncoder().encode(process.env.JWT_SECRET);return await (0,t.jwtVerify)(a,e),!0}}catch{}return!1}async function i(){try{let e=await (0,a.getSettings)();if(!1===e.requireLogin||!e.password&&!process.env.INITIAL_PASSWORD)return!1;return!0}catch(e){return console.error("[API_AUTH_GUARD] isAuthRequired failed, defaulting to true:",e?.message||e),!0}}e.s(["isAuthRequired",0,i,"isAuthenticated",0,n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},997953,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].ReactServerDOMTurbopackServer},745015,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"registerServerReference",{enumerable:!0,get:function(){return a.registerServerReference}});let a=e.r(997953)},195975,(e,t,r)=>{"use strict";function a(e){for(let t=0;t<e.length;t++){let r=e[t];if("function"!=typeof r)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof r}.
2
- Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function A(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function R(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await A(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function b(e,t,r){await c.default.mkdir(e,{recursive:!0});let a=u.default.join(e,"config.yaml"),n=`port: ${t}
2
+ Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureServerEntryExports",{enumerable:!0,get:function(){return a}})},858235,e=>{"use strict";var t=e.i(254799);function r(e){let r=(0,t.randomUUID)(),a=e.type||(e.status>=500?"server_error":404===e.status?"not_found":409===e.status?"conflict":"invalid_request");return Response.json({error:{message:e.message,type:a,details:e.details},requestId:r},{status:e.status})}e.s(["createErrorResponse",0,r,"createErrorResponseFromUnknown",0,function(e,t="Unexpected server error"){return r({status:Number(e?.status)||500,message:"string"==typeof e?.message?e.message:t,type:e?.type,details:e?.details})}])},724999,e=>{"use strict";var t=e.i(235328),r=e.i(858235);async function a(e){return!await (0,t.isAuthRequired)()||await (0,t.isAuthenticated)(e)?null:(0,r.createErrorResponse)({status:401,message:"Authentication required",type:"invalid_request"})}e.s(["requireManagementAuth",0,a])},28065,(e,t,r)=>{t.exports=e.x("stream/promises",()=>require("stream/promises"))},64634,e=>{"use strict";var t=e.i(13985);let r=new Map;async function a(e){let t,r,a=await fetch(e,{headers:(t={Accept:"application/vnd.github+json"},(r=process.env.GITHUB_TOKEN)&&(t.Authorization=`Bearer ${r}`),t),signal:AbortSignal.timeout(15e3)});if(!a.ok)throw Error(`GitHub API ${a.status}: ${e}`);return a.json()}async function n(e){let t=r.get(e);if(t&&Date.now()-t.ts<3e5)return t.data;let n=await a(e);return r.set(e,{data:n,ts:Date.now()}),n}function i(e){return{tag:e.tag_name,version:e.tag_name.replace(/^v/,""),assets:(e.assets||[]).map(e=>({name:e.name,url:e.browser_download_url,size:e.size})),publishedAt:e.published_at,body:e.body||""}}async function o(){return i(await n("https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/latest"))}async function s(e){let t=e.startsWith("v")?e:`v${e}`;try{let e=await n(`https://api.github.com/repos/router-for-me/CLIProxyAPI/releases/tags/${t}`);return i(e)}catch{return null}}async function l(e){let t=e.startsWith("v")?e:`v${e}`,r=`https://github.com/router-for-me/CLIProxyAPI/releases/download/${t}/checksums.txt`;try{let e=await fetch(r,{signal:AbortSignal.timeout(1e4)});if(!e.ok)return new Map;let t=await e.text(),a=new Map;for(let e of t.split("\n")){let t=e.trim().split(/\s+/);t.length>=2&&a.set(t[1],t[0])}return a}catch{return new Map}}var c=e.i(924868),d=e.i(522734),u=e.i(814747),p=e.i(446786),f=e.i(254799),h=e.i(28065),y=e.i(233405);let m=(0,e.i(224361).promisify)(y.execFile),g=process.env.DATA_DIR||u.default.join(p.default.homedir(),".omniroute");async function w(e,t,r){let a=await fetch(e,{signal:r});if(!a.ok||!a.body)throw Error(`Download failed: ${a.status}`);let n=d.default.createWriteStream(t);await (0,h.pipeline)(a.body,n)}async function v(e,t){await m("tar",["xzf",e,"-C",t])}async function _(e,t){await m("unzip",["-o",e,"-d",t])}async function x(e,t){let r=f.default.createHash("sha256");return await new Promise((t,a)=>{let n=(0,d.createReadStream)(e);n.on("data",e=>r.update(e)),n.on("end",t),n.on("error",a)}),r.digest("hex").toLowerCase()===t.toLowerCase()}async function A(e,t,r){let a=await s(e);if(!a)throw Error(`Version ${e} not found`);let{platform:n,arch:i}={platform:(process.platform,"linux"),arch:(process.arch,"amd64")},o=`CLIProxyAPI_${a.version}_${n}_${i}${"windows"===n?".zip":".tar.gz"}`,p=a.assets.find(e=>e.name===o);if(!p)throw Error(`No asset for ${n}/${i}`);let f=u.default.join(t,`cliproxyapi-${e}`);await c.default.mkdir(f,{recursive:!0});let h=u.default.join(f,o);await w(p.url,h,r);let y=await l(e);if(y.size>0){let e=y.get(o);if(e&&!await x(h,e))throw await c.default.unlink(h),Error(`SHA256 checksum mismatch for ${o}`)}"windows"===n?await _(h,f):await v(h,f),await c.default.unlink(h).catch(()=>{});let m=function(e){for(let t of["cli-proxy-api","cli-proxy-api.exe","CLIProxyAPI","CLIProxyAPI.exe"])if(d.default.existsSync(u.default.join(e,t)))return u.default.join(e,t);return null}(f);if(!m)throw Error("Binary not found in extracted archive");return await c.default.chmod(m,493),m}async function R(e,t){let r=u.default.join(t||g,"bin");await c.default.mkdir(r,{recursive:!0});let a=await A(e,r),n=u.default.join(r,"cliproxyapi");try{await c.default.unlink(n)}catch{}return await c.default.symlink(a,n),n}async function S(e){let t=u.default.join(e||g,"bin","cliproxyapi");try{let e=await c.default.realpath(t);return d.default.existsSync(e)?e:null}catch{return null}}async function E(e,t,r){await c.default.mkdir(e,{recursive:!0});let a=u.default.join(e,"config.yaml"),n=`port: ${t}
3
3
  host: 127.0.0.1
4
4
  log_level: warn
5
- `;return await c.default.writeFile(a,n),a}async function E(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await b(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),E(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function j(e,r,a=3e4,n){k(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function k(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await R(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await E(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return j(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);k(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function D(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&k(e),j(e,o),{pid:n,port:i}}async function U(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,U,"installTool",0,J,"restartTool",0,D,"startTool",0,W,"stopTool",0,N],64634)},621389,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),i=e.i(64634),o=e.i(676088),s=e.i(200392),l=e.i(724999),c=e.i(195975),d=t([o,s]);async function u(e){let t,r=await (0,l.requireManagementAuth)(e);if(r)return r;try{t=await e.json()}catch{return n.NextResponse.json({error:"Invalid JSON body"},{status:400})}let a=(0,s.validateBody)(o.versionManagerInstallSchema,t);if((0,s.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});try{let{tool:e,version:t}=a.data,r=await (0,i.installTool)(e,t||void 0);return n.NextResponse.json({success:!0,...r})}catch(t){let e=t instanceof Error?t.message:"Installation failed";return console.error("[version-manager] install error:",e),n.NextResponse.json({error:e},{status:500})}}[o,s]=d.then?(await d)():d,(0,c.ensureServerEntryExports)([u]),(0,a.registerServerReference)(u,"40accd1152edd0144fc1bd952e595fb21bf6eb4931",null),e.s(["POST",0,u]),r()}catch(e){r(e)}},!1),185707,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),y=e.i(570101),m=e.i(626937),g=e.i(10372),w=e.i(193695);e.i(820232);var v=e.i(600220),_=e.i(621389),x=t([_]);[_]=x.then?(await x)():x;let R=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/version-manager/install/route",pathname:"/api/version-manager/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/install/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:b,serverHooks:E}=R;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),R.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/version-manager/install/route";a=a.replace(/\/index$/,"")||"/";let i=await R.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:A,parsedUrl:S,isDraftMode:b,prerenderManifest:E,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:j}=i,k=(0,c.normalizeAppPath)(a),J=!!(E.dynamicRoutes[k]||E.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,S,!1):t.end("This page could not be found"),null);if(J&&!b){let e=!!E.routes[O],t=E.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await W();throw new w.NoFallbackError}}let N=null;!J||R.isDev||b||(N=O,N="/index"===N?"/":N);let D=!0===R.isDev||!J,U=J&&!D;j&&C&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:C,serverActionsManifest:j});let $=e.method||"GET",M=(0,s.getTracer)(),H=M.getActiveScopeSpan(),L=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,A,E,q);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:x,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>R.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},F=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>R.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${a}`)}),l=async i=>{var s,l;let c=async({previousCacheEntry:n})=>{try{if(!q&&T&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,h.sendResponse)(F,K,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:q});if(!J)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(d.value.headers);return q&&J||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(F,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&H?await l(H):(i=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof w.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,h.sendResponse)(F,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:b})},"routeModule",0,R,"serverHooks",0,E,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,b]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
5
+ `;return await c.default.writeFile(a,n),a}async function b(e,r,a){let n=await (0,t.getVersionManagerTool)("cliproxyapi");if(n?.pid&&I(n.pid))return{pid:n.pid,port:n.port};let i=r||8317,o=a||process.env.CLIPROXYAPI_CONFIG_DIR||u.default.join(p.default.homedir(),".cli-proxy-api");await E(o,i);let s=(0,y.spawn)(e,["-c",u.default.join(o,"config.yaml")],{detached:!1,stdio:["ignore","pipe","pipe"],env:{...process.env}});s.stdout?.on("data",()=>{}),s.stderr?.on("data",()=>{}),s.on("error",async e=>{await (0,t.setToolStatus)("cliproxyapi","error",void 0,e.message)}),s.on("exit",async e=>{0!==e&&null!==e&&await (0,t.setToolStatus)("cliproxyapi","stopped",void 0,`Process exited with code ${e}`)});let l=s.pid;return await (0,t.setToolStatus)("cliproxyapi","running",l),{pid:l,port:i}}function I(e){try{return process.kill(e,0),!0}catch{return!1}}function T(e){return new Promise(t=>{if(!I(e))return void t();try{process.kill(e,"SIGTERM")}catch{t();return}let r=setTimeout(()=>{try{process.kill(e,"SIGKILL")}catch{}clearInterval(a),t()},5e3),a=setInterval(()=>{I(e)||(clearTimeout(r),clearInterval(a),t())},200)})}async function P(e,t,r,a){return a&&(await T(a),await new Promise(e=>setTimeout(e,500))),b(e,t,r)}let O=new Map;async function C(e,t){let r=Date.now();try{let a=await fetch(`${e}${t||"/v1/models"}`,{signal:AbortSignal.timeout(5e3),headers:{Authorization:"Bearer omniroute-internal"}}),n=Date.now()-r;if(!a.ok)return{healthy:!1,latency:n,modelCount:0,error:`HTTP ${a.status}`};let i=await a.json(),o=Array.isArray(i.data)?i.data.length:0;return{healthy:!0,latency:n,modelCount:o,error:null}}catch(e){return{healthy:!1,latency:Date.now()-r,modelCount:0,error:e instanceof Error?e.message:String(e)}}}function j(e,r,a=3e4,n){k(e);let i=async()=>{let a=(await C(r,n)).healthy?"healthy":"unhealthy";await (0,t.updateToolHealth)(e,a).catch(()=>{})};i();let o=setInterval(i,a);O.set(e,o)}function k(e){let t=O.get(e);t&&(clearInterval(t),O.delete(e))}async function J(e,r){let a=r||(await o()).version,n=await R(a);return await (0,t.upsertVersionManagerTool)({tool:e,installedVersion:a,binaryPath:n,status:"installed"}),{installedVersion:a,binaryPath:n}}async function W(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}. Run installTool('${e}') or set binaryPath in version manager.`);let{pid:n,port:i}=await b(a,r?.port||void 0),o=`http://127.0.0.1:${i}`;return j(e,o),{pid:n,port:i,health:await C(o)}}async function N(e){let r=await (0,t.getVersionManagerTool)(e);k(e),r?.pid&&await T(r.pid),await (0,t.setToolStatus)(e,"stopped")}async function D(e){let r=await (0,t.getVersionManagerTool)(e),a=r?.binaryPath||await S();if(!a)throw Error(`No binary found for ${e}`);let{pid:n,port:i}=await P(a,r?.port||void 0,void 0,r?.pid||void 0),o=`http://127.0.0.1:${i}`;return O.has(e)&&k(e),j(e,o),{pid:n,port:i}}async function U(e){r.clear();let a=(await o()).version,n=await (0,t.getVersionManagerTool)(e),i=n?.installedVersion||null;return i?{current:i,latest:a,updateAvailable:i!==a}:{current:null,latest:a,updateAvailable:!0}}e.s(["checkForUpdates",0,U,"installTool",0,J,"restartTool",0,D,"startTool",0,W,"stopTool",0,N],64634)},621389,e=>e.a(async(t,r)=>{try{var a=e.i(745015),n=e.i(89171),i=e.i(64634),o=e.i(676088),s=e.i(200392),l=e.i(724999),c=e.i(195975),d=t([o,s]);async function u(e){let t,r=await (0,l.requireManagementAuth)(e);if(r)return r;try{t=await e.json()}catch{return n.NextResponse.json({error:"Invalid JSON body"},{status:400})}let a=(0,s.validateBody)(o.versionManagerInstallSchema,t);if((0,s.isValidationFailure)(a))return n.NextResponse.json({error:a.error},{status:400});try{let{tool:e,version:t}=a.data,r=await (0,i.installTool)(e,t||void 0);return n.NextResponse.json({success:!0,...r})}catch(t){let e=t instanceof Error?t.message:"Installation failed";return console.error("[version-manager] install error:",e),n.NextResponse.json({error:e},{status:500})}}[o,s]=d.then?(await d)():d,(0,c.ensureServerEntryExports)([u]),(0,a.registerServerReference)(u,"401d242cfd45f1e042755b66d5a01dc46d00625f80",null),e.s(["POST",0,u]),r()}catch(e){r(e)}},!1),185707,e=>e.a(async(t,r)=>{try{var a=e.i(747909),n=e.i(174017),i=e.i(996250),o=e.i(759756),s=e.i(561916),l=e.i(174677),c=e.i(869741),d=e.i(316795),u=e.i(487718),p=e.i(995169),f=e.i(47587),h=e.i(666012),y=e.i(570101),m=e.i(626937),g=e.i(10372),w=e.i(193695);e.i(820232);var v=e.i(600220),_=e.i(621389),x=t([_]);[_]=x.then?(await x)():x;let R=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/version-manager/install/route",pathname:"/api/version-manager/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/version-manager/install/route.ts",nextConfigOutput:"standalone",userland:_,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:E,serverHooks:b}=R;async function A(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),R.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/version-manager/install/route";a=a.replace(/\/index$/,"")||"/";let i=await R.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:_,params:x,nextConfig:A,parsedUrl:S,isDraftMode:E,prerenderManifest:b,routerServerContext:I,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:j}=i,k=(0,c.normalizeAppPath)(a),J=!!(b.dynamicRoutes[k]||b.routes[O]),W=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,S,!1):t.end("This page could not be found"),null);if(J&&!E){let e=!!b.routes[O],t=b.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await W();throw new w.NoFallbackError}}let N=null;!J||R.isDev||E||(N=O,N="/index"===N?"/":N);let D=!0===R.isDev||!J,U=J&&!D;j&&C&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:C,serverActionsManifest:j});let $=e.method||"GET",M=(0,s.getTracer)(),H=M.getActiveScopeSpan(),L=!!(null==I?void 0:I.isWrappedByNextServer),q=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await R.getIncrementalCache(e,A,b,q);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let V={params:x,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>R.onRequestError(e,t,a,n,I)},sharedContext:{buildId:_}},F=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),z=u.NextRequestAdapter.fromNodeNextRequest(F,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>R.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${a}`)}),l=async i=>{var s,l;let c=async({previousCacheEntry:n})=>{try{if(!q&&T&&P&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&r.waitUntil&&(r.waitUntil(s),s=void 0);let l=V.renderOpts.collectedTags;if(!J)return await (0,h.sendResponse)(F,K,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,y.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:P,responseGenerator:c,waitUntil:r.waitUntil,isMinimalMode:q});if(!J)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});q||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,y.fromNodeOutgoingHttpHeaders)(d.value.headers);return q&&J||u.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,h.sendResponse)(F,K,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};L&&H?await l(H):(i=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${a}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof w.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,f.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,I),J)throw t;return await (0,h.sendResponse)(F,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:E})},"routeModule",0,R,"serverHooks",0,b,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,E]),r()}catch(e){r(e)}},!1),606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},734680,e=>{e.v(e=>Promise.resolve().then(()=>e(125852)))}];
6
6
 
7
7
  //# sourceMappingURL=%5Broot-of-the-server%5D__0bd4ccn._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[677850,e=>e.a(async(t,r)=>{try{let t=await e.y("zod");e.n(t),r()}catch(e){r(e)}},!0),200392,e=>e.a(async(t,r)=>{try{var a=e.i(677850),i=t([a]);[a]=i.then?(await i)():i,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,t){let r=e.safeParse(t);if(r.success)return{success:!0,data:r.data};let a=Array.isArray(r.error?.issues)?r.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),r()}catch(e){r(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},224010,e=>{"use strict";let t=process.env.CORS_ORIGIN||"*";e.s(["CORS_HEADERS",0,{"Access-Control-Allow-Origin":t,"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-api-key, anthropic-version"},"CORS_ORIGIN",0,t])},249157,e=>{"use strict";var t=e.i(706901),r=e.i(161002);e.s(["debug",()=>t.debug,"error",()=>t.error,"info",()=>t.info,"maskKey",()=>r.maskKey,"request",()=>t.request,"response",()=>t.response,"stream",()=>t.stream,"warn",()=>t.warn])},573344,e=>{"use strict";let t={openai:{id:"openai",baseUrl:"https://api.openai.com/v1/images/generations",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"gpt-image-1",name:"GPT Image 1"},{id:"dall-e-3",name:"DALL-E 3"},{id:"dall-e-2",name:"DALL-E 2"}],supportedSizes:["1024x1024","1024x1792","1792x1024","256x256","512x512"]},xai:{id:"xai",baseUrl:"https://api.x.ai/v1/images/generations",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"grok-2-image-1212",name:"Grok 2 Image"}],supportedSizes:["1024x1024"]},together:{id:"together",baseUrl:"https://api.together.xyz/v1/images/generations",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"black-forest-labs/FLUX.1.1-pro",name:"FLUX 1.1 Pro"},{id:"black-forest-labs/FLUX.1-schnell-Free",name:"FLUX 1 Schnell (Free)"},{id:"stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0"}],supportedSizes:["1024x1024","512x512"]},fireworks:{id:"fireworks",baseUrl:"https://api.fireworks.ai/inference/v1/images/generations",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"accounts/fireworks/models/flux-1-dev-fp8",name:"FLUX 1 Dev FP8"},{id:"accounts/fireworks/models/stable-diffusion-xl-1024-v1-0",name:"SDXL 1024 v1.0"}],supportedSizes:["1024x1024","512x512"]},antigravity:{id:"antigravity",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"oauth",authHeader:"bearer",format:"gemini-image",models:[],supportedSizes:["1024x1024"]},nebius:{id:"nebius",baseUrl:"https://api.tokenfactory.nebius.com/v1/images/generations",fallbackUrl:"https://api.studio.nebius.com/v1/images/generations",authType:"apikey",authHeader:"bearer",format:"openai",models:[{id:"black-forest-labs/flux-schnell",name:"FLUX.1 Schnell"},{id:"black-forest-labs/flux-dev",name:"FLUX.1 Dev"}],supportedSizes:["1024x1024","512x512"]},hyperbolic:{id:"hyperbolic",baseUrl:"https://api.hyperbolic.xyz/v1/image/generation",authType:"apikey",authHeader:"bearer",format:"hyperbolic",models:[{id:"SDXL1.0-base",name:"SDXL 1.0 Base"},{id:"SD2",name:"Stable Diffusion 2"},{id:"FLUX.1-dev",name:"FLUX.1 Dev"}],supportedSizes:["1024x1024","512x512"]},nanobanana:{id:"nanobanana",baseUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/generate",proUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/generate-pro",statusUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/record-info",authType:"apikey",authHeader:"bearer",format:"nanobanana",models:[{id:"nanobanana-flash",name:"NanoBanana Flash (Gemini 2.5 Flash)"},{id:"nanobanana-pro",name:"NanoBanana Pro (Gemini 3 Pro)"}],supportedSizes:["1024x1024","1024x1280","1024x1536","1536x1024","1280x1024"]},sdwebui:{id:"sdwebui",baseUrl:"http://localhost:7860/sdapi/v1/txt2img",authType:"none",authHeader:"none",format:"sdwebui",models:[{id:"stable-diffusion-v1-5",name:"Stable Diffusion v1.5"},{id:"sdxl-base-1.0",name:"SDXL Base 1.0"}],supportedSizes:["512x512","768x768","1024x1024"]},comfyui:{id:"comfyui",baseUrl:"http://localhost:8188",authType:"none",authHeader:"none",format:"comfyui",models:[{id:"flux-dev",name:"FLUX Dev"},{id:"sdxl",name:"SDXL"}],supportedSizes:["512x512","768x768","1024x1024"]}};e.s(["getAllImageModels",0,function(){let e=[];for(let[r,a]of Object.entries(t))for(let t of a.models)e.push({id:`${r}/${t.id}`,name:t.name,provider:r,supportedSizes:a.supportedSizes});return e},"getImageProvider",0,function(e){return t[e]||null},"parseImageModel",0,function(e){if(!e)return{provider:null,model:null};for(let[r,a]of Object.entries(t))if(e.startsWith(r+"/"))return{provider:r,model:e.slice(r.length+1)};for(let[r,a]of Object.entries(t))if(a.models.some(t=>t.id===e))return{provider:r,model:e};return{provider:null,model:e}}])},740512,e=>{"use strict";e.s(["toJsonErrorPayload",0,function e(t,r="Upstream provider error"){let a={error:{message:r,type:"upstream_error",code:"upstream_error"}};if(t&&"object"==typeof t){let e=t.error;return"string"==typeof e?{error:{message:e,type:"upstream_error",code:"upstream_error"}}:e&&"object"==typeof e?t:{error:t}}if("string"==typeof t){let i=t.trim();if(!i)return a;try{let t=JSON.parse(i);return e(t,r)}catch{return{error:{message:i,type:"upstream_error",code:"upstream_error"}}}}return a}])},333974,e=>{"use strict";function t(e){return e&&"object"==typeof e&&!Array.isArray(e)?e:{}}async function r(e,r){let a=await fetch(`${e}/prompt`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:r})});if(!a.ok){let e=await a.text();throw Error(`ComfyUI submit failed (${a.status}): ${e}`)}let i=t(await a.json()).prompt_id;if("string"!=typeof i||!i)throw Error("ComfyUI submit failed: missing prompt_id");return i}async function a(e,r,i=12e4){let o=Date.now();for(;Date.now()-o<i;){await new Promise(e=>setTimeout(e,2e3));let a=await fetch(`${e}/history/${r}`);if(!a.ok)continue;let i=t(await a.json()),o=t(i[r]);if(o&&o.outputs&&Object.keys(o.outputs).length>0)return o}throw Error(`ComfyUI prompt ${r} timed out after ${i}ms`)}async function i(e,t,r,a){let i=new URL(`${e}/view`);i.searchParams.set("filename",t),i.searchParams.set("subfolder",r),i.searchParams.set("type",a);let o=await fetch(i.toString());if(!o.ok)throw Error(`ComfyUI fetch output failed (${o.status})`);return o.arrayBuffer()}e.s(["extractComfyOutputFiles",0,function(e){let t=[];for(let r of Object.values(e.outputs||{}))for(let e of r.images||r.gifs||r.audio||[])t.push({filename:e.filename,subfolder:e.subfolder||"",type:e.type||"output"});return t},"fetchComfyOutput",0,i,"pollComfyResult",0,a,"submitComfyWorkflow",0,r])},416726,e=>e.a(async(t,r)=>{try{var a=e.i(224010),i=e.i(671528),o=e.i(287726),s=e.i(573344),n=e.i(719201),l=e.i(16023),d=e.i(706901),u=e.i(249157),p=e.i(740512),c=e.i(478847),m=e.i(676088),f=e.i(200392);e.i(245272);var h=e.i(186920),y=t([i,m,f]);async function g(){return new Response(null,{headers:{"Access-Control-Allow-Origin":a.CORS_ORIGIN,"Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function v(){let e=(0,s.getAllImageModels)(),t=Math.floor(Date.now()/1e3),r=e.map(e=>({id:e.id,object:"model",created:t,owned_by:e.provider,type:"image",supported_sizes:e.supportedSizes}));try{let e=await (0,h.getAllCustomModels)();for(let[a,i]of Object.entries(e))if(Array.isArray(i))for(let e of i){if(!e?.id||!Array.isArray(e.supportedEndpoints)||!e.supportedEndpoints.includes("images"))continue;let i=`${a}/${e.id}`;r.some(e=>e.id===i)||r.push({id:i,object:"model",created:t,owned_by:a,type:"image",supported_sizes:null})}}catch{}return new Response(JSON.stringify({object:"list",data:r}),{headers:{"Content-Type":"application/json"}})}async function b(e){let t;try{t=await e.json()}catch{return d.warn("IMAGE","Invalid JSON body"),(0,n.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,"Invalid JSON body")}let r=(0,f.validateBody)(m.v1ImageGenerationSchema,t);if((0,f.isValidationFailure)(r))return(0,n.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,r.error.message);let a=r.data;if("true"===process.env.REQUIRE_API_KEY){let t=(0,o.extractApiKey)(e);if(!t)return(0,n.errorResponse)(l.HTTP_STATUS.UNAUTHORIZED,"Missing API key");if(!await (0,o.isValidApiKey)(t))return(0,n.errorResponse)(l.HTTP_STATUS.UNAUTHORIZED,"Invalid API key")}let y=await (0,c.enforceApiKeyPolicy)(e,a.model);if(y.rejection)return y.rejection;let{provider:g}=(0,s.parseImageModel)(a.model),v=!1;if(!g)try{let e=await (0,h.getAllCustomModels)();for(let[t,r]of Object.entries(e))if(Array.isArray(r)){for(let e of r)if(e?.id&&Array.isArray(e.supportedEndpoints)&&e.supportedEndpoints.includes("images")&&`${t}/${e.id}`===a.model){g=t,v=!0;break}if(g)break}}catch{}if(!g)return(0,n.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,`Invalid image model: ${a.model}. Use format: provider/model`);let b=(0,s.getImageProvider)(g),T=null;if(b&&"none"!==b.authType){if(!(T=await (0,o.getProviderCredentials)(g)))return(0,n.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,`No credentials for image provider: ${g}`);if(T.allRateLimited)return(0,n.unavailableResponse)(l.HTTP_STATUS.RATE_LIMITED,`[${g}] All accounts rate limited`,T.retryAfter,T.retryAfterHuman)}else if(v){if(!(T=await (0,o.getProviderCredentials)(g)))return(0,n.errorResponse)(l.HTTP_STATUS.BAD_REQUEST,`No credentials for custom image provider: ${g}`);if(T.allRateLimited)return(0,n.unavailableResponse)(l.HTTP_STATUS.RATE_LIMITED,`[${g}] All accounts rate limited`,T.retryAfter,T.retryAfterHuman)}let R=await (0,i.handleImageGeneration)({body:a,credentials:T,log:u,...v&&{resolvedProvider:g}});if(R.success)return await (0,o.clearRecoveredProviderState)(T),new Response(JSON.stringify(R.data),{status:200,headers:{"Content-Type":"application/json"}});let A=(0,p.toJsonErrorPayload)(R.error,"Image generation provider error");return new Response(JSON.stringify(A),{status:R.status,headers:{"Content-Type":"application/json"}})}[i,m,f]=y.then?(await y)():y,e.s(["GET",0,v,"OPTIONS",0,g,"POST",0,b]),r()}catch(e){r(e)}},!1),463168,e=>e.a(async(t,r)=>{try{var a=e.i(747909),i=e.i(174017),o=e.i(996250),s=e.i(759756),n=e.i(561916),l=e.i(174677),d=e.i(869741),u=e.i(316795),p=e.i(487718),c=e.i(995169),m=e.i(47587),f=e.i(666012),h=e.i(570101),y=e.i(626937),g=e.i(10372),v=e.i(193695);e.i(820232);var b=e.i(600220),T=e.i(416726),R=t([T]);[T]=R.then?(await R)():R;let w=new a.AppRouteRouteModule({definition:{kind:i.RouteKind.APP_ROUTE,page:"/api/v1/images/generations/route",pathname:"/api/v1/images/generations",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/v1/images/generations/route.ts",nextConfigOutput:"standalone",userland:T,...{}}),{workAsyncStorage:S,workUnitAsyncStorage:E,serverHooks:x}=w;async function A(e,t,r){r.requestMeta&&(0,s.setRequestMeta)(e,r.requestMeta),w.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/v1/images/generations/route";a=a.replace(/\/index$/,"")||"/";let o=await w.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!o)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:T,params:R,nextConfig:A,parsedUrl:S,isDraftMode:E,prerenderManifest:x,routerServerContext:_,isOnDemandRevalidate:P,revalidateOnlyGenerated:U,resolvedPathname:C,clientReferenceManifest:I,serverActionsManifest:O}=o,k=(0,d.normalizeAppPath)(a),D=!!(x.dynamicRoutes[k]||x.routes[C]),H=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!E){let e=!!x.routes[C],t=x.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await H();throw new v.NoFallbackError}}let N=null;!D||w.isDev||E||(N=C,N="/index"===N?"/":N);let j=!0===w.isDev||!D,L=D&&!j;O&&I&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:I,serverActionsManifest:O});let M=e.method||"GET",$=(0,n.getTracer)(),F=$.getActiveScopeSpan(),q=!!(null==_?void 0:_.isWrappedByNextServer),z=!!(0,s.getRequestMeta)(e,"minimalMode"),B=(0,s.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,A,x,z);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let X={params:R,previewProps:x.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:j,incrementalCache:B,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>w.onRequestError(e,t,a,i,_)},sharedContext:{buildId:T}},G=new u.NodeNextRequest(e),K=new u.NodeNextResponse(t),J=p.NextRequestAdapter.fromNodeNextRequest(G,(0,p.signalFromNodeResponse)(t));try{let o,s=async e=>w.handle(J,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=r.get("next.route");if(i){let t=`${M} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t),o&&o!==e&&(o.setAttribute("http.route",i),o.updateName(t))}else e.updateName(`${M} ${a}`)}),l=async o=>{var n,l;let d=async({previousCacheEntry:i})=>{try{if(!z&&P&&U&&!i)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await s(o);e.fetchMetrics=X.renderOpts.fetchMetrics;let n=X.renderOpts.pendingWaitUntil;n&&r.waitUntil&&(r.waitUntil(n),n=void 0);let l=X.renderOpts.collectedTags;if(!D)return await (0,f.sendResponse)(G,K,a,X.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,i=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:b.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==i?void 0:i.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:P})},!1,_),t}},u=await w.handleResponse({req:e,nextConfig:A,cacheKey:N,routeKind:i.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:U,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:z});if(!D)return null;if((null==u||null==(n=u.value)?void 0:n.kind)!==b.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});z||t.setHeader("x-nextjs-cache",P?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return z&&D||p.delete(g.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,y.getCacheControlHeader)(u.cacheControl)),await (0,f.sendResponse)(G,K,new Response(u.value.body,{headers:p,status:u.value.status||200})),null};q&&F?await l(F):(o=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${a}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l),void 0,!q))}catch(t){if(t instanceof v.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:P})},!1,_),D)throw t;return await (0,f.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",0,A,"patchFetch",0,function(){return(0,o.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:E})},"routeModule",0,w,"serverHooks",0,x,"workAsyncStorage",0,S,"workUnitAsyncStorage",0,E]),r()}catch(e){r(e)}},!1),605589,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_localDb_ts_0ml5l_h._.js"].map(t=>e.l(t))).then(()=>t(969738)))},606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},49794,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(t=>e.l(t))).then(()=>t(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))},579042,e=>{e.v(t=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(t=>e.l(t))).then(()=>t(65448)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0_a98vk._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0d6bqbw._.js.map
@@ -1,3 +1,3 @@
1
1
  module.exports=[677850,e=>e.a(async(r,s)=>{try{let r=await e.y("zod");e.n(r),s()}catch(e){s(e)}},!0),200392,e=>e.a(async(r,s)=>{try{var a=e.i(677850),t=r([a]);[a]=t.then?(await t)():t,a.z.object({password:a.z.string().min(1,"Password is required").max(200)}),e.s(["isValidationFailure",0,function(e){return!1===e.success},"validateBody",0,function(e,r){let s=e.safeParse(r);if(s.success)return{success:!0,data:s.data};let a=Array.isArray(s.error?.issues)?s.error.issues:[];return{success:!1,error:{message:"Invalid request",details:a.map(e=>({field:e.path.join("."),message:e.message}))}}}]),s()}catch(e){s(e)}},!1),41244,e=>{"use strict";e.s(["HIDEABLE_SIDEBAR_ITEM_IDS",0,["home","endpoints","api-manager","providers","combos","auto-combo","costs","analytics","limits","cache","cli-tools","agents","memory","skills","translator","playground","media","search-tools","health","logs","audit","settings","docs","issues"]])},224010,e=>{"use strict";let r=process.env.CORS_ORIGIN||"*";e.s(["CORS_HEADERS",0,{"Access-Control-Allow-Origin":r,"Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, x-api-key, anthropic-version"},"CORS_ORIGIN",0,r])},479103,e=>{"use strict";let r={cohere:{id:"cohere",baseUrl:"https://api.cohere.com/v2/rerank",authType:"apikey",authHeader:"bearer",models:[{id:"rerank-v3.5",name:"Rerank v3.5"},{id:"rerank-english-v3.0",name:"Rerank English v3.0"},{id:"rerank-multilingual-v3.0",name:"Rerank Multilingual v3.0"}]},together:{id:"together",baseUrl:"https://api.together.xyz/v1/rerank",authType:"apikey",authHeader:"bearer",models:[{id:"Salesforce/Llama-Rank-V2",name:"Llama Rank V2"}]},nvidia:{id:"nvidia",baseUrl:"https://integrate.api.nvidia.com/v1/ranking",authType:"apikey",authHeader:"bearer",format:"nvidia",models:[{id:"nvidia/nv-rerankqa-mistral-4b-v3",name:"NV RerankQA Mistral 4B v3"}]},fireworks:{id:"fireworks",baseUrl:"https://api.fireworks.ai/inference/v1/rerank",authType:"apikey",authHeader:"bearer",models:[{id:"accounts/fireworks/models/nomic-rerank-v1",name:"Nomic Rerank v1"}]}};e.s(["getAllRerankModels",0,function(){let e=[];for(let[s,a]of Object.entries(r))for(let r of a.models)e.push({id:`${s}/${r.id}`,name:r.name,provider:s});return e},"getRerankProvider",0,function(e){return r[e]||null},"parseRerankModel",0,function(e){if(!e)return{provider:null,model:null};for(let[s,a]of Object.entries(r))if(e.startsWith(s+"/"))return{provider:s,model:e.slice(s.length+1)};for(let[s,a]of Object.entries(r))if(a.models.some(r=>r.id===e))return{provider:s,model:e};return{provider:null,model:e}}])},606102,e=>{e.v(e=>Promise.resolve().then(()=>e(548941)))},789543,e=>{e.v(e=>Promise.resolve().then(()=>e(385498)))},579042,e=>{e.v(r=>Promise.all(["server/chunks/src_shared_utils_apiKey_ts_12~h.oz._.js"].map(r=>e.l(r))).then(()=>r(65448)))},49794,e=>{e.v(r=>Promise.all(["server/chunks/src_shared_constants_pricing_ts_0hk12it._.js"].map(r=>e.l(r))).then(()=>r(404503)))},386305,e=>{e.v(e=>Promise.resolve().then(()=>e(878947)))}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0_c_.ye._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0f2rz58._.js.map