vansrouter 0.7.4 → 0.7.7

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 (309) hide show
  1. package/README.md +1 -1
  2. package/app/.next-cli-build/BUILD_ID +1 -1
  3. package/app/.next-cli-build/app-path-routes-manifest.json +15 -15
  4. package/app/.next-cli-build/build-manifest.json +3 -3
  5. package/app/.next-cli-build/prerender-manifest.json +3 -3
  6. package/app/.next-cli-build/react-loadable-manifest.json +2 -2
  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_client-reference-manifest.js +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  32. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  33. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  34. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  35. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  36. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  37. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  38. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  39. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  41. package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  42. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  43. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  44. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  45. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  46. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  47. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  48. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  49. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  50. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  51. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  52. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  53. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  54. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  55. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  56. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  57. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  58. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
  59. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  60. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  61. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  62. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  63. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  64. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  65. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  66. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  67. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  68. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  69. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  70. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
  71. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  72. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  73. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  74. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  75. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  76. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  77. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  78. package/app/.next-cli-build/server/app/callback.html +1 -1
  79. package/app/.next-cli-build/server/app/callback.rsc +4 -4
  80. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  81. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  82. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  83. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  84. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  85. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  86. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  87. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  88. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  89. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  90. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  91. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  92. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  93. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  94. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  95. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  96. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  97. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  98. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  99. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  100. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  101. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  102. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  103. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  104. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  105. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  106. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  107. package/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  108. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  109. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  110. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  111. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  112. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  113. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  114. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  115. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  116. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  117. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  118. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  119. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  120. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  121. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  122. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  123. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  124. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  125. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  126. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  127. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  128. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  129. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  130. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  131. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  132. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  133. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  134. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  135. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  136. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  137. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  138. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  139. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  140. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  141. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  142. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  143. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  144. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  145. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  146. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  147. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  148. package/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  149. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  150. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  151. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  152. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  153. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  154. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  155. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  156. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  157. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  158. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  159. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  160. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  161. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  162. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  163. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  164. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  165. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  166. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  167. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  168. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  169. package/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  170. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  171. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  172. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  173. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  174. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  175. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  176. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  177. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  178. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  179. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  180. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  181. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  182. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  183. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  184. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  185. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  186. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  187. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  188. package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  189. package/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  190. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  191. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  192. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  193. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  194. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  195. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  196. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  197. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  198. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  199. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  200. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  201. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  202. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  203. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  204. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  205. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  206. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  207. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  208. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  209. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  210. package/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
  211. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  212. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  213. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  214. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  215. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  216. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  217. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +4 -4
  218. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  219. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  220. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
  221. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
  222. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  223. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  224. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  225. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
  226. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  227. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +4 -4
  228. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  229. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  230. package/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  231. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  232. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  233. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  234. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  235. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  236. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  237. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  238. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  239. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  240. package/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  241. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  242. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  243. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  244. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  245. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  246. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  247. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  248. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  249. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  250. package/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  251. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  252. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  253. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  254. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  255. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  256. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  257. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  258. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  259. package/app/.next-cli-build/server/app/landing.html +1 -1
  260. package/app/.next-cli-build/server/app/landing.rsc +4 -4
  261. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
  262. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  263. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  264. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  265. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  266. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  267. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  268. package/app/.next-cli-build/server/app/login.html +1 -1
  269. package/app/.next-cli-build/server/app/login.rsc +5 -5
  270. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  271. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  272. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  273. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  274. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  275. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  276. package/app/.next-cli-build/server/app/masuk/page_client-reference-manifest.js +1 -1
  277. package/app/.next-cli-build/server/app-paths-manifest.json +15 -15
  278. package/app/.next-cli-build/server/chunks/1536.js +1 -1
  279. package/app/.next-cli-build/server/chunks/2557.js +3 -3
  280. package/app/.next-cli-build/server/chunks/383.js +1 -1
  281. package/app/.next-cli-build/server/chunks/403.js +1 -1
  282. package/app/.next-cli-build/server/chunks/4418.js +16 -14
  283. package/app/.next-cli-build/server/chunks/4544.js +1 -1
  284. package/app/.next-cli-build/server/chunks/4574.js +2 -2
  285. package/app/.next-cli-build/server/chunks/5006.js +1 -1
  286. package/app/.next-cli-build/server/chunks/5290.js +1 -1
  287. package/app/.next-cli-build/server/chunks/5598.js +1 -1
  288. package/app/.next-cli-build/server/chunks/6159.js +1 -1
  289. package/app/.next-cli-build/server/chunks/7916.js +1 -1
  290. package/app/.next-cli-build/server/chunks/9984.js +1 -1
  291. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  292. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  293. package/app/.next-cli-build/server/pages/404.html +1 -1
  294. package/app/.next-cli-build/server/pages/500.html +1 -1
  295. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  296. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  297. package/app/.next-cli-build/static/chunks/4385-7cd46625904c1b7b.js +1 -0
  298. package/app/.next-cli-build/static/chunks/497-e70e37c356d2ad24.js +1 -0
  299. package/app/.next-cli-build/static/chunks/{5737-b48f5e3f71caff94.js → 5737-db655a51294730ae.js} +1 -1
  300. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-843674c44029b01b.js +1 -0
  301. package/app/.next-cli-build/static/chunks/{webpack-709c19c4ca395e42.js → webpack-79b65541449c3a45.js} +1 -1
  302. package/app/package.json +1 -1
  303. package/package.json +1 -1
  304. package/src/cli/tray/tray.ps1 +130 -79
  305. package/app/.next-cli-build/static/chunks/4385-87a1b455709d7de4.js +0 -1
  306. package/app/.next-cli-build/static/chunks/497-240bb61834e40ac1.js +0 -1
  307. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-ab94afac28af93d9.js +0 -1
  308. /package/app/.next-cli-build/static/{5ICo_gd4bXJ9z9cGegOnS → dnYXWBMmy78xJ8_-FfW5B}/_buildManifest.js +0 -0
  309. /package/app/.next-cli-build/static/{5ICo_gd4bXJ9z9cGegOnS → dnYXWBMmy78xJ8_-FfW5B}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=3883,a.ids=[3883],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},7663:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>X,patchFetch:()=>W,routeModule:()=>S,serverHooks:()=>V,workAsyncStorage:()=>T,workUnitAsyncStorage:()=>U});var d={};c.r(d),c.d(d,{OPTIONS:()=>Q,POST:()=>R});var e=c(12334),f=c(59399),g=c(8894),h=c(83760),i=c(34958),j=c(970),k=c(261),l=c(28112),m=c(52194),n=c(9410),o=c(68673),p=c(47471),q=c(13093),r=c(98563),s=c(7572),t=c(86439),u=c(33610),v=c(14836),w=c(15261),x=c(92398),y=c(90293),z=c(83950),A=c(44004),B=c(94164),C=c(91253),D=c(84310);async function E(a,b,c){let d=new AbortController,e=setTimeout(()=>d.abort(),c);try{let c=await fetch(a,{...b,headers:function(a){if(!a)return a;let b={};for(let[c,d]of Object.entries(a))b[c]="string"==typeof d?d.replace(/[^\x00-\xFF]/g,"").trim():d;return b}(b.headers),signal:d.signal});return{ok:!0,res:c}}catch(a){return{ok:!1,timeout:a?.name==="AbortError",error:a?.message||String(a)}}finally{clearTimeout(e)}}function F(a,b){return a&&"string"==typeof a?!b||b<=0?a:a.length>b?a.slice(0,b):a:a||""}function G({provider:a,url:b,title:c,format:d,text:e,costUsd:f,responseMs:g,upstreamMs:h}){return{provider:a,url:b,title:c||null,content:{format:d,text:e||"",length:(e||"").length},metadata:{author:null,published_at:null,language:null},usage:{fetch_cost_usd:f??null},metrics:{response_time_ms:g,upstream_latency_ms:h}}}async function H(a){if((a.headers.get("content-type")||"").includes("application/json"))try{return{json:await a.json()}}catch{return{text:""}}return{text:await a.text()}}async function I({url:a,format:b,maxCharacters:c,provider:d,providerConfig:e,credentials:f,log:g}){if(!a||"string"!=typeof a)return{success:!1,status:400,error:"url is required"};if(!d)return{success:!1,status:400,error:"provider is required"};let h=b||"markdown",i=e?.timeoutMs||15e3,j=f?.apiKey||f?.key||f?.token||"",k=e?.costPerQuery??null,l=Date.now();try{if("firecrawl"===d)return await J({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});if("jina-reader"===d)return await K({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});if("tavily"===d)return await L({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});if("exa"===d)return await M({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});return{success:!1,status:400,error:`Unsupported provider: ${d}`}}catch(a){return g?.("fetch handler error:",a?.message||a),{success:!1,status:502,error:a?.message||"Internal fetch error"}}}async function J({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h=Date.now(),i=await E("https://api.firecrawl.dev/v1/scrape",{method:"POST",headers:{"content-type":"application/json",...d?{authorization:`Bearer ${d}`}:{}},body:JSON.stringify({url:a,formats:[b]})},c);if(!i.ok)return{success:!1,status:i.timeout?504:502,error:i.error};let j=Date.now()-h,{json:k}=await H(i.res);if(!i.res.ok)return{success:!1,status:i.res.status,error:k?.error||`Firecrawl error: ${i.res.status}`};let l=k?.data||{},m=F(l.markdown||l.html||l.text||"",e);return{success:!0,data:G({provider:"firecrawl",url:a,title:l.metadata?.title||null,format:b,text:m,costUsd:f,responseMs:Date.now()-g,upstreamMs:j})}}async function K({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h,i=`https://r.jina.ai/${encodeURIComponent(a)}`,j=Date.now(),k=await E(i,{method:"GET",headers:d?{authorization:`Bearer ${d}`}:{}},c);if(!k.ok)return{success:!1,status:k.timeout?504:502,error:k.error};let l=Date.now()-j,m=await k.res.text();if(!k.res.ok)return{success:!1,status:k.res.status,error:m?.slice(0,500)||`Jina error: ${k.res.status}`};let n=F(m,e);return{success:!0,data:G({provider:"jina-reader",url:a,title:(h=String(m||"").match(/^\s*#\s+(.+)$/m))?h[1].trim():null,format:b,text:n,costUsd:f,responseMs:Date.now()-g,upstreamMs:l})}}async function L({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h=Date.now(),i=await E("https://api.tavily.com/extract",{method:"POST",headers:{"content-type":"application/json",...d?{authorization:`Bearer ${d}`}:{}},body:JSON.stringify({urls:[a],extract_depth:"basic"})},c);if(!i.ok)return{success:!1,status:i.timeout?504:502,error:i.error};let j=Date.now()-h,{json:k}=await H(i.res);return i.res.ok?{success:!0,data:G({provider:"tavily",url:a,title:null,format:b,text:F((k?.results?.[0]||{}).raw_content||"",e),costUsd:f,responseMs:Date.now()-g,upstreamMs:j})}:{success:!1,status:i.res.status,error:k?.error||`Tavily error: ${i.res.status}`}}async function M({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h=Date.now(),i=await E("https://api.exa.ai/contents",{method:"POST",headers:{"content-type":"application/json",...d?{"x-api-key":d}:{}},body:JSON.stringify({ids:[a],text:!0})},c);if(!i.ok)return{success:!1,status:i.timeout?504:502,error:i.error};let j=Date.now()-h,{json:k}=await H(i.res);if(!i.res.ok)return{success:!1,status:i.res.status,error:k?.error||`Exa error: ${i.res.status}`};let l=k?.results?.[0]||{},m=F(l.text||"",e);return{success:!0,data:G({provider:"exa",url:a,title:l.title||null,format:b,text:m,costUsd:f,responseMs:Date.now()-g,upstreamMs:j})}}var N=c(97774);async function O(a){let b;try{b=await a.json()}catch{return y.warn("FETCH","Invalid JSON body"),(0,w.yj)(x.gx.BAD_REQUEST,"Invalid JSON body")}let c=new URL(a.url),d=b.provider||b.model,e=b.url;b.format,b.max_characters,y.request("POST",`${c.pathname} | ${d}`);let f=(0,v.Tr)(a);f?y.debug("AUTH",`API Key: ${y.maskKey(f)}`):y.debug("AUTH","No API key provided (local mode)");let g=await (0,B.mt)(),h=null;if(g.requireApiKey){if(!f)return y.warn("AUTH","Missing API key (requireApiKey=true)"),(0,w.yj)(x.gx.UNAUTHORIZED,"Missing API key");if(!(h=await (0,v.kI)(f)))return y.warn("AUTH","Invalid API key (requireApiKey=true)"),(0,w.yj)(x.gx.UNAUTHORIZED,"Invalid API key")}if(!d||"string"!=typeof d)return y.warn("FETCH","Missing provider/model"),(0,w.yj)(x.gx.BAD_REQUEST,"Missing required field: provider (or model)");if(!(0,v.L$)(h,"web"))return y.warn("AUTH","Web fetch kind not allowed for API key"),(0,w.yj)(x.gx.FORBIDDEN,"Web fetch requests are not allowed for this API key");if(!e||"string"!=typeof e)return y.warn("FETCH","Missing url"),(0,w.yj)(x.gx.BAD_REQUEST,"Missing required field: url");try{new URL(e)}catch{return y.warn("FETCH","Invalid URL",{url:e}),(0,w.yj)(x.gx.BAD_REQUEST,"Invalid URL format")}try{(0,N.P)(e)}catch(a){return y.warn("FETCH","Blocked URL",{url:e}),(0,w.yj)(x.gx.BAD_REQUEST,a.message)}let i=await (0,B.Uv)(),j=(0,A.Vu)(d,i);if(j){if(!(0,v.DC)(h,d))return(0,w.yj)(x.gx.FORBIDDEN,`Combo "${d}" is not allowed for this API key`);let c=(0,A.ZO)(d),e=g.comboStrategies||{},i=e[c]?.fallbackStrategy||g.comboStrategy||"fallback",k=g.comboStickyRoundRobinLimit;return y.info("FETCH",`Combo "${c}" with ${j.length} providers (strategy: ${i}, sticky: ${k})`),(0,A.Pr)({body:b,models:j,handleSingleModel:(b,c)=>P(b,c,a,f,g,h),log:y,comboName:c,comboStrategy:i,comboStickyLimit:k})}return P(b,d,a,f,g,h)}async function P(a,b,c,d,e,f=null){let g=a.url,h=a.format,i=a.max_characters,j=(0,C.rs)(b),k=C.AI_PROVIDERS[j];if(!k)return y.warn("FETCH","Unknown provider",{provider:b}),(0,w.yj)(x.gx.BAD_REQUEST,`Unknown provider: ${b}`);let l=k.fetchConfig;if(!l)return y.warn("FETCH","Provider does not support web fetch",{provider:j}),(0,w.yj)(x.gx.BAD_REQUEST,`Provider ${j} does not support web fetch`);if(!await (0,v.kt)(f,j))return y.warn("AUTH",`Provider "${j}" not allowed for API key`,{provider:j}),(0,w.yj)(x.gx.FORBIDDEN,`Provider "${j}" is not allowed for this API key`);let m=k.alias||j,n=`${m}/fetch`;if(!await (0,D.Uw)(n,f))return y.warn("FETCH","Fetch model not in available models list",{model:n}),(0,w.yj)(x.gx.NOT_FOUND,`Model "${n}" is not available. Only models listed in /v1/models can be used.`);if(b!==j?y.info("ROUTING",`${b} → ${j}`):y.info("ROUTING",`Provider: ${j}`),k.noAuth){y.info("AUTH",`\x1b[32m${j} no-auth mode\x1b[0m`);let a=await I({url:g,format:h,maxCharacters:i,provider:k.id,providerConfig:l,credentials:null,log:y});return a.success?new Response(JSON.stringify(a.data),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}}):(0,w.yj)(a.status||x.gx.BAD_GATEWAY,a.error||"Fetch failed")}let o=new Set,p=null,q=null;for(;;){let a=await (0,v.c1)(j,o);if(!a||a.allRateLimited){if(a?.allRateLimited){let b=p||a.lastError||"Unavailable",c=q||Number(a.lastErrorCode)||x.gx.SERVICE_UNAVAILABLE;return y.warn("FETCH",`[${j}] ${b} (${a.retryAfterHuman})`),(0,w.wO)(c,`[${j}] ${b}`,a.retryAfter,a.retryAfterHuman)}if(0===o.size)return y.error("AUTH",`No credentials for provider: ${j}`),(0,w.yj)(x.gx.BAD_REQUEST,`No credentials for provider: ${j}`);return y.warn("FETCH","No more accounts available",{provider:j}),(0,w.yj)(q||x.gx.SERVICE_UNAVAILABLE,p||"All accounts unavailable")}y.info("AUTH",`\x1b[32mUsing ${j} account: ${a.connectionName}\x1b[0m`);let b=await (0,z.eU)(j,a),c=await I({url:g,format:h,maxCharacters:i,provider:k.id,providerConfig:l,credentials:b,log:y,onCredentialsRefreshed:async b=>{await (0,z.vN)(a.connectionId,{accessToken:b.accessToken,refreshToken:b.refreshToken,providerSpecificData:b.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,v.Pt)(a.connectionId,a)}});if(c.success)return new Response(JSON.stringify(c.data),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}});let{shouldFallback:d}=await (0,v.vk)(a.connectionId,c.status,c.error,j);if(d){y.warn("AUTH",`Account ${a.connectionName} unavailable (${c.status}), trying fallback`),o.add(a.connectionId),p=c.error,q=c.status;continue}return(0,w.yj)(c.status||x.gx.BAD_GATEWAY,c.error||"Fetch failed")}}async function Q(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function R(a){return await O(a)}let S=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/web/fetch/route",pathname:"/api/v1/web/fetch",filename:"route",bundlePath:"app/api/v1/web/fetch/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/VansRouter/VansRouter/src/app/api/v1/web/fetch/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:T,workUnitAsyncStorage:U,serverHooks:V}=S;function W(){return(0,g.patchFetch)({workAsyncStorage:T,workUnitAsyncStorage:U})}async function X(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),S.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/web/fetch/route";"/index"===d&&(d="/");let e=await S.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,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,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,y,!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(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||S.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===S.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"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await S.getIncrementalCache(a,x,A,R);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>S.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>S.handle(X,U).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=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.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!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.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 S.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await S.handleResponse({req:a,nextConfig:x,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)(V,W,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 S.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)(V,W,new Response(null,{status:500})),null}}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12286:(a,b,c)=>{c.d(b,{Ut:()=>e,a_:()=>f,bC:()=>d});let d={STOP:"stop",LENGTH:"length",TOOL_CALLS:"tool_calls",CONTENT_FILTER:"content_filter"},e={END_TURN:"end_turn",MAX_TOKENS:"max_tokens",TOOL_USE:"tool_use",STOP_SEQUENCE:"stop_sequence"},f={STOP:"STOP",MAX_TOKENS:"MAX_TOKENS",SAFETY:"SAFETY",RECITATION:"RECITATION",BLOCKLIST:"BLOCKLIST",PROHIBITED_CONTENT:"PROHIBITED_CONTENT"}},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},26915:a=>{a.exports=import("playwright-core")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},37808:(a,b,c)=>{c.d(b,{N:()=>d});function d(a,b){if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return b}}},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},59638:(a,b,c)=>{c.d(b,{R4:()=>g,BY:()=>l,a_:()=>j.a_,RV:()=>e,rP:()=>k,x4:()=>f,bC:()=>j.bC,Du:()=>h,z7:()=>d,m8:()=>i});let d={USER:"user",ASSISTANT:"assistant",TOOL:"tool",SYSTEM:"system",DEVELOPER:"developer"},e={USER:"user",MODEL:"model"},f={TEXT:"text",IMAGE_URL:"image_url",IMAGE:"image",INPUT_AUDIO:"input_audio",AUDIO_URL:"audio_url",FILE:"file",FUNCTION:"function"},g={TEXT:"text",IMAGE:"image",DOCUMENT:"document",TOOL_USE:"tool_use",TOOL_RESULT:"tool_result",THINKING:"thinking",REDACTED_THINKING:"redacted_thinking"},h={MESSAGE:"message",FUNCTION_CALL:"function_call",FUNCTION_CALL_OUTPUT:"function_call_output",REASONING:"reasoning",OUTPUT_TEXT:"output_text",INPUT_TEXT:"input_text",INPUT_IMAGE:"input_image",SUMMARY_TEXT:"summary_text"},i=[f.TEXT,f.IMAGE_URL,f.IMAGE,f.INPUT_AUDIO,f.AUDIO_URL,f.FILE];f.TEXT,f.IMAGE_URL,f.IMAGE,g.TOOL_RESULT;var j=c(12286);let k="unknown",l="image/png"},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71553:a=>{a.exports=require("node:dns/promises")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},73496:a=>{a.exports=require("http2")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79551:a=>{a.exports=require("url")},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},83712:(a,b,c)=>{c.d(b,{KZ:()=>k,S6:()=>h,Yr:()=>o,f6:()=>l,fc:()=>g,kU:()=>i,pT:()=>j,w_:()=>m});var d=c(37808),e=c(59638);let f=["minLength","maxLength","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","format","default","examples","$schema","$defs","definitions","const","$ref","$comment","additionalProperties","propertyNames","patternProperties","enumDescriptions","anyOf","oneOf","allOf","not","dependencies","dependentSchemas","dependentRequired","title","optional","if","then","else","contentMediaType","contentEncoding","cornerRadius","fillColor","fontFamily","fontSize","fontWeight","gap","padding","strokeColor","strokeThickness","textColor"],g=[{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"OFF"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"OFF"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"OFF"},{category:"HARM_CATEGORY_HARASSMENT",threshold:"OFF"},{category:"HARM_CATEGORY_CIVIC_INTEGRITY",threshold:"OFF"}];function h(a){let b=[];if("string"==typeof a)b.push({text:a});else if(Array.isArray(a)){for(let c of a)if(c.type===e.x4.TEXT)b.push({text:c.text});else if(c.type===e.x4.IMAGE_URL&&c.image_url?.url?.startsWith("data:")){let a=c.image_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if(c.type===e.x4.IMAGE_URL&&c.image_url?.url&&(c.image_url.url.startsWith("http://")||c.image_url.url.startsWith("https://")))b.push({fileData:{fileUri:c.image_url.url,mimeType:"image/*"}});else if(c.type===e.x4.INPUT_AUDIO&&c.input_audio?.data){let a=c.input_audio.format||"wav",d="mp3"===a?"audio/mpeg":`audio/${a}`;b.push({inlineData:{mime_type:d,data:c.input_audio.data}})}else if(c.type===e.x4.AUDIO_URL&&c.audio_url?.url?.startsWith("data:")){let a=c.audio_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if(c.type===e.x4.FILE&&c.file?.file_data?.startsWith("data:")){let a=c.file.file_data,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d).split(";")[0],e=a.substring(d+1);b.push({inlineData:{mime_type:c,data:e}})}}}return b}function i(a,b=""){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>a.type===e.x4.TEXT).map(a=>a.text).join(b):""}function j(a){return(0,d.N)(a,null)}function k(){return`agent-${crypto.randomUUID()}`}function l(){return crypto.randomUUID()+Date.now().toString()}function m(){let a=["useful","bright","swift","calm","bold"],b=["fuze","wave","spark","flow","core"],c=a[Math.floor(Math.random()*a.length)],d=b[Math.floor(Math.random()*b.length)];return`${c}-${d}-${crypto.randomUUID().slice(0,5)}`}function n(a){let b=0,c=-1;for(let d=0;d<a.length;d++){let e=a[d],f=0,g=e.type;"object"===g||e.properties?f=3:"array"===g||e.items?f=2:g&&"null"!==g&&(f=1),f>c&&(c=f,b=d)}return b}function o(a){return a&&"object"==typeof a&&(!function a(b){if(b&&"object"==typeof b)for(let c of(void 0===b.const||b.enum||(b.enum=[b.const],delete b.const),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.enum&&Array.isArray(b.enum)&&(b.enum=b.enum.map(a=>String(a)),b.type||(b.type="string")),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b){if(b.allOf&&Array.isArray(b.allOf)){let a={};for(let c of b.allOf)if(c.properties&&(a.properties||(a.properties={}),Object.assign(a.properties,c.properties)),c.required&&Array.isArray(c.required))for(let b of(a.required||(a.required=[]),c.required))a.required.includes(b)||a.required.push(b);delete b.allOf,a.properties&&(b.properties={...b.properties,...a.properties}),a.required&&(b.required=[...b.required||[],...a.required])}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.anyOf&&Array.isArray(b.anyOf)&&b.anyOf.length>0){let a=b.anyOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=n(a),d=a[c];delete b.anyOf,Object.assign(b,d)}}if(b.oneOf&&Array.isArray(b.oneOf)&&b.oneOf.length>0){let a=b.oneOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=n(a),d=a[c];delete b.oneOf,Object.assign(b,d)}}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.type&&Array.isArray(b.type)){let a=b.type.filter(a=>"null"!==a);b.type=a.length>0?a[0]:"string"}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.properties&&!b.type&&(b.type="object"),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b,c){if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.keys(b)){if(c.includes(d)||d.startsWith("x-")){delete b[d];continue}let e=b[d];e&&"object"==typeof e&&a(e,c)}}}(a,f),!function a(b){if(b&&"object"==typeof b){if(b.required&&Array.isArray(b.required)&&b.properties){let a=b.required.filter(a=>Object.prototype.hasOwnProperty.call(b.properties,a));0===a.length?delete b.required:b.required=a}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of("object"!==b.type||b.properties&&0!==Object.keys(b.properties).length||(b.properties={reason:{type:"string",description:"Brief explanation of why you are calling this tool"}},b.required=["reason"]),Object.values(b)))c&&"object"==typeof c&&a(c)}(a)),a}},84310:(a,b,c)=>{c.d(b,{PX:()=>v,Uw:()=>z});var d=c(67259),e=c(91253),f=c(94164),g=c(76489);let h=/[-_][0-9a-f]{8,}$/i,i=["llm","tts","embedding","image","imageToText","stt","webSearch","webFetch"],j={image:"image",tts:"tts",embedding:"embedding",stt:"stt",imageToText:"imageToText"};function k(a){return a?.kind?a.kind:a?.type&&j[a.type]||"llm"}function l(a){let b=String(a).toLowerCase();return/embed/.test(b)?"embedding":/tts|speech|audio|voice/.test(b)?"tts":/image|imagen|dall-?e|flux|sdxl|sd-|stable-diffusion/.test(b)?"image":"llm"}function m(a,b){let c=e.AI_PROVIDERS[a];return(Array.isArray(c?.serviceKinds)&&c.serviceKinds.length>0?c.serviceKinds:["llm"]).some(a=>b.has(a))}let n={},o={};async function p(a,b){let c=b?.modelsFetcher;if(!c?.url)return[];let d=Date.now();if(n[a]&&d<(o[a]||0))return n[a];try{let b,e=new AbortController,f=setTimeout(()=>e.abort(),8e3),g=await fetch(c.url,{method:"GET",headers:{"Content-Type":"application/json"},cache:"no-store",signal:e.signal});if(clearTimeout(f),!g.ok)return[];let h=await g.json(),i=Array.isArray(h)?h:h?.data||h?.models||h?.results||[];b="opencode-free"===c.type?i.reduce((a,b)=>{let c=b?.id||b?.name||b?.model;return"string"==typeof c&&""!==c.trim()&&c.endsWith("-free")&&a.push(c),a},[]):i.reduce((a,b)=>{let c=b?.id||b?.name||b?.model;return"string"==typeof c&&""!==c.trim()&&a.push(c),a},[]);let j=Array.from(new Set(b));return n[a]=j,o[a]=d+3e5,j}catch{return n[a]||[]}}async function q(a){if(!a?.apiKey)return[];let b="string"==typeof a?.providerSpecificData?.baseUrl?a.providerSpecificData.baseUrl.trim().replace(/\/$/,""):"";if(!b)return[];let c=`${b}/models`,d={"Content-Type":"application/json"};if((0,e.mq)(a.provider))d.Authorization=`Bearer ${a.apiKey}`;else{if(!(0,e.gb)(a.provider))return[];c.endsWith("/messages/models")?c=c.slice(0,-9):c.endsWith("/messages")&&(c=`${c.slice(0,-9)}/models`),d["x-api-key"]=a.apiKey,d["anthropic-version"]="2023-06-01",d.Authorization=`Bearer ${a.apiKey}`}try{let a=new AbortController,b=setTimeout(()=>a.abort(),5e3),e=await fetch(c,{method:"GET",headers:d,cache:"no-store",signal:a.signal});if(clearTimeout(b),!e.ok)return[];let f=await e.json(),g=Array.isArray(f)?f:f?.data||f?.models||f?.results||[];return Array.from(new Set(g.reduce((a,b)=>{let c=b?.id||b?.name||b?.model;return"string"==typeof c&&""!==c.trim()&&a.push(c),a},[])))}catch{return[]}}async function r(){let a=!1,b=[];try{b=await (0,f.getProviderConnections)(),a=!0,b=b.filter(a=>!1!==a.isActive)}catch{}let c=[];try{c=await (0,f.Uv)(),a=!0}catch{}let d=[];try{d=await (0,f.uv)()}catch{}let e={};try{e=await (0,f.OM)()}catch{}let h={};try{h=await (0,g.vF)()}catch{}let i=new Map;for(let a of b)i.has(a.provider)||i.set(a.provider,a);return{connections:b,combos:c,customModels:d,modelAliases:e,isDisabled:(a,b)=>Array.isArray(h[a])&&h[a].includes(b),activeConnectionByProvider:i,dbAvailable:a}}async function s(a,b,c,f,g,h,i){a=new Set(a);let j=[];for(let c of b){if(!function(a,b){let c=a?.kind||"llm";return b.has(c)}(c,a))continue;let b={id:`combo/${c.name}`};("webSearch"===c.kind||"webFetch"===c.kind)&&(b.kind=c.kind),j.push(b)}if(i)for(let b of(await Promise.all([...h.entries()].reduce((b,[d,e])=>(m(d,a)&&b.push(t(d,e,a,c,f,g)),b),[]))))j.push(...b);else{let b=Object.fromEntries(Object.entries(d.Xg).map(([a,b])=>[b,a]));for(let[c,e]of Object.entries(d.vq))if(m(b[c]||c,a))for(let b of e)a.has(k(b))&&(g(c,b.id)||j.push({id:`${c}/${b.id}`}));for(let b of c){if(!b?.id||b.type&&"llm"!==b.type||!a.has("llm"))continue;let c=b.providerAlias;if(!c)continue;let d=String(b.id).trim();d&&j.push({id:`${c}/${d}`})}}for(let b of(await Promise.all(Object.entries(e.AI_PROVIDERS).reduce((b,[d,e])=>(!h.has(d)&&e.noAuth&&m(d,a)&&b.push(u(d,e,a,c,f,g)),b),[]))))j.push(...b);return j}async function t(a,b,c,f,g,i){let j=[],m=d.Xg[a]||a,n=(b?.providerSpecificData?.prefix||(0,e.wG)(a)||m).trim(),o=d.vq[m]||[],r=b?.providerSpecificData?.enabledModels,s=Array.isArray(r)&&r.length>0,t=(0,e.mq)(a)||(0,e.gb)(a),u=e.AI_PROVIDERS[a]?.passthroughModels===!0,v=new Map(o.map(a=>[a.id,k(a)])),w=s?Array.from(new Set(r.filter(a=>"string"==typeof a&&""!==a.trim()))):o.map(a=>a.id);t&&0===w.length&&!h.test(a)&&(w=await q(b));let x=e.AI_PROVIDERS[a];for(let b of(x?.noAuth&&x?.modelsFetcher&&(w=Array.from(new Set([...w,...await p(a,x)]))),u&&0===w.length&&(w=o.map(a=>a.id)),u&&!s&&(w=o.map(a=>a.id)),Array.from(new Set([...w.reduce((b,c)=>{let d=c;return d.startsWith(`${n}/`)?d=d.slice(n.length+1):d.startsWith(`${m}/`)?d=d.slice(m.length+1):d.startsWith(`${a}/`)&&(d=d.slice(a.length+1)),"string"==typeof d&&""!==d.trim()&&b.push(d),b},[]),...f.reduce((b,c)=>{if(!c?.id||c.type&&"llm"!==c.type)return b;let d=c.providerAlias;if(d!==m&&d!==n&&d!==a)return b;let e=String(c.id).trim();return""!==e&&b.push(e),b},[]),...Object.values(g||{}).reduce((b,c)=>{let d;return"string"==typeof c&&c.includes("/")&&(c.startsWith(`${n}/`)||c.startsWith(`${m}/`)||c.startsWith(`${a}/`))&&"string"==typeof(d=c.startsWith(`${n}/`)?c.slice(n.length+1):c.startsWith(`${m}/`)?c.slice(m.length+1):c.slice(a.length+1))&&""!==d.trim()&&b.push(d),b},[])])))){let a=v.get(b)||l(b);c.has(a)&&(i(n,b)||i(m,b)||j.push({id:`${n}/${b}`}))}if(c.has("tts")&&Array.isArray(x?.ttsConfig?.models))for(let a of x.ttsConfig.models)!a?.id||i(n,a.id)||i(m,a.id)||j.push({id:`${n}/${a.id}`});if(c.has("embedding")&&Array.isArray(x?.embeddingConfig?.models))for(let a of x.embeddingConfig.models)!a?.id||i(n,a.id)||i(m,a.id)||j.push({id:`${n}/${a.id}`});return c.has("webSearch")&&x?.searchConfig&&j.push({id:`${n}/search`,kind:"webSearch"}),c.has("webFetch")&&x?.fetchConfig&&j.push({id:`${n}/fetch`,kind:"webFetch"}),j}async function u(a,b,c,f,g,h){let i=[],j=(0,e.wG)(a)||b.alias||a,m=new Map((d.vq[j]||[]).map(a=>[a.id,k(a)])),n=(d.vq[j]||[]).map(a=>a.id),o=[];for(let d of(b.modelsFetcher&&(o=await p(a,b)),Array.from(new Set([...n,...o,...f.reduce((b,c)=>{if(!c?.id||c.type&&"llm"!==c.type)return b;let d=c.providerAlias;if(d!==j&&d!==a)return b;let e=String(c.id).trim();return""!==e&&b.push(e),b},[]),...Object.values(g||{}).reduce((b,c)=>{let d;return"string"==typeof c&&c.includes("/")&&(c.startsWith(`${j}/`)||c.startsWith(`${a}/`))&&"string"==typeof(d=c.startsWith(`${j}/`)?c.slice(j.length+1):c.slice(a.length+1))&&""!==d.trim()&&b.push(d),b},[])])))){let a=m.get(d)||l(d);c.has(a)&&(h(j,d)||i.push({id:`${j}/${d}`}))}if(c.has("tts")&&Array.isArray(b?.ttsConfig?.models))for(let a of b.ttsConfig.models)a?.id&&!h(j,a.id)&&i.push({id:`${j}/${a.id}`});if(c.has("embedding")&&Array.isArray(b?.embeddingConfig?.models))for(let a of b.embeddingConfig.models)a?.id&&!h(j,a.id)&&i.push({id:`${j}/${a.id}`});return c.has("webSearch")&&b?.searchConfig&&i.push({id:`${j}/search`,kind:"webSearch"}),c.has("webFetch")&&b?.fetchConfig&&i.push({id:`${j}/fetch`,kind:"webFetch"}),i}async function v(a){let{combos:b,customModels:c,modelAliases:d,isDisabled:e,activeConnectionByProvider:f,dbAvailable:g}=await r(),h=await s(a,b,c,d,e,f,g),i=new Set,j=[];for(let a of h){if(!a?.id||i.has(a.id))continue;i.add(a.id);let b={id:a.id,object:"model",owned_by:a.id.includes("/")?a.id.split("/")[0]:"combo"};a.kind&&(b.kind=a.kind),j.push(b)}return j}let w=null,x=0;async function y(){let a=Date.now();if(w&&a<x)return w;let{combos:b,customModels:c,modelAliases:d,isDisabled:e,activeConnectionByProvider:f,dbAvailable:g}=await r(),h=await s(i,b,c,d,e,f,g),j=new Set;for(let a of h)a?.id&&j.add(a.id);return w=j,x=a+3e4,j}async function z(a,b=null){return!b||(await y()).has(a)}},85577:(a,b,c)=>{c.d(b,{Xg:()=>o,PROVIDER_MODELS:()=>f.vq,fZ:()=>j,cY:()=>p,ux:()=>k,OA:()=>l,kt:()=>m,SM:()=>i});var d=c(13946),e=c(55290),f=c(68711),g=c(57959);let h="-review";function i(a){return f.vq[a]||[]}function j(a){let b=f.vq[a];return b?.[0]?.id||null}function k(a,b){let c=f.vq[a];return c?(0,g.gr)(c.find(a=>a.id===b)):null}function l(a,b){let c=f.vq[a];if(!c)return null;let d=c.find(a=>a.id===b);return d?.kind||d?.type||null}function m(a,b){let c=f.vq[a],d=c?.find(a=>a.id===b);return d?.upstreamModelId?d.upstreamModelId:"cx"===a&&"string"==typeof b&&b.endsWith(h)?b.slice(0,-h.length):b}let n=Object.fromEntries(e.A.filter(a=>a.alias&&a.alias!==a.id).map(a=>[a.id,a.alias])),o=Object.fromEntries(Object.keys(d.xq).map(a=>[a,n[a]||a]));function p(a,b){return(0,g.g5)(f.vq[a]?.find(a=>a.id===b))}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},97774:(a,b,c)=>{c.d(b,{P:()=>i});let d=new Set(["localhost","ip6-localhost","ip6-loopback"]),e=[".internal",".local",".localhost"];function f(a){let b=a.split(".");if(4!==b.length)return null;let c=0;for(let a of b){if(!/^\d{1,3}$/.test(a))return null;let b=Number(a);if(b>255)return null;c=256*c+b}return c>>>0}let g=[[f("0.0.0.0"),8],[f("10.0.0.0"),8],[f("127.0.0.0"),8],[f("169.254.0.0"),16],[f("172.16.0.0"),12],[f("192.168.0.0"),16]];function h(a){let b=f(a);return null!==b&&g.some(([a,c])=>{let d=0===c?0:0xffffffff<<32-c>>>0;return(b&d)==(a&d)})}function i(a){let b,c,f=new URL(a).hostname.toLowerCase();if(d.has(f)||e.some(a=>f.endsWith(a)))throw Error("Blocked URL: internal host");if(h(f)||f.includes(":")&&((c=(b=f.replace(/^\[|\]$/g,"").toLowerCase()).match(/^::ffff:(\d+\.\d+\.\d+\.\d+)$/))?h(c[1]):"::1"===b||"::"===b||b.startsWith("fe80:")||b.startsWith("fc")||b.startsWith("fd")))throw Error("Blocked URL: private IP")}}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[1348,9787,9633,5290,8711,7010,7916,3133,3424,818,4004,3950],()=>b(b.s=7663));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=3883,a.ids=[3883],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1708:a=>{a.exports=require("node:process")},4573:a=>{a.exports=require("node:buffer")},7066:a=>{a.exports=require("node:tty")},7663:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>X,patchFetch:()=>W,routeModule:()=>S,serverHooks:()=>V,workAsyncStorage:()=>T,workUnitAsyncStorage:()=>U});var d={};c.r(d),c.d(d,{OPTIONS:()=>Q,POST:()=>R});var e=c(12334),f=c(59399),g=c(8894),h=c(83760),i=c(34958),j=c(970),k=c(261),l=c(28112),m=c(52194),n=c(9410),o=c(68673),p=c(47471),q=c(13093),r=c(98563),s=c(7572),t=c(86439),u=c(33610),v=c(14836),w=c(15261),x=c(92398),y=c(90293),z=c(83950),A=c(44004),B=c(94164),C=c(91253),D=c(84310);async function E(a,b,c){let d=new AbortController,e=setTimeout(()=>d.abort(),c);try{let c=await fetch(a,{...b,headers:function(a){if(!a)return a;let b={};for(let[c,d]of Object.entries(a))b[c]="string"==typeof d?d.replace(/[^\x00-\xFF]/g,"").trim():d;return b}(b.headers),signal:d.signal});return{ok:!0,res:c}}catch(a){return{ok:!1,timeout:a?.name==="AbortError",error:a?.message||String(a)}}finally{clearTimeout(e)}}function F(a,b){return a&&"string"==typeof a?!b||b<=0?a:a.length>b?a.slice(0,b):a:a||""}function G({provider:a,url:b,title:c,format:d,text:e,costUsd:f,responseMs:g,upstreamMs:h}){return{provider:a,url:b,title:c||null,content:{format:d,text:e||"",length:(e||"").length},metadata:{author:null,published_at:null,language:null},usage:{fetch_cost_usd:f??null},metrics:{response_time_ms:g,upstream_latency_ms:h}}}async function H(a){if((a.headers.get("content-type")||"").includes("application/json"))try{return{json:await a.json()}}catch{return{text:""}}return{text:await a.text()}}async function I({url:a,format:b,maxCharacters:c,provider:d,providerConfig:e,credentials:f,log:g}){if(!a||"string"!=typeof a)return{success:!1,status:400,error:"url is required"};if(!d)return{success:!1,status:400,error:"provider is required"};let h=b||"markdown",i=e?.timeoutMs||15e3,j=f?.apiKey||f?.key||f?.token||"",k=e?.costPerQuery??null,l=Date.now();try{if("firecrawl"===d)return await J({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});if("jina-reader"===d)return await K({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});if("tavily"===d)return await L({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});if("exa"===d)return await M({url:a,fmt:h,timeoutMs:i,apiKey:j,maxCharacters:c,costPerQuery:k,startedAt:l});return{success:!1,status:400,error:`Unsupported provider: ${d}`}}catch(a){return g?.("fetch handler error:",a?.message||a),{success:!1,status:502,error:a?.message||"Internal fetch error"}}}async function J({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h=Date.now(),i=await E("https://api.firecrawl.dev/v1/scrape",{method:"POST",headers:{"content-type":"application/json",...d?{authorization:`Bearer ${d}`}:{}},body:JSON.stringify({url:a,formats:[b]})},c);if(!i.ok)return{success:!1,status:i.timeout?504:502,error:i.error};let j=Date.now()-h,{json:k}=await H(i.res);if(!i.res.ok)return{success:!1,status:i.res.status,error:k?.error||`Firecrawl error: ${i.res.status}`};let l=k?.data||{},m=F(l.markdown||l.html||l.text||"",e);return{success:!0,data:G({provider:"firecrawl",url:a,title:l.metadata?.title||null,format:b,text:m,costUsd:f,responseMs:Date.now()-g,upstreamMs:j})}}async function K({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h,i=`https://r.jina.ai/${encodeURIComponent(a)}`,j=Date.now(),k=await E(i,{method:"GET",headers:d?{authorization:`Bearer ${d}`}:{}},c);if(!k.ok)return{success:!1,status:k.timeout?504:502,error:k.error};let l=Date.now()-j,m=await k.res.text();if(!k.res.ok)return{success:!1,status:k.res.status,error:m?.slice(0,500)||`Jina error: ${k.res.status}`};let n=F(m,e);return{success:!0,data:G({provider:"jina-reader",url:a,title:(h=String(m||"").match(/^\s*#\s+(.+)$/m))?h[1].trim():null,format:b,text:n,costUsd:f,responseMs:Date.now()-g,upstreamMs:l})}}async function L({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h=Date.now(),i=await E("https://api.tavily.com/extract",{method:"POST",headers:{"content-type":"application/json",...d?{authorization:`Bearer ${d}`}:{}},body:JSON.stringify({urls:[a],extract_depth:"basic"})},c);if(!i.ok)return{success:!1,status:i.timeout?504:502,error:i.error};let j=Date.now()-h,{json:k}=await H(i.res);return i.res.ok?{success:!0,data:G({provider:"tavily",url:a,title:null,format:b,text:F((k?.results?.[0]||{}).raw_content||"",e),costUsd:f,responseMs:Date.now()-g,upstreamMs:j})}:{success:!1,status:i.res.status,error:k?.error||`Tavily error: ${i.res.status}`}}async function M({url:a,fmt:b,timeoutMs:c,apiKey:d,maxCharacters:e,costPerQuery:f,startedAt:g}){let h=Date.now(),i=await E("https://api.exa.ai/contents",{method:"POST",headers:{"content-type":"application/json",...d?{"x-api-key":d}:{}},body:JSON.stringify({ids:[a],text:!0})},c);if(!i.ok)return{success:!1,status:i.timeout?504:502,error:i.error};let j=Date.now()-h,{json:k}=await H(i.res);if(!i.res.ok)return{success:!1,status:i.res.status,error:k?.error||`Exa error: ${i.res.status}`};let l=k?.results?.[0]||{},m=F(l.text||"",e);return{success:!0,data:G({provider:"exa",url:a,title:l.title||null,format:b,text:m,costUsd:f,responseMs:Date.now()-g,upstreamMs:j})}}var N=c(97774);async function O(a){let b;try{b=await a.json()}catch{return y.warn("FETCH","Invalid JSON body"),(0,w.yj)(x.gx.BAD_REQUEST,"Invalid JSON body")}let c=new URL(a.url),d=b.provider||b.model,e=b.url;b.format,b.max_characters,y.request("POST",`${c.pathname} | ${d}`);let f=(0,v.Tr)(a);f?y.debug("AUTH",`API Key: ${y.maskKey(f)}`):y.debug("AUTH","No API key provided (local mode)");let g=await (0,B.mt)(),h=null;if(g.requireApiKey){if(!f)return y.warn("AUTH","Missing API key (requireApiKey=true)"),(0,w.yj)(x.gx.UNAUTHORIZED,"Missing API key");if(!(h=await (0,v.kI)(f)))return y.warn("AUTH","Invalid API key (requireApiKey=true)"),(0,w.yj)(x.gx.UNAUTHORIZED,"Invalid API key")}if(!d||"string"!=typeof d)return y.warn("FETCH","Missing provider/model"),(0,w.yj)(x.gx.BAD_REQUEST,"Missing required field: provider (or model)");if(!(0,v.L$)(h,"web"))return y.warn("AUTH","Web fetch kind not allowed for API key"),(0,w.yj)(x.gx.FORBIDDEN,"Web fetch requests are not allowed for this API key");if(!e||"string"!=typeof e)return y.warn("FETCH","Missing url"),(0,w.yj)(x.gx.BAD_REQUEST,"Missing required field: url");try{new URL(e)}catch{return y.warn("FETCH","Invalid URL",{url:e}),(0,w.yj)(x.gx.BAD_REQUEST,"Invalid URL format")}try{(0,N.P)(e)}catch(a){return y.warn("FETCH","Blocked URL",{url:e}),(0,w.yj)(x.gx.BAD_REQUEST,a.message)}let i=await (0,B.Uv)(),j=(0,A.Vu)(d,i);if(j){if(!(0,v.DC)(h,d))return(0,w.yj)(x.gx.FORBIDDEN,`Combo "${d}" is not allowed for this API key`);let c=(0,A.ZO)(d),e=g.comboStrategies||{},i=e[c]?.fallbackStrategy||g.comboStrategy||"fallback",k=g.comboStickyRoundRobinLimit;return y.info("FETCH",`Combo "${c}" with ${j.length} providers (strategy: ${i}, sticky: ${k})`),(0,A.Pr)({body:b,models:j,handleSingleModel:(b,c)=>P(b,c,a,f,g,h),log:y,comboName:c,comboStrategy:i,comboStickyLimit:k})}return P(b,d,a,f,g,h)}async function P(a,b,c,d,e,f=null){let g=a.url,h=a.format,i=a.max_characters,j=(0,C.rs)(b),k=C.AI_PROVIDERS[j];if(!k)return y.warn("FETCH","Unknown provider",{provider:b}),(0,w.yj)(x.gx.BAD_REQUEST,`Unknown provider: ${b}`);let l=k.fetchConfig;if(!l)return y.warn("FETCH","Provider does not support web fetch",{provider:j}),(0,w.yj)(x.gx.BAD_REQUEST,`Provider ${j} does not support web fetch`);if(!await (0,v.kt)(f,j))return y.warn("AUTH",`Provider "${j}" not allowed for API key`,{provider:j}),(0,w.yj)(x.gx.FORBIDDEN,`Provider "${j}" is not allowed for this API key`);let m=k.alias||j,n=`${m}/fetch`;if(!await (0,D.Uw)(n,f))return y.warn("FETCH","Fetch model not in available models list",{model:n}),(0,w.yj)(x.gx.NOT_FOUND,`Model "${n}" is not available. Only models listed in /v1/models can be used.`);if(b!==j?y.info("ROUTING",`${b} → ${j}`):y.info("ROUTING",`Provider: ${j}`),k.noAuth){y.info("AUTH",`\x1b[32m${j} no-auth mode\x1b[0m`);let a=await I({url:g,format:h,maxCharacters:i,provider:k.id,providerConfig:l,credentials:null,log:y});return a.success?new Response(JSON.stringify(a.data),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}}):(0,w.yj)(a.status||x.gx.BAD_GATEWAY,a.error||"Fetch failed")}let o=new Set,p=null,q=null;for(;;){let a=await (0,v.c1)(j,o);if(!a||a.allRateLimited){if(a?.allRateLimited){let b=p||a.lastError||"Unavailable",c=q||Number(a.lastErrorCode)||x.gx.SERVICE_UNAVAILABLE;return y.warn("FETCH",`[${j}] ${b} (${a.retryAfterHuman})`),(0,w.wO)(c,`[${j}] ${b}`,a.retryAfter,a.retryAfterHuman)}if(0===o.size)return y.error("AUTH",`No credentials for provider: ${j}`),(0,w.yj)(x.gx.BAD_REQUEST,`No credentials for provider: ${j}`);return y.warn("FETCH","No more accounts available",{provider:j}),(0,w.yj)(q||x.gx.SERVICE_UNAVAILABLE,p||"All accounts unavailable")}y.info("AUTH",`\x1b[32mUsing ${j} account: ${a.connectionName}\x1b[0m`);let b=await (0,z.eU)(j,a),c=await I({url:g,format:h,maxCharacters:i,provider:k.id,providerConfig:l,credentials:b,log:y,onCredentialsRefreshed:async b=>{await (0,z.vN)(a.connectionId,{accessToken:b.accessToken,refreshToken:b.refreshToken,providerSpecificData:b.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,v.Pt)(a.connectionId,a)}});if(c.success)return new Response(JSON.stringify(c.data),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}});let{shouldFallback:d}=await (0,v.vk)(a.connectionId,c.status,c.error,j);if(d){y.warn("AUTH",`Account ${a.connectionName} unavailable (${c.status}), trying fallback`),o.add(a.connectionId),p=c.error,q=c.status;continue}return(0,w.yj)(c.status||x.gx.BAD_GATEWAY,c.error||"Fetch failed")}}async function Q(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function R(a){return await O(a)}let S=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/v1/web/fetch/route",pathname:"/api/v1/web/fetch",filename:"route",bundlePath:"app/api/v1/web/fetch/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/VansRouter/VansRouter/src/app/api/v1/web/fetch/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:T,workUnitAsyncStorage:U,serverHooks:V}=S;function W(){return(0,g.patchFetch)({workAsyncStorage:T,workUnitAsyncStorage:U})}async function X(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),S.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/v1/web/fetch/route";"/index"===d&&(d="/");let e=await S.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,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,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,y,!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(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||S.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===S.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"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await S.getIncrementalCache(a,x,A,R);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>S.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>S.handle(X,U).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=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.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!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.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 S.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await S.handleResponse({req:a,nextConfig:x,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)(V,W,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 S.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)(V,W,new Response(null,{status:500})),null}}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12286:(a,b,c)=>{c.d(b,{Ut:()=>e,a_:()=>f,bC:()=>d});let d={STOP:"stop",LENGTH:"length",TOOL_CALLS:"tool_calls",CONTENT_FILTER:"content_filter"},e={END_TURN:"end_turn",MAX_TOKENS:"max_tokens",TOOL_USE:"tool_use",STOP_SEQUENCE:"stop_sequence"},f={STOP:"STOP",MAX_TOKENS:"MAX_TOKENS",SAFETY:"SAFETY",RECITATION:"RECITATION",BLOCKLIST:"BLOCKLIST",PROHIBITED_CONTENT:"PROHIBITED_CONTENT"}},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},21820:a=>{a.exports=require("os")},26915:a=>{a.exports=import("playwright-core")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},37808:(a,b,c)=>{c.d(b,{N:()=>d});function d(a,b){if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return b}}},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},59638:(a,b,c)=>{c.d(b,{R4:()=>g,BY:()=>l,a_:()=>j.a_,RV:()=>e,rP:()=>k,x4:()=>f,bC:()=>j.bC,Du:()=>h,z7:()=>d,m8:()=>i});let d={USER:"user",ASSISTANT:"assistant",TOOL:"tool",SYSTEM:"system",DEVELOPER:"developer"},e={USER:"user",MODEL:"model"},f={TEXT:"text",IMAGE_URL:"image_url",IMAGE:"image",INPUT_AUDIO:"input_audio",AUDIO_URL:"audio_url",FILE:"file",FUNCTION:"function"},g={TEXT:"text",IMAGE:"image",DOCUMENT:"document",TOOL_USE:"tool_use",TOOL_RESULT:"tool_result",THINKING:"thinking",REDACTED_THINKING:"redacted_thinking"},h={MESSAGE:"message",FUNCTION_CALL:"function_call",FUNCTION_CALL_OUTPUT:"function_call_output",REASONING:"reasoning",OUTPUT_TEXT:"output_text",INPUT_TEXT:"input_text",INPUT_IMAGE:"input_image",SUMMARY_TEXT:"summary_text"},i=[f.TEXT,f.IMAGE_URL,f.IMAGE,f.INPUT_AUDIO,f.AUDIO_URL,f.FILE];f.TEXT,f.IMAGE_URL,f.IMAGE,g.TOOL_RESULT;var j=c(12286);let k="unknown",l="image/png"},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71553:a=>{a.exports=require("node:dns/promises")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},73496:a=>{a.exports=require("http2")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79551:a=>{a.exports=require("url")},79646:a=>{a.exports=require("child_process")},81630:a=>{a.exports=require("http")},83712:(a,b,c)=>{c.d(b,{KZ:()=>k,S6:()=>h,Yr:()=>o,f6:()=>l,fc:()=>g,kU:()=>i,pT:()=>j,w_:()=>m});var d=c(37808),e=c(59638);let f=["minLength","maxLength","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","format","default","examples","$schema","$defs","definitions","const","$ref","$comment","deprecated","readOnly","writeOnly","additionalProperties","propertyNames","patternProperties","enumDescriptions","anyOf","oneOf","allOf","not","dependencies","dependentSchemas","dependentRequired","title","optional","deprecated","if","then","else","contentMediaType","contentEncoding","cornerRadius","fillColor","fontFamily","fontSize","fontWeight","gap","padding","strokeColor","strokeThickness","textColor"],g=[{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"OFF"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"OFF"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"OFF"},{category:"HARM_CATEGORY_HARASSMENT",threshold:"OFF"},{category:"HARM_CATEGORY_CIVIC_INTEGRITY",threshold:"OFF"}];function h(a){let b=[];if("string"==typeof a)b.push({text:a});else if(Array.isArray(a)){for(let c of a)if(c.type===e.x4.TEXT)b.push({text:c.text});else if(c.type===e.x4.IMAGE_URL&&c.image_url?.url?.startsWith("data:")){let a=c.image_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if(c.type===e.x4.IMAGE_URL&&c.image_url?.url&&(c.image_url.url.startsWith("http://")||c.image_url.url.startsWith("https://")))b.push({fileData:{fileUri:c.image_url.url,mimeType:"image/*"}});else if(c.type===e.x4.INPUT_AUDIO&&c.input_audio?.data){let a=c.input_audio.format||"wav",d="mp3"===a?"audio/mpeg":`audio/${a}`;b.push({inlineData:{mime_type:d,data:c.input_audio.data}})}else if(c.type===e.x4.AUDIO_URL&&c.audio_url?.url?.startsWith("data:")){let a=c.audio_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if(c.type===e.x4.FILE&&c.file?.file_data?.startsWith("data:")){let a=c.file.file_data,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d).split(";")[0],e=a.substring(d+1);b.push({inlineData:{mime_type:c,data:e}})}}}return b}function i(a,b=""){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>a.type===e.x4.TEXT).map(a=>a.text).join(b):""}function j(a){return(0,d.N)(a,null)}function k(){return`agent-${crypto.randomUUID()}`}function l(){return crypto.randomUUID()+Date.now().toString()}function m(){let a=["useful","bright","swift","calm","bold"],b=["fuze","wave","spark","flow","core"],c=a[Math.floor(Math.random()*a.length)],d=b[Math.floor(Math.random()*b.length)];return`${c}-${d}-${crypto.randomUUID().slice(0,5)}`}function n(a){let b=0,c=-1;for(let d=0;d<a.length;d++){let e=a[d],f=0,g=e.type;"object"===g||e.properties?f=3:"array"===g||e.items?f=2:g&&"null"!==g&&(f=1),f>c&&(c=f,b=d)}return b}function o(a){return a&&"object"==typeof a&&(!function a(b){if(b&&"object"==typeof b)for(let c of(void 0===b.const||b.enum||(b.enum=[b.const],delete b.const),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.enum&&Array.isArray(b.enum)&&(b.enum=b.enum.map(a=>String(a)),b.type||(b.type="string")),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b){if(b.allOf&&Array.isArray(b.allOf)){let a={};for(let c of b.allOf)if(c.properties&&(a.properties||(a.properties={}),Object.assign(a.properties,c.properties)),c.required&&Array.isArray(c.required))for(let b of(a.required||(a.required=[]),c.required))a.required.includes(b)||a.required.push(b);delete b.allOf,a.properties&&(b.properties={...b.properties,...a.properties}),a.required&&(b.required=[...b.required||[],...a.required])}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.anyOf&&Array.isArray(b.anyOf)&&b.anyOf.length>0){let a=b.anyOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=n(a),d=a[c];delete b.anyOf,Object.assign(b,d)}}if(b.oneOf&&Array.isArray(b.oneOf)&&b.oneOf.length>0){let a=b.oneOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=n(a),d=a[c];delete b.oneOf,Object.assign(b,d)}}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.type&&Array.isArray(b.type)){let a=b.type.filter(a=>"null"!==a);b.type=a.length>0?a[0]:"string"}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.properties&&!b.type&&(b.type="object"),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b,c){if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.keys(b)){if(c.includes(d)||d.startsWith("x-")){delete b[d];continue}let e=b[d];e&&"object"==typeof e&&a(e,c)}}}(a,f),!function a(b){if(b&&"object"==typeof b){if(b.required&&Array.isArray(b.required)&&b.properties){let a=b.required.filter(a=>Object.prototype.hasOwnProperty.call(b.properties,a));0===a.length?delete b.required:b.required=a}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of("object"!==b.type||b.properties&&0!==Object.keys(b.properties).length||(b.properties={reason:{type:"string",description:"Brief explanation of why you are calling this tool"}},b.required=["reason"]),Object.values(b)))c&&"object"==typeof c&&a(c)}(a)),a}},84310:(a,b,c)=>{c.d(b,{PX:()=>v,Uw:()=>z});var d=c(67259),e=c(91253),f=c(94164),g=c(76489);let h=/[-_][0-9a-f]{8,}$/i,i=["llm","tts","embedding","image","imageToText","stt","webSearch","webFetch"],j={image:"image",tts:"tts",embedding:"embedding",stt:"stt",imageToText:"imageToText"};function k(a){return a?.kind?a.kind:a?.type&&j[a.type]||"llm"}function l(a){let b=String(a).toLowerCase();return/embed/.test(b)?"embedding":/tts|speech|audio|voice/.test(b)?"tts":/image|imagen|dall-?e|flux|sdxl|sd-|stable-diffusion/.test(b)?"image":"llm"}function m(a,b){let c=e.AI_PROVIDERS[a];return(Array.isArray(c?.serviceKinds)&&c.serviceKinds.length>0?c.serviceKinds:["llm"]).some(a=>b.has(a))}let n={},o={};async function p(a,b){let c=b?.modelsFetcher;if(!c?.url)return[];let d=Date.now();if(n[a]&&d<(o[a]||0))return n[a];try{let b,e=new AbortController,f=setTimeout(()=>e.abort(),8e3),g=await fetch(c.url,{method:"GET",headers:{"Content-Type":"application/json"},cache:"no-store",signal:e.signal});if(clearTimeout(f),!g.ok)return[];let h=await g.json(),i=Array.isArray(h)?h:h?.data||h?.models||h?.results||[];b="opencode-free"===c.type?i.reduce((a,b)=>{let c=b?.id||b?.name||b?.model;return"string"==typeof c&&""!==c.trim()&&c.endsWith("-free")&&a.push(c),a},[]):i.reduce((a,b)=>{let c=b?.id||b?.name||b?.model;return"string"==typeof c&&""!==c.trim()&&a.push(c),a},[]);let j=Array.from(new Set(b));return n[a]=j,o[a]=d+3e5,j}catch{return n[a]||[]}}async function q(a){if(!a?.apiKey)return[];let b="string"==typeof a?.providerSpecificData?.baseUrl?a.providerSpecificData.baseUrl.trim().replace(/\/$/,""):"";if(!b)return[];let c=`${b}/models`,d={"Content-Type":"application/json"};if((0,e.mq)(a.provider))d.Authorization=`Bearer ${a.apiKey}`;else{if(!(0,e.gb)(a.provider))return[];c.endsWith("/messages/models")?c=c.slice(0,-9):c.endsWith("/messages")&&(c=`${c.slice(0,-9)}/models`),d["x-api-key"]=a.apiKey,d["anthropic-version"]="2023-06-01",d.Authorization=`Bearer ${a.apiKey}`}try{let a=new AbortController,b=setTimeout(()=>a.abort(),5e3),e=await fetch(c,{method:"GET",headers:d,cache:"no-store",signal:a.signal});if(clearTimeout(b),!e.ok)return[];let f=await e.json(),g=Array.isArray(f)?f:f?.data||f?.models||f?.results||[];return Array.from(new Set(g.reduce((a,b)=>{let c=b?.id||b?.name||b?.model;return"string"==typeof c&&""!==c.trim()&&a.push(c),a},[])))}catch{return[]}}async function r(){let a=!1,b=[];try{b=await (0,f.getProviderConnections)(),a=!0,b=b.filter(a=>!1!==a.isActive)}catch{}let c=[];try{c=await (0,f.Uv)(),a=!0}catch{}let d=[];try{d=await (0,f.uv)()}catch{}let e={};try{e=await (0,f.OM)()}catch{}let h={};try{h=await (0,g.vF)()}catch{}let i=new Map;for(let a of b)i.has(a.provider)||i.set(a.provider,a);return{connections:b,combos:c,customModels:d,modelAliases:e,isDisabled:(a,b)=>Array.isArray(h[a])&&h[a].includes(b),activeConnectionByProvider:i,dbAvailable:a}}async function s(a,b,c,f,g,h,i){a=new Set(a);let j=[];for(let c of b){if(!function(a,b){let c=a?.kind||"llm";return b.has(c)}(c,a))continue;let b={id:`combo/${c.name}`};("webSearch"===c.kind||"webFetch"===c.kind)&&(b.kind=c.kind),j.push(b)}if(i)for(let b of(await Promise.all([...h.entries()].reduce((b,[d,e])=>(m(d,a)&&b.push(t(d,e,a,c,f,g)),b),[]))))j.push(...b);else{let b=Object.fromEntries(Object.entries(d.Xg).map(([a,b])=>[b,a]));for(let[c,e]of Object.entries(d.vq))if(m(b[c]||c,a))for(let b of e)a.has(k(b))&&(g(c,b.id)||j.push({id:`${c}/${b.id}`}));for(let b of c){if(!b?.id||b.type&&"llm"!==b.type||!a.has("llm"))continue;let c=b.providerAlias;if(!c)continue;let d=String(b.id).trim();d&&j.push({id:`${c}/${d}`})}}for(let b of(await Promise.all(Object.entries(e.AI_PROVIDERS).reduce((b,[d,e])=>(!h.has(d)&&e.noAuth&&m(d,a)&&b.push(u(d,e,a,c,f,g)),b),[]))))j.push(...b);return j}async function t(a,b,c,f,g,i){let j=[],m=d.Xg[a]||a,n=(b?.providerSpecificData?.prefix||(0,e.wG)(a)||m).trim(),o=d.vq[m]||[],r=b?.providerSpecificData?.enabledModels,s=Array.isArray(r)&&r.length>0,t=(0,e.mq)(a)||(0,e.gb)(a),u=e.AI_PROVIDERS[a]?.passthroughModels===!0,v=new Map(o.map(a=>[a.id,k(a)])),w=s?Array.from(new Set(r.filter(a=>"string"==typeof a&&""!==a.trim()))):o.map(a=>a.id);t&&0===w.length&&!h.test(a)&&(w=await q(b));let x=e.AI_PROVIDERS[a];for(let b of(x?.noAuth&&x?.modelsFetcher&&(w=Array.from(new Set([...w,...await p(a,x)]))),u&&0===w.length&&(w=o.map(a=>a.id)),u&&!s&&(w=o.map(a=>a.id)),Array.from(new Set([...w.reduce((b,c)=>{let d=c;return d.startsWith(`${n}/`)?d=d.slice(n.length+1):d.startsWith(`${m}/`)?d=d.slice(m.length+1):d.startsWith(`${a}/`)&&(d=d.slice(a.length+1)),"string"==typeof d&&""!==d.trim()&&b.push(d),b},[]),...f.reduce((b,c)=>{if(!c?.id||c.type&&"llm"!==c.type)return b;let d=c.providerAlias;if(d!==m&&d!==n&&d!==a)return b;let e=String(c.id).trim();return""!==e&&b.push(e),b},[]),...Object.values(g||{}).reduce((b,c)=>{let d;return"string"==typeof c&&c.includes("/")&&(c.startsWith(`${n}/`)||c.startsWith(`${m}/`)||c.startsWith(`${a}/`))&&"string"==typeof(d=c.startsWith(`${n}/`)?c.slice(n.length+1):c.startsWith(`${m}/`)?c.slice(m.length+1):c.slice(a.length+1))&&""!==d.trim()&&b.push(d),b},[])])))){let a=v.get(b)||l(b);c.has(a)&&(i(n,b)||i(m,b)||j.push({id:`${n}/${b}`}))}if(c.has("tts")&&Array.isArray(x?.ttsConfig?.models))for(let a of x.ttsConfig.models)!a?.id||i(n,a.id)||i(m,a.id)||j.push({id:`${n}/${a.id}`});if(c.has("embedding")&&Array.isArray(x?.embeddingConfig?.models))for(let a of x.embeddingConfig.models)!a?.id||i(n,a.id)||i(m,a.id)||j.push({id:`${n}/${a.id}`});return c.has("webSearch")&&x?.searchConfig&&j.push({id:`${n}/search`,kind:"webSearch"}),c.has("webFetch")&&x?.fetchConfig&&j.push({id:`${n}/fetch`,kind:"webFetch"}),j}async function u(a,b,c,f,g,h){let i=[],j=(0,e.wG)(a)||b.alias||a,m=new Map((d.vq[j]||[]).map(a=>[a.id,k(a)])),n=(d.vq[j]||[]).map(a=>a.id),o=[];for(let d of(b.modelsFetcher&&(o=await p(a,b)),Array.from(new Set([...n,...o,...f.reduce((b,c)=>{if(!c?.id||c.type&&"llm"!==c.type)return b;let d=c.providerAlias;if(d!==j&&d!==a)return b;let e=String(c.id).trim();return""!==e&&b.push(e),b},[]),...Object.values(g||{}).reduce((b,c)=>{let d;return"string"==typeof c&&c.includes("/")&&(c.startsWith(`${j}/`)||c.startsWith(`${a}/`))&&"string"==typeof(d=c.startsWith(`${j}/`)?c.slice(j.length+1):c.slice(a.length+1))&&""!==d.trim()&&b.push(d),b},[])])))){let a=m.get(d)||l(d);c.has(a)&&(h(j,d)||i.push({id:`${j}/${d}`}))}if(c.has("tts")&&Array.isArray(b?.ttsConfig?.models))for(let a of b.ttsConfig.models)a?.id&&!h(j,a.id)&&i.push({id:`${j}/${a.id}`});if(c.has("embedding")&&Array.isArray(b?.embeddingConfig?.models))for(let a of b.embeddingConfig.models)a?.id&&!h(j,a.id)&&i.push({id:`${j}/${a.id}`});return c.has("webSearch")&&b?.searchConfig&&i.push({id:`${j}/search`,kind:"webSearch"}),c.has("webFetch")&&b?.fetchConfig&&i.push({id:`${j}/fetch`,kind:"webFetch"}),i}async function v(a){let{combos:b,customModels:c,modelAliases:d,isDisabled:e,activeConnectionByProvider:f,dbAvailable:g}=await r(),h=await s(a,b,c,d,e,f,g),i=new Set,j=[];for(let a of h){if(!a?.id||i.has(a.id))continue;i.add(a.id);let b={id:a.id,object:"model",owned_by:a.id.includes("/")?a.id.split("/")[0]:"combo"};a.kind&&(b.kind=a.kind),j.push(b)}return j}let w=null,x=0;async function y(){let a=Date.now();if(w&&a<x)return w;let{combos:b,customModels:c,modelAliases:d,isDisabled:e,activeConnectionByProvider:f,dbAvailable:g}=await r(),h=await s(i,b,c,d,e,f,g),j=new Set;for(let a of h)a?.id&&j.add(a.id);return w=j,x=a+3e4,j}async function z(a,b=null){return!b||(await y()).has(a)}},85577:(a,b,c)=>{c.d(b,{Xg:()=>o,PROVIDER_MODELS:()=>f.vq,fZ:()=>j,cY:()=>p,ux:()=>k,OA:()=>l,kt:()=>m,SM:()=>i});var d=c(13946),e=c(55290),f=c(68711),g=c(57959);let h="-review";function i(a){return f.vq[a]||[]}function j(a){let b=f.vq[a];return b?.[0]?.id||null}function k(a,b){let c=f.vq[a];return c?(0,g.gr)(c.find(a=>a.id===b)):null}function l(a,b){let c=f.vq[a];if(!c)return null;let d=c.find(a=>a.id===b);return d?.kind||d?.type||null}function m(a,b){let c=f.vq[a],d=c?.find(a=>a.id===b);return d?.upstreamModelId?d.upstreamModelId:"cx"===a&&"string"==typeof b&&b.endsWith(h)?b.slice(0,-h.length):b}let n=Object.fromEntries(e.A.filter(a=>a.alias&&a.alias!==a.id).map(a=>[a.id,a.alias])),o=Object.fromEntries(Object.keys(d.xq).map(a=>[a,n[a]||a]));function p(a,b){return(0,g.g5)(f.vq[a]?.find(a=>a.id===b))}},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},94735:a=>{a.exports=require("events")},97774:(a,b,c)=>{c.d(b,{P:()=>i});let d=new Set(["localhost","ip6-localhost","ip6-loopback"]),e=[".internal",".local",".localhost"];function f(a){let b=a.split(".");if(4!==b.length)return null;let c=0;for(let a of b){if(!/^\d{1,3}$/.test(a))return null;let b=Number(a);if(b>255)return null;c=256*c+b}return c>>>0}let g=[[f("0.0.0.0"),8],[f("10.0.0.0"),8],[f("127.0.0.0"),8],[f("169.254.0.0"),16],[f("172.16.0.0"),12],[f("192.168.0.0"),16]];function h(a){let b=f(a);return null!==b&&g.some(([a,c])=>{let d=0===c?0:0xffffffff<<32-c>>>0;return(b&d)==(a&d)})}function i(a){let b,c,f=new URL(a).hostname.toLowerCase();if(d.has(f)||e.some(a=>f.endsWith(a)))throw Error("Blocked URL: internal host");if(h(f)||f.includes(":")&&((c=(b=f.replace(/^\[|\]$/g,"").toLowerCase()).match(/^::ffff:(\d+\.\d+\.\d+\.\d+)$/))?h(c[1]):"::1"===b||"::"===b||b.startsWith("fe80:")||b.startsWith("fc")||b.startsWith("fd")))throw Error("Blocked URL: private IP")}}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[1348,9787,9633,5290,8711,7010,7916,3133,3424,818,4004,3950],()=>b(b.s=7663));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=2922,a.ids=[2922],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12334:(a,b,c)=>{"use strict";a.exports=c(44870)},13674:()=>{},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},39006:a=>{"use strict";a.exports={rE:"0.7.4"}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},47266:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{GET:()=>A});var e=c(12334),f=c(59399),g=c(8894),h=c(83760),i=c(34958),j=c(970),k=c(261),l=c(28112),m=c(52194),n=c(9410),o=c(68673),p=c(47471),q=c(13093),r=c(98563),s=c(7572),t=c(86439),u=c(33610),v=c(55591),w=c.n(v),x=c(39006);function y(a){return new Promise(b=>{let c=w().get(a,{timeout:4e3},a=>{let c="";a.on("data",a=>c+=a),a.on("end",()=>{try{b(JSON.parse(c))}catch{b(null)}})});c.on("error",()=>b(null)),c.on("timeout",()=>{c.destroy(),b(null)})})}function z(a,b){let c=a.split(".").map(Number),d=b.split(".").map(Number);for(let a=0;a<3;a++){if(c[a]>d[a])return 1;if(c[a]<d[a])return -1}return 0}async function A(){let[a,b]=await Promise.all([new Promise(async a=>{let b=await y("https://registry.npmjs.org/vansrouter/latest");a(b?.version||null)}),new Promise(async a=>{let b=await y("https://raw.githubusercontent.com/Vanszs/VansRouter/main/package.json");a(b?.version||null)})]),c=x.rE,d=!!a&&z(a,c)>0,e=null;if(a&&b){let d=z(b,a),f=z(c,b);e=d>=0&&f<0?"github_ahead":d<0?"github_behind_npm":f>0?"local_ahead":"current"}return Response.json({currentVersion:c,latestVersion:a,githubVersion:b,hasUpdate:d,githubStatus:e})}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/version/route",pathname:"/api/version",filename:"route",bundlePath:"app/api/version/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/VansRouter/VansRouter/src/app/api/version/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/version/route";"/index"===d&&(d="/");let e=await B.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,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.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=`${O} ${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(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!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=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.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!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.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 B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)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});S||b.setHeader("x-nextjs-cache",D?"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 S&&J||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)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},47471:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(91591),e=c(34246),f=c(13093);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},55591:a=>{"use strict";a.exports=require("https")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},95522:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[1348],()=>b(b.s=47266));module.exports=c})();
1
+ (()=>{var a={};a.id=2922,a.ids=[2922],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12334:(a,b,c)=>{"use strict";a.exports=c(44870)},13674:()=>{},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},34169:(a,b,c)=>{"use strict";c.d(b,{h:()=>f,m:()=>e});var d=c(73024);function e(){return process.env.PM2_HOME_PATH||process.env.PM2_JSON_PROCESSING||process.env.pm2_env?"pm2":process.env.INVOCATION_ID||(0,d.existsSync)("/run/systemd/system")?"systemd":"string"==typeof process.env.TMUX&&process.env.TMUX.length>0?"tmux":"string"==typeof process.env.STY&&process.env.STY.length>0?"screen":!function(){if((0,d.existsSync)("/.dockerenv"))return!0;try{let a=(0,d.readFileSync)("/proc/1/cgroup","utf8");if(/docker|containerd|kubepods|buildkit/i.test(a))return!0}catch{}return!1}()?"direct":"docker"}function f(a,b){let c=`npm i -g ${b}@latest --prefer-online`;switch(a){case"pm2":let d=function(){let a=process.env.pm2_env;if(!a)return null;try{let b=JSON.parse(a);return b?.name||null}catch{return null}}()||"vansrouter";return`${c} && pm2 restart ${d}`;case"systemd":let e=function(){try{let a=process.execPath.split("/").pop()||"vansrouter";return`${a}.service`}catch{return null}}()||b;return`${c} && sudo systemctl restart ${e}`;case"screen":return`${c} && screen -dmS vansrouter vansrouter`;case"tmux":return`${c} && tmux new-session -d -s vansrouter 'vansrouter'`;case"docker":return`${c} # NOTE: inside Docker — pull new image on host (docker compose pull && up -d) or use Watchtower`;default:return null}}},39006:a=>{"use strict";a.exports={rE:"0.7.7"}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},47266:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>I,patchFetch:()=>H,routeModule:()=>D,serverHooks:()=>G,workAsyncStorage:()=>E,workUnitAsyncStorage:()=>F});var d={};c.r(d),c.d(d,{GET:()=>C});var e=c(12334),f=c(59399),g=c(8894),h=c(83760),i=c(34958),j=c(970),k=c(261),l=c(28112),m=c(52194),n=c(9410),o=c(68673),p=c(47471),q=c(13093),r=c(98563),s=c(7572),t=c(86439),u=c(33610),v=c(55591),w=c.n(v),x=c(39006),y=c(34169);let z="vansrouter";function A(a){return new Promise(b=>{let c=w().get(a,{timeout:4e3},a=>{let c="";a.on("data",a=>c+=a),a.on("end",()=>{try{b(JSON.parse(c))}catch{b(null)}})});c.on("error",()=>b(null)),c.on("timeout",()=>{c.destroy(),b(null)})})}function B(a,b){let c=a.split(".").map(Number),d=b.split(".").map(Number);for(let a=0;a<3;a++){if(c[a]>d[a])return 1;if(c[a]<d[a])return -1}return 0}async function C(){let[a,b]=await Promise.all([new Promise(async a=>{let b=await A(`https://registry.npmjs.org/${z}/latest`);a(b?.version||null)}),new Promise(async a=>{let b=await A("https://raw.githubusercontent.com/Vanszs/VansRouter/dev/package.json");a(b?.version||null)})]),c=x.rE,d=!!a&&B(a,c)>0,e=(0,y.m)(),f=(0,y.h)(e,z),g=null;if(a&&b){let d=B(b,a),e=B(c,b);g=d>=0&&e<0?"github_ahead":d<0?"github_behind_npm":e>0?"local_ahead":"current"}return Response.json({currentVersion:c,latestVersion:a,githubVersion:b,hasUpdate:d,githubStatus:g,runtime:e,canAutoRestart:null!==f,installCommand:f||`npm i -g ${z}@latest`})}let D=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/version/route",pathname:"/api/version",filename:"route",bundlePath:"app/api/version/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/VansRouter/VansRouter/src/app/api/version/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:F,serverHooks:G}=D;function H(){return(0,g.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:F})}async function I(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),D.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/version/route";"/index"===d&&(d="/");let e=await D.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,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||D.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===D.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await D.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>D.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>D.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.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=`${O} ${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(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&E&&!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=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.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!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.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 D.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await D.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)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});S||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 S&&J||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)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await D.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},47471:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(91591),e=c(34246),f=c(13093);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},55591:a=>{"use strict";a.exports=require("https")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},95522:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[1348],()=>b(b.s=47266));module.exports=c})();
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=1907,a.ids=[1907],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")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},79646:a=>{a.exports=require("child_process")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91647:(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(12334),f=c(59399),g=c(8894),h=c(83760),i=c(34958),j=c(970),k=c(261),l=c(28112),m=c(52194),n=c(9410),o=c(68673),p=c(47471),q=c(13093),r=c(98563),s=c(7572),t=c(86439),u=c(33610),v=c(77231),w=c(41073);async function x(){try{await (0,w.l)()}catch{}let a=v.NextResponse.json({success:!0,message:"Shutting down for manual update..."});return setTimeout(()=>process.exit(0),500),a}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/version/shutdown/route",pathname:"/api/version/shutdown",filename:"route",bundlePath:"app/api/version/shutdown/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/VansRouter/VansRouter/src/app/api/version/shutdown/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/version/shutdown/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,deploymentId:v,params:w,nextConfig:x,parsedUrl:z,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,z,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||y.isDev||A||(L="/index"===(L=F)?"/":L);let M=!0===y.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.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=`${O} ${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(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!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=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.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!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.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:N,isOnDemandRevalidate:D})},!1,C),b}},k=await y.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)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});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||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)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[1348,4777,5290,8711,383],()=>b(b.s=91647));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=1907,a.ids=[1907],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")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},33873:a=>{a.exports=require("path")},34169:(a,b,c)=>{c.d(b,{h:()=>f,m:()=>e});var d=c(73024);function e(){return process.env.PM2_HOME_PATH||process.env.PM2_JSON_PROCESSING||process.env.pm2_env?"pm2":process.env.INVOCATION_ID||(0,d.existsSync)("/run/systemd/system")?"systemd":"string"==typeof process.env.TMUX&&process.env.TMUX.length>0?"tmux":"string"==typeof process.env.STY&&process.env.STY.length>0?"screen":!function(){if((0,d.existsSync)("/.dockerenv"))return!0;try{let a=(0,d.readFileSync)("/proc/1/cgroup","utf8");if(/docker|containerd|kubepods|buildkit/i.test(a))return!0}catch{}return!1}()?"direct":"docker"}function f(a,b){let c=`npm i -g ${b}@latest --prefer-online`;switch(a){case"pm2":let d=function(){let a=process.env.pm2_env;if(!a)return null;try{let b=JSON.parse(a);return b?.name||null}catch{return null}}()||"vansrouter";return`${c} && pm2 restart ${d}`;case"systemd":let e=function(){try{let a=process.execPath.split("/").pop()||"vansrouter";return`${a}.service`}catch{return null}}()||b;return`${c} && sudo systemctl restart ${e}`;case"screen":return`${c} && screen -dmS vansrouter vansrouter`;case"tmux":return`${c} && tmux new-session -d -s vansrouter 'vansrouter'`;case"docker":return`${c} # NOTE: inside Docker — pull new image on host (docker compose pull && up -d) or use Watchtower`;default:return null}}},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},79646:a=>{a.exports=require("child_process")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91647:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{POST:()=>z});var e=c(12334),f=c(59399),g=c(8894),h=c(83760),i=c(34958),j=c(970),k=c(261),l=c(28112),m=c(52194),n=c(9410),o=c(68673),p=c(47471),q=c(13093),r=c(98563),s=c(7572),t=c(86439),u=c(33610),v=c(77231),w=c(31421),x=c(41073),y=c(34169);async function z(a){let b=(0,y.m)(),c={};try{c=await a.json()}catch{}let d=c.packageName||"vansrouter",e="manual"===c.mode?"manual":"auto";try{await (0,x.l)()}catch{}let f=(0,y.h)(b,d),g="auto"===e&&null!==f;if(g)try{(0,w.spawn)("bash",["-c",`sleep 2 && ${f}`],{detached:!0,stdio:"ignore",env:{...process.env,PM2_HOME_PATH:void 0,pm2_env:void 0,PM2_JSON_PROCESSING:void 0}}).unref()}catch{}return setTimeout(()=>process.exit(0),1500),v.NextResponse.json({success:!0,runtime:b,mode:e,autoRestart:g,autoRestartCommand:g?f:void 0,installCommand:g?void 0:f,message:g?`Update scheduled. Server will exit in ~1.5s, then ${b} will install v${d}@latest and restart automatically.`:"direct"===b?`Shutting down. Server is running in foreground — manually restart with: \`${d}\``:`Shutting down. After exit, run this command to update: \`${f||`npm i -g ${d}@latest`}\``})}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/version/shutdown/route",pathname:"/api/version/shutdown",filename:"route",bundlePath:"app/api/version/shutdown/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/VansRouter/VansRouter/src/app/api/version/shutdown/route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/version/shutdown/route";"/index"===d&&(d="/");let e=await A.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,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||A.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===A.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await A.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.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=`${O} ${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(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!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=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.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!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await A.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)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});S||b.setHeader("x-nextjs-cache",D?"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 S&&J||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)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[1348,4777,5290,8711,383],()=>b(b.s=91647));module.exports=c})();
@@ -1 +1 @@
1
- globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/callback/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"497":{"*":{"id":"44544","name":"*","chunks":[],"async":false}},"581":{"*":{"id":"77254","name":"*","chunks":[],"async":false}},"665":{"*":{"id":"73962","name":"*","chunks":[],"async":false}},"741":{"*":{"id":"36917","name":"*","chunks":[],"async":false}},"819":{"*":{"id":"41117","name":"*","chunks":[],"async":false}},"1609":{"*":{"id":"94077","name":"*","chunks":[],"async":false}},"2158":{"*":{"id":"11494","name":"*","chunks":[],"async":false}},"2514":{"*":{"id":"63780","name":"*","chunks":[],"async":false}},"3035":{"*":{"id":"2881","name":"*","chunks":[],"async":false}},"3390":{"*":{"id":"21428","name":"*","chunks":[],"async":false}},"3567":{"*":{"id":"39652","name":"*","chunks":[],"async":false}},"4075":{"*":{"id":"17168","name":"*","chunks":[],"async":false}},"4274":{"*":{"id":"59698","name":"*","chunks":[],"async":false}},"4347":{"*":{"id":"34469","name":"*","chunks":[],"async":false}},"4373":{"*":{"id":"1539","name":"*","chunks":[],"async":false}},"4556":{"*":{"id":"13572","name":"*","chunks":[],"async":false}},"4813":{"*":{"id":"14583","name":"*","chunks":[],"async":false}},"4899":{"*":{"id":"53209","name":"*","chunks":[],"async":false}},"4914":{"*":{"id":"7722","name":"*","chunks":[],"async":false}},"4922":{"*":{"id":"30676","name":"*","chunks":[],"async":false}},"5337":{"*":{"id":"58325","name":"*","chunks":[],"async":false}},"5399":{"*":{"id":"24247","name":"*","chunks":[],"async":false}},"5592":{"*":{"id":"98240","name":"*","chunks":[],"async":false}},"5971":{"*":{"id":"42295","name":"*","chunks":[],"async":false}},"6029":{"*":{"id":"7253","name":"*","chunks":[],"async":false}},"6119":{"*":{"id":"9413","name":"*","chunks":[],"async":false}},"6184":{"*":{"id":"68862","name":"*","chunks":[],"async":false}},"6312":{"*":{"id":"88502","name":"*","chunks":[],"async":false}},"6329":{"*":{"id":"20321","name":"*","chunks":[],"async":false}},"6331":{"*":{"id":"96019","name":"*","chunks":[],"async":false}},"6447":{"*":{"id":"7011","name":"*","chunks":[],"async":false}},"6595":{"*":{"id":"63478","name":"*","chunks":[],"async":false}},"6972":{"*":{"id":"41888","name":"*","chunks":[],"async":false}},"7056":{"*":{"id":"32698","name":"*","chunks":[],"async":false}},"7217":{"*":{"id":"5997","name":"*","chunks":[],"async":false}},"7250":{"*":{"id":"79854","name":"*","chunks":[],"async":false}},"7468":{"*":{"id":"57822","name":"*","chunks":[],"async":false}},"7560":{"*":{"id":"49865","name":"*","chunks":[],"async":false}},"7993":{"*":{"id":"23880","name":"*","chunks":[],"async":false}},"8199":{"*":{"id":"34259","name":"*","chunks":[],"async":false}},"8663":{"*":{"id":"84979","name":"*","chunks":[],"async":false}},"8906":{"*":{"id":"75748","name":"*","chunks":[],"async":false}},"9319":{"*":{"id":"73062","name":"*","chunks":[],"async":false}},"9358":{"*":{"id":"84706","name":"*","chunks":[],"async":false}},"9590":{"*":{"id":"28222","name":"*","chunks":[],"async":false}},"9947":{"*":{"id":"45961","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/client-page.js":{"id":6329,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/client-page.js":{"id":6329,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/client-segment.js":{"id":4899,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4899,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":5592,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":5592,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/layout-router.js":{"id":6972,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/layout-router.js":{"id":6972,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8906,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8906,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/lib/framework/boundary-components.js":{"id":5337,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":5337,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":4556,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":4556,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/@next+third-parties@16.2.9_next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@next/third-parties/dist/google/ga.js":{"id":4914,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/@next+third-parties@16.2.9_next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@next/third-parties/dist/google/gtm.js":{"id":7468,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/@next+third-parties@16.2.9_next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@next/third-parties/dist/ThirdPartyScriptEmbed.js":{"id":6331,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/script.js":{"id":4075,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/script.js":{"id":4075,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.js\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"],\"variable\":\"--font-inter\"}],\"variableName\":\"inter\"}":{"id":4719,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/material-symbols-subset.css":{"id":8173,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/globals.css":{"id":6595,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/i18n/RuntimeI18nProvider.js":{"id":1609,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/MaterialSymbolsLink.js":{"id":4922,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/ThemeProvider.js":{"id":9319,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-87a1b455709d7de4.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/error.js":{"id":7560,"name":"*","chunks":["3885","static/chunks/3885-62884dd3051155e9.js","8039","static/chunks/app/error-0c909c404411db68.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/global-error.js":{"id":6447,"name":"*","chunks":["4219","static/chunks/app/global-error-003ccabaecca03c8.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/callback/page.js":{"id":3390,"name":"*","chunks":["7852","static/chunks/app/callback/page-39e20bde55beaa9f.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/dashboard/settings/pricing/page.js":{"id":7217,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/landing/page.js":{"id":3035,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/login/page.js":{"id":4274,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/masuk/MasukClient.js":{"id":4373,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/index.js":{"id":497,"name":"*","chunks":["7418","static/chunks/642b329c-990ebec103959462.js","3885","static/chunks/3885-62884dd3051155e9.js","9458","static/chunks/9458-8e7ccc04f8025594.js","9814","static/chunks/9814-a20d3abed6c821bc.js","4385","static/chunks/4385-87a1b455709d7de4.js","497","static/chunks/497-240bb61834e40ac1.js","9305","static/chunks/app/(dashboard)/layout-0e565003b0b585f1.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/error.js":{"id":9947,"name":"*","chunks":["3885","static/chunks/3885-62884dd3051155e9.js","4151","static/chunks/app/(dashboard)/error-86fe20e969c25afa.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/basic-chat/BasicChatPageClient.js":{"id":6184,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/cli-tools/[toolId]/ToolDetailClient.js":{"id":819,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/cli-tools/CLIToolsPageClient.js":{"id":9590,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/combos/page.js":{"id":4813,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js":{"id":7993,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js":{"id":4347,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/[kind]/MediaKindClient.js":{"id":7250,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js":{"id":6312,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/web/page.js":{"id":2158,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/mitm/MitmPageClient.js":{"id":581,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/providers/new/page.js":{"id":6029,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/usage/components/ProviderLimits/index.js":{"id":665,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/Loading.js":{"id":7056,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/skills/page.js":{"id":6119,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/token-saver/TokenSaverClient.js":{"id":741,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/translator/page.js":{"id":2514,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/usage/page.js":{"id":3567,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/console-log/ConsoleLogClient.js":{"id":8199,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/profile/page.js":{"id":5971,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/providers/page.js":{"id":8663,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/providers/[id]/page.js":{"id":5399,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/proxy-pools/page.js":{"id":9358,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/VansRouter/VansRouter/src/":[],"/home/runner/work/VansRouter/VansRouter/src/app/layout":[{"inlined":false,"path":"static/css/e8723a4485b3f4ec.css"},{"inlined":false,"path":"static/css/1fc10f069b479895.css"}],"/home/runner/work/VansRouter/VansRouter/src/app/error":[],"/home/runner/work/VansRouter/VansRouter/src/app/global-error":[{"inlined":false,"path":"static/css/1fc10f069b479895.css"}],"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/layout":[{"inlined":false,"path":"static/css/008a05b0ad6b854a.css"}],"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/error":[],"/home/runner/work/VansRouter/VansRouter/src/app/callback/page":[]},"rscModuleMapping":{"497":{"*":{"id":"88844","name":"*","chunks":[],"async":false}},"581":{"*":{"id":"64897","name":"*","chunks":[],"async":false}},"665":{"*":{"id":"53929","name":"*","chunks":[],"async":false}},"741":{"*":{"id":"33731","name":"*","chunks":[],"async":false}},"819":{"*":{"id":"87607","name":"*","chunks":[],"async":false}},"1609":{"*":{"id":"31159","name":"*","chunks":[],"async":false}},"2158":{"*":{"id":"48904","name":"*","chunks":[],"async":false}},"2514":{"*":{"id":"19998","name":"*","chunks":[],"async":false}},"3035":{"*":{"id":"58410","name":"*","chunks":[],"async":false}},"3390":{"*":{"id":"80066","name":"*","chunks":[],"async":false}},"3567":{"*":{"id":"19631","name":"*","chunks":[],"async":false}},"4075":{"*":{"id":"16802","name":"*","chunks":[],"async":false}},"4274":{"*":{"id":"56176","name":"*","chunks":[],"async":false}},"4347":{"*":{"id":"19366","name":"*","chunks":[],"async":false}},"4373":{"*":{"id":"66325","name":"*","chunks":[],"async":false}},"4556":{"*":{"id":"32766","name":"*","chunks":[],"async":false}},"4813":{"*":{"id":"18737","name":"*","chunks":[],"async":false}},"4899":{"*":{"id":"29835","name":"*","chunks":[],"async":false}},"4914":{"*":{"id":"35120","name":"*","chunks":[],"async":false}},"4922":{"*":{"id":"88514","name":"*","chunks":[],"async":false}},"5337":{"*":{"id":"50875","name":"*","chunks":[],"async":false}},"5399":{"*":{"id":"63240","name":"*","chunks":[],"async":false}},"5592":{"*":{"id":"10590","name":"*","chunks":[],"async":false}},"5971":{"*":{"id":"12373","name":"*","chunks":[],"async":false}},"6029":{"*":{"id":"22471","name":"*","chunks":[],"async":false}},"6119":{"*":{"id":"21798","name":"*","chunks":[],"async":false}},"6184":{"*":{"id":"20904","name":"*","chunks":[],"async":false}},"6312":{"*":{"id":"83588","name":"*","chunks":[],"async":false}},"6329":{"*":{"id":"98823","name":"*","chunks":[],"async":false}},"6331":{"*":{"id":"8097","name":"*","chunks":[],"async":false}},"6447":{"*":{"id":"30145","name":"*","chunks":[],"async":false}},"6595":{"*":{"id":"430","name":"*","chunks":[],"async":false}},"6972":{"*":{"id":"2298","name":"*","chunks":[],"async":false}},"7056":{"*":{"id":"6952","name":"*","chunks":[],"async":false}},"7217":{"*":{"id":"60884","name":"*","chunks":[],"async":false}},"7250":{"*":{"id":"38736","name":"*","chunks":[],"async":false}},"7468":{"*":{"id":"89928","name":"*","chunks":[],"async":false}},"7560":{"*":{"id":"71503","name":"*","chunks":[],"async":false}},"7993":{"*":{"id":"31441","name":"*","chunks":[],"async":false}},"8173":{"*":{"id":"57932","name":"*","chunks":[],"async":false}},"8199":{"*":{"id":"76033","name":"*","chunks":[],"async":false}},"8663":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"8906":{"*":{"id":"13598","name":"*","chunks":[],"async":false}},"9319":{"*":{"id":"84112","name":"*","chunks":[],"async":false}},"9358":{"*":{"id":"16776","name":"*","chunks":[],"async":false}},"9590":{"*":{"id":"17552","name":"*","chunks":[],"async":false}},"9947":{"*":{"id":"35411","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/callback/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"497":{"*":{"id":"44544","name":"*","chunks":[],"async":false}},"581":{"*":{"id":"77254","name":"*","chunks":[],"async":false}},"665":{"*":{"id":"73962","name":"*","chunks":[],"async":false}},"741":{"*":{"id":"36917","name":"*","chunks":[],"async":false}},"819":{"*":{"id":"41117","name":"*","chunks":[],"async":false}},"1609":{"*":{"id":"94077","name":"*","chunks":[],"async":false}},"2158":{"*":{"id":"11494","name":"*","chunks":[],"async":false}},"2514":{"*":{"id":"63780","name":"*","chunks":[],"async":false}},"3035":{"*":{"id":"2881","name":"*","chunks":[],"async":false}},"3390":{"*":{"id":"21428","name":"*","chunks":[],"async":false}},"3567":{"*":{"id":"39652","name":"*","chunks":[],"async":false}},"4075":{"*":{"id":"17168","name":"*","chunks":[],"async":false}},"4274":{"*":{"id":"59698","name":"*","chunks":[],"async":false}},"4347":{"*":{"id":"34469","name":"*","chunks":[],"async":false}},"4373":{"*":{"id":"1539","name":"*","chunks":[],"async":false}},"4556":{"*":{"id":"13572","name":"*","chunks":[],"async":false}},"4813":{"*":{"id":"14583","name":"*","chunks":[],"async":false}},"4899":{"*":{"id":"53209","name":"*","chunks":[],"async":false}},"4914":{"*":{"id":"7722","name":"*","chunks":[],"async":false}},"4922":{"*":{"id":"30676","name":"*","chunks":[],"async":false}},"5337":{"*":{"id":"58325","name":"*","chunks":[],"async":false}},"5399":{"*":{"id":"24247","name":"*","chunks":[],"async":false}},"5592":{"*":{"id":"98240","name":"*","chunks":[],"async":false}},"5971":{"*":{"id":"42295","name":"*","chunks":[],"async":false}},"6029":{"*":{"id":"7253","name":"*","chunks":[],"async":false}},"6119":{"*":{"id":"9413","name":"*","chunks":[],"async":false}},"6184":{"*":{"id":"68862","name":"*","chunks":[],"async":false}},"6312":{"*":{"id":"88502","name":"*","chunks":[],"async":false}},"6329":{"*":{"id":"20321","name":"*","chunks":[],"async":false}},"6331":{"*":{"id":"96019","name":"*","chunks":[],"async":false}},"6447":{"*":{"id":"7011","name":"*","chunks":[],"async":false}},"6595":{"*":{"id":"63478","name":"*","chunks":[],"async":false}},"6972":{"*":{"id":"41888","name":"*","chunks":[],"async":false}},"7056":{"*":{"id":"32698","name":"*","chunks":[],"async":false}},"7217":{"*":{"id":"5997","name":"*","chunks":[],"async":false}},"7250":{"*":{"id":"79854","name":"*","chunks":[],"async":false}},"7468":{"*":{"id":"57822","name":"*","chunks":[],"async":false}},"7560":{"*":{"id":"49865","name":"*","chunks":[],"async":false}},"7993":{"*":{"id":"23880","name":"*","chunks":[],"async":false}},"8199":{"*":{"id":"34259","name":"*","chunks":[],"async":false}},"8663":{"*":{"id":"84979","name":"*","chunks":[],"async":false}},"8906":{"*":{"id":"75748","name":"*","chunks":[],"async":false}},"9319":{"*":{"id":"73062","name":"*","chunks":[],"async":false}},"9358":{"*":{"id":"84706","name":"*","chunks":[],"async":false}},"9590":{"*":{"id":"28222","name":"*","chunks":[],"async":false}},"9947":{"*":{"id":"45961","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/client-page.js":{"id":6329,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/client-page.js":{"id":6329,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/client-segment.js":{"id":4899,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4899,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":5592,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":5592,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/layout-router.js":{"id":6972,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/layout-router.js":{"id":6972,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/render-from-template-context.js":{"id":8906,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":8906,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/lib/framework/boundary-components.js":{"id":5337,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":5337,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":4556,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":4556,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/@next+third-parties@16.2.9_next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@next/third-parties/dist/google/ga.js":{"id":4914,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/@next+third-parties@16.2.9_next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@next/third-parties/dist/google/gtm.js":{"id":7468,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/@next+third-parties@16.2.9_next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4__react@19.2.4/node_modules/@next/third-parties/dist/ThirdPartyScriptEmbed.js":{"id":6331,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/script.js":{"id":4075,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/esm/client/script.js":{"id":4075,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/node_modules/.pnpm/next@16.2.9_@babel+core@7.29.7_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.js\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"],\"variable\":\"--font-inter\"}],\"variableName\":\"inter\"}":{"id":4719,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/material-symbols-subset.css":{"id":8173,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/globals.css":{"id":6595,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/i18n/RuntimeI18nProvider.js":{"id":1609,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/MaterialSymbolsLink.js":{"id":4922,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/ThemeProvider.js":{"id":9319,"name":"*","chunks":["6000","static/chunks/6000-87aaca633cd687c1.js","4385","static/chunks/4385-7cd46625904c1b7b.js","7177","static/chunks/app/layout-b163b1ebf7b2b559.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/error.js":{"id":7560,"name":"*","chunks":["3885","static/chunks/3885-62884dd3051155e9.js","8039","static/chunks/app/error-0c909c404411db68.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/global-error.js":{"id":6447,"name":"*","chunks":["4219","static/chunks/app/global-error-003ccabaecca03c8.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/callback/page.js":{"id":3390,"name":"*","chunks":["7852","static/chunks/app/callback/page-39e20bde55beaa9f.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/dashboard/settings/pricing/page.js":{"id":7217,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/landing/page.js":{"id":3035,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/login/page.js":{"id":4274,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/masuk/MasukClient.js":{"id":4373,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/index.js":{"id":497,"name":"*","chunks":["7418","static/chunks/642b329c-990ebec103959462.js","3885","static/chunks/3885-62884dd3051155e9.js","9458","static/chunks/9458-8e7ccc04f8025594.js","9814","static/chunks/9814-a20d3abed6c821bc.js","4385","static/chunks/4385-7cd46625904c1b7b.js","497","static/chunks/497-e70e37c356d2ad24.js","9305","static/chunks/app/(dashboard)/layout-0e565003b0b585f1.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/error.js":{"id":9947,"name":"*","chunks":["3885","static/chunks/3885-62884dd3051155e9.js","4151","static/chunks/app/(dashboard)/error-86fe20e969c25afa.js"],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/basic-chat/BasicChatPageClient.js":{"id":6184,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/cli-tools/[toolId]/ToolDetailClient.js":{"id":819,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/cli-tools/CLIToolsPageClient.js":{"id":9590,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/combos/page.js":{"id":4813,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js":{"id":7993,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js":{"id":4347,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/[kind]/MediaKindClient.js":{"id":7250,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js":{"id":6312,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/media-providers/web/page.js":{"id":2158,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/mitm/MitmPageClient.js":{"id":581,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/providers/new/page.js":{"id":6029,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/usage/components/ProviderLimits/index.js":{"id":665,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/shared/components/Loading.js":{"id":7056,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/skills/page.js":{"id":6119,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/token-saver/TokenSaverClient.js":{"id":741,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/translator/page.js":{"id":2514,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/usage/page.js":{"id":3567,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/console-log/ConsoleLogClient.js":{"id":8199,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/profile/page.js":{"id":5971,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/providers/page.js":{"id":8663,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/proxy-pools/page.js":{"id":9358,"name":"*","chunks":[],"async":false},"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/dashboard/providers/[id]/page.js":{"id":5399,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/VansRouter/VansRouter/src/":[],"/home/runner/work/VansRouter/VansRouter/src/app/layout":[{"inlined":false,"path":"static/css/e8723a4485b3f4ec.css"},{"inlined":false,"path":"static/css/1fc10f069b479895.css"}],"/home/runner/work/VansRouter/VansRouter/src/app/error":[],"/home/runner/work/VansRouter/VansRouter/src/app/global-error":[{"inlined":false,"path":"static/css/1fc10f069b479895.css"}],"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/layout":[{"inlined":false,"path":"static/css/008a05b0ad6b854a.css"}],"/home/runner/work/VansRouter/VansRouter/src/app/(dashboard)/error":[],"/home/runner/work/VansRouter/VansRouter/src/app/callback/page":[]},"rscModuleMapping":{"497":{"*":{"id":"88844","name":"*","chunks":[],"async":false}},"581":{"*":{"id":"64897","name":"*","chunks":[],"async":false}},"665":{"*":{"id":"53929","name":"*","chunks":[],"async":false}},"741":{"*":{"id":"33731","name":"*","chunks":[],"async":false}},"819":{"*":{"id":"87607","name":"*","chunks":[],"async":false}},"1609":{"*":{"id":"31159","name":"*","chunks":[],"async":false}},"2158":{"*":{"id":"48904","name":"*","chunks":[],"async":false}},"2514":{"*":{"id":"19998","name":"*","chunks":[],"async":false}},"3035":{"*":{"id":"58410","name":"*","chunks":[],"async":false}},"3390":{"*":{"id":"80066","name":"*","chunks":[],"async":false}},"3567":{"*":{"id":"19631","name":"*","chunks":[],"async":false}},"4075":{"*":{"id":"16802","name":"*","chunks":[],"async":false}},"4274":{"*":{"id":"56176","name":"*","chunks":[],"async":false}},"4347":{"*":{"id":"19366","name":"*","chunks":[],"async":false}},"4373":{"*":{"id":"66325","name":"*","chunks":[],"async":false}},"4556":{"*":{"id":"32766","name":"*","chunks":[],"async":false}},"4813":{"*":{"id":"18737","name":"*","chunks":[],"async":false}},"4899":{"*":{"id":"29835","name":"*","chunks":[],"async":false}},"4914":{"*":{"id":"35120","name":"*","chunks":[],"async":false}},"4922":{"*":{"id":"88514","name":"*","chunks":[],"async":false}},"5337":{"*":{"id":"50875","name":"*","chunks":[],"async":false}},"5399":{"*":{"id":"63240","name":"*","chunks":[],"async":false}},"5592":{"*":{"id":"10590","name":"*","chunks":[],"async":false}},"5971":{"*":{"id":"12373","name":"*","chunks":[],"async":false}},"6029":{"*":{"id":"22471","name":"*","chunks":[],"async":false}},"6119":{"*":{"id":"21798","name":"*","chunks":[],"async":false}},"6184":{"*":{"id":"20904","name":"*","chunks":[],"async":false}},"6312":{"*":{"id":"83588","name":"*","chunks":[],"async":false}},"6329":{"*":{"id":"98823","name":"*","chunks":[],"async":false}},"6331":{"*":{"id":"8097","name":"*","chunks":[],"async":false}},"6447":{"*":{"id":"30145","name":"*","chunks":[],"async":false}},"6595":{"*":{"id":"430","name":"*","chunks":[],"async":false}},"6972":{"*":{"id":"2298","name":"*","chunks":[],"async":false}},"7056":{"*":{"id":"6952","name":"*","chunks":[],"async":false}},"7217":{"*":{"id":"60884","name":"*","chunks":[],"async":false}},"7250":{"*":{"id":"38736","name":"*","chunks":[],"async":false}},"7468":{"*":{"id":"89928","name":"*","chunks":[],"async":false}},"7560":{"*":{"id":"71503","name":"*","chunks":[],"async":false}},"7993":{"*":{"id":"31441","name":"*","chunks":[],"async":false}},"8173":{"*":{"id":"57932","name":"*","chunks":[],"async":false}},"8199":{"*":{"id":"76033","name":"*","chunks":[],"async":false}},"8663":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"8906":{"*":{"id":"13598","name":"*","chunks":[],"async":false}},"9319":{"*":{"id":"84112","name":"*","chunks":[],"async":false}},"9358":{"*":{"id":"16776","name":"*","chunks":[],"async":false}},"9590":{"*":{"id":"17552","name":"*","chunks":[],"async":false}},"9947":{"*":{"id":"35411","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/e8723a4485b3f4ec.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/1fc10f069b479895.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-709c19c4ca395e42.js"/><script src="/_next/static/chunks/afa2f26f-67d9f783efa63091.js" async=""></script><script src="/_next/static/chunks/3204-8c8fe4f51eb3c425.js" async=""></script><script src="/_next/static/chunks/main-app-e420732cbed7b559.js" async=""></script><script src="/_next/static/chunks/6000-87aaca633cd687c1.js" async=""></script><script src="/_next/static/chunks/4385-87a1b455709d7de4.js" async=""></script><script src="/_next/static/chunks/app/layout-b163b1ebf7b2b559.js" async=""></script><script src="/_next/static/chunks/3885-62884dd3051155e9.js" async=""></script><script src="/_next/static/chunks/app/error-0c909c404411db68.js" async=""></script><script src="/_next/static/chunks/app/callback/page-39e20bde55beaa9f.js" async=""></script><script src="/_next/static/chunks/app/global-error-003ccabaecca03c8.js" async=""></script><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#0a0a0a"/><title>VansAI - AI Infrastructure Management</title><meta name="description" content="One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="icon" href="/favicon.ico?18601c4b266d75a4" type="image/x-icon" sizes="32x32"/><link rel="icon" href="/favicon.svg"/><script>if(document.fonts&&document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 font-sans antialiased"><div hidden=""><!--$--><!--/$--></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div class="min-h-screen flex items-center justify-center bg-bg"><div class="text-center p-8"><div class="size-16 mx-auto mb-4 rounded-full bg-primary/10 flex items-center justify-center"><span class="material-symbols-outlined text-3xl text-primary animate-spin">progress_activity</span></div><p class="text-text-muted">Loading...</p></div></div><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-709c19c4ca395e42.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[4922,[\"6000\",\"static/chunks/6000-87aaca633cd687c1.js\",\"4385\",\"static/chunks/4385-87a1b455709d7de4.js\",\"7177\",\"static/chunks/app/layout-b163b1ebf7b2b559.js\"],\"default\"]\n3:I[9319,[\"6000\",\"static/chunks/6000-87aaca633cd687c1.js\",\"4385\",\"static/chunks/4385-87a1b455709d7de4.js\",\"7177\",\"static/chunks/app/layout-b163b1ebf7b2b559.js\"],\"ThemeProvider\"]\n4:I[1609,[\"6000\",\"static/chunks/6000-87aaca633cd687c1.js\",\"4385\",\"static/chunks/4385-87a1b455709d7de4.js\",\"7177\",\"static/chunks/app/layout-b163b1ebf7b2b559.js\"],\"RuntimeI18nProvider\"]\n5:I[6972,[],\"\"]\n6:I[7560,[\"3885\",\"static/chunks/3885-62884dd3051155e9.js\",\"8039\",\"static/chunks/app/error-0c909c404411db68.js\"],\"default\"]\n7:I[8906,[],\"\"]\n8:I[6329,[],\"ClientPageRoot\"]\n9:I[3390,[\"7852\",\"static/chunks/app/callback/page-39e20bde55beaa9f.js\"],\"default\"]\nc:I[5337,[],\"OutletBoundary\"]\nd:\"$Sreact.suspense\"\n10:I[5337,[],\"ViewportBoundary\"]\n12:I[5337,[],\"MetadataBoundary\"]\n14:I[6447,[\"4219\",\"static/chunks/app/global-error-003ccabaecca03c8.js\"],\"default\"]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/e8723a4485b3f4ec.css\",\"style\"]\n:HL[\"/_next/static/css/1fc10f069b479895.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"callback\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"callback\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e8723a4485b3f4ec.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1fc10f069b479895.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"if(document.fonts\u0026\u0026document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}\"}}]}],[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 font-sans antialiased\",\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$6\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L8\",null,{\"Component\":\"$9\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@a\",\"$@b\"]}}],null,[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@e\"}]}]]}],{},null,false,null]},null,false,\"$@f\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L10\",null,{\"children\":\"$L11\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L12\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L13\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$14\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1fc10f069b479895.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"5ICo_gd4bXJ9z9cGegOnS\"}\n"])</script><script>self.__next_f.push([1,"15:[]\nf:\"$W15\"\na:{}\nb:\"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"11:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a0a\"}]]\n"])</script><script>self.__next_f.push([1,"16:I[4556,[],\"IconMark\"]\ne:null\n13:[[\"$\",\"title\",\"0\",{\"children\":\"VansAI - AI Infrastructure Management\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?18601c4b266d75a4\",\"type\":\"image/x-icon\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L16\",\"5\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/e8723a4485b3f4ec.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/1fc10f069b479895.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-79b65541449c3a45.js"/><script src="/_next/static/chunks/afa2f26f-67d9f783efa63091.js" async=""></script><script src="/_next/static/chunks/3204-8c8fe4f51eb3c425.js" async=""></script><script src="/_next/static/chunks/main-app-e420732cbed7b559.js" async=""></script><script src="/_next/static/chunks/6000-87aaca633cd687c1.js" async=""></script><script src="/_next/static/chunks/4385-7cd46625904c1b7b.js" async=""></script><script src="/_next/static/chunks/app/layout-b163b1ebf7b2b559.js" async=""></script><script src="/_next/static/chunks/3885-62884dd3051155e9.js" async=""></script><script src="/_next/static/chunks/app/error-0c909c404411db68.js" async=""></script><script src="/_next/static/chunks/app/callback/page-39e20bde55beaa9f.js" async=""></script><script src="/_next/static/chunks/app/global-error-003ccabaecca03c8.js" async=""></script><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#0a0a0a"/><title>VansAI - AI Infrastructure Management</title><meta name="description" content="One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="icon" href="/favicon.ico?18601c4b266d75a4" type="image/x-icon" sizes="32x32"/><link rel="icon" href="/favicon.svg"/><script>if(document.fonts&&document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 font-sans antialiased"><div hidden=""><!--$--><!--/$--></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><div class="min-h-screen flex items-center justify-center bg-bg"><div class="text-center p-8"><div class="size-16 mx-auto mb-4 rounded-full bg-primary/10 flex items-center justify-center"><span class="material-symbols-outlined text-3xl text-primary animate-spin">progress_activity</span></div><p class="text-text-muted">Loading...</p></div></div><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-79b65541449c3a45.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[4922,[\"6000\",\"static/chunks/6000-87aaca633cd687c1.js\",\"4385\",\"static/chunks/4385-7cd46625904c1b7b.js\",\"7177\",\"static/chunks/app/layout-b163b1ebf7b2b559.js\"],\"default\"]\n3:I[9319,[\"6000\",\"static/chunks/6000-87aaca633cd687c1.js\",\"4385\",\"static/chunks/4385-7cd46625904c1b7b.js\",\"7177\",\"static/chunks/app/layout-b163b1ebf7b2b559.js\"],\"ThemeProvider\"]\n4:I[1609,[\"6000\",\"static/chunks/6000-87aaca633cd687c1.js\",\"4385\",\"static/chunks/4385-7cd46625904c1b7b.js\",\"7177\",\"static/chunks/app/layout-b163b1ebf7b2b559.js\"],\"RuntimeI18nProvider\"]\n5:I[6972,[],\"\"]\n6:I[7560,[\"3885\",\"static/chunks/3885-62884dd3051155e9.js\",\"8039\",\"static/chunks/app/error-0c909c404411db68.js\"],\"default\"]\n7:I[8906,[],\"\"]\n8:I[6329,[],\"ClientPageRoot\"]\n9:I[3390,[\"7852\",\"static/chunks/app/callback/page-39e20bde55beaa9f.js\"],\"default\"]\nc:I[5337,[],\"OutletBoundary\"]\nd:\"$Sreact.suspense\"\n10:I[5337,[],\"ViewportBoundary\"]\n12:I[5337,[],\"MetadataBoundary\"]\n14:I[6447,[\"4219\",\"static/chunks/app/global-error-003ccabaecca03c8.js\"],\"default\"]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/e8723a4485b3f4ec.css\",\"style\"]\n:HL[\"/_next/static/css/1fc10f069b479895.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"callback\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"callback\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e8723a4485b3f4ec.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1fc10f069b479895.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"if(document.fonts\u0026\u0026document.fonts.ready){document.fonts.ready.then(function(){document.documentElement.classList.add('fonts-loaded')})}else{document.documentElement.classList.add('fonts-loaded')}\"}}]}],[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 font-sans antialiased\",\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$6\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L8\",null,{\"Component\":\"$9\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@a\",\"$@b\"]}}],null,[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@e\"}]}]]}],{},null,false,null]},null,false,\"$@f\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L10\",null,{\"children\":\"$L11\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L12\",null,{\"children\":[\"$\",\"$d\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L13\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$14\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1fc10f069b479895.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"dnYXWBMmy78xJ8_-FfW5B\"}\n"])</script><script>self.__next_f.push([1,"15:[]\nf:\"$W15\"\na:{}\nb:\"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"11:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a0a\"}]]\n"])</script><script>self.__next_f.push([1,"16:I[4556,[],\"IconMark\"]\ne:null\n13:[[\"$\",\"title\",\"0\",{\"children\":\"VansAI - AI Infrastructure Management\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"One endpoint for all your AI providers. Manage keys, monitor usage, and scale effortlessly.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?18601c4b266d75a4\",\"type\":\"image/x-icon\",\"sizes\":\"32x32\"}],[\"$\",\"link\",\"4\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L16\",\"5\",{}]]\n"])</script></body></html>