9router 0.4.46 → 0.4.49

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 (897) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +7 -11
  3. package/app/.next-cli-build/build-manifest.json +2 -2
  4. package/app/.next-cli-build/routes-manifest.json +0 -24
  5. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  68. package/app/.next-cli-build/server/app/_global-error/page.js +2 -2
  69. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  70. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  71. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  72. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  73. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  74. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  75. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  76. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  77. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  78. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  79. package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  80. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  81. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  82. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  83. package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  84. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  85. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  86. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  87. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  88. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  89. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  90. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  91. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  92. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  93. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  95. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  97. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  99. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  101. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  103. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  105. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  107. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  109. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  111. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  113. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  115. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  117. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  121. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  123. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  125. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  127. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  129. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  131. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  135. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  137. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  139. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  141. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  143. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  145. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  147. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  149. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  151. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +5 -5
  153. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  155. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  157. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  159. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  161. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  163. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  165. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  167. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  169. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  171. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  173. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  175. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +2 -2
  177. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  179. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  181. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  183. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  184. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  185. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  187. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  189. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  190. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  191. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  195. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  196. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  199. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  201. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  203. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  205. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  207. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  209. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  211. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  213. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  215. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  217. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  219. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  220. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  221. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  222. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  223. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  225. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  229. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  234. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  235. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  236. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  237. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  238. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  241. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  242. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  243. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  244. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  245. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  247. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  249. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  251. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  253. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  255. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  257. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  259. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  261. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  263. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  265. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  267. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  268. package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js +1 -1
  269. package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js +2 -2
  271. package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  273. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  274. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  275. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  277. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  279. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  280. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  281. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  282. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  283. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  285. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  286. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  287. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  288. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  289. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  290. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  291. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  292. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  293. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  294. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  295. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  297. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  298. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  299. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  301. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  303. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  304. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  305. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  306. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  307. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  308. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  309. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  310. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  311. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  312. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  313. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  314. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  315. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  316. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  317. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  318. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  319. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  320. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  321. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  322. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  323. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  324. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  325. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  326. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  327. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  328. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  329. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  330. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  331. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  332. package/app/.next-cli-build/server/app/callback/page.js +2 -2
  333. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  334. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  335. package/app/.next-cli-build/server/app/callback.html +1 -1
  336. package/app/.next-cli-build/server/app/callback.rsc +4 -4
  337. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  338. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  339. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  340. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  341. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  342. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  343. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  344. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  345. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  346. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  347. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  348. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  349. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  350. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  351. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  352. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  353. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  354. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  355. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  356. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  357. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  358. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  359. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  360. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  362. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  363. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  364. package/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  365. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  366. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  367. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  368. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  369. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  370. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  371. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  372. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  373. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  374. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  375. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  376. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  377. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  378. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  379. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  380. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  381. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  382. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  383. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  384. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  385. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  386. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  387. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  388. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  389. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  390. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  391. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  392. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  393. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  394. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  395. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  396. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  397. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  398. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  399. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  400. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  401. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  402. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  403. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  404. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  405. package/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  406. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  407. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  408. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  409. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  410. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  411. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  412. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  413. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  414. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  415. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  416. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  417. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  418. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  419. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  420. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  421. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  422. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  423. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  424. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  425. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  426. package/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  427. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  428. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  429. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  430. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  431. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  432. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  433. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  434. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  435. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  436. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  437. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  438. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  439. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  440. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  441. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  442. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  443. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  444. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  445. package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  446. package/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  447. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  448. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  449. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  450. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  451. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  452. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  453. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  454. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  455. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  456. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  457. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  458. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  459. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  460. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  461. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  462. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  463. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  464. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  465. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  466. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  467. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  468. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  469. package/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
  470. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  471. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  472. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  473. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  474. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  475. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  476. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +4 -4
  477. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  478. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  479. package/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  480. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  481. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  482. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  483. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  484. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  485. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  486. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  487. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  488. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  489. package/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  490. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  491. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  492. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  493. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  494. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  495. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  496. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  497. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  498. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  499. package/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  500. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  501. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  502. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  503. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  504. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  505. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  506. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  507. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  508. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  509. package/app/.next-cli-build/server/app/index.html +1 -1
  510. package/app/.next-cli-build/server/app/index.rsc +4 -4
  511. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  512. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  513. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  514. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  515. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  516. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  517. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  518. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  519. package/app/.next-cli-build/server/app/landing.html +1 -1
  520. package/app/.next-cli-build/server/app/landing.rsc +4 -4
  521. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
  522. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  523. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  524. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  525. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  526. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  527. package/app/.next-cli-build/server/app/login/page.js +2 -2
  528. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  529. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  530. package/app/.next-cli-build/server/app/login.html +1 -1
  531. package/app/.next-cli-build/server/app/login.rsc +5 -5
  532. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  533. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  534. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  535. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  536. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  537. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  538. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  539. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  540. package/app/.next-cli-build/server/app/page.js +2 -2
  541. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  542. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  543. package/app/.next-cli-build/server/app-paths-manifest.json +7 -11
  544. package/app/.next-cli-build/server/chunks/1229.js +1 -0
  545. package/app/.next-cli-build/server/chunks/1301.js +1 -1
  546. package/app/.next-cli-build/server/chunks/1795.js +1 -1
  547. package/app/.next-cli-build/server/chunks/21.js +1 -1
  548. package/app/.next-cli-build/server/chunks/4185.js +1 -1
  549. package/app/.next-cli-build/server/chunks/450.js +1 -1
  550. package/app/.next-cli-build/server/chunks/5662.js +1 -0
  551. package/app/.next-cli-build/server/chunks/6263.js +55 -5
  552. package/app/.next-cli-build/server/chunks/6283.js +1 -1
  553. package/app/.next-cli-build/server/chunks/6379.js +19 -10
  554. package/app/.next-cli-build/server/chunks/6560.js +1 -1
  555. package/app/.next-cli-build/server/chunks/6634.js +1 -1
  556. package/app/.next-cli-build/server/chunks/7686.js +1 -1
  557. package/app/.next-cli-build/server/chunks/7810.js +1 -1
  558. package/app/.next-cli-build/server/chunks/8202.js +4 -2
  559. package/app/.next-cli-build/server/chunks/8515.js +1 -0
  560. package/app/.next-cli-build/server/chunks/8647.js +1 -1
  561. package/app/.next-cli-build/server/chunks/{1574.js → 9129.js} +2 -2
  562. package/app/.next-cli-build/server/chunks/9737.js +1 -1
  563. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  564. package/app/.next-cli-build/server/middleware.js +1 -1
  565. package/app/.next-cli-build/server/pages/404.html +1 -1
  566. package/app/.next-cli-build/server/pages/500.html +1 -1
  567. package/app/.next-cli-build/static/chunks/{3771-b8a33e9a23450b8c.js → 3771-58963fe5c3d9e450.js} +1 -1
  568. package/app/.next-cli-build/static/chunks/4156-f729a06a738f7c32.js +7 -0
  569. package/app/.next-cli-build/static/chunks/505-83cc69808ab384cd.js +1 -0
  570. package/app/.next-cli-build/static/chunks/8035-bd019468ed04eceb.js +3 -0
  571. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-516256427cf3d887.js +1 -0
  572. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-7c28f5b764fe552a.js +1 -0
  573. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-dca35f311527549c.js → layout-b824357884ed2892.js} +1 -1
  574. package/app/.next-cli-build/static/chunks/app/_global-error/page-dd3f1f1479a48b4e.js +1 -0
  575. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-dd3f1f1479a48b4e.js +1 -0
  576. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-dd3f1f1479a48b4e.js +1 -0
  577. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-dd3f1f1479a48b4e.js +1 -0
  578. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-dd3f1f1479a48b4e.js +1 -0
  579. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-dd3f1f1479a48b4e.js +1 -0
  580. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-dd3f1f1479a48b4e.js +1 -0
  581. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-dd3f1f1479a48b4e.js +1 -0
  582. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-dd3f1f1479a48b4e.js +1 -0
  583. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-dd3f1f1479a48b4e.js +1 -0
  584. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-dd3f1f1479a48b4e.js +1 -0
  585. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-dd3f1f1479a48b4e.js +1 -0
  586. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-dd3f1f1479a48b4e.js +1 -0
  587. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-dd3f1f1479a48b4e.js +1 -0
  588. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-dd3f1f1479a48b4e.js +1 -0
  589. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-dd3f1f1479a48b4e.js +1 -0
  590. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-dd3f1f1479a48b4e.js +1 -0
  591. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-dd3f1f1479a48b4e.js +1 -0
  592. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-dd3f1f1479a48b4e.js +1 -0
  593. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-dd3f1f1479a48b4e.js +1 -0
  594. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-dd3f1f1479a48b4e.js +1 -0
  595. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-dd3f1f1479a48b4e.js +1 -0
  596. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-dd3f1f1479a48b4e.js +1 -0
  597. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-dd3f1f1479a48b4e.js +1 -0
  598. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-dd3f1f1479a48b4e.js +1 -0
  599. package/app/.next-cli-build/static/chunks/app/api/combos/route-dd3f1f1479a48b4e.js +1 -0
  600. package/app/.next-cli-build/static/chunks/app/api/health/route-dd3f1f1479a48b4e.js +1 -0
  601. package/app/.next-cli-build/static/chunks/app/api/init/route-dd3f1f1479a48b4e.js +1 -0
  602. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-dd3f1f1479a48b4e.js +1 -0
  603. package/app/.next-cli-build/static/chunks/app/api/keys/route-dd3f1f1479a48b4e.js +1 -0
  604. package/app/.next-cli-build/static/chunks/app/api/locale/route-dd3f1f1479a48b4e.js +1 -0
  605. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-dd3f1f1479a48b4e.js +1 -0
  606. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-dd3f1f1479a48b4e.js +1 -0
  607. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-dd3f1f1479a48b4e.js +1 -0
  608. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-dd3f1f1479a48b4e.js +1 -0
  609. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-dd3f1f1479a48b4e.js +1 -0
  610. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-dd3f1f1479a48b4e.js +1 -0
  611. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-dd3f1f1479a48b4e.js +1 -0
  612. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-dd3f1f1479a48b4e.js +1 -0
  613. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-dd3f1f1479a48b4e.js +1 -0
  614. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-dd3f1f1479a48b4e.js +1 -0
  615. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-dd3f1f1479a48b4e.js +1 -0
  616. package/app/.next-cli-build/static/chunks/app/api/models/route-dd3f1f1479a48b4e.js +1 -0
  617. package/app/.next-cli-build/static/chunks/app/api/models/test/route-dd3f1f1479a48b4e.js +1 -0
  618. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-dd3f1f1479a48b4e.js +1 -0
  619. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-dd3f1f1479a48b4e.js +1 -0
  620. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-dd3f1f1479a48b4e.js +1 -0
  621. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-dd3f1f1479a48b4e.js +1 -0
  622. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-dd3f1f1479a48b4e.js +1 -0
  623. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-dd3f1f1479a48b4e.js +1 -0
  624. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-dd3f1f1479a48b4e.js +1 -0
  625. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-dd3f1f1479a48b4e.js +1 -0
  626. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-dd3f1f1479a48b4e.js +1 -0
  627. package/app/.next-cli-build/static/chunks/app/api/pricing/route-dd3f1f1479a48b4e.js +1 -0
  628. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-dd3f1f1479a48b4e.js +1 -0
  629. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-dd3f1f1479a48b4e.js +1 -0
  630. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-dd3f1f1479a48b4e.js +1 -0
  631. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-dd3f1f1479a48b4e.js +1 -0
  632. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-dd3f1f1479a48b4e.js +1 -0
  633. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-dd3f1f1479a48b4e.js +1 -0
  634. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-dd3f1f1479a48b4e.js +1 -0
  635. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-dd3f1f1479a48b4e.js +1 -0
  636. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-dd3f1f1479a48b4e.js +1 -0
  637. package/app/.next-cli-build/static/chunks/app/api/providers/route-dd3f1f1479a48b4e.js +1 -0
  638. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-dd3f1f1479a48b4e.js +1 -0
  639. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-dd3f1f1479a48b4e.js +1 -0
  640. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-dd3f1f1479a48b4e.js +1 -0
  641. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-dd3f1f1479a48b4e.js +1 -0
  642. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-dd3f1f1479a48b4e.js +1 -0
  643. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-dd3f1f1479a48b4e.js +1 -0
  644. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-dd3f1f1479a48b4e.js +1 -0
  645. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-dd3f1f1479a48b4e.js +1 -0
  646. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-dd3f1f1479a48b4e.js +1 -0
  647. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-dd3f1f1479a48b4e.js +1 -0
  648. package/app/.next-cli-build/static/chunks/app/api/settings/route-dd3f1f1479a48b4e.js +1 -0
  649. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-dd3f1f1479a48b4e.js +1 -0
  650. package/app/.next-cli-build/static/chunks/app/api/tags/route-dd3f1f1479a48b4e.js +1 -0
  651. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-dd3f1f1479a48b4e.js +1 -0
  652. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-dd3f1f1479a48b4e.js +1 -0
  653. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-dd3f1f1479a48b4e.js +1 -0
  654. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-dd3f1f1479a48b4e.js +1 -0
  655. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-dd3f1f1479a48b4e.js +1 -0
  656. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-dd3f1f1479a48b4e.js +1 -0
  657. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-dd3f1f1479a48b4e.js +1 -0
  658. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-dd3f1f1479a48b4e.js +1 -0
  659. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-dd3f1f1479a48b4e.js +1 -0
  660. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-dd3f1f1479a48b4e.js +1 -0
  661. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-dd3f1f1479a48b4e.js +1 -0
  662. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-dd3f1f1479a48b4e.js +1 -0
  663. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-dd3f1f1479a48b4e.js +1 -0
  664. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-dd3f1f1479a48b4e.js +1 -0
  665. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-dd3f1f1479a48b4e.js +1 -0
  666. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-dd3f1f1479a48b4e.js +1 -0
  667. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-dd3f1f1479a48b4e.js +1 -0
  668. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-dd3f1f1479a48b4e.js +1 -0
  669. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-dd3f1f1479a48b4e.js +1 -0
  670. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-dd3f1f1479a48b4e.js +1 -0
  671. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-dd3f1f1479a48b4e.js +1 -0
  672. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-dd3f1f1479a48b4e.js +1 -0
  673. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-dd3f1f1479a48b4e.js +1 -0
  674. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-dd3f1f1479a48b4e.js +1 -0
  675. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-dd3f1f1479a48b4e.js +1 -0
  676. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-dd3f1f1479a48b4e.js +1 -0
  677. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-dd3f1f1479a48b4e.js +1 -0
  678. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-dd3f1f1479a48b4e.js +1 -0
  679. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-dd3f1f1479a48b4e.js +1 -0
  680. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-dd3f1f1479a48b4e.js +1 -0
  681. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-dd3f1f1479a48b4e.js +1 -0
  682. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-dd3f1f1479a48b4e.js +1 -0
  683. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-dd3f1f1479a48b4e.js +1 -0
  684. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-dd3f1f1479a48b4e.js +1 -0
  685. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-dd3f1f1479a48b4e.js +1 -0
  686. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-dd3f1f1479a48b4e.js +1 -0
  687. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-dd3f1f1479a48b4e.js +1 -0
  688. package/app/.next-cli-build/static/chunks/app/api/v1/route-dd3f1f1479a48b4e.js +1 -0
  689. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-dd3f1f1479a48b4e.js +1 -0
  690. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-dd3f1f1479a48b4e.js +1 -0
  691. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-dd3f1f1479a48b4e.js +1 -0
  692. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-dd3f1f1479a48b4e.js +1 -0
  693. package/app/.next-cli-build/static/chunks/app/api/version/route-dd3f1f1479a48b4e.js +1 -0
  694. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-dd3f1f1479a48b4e.js +1 -0
  695. package/app/.next-cli-build/static/chunks/app/api/version/update/route-dd3f1f1479a48b4e.js +1 -0
  696. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-dd3f1f1479a48b4e.js +1 -0
  697. package/app/.next-cli-build/static/chunks/app/page-dd3f1f1479a48b4e.js +1 -0
  698. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-dd3f1f1479a48b4e.js +1 -0
  699. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-dd3f1f1479a48b4e.js +1 -0
  700. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-dd3f1f1479a48b4e.js +1 -0
  701. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-dd3f1f1479a48b4e.js +1 -0
  702. package/app/.next-cli-build/static/css/cf00d5ad75771e52.css +1 -0
  703. package/app/.next-cli-build/static/xMfWDbY_wYdb3eqNxiWRB/_buildManifest.js +1 -0
  704. package/app/cli/.build-home/.9router/db/backups/upgrade-0.4.46-to-0.4.49-0.4.49-20260516-123949/data.sqlite +0 -0
  705. package/app/cli/.build-home/.9router/db/data.sqlite +0 -0
  706. package/app/package.json +1 -1
  707. package/app/public/i18n/literals/ar.json +3 -1
  708. package/app/public/i18n/literals/bn.json +3 -1
  709. package/app/public/i18n/literals/cs.json +3 -1
  710. package/app/public/i18n/literals/da.json +3 -1
  711. package/app/public/i18n/literals/de.json +3 -1
  712. package/app/public/i18n/literals/el.json +3 -1
  713. package/app/public/i18n/literals/es.json +3 -1
  714. package/app/public/i18n/literals/fi.json +3 -1
  715. package/app/public/i18n/literals/fr.json +3 -1
  716. package/app/public/i18n/literals/he.json +3 -1
  717. package/app/public/i18n/literals/hi.json +3 -1
  718. package/app/public/i18n/literals/hu.json +3 -1
  719. package/app/public/i18n/literals/id.json +3 -1
  720. package/app/public/i18n/literals/it.json +3 -1
  721. package/app/public/i18n/literals/ja.json +3 -1
  722. package/app/public/i18n/literals/ko.json +3 -1
  723. package/app/public/i18n/literals/nl.json +3 -1
  724. package/app/public/i18n/literals/no.json +3 -1
  725. package/app/public/i18n/literals/pl.json +3 -1
  726. package/app/public/i18n/literals/pt-BR.json +3 -1
  727. package/app/public/i18n/literals/pt-PT.json +3 -1
  728. package/app/public/i18n/literals/ro.json +3 -1
  729. package/app/public/i18n/literals/ru.json +3 -1
  730. package/app/public/i18n/literals/sv.json +3 -1
  731. package/app/public/i18n/literals/th.json +3 -1
  732. package/app/public/i18n/literals/tl.json +3 -1
  733. package/app/public/i18n/literals/tr.json +3 -1
  734. package/app/public/i18n/literals/uk.json +3 -1
  735. package/app/public/i18n/literals/ur.json +3 -1
  736. package/app/public/i18n/literals/vi.json +3 -1
  737. package/app/public/i18n/literals/zh-CN.json +3 -1
  738. package/app/public/i18n/literals/zh-TW.json +3 -1
  739. package/cli.js +28 -28
  740. package/hooks/sqliteRuntime.js +37 -12
  741. package/hooks/trayRuntime.js +11 -15
  742. package/package.json +1 -1
  743. package/src/cli/tray/tray.js +45 -19
  744. package/app/.next-cli-build/server/app/api/cloud/auth/route.js +0 -1
  745. package/app/.next-cli-build/server/app/api/cloud/auth/route.js.nft.json +0 -1
  746. package/app/.next-cli-build/server/app/api/cloud/auth/route_client-reference-manifest.js +0 -1
  747. package/app/.next-cli-build/server/app/api/cloud/credentials/update/route.js +0 -1
  748. package/app/.next-cli-build/server/app/api/cloud/credentials/update/route.js.nft.json +0 -1
  749. package/app/.next-cli-build/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +0 -1
  750. package/app/.next-cli-build/server/app/api/cloud/model/resolve/route.js +0 -1
  751. package/app/.next-cli-build/server/app/api/cloud/model/resolve/route.js.nft.json +0 -1
  752. package/app/.next-cli-build/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +0 -1
  753. package/app/.next-cli-build/server/app/api/cloud/models/alias/route.js +0 -1
  754. package/app/.next-cli-build/server/app/api/cloud/models/alias/route.js.nft.json +0 -1
  755. package/app/.next-cli-build/server/app/api/cloud/models/alias/route_client-reference-manifest.js +0 -1
  756. package/app/.next-cli-build/server/chunks/5159.js +0 -1
  757. package/app/.next-cli-build/server/chunks/8035.js +0 -1
  758. package/app/.next-cli-build/static/aul9t3VY0n6B1K-YypL5t/_buildManifest.js +0 -1
  759. package/app/.next-cli-build/static/chunks/4156-725e65badf7c647a.js +0 -7
  760. package/app/.next-cli-build/static/chunks/505-61681a9427825a5e.js +0 -1
  761. package/app/.next-cli-build/static/chunks/8035-1f89a92a3f778d82.js +0 -3
  762. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-ba20629be96f8c76.js +0 -1
  763. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-4cb14309c0658008.js +0 -1
  764. package/app/.next-cli-build/static/chunks/app/_global-error/page-36dc8d06b592b249.js +0 -1
  765. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-36dc8d06b592b249.js +0 -1
  766. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-36dc8d06b592b249.js +0 -1
  767. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-36dc8d06b592b249.js +0 -1
  768. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-36dc8d06b592b249.js +0 -1
  769. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-36dc8d06b592b249.js +0 -1
  770. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-36dc8d06b592b249.js +0 -1
  771. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-36dc8d06b592b249.js +0 -1
  772. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-36dc8d06b592b249.js +0 -1
  773. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-36dc8d06b592b249.js +0 -1
  774. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-36dc8d06b592b249.js +0 -1
  775. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-36dc8d06b592b249.js +0 -1
  776. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-36dc8d06b592b249.js +0 -1
  777. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-36dc8d06b592b249.js +0 -1
  778. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-36dc8d06b592b249.js +0 -1
  779. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-36dc8d06b592b249.js +0 -1
  780. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-36dc8d06b592b249.js +0 -1
  781. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-36dc8d06b592b249.js +0 -1
  782. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-36dc8d06b592b249.js +0 -1
  783. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-36dc8d06b592b249.js +0 -1
  784. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-36dc8d06b592b249.js +0 -1
  785. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-36dc8d06b592b249.js +0 -1
  786. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-36dc8d06b592b249.js +0 -1
  787. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-36dc8d06b592b249.js +0 -1
  788. package/app/.next-cli-build/static/chunks/app/api/cloud/auth/route-36dc8d06b592b249.js +0 -1
  789. package/app/.next-cli-build/static/chunks/app/api/cloud/credentials/update/route-36dc8d06b592b249.js +0 -1
  790. package/app/.next-cli-build/static/chunks/app/api/cloud/model/resolve/route-36dc8d06b592b249.js +0 -1
  791. package/app/.next-cli-build/static/chunks/app/api/cloud/models/alias/route-36dc8d06b592b249.js +0 -1
  792. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-36dc8d06b592b249.js +0 -1
  793. package/app/.next-cli-build/static/chunks/app/api/combos/route-36dc8d06b592b249.js +0 -1
  794. package/app/.next-cli-build/static/chunks/app/api/health/route-36dc8d06b592b249.js +0 -1
  795. package/app/.next-cli-build/static/chunks/app/api/init/route-36dc8d06b592b249.js +0 -1
  796. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-36dc8d06b592b249.js +0 -1
  797. package/app/.next-cli-build/static/chunks/app/api/keys/route-36dc8d06b592b249.js +0 -1
  798. package/app/.next-cli-build/static/chunks/app/api/locale/route-36dc8d06b592b249.js +0 -1
  799. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-36dc8d06b592b249.js +0 -1
  800. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-36dc8d06b592b249.js +0 -1
  801. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-36dc8d06b592b249.js +0 -1
  802. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-36dc8d06b592b249.js +0 -1
  803. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-36dc8d06b592b249.js +0 -1
  804. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-36dc8d06b592b249.js +0 -1
  805. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-36dc8d06b592b249.js +0 -1
  806. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-36dc8d06b592b249.js +0 -1
  807. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-36dc8d06b592b249.js +0 -1
  808. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-36dc8d06b592b249.js +0 -1
  809. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-36dc8d06b592b249.js +0 -1
  810. package/app/.next-cli-build/static/chunks/app/api/models/route-36dc8d06b592b249.js +0 -1
  811. package/app/.next-cli-build/static/chunks/app/api/models/test/route-36dc8d06b592b249.js +0 -1
  812. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-36dc8d06b592b249.js +0 -1
  813. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-36dc8d06b592b249.js +0 -1
  814. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-36dc8d06b592b249.js +0 -1
  815. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-36dc8d06b592b249.js +0 -1
  816. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-36dc8d06b592b249.js +0 -1
  817. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-36dc8d06b592b249.js +0 -1
  818. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-36dc8d06b592b249.js +0 -1
  819. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-36dc8d06b592b249.js +0 -1
  820. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-36dc8d06b592b249.js +0 -1
  821. package/app/.next-cli-build/static/chunks/app/api/pricing/route-36dc8d06b592b249.js +0 -1
  822. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-36dc8d06b592b249.js +0 -1
  823. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-36dc8d06b592b249.js +0 -1
  824. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-36dc8d06b592b249.js +0 -1
  825. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-36dc8d06b592b249.js +0 -1
  826. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-36dc8d06b592b249.js +0 -1
  827. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-36dc8d06b592b249.js +0 -1
  828. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-36dc8d06b592b249.js +0 -1
  829. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-36dc8d06b592b249.js +0 -1
  830. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-36dc8d06b592b249.js +0 -1
  831. package/app/.next-cli-build/static/chunks/app/api/providers/route-36dc8d06b592b249.js +0 -1
  832. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-36dc8d06b592b249.js +0 -1
  833. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-36dc8d06b592b249.js +0 -1
  834. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-36dc8d06b592b249.js +0 -1
  835. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-36dc8d06b592b249.js +0 -1
  836. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-36dc8d06b592b249.js +0 -1
  837. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-36dc8d06b592b249.js +0 -1
  838. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-36dc8d06b592b249.js +0 -1
  839. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-36dc8d06b592b249.js +0 -1
  840. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-36dc8d06b592b249.js +0 -1
  841. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-36dc8d06b592b249.js +0 -1
  842. package/app/.next-cli-build/static/chunks/app/api/settings/route-36dc8d06b592b249.js +0 -1
  843. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-36dc8d06b592b249.js +0 -1
  844. package/app/.next-cli-build/static/chunks/app/api/tags/route-36dc8d06b592b249.js +0 -1
  845. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-36dc8d06b592b249.js +0 -1
  846. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-36dc8d06b592b249.js +0 -1
  847. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-36dc8d06b592b249.js +0 -1
  848. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-36dc8d06b592b249.js +0 -1
  849. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-36dc8d06b592b249.js +0 -1
  850. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-36dc8d06b592b249.js +0 -1
  851. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-36dc8d06b592b249.js +0 -1
  852. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-36dc8d06b592b249.js +0 -1
  853. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-36dc8d06b592b249.js +0 -1
  854. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-36dc8d06b592b249.js +0 -1
  855. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-36dc8d06b592b249.js +0 -1
  856. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-36dc8d06b592b249.js +0 -1
  857. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-36dc8d06b592b249.js +0 -1
  858. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-36dc8d06b592b249.js +0 -1
  859. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-36dc8d06b592b249.js +0 -1
  860. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-36dc8d06b592b249.js +0 -1
  861. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-36dc8d06b592b249.js +0 -1
  862. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-36dc8d06b592b249.js +0 -1
  863. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-36dc8d06b592b249.js +0 -1
  864. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-36dc8d06b592b249.js +0 -1
  865. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-36dc8d06b592b249.js +0 -1
  866. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-36dc8d06b592b249.js +0 -1
  867. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-36dc8d06b592b249.js +0 -1
  868. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-36dc8d06b592b249.js +0 -1
  869. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-36dc8d06b592b249.js +0 -1
  870. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-36dc8d06b592b249.js +0 -1
  871. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-36dc8d06b592b249.js +0 -1
  872. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-36dc8d06b592b249.js +0 -1
  873. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-36dc8d06b592b249.js +0 -1
  874. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-36dc8d06b592b249.js +0 -1
  875. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-36dc8d06b592b249.js +0 -1
  876. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-36dc8d06b592b249.js +0 -1
  877. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-36dc8d06b592b249.js +0 -1
  878. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-36dc8d06b592b249.js +0 -1
  879. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-36dc8d06b592b249.js +0 -1
  880. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-36dc8d06b592b249.js +0 -1
  881. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-36dc8d06b592b249.js +0 -1
  882. package/app/.next-cli-build/static/chunks/app/api/v1/route-36dc8d06b592b249.js +0 -1
  883. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-36dc8d06b592b249.js +0 -1
  884. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-36dc8d06b592b249.js +0 -1
  885. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-36dc8d06b592b249.js +0 -1
  886. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-36dc8d06b592b249.js +0 -1
  887. package/app/.next-cli-build/static/chunks/app/api/version/route-36dc8d06b592b249.js +0 -1
  888. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-36dc8d06b592b249.js +0 -1
  889. package/app/.next-cli-build/static/chunks/app/api/version/update/route-36dc8d06b592b249.js +0 -1
  890. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-36dc8d06b592b249.js +0 -1
  891. package/app/.next-cli-build/static/chunks/app/page-36dc8d06b592b249.js +0 -1
  892. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-36dc8d06b592b249.js +0 -1
  893. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-36dc8d06b592b249.js +0 -1
  894. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-36dc8d06b592b249.js +0 -1
  895. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-36dc8d06b592b249.js +0 -1
  896. package/app/.next-cli-build/static/css/a898a2d21a892d75.css +0 -1
  897. /package/app/.next-cli-build/static/{aul9t3VY0n6B1K-YypL5t → xMfWDbY_wYdb3eqNxiWRB}/_ssgManifest.js +0 -0
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Parola Sudo este necesară",
189
189
  "Enter your sudo password to start/stop MITM server": "Introduceți parola sudo pentru a porni/opri serverul MITM",
