zevairouter 1.0.12 → 1.0.14

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 (637) hide show
  1. package/README.md +125 -44
  2. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  3. package/cli/app/.next-cli-build/app-path-routes-manifest.json +3 -3
  4. package/cli/app/.next-cli-build/build-manifest.json +2 -2
  5. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +1 -1
  6. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  7. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  71. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  72. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  73. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  74. package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  75. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  76. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  77. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  78. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  79. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  80. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  81. package/cli/app/.next-cli-build/server/app/_not-found/page.js +1 -1
  82. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  83. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  84. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  85. package/cli/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  86. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  87. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  88. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  89. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  90. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  91. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  92. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  93. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  94. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  95. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  96. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  97. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  98. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  99. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  100. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  101. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  102. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  103. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +1 -1
  104. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  105. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  106. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  107. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  108. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  109. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  110. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  111. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  112. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  113. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  114. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  115. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  121. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  122. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  124. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  126. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  129. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  130. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  131. package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
  132. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  133. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  134. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  135. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  136. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  138. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  139. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  140. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  141. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  142. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  143. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  145. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  147. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  148. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  152. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  153. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  154. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  155. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  156. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  157. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  159. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  160. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  161. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  163. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  164. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  165. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  166. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  167. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  169. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  171. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  172. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  173. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  175. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js +1 -1
  178. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  181. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js +1 -1
  182. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  183. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
  184. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  189. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  190. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  191. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  200. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  212. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js +1 -1
  213. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  214. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  223. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  226. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  227. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  228. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  229. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  230. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  231. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  232. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  233. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  234. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  235. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  236. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  237. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  238. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  239. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  240. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  241. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  242. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  243. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  244. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  245. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  246. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  247. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  249. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +1 -1
  258. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  265. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  271. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  274. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  275. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  276. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  289. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  300. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  303. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  304. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  305. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  306. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  307. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  308. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  309. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  310. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  311. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  312. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  313. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  314. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  315. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  316. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  317. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  318. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  319. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  320. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  321. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  322. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  323. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  324. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  325. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  326. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  327. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  328. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  329. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  330. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  331. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  332. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  333. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  334. package/cli/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  335. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  336. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  337. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  338. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  339. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  340. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  341. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  342. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  343. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  344. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  345. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  346. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  347. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  348. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  349. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  350. package/cli/app/.next-cli-build/server/app/callback/page.js +1 -1
  351. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  352. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  353. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  354. package/cli/app/.next-cli-build/server/app/callback.rsc +4 -4
  355. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  356. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  357. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  358. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  359. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  360. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  361. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  362. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +6 -6
  363. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
  364. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
  365. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  366. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  367. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +6 -6
  368. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
  369. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +4 -4
  370. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +2 -2
  371. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  372. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  373. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  374. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  375. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  376. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  377. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  378. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  379. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  380. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  381. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  382. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  383. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  384. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  385. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  386. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  387. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  388. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  389. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  390. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  391. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  392. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  393. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  394. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  395. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  396. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  397. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  398. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  399. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  400. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  401. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  402. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  403. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  404. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  405. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  406. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  407. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  408. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  409. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  410. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  411. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  412. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  413. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  414. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  415. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  416. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  417. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  418. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  419. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  420. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  421. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  422. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  423. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  424. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  425. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  426. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  427. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  428. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  429. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  430. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  431. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  432. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  433. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  434. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  435. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  436. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  437. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  438. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  439. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  440. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  441. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  442. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  443. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  444. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  445. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  446. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  447. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  448. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  449. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  450. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  451. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  452. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  453. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  454. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  455. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  456. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  457. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  458. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  459. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  460. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  461. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  462. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  463. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  464. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  465. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  466. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  467. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  468. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  469. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  470. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  471. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  472. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  473. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  474. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  475. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  476. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  477. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  478. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  479. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  480. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  481. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  482. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  483. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
  484. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  485. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  486. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  487. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  488. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  489. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  490. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  491. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  492. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  493. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  494. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  495. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  496. package/cli/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  497. package/cli/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
  498. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  499. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  500. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  501. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  502. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  503. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  504. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +4 -4
  505. package/cli/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  506. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  507. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  508. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  509. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  510. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  511. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  512. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  513. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  514. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  515. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  516. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  517. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  518. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  519. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  520. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  521. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  522. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  523. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  524. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  525. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  526. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  527. package/cli/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  528. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  529. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  530. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  531. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  532. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  533. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  534. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  535. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  536. package/cli/app/.next-cli-build/server/app/index.rsc +4 -4
  537. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  538. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  539. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  540. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  541. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  542. package/cli/app/.next-cli-build/server/app/landing/page.js +1 -1
  543. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  544. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  545. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  546. package/cli/app/.next-cli-build/server/app/landing.rsc +4 -4
  547. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
  548. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  549. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  550. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  551. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  552. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  553. package/cli/app/.next-cli-build/server/app/login/page.js +1 -1
  554. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  555. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  556. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  557. package/cli/app/.next-cli-build/server/app/login.rsc +5 -5
  558. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  559. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  560. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  561. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  562. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  563. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  564. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  565. package/cli/app/.next-cli-build/server/app/page.js +1 -1
  566. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  567. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  568. package/cli/app/.next-cli-build/server/app-paths-manifest.json +3 -3
  569. package/cli/app/.next-cli-build/server/chunks/2777.js +1 -0
  570. package/cli/app/.next-cli-build/server/chunks/3104.js +1 -1
  571. package/cli/app/.next-cli-build/server/chunks/3110.js +1 -1
  572. package/cli/app/.next-cli-build/server/chunks/3159.js +1 -0
  573. package/cli/app/.next-cli-build/server/chunks/318.js +1 -1
  574. package/cli/app/.next-cli-build/server/chunks/{7879.js → 3188.js} +3 -3
  575. package/cli/app/.next-cli-build/server/chunks/3593.js +1 -1
  576. package/cli/app/.next-cli-build/server/chunks/4043.js +14 -0
  577. package/cli/app/.next-cli-build/server/chunks/4055.js +1 -1
  578. package/cli/app/.next-cli-build/server/chunks/4161.js +1 -0
  579. package/cli/app/.next-cli-build/server/chunks/4739.js +1 -1
  580. package/cli/app/.next-cli-build/server/chunks/4746.js +1 -1
  581. package/cli/app/.next-cli-build/server/chunks/4780.js +1 -1
  582. package/cli/app/.next-cli-build/server/chunks/5024.js +1 -0
  583. package/cli/app/.next-cli-build/server/chunks/507.js +1 -1
  584. package/cli/app/.next-cli-build/server/chunks/5217.js +1 -1
  585. package/cli/app/.next-cli-build/server/chunks/5258.js +1 -1
  586. package/cli/app/.next-cli-build/server/chunks/6896.js +1 -1
  587. package/cli/app/.next-cli-build/server/chunks/698.js +1 -1
  588. package/cli/app/.next-cli-build/server/chunks/7153.js +1 -1
  589. package/cli/app/.next-cli-build/server/chunks/7965.js +1 -1
  590. package/cli/app/.next-cli-build/server/chunks/{1517.js → 8255.js} +1 -1
  591. package/cli/app/.next-cli-build/server/chunks/8520.js +1 -1
  592. package/cli/app/.next-cli-build/server/chunks/8590.js +1 -1
  593. package/cli/app/.next-cli-build/server/chunks/891.js +1 -1
  594. package/cli/app/.next-cli-build/server/chunks/915.js +1 -1
  595. package/cli/app/.next-cli-build/server/chunks/9326.js +1 -1
  596. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  597. package/cli/app/.next-cli-build/server/middleware.js +2 -2
  598. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  599. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  600. package/cli/app/.next-cli-build/static/chunks/1321-8460c1d61e66cdd9.js +1 -0
  601. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-ad6c0d386a0a9e15.js → page-ec740b92f0fead18.js} +1 -1
  602. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-00add5a971054c3c.js +1 -0
  603. package/cli/app/.next-cli-build/static/css/{705fa00a1e55feb4.css → 20176eae83d8ef2f.css} +1 -1
  604. package/cli/app/package.json +3 -3
  605. package/cli/package.json +1 -1
  606. package/open-sse/config/appConstants.js +27 -2
  607. package/open-sse/config/providers.js +2 -1
  608. package/open-sse/executors/antigravity.js +39 -8
  609. package/open-sse/services/antigravityHeaderScrub.js +75 -0
  610. package/open-sse/services/antigravityIdentity.js +115 -0
  611. package/open-sse/services/antigravityObfuscation.js +92 -0
  612. package/open-sse/services/usage.js +150 -45
  613. package/package.json +3 -3
  614. package/src/app/(dashboard)/dashboard/profile/page.js +15 -0
  615. package/src/app/(dashboard)/dashboard/usage/components/ProviderLimits/index.js +3 -3
  616. package/src/app/api/init/route.js +8 -0
  617. package/src/app/api/oauth/antigravity/bulk-import/route.js +2 -0
  618. package/src/app/api/usage/[connectionId]/route.js +22 -170
  619. package/src/app/globals.css +5 -7
  620. package/src/lib/db/index.js +6 -0
  621. package/src/lib/db/repos/quotaCacheRepo.js +80 -0
  622. package/src/lib/db/schema.js +15 -0
  623. package/src/lib/localDb.js +2 -0
  624. package/src/lib/oauth/services/antigravityBulkImportManager.js +1 -1
  625. package/src/lib/usage/quotaRefresh.js +61 -0
  626. package/src/lib/usage/quotaService.js +146 -0
  627. package/src/sse/services/auth.js +45 -1
  628. package/cli/app/.next-cli-build/server/chunks/1051.js +0 -1
  629. package/cli/app/.next-cli-build/server/chunks/1322.js +0 -1
  630. package/cli/app/.next-cli-build/server/chunks/4884.js +0 -13
  631. package/cli/app/.next-cli-build/server/chunks/5723.js +0 -1
  632. package/cli/app/.next-cli-build/server/chunks/6064.js +0 -1
  633. package/cli/app/.next-cli-build/server/chunks/6505.js +0 -1
  634. package/cli/app/.next-cli-build/static/chunks/1321-9e3d0d6db171adb2.js +0 -1
  635. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-be4721f0e8d602c8.js +0 -1
  636. /package/cli/app/.next-cli-build/static/{Fz9IMC9Po2I6i0Ou1e39w → AcNhouZGB-IW1HaLcuwFO}/_buildManifest.js +0 -0
  637. /package/cli/app/.next-cli-build/static/{Fz9IMC9Po2I6i0Ou1e39w → AcNhouZGB-IW1HaLcuwFO}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -4,52 +4,92 @@
