omniroute 1.4.4 → 1.4.7

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 (725) hide show
  1. package/app/.env +110 -0
  2. package/app/.next/BUILD_ID +1 -1
  3. package/app/.next/app-path-routes-manifest.json +39 -39
  4. package/app/.next/build-manifest.json +3 -3
  5. package/app/.next/prerender-manifest.json +3 -3
  6. package/app/.next/required-server-files.json +4 -4
  7. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
  8. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
  9. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  10. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js +2 -2
  11. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js.nft.json +1 -1
  12. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
  13. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js +2 -2
  14. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js.nft.json +1 -1
  15. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
  16. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +3 -3
  17. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  18. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  20. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  21. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  22. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js +2 -2
  23. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +1 -1
  24. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  25. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  26. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  27. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  28. package/app/.next/server/app/(dashboard)/dashboard/health/page.js +2 -2
  29. package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
  30. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  31. package/app/.next/server/app/(dashboard)/dashboard/limits/page.js +2 -2
  32. package/app/.next/server/app/(dashboard)/dashboard/limits/page.js.nft.json +1 -1
  33. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  34. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +2 -2
  35. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -1
  36. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
  37. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +2 -2
  38. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +1 -1
  39. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  40. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  41. package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  42. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  43. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  44. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  45. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  46. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  47. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  48. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  49. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  50. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  51. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  52. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  53. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  54. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  55. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +2 -2
  56. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
  57. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  58. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js +2 -2
  59. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
  60. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  61. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +3 -3
  62. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  63. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  64. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  65. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  66. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  67. package/app/.next/server/app/_global-error/page.js +3 -3
  68. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  69. package/app/.next/server/app/_global-error.html +2 -2
  70. package/app/.next/server/app/_global-error.rsc +4 -4
  71. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +4 -4
  72. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  73. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  74. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  75. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  76. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  77. package/app/.next/server/app/_not-found/page.js +2 -2
  78. package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
  79. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  80. package/app/.next/server/app/_not-found.html +1 -1
  81. package/app/.next/server/app/_not-found.rsc +5 -5
  82. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +5 -5
  83. package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  84. package/app/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
  85. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  86. package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  87. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  88. package/app/.next/server/app/api/auth/login/route.js +1 -1
  89. package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  90. package/app/.next/server/app/api/auth/logout/route.js +1 -1
  91. package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  92. package/app/.next/server/app/api/auth/status/route.js +1 -1
  93. package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  94. package/app/.next/server/app/api/cache/route.js +1 -1
  95. package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
  96. package/app/.next/server/app/api/cache/stats/route.js +1 -1
  97. package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  98. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  99. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  100. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +3 -3
  101. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  102. package/app/.next/server/app/api/cli-tools/backups/route.js +2 -2
  103. package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
  104. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +1 -1
  105. package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  106. package/app/.next/server/app/api/cli-tools/cline-settings/route.js +2 -2
  107. package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  108. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  109. package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
  110. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +1 -1
  111. package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  112. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
  113. package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  114. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route.js +1 -1
  115. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
  116. package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  117. package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  118. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
  119. package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  120. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
  121. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
  122. package/app/.next/server/app/api/cli-tools/status/route.js +2 -2
  123. package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
  124. package/app/.next/server/app/api/cloud/auth/route.js +1 -1
  125. package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
  126. package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
  127. package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
  128. package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
  129. package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
  130. package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
  131. package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
  132. package/app/.next/server/app/api/combos/[id]/route.js +1 -1
  133. package/app/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
  134. package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  135. package/app/.next/server/app/api/combos/metrics/route.js +1 -1
  136. package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
  137. package/app/.next/server/app/api/combos/route.js +1 -1
  138. package/app/.next/server/app/api/combos/route.js.nft.json +1 -1
  139. package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
  140. package/app/.next/server/app/api/combos/test/route.js +1 -1
  141. package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
  142. package/app/.next/server/app/api/compliance/audit-log/route.js +1 -1
  143. package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
  144. package/app/.next/server/app/api/db-backups/export/route.js +1 -1
  145. package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
  146. package/app/.next/server/app/api/db-backups/exportAll/route.js +1 -1
  147. package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
  148. package/app/.next/server/app/api/db-backups/import/route.js +1 -1
  149. package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
  150. package/app/.next/server/app/api/db-backups/route.js +1 -1
  151. package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
  152. package/app/.next/server/app/api/evals/[suiteId]/route.js +1 -1
  153. package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
  154. package/app/.next/server/app/api/evals/route.js +1 -1
  155. package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
  156. package/app/.next/server/app/api/fallback/chains/route.js +2 -2
  157. package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
  158. package/app/.next/server/app/api/init/route.js +1 -1
  159. package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  160. package/app/.next/server/app/api/keys/[id]/route.js +1 -1
  161. package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  162. package/app/.next/server/app/api/keys/route.js +1 -1
  163. package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  164. package/app/.next/server/app/api/logs/console/route.js +1 -1
  165. package/app/.next/server/app/api/logs/console/route.js.nft.json +1 -1
  166. package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -1
  167. package/app/.next/server/app/api/models/alias/route.js +1 -1
  168. package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  169. package/app/.next/server/app/api/models/availability/route.js +1 -1
  170. package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  171. package/app/.next/server/app/api/models/catalog/route.js +2 -2
  172. package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
  173. package/app/.next/server/app/api/models/route.js +2 -2
  174. package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  175. package/app/.next/server/app/api/monitoring/health/route.js +2 -2
  176. package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
  177. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +2 -2
  178. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  179. package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  180. package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +1 -1
  181. package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  182. package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
  183. package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  184. package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  185. package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  186. package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
  187. package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  188. package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  189. package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  190. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  191. package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  192. package/app/.next/server/app/api/policies/route.js +2 -2
  193. package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
  194. package/app/.next/server/app/api/pricing/defaults/route.js +1 -1
  195. package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
  196. package/app/.next/server/app/api/pricing/models/route.js +1 -1
  197. package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
  198. package/app/.next/server/app/api/pricing/route.js +1 -1
  199. package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  200. package/app/.next/server/app/api/provider-metrics/route.js +2 -2
  201. package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
  202. package/app/.next/server/app/api/provider-models/route.js +1 -1
  203. package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
  204. package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
  205. package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  206. package/app/.next/server/app/api/provider-nodes/route.js +2 -2
  207. package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  208. package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
  209. package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  210. package/app/.next/server/app/api/providers/[id]/models/route.js +2 -2
  211. package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  212. package/app/.next/server/app/api/providers/[id]/route.js +1 -1
  213. package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  214. package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
  215. package/app/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  216. package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  217. package/app/.next/server/app/api/providers/client/route.js +1 -1
  218. package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  219. package/app/.next/server/app/api/providers/route.js +2 -2
  220. package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  221. package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
  222. package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  223. package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  224. package/app/.next/server/app/api/providers/validate/route.js +1 -1
  225. package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  226. package/app/.next/server/app/api/rate-limit/route.js +1 -1
  227. package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
  228. package/app/.next/server/app/api/rate-limits/route.js +1 -1
  229. package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
  230. package/app/.next/server/app/api/resilience/reset/route.js +1 -1
  231. package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
  232. package/app/.next/server/app/api/resilience/route.js +1 -1
  233. package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
  234. package/app/.next/server/app/api/restart/route.js +1 -1
  235. package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  236. package/app/.next/server/app/api/sessions/route.js +1 -1
  237. package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  238. package/app/.next/server/app/api/settings/combo-defaults/route.js +1 -1
  239. package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
  240. package/app/.next/server/app/api/settings/ip-filter/route.js +1 -1
  241. package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
  242. package/app/.next/server/app/api/settings/proxy/route.js +1 -1
  243. package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
  244. package/app/.next/server/app/api/settings/proxy/test/route.js +1 -1
  245. package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
  246. package/app/.next/server/app/api/settings/require-login/route.js +1 -1
  247. package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  248. package/app/.next/server/app/api/settings/route.js +1 -1
  249. package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  250. package/app/.next/server/app/api/settings/system-prompt/route.js +1 -1
  251. package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
  252. package/app/.next/server/app/api/settings/thinking-budget/route.js +1 -1
  253. package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
  254. package/app/.next/server/app/api/shutdown/route.js +1 -1
  255. package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  256. package/app/.next/server/app/api/storage/health/route.js +1 -1
  257. package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
  258. package/app/.next/server/app/api/sync/cloud/route.js +1 -1
  259. package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
  260. package/app/.next/server/app/api/sync/initialize/route.js +1 -1
  261. package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
  262. package/app/.next/server/app/api/tags/route.js +1 -1
  263. package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
  264. package/app/.next/server/app/api/telemetry/summary/route.js +1 -1
  265. package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  266. package/app/.next/server/app/api/token-health/route.js +1 -1
  267. package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
  268. package/app/.next/server/app/api/translator/detect/route.js +1 -1
  269. package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
  270. package/app/.next/server/app/api/translator/history/route.js +1 -1
  271. package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
  272. package/app/.next/server/app/api/translator/load/route.js +1 -1
  273. package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  274. package/app/.next/server/app/api/translator/save/route.js +1 -1
  275. package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  276. package/app/.next/server/app/api/translator/send/route.js +1 -1
  277. package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  278. package/app/.next/server/app/api/translator/translate/route.js +1 -1
  279. package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  280. package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
  281. package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  282. package/app/.next/server/app/api/usage/analytics/route.js +1 -1
  283. package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
  284. package/app/.next/server/app/api/usage/budget/route.js +2 -2
  285. package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
  286. package/app/.next/server/app/api/usage/call-logs/[id]/route.js +1 -1
  287. package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
  288. package/app/.next/server/app/api/usage/call-logs/route.js +1 -1
  289. package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
  290. package/app/.next/server/app/api/usage/history/route.js +1 -1
  291. package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  292. package/app/.next/server/app/api/usage/logs/route.js +1 -1
  293. package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  294. package/app/.next/server/app/api/usage/proxy-logs/route.js +1 -1
  295. package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
  296. package/app/.next/server/app/api/usage/request-logs/route.js +1 -1
  297. package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  298. package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
  299. package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  300. package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  301. package/app/.next/server/app/api/v1/audio/speech/route.js +1 -1
  302. package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  303. package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  304. package/app/.next/server/app/api/v1/audio/transcriptions/route.js +1 -1
  305. package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  306. package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  307. package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
  308. package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  309. package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  310. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  311. package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  312. package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  313. package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
  314. package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  315. package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  316. package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
  317. package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  318. package/app/.next/server/app/api/v1/messages/route.js +1 -1
  319. package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
  320. package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  321. package/app/.next/server/app/api/v1/models/route.js +2 -2
  322. package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  323. package/app/.next/server/app/api/v1/moderations/route.js +1 -1
  324. package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
  325. package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
  326. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +1 -1
  327. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
  328. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
  329. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +1 -1
  330. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
  331. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
  332. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +1 -1
  333. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
  334. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
  335. package/app/.next/server/app/api/v1/rerank/route.js +1 -1
  336. package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
  337. package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
  338. package/app/.next/server/app/api/v1/responses/route.js +1 -1
  339. package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
  340. package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  341. package/app/.next/server/app/api/v1/route.js +1 -1
  342. package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
  343. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
  344. package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  345. package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  346. package/app/.next/server/app/api/v1beta/models/route.js +2 -2
  347. package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  348. package/app/.next/server/app/callback/page.js +2 -2
  349. package/app/.next/server/app/callback/page.js.nft.json +1 -1
  350. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  351. package/app/.next/server/app/callback.html +1 -1
  352. package/app/.next/server/app/callback.rsc +6 -6
  353. package/app/.next/server/app/callback.segments/_full.segment.rsc +6 -6
  354. package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  355. package/app/.next/server/app/callback.segments/_index.segment.rsc +4 -4
  356. package/app/.next/server/app/callback.segments/_tree.segment.rsc +1 -1
  357. package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
  358. package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  359. package/app/.next/server/app/dashboard/analytics.html +2 -2
  360. package/app/.next/server/app/dashboard/analytics.rsc +8 -8
  361. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
  362. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +2 -2
  363. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  364. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  365. package/app/.next/server/app/dashboard/analytics.segments/_full.segment.rsc +8 -8
  366. package/app/.next/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  367. package/app/.next/server/app/dashboard/analytics.segments/_index.segment.rsc +4 -4
  368. package/app/.next/server/app/dashboard/analytics.segments/_tree.segment.rsc +1 -1
  369. package/app/.next/server/app/dashboard/api-manager.html +1 -1
  370. package/app/.next/server/app/dashboard/api-manager.rsc +7 -7
  371. package/app/.next/server/app/dashboard/api-manager.segments/!KGRhc2hib2FyZCk/dashboard/api-manager/__PAGE__.segment.rsc +2 -2
  372. package/app/.next/server/app/dashboard/api-manager.segments/!KGRhc2hib2FyZCk/dashboard/api-manager.segment.rsc +1 -1
  373. package/app/.next/server/app/dashboard/api-manager.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  374. package/app/.next/server/app/dashboard/api-manager.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  375. package/app/.next/server/app/dashboard/api-manager.segments/_full.segment.rsc +7 -7
  376. package/app/.next/server/app/dashboard/api-manager.segments/_head.segment.rsc +1 -1
  377. package/app/.next/server/app/dashboard/api-manager.segments/_index.segment.rsc +4 -4
  378. package/app/.next/server/app/dashboard/api-manager.segments/_tree.segment.rsc +1 -1
  379. package/app/.next/server/app/dashboard/audit-log.html +1 -1
  380. package/app/.next/server/app/dashboard/audit-log.rsc +7 -7
  381. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk/dashboard/audit-log/__PAGE__.segment.rsc +2 -2
  382. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk/dashboard/audit-log.segment.rsc +1 -1
  383. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  384. package/app/.next/server/app/dashboard/audit-log.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  385. package/app/.next/server/app/dashboard/audit-log.segments/_full.segment.rsc +7 -7
  386. package/app/.next/server/app/dashboard/audit-log.segments/_head.segment.rsc +1 -1
  387. package/app/.next/server/app/dashboard/audit-log.segments/_index.segment.rsc +4 -4
  388. package/app/.next/server/app/dashboard/audit-log.segments/_tree.segment.rsc +1 -1
  389. package/app/.next/server/app/dashboard/cli-tools.html +1 -1
  390. package/app/.next/server/app/dashboard/cli-tools.rsc +8 -8
  391. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  392. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  393. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  394. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  395. package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +8 -8
  396. package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  397. package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  398. package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  399. package/app/.next/server/app/dashboard/combos.html +1 -1
  400. package/app/.next/server/app/dashboard/combos.rsc +7 -7
  401. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  402. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  403. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  404. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  405. package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +7 -7
  406. package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  407. package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  408. package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  409. package/app/.next/server/app/dashboard/costs.html +1 -1
  410. package/app/.next/server/app/dashboard/costs.rsc +7 -7
  411. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs/__PAGE__.segment.rsc +2 -2
  412. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs.segment.rsc +1 -1
  413. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  414. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  415. package/app/.next/server/app/dashboard/costs.segments/_full.segment.rsc +7 -7
  416. package/app/.next/server/app/dashboard/costs.segments/_head.segment.rsc +1 -1
  417. package/app/.next/server/app/dashboard/costs.segments/_index.segment.rsc +4 -4
  418. package/app/.next/server/app/dashboard/costs.segments/_tree.segment.rsc +1 -1
  419. package/app/.next/server/app/dashboard/endpoint.html +1 -1
  420. package/app/.next/server/app/dashboard/endpoint.rsc +8 -8
  421. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  422. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  423. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  424. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  425. package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +8 -8
  426. package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  427. package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  428. package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  429. package/app/.next/server/app/dashboard/health.html +1 -1
  430. package/app/.next/server/app/dashboard/health.rsc +7 -7
  431. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health/__PAGE__.segment.rsc +2 -2
  432. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health.segment.rsc +1 -1
  433. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  434. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  435. package/app/.next/server/app/dashboard/health.segments/_full.segment.rsc +7 -7
  436. package/app/.next/server/app/dashboard/health.segments/_head.segment.rsc +1 -1
  437. package/app/.next/server/app/dashboard/health.segments/_index.segment.rsc +4 -4
  438. package/app/.next/server/app/dashboard/health.segments/_tree.segment.rsc +1 -1
  439. package/app/.next/server/app/dashboard/limits.html +2 -2
  440. package/app/.next/server/app/dashboard/limits.rsc +7 -7
  441. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard/limits/__PAGE__.segment.rsc +2 -2
  442. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard/limits.segment.rsc +1 -1
  443. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  444. package/app/.next/server/app/dashboard/limits.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  445. package/app/.next/server/app/dashboard/limits.segments/_full.segment.rsc +7 -7
  446. package/app/.next/server/app/dashboard/limits.segments/_head.segment.rsc +1 -1
  447. package/app/.next/server/app/dashboard/limits.segments/_index.segment.rsc +4 -4
  448. package/app/.next/server/app/dashboard/limits.segments/_tree.segment.rsc +1 -1
  449. package/app/.next/server/app/dashboard/logs.html +1 -1
  450. package/app/.next/server/app/dashboard/logs.rsc +7 -7
  451. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard/logs/__PAGE__.segment.rsc +2 -2
  452. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard/logs.segment.rsc +1 -1
  453. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  454. package/app/.next/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  455. package/app/.next/server/app/dashboard/logs.segments/_full.segment.rsc +7 -7
  456. package/app/.next/server/app/dashboard/logs.segments/_head.segment.rsc +1 -1
  457. package/app/.next/server/app/dashboard/logs.segments/_index.segment.rsc +4 -4
  458. package/app/.next/server/app/dashboard/logs.segments/_tree.segment.rsc +1 -1
  459. package/app/.next/server/app/dashboard/onboarding.html +1 -1
  460. package/app/.next/server/app/dashboard/onboarding.rsc +7 -7
  461. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding/__PAGE__.segment.rsc +2 -2
  462. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding.segment.rsc +1 -1
  463. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  464. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  465. package/app/.next/server/app/dashboard/onboarding.segments/_full.segment.rsc +7 -7
  466. package/app/.next/server/app/dashboard/onboarding.segments/_head.segment.rsc +1 -1
  467. package/app/.next/server/app/dashboard/onboarding.segments/_index.segment.rsc +4 -4
  468. package/app/.next/server/app/dashboard/onboarding.segments/_tree.segment.rsc +1 -1
  469. package/app/.next/server/app/dashboard/profile.html +1 -1
  470. package/app/.next/server/app/dashboard/profile.rsc +6 -6
  471. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
  472. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  473. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  474. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  475. package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  476. package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  477. package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  478. package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  479. package/app/.next/server/app/dashboard/providers/new.html +2 -2
  480. package/app/.next/server/app/dashboard/providers/new.rsc +9 -9
  481. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  482. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  483. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +3 -3
  484. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  485. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  486. package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +9 -9
  487. package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  488. package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  489. package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  490. package/app/.next/server/app/dashboard/providers.html +2 -2
  491. package/app/.next/server/app/dashboard/providers.rsc +9 -9
  492. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  493. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +3 -3
  494. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  495. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  496. package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +9 -9
  497. package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  498. package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  499. package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  500. package/app/.next/server/app/dashboard/settings/pricing.html +2 -2
  501. package/app/.next/server/app/dashboard/settings/pricing.rsc +9 -9
  502. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
  503. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
  504. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +3 -3
  505. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  506. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  507. package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +9 -9
  508. package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  509. package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  510. package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  511. package/app/.next/server/app/dashboard/settings.html +1 -1
  512. package/app/.next/server/app/dashboard/settings.rsc +9 -9
  513. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +2 -2
  514. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +3 -3
  515. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  516. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  517. package/app/.next/server/app/dashboard/settings.segments/_full.segment.rsc +9 -9
  518. package/app/.next/server/app/dashboard/settings.segments/_head.segment.rsc +1 -1
  519. package/app/.next/server/app/dashboard/settings.segments/_index.segment.rsc +4 -4
  520. package/app/.next/server/app/dashboard/settings.segments/_tree.segment.rsc +1 -1
  521. package/app/.next/server/app/dashboard/translator.html +2 -2
  522. package/app/.next/server/app/dashboard/translator.rsc +7 -7
  523. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  524. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  525. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  526. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  527. package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +7 -7
  528. package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  529. package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  530. package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  531. package/app/.next/server/app/dashboard/usage.html +1 -1
  532. package/app/.next/server/app/dashboard/usage.rsc +7 -7
  533. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  534. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  535. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  536. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  537. package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +7 -7
  538. package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  539. package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  540. package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  541. package/app/.next/server/app/docs/page.js +3 -3
  542. package/app/.next/server/app/docs/page.js.nft.json +1 -1
  543. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  544. package/app/.next/server/app/docs.html +1 -1
  545. package/app/.next/server/app/docs.rsc +6 -6
  546. package/app/.next/server/app/docs.segments/_full.segment.rsc +6 -6
  547. package/app/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  548. package/app/.next/server/app/docs.segments/_index.segment.rsc +4 -4
  549. package/app/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
  550. package/app/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +2 -2
  551. package/app/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  552. package/app/.next/server/app/forbidden/page.js +2 -2
  553. package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
  554. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  555. package/app/.next/server/app/forbidden.html +1 -1
  556. package/app/.next/server/app/forbidden.rsc +6 -6
  557. package/app/.next/server/app/forbidden.segments/_full.segment.rsc +6 -6
  558. package/app/.next/server/app/forbidden.segments/_head.segment.rsc +1 -1
  559. package/app/.next/server/app/forbidden.segments/_index.segment.rsc +4 -4
  560. package/app/.next/server/app/forbidden.segments/_tree.segment.rsc +1 -1
  561. package/app/.next/server/app/forbidden.segments/forbidden/__PAGE__.segment.rsc +2 -2
  562. package/app/.next/server/app/forbidden.segments/forbidden.segment.rsc +1 -1
  563. package/app/.next/server/app/forgot-password/page.js +2 -2
  564. package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
  565. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  566. package/app/.next/server/app/forgot-password.html +1 -1
  567. package/app/.next/server/app/forgot-password.rsc +6 -6
  568. package/app/.next/server/app/forgot-password.segments/_full.segment.rsc +6 -6
  569. package/app/.next/server/app/forgot-password.segments/_head.segment.rsc +1 -1
  570. package/app/.next/server/app/forgot-password.segments/_index.segment.rsc +4 -4
  571. package/app/.next/server/app/forgot-password.segments/_tree.segment.rsc +1 -1
  572. package/app/.next/server/app/forgot-password.segments/forgot-password/__PAGE__.segment.rsc +2 -2
  573. package/app/.next/server/app/forgot-password.segments/forgot-password.segment.rsc +1 -1
  574. package/app/.next/server/app/index.html +1 -1
  575. package/app/.next/server/app/index.rsc +5 -5
  576. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  577. package/app/.next/server/app/index.segments/_full.segment.rsc +5 -5
  578. package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
  579. package/app/.next/server/app/index.segments/_index.segment.rsc +4 -4
  580. package/app/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  581. package/app/.next/server/app/landing/page.js +2 -2
  582. package/app/.next/server/app/landing/page.js.nft.json +1 -1
  583. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  584. package/app/.next/server/app/landing.html +1 -1
  585. package/app/.next/server/app/landing.rsc +6 -6
  586. package/app/.next/server/app/landing.segments/_full.segment.rsc +6 -6
  587. package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  588. package/app/.next/server/app/landing.segments/_index.segment.rsc +4 -4
  589. package/app/.next/server/app/landing.segments/_tree.segment.rsc +1 -1
  590. package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  591. package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  592. package/app/.next/server/app/login/page.js +2 -2
  593. package/app/.next/server/app/login/page.js.nft.json +1 -1
  594. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  595. package/app/.next/server/app/login.html +1 -1
  596. package/app/.next/server/app/login.rsc +6 -6
  597. package/app/.next/server/app/login.segments/_full.segment.rsc +6 -6
  598. package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
  599. package/app/.next/server/app/login.segments/_index.segment.rsc +4 -4
  600. package/app/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  601. package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  602. package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
  603. package/app/.next/server/app/page.js +2 -2
  604. package/app/.next/server/app/page.js.nft.json +1 -1
  605. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  606. package/app/.next/server/app/privacy/page.js +2 -2
  607. package/app/.next/server/app/privacy/page.js.nft.json +1 -1
  608. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  609. package/app/.next/server/app/privacy.html +1 -1
  610. package/app/.next/server/app/privacy.rsc +6 -6
  611. package/app/.next/server/app/privacy.segments/_full.segment.rsc +6 -6
  612. package/app/.next/server/app/privacy.segments/_head.segment.rsc +1 -1
  613. package/app/.next/server/app/privacy.segments/_index.segment.rsc +4 -4
  614. package/app/.next/server/app/privacy.segments/_tree.segment.rsc +1 -1
  615. package/app/.next/server/app/privacy.segments/privacy/__PAGE__.segment.rsc +2 -2
  616. package/app/.next/server/app/privacy.segments/privacy.segment.rsc +1 -1
  617. package/app/.next/server/app/terms/page.js +2 -2
  618. package/app/.next/server/app/terms/page.js.nft.json +1 -1
  619. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  620. package/app/.next/server/app/terms.html +1 -1
  621. package/app/.next/server/app/terms.rsc +6 -6
  622. package/app/.next/server/app/terms.segments/_full.segment.rsc +6 -6
  623. package/app/.next/server/app/terms.segments/_head.segment.rsc +1 -1
  624. package/app/.next/server/app/terms.segments/_index.segment.rsc +4 -4
  625. package/app/.next/server/app/terms.segments/_tree.segment.rsc +1 -1
  626. package/app/.next/server/app/terms.segments/terms/__PAGE__.segment.rsc +2 -2
  627. package/app/.next/server/app/terms.segments/terms.segment.rsc +1 -1
  628. package/app/.next/server/app-paths-manifest.json +39 -39
  629. package/app/.next/server/chunks/2180.js +1 -1
  630. package/app/.next/server/chunks/2767.js +10 -3
  631. package/app/.next/server/chunks/2901.js +2 -2
  632. package/app/.next/server/chunks/2910.js +1 -1
  633. package/app/.next/server/chunks/3447.js +1 -1
  634. package/app/.next/server/chunks/3596.js +1 -1
  635. package/app/.next/server/chunks/3699.js +1 -1
  636. package/app/.next/server/chunks/{1079.js → 3875.js} +3 -1
  637. package/app/.next/server/chunks/4488.js +1 -1
  638. package/app/.next/server/chunks/4555.js +2 -0
  639. package/app/.next/server/chunks/7109.js +8 -1
  640. package/app/.next/server/chunks/7544.js +1 -1
  641. package/app/.next/server/chunks/7669.js +1 -3
  642. package/app/.next/server/chunks/8020.js +3 -3
  643. package/app/.next/server/chunks/9340.js +1 -0
  644. package/app/.next/server/chunks/9342.js +1 -1
  645. package/app/.next/server/chunks/9548.js +1 -0
  646. package/app/.next/server/chunks/9824.js +2 -2
  647. package/app/.next/server/middleware-build-manifest.js +1 -1
  648. package/app/.next/server/middleware.js +3 -3
  649. package/app/.next/server/next-font-manifest.js +1 -1
  650. package/app/.next/server/next-font-manifest.json +1 -1
  651. package/app/.next/server/pages/404.html +1 -1
  652. package/app/.next/server/pages/500.html +2 -2
  653. package/app/.next/server/server-reference-manifest.js +1 -1
  654. package/app/.next/server/server-reference-manifest.json +1 -1
  655. package/app/.next/static/chunks/5846-2c4546bdeb7831c9.js +2 -0
  656. package/app/.next/static/chunks/{993-4cb24412f8681dc9.js → 993-752f870a62aaf876.js} +2 -2
  657. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-ce5214cdf489c9df.js +1 -0
  658. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/{page-f8b57e41a1b6fce6.js → page-6344a09a1154d6dc.js} +1 -1
  659. package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-3cd39fac822a566f.js +1 -0
  660. package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-6ae6b46b8b9ee7cd.js +1 -0
  661. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-8c9acf99ce223053.js +15 -0
  662. package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/{page-f017a1a13b450ed3.js → page-857905019c595756.js} +1 -1
  663. package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/{page-9495b294cfe54d73.js → page-5a82e1f5cca87cee.js} +1 -1
  664. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-d03f1918040e8465.js +1 -0
  665. package/app/.next/static/chunks/app/(dashboard)/dashboard/health/{page-58ea3e55f475ea7b.js → page-0169ca5192c1b893.js} +1 -1
  666. package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-9d2db3ffd0cd5015.js +1 -0
  667. package/app/.next/static/chunks/app/(dashboard)/dashboard/logs/{page-88e667cb7ae99420.js → page-e14488a7109c0f13.js} +1 -1
  668. package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/{page-19072ecdea202e4e.js → page-81203ee77efdd0cd.js} +1 -1
  669. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-01aca3906b8c8ba7.js +1 -0
  670. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-cb598848bd0a7e86.js +1 -0
  671. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{error-2f0177a2197dd556.js → error-f0730d6d62d02e82.js} +1 -1
  672. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{loading-99ab4d478260d53b.js → loading-59cbccd6d5185ca9.js} +1 -1
  673. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-3ab9f92f47a73f63.js +1 -0
  674. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{page-7fec684a49291104.js → page-b2c004336791d971.js} +1 -1
  675. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{error-e844916e39172c8b.js → error-cc85c3ff1f63aea6.js} +1 -1
  676. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{loading-bb068659ee679ff4.js → loading-19fc771a287bcb4c.js} +1 -1
  677. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1520c9997f0825c6.js +1 -0
  678. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/page-c2ad2471d6f91021.js +1 -0
  679. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/{page-775e1506821cac94.js → page-98cd4cff63d3f6ad.js} +1 -1
  680. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/{page-51a813eac9d71eed.js → page-bf5e1638364cc605.js} +1 -1
  681. package/app/.next/static/chunks/app/(dashboard)/{layout-cf710bbfb7c3ba11.js → layout-a51fdf255b9032e6.js} +1 -1
  682. package/app/.next/static/chunks/app/callback/{page-5c58a06902dd94ed.js → page-62842cc24b02df73.js} +1 -1
  683. package/app/.next/static/chunks/app/docs/page-806674e3087684d3.js +1 -0
  684. package/app/.next/static/chunks/app/{error-0d59fc4efafbc38c.js → error-f918d9961a2368d3.js} +1 -1
  685. package/app/.next/static/chunks/app/forbidden/page-ffdc570744f9c562.js +1 -0
  686. package/app/.next/static/chunks/app/forgot-password/page-8f9648bd3eecaa38.js +1 -0
  687. package/app/.next/static/chunks/app/global-error-504ff9093e2a997d.js +1 -0
  688. package/app/.next/static/chunks/app/landing/page-0de497612697b7a5.js +1 -0
  689. package/app/.next/static/chunks/app/layout-b2831c1c9ed30545.js +1 -0
  690. package/app/.next/static/chunks/app/login/{page-ca4dde4376ccd169.js → page-66d190ded7707ae3.js} +1 -1
  691. package/app/.next/static/chunks/app/not-found-11b712c853d93172.js +1 -0
  692. package/app/.next/static/chunks/app/privacy/page-806674e3087684d3.js +1 -0
  693. package/app/.next/static/chunks/app/terms/page-806674e3087684d3.js +1 -0
  694. package/app/.next/static/chunks/{main-app-c9da11a8061df107.js → main-app-ae230f6bf51a5edb.js} +1 -1
  695. package/app/logs/application/app.log +19725 -0
  696. package/app/package.json +1 -1
  697. package/app/server.js +1 -1
  698. package/package.json +1 -1
  699. package/app/.next/server/chunks/2760.js +0 -1
  700. package/app/.next/server/chunks/4168.js +0 -8
  701. package/app/.next/server/chunks/5248.js +0 -1
  702. package/app/.next/server/chunks/9979.js +0 -2
  703. package/app/.next/static/chunks/5846-1bd03fb1b4b4c154.js +0 -2
  704. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-6f1750506292c630.js +0 -1
  705. package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-10e24238da560d00.js +0 -1
  706. package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-c37f849e39b1bf02.js +0 -1
  707. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-918d5f38d5cdbbc2.js +0 -15
  708. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-90f0a2f2cfc02a76.js +0 -1
  709. package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-2a3cd7fd5ca34713.js +0 -1
  710. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-d2651dc387e7fdfd.js +0 -1
  711. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-56e8174ce9caec1b.js +0 -1
  712. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-200bed170f9ee2b0.js +0 -1
  713. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-06d076294b449efb.js +0 -1
  714. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/page-1b3f14c99d3edf09.js +0 -1
  715. package/app/.next/static/chunks/app/docs/page-8f74097544a61b9d.js +0 -1
  716. package/app/.next/static/chunks/app/forbidden/page-86b6392f80a3ff69.js +0 -1
  717. package/app/.next/static/chunks/app/forgot-password/page-373672767bb0aae4.js +0 -1
  718. package/app/.next/static/chunks/app/global-error-41eef2a698918fc1.js +0 -1
  719. package/app/.next/static/chunks/app/landing/page-09741814aaca7548.js +0 -1
  720. package/app/.next/static/chunks/app/layout-3375493e8f9133db.js +0 -1
  721. package/app/.next/static/chunks/app/not-found-1dbd8c3e506fe00f.js +0 -1
  722. package/app/.next/static/chunks/app/privacy/page-8f74097544a61b9d.js +0 -1
  723. package/app/.next/static/chunks/app/terms/page-8f74097544a61b9d.js +0 -1
  724. /package/app/.next/static/{vSmFE3KrF-V4aQjNDtjwN → NQRiYUSKWLNu62D-HnLpL}/_buildManifest.js +0 -0
  725. /package/app/.next/static/{vSmFE3KrF-V4aQjNDtjwN → NQRiYUSKWLNu62D-HnLpL}/_ssgManifest.js +0 -0
