@jheavenknows/bluerouter 4.0.88 → 4.0.89

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 (425) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +8 -8
  3. package/app/.next-cli-build/build-manifest.json +2 -2
  4. package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  5. package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page_client-reference-manifest.js +1 -1
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  35. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  36. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  37. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  38. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  39. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  40. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  41. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  42. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  43. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  44. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  45. package/app/.next-cli-build/server/app/_not-found.rsc +3 -3
  46. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
  47. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  48. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +3 -3
  49. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  50. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  51. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  52. package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
  53. package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
  54. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  55. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  56. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  58. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  59. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  60. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  61. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  62. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js.nft.json +1 -1
  64. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  66. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  67. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  68. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  70. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
  71. package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
  72. package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
  73. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
  74. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
  76. package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  78. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  79. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  80. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  81. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  82. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  83. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  85. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  86. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  87. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  88. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  89. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  90. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  91. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  92. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  93. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  95. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  99. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  101. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/api-key-models/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/provider-health/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  114. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  117. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  130. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  131. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  167. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  168. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  170. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  172. package/app/.next-cli-build/server/app/callback.html +1 -1
  173. package/app/.next-cli-build/server/app/callback.rsc +3 -3
  174. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
  175. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  176. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +3 -3
  177. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  178. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  179. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  180. package/app/.next-cli-build/server/app/dashboard/analytics.html +1 -1
  181. package/app/.next-cli-build/server/app/dashboard/analytics.rsc +4 -4
  182. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +1 -1
  183. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
  184. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  185. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  186. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_full.segment.rsc +4 -4
  187. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  188. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
  189. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_tree.segment.rsc +1 -1
  190. package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
  191. package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +5 -5
  192. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +2 -2
  193. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys.segment.rsc +1 -1
  194. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  195. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  196. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +5 -5
  197. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_head.segment.rsc +1 -1
  198. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_index.segment.rsc +3 -3
  199. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +1 -1
  200. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  201. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
  202. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  203. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  204. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  205. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  206. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
  207. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  208. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
  209. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  210. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  211. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
  212. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  213. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  214. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  215. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  216. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
  217. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  218. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  219. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  220. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  221. package/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
  222. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  223. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  224. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  225. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  226. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
  227. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  228. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  229. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  230. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  231. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
  232. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  233. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  234. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  235. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  236. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
  237. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  238. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  239. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  240. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  241. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
  242. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  243. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  244. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  245. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  246. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  247. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
  248. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  249. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +3 -3
  250. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  251. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  252. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
  253. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  254. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  255. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  256. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  257. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
  258. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  259. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
  260. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  261. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  262. package/app/.next-cli-build/server/app/dashboard/profile.rsc +4 -4
  263. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
  264. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  265. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  266. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  267. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +4 -4
  268. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  269. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  270. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  271. package/app/.next-cli-build/server/app/dashboard/prompt-logs.html +1 -1
  272. package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +4 -4
  273. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +1 -1
  274. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs.segment.rsc +1 -1
  275. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  276. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  277. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +4 -4
  278. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_head.segment.rsc +1 -1
  279. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_index.segment.rsc +3 -3
  280. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +1 -1
  281. package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
  282. package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +4 -4
  283. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +1 -1
  284. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health.segment.rsc +1 -1
  285. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  286. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  287. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +4 -4
  288. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_head.segment.rsc +1 -1
  289. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_index.segment.rsc +3 -3
  290. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_tree.segment.rsc +1 -1
  291. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  292. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
  293. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  294. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  295. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  296. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  297. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  298. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  299. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  300. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  301. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  302. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  303. package/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
  304. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  305. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  306. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  307. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  308. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  309. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  310. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  311. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  312. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  313. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
  314. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  315. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  316. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  317. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  318. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
  319. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  320. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
  321. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  322. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  323. package/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
  324. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  325. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  326. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  327. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  328. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  329. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  330. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
  331. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  332. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  333. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  334. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
  335. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
  336. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  337. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  338. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  339. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  340. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  341. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  342. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  343. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  344. package/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
  345. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  346. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  347. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  348. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  349. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
  350. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  351. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +3 -3
  352. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  353. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  354. package/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
  355. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  356. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  357. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  358. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  359. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  360. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  362. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  363. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  364. package/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
  365. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  366. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  367. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  368. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  369. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
  370. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  371. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  372. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  373. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  374. package/app/.next-cli-build/server/app/dashboard.rsc +5 -5
  375. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  376. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  377. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  378. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
  379. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  380. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +3 -3
  381. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  382. package/app/.next-cli-build/server/app/index.html +1 -1
  383. package/app/.next-cli-build/server/app/index.rsc +3 -3
  384. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  385. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
  386. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  387. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +3 -3
  388. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  389. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  390. package/app/.next-cli-build/server/app/landing.html +1 -1
  391. package/app/.next-cli-build/server/app/landing.rsc +3 -3
  392. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
  393. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  394. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +3 -3
  395. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  396. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  397. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  398. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  399. package/app/.next-cli-build/server/app/login.html +1 -1
  400. package/app/.next-cli-build/server/app/login.rsc +4 -4
  401. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
  402. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  403. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +3 -3
  404. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  405. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  406. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  407. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  408. package/app/.next-cli-build/server/app-paths-manifest.json +8 -8
  409. package/app/.next-cli-build/server/chunks/2338.js +1 -1
  410. package/app/.next-cli-build/server/chunks/3110.js +1 -1
  411. package/app/.next-cli-build/server/chunks/4746.js +1 -1
  412. package/app/.next-cli-build/server/chunks/6811.js +1 -1
  413. package/app/.next-cli-build/server/chunks/7130.js +1 -1
  414. package/app/.next-cli-build/server/chunks/7793.js +1 -1
  415. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  416. package/app/.next-cli-build/server/pages/404.html +1 -1
  417. package/app/.next-cli-build/server/pages/500.html +1 -1
  418. package/app/.next-cli-build/static/chunks/{620-f550454ea428726c.js → 620-6c6ec1d9932f887a.js} +1 -1
  419. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm +0 -0
  420. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal +0 -0
  421. package/app/package.json +1 -1
  422. package/package.json +1 -1
  423. /package/app/.next-cli-build/static/{TPmJtXkg-IDF1knCLe27_ → f5oUygf2ASXMODL9q68R8}/_buildManifest.js +0 -0
  424. /package/app/.next-cli-build/static/{TPmJtXkg-IDF1knCLe27_ → f5oUygf2ASXMODL9q68R8}/_ssgManifest.js +0 -0
  425. /package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-4.0.83-to-4.0.84-4.0.84-20260624-135120 → upgrade-4.0.87-to-4.0.88-4.0.88-20260624-145306}/data.sqlite +0 -0
