@yina-npm/openrouterx 0.4.25 → 0.4.26

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 (571) hide show
  1. package/app/.next/BUILD_ID +1 -1
  2. package/app/.next/app-path-routes-manifest.json +6 -4
  3. package/app/.next/build-manifest.json +2 -2
  4. package/app/.next/routes-manifest.json +12 -0
  5. package/app/.next/server/app/(dashboard)/dashboard/admin/keys/page.js +2 -2
  6. package/app/.next/server/app/(dashboard)/dashboard/admin/keys/page_client-reference-manifest.js +1 -1
  7. package/app/.next/server/app/(dashboard)/dashboard/admin/users/page.js +2 -2
  8. package/app/.next/server/app/(dashboard)/dashboard/admin/users/page_client-reference-manifest.js +1 -1
  9. package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  10. package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  11. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  12. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  13. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  14. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  15. package/app/.next/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  16. package/app/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  17. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  18. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +2 -2
  20. package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  21. package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  22. package/app/.next/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  23. package/app/.next/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  24. package/app/.next/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  25. package/app/.next/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  26. package/app/.next/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  27. package/app/.next/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  28. package/app/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/(dashboard)/dashboard/network-analysis/page.js +2 -0
  30. package/app/.next/server/app/(dashboard)/dashboard/network-analysis/page.js.nft.json +1 -0
  31. package/app/.next/server/app/(dashboard)/dashboard/network-analysis/page_client-reference-manifest.js +1 -0
  32. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  33. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  34. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  35. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  36. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  37. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  39. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  40. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  41. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  42. package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
  43. package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  44. package/app/.next/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  45. package/app/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  46. package/app/.next/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  47. package/app/.next/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  48. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  49. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  50. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  51. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  52. package/app/.next/server/app/(dashboard)/dashboard/user/page.js +3 -3
  53. package/app/.next/server/app/(dashboard)/dashboard/user/page_client-reference-manifest.js +1 -1
  54. package/app/.next/server/app/_global-error/page.js +3 -3
  55. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/_global-error.html +1 -1
  57. package/app/.next/server/app/_global-error.rsc +1 -1
  58. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  59. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  60. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  61. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  62. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  63. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  64. package/app/.next/server/app/_not-found/page.js +2 -2
  65. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  66. package/app/.next/server/app/_not-found.html +1 -1
  67. package/app/.next/server/app/_not-found.rsc +4 -4
  68. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  69. package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  70. package/app/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
  71. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  72. package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  73. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  74. package/app/.next/server/app/api/auth/login/route.js +1 -1
  75. package/app/.next/server/app/api/auth/logout/route.js +1 -1
  76. package/app/.next/server/app/api/auth/me/route.js +1 -1
  77. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  78. package/app/.next/server/app/api/cli-tools/antigravity-mitm/inject-auth/route.js +1 -1
  79. package/app/.next/server/app/api/cli-tools/antigravity-mitm/restart/route.js +1 -1
  80. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  81. package/app/.next/server/app/api/cli-tools/antigravity-mitm/test/route.js +1 -1
  82. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +1 -1
  83. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  84. package/app/.next/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  85. package/app/.next/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  86. package/app/.next/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  87. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
  88. package/app/.next/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  89. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  90. package/app/.next/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  91. package/app/.next/server/app/api/cloud/auth/route.js +1 -1
  92. package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
  93. package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
  94. package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
  95. package/app/.next/server/app/api/combos/[id]/route.js +1 -1
  96. package/app/.next/server/app/api/combos/route.js +1 -1
  97. package/app/.next/server/app/api/health/route.js +1 -1
  98. package/app/.next/server/app/api/init/route.js +1 -1
  99. package/app/.next/server/app/api/keys/[id]/route.js +1 -1
  100. package/app/.next/server/app/api/keys/route.js +1 -1
  101. package/app/.next/server/app/api/locale/route.js +1 -1
  102. package/app/.next/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  103. package/app/.next/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  104. package/app/.next/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  105. package/app/.next/server/app/api/media-providers/tts/voices/route.js +1 -1
  106. package/app/.next/server/app/api/models/alias/route.js +1 -1
  107. package/app/.next/server/app/api/models/availability/route.js +1 -1
  108. package/app/.next/server/app/api/models/custom/route.js +1 -1
  109. package/app/.next/server/app/api/models/disabled/route.js +1 -1
  110. package/app/.next/server/app/api/models/route.js +1 -1
  111. package/app/.next/server/app/api/models/test/route.js +1 -1
  112. package/app/.next/server/app/api/network-analysis/route.js +2 -0
  113. package/app/.next/server/app/api/network-analysis/route.js.nft.json +1 -0
  114. package/app/.next/server/app/api/network-analysis/route_client-reference-manifest.js +1 -0
  115. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  116. package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  117. package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
  118. package/app/.next/server/app/api/oauth/gitlab/pat/route.js +1 -1
  119. package/app/.next/server/app/api/oauth/iflow/cookie/route.js +1 -1
  120. package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  121. package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
  122. package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  123. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  124. package/app/.next/server/app/api/pricing/route.js +1 -1
  125. package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
  126. package/app/.next/server/app/api/provider-nodes/route.js +1 -1
  127. package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
  128. package/app/.next/server/app/api/providers/[id]/models/route.js +1 -1
  129. package/app/.next/server/app/api/providers/[id]/route.js +1 -1
  130. package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
  131. package/app/.next/server/app/api/providers/[id]/test-models/route.js +1 -1
  132. package/app/.next/server/app/api/providers/client/route.js +1 -1
  133. package/app/.next/server/app/api/providers/kilo/free-models/route.js +1 -1
  134. package/app/.next/server/app/api/providers/route.js +1 -1
  135. package/app/.next/server/app/api/providers/suggested-models/route.js +1 -1
  136. package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
  137. package/app/.next/server/app/api/providers/validate/route.js +1 -1
  138. package/app/.next/server/app/api/proxy-pools/[id]/route.js +1 -1
  139. package/app/.next/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  140. package/app/.next/server/app/api/proxy-pools/route.js +1 -1
  141. package/app/.next/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  142. package/app/.next/server/app/api/settings/database/route.js +1 -1
  143. package/app/.next/server/app/api/settings/proxy-test/route.js +1 -1
  144. package/app/.next/server/app/api/settings/require-login/route.js +1 -1
  145. package/app/.next/server/app/api/settings/route.js +1 -1
  146. package/app/.next/server/app/api/shutdown/route.js +1 -1
  147. package/app/.next/server/app/api/tags/route.js +1 -1
  148. package/app/.next/server/app/api/translator/console-logs/route.js +1 -1
  149. package/app/.next/server/app/api/translator/console-logs/stream/route.js +2 -2
  150. package/app/.next/server/app/api/translator/load/route.js +1 -1
  151. package/app/.next/server/app/api/translator/save/route.js +1 -1
  152. package/app/.next/server/app/api/translator/send/route.js +1 -1
  153. package/app/.next/server/app/api/translator/translate/route.js +1 -1
  154. package/app/.next/server/app/api/tunnel/disable/route.js +1 -1
  155. package/app/.next/server/app/api/tunnel/enable/route.js +1 -1
  156. package/app/.next/server/app/api/tunnel/status/route.js +1 -1
  157. package/app/.next/server/app/api/tunnel/tailscale-check/route.js +1 -1
  158. package/app/.next/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  159. package/app/.next/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  160. package/app/.next/server/app/api/tunnel/tailscale-install/route.js +1 -1
  161. package/app/.next/server/app/api/tunnel/tailscale-login/route.js +1 -1
  162. package/app/.next/server/app/api/tunnel/tailscale-start-daemon/route.js +2 -2
  163. package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
  164. package/app/.next/server/app/api/usage/api-keys/route.js +1 -1
  165. package/app/.next/server/app/api/usage/chart/route.js +1 -1
  166. package/app/.next/server/app/api/usage/history/route.js +1 -1
  167. package/app/.next/server/app/api/usage/logs/route.js +1 -1
  168. package/app/.next/server/app/api/usage/providers/route.js +1 -1
  169. package/app/.next/server/app/api/usage/request-details/route.js +1 -1
  170. package/app/.next/server/app/api/usage/request-logs/route.js +1 -1
  171. package/app/.next/server/app/api/usage/stats/route.js +1 -1
  172. package/app/.next/server/app/api/usage/stream/route.js +2 -2
  173. package/app/.next/server/app/api/users/[id]/route.js +1 -1
  174. package/app/.next/server/app/api/users/route.js +1 -1
  175. package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
  176. package/app/.next/server/app/api/v1/audio/speech/route.js +1 -1
  177. package/app/.next/server/app/api/v1/audio/transcriptions/route.js +1 -1
  178. package/app/.next/server/app/api/v1/audio/voices/route.js +1 -1
  179. package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
  180. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  181. package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
  182. package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
  183. package/app/.next/server/app/api/v1/messages/route.js +1 -1
  184. package/app/.next/server/app/api/v1/models/[kind]/route.js +1 -1
  185. package/app/.next/server/app/api/v1/models/info/route.js +1 -1
  186. package/app/.next/server/app/api/v1/models/route.js +1 -1
  187. package/app/.next/server/app/api/v1/responses/compact/route.js +1 -1
  188. package/app/.next/server/app/api/v1/responses/route.js +1 -1
  189. package/app/.next/server/app/api/v1/route.js +1 -1
  190. package/app/.next/server/app/api/v1/search/route.js +1 -1
  191. package/app/.next/server/app/api/v1/web/fetch/route.js +1 -1
  192. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
  193. package/app/.next/server/app/api/v1beta/models/route.js +1 -1
  194. package/app/.next/server/app/api/version/route.js +1 -1
  195. package/app/.next/server/app/api/version/update/route.js +1 -1
  196. package/app/.next/server/app/callback/page.js +2 -2
  197. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  198. package/app/.next/server/app/callback.html +1 -1
  199. package/app/.next/server/app/callback.rsc +4 -4
  200. package/app/.next/server/app/callback.segments/_full.segment.rsc +4 -4
  201. package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  202. package/app/.next/server/app/callback.segments/_index.segment.rsc +4 -4
  203. package/app/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
  204. package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  205. package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  206. package/app/.next/server/app/dashboard/settings/pricing/page.js +2 -2
  207. package/app/.next/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  208. package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
  209. package/app/.next/server/app/dashboard/settings/pricing.rsc +4 -4
  210. package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  211. package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  212. package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  213. package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  214. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  215. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  216. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  217. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  218. package/app/.next/server/app/favicon.ico/route.js +1 -1
  219. package/app/.next/server/app/index.html +1 -1
  220. package/app/.next/server/app/index.rsc +4 -4
  221. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  222. package/app/.next/server/app/index.segments/_full.segment.rsc +4 -4
  223. package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
  224. package/app/.next/server/app/index.segments/_index.segment.rsc +4 -4
  225. package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  226. package/app/.next/server/app/landing/page.js +2 -2
  227. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  228. package/app/.next/server/app/landing.html +1 -1
  229. package/app/.next/server/app/landing.rsc +5 -5
  230. package/app/.next/server/app/landing.segments/_full.segment.rsc +5 -5
  231. package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  232. package/app/.next/server/app/landing.segments/_index.segment.rsc +4 -4
  233. package/app/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
  234. package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  235. package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  236. package/app/.next/server/app/login/page.js +2 -2
  237. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  238. package/app/.next/server/app/login.html +1 -1
  239. package/app/.next/server/app/login.rsc +5 -5
  240. package/app/.next/server/app/login.segments/_full.segment.rsc +5 -5
  241. package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
  242. package/app/.next/server/app/login.segments/_index.segment.rsc +4 -4
  243. package/app/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  244. package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  245. package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
  246. package/app/.next/server/app/manifest.webmanifest/route.js +2 -2
  247. package/app/.next/server/app/page.js +2 -2
  248. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  249. package/app/.next/server/app-paths-manifest.json +6 -4
  250. package/app/.next/server/chunks/1263.js +1 -1
  251. package/app/.next/server/chunks/3110.js +2 -2
  252. package/app/.next/server/chunks/412.js +2 -2
  253. package/app/.next/server/chunks/4122.js +1 -1
  254. package/app/.next/server/chunks/6182.js +1 -1
  255. package/app/.next/server/chunks/7595.js +1 -1
  256. package/app/.next/server/chunks/9547.js +4 -4
  257. package/app/.next/server/middleware-build-manifest.js +1 -1
  258. package/app/.next/server/middleware.js +2 -2
  259. package/app/.next/server/pages/404.html +1 -1
  260. package/app/.next/server/pages/500.html +1 -1
  261. package/app/.next/static/chunks/{1321-d98e54ebc0972392.js → 1321-95c9ff5c55e7523c.js} +1 -1
  262. package/app/.next/static/chunks/{2336-36a1f30358e691c6.js → 2336-291f4397a7464d20.js} +6 -6
  263. package/app/.next/static/chunks/5497-5e089c05197cb78c.js +7 -0
  264. package/app/.next/static/chunks/{5555-9189a6eb2a8e87a5.js → 5555-595382d9c4d118fe.js} +2 -2
  265. package/app/.next/static/chunks/app/(dashboard)/dashboard/network-analysis/page-b1347cd5ca75819b.js +1 -0
  266. package/app/.next/static/chunks/app/(dashboard)/dashboard/skills/page-6252e05d8d534383.js +1 -0
  267. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-e967880631a99483.js +1 -0
  268. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/{page-2ae01d48c665f7b4.js → page-c41fbdb17b88c549.js} +1 -1
  269. package/app/.next/static/chunks/app/_global-error/page-e967880631a99483.js +1 -0
  270. package/app/.next/static/chunks/app/api/auth/login/route-e967880631a99483.js +1 -0
  271. package/app/.next/static/chunks/app/api/auth/logout/route-e967880631a99483.js +1 -0
  272. package/app/.next/static/chunks/app/api/auth/me/route-e967880631a99483.js +1 -0
  273. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-e967880631a99483.js +1 -0
  274. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/inject-auth/route-e967880631a99483.js +1 -0
  275. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/restart/route-e967880631a99483.js +1 -0
  276. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-e967880631a99483.js +1 -0
  277. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/test/route-e967880631a99483.js +1 -0
  278. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-e967880631a99483.js +1 -0
  279. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-e967880631a99483.js +1 -0
  280. package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-e967880631a99483.js +1 -0
  281. package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-e967880631a99483.js +1 -0
  282. package/app/.next/static/chunks/app/api/cli-tools/cowork-settings/route-e967880631a99483.js +1 -0
  283. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-e967880631a99483.js +1 -0
  284. package/app/.next/static/chunks/app/api/cli-tools/hermes-settings/route-e967880631a99483.js +1 -0
  285. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-e967880631a99483.js +1 -0
  286. package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-e967880631a99483.js +1 -0
  287. package/app/.next/static/chunks/app/api/cloud/auth/route-e967880631a99483.js +1 -0
  288. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-e967880631a99483.js +1 -0
  289. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-e967880631a99483.js +1 -0
  290. package/app/.next/static/chunks/app/api/cloud/models/alias/route-e967880631a99483.js +1 -0
  291. package/app/.next/static/chunks/app/api/combos/[id]/route-e967880631a99483.js +1 -0
  292. package/app/.next/static/chunks/app/api/combos/route-e967880631a99483.js +1 -0
  293. package/app/.next/static/chunks/app/api/health/route-e967880631a99483.js +1 -0
  294. package/app/.next/static/chunks/app/api/init/route-e967880631a99483.js +1 -0
  295. package/app/.next/static/chunks/app/api/keys/[id]/route-e967880631a99483.js +1 -0
  296. package/app/.next/static/chunks/app/api/keys/route-e967880631a99483.js +1 -0
  297. package/app/.next/static/chunks/app/api/locale/route-e967880631a99483.js +1 -0
  298. package/app/.next/static/chunks/app/api/media-providers/tts/deepgram/voices/route-e967880631a99483.js +1 -0
  299. package/app/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-e967880631a99483.js +1 -0
  300. package/app/.next/static/chunks/app/api/media-providers/tts/inworld/voices/route-e967880631a99483.js +1 -0
  301. package/app/.next/static/chunks/app/api/media-providers/tts/voices/route-e967880631a99483.js +1 -0
  302. package/app/.next/static/chunks/app/api/models/alias/route-e967880631a99483.js +1 -0
  303. package/app/.next/static/chunks/app/api/models/availability/route-e967880631a99483.js +1 -0
  304. package/app/.next/static/chunks/app/api/models/custom/route-e967880631a99483.js +1 -0
  305. package/app/.next/static/chunks/app/api/models/disabled/route-e967880631a99483.js +1 -0
  306. package/app/.next/static/chunks/app/api/models/route-e967880631a99483.js +1 -0
  307. package/app/.next/static/chunks/app/api/models/test/route-e967880631a99483.js +1 -0
  308. package/app/.next/static/chunks/app/api/network-analysis/route-e967880631a99483.js +1 -0
  309. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-e967880631a99483.js +1 -0
  310. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-e967880631a99483.js +1 -0
  311. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-e967880631a99483.js +1 -0
  312. package/app/.next/static/chunks/app/api/oauth/gitlab/pat/route-e967880631a99483.js +1 -0
  313. package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-e967880631a99483.js +1 -0
  314. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-e967880631a99483.js +1 -0
  315. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-e967880631a99483.js +1 -0
  316. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-e967880631a99483.js +1 -0
  317. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-e967880631a99483.js +1 -0
  318. package/app/.next/static/chunks/app/api/pricing/route-e967880631a99483.js +1 -0
  319. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-e967880631a99483.js +1 -0
  320. package/app/.next/static/chunks/app/api/provider-nodes/route-e967880631a99483.js +1 -0
  321. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-e967880631a99483.js +1 -0
  322. package/app/.next/static/chunks/app/api/providers/[id]/models/route-e967880631a99483.js +1 -0
  323. package/app/.next/static/chunks/app/api/providers/[id]/route-e967880631a99483.js +1 -0
  324. package/app/.next/static/chunks/app/api/providers/[id]/test/route-e967880631a99483.js +1 -0
  325. package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-e967880631a99483.js +1 -0
  326. package/app/.next/static/chunks/app/api/providers/client/route-e967880631a99483.js +1 -0
  327. package/app/.next/static/chunks/app/api/providers/kilo/free-models/route-e967880631a99483.js +1 -0
  328. package/app/.next/static/chunks/app/api/providers/route-e967880631a99483.js +1 -0
  329. package/app/.next/static/chunks/app/api/providers/suggested-models/route-e967880631a99483.js +1 -0
  330. package/app/.next/static/chunks/app/api/providers/test-batch/route-e967880631a99483.js +1 -0
  331. package/app/.next/static/chunks/app/api/providers/validate/route-e967880631a99483.js +1 -0
  332. package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-e967880631a99483.js +1 -0
  333. package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-e967880631a99483.js +1 -0
  334. package/app/.next/static/chunks/app/api/proxy-pools/route-e967880631a99483.js +1 -0
  335. package/app/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-e967880631a99483.js +1 -0
  336. package/app/.next/static/chunks/app/api/settings/database/route-e967880631a99483.js +1 -0
  337. package/app/.next/static/chunks/app/api/settings/proxy-test/route-e967880631a99483.js +1 -0
  338. package/app/.next/static/chunks/app/api/settings/require-login/route-e967880631a99483.js +1 -0
  339. package/app/.next/static/chunks/app/api/settings/route-e967880631a99483.js +1 -0
  340. package/app/.next/static/chunks/app/api/shutdown/route-e967880631a99483.js +1 -0
  341. package/app/.next/static/chunks/app/api/tags/route-e967880631a99483.js +1 -0
  342. package/app/.next/static/chunks/app/api/translator/console-logs/route-e967880631a99483.js +1 -0
  343. package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-e967880631a99483.js +1 -0
  344. package/app/.next/static/chunks/app/api/translator/load/route-e967880631a99483.js +1 -0
  345. package/app/.next/static/chunks/app/api/translator/save/route-e967880631a99483.js +1 -0
  346. package/app/.next/static/chunks/app/api/translator/send/route-e967880631a99483.js +1 -0
  347. package/app/.next/static/chunks/app/api/translator/translate/route-e967880631a99483.js +1 -0
  348. package/app/.next/static/chunks/app/api/tunnel/disable/route-e967880631a99483.js +1 -0
  349. package/app/.next/static/chunks/app/api/tunnel/enable/route-e967880631a99483.js +1 -0
  350. package/app/.next/static/chunks/app/api/tunnel/status/route-e967880631a99483.js +1 -0
  351. package/app/.next/static/chunks/app/api/tunnel/tailscale-check/route-e967880631a99483.js +1 -0
  352. package/app/.next/static/chunks/app/api/tunnel/tailscale-disable/route-e967880631a99483.js +1 -0
  353. package/app/.next/static/chunks/app/api/tunnel/tailscale-enable/route-e967880631a99483.js +1 -0
  354. package/app/.next/static/chunks/app/api/tunnel/tailscale-install/route-e967880631a99483.js +1 -0
  355. package/app/.next/static/chunks/app/api/tunnel/tailscale-login/route-e967880631a99483.js +1 -0
  356. package/app/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-e967880631a99483.js +1 -0
  357. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-e967880631a99483.js +1 -0
  358. package/app/.next/static/chunks/app/api/usage/api-keys/route-e967880631a99483.js +1 -0
  359. package/app/.next/static/chunks/app/api/usage/chart/route-e967880631a99483.js +1 -0
  360. package/app/.next/static/chunks/app/api/usage/history/route-e967880631a99483.js +1 -0
  361. package/app/.next/static/chunks/app/api/usage/logs/route-e967880631a99483.js +1 -0
  362. package/app/.next/static/chunks/app/api/usage/providers/route-e967880631a99483.js +1 -0
  363. package/app/.next/static/chunks/app/api/usage/request-details/route-e967880631a99483.js +1 -0
  364. package/app/.next/static/chunks/app/api/usage/request-logs/route-e967880631a99483.js +1 -0
  365. package/app/.next/static/chunks/app/api/usage/stats/route-e967880631a99483.js +1 -0
  366. package/app/.next/static/chunks/app/api/usage/stream/route-e967880631a99483.js +1 -0
  367. package/app/.next/static/chunks/app/api/users/[id]/route-e967880631a99483.js +1 -0
  368. package/app/.next/static/chunks/app/api/users/route-e967880631a99483.js +1 -0
  369. package/app/.next/static/chunks/app/api/v1/api/chat/route-e967880631a99483.js +1 -0
  370. package/app/.next/static/chunks/app/api/v1/audio/speech/route-e967880631a99483.js +1 -0
  371. package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-e967880631a99483.js +1 -0
  372. package/app/.next/static/chunks/app/api/v1/audio/voices/route-e967880631a99483.js +1 -0
  373. package/app/.next/static/chunks/app/api/v1/chat/completions/route-e967880631a99483.js +1 -0
  374. package/app/.next/static/chunks/app/api/v1/embeddings/route-e967880631a99483.js +1 -0
  375. package/app/.next/static/chunks/app/api/v1/images/generations/route-e967880631a99483.js +1 -0
  376. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-e967880631a99483.js +1 -0
  377. package/app/.next/static/chunks/app/api/v1/messages/route-e967880631a99483.js +1 -0
  378. package/app/.next/static/chunks/app/api/v1/models/[kind]/route-e967880631a99483.js +1 -0
  379. package/app/.next/static/chunks/app/api/v1/models/info/route-e967880631a99483.js +1 -0
  380. package/app/.next/static/chunks/app/api/v1/models/route-e967880631a99483.js +1 -0
  381. package/app/.next/static/chunks/app/api/v1/responses/compact/route-e967880631a99483.js +1 -0
  382. package/app/.next/static/chunks/app/api/v1/responses/route-e967880631a99483.js +1 -0
  383. package/app/.next/static/chunks/app/api/v1/route-e967880631a99483.js +1 -0
  384. package/app/.next/static/chunks/app/api/v1/search/route-e967880631a99483.js +1 -0
  385. package/app/.next/static/chunks/app/api/v1/web/fetch/route-e967880631a99483.js +1 -0
  386. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-e967880631a99483.js +1 -0
  387. package/app/.next/static/chunks/app/api/v1beta/models/route-e967880631a99483.js +1 -0
  388. package/app/.next/static/chunks/app/api/version/route-e967880631a99483.js +1 -0
  389. package/app/.next/static/chunks/app/api/version/update/route-e967880631a99483.js +1 -0
  390. package/app/.next/static/chunks/app/landing/page-d345c7018be3c351.js +1 -0
  391. package/app/.next/static/chunks/app/manifest.webmanifest/route-e967880631a99483.js +1 -0
  392. package/app/.next/static/chunks/app/page-e967880631a99483.js +1 -0
  393. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-e967880631a99483.js +1 -0
  394. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-e967880631a99483.js +1 -0
  395. package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-e967880631a99483.js +1 -0
  396. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-e967880631a99483.js +1 -0
  397. package/app/.next/static/css/7cd54184567aeb93.css +1 -0
  398. package/app/.next/static/faQBvAhPvYR3OC9ddKyfJ/_buildManifest.js +1 -0
  399. package/app/package.json +1 -1
  400. package/app/public/i18n/literals/ar.json +3 -3
  401. package/app/public/i18n/literals/bn.json +3 -3
  402. package/app/public/i18n/literals/cs.json +3 -3
  403. package/app/public/i18n/literals/da.json +3 -3
  404. package/app/public/i18n/literals/de.json +3 -3
  405. package/app/public/i18n/literals/el.json +3 -3
  406. package/app/public/i18n/literals/es.json +3 -3
  407. package/app/public/i18n/literals/fi.json +3 -3
  408. package/app/public/i18n/literals/fr.json +3 -3
  409. package/app/public/i18n/literals/he.json +3 -3
  410. package/app/public/i18n/literals/hi.json +3 -3
  411. package/app/public/i18n/literals/hu.json +3 -3
  412. package/app/public/i18n/literals/id.json +3 -3
  413. package/app/public/i18n/literals/it.json +3 -3
  414. package/app/public/i18n/literals/ja.json +3 -3
  415. package/app/public/i18n/literals/ko.json +3 -3
  416. package/app/public/i18n/literals/nl.json +3 -3
  417. package/app/public/i18n/literals/no.json +3 -3
  418. package/app/public/i18n/literals/pl.json +3 -3
  419. package/app/public/i18n/literals/pt-BR.json +3 -3
  420. package/app/public/i18n/literals/pt-PT.json +3 -3
  421. package/app/public/i18n/literals/ro.json +3 -3
  422. package/app/public/i18n/literals/ru.json +3 -3
  423. package/app/public/i18n/literals/sv.json +3 -3
  424. package/app/public/i18n/literals/th.json +3 -3
  425. package/app/public/i18n/literals/tl.json +3 -3
  426. package/app/public/i18n/literals/tr.json +3 -3
  427. package/app/public/i18n/literals/uk.json +3 -3
  428. package/app/public/i18n/literals/ur.json +3 -3
  429. package/app/public/i18n/literals/vi.json +3 -3
  430. package/app/public/i18n/literals/zh-CN.json +66 -43
  431. package/app/public/i18n/literals/zh-TW.json +59 -11
  432. package/app/src/mitm/cert/rootCA.js +4 -4
  433. package/app/src/mitm/handlers/base.js +2 -2
  434. package/app/src/mitm/handlers/copilot.js +2 -2
  435. package/app/src/mitm/handlers/openrouter.js +2 -2
  436. package/app/src/mitm/server.js +4 -4
  437. package/package.json +1 -1
  438. package/src/cli/menus/cliTools.js +3 -3
  439. package/app/.next/static/8lL2B4zuUt2JCMuDcfoON/_buildManifest.js +0 -1
  440. package/app/.next/static/chunks/5497-a2d728c63029180e.js +0 -7
  441. package/app/.next/static/chunks/app/(dashboard)/dashboard/skills/page-d4518d92737b2728.js +0 -1
  442. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-6ec61ce021cdb9a6.js +0 -1
  443. package/app/.next/static/chunks/app/_global-error/page-6ec61ce021cdb9a6.js +0 -1
  444. package/app/.next/static/chunks/app/api/auth/login/route-6ec61ce021cdb9a6.js +0 -1
  445. package/app/.next/static/chunks/app/api/auth/logout/route-6ec61ce021cdb9a6.js +0 -1
  446. package/app/.next/static/chunks/app/api/auth/me/route-6ec61ce021cdb9a6.js +0 -1
  447. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-6ec61ce021cdb9a6.js +0 -1
  448. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/inject-auth/route-6ec61ce021cdb9a6.js +0 -1
  449. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/restart/route-6ec61ce021cdb9a6.js +0 -1
  450. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-6ec61ce021cdb9a6.js +0 -1
  451. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/test/route-6ec61ce021cdb9a6.js +0 -1
  452. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-6ec61ce021cdb9a6.js +0 -1
  453. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-6ec61ce021cdb9a6.js +0 -1
  454. package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-6ec61ce021cdb9a6.js +0 -1
  455. package/app/.next/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-6ec61ce021cdb9a6.js +0 -1
  456. package/app/.next/static/chunks/app/api/cli-tools/cowork-settings/route-6ec61ce021cdb9a6.js +0 -1
  457. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-6ec61ce021cdb9a6.js +0 -1
  458. package/app/.next/static/chunks/app/api/cli-tools/hermes-settings/route-6ec61ce021cdb9a6.js +0 -1
  459. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-6ec61ce021cdb9a6.js +0 -1
  460. package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-6ec61ce021cdb9a6.js +0 -1
  461. package/app/.next/static/chunks/app/api/cloud/auth/route-6ec61ce021cdb9a6.js +0 -1
  462. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-6ec61ce021cdb9a6.js +0 -1
  463. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-6ec61ce021cdb9a6.js +0 -1
  464. package/app/.next/static/chunks/app/api/cloud/models/alias/route-6ec61ce021cdb9a6.js +0 -1
  465. package/app/.next/static/chunks/app/api/combos/[id]/route-6ec61ce021cdb9a6.js +0 -1
  466. package/app/.next/static/chunks/app/api/combos/route-6ec61ce021cdb9a6.js +0 -1
  467. package/app/.next/static/chunks/app/api/health/route-6ec61ce021cdb9a6.js +0 -1
  468. package/app/.next/static/chunks/app/api/init/route-6ec61ce021cdb9a6.js +0 -1
  469. package/app/.next/static/chunks/app/api/keys/[id]/route-6ec61ce021cdb9a6.js +0 -1
  470. package/app/.next/static/chunks/app/api/keys/route-6ec61ce021cdb9a6.js +0 -1
  471. package/app/.next/static/chunks/app/api/locale/route-6ec61ce021cdb9a6.js +0 -1
  472. package/app/.next/static/chunks/app/api/media-providers/tts/deepgram/voices/route-6ec61ce021cdb9a6.js +0 -1
  473. package/app/.next/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-6ec61ce021cdb9a6.js +0 -1
  474. package/app/.next/static/chunks/app/api/media-providers/tts/inworld/voices/route-6ec61ce021cdb9a6.js +0 -1
  475. package/app/.next/static/chunks/app/api/media-providers/tts/voices/route-6ec61ce021cdb9a6.js +0 -1
  476. package/app/.next/static/chunks/app/api/models/alias/route-6ec61ce021cdb9a6.js +0 -1
  477. package/app/.next/static/chunks/app/api/models/availability/route-6ec61ce021cdb9a6.js +0 -1
  478. package/app/.next/static/chunks/app/api/models/custom/route-6ec61ce021cdb9a6.js +0 -1
  479. package/app/.next/static/chunks/app/api/models/disabled/route-6ec61ce021cdb9a6.js +0 -1
  480. package/app/.next/static/chunks/app/api/models/route-6ec61ce021cdb9a6.js +0 -1
  481. package/app/.next/static/chunks/app/api/models/test/route-6ec61ce021cdb9a6.js +0 -1
  482. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-6ec61ce021cdb9a6.js +0 -1
  483. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-6ec61ce021cdb9a6.js +0 -1
  484. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-6ec61ce021cdb9a6.js +0 -1
  485. package/app/.next/static/chunks/app/api/oauth/gitlab/pat/route-6ec61ce021cdb9a6.js +0 -1
  486. package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-6ec61ce021cdb9a6.js +0 -1
  487. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-6ec61ce021cdb9a6.js +0 -1
  488. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-6ec61ce021cdb9a6.js +0 -1
  489. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-6ec61ce021cdb9a6.js +0 -1
  490. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-6ec61ce021cdb9a6.js +0 -1
  491. package/app/.next/static/chunks/app/api/pricing/route-6ec61ce021cdb9a6.js +0 -1
  492. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-6ec61ce021cdb9a6.js +0 -1
  493. package/app/.next/static/chunks/app/api/provider-nodes/route-6ec61ce021cdb9a6.js +0 -1
  494. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-6ec61ce021cdb9a6.js +0 -1
  495. package/app/.next/static/chunks/app/api/providers/[id]/models/route-6ec61ce021cdb9a6.js +0 -1
  496. package/app/.next/static/chunks/app/api/providers/[id]/route-6ec61ce021cdb9a6.js +0 -1
  497. package/app/.next/static/chunks/app/api/providers/[id]/test/route-6ec61ce021cdb9a6.js +0 -1
  498. package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-6ec61ce021cdb9a6.js +0 -1
  499. package/app/.next/static/chunks/app/api/providers/client/route-6ec61ce021cdb9a6.js +0 -1
  500. package/app/.next/static/chunks/app/api/providers/kilo/free-models/route-6ec61ce021cdb9a6.js +0 -1
  501. package/app/.next/static/chunks/app/api/providers/route-6ec61ce021cdb9a6.js +0 -1
  502. package/app/.next/static/chunks/app/api/providers/suggested-models/route-6ec61ce021cdb9a6.js +0 -1
  503. package/app/.next/static/chunks/app/api/providers/test-batch/route-6ec61ce021cdb9a6.js +0 -1
  504. package/app/.next/static/chunks/app/api/providers/validate/route-6ec61ce021cdb9a6.js +0 -1
  505. package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-6ec61ce021cdb9a6.js +0 -1
  506. package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-6ec61ce021cdb9a6.js +0 -1
  507. package/app/.next/static/chunks/app/api/proxy-pools/route-6ec61ce021cdb9a6.js +0 -1
  508. package/app/.next/static/chunks/app/api/proxy-pools/vercel-deploy/route-6ec61ce021cdb9a6.js +0 -1
  509. package/app/.next/static/chunks/app/api/settings/database/route-6ec61ce021cdb9a6.js +0 -1
  510. package/app/.next/static/chunks/app/api/settings/proxy-test/route-6ec61ce021cdb9a6.js +0 -1
  511. package/app/.next/static/chunks/app/api/settings/require-login/route-6ec61ce021cdb9a6.js +0 -1
  512. package/app/.next/static/chunks/app/api/settings/route-6ec61ce021cdb9a6.js +0 -1
  513. package/app/.next/static/chunks/app/api/shutdown/route-6ec61ce021cdb9a6.js +0 -1
  514. package/app/.next/static/chunks/app/api/tags/route-6ec61ce021cdb9a6.js +0 -1
  515. package/app/.next/static/chunks/app/api/translator/console-logs/route-6ec61ce021cdb9a6.js +0 -1
  516. package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-6ec61ce021cdb9a6.js +0 -1
  517. package/app/.next/static/chunks/app/api/translator/load/route-6ec61ce021cdb9a6.js +0 -1
  518. package/app/.next/static/chunks/app/api/translator/save/route-6ec61ce021cdb9a6.js +0 -1
  519. package/app/.next/static/chunks/app/api/translator/send/route-6ec61ce021cdb9a6.js +0 -1
  520. package/app/.next/static/chunks/app/api/translator/translate/route-6ec61ce021cdb9a6.js +0 -1
  521. package/app/.next/static/chunks/app/api/tunnel/disable/route-6ec61ce021cdb9a6.js +0 -1
  522. package/app/.next/static/chunks/app/api/tunnel/enable/route-6ec61ce021cdb9a6.js +0 -1
  523. package/app/.next/static/chunks/app/api/tunnel/status/route-6ec61ce021cdb9a6.js +0 -1
  524. package/app/.next/static/chunks/app/api/tunnel/tailscale-check/route-6ec61ce021cdb9a6.js +0 -1
  525. package/app/.next/static/chunks/app/api/tunnel/tailscale-disable/route-6ec61ce021cdb9a6.js +0 -1
  526. package/app/.next/static/chunks/app/api/tunnel/tailscale-enable/route-6ec61ce021cdb9a6.js +0 -1
  527. package/app/.next/static/chunks/app/api/tunnel/tailscale-install/route-6ec61ce021cdb9a6.js +0 -1
  528. package/app/.next/static/chunks/app/api/tunnel/tailscale-login/route-6ec61ce021cdb9a6.js +0 -1
  529. package/app/.next/static/chunks/app/api/tunnel/tailscale-start-daemon/route-6ec61ce021cdb9a6.js +0 -1
  530. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-6ec61ce021cdb9a6.js +0 -1
  531. package/app/.next/static/chunks/app/api/usage/api-keys/route-6ec61ce021cdb9a6.js +0 -1
  532. package/app/.next/static/chunks/app/api/usage/chart/route-6ec61ce021cdb9a6.js +0 -1
  533. package/app/.next/static/chunks/app/api/usage/history/route-6ec61ce021cdb9a6.js +0 -1
  534. package/app/.next/static/chunks/app/api/usage/logs/route-6ec61ce021cdb9a6.js +0 -1
  535. package/app/.next/static/chunks/app/api/usage/providers/route-6ec61ce021cdb9a6.js +0 -1
  536. package/app/.next/static/chunks/app/api/usage/request-details/route-6ec61ce021cdb9a6.js +0 -1
  537. package/app/.next/static/chunks/app/api/usage/request-logs/route-6ec61ce021cdb9a6.js +0 -1
  538. package/app/.next/static/chunks/app/api/usage/stats/route-6ec61ce021cdb9a6.js +0 -1
  539. package/app/.next/static/chunks/app/api/usage/stream/route-6ec61ce021cdb9a6.js +0 -1
  540. package/app/.next/static/chunks/app/api/users/[id]/route-6ec61ce021cdb9a6.js +0 -1
  541. package/app/.next/static/chunks/app/api/users/route-6ec61ce021cdb9a6.js +0 -1
  542. package/app/.next/static/chunks/app/api/v1/api/chat/route-6ec61ce021cdb9a6.js +0 -1
  543. package/app/.next/static/chunks/app/api/v1/audio/speech/route-6ec61ce021cdb9a6.js +0 -1
  544. package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-6ec61ce021cdb9a6.js +0 -1
  545. package/app/.next/static/chunks/app/api/v1/audio/voices/route-6ec61ce021cdb9a6.js +0 -1
  546. package/app/.next/static/chunks/app/api/v1/chat/completions/route-6ec61ce021cdb9a6.js +0 -1
  547. package/app/.next/static/chunks/app/api/v1/embeddings/route-6ec61ce021cdb9a6.js +0 -1
  548. package/app/.next/static/chunks/app/api/v1/images/generations/route-6ec61ce021cdb9a6.js +0 -1
  549. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-6ec61ce021cdb9a6.js +0 -1
  550. package/app/.next/static/chunks/app/api/v1/messages/route-6ec61ce021cdb9a6.js +0 -1
  551. package/app/.next/static/chunks/app/api/v1/models/[kind]/route-6ec61ce021cdb9a6.js +0 -1
  552. package/app/.next/static/chunks/app/api/v1/models/info/route-6ec61ce021cdb9a6.js +0 -1
  553. package/app/.next/static/chunks/app/api/v1/models/route-6ec61ce021cdb9a6.js +0 -1
  554. package/app/.next/static/chunks/app/api/v1/responses/compact/route-6ec61ce021cdb9a6.js +0 -1
  555. package/app/.next/static/chunks/app/api/v1/responses/route-6ec61ce021cdb9a6.js +0 -1
  556. package/app/.next/static/chunks/app/api/v1/route-6ec61ce021cdb9a6.js +0 -1
  557. package/app/.next/static/chunks/app/api/v1/search/route-6ec61ce021cdb9a6.js +0 -1
  558. package/app/.next/static/chunks/app/api/v1/web/fetch/route-6ec61ce021cdb9a6.js +0 -1
  559. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-6ec61ce021cdb9a6.js +0 -1
  560. package/app/.next/static/chunks/app/api/v1beta/models/route-6ec61ce021cdb9a6.js +0 -1
  561. package/app/.next/static/chunks/app/api/version/route-6ec61ce021cdb9a6.js +0 -1
  562. package/app/.next/static/chunks/app/api/version/update/route-6ec61ce021cdb9a6.js +0 -1
  563. package/app/.next/static/chunks/app/landing/page-4644660041715534.js +0 -1
  564. package/app/.next/static/chunks/app/manifest.webmanifest/route-6ec61ce021cdb9a6.js +0 -1
  565. package/app/.next/static/chunks/app/page-6ec61ce021cdb9a6.js +0 -1
  566. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-6ec61ce021cdb9a6.js +0 -1
  567. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-6ec61ce021cdb9a6.js +0 -1
  568. package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-6ec61ce021cdb9a6.js +0 -1
  569. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6ec61ce021cdb9a6.js +0 -1
  570. package/app/.next/static/css/dcb19ed9cc4c0c31.css +0 -1
  571. /package/app/.next/static/{8lL2B4zuUt2JCMuDcfoON → faQBvAhPvYR3OC9ddKyfJ}/_ssgManifest.js +0 -0
