@rsalmn/extremerouter 0.8.2 → 0.8.3

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 (855) hide show
  1. package/README.md +89 -89
  2. package/app/.next-cli-build/BUILD_ID +1 -1
  3. package/app/.next-cli-build/app-path-routes-manifest.json +9 -9
  4. package/app/.next-cli-build/build-manifest.json +4 -4
  5. package/app/.next-cli-build/prerender-manifest.json +3 -3
  6. package/app/.next-cli-build/react-loadable-manifest.json +1 -13
  7. package/app/.next-cli-build/required-server-files.json +23 -23
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/alerts/page.js +2 -2
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/alerts/page.js.nft.json +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/alerts/page_client-reference-manifest.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +3 -3
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/health/page.js +2 -2
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/overview/page.js +2 -2
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/overview/page.js.nft.json +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/overview/page_client-reference-manifest.js +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +2 -2
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  75. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  76. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  77. package/app/.next-cli-build/server/app/(dashboard)/dashboard/swarm/page.js +2 -2
  78. package/app/.next-cli-build/server/app/(dashboard)/dashboard/swarm/page.js.nft.json +1 -1
  79. package/app/.next-cli-build/server/app/(dashboard)/dashboard/swarm/page_client-reference-manifest.js +1 -1
  80. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  81. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  82. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  83. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  84. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  85. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  86. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  87. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  88. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  89. package/app/.next-cli-build/server/app/_global-error/page.js +3 -3
  90. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  91. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  92. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  93. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  94. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  95. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  96. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  97. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  98. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  99. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  100. package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  101. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  103. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  104. package/app/.next-cli-build/server/app/_not-found.rsc +7 -6
  105. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +7 -6
  106. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  107. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +6 -6
  108. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  109. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  110. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +3 -2
  111. package/app/.next-cli-build/server/app/api/alerts/test/route.js +2 -2
  112. package/app/.next-cli-build/server/app/api/alerts/test/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/alerts/test/route_client-reference-manifest.js +1 -1
  114. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  115. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  117. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  118. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  120. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  121. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route_client-reference-manifest.js +1 -1
  123. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  124. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/auth/oidc/start/route_client-reference-manifest.js +1 -1
  126. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  127. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/auth/oidc/test/route_client-reference-manifest.js +1 -1
  129. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
  130. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/auth/reset-password/route_client-reference-manifest.js +1 -1
  132. package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  133. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  135. package/app/.next-cli-build/server/app/api/breaker/route.js +1 -1
  136. package/app/.next-cli-build/server/app/api/breaker/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/breaker/route_client-reference-manifest.js +1 -1
  138. package/app/.next-cli-build/server/app/api/cache/route.js +1 -1
  139. package/app/.next-cli-build/server/app/api/cache/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/cache/route_client-reference-manifest.js +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  142. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route_client-reference-manifest.js +1 -1
  144. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  145. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  148. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  150. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  151. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  153. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  154. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  156. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  157. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  159. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  160. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +1 -1
  162. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  163. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route_client-reference-manifest.js +1 -1
  165. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  166. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route_client-reference-manifest.js +1 -1
  168. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  169. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route_client-reference-manifest.js +1 -1
  171. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
  172. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route_client-reference-manifest.js +1 -1
  174. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  175. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  177. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
  178. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route_client-reference-manifest.js +1 -1
  180. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  181. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route_client-reference-manifest.js +1 -1
  183. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  184. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  186. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  187. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  189. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  190. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route_client-reference-manifest.js +1 -1
  192. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  195. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  196. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  197. package/app/.next-cli-build/server/app/api/combos/route_client-reference-manifest.js +1 -1
  198. package/app/.next-cli-build/server/app/api/combos/validate-roles/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/combos/validate-roles/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/combos/validate-roles/route_client-reference-manifest.js +1 -1
  201. package/app/.next-cli-build/server/app/api/dashboard/stream/route.js +2 -2
  202. package/app/.next-cli-build/server/app/api/dashboard/stream/route.js.nft.json +1 -1
  203. package/app/.next-cli-build/server/app/api/dashboard/stream/route_client-reference-manifest.js +1 -1
  204. package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  205. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/headroom/start/route_client-reference-manifest.js +1 -1
  207. package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  208. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  209. package/app/.next-cli-build/server/app/api/headroom/status/route_client-reference-manifest.js +1 -1
  210. package/app/.next-cli-build/server/app/api/headroom/stop/route.js +2 -2
  211. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/headroom/stop/route_client-reference-manifest.js +1 -1
  213. package/app/.next-cli-build/server/app/api/health/providers/route.js +1 -1
  214. package/app/.next-cli-build/server/app/api/health/providers/route.js.nft.json +1 -1
  215. package/app/.next-cli-build/server/app/api/health/providers/route_client-reference-manifest.js +1 -1
  216. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  217. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/health/route_client-reference-manifest.js +1 -1
  219. package/app/.next-cli-build/server/app/api/health/stream/route.js +2 -2
  220. package/app/.next-cli-build/server/app/api/health/stream/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/health/stream/route_client-reference-manifest.js +1 -1
  222. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  223. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +1 -1
  225. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  226. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  227. package/app/.next-cli-build/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  228. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/keys/route_client-reference-manifest.js +1 -1
  231. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  232. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  233. package/app/.next-cli-build/server/app/api/locale/route_client-reference-manifest.js +1 -1
  234. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  235. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  236. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route_client-reference-manifest.js +1 -1
  237. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  238. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  239. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route_client-reference-manifest.js +1 -1
  240. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  241. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  242. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route_client-reference-manifest.js +1 -1
  243. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  244. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route_client-reference-manifest.js +1 -1
  246. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  247. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route_client-reference-manifest.js +1 -1
  249. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  250. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  251. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route_client-reference-manifest.js +1 -1
  252. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  253. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route_client-reference-manifest.js +1 -1
  255. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  256. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  257. package/app/.next-cli-build/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  258. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  259. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  261. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  262. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  263. package/app/.next-cli-build/server/app/api/models/custom/route_client-reference-manifest.js +1 -1
  264. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  265. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/models/disabled/route_client-reference-manifest.js +1 -1
  267. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  268. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  269. package/app/.next-cli-build/server/app/api/models/route_client-reference-manifest.js +1 -1
  270. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  271. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/models/test/route_client-reference-manifest.js +1 -1
  273. package/app/.next-cli-build/server/app/api/oauth/1min/import/route.js +1 -1
  274. package/app/.next-cli-build/server/app/api/oauth/1min/import/route.js.nft.json +1 -1
  275. package/app/.next-cli-build/server/app/api/oauth/1min/import/route_client-reference-manifest.js +1 -1
  276. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  277. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  279. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  280. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  281. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route_client-reference-manifest.js +1 -1
  282. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  283. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route_client-reference-manifest.js +1 -1
  285. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  286. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  287. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  288. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  289. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  290. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  291. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  292. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  293. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route_client-reference-manifest.js +1 -1
  294. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  295. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route_client-reference-manifest.js +1 -1
  297. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  298. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  299. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route_client-reference-manifest.js +1 -1
  300. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  301. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  303. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  304. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  305. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  306. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  307. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  308. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route_client-reference-manifest.js +1 -1
  309. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  310. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  311. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  312. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  313. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  314. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  315. package/app/.next-cli-build/server/app/api/oauth/qwen/import/route.js +1 -1
  316. package/app/.next-cli-build/server/app/api/oauth/qwen/import/route.js.nft.json +1 -1
  317. package/app/.next-cli-build/server/app/api/oauth/qwen/import/route_client-reference-manifest.js +1 -1
  318. package/app/.next-cli-build/server/app/api/oauth/wp-studio/import/route.js +1 -1
  319. package/app/.next-cli-build/server/app/api/oauth/wp-studio/import/route.js.nft.json +1 -1
  320. package/app/.next-cli-build/server/app/api/oauth/wp-studio/import/route_client-reference-manifest.js +1 -1
  321. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js +38 -2
  322. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js.nft.json +1 -1
  323. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route_client-reference-manifest.js +1 -1
  324. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js +1 -1
  325. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js.nft.json +1 -1
  326. package/app/.next-cli-build/server/app/api/oauth/zed/import/route_client-reference-manifest.js +1 -1
  327. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  328. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  329. package/app/.next-cli-build/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  330. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  331. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  332. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  333. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  334. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  335. package/app/.next-cli-build/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  336. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  337. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  338. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  339. package/app/.next-cli-build/server/app/api/providers/[id]/agnes-profile/route.js +1 -1
  340. package/app/.next-cli-build/server/app/api/providers/[id]/agnes-profile/route.js.nft.json +1 -1
  341. package/app/.next-cli-build/server/app/api/providers/[id]/agnes-profile/route_client-reference-manifest.js +1 -1
  342. package/app/.next-cli-build/server/app/api/providers/[id]/freebuff-profile/route.js +1 -1
  343. package/app/.next-cli-build/server/app/api/providers/[id]/freebuff-profile/route.js.nft.json +1 -1
  344. package/app/.next-cli-build/server/app/api/providers/[id]/freebuff-profile/route_client-reference-manifest.js +1 -1
  345. package/app/.next-cli-build/server/app/api/providers/[id]/health-timeline/route.js +1 -1
  346. package/app/.next-cli-build/server/app/api/providers/[id]/health-timeline/route.js.nft.json +1 -1
  347. package/app/.next-cli-build/server/app/api/providers/[id]/health-timeline/route_client-reference-manifest.js +1 -1
  348. package/app/.next-cli-build/server/app/api/providers/[id]/inxora-profile/route.js +1 -1
  349. package/app/.next-cli-build/server/app/api/providers/[id]/inxora-profile/route.js.nft.json +1 -1
  350. package/app/.next-cli-build/server/app/api/providers/[id]/inxora-profile/route_client-reference-manifest.js +1 -1
  351. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  352. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  353. package/app/.next-cli-build/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  354. package/app/.next-cli-build/server/app/api/providers/[id]/onemin-api-profile/route.js +1 -1
  355. package/app/.next-cli-build/server/app/api/providers/[id]/onemin-api-profile/route.js.nft.json +1 -1
  356. package/app/.next-cli-build/server/app/api/providers/[id]/onemin-api-profile/route_client-reference-manifest.js +1 -1
  357. package/app/.next-cli-build/server/app/api/providers/[id]/onemin-profile/route.js +1 -1
  358. package/app/.next-cli-build/server/app/api/providers/[id]/onemin-profile/route.js.nft.json +1 -1
  359. package/app/.next-cli-build/server/app/api/providers/[id]/onemin-profile/route_client-reference-manifest.js +1 -1
  360. package/app/.next-cli-build/server/app/api/providers/[id]/qwencloud-profile/route.js +1 -1
  361. package/app/.next-cli-build/server/app/api/providers/[id]/qwencloud-profile/route.js.nft.json +1 -1
  362. package/app/.next-cli-build/server/app/api/providers/[id]/qwencloud-profile/route_client-reference-manifest.js +1 -1
  363. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  364. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  365. package/app/.next-cli-build/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  366. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  367. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  368. package/app/.next-cli-build/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  369. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  370. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  371. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route_client-reference-manifest.js +1 -1
  372. package/app/.next-cli-build/server/app/api/providers/[id]/v0-profile/route.js +1 -1
  373. package/app/.next-cli-build/server/app/api/providers/[id]/v0-profile/route.js.nft.json +1 -1
  374. package/app/.next-cli-build/server/app/api/providers/[id]/v0-profile/route_client-reference-manifest.js +1 -1
  375. package/app/.next-cli-build/server/app/api/providers/[id]/vault-pool/route.js +1 -1
  376. package/app/.next-cli-build/server/app/api/providers/[id]/vault-pool/route.js.nft.json +1 -1
  377. package/app/.next-cli-build/server/app/api/providers/[id]/vault-pool/route_client-reference-manifest.js +1 -1
  378. package/app/.next-cli-build/server/app/api/providers/[id]/zenmux-plans/route.js +1 -1
  379. package/app/.next-cli-build/server/app/api/providers/[id]/zenmux-plans/route.js.nft.json +1 -1
  380. package/app/.next-cli-build/server/app/api/providers/[id]/zenmux-plans/route_client-reference-manifest.js +1 -1
  381. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  382. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  383. package/app/.next-cli-build/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  384. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  385. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  386. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route_client-reference-manifest.js +1 -1
  387. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  388. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  389. package/app/.next-cli-build/server/app/api/providers/route_client-reference-manifest.js +1 -1
  390. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  391. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  392. package/app/.next-cli-build/server/app/api/providers/suggested-models/route_client-reference-manifest.js +1 -1
  393. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  394. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  395. package/app/.next-cli-build/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  396. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  397. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  398. package/app/.next-cli-build/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  399. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  400. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  401. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route_client-reference-manifest.js +1 -1
  402. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  403. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  404. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route_client-reference-manifest.js +1 -1
  405. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  406. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  407. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route_client-reference-manifest.js +1 -1
  408. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  409. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  410. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route_client-reference-manifest.js +1 -1
  411. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  412. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  413. package/app/.next-cli-build/server/app/api/proxy-pools/route_client-reference-manifest.js +1 -1
  414. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  415. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  416. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route_client-reference-manifest.js +1 -1
  417. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  418. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  419. package/app/.next-cli-build/server/app/api/pxpipe/install/route_client-reference-manifest.js +1 -1
  420. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  421. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  422. package/app/.next-cli-build/server/app/api/pxpipe/status/route_client-reference-manifest.js +1 -1
  423. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  424. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  425. package/app/.next-cli-build/server/app/api/settings/database/route_client-reference-manifest.js +1 -1
  426. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  427. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  428. package/app/.next-cli-build/server/app/api/settings/proxy-test/route_client-reference-manifest.js +1 -1
  429. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  430. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  431. package/app/.next-cli-build/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  432. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  433. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  434. package/app/.next-cli-build/server/app/api/settings/route_client-reference-manifest.js +1 -1
  435. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  436. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  437. package/app/.next-cli-build/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  438. package/app/.next-cli-build/server/app/api/swarm/active/route.js +1 -1
  439. package/app/.next-cli-build/server/app/api/swarm/active/route.js.nft.json +1 -1
  440. package/app/.next-cli-build/server/app/api/swarm/active/route_client-reference-manifest.js +1 -1
  441. package/app/.next-cli-build/server/app/api/swarm/stream/route.js +2 -2
  442. package/app/.next-cli-build/server/app/api/swarm/stream/route.js.nft.json +1 -1
  443. package/app/.next-cli-build/server/app/api/swarm/stream/route_client-reference-manifest.js +1 -1
  444. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  445. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  446. package/app/.next-cli-build/server/app/api/tags/route_client-reference-manifest.js +1 -1
  447. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  448. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  449. package/app/.next-cli-build/server/app/api/translator/console-logs/route_client-reference-manifest.js +1 -1
  450. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  451. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  452. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route_client-reference-manifest.js +1 -1
  453. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  454. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  455. package/app/.next-cli-build/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  456. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  457. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  458. package/app/.next-cli-build/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  459. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  460. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  461. package/app/.next-cli-build/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  462. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  463. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  464. package/app/.next-cli-build/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  465. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  466. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  467. package/app/.next-cli-build/server/app/api/tunnel/disable/route_client-reference-manifest.js +1 -1
  468. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  469. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  470. package/app/.next-cli-build/server/app/api/tunnel/enable/route_client-reference-manifest.js +1 -1
  471. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  472. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  473. package/app/.next-cli-build/server/app/api/tunnel/status/route_client-reference-manifest.js +1 -1
  474. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  475. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  476. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route_client-reference-manifest.js +1 -1
  477. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  478. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  479. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route_client-reference-manifest.js +1 -1
  480. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  481. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  482. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route_client-reference-manifest.js +1 -1
  483. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  484. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  485. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route_client-reference-manifest.js +1 -1
  486. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  487. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  488. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route_client-reference-manifest.js +1 -1
  489. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  490. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  491. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  492. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  493. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  494. package/app/.next-cli-build/server/app/api/usage/chart/route_client-reference-manifest.js +1 -1
  495. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  496. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  497. package/app/.next-cli-build/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  498. package/app/.next-cli-build/server/app/api/usage/leaderboard/route.js +1 -1
  499. package/app/.next-cli-build/server/app/api/usage/leaderboard/route.js.nft.json +1 -1
  500. package/app/.next-cli-build/server/app/api/usage/leaderboard/route_client-reference-manifest.js +1 -1
  501. package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  502. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  503. package/app/.next-cli-build/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  504. package/app/.next-cli-build/server/app/api/usage/meta/route.js +1 -1
  505. package/app/.next-cli-build/server/app/api/usage/meta/route.js.nft.json +1 -1
  506. package/app/.next-cli-build/server/app/api/usage/meta/route_client-reference-manifest.js +1 -1
  507. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  508. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  509. package/app/.next-cli-build/server/app/api/usage/providers/route_client-reference-manifest.js +1 -1
  510. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  511. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  512. package/app/.next-cli-build/server/app/api/usage/request-details/route_client-reference-manifest.js +1 -1
  513. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  514. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  515. package/app/.next-cli-build/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  516. package/app/.next-cli-build/server/app/api/usage/retry-stats/route.js +1 -1
  517. package/app/.next-cli-build/server/app/api/usage/retry-stats/route.js.nft.json +1 -1
  518. package/app/.next-cli-build/server/app/api/usage/retry-stats/route_client-reference-manifest.js +1 -1
  519. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  520. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  521. package/app/.next-cli-build/server/app/api/usage/stats/route_client-reference-manifest.js +1 -1
  522. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  523. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  524. package/app/.next-cli-build/server/app/api/usage/stream/route_client-reference-manifest.js +1 -1
  525. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  526. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  527. package/app/.next-cli-build/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  528. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  529. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  530. package/app/.next-cli-build/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  531. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  532. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  533. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  534. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  535. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  536. package/app/.next-cli-build/server/app/api/v1/audio/voices/route_client-reference-manifest.js +1 -1
  537. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  538. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  539. package/app/.next-cli-build/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  540. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  541. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  542. package/app/.next-cli-build/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  543. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  544. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  545. package/app/.next-cli-build/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  546. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  547. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  548. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  549. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  550. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  551. package/app/.next-cli-build/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  552. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  553. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  554. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route_client-reference-manifest.js +1 -1
  555. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  556. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  557. package/app/.next-cli-build/server/app/api/v1/models/info/route_client-reference-manifest.js +1 -1
  558. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  559. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  560. package/app/.next-cli-build/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  561. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  562. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  563. package/app/.next-cli-build/server/app/api/v1/responses/compact/route_client-reference-manifest.js +1 -1
  564. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  565. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  566. package/app/.next-cli-build/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  567. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  568. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  569. package/app/.next-cli-build/server/app/api/v1/route_client-reference-manifest.js +1 -1
  570. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  571. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  572. package/app/.next-cli-build/server/app/api/v1/search/route_client-reference-manifest.js +1 -1
  573. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  574. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  575. package/app/.next-cli-build/server/app/api/v1/web/fetch/route_client-reference-manifest.js +1 -1
  576. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  577. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  578. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  579. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  580. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  581. package/app/.next-cli-build/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  582. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  583. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  584. package/app/.next-cli-build/server/app/api/version/route_client-reference-manifest.js +1 -1
  585. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  586. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  587. package/app/.next-cli-build/server/app/api/version/shutdown/route_client-reference-manifest.js +1 -1
  588. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  589. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  590. package/app/.next-cli-build/server/app/api/version/update/route_client-reference-manifest.js +1 -1
  591. package/app/.next-cli-build/server/app/callback/page.js +2 -2
  592. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  593. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  594. package/app/.next-cli-build/server/app/callback.html +1 -1
  595. package/app/.next-cli-build/server/app/callback.rsc +8 -7
  596. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +8 -7
  597. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  598. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +6 -6
  599. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +3 -2
  600. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
  601. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  602. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  603. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  604. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  605. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  606. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +8 -7
  607. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +8 -7
  608. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  609. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +6 -6
  610. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +3 -2
  611. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
  612. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  613. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  614. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  615. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  616. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  617. package/app/.next-cli-build/server/app/index.html +1 -1
  618. package/app/.next-cli-build/server/app/index.rsc +7 -6
  619. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  620. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +7 -6
  621. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  622. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +6 -6
  623. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +3 -2
  624. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  625. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  626. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  627. package/app/.next-cli-build/server/app/landing.html +1 -1
  628. package/app/.next-cli-build/server/app/landing.rsc +8 -7
  629. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +8 -7
  630. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  631. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +6 -6
  632. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +3 -2
  633. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  634. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  635. package/app/.next-cli-build/server/app/login/page.js +2 -2
  636. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  637. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  638. package/app/.next-cli-build/server/app/login.html +1 -1
  639. package/app/.next-cli-build/server/app/login.rsc +8 -7
  640. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +8 -7
  641. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  642. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +6 -6
  643. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +3 -2
  644. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  645. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  646. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  647. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  648. package/app/.next-cli-build/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  649. package/app/.next-cli-build/server/app/page.js +2 -2
  650. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  651. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  652. package/app/.next-cli-build/server/app-paths-manifest.json +9 -9
  653. package/app/.next-cli-build/server/chunks/1212.js +1 -0
  654. package/app/.next-cli-build/server/chunks/1241.js +1 -1
  655. package/app/.next-cli-build/server/chunks/1350.js +1 -1
  656. package/app/.next-cli-build/server/chunks/1719.js +1 -1
  657. package/app/.next-cli-build/server/chunks/212.js +1 -1
  658. package/app/.next-cli-build/server/chunks/2231.js +1 -1
  659. package/app/.next-cli-build/server/chunks/319.js +3 -3
  660. package/app/.next-cli-build/server/chunks/{2926.js → 3437.js} +9 -9
  661. package/app/.next-cli-build/server/chunks/3735.js +1 -1
  662. package/app/.next-cli-build/server/chunks/4046.js +1 -0
  663. package/app/.next-cli-build/server/chunks/5330.js +66 -66
  664. package/app/.next-cli-build/server/chunks/5612.js +1 -1
  665. package/app/.next-cli-build/server/chunks/5615.js +1 -1
  666. package/app/.next-cli-build/server/chunks/5852.js +1 -1
  667. package/app/.next-cli-build/server/chunks/5961.js +1 -1
  668. package/app/.next-cli-build/server/chunks/6070.js +1 -1
  669. package/app/.next-cli-build/server/chunks/{7152.js → 6482.js} +2 -2
  670. package/app/.next-cli-build/server/chunks/6686.js +1 -1
  671. package/app/.next-cli-build/server/chunks/6777.js +1 -1
  672. package/app/.next-cli-build/server/chunks/7187.js +1 -1
  673. package/app/.next-cli-build/server/chunks/7218.js +1 -0
  674. package/app/.next-cli-build/server/chunks/7410.js +1 -0
  675. package/app/.next-cli-build/server/chunks/7566.js +3 -0
  676. package/app/.next-cli-build/server/chunks/7774.js +18 -18
  677. package/app/.next-cli-build/server/chunks/7872.js +1 -1
  678. package/app/.next-cli-build/server/chunks/7965.js +1 -1
  679. package/app/.next-cli-build/server/chunks/8238.js +1 -1
  680. package/app/.next-cli-build/server/chunks/8271.js +1 -1
  681. package/app/.next-cli-build/server/chunks/8520.js +1 -1
  682. package/app/.next-cli-build/server/chunks/8802.js +2 -0
  683. package/app/.next-cli-build/server/chunks/8895.js +6 -6
  684. package/app/.next-cli-build/server/chunks/{4502.js → 8955.js} +2 -2
  685. package/app/.next-cli-build/server/chunks/9422.js +1 -1
  686. package/app/.next-cli-build/server/chunks/9609.js +1 -1
  687. package/app/.next-cli-build/server/chunks/9703.js +1 -1
  688. package/app/.next-cli-build/server/chunks/9903.js +1 -1
  689. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  690. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  691. package/app/.next-cli-build/server/middleware.js +5 -5
  692. package/app/.next-cli-build/server/next-font-manifest.js +1 -1
  693. package/app/.next-cli-build/server/next-font-manifest.json +1 -1
  694. package/app/.next-cli-build/server/pages/404.html +1 -1
  695. package/app/.next-cli-build/server/pages/500.html +1 -1
  696. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  697. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  698. package/app/.next-cli-build/static/chunks/{1321-aa0d45362a7ebc08.js → 1321-5792bb21361dcd65.js} +1 -1
  699. package/app/.next-cli-build/static/chunks/705-cfe5cd65ea2dc6f1.js +1 -0
  700. package/app/.next-cli-build/static/chunks/8105-37d0f6450b27ac6b.js +1 -0
  701. package/app/.next-cli-build/static/chunks/{8720-bbafc2ad7d186ebd.js → 8982-6d1803817450bcd4.js} +2 -2
  702. package/app/.next-cli-build/static/chunks/981-777b2911f938c030.js +3 -0
  703. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/alerts/{page-920869c698a8b3cf.js → page-c263cd784e69e6f1.js} +1 -1
  704. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/{page-75247ad22e97f7cc.js → page-ecd3a85a40e51c66.js} +1 -1
  705. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-3c3074cf3f61df46.js +1 -0
  706. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-8b043b8296199edb.js → page-f7cdc992cb310077.js} +1 -1
  707. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-648e105b4f37fef0.js +3 -0
  708. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-959b3ee3c662de33.js +1 -0
  709. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-5689c88f2746c37a.js +1 -0
  710. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/health/{page-ec1dc4e44702257d.js → page-133cf1aa2ce53c87.js} +1 -1
  711. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-b635b8b051acb5a5.js → page-3828106aa4f490c1.js} +2 -2
  712. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-d9958dfec1d2e28e.js → page-e086fed7677d4852.js} +1 -1
  713. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-a36b3b632d16f4cb.js → page-f36e5ac11783fd1e.js} +2 -2
  714. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-e794909abbc7a09a.js +1 -0
  715. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-1d972fd3baee7474.js +1 -0
  716. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/overview/page-2dae733c8e1582bf.js +1 -0
  717. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-7325c65533e4cf60.js +1 -0
  718. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/{page-dc8e49b1fe778d9c.js → page-e7ba910803086460.js} +1 -1
  719. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-0f877a8a2550a1ea.js +1 -0
  720. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-2e82495d63f499e9.js → page-201ce34cf7a0a9ed.js} +1 -1
  721. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-8965749fb7d0fac3.js → page-bcf9d97ab4dc20d9.js} +1 -1
  722. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-5b11b61863963cad.js +1 -0
  723. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-843c810c0818ce1b.js → page-58d8d0fa5523ff95.js} +1 -1
  724. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-9a44fa1600f3ff42.js → page-0be4cac4f06ef3e2.js} +1 -1
  725. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-97c920b552343488.js → page-a8b151d5ae9004ea.js} +1 -1
  726. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/swarm/page-594a59006196a03a.js +1 -0
  727. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-d57c129c03c9cb36.js +1 -0
  728. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-a8af04fbd6293d2f.js → page-61d162d7a7f88a11.js} +1 -1
  729. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-bd421513fd2dc28a.js → page-483f01fd35d212f5.js} +1 -1
  730. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-9144cc5f6a208199.js → layout-d62e22634bbd6c94.js} +1 -1
  731. package/app/.next-cli-build/static/chunks/app/_not-found/{page-732ac0fa56005849.js → page-0161671512f52984.js} +1 -1
  732. package/app/.next-cli-build/static/chunks/app/callback/{page-4e8ab9d9128acffb.js → page-20e990994d8da6d3.js} +1 -1
  733. package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/{page-d4eb2ba84eef2143.js → page-bb9f307074c5c23a.js} +1 -1
  734. package/app/.next-cli-build/static/chunks/app/landing/{page-ade86a48ca5749f4.js → page-468c5cb1d127c02a.js} +1 -1
  735. package/app/.next-cli-build/static/chunks/app/layout-10bff7b57a2a3c2c.js +1 -0
  736. package/app/.next-cli-build/static/chunks/app/login/page-32ab5d7c75651107.js +1 -0
  737. package/app/.next-cli-build/static/chunks/main-ab3c4d38db15f747.js +5 -0
  738. package/app/.next-cli-build/static/chunks/main-app-f661afc91c813cfe.js +1 -0
  739. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-8fecb2690f5e9ae2.js +1 -0
  740. package/app/.next-cli-build/static/chunks/webpack-c2bac8d80aa27536.js +1 -0
  741. package/app/.next-cli-build/static/css/27a3eadf22014a5b.css +1 -0
  742. package/app/custom-server.js +9 -0
  743. package/app/package.json +5 -4
  744. package/app/public/i18n/literals/ar.json +195 -195
  745. package/app/public/i18n/literals/bn.json +195 -195
  746. package/app/public/i18n/literals/cs.json +195 -195
  747. package/app/public/i18n/literals/da.json +195 -195
  748. package/app/public/i18n/literals/de.json +195 -195
  749. package/app/public/i18n/literals/el.json +195 -195
  750. package/app/public/i18n/literals/es.json +195 -195
  751. package/app/public/i18n/literals/fi.json +195 -195
  752. package/app/public/i18n/literals/fr.json +195 -195
  753. package/app/public/i18n/literals/he.json +195 -195
  754. package/app/public/i18n/literals/hi.json +195 -195
  755. package/app/public/i18n/literals/hu.json +195 -195
  756. package/app/public/i18n/literals/id.json +195 -195
  757. package/app/public/i18n/literals/it.json +195 -195
  758. package/app/public/i18n/literals/ja.json +195 -195
  759. package/app/public/i18n/literals/ko.json +195 -195
  760. package/app/public/i18n/literals/nl.json +195 -195
  761. package/app/public/i18n/literals/no.json +195 -195
  762. package/app/public/i18n/literals/pl.json +195 -195
  763. package/app/public/i18n/literals/pt-BR.json +195 -195
  764. package/app/public/i18n/literals/pt-PT.json +195 -195
  765. package/app/public/i18n/literals/ro.json +195 -195
  766. package/app/public/i18n/literals/ru.json +195 -195
  767. package/app/public/i18n/literals/sv.json +195 -195
  768. package/app/public/i18n/literals/th.json +195 -195
  769. package/app/public/i18n/literals/tl.json +195 -195
  770. package/app/public/i18n/literals/tr.json +195 -195
  771. package/app/public/i18n/literals/uk.json +195 -195
  772. package/app/public/i18n/literals/ur.json +195 -195
  773. package/app/public/i18n/literals/vi.json +195 -195
  774. package/app/public/i18n/literals/zh-CN.json +773 -773
  775. package/app/public/i18n/literals/zh-TW.json +195 -195
  776. package/app/public/providers/agnes-api.svg +6 -6
  777. package/app/public/providers/agnes-web.svg +6 -6
  778. package/app/public/providers/alibaba-cn.svg +11 -11
  779. package/app/public/providers/alibaba.svg +11 -11
  780. package/app/public/providers/bynara.svg +22 -22
  781. package/app/public/providers/devin.svg +5 -5
  782. package/app/public/providers/featherless.svg +8 -8
  783. package/app/public/providers/forge.svg +9 -9
  784. package/app/public/providers/freebuff-web.svg +6 -6
  785. package/app/public/providers/hcnsec.svg +10 -10
  786. package/app/public/providers/inxorastudio-web.svg +4 -4
  787. package/app/public/providers/inxorastudio.svg +4 -4
  788. package/app/public/providers/moonshot.svg +8 -8
  789. package/app/public/providers/openvecta.svg +7 -7
  790. package/app/public/providers/perplexity-agent.svg +13 -13
  791. package/app/public/providers/qwen-cloud.svg +1 -1
  792. package/app/public/providers/qwencloud.svg +6 -6
  793. package/app/public/providers/stepfun.svg +53 -53
  794. package/app/public/providers/tokenrouter.svg +15 -15
  795. package/app/public/providers/wp-studio.svg +11 -11
  796. package/app/public/providers/zed.svg +11 -11
  797. package/app/public/providers/zenmux-free.svg +9 -9
  798. package/app/server.js +1 -1
  799. package/app/src/lib/db/adapters/sqljsAdapter.js +115 -115
  800. package/app/src/lib/db/migrate.js +286 -286
  801. package/app/src/lib/network/pickProxyPoolId.js +38 -38
  802. package/app/src/lib/updater/updater.js +235 -235
  803. package/app/src/mitm/server.js +2 -2
  804. package/cli.js +830 -830
  805. package/package.json +66 -66
  806. package/src/cli/api/client.js +556 -556
  807. package/src/cli/menus/cliTools.js +618 -618
  808. package/src/cli/terminalUI.js +121 -121
  809. package/src/cli/tray/autostart.js +306 -306
  810. package/src/cli/tray/tray.js +322 -322
  811. package/src/cli/tray/tray.ps1 +130 -130
  812. package/app/.next-cli-build/server/chunks/1051.js +0 -1
  813. package/app/.next-cli-build/server/chunks/1216.js +0 -3
  814. package/app/.next-cli-build/server/chunks/541.js +0 -1
  815. package/app/.next-cli-build/server/chunks/6316.js +0 -2
  816. package/app/.next-cli-build/server/chunks/9140.js +0 -1
  817. package/app/.next-cli-build/server/chunks/9630.js +0 -1
  818. package/app/.next-cli-build/static/chunks/1696-bafe4b44a7a0439e.js +0 -3
  819. package/app/.next-cli-build/static/chunks/1966.b8f83f7ba376c962.js +0 -1
  820. package/app/.next-cli-build/static/chunks/3899.3f761f7e3a944e8c.js +0 -1
  821. package/app/.next-cli-build/static/chunks/705-b7d7b61f41806f0d.js +0 -1
  822. package/app/.next-cli-build/static/chunks/8105-204edc780a329497.js +0 -1
  823. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-cd77e53dbcd46b6c.js +0 -1
  824. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-dbf52954681b093c.js +0 -3
  825. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-a8c4d8c681e19868.js +0 -1
  826. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-408845bd809806a6.js +0 -1
  827. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-92a0799a23d869b3.js +0 -1
  828. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-a67cd1c5f77da355.js +0 -1
  829. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/overview/page-262fa6911888d4f1.js +0 -1
  830. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-f644da989b8878c3.js +0 -1
  831. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-aa26b25a26b5dac8.js +0 -1
  832. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-96d3eb0dfde0711b.js +0 -1
  833. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/swarm/page-9739651f4f19cec6.js +0 -1
  834. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-2f3b8761d7b32ec0.js +0 -1
  835. package/app/.next-cli-build/static/chunks/app/layout-16b611f4f5717ccd.js +0 -1
  836. package/app/.next-cli-build/static/chunks/app/login/page-0831b035aa4c0f17.js +0 -1
  837. package/app/.next-cli-build/static/chunks/main-28015457a328b97c.js +0 -5
  838. package/app/.next-cli-build/static/chunks/main-app-705d8c306f358a5f.js +0 -1
  839. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-22e44aa316880902.js +0 -1
  840. package/app/.next-cli-build/static/chunks/webpack-a990cabb6976f421.js +0 -1
  841. package/app/.next-cli-build/static/css/68d66160ca549ddc.css +0 -1
  842. package/app/cli/.build-home/AppData/Local/npm-cache/_update-notifier-last-checked +0 -0
  843. package/app/cli/.build-home/AppData/Roaming/extremerouter/.migrated-from +0 -1
  844. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/schema-3-to-4-0.8.0-20260802-152036/data.sqlite +0 -0
  845. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/upgrade-0.7.8-to-0.7.9-0.7.9-20260729-181011/data.sqlite +0 -0
  846. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/upgrade-0.7.9-to-0.8.0-0.8.0-20260729-213634/data.sqlite +0 -0
  847. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/upgrade-0.8.0-to-0.8.1-0.8.1-20260802-152517/data.sqlite +0 -0
  848. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/data.sqlite +0 -0
  849. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/data.sqlite-shm +0 -0
  850. package/app/cli/.build-home/AppData/Roaming/extremerouter/db/data.sqlite-wal +0 -0
  851. package/app/cli/.build-home/AppData/Roaming/extremerouter/jwt-secret +0 -1
  852. package/app/cli/.build-home/AppData/Roaming/extremerouter/machine-id +0 -1
  853. package/app/cli/.build-home/AppData/Roaming/nextjs-nodejs/Config/config.json +0 -7
  854. /package/app/.next-cli-build/static/{S-pbWChrUiCkwFyfx4Su3 → j7bBgtavtSkTBPfbmetr9}/_buildManifest.js +0 -0
  855. /package/app/.next-cli-build/static/{S-pbWChrUiCkwFyfx4Su3 → j7bBgtavtSkTBPfbmetr9}/_ssgManifest.js +0 -0