190
190
  "Sudo Password": "Parola Sudo",
191
- "Click to add, click again to remove. Changes are saved automatically.": "Faceți clic pentru a adăuga, faceți clic din nou pentru a elimina. Modificările sunt salvate automat."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "Faceți clic pentru a adăuga, faceți clic din nou pentru a elimina. Modificările sunt salvate automat.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Notificare de risc: Acest furnizor folosește un abonament/sesiune OAuth care nu este licențiat oficial pentru utilizare proxy/router. Contul poate fi restricționat sau interzis. Utilizați pe propriul risc.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM interceptează traficul HTTPS al instrumentelor IDE (Antigravity, GitHub Copilot, Kiro) prin CA locală pentru a redirecționa cererile către furnizorii dvs. Poate încălca ToS → risc de interzicere a contului. Utilizați pe propriul risc."
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Требуется пароль Sudo",
189
189
  "Enter your sudo password to start/stop MITM server": "Введите пароль sudo для запуска/остановки сервера MITM",
190
190
  "Sudo Password": "Пароль sudo",
191
- "Click to add, click again to remove. Changes are saved automatically.": "Нажмите, чтобы добавить, нажмите ещё раз, чтобы удалить. Изменения сохраняются автоматически."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "Нажмите, чтобы добавить, нажмите ещё раз, чтобы удалить. Изменения сохраняются автоматически.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Уведомление о риске: Этот провайдер использует сессию подписки/OAuth, не имеющую официальной лицензии для использования через прокси/маршрутизатор. Аккаунт может быть ограничен или заблокирован. Используйте на свой страх и риск.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM перехватывает HTTPS-трафик IDE-инструментов (Antigravity, GitHub Copilot, Kiro) через локальный CA для перенаправления запросов вашим провайдерам. Может нарушить ToS → риск блокировки аккаунта. Используйте на свой страх и риск."
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Sudo-lösenord krävs",
189
189
  "Enter your sudo password to start/stop MITM server": "Ange ditt sudo-lösenord för att starta/stoppa MITM-servern",