@@ -8,7 +8,7 @@
8
8
  "2. Provider Request (Translated)": "2. 提供商请求(已​​翻译)",
9
9
  "2. Redirects": "2. 重定向",
10
10
  "24h": "24小时",
11
- "3. Maps Antigravity models to any provider via OpenRouterX": "3. 通过 OpenRouterX 将Antigravity模型映射到任何提供商",
11
+ "3. Maps Antigravity models to any provider via OpenrouterX": "3. 通过 OpenrouterX 将Antigravity模型映射到任何提供商",
12
12
  "3. Provider Response (Raw)": "3. 提供商响应(原始)",
13
13
  "4. Client Response (Final)": "4. 客户端响应(最终)",
14
14
  "About": "关于",
@@ -193,8 +193,7 @@
193
193
  "Enter sudo password": "输入sudo密码",
194
194
  "Enter your API key": "输入您的 API 密钥",
195
195
  "Est. Cost": "预计。成本",
196
- "Estimated, not actual billing": "估计的,不是实际的账单",
197
- "Expose your local OpenRouterX to the internet. No port forwarding, no static IP needed. Share endpoint URL with your team or use it in Cursor, Cline, and other AI tools from anywhere.": "将您本地的 OpenRouterX 暴露到互联网。无需端口转发,无需静态 IP。与您的团队共享端点 URL 或从任何地方在 Cursor、Cline 和其他 AI 工具中使用它。",
196
+ "Expose your local OpenrouterX to the internet. No port forwarding, no static IP needed. Share endpoint URL with your team or use it in Cursor, Cline, and other AI tools from anywhere.": "将您本地的 OpenrouterX 暴露到互联网。无需端口转发,无需静态 IP。与您的团队共享端点 URL 或从任何地方在 Cursor、Cline 和其他 AI 工具中使用它。",
198
197
  "Factory Droid - Manual Configuration": "Factory Droid - 手动配置",