@@ -1,235 +1,235 @@
1
- // Standalone detached updater process.
2
- // Spawns `npm i -g <pkg>@latest`, exposes progress via tiny HTTP server.
3
- // Survives after parent Next server exits (detached + unref by spawner).
4
-
5
- const { spawn } = require("child_process");
6
- const http = require("http");
7
- const net = require("net");
8
- const path = require("path");
9
- const fs = require("fs");
10
- const os = require("os");
11
-
12
- const packageName = process.env.UPDATER_PKG_NAME || "@rsalmn/extremerouter";
13
- const port = parseInt(process.env.UPDATER_PORT || "20129", 10);
14
- const tailLines = parseInt(process.env.UPDATER_TAIL_LINES || "8", 10);
15
- const maxRetries = parseInt(process.env.UPDATER_RETRIES || "3", 10);
16
- const retryDelayMs = parseInt(process.env.UPDATER_RETRY_DELAY_MS || "5000", 10);
17
- const lingerMs = parseInt(process.env.UPDATER_LINGER_MS || "30000", 10);
18
- const waitMinMs = parseInt(process.env.UPDATER_WAIT_MIN_MS || "3000", 10);
19
- const waitMaxMs = parseInt(process.env.UPDATER_WAIT_MAX_MS || "15000", 10);
20
- const waitCheckMs = parseInt(process.env.UPDATER_WAIT_CHECK_MS || "500", 10);
21
- const appPort = parseInt(process.env.UPDATER_APP_PORT || "20128", 10);
22
-
23
- // Data directory (match mitm/paths.js logic)
24
- function getDataDir() {
25
- if (process.env.DATA_DIR) return process.env.DATA_DIR;
26
- if (process.platform === "win32") {
27
- return path.join(process.env.APPDATA || path.join(os.homedir(), "AppData", "Roaming"), "@rsalmn/extremerouter");
28
- }
29
- return path.join(os.homedir(), ".extremerouter");
30
- }
31
- const updateDir = path.join(getDataDir(), "update");
32
- try { fs.mkdirSync(updateDir, { recursive: true }); } catch { /* best effort */ }
33
- const statusFile = path.join(updateDir, "status.json");
34
- const logFile = path.join(updateDir, "install.log");
35
-
36
- const state = {
37
- phase: "starting",
38
- packageName,
39
- startedAt: Date.now(),
40
- finishedAt: null,
41
- attempt: 0,
42
- maxRetries,
43
- done: false,
44
- success: false,
45
- exitCode: null,
46
- error: null,
47
- logTail: [],
48
- };
49
-
50
- function pushLog(line) {
51
- const trimmed = line.replace(/\r?\n$/, "");
52
- if (!trimmed) return;
53
- state.logTail.push(trimmed);
54
- if (state.logTail.length > tailLines) state.logTail = state.logTail.slice(-tailLines);
55
- try { fs.appendFileSync(logFile, `${trimmed}\n`); } catch { /* best effort */ }
56
- }
57
-
58
- function persistStatus() {
59
- try { fs.writeFileSync(statusFile, JSON.stringify(state, null, 2)); } catch { /* best effort */ }
60
- }
61
-
62
- function setPhase(phase) {
63
- state.phase = phase;
64
- persistStatus();
65
- }
66
-
67
- // HTTP server exposing status (browser polls this while Next server is dead)
68
- const server = http.createServer((req, res) => {
69
- res.setHeader("Access-Control-Allow-Origin", "*");
70
- res.setHeader("Cache-Control", "no-store");
71
- if (req.url === "/update/status" || req.url === "/") {
72
- res.setHeader("Content-Type", "application/json");
73
- res.end(JSON.stringify(state));
74
- return;
75
- }
76
- res.statusCode = 404;
77
- res.end("not found");
78
- });
79
-
80
- server.on("error", (e) => {
81
- state.error = `status server error: ${e.message}`;
82
- persistStatus();
83
- });
84
-
85
- server.listen(port, "127.0.0.1", () => {
86
- persistStatus();
87
- waitForAppExit().then(runInstall);
88
- });
89
-
90
- // Check if app port is still being listened on (= app server still alive)
91
- function isAppPortBusy() {
92
- return new Promise((resolve) => {
93
- const socket = new net.Socket();
94
- const done = (busy) => {
95
- socket.destroy();
96
- resolve(busy);
97
- };
98
- socket.setTimeout(300);
99
- socket.once("connect", () => done(true));
100
- socket.once("timeout", () => done(false));
101
- socket.once("error", () => done(false));
102
- socket.connect(appPort, "127.0.0.1");
103
- });
104
- }
105
-
106
- // Wait for app process to fully exit before running npm (avoids Windows file-lock)
107
- async function waitForAppExit() {
108
- setPhase("waitingForExit");
109
- pushLog(`[updater] waiting for app to exit (min ${Math.round(waitMinMs / 1000)}s)...`);
110
-
111
- // Hard minimum delay: OS needs time to release file handles
112
- await sleep(waitMinMs);
113
-
114
- // Poll app port until free or max timeout
115
- const deadline = Date.now() + (waitMaxMs - waitMinMs);
116
- while (Date.now() < deadline) {
117
- const busy = await isAppPortBusy();
118
- if (!busy) {
119
- pushLog(`[updater] app port :${appPort} is free, proceeding`);
120
- return;
121
- }
122
- await sleep(waitCheckMs);
123
- }
124
- pushLog(`[updater] timeout waiting for app, proceeding anyway`);
125
- }
126
-
127
- function sleep(ms) {
128
- return new Promise((r) => setTimeout(r, ms));
129
- }
130
-
131
- function runInstall() {
132
- state.attempt += 1;
133
- setPhase("installing");
134
- pushLog(`[updater] attempt ${state.attempt}/${maxRetries} — npm i -g ${packageName} --prefer-online`);
135
-
136
- const isWin = process.platform === "win32";
137
- const cmd = isWin ? "npm.cmd" : "npm";
138
- const args = ["i", "-g", packageName, "--prefer-online"];
139
-
140
- const child = spawn(cmd, args, {
141
- stdio: ["ignore", "pipe", "pipe"],
142
- windowsHide: true,
143
- shell: isWin,
144
- });
145
-
146
- child.stdout.on("data", (buf) => {
147
- buf.toString().split(/\r?\n/).forEach(pushLog);
148
- persistStatus();
149
- });
150
- child.stderr.on("data", (buf) => {
151
- buf.toString().split(/\r?\n/).forEach(pushLog);
152
- persistStatus();
153
- });
154
-
155
- child.on("error", (e) => {
156
- pushLog(`[updater] spawn error: ${e.message}`);
157
- finalize(false, null, e.message);
158
- });
159
-
160
- child.on("close", (code) => {
161
- pushLog(`[updater] npm exited with code ${code}`);
162
- if (code === 0) {
163
- finalize(true, code, null);
164
- return;
165
- }
166
- if (state.attempt < maxRetries) {
167
- pushLog(`[updater] retrying in ${Math.round(retryDelayMs / 1000)}s...`);
168
- setTimeout(runInstall, retryDelayMs);
169
- return;
170
- }
171
- finalize(false, code, `Install failed after ${maxRetries} attempts`);
172
- });
173
- }
174
-
175
- function openBrowser(url) {
176
- const platform = process.platform;
177
- const cmd = platform === "darwin" ? `open "${url}"`
178
- : platform === "win32" ? `start "" "${url}"`
179
- : `xdg-open "${url}"`;
180
- try { spawn(cmd, { shell: true, detached: true, stdio: "ignore" }).unref(); } catch { /* ignore */ }
181
- }
182
-
183
- // Wait until app port is listening (server alive again), then open dashboard
184
- async function waitForAppAndOpenBrowser() {
185
- const deadline = Date.now() + 30000;
186
- while (Date.now() < deadline) {
187
- const busy = await isAppPortBusy();
188
- if (busy) {
189
- openBrowser(`http://localhost:${appPort}/dashboard`);
190
- pushLog(`[updater] app ready, opened dashboard`);
191
- return;
192
- }
193
- await sleep(1000);
194
- }
195
- pushLog(`[updater] app not responding within 30s, skip browser open`);
196
- }
197
-
198
- function relaunchApp() {
199
- if (process.env.UPDATER_RELAUNCH !== "1") return;
200
- const cmd = process.env.UPDATER_RELAUNCH_CMD;
201
- if (!cmd) return;
202
- let args = [];
203
- try { args = JSON.parse(process.env.UPDATER_RELAUNCH_ARGS || "[]"); } catch { /* noop */ }
204
- const isWin = process.platform === "win32";
205
- try {
206
- const child = spawn(cmd, args, {
207
- detached: true,
208
- stdio: "ignore",
209
- windowsHide: true,
210
- shell: isWin,
211
- env: { ...process.env, UPDATER_RELAUNCH: "", UPDATER_RELAUNCH_CMD: "", UPDATER_RELAUNCH_ARGS: "" },
212
- });
213
- child.unref();
214
- pushLog(`[updater] relaunched: ${cmd} ${args.join(" ")} (pid=${child.pid})`);
215
- // Wait for new app to come up, then auto-open browser so user sees the result
216
- waitForAppAndOpenBrowser();
217
- } catch (e) {
218
- pushLog(`[updater] relaunch failed: ${e.message}`);
219
- }
220
- }
221
-
222
- function finalize(success, exitCode, error) {
223
- state.done = true;
224
- state.success = success;
225
- state.exitCode = exitCode;
226
- state.error = error;
227
- state.finishedAt = Date.now();
228
- setPhase(success ? "done" : "error");
229
- if (success) relaunchApp();
230
- // Linger so browser can poll final status, then exit & close the port
231
- setTimeout(() => {
232
- try { server.close(); } catch { /* ignore */ }
233
- process.exit(success ? 0 : 1);
234
- }, lingerMs);
235
- }
1
+ // Standalone detached updater process.
2
+ // Spawns `npm i -g <pkg>@latest`, exposes progress via tiny HTTP server.
3
+ // Survives after parent Next server exits (detached + unref by spawner).
4
+
5
+ const { spawn } = require("child_process");
6
+ const http = require("http");
7
+ const net = require("net");
8
+ const path = require("path");
9
+ const fs = require("fs");
10
+ const os = require("os");
11
+
12
+ const packageName = process.env.UPDATER_PKG_NAME || "@rsalmn/extremerouter";
13
+ const port = parseInt(process.env.UPDATER_PORT || "20129", 10);
14
+ const tailLines = parseInt(process.env.UPDATER_TAIL_LINES || "8", 10);
15
+ const maxRetries = parseInt(process.env.UPDATER_RETRIES || "3", 10);
16
+ const retryDelayMs = parseInt(process.env.UPDATER_RETRY_DELAY_MS || "5000", 10);
17
+ const lingerMs = parseInt(process.env.UPDATER_LINGER_MS || "30000", 10);
18
+ const waitMinMs = parseInt(process.env.UPDATER_WAIT_MIN_MS || "3000", 10);
19
+ const waitMaxMs = parseInt(process.env.UPDATER_WAIT_MAX_MS || "15000", 10);
20
+ const waitCheckMs = parseInt(process.env.UPDATER_WAIT_CHECK_MS || "500", 10);
21
+ const appPort = parseInt(process.env.UPDATER_APP_PORT || "20128", 10);
22
+
23
+ // Data directory (match mitm/paths.js logic)
24
+ function getDataDir() {
25
+ if (process.env.DATA_DIR) return process.env.DATA_DIR;
26
+ if (process.platform === "win32") {
27
+ return path.join(process.env.APPDATA || path.join(os.homedir(), "AppData", "Roaming"), "@rsalmn/extremerouter");
28
+ }
29
+ return path.join(os.homedir(), ".extremerouter");
30
+ }
31
+ const updateDir = path.join(getDataDir(), "update");
32
+ try { fs.mkdirSync(updateDir, { recursive: true }); } catch { /* best effort */ }
33
+ const statusFile = path.join(updateDir, "status.json");
34
+ const logFile = path.join(updateDir, "install.log");
35
+
36
+ const state = {
37
+ phase: "starting",
38
+ packageName,
39
+ startedAt: Date.now(),
40
+ finishedAt: null,
41
+ attempt: 0,
42
+ maxRetries,
43
+ done: false,
44
+ success: false,
45
+ exitCode: null,
46
+ error: null,
47
+ logTail: [],
48
+ };
49
+
50
+ function pushLog(line) {
51
+ const trimmed = line.replace(/\r?\n$/, "");
52
+ if (!trimmed) return;
53
+ state.logTail.push(trimmed);
54
+ if (state.logTail.length > tailLines) state.logTail = state.logTail.slice(-tailLines);
55
+ try { fs.appendFileSync(logFile, `${trimmed}\n`); } catch { /* best effort */ }
56
+ }
57
+
58
+ function persistStatus() {
59
+ try { fs.writeFileSync(statusFile, JSON.stringify(state, null, 2)); } catch { /* best effort */ }
60
+ }
61
+
62
+ function setPhase(phase) {
63
+ state.phase = phase;
64
+ persistStatus();
65
+ }
66
+
67
+ // HTTP server exposing status (browser polls this while Next server is dead)
68
+ const server = http.createServer((req, res) => {
69
+ res.setHeader("Access-Control-Allow-Origin", "*");
70
+ res.setHeader("Cache-Control", "no-store");
71
+ if (req.url === "/update/status" || req.url === "/") {
72
+ res.setHeader("Content-Type", "application/json");
73
+ res.end(JSON.stringify(state));
74
+ return;
75
+ }
76
+ res.statusCode = 404;
77
+ res.end("not found");
78
+ });
79
+
80
+ server.on("error", (e) => {
81
+ state.error = `status server error: ${e.message}`;
82
+ persistStatus();
83
+ });
84
+
85
+ server.listen(port, "127.0.0.1", () => {
86
+ persistStatus();
87
+ waitForAppExit().then(runInstall);
88
+ });
89
+
90
+ // Check if app port is still being listened on (= app server still alive)
91
+ function isAppPortBusy() {
92
+ return new Promise((resolve) => {
93
+ const socket = new net.Socket();
94
+ const done = (busy) => {
95
+ socket.destroy();
96
+ resolve(busy);
97
+ };
98
+ socket.setTimeout(300);
99
+ socket.once("connect", () => done(true));
100
+ socket.once("timeout", () => done(false));
101
+ socket.once("error", () => done(false));
102
+ socket.connect(appPort, "127.0.0.1");
103
+ });
104
+ }
105
+
106
+ // Wait for app process to fully exit before running npm (avoids Windows file-lock)
107
+ async function waitForAppExit() {
108
+ setPhase("waitingForExit");
109
+ pushLog(`[updater] waiting for app to exit (min ${Math.round(waitMinMs / 1000)}s)...`);
110
+
111
+ // Hard minimum delay: OS needs time to release file handles
112
+ await sleep(waitMinMs);
113
+
114
+ // Poll app port until free or max timeout
115
+ const deadline = Date.now() + (waitMaxMs - waitMinMs);
116
+ while (Date.now() < deadline) {
117
+ const busy = await isAppPortBusy();
118
+ if (!busy) {
119
+ pushLog(`[updater] app port :${appPort} is free, proceeding`);
120
+ return;
121
+ }
122
+ await sleep(waitCheckMs);
123
+ }
124
+ pushLog(`[updater] timeout waiting for app, proceeding anyway`);
125
+ }
126
+
127
+ function sleep(ms) {
128
+ return new Promise((r) => setTimeout(r, ms));
129
+ }
130
+
131
+ function runInstall() {
132
+ state.attempt += 1;
133
+ setPhase("installing");
134
+ pushLog(`[updater] attempt ${state.attempt}/${maxRetries} — npm i -g ${packageName} --prefer-online`);
135
+
136
+ const isWin = process.platform === "win32";
137
+ const cmd = isWin ? "npm.cmd" : "npm";
138
+ const args = ["i", "-g", packageName, "--prefer-online"];
139
+
140
+ const child = spawn(cmd, args, {
141
+ stdio: ["ignore", "pipe", "pipe"],
142
+ windowsHide: true,
143
+ shell: isWin,
144
+ });
145
+
146
+ child.stdout.on("data", (buf) => {
147
+ buf.toString().split(/\r?\n/).forEach(pushLog);
148
+ persistStatus();
149
+ });
150
+ child.stderr.on("data", (buf) => {
151
+ buf.toString().split(/\r?\n/).forEach(pushLog);
152
+ persistStatus();
153
+ });
154
+
155
+ child.on("error", (e) => {
156
+ pushLog(`[updater] spawn error: ${e.message}`);
157
+ finalize(false, null, e.message);
158
+ });
159
+
160
+ child.on("close", (code) => {
161
+ pushLog(`[updater] npm exited with code ${code}`);
162
+ if (code === 0) {
163
+ finalize(true, code, null);
164
+ return;
165
+ }
166
+ if (state.attempt < maxRetries) {
167
+ pushLog(`[updater] retrying in ${Math.round(retryDelayMs / 1000)}s...`);
168
+ setTimeout(runInstall, retryDelayMs);
169
+ return;
170
+ }
171
+ finalize(false, code, `Install failed after ${maxRetries} attempts`);
172
+ });
173
+ }
174
+
175
+ function openBrowser(url) {
176
+ const platform = process.platform;
177
+ const cmd = platform === "darwin" ? `open "${url}"`
178
+ : platform === "win32" ? `start "" "${url}"`
179
+ : `xdg-open "${url}"`;
180
+ try { spawn(cmd, { shell: true, detached: true, stdio: "ignore" }).unref(); } catch { /* ignore */ }
181
+ }
182
+
183
+ // Wait until app port is listening (server alive again), then open dashboard
184
+ async function waitForAppAndOpenBrowser() {
185
+ const deadline = Date.now() + 30000;
186
+ while (Date.now() < deadline) {
187
+ const busy = await isAppPortBusy();
188
+ if (busy) {
189
+ openBrowser(`http://localhost:${appPort}/dashboard`);
190
+ pushLog(`[updater] app ready, opened dashboard`);
191
+ return;
192
+ }
193
+ await sleep(1000);
194
+ }
195
+ pushLog(`[updater] app not responding within 30s, skip browser open`);
196
+ }
197
+
198
+ function relaunchApp() {
199
+ if (process.env.UPDATER_RELAUNCH !== "1") return;
200
+ const cmd = process.env.UPDATER_RELAUNCH_CMD;
201
+ if (!cmd) return;
202
+ let args = [];
203
+ try { args = JSON.parse(process.env.UPDATER_RELAUNCH_ARGS || "[]"); } catch { /* noop */ }
204
+ const isWin = process.platform === "win32";
205
+ try {
206
+ const child = spawn(cmd, args, {
207
+ detached: true,
208
+ stdio: "ignore",
209
+ windowsHide: true,
210
+ shell: isWin,
211
+ env: { ...process.env, UPDATER_RELAUNCH: "", UPDATER_RELAUNCH_CMD: "", UPDATER_RELAUNCH_ARGS: "" },
212
+ });
213
+ child.unref();
214
+ pushLog(`[updater] relaunched: ${cmd} ${args.join(" ")} (pid=${child.pid})`);
215
+ // Wait for new app to come up, then auto-open browser so user sees the result
216
+ waitForAppAndOpenBrowser();
217
+ } catch (e) {
218
+ pushLog(`[updater] relaunch failed: ${e.message}`);
219
+ }
220
+ }
221
+
222
+ function finalize(success, exitCode, error) {
223
+ state.done = true;
224
+ state.success = success;
225
+ state.exitCode = exitCode;
226
+ state.error = error;
227
+ state.finishedAt = Date.now();
228
+ setPhase(success ? "done" : "error");
229
+ if (success) relaunchApp();
230
+ // Linger so browser can poll final status, then exit & close the port
231
+ setTimeout(() => {
232
+ try { server.close(); } catch { /* ignore */ }
233
+ process.exit(success ? 0 : 1);
234
+ }, lingerMs);
235
+ }