190
190
  "Sudo Password": "Sudo-lösenord",
191
- "Click to add, click again to remove. Changes are saved automatically.": "Klicka för att lägga till, klicka igen för att ta bort. Ändringar sparas automatiskt."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "Klicka för att lägga till, klicka igen för att ta bort. Ändringar sparas automatiskt.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Riskmeddelande: Denna leverantör använder en prenumerations-/OAuth-session som inte är officiellt licensierad för proxy-/routeranvändning. Kontot kan begränsas eller bannlysas. Användning sker på egen risk.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM avlyssnar HTTPS-trafik från IDE-verktyg (Antigravity, GitHub Copilot, Kiro) via lokal CA för att omdirigera förfrågningar till dina leverantörer. Kan bryta mot ToS → risk för kontoavstängning. Användning sker på egen risk."
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "ต้องการรหัสผ่าน Sudo",
189
189
  "Enter your sudo password to start/stop MITM server": "ป้อนรหัสผ่าน sudo ของคุณเพื่อเริ่ม/หยุดเซิร์ฟเวอร์ MITM",
190
190
  "Sudo Password": "รหัสผ่าน Sudo",
191
- "Click to add, click again to remove. Changes are saved automatically.": "คลิกเพื่อเพิ่ม คลิกอีกครั้งเพื่อลบ การเปลี่ยนแปลงจะถูกบันทึกโดยอัตโนมัติ"
191
+ "Click to add, click again to remove. Changes are saved automatically.": "คลิกเพื่อเพิ่ม คลิกอีกครั้งเพื่อลบ การเปลี่ยนแปลงจะถูกบันทึกโดยอัตโนมัติ",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ ประกาศความเสี่ยง: ผู้ให้บริการนี้ใช้เซสชันสมัครสมาชิก/OAuth ที่ไม่ได้รับอนุญาตอย่างเป็นทางการสำหรับการใช้งานพร็อกซี/เราเตอร์ บัญชีอาจถูกจำกัดหรือถูกแบน ใช้งานด้วยความเสี่ยงของคุณเอง",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM ดักจับการรับส่งข้อมูล HTTPS ของเครื่องมือ IDE (Antigravity, GitHub Copilot, Kiro) ผ่าน CA ท้องถิ่นเพื่อเปลี่ยนเส้นทางคำขอไปยังผู้ให้บริการของคุณ อาจละเมิด ToS → เสี่ยงถูกแบนบัญชี ใช้งานด้วยความเสี่ยงของคุณเอง"
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Kailangan ng Sudo Password",
189
189
  "Enter your sudo password to start/stop MITM server": "Ipasok ang iyong sudo password upang simulan/ihinto ang MITM server",