199
198
  "Factory Droid CLI not installed": "Factory Droid CLI 未安装",
200
199
  "Failed to load usage statistics.": "无法加载使用情况统计信息。",
@@ -226,7 +225,7 @@
226
225
  "Input:": "输入:",
227
226
  "Installation Guide": "安装指南",
228
227
  "Interactive diagram visible on desktop": "桌面上可见的交互式图表",
229
- "Intercepts Antigravity traffic via DNS redirect, letting you reroute models through OpenRouterX.": "通过 DNS 重定向拦截Antigravity流量,让您可以通过 OpenRouterX 重新路由模型。",
228
+ "Intercepts Antigravity traffic via DNS redirect, letting you reroute models through OpenrouterX.": "通过 DNS 重定向拦截Antigravity流量,让您可以通过 OpenrouterX 重新路由模型。",
230
229
  "KB per field": "每个字段的 KB",
231
230
  "Key Name": "密钥名称",
232
231
  "Kimi": "Kimi",
@@ -463,7 +462,7 @@
463
462
  "Total Models": "模型总数",
464
463
  "Total Requests": "请求总数",
465
464
  "Total:": "全部的:",
466
- "traffic through OpenRouterX via MITM.": "通过 MITM 通过 OpenRouterX 的流量。",
465
+ "traffic through OpenrouterX via MITM.": "通过 MITM 通过 OpenrouterX 的流量。",
467
466
  "Translator Debug": "翻译器调试",