@@ -1,5 +1,5 @@
1
- (()=>{var a={};a.id=3528,a.ids=[3528],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4202:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g,metadata:()=>f});var d=c(5735),e=c(65885);let f={title:"Translator Playground | OmniRoute",description:"Debug, test, and visualize API format translations between providers"};function g(){return(0,d.jsx)(e.default,{})}},10117:(a,b)=>{"use strict";function c(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"encodeURIPath",{enumerable:!0,get:function(){return c}})},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},34285:(a,b,c)=>{Promise.resolve().then(c.bind(c,94523))},39973:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return e}});let d=c(40399)._(c(80061));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},48161:a=>{"use strict";a.exports=require("node:os")},55511:a=>{"use strict";a.exports=require("crypto")},62883:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=c(48249),e=c(74429),f=c(29294),g=c(10117),h=c(44217);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let i=(0,h.getDeploymentIdQueryOrEmptyString)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${i}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},65885:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/app/(dashboard)/dashboard/translator/TranslatorPageClient.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/app/(dashboard)/dashboard/translator/TranslatorPageClient.tsx","default")},66958:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=c(49306);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},72408:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>C.default,__next_app__:()=>K,handler:()=>M,routeModule:()=>L});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(63747),o=c(24235),p=c(23938),q=c(261),r=c(66758),s=c(77243),t=c(26713),u=c(37527),v=c(22820),w=c(88216),x=c(47929),y=c(79551),z=c(89125),A=c(86439),B=c(77068),C=c(81227),D=c(61287),E=c(81494),F=c(70722),G=c(70753),H=c(43954),I={};for(let a in D)0>["default","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(I[a]=()=>D[a]);c.d(b,I);let J={children:["",{children:["(dashboard)",{children:["dashboard",{children:["translator",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,4202)),"/home/runner/work/OmniRoute/OmniRoute/src/app/(dashboard)/dashboard/translator/page.tsx"]}]},{}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,6676)),"/home/runner/work/OmniRoute/OmniRoute/src/app/(dashboard)/layout.tsx"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"]}]},{layout:[()=>Promise.resolve().then(c.bind(c,76537)),"/home/runner/work/OmniRoute/OmniRoute/src/app/layout.tsx"],error:[()=>Promise.resolve().then(c.bind(c,64385)),"/home/runner/work/OmniRoute/OmniRoute/src/app/error.tsx"],"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/runner/work/OmniRoute/OmniRoute/src/app/global-error.tsx"],"not-found":[()=>Promise.resolve().then(c.bind(c,8979)),"/home/runner/work/OmniRoute/OmniRoute/src/app/not-found.tsx"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/(dashboard)/dashboard/translator/page",pathname:"/dashboard/translator",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:J},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var I;L.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let N=!!(0,h.getRequestMeta)(a,"minimalMode"),O="/(dashboard)/dashboard/translator/page";"/index"===O&&(O="/");let P=await L.prepare(a,b,{srcPage:O,multiZoneDraftMode:!1});if(!P)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Q,query:R,params:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,parsedUrl:ae,interceptionRoutePatterns:af,deploymentId:ag}=P,ah=(0,q.normalizeAppPath)(O),{isOnDemandRevalidate:ai}=P,aj=ad.experimental.ppr&&!ad.cacheComponents&&(0,H.isInterceptionRouteAppPath)(aa)?null:L.match(aa,$),ak=!!$.routes[aa],al=a.headers["user-agent"]||"",am=(0,t.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],aq=(0,r.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr);if(!(0,h.getRequestMeta)(a,"postponed")&&ar&&"1"===a.headers[x.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,h.addRequestMeta)(a,"postponed",c)}let as=ar&&(null==(I=$.routes[ah]??$.dynamicRoutes[ah])?void 0:I.renderingMode)==="PARTIALLY_STATIC",at=!1,au=!1,av=as?(0,h.getRequestMeta)(a,"postponed"):void 0,aw=as&&ap&&!ao;N&&(aw=aw&&!!av);let ax=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ay=(!an||!as)&&(!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots)),az=!!((aj||ak||$.routes[ah])&&!(an&&as)),aA=as&&!0===ad.cacheComponents,aB=!0===L.isDev||!az||"string"==typeof av||(aA&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aw&&!N:aw),aC=an&&as,aD=null;_||!az||aB||aq||av||aw||(aD=aa);let aE=aD;!aE&&L.isDev&&(aE=aa),L.isDev||_||!az||!ap||aw||(0,k.d)(a.headers);let aF={...D,tree:J,GlobalError:C.default,handler:M,routeModule:L,__next_app__:K};X&&Y&&(0,o.setManifestsSingleton)({page:O,clientReferenceManifest:Y,serverActionsManifest:X});let aG=a.method||"GET",aH=(0,g.getTracer)(),aI=aH.getActiveScopeSpan(),aJ=async()=>((null==ac?void 0:ac.render404)?await ac.render404(a,b,ae,!1):b.end("This page could not be found"),null);try{let f=L.getVaryHeader(aa,af);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aH.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aG} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aG} ${O}`)})},m=(0,h.getRequestMeta)(a,"incrementalCache"),o=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let l={query:R,params:S,page:ah,sharedContext:{buildId:Q},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aF,Component:(0,j.T)(aF),params:S,routeModule:L,page:O,postponed:f,shouldWaitOnAllReady:aC,serveStreamingMetadata:ay,supportsDynamicResponse:"string"==typeof f||aB,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,setCacheStatus:null==ac?void 0:ac.setCacheStatus,setIsrStatus:null==ac?void 0:ac.setIsrStatus,setReactDebugChannel:null==ac?void 0:ac.setReactDebugChannel,sendErrorsToBrowser:null==ac?void 0:ac.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),L.relativeProjectDir),isDraftMode:_,botType:am,isOnDemandRevalidate:ai,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,images:ad.images,previewProps:$.preview,deploymentId:ag,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:m,cacheLifeProfiles:ad.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...at||au?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:at}:{},cacheComponents:!!ad.cacheComponents,experimental:{isRoutePPREnabled:as,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ad.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,B.parseMaxPostponedStateSize)(ad.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>L.onRequestError(a,b,d,e,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}};at&&(l.renderOpts.nextExport=!0,l.renderOpts.supportsDynamicResponse=!1,l.renderOpts.isDebugDynamicAccesses=at),i&&(l.renderOpts.supportsDynamicResponse=!1);let n=await k(e,l),{metadata:o}=n,{cacheControl:p,headers:q={},fetchTags:r,fetchMetrics:s}=o;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,az&&(null==p?void 0:p.revalidate)===0&&!L.isDev&&!as){let a=o.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:n,headers:q,rscData:o.flightData,postponed:o.postponed,status:o.statusCode,segmentData:o.segmentData},cacheControl:p}},p=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i,forceStaticRender:j=!1})=>{let k,l=!1===L.isDev,q=c||b.writableEnded;if(ai&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(aj&&(k=(0,v.parseFallbackField)(aj.fallback)),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(al)&&(!as||an)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ai=!0),ai&&(k!==v.FallbackMode.NOT_FOUND||f)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!N&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aE&&!q&&!_&&T&&(l||!ak)){if((l||aj)&&k===v.FallbackMode.NOT_FOUND){if(ad.experimental.adapterPath)return await aJ();throw new A.NoFallbackError}if(as&&(ad.cacheComponents?!aw:!ap)){let b=l&&"string"==typeof(null==aj?void 0:aj.fallback)?aj.fallback:ah,c=l&&(null==aj?void 0:aj.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(aj.fallbackRouteParams):au?(0,n.getFallbackRouteParams)(ah,L):null,f=await L.handleResponse({cacheKey:b,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:as,responseGenerator:async()=>o({span:i,postponed:void 0,fallbackRouteParams:c,forceStaticRender:!1}),waitUntil:d.waitUntil,isMinimalMode:N});if(null===f)return null;if(f)return delete f.cacheControl,f}}let r=ai||g||!av?void 0:av;if(aA&&!N&&m&&aw&&!j){let b=await m.get(aa,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(r=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,G.scheduleOnNextTick)(async()=>{let b=L.getResponseCache(a);try{await b.revalidate(aa,m,as,!1,a=>p({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if(at&&void 0!==r)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let s=l&&(null==aj?void 0:aj.fallbackRouteParams)&&(0,h.getRequestMeta)(a,"renderFallbackShell")?(0,n.createOpaqueFallbackRouteParams)(aj.fallbackRouteParams):au?(0,n.getFallbackRouteParams)(ah,L):null;return o({span:i,postponed:r,fallbackRouteParams:s,forceStaticRender:j})},q=async c=>{var f,g,i,j,k;let l,m=await L.handleResponse({cacheKey:aD,responseGenerator:a=>p({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ai,isRoutePPREnabled:as,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil,isMinimalMode:N});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!m){if(aD)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=m.value)?void 0:f.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let n="string"==typeof m.value.postponed;az&&!aw&&(!n||ao)&&(N||b.setHeader("x-nextjs-cache",ai?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=m;if(av)l={revalidate:0,expire:void 0};else if(aw)l={revalidate:0,expire:void 0};else if(!L.isDev)if(_)l={revalidate:0,expire:void 0};else if(az){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:m.cacheControl.revalidate,expire:(null==(j=m.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:x.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(m.cacheControl=l,"string"==typeof ax&&(null==q?void 0:q.kind)===u.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[x.NEXT_CACHE_TAGS_HEADER];N&&az&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ax);return void 0!==d?(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.fromStatic(d,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(b.statusCode=204,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl}))}let r=aA?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r(m,{url:(0,h.getRequestMeta)(a,"initURL")??a.url}))return null;if(q.headers){let a={...q.headers};for(let[c,d]of(N&&az||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=q.headers)?void 0:g[x.NEXT_CACHE_TAGS_HEADER];if(N&&az&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!q.status||ap&&as||(b.statusCode=q.status),!N&&q.status&&E.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),n&&!aw&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.html.contentType!==s.RSC_CONTENT_TYPE_HEADER)if(ad.cacheComponents)return b.statusCode=404,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl});else throw Object.defineProperty(new F.InvariantError(`Expected RSC response, got ${q.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:m.cacheControl})}return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.fromStatic(q.rscData,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let v=q.html;if(!n||N||ap)return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:v,cacheControl:m.cacheControl});if(at)return v.push(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let A=new TransformStream;return v.push(A.readable),o({span:c,postponed:q.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(A.writable)}).catch(a=>{A.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aI)return await aH.withPropagatedContext(a.headers,()=>aH.trace(i.BaseServerSpan.handleRequest,{spanName:`${aG} ${O}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aG,"http.target":a.url}},q));await q(aI)}catch(b){throw b instanceof A.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:O,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:az,isOnDemandRevalidate:ai})},!1,ac),b}}},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},77598:a=>{"use strict";a.exports=require("node:crypto")},79646:a=>{"use strict";a.exports=require("child_process")},80061:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return j}});let d=c(48249),e=c(67484),f=c(66958),g=c(62883);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87021:(a,b,c)=>{Promise.resolve().then(c.bind(c,65885))},87550:a=>{"use strict";a.exports=require("better-sqlite3")},94523:(a,b,c)=>{"use strict";c.d(b,{default:()=>y});var d=c(48249),e=c(67484),f=c(29824);let g=[{id:"simple-chat",name:"Simple Chat",icon:"chat",description:"Basic text message",formats:{openai:{model:"gpt-4o",messages:[{role:"system",content:"You are a helpful assistant."},{role:"user",content:"Hello! How are you today?"}],stream:!0},claude:{model:"claude-sonnet-4-20250514",system:"You are a helpful assistant.",max_tokens:1024,messages:[{role:"user",content:"Hello! How are you today?"}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"Hello! How are you today?"}]}],systemInstruction:{parts:[{text:"You are a helpful assistant."}]}},"openai-responses":{model:"gpt-4o",input:"Hello! How are you today?",instructions:"You are a helpful assistant."}}},{id:"tool-calling",name:"Tool Calling",icon:"build",description:"Function/tool invocation",formats:{openai:{model:"gpt-4o",messages:[{role:"user",content:"What's the weather in S\xe3o Paulo?"}],tools:[{type:"function",function:{name:"get_weather",description:"Get current weather for a location",parameters:{type:"object",properties:{location:{type:"string",description:"City name"},unit:{type:"string",enum:["celsius","fahrenheit"]}},required:["location"]}}}],stream:!0},claude:{model:"claude-sonnet-4-20250514",max_tokens:1024,messages:[{role:"user",content:"What's the weather in S\xe3o Paulo?"}],tools:[{name:"get_weather",description:"Get current weather for a location",input_schema:{type:"object",properties:{location:{type:"string",description:"City name"},unit:{type:"string",enum:["celsius","fahrenheit"]}},required:["location"]}}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"What's the weather in S\xe3o Paulo?"}]}],tools:[{functionDeclarations:[{name:"get_weather",description:"Get current weather for a location",parameters:{type:"object",properties:{location:{type:"string",description:"City name"},unit:{type:"string",enum:["celsius","fahrenheit"]}},required:["location"]}}]}]}}},{id:"multi-turn",name:"Multi-turn",icon:"forum",description:"Conversation with history",formats:{openai:{model:"gpt-4o",messages:[{role:"system",content:"You are a coding assistant."},{role:"user",content:"Write a function to sort an array in Python."},{role:"assistant",content:"Here's a simple sort function:\n\n```python\ndef sort_array(arr):\n return sorted(arr)\n```"},{role:"user",content:"Now make it sort in descending order."}],stream:!0},claude:{model:"claude-sonnet-4-20250514",system:"You are a coding assistant.",max_tokens:1024,messages:[{role:"user",content:"Write a function to sort an array in Python."},{role:"assistant",content:"Here's a simple sort function:\n\n```python\ndef sort_array(arr):\n return sorted(arr)\n```"},{role:"user",content:"Now make it sort in descending order."}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"Write a function to sort an array in Python."}]},{role:"model",parts:[{text:"Here's a simple sort function:\n\n```python\ndef sort_array(arr):\n return sorted(arr)\n```"}]},{role:"user",parts:[{text:"Now make it sort in descending order."}]}],systemInstruction:{parts:[{text:"You are a coding assistant."}]}}}},{id:"thinking",name:"Thinking",icon:"psychology",description:"Extended thinking / reasoning",formats:{openai:{model:"o3-mini",messages:[{role:"user",content:"What is the sum of the first 100 prime numbers?"}],stream:!0},claude:{model:"claude-sonnet-4-20250514",max_tokens:16e3,thinking:{type:"enabled",budget_tokens:1e4},messages:[{role:"user",content:"What is the sum of the first 100 prime numbers?"}],stream:!0},gemini:{model:"gemini-2.5-flash-thinking",contents:[{role:"user",parts:[{text:"What is the sum of the first 100 prime numbers?"}]}],generationConfig:{thinkingConfig:{thinkingBudget:1e4}}}}},{id:"system-prompt",name:"System Prompt",icon:"settings",description:"Complex system instructions",formats:{openai:{model:"gpt-4o",messages:[{role:"system",content:"You are a senior software engineer specializing in distributed systems. Answer questions concisely using industry best practices. Always provide code examples when relevant. Format your responses using markdown."},{role:"user",content:"How do I implement a circuit breaker pattern?"}],temperature:.7,stream:!0},claude:{model:"claude-sonnet-4-20250514",system:"You are a senior software engineer specializing in distributed systems. Answer questions concisely using industry best practices. Always provide code examples when relevant. Format your responses using markdown.",max_tokens:2048,messages:[{role:"user",content:"How do I implement a circuit breaker pattern?"}],temperature:.7,stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"How do I implement a circuit breaker pattern?"}]}],systemInstruction:{parts:[{text:"You are a senior software engineer specializing in distributed systems. Answer questions concisely using industry best practices. Always provide code examples when relevant. Format your responses using markdown."}]},generationConfig:{temperature:.7}}}},{id:"streaming",name:"Streaming",icon:"stream",description:"SSE streaming request",formats:{openai:{model:"gpt-4o",messages:[{role:"user",content:"Tell me a short story about a robot learning to paint."}],stream:!0,stream_options:{include_usage:!0}},claude:{model:"claude-sonnet-4-20250514",max_tokens:1024,messages:[{role:"user",content:"Tell me a short story about a robot learning to paint."}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"Tell me a short story about a robot learning to paint."}]}]}}}],h={openai:{label:"OpenAI",color:"emerald",icon:"smart_toy"},"openai-responses":{label:"OpenAI Responses",color:"amber",icon:"swap_horiz"},claude:{label:"Claude",color:"orange",icon:"psychology"},gemini:{label:"Gemini",color:"blue",icon:"auto_awesome"},antigravity:{label:"Antigravity",color:"purple",icon:"rocket_launch"},kiro:{label:"Kiro",color:"cyan",icon:"terminal"},cursor:{label:"Cursor",color:"pink",icon:"edit"},codex:{label:"Codex",color:"yellow",icon:"code"}},i=Object.entries(h).map(([a,b])=>({value:a,label:b.label}));var j=c(39973),k=c.n(j);let l=k()(async()=>{},{loadableGenerated:{modules:["app/(dashboard)/dashboard/translator/components/PlaygroundMode.tsx -> @monaco-editor/react"]},ssr:!1});function m(){let[a,b]=(0,e.useState)("claude"),[c,j]=(0,e.useState)("openai"),[k,m]=(0,e.useState)(""),[n,o]=(0,e.useState)(""),[p,q]=(0,e.useState)(null),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(!1),[v,w]=(0,e.useState)(null);(0,e.useCallback)(async a=>{if(!a||a.trim().length<5)return void q(null);try{let c=JSON.parse(a);u(!0);let d=await fetch("/api/translator/detect",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({body:c})}),e=await d.json();e.success&&(q(e.format),b(e.format))}catch{}finally{u(!1)}},[]);let x=async()=>{if(k.trim()){s(!0),o("");try{let b=JSON.parse(k),d=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:a,targetFormat:c,body:b})}),e=await d.json();e.success?o(JSON.stringify(e.result,null,2)):o(JSON.stringify({error:e.error},null,2))}catch(a){o(JSON.stringify({error:a.message},null,2))}s(!1)}},y=async a=>{try{await navigator.clipboard.writeText(a)}catch{}},z=h[a]||h.openai,A=h[c]||h.openai;return(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Format Converter"}),(0,d.jsx)("p",{children:"Paste or type a JSON request body. The translator will auto-detect the source format and convert it to the target format. Use this to debug how OmniRoute translates requests between formats (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)."})]})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex flex-col sm:flex-row items-center gap-4",children:[(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Source Format"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[20px] text-${z.color}-500`,children:z.icon}),(0,d.jsx)(f.l6,{value:a,onChange:a=>{b(a.target.value),q(null)},options:i,className:"flex-1"}),p&&(0,d.jsx)(f.Ex,{variant:"primary",size:"sm",icon:"auto_awesome",children:"Auto"})]})]}),(0,d.jsx)("button",{onClick:()=>{b(c),j(a),m(n),o(""),q(null)},className:"p-2 rounded-full hover:bg-primary/10 text-text-muted hover:text-primary transition-all mt-4 sm:mt-5",title:"Swap formats",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[24px]",children:"swap_horiz"})}),(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Target Format"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[20px] text-${A.color}-500`,children:A.icon}),(0,d.jsx)(f.l6,{value:c,onChange:a=>j(a.target.value),options:i,className:"flex-1"})]})]}),(0,d.jsx)("div",{className:"pt-0 sm:pt-5",children:(0,d.jsx)(f.$n,{icon:"arrow_forward",onClick:x,loading:r,disabled:!k.trim()||r,className:"whitespace-nowrap",children:"Translate"})})]})}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-text-muted",children:"input"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Input"}),p&&(0,d.jsx)(f.Ex,{variant:"info",size:"sm",dot:!0,children:h[p]?.label||p}),t&&(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px] text-text-muted animate-spin",children:"progress_activity"})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsx)("button",{onClick:()=>y(k),className:"p-1.5 rounded hover:bg-black/5 dark:hover:bg-white/5 text-text-muted hover:text-text-main transition-colors",title:"Copy",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"content_copy"})}),(0,d.jsx)("button",{onClick:()=>{m(""),o(""),q(null),w(null)},className:"p-1.5 rounded hover:bg-black/5 dark:hover:bg-white/5 text-text-muted hover:text-text-main transition-colors",title:"Clear",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"delete"})})]})]}),(0,d.jsx)("div",{className:"border border-border rounded-lg overflow-hidden",children:(0,d.jsx)(l,{height:"400px",defaultLanguage:"json",value:k,onChange:a=>m(a||""),theme:"vs-dark",options:{minimap:{enabled:!1},fontSize:12,lineNumbers:"on",scrollBeyondLastLine:!1,wordWrap:"on",automaticLayout:!0,formatOnPaste:!0,placeholder:"Paste a request body here or select a template below..."}})})]})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-text-muted",children:"output"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Output"}),n&&(0,d.jsx)(f.Ex,{variant:"success",size:"sm",dot:!0,children:h[c]?.label||c})]}),(0,d.jsx)("div",{className:"flex items-center gap-1",children:(0,d.jsx)("button",{onClick:()=>y(n),className:"p-1.5 rounded hover:bg-black/5 dark:hover:bg-white/5 text-text-muted hover:text-text-main transition-colors",title:"Copy",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"content_copy"})})})]}),(0,d.jsx)("div",{className:"border border-border rounded-lg overflow-hidden",children:(0,d.jsx)(l,{height:"400px",defaultLanguage:"json",value:n,theme:"vs-dark",options:{minimap:{enabled:!1},fontSize:12,lineNumbers:"on",scrollBeyondLastLine:!1,wordWrap:"on",automaticLayout:!0,readOnly:!0}})})]})})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-primary",children:"library_books"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Example Templates"}),(0,d.jsx)("span",{className:"text-xs text-text-muted",children:"— Click to load"})]}),(0,d.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-6 gap-2",children:g.map(b=>(0,d.jsxs)("button",{onClick:()=>{m(JSON.stringify(b.formats[a]||b.formats.openai,null,2)),w(b.id),o("")},className:`
1
+ (()=>{var a={};a.id=3528,a.ids=[3528],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4202:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g,metadata:()=>f});var d=c(5735),e=c(65885);let f={title:"Translator Playground | OmniRoute",description:"Debug, test, and visualize API format translations between providers"};function g(){return(0,d.jsx)(e.default,{})}},10117:(a,b)=>{"use strict";function c(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"encodeURIPath",{enumerable:!0,get:function(){return c}})},10577:(a,b,c)=>{Promise.resolve().then(c.bind(c,65885))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26257:(a,b,c)=>{Promise.resolve().then(c.bind(c,94523))},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},39973:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return e}});let d=c(40399)._(c(80061));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},48161:a=>{"use strict";a.exports=require("node:os")},55511:a=>{"use strict";a.exports=require("crypto")},62883:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=c(48249),e=c(74429),f=c(29294),g=c(10117),h=c(44217);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let i=(0,h.getDeploymentIdQueryOrEmptyString)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${i}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},65885:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/diegosouzapw/dev/proxys/9router/src/app/(dashboard)/dashboard/translator/TranslatorPageClient.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/diegosouzapw/dev/proxys/9router/src/app/(dashboard)/dashboard/translator/TranslatorPageClient.tsx","default")},66958:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=c(49306);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},71616:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>C.default,__next_app__:()=>K,handler:()=>M,routeModule:()=>L});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(63747),o=c(24235),p=c(23938),q=c(261),r=c(66758),s=c(77243),t=c(26713),u=c(37527),v=c(22820),w=c(88216),x=c(47929),y=c(79551),z=c(89125),A=c(86439),B=c(77068),C=c(81227),D=c(61287),E=c(81494),F=c(70722),G=c(70753),H=c(43954),I={};for(let a in D)0>["default","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(I[a]=()=>D[a]);c.d(b,I);let J={children:["",{children:["(dashboard)",{children:["dashboard",{children:["translator",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,4202)),"/home/diegosouzapw/dev/proxys/9router/src/app/(dashboard)/dashboard/translator/page.tsx"]}]},{}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,6676)),"/home/diegosouzapw/dev/proxys/9router/src/app/(dashboard)/layout.tsx"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"]}]},{layout:[()=>Promise.resolve().then(c.bind(c,76537)),"/home/diegosouzapw/dev/proxys/9router/src/app/layout.tsx"],error:[()=>Promise.resolve().then(c.bind(c,64385)),"/home/diegosouzapw/dev/proxys/9router/src/app/error.tsx"],"global-error":[()=>Promise.resolve().then(c.bind(c,81227)),"/home/diegosouzapw/dev/proxys/9router/src/app/global-error.tsx"],"not-found":[()=>Promise.resolve().then(c.bind(c,8979)),"/home/diegosouzapw/dev/proxys/9router/src/app/not-found.tsx"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,K={require:c,loadChunk:()=>Promise.resolve()},L=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/(dashboard)/dashboard/translator/page",pathname:"/dashboard/translator",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:J},distDir:".next",relativeProjectDir:""});async function M(a,b,d){var I;L.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let N=!!(0,h.getRequestMeta)(a,"minimalMode"),O="/(dashboard)/dashboard/translator/page";"/index"===O&&(O="/");let P=await L.prepare(a,b,{srcPage:O,multiZoneDraftMode:!1});if(!P)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Q,query:R,params:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,parsedUrl:ae,interceptionRoutePatterns:af,deploymentId:ag}=P,ah=(0,q.normalizeAppPath)(O),{isOnDemandRevalidate:ai}=P,aj=ad.experimental.ppr&&!ad.cacheComponents&&(0,H.isInterceptionRouteAppPath)(aa)?null:L.match(aa,$),ak=!!$.routes[aa],al=a.headers["user-agent"]||"",am=(0,t.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[s.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[s.RSC_HEADER],aq=(0,r.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr);if(!(0,h.getRequestMeta)(a,"postponed")&&ar&&"1"===a.headers[x.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,h.addRequestMeta)(a,"postponed",c)}let as=ar&&(null==(I=$.routes[ah]??$.dynamicRoutes[ah])?void 0:I.renderingMode)==="PARTIALLY_STATIC",at=!1,au=!1,av=as?(0,h.getRequestMeta)(a,"postponed"):void 0,aw=as&&ap&&!ao;N&&(aw=aw&&!!av);let ax=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ay=(!an||!as)&&(!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots)),az=!!((aj||ak||$.routes[ah])&&!(an&&as)),aA=as&&!0===ad.cacheComponents,aB=!0===L.isDev||!az||"string"==typeof av||(aA&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aw&&!N:aw),aC=an&&as,aD=null;_||!az||aB||aq||av||aw||(aD=aa);let aE=aD;!aE&&L.isDev&&(aE=aa),L.isDev||_||!az||!ap||aw||(0,k.d)(a.headers);let aF={...D,tree:J,GlobalError:C.default,handler:M,routeModule:L,__next_app__:K};X&&Y&&(0,o.setManifestsSingleton)({page:O,clientReferenceManifest:Y,serverActionsManifest:X});let aG=a.method||"GET",aH=(0,g.getTracer)(),aI=aH.getActiveScopeSpan(),aJ=async()=>((null==ac?void 0:ac.render404)?await ac.render404(a,b,ae,!1):b.end("This page could not be found"),null);try{let f=L.getVaryHeader(aa,af);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return L.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aH.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aG} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aG} ${O}`)})},m=(0,h.getRequestMeta)(a,"incrementalCache"),o=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let l={query:R,params:S,page:ah,sharedContext:{buildId:Q},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aF,Component:(0,j.T)(aF),params:S,routeModule:L,page:O,postponed:f,shouldWaitOnAllReady:aC,serveStreamingMetadata:ay,supportsDynamicResponse:"string"==typeof f||aB,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,setCacheStatus:null==ac?void 0:ac.setCacheStatus,setIsrStatus:null==ac?void 0:ac.setIsrStatus,setReactDebugChannel:null==ac?void 0:ac.setReactDebugChannel,sendErrorsToBrowser:null==ac?void 0:ac.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),L.relativeProjectDir),isDraftMode:_,botType:am,isOnDemandRevalidate:ai,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,images:ad.images,previewProps:$.preview,deploymentId:ag,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:m,cacheLifeProfiles:ad.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...at||au?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:at}:{},cacheComponents:!!ad.cacheComponents,experimental:{isRoutePPREnabled:as,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ad.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,B.parseMaxPostponedStateSize)(ad.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>L.onRequestError(a,b,d,e,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:L.isDev}};at&&(l.renderOpts.nextExport=!0,l.renderOpts.supportsDynamicResponse=!1,l.renderOpts.isDebugDynamicAccesses=at),i&&(l.renderOpts.supportsDynamicResponse=!1);let n=await k(e,l),{metadata:o}=n,{cacheControl:p,headers:q={},fetchTags:r,fetchMetrics:s}=o;if(r&&(q[x.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,az&&(null==p?void 0:p.revalidate)===0&&!L.isDev&&!as){let a=o.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:u.CachedRouteKind.APP_PAGE,html:n,headers:q,rscData:o.flightData,postponed:o.postponed,status:o.statusCode,segmentData:o.segmentData},cacheControl:p}},p=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i,forceStaticRender:j=!1})=>{let k,l=!1===L.isDev,q=c||b.writableEnded;if(ai&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(aj&&(k=(0,v.parseFallbackField)(aj.fallback)),k===v.FallbackMode.PRERENDER&&(0,t.isBot)(al)&&(!as||an)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ai=!0),ai&&(k!==v.FallbackMode.NOT_FOUND||f)&&(k=v.FallbackMode.BLOCKING_STATIC_RENDER),!N&&k!==v.FallbackMode.BLOCKING_STATIC_RENDER&&aE&&!q&&!_&&T&&(l||!ak)){if((l||aj)&&k===v.FallbackMode.NOT_FOUND){if(ad.experimental.adapterPath)return await aJ();throw new A.NoFallbackError}if(as&&(ad.cacheComponents?!aw:!ap)){let b=l&&"string"==typeof(null==aj?void 0:aj.fallback)?aj.fallback:ah,c=l&&(null==aj?void 0:aj.fallbackRouteParams)?(0,n.createOpaqueFallbackRouteParams)(aj.fallbackRouteParams):au?(0,n.getFallbackRouteParams)(ah,L):null,f=await L.handleResponse({cacheKey:b,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:as,responseGenerator:async()=>o({span:i,postponed:void 0,fallbackRouteParams:c,forceStaticRender:!1}),waitUntil:d.waitUntil,isMinimalMode:N});if(null===f)return null;if(f)return delete f.cacheControl,f}}let r=ai||g||!av?void 0:av;if(aA&&!N&&m&&aw&&!j){let b=await m.get(aa,{kind:u.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===u.CachedRouteKind.APP_PAGE&&(r=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,G.scheduleOnNextTick)(async()=>{let b=L.getResponseCache(a);try{await b.revalidate(aa,m,as,!1,a=>p({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if(at&&void 0!==r)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:u.CachedRouteKind.PAGES,html:w.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let s=l&&(null==aj?void 0:aj.fallbackRouteParams)&&(0,h.getRequestMeta)(a,"renderFallbackShell")?(0,n.createOpaqueFallbackRouteParams)(aj.fallbackRouteParams):au?(0,n.getFallbackRouteParams)(ah,L):null;return o({span:i,postponed:r,fallbackRouteParams:s,forceStaticRender:j})},q=async c=>{var f,g,i,j,k;let l,m=await L.handleResponse({cacheKey:aD,responseGenerator:a=>p({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ai,isRoutePPREnabled:as,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil,isMinimalMode:N});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),L.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!m){if(aD)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=m.value)?void 0:f.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=m.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let n="string"==typeof m.value.postponed;az&&!aw&&(!n||ao)&&(N||b.setHeader("x-nextjs-cache",ai?"REVALIDATED":m.isMiss?"MISS":m.isStale?"STALE":"HIT"),b.setHeader(s.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=m;if(av)l={revalidate:0,expire:void 0};else if(aw)l={revalidate:0,expire:void 0};else if(!L.isDev)if(_)l={revalidate:0,expire:void 0};else if(az){if(m.cacheControl)if("number"==typeof m.cacheControl.revalidate){if(m.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${m.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:m.cacheControl.revalidate,expire:(null==(j=m.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:x.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(m.cacheControl=l,"string"==typeof ax&&(null==q?void 0:q.kind)===u.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[x.NEXT_CACHE_TAGS_HEADER];N&&az&&c&&"string"==typeof c&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ax);return void 0!==d?(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.fromStatic(d,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl}):(b.statusCode=204,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl}))}let r=aA?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r(m,{url:(0,h.getRequestMeta)(a,"initURL")??a.url}))return null;if(q.headers){let a={...q.headers};for(let[c,d]of(N&&az||delete a[x.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let t=null==(g=q.headers)?void 0:g[x.NEXT_CACHE_TAGS_HEADER];if(N&&az&&t&&"string"==typeof t&&b.setHeader(x.NEXT_CACHE_TAGS_HEADER,t),!q.status||ap&&as||(b.statusCode=q.status),!N&&q.status&&E.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),n&&!aw&&b.setHeader(s.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.html.contentType!==s.RSC_CONTENT_TYPE_HEADER)if(ad.cacheComponents)return b.statusCode=404,(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.EMPTY,cacheControl:m.cacheControl});else throw Object.defineProperty(new F.InvariantError(`Expected RSC response, got ${q.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:m.cacheControl})}return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:w.default.fromStatic(q.rscData,s.RSC_CONTENT_TYPE_HEADER),cacheControl:m.cacheControl})}let v=q.html;if(!n||N||ap)return(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:v,cacheControl:m.cacheControl});if(at)return v.push(new ReadableStream({start(a){a.enqueue(y.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}});let A=new TransformStream;return v.push(A.readable),o({span:c,postponed:q.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==u.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(A.writable)}).catch(a=>{A.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,z.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:v,cacheControl:{revalidate:0,expire:void 0}})};if(!aI)return await aH.withPropagatedContext(a.headers,()=>aH.trace(i.BaseServerSpan.handleRequest,{spanName:`${aG} ${O}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aG,"http.target":a.url}},q));await q(aI)}catch(b){throw b instanceof A.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:O,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:az,isOnDemandRevalidate:ai})},!1,ac),b}}},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},77598:a=>{"use strict";a.exports=require("node:crypto")},79646:a=>{"use strict";a.exports=require("child_process")},80061:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return j}});let d=c(48249),e=c(67484),f=c(66958),g=c(62883);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},94523:(a,b,c)=>{"use strict";c.d(b,{default:()=>y});var d=c(48249),e=c(67484),f=c(29824);let g=[{id:"simple-chat",name:"Simple Chat",icon:"chat",description:"Basic text message",formats:{openai:{model:"gpt-4o",messages:[{role:"system",content:"You are a helpful assistant."},{role:"user",content:"Hello! How are you today?"}],stream:!0},claude:{model:"claude-sonnet-4-20250514",system:"You are a helpful assistant.",max_tokens:1024,messages:[{role:"user",content:"Hello! How are you today?"}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"Hello! How are you today?"}]}],systemInstruction:{parts:[{text:"You are a helpful assistant."}]}},"openai-responses":{model:"gpt-4o",input:"Hello! How are you today?",instructions:"You are a helpful assistant."}}},{id:"tool-calling",name:"Tool Calling",icon:"build",description:"Function/tool invocation",formats:{openai:{model:"gpt-4o",messages:[{role:"user",content:"What's the weather in S\xe3o Paulo?"}],tools:[{type:"function",function:{name:"get_weather",description:"Get current weather for a location",parameters:{type:"object",properties:{location:{type:"string",description:"City name"},unit:{type:"string",enum:["celsius","fahrenheit"]}},required:["location"]}}}],stream:!0},claude:{model:"claude-sonnet-4-20250514",max_tokens:1024,messages:[{role:"user",content:"What's the weather in S\xe3o Paulo?"}],tools:[{name:"get_weather",description:"Get current weather for a location",input_schema:{type:"object",properties:{location:{type:"string",description:"City name"},unit:{type:"string",enum:["celsius","fahrenheit"]}},required:["location"]}}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"What's the weather in S\xe3o Paulo?"}]}],tools:[{functionDeclarations:[{name:"get_weather",description:"Get current weather for a location",parameters:{type:"object",properties:{location:{type:"string",description:"City name"},unit:{type:"string",enum:["celsius","fahrenheit"]}},required:["location"]}}]}]}}},{id:"multi-turn",name:"Multi-turn",icon:"forum",description:"Conversation with history",formats:{openai:{model:"gpt-4o",messages:[{role:"system",content:"You are a coding assistant."},{role:"user",content:"Write a function to sort an array in Python."},{role:"assistant",content:"Here's a simple sort function:\n\n```python\ndef sort_array(arr):\n return sorted(arr)\n```"},{role:"user",content:"Now make it sort in descending order."}],stream:!0},claude:{model:"claude-sonnet-4-20250514",system:"You are a coding assistant.",max_tokens:1024,messages:[{role:"user",content:"Write a function to sort an array in Python."},{role:"assistant",content:"Here's a simple sort function:\n\n```python\ndef sort_array(arr):\n return sorted(arr)\n```"},{role:"user",content:"Now make it sort in descending order."}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"Write a function to sort an array in Python."}]},{role:"model",parts:[{text:"Here's a simple sort function:\n\n```python\ndef sort_array(arr):\n return sorted(arr)\n```"}]},{role:"user",parts:[{text:"Now make it sort in descending order."}]}],systemInstruction:{parts:[{text:"You are a coding assistant."}]}}}},{id:"thinking",name:"Thinking",icon:"psychology",description:"Extended thinking / reasoning",formats:{openai:{model:"o3-mini",messages:[{role:"user",content:"What is the sum of the first 100 prime numbers?"}],stream:!0},claude:{model:"claude-sonnet-4-20250514",max_tokens:16e3,thinking:{type:"enabled",budget_tokens:1e4},messages:[{role:"user",content:"What is the sum of the first 100 prime numbers?"}],stream:!0},gemini:{model:"gemini-2.5-flash-thinking",contents:[{role:"user",parts:[{text:"What is the sum of the first 100 prime numbers?"}]}],generationConfig:{thinkingConfig:{thinkingBudget:1e4}}}}},{id:"system-prompt",name:"System Prompt",icon:"settings",description:"Complex system instructions",formats:{openai:{model:"gpt-4o",messages:[{role:"system",content:"You are a senior software engineer specializing in distributed systems. Answer questions concisely using industry best practices. Always provide code examples when relevant. Format your responses using markdown."},{role:"user",content:"How do I implement a circuit breaker pattern?"}],temperature:.7,stream:!0},claude:{model:"claude-sonnet-4-20250514",system:"You are a senior software engineer specializing in distributed systems. Answer questions concisely using industry best practices. Always provide code examples when relevant. Format your responses using markdown.",max_tokens:2048,messages:[{role:"user",content:"How do I implement a circuit breaker pattern?"}],temperature:.7,stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"How do I implement a circuit breaker pattern?"}]}],systemInstruction:{parts:[{text:"You are a senior software engineer specializing in distributed systems. Answer questions concisely using industry best practices. Always provide code examples when relevant. Format your responses using markdown."}]},generationConfig:{temperature:.7}}}},{id:"streaming",name:"Streaming",icon:"stream",description:"SSE streaming request",formats:{openai:{model:"gpt-4o",messages:[{role:"user",content:"Tell me a short story about a robot learning to paint."}],stream:!0,stream_options:{include_usage:!0}},claude:{model:"claude-sonnet-4-20250514",max_tokens:1024,messages:[{role:"user",content:"Tell me a short story about a robot learning to paint."}],stream:!0},gemini:{model:"gemini-2.5-flash",contents:[{role:"user",parts:[{text:"Tell me a short story about a robot learning to paint."}]}]}}}],h={openai:{label:"OpenAI",color:"emerald",icon:"smart_toy"},"openai-responses":{label:"OpenAI Responses",color:"amber",icon:"swap_horiz"},claude:{label:"Claude",color:"orange",icon:"psychology"},gemini:{label:"Gemini",color:"blue",icon:"auto_awesome"},antigravity:{label:"Antigravity",color:"purple",icon:"rocket_launch"},kiro:{label:"Kiro",color:"cyan",icon:"terminal"},cursor:{label:"Cursor",color:"pink",icon:"edit"},codex:{label:"Codex",color:"yellow",icon:"code"}},i=Object.entries(h).map(([a,b])=>({value:a,label:b.label}));var j=c(39973),k=c.n(j);let l=k()(async()=>{},{loadableGenerated:{modules:["app/(dashboard)/dashboard/translator/components/PlaygroundMode.tsx -> @monaco-editor/react"]},ssr:!1});function m(){let[a,b]=(0,e.useState)("claude"),[c,j]=(0,e.useState)("openai"),[k,m]=(0,e.useState)(""),[n,o]=(0,e.useState)(""),[p,q]=(0,e.useState)(null),[r,s]=(0,e.useState)(!1),[t,u]=(0,e.useState)(!1),[v,w]=(0,e.useState)(null);(0,e.useCallback)(async a=>{if(!a||a.trim().length<5)return void q(null);try{let c=JSON.parse(a);u(!0);let d=await fetch("/api/translator/detect",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({body:c})}),e=await d.json();e.success&&(q(e.format),b(e.format))}catch{}finally{u(!1)}},[]);let x=async()=>{if(k.trim()){s(!0),o("");try{let b=JSON.parse(k),d=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:a,targetFormat:c,body:b})}),e=await d.json();e.success?o(JSON.stringify(e.result,null,2)):o(JSON.stringify({error:e.error},null,2))}catch(a){o(JSON.stringify({error:a.message},null,2))}s(!1)}},y=async a=>{try{await navigator.clipboard.writeText(a)}catch{}},z=h[a]||h.openai,A=h[c]||h.openai;return(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Format Converter"}),(0,d.jsx)("p",{children:"Paste or type a JSON request body. The translator will auto-detect the source format and convert it to the target format. Use this to debug how OmniRoute translates requests between formats (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)."})]})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex flex-col sm:flex-row items-center gap-4",children:[(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Source Format"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[20px] text-${z.color}-500`,children:z.icon}),(0,d.jsx)(f.l6,{value:a,onChange:a=>{b(a.target.value),q(null)},options:i,className:"flex-1"}),p&&(0,d.jsx)(f.Ex,{variant:"primary",size:"sm",icon:"auto_awesome",children:"Auto"})]})]}),(0,d.jsx)("button",{onClick:()=>{b(c),j(a),m(n),o(""),q(null)},className:"p-2 rounded-full hover:bg-primary/10 text-text-muted hover:text-primary transition-all mt-4 sm:mt-5",title:"Swap formats",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[24px]",children:"swap_horiz"})}),(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Target Format"}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[20px] text-${A.color}-500`,children:A.icon}),(0,d.jsx)(f.l6,{value:c,onChange:a=>j(a.target.value),options:i,className:"flex-1"})]})]}),(0,d.jsx)("div",{className:"pt-0 sm:pt-5",children:(0,d.jsx)(f.$n,{icon:"arrow_forward",onClick:x,loading:r,disabled:!k.trim()||r,className:"whitespace-nowrap",children:"Translate"})})]})}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-text-muted",children:"input"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Input"}),p&&(0,d.jsx)(f.Ex,{variant:"info",size:"sm",dot:!0,children:h[p]?.label||p}),t&&(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px] text-text-muted animate-spin",children:"progress_activity"})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsx)("button",{onClick:()=>y(k),className:"p-1.5 rounded hover:bg-black/5 dark:hover:bg-white/5 text-text-muted hover:text-text-main transition-colors",title:"Copy",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"content_copy"})}),(0,d.jsx)("button",{onClick:()=>{m(""),o(""),q(null),w(null)},className:"p-1.5 rounded hover:bg-black/5 dark:hover:bg-white/5 text-text-muted hover:text-text-main transition-colors",title:"Clear",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"delete"})})]})]}),(0,d.jsx)("div",{className:"border border-border rounded-lg overflow-hidden",children:(0,d.jsx)(l,{height:"400px",defaultLanguage:"json",value:k,onChange:a=>m(a||""),theme:"vs-dark",options:{minimap:{enabled:!1},fontSize:12,lineNumbers:"on",scrollBeyondLastLine:!1,wordWrap:"on",automaticLayout:!0,formatOnPaste:!0,placeholder:"Paste a request body here or select a template below..."}})})]})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-text-muted",children:"output"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Output"}),n&&(0,d.jsx)(f.Ex,{variant:"success",size:"sm",dot:!0,children:h[c]?.label||c})]}),(0,d.jsx)("div",{className:"flex items-center gap-1",children:(0,d.jsx)("button",{onClick:()=>y(n),className:"p-1.5 rounded hover:bg-black/5 dark:hover:bg-white/5 text-text-muted hover:text-text-main transition-colors",title:"Copy",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"content_copy"})})})]}),(0,d.jsx)("div",{className:"border border-border rounded-lg overflow-hidden",children:(0,d.jsx)(l,{height:"400px",defaultLanguage:"json",value:n,theme:"vs-dark",options:{minimap:{enabled:!1},fontSize:12,lineNumbers:"on",scrollBeyondLastLine:!1,wordWrap:"on",automaticLayout:!0,readOnly:!0}})})]})})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-primary",children:"library_books"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Example Templates"}),(0,d.jsx)("span",{className:"text-xs text-text-muted",children:"— Click to load"})]}),(0,d.jsx)("div",{className:"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-6 gap-2",children:g.map(b=>(0,d.jsxs)("button",{onClick:()=>{m(JSON.stringify(b.formats[a]||b.formats.openai,null,2)),w(b.id),o("")},className:`
3
3
  group flex flex-col items-center gap-1.5 p-3 rounded-lg border transition-all text-center
4
4
  ${v===b.id?"border-primary bg-primary/5 text-primary":"border-border hover:border-primary/30 hover:bg-primary/5 text-text-muted hover:text-text-main"}
5
- `,children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[22px] ${v===b.id?"text-primary":"text-text-muted group-hover:text-primary"} transition-colors`,children:b.icon}),(0,d.jsx)("span",{className:"text-xs font-medium leading-tight",children:b.name})]},b.id))}),v&&(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px]",children:"info"}),"Template loads the request in"," ",(0,d.jsx)("strong",{className:"text-text-main",children:h[a]?.label||a})," ","format. Change Source Format to load in a different format."]})]})})]})}function n(a="openai"){let[b,c]=(0,e.useState)(a),[d,f]=(0,e.useState)([]),[g,h]=(0,e.useState)(!0);return{provider:b,setProvider:c,providerOptions:d,loading:g}}c(17084);let o={openai:["gpt-","o1-","o3-","o4-"],"openai-responses":["gpt-","o1-","o3-","o4-"],claude:["claude-"],gemini:["gemini-"]};function p(){let[a,b]=(0,e.useState)(""),[c,d]=(0,e.useState)([]),[f,g]=(0,e.useState)(!0),h=(0,e.useCallback)(a=>{if(0===c.length)return"";for(let b of o[a]||[]){let a=c.find(a=>a.startsWith(b));if(a)return a}return c[0]},[c]);return{model:a,setModel:b,availableModels:c,loading:f,pickModelForFormat:h}}let q=k()(async()=>{},{loadableGenerated:{modules:["app/(dashboard)/dashboard/translator/components/ChatTesterMode.tsx -> @monaco-editor/react"]},ssr:!1});function r(){let{provider:a,setProvider:b,providerOptions:c}=n("openai"),{model:g,setModel:j,availableModels:k,pickModelForFormat:l}=p(),[m,o]=(0,e.useState)("openai"),[r,s]=(0,e.useState)(""),[t,u]=(0,e.useState)(!1),[v,w]=(0,e.useState)([]),[x,y]=(0,e.useState)(null),[z,A]=(0,e.useState)(null),B=(0,e.useRef)(null),C=()=>{B.current?.scrollIntoView({behavior:"smooth"})},D=async()=>{if(!r.trim()||t)return;let b=r.trim();s(""),u(!0),w(a=>[...a,{role:"user",content:b}]);let c=[];try{let d,e=[...v.map(a=>({role:a.role,content:a.content})),{role:"user",content:b}];d="claude"===m?{model:g,max_tokens:1024,messages:e,stream:!0}:"gemini"===m?{model:g,contents:e.map(a=>({role:"assistant"===a.role?"model":"user",parts:[{text:a.content}]}))}:"openai-responses"===m?{model:g,input:e.map(a=>({type:"message",role:a.role,content:[{type:"input_text",text:a.content}]})),stream:!0}:{model:g,messages:e,stream:!0},c.push({id:1,name:"Client Request",description:"The request body as your client would send it",format:m,content:JSON.stringify(d,null,2),status:"done"});let f=await fetch("/api/translator/detect",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({body:d})}),h=(await f.json()).format||m;c.push({id:2,name:"Format Detected",description:"OmniRoute auto-detects the API format from the request structure",format:h,content:JSON.stringify({detectedFormat:h,clientFormat:m,match:h===m},null,2),status:"done"});let i=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:h,targetFormat:"openai",body:d})}),j=await i.json();c.push({id:3,name:"OpenAI Intermediate",description:"All formats are first normalized to OpenAI format (the universal bridge)",format:"openai",content:JSON.stringify(j.result||j,null,2),status:j.success?"done":"error"});let k=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:"openai",provider:a,body:j.result})}),l=await k.json(),n=l.targetFormat||"openai";c.push({id:4,name:"Provider Format",description:"OpenAI format is translated to the provider's native format",format:n,content:JSON.stringify(l.result||l,null,2),status:l.success?"done":"error"});let o=await fetch("/api/translator/send",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:a,body:l.result||j.result})});if(o.ok){let a=o.body.getReader(),b=new TextDecoder,d="";for(;;){let{done:c,value:e}=await a.read();if(c)break;d+=b.decode(e,{stream:!0})}c.push({id:5,name:"Provider Response",description:"The raw SSE stream from the provider API",format:n,content:d.slice(0,5e3)+(d.length>5e3?"\n... (truncated)":""),status:"done"});let e=function(a){let b="";for(let c of a.split("\n")){if(!c.startsWith("data: "))continue;let a=c.slice(6).trim();if("[DONE]"===a)break;try{let c=JSON.parse(a),d=c.choices?.[0]?.delta;d?.content&&(b+=d.content),"content_block_delta"===c.type&&c.delta?.text&&(b+=c.delta.text)}catch{}}return b||a.slice(0,500)}(d);w(a=>[...a,{role:"assistant",content:e||"(No text extracted)"}])}else{let a=await o.json().catch(()=>({error:"Request failed"}));c.push({id:5,name:"Provider Response",description:"The raw response from the provider API",format:n,content:JSON.stringify(a,null,2),status:"error"}),w(b=>[...b,{role:"assistant",content:`Error: ${a.error||"Request failed"}`}])}}catch(a){c.push({id:c.length+1,name:"Error",description:"An unexpected error occurred",format:"error",content:JSON.stringify({error:a.message},null,2),status:"error"}),w(b=>[...b,{role:"assistant",content:`Error: ${a.message}`}])}y(c),A(c.length>0?c[c.length-1].id:null),u(!1),setTimeout(C,100)};return(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Pipeline Debugger"}),(0,d.jsxs)("p",{children:["Send messages as a specific client format and see how each step of the translation pipeline works. The right panel shows the full flow:"," ",(0,d.jsx)("strong",{className:"text-text-main",children:"Client Request → Format Detection → OpenAI Intermediate → Provider Format → Response"}),". Click any step to inspect the data at that stage."]})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex flex-col gap-3",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row gap-3",children:[(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1 uppercase tracking-wider",children:"Client Format"}),(0,d.jsx)(f.l6,{value:m,onChange:a=>o(a.target.value),options:i.filter(a=>["openai","claude","gemini","openai-responses"].includes(a.value))})]}),(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1 uppercase tracking-wider",children:"Provider"}),(0,d.jsx)(f.l6,{value:a,onChange:a=>b(a.target.value),options:c})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1 uppercase tracking-wider",children:"Model"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsx)("input",{type:"text",value:g,onChange:a=>j(a.target.value),list:"model-suggestions",placeholder:"Select or type a model name...",className:"w-full bg-bg-subtle border border-border rounded-lg px-3 py-2 text-sm text-text-main placeholder:text-text-muted focus:outline-none focus:border-primary transition-colors"}),(0,d.jsx)("datalist",{id:"model-suggestions",children:k.map(a=>(0,d.jsx)("option",{value:a},a))})]})]})]})}),(0,d.jsxs)(f.Zp,{className:"min-h-[400px] flex flex-col",children:[(0,d.jsxs)("div",{className:"p-4 flex-1 overflow-y-auto max-h-[500px] space-y-3",children:[0===v.length&&(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center h-full text-text-muted py-12",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[48px] mb-3 opacity-30",children:"chat"}),(0,d.jsx)("p",{className:"text-sm font-medium mb-1",children:"Send a message to see the translation pipeline"}),(0,d.jsxs)("p",{className:"text-xs text-center max-w-xs",children:["Your message will be formatted as a"," ",(0,d.jsx)("strong",{children:h[m]?.label})," request, translated through the pipeline, and sent to the selected provider."]})]}),v.map((a,b)=>(0,d.jsx)("div",{className:`flex ${"user"===a.role?"justify-end":"justify-start"}`,children:(0,d.jsxs)("div",{className:`max-w-[85%] rounded-lg px-3 py-2 text-sm ${"user"===a.role?"bg-primary/10 text-text-main border border-primary/20":"bg-bg-subtle text-text-main border border-border"}`,children:[(0,d.jsx)("p",{className:"text-[10px] font-semibold text-text-muted mb-1 uppercase",children:"user"===a.role?`You (${h[m]?.label})`:"Assistant"}),(0,d.jsx)("p",{className:"whitespace-pre-wrap",children:a.content})]})},b)),(0,d.jsx)("div",{ref:B})]}),(0,d.jsx)("div",{className:"p-3 border-t border-border",children:(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)("input",{type:"text",value:r,onChange:a=>s(a.target.value),onKeyDown:a=>"Enter"===a.key&&!a.shiftKey&&D(),placeholder:"Type a message...",className:"flex-1 bg-bg-subtle border border-border rounded-lg px-3 py-2 text-sm text-text-main placeholder:text-text-muted focus:outline-none focus:border-primary transition-colors",disabled:t}),(0,d.jsx)(f.$n,{icon:"send",onClick:D,loading:t,disabled:!r.trim()||t,children:"Send"})]})})]})]}),(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-1",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-primary",children:"account_tree"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Translation Pipeline"})]}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"Click on any step to inspect the data at that stage"})]})}),x?(0,d.jsx)("div",{className:"space-y-2",children:x.map((a,b)=>{let c=h[a.format]||{label:a.format,color:"gray",icon:"code"},e=z===a.id;return(0,d.jsxs)("div",{children:[b>0&&(0,d.jsx)("div",{className:"flex justify-center py-1",children:(0,d.jsx)("div",{className:"w-px h-4 bg-border"})}),(0,d.jsxs)(f.Zp,{className:"error"===a.status?"border-red-500/30":e?"border-primary/30":"",children:[(0,d.jsxs)("button",{onClick:()=>A(e?null:a.id),className:"w-full p-3 flex items-center gap-3 text-left",children:[(0,d.jsx)("div",{className:`flex items-center justify-center w-7 h-7 rounded-full text-xs font-bold ${"error"===a.status?"bg-red-500/10 text-red-500":"done"===a.status?`bg-${c.color}-500/10 text-${c.color}-500`:"bg-bg-subtle text-text-muted"}`,children:"error"===a.status?"!":a.id}),(0,d.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,d.jsx)("p",{className:"text-sm font-medium text-text-main",children:a.name}),a.description&&(0,d.jsx)("p",{className:"text-[10px] text-text-muted truncate",children:a.description})]}),(0,d.jsx)(f.Ex,{variant:"error"===a.status?"error":"default",size:"sm",children:c.label}),(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-text-muted",children:e?"expand_less":"expand_more"})]}),e&&(0,d.jsx)("div",{className:"px-3 pb-3",children:(0,d.jsx)("div",{className:"border border-border rounded-lg overflow-hidden",children:(0,d.jsx)(q,{height:"250px",defaultLanguage:"json",value:a.content,theme:"vs-dark",options:{minimap:{enabled:!1},fontSize:11,lineNumbers:"on",scrollBeyondLastLine:!1,wordWrap:"on",automaticLayout:!0,readOnly:!0}})})})]})]},a.id)})}):(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-8 flex flex-col items-center justify-center text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[48px] mb-3 opacity-30",children:"account_tree"}),(0,d.jsx)("p",{className:"text-sm font-medium mb-1",children:"Pipeline visualization"}),(0,d.jsx)("p",{className:"text-xs text-center max-w-xs",children:"Send a message to see how your request flows through detection → translation → provider call."})]})})]})]})]})}let s=[{id:"simple-chat",name:"Simple Chat",icon:"chat",templateId:"simple-chat"},{id:"tool-calling",name:"Tool Calling",icon:"build",templateId:"tool-calling"},{id:"multi-turn",name:"Multi-turn",icon:"forum",templateId:"multi-turn"},{id:"thinking",name:"Thinking",icon:"psychology",templateId:"thinking"},{id:"system-prompt",name:"System Prompt",icon:"settings",templateId:"system-prompt"},{id:"streaming",name:"Streaming",icon:"stream",templateId:"streaming"}];function t(){let[a,b]=(0,e.useState)("claude"),{provider:c,setProvider:j,providerOptions:k}=n("openai"),{model:l,setModel:m,availableModels:o,pickModelForFormat:q}=p(),[r,t]=(0,e.useState)({}),[u,v]=(0,e.useState)(!1),w=async b=>{t(a=>({...a,[b.id]:{status:"running"}}));let d=Date.now();try{let e=g.find(a=>a.id===b.templateId),f=e?.formats[a]||e?.formats.openai;if(!f)return void t(a=>({...a,[b.id]:{status:"error",error:"No template for this format",latency:0}}));let h={...f,model:l};f.contents&&(h.model=l);let i=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:a,provider:c,body:h})}),j=await i.json();if(!j.success)return void t(a=>({...a,[b.id]:{status:"error",error:`Translation failed: ${j.error}`,latency:Date.now()-d}}));let k=await fetch("/api/translator/send",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:c,body:j.result})}),m=Date.now()-d;if(!k.ok){let a=await k.json().catch(()=>({}));t(c=>({...c,[b.id]:{status:"error",error:a.error||`HTTP ${k.status}`,latency:m,httpStatus:k.status}}));return}let n=k.body.getReader(),o=0;for(;;){let{done:a}=await n.read();if(a)break;o++}t(a=>({...a,[b.id]:{status:"pass",latency:Date.now()-d,chunks:o}}))}catch(a){t(c=>({...c,[b.id]:{status:"error",error:a.message,latency:Date.now()-d}}))}},x=async()=>{for(let a of(v(!0),t({}),s))await w(a);v(!1)},y=Object.values(r).filter(a=>"pass"===a.status).length,z=Object.values(r).filter(a=>"error"===a.status).length,A=y+z,B=A>0?Math.round(y/A*100):0,C=h[a]||h.openai;return(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Compatibility Tester"}),(0,d.jsx)("p",{children:"Run predefined scenarios (Simple Chat, Tool Calling, etc.) to verify translation and provider compatibility. Select a source format and target provider, then run all tests to see a compatibility percentage. Use this to find which features work across providers."})]})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex flex-col gap-4",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row items-end gap-4",children:[(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Source Format"}),(0,d.jsx)(f.l6,{value:a,onChange:a=>{b(a.target.value),t({})},options:i.filter(a=>["openai","claude","gemini","openai-responses"].includes(a.value))})]}),(0,d.jsx)("div",{className:"flex items-center justify-center px-2",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[22px] text-text-muted",children:"arrow_forward"})}),(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Target Provider"}),(0,d.jsx)(f.l6,{value:c,onChange:a=>{j(a.target.value),t({})},options:k})]}),(0,d.jsx)(f.$n,{icon:"play_arrow",onClick:x,loading:u,disabled:u,children:"Run All Tests"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Model"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsx)("input",{type:"text",value:l,onChange:a=>m(a.target.value),list:"testbench-model-suggestions",placeholder:"Select or type a model name...",className:"w-full bg-bg-subtle border border-border rounded-lg px-3 py-2 text-sm text-text-main placeholder:text-text-muted focus:outline-none focus:border-primary transition-colors"}),(0,d.jsx)("datalist",{id:"testbench-model-suggestions",children:o.map(a=>(0,d.jsx)("option",{value:a},a))})]})]})]})}),A>0&&(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Compatibility Report"}),(0,d.jsxs)(f.Ex,{variant:B>=80?"success":B>=50?"warning":"error",size:"lg",children:[B,"%"]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-3 text-xs text-text-muted",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("span",{className:"size-2 rounded-full bg-green-500"})," ",y," passed"]}),(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("span",{className:"size-2 rounded-full bg-red-500"})," ",z," failed"]})]})]}),(0,d.jsx)("div",{className:"w-full h-2 bg-bg-subtle rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full bg-gradient-to-r from-green-500 to-emerald-400 rounded-full transition-all duration-500",style:{width:`${B}%`}})})]})}),(0,d.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:s.map(a=>{let b=r[a.id],e=b?.status==="running";return(0,d.jsx)(f.Zp,{className:`transition-all ${b?.status==="pass"?"border-green-500/30":b?.status==="error"?"border-red-500/30":""}`,children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsx)("div",{className:"flex items-center justify-between",children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:`flex items-center justify-center w-9 h-9 rounded-lg ${b?.status==="pass"?"bg-green-500/10 text-green-500":b?.status==="error"?"bg-red-500/10 text-red-500":"bg-bg-subtle text-text-muted"}`,children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px]",children:e?"progress_activity":b?.status==="pass"?"check_circle":b?.status==="error"?"error":a.icon})}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"text-sm font-medium text-text-main",children:a.name}),(0,d.jsxs)("p",{className:"text-[10px] text-text-muted uppercase",children:[C.label," →"," ",k.find(a=>a.value===c)?.label||c]})]})]})}),b&&"running"!==b.status&&(0,d.jsx)("div",{className:`rounded-lg p-2 text-xs ${"pass"===b.status?"bg-green-500/5 text-green-600 dark:text-green-400":"bg-red-500/5 text-red-600 dark:text-red-400"}`,children:"pass"===b.status?(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{children:"✅ Passed"}),(0,d.jsxs)("span",{className:"text-text-muted",children:[b.latency,"ms • ",b.chunks," chunks"]})]}):(0,d.jsxs)("div",{children:[(0,d.jsxs)("p",{children:["❌ ",b.error]}),(0,d.jsxs)("p",{className:"text-text-muted mt-0.5",children:[b.latency,"ms"]})]})}),(0,d.jsx)(f.$n,{size:"sm",variant:b?.status==="pass"?"ghost":"outline",icon:e?"progress_activity":"play_arrow",onClick:()=>w(a),disabled:e||u,className:"w-full",children:e?"Running...":b?"Re-run":"Run Test"})]})},a.id)})})]})}function u(){let[a,b]=(0,e.useState)([]),[c,g]=(0,e.useState)(!0),[i,j]=(0,e.useState)(!0);(0,e.useRef)(null);let k=async()=>{try{let a=await fetch("/api/translator/history?limit=50");if(a.ok){let c=await a.json();b(c.events||[])}}catch{}finally{g(!1)}},l=a.filter(a=>"success"===a.status).length,m=a.filter(a=>"error"===a.status).length,n=a.length>0?Math.round(a.reduce((a,b)=>a+(b.latency||0),0)/a.length):0;return(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Real-Time Translation Activity"}),(0,d.jsxs)("p",{children:["Shows translation events as API calls flow through OmniRoute. Events come from the in-memory buffer (resets on restart). Use"," ",(0,d.jsx)("strong",{className:"text-text-main",children:"Chat Tester"}),","," ",(0,d.jsx)("strong",{className:"text-text-main",children:"Test Bench"}),", or external API calls to generate events."]})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:[(0,d.jsx)(v,{icon:"translate",label:"Total Translations",value:a.length,color:"blue"}),(0,d.jsx)(v,{icon:"check_circle",label:"Successful",value:l,color:"green"}),(0,d.jsx)(v,{icon:"error",label:"Errors",value:m,color:"red"}),(0,d.jsx)(v,{icon:"speed",label:"Avg Latency",value:`${n}ms`,color:"purple"})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-3 flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[18px] ${i?"text-green-500 animate-pulse":"text-text-muted"}`,children:i?"radio_button_checked":"radio_button_unchecked"}),(0,d.jsx)("button",{onClick:()=>j(!i),className:"text-sm text-text-main hover:text-primary transition-colors",children:i?"Live — Auto-refreshing":"Paused"})]}),(0,d.jsxs)("button",{onClick:k,className:"flex items-center gap-1 text-xs text-text-muted hover:text-primary transition-colors",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"refresh"}),"Refresh"]})]})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main mb-3",children:"Recent Translations"}),c?(0,d.jsxs)("div",{className:"flex items-center justify-center py-12 text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin mr-2",children:"progress_activity"}),"Loading..."]}):0===a.length?(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[48px] mb-3 opacity-30",children:"monitoring"}),(0,d.jsx)("p",{className:"text-sm font-medium mb-1",children:"No translations yet"}),(0,d.jsx)("p",{className:"text-xs text-center max-w-sm",children:"Translation events appear here as requests flow through OmniRoute. Use any of these methods to generate events:"}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2 mt-3 text-xs",children:[(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"Chat Tester tab"}),(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"Test Bench tab"}),(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"External API calls"}),(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"IDE/CLI integrations"})]}),(0,d.jsx)("p",{className:"text-[10px] mt-3 text-text-muted/70",children:"Note: Events are stored in-memory and reset when the server restarts."})]}):(0,d.jsx)("div",{className:"overflow-x-auto",children:(0,d.jsxs)("table",{className:"w-full text-sm",children:[(0,d.jsx)("thead",{children:(0,d.jsxs)("tr",{className:"text-left text-xs text-text-muted border-b border-border",children:[(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Time"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Source"}),(0,d.jsx)("th",{className:"pb-2 pr-4"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Target"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Model"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Status"}),(0,d.jsx)("th",{className:"pb-2 text-right",children:"Latency"})]})}),(0,d.jsx)("tbody",{children:a.map((a,b)=>{let c=h[a.sourceFormat]||{label:a.sourceFormat||"?",color:"gray"},e=h[a.targetFormat]||{label:a.targetFormat||"?",color:"gray"};return(0,d.jsxs)("tr",{className:"border-b border-border/50 hover:bg-bg-subtle/50 transition-colors",children:[(0,d.jsx)("td",{className:"py-2 pr-4 text-xs text-text-muted whitespace-nowrap",children:a.timestamp?new Date(a.timestamp).toLocaleTimeString():"—"}),(0,d.jsx)("td",{className:"py-2 pr-4",children:(0,d.jsx)(f.Ex,{variant:"default",size:"sm",children:c.label})}),(0,d.jsx)("td",{className:"py-2 pr-4 text-text-muted",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px]",children:"arrow_forward"})}),(0,d.jsx)("td",{className:"py-2 pr-4",children:(0,d.jsx)(f.Ex,{variant:"primary",size:"sm",children:e.label})}),(0,d.jsx)("td",{className:"py-2 pr-4 text-xs font-mono text-text-muted",children:a.model||"—"}),(0,d.jsx)("td",{className:"py-2 pr-4",children:"success"===a.status?(0,d.jsx)(f.Ex,{variant:"success",size:"sm",dot:!0,children:"OK"}):(0,d.jsx)(f.Ex,{variant:"error",size:"sm",dot:!0,children:a.statusCode||"ERR"})}),(0,d.jsx)("td",{className:"py-2 text-right text-xs text-text-muted",children:a.latency?`${a.latency}ms`:"—"})]},a.id||b)})})]})})]})})]})}function v({icon:a,label:b,value:c,color:e}){return(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex items-center gap-3",children:[(0,d.jsx)("div",{className:`flex items-center justify-center w-10 h-10 rounded-lg bg-${e}-500/10`,children:(0,d.jsx)("span",{className:`material-symbols-outlined text-[22px] text-${e}-500`,children:a})}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"text-lg font-bold text-text-main",children:c}),(0,d.jsx)("p",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:b})]})]})})}let w=[{value:"playground",label:"Playground",icon:"code"},{value:"chat-tester",label:"Chat Tester",icon:"chat"},{value:"test-bench",label:"Test Bench",icon:"science"},{value:"live-monitor",label:"Live Monitor",icon:"monitoring"}],x={playground:"Paste any API request body and see how OmniRoute translates it between provider formats (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)","chat-tester":"Send real chat requests through OmniRoute and see the full round-trip: your input, the translated request, the provider response, and the translated output","test-bench":"Define multiple test cases with different inputs and expected outputs, run them all at once, and compare results across providers and models","live-monitor":"Watch incoming requests in real-time as they flow through OmniRoute — see format translations happening live and identify issues instantly"};function y(){let[a,b]=(0,e.useState)("playground");return(0,d.jsxs)("div",{className:"p-8 space-y-6",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("h1",{className:"text-2xl font-bold text-text-main flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[28px]",children:"translate"}),"Translator Playground"]}),(0,d.jsx)("p",{className:"text-sm text-text-muted mt-1",children:x[a]||"Debug, test, and visualize how OmniRoute translates API requests between providers"})]}),(0,d.jsx)(f.Iz,{options:w,value:a,onChange:b,size:"md"})]}),"playground"===a&&(0,d.jsx)(m,{}),"chat-tester"===a&&(0,d.jsx)(r,{}),"test-bench"===a&&(0,d.jsx)(t,{}),"live-monitor"===a&&(0,d.jsx)(u,{})]})}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,595,8020,9723,3994,438,2910,3596,2901,4568,9979,9824,5248],()=>b(b.s=72408));module.exports=c})();
5
+ `,children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[22px] ${v===b.id?"text-primary":"text-text-muted group-hover:text-primary"} transition-colors`,children:b.icon}),(0,d.jsx)("span",{className:"text-xs font-medium leading-tight",children:b.name})]},b.id))}),v&&(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px]",children:"info"}),"Template loads the request in"," ",(0,d.jsx)("strong",{className:"text-text-main",children:h[a]?.label||a})," ","format. Change Source Format to load in a different format."]})]})})]})}function n(a="openai"){let[b,c]=(0,e.useState)(a),[d,f]=(0,e.useState)([]),[g,h]=(0,e.useState)(!0);return{provider:b,setProvider:c,providerOptions:d,loading:g}}c(17084);let o={openai:["gpt-","o1-","o3-","o4-"],"openai-responses":["gpt-","o1-","o3-","o4-"],claude:["claude-"],gemini:["gemini-"]};function p(){let[a,b]=(0,e.useState)(""),[c,d]=(0,e.useState)([]),[f,g]=(0,e.useState)(!0),h=(0,e.useCallback)(a=>{if(0===c.length)return"";for(let b of o[a]||[]){let a=c.find(a=>a.startsWith(b));if(a)return a}return c[0]},[c]);return{model:a,setModel:b,availableModels:c,loading:f,pickModelForFormat:h}}let q=k()(async()=>{},{loadableGenerated:{modules:["app/(dashboard)/dashboard/translator/components/ChatTesterMode.tsx -> @monaco-editor/react"]},ssr:!1});function r(){let{provider:a,setProvider:b,providerOptions:c}=n("openai"),{model:g,setModel:j,availableModels:k,pickModelForFormat:l}=p(),[m,o]=(0,e.useState)("openai"),[r,s]=(0,e.useState)(""),[t,u]=(0,e.useState)(!1),[v,w]=(0,e.useState)([]),[x,y]=(0,e.useState)(null),[z,A]=(0,e.useState)(null),B=(0,e.useRef)(null),C=()=>{B.current?.scrollIntoView({behavior:"smooth"})},D=async()=>{if(!r.trim()||t)return;let b=r.trim();s(""),u(!0),w(a=>[...a,{role:"user",content:b}]);let c=[];try{let d,e=[...v.map(a=>({role:a.role,content:a.content})),{role:"user",content:b}];d="claude"===m?{model:g,max_tokens:1024,messages:e,stream:!0}:"gemini"===m?{model:g,contents:e.map(a=>({role:"assistant"===a.role?"model":"user",parts:[{text:a.content}]}))}:"openai-responses"===m?{model:g,input:e.map(a=>({type:"message",role:a.role,content:[{type:"input_text",text:a.content}]})),stream:!0}:{model:g,messages:e,stream:!0},c.push({id:1,name:"Client Request",description:"The request body as your client would send it",format:m,content:JSON.stringify(d,null,2),status:"done"});let f=await fetch("/api/translator/detect",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({body:d})}),h=(await f.json()).format||m;c.push({id:2,name:"Format Detected",description:"OmniRoute auto-detects the API format from the request structure",format:h,content:JSON.stringify({detectedFormat:h,clientFormat:m,match:h===m},null,2),status:"done"});let i=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:h,targetFormat:"openai",body:d})}),j=await i.json();c.push({id:3,name:"OpenAI Intermediate",description:"All formats are first normalized to OpenAI format (the universal bridge)",format:"openai",content:JSON.stringify(j.result||j,null,2),status:j.success?"done":"error"});let k=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:"openai",provider:a,body:j.result})}),l=await k.json(),n=l.targetFormat||"openai";c.push({id:4,name:"Provider Format",description:"OpenAI format is translated to the provider's native format",format:n,content:JSON.stringify(l.result||l,null,2),status:l.success?"done":"error"});let o=await fetch("/api/translator/send",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:a,body:l.result||j.result})});if(o.ok){let a=o.body.getReader(),b=new TextDecoder,d="";for(;;){let{done:c,value:e}=await a.read();if(c)break;d+=b.decode(e,{stream:!0})}c.push({id:5,name:"Provider Response",description:"The raw SSE stream from the provider API",format:n,content:d.slice(0,5e3)+(d.length>5e3?"\n... (truncated)":""),status:"done"});let e=function(a){let b="";for(let c of a.split("\n")){if(!c.startsWith("data: "))continue;let a=c.slice(6).trim();if("[DONE]"===a)break;try{let c=JSON.parse(a),d=c.choices?.[0]?.delta;d?.content&&(b+=d.content),"content_block_delta"===c.type&&c.delta?.text&&(b+=c.delta.text)}catch{}}return b||a.slice(0,500)}(d);w(a=>[...a,{role:"assistant",content:e||"(No text extracted)"}])}else{let a=await o.json().catch(()=>({error:"Request failed"}));c.push({id:5,name:"Provider Response",description:"The raw response from the provider API",format:n,content:JSON.stringify(a,null,2),status:"error"}),w(b=>[...b,{role:"assistant",content:`Error: ${a.error||"Request failed"}`}])}}catch(a){c.push({id:c.length+1,name:"Error",description:"An unexpected error occurred",format:"error",content:JSON.stringify({error:a.message},null,2),status:"error"}),w(b=>[...b,{role:"assistant",content:`Error: ${a.message}`}])}y(c),A(c.length>0?c[c.length-1].id:null),u(!1),setTimeout(C,100)};return(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Pipeline Debugger"}),(0,d.jsxs)("p",{children:["Send messages as a specific client format and see how each step of the translation pipeline works. The right panel shows the full flow:"," ",(0,d.jsx)("strong",{className:"text-text-main",children:"Client Request → Format Detection → OpenAI Intermediate → Provider Format → Response"}),". Click any step to inspect the data at that stage."]})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex flex-col gap-3",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row gap-3",children:[(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1 uppercase tracking-wider",children:"Client Format"}),(0,d.jsx)(f.l6,{value:m,onChange:a=>o(a.target.value),options:i.filter(a=>["openai","claude","gemini","openai-responses"].includes(a.value))})]}),(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1 uppercase tracking-wider",children:"Provider"}),(0,d.jsx)(f.l6,{value:a,onChange:a=>b(a.target.value),options:c})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1 uppercase tracking-wider",children:"Model"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsx)("input",{type:"text",value:g,onChange:a=>j(a.target.value),list:"model-suggestions",placeholder:"Select or type a model name...",className:"w-full bg-bg-subtle border border-border rounded-lg px-3 py-2 text-sm text-text-main placeholder:text-text-muted focus:outline-none focus:border-primary transition-colors"}),(0,d.jsx)("datalist",{id:"model-suggestions",children:k.map(a=>(0,d.jsx)("option",{value:a},a))})]})]})]})}),(0,d.jsxs)(f.Zp,{className:"min-h-[400px] flex flex-col",children:[(0,d.jsxs)("div",{className:"p-4 flex-1 overflow-y-auto max-h-[500px] space-y-3",children:[0===v.length&&(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center h-full text-text-muted py-12",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[48px] mb-3 opacity-30",children:"chat"}),(0,d.jsx)("p",{className:"text-sm font-medium mb-1",children:"Send a message to see the translation pipeline"}),(0,d.jsxs)("p",{className:"text-xs text-center max-w-xs",children:["Your message will be formatted as a"," ",(0,d.jsx)("strong",{children:h[m]?.label})," request, translated through the pipeline, and sent to the selected provider."]})]}),v.map((a,b)=>(0,d.jsx)("div",{className:`flex ${"user"===a.role?"justify-end":"justify-start"}`,children:(0,d.jsxs)("div",{className:`max-w-[85%] rounded-lg px-3 py-2 text-sm ${"user"===a.role?"bg-primary/10 text-text-main border border-primary/20":"bg-bg-subtle text-text-main border border-border"}`,children:[(0,d.jsx)("p",{className:"text-[10px] font-semibold text-text-muted mb-1 uppercase",children:"user"===a.role?`You (${h[m]?.label})`:"Assistant"}),(0,d.jsx)("p",{className:"whitespace-pre-wrap",children:a.content})]})},b)),(0,d.jsx)("div",{ref:B})]}),(0,d.jsx)("div",{className:"p-3 border-t border-border",children:(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)("input",{type:"text",value:r,onChange:a=>s(a.target.value),onKeyDown:a=>"Enter"===a.key&&!a.shiftKey&&D(),placeholder:"Type a message...",className:"flex-1 bg-bg-subtle border border-border rounded-lg px-3 py-2 text-sm text-text-main placeholder:text-text-muted focus:outline-none focus:border-primary transition-colors",disabled:t}),(0,d.jsx)(f.$n,{icon:"send",onClick:D,loading:t,disabled:!r.trim()||t,children:"Send"})]})})]})]}),(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 space-y-1",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-primary",children:"account_tree"}),(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Translation Pipeline"})]}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"Click on any step to inspect the data at that stage"})]})}),x?(0,d.jsx)("div",{className:"space-y-2",children:x.map((a,b)=>{let c=h[a.format]||{label:a.format,color:"gray",icon:"code"},e=z===a.id;return(0,d.jsxs)("div",{children:[b>0&&(0,d.jsx)("div",{className:"flex justify-center py-1",children:(0,d.jsx)("div",{className:"w-px h-4 bg-border"})}),(0,d.jsxs)(f.Zp,{className:"error"===a.status?"border-red-500/30":e?"border-primary/30":"",children:[(0,d.jsxs)("button",{onClick:()=>A(e?null:a.id),className:"w-full p-3 flex items-center gap-3 text-left",children:[(0,d.jsx)("div",{className:`flex items-center justify-center w-7 h-7 rounded-full text-xs font-bold ${"error"===a.status?"bg-red-500/10 text-red-500":"done"===a.status?`bg-${c.color}-500/10 text-${c.color}-500`:"bg-bg-subtle text-text-muted"}`,children:"error"===a.status?"!":a.id}),(0,d.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,d.jsx)("p",{className:"text-sm font-medium text-text-main",children:a.name}),a.description&&(0,d.jsx)("p",{className:"text-[10px] text-text-muted truncate",children:a.description})]}),(0,d.jsx)(f.Ex,{variant:"error"===a.status?"error":"default",size:"sm",children:c.label}),(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px] text-text-muted",children:e?"expand_less":"expand_more"})]}),e&&(0,d.jsx)("div",{className:"px-3 pb-3",children:(0,d.jsx)("div",{className:"border border-border rounded-lg overflow-hidden",children:(0,d.jsx)(q,{height:"250px",defaultLanguage:"json",value:a.content,theme:"vs-dark",options:{minimap:{enabled:!1},fontSize:11,lineNumbers:"on",scrollBeyondLastLine:!1,wordWrap:"on",automaticLayout:!0,readOnly:!0}})})})]})]},a.id)})}):(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-8 flex flex-col items-center justify-center text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[48px] mb-3 opacity-30",children:"account_tree"}),(0,d.jsx)("p",{className:"text-sm font-medium mb-1",children:"Pipeline visualization"}),(0,d.jsx)("p",{className:"text-xs text-center max-w-xs",children:"Send a message to see how your request flows through detection → translation → provider call."})]})})]})]})]})}let s=[{id:"simple-chat",name:"Simple Chat",icon:"chat",templateId:"simple-chat"},{id:"tool-calling",name:"Tool Calling",icon:"build",templateId:"tool-calling"},{id:"multi-turn",name:"Multi-turn",icon:"forum",templateId:"multi-turn"},{id:"thinking",name:"Thinking",icon:"psychology",templateId:"thinking"},{id:"system-prompt",name:"System Prompt",icon:"settings",templateId:"system-prompt"},{id:"streaming",name:"Streaming",icon:"stream",templateId:"streaming"}];function t(){let[a,b]=(0,e.useState)("claude"),{provider:c,setProvider:j,providerOptions:k}=n("openai"),{model:l,setModel:m,availableModels:o,pickModelForFormat:q}=p(),[r,t]=(0,e.useState)({}),[u,v]=(0,e.useState)(!1),w=async b=>{t(a=>({...a,[b.id]:{status:"running"}}));let d=Date.now();try{let e=g.find(a=>a.id===b.templateId),f=e?.formats[a]||e?.formats.openai;if(!f)return void t(a=>({...a,[b.id]:{status:"error",error:"No template for this format",latency:0}}));let h={...f,model:l};f.contents&&(h.model=l);let i=await fetch("/api/translator/translate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({step:"direct",sourceFormat:a,provider:c,body:h})}),j=await i.json();if(!j.success)return void t(a=>({...a,[b.id]:{status:"error",error:`Translation failed: ${j.error}`,latency:Date.now()-d}}));let k=await fetch("/api/translator/send",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:c,body:j.result})}),m=Date.now()-d;if(!k.ok){let a=await k.json().catch(()=>({}));t(c=>({...c,[b.id]:{status:"error",error:a.error||`HTTP ${k.status}`,latency:m,httpStatus:k.status}}));return}let n=k.body.getReader(),o=0;for(;;){let{done:a}=await n.read();if(a)break;o++}t(a=>({...a,[b.id]:{status:"pass",latency:Date.now()-d,chunks:o}}))}catch(a){t(c=>({...c,[b.id]:{status:"error",error:a.message,latency:Date.now()-d}}))}},x=async()=>{for(let a of(v(!0),t({}),s))await w(a);v(!1)},y=Object.values(r).filter(a=>"pass"===a.status).length,z=Object.values(r).filter(a=>"error"===a.status).length,A=y+z,B=A>0?Math.round(y/A*100):0,C=h[a]||h.openai;return(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Compatibility Tester"}),(0,d.jsx)("p",{children:"Run predefined scenarios (Simple Chat, Tool Calling, etc.) to verify translation and provider compatibility. Select a source format and target provider, then run all tests to see a compatibility percentage. Use this to find which features work across providers."})]})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex flex-col gap-4",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row items-end gap-4",children:[(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Source Format"}),(0,d.jsx)(f.l6,{value:a,onChange:a=>{b(a.target.value),t({})},options:i.filter(a=>["openai","claude","gemini","openai-responses"].includes(a.value))})]}),(0,d.jsx)("div",{className:"flex items-center justify-center px-2",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[22px] text-text-muted",children:"arrow_forward"})}),(0,d.jsxs)("div",{className:"flex-1 w-full",children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Target Provider"}),(0,d.jsx)(f.l6,{value:c,onChange:a=>{j(a.target.value),t({})},options:k})]}),(0,d.jsx)(f.$n,{icon:"play_arrow",onClick:x,loading:u,disabled:u,children:"Run All Tests"})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("label",{className:"block text-xs font-medium text-text-muted mb-1.5 uppercase tracking-wider",children:"Model"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsx)("input",{type:"text",value:l,onChange:a=>m(a.target.value),list:"testbench-model-suggestions",placeholder:"Select or type a model name...",className:"w-full bg-bg-subtle border border-border rounded-lg px-3 py-2 text-sm text-text-main placeholder:text-text-muted focus:outline-none focus:border-primary transition-colors"}),(0,d.jsx)("datalist",{id:"testbench-model-suggestions",children:o.map(a=>(0,d.jsx)("option",{value:a},a))})]})]})]})}),A>0&&(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main",children:"Compatibility Report"}),(0,d.jsxs)(f.Ex,{variant:B>=80?"success":B>=50?"warning":"error",size:"lg",children:[B,"%"]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-3 text-xs text-text-muted",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("span",{className:"size-2 rounded-full bg-green-500"})," ",y," passed"]}),(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("span",{className:"size-2 rounded-full bg-red-500"})," ",z," failed"]})]})]}),(0,d.jsx)("div",{className:"w-full h-2 bg-bg-subtle rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full bg-gradient-to-r from-green-500 to-emerald-400 rounded-full transition-all duration-500",style:{width:`${B}%`}})})]})}),(0,d.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:s.map(a=>{let b=r[a.id],e=b?.status==="running";return(0,d.jsx)(f.Zp,{className:`transition-all ${b?.status==="pass"?"border-green-500/30":b?.status==="error"?"border-red-500/30":""}`,children:(0,d.jsxs)("div",{className:"p-4 space-y-3",children:[(0,d.jsx)("div",{className:"flex items-center justify-between",children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:`flex items-center justify-center w-9 h-9 rounded-lg ${b?.status==="pass"?"bg-green-500/10 text-green-500":b?.status==="error"?"bg-red-500/10 text-red-500":"bg-bg-subtle text-text-muted"}`,children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px]",children:e?"progress_activity":b?.status==="pass"?"check_circle":b?.status==="error"?"error":a.icon})}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"text-sm font-medium text-text-main",children:a.name}),(0,d.jsxs)("p",{className:"text-[10px] text-text-muted uppercase",children:[C.label," →"," ",k.find(a=>a.value===c)?.label||c]})]})]})}),b&&"running"!==b.status&&(0,d.jsx)("div",{className:`rounded-lg p-2 text-xs ${"pass"===b.status?"bg-green-500/5 text-green-600 dark:text-green-400":"bg-red-500/5 text-red-600 dark:text-red-400"}`,children:"pass"===b.status?(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{children:"✅ Passed"}),(0,d.jsxs)("span",{className:"text-text-muted",children:[b.latency,"ms • ",b.chunks," chunks"]})]}):(0,d.jsxs)("div",{children:[(0,d.jsxs)("p",{children:["❌ ",b.error]}),(0,d.jsxs)("p",{className:"text-text-muted mt-0.5",children:[b.latency,"ms"]})]})}),(0,d.jsx)(f.$n,{size:"sm",variant:b?.status==="pass"?"ghost":"outline",icon:e?"progress_activity":"play_arrow",onClick:()=>w(a),disabled:e||u,className:"w-full",children:e?"Running...":b?"Re-run":"Run Test"})]})},a.id)})})]})}function u(){let[a,b]=(0,e.useState)([]),[c,g]=(0,e.useState)(!0),[i,j]=(0,e.useState)(!0);(0,e.useRef)(null);let k=async()=>{try{let a=await fetch("/api/translator/history?limit=50");if(a.ok){let c=await a.json();b(c.events||[])}}catch{}finally{g(!1)}},l=a.filter(a=>"success"===a.status).length,m=a.filter(a=>"error"===a.status).length,n=a.length>0?Math.round(a.reduce((a,b)=>a+(b.latency||0),0)/a.length):0;return(0,d.jsxs)("div",{className:"space-y-5",children:[(0,d.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3 rounded-lg bg-primary/5 border border-primary/10 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[20px] mt-0.5 shrink-0",children:"info"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium text-text-main mb-0.5",children:"Real-Time Translation Activity"}),(0,d.jsxs)("p",{children:["Shows translation events as API calls flow through OmniRoute. Events come from the in-memory buffer (resets on restart). Use"," ",(0,d.jsx)("strong",{className:"text-text-main",children:"Chat Tester"}),","," ",(0,d.jsx)("strong",{className:"text-text-main",children:"Test Bench"}),", or external API calls to generate events."]})]})]}),(0,d.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:[(0,d.jsx)(v,{icon:"translate",label:"Total Translations",value:a.length,color:"blue"}),(0,d.jsx)(v,{icon:"check_circle",label:"Successful",value:l,color:"green"}),(0,d.jsx)(v,{icon:"error",label:"Errors",value:m,color:"red"}),(0,d.jsx)(v,{icon:"speed",label:"Avg Latency",value:`${n}ms`,color:"purple"})]}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-3 flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`material-symbols-outlined text-[18px] ${i?"text-green-500 animate-pulse":"text-text-muted"}`,children:i?"radio_button_checked":"radio_button_unchecked"}),(0,d.jsx)("button",{onClick:()=>j(!i),className:"text-sm text-text-main hover:text-primary transition-colors",children:i?"Live — Auto-refreshing":"Paused"})]}),(0,d.jsxs)("button",{onClick:k,className:"flex items-center gap-1 text-xs text-text-muted hover:text-primary transition-colors",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"refresh"}),"Refresh"]})]})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-text-main mb-3",children:"Recent Translations"}),c?(0,d.jsxs)("div",{className:"flex items-center justify-center py-12 text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin mr-2",children:"progress_activity"}),"Loading..."]}):0===a.length?(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[48px] mb-3 opacity-30",children:"monitoring"}),(0,d.jsx)("p",{className:"text-sm font-medium mb-1",children:"No translations yet"}),(0,d.jsx)("p",{className:"text-xs text-center max-w-sm",children:"Translation events appear here as requests flow through OmniRoute. Use any of these methods to generate events:"}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2 mt-3 text-xs",children:[(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"Chat Tester tab"}),(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"Test Bench tab"}),(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"External API calls"}),(0,d.jsx)("span",{className:"px-2 py-1 rounded-md bg-bg-subtle border border-border",children:"IDE/CLI integrations"})]}),(0,d.jsx)("p",{className:"text-[10px] mt-3 text-text-muted/70",children:"Note: Events are stored in-memory and reset when the server restarts."})]}):(0,d.jsx)("div",{className:"overflow-x-auto",children:(0,d.jsxs)("table",{className:"w-full text-sm",children:[(0,d.jsx)("thead",{children:(0,d.jsxs)("tr",{className:"text-left text-xs text-text-muted border-b border-border",children:[(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Time"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Source"}),(0,d.jsx)("th",{className:"pb-2 pr-4"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Target"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Model"}),(0,d.jsx)("th",{className:"pb-2 pr-4",children:"Status"}),(0,d.jsx)("th",{className:"pb-2 text-right",children:"Latency"})]})}),(0,d.jsx)("tbody",{children:a.map((a,b)=>{let c=h[a.sourceFormat]||{label:a.sourceFormat||"?",color:"gray"},e=h[a.targetFormat]||{label:a.targetFormat||"?",color:"gray"};return(0,d.jsxs)("tr",{className:"border-b border-border/50 hover:bg-bg-subtle/50 transition-colors",children:[(0,d.jsx)("td",{className:"py-2 pr-4 text-xs text-text-muted whitespace-nowrap",children:a.timestamp?new Date(a.timestamp).toLocaleTimeString():"—"}),(0,d.jsx)("td",{className:"py-2 pr-4",children:(0,d.jsx)(f.Ex,{variant:"default",size:"sm",children:c.label})}),(0,d.jsx)("td",{className:"py-2 pr-4 text-text-muted",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px]",children:"arrow_forward"})}),(0,d.jsx)("td",{className:"py-2 pr-4",children:(0,d.jsx)(f.Ex,{variant:"primary",size:"sm",children:e.label})}),(0,d.jsx)("td",{className:"py-2 pr-4 text-xs font-mono text-text-muted",children:a.model||"—"}),(0,d.jsx)("td",{className:"py-2 pr-4",children:"success"===a.status?(0,d.jsx)(f.Ex,{variant:"success",size:"sm",dot:!0,children:"OK"}):(0,d.jsx)(f.Ex,{variant:"error",size:"sm",dot:!0,children:a.statusCode||"ERR"})}),(0,d.jsx)("td",{className:"py-2 text-right text-xs text-text-muted",children:a.latency?`${a.latency}ms`:"—"})]},a.id||b)})})]})})]})})]})}function v({icon:a,label:b,value:c,color:e}){return(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"p-4 flex items-center gap-3",children:[(0,d.jsx)("div",{className:`flex items-center justify-center w-10 h-10 rounded-lg bg-${e}-500/10`,children:(0,d.jsx)("span",{className:`material-symbols-outlined text-[22px] text-${e}-500`,children:a})}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"text-lg font-bold text-text-main",children:c}),(0,d.jsx)("p",{className:"text-[10px] text-text-muted uppercase tracking-wider",children:b})]})]})})}let w=[{value:"playground",label:"Playground",icon:"code"},{value:"chat-tester",label:"Chat Tester",icon:"chat"},{value:"test-bench",label:"Test Bench",icon:"science"},{value:"live-monitor",label:"Live Monitor",icon:"monitoring"}],x={playground:"Paste any API request body and see how OmniRoute translates it between provider formats (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)","chat-tester":"Send real chat requests through OmniRoute and see the full round-trip: your input, the translated request, the provider response, and the translated output","test-bench":"Define multiple test cases with different inputs and expected outputs, run them all at once, and compare results across providers and models","live-monitor":"Watch incoming requests in real-time as they flow through OmniRoute — see format translations happening live and identify issues instantly"};function y(){let[a,b]=(0,e.useState)("playground");return(0,d.jsxs)("div",{className:"p-8 space-y-6",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("h1",{className:"text-2xl font-bold text-text-main flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary text-[28px]",children:"translate"}),"Translator Playground"]}),(0,d.jsx)("p",{className:"text-sm text-text-muted mt-1",children:x[a]||"Debug, test, and visualize how OmniRoute translates API requests between providers"})]}),(0,d.jsx)(f.Iz,{options:w,value:a,onChange:b,size:"md"})]}),"playground"===a&&(0,d.jsx)(m,{}),"chat-tester"===a&&(0,d.jsx)(r,{}),"test-bench"===a&&(0,d.jsx)(t,{}),"live-monitor"===a&&(0,d.jsx)(u,{})]})}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,595,8020,9723,3994,438,2910,3596,2901,4568,4555,9824,9548],()=>b(b.s=71616));module.exports=c})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/bytes/index.js","../../../../../../node_modules/next/dist/compiled/bytes/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/interception-routes.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/dist/shared/lib/size-limit.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/2286.js","../../../../chunks/2901.js","../../../../chunks/2910.js","../../../../chunks/3596.js","../../../../chunks/3699.js","../../../../chunks/3994.js","../../../../chunks/438.js","../../../../chunks/4568.js","../../../../chunks/4741.js","../../../../chunks/5248.js","../../../../chunks/595.js","../../../../chunks/8020.js","../../../../chunks/9723.js","../../../../chunks/9824.js","../../../../chunks/9979.js","../../../../webpack-runtime.js","page_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/bytes/index.js","../../../../../../node_modules/next/dist/compiled/bytes/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/interception-routes.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/dist/shared/lib/size-limit.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/2286.js","../../../../chunks/2901.js","../../../../chunks/2910.js","../../../../chunks/3596.js","../../../../chunks/3699.js","../../../../chunks/3994.js","../../../../chunks/438.js","../../../../chunks/4555.js","../../../../chunks/4568.js","../../../../chunks/4741.js","../../../../chunks/595.js","../../../../chunks/8020.js","../../../../chunks/9548.js","../../../../chunks/9723.js","../../../../chunks/9824.js","../../../../webpack-runtime.js","page_client-reference-manifest.js"]}