190
190
  "Sudo Password": "Sudo Password",
191
- "Click to add, click again to remove. Changes are saved automatically.": "I-click para idagdag, i-click muli para alisin. Ang mga pagbabago ay awtomatikong nase-save."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "I-click para idagdag, i-click muli para alisin. Ang mga pagbabago ay awtomatikong nase-save.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Babala sa Panganib: Ang provider na ito ay gumagamit ng subscription/OAuth session na hindi opisyal na lisensyado para sa proxy/router na paggamit. Maaaring marestrikta o ma-ban ang account. Gamitin sa sarili mong panganib.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ Hinaharang ng MITM ang HTTPS traffic ng mga IDE tool (Antigravity, GitHub Copilot, Kiro) sa pamamagitan ng lokal na CA upang i-redirect ang mga kahilingan sa iyong mga provider. Maaaring lumabag sa ToS → panganib ng pag-ban sa account. Gamitin sa sarili mong panganib."
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Sudo Parolası Gerekli",
189
189
  "Enter your sudo password to start/stop MITM server": "MITM sunucusunu başlatmak/durdurmak için sudo parolanızı girin",
190
190
  "Sudo Password": "Sudo Parolası",
191
- "Click to add, click again to remove. Changes are saved automatically.": "Eklemek için tıklayın, kaldırmak için tekrar tıklayın. Değişiklikler otomatik olarak kaydedilir."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "Eklemek için tıklayın, kaldırmak için tekrar tıklayın. Değişiklikler otomatik olarak kaydedilir.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Risk Bildirimi: Bu sağlayıcı, proxy/yönlendirici kullanımı için resmi olarak lisanslı olmayan bir abonelik/OAuth oturumu kullanır. Hesap kısıtlanabilir veya yasaklanabilir. Kendi sorumluluğunuzda kullanın.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM, isteklerinizi sağlayıcılarınıza yönlendirmek için yerel CA aracılığıyla IDE araçlarının (Antigravity, GitHub Copilot, Kiro) HTTPS trafiğini engeller. ToS'u ihlal edebilir → hesap yasaklama riski. Kendi sorumluluğunuzda kullanın."
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Потрібен пароль Sudo",
189
189
  "Enter your sudo password to start/stop MITM server": "Введіть пароль sudo для запуску/зупинення MITM сервера",