468
467
  "Try Again": "再试一次",
469
468
  "Tunnel connected!": "隧道连通!",
@@ -478,7 +477,7 @@
478
477
  "Usage by API Key": "按 API 密钥使用",
479
478
  "Usage by Endpoint": "按端点使用",
480
479
  "Usage by Model": "按型号使用",
481
- "Use Antigravity IDE & GitHub Copilot → with ANY provider/model from OpenRouterX": "使用 Antigravity IDE 和 GitHub Copilot → 与 OpenRouterX 的任何提供商/模型",
480
+ "Use Antigravity IDE & GitHub Copilot → with ANY provider/model from OpenrouterX": "使用 Antigravity IDE 和 GitHub Copilot → 与 OpenrouterX 的任何提供商/模型",
482
481
  "Use in Cursor/Cline": "在Cursor/Cline中使用",
483
482
  "Use the buttons above to add OpenAI or Anthropic compatible endpoints": "使用上面的按钮添加 OpenAI 或 Anthropic 兼容端点",
484
483
  "Use your API from any network": "从任何网络使用您的 API",
@@ -490,8 +489,8 @@
490
489
  "Warning": "警告",
491
490
  "When": "时间",
492
491
  "When ON, dashboard requires password. When OFF, access without login.": "当打开时,仪表板需要密码。当关闭时,无需登录即可访问。",