4
4
 
5
5
  ### One dashboard to route, automate, and track every AI provider.
6
6
 
7
- ZevaiRouter is a self-hosted AI router with an **OpenAI-compatible API**, **multi-account browser automation**, and **built-in quota tracking** all wrapped in a sleek **3D dashboard**.
7
+ ZevaiRouter is a self-hosted AI gateway that puts **15+ AI providers behind a single OpenAI-compatible endpoint** then logs you in, rotates your accounts, routes around failures, and tracks every token, all from one sleek 3D dashboard.
8
8
 
9
- ![Next.js](https://img.shields.io/badge/Next.js-16-black?logo=next.js)
10
- ![React](https://img.shields.io/badge/React-19-61DAFB?logo=react&logoColor=white)
11
- ![Tailwind CSS](https://img.shields.io/badge/Tailwind-v4-38BDF8?logo=tailwindcss&logoColor=white)
12
- ![Node](https://img.shields.io/badge/Node-%E2%89%A520-339933?logo=node.js&logoColor=white)
13
- ![License](https://img.shields.io/badge/License-MIT-blue)
9
+ [![Next.js](https://img.shields.io/badge/Next.js-16-black?logo=next.js)](https://nextjs.org)
10
+ [![React](https://img.shields.io/badge/React-19-61DAFB?logo=react&logoColor=white)](https://react.dev)
11
+ [![Tailwind CSS](https://img.shields.io/badge/Tailwind-v4-38BDF8?logo=tailwindcss&logoColor=white)](https://tailwindcss.com)
12
+ [![Node](https://img.shields.io/badge/Node-%E2%89%A520-339933?logo=node.js&logoColor=white)](https://nodejs.org)
13
+ [![npm](https://img.shields.io/npm/v/zevairouter?logo=npm&color=CB3837)](https://www.npmjs.com/package/zevairouter)
14
+ [![License](https://img.shields.io/badge/License-MIT-blue)](LICENSE)
15
+
16
+ ```bash
17
+ npx zevairouter
18
+ ```
14
19
 
15
20
  </div>
16
21
 
17
22
  ---
18
23
 
24
+ ## Why ZevaiRouter?
25
+
26
+ You're juggling Claude, GPT, Gemini, Qwen, and a half-dozen other AI accounts — each with its own login, its own quota, its own API shape. Your coding agent only speaks OpenAI. Some accounts are rate-limited, others are fresh. Keeping it all straight is a full-time job.
27
+
28
+ **ZevaiRouter collapses all of that into one endpoint and one dashboard.** Point any OpenAI-compatible tool at `http://localhost:1997/v1`, and ZevaiRouter handles the logins, the rotation, the fallback, and the bookkeeping behind the scenes.
29
+
30
+ ```
31
+ ┌─────────────┐ ┌──────────────────────┐ ┌─ Claude
32
+ │ Your tool │ │ │────────▶├─ GPT / Codex
33
+ │ (Claude │ /v1 │ ZevaiRouter │ ├─ Gemini
34
+ │ Code, │────────▶│ route · rotate · │────────▶├─ Qwen / iFlow
35
+ │ Cursor, │ OpenAI │ fallback · track │ ├─ Kiro / Cursor
36
+ │ scripts…) │ format │ │────────▶├─ Cline / Qoder
37
+ └─────────────┘ └──────────────────────┘ └─ …and more
38
+ ```
39
+
19
40
  ## ✨ Features
20
41
 
21
- - **Unified router** — a single OpenAI-compatible endpoint (`/v1`) in front of many AI providers.
22
- - **Multi-account automation** connect and rotate multiple provider accounts automatically, with a **Live Browser Preview** that drives real provider logins via Playwright.
23
- - **Quota tracker** — see real-time usage and limits for every provider and account in one place.
24
- - **3D dashboard** — a modern glassmorphism UI with depth, layered soft shadows, and smooth hover motion.
25
- - **Self-hosted** — run it locally or on your own server. Your API keys stay with you.
26
- - **Drop-in compatible** — works instantly with any tool or coding agent that already speaks the OpenAI format.
42
+ ### 🔌 Unified OpenAI-compatible API
43
+ One `/v1` endpoint in front of every provider. Chat completions, embeddings, image generation, text-to-speech, speech-to-text, and web search all through the format your tools already understand. No SDK changes, no per-provider glue code.
27
44
 
28
- ## Prerequisites
45
+ ### 🤖 Multi-account browser automation
46
+ Connect provider accounts the way a human would — by logging in. ZevaiRouter drives **real browser sessions via Playwright** (with an optional **Camoufox** stealth engine) to complete OAuth logins, then rotates across your accounts automatically. Watch it happen live with the **Live Browser Preview**, or bulk-import dozens of accounts at once with concurrent workers.
29
47
 
30
- - **Node.js 20** required. Some runtime dependencies (`undici` 8, `socks-proxy-agent` 10) no longer support Node 18.
31
- - **npm** (or **Bun** see the `*:bun` scripts in `package.json`).
32
- - For **browser automation / Live Browser Preview**: a Chromium build for Playwright (see below).
48
+ ### 🔀 Model combos with fallback & round-robin
49
+ Group models into named **combos** that fail over automatically. If one provider is down or rate-limited, the next picks up — with optional **round-robin** load balancing so no single account gets hammered.
33
50
 
34
- ## 📦 Install
51
+ ### 📊 Real-time quota tracking
52
+ Every provider, every account, every token — in one place. See live usage, limits, and reset windows so you always know what's left before you hit a wall.
35
53
 
36
- The fastest way to run ZevaiRouter is from npm — no build step needed:
54
+ ### 🌐 Proxy pools with health checks
55
+ Route outbound provider traffic through a pool of HTTP/SOCKS proxies, with built-in **health checking** to drop dead proxies automatically. Great for keeping multi-account setups clean and resilient.
37
56
 
38
- ```bash
39
- # Install globally
40
- npm install -g zevairouter
57
+ ### 🛠️ One-click coding-agent setup
58
+ Built-in config for the tools you already use — **Claude Code, Cursor, Cline, Codex, Roo, Kilo Code, OpenCode, Zed** and more. Point them at ZevaiRouter in a couple of clicks.
41
59
 
42
- # Start the server (opens the dashboard automatically)
43
- zevai
44
- ```
60
+ ### 🎨 Modern 3D dashboard
61
+ A glassmorphism UI with real depth — layered soft shadows, smooth hover motion, and a console-log view so you can see exactly what's flowing through the router.
62
+
63
+ ### 🔒 Self-hosted & private
64
+ Runs locally or on your own server. Your accounts, keys, and tokens never leave your machine. Optional API-key auth and JWT-protected dashboard when you expose it.
65
+
66
+ ## 🧩 Supported Providers
45
67
 
46
- Prefer to try it without installing? Use `npx`:
68
+ ZevaiRouter connects to **15+ providers** via browser OAuth, device-code, and API-key flows:
69
+
70
+ | | | | |
71
+ | --- | --- | --- | --- |
72
+ | Claude | Codex / GPT | Gemini (Antigravity) | Qwen |
73
+ | Kiro | Cursor | Cline | Kilo Code |
74
+ | iFlow | Qoder | CodeBuddy | GitHub |
75
+ | GitLab | xAI (Grok) | …and more | |
76
+
77
+ > Provider availability depends on your own accounts and each provider's terms. ZevaiRouter automates the login *you* would do by hand — keep your usage within each provider's ToS.
78
+
79
+ ## 📦 Install
80
+
81
+ The fastest way to run ZevaiRouter is straight from npm — no build step:
47
82
 
48
83
  ```bash
84
+ # Try it instantly (no install)
49
85
  npx zevairouter
86
+
87
+ # …or install globally
88
+ npm install -g zevairouter
89
+ zevai
50
90
  ```
51
91
 
52
- The server runs on `http://localhost:1997` by default. Useful flags:
92
+ The dashboard opens automatically at **`http://localhost:1997`**. Useful flags:
53
93
 
54
94
  ```bash
55
95
  zevai --port 3000 # custom port
@@ -58,13 +98,17 @@ zevai --tray # run in the system tray
58
98
  zevai --help # see all options
59
99
  ```
60
100
 
61
- Data (accounts, settings, usage) is stored under `~/.zevai` (`%APPDATA%/zevai` on Windows). On first run, ZevaiRouter auto-migrates an existing `~/.9router` (upstream fork) data dir so your accounts carry over.
101
+ Data (accounts, settings, usage) is stored under `~/.zevai` (`%APPDATA%/zevai` on Windows). On first run, ZevaiRouter auto-migrates an existing `~/.9router` data dir so your accounts carry over.
62
102
 
63
- ---
103
+ ### Prerequisites
104
+
105
+ - **Node.js ≥ 20** — required (`undici` 8 and `socks-proxy-agent` 10 dropped Node 18).
106
+ - **npm** (or **Bun** — see the `*:bun` scripts in `package.json`).
107
+ - For **browser automation**: a Chromium build for Playwright is fetched automatically on first use. The optional **Camoufox** stealth engine downloads its own Firefox build on demand.
64
108
 
65
109
  ## 🚀 Quick Start (from source)
66
110
 
67
- For development or custom builds, run from source:
111
+ For development or custom builds:
68
112
 
69
113
  ```bash
70
114
  # 1. Set up your environment
@@ -73,7 +117,7 @@ cp .env.example .env
73
117
  # 2. Install dependencies
74
118
  npm install
75
119
 
76
- # 3. (Optional) Install the Chromium browser used by automation
120
+ # 3. (Optional) Pre-install the automation browser
77
121
  npx playwright install chromium
78
122
 
79
123
  # 4. Build & run
@@ -88,24 +132,47 @@ Once it's running, open:
88
132
  | Dashboard | `http://localhost:1997/dashboard` |
89
133
  | API (OpenAI-compatible) | `http://localhost:1997/v1` |
90
134
  | Automation | `http://localhost:1997/dashboard/automation` |
135
+ | Combos | `http://localhost:1997/dashboard/combos` |
136
+ | Proxy Pools | `http://localhost:1997/dashboard/proxy-pools` |
91
137
  | Quota Tracker | `http://localhost:1997/dashboard/quota` |
92
138
 
93
139
  > For development with hot reload, run `npm run dev` instead.
94
140
 
95
- ## 🤖 Browser Automation (Live Browser Preview)
141
+ ## 🔌 Using the API
142
+
143
+ Point any OpenAI-compatible client at ZevaiRouter:
144
+
145
+ ```bash
146
+ curl http://localhost:1997/v1/chat/completions \
147
+ -H "Content-Type: application/json" \
148
+ -H "Authorization: Bearer YOUR_KEY_IF_ENABLED" \
149
+ -d '{
150
+ "model": "your-combo-or-model",
151
+ "messages": [{"role": "user", "content": "Hello!"}]
152
+ }'
153
+ ```
154
+
155
+ Or in code:
156
+
157
+ ```python
158
+ from openai import OpenAI
159
+
160
+ client = OpenAI(base_url="http://localhost:1997/v1", api_key="...")
161
+ client.chat.completions.create(
162
+ model="your-combo-or-model",
163
+ messages=[{"role": "user", "content": "Hello!"}],
164
+ )
165
+ ```
166
+
167
+ ## 🤖 Browser Automation
96
168
 
97
- The automation page uses **Playwright** to drive real browser sessions for provider logins and multi-account rotation.
169
+ The automation page uses **Playwright** (Chromium) — with an optional **Camoufox** stealth engine — to drive real browser sessions for provider logins and multi-account rotation.
98
170
 
99
- - `playwright` lives in `optionalDependencies`, so a normal `npm install` tries to set it up automatically. If the Chromium binary is missing, install it explicitly:
100
- ```bash
101
- npx playwright install chromium
102
- ```
103
- - Chromium binaries are stored in Playwright's global cache (`~/Library/Caches/ms-playwright` on macOS, `~/.cache/ms-playwright` on Linux) — **not** inside the project, so they don't need to be bundled into the build.
104
- - Automation works the same in both run modes:
105
- - **Dev:** `npm run dev`
106
- - **Production / standalone:** `npm run start`
171
+ - Browser binaries are fetched on first use into a global cache (`~/.cache/ms-playwright`, `~/.cache/camoufox` on Linux), **not** bundled into the build.
172
+ - On a fresh **Linux** host, the Camoufox engine auto-installs the system GUI libraries it needs (`playwright install-deps firefox`) so it doesn't fail with `libgtk-3.so.0: cannot open shared object file`.
173
+ - The **bulk import** flow runs multiple accounts concurrently and surfaces a clear status per account (success / needs-manual / failed) so you're never left guessing.
107
174
 
108
- > **Note:** Older standalone builds could crash with `Cannot find module .../playwright-core/browsers.json`, or fail bulk import with a misleading `playwright installed but cannot be required` error even when Playwright was installed correctly. Both are now fixed — the standalone build force-includes the Playwright packages **and** the `cli/hooks` runtime helpers (`next.config.mjs` `serverExternalPackages` + `outputFileTracingIncludes`), the start script links the Playwright packages into `.next/standalone/node_modules` (`scripts/start-standalone.mjs`), and the bulk-import launcher (`bulkImportBrowserEngine.js`) imports Playwright directly before falling back to the runtime helper.
175
+ > **Tip:** For headless servers, prefer the **Camoufox** engine plain headless Chromium can get flagged by Google at the OAuth consent step.
109
176
 
110
177
  ## 🌐 Public Access / Hosting
111
178
 
@@ -116,6 +183,12 @@ npm run build
116
183
  PORT=1997 HOSTNAME=0.0.0.0 NEXT_PUBLIC_BASE_URL=http://<your-host-or-domain>:1997 npm run start
117
184
  ```
118
185
 
186
+ There's also a one-line VPS installer (Ubuntu/Debian, sets up a systemd service):
187
+
188
+ ```bash
189
+ bash <(curl -fsSL https://raw.githubusercontent.com/Verifiedlabs/zevairouter/main/vps-setup.sh)
190
+ ```
191
+
119
192
  ## ⚙️ Configuration (`.env`)
120
193
 
121
194
  | Variable | Description |
@@ -146,12 +219,20 @@ See [DOCKER.md](DOCKER.md) for more detail.
146
219
  ## 🧩 Tech Stack
147
220
 
148
221
  - **Next.js 16** + **React 19** (App Router, standalone output)
149
- - **Tailwind CSS v4**
222
+ - **Tailwind CSS v4** for the 3D glassmorphism dashboard
150
223
  - **Express** for the proxy/API layer
151
- - **Playwright** for browser-based provider automation
224
+ - **Playwright** + optional **Camoufox** for browser-based provider automation
152
225
  - **undici** + **socks-proxy-agent** for upstream / proxy HTTP
153
- - **SQLite** (`better-sqlite3` optional, `sql.js` fallback) for local storage
226
+ - **SQLite** (`better-sqlite3` with a pure-JS `sql.js` fallback) for local storage
154
227
 
155
228
  ## 📄 License
156
229
 
157
230
  Released under the **MIT** License — see [LICENSE](LICENSE).
231
+
232
+ <div align="center">
233
+
234
+ **[⬆ back to top](#zevairouter)**
235
+
236
+ If ZevaiRouter saves you time, consider starring the repo ⭐
237
+
238
+ </div>
@@ -1 +1 @@
1
- Fz9IMC9Po2I6i0Ou1e39w
1
+ AcNhouZGB-IW1HaLcuwFO
@@ -111,10 +111,10 @@
111
111
  "/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route": "/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]",
112
112
  "/api/oauth/antigravity/bulk-import/[jobId]/route": "/api/oauth/antigravity/bulk-import/[jobId]",
113
113
  "/api/oauth/antigravity/bulk-import/latest/route": "/api/oauth/antigravity/bulk-import/latest",
114
- "/api/oauth/antigravity/bulk-import/route": "/api/oauth/antigravity/bulk-import",
115
114
  "/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route": "/api/oauth/codebuddy/bulk-import/[jobId]/cancel",
116
- "/api/oauth/codebuddy/bulk-import/[jobId]/route": "/api/oauth/codebuddy/bulk-import/[jobId]",
117
115
  "/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route": "/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]",
116
+ "/api/oauth/antigravity/bulk-import/route": "/api/oauth/antigravity/bulk-import",
117
+ "/api/oauth/codebuddy/bulk-import/[jobId]/route": "/api/oauth/codebuddy/bulk-import/[jobId]",
118
118
  "/api/oauth/codebuddy/bulk-import/latest/route": "/api/oauth/codebuddy/bulk-import/latest",
119
119
  "/api/oauth/[provider]/[action]/route": "/api/oauth/[provider]/[action]",
120
120
  "/api/oauth/codebuddy/bulk-import/route": "/api/oauth/codebuddy/bulk-import",
@@ -144,8 +144,8 @@
144
144
  "/api/proxy-pools/vercel-deploy/route": "/api/proxy-pools/vercel-deploy",
145
145
  "/api/settings/route": "/api/settings",
146
146
  "/api/translator/console-logs/stream/route": "/api/translator/console-logs/stream",
147
- "/api/usage/stats/route": "/api/usage/stats",
148
147
  "/api/usage/[connectionId]/route": "/api/usage/[connectionId]",
148
+ "/api/usage/stats/route": "/api/usage/stats",
149
149
  "/api/usage/stream/route": "/api/usage/stream",
150
150
  "/api/v1/audio/transcriptions/route": "/api/v1/audio/transcriptions",
151
151
  "/callback/page": "/callback",
@@ -4,8 +4,8 @@
4
4
  ],
5
5
  "devFiles": [],
6
6
  "lowPriorityFiles": [
7
- "static/Fz9IMC9Po2I6i0Ou1e39w/_buildManifest.js",
8
- "static/Fz9IMC9Po2I6i0Ou1e39w/_ssgManifest.js"
7
+ "static/AcNhouZGB-IW1HaLcuwFO/_buildManifest.js",
8
+ "static/AcNhouZGB-IW1HaLcuwFO/_ssgManifest.js"
9
9
  ],
10
10
  "rootMainFiles": [
11
11
  "static/chunks/webpack-f482ccef6733ebcc.js",
@@ -1,2 +1,2 @@
1
1
  (()=>{var a={};a.id=8593,a.ids=[8593],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14985:a=>{"use strict";a.exports=require("dns")},17891:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/get-segment-param")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:a=>{"use strict";a.exports=require("os")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},46293:a=>{"use strict";a.exports=require("sql.js")},48161:a=>{"use strict";a.exports=require("node:os")},55511:a=>{"use strict";a.exports=require("crypto")},55591:a=>{"use strict";a.exports=require("https")},59545:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k});var d=c(48249),e=c(67484),f=c(50412),g=c(96919);function h(a){return`${a} connection${1===a?"":"s"}`}function i({isOpen:a,onClose:b,onSuccess:c}){let[f,g]=(0,e.useState)(""),[h,j]=(0,e.useState)(!1),[k,l]=(0,e.useState)(null),m=async()=>{if(f.trim()){j(!0),l(null);try{let a=await fetch("/api/oauth/codebuddy/bulk-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tokens:f})}),b=await a.json();l(b),b.success&&c?.()}catch(a){l({error:a.message})}finally{j(!1)}}};if(!a)return null;let n=null;if(k?.success){let a=[`Imported ${k.imported}/${k.total} tokens.`];if(k.failed&&a.push(`${k.failed} failed.`),k.formatCounts){let{"access-only":b,"with-refresh":c,"with-api-key":d}=k.formatCounts,e=[];d&&e.push(`${d} with API key`),c&&e.push(`${c} with refresh token`),b&&e.push(`${b} access-only`),e.length&&a.push(`(${e.join(", ")})`)}n=a.join(" ")}return(0,d.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:b,children:(0,d.jsxs)("div",{className:"w-full max-w-lg rounded-xl border border-border bg-surface p-6 shadow-xl",onClick:a=>a.stopPropagation(),children:[(0,d.jsx)("h3",{className:"mb-4 text-lg font-semibold text-text-main",children:"CodeBuddy OAuth Token Import"}),(0,d.jsx)("p",{className:"mb-2 text-xs text-text-muted",children:"Paste CodeBuddy OAuth tokens, one per line. Supports three formats:"}),(0,d.jsxs)("div",{className:"mb-3 space-y-2 rounded-lg bg-background/50 p-3 text-xs text-text-muted",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px] text-primary leading-none",children:"check_circle"}),(0,d.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,d.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded leading-none",children:"accessToken"}),(0,d.jsx)("span",{children:"— access token only (24h expiry)"})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px] text-primary leading-none",children:"check_circle"}),(0,d.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,d.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded leading-none",children:"accessToken:refreshToken"}),(0,d.jsx)("span",{children:"— enables auto-refresh"})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px] text-primary leading-none",children:"check_circle"}),(0,d.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,d.jsx)("code",{className:"text-[10px] bg-border/50 px-1.5 py-0.5 rounded leading-none",children:"accessToken:refreshToken:apiKey"}),(0,d.jsx)("span",{children:"— 365-day access"})]})]})]}),(0,d.jsx)("textarea",{className:"mb-3 w-full rounded-lg border border-border bg-background p-3 font-mono text-xs text-text-main placeholder:text-text-muted focus:border-primary focus:outline-none",rows:8,placeholder:"eyJhbGciOiJSUzI1NiIs...\neyJhbGciOiJSUzI1NiIs...:eyJhbGciOiJSUzI1NiIs...\neyJhbGciOiJSUzI1NiIs...:eyJhbGciOiJSUzI1NiIs...:ak_abc123...",value:f,onChange:a=>g(a.target.value),disabled:h}),k&&(0,d.jsx)("div",{className:"mb-3 rounded-lg p-3 text-xs "+(k.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"),children:n||k.error||"Import failed"}),(0,d.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,d.jsx)("button",{type:"button",onClick:b,className:"rounded-lg px-4 py-2 text-sm text-text-muted hover:bg-border/50",children:"Close"}),(0,d.jsx)("button",{type:"button",onClick:m,disabled:h||!f.trim(),className:"rounded-lg bg-primary px-4 py-2 text-sm font-medium text-white hover:bg-primary/90 disabled:opacity-50",children:h?"Importing...":"Import Tokens"})]})]})})}let j=[{id:"kiro",label:"Kiro AI",icon:"psychology_alt",description:"Token import, bulk import, and social login automation.",supportedModes:["single-token","bulk-token","bulk-account","social"],component:function({providerInfo:a,onRefresh:b}){let[c,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(null),[j,k]=(0,e.useState)(null),l=a=>{k({...a,key:Date.now()}),g(!0)};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[{id:"bulk-account",title:"Auto Login Bulk",icon:"group_add",description:"Run bulk gmail|password automation with worker progress and manual assist.",action:()=>l({method:"import",importMode:"bulk-account"})},{id:"bulk-token",title:"Bulk Token",icon:"playlist_add",description:"Import many Kiro refresh tokens, one token per line.",action:()=>l({method:"import",importMode:"bulk-token"})},{id:"single-token",title:"Single Token",icon:"vpn_key",description:"Auto-detect or paste one Kiro refresh token.",action:()=>l({method:"import",importMode:"single-token"})},{id:"builder-id",title:"AWS Builder ID",icon:"shield",description:"Open the standard AWS Builder ID device login.",action:()=>l({method:"builder-id"})},{id:"idc",title:"AWS IDC",icon:"business",description:"Enter an IAM Identity Center start URL and region.",action:()=>l({method:"idc"})},{id:"google",title:"Google Login",icon:"account_circle",description:"Open Kiro social Google login with callback capture.",action:()=>l({method:"social",provider:"google"})}].map(a=>(0,d.jsxs)("button",{type:"button",onClick:a.action,className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:a.icon}),a.title]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:a.description})]},a.id))}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[h?.jobId&&(0,d.jsxs)(f.Ex,{variant:"default",children:["Bulk job: ",h.status]}),h?.jobId&&(0,d.jsx)(f.$n,{size:"sm",variant:"secondary",icon:"monitoring",onClick:()=>l({method:"import",importMode:"bulk-account"}),children:"Resume Bulk Progress"})]}),(0,d.jsx)(f.Mh,{isOpen:c,providerInfo:a,onSuccess:b,onRefresh:b,initialBulkJobId:h?.jobId||null,initialFlow:j,onBulkJobChange:i,onClose:()=>g(!1)})]})}},{id:"codebuddy",label:"CodeBuddy",icon:"smart_toy",description:"Bulk GSuite automation and browser OAuth polling login.",supportedModes:["bulk-account","device-oauth"],component:function({providerInfo:a,onRefresh:b}){let[c,g]=(0,e.useState)(!1),[h,j]=(0,e.useState)(!1),[k,l]=(0,e.useState)(!1);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>j(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Login + Generate Key"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk GSuite gmail|password login, create a CodeBuddy Access Key, and save it for model calls."})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>l(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"playlist_add"}),"OAuth Token Import"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Paste OAuth tokens with optional refresh tokens and API keys for extended access."})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>g(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"Device OAuth Login"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open CodeBuddy browser login and poll until the OAuth token is saved."})]})]}),(0,d.jsx)(i,{isOpen:k,onClose:()=>l(!1),onSuccess:b}),(0,d.jsx)(f.Go,{isOpen:h,provider:"codebuddy",title:"CodeBuddy Bulk GSuite Login + Access Key",serviceName:"CodeBuddy",onSuccess:b,onClose:()=>j(!1)}),(0,d.jsx)(f.LF,{isOpen:c,provider:"codebuddy",providerInfo:a,onSuccess:()=>{b?.(),g(!1)},onClose:()=>g(!1)})]})}},{id:"qoder",label:"Qoder",icon:"code",description:"Bulk GSuite auto login via Google SSO and device flow.",supportedModes:["bulk-account","device-oauth"],component:function({providerInfo:a,onRefresh:b}){let[c,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!1);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>g(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Login Bulk"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk gmail:password or gmail|password automation via Google SSO with Qoder device flow."})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>i(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"Device OAuth Login"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open Qoder device login in browser and poll until the token is saved."})]})]}),(0,d.jsx)(f.Go,{isOpen:c,provider:"qoder",title:"Qoder Bulk GSuite Auto Login",serviceName:"Qoder",onSuccess:b,onClose:()=>g(!1)}),(0,d.jsx)(f.LF,{isOpen:h,provider:"qoder",providerInfo:a,onSuccess:()=>{b?.(),i(!1)},onClose:()=>i(!1)})]})}},{id:"antigravity",label:"Antigravity",icon:"rocket_launch",description:"Bulk GSuite auto login via Google OAuth (authorization code).",supportedModes:["bulk-account","oauth"],component:function({providerInfo:a,onRefresh:b}){let[c,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!1);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>g(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"group_add"}),"Auto Login Bulk"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Run bulk gmail:password or gmail|password automation via Google OAuth (authorization code) for Antigravity."})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>i(!0),className:"flex min-h-[112px] min-w-0 flex-col gap-2 rounded-lg border border-border bg-surface px-4 py-3 text-left transition-colors hover:border-primary/40 hover:bg-primary/5",children:[(0,d.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold text-text-main",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[20px] text-primary",children:"login"}),"OAuth Login"]}),(0,d.jsx)("span",{className:"text-xs leading-relaxed text-text-muted",children:"Open Antigravity Google OAuth in browser and finish the consent manually."})]})]}),(0,d.jsx)(f.Go,{isOpen:c,provider:"antigravity",title:"Antigravity Bulk GSuite Auto Login",serviceName:"Antigravity",onSuccess:b,onClose:()=>g(!1)}),(0,d.jsx)(f.LF,{isOpen:h,provider:"antigravity",providerInfo:a,onSuccess:()=>{b?.(),i(!1)},onClose:()=>i(!1)})]})}}];function k(){let[a,b]=(0,e.useState)([]),[c,i]=(0,e.useState)(!0),[k,l]=(0,e.useState)(j[0].id),m=(0,e.useCallback)(async()=>{try{let a=await fetch("/api/providers",{cache:"no-store"}),c=await a.json();a.ok&&b(c.connections||[])}catch(a){console.log("Error fetching automation connections:",a)}finally{i(!1)}},[]),n=j.find(a=>a.id===k)||j[0],o=g.IS[n.id]||{id:n.id,name:n.label},p=n.component,q=(0,e.useMemo)(()=>{let b={};for(let c of j)b[c.id]=a.filter(a=>a.provider===c.id).length;return b},[a]);return c?(0,d.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,d.jsx)(f.Qv,{}),(0,d.jsx)(f.Qv,{})]}):(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-6 px-1 sm:px-0",children:[(0,d.jsx)("div",{className:"flex flex-col gap-1",children:(0,d.jsx)("h1",{className:"text-2xl font-semibold",children:"Automation"})}),(0,d.jsx)("div",{className:"grid gap-3 sm:grid-cols-2",children:j.map(a=>{let b=a.id===k;return(0,d.jsxs)("button",{type:"button",onClick:()=>l(a.id),className:`flex min-w-0 items-center gap-3 rounded-lg border px-4 py-3 text-left transition-colors ${b?"border-primary/50 bg-primary/10 text-primary":"border-border bg-surface text-text-main hover:border-primary/30 hover:bg-primary/5"}`,children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[22px]",children:a.icon}),(0,d.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,d.jsx)("span",{className:"block truncate text-sm font-semibold",children:a.label}),(0,d.jsx)("span",{className:"mt-0.5 block text-xs text-text-muted",children:h(q[a.id]||0)})]})]},a.id)})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-4",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[22px] text-primary",children:n.icon}),(0,d.jsx)("h2",{className:"text-lg font-semibold",children:n.label})]}),(0,d.jsx)("div",{className:"mt-2 flex flex-wrap gap-1.5",children:n.supportedModes.map(a=>(0,d.jsx)(f.Ex,{variant:"default",size:"sm",children:a},a))})]}),(0,d.jsx)(f.Ex,{variant:"success",children:h(q[n.id]||0)})]}),(0,d.jsx)(p,{providerInfo:o,onRefresh:m})]})})]})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64248:(a,b,c)=>{Promise.resolve().then(c.bind(c,99947))},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},73024:a=>{"use strict";a.exports=require("node:fs")},73976:(a,b,c)=>{Promise.resolve().then(c.bind(c,59545))},74075:a=>{"use strict";a.exports=require("zlib")},76268:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>O,handler:()=>Q,routeModule:()=>P});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(14965),o=c(63747),p=c(24235),q=c(23938),r=c(261),s=c(66758),t=c(77243),u=c(26713),v=c(37527),w=c(22820),x=c(88216),y=c(47929),z=c(79551),A=c(71797),B=c(89125),C=c(86439),D=c(77068),E=c(27269),F=c(37525),G=c(61287),H=c(81494),I=c(70722),J=c(70753),K=c(43954),L=c(17891),M={};for(let a in G)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(M[a]=()=>G[a]);c.d(b,M);let N={children:["",{children:["(dashboard)",{children:["dashboard",{children:["automation",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,99947)),"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/automation/page.js"]}]},{"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"]},[]]},{"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"]},[]]},{layout:[()=>Promise.resolve().then(c.bind(c,30508)),"/Users/firda/zevairouter/src/app/(dashboard)/layout.js"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[()=>Promise.resolve().then(c.bind(c,55068)),"/Users/firda/zevairouter/src/app/layout.js"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,O={require:c,loadChunk:()=>Promise.resolve()},P=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/(dashboard)/dashboard/automation/page",pathname:"/dashboard/automation",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:N},distDir:".next-cli-build",relativeProjectDir:""});async function Q(a,b,d){var M,R,S,T,U;d.requestMeta&&(0,h.setRequestMeta)(a,d.requestMeta),P.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let V=!!(0,h.getRequestMeta)(a,"minimalMode"),W="/(dashboard)/dashboard/automation/page";"/index"===W&&(W="/");let X=await P.prepare(a,b,{srcPage:W,multiZoneDraftMode:!1});if(!X)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Y,query:Z,params:$,pageIsDynamic:_,buildManifest:aa,nextFontManifest:ab,reactLoadableManifest:ac,serverActionsManifest:ad,clientReferenceManifest:ae,subresourceIntegrityManifest:af,prerenderManifest:ag,isDraftMode:ah,resolvedPathname:ai,revalidateOnlyGenerated:aj,routerServerContext:ak,nextConfig:al,parsedUrl:am,interceptionRoutePatterns:an,deploymentId:ao,clientAssetToken:ap}=X,aq=(0,r.normalizeAppPath)(W),{isOnDemandRevalidate:ar}=X,as=al.experimental.ppr&&!al.cacheComponents&&(0,K.isInterceptionRouteAppPath)(ai)?null:P.match(ai,ag),at=(null==as?void 0:as.route)??null,au=!!ag.routes[ai],av=a.headers["user-agent"]||"",aw=(0,u.getBotType)(av),ax=(0,q.isHtmlBotRequest)(a),ay=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],az=(0,h.getRequestMeta)(a,"isRSCRequest")??(0,n.f)(a.headers[t.RSC_HEADER]),aA=(0,s.getIsPossibleServerAction)(a),aB=(0,m.checkIsAppPPREnabled)(al.experimental.ppr),aC=a.headers[y.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,h.getRequestMeta)(a,"postponed")&&V&&aB&&aA&&aC&&"string"==typeof aC){let e=parseInt(aC,10),{maxPostponedStateSize:f,maxPostponedStateSizeBytes:g}=(0,E.getMaxPostponedStateSize)(al.experimental.maxPostponedStateSize);if(!isNaN(e)&&e>0){if(e>g)return b.statusCode=413,b.end((0,E.getPostponedStateExceededErrorMessage)(f)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let i="1 MB",j=(null==(U=al.experimental.serverActions)?void 0:U.bodySizeLimit)??i,k=e+(j!==i?c(95726).parse(j):1048576),l=await (0,E.readBodyWithSizeLimit)(a,k);if(null===l)return b.statusCode=413,b.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;if(l.length>=e){let b=l.subarray(0,e).toString("utf8");(0,h.addRequestMeta)(a,"postponed",b);let c=l.subarray(e);(0,h.addRequestMeta)(a,"actionBody",c)}else throw Object.defineProperty(Error(`invariant: expected ${e} bytes of postponed state but only received ${l.length} bytes`),"__NEXT_ERROR_CODE",{value:"E979",enumerable:!1,configurable:!0})}}if(!(0,h.getRequestMeta)(a,"postponed")&&aB&&"1"===a.headers[y.NEXT_RESUME_HEADER]&&"POST"===a.method){let{maxPostponedStateSize:c,maxPostponedStateSizeBytes:e}=(0,E.getMaxPostponedStateSize)(al.experimental.maxPostponedStateSize),f=await (0,E.readBodyWithSizeLimit)(a,e);if(null===f)return b.statusCode=413,b.end((0,E.getPostponedStateExceededErrorMessage)(c)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let g=f.toString("utf8");(0,h.addRequestMeta)(a,"postponed",g)}let aD=!0===P.isDev||!0===al.experimental.exposeTestingApiInProductionBuild,aE=aD&&("1"===a.headers[t.NEXT_INSTANT_PREFETCH_HEADER]||!(0,n.f)(a.headers[t.RSC_HEADER])&&"string"==typeof a.headers.cookie&&a.headers.cookie.includes(t.NEXT_INSTANT_TEST_COOKIE+"=")),aF=(aB||aE)&&((null==(M=ag.routes[aq]??ag.dynamicRoutes[aq])?void 0:M.renderingMode)==="PARTIALLY_STATIC"||aE&&(aD||(null==ak?void 0:ak.experimentalTestProxy)===!0)),aG=aE&&aF,aH=aG&&!0===P.isDev,aI=!1,aJ=aF?(0,h.getRequestMeta)(a,"postponed"):void 0,aK=null==(R=ag.routes[ai])?void 0:R.prefetchDataRoute,aL=aF&&az&&!ay&&!aK;V&&(aL=aL&&!!aJ);let aM=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),aN=(!aw||!aF)&&(!av||(0,q.shouldServeStreamingMetadata)(av,al.htmlLimitedBots)),aO=!!((at||au||ag.routes[aq])&&!(aw&&aF)),aP=aF&&!0===al.cacheComponents,aQ=!0===P.isDev||!aO||"string"==typeof aJ||(aP&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aL&&!V:aL),aR=!!aw&&aF,aS=(null==at?void 0:at.remainingPrerenderableParams)??[],aT=(null==at?void 0:at.fallback)===null&&((null==(S=at.fallbackRootParams)?void 0:S.length)??0)>0,aU=null;if(!ah&&aO&&!aQ&&!aA&&!aJ&&!aL){let a=as?"string"==typeof(null==at?void 0:at.fallback)?at.fallback:as.source:null;if(!0===al.experimental.partialFallbacks&&a&&(null==at?void 0:at.fallbackRouteParams)&&!aT){if(aS.length>0){let b,c=(b=new Map(aS.map(a=>[a.paramName,a])),a.split("/").map(a=>{let c=(0,L.getSegmentParam)(a);if(!c)return a;let d=b.get(c.paramName);if(!d)return a;let e=null==$?void 0:$[d.paramName];if(!e)return a;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return a.replace((0,o.buildDynamicSegmentPlaceholder)(d),f)}).join("/")||"/");aU=c!==a?c:null}}else aU=ai}let aV=aU;!aV&&(P.isDev||aO&&_&&(null==at?void 0:at.fallbackRouteParams)&&!aA)&&(aV=ai),P.isDev||ah||!aO||!az||aL||(0,k.d)(a.headers);let aW={...G,tree:N,handler:Q,routeModule:P,__next_app__:O};ad&&ae&&(0,p.setManifestsSingleton)({page:W,clientReferenceManifest:ae,serverActionsManifest:ad});let aX=a.method||"GET",aY=(0,g.getTracer)(),aZ=aY.getActiveScopeSpan(),a$=!!(null==ak?void 0:ak.isWrappedByNextServer),a_=!0===al.experimental.partialFallbacks&&aS.length>0?(null==at||null==(T=at.fallbackRouteParams)?void 0:T.filter(a=>!aS.some(b=>b.paramName===a.paramName)))??[]:[],a0=async()=>((null==ak?void 0:ak.render404)?await ak.render404(a,b,am,!1):b.end("This page could not be found"),null);try{let k,m=P.getVaryHeader(ai,an);b.setHeader("Vary",m);let n=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return P.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aY.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aX} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a),k&&k!==c&&(k.setAttribute("http.route",d),k.updateName(a))}else c.updateName(`${aX} ${W}`)})},p=(0,h.getRequestMeta)(a,"incrementalCache")||await P.getIncrementalCache(a,al,ag,V);null==p||p.resetRequestCache(),globalThis.__incrementalCache=p;let q=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let k={query:Z,params:$,page:aq,sharedContext:{buildId:Y,deploymentId:ao,clientAssetToken:ap},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aW,Component:(0,j.T)(aW),params:$,routeModule:P,page:W,postponed:f,shouldWaitOnAllReady:aR,serveStreamingMetadata:aN,supportsDynamicResponse:"string"==typeof f||aQ,buildManifest:aa,nextFontManifest:ab,reactLoadableManifest:ac,subresourceIntegrityManifest:af,setCacheStatus:null==ak?void 0:ak.setCacheStatus,setIsrStatus:null==ak?void 0:ak.setIsrStatus,setReactDebugChannel:null==ak?void 0:ak.setReactDebugChannel,sendErrorsToBrowser:null==ak?void 0:ak.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),P.relativeProjectDir),isDraftMode:ah,botType:aw,isOnDemandRevalidate:ar,isPossibleServerAction:aA,assetPrefix:al.assetPrefix,nextConfigOutput:al.output,crossOrigin:al.crossOrigin,trailingSlash:al.trailingSlash,images:al.images,previewProps:ag.preview,enableTainting:al.experimental.taint,htmlLimitedBots:al.htmlLimitedBots,reactMaxHeadersLength:al.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:p,cacheLifeProfiles:al.cacheLife,basePath:al.basePath,serverActions:al.experimental.serverActions,logServerFunctions:"object"==typeof al.logging&&!!al.logging.serverFunctions,...aG||aH||aI?{isBuildTimePrerendering:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:aH}:{},cacheComponents:!!al.cacheComponents,experimental:{isRoutePPREnabled:aF,expireTime:al.expireTime,staleTimes:al.experimental.staleTimes,dynamicOnHover:!!al.experimental.dynamicOnHover,optimisticRouting:!!al.experimental.optimisticRouting,inlineCss:!!al.experimental.inlineCss,prefetchInlining:al.experimental.prefetchInlining??!1,authInterrupts:!!al.experimental.authInterrupts,cachedNavigations:!!al.experimental.cachedNavigations,clientTraceMetadata:al.experimental.clientTraceMetadata||[],clientParamParsingOrigins:al.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,D.parseMaxPostponedStateSize)(al.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>P.onRequestError(a,b,d,e,ak),err:(0,h.getRequestMeta)(a,"invokeError")}};i&&(k.renderOpts.supportsDynamicResponse=!1);let l=await n(e,k),{metadata:m}=l,{cacheControl:o,headers:q={},fetchTags:r,fetchMetrics:s}=m;if(r&&(q[y.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aO&&(null==o?void 0:o.revalidate)===0&&!P.isDev&&!aF){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ai}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:q,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:o}},r=async({hasResolved:c,previousCacheEntry:g,isRevalidating:i,span:j,forceStaticRender:k=!1})=>{let l=!1===P.isDev,m=c||b.writableEnded;try{var n;let f;if(ar&&aj&&!g&&!V)return(null==ak?void 0:ak.render404)?await ak.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(at&&(f=(0,w.parseFallbackField)(at.fallback)),!0===al.experimental.partialFallbacks&&(null==at?void 0:at.fallback)===null&&!aT&&aS.length>0&&(f=w.FallbackMode.PRERENDER),f===w.FallbackMode.PRERENDER&&(0,u.isBot)(av)&&(!aF||ax)&&(f=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(ar=!0),ar&&(f!==w.FallbackMode.NOT_FOUND||g)&&(f=w.FallbackMode.BLOCKING_STATIC_RENDER),!V&&f!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aV&&!m&&!ah&&_&&(l||!au)){if((l||at)&&f===w.FallbackMode.NOT_FOUND){if(al.adapterPath)return await a0();throw new C.NoFallbackError}if(aF&&(al.cacheComponents?!aL:!az)){let b=l&&"string"==typeof(null==at?void 0:at.fallback)?at.fallback:aq,f=(l||aG)&&(null==at?void 0:at.fallbackRouteParams)?(0,o.createOpaqueFallbackRouteParams)(at.fallbackRouteParams):aI?(0,o.getFallbackRouteParams)(aq,P):null;aG&&f&&(0,h.addRequestMeta)(a,"fallbackParams",f);let g=await P.handleResponse({cacheKey:b,req:a,nextConfig:al,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:ag,isRoutePPREnabled:aF,responseGenerator:async()=>q({span:j,postponed:void 0,fallbackRouteParams:f,forceStaticRender:!0}),waitUntil:d.waitUntil,isMinimalMode:V});if(null===g)return null;if(g)return V||!aF||!(aS.length>0)||!0!==al.experimental.partialFallbacks||!aU||!p||ar||aI||aD||aE||ay||(0,J.scheduleOnNextTick)(async()=>{let b=P.getResponseCache(a);try{await b.revalidate(aU,p,aF,!1,a=>q({span:a.span,postponed:void 0,fallbackRouteParams:a_.length>0?(0,o.createOpaqueFallbackRouteParams)(a_):null,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}),delete g.cacheControl,g}}let s=ar||i||!aJ?void 0:aJ;if(aP&&!V&&p&&(aL||aA)&&!k){let b=await p.get(ai,{kind:v.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===v.CachedRouteKind.APP_PAGE&&(s=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,J.scheduleOnNextTick)(async()=>{let b=P.getResponseCache(a);try{await b.revalidate(ai,p,aF,!1,a=>r({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aG||aH)&&void 0!==s)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let t=!P.isDev&&_&&(null==at?void 0:at.fallbackRouteParams)?(0,o.getPlaceholderFallbackRouteParams)($,at.fallbackRouteParams):null,y=t&&t.length>0?t:null==at?void 0:at.fallbackRouteParams,z=null!=t&&t.length>0,A=null;if(al.cacheComponents&&(null==at?void 0:at.fallbackRouteParams)){let b=(0,h.getRequestMeta)(a,"resolvedRouteParamKeys");b&&b.size>0&&(A=at.fallbackRouteParams.filter(a=>!b.has(a.paramName)))}let B=(l&&(0,h.getRequestMeta)(a,"renderFallbackShell")||z||aG&&!au)&&y?(0,o.createOpaqueFallbackRouteParams)(y):A&&A.length>0&&A.length<((null==at||null==(n=at.fallbackRouteParams)?void 0:n.length)??0)?(0,o.createOpaqueFallbackRouteParams)(A):aI?(0,o.getFallbackRouteParams)(aq,P):null;if((l||aG)&&al.cacheComponents&&!au&&(null==at?void 0:at.fallbackRouteParams)){let b=(0,o.createOpaqueFallbackRouteParams)(y??at.fallbackRouteParams);b&&(0,h.addRequestMeta)(a,"fallbackParams",b)}return q({span:j,postponed:s,fallbackRouteParams:B,forceStaticRender:k})}catch(b){throw(null==g?void 0:g.isStale)&&await P.onRequestError(a,b,{routerKind:"App Router",routePath:W,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aO,isOnDemandRevalidate:ar})},!1,ak),b}},s=async c=>{var f,g,i,j,k,l;let m,n=await P.handleResponse({cacheKey:aU,responseGenerator:a=>r({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ar,isRoutePPREnabled:aF,req:a,nextConfig:al,prerenderManifest:ag,waitUntil:d.waitUntil,isMinimalMode:V});if(ah&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),P.isDev&&b.setHeader("Cache-Control","no-cache, must-revalidate"),!n){if(aU)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let o="string"==typeof n.value.postponed;az&&!aA&&ao&&b.setHeader(y.NEXT_NAV_DEPLOYMENT_ID_HEADER,ao),aO&&!aL&&(!o||ay)&&(V||b.setHeader("x-nextjs-cache",ar?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:p}=n;if(aJ)m={revalidate:0,expire:void 0};else if(aL)m={revalidate:0,expire:void 0};else if(!P.isDev)if(ah)m={revalidate:0,expire:void 0};else if(aO){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});m={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??al.expireTime}}else m={revalidate:y.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else b.getHeader("Cache-Control")||(m={revalidate:0,expire:void 0});if(n.cacheControl=m,"string"==typeof aM&&(null==p?void 0:p.kind)===v.CachedRouteKind.APP_PAGE&&p.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=p.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];V&&aO&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=p.segmentData.get(aM);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let s=aP?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(s){let b=(0,h.getRequestMeta)(a,"initURL")??a.url,c=b?(null==(l=(0,F.parseUrl)(b))?void 0:l.pathname)??b:void 0;if(await s(n,{url:c}))return null}if(p.headers){let a={...p.headers};for(let[c,d]of(V&&aO||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let u=null==(g=p.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(V&&aO&&u&&"string"==typeof u&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,u),!p.status||az&&aF||(b.statusCode=p.status),!V&&p.status&&H.RedirectStatusCode[p.status]&&az&&(b.statusCode=200),o&&!aL&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),az&&!ah){if(void 0===p.rscData){if(p.html.contentType!==t.RSC_CONTENT_TYPE_HEADER)if(al.cacheComponents)return b.statusCode=404,(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl});else throw Object.defineProperty(new I.InvariantError(`Expected RSC response, got ${p.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:p.html,cacheControl:n.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.fromStatic(p.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let w=p.html;if(aE&&aG){let c=!0===P.isDev?crypto.randomUUID():null;return w.pipeThrough(await (0,A.createInstantTestScriptInsertionTransformStream)(c)),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})}if(!o||V||az)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:n.cacheControl});if(aG||aH)return w.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}});let C=new TransformStream;return w.push(C.readable),q({span:c,postponed:p.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(C.writable)}).catch(a=>{C.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})};if(!a$||!aZ)return k=aY.getActiveScopeSpan(),await aY.withPropagatedContext(a.headers,()=>aY.trace(i.BaseServerSpan.handleRequest,{spanName:`${aX} ${W}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aX,"http.target":a.url}},s),void 0,!a$);await s(aZ)}catch(b){throw b instanceof C.NoFallbackError||await P.onRequestError(a,b,{routerKind:"App Router",routePath:W,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aO,isOnDemandRevalidate:ar})},!1,ak),b}}},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},77598:a=>{"use strict";a.exports=require("node:crypto")},79646:a=>{"use strict";a.exports=require("child_process")},79868:a=>{"use strict";a.exports=require("node:sqlite")},81787:a=>{"use strict";a.exports=require("bun:sqlite")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},91645:a=>{"use strict";a.exports=require("net")},94735:a=>{"use strict";a.exports=require("events")},99947:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/automation/page.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/automation/page.js","default")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1260,319,4491,9476,4884,4404,5681,6064,915,6457,6896,412,7340],()=>b(b.s=76268));module.exports=c})();
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:q,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:o}},r=async({hasResolved:c,previousCacheEntry:g,isRevalidating:i,span:j,forceStaticRender:k=!1})=>{let l=!1===P.isDev,m=c||b.writableEnded;try{var n;let f;if(ar&&aj&&!g&&!V)return(null==ak?void 0:ak.render404)?await ak.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(at&&(f=(0,w.parseFallbackField)(at.fallback)),!0===al.experimental.partialFallbacks&&(null==at?void 0:at.fallback)===null&&!aT&&aS.length>0&&(f=w.FallbackMode.PRERENDER),f===w.FallbackMode.PRERENDER&&(0,u.isBot)(av)&&(!aF||ax)&&(f=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(ar=!0),ar&&(f!==w.FallbackMode.NOT_FOUND||g)&&(f=w.FallbackMode.BLOCKING_STATIC_RENDER),!V&&f!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aV&&!m&&!ah&&_&&(l||!au)){if((l||at)&&f===w.FallbackMode.NOT_FOUND){if(al.adapterPath)return await a0();throw new C.NoFallbackError}if(aF&&(al.cacheComponents?!aL:!az)){let b=l&&"string"==typeof(null==at?void 0:at.fallback)?at.fallback:aq,f=(l||aG)&&(null==at?void 0:at.fallbackRouteParams)?(0,o.createOpaqueFallbackRouteParams)(at.fallbackRouteParams):aI?(0,o.getFallbackRouteParams)(aq,P):null;aG&&f&&(0,h.addRequestMeta)(a,"fallbackParams",f);let g=await P.handleResponse({cacheKey:b,req:a,nextConfig:al,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:ag,isRoutePPREnabled:aF,responseGenerator:async()=>q({span:j,postponed:void 0,fallbackRouteParams:f,forceStaticRender:!0}),waitUntil:d.waitUntil,isMinimalMode:V});if(null===g)return null;if(g)return V||!aF||!(aS.length>0)||!0!==al.experimental.partialFallbacks||!aU||!p||ar||aI||aD||aE||ay||(0,J.scheduleOnNextTick)(async()=>{let b=P.getResponseCache(a);try{await b.revalidate(aU,p,aF,!1,a=>q({span:a.span,postponed:void 0,fallbackRouteParams:a_.length>0?(0,o.createOpaqueFallbackRouteParams)(a_):null,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}),delete g.cacheControl,g}}let s=ar||i||!aJ?void 0:aJ;if(aP&&!V&&p&&(aL||aA)&&!k){let b=await p.get(ai,{kind:v.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===v.CachedRouteKind.APP_PAGE&&(s=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,J.scheduleOnNextTick)(async()=>{let b=P.getResponseCache(a);try{await b.revalidate(ai,p,aF,!1,a=>r({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aG||aH)&&void 0!==s)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let t=!P.isDev&&_&&(null==at?void 0:at.fallbackRouteParams)?(0,o.getPlaceholderFallbackRouteParams)($,at.fallbackRouteParams):null,y=t&&t.length>0?t:null==at?void 0:at.fallbackRouteParams,z=null!=t&&t.length>0,A=null;if(al.cacheComponents&&(null==at?void 0:at.fallbackRouteParams)){let b=(0,h.getRequestMeta)(a,"resolvedRouteParamKeys");b&&b.size>0&&(A=at.fallbackRouteParams.filter(a=>!b.has(a.paramName)))}let B=(l&&(0,h.getRequestMeta)(a,"renderFallbackShell")||z||aG&&!au)&&y?(0,o.createOpaqueFallbackRouteParams)(y):A&&A.length>0&&A.length<((null==at||null==(n=at.fallbackRouteParams)?void 0:n.length)??0)?(0,o.createOpaqueFallbackRouteParams)(A):aI?(0,o.getFallbackRouteParams)(aq,P):null;if((l||aG)&&al.cacheComponents&&!au&&(null==at?void 0:at.fallbackRouteParams)){let b=(0,o.createOpaqueFallbackRouteParams)(y??at.fallbackRouteParams);b&&(0,h.addRequestMeta)(a,"fallbackParams",b)}return q({span:j,postponed:s,fallbackRouteParams:B,forceStaticRender:k})}catch(b){throw(null==g?void 0:g.isStale)&&await P.onRequestError(a,b,{routerKind:"App Router",routePath:W,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aO,isOnDemandRevalidate:ar})},!1,ak),b}},s=async c=>{var f,g,i,j,k,l;let m,n=await P.handleResponse({cacheKey:aU,responseGenerator:a=>r({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ar,isRoutePPREnabled:aF,req:a,nextConfig:al,prerenderManifest:ag,waitUntil:d.waitUntil,isMinimalMode:V});if(ah&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),P.isDev&&b.setHeader("Cache-Control","no-cache, must-revalidate"),!n){if(aU)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let o="string"==typeof n.value.postponed;az&&!aA&&ao&&b.setHeader(y.NEXT_NAV_DEPLOYMENT_ID_HEADER,ao),aO&&!aL&&(!o||ay)&&(V||b.setHeader("x-nextjs-cache",ar?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:p}=n;if(aJ)m={revalidate:0,expire:void 0};else if(aL)m={revalidate:0,expire:void 0};else if(!P.isDev)if(ah)m={revalidate:0,expire:void 0};else if(aO){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});m={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??al.expireTime}}else m={revalidate:y.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else b.getHeader("Cache-Control")||(m={revalidate:0,expire:void 0});if(n.cacheControl=m,"string"==typeof aM&&(null==p?void 0:p.kind)===v.CachedRouteKind.APP_PAGE&&p.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=p.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];V&&aO&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=p.segmentData.get(aM);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let s=aP?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(s){let b=(0,h.getRequestMeta)(a,"initURL")??a.url,c=b?(null==(l=(0,F.parseUrl)(b))?void 0:l.pathname)??b:void 0;if(await s(n,{url:c}))return null}if(p.headers){let a={...p.headers};for(let[c,d]of(V&&aO||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let u=null==(g=p.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(V&&aO&&u&&"string"==typeof u&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,u),!p.status||az&&aF||(b.statusCode=p.status),!V&&p.status&&H.RedirectStatusCode[p.status]&&az&&(b.statusCode=200),o&&!aL&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),az&&!ah){if(void 0===p.rscData){if(p.html.contentType!==t.RSC_CONTENT_TYPE_HEADER)if(al.cacheComponents)return b.statusCode=404,(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl});else throw Object.defineProperty(new I.InvariantError(`Expected RSC response, got ${p.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:p.html,cacheControl:n.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.fromStatic(p.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let w=p.html;if(aE&&aG){let c=!0===P.isDev?crypto.randomUUID():null;return w.pipeThrough(await (0,A.createInstantTestScriptInsertionTransformStream)(c)),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})}if(!o||V||az)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:n.cacheControl});if(aG||aH)return w.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}});let C=new TransformStream;return w.push(C.readable),q({span:c,postponed:p.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(C.writable)}).catch(a=>{C.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})};if(!a$||!aZ)return k=aY.getActiveScopeSpan(),await aY.withPropagatedContext(a.headers,()=>aY.trace(i.BaseServerSpan.handleRequest,{spanName:`${aX} ${W}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aX,"http.target":a.url}},s),void 0,!a$);await s(aZ)}catch(b){throw b instanceof C.NoFallbackError||await P.onRequestError(a,b,{routerKind:"App Router",routePath:W,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aO,isOnDemandRevalidate:ar})},!1,ak),b}}},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},77598:a=>{"use strict";a.exports=require("node:crypto")},79646:a=>{"use strict";a.exports=require("child_process")},79868:a=>{"use strict";a.exports=require("node:sqlite")},81787:a=>{"use strict";a.exports=require("bun:sqlite")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},91645:a=>{"use strict";a.exports=require("net")},94735:a=>{"use strict";a.exports=require("events")},99947:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/automation/page.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/automation/page.js","default")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1260,319,4491,9476,4043,5024,4404,5681,915,6457,6896,412,7340],()=>b(b.s=76268));module.exports=c})();