190
190
  "Sudo Password": "Пароль Sudo",
191
- "Click to add, click again to remove. Changes are saved automatically.": "Натисніть, щоб додати, натисніть ще раз, щоб видалити. Зміни зберігаються автоматично."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "Натисніть, щоб додати, натисніть ще раз, щоб видалити. Зміни зберігаються автоматично.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Сповіщення про ризик: Цей провайдер використовує сесію підписки/OAuth, яка офіційно не ліцензована для використання через проксі/маршрутизатор. Обліковий запис може бути обмежений або заблокований. Використовуйте на свій страх і ризик.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM перехоплює HTTPS-трафік IDE-інструментів (Antigravity, GitHub Copilot, Kiro) через локальний CA для перенаправлення запитів до ваших провайдерів. Може порушити ToS → ризик блокування облікового запису. Використовуйте на свій страх і ризик."
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Sudo پاس ورڈ درکار ہے",
189
189
  "Enter your sudo password to start/stop MITM server": "MITM سرور شروع/بند کرنے کے لیے اپنا sudo پاس ورڈ داخل کریں",
190
190
  "Sudo Password": "Sudo پاس ورڈ",
191
- "Click to add, click again to remove. Changes are saved automatically.": "شامل کرنے کے لیے کلک کریں، ہٹانے کے لیے دوبارہ کلک کریں۔ تبدیلیاں خودکار طور پر محفوظ ہو جاتی ہیں۔"
191
+ "Click to add, click again to remove. Changes are saved automatically.": "شامل کرنے کے لیے کلک کریں، ہٹانے کے لیے دوبارہ کلک کریں۔ تبدیلیاں خودکار طور پر محفوظ ہو جاتی ہیں۔",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ خطرے کا نوٹس: یہ فراہم کنندہ ایک سبسکرپشن/OAuth سیشن استعمال کرتا ہے جو پراکسی/راؤٹر استعمال کے لیے سرکاری طور پر لائسنس یافتہ نہیں ہے۔ اکاؤنٹ محدود یا پابند ہو سکتا ہے۔ اپنے خطرے پر استعمال کریں۔",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM آپ کے فراہم کنندگان کو درخواستوں کو ری ڈائریکٹ کرنے کے لیے مقامی CA کے ذریعے IDE ٹولز (Antigravity, GitHub Copilot, Kiro) کے HTTPS ٹریفک کو روکتا ہے۔ ToS کی خلاف ورزی کر سکتا ہے → اکاؤنٹ پابندی کا خطرہ۔ اپنے خطرے پر استعمال کریں۔"
192
194
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "Yêu cầu mật khẩu Sudo",
189
189
  "Enter your sudo password to start/stop MITM server": "Nhập mật khẩu sudo của bạn để khởi động/dừng máy chủ MITM",
190
190
  "Sudo Password": "Mật khẩu Sudo",
191
- "Click to add, click again to remove. Changes are saved automatically.": "Nhấp để thêm, nhấp lại để xóa. Thay đổi được lưu tự động."
191
+ "Click to add, click again to remove. Changes are saved automatically.": "Nhấp để thêm, nhấp lại để xóa. Thay đổi được lưu tự động.",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ Cảnh báo rủi ro: Provider này sử dụng subscription/OAuth không được cấp phép chính thức cho mục đích proxy/router. Tài khoản có thể bị hạn chế hoặc cấm. Người dùng tự chịu trách nhiệm.",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM chặn lưu lượng HTTPS của các IDE tools (Antigravity, GitHub Copilot, Kiro) qua CA cục bộ để chuyển hướng request đến providers của bạn. Có thể vi phạm ToS → rủi ro bị ban tài khoản. Sử dụng với rủi ro của bạn."
192
194
  }
@@ -762,5 +762,7 @@
762
762
  "Get API Key →": "获取 API 密钥 →",
763
763
  "OAuth": "OAuth",
764
764
  "Click to add, click again to remove. Changes are saved automatically.": "点击添加,再次点击删除。更改将自动保存。",
765
- "Close": "关闭"
765
+ "Close": "关闭",
766
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ 风险提示:此提供商使用的订阅/OAuth 会话未获官方授权用于代理/路由器使用。账户可能被限制或封禁。使用风险自负。",
767
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM 通过本地 CA 拦截 IDE 工具(Antigravity、GitHub Copilot、Kiro)的 HTTPS 流量,将请求重定向到您的提供商。可能违反 ToS → 账户封禁风险。使用风险自负。"
766
768
  }
@@ -188,5 +188,7 @@
188
188
  "Sudo Password Required": "需要 Sudo 密碼",