493
- "Windows: Run OpenRouterX terminal as Administrator": "Windows:以管理员身份运行 OpenRouterX 终端",
494
- "Windows: Run terminal (OpenRouterX) as Administrator to enable MITM": "Windows:以管理员身份运行终端 (OpenRouterX) 以启用 MITM",
492
+ "Windows: Run OpenrouterX terminal as Administrator": "Windows:以管理员身份运行 OpenrouterX 终端",
493
+ "Windows: Run terminal (OpenrouterX) as Administrator to enable MITM": "Windows:以管理员身份运行终端 (OpenrouterX) 以启用 MITM",
495
494
  "Writes to": "写入到",
496
495
  "You can override default pricing for specific models. Reset to defaults anytime to restore standard rates.": "您可以覆盖特定模型的默认定价。随时重置为默认值以恢复标准费率。",
497
496
  "Your": "你的",
@@ -512,22 +511,19 @@
512
511
  "The proxy server has been stopped.": "代理服务器已停止。",
513
512
  "Reload Page": "重新加载页面",
514
513
  "Service is running in terminal. You can close this web page. Shutdown will stop the service.": "服务正在终端中运行。您可以关闭此网页。关闭将停止服务。",
515
-
516
514
  "One Endpoint for": "统一端点,接入",
517
515
  "All AI Providers": "所有 AI 提供商",
518
516
  "Route AI requests through subscription, cheap, and free tiers with auto-fallback. One endpoint for Claude, GPT, Gemini, and more.": "通过订阅、低价和免费层级路由 AI 请求并自动回退。一个端点接入 Claude、GPT、Gemini 等。",
519
517
  "Get Started": "开始使用",
520
518
  "View on GitHub": "在 GitHub 上查看",
521
-
522
- "How 9Router Works": "9Router 工作原理",
519
+ "How OpenrouterX Works": "OpenrouterX 工作原理",
523
520
  "Data flows seamlessly through our intelligent routing system": "数据通过我们的智能路由系统无缝流转",
524
521
  "1. CLI & SDKs": "1. CLI 和 SDK",
525
522
  "Your requests start from your favorite tools — Cursor, Claude, Copilot, or any OpenAI-compatible SDK.": "请求从您常用的工具发起——Cursor、Claude、Copilot 或任何 OpenAI 兼容的 SDK。",
526
- "2. 9Router Hub": "2. 9Router 枢纽",
523
+ "2. OpenrouterX Hub": "2. OpenrouterX 枢纽",
527
524
  "Our engine analyzes the prompt and routes through your subscription, cheap, and free provider tiers with automatic fallback.": "我们的引擎分析提示词并通过您的订阅、低价和免费提供商层级路由,自动回退。",
528
525
  "3. AI Providers": "3. AI 提供商",
529
526
  "The request is fulfilled by OpenAI, Anthropic, Gemini, or others instantly.": "请求由 OpenAI、Anthropic、Gemini 或其他提供商即时响应。",
530
-
531
527
  "Powerful Features": "强大功能",
532
528
  "Everything you need to manage your AI infrastructure efficiently.": "高效管理 AI 基础设施所需的一切。",
533
529
  "Unified Endpoint": "统一端点",
@@ -546,26 +542,22 @@
546
542
  "Native CLI tool support for Cursor, Claude, Copilot, and more.": "原生支持 Cursor、Claude、Copilot 等 CLI 工具。",
547
543
  "Dashboard": "仪表盘",
548
544
  "Beautiful web dashboard for managing providers and monitoring usage.": "精美的 Web 仪表盘,用于管理提供商和监控使用情况。",
549
-
550
545
  "Get Started in 30 Seconds": "30 秒快速上手",
551
- "Install 9Router": "安装 9Router",
546
+ "Install OpenrouterX": "安装 OpenrouterX",
552
547
  "Open Dashboard": "打开仪表盘",
553
548
  "Route Requests": "路由请求",
554
549
  "npm install -g 9router": "npm install -g 9router",
555
550
  "open http://localhost:9099": "open http://localhost:9099",
556
551
  "Ready! Requests route automatically through your configured providers.": "就绪!请求将自动通过您配置的提供商路由。",
557
-
558
552
  "How it Works": "工作原理",
559
553
  "Docs": "文档",
560
554
  "GitHub": "GitHub",
561
-
562
555
  "Legal": "法律",
563
-
564
556
  "Manage your AI provider connections": "管理您的 AI 提供商连接",
565
557
  "Model combos with fallback": "模型组合及回退",
566
558
  "Monitor your API usage, token consumption, and request logs": "监控您的 API 使用量、Token 消耗和请求日志",
567
559
  "Track and manage your API quota limits": "跟踪和管理您的 API 配额限制",
568
- "Intercept CLI tool traffic and route through 9Router": "拦截 CLI 工具流量并通过 9Router 路由",
560
+ "Intercept CLI tool traffic and route through OpenrouterX": "拦截 CLI 工具流量并通过 OpenrouterX 路由",
569
561
  "Configure CLI tools": "配置 CLI 工具",
570
562
  "Manage your proxy pool configurations": "管理您的代理池配置",
571
563
  "API endpoint configuration": "API 端点配置",
@@ -575,15 +567,12 @@
575
567
  "MITM Proxy": "MITM 代理",
576
568
  "Translator": "翻译器",
577
569
  "Media Providers": "媒体提供商",
578
-
579
570
  "Theme": "主题",
580
571
  "Remote": "远程",
581
572
  "Logout": "退出登录",
582
573
  "Change Log": "更新日志",
583
-
584
574
  "Proxy Pools": "代理池",
585
575
  "MITM": "MITM",
586
-
587
576
  "Loading...": "加载中...",
588
577
  "Enter your password to access the dashboard": "输入密码以访问仪表盘",
589
578
  "Password": "密码",
@@ -592,7 +581,6 @@
592
581
  "Default password is 123456": "默认密码为 123456",
593
582
  "Invalid password": "密码错误",
594
583
  "An error occurred. Please try again.": "发生错误,请重试。",
595
-
596
584
  "light": "浅色",
597
585
  "dark": "深色",
598
586
  "system": "跟随系统",
@@ -602,11 +590,9 @@
602
590
  "Record request details for inspection in the logs view": "记录请求详情以在日志视图中查看",
603
591
  "Update Password": "修改密码",
604
592
  "Set Password": "设置密码",
605
-
606
593
  "Overview": "概览",
607
594
  "Details": "详情",
608
595
  "Search...": "搜索...",
609
-
610
596
  "Saving...": "保存中...",
611
597
  "Save": "保存",
612
598
  "Save Changes": "保存更改",
@@ -615,27 +601,22 @@
615
601
  "Import": "导入",
616
602
  "Deploying... (may take ~1 min)": "部署中...(可能需要约 1 分钟)",
617
603
  "Deploy": "部署",
618
-
619
604
  "Enable": "启用",
620
605
  "Disable": "禁用",
621
606
  "Token Saver": "Token 节省器",
622
607
  "Experimental": "实验性",
623
608
  "Compress tool output to reduce token usage.": "压缩工具输出以减少 Token 使用量。",
624
609
  "sk_9router (default)": "sk_9router(默认)",
625
-
626
610
  "Install Tailscale": "安装 Tailscale",
627
611
  "Installing Tailscale...": "正在安装 Tailscale...",
628
612
  "Tailscale installed": "Tailscale 已安装",
629
613
  "Tailscale Funnel": "Tailscale Funnel",
630
614
  "Allow dashboard access via tunnel": "允许通过隧道访问仪表盘",
631
-
632
615
  "Disconnected from server": "与服务器断开连接",
633
616
  "Attempting to reconnect...": "正在尝试重新连接...",
634
617
  "Click to retry": "点击重试",
635
-
636
618
  "Failed to load changelog:": "加载更新日志失败:",
637
619
  "Copied!": "已复制!",
638
-
639
620
  "Manage reusable per-connection proxies and bind them to provider connections.": "管理可复用的连接代理并绑定到提供商连接。",
640
621
  "Vercel Relay": "Vercel Relay",
641
622
  "Batch Import": "批量导入",
@@ -665,7 +646,6 @@
665
646
  "Proxy pool deleted": "代理池已删除",
666
647
  "Proxy test passed": "代理测试通过",
667
648
  "Proxy test failed": "代理测试失败",
668
-
669
649
  "Replay request flow — matches log files": "重放请求流程——匹配日志文件",
670
650
  "Client Request": "客户端请求",
671
651
  "Source Body": "源请求体",
@@ -678,7 +658,6 @@
678
658
  "Send": "发送",
679
659
  "→ OpenAI": "→ OpenAI",
680
660
  "→ Target": "→ 目标",
681
-
682
661
  "Terminal": "终端",
683
662
  "Full shell access": "完整 Shell 访问",
684
663
  "Desktop": "桌面",
@@ -690,8 +669,7 @@
690
669
  "Works on any device": "适用于任何设备",
691
670
  "Access your terminal, desktop & files from anywhere": "从任何地方访问您的终端、桌面和文件",
692
671
  "Get 9Remote": "获取 9Remote",
693
-
694
- "Manual configuration is still available if 9router is deployed on a remote server.": "如果 9router 部署在远程服务器上,仍可使用手动配置。",
672
+ "Manual configuration is still available if OpenrouterX is deployed on a remote server.": "如果 OpenrouterX 部署在远程服务器上,仍可使用手动配置。",
695
673
  "How to Install": "如何安装",
696
674
  "Hide": "隐藏",
697
675
  "Filter naming": "过滤命名",
@@ -710,13 +688,11 @@
710
688
  "Select models to add": "选择要添加的模型",
711
689
  "Add Model for OpenCode": "为 OpenCode 添加模型",
712
690
  "Default Model": "默认模型",
713
- "9Router Base URL": "9Router 基础 URL",
691
+ "OpenrouterX Base URL": "OpenrouterX 基础 URL",
714
692
  "Trust Cert": "信任证书",
715
693
  "Trusted": "已信任",
716
694
  "not detected locally": "未在本地检测到",
717
-
718
695
  "Select to pre-fill, then edit model ID in the input": "选择以预填充,然后在输入框中编辑模型 ID",
719
-
720
696
  "Free & Free Tier Providers": "免费及免费额度提供商",
721
697
  "Testing...": "测试中...",
722
698
  "Test All": "全部测试",
@@ -740,13 +716,11 @@
740
716
  "Model ID (optional)": "模型 ID(可选)",
741
717
  "If provider lacks /models endpoint, enter a model ID to validate via chat/completions instead.": "如果提供商不支持 /models 端点,请输入模型 ID 通过 chat/completions 进行验证。",
742
718
  "(via inference test)": "(通过推理测试)",