@@ -1 +1 @@
1
- "use strict";exports.id=7793,exports.ids=[7793],exports.modules={7793:(a,b,c)=>{c.d(b,{Pt:()=>y,Tr:()=>z,c1:()=>w,kI:()=>A,vk:()=>x});var d=c(89718),e=c(57023),f=c(39326),g=c(12557),h=c(3662),i=c(75681);function j(a={},b){let c=String(b||"").toLowerCase();for(let[b,d]of Object.entries(a||{}))if(String(b).toLowerCase()===c)return String((Array.isArray(d)?d[0]||"":d||"")||"");return""}var k=c(11893),l=c(7803);let m=Promise.resolve(),n=new Map,o=0,p={claude:"Claude Code",codex:"OpenAI Codex",antigravity:"Antigravity"};function q(a){return"client_ip"===a||"client_session"===a?a:"global"}async function r(a,b={}){a?.id&&"noauth"!==a.id&&await (0,d.updateProviderConnection)(a.id,{lastUsedAt:new Date().toISOString(),...b})}function s(a,b,c){return{id:a.id,connectionId:a.id,provider:b,providerLabel:a.displayName||a.name||a.email||b,label:a.displayName||a.name||a.email||a.id,model:c||"__all",endpoint:function(a={}){let b=a.providerSpecificData||{};return a.endpoint||a.baseUrl||a.baseURL||a.base_url||b.endpoint||b.baseUrl||b.baseURL||b.base_url||b.providerUrl||b.provider_url||b.url||""}(a),tags:function(a={}){let b=a.tags||a.labels||a.providerSpecificData?.tags||a.providerSpecificData?.labels||a.providerSpecificData?.routingTags||[];return Array.isArray(b)?b.filter(Boolean).map(String):"string"==typeof b?b.split(/[;,\s]+/).filter(Boolean):b&&"object"==typeof b?Object.entries(b).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?a:`${a}:${b}`):[]}(a),providerSpecificData:a.providerSpecificData||{},maxInFlight:a.providerSpecificData?.maxInFlight||a.maxInFlight,_connection:a}}async function t(a,b){let c,d=Number.isFinite(c=Number.parseInt(b,10))&&c>0?c:1,e=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],f=e?.consecutiveUseCount||0;if(e&&e.lastUsedAt&&f<d)return await r(e,{consecutiveUseCount:(e.consecutiveUseCount||0)+1}),e;let g=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0];return await r(g,{consecutiveUseCount:1}),g}async function u({providerId:a,availableConnections:b,stickyLimit:c,stickyScope:d,stickyTtlMinutes:e,stickyContext:f,stickyRebindOnFailure:g,stickyRebindFailureThreshold:h}){let i,j,k=q(d),m="global"!==(i=q(k))&&f?.key?`${a}::${i}::${f.key}`:null;if(!m)return t(b,c);let p=Date.now();if(!(p-o<6e4))for(let[a,b]of(o=p,n.entries()))(!b?.expiresAt||b.expiresAt<=p)&&n.delete(a);let s=Date.now(),v=6e4*(!Number.isFinite(j=Number.parseInt(e,10))||j<=0?120:Math.min(j,10080)),w=n.get(m);if(w&&w.expiresAt>s){let d,e=b.find(a=>a.id===w.connectionId);if(e)return n.set(m,{...w,failureCount:0,lastUsedAt:s,expiresAt:s+v}),await r(e),e;let f=await t(b,c),i=(w.failureCount||0)+1,j=Number.isFinite(d=Number.parseInt(h,10))&&d>0?Math.min(d,50):3;return!1!==g&&i>=j&&f?.id?(n.set(m,{...w,connectionId:f.id,reboundAt:s,reboundReason:"assigned-account-unavailable",failureCount:0,lastUsedAt:s,expiresAt:s+v}),l.warn("AUTH",`${a} | sticky account unavailable ${i} time(s), rebound sticky session to ${f.id?.slice?.(0,8)||f.id}`)):(n.set(m,{...w,failureCount:i,lastFallbackConnectionId:f?.id||null,lastFallbackAt:s,lastUsedAt:s,expiresAt:s+v}),l.warn("AUTH",`${a} | sticky account unavailable, temporary fallback ${i}/${j}`)),f}w&&n.delete(m);let x=await t(b,c);return n.set(m,{connectionId:x.id,stickyScope:k,stickyKey:f.key,sessionId:f.sessionId||null,clientIp:f.clientIp||null,sourceTool:f.sourceTool||null,failureCount:0,createdAt:s,lastUsedAt:s,expiresAt:s+v}),x}async function v({providerId:a,availableConnections:b,model:c,strategy:d,providerOverride:e}){let f=b.map(b=>s(b,a,c));(0,k.OI)(f);let g=e.modelTagRules||e.modelTags||e.tagRules||{},h=e.requiredTags||e.tags||[];if(f=(0,k.OF)(f,c,g),h?.length){let a=h.map(a=>String(a).toLowerCase());f=f.filter(b=>b.tags.map(a=>String(a).toLowerCase()).every(a=>!0)&&a.every(a=>b.tags.map(a=>String(a).toLowerCase()).includes(a)))}f.length||(f=b.map(b=>s(b,a,c)));let i=("p2c"===d||"power-of-two"===d||"power_of_two"===d?(0,k.ZL)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}):(0,k.Gc)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}))[0],j=b.find(a=>a.id===i?.connectionId)||b[0];return await r(j,{consecutiveUseCount:1}),j}async function w(a,b=null,c=null,h={}){let k,n=b instanceof Set?b:b?new Set([b]):new Set,o=h?.preferredConnectionId||null,q=m;m=new Promise(a=>{k=a});try{let b;await q;let k=(0,i.rs)(a);if(i.IS[k]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[k]||{},b=await (0,f.B)({proxyPoolId:a.proxyPoolId||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:b.connectionProxyEnabled,connectionProxyUrl:b.connectionProxyUrl,connectionNoProxy:b.connectionNoProxy,connectionProxyPoolId:b.proxyPoolId||null,vercelRelayUrl:b.vercelRelayUrl||""}}}let m=String(h?.ownerUser||"").trim().toLowerCase(),r=m&&Object.prototype.hasOwnProperty.call(p,k),s=m?await (0,d.getProviderConnections)({provider:k,scope:"personal",ownerUser:m}):[],t=s.filter(a=>!1!==a.isActive);if(r&&0===t.length){let b;return l.warn("AUTH",`${a} | personal OAuth account required for owner ${m}; system fallback disabled`),b=p[k]||k,{personalAccountRequired:!0,lastErrorCode:403,lastError:`Personal ${b} account is required for ${m}. Please connect it in /dashboard/personalcloudprovider.`}}let w=r||s.length>0?[]:await (0,d.getProviderConnections)({provider:k,isActive:!0,scope:"system"}),x=new Set,y=[...t,...w].filter(a=>!(!a?.id||x.has(a.id))&&(x.add(a.id),!0));if(l.debug("AUTH",`${a} | total connections: ${y.length} (${t.length}/${s.length} personal, ${w.length} system), excludeIds: ${n.size>0?[...n].join(","):"none"}, model: ${c||"any"}`),0===y.length)return l.warn("AUTH",`No credentials for ${a}`),null;let z=await (0,d.mt)(),A=y.filter(a=>!(n.has(a.id)||(0,g.Bl)(a,c))),B=(0,e.VA)(A,{settings:z,providerId:k,model:c}),C=B.available,D=B.blocked;if(l.debug("AUTH",`${a} | available: ${C.length}/${y.length}`),y.forEach(a=>{let b=n.has(a.id),d=(0,g.Bl)(a,c);if(b||d){let e=(0,g.kJ)(a);l.debug("AUTH",` -> ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===C.length){if(void 0!==A&&void 0!==D&&A.length>0&&D.length>0){let a=(0,e.JZ)(k,A,D);return l.warn("AUTH",a.lastError),a}let b=y.filter(a=>(0,g.Bl)(a,c)),d=b.map(a=>(0,g.kJ)(a)).filter(Boolean).sort()[0]||null;if(d){let e=b[0];return l.warn("AUTH",`${a} | all ${y.length} accounts locked for ${c||"all"} (${(0,g.Qo)(d)}) | lastError=${e?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:d,retryAfterHuman:(0,g.Qo)(d),lastError:e?.lastError||null,lastErrorCode:e?.errorCode||null}}return l.warn("AUTH",`${a} | all ${y.length} accounts unavailable`),null}let E=(z.providerStrategies||{})[k]||{},F=E.fallbackStrategy||E.strategy||z.fallbackStrategy||"fill-first";if(o&&(b=C.find(a=>a.id===o))&&l.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if(["least-latency","least_latency","p2c","power-of-two","power_of_two"].includes(F))b=await v({providerId:k,availableConnections:C,model:c,strategy:F,providerOverride:E}),l.info("AUTH",`${a} | ${F} selected ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`);else if("round-robin"===F){let a=E.stickyRoundRobinLimit||z.stickyRoundRobinLimit||3,c=E.stickyScope||z.providerRoundRobinStickyScope||"global",d=E.stickyTtlMinutes||z.providerRoundRobinStickyTtlMinutes||120,e=void 0!==E.stickyFallbackToClientIp?E.stickyFallbackToClientIp:!1!==z.providerStickyFallbackToClientIp,f=void 0!==E.stickyRebindOnFailure?E.stickyRebindOnFailure:!1!==z.providerStickyRebindOnFailure,g=E.stickyRebindFailureThreshold||z.providerStickyRebindFailureThreshold||3,i=function({body:a,headers:b={},scope:c="global",fallbackToClientIp:d=!0}){if("client_ip"!==c&&"client_session"!==c)return null;let e=function(a={}){return String(j(a,"x-9r-client-ip")||j(a,"x-forwarded-for")||j(a,"x-real-ip")||j(a,"cf-connecting-ip")||"").split(",")[0].trim().replace(/^::ffff:/,"").replace(/^::1$/,"127.0.0.1")}(b),f=function(a={}){return j(a,"x-9r-source-tool")||j(a,"originator")||j(a,"copilot-integration-id")||""}(b),g="client_session"===c?String(function(a,b={}){return j(b,"x-client-session-id")||j(b,"session_id")||j(b,"session-id")||j(b,"x-session-id")||j(b,"x-interaction-id")||j(b,"conversation_id")||j(b,"conversation-id")||j(b,"x-conversation-id")||a?.conversationId||a?.conversation_id||a?.sessionId||a?.session_id||a?.metadata?.conversationId||a?.metadata?.conversation_id||a?.metadata?.sessionId||a?.metadata?.session_id||a?.conversationState?.conversationId||a?.conversationState?.sessionId||a?.conversationState?.currentConversationId||""}(a,b)||""):"";return"client_session"===c&&g?{key:[f||"tool",e||"unknown-ip",g].join("::"),label:g,scope:c,sourceTool:f,clientIp:e,sessionId:g}:"client_session"===c&&!1===d?null:e?{key:[f||"tool",e].join("::"),label:e,scope:"client_ip",sourceTool:f,clientIp:e,sessionId:""}:null}({body:h?.body||null,headers:h?.headers||{},scope:c,fallbackToClientIp:e});b=await u({providerId:k,availableConnections:C,stickyLimit:a,stickyScope:c,stickyTtlMinutes:d,stickyContext:i,stickyRebindOnFailure:f,stickyRebindFailureThreshold:g})}else b=C[0];let G=await (0,f.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:G.connectionProxyEnabled,connectionProxyUrl:G.connectionProxyUrl,connectionNoProxy:G.connectionNoProxy,connectionProxyPoolId:G.proxyPoolId||null,vercelRelayUrl:G.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{k&&k()}}async function x(a,b,c,e=null,f=null,i=null){let j,k,m;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let n=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),o=n?.backoffLevel||0;if(i&&i>Date.now()?(j=!0,k=Math.min(i-Date.now(),h.fh),m=0):{shouldFallback:j,cooldownMs:k,newBackoffLevel:m}=(0,g.hk)(b,c,o),!j)return{shouldFallback:!1,cooldownMs:0};let p="string"==typeof c?c.slice(0,100):"Provider error",q=(0,g.S5)(f,k);await (0,d.updateProviderConnection)(a,{...q,testStatus:"unavailable",lastError:p,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:m??o});let r=Object.keys(q)[0],s=n?.displayName||n?.name||n?.email||a.slice(0,8);return l.warn("AUTH",`${s} locked ${r} for ${Math.round(k/1e3)}s [${b}]`),e&&b&&p&&console.error(`X ${e} [${b}]: ${p}`),{shouldFallback:!0,cooldownMs:k}}async function y(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function z(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function A(a){return!!a&&await (0,d.ek)(a)}},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>f,error:()=>i,info:()=>g,maskKey:()=>m,request:()=>j,response:()=>k,stream:()=>l,warn:()=>h});function d(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}function e(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function f(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] 🔍 [${a}] ${b}${f}`)}}function g(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] ℹ️ [${a}] ${b}${f}`)}}function h(a,b,c){c&&e(c)}function i(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] ❌ [${a}] ${b}${f}`)}}function j(a,b,c){let f=c?` ${e(c)}`:"";console.log(`\x1b[36m[${d()}] 📥 ${a} ${b}${f}\x1b[0m`)}function k(a,b,c){let f=c?` ${e(c)}`:"";console.log(`[${d()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${f}`)}function l(a,b){let c=b?` ${e(b)}`:"";console.log(`[${d()}] 🌊 [STREAM] ${a}${c}`)}function m(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},11893:(a,b,c)=>{c.d(b,{Fg:()=>C,Gc:()=>z,OF:()=>y,OI:()=>s,ZL:()=>A,h6:()=>D,kb:()=>B});let d={maxInFlightPerTarget:Number(process.env.PROVIDER_HEALTH_MAX_IN_FLIGHT||2),failureThreshold:Number(process.env.PROVIDER_HEALTH_FAILURE_THRESHOLD||2),recoverySuccessThreshold:Number(process.env.PROVIDER_HEALTH_RECOVERY_SUCCESSES||2),degradedLatencyMs:Number(process.env.PROVIDER_HEALTH_DEGRADED_LATENCY_MS||15e3),baseCooldownMs:Number(process.env.PROVIDER_HEALTH_BASE_COOLDOWN_MS||3e4),maxCooldownMs:Number(process.env.PROVIDER_HEALTH_MAX_COOLDOWN_MS||3e5)},e=new Map,f=new Map,g=0;function h(){return Date.now()}function i(a){return String(a||"").trim()}function j(a,b){let c=Number(a);return Number.isFinite(c)&&c>0?c:b}function k(a){return"string"==typeof a?a:a&&"object"==typeof a&&(a.model||a.value||a.id)||""}function l(a){return a&&"object"==typeof a?i(a.connectionId||a.connection_id||a.accountId):""}function m(a){return"string"==typeof a?a:a&&"object"==typeof a?i(a.label||a.displayName||a.name||k(a)):""}function n(a){let b=a?.tags||a?.labels||a?.routingTags||[];return Array.isArray(b)?b.map(a=>i(a)).filter(Boolean):"string"==typeof b?b.split(/[\n,;\s]+/).map(a=>i(a)).filter(Boolean):b&&"object"==typeof b?Object.entries(b).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?i(a):`${i(a)}:${i(b)}`).filter(Boolean):[]}function o(a){let b=k(a),c=l(a);return b?c?`${c}::${b}`:b:""}function p(a={}){return i(a.endpoint||a.baseUrl||a.baseURL||a.base_url||a.providerUrl||a.provider_url||a.url)}function q(a={}){let b=o(a),c=h();return{key:b,state:"available",circuit:"closed",mode:"passive-runtime",connectionId:l(a),provider:i(a.provider),providerLabel:i(a.providerLabel||a.accountName||a.account_name||a.label),label:m(a),model:k(a),endpoint:p(a),tags:n(a),lastCheckedAt:0,lastRequestAt:0,lastOkAt:0,lastFailAt:0,latencyMs:0,avgLatencyMs:0,consecutiveFailures:0,consecutiveSuccesses:0,failures:0,successes:0,inFlight:0,halfOpenInFlight:0,cooldownUntil:0,cooldownMs:d.baseCooldownMs,modelAvailable:!0,lastError:"",updatedAt:c}}function r(a){let b=o(a);if(!b)return null;g||(g=h());let c=function(a,b={}){let c={...a||q(b)};return c.connectionId=c.connectionId||l(b),c.provider=i(b.provider)||c.provider,c.providerLabel=i(b.providerLabel||b.accountName||b.account_name||b.label)||c.providerLabel,c.label=m(b)||c.label,c.model=k(b)||c.model,c.endpoint=p(b)||c.endpoint,c.tags=n(b).length?n(b):c.tags||[],c.mode="passive-runtime",c.updatedAt=h(),c}(e.get(b),a);return e.set(b,c),f.set(b,{...f.get(b)||{},...a,key:b}),c}function s(a=[]){for(let b of a||[])r(b)}function t(){let a=h();for(let b of e.values())"open"===b.circuit&&b.cooldownUntil&&b.cooldownUntil<=a&&(b.circuit="half_open",b.halfOpenInFlight=0,b.updatedAt=a,e.set(b.key,b))}function u(a){return a?.circuit==="open"&&a.cooldownUntil>h()}function v(a){return a?.circuit==="half_open"&&(a.halfOpenInFlight||0)>0}function w(a){let b=Number(a?.maxInFlight||a?.maxInFlightPerTarget);return Number.isFinite(b)&&b>0?b:j(d.maxInFlightPerTarget,2)}function x(a){let b=o(a),c=b&&e.get(b)||q(a),d=w(a);if(u(c))return 9e3;if(v(c))return 8e3;if((c.inFlight||0)>=d)return 7e3;let f=500;return"half_open"===c.circuit&&(f-=50),"healthy"===c.state&&(f-=300),("unknown"===c.state||"available"===c.state)&&(f-=20),"degraded"===c.state&&(f+=300),"overloaded"===c.state&&(f+=700),("down"===c.state||"model_unavailable"===c.state)&&(f+=1200),f+=Math.min(c.avgLatencyMs||c.latencyMs||0,3e4)/100+150*(c.inFlight||0)+400*(c.consecutiveFailures||0)}function y(a=[],b="",c={}){let d=function(a,b={}){let c=b?.[a]||b?.[String(a||"").split("/").pop()]||[];return Array.isArray(c)?c.map(a=>i(a)).filter(Boolean):"string"==typeof c?c.split(/[\n,;]+/).map(a=>i(a)).filter(Boolean):[]}(b,c);if(!d.length)return[...a||[]];let e=d.map(a=>a.toLowerCase());return(a||[]).filter(a=>{let b=n(a).map(a=>a.toLowerCase());return e.every(a=>b.includes(a))})}function z(a=[],b={}){t();let c=[...a||[]];if(b.modelTagRules){let a=y(c,b.model,b.modelTagRules);a.length&&(c=a)}if(c.length<=1)return c;let d=[],f=[];for(let a of c){let b=e.get(o(a))||null,c=w(a);b&&(u(b)||v(b)||(b.inFlight||0)>=c||"model_unavailable"===b.state)?f.push(a):d.push(a)}if(b.preserveOrder)return d.length?b.includeSkippedAtEnd?[...d,...f]:d:c;let g=d.sort((a,b)=>x(a)-x(b));return g.length?b.includeSkippedAtEnd?[...g,...f.sort((a,b)=>x(a)-x(b))]:g:c}function A(a=[],b={}){let c=z(a,{...b,includeSkippedAtEnd:!0}),d=c.slice(0,Math.min(2,c.length));if(c.length>2){let a=c[Math.floor(Math.random()*c.length)],b=c[Math.floor(Math.random()*c.length)];if(c.length>1){let d=0;for(;b===a&&d<5;)b=c[Math.floor(Math.random()*c.length)],d+=1}let d=[a,b].filter(Boolean).sort((a,b)=>x(a)-x(b)),e=c.filter(a=>!d.includes(a));return[...d,...e]}return d}function B(a){t();let b=r(a);if(!b)return{skipped:!1,end:()=>{}};let c=w(a);if(u(b))return{skipped:!0,reason:"circuit_open",state:b};if(v(b))return{skipped:!0,reason:"half_open_probe_busy",state:b};if((b.inFlight||0)>=c)return{skipped:!0,reason:"in_flight_full",state:b};b.inFlight=(b.inFlight||0)+1,b.lastRequestAt=h(),"half_open"===b.circuit&&(b.halfOpenInFlight=(b.halfOpenInFlight||0)+1),b.updatedAt=h(),e.set(b.key,b);let d=!1;return{skipped:!1,state:b,end:()=>{if(d)return;d=!0;let a=e.get(b.key);a&&(a.inFlight=Math.max(0,(a.inFlight||0)-1),"half_open"===a.circuit&&(a.halfOpenInFlight=Math.max(0,(a.halfOpenInFlight||0)-1)),a.updatedAt=h(),e.set(a.key,a))}}}function C(a,b=null){let c;if(function(a={}){let b=Number(a?.status||a?.statusCode||0);return!!(a?.healthFailed||a?.forceFailure||a?.error||a?.exception||a?.timeout||b>=400)}(a))return D(a,function(a={}){let b=Number(a?.status||a?.statusCode||0);return a?.error?a.error:a?.exception?a.exception:a?.timeout?{message:"timeout",code:"TIMEOUT"}:b>=400?{status:b,message:a?.statusText||"request_failed"}:{message:"request_failed"}}(a));let f=r(a);if(!f)return null;let g=h();Number.isFinite(c=Number(b))&&!(c<0)&&(f.latencyMs=c,f.avgLatencyMs=f.avgLatencyMs?Math.round(.8*f.avgLatencyMs+.2*c):c),f.successes=(f.successes||0)+1,f.consecutiveSuccesses=(f.consecutiveSuccesses||0)+1,f.consecutiveFailures=0,f.lastOkAt=g,f.lastRequestAt=g,f.lastError="",f.modelAvailable=!0,f.updatedAt=g;let i=j(d.recoverySuccessThreshold,2);return"open"===f.circuit||"half_open"===f.circuit?f.consecutiveSuccesses>=i?(f.circuit="closed",f.state="healthy",f.cooldownUntil=0,f.cooldownMs=d.baseCooldownMs):(f.circuit="half_open",f.state="recovering",f.cooldownUntil=0):(f.circuit="closed",f.state="healthy",f.cooldownUntil=0),e.set(f.key,f),f}function D(a,b){let c,f,g=r(a);if(!g)return null;let i=h(),k=(c=String(b?.message||b||"").toLowerCase(),404===(f=Number(b?.status||b?.statusCode||b))||c.includes("model_not_found")||c.includes("model not found")?{state:"model_unavailable",cooldownMs:d.maxCooldownMs,error:"model_not_found"}:408===f||429===f||502===f||503===f||504===f||c.includes("timeout")||c.includes("busy")||c.includes("overload")||c.includes("queue")?{state:"overloaded",cooldownMs:d.baseCooldownMs,error:c||String(f||"overloaded")}:c.includes("econnrefused")||c.includes("enotfound")||c.includes("ehostunreach")||c.includes("fetch failed")||c.includes("network")?{state:"down",cooldownMs:d.baseCooldownMs,error:c||"network_error"}:f>=500?{state:"down",cooldownMs:d.baseCooldownMs,error:c||String(f)}:{state:"degraded",cooldownMs:d.baseCooldownMs,error:c||String(f||"provider_error")});g.failures=(g.failures||0)+1,g.consecutiveFailures=(g.consecutiveFailures||0)+1,g.consecutiveSuccesses=0,g.lastFailAt=i,g.lastRequestAt=i,g.lastError=k.error||String(b?.message||b||"request_failed"),g.updatedAt=i,g.modelAvailable="model_unavailable"!==k.state;let l=j(d.failureThreshold,2);return g.consecutiveFailures>=l?(g.state=k.state,g.circuit="open",g.cooldownMs=Math.min(Math.max(k.cooldownMs||d.baseCooldownMs,g.cooldownMs||d.baseCooldownMs),d.maxCooldownMs),g.cooldownUntil=i+g.cooldownMs):(g.state="degraded",g.circuit="closed",g.cooldownUntil=0),e.set(g.key,g),g}}};
1
+ "use strict";exports.id=7793,exports.ids=[7793],exports.modules={7793:(a,b,c)=>{c.d(b,{Pt:()=>z,Tr:()=>A,c1:()=>x,kI:()=>B,vk:()=>y});var d=c(89718),e=c(57023),f=c(39326),g=c(12557),h=c(3662),i=c(75681);function j(a={},b){let c=String(b||"").toLowerCase();for(let[b,d]of Object.entries(a||{}))if(String(b).toLowerCase()===c)return String((Array.isArray(d)?d[0]||"":d||"")||"");return""}var k=c(11893),l=c(7803);let m=Promise.resolve(),n=new Map,o=0,p={claude:"Claude Code",codex:"OpenAI Codex",antigravity:"Antigravity"};function q(a,b){let c=p[a]||a;return{personalAccountRequired:!0,lastErrorCode:403,lastError:`Personal ${c} account is required for ${b}. Please connect it in /dashboard/personalcloudprovider.`}}function r(a){return"client_ip"===a||"client_session"===a?a:"global"}async function s(a,b={}){a?.id&&"noauth"!==a.id&&await (0,d.updateProviderConnection)(a.id,{lastUsedAt:new Date().toISOString(),...b})}function t(a,b,c){return{id:a.id,connectionId:a.id,provider:b,providerLabel:a.displayName||a.name||a.email||b,label:a.displayName||a.name||a.email||a.id,model:c||"__all",endpoint:function(a={}){let b=a.providerSpecificData||{};return a.endpoint||a.baseUrl||a.baseURL||a.base_url||b.endpoint||b.baseUrl||b.baseURL||b.base_url||b.providerUrl||b.provider_url||b.url||""}(a),tags:function(a={}){let b=a.tags||a.labels||a.providerSpecificData?.tags||a.providerSpecificData?.labels||a.providerSpecificData?.routingTags||[];return Array.isArray(b)?b.filter(Boolean).map(String):"string"==typeof b?b.split(/[;,\s]+/).filter(Boolean):b&&"object"==typeof b?Object.entries(b).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?a:`${a}:${b}`):[]}(a),providerSpecificData:a.providerSpecificData||{},maxInFlight:a.providerSpecificData?.maxInFlight||a.maxInFlight,_connection:a}}async function u(a,b){let c,d=Number.isFinite(c=Number.parseInt(b,10))&&c>0?c:1,e=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],f=e?.consecutiveUseCount||0;if(e&&e.lastUsedAt&&f<d)return await s(e,{consecutiveUseCount:(e.consecutiveUseCount||0)+1}),e;let g=[...a].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0];return await s(g,{consecutiveUseCount:1}),g}async function v({providerId:a,availableConnections:b,stickyLimit:c,stickyScope:d,stickyTtlMinutes:e,stickyContext:f,stickyRebindOnFailure:g,stickyRebindFailureThreshold:h}){let i,j,k=r(d),m="global"!==(i=r(k))&&f?.key?`${a}::${i}::${f.key}`:null;if(!m)return u(b,c);let p=Date.now();if(!(p-o<6e4))for(let[a,b]of(o=p,n.entries()))(!b?.expiresAt||b.expiresAt<=p)&&n.delete(a);let q=Date.now(),t=6e4*(!Number.isFinite(j=Number.parseInt(e,10))||j<=0?120:Math.min(j,10080)),w=n.get(m);if(w&&w.expiresAt>q){let d,e=b.find(a=>a.id===w.connectionId);if(e)return n.set(m,{...w,failureCount:0,lastUsedAt:q,expiresAt:q+t}),await s(e),e;let f=await u(b,c),i=(w.failureCount||0)+1,j=Number.isFinite(d=Number.parseInt(h,10))&&d>0?Math.min(d,50):3;return!1!==g&&i>=j&&f?.id?(n.set(m,{...w,connectionId:f.id,reboundAt:q,reboundReason:"assigned-account-unavailable",failureCount:0,lastUsedAt:q,expiresAt:q+t}),l.warn("AUTH",`${a} | sticky account unavailable ${i} time(s), rebound sticky session to ${f.id?.slice?.(0,8)||f.id}`)):(n.set(m,{...w,failureCount:i,lastFallbackConnectionId:f?.id||null,lastFallbackAt:q,lastUsedAt:q,expiresAt:q+t}),l.warn("AUTH",`${a} | sticky account unavailable, temporary fallback ${i}/${j}`)),f}w&&n.delete(m);let x=await u(b,c);return n.set(m,{connectionId:x.id,stickyScope:k,stickyKey:f.key,sessionId:f.sessionId||null,clientIp:f.clientIp||null,sourceTool:f.sourceTool||null,failureCount:0,createdAt:q,lastUsedAt:q,expiresAt:q+t}),x}async function w({providerId:a,availableConnections:b,model:c,strategy:d,providerOverride:e}){let f=b.map(b=>t(b,a,c));(0,k.OI)(f);let g=e.modelTagRules||e.modelTags||e.tagRules||{},h=e.requiredTags||e.tags||[];if(f=(0,k.OF)(f,c,g),h?.length){let a=h.map(a=>String(a).toLowerCase());f=f.filter(b=>b.tags.map(a=>String(a).toLowerCase()).every(a=>!0)&&a.every(a=>b.tags.map(a=>String(a).toLowerCase()).includes(a)))}f.length||(f=b.map(b=>t(b,a,c)));let i=("p2c"===d||"power-of-two"===d||"power_of_two"===d?(0,k.ZL)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}):(0,k.Gc)(f,{model:c,modelTagRules:g,includeSkippedAtEnd:!0}))[0],j=b.find(a=>a.id===i?.connectionId)||b[0];return await s(j,{consecutiveUseCount:1}),j}async function x(a,b=null,c=null,h={}){let k,n=b instanceof Set?b:b?new Set([b]):new Set,o=h?.preferredConnectionId||null,r=m;m=new Promise(a=>{k=a});try{let b;await r;let k=(0,i.rs)(a);if(i.IS[k]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[k]||{},b=await (0,f.B)({proxyPoolId:a.proxyPoolId||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:b.connectionProxyEnabled,connectionProxyUrl:b.connectionProxyUrl,connectionNoProxy:b.connectionNoProxy,connectionProxyPoolId:b.proxyPoolId||null,vercelRelayUrl:b.vercelRelayUrl||""}}}let m=String(h?.ownerUser||"").trim().toLowerCase(),s=Object.prototype.hasOwnProperty.call(p,k),t=m&&s;if(s&&!m)return l.warn("AUTH",`${a} | personal OAuth required but API key has no owner; refusing system fallback`),q(k,"(missing api key owner)");let u=m?await (0,d.getProviderConnections)({provider:k,scope:"personal",ownerUser:m}):[],x=u.filter(a=>!1!==a.isActive);if(t&&0===x.length)return l.warn("AUTH",`${a} | personal OAuth account required for owner ${m}; system fallback disabled`),q(k,m);let y=t||u.length>0?[]:await (0,d.getProviderConnections)({provider:k,isActive:!0,scope:"system"}),z=new Set,A=[...x,...y].filter(a=>!(!a?.id||z.has(a.id))&&(z.add(a.id),!0));if(l.debug("AUTH",`${a} | total connections: ${A.length} (${x.length}/${u.length} personal, ${y.length} system), excludeIds: ${n.size>0?[...n].join(","):"none"}, model: ${c||"any"}`),0===A.length)return l.warn("AUTH",`No credentials for ${a}`),null;let B=await (0,d.mt)(),C=A.filter(a=>!(n.has(a.id)||(0,g.Bl)(a,c))),D=(0,e.VA)(C,{settings:B,providerId:k,model:c}),E=D.available,F=D.blocked;if(l.debug("AUTH",`${a} | available: ${E.length}/${A.length}`),A.forEach(a=>{let b=n.has(a.id),d=(0,g.Bl)(a,c);if(b||d){let e=(0,g.kJ)(a);l.debug("AUTH",` -> ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===E.length){if(void 0!==C&&void 0!==F&&C.length>0&&F.length>0){let a=(0,e.JZ)(k,C,F);return l.warn("AUTH",a.lastError),a}let b=A.filter(a=>(0,g.Bl)(a,c)),d=b.map(a=>(0,g.kJ)(a)).filter(Boolean).sort()[0]||null;if(d){let e=b[0];return l.warn("AUTH",`${a} | all ${A.length} accounts locked for ${c||"all"} (${(0,g.Qo)(d)}) | lastError=${e?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:d,retryAfterHuman:(0,g.Qo)(d),lastError:e?.lastError||null,lastErrorCode:e?.errorCode||null}}return l.warn("AUTH",`${a} | all ${A.length} accounts unavailable`),null}let G=(B.providerStrategies||{})[k]||{},H=G.fallbackStrategy||G.strategy||B.fallbackStrategy||"fill-first";if(o&&(b=E.find(a=>a.id===o))&&l.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if(["least-latency","least_latency","p2c","power-of-two","power_of_two"].includes(H))b=await w({providerId:k,availableConnections:E,model:c,strategy:H,providerOverride:G}),l.info("AUTH",`${a} | ${H} selected ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`);else if("round-robin"===H){let a=G.stickyRoundRobinLimit||B.stickyRoundRobinLimit||3,c=G.stickyScope||B.providerRoundRobinStickyScope||"global",d=G.stickyTtlMinutes||B.providerRoundRobinStickyTtlMinutes||120,e=void 0!==G.stickyFallbackToClientIp?G.stickyFallbackToClientIp:!1!==B.providerStickyFallbackToClientIp,f=void 0!==G.stickyRebindOnFailure?G.stickyRebindOnFailure:!1!==B.providerStickyRebindOnFailure,g=G.stickyRebindFailureThreshold||B.providerStickyRebindFailureThreshold||3,i=function({body:a,headers:b={},scope:c="global",fallbackToClientIp:d=!0}){if("client_ip"!==c&&"client_session"!==c)return null;let e=function(a={}){return String(j(a,"x-9r-client-ip")||j(a,"x-forwarded-for")||j(a,"x-real-ip")||j(a,"cf-connecting-ip")||"").split(",")[0].trim().replace(/^::ffff:/,"").replace(/^::1$/,"127.0.0.1")}(b),f=function(a={}){return j(a,"x-9r-source-tool")||j(a,"originator")||j(a,"copilot-integration-id")||""}(b),g="client_session"===c?String(function(a,b={}){return j(b,"x-client-session-id")||j(b,"session_id")||j(b,"session-id")||j(b,"x-session-id")||j(b,"x-interaction-id")||j(b,"conversation_id")||j(b,"conversation-id")||j(b,"x-conversation-id")||a?.conversationId||a?.conversation_id||a?.sessionId||a?.session_id||a?.metadata?.conversationId||a?.metadata?.conversation_id||a?.metadata?.sessionId||a?.metadata?.session_id||a?.conversationState?.conversationId||a?.conversationState?.sessionId||a?.conversationState?.currentConversationId||""}(a,b)||""):"";return"client_session"===c&&g?{key:[f||"tool",e||"unknown-ip",g].join("::"),label:g,scope:c,sourceTool:f,clientIp:e,sessionId:g}:"client_session"===c&&!1===d?null:e?{key:[f||"tool",e].join("::"),label:e,scope:"client_ip",sourceTool:f,clientIp:e,sessionId:""}:null}({body:h?.body||null,headers:h?.headers||{},scope:c,fallbackToClientIp:e});b=await v({providerId:k,availableConnections:E,stickyLimit:a,stickyScope:c,stickyTtlMinutes:d,stickyContext:i,stickyRebindOnFailure:f,stickyRebindFailureThreshold:g})}else b=E[0];let I=await (0,f.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:I.connectionProxyEnabled,connectionProxyUrl:I.connectionProxyUrl,connectionNoProxy:I.connectionNoProxy,connectionProxyPoolId:I.proxyPoolId||null,vercelRelayUrl:I.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{k&&k()}}async function y(a,b,c,e=null,f=null,i=null){let j,k,m;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let n=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),o=n?.backoffLevel||0;if(i&&i>Date.now()?(j=!0,k=Math.min(i-Date.now(),h.fh),m=0):{shouldFallback:j,cooldownMs:k,newBackoffLevel:m}=(0,g.hk)(b,c,o),!j)return{shouldFallback:!1,cooldownMs:0};let p="string"==typeof c?c.slice(0,100):"Provider error",q=(0,g.S5)(f,k);await (0,d.updateProviderConnection)(a,{...q,testStatus:"unavailable",lastError:p,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:m??o});let r=Object.keys(q)[0],s=n?.displayName||n?.name||n?.email||a.slice(0,8);return l.warn("AUTH",`${s} locked ${r} for ${Math.round(k/1e3)}s [${b}]`),e&&b&&p&&console.error(`X ${e} [${b}]: ${p}`),{shouldFallback:!0,cooldownMs:k}}async function z(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function A(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function B(a){return!!a&&await (0,d.ek)(a)}},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>f,error:()=>i,info:()=>g,maskKey:()=>m,request:()=>j,response:()=>k,stream:()=>l,warn:()=>h});function d(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}function e(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function f(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] 🔍 [${a}] ${b}${f}`)}}function g(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] ℹ️ [${a}] ${b}${f}`)}}function h(a,b,c){c&&e(c)}function i(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] ❌ [${a}] ${b}${f}`)}}function j(a,b,c){let f=c?` ${e(c)}`:"";console.log(`\x1b[36m[${d()}] 📥 ${a} ${b}${f}\x1b[0m`)}function k(a,b,c){let f=c?` ${e(c)}`:"";console.log(`[${d()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${f}`)}function l(a,b){let c=b?` ${e(b)}`:"";console.log(`[${d()}] 🌊 [STREAM] ${a}${c}`)}function m(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},11893:(a,b,c)=>{c.d(b,{Fg:()=>C,Gc:()=>z,OF:()=>y,OI:()=>s,ZL:()=>A,h6:()=>D,kb:()=>B});let d={maxInFlightPerTarget:Number(process.env.PROVIDER_HEALTH_MAX_IN_FLIGHT||2),failureThreshold:Number(process.env.PROVIDER_HEALTH_FAILURE_THRESHOLD||2),recoverySuccessThreshold:Number(process.env.PROVIDER_HEALTH_RECOVERY_SUCCESSES||2),degradedLatencyMs:Number(process.env.PROVIDER_HEALTH_DEGRADED_LATENCY_MS||15e3),baseCooldownMs:Number(process.env.PROVIDER_HEALTH_BASE_COOLDOWN_MS||3e4),maxCooldownMs:Number(process.env.PROVIDER_HEALTH_MAX_COOLDOWN_MS||3e5)},e=new Map,f=new Map,g=0;function h(){return Date.now()}function i(a){return String(a||"").trim()}function j(a,b){let c=Number(a);return Number.isFinite(c)&&c>0?c:b}function k(a){return"string"==typeof a?a:a&&"object"==typeof a&&(a.model||a.value||a.id)||""}function l(a){return a&&"object"==typeof a?i(a.connectionId||a.connection_id||a.accountId):""}function m(a){return"string"==typeof a?a:a&&"object"==typeof a?i(a.label||a.displayName||a.name||k(a)):""}function n(a){let b=a?.tags||a?.labels||a?.routingTags||[];return Array.isArray(b)?b.map(a=>i(a)).filter(Boolean):"string"==typeof b?b.split(/[\n,;\s]+/).map(a=>i(a)).filter(Boolean):b&&"object"==typeof b?Object.entries(b).filter(([,a])=>!1!==a&&null!=a).map(([a,b])=>!0===b?i(a):`${i(a)}:${i(b)}`).filter(Boolean):[]}function o(a){let b=k(a),c=l(a);return b?c?`${c}::${b}`:b:""}function p(a={}){return i(a.endpoint||a.baseUrl||a.baseURL||a.base_url||a.providerUrl||a.provider_url||a.url)}function q(a={}){let b=o(a),c=h();return{key:b,state:"available",circuit:"closed",mode:"passive-runtime",connectionId:l(a),provider:i(a.provider),providerLabel:i(a.providerLabel||a.accountName||a.account_name||a.label),label:m(a),model:k(a),endpoint:p(a),tags:n(a),lastCheckedAt:0,lastRequestAt:0,lastOkAt:0,lastFailAt:0,latencyMs:0,avgLatencyMs:0,consecutiveFailures:0,consecutiveSuccesses:0,failures:0,successes:0,inFlight:0,halfOpenInFlight:0,cooldownUntil:0,cooldownMs:d.baseCooldownMs,modelAvailable:!0,lastError:"",updatedAt:c}}function r(a){let b=o(a);if(!b)return null;g||(g=h());let c=function(a,b={}){let c={...a||q(b)};return c.connectionId=c.connectionId||l(b),c.provider=i(b.provider)||c.provider,c.providerLabel=i(b.providerLabel||b.accountName||b.account_name||b.label)||c.providerLabel,c.label=m(b)||c.label,c.model=k(b)||c.model,c.endpoint=p(b)||c.endpoint,c.tags=n(b).length?n(b):c.tags||[],c.mode="passive-runtime",c.updatedAt=h(),c}(e.get(b),a);return e.set(b,c),f.set(b,{...f.get(b)||{},...a,key:b}),c}function s(a=[]){for(let b of a||[])r(b)}function t(){let a=h();for(let b of e.values())"open"===b.circuit&&b.cooldownUntil&&b.cooldownUntil<=a&&(b.circuit="half_open",b.halfOpenInFlight=0,b.updatedAt=a,e.set(b.key,b))}function u(a){return a?.circuit==="open"&&a.cooldownUntil>h()}function v(a){return a?.circuit==="half_open"&&(a.halfOpenInFlight||0)>0}function w(a){let b=Number(a?.maxInFlight||a?.maxInFlightPerTarget);return Number.isFinite(b)&&b>0?b:j(d.maxInFlightPerTarget,2)}function x(a){let b=o(a),c=b&&e.get(b)||q(a),d=w(a);if(u(c))return 9e3;if(v(c))return 8e3;if((c.inFlight||0)>=d)return 7e3;let f=500;return"half_open"===c.circuit&&(f-=50),"healthy"===c.state&&(f-=300),("unknown"===c.state||"available"===c.state)&&(f-=20),"degraded"===c.state&&(f+=300),"overloaded"===c.state&&(f+=700),("down"===c.state||"model_unavailable"===c.state)&&(f+=1200),f+=Math.min(c.avgLatencyMs||c.latencyMs||0,3e4)/100+150*(c.inFlight||0)+400*(c.consecutiveFailures||0)}function y(a=[],b="",c={}){let d=function(a,b={}){let c=b?.[a]||b?.[String(a||"").split("/").pop()]||[];return Array.isArray(c)?c.map(a=>i(a)).filter(Boolean):"string"==typeof c?c.split(/[\n,;]+/).map(a=>i(a)).filter(Boolean):[]}(b,c);if(!d.length)return[...a||[]];let e=d.map(a=>a.toLowerCase());return(a||[]).filter(a=>{let b=n(a).map(a=>a.toLowerCase());return e.every(a=>b.includes(a))})}function z(a=[],b={}){t();let c=[...a||[]];if(b.modelTagRules){let a=y(c,b.model,b.modelTagRules);a.length&&(c=a)}if(c.length<=1)return c;let d=[],f=[];for(let a of c){let b=e.get(o(a))||null,c=w(a);b&&(u(b)||v(b)||(b.inFlight||0)>=c||"model_unavailable"===b.state)?f.push(a):d.push(a)}if(b.preserveOrder)return d.length?b.includeSkippedAtEnd?[...d,...f]:d:c;let g=d.sort((a,b)=>x(a)-x(b));return g.length?b.includeSkippedAtEnd?[...g,...f.sort((a,b)=>x(a)-x(b))]:g:c}function A(a=[],b={}){let c=z(a,{...b,includeSkippedAtEnd:!0}),d=c.slice(0,Math.min(2,c.length));if(c.length>2){let a=c[Math.floor(Math.random()*c.length)],b=c[Math.floor(Math.random()*c.length)];if(c.length>1){let d=0;for(;b===a&&d<5;)b=c[Math.floor(Math.random()*c.length)],d+=1}let d=[a,b].filter(Boolean).sort((a,b)=>x(a)-x(b)),e=c.filter(a=>!d.includes(a));return[...d,...e]}return d}function B(a){t();let b=r(a);if(!b)return{skipped:!1,end:()=>{}};let c=w(a);if(u(b))return{skipped:!0,reason:"circuit_open",state:b};if(v(b))return{skipped:!0,reason:"half_open_probe_busy",state:b};if((b.inFlight||0)>=c)return{skipped:!0,reason:"in_flight_full",state:b};b.inFlight=(b.inFlight||0)+1,b.lastRequestAt=h(),"half_open"===b.circuit&&(b.halfOpenInFlight=(b.halfOpenInFlight||0)+1),b.updatedAt=h(),e.set(b.key,b);let d=!1;return{skipped:!1,state:b,end:()=>{if(d)return;d=!0;let a=e.get(b.key);a&&(a.inFlight=Math.max(0,(a.inFlight||0)-1),"half_open"===a.circuit&&(a.halfOpenInFlight=Math.max(0,(a.halfOpenInFlight||0)-1)),a.updatedAt=h(),e.set(a.key,a))}}}function C(a,b=null){let c;if(function(a={}){let b=Number(a?.status||a?.statusCode||0);return!!(a?.healthFailed||a?.forceFailure||a?.error||a?.exception||a?.timeout||b>=400)}(a))return D(a,function(a={}){let b=Number(a?.status||a?.statusCode||0);return a?.error?a.error:a?.exception?a.exception:a?.timeout?{message:"timeout",code:"TIMEOUT"}:b>=400?{status:b,message:a?.statusText||"request_failed"}:{message:"request_failed"}}(a));let f=r(a);if(!f)return null;let g=h();Number.isFinite(c=Number(b))&&!(c<0)&&(f.latencyMs=c,f.avgLatencyMs=f.avgLatencyMs?Math.round(.8*f.avgLatencyMs+.2*c):c),f.successes=(f.successes||0)+1,f.consecutiveSuccesses=(f.consecutiveSuccesses||0)+1,f.consecutiveFailures=0,f.lastOkAt=g,f.lastRequestAt=g,f.lastError="",f.modelAvailable=!0,f.updatedAt=g;let i=j(d.recoverySuccessThreshold,2);return"open"===f.circuit||"half_open"===f.circuit?f.consecutiveSuccesses>=i?(f.circuit="closed",f.state="healthy",f.cooldownUntil=0,f.cooldownMs=d.baseCooldownMs):(f.circuit="half_open",f.state="recovering",f.cooldownUntil=0):(f.circuit="closed",f.state="healthy",f.cooldownUntil=0),e.set(f.key,f),f}function D(a,b){let c,f,g=r(a);if(!g)return null;let i=h(),k=(c=String(b?.message||b||"").toLowerCase(),404===(f=Number(b?.status||b?.statusCode||b))||c.includes("model_not_found")||c.includes("model not found")?{state:"model_unavailable",cooldownMs:d.maxCooldownMs,error:"model_not_found"}:408===f||429===f||502===f||503===f||504===f||c.includes("timeout")||c.includes("busy")||c.includes("overload")||c.includes("queue")?{state:"overloaded",cooldownMs:d.baseCooldownMs,error:c||String(f||"overloaded")}:c.includes("econnrefused")||c.includes("enotfound")||c.includes("ehostunreach")||c.includes("fetch failed")||c.includes("network")?{state:"down",cooldownMs:d.baseCooldownMs,error:c||"network_error"}:f>=500?{state:"down",cooldownMs:d.baseCooldownMs,error:c||String(f)}:{state:"degraded",cooldownMs:d.baseCooldownMs,error:c||String(f||"provider_error")});g.failures=(g.failures||0)+1,g.consecutiveFailures=(g.consecutiveFailures||0)+1,g.consecutiveSuccesses=0,g.lastFailAt=i,g.lastRequestAt=i,g.lastError=k.error||String(b?.message||b||"request_failed"),g.updatedAt=i,g.modelAvailable="model_unavailable"!==k.state;let l=j(d.failureThreshold,2);return g.consecutiveFailures>=l?(g.state=k.state,g.circuit="open",g.cooldownMs=Math.min(Math.max(k.cooldownMs||d.baseCooldownMs,g.cooldownMs||d.baseCooldownMs),d.maxCooldownMs),g.cooldownUntil=i+g.cooldownMs):(g.state="degraded",g.circuit="closed",g.cooldownUntil=0),e.set(g.key,g),g}}};
@@ -1 +1 @@
1
- globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/TPmJtXkg-IDF1knCLe27_/_buildManifest.js","static/TPmJtXkg-IDF1knCLe27_/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-a990cabb6976f421.js","static/chunks/4bd1b696-e356ca5ba0218e27.js","static/chunks/3794-e569667691edc8f7.js","static/chunks/main-app-0a27584eea53a4b0.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
1
+ globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/f5oUygf2ASXMODL9q68R8/_buildManifest.js","static/f5oUygf2ASXMODL9q68R8/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-a990cabb6976f421.js","static/chunks/4bd1b696-e356ca5ba0218e27.js","static/chunks/3794-e569667691edc8f7.js","static/chunks/main-app-0a27584eea53a4b0.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/7a3e1568f247f3d0.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/0f8c50d417580c2a.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-a990cabb6976f421.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-e569667691edc8f7.js" async=""></script><script src="/_next/static/chunks/main-app-0a27584eea53a4b0.js" async=""></script><script src="/_next/static/chunks/1a258343-bc0b514c079d8898.js" async=""></script><script src="/_next/static/chunks/1051-eec0f271123ef82f.js" async=""></script><script src="/_next/static/chunks/620-f550454ea428726c.js" async=""></script><script src="/_next/static/chunks/5497-980f8e9e024015c5.js" async=""></script><script src="/_next/static/chunks/app/(dashboard)/layout-872e9f4deabd99c8.js" async=""></script><script src="/_next/static/chunks/app/layout-09e41d62a11130d0.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><meta name="theme-color" content="#0a0a0a"/><title>AI Router Gateway - AI Infrastructure Management</title><meta name="description" content="One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="icon" href="/favicon.ico?d69b7278ea27dcf7" type="image/x-icon" sizes="32x32"/><link rel="icon" href="/favicon.svg"/><script>if(document.fonts&&document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 font-sans antialiased"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-a990cabb6976f421.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[21110,[\"3862\",\"static/chunks/1a258343-bc0b514c079d8898.js\",\"1051\",\"static/chunks/1051-eec0f271123ef82f.js\",\"620\",\"static/chunks/620-f550454ea428726c.js\",\"5497\",\"static/chunks/5497-980f8e9e024015c5.js\",\"9305\",\"static/chunks/app/(dashboard)/layout-872e9f4deabd99c8.js\"],\"ThemeProvider\"]\n3:I[94635,[\"620\",\"static/chunks/620-f550454ea428726c.js\",\"7177\",\"static/chunks/app/layout-09e41d62a11130d0.js\"],\"RuntimeI18nProvider\"]\n4:I[57121,[],\"\"]\n5:I[74581,[],\"\"]\n6:I[90484,[],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\na:I[90484,[],\"ViewportBoundary\"]\nc:I[90484,[],\"MetadataBoundary\"]\ne:I[27123,[],\"default\",1]\n:HL[\"/_next/static/css/7a3e1568f247f3d0.css\",\"style\"]\n:HL[\"/_next/static/css/0f8c50d417580c2a.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/7a3e1568f247f3d0.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/0f8c50d417580c2a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"if(document.fonts\u0026\u0026document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}\"}}]}],[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 font-sans antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,\"$@9\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"TPmJtXkg-IDF1knCLe27_\"}\n"])</script><script>self.__next_f.push([1,"f:[]\n9:\"$Wf\"\n"])</script><script>self.__next_f.push([1,"b:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a0a\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[86869,[],\"IconMark\"]\n8:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"AI Router Gateway - AI Infrastructure Management\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?d69b7278ea27dcf7\",\"type\":\"image/x-icon\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L10\",\"5\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/7a3e1568f247f3d0.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/0f8c50d417580c2a.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-a990cabb6976f421.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-e569667691edc8f7.js" async=""></script><script src="/_next/static/chunks/main-app-0a27584eea53a4b0.js" async=""></script><script src="/_next/static/chunks/1a258343-bc0b514c079d8898.js" async=""></script><script src="/_next/static/chunks/1051-eec0f271123ef82f.js" async=""></script><script src="/_next/static/chunks/620-6c6ec1d9932f887a.js" async=""></script><script src="/_next/static/chunks/5497-980f8e9e024015c5.js" async=""></script><script src="/_next/static/chunks/app/(dashboard)/layout-872e9f4deabd99c8.js" async=""></script><script src="/_next/static/chunks/app/layout-09e41d62a11130d0.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><meta name="theme-color" content="#0a0a0a"/><title>AI Router Gateway - AI Infrastructure Management</title><meta name="description" content="One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="icon" href="/favicon.ico?d69b7278ea27dcf7" type="image/x-icon" sizes="32x32"/><link rel="icon" href="/favicon.svg"/><script>if(document.fonts&&document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 font-sans antialiased"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-a990cabb6976f421.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[21110,[\"3862\",\"static/chunks/1a258343-bc0b514c079d8898.js\",\"1051\",\"static/chunks/1051-eec0f271123ef82f.js\",\"620\",\"static/chunks/620-6c6ec1d9932f887a.js\",\"5497\",\"static/chunks/5497-980f8e9e024015c5.js\",\"9305\",\"static/chunks/app/(dashboard)/layout-872e9f4deabd99c8.js\"],\"ThemeProvider\"]\n3:I[94635,[\"620\",\"static/chunks/620-6c6ec1d9932f887a.js\",\"7177\",\"static/chunks/app/layout-09e41d62a11130d0.js\"],\"RuntimeI18nProvider\"]\n4:I[57121,[],\"\"]\n5:I[74581,[],\"\"]\n6:I[90484,[],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\na:I[90484,[],\"ViewportBoundary\"]\nc:I[90484,[],\"MetadataBoundary\"]\ne:I[27123,[],\"default\",1]\n:HL[\"/_next/static/css/7a3e1568f247f3d0.css\",\"style\"]\n:HL[\"/_next/static/css/0f8c50d417580c2a.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/7a3e1568f247f3d0.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/0f8c50d417580c2a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"if(document.fonts\u0026\u0026document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}\"}}]}],[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 font-sans antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,\"$@9\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"f5oUygf2ASXMODL9q68R8\"}\n"])</script><script>self.__next_f.push([1,"f:[]\n9:\"$Wf\"\n"])</script><script>self.__next_f.push([1,"b:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a0a\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[86869,[],\"IconMark\"]\n8:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"AI Router Gateway - AI Infrastructure Management\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?d69b7278ea27dcf7\",\"type\":\"image/x-icon\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L10\",\"5\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-a990cabb6976f421.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-e569667691edc8f7.js" async=""></script><script src="/_next/static/chunks/main-app-0a27584eea53a4b0.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-a990cabb6976f421.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[27123,[],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"TPmJtXkg-IDF1knCLe27_\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-a990cabb6976f421.js"/><script src="/_next/static/chunks/4bd1b696-e356ca5ba0218e27.js" async=""></script><script src="/_next/static/chunks/3794-e569667691edc8f7.js" async=""></script><script src="/_next/static/chunks/main-app-0a27584eea53a4b0.js" async=""></script><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-a990cabb6976f421.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[74581,[],\"\"]\n4:I[90484,[],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[90484,[],\"ViewportBoundary\"]\na:I[90484,[],\"MetadataBoundary\"]\nc:I[27123,[],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"f5oUygf2ASXMODL9q68R8\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>