189
189
  "Enter your sudo password to start/stop MITM server": "輸入您的 Sudo 密碼以啟動/停止 MITM 服務器",
190
190
  "Sudo Password": "Sudo 密碼",
191
- "Click to add, click again to remove. Changes are saved automatically.": "點擊新增,再次點擊移除。變更將自動儲存。"
191
+ "Click to add, click again to remove. Changes are saved automatically.": "點擊新增,再次點擊移除。變更將自動儲存。",
192
+ "⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.": "⚠️ 風險提示:此提供商使用的訂閱/OAuth 工作階段未獲官方授權用於代理/路由器使用。帳戶可能被限制或封禁。使用風險自負。",
193
+ "⚠️ MITM intercepts HTTPS traffic of IDE tools (Antigravity, GitHub Copilot, Kiro) via local CA to redirect requests to your providers. May violate ToS → account ban. Use at your own risk.": "⚠️ MITM 透過本地 CA 攔截 IDE 工具(Antigravity、GitHub Copilot、Kiro)的 HTTPS 流量,將請求重新導向到您的提供商。可能違反 ToS → 帳戶封禁風險。使用風險自負。"
192
194
  }
package/cli.js CHANGED
@@ -219,8 +219,12 @@ function killAllAppProcesses(appPort) {
219
219
  });
220
220
  const lines = output.split("\n").slice(1).filter(l => l.trim());