743
-
744
719
  "Delete this combo?": "删除此组合?",
745
720
  "Name is required": "名称为必填项",
746
721
  "Failed to create combo": "创建组合失败",
747
722
  "Failed to update combo": "更新组合失败",
748
723
  "Only letters, numbers, -, _ and . allowed": "仅允许使用字母、数字、-、_ 和 .",
749
-
750
724
  "Input Cost": "输入成本",
751
725
  "Output Cost": "输出成本",
752
726
  "Total Cost": "总成本",
@@ -755,18 +729,15 @@
755
729
  "Just now": "刚刚",
756
730
  "m ago": "分钟前",
757
731
  "h ago": "小时前",
758
-
759
732
  "None": "无",
760
733
  "disabled": "已禁用",
761
734
  "OAuth Account": "OAuth 账号",
762
735
  "no_proxy:": "无代理:",
763
736
  "Pool:": "代理池:",
764
737
  "Legacy:": "旧版:",
765
-
766
738
  "Error": "错误",
767
739
  "more": "更多",
768
740
  "Proxy": "代理",
769
-
770
741
  "No authentication required": "无需身份验证",
771
742
  "This provider is ready to use.": "此提供商已准备就绪。",
772
743
  "Available Models": "可用模型",
@@ -788,5 +759,57 @@
788
759
  "connections": "个连接",
789
760
  "Suggested free models (≥200k context):": "推荐的免费模型(≥200k 上下文):",
790
761
  "Get API Key →": "获取 API 密钥 →",
791
- "OAuth": "OAuth"
762
+ "OAuth": "OAuth",
763
+ "Network Analysis": "网络分析",
764
+ "Diagnose local connectivity, proxy, DNS, and MITM network impact": "诊断本地连接、代理、DNS 和 MITM 对网络的影响",
765
+ "Healthy": "健康",
766
+ "No transport errors in sampled logs": "采样日志中没有传输错误",
767
+ "The current app log window does not show route loss, DNS failures, proxy timeout, or socket reset patterns.": "当前应用日志窗口中没有出现路由丢失、DNS 故障、代理超时或套接字重置模式。",
768
+ "Socket resets": "连接重置",
769
+ "Upstream sockets were interrupted": "上游连接被中断",
770
+ "Requests were reset while in flight. This can come from upstream, Wi-Fi churn, or an intermediate proxy.": "请求进行中被重置。这可能来自上游服务、Wi-Fi 波动或中间代理。",
771
+ "External route instability": "外部路由不稳定",
772
+ "Network path instability is affecting OpenrouterX": "网络路径不稳定正在影响 OpenrouterX",
773
+ "The log pattern points to local route loss, transient TLS disconnects, or the configured upstream proxy timing out before API calls complete.": "日志模式指向本地路由丢失、短暂 TLS 断开,或配置的上游代理在 API 调用完成前超时。",
774
+ "Updated": "更新于",
775
+ "Route loss": "路由丢失",
776
+ "Proxy failures": "代理故障",
777
+ "DNS errors": "DNS 错误",
778
+ "Project Network Scope": "项目网络范围",
779
+ "System proxy": "系统代理",
780
+ "No macOS system proxy detected": "未检测到 macOS 系统代理",
781
+ "Enabled outside OpenrouterX": "在 OpenrouterX 外部启用",
782
+ "Risk level": "风险等级",
783
+ "Outbound proxy": "出站代理",
784
+ "Outbound scope": "出站范围",
785
+ "Targeted": "定向",
786
+ "MITM DNS tools": "MITM DNS 工具",
787
+ "Cloudflare tunnel": "Cloudflare 隧道",
788
+ "Tailscale": "Tailscale",
789
+ "Current Machine State": "当前机器状态",
790
+ "Platform": "平台",
791
+ "Hostname": "主机名",
792
+ "Default route": "默认路由",
793
+ "Wi-Fi status": "Wi-Fi 状态",
794
+ "Raw DNS and proxy snapshot": "原始 DNS 和代理快照",
795
+ "Findings": "发现",
796
+ "warning": "警告",
797
+ "success": "成功",
798
+ "info": "信息",
799
+ "Local route became unavailable": "本地路由不可用",
800
+ "EADDRNOTAVAIL means Node could not allocate a usable local outbound address at that moment. This normally points to Wi-Fi/DHCP/route churn or VPN/proxy path loss before an upstream request completed.": "EADDRNOTAVAIL 表示 Node 当时无法分配可用的本地出站地址。通常说明上游请求完成前发生了 Wi-Fi、DHCP、路由变化,或 VPN/代理路径丢失。",
801
+ "Configured outbound proxy timed out": "配置的出站代理超时",
802
+ "OpenrouterX fell back after the configured proxy connection timed out. Because the app stores this as a targeted proxy allowlist, the failure affects selected upstream API calls rather than macOS global networking.": "配置的代理连接超时后,OpenrouterX 已回退。由于应用将其作为定向代理白名单保存,该故障影响的是选定的上游 API 调用,而不是 macOS 全局网络。",
803
+ "Existing TLS sockets were reset": "现有 TLS 连接被重置",
804
+ "TLS disconnects and ECONNRESET are consistent with transient network drops, upstream resets, or proxy interruption while MITM passthrough traffic was active.": "TLS 断开和 ECONNRESET 与临时断网、上游重置,或 MITM 透传流量活动期间代理中断的表现一致。",
805
+ "No recent network transport errors in app logs": "应用日志中没有近期网络传输错误",
806
+ "The sampled OpenrouterX logs do not currently show connection resets, route loss, DNS failures, or proxy timeouts.": "当前采样的 OpenrouterX 日志没有显示连接重置、路由丢失、DNS 故障或代理超时。",
807
+ "Network Error Timeline": "网络错误时间线",
808
+ "No network transport errors in the sampled logs.": "采样日志中没有网络传输错误。",
809
+ "Enabled": "已启用",
810
+ "low": "低",
811
+ "medium": "中",
812
+ "high": "高",
813
+ "targeted": "定向",
814
+ "none": "无"
792
815
  }
@@ -12,7 +12,7 @@
12
12
  "Logout": "登出",
13
13
  "Login": "登錄",
14
14
  "Providers": "提供者",
15
- "Usage": "使用情況",
15
+ "Usage": "統計",
16
16
  "API Key": "API 金鑰",
17
17
  "Connected": "已連接",
18
18
  "Disconnected": "未連接",
@@ -56,7 +56,7 @@
56
56
  "Date": "日期",
57
57
  "Time": "時間",
58
58
  "Created": "已建立",
59
- "Updated": "已更新",
59
+ "Updated": "更新於",
60
60
  "Actions": "操作",
61
61
  "Details": "詳細信息",
62
62
  "View": "查看",
@@ -70,7 +70,7 @@
70
70
  "Enable": "啟用",
71
71
  "Disable": "禁用",
72
72
  "Enabled": "已啟用",
73
- "Disabled": "已禁用",
73
+ "Disabled": "已停用",
74
74
  "Online": "在線",
75
75
  "Offline": "離線",
76
76
  "Available": "可用",
@@ -91,9 +91,7 @@
91
91
  "Dark": "深色",
92
92
  "Auto": "自動",
93
93
  "Endpoint": "端點",
94
- "Providers": "提供者",
95
94
  "Combos": "組合",
96
- "Usage": "統計",
97
95
  "Quota Tracker": "配額跟蹤",
98
96
  "MITM": "MITM",
99
97
  "CLI Tools": "CLI 工具",
@@ -110,7 +108,7 @@
110
108
  "Manage your AI provider connections": "管理您的 AI 提供者連接",
111
109
  "Model combos with fallback": "具有備用的模型組合",
112
110
  "Monitor your API usage, token consumption, and request logs": "監控您的 API 使用、令牌消耗和請求日誌",
113
- "Intercept CLI tool traffic and route through OpenRouterX": "攔截 CLI 工具流量並通過 OpenRouterX 路由",
111
+ "Intercept CLI tool traffic and route through OpenrouterX": "攔截 CLI 工具流量並通過 OpenrouterX 路由",
114
112
  "Configure CLI tools": "配置 CLI 工具",
115
113
  "API endpoint configuration": "API 端點配置",
116
114
  "Manage your preferences": "管理您的首選項",
@@ -150,7 +148,6 @@
150
148
  "No Proxy": "無代理",
151
149
  "Comma-separated hostnames/domains to bypass the proxy.": "逗號分隔的主機名/域以繞過代理。",
152
150
  "Test proxy URL": "測試代理 URL",
153
- "Apply": "應用",
154
151
  "Proxy settings applied": "已應用代理設置",
155
152
  "Proxy enabled": "已啟用代理",
156
153
  "Proxy disabled": "已禁用代理",
@@ -175,10 +172,9 @@
175
172
  "Cert": "證書",
176
173
  "Server": "服務器",
177
174
  "Purpose:": "目的:",
178
- "Use Antigravity IDE & GitHub Copilot → with ANY provider/model from OpenRouterX": "使用 Antigravity IDE 和 GitHub Copilot → 與 OpenRouterX 中的任何提供者/模型一起",
175
+ "Use Antigravity IDE & GitHub Copilot → with ANY provider/model from OpenrouterX": "使用 Antigravity IDE 和 GitHub Copilot → 與 OpenrouterX 中的任何提供者/模型一起",
179
176
  "How it works:": "工作原理:",
180
- "Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → OpenRouterX → response to Antigravity/Copilot": "Antigravity/Copilot IDE 請求 → DNS 重定向到 localhost:443 → MITM 代理攔截 → OpenRouterX → 响應到 Antigravity/Copilot",
181
- "API Key": "API 金鑰",
177
+ "Antigravity/Copilot IDE request → DNS redirect to localhost:443 → MITM proxy intercepts → OpenrouterX → response to Antigravity/Copilot": "Antigravity/Copilot IDE 請求 → DNS 重定向到 localhost:443 → MITM 代理攔截 → OpenrouterX → 响應到 Antigravity/Copilot",
182
178
  "No API keys — create one in Keys page": "沒有 API 金鑰 — 在金鑰頁面中創建一個",
183
179
  "sk_openrouterx (default)": "sk_openrouterx(默認)",
184
180
  "Server started": "服務器已啟動",
@@ -192,5 +188,57 @@
192
188
  "Sudo Password Required": "需要 Sudo 密碼",
193
189
  "Enter your sudo password to start/stop MITM server": "輸入您的 Sudo 密碼以啟動/停止 MITM 服務器",
194
190
  "Sudo Password": "Sudo 密碼",
195
- "Confirm": "確認"
191
+ "Network Analysis": "網路分析",
192
+ "Diagnose local connectivity, proxy, DNS, and MITM network impact": "診斷本機連線、代理、DNS 和 MITM 對網路的影響",
193
+ "Healthy": "健康",
194
+ "No transport errors in sampled logs": "取樣日誌中沒有傳輸錯誤",
195
+ "The current app log window does not show route loss, DNS failures, proxy timeout, or socket reset patterns.": "目前應用程式日誌視窗中沒有出現路由遺失、DNS 故障、代理逾時或 socket 重置模式。",
196
+ "Socket resets": "連線重置",
197
+ "Upstream sockets were interrupted": "上游連線被中斷",
198
+ "Requests were reset while in flight. This can come from upstream, Wi-Fi churn, or an intermediate proxy.": "請求進行中被重置。這可能來自上游服務、Wi-Fi 波動或中間代理。",
199
+ "External route instability": "外部路由不穩定",
200
+ "Network path instability is affecting OpenrouterX": "網路路徑不穩定正在影響 OpenrouterX",
201
+ "The log pattern points to local route loss, transient TLS disconnects, or the configured upstream proxy timing out before API calls complete.": "日誌模式指向本機路由遺失、短暫 TLS 斷線,或設定的上游代理在 API 呼叫完成前逾時。",
202
+ "Route loss": "路由遺失",
203
+ "Proxy failures": "代理故障",
204
+ "DNS errors": "DNS 錯誤",
205
+ "Project Network Scope": "專案網路範圍",
206
+ "System proxy": "系統代理",
207
+ "No macOS system proxy detected": "未偵測到 macOS 系統代理",
208
+ "Enabled outside OpenrouterX": "在 OpenrouterX 外部啟用",
209
+ "Risk level": "風險等級",
210
+ "Outbound proxy": "出站代理",
211
+ "Outbound scope": "出站範圍",
212
+ "Targeted": "定向",
213
+ "MITM DNS tools": "MITM DNS 工具",
214
+ "Cloudflare tunnel": "Cloudflare 通道",
215
+ "Tailscale": "Tailscale",
216
+ "Current Machine State": "目前機器狀態",
217
+ "Platform": "平台",
218
+ "Hostname": "主機名稱",
219
+ "Default route": "預設路由",
220
+ "Wi-Fi status": "Wi-Fi 狀態",
221
+ "Raw DNS and proxy snapshot": "原始 DNS 和代理快照",
222
+ "Findings": "發現",
223
+ "warning": "警告",
224
+ "success": "成功",
225
+ "info": "資訊",
226
+ "Local route became unavailable": "本機路由變為不可用",
227
+ "EADDRNOTAVAIL means Node could not allocate a usable local outbound address at that moment. This normally points to Wi-Fi/DHCP/route churn or VPN/proxy path loss before an upstream request completed.": "EADDRNOTAVAIL 表示 Node 當時無法分配可用的本機出站位址。通常說明上游請求完成前發生了 Wi-Fi、DHCP、路由變化,或 VPN/代理路徑遺失。",
228
+ "Configured outbound proxy timed out": "設定的出站代理逾時",
229
+ "OpenrouterX fell back after the configured proxy connection timed out. Because the app stores this as a targeted proxy allowlist, the failure affects selected upstream API calls rather than macOS global networking.": "設定的代理連線逾時後,OpenrouterX 已回退。由於應用程式將其儲存為定向代理允許清單,該故障影響的是選定的上游 API 呼叫,而不是 macOS 全域網路。",
230
+ "Existing TLS sockets were reset": "現有 TLS 連線被重置",
231
+ "TLS disconnects and ECONNRESET are consistent with transient network drops, upstream resets, or proxy interruption while MITM passthrough traffic was active.": "TLS 斷線和 ECONNRESET 與暫時斷網、上游重置,或 MITM 透傳流量活動期間代理中斷的表現一致。",
232
+ "No recent network transport errors in app logs": "應用程式日誌中沒有近期網路傳輸錯誤",
233
+ "The sampled OpenrouterX logs do not currently show connection resets, route loss, DNS failures, or proxy timeouts.": "目前取樣的 OpenrouterX 日誌沒有顯示連線重置、路由遺失、DNS 故障或代理逾時。",
234
+ "Network Error Timeline": "網路錯誤時間線",
235
+ "No network transport errors in the sampled logs.": "取樣日誌中沒有網路傳輸錯誤。",
236
+ "Unknown": "未知",
237
+ "None": "無",
238
+ "low": "低",
239
+ "medium": "中",
240
+ "high": "高",
241
+ "active": "作用中",
242
+ "targeted": "定向",
243
+ "none": "無"
196
244
  }
@@ -5,8 +5,8 @@ const { MITM_DIR } = require("../paths");
5
5
 
6
6
  const ROOT_CA_KEY_PATH = path.join(MITM_DIR, "rootCA.key");
7
7
  const ROOT_CA_CERT_PATH = path.join(MITM_DIR, "rootCA.crt");
8
- const ROOT_CA_CN = "OpenRouterX MITM Root CA";
9
- const ROOT_CA_ORG = "OpenRouterX";
8
+ const ROOT_CA_CN = "OpenrouterX MITM Root CA";
9
+ const ROOT_CA_ORG = "OpenrouterX";
10
10
 
11
11
  /**
12
12
  * Check if cert file is expired or expiring within 30 days
@@ -21,7 +21,7 @@ function isCertExpired(certPath) {
21
21
  }
22
22
  }
23
23
 
24
- function isOpenRouterXRootCA(certPath) {
24
+ function isOpenrouterXRootCA(certPath) {
25
25
  try {
26
26
  const cert = forge.pki.certificateFromPem(fs.readFileSync(certPath, "utf8"));
27
27
  const cn = cert.subject.getField("CN")?.value;
@@ -38,7 +38,7 @@ function isOpenRouterXRootCA(certPath) {
38
38
  */