221
221
  lines.forEach(line => {
222
- const isAppProcess = line.toLowerCase().includes("9router") ||
223
- line.toLowerCase().includes("next-server");
222
+ // Whitelist: real node process running 9router/cli.js, or next-server.
223
+ // Avoids killing editors/grep/strace/cursor that just have "9router" in cmdline.
224
+ const cmd = line.toLowerCase();
225
+ const isAppProcess =
226
+ (cmd.includes("node") && cmd.includes("9router") && (cmd.includes("cli.js") || cmd.includes("\\9router") || cmd.includes("/9router")))
227
+ || cmd.includes("next-server");
224
228
  if (isAppProcess) {
225
229
  const match = line.match(/^"(\d+)"/);
226
230
  if (match && match[1] && match[1] !== process.pid.toString()) {
@@ -241,7 +245,12 @@ function killAllAppProcesses(appPort) {
241
245
  const lines = output.split('\n');
242
246
 
243
247
  lines.forEach(line => {
244
- const isAppProcess = line.includes("9router") || line.includes("next-server");
248
+ // Whitelist: real node process running 9router/cli.js, or next-server.
249
+ // Avoids killing grep/strace/editors/cursor that incidentally match "9router".
250
+ const cmd = line.toLowerCase();
251
+ const isAppProcess =
252
+ (cmd.includes("node") && cmd.includes("9router") && (cmd.includes("cli.js") || cmd.includes("/9router")))
253
+ || cmd.includes("next-server");
245
254
  if (isAppProcess) {
246
255
  const parts = line.trim().split(/\s+/);
247
256
  const pid = parts[1];
@@ -637,6 +646,10 @@ function startServer(latestVersion) {
637
646
 
638
647
  // Tray-only mode: no TUI, just tray icon
639
648
  if (trayMode) {
649
+ // Ignore SIGHUP so macOS terminal close doesn't kill the background tray process
650
+ process.removeAllListeners("SIGHUP");
651
+ process.on("SIGHUP", () => {});
652
+
640
653
  console.log(`\n🚀 ${pkg.name} v${pkg.version}`);
641
654
  console.log(`Server: http://${displayHost}:${port}`);
642
655
 
@@ -681,42 +694,29 @@ function startServer(latestVersion) {
681
694
  await startTerminalUI(port);
682
695
  // Loop continues, show menu again
683
696
  } else if (choice === "hide") {
684
- // Hide to tray - spawn detached background process
697
+ // Hide to tray: keep the CURRENT process alive (it already owns a
698
+ // macOS GUI session so NSStatusItem works). Spawning a detached child
699
+ // puts it outside the login session → systray silently fails on macOS.
685
700
  const { clearScreen } = require("./src/cli/utils/display");
686
701
  clearScreen();
687
702
 
688
- // Kill current tray FIRST so the new bgProcess can register a fresh
689
- // NSStatusItem on macOS without conflicting with the orphan binary
690
- try { require("./src/cli/tray/tray").killTray(); } catch (e) { }
691
- await new Promise(r => setTimeout(r, 300));
703
+ // Survive terminal close SIGHUP is sent when the launching shell exits
704
+ process.removeAllListeners("SIGHUP");
705
+ process.on("SIGHUP", () => {});
692
706
 
693
707
  // Enable auto startup on OS boot
694
708
  try {
695
709
  const { enableAutoStart } = require("./src/cli/tray/autostart");
696
- const enabled = enableAutoStart(__filename);
697
- if (enabled) {
698
- console.log("✅ Auto-start enabled (will run on OS boot)");
699
- }
710
+ enableAutoStart(__filename);
700
711
  } catch (e) { }
701
712
 
702
- // Spawn new detached process with --tray flag
703
- const bgProcess = spawn(process.execPath, [__filename, "--tray", "--skip-update", "-p", port.toString()], {
704
- detached: true,
705
- stdio: "ignore",
706
- windowsHide: true,
707
- env: { ...process.env }
708
- });
709
- bgProcess.unref();
710
-
711
- console.log(`\n🔔 9Router is now running in background (PID: ${bgProcess.pid})`);
713
+ console.log(`\n🔔 9Router is running in tray (PID: ${process.pid})`);
712
714
  console.log(` Server: http://${displayHost}:${port}`);
713
- console.log(`\n💡 You can close this terminal. Right-click tray icon to:`);
714
- console.log(` • Open Dashboard`);
715
- console.log(` • Quit\n`);
715
+ console.log(`\n💡 You can close this terminal. Right-click tray icon to quit.\n`);
716
716
 
717
- // Exit current process - background process takes over
718
- cleanup();
719
- process.exit(0);
717
+ // Tray icon already running (initTrayIcon was called above at startup).
718
+ // Nothing more to do — event loop keeps process alive via tray + server.
719
+ return;
720
720
  } else if (choice === "exit") {
721
721
  isShuttingDown = true;
722
722
  console.log("\nExiting...");
@@ -60,19 +60,45 @@ function isBetterSqliteBinaryValid() {
60
60
  } catch { return false; }
61
61
  }
62
62
 
63
- function npmInstall(pkgs, opts = {}) {
64
- const cwd = ensureRuntimeDir();
65
- const args = ["install", ...pkgs, "--no-audit", "--no-fund", "--prefer-online"];
66
- if (opts.optional) args.push("--no-save");
63
+ // Extract a short, user-friendly reason from npm stderr.
64
+ function summarizeNpmError(stderr = "") {
65
+ const text = String(stderr);
66
+ if (/ENOTFOUND|ETIMEDOUT|EAI_AGAIN|network|getaddrinfo/i.test(text)) return "No internet connection or registry unreachable";
67
+ if (/EACCES|EPERM|permission denied/i.test(text)) return "Permission denied (check folder permissions)";
68
+ if (/ENOSPC|no space/i.test(text)) return "Not enough disk space";
69
+ if (/node-gyp|gyp ERR|python|MSBuild|Visual Studio|Xcode/i.test(text)) return "Missing build tools (Xcode CLT / Python / VS Build Tools)";
70
+ if (/ETARGET|version.*not found/i.test(text)) return "Package version not found on registry";
71
+ const m = text.match(/npm ERR! (.+)/);
72
+ if (m) return m[1].slice(0, 200);
73
+ const lastLine = text.trim().split(/\r?\n/).filter(Boolean).pop();
74
+ return lastLine ? lastLine.slice(0, 200) : "Unknown error";
75
+ }
76
+
77
+ function runNpmInstall({ cwd, pkgs, extraArgs = [], timeout = 180000 }) {
78
+ const args = ["install", ...pkgs, "--no-audit", "--no-fund", "--prefer-online", ...extraArgs];
67
79
  const npmCmd = process.platform === "win32" ? "npm.cmd" : "npm";
68
- console.log(`[9router][runtime] ${npmCmd} ${args.join(" ")} (cwd: ${cwd})`);
69
80
  const res = spawnSync(npmCmd, args, {
70
81
  cwd,
71
- stdio: opts.silent ? "ignore" : "inherit",
72
- timeout: opts.timeout || 180000,
82
+ stdio: ["ignore", "pipe", "pipe"],
83
+ timeout,
73
84
  shell: process.platform === "win32",
85
+ encoding: "utf8",
74
86
  });
75
- return res.status === 0;
87
+ return { ok: res.status === 0, code: res.status, stderr: res.stderr || "", stdout: res.stdout || "" };
88
+ }
89
+
90
+ function npmInstall(pkgs, opts = {}) {
91
+ const cwd = ensureRuntimeDir();
92
+ const extra = opts.optional ? ["--no-save"] : [];
93
+ if (!opts.silent) console.log("⏳ Installing SQLite engine (first run)...");
94
+ const res = runNpmInstall({ cwd, pkgs, extraArgs: extra, timeout: opts.timeout || 180000 });
95
+ if (!res.ok && !opts.silent) {
96
+ const reason = summarizeNpmError(res.stderr);
97
+ console.warn("⚠️ SQLite engine install failed — using fallback");
98
+ console.warn(` Reason: ${reason}`);
99
+ console.warn(` Retry: cd "${cwd}" && npm install ${pkgs.join(" ")}`);
100
+ }
101
+ return res.ok;
76
102
  }
77
103
 
78
104
  // Public: ensure better-sqlite3 native module is installed in user-writable
@@ -83,14 +109,11 @@ function ensureSqliteRuntime({ silent = false } = {}) {
83
109
 
84
110
  const needBetterSqlite = !hasModule("better-sqlite3") || !isBetterSqliteBinaryValid();
85
111
  if (!needBetterSqlite) {
86
- if (!silent) console.log("[9router][runtime] better-sqlite3 OK");
112
+ if (!silent) console.log(" SQLite engine ready");
87
113
  return { betterSqlite: true };
88
114
  }
89
115
 
90
116
  const ok = npmInstall([`better-sqlite3@${BETTER_SQLITE3_VERSION}`], { optional: true, silent });
91
- if (!ok && !silent) {
92
- console.warn("[9router][runtime] better-sqlite3 install failed (will use node:sqlite or sql.js fallback)");
93
- }
94
117
  return {
95
118
  betterSqlite: ok && hasModule("better-sqlite3") && isBetterSqliteBinaryValid(),
96
119
  };
@@ -111,4 +134,6 @@ module.exports = {
111
134
  buildEnvWithRuntime,
112
135
  getRuntimeDir,
113
136
  getRuntimeNodeModules,
137
+ runNpmInstall,
138
+ summarizeNpmError,
114
139
  };
@@ -9,7 +9,7 @@
9
9
  const { spawnSync } = require("child_process");
10
10
  const fs = require("fs");
11
11
  const path = require("path");
12
- const { getRuntimeDir, getRuntimeNodeModules } = require("./sqliteRuntime");
12
+ const { getRuntimeDir, getRuntimeNodeModules, runNpmInstall, summarizeNpmError } = require("./sqliteRuntime");
13
13
 
14
14
  const SYSTRAY_PKG = "systray2";
15
15
  const SYSTRAY_VERSION = "2.1.4";
@@ -73,16 +73,15 @@ function ensureRuntimeDir() {
73
73
 
74
74
  function npmInstall(pkgs, { silent = false } = {}) {
75
75
  const cwd = ensureRuntimeDir();
76
- const args = ["install", ...pkgs, "--no-audit", "--no-fund", "--no-save", "--prefer-online"];
77
- const npmCmd = process.platform === "win32" ? "npm.cmd" : "npm";
78
- if (!silent) console.log(`[9router][runtime] ${npmCmd} ${args.join(" ")} (cwd: ${cwd})`);
79
- const res = spawnSync(npmCmd, args, {
80
- cwd,
81
- stdio: silent ? "ignore" : "inherit",
82
- timeout: 120000,
83
- shell: process.platform === "win32"
84
- });
85
- return res.status === 0;
76
+ if (!silent) console.log(" Installing system tray (first run)...");
77
+ const res = runNpmInstall({ cwd, pkgs, extraArgs: ["--no-save"], timeout: 120000 });
78
+ if (!res.ok && !silent) {
79
+ const reason = summarizeNpmError(res.stderr);
80
+ console.warn("⚠️ System tray install failed — tray disabled");
81
+ console.warn(` Reason: ${reason}`);
82
+ console.warn(` Retry: cd "${cwd}" && npm install ${pkgs.join(" ")}`);
83
+ }
84
+ return res.ok;
86
85
  }
87
86
 
88
87
  // Public: ensure systray2 is installed on macOS/Linux only.
@@ -97,14 +96,11 @@ function ensureTrayRuntime({ silent = false } = {}) {
97
96
  }
98
97
  if (hasSystray()) {
99
98
  chmodSystrayBin({ silent });
100
- if (!silent) console.log("[9router][runtime] systray2 OK");
99
+ if (!silent) console.log(" System tray ready");
101
100
  return { systray: true };
102
101
  }
103
102
  const ok = npmInstall([`${SYSTRAY_PKG}@${SYSTRAY_VERSION}`], { silent });
104
103
  if (ok) chmodSystrayBin({ silent });
105
- if (!ok && !silent) {
106
- console.warn("[9router][runtime] systray2 install failed (tray will be disabled)");
107
- }
108
104
  return { systray: ok && hasSystray() };
109
105
  }
110
106
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "9router",
3
- "version": "0.4.46",
3
+ "version": "0.4.49",
4
4
  "description": "9Router CLI - Start and manage 9Router server",
5
5
  "bin": {
6
6
  "9router": "./cli.js"
@@ -208,7 +208,7 @@ function initUnixTray(options) {
208
208
  items
209
209
  };
210
210
 
211
- trayInstance = new SysTray({ menu, debug: false, copyDir: false });
211
+ trayInstance = new SysTray({ menu, debug: false, copyDir: true });
212
212
  isWinTray = false;
213
213
 
214
214
  trayInstance.onClick((action) => {
@@ -245,31 +245,57 @@ function initUnixTray(options) {
245
245
  }
246
246
 
247
247
  /**
248
- * Kill/close system tray gracefully
248
+ * Kill tray, wait Go binary fully exit (returns Promise).
249
+ * Critical for hide-to-tray: macOS must release NSStatusItem before bgProcess
250
+ * spawns a new tray, otherwise the new icon silently fails to register.
249
251
  */
250
252
  function killTray() {
251
253
  const instance = trayInstance;
252
254
  const wasWin = isWinTray;
253
255
  trayInstance = null;
256
+ if (!instance) return Promise.resolve();
254
257
 
255
- if (instance) {
256
- try {
257
- if (wasWin) instance.kill();
258
- else {
259
- // systray2.kill(false) closes IPC but leaves the Go tray binary
260
- // subprocess running, which keeps an orphan NSStatusItem on macOS
261
- // and blocks a freshly spawned tray (e.g. hide-to-tray bgProcess)
262
- // from registering. Kill the child PID directly first.
263
- try {
264
- const proc = instance._process || (typeof instance.process === "function" ? instance.process() : null);
265
- if (proc && proc.pid) {
266
- process.kill(proc.pid, "SIGKILL");
267
- }
268
- } catch (e) {}
269
- instance.kill(false);
270
- }
271
- } catch (e) {}
258
+ if (wasWin) {
259
+ try { instance.kill(); } catch (e) {}
260
+ return Promise.resolve();
272
261
  }
262
+
263
+ // Unix: get the Go tray child process handle.
264
+ let proc = null;
265
+ try {
266
+ proc = instance._process || (typeof instance.process === "function" ? instance.process() : null);
267
+ } catch (e) {}
268
+
269
+ // Graceful shutdown: send {type:"exit"} via IPC so the Go binary can call
270
+ // systray.Quit() and release NSStatusItem. SIGKILL leaves a ghost icon on
271
+ // the macOS menubar until logout, causing duplicate icons after re-spawn.
272
+ const gracefulQuit = () => { try { instance.kill(true); } catch (e) {} };
273
+ const closeIpc = () => { try { instance.kill(false); } catch (e) {} };
274
+
275
+ if (!proc || !proc.pid) {
276
+ gracefulQuit();
277
+ closeIpc();
278
+ return Promise.resolve();
279
+ }
280
+
281
+ return new Promise((resolve) => {
282
+ let done = false;
283
+ const finish = () => { if (done) return; done = true; closeIpc(); resolve(); };
284
+
285
+ proc.once("exit", finish);
286
+ gracefulQuit();
287
+
288
+ // Escalate: SIGTERM after 800ms, SIGKILL after 1600ms if still alive.
289
+ setTimeout(() => { try { process.kill(proc.pid, 0); proc.kill("SIGTERM"); } catch (e) {} }, 800);
290
+ setTimeout(() => { try { process.kill(proc.pid, 0); proc.kill("SIGKILL"); } catch (e) {} }, 1600);
291
+
292
+ // Fallback poll in case "exit" never fires (detached child, pipe closed)
293
+ const deadline = Date.now() + 3000;
294
+ const poll = setInterval(() => {
295
+ try { process.kill(proc.pid, 0); } catch { clearInterval(poll); finish(); return; }
296
+ if (Date.now() > deadline) { clearInterval(poll); finish(); }
297
+ }, 50);
298
+ });
273
299
  }
274
300
 
275
301
  /**
@@ -1 +0,0 @@
1
- "use strict";(()=>{var a={};a.id=3102,a.ids=[3102],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7468:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},37770:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(19886)},37873:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(7468);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},76942:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{POST:()=>x});var e=c(55103),f=c(30600),g=c(10087),h=c(42431),i=c(27321),j=c(42417),k=c(261),l=c(8555),m=c(87717),n=c(34935),o=c(66116),p=c(99218),q=c(43448),r=c(67162),s=c(80463),t=c(86439),u=c(99509),v=c(86606),w=c(89442);async function x(a){try{let b=a.headers.get("Authorization");if(!b?.startsWith("Bearer "))return v.NextResponse.json({error:"Missing API key"},{status:401});let c=b.slice(7);if(!await (0,w.ek)(c))return v.NextResponse.json({error:"Invalid API key"},{status:401});let d=(await (0,w.P)({isActive:!0})).map(a=>({provider:a.provider,authType:a.authType,apiKey:a.apiKey||null,accessToken:a.accessToken||null,refreshToken:a.refreshToken||null,projectId:a.projectId||null,expiresAt:a.expiresAt,priority:a.priority,globalPriority:a.globalPriority,defaultModel:a.defaultModel,isActive:a.isActive})),e=await (0,w.OM)();return v.NextResponse.json({connections:d,modelAliases:e})}catch(a){return console.log("Cloud auth error:",a),v.NextResponse.json({error:"Internal error"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cloud/auth/route",pathname:"/api/cloud/auth",filename:"route",bundlePath:"app/api/cloud/auth/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Users/Working/router4/app/src/app/api/cloud/auth/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cloud/auth/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},77598:a=>{a.exports=require("node:crypto")},80099:a=>{a.exports=require("node:sqlite")},81787:a=>{a.exports=require("bun:sqlite")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},89442:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(37770)},94735:a=>{a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[7773,6799,7686],()=>b(b.s=76942));module.exports=c})();
@@ -1 +0,0 @@
1
- {"version":1,"files":["../../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../../node_modules/@swc/helpers/package.json","../../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/bindings/bindings.js","../../../../../../../node_modules/bindings/package.json","../../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../../node_modules/next/package.json","../../../../../../../node_modules/react/cjs/react.development.js","../../../../../../../node_modules/react/cjs/react.production.js","../../../../../../../node_modules/react/index.js","../../../../../../../node_modules/react/package.json","../../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../../node_modules/sql.js/package.json","../../../../../../../package.json","../../../../../../cli/.build-home/.9router/db/backups/upgrade-0.4.43-to-0.4.44-0.4.44-20260515-120531/data.sqlite","../../../../../../cli/.build-home/.9router/db/backups/upgrade-0.4.44-to-0.4.45-0.4.45-20260515-124856/data.sqlite","../../../../../../cli/.build-home/.9router/db/backups/upgrade-0.4.45-to-0.4.46-0.4.46-20260515-181822/data.sqlite","../../../../../../cli/.build-home/.9router/db/data.sqlite","../../../../../../cli/.build-home/.9router/jwt-secret","../../../../../../package.json","../../../../../../src/lib/db/adapters/betterSqliteAdapter.js","../../../../../../src/lib/db/adapters/bunSqliteAdapter.js","../../../../../../src/lib/db/adapters/nodeSqliteAdapter.js","../../../../../../src/lib/db/adapters/sqljsAdapter.js","../../../../../../src/lib/db/migrate.js","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/1071.js","../../../../chunks/1249.js","../../../../chunks/1301.js","../../../../chunks/1444.js","../../../../chunks/1574.js","../../../../chunks/1578.js","../../../../chunks/1735.js","../../../../chunks/1795.js","../../../../chunks/2009.js","../../../../chunks/21.js","../../../../chunks/2212.js","../../../../chunks/2701.js","../../../../chunks/3630.js","../../../../chunks/3666.js","../../../../chunks/375.js","../../../../chunks/3774.js","../../../../chunks/4185.js","../../../../chunks/4343.js","../../../../chunks/450.js","../../../../chunks/4723.js","../../../../chunks/499.js","../../../../chunks/5046.js","../../../../chunks/5053.js","../../../../chunks/514.js","../../../../chunks/5159.js","../../../../chunks/5221.js","../../../../chunks/5339.js","../../../../chunks/5445.js","../../../../chunks/586.js","../../../../chunks/5882.js","../../../../chunks/593.js","../../../../chunks/6263.js","../../../../chunks/6283.js","../../../../chunks/6288.js","../../../../chunks/6379.js","../../../../chunks/64.js","../../../../chunks/6502.js","../../../../chunks/6560.js","../../../../chunks/6634.js","../../../../chunks/6799.js","../../../../chunks/7061.js","../../../../chunks/7171.js","../../../../chunks/7243.js","../../../../chunks/7292.js","../../../../chunks/7417.js","../../../../chunks/7686.js","../../../../chunks/7773.js","../../../../chunks/7810.js","../../../../chunks/7973.js","../../../../chunks/8012.js","../../../../chunks/8035.js","../../../../chunks/8202.js","../../../../chunks/8495.js","../../../../chunks/8647.js","../../../../chunks/9060.js","../../../../chunks/9737.js","../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
@@ -1 +0,0 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/cloud/auth/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/Users/Working/router4/app/src/app/api/cloud/auth/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
@@ -1 +0,0 @@
1
- "use strict";(()=>{var a={};a.id=1070,a.ids=[1070],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7468:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},37770:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(19886)},37873:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(7468);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},55511:a=>{a.exports=require("crypto")},60332:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{PUT:()=>x});var e=c(55103),f=c(30600),g=c(10087),h=c(42431),i=c(27321),j=c(42417),k=c(261),l=c(8555),m=c(87717),n=c(34935),o=c(66116),p=c(99218),q=c(43448),r=c(67162),s=c(80463),t=c(86439),u=c(99509),v=c(86606),w=c(89442);async function x(a){try{let b=a.headers.get("Authorization");if(!b?.startsWith("Bearer "))return v.NextResponse.json({error:"Missing API key"},{status:401});let c=b.slice(7),{provider:d,credentials:e}=await a.json();if(!d||!e)return v.NextResponse.json({error:"Provider and credentials required"},{status:400});if(!await (0,w.ek)(c))return v.NextResponse.json({error:"Invalid API key"},{status:401});let f=(await (0,w.P)({provider:d,isActive:!0}))[0];if(!f)return v.NextResponse.json({error:`No active connection found for provider: ${d}`},{status:404});let g={};return e.accessToken&&(g.accessToken=e.accessToken),e.refreshToken&&(g.refreshToken=e.refreshToken),e.expiresIn&&(g.expiresAt=new Date(Date.now()+1e3*e.expiresIn).toISOString()),await (0,w.rj)(f.id,g),v.NextResponse.json({success:!0,message:`Credentials updated for provider: ${d}`})}catch(a){return console.log("Update credentials error:",a),v.NextResponse.json({error:"Failed to update credentials"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/cloud/credentials/update/route",pathname:"/api/cloud/credentials/update",filename:"route",bundlePath:"app/api/cloud/credentials/update/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/Users/Working/router4/app/src/app/api/cloud/credentials/update/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/cloud/credentials/update/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},80099:a=>{a.exports=require("node:sqlite")},81787:a=>{a.exports=require("bun:sqlite")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},89442:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(37770)},94735:a=>{a.exports=require("events")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[7773,6799,7686],()=>b(b.s=60332));module.exports=c})();