39
39
  async function generateRootCA() {
40
40
  const exists = fs.existsSync(ROOT_CA_KEY_PATH) && fs.existsSync(ROOT_CA_CERT_PATH);
41
- if (exists && !isCertExpired(ROOT_CA_CERT_PATH) && isOpenRouterXRootCA(ROOT_CA_CERT_PATH)) {
41
+ if (exists && !isCertExpired(ROOT_CA_CERT_PATH) && isOpenrouterXRootCA(ROOT_CA_CERT_PATH)) {
42
42
  console.log("✅ Root CA already exists");
43
43
  return { key: ROOT_CA_KEY_PATH, cert: ROOT_CA_CERT_PATH };
44
44
  }
@@ -6,14 +6,14 @@ const ROUTER_BASE = String(process.env.MITM_ROUTER_BASE || DEFAULT_LOCAL_ROUTER)
6
6
  .replace(/\/+$/, "") || DEFAULT_LOCAL_ROUTER;
7
7
  const API_KEY = process.env.ROUTER_API_KEY;
8
8
 
9
- // Headers that must not be forwarded to 9Router
9
+ // Headers that must not be forwarded to OpenrouterX
10
10
  const STRIP_HEADERS = new Set([
11
11
  "host", "content-length", "connection", "transfer-encoding",
12
12
  "content-type", "authorization"
13
13
  ]);
14
14
 
15
15
  /**
16
- * Send body to 9Router at the given path and return the fetch Response object.
16
+ * Send body to OpenrouterX at the given path and return the fetch Response object.
17
17
  * Optionally forwards client headers (stripped of hop-by-hop / overridden keys).
18
18
  */
19
19
  async function fetchRouter(openaiBody, path = "/v1/chat/completions", clientHeaders = {}) {
@@ -1,7 +1,7 @@
1
1
  const { err } = require("../logger");
2
2
  const { fetchRouter, pipeSSE } = require("./base");
3
3
 
4
- // Map Copilot endpoint 9Router path
4
+ // Map Copilot endpoint -> OpenrouterX path
5
5
  const URL_MAP = {
6
6
  "/chat/completions": "/v1/chat/completions",
7
7
  "/v1/messages": "/v1/messages",
@@ -16,7 +16,7 @@ function resolveRouterPath(reqUrl) {
16
16
  }
17
17
 
18
18
  /**
19
- * Intercept Copilot request — replace model and forward to matching 9Router endpoint
19
+ * Intercept Copilot request — replace model and forward to matching OpenrouterX endpoint
20
20
  */
21
21
  async function intercept(req, res, bodyBuffer, mappedModel) {
22
22
  try {
@@ -103,7 +103,7 @@ function buildInjectedModel(publicModelId) {
103
103
  canonical_slug: publicModelId,
104
104
  name: publicModelId,
105
105
  created: 0,
106
- description: "Injected by 9Router MITM mapping",
106
+ description: "Injected by OpenrouterX MITM mapping",
107
107
  architecture: {
108
108
  modality: "text->text",
109
109
  input_modalities: ["text"],
@@ -158,7 +158,7 @@ async function handleModelsRequest(req, res, bodyBuffer, passthrough, aliasMappi
158
158
  }
159
159
 
160
160
  /**
161
- * Intercept OpenRouter request — replace public model alias and forward to matching 9Router endpoint.
161
+ * Intercept OpenRouter request — replace public model alias and forward to matching OpenrouterX endpoint.
162
162
  */
163
163
  async function intercept(req, res, bodyBuffer, mappedModel, passthrough, aliasMappings = {}) {
164
164
  try {
@@ -189,18 +189,18 @@ function handleLocalAntigravityBootstrap(req, res) {
189
189
  allowedTiers: [
190
190
  {
191
191
  id: "standard-tier",
192
- name: "OpenRouterX Local",
192
+ name: "OpenrouterX Local",
193
193
  description: "Local MITM bootstrap tier",
194
194
  isDefault: true,
195
195
  },
196
196
  ],
197
197
  currentTier: {
198
198
  id: "standard-tier",
199
- name: "OpenRouterX Local",
199
+ name: "OpenrouterX Local",
200
200
  },
201
201
  userTier: {
202
202
  id: "standard-tier",
203
- name: "OpenRouterX Local",
203
+ name: "OpenrouterX Local",
204
204
  },
205
205
  tosAccepted: true,
206
206
  done: true,
@@ -384,7 +384,7 @@ const server = https.createServer(sslOptions, async (req, res) => {
384
384
  const bodyBuffer = await collectBodyRaw(req);
385
385
  if (ENABLE_FILE_LOG && shouldDumpRequest(req)) dumpRequest(req, bodyBuffer, "raw");
386
386
 
387
- // Anti-loop: skip requests from 9Router
387
+ // Anti-loop: skip requests from OpenrouterX
388
388
  if (req.headers[INTERNAL_REQUEST_HEADER.name] === INTERNAL_REQUEST_HEADER.value) {
389
389
  return passthrough(req, res, bodyBuffer);
390
390
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yina-npm/openrouterx",
3
- "version": "0.4.25",
3
+ "version": "0.4.26",
4
4
  "description": "openrouterX CLI - Start and manage 9Router server",
5
5
  "bin": {
6
6
  "openrouterX": "./cli.js"
@@ -277,7 +277,7 @@ async function buildDroidHeader() {
277
277
  ].join("\n");
278
278
  }
279
279
 
280
- // Extract 9Router custom model config
280
+ // Extract OpenrouterX custom model config
281
281
  const custom = settings?.customModels?.find(m => m.id === "custom:9Router-0");
282
282
  const lines = [`Status: ${COLORS.green}✓ Configured${COLORS.reset}`];
283
283
  if (custom?.baseUrl) lines.push(`Endpoint: ${COLORS.cyan}${custom.baseUrl}${COLORS.reset}`);
@@ -360,7 +360,7 @@ async function buildOpenClawHeader() {
360
360
  ].join("\n");
361
361
  }
362
362
 
363
- // Extract 9Router provider config
363
+ // Extract OpenrouterX provider config
364
364
  const provider = settings?.models?.providers?.["9router"];
365
365
  const primary = settings?.agents?.defaults?.model?.primary || "";
366
366
  const model = primary.startsWith("9router/") ? primary.replace("9router/", "") : (provider?.models?.[0]?.id || "");
@@ -437,7 +437,7 @@ async function showCliToolsMenu(port, breadcrumb = []) {
437
437
  await showMenuWithBack({
438
438
  title: "🔧 CLI Tools",
439
439
  breadcrumb,
440
- headerContent: `Configure CLI tools to use 9Router\nEndpoint: ${endpoint}`,
440
+ headerContent: `Configure CLI tools to use OpenrouterX\nEndpoint: ${endpoint}`,
441
441
  items: [
442
442
  {
443
443
  label: "Claude Code",
@@ -1 +0,0 @@
1
- self.__BUILD_MANIFEST=function(e,s,t){return{__rewrites:{afterFiles:[{has:e,source:"/v1/v1/:path*",destination:s},{has:e,source:"/v1/v1",destination:t},{has:e,source:"/codex/:path*",destination:"/api/v1/responses"},{has:e,source:"/v1/:path*",destination:s},{has:e,source:"/v1",destination:t}],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:133,errorRate:1e-4,numBits:2550,numHashes:14,bitArray:[1,1,1,1,0,0,1,1,0,0,1,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,1,0,0,1,1,0,1,1,1,0,0,0,0,1,0,0,0,1,1,1,1,0,1,1,1,0,1,0,1,0,0,1,1,0,1,0,0,1,0,0,1,0,0,0,0,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,0,1,0,0,1,0,0,1,1,1,1,0,1,1,0,1,0,1,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,1,0,1,0,1,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,0,1,0,0,0,1,1,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,1,1,0,0,0,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,0,1,1,0,1,1,1,1,1,1,1,0,0,1,0,1,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,1,1,0,1,1,0,1,1,1,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0,1,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,0,1,1,0,1,1,0,1,0,1,0,1,1,1,0,1,1,0,0,1,0,1,1,1,1,1,1,0,0,1,1,1,1,1,0,1,0,0,1,1,1,1,1,0,1,1,0,1,0,1,1,1,0,1,0,1,0,1,1,1,0,0,1,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,1,1,1,0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1,0,1,1,0,0,1,1,1,0,1,0,0,1,0,1,1,0,0,0,1,0,0,0,1,0,0,1,1,0,1,0,0,0,1,1,1,1,0,0,1,1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,1,0,0,0,1,0,1,1,1,0,0,0,1,0,1,0,1,0,0,1,0,1,1,0,0,0,0,1,1,0,1,0,0,0,0,1,0,0,0,1,1,1,0,0,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,0,0,1,0,1,0,0,1,1,0,0,0,1,1,0,0,0,1,0,1,1,1,1,1,0,0,1,1,1,1,0,0,1,0,1,1,1,1,0,1,1,0,0,1,1,0,1,1,0,0,1,0,1,1,1,1,1,0,1,0,1,0,1,0,1,1,0,1,0,0,1,0,0,0,1,1,1,0,0,1,0,0,1,1,1,0,1,1,1,0,1,1,1,0,1,0,0,1,0,1,1,0,1,1,1,0,1,0,1,0,0,0,1,0,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,0,0,0,1,1,1,1,0,0,1,0,1,1,0,1,1,1,0,1,1,1,0,0,0,0,1,1,0,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,0,1,0,1,0,0,0,0,0,1,1,1,0,0,1,0,1,0,0,0,1,1,0,0,1,0,0,0,1,1,1,1,1,0,1,0,1,0,0,0,1,1,1,0,0,0,1,1,1,1,1,0,1,0,0,1,0,0,1,0,1,1,1,1,0,0,0,1,0,1,1,1,0,1,1,0,1,1,1,0,1,0,1,1,1,0,1,1,0,1,1,1,1,0,1,0,0,1,0,0,0,1,1,1,1,1,0,1,1,0,1,1,0,1,1,1,0,0,1,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,1,1,0,0,1,1,1,0,1,0,1,1,0,0,1,1,0,1,0,1,1,1,1,1,1,0,0,1,1,1,1,1,1,0,1,0,1,0,0,1,0,0,1,1,0,0,0,0,1,0,0,0,0,1,1,0,1,1,1,0,1,1,0,1,0,0,1,1,1,0,0,1,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,1,1,0,1,1,0,0,1,1,0,1,1,0,1,1,1,0,1,1,1,1,1,0,1,0,0,0,0,0,1,1,0,1,0,1,0,0,1,0,1,0,1,1,0,0,0,1,1,1,0,1,1,0,1,1,1,0,1,1,0,1,1,0,1,0,1,0,0,0,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0,0,1,0,1,1,1,1,0,1,0,0,0,1,0,1,1,1,1,1,0,0,0,1,1,0,0,0,1,1,1,0,1,0,1,0,1,1,1,0,0,0,0,0,0,1,0,0,0,0,1,0,1,0,0,1,0,0,1,0,1,0,0,1,0,1,1,1,1,1,0,1,1,0,0,0,1,1,0,1,0,1,1,0,0,0,0,1,0,1,0,1,1,0,0,1,0,0,0,1,0,0,0,1,1,1,1,1,0,1,0,0,1,1,0,1,0,0,1,1,1,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1,1,1,1,1,0,1,1,0,1,1,1,1,0,1,1,1,1,1,0,1,0,1,1,0,0,0,1,0,1,1,1,1,1,0,0,1,1,1,0,0,1,0,1,1,0,0,1,1,1,1,1,0,1,0,1,0,1,0,0,0,1,0,0,1,0,1,1,1,0,1,1,1,1,0,1,1,1,0,1,1,0,1,1,1,0,0,0,0,0,1,1,0,1,1,1,0,1,0,0,1,1,1,1,0,1,1,0,0,1,1,0,1,1,1,0,1,1,1,1,0,0,1,1,0,0,1,1,0,0,1,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,0,1,1,1,0,1,0,1,0,0,1,0,1,0,1,0,0,0,0,1,1,0,0,1,0,0,0,1,1,1,1,0,0,1,0,0,0,1,0,0,0,1,1,0,0,1,1,1,1,0,1,0,1,1,0,0,1,0,0,1,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,1,0,1,0,1,0,1,1,1,1,1,0,0,0,0,0,1,1,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,1,1,0,1,0,1,1,0,1,1,0,1,1,1,1,1,1,0,0,0,1,0,0,0,0,1,0,0,0,0,1,1,1,1,1,0,0,1,0,1,1,1,1,0,1,0,0,1,1,0,1,1,1,0,0,1,1,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,1,1,1,0,1,0,1,0,1,1,0,1,0,0,1,1,0,1,1,0,0,1,0,1,1,1,1,1,1,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1,1,0,0,1,1,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,1,1,0,0,0,1,0,1,1,1,0,0,0,1,0,0,1,0,1,0,0,1,0,0,0,1,0,0,0,1,1,0,0,1,0,1,0,0,0,1,1,1,0,1,0,0,1,0,1,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,1,1,1,0,1,0,0,0,1,0,1,1,0,0,0,0,0,0,1,0,1,1,0,0,0,0,1,1,0,1,1,1,0,0,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,1,0,0,0,1,1,0,0,0,0,0,1,0,1,1,1,0,0,0,1,0,0,1,0,1,1,0,0,0,0,0,0,1,1,0,1,0,0,1,0,0,0,1,0,1,1,1,1,1,0,1,1,1,0,1,0,0,0,0,1,0,0,1,1,0,0,1,1,0,1,0,0,1,1,0,1,1,0,1,0,1,1,0,0,0,1,1,0,1,0,1,1,0,0,1,0,0,1,0,0,1,1,0,1,0,0,1,1,1,0,0,1,1,0,1,0,1,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,0,1,1,0,0,1,1,1,1,0,1,1,1,0,1,1,0,1,0,1,0,1,0,0,0,0,1,1,0,0,1,1,1,0,1,0,0,0,0,1,0,0,0,0,1,1,1,0,1,0,0,0,1,0,1,0,0,0,1,0,1,0,1,1,1,0,0,0,1,0,1,1,1,0,1,0,1,1,1,1,0,0,0,0,0,1,0,1,1,0,0,0,1,1,1,0,1,1,0,0,1,0,1,1,0,1,1,0,0,1,0,1,1,1,0,0,0,1,0,1,0,0,0,1,1,0,1,1,1,0,1,1,1,1,0,1,1,1,1,1,0,1,0,0,1,1,0,0,0,1,1,1,0,0,1,0,1,0,1,0,1,0,1,1,0,0,1,0,0,0,0,1,1,0,1,1,0,1,0,0,1,1,0,1,1,1,1,0,1,1,0,0,1,0,0,1,1,1,0,1,0,1,0,0,1,0,0,0,0,0,1,0,1,1,1,1,0,1,1,0,1,0,1,0,1,1,1,0,1,1,0,1,1,1,1,1,0,1,1,1,0,0,0,1,0,1,1,0,0,1,0,0,0,0,0,0,1,1,1,1,0,0,1,0,0,1,0,0,0,1,0,0,1,1,1,1,0,0,1,0,1,1,0,1,1,1,0,0,0,1,1,0,0,1,1,1,0,1,0,0,0,1,0,0,0,1,0,0,1,0,1,0,1,1,1,1,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,1,0,0,1,1,0,1,0,0,1,1,0,0,0,0,0,1,1,0,1,0,0,1,1,1,0,1,1,0,0,1,1,0,0,0,0,1,0,1,1,0,0,0,0,0,1,0,0,1,0,1,0,1,1,1,0,0,1,0,1,1,0,1,1,1,1,1,1,0,1,0,1,1,1,0,0,0,1,1,1,1,1,1,0,1,1,0,0,0,1,0,1,0,1,1,0,1,0,0,1,1,0,0,1,0,0,1,1,0,0,0,0,1,0,0,1,1,0,1,1,1,0,0,0,0,0,0,0,0,1,0,1,0,1,1,0,0,0,0,1,1,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,0,0,1,1,1,0,0,0,0,1,1,1,0,1,1,1,1,0,0,1,0,0,0,0,1,0,0,1,0,1,0,0,0,0,1,1,1,1,1,0,1,1,0,0,1,0,0,0,1,1,1,1,0,1,1,0,0,1,0,1,1,1,1,1,1,0,1,1,0,1,0,1,1,0,0,1,0,1,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,0,1,0,0,1,1,0,1,1,1,1,0,0,1,0,0,0,0,1,0,1,0,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,0,0,1,1,1,0,1,1,0,1,1,0,0,1,1,1,0,0,1,1,1,0,1,1,1,0,1,0,1,1,0,0,1,0,1,1,1,1,0,1,0,1,1,1,1,0,1,0,1,1,0,1,0,1,1,0,1]},__routerFilterDynamic:{numItems:13,errorRate:1e-4,numBits:250,numHashes:14,bitArray:[0,0,1,0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,0,0,1,0,0,1,0,1,1,0,1,1,0,0,1,1,1,1,0,0,0,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,0,1,1,0,1,0,1,1,1,1,0,1,1,0,1,1,1,1,1,0,1,1,1,1,1,0,0,1,0,1,0,1,1,1,1,1,1,1,0,1,1,0,1,0,1,0,1,1,1,1,1,1,0,0,0,0,1,0,0,1,0,0,1,0,1,0,0,1,0,0,1,0,0,1,1,0,0,1,0,1,1,0,1,1,0,1,0,0,1,0,1,1,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,1,1,1,1,1,0,0,0,0,1,0,1,0,1,1,0,0,0,1,0,0,1,0,1,0,1,0,0,0,0,0,0,1,1,0,0,1,0,1,1,1,1,0,1,0,1,1,0,1,0,1,0,0,0,0,0,1,0,1,1,1,0,0,0,0,1,1,1,1,1,0,0,1,1,0,0,0,0,1,0,0,0,0,0,1,1,1,1]},sortedPages:["/_app"]}}(void 0,"/api/v1/:path*","/api/v1"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();