@jheavenknows/bluerouter 2.0.1 → 2.0.2

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 (503) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +5 -5
  3. package/app/.next-cli-build/build-manifest.json +2 -2
  4. package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
  5. package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page.js.nft.json +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page_client-reference-manifest.js +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page.js.nft.json +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page_client-reference-manifest.js +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page.js.nft.json +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  54. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  55. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  56. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  57. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  58. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  59. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  60. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  61. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  62. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  63. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  64. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  66. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  67. package/app/.next-cli-build/server/app/_not-found.rsc +3 -3
  68. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
  69. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  70. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +3 -3
  71. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  72. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  73. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  74. package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
  76. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  78. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  79. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  80. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  81. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  82. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  83. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js.nft.json +1 -1
  85. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js +162 -1
  86. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js.nft.json +1 -1
  87. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js.nft.json +1 -1
  88. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  89. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  90. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  91. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  92. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  93. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  95. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  99. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  101. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js +23 -23
  106. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js +162 -1
  110. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js +162 -1
  112. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js +162 -1
  114. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  132. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  134. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  136. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  138. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/provider-health/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  156. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  158. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  161. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  178. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  180. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  182. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  184. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  187. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  190. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  193. package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
  195. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  196. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  197. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  199. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  201. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  203. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  205. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  207. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  209. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  210. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  211. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  215. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  217. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  218. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  219. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  220. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  222. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  223. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  229. package/app/.next-cli-build/server/app/api/version/restart/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  234. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  235. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  236. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  238. package/app/.next-cli-build/server/app/callback.html +1 -1
  239. package/app/.next-cli-build/server/app/callback.rsc +3 -3
  240. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
  241. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  242. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +3 -3
  243. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  244. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  245. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  246. package/app/.next-cli-build/server/app/dashboard/analytics.html +1 -1
  247. package/app/.next-cli-build/server/app/dashboard/analytics.rsc +4 -4
  248. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +1 -1
  249. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
  250. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  251. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  252. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_full.segment.rsc +4 -4
  253. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  254. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
  255. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_tree.segment.rsc +1 -1
  256. package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
  257. package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +5 -5
  258. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +2 -2
  259. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys.segment.rsc +1 -1
  260. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  261. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  262. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +5 -5
  263. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_head.segment.rsc +1 -1
  264. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_index.segment.rsc +3 -3
  265. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +1 -1
  266. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  267. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
  268. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  269. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  270. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  271. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  272. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
  273. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  274. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
  275. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  276. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  277. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
  278. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  279. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  280. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  281. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  282. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
  283. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  284. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  285. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  286. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  287. package/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
  288. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  289. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  290. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  291. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  292. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
  293. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  294. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  295. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  296. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  297. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
  298. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  299. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  300. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  301. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  302. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
  303. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  304. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  305. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  306. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  307. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
  308. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  309. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  310. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  311. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  312. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  313. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
  314. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  315. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +3 -3
  316. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  317. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  318. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
  319. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  320. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  321. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  322. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  323. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
  324. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  325. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
  326. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  327. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  328. package/app/.next-cli-build/server/app/dashboard/profile.rsc +4 -4
  329. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
  330. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  331. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  332. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  333. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +4 -4
  334. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  335. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  336. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  337. package/app/.next-cli-build/server/app/dashboard/prompt-logs.html +1 -1
  338. package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +4 -4
  339. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +1 -1
  340. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs.segment.rsc +1 -1
  341. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  342. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  343. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +4 -4
  344. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_head.segment.rsc +1 -1
  345. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_index.segment.rsc +3 -3
  346. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +1 -1
  347. package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
  348. package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +4 -4
  349. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +1 -1
  350. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health.segment.rsc +1 -1
  351. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  352. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  353. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +4 -4
  354. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_head.segment.rsc +1 -1
  355. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_index.segment.rsc +3 -3
  356. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_tree.segment.rsc +1 -1
  357. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  358. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
  359. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  360. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  362. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  363. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  364. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  365. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  366. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  367. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  368. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  369. package/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
  370. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  371. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  372. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  373. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  374. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  375. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  376. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  377. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  378. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  379. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
  380. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  381. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  382. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  383. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  384. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
  385. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  386. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
  387. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  388. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  389. package/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
  390. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  391. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  392. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  393. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  394. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  395. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  396. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
  397. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  398. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  399. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  400. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  401. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +3 -3
  402. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
  403. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  404. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  405. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  406. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  407. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  408. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  409. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  410. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  411. package/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
  412. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  413. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  414. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  415. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  416. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
  417. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  418. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +3 -3
  419. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  420. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  421. package/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
  422. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  423. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  424. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  425. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  426. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  427. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  428. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  429. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  430. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  431. package/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
  432. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  433. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  434. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  435. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  436. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
  437. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  438. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  439. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  440. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  441. package/app/.next-cli-build/server/app/dashboard.rsc +5 -5
  442. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  443. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  444. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  445. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
  446. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  447. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +3 -3
  448. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  449. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  450. package/app/.next-cli-build/server/app/index.html +1 -1
  451. package/app/.next-cli-build/server/app/index.rsc +3 -3
  452. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  453. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
  454. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  455. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +3 -3
  456. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  457. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  458. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  459. package/app/.next-cli-build/server/app/landing.html +1 -1
  460. package/app/.next-cli-build/server/app/landing.rsc +3 -3
  461. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
  462. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  463. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +3 -3
  464. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  465. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  466. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  467. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  468. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  469. package/app/.next-cli-build/server/app/login.html +1 -1
  470. package/app/.next-cli-build/server/app/login.rsc +3 -3
  471. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +3 -3
  472. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  473. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +3 -3
  474. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  475. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  476. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  477. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  478. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  479. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  480. package/app/.next-cli-build/server/app-paths-manifest.json +5 -5
  481. package/app/.next-cli-build/server/chunks/3104.js +1 -1
  482. package/app/.next-cli-build/server/chunks/3110.js +1 -1
  483. package/app/.next-cli-build/server/chunks/4746.js +1 -1
  484. package/app/.next-cli-build/server/chunks/5901.js +324 -0
  485. package/app/.next-cli-build/server/chunks/6663.js +81 -0
  486. package/app/.next-cli-build/server/chunks/7130.js +1 -1
  487. package/app/.next-cli-build/server/chunks/7153.js +1 -1
  488. package/app/.next-cli-build/server/chunks/7795.js +1 -1
  489. package/app/.next-cli-build/server/chunks/8895.js +2 -2
  490. package/app/.next-cli-build/server/chunks/9489.js +1 -1
  491. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  492. package/app/.next-cli-build/server/pages/404.html +1 -1
  493. package/app/.next-cli-build/server/pages/500.html +1 -1
  494. package/app/.next-cli-build/static/chunks/{1321-564f99250d5a1d60.js → 1321-cb4f926d97da6c18.js} +1 -1
  495. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-2.0.1-to-2.0.2-2.0.2-20260610-134032/data.sqlite +0 -0
  496. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm +0 -0
  497. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal +0 -0
  498. package/app/package.json +1 -1
  499. package/package.json +1 -1
  500. package/app/.next-cli-build/server/chunks/7197.js +0 -162
  501. package/app/.next-cli-build/server/chunks/7242.js +0 -81
  502. /package/app/.next-cli-build/static/{sROuCBBQq9L0b6sYTF2E5 → IiS8fxVXlLsLbuiajlh3O}/_buildManifest.js +0 -0
  503. /package/app/.next-cli-build/static/{sROuCBBQq9L0b6sYTF2E5 → IiS8fxVXlLsLbuiajlh3O}/_ssgManifest.js +0 -0
package/app/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bluerouter-app",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "Router web dashboard",
5
5
  "private": false,
6
6
  "scripts": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jheavenknows/bluerouter",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "Bluerouter CLI - Start and manage Bluerouter server",
5
5
  "bin": {
6
6
  "bluerouter": "./cli.js"
@@ -1,162 +0,0 @@
1
- "use strict";exports.id=7197,exports.ids=[7197],exports.modules={45903:(a,b,c)=>{c.d(b,{AP:()=>m,BY:()=>w,I6:()=>k,L7:()=>l,dX:()=>v,r:()=>j});var d=c(89718),e=c(33873),f=c.n(e),g=c(29021),h=c.n(g);let i={enabled:!1,type:"sqlite",sqlitePath:"",host:"",port:"",database:"",username:"",password:"",ssl:!1,createDatabase:!1,logClientRequest:!0,logSourceRequest:!0,logTargetRequest:!0,logProviderResponse:!1,logErrors:!0,retentionDays:30};function j(a){let b={...a||{}};return b.password&&(b.password="********"),b}function k(a={},b={}){let c={...i,...b||{},...a||{}};c.enabled=!!c.enabled,c.type=["sqlite","postgres","mysql"].includes(c.type)?c.type:"sqlite",c.ssl=!!c.ssl,c.createDatabase=!!c.createDatabase,c.logClientRequest=!1!==c.logClientRequest,c.logSourceRequest=!1!==c.logSourceRequest,c.logTargetRequest=!1!==c.logTargetRequest,c.logProviderResponse=!0===c.logProviderResponse,c.logErrors=!1!==c.logErrors;let d=Number(c.retentionDays);return c.retentionDays=Number.isFinite(d)&&d>0?Math.floor(d):30,"********"===c.password&&(c.password=b?.password||""),c.host=String(c.host||"").trim(),c.port=String(c.port||"").trim(),c.database=String(c.database||"").trim(),c.username=String(c.username||"").trim(),c.password=String(c.password||""),c.sqlitePath=String(c.sqlitePath||"").trim(),c}async function l(){let a=await (0,d.mt)();return{...i,...a?.promptLogDb||{}}}async function m(a){let b=await (0,d.mt)(),c=k(a,b?.promptLogDb||{});return await (0,d.Xx)({promptLogDb:c}),c}async function n(a){let b,d=a.sqlitePath||(b=process.env.DATA_DIR||"/var/lib/bluerouter",f().join(b,"logs","promptLogs.sqlite"));h().mkdirSync(f().dirname(d),{recursive:!0});try{let a=await Promise.resolve().then(c.t.bind(c,87550,23)),b=new(a.default||a)(d);return b.pragma("journal_mode = WAL"),b.pragma("busy_timeout = 5000"),{type:"sqlite",sqlitePath:d,exec(a){b.exec(a)},all:(a,c=[])=>b.prepare(a).all(...c),close(){b.close()}}}catch{let a=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(d);return a.exec("PRAGMA journal_mode = WAL"),a.exec("PRAGMA busy_timeout = 5000"),{type:"sqlite",sqlitePath:d,exec(b){a.exec(b)},all:(b,c=[])=>a.prepare(b).all(...c),close(){a.close()}}}}async function o(a,b=null){let d=new(await Promise.resolve().then(c.bind(c,64939))).Client({host:a.host,port:Number(a.port||5432),database:b||a.database,user:a.username,password:a.password,ssl:!!a.ssl&&{rejectUnauthorized:!1}});return await d.connect(),{type:"postgres",client:d,async exec(a){await d.query(a)},async close(){await d.end()}}}async function p(a,b=!0){let d=await c.e(8491).then(c.t.bind(c,38491,19)),e=await d.createConnection({host:a.host,port:Number(a.port||3306),database:b?a.database:void 0,user:a.username,password:a.password,ssl:a.ssl?{}:void 0,multipleStatements:!0});return{type:"mysql",conn:e,async exec(a){await e.query(a)},async close(){await e.end()}}}async function q(a){let b=new Set(a.all("PRAGMA table_info(prompt_logs)").map(a=>a.name)),c=(c,d)=>{b.has(c)||a.exec(`ALTER TABLE prompt_logs ADD COLUMN ${c} ${d};`)};c("client_ip","TEXT"),c("client_port","TEXT"),c("client_user_agent","TEXT"),c("client_host","TEXT"),c("source_tool","TEXT"),c("source_tool_label","TEXT"),c("source_host","TEXT"),c("provider","TEXT"),c("account_name","TEXT"),c("connection_id","TEXT"),c("display_model","TEXT"),a.exec("CREATE INDEX IF NOT EXISTS idx_prompt_logs_client_ip ON prompt_logs(client_ip);"),a.exec("CREATE INDEX IF NOT EXISTS idx_prompt_logs_source_tool ON prompt_logs(source_tool);")}async function r(a){await a.exec(`
2
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS client_ip TEXT;
3
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS client_port TEXT;
4
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS client_user_agent TEXT;
5
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS client_host TEXT;
6
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS source_tool TEXT;
7
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS source_tool_label TEXT;
8
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS source_host TEXT;
9
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS provider TEXT;
10
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS account_name TEXT;
11
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS connection_id TEXT;
12
- ALTER TABLE prompt_logs ADD COLUMN IF NOT EXISTS display_model TEXT;
13
-
14
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_client_ip
15
- ON prompt_logs(client_ip);
16
-
17
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_source_tool
18
- ON prompt_logs(source_tool);
19
- `)}async function s(a,b,c,d){let[e]=await a.query(`
20
- SELECT 1 AS found
21
- FROM INFORMATION_SCHEMA.COLUMNS
22
- WHERE TABLE_SCHEMA = ?
23
- AND TABLE_NAME = ?
24
- AND COLUMN_NAME = ?
25
- LIMIT 1
26
- `,[b,c,d]);return e.length>0}async function t(a,b,c,d){let[e]=await a.query(`
27
- SELECT 1 AS found
28
- FROM INFORMATION_SCHEMA.STATISTICS
29
- WHERE TABLE_SCHEMA = ?
30
- AND TABLE_NAME = ?
31
- AND INDEX_NAME = ?
32
- LIMIT 1
33
- `,[b,c,d]);return e.length>0}async function u(a,b){let c=async(c,d)=>{await s(a.conn,b.database,"prompt_logs",c)||await a.conn.query(`ALTER TABLE prompt_logs ADD COLUMN ${c} ${d}`)};await c("client_ip","VARCHAR(64)"),await c("client_port","VARCHAR(32)"),await c("client_user_agent","TEXT"),await c("client_host","TEXT"),await c("source_tool","VARCHAR(80)"),await c("source_tool_label","VARCHAR(120)"),await c("source_host","VARCHAR(255)"),await c("provider","VARCHAR(120)"),await c("account_name","VARCHAR(255)"),await c("connection_id","VARCHAR(120)"),await c("display_model","VARCHAR(512)"),await t(a.conn,b.database,"prompt_logs","idx_prompt_logs_client_ip")||await a.conn.query("CREATE INDEX idx_prompt_logs_client_ip ON prompt_logs(client_ip)"),await t(a.conn,b.database,"prompt_logs","idx_prompt_logs_source_tool")||await a.conn.query("CREATE INDEX idx_prompt_logs_source_tool ON prompt_logs(source_tool)")}async function v(a=null){let b=k(a||await l());if("sqlite"===b.type){let a=await n(b);try{return a.exec(`
34
- CREATE TABLE IF NOT EXISTS prompt_logs (
35
- id TEXT PRIMARY KEY,
36
- created_at TEXT NOT NULL,
37
- session_id TEXT,
38
- source_format TEXT,
39
- target_format TEXT,
40
- model TEXT,
41
- endpoint TEXT,
42
- stage TEXT,
43
- provider_url TEXT,
44
- provider TEXT,
45
- account_name TEXT,
46
- connection_id TEXT,
47
- display_model TEXT,
48
- client_ip TEXT,
49
- client_port TEXT,
50
- client_user_agent TEXT,
51
- client_host TEXT,
52
- source_tool TEXT,
53
- source_tool_label TEXT,
54
- source_host TEXT,
55
- prompt_text TEXT,
56
- full_request_json TEXT,
57
- response_text TEXT,
58
- status_code INTEGER,
59
- error_text TEXT,
60
- meta_json TEXT
61
- );
62
-
63
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_created_at
64
- ON prompt_logs(created_at DESC);
65
-
66
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_model
67
- ON prompt_logs(model);
68
-
69
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_stage
70
- ON prompt_logs(stage);
71
-
72
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_session
73
- ON prompt_logs(session_id);
74
-
75
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_client_ip
76
- ON prompt_logs(client_ip);
77
-
78
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_source_tool
79
- ON prompt_logs(source_tool);
80
- `),await q(a),{ok:!0,type:"sqlite",message:"SQLite prompt log schema is ready",sqlitePath:a.sqlitePath}}finally{a.close()}}if("postgres"===b.type){if(!b.host||!b.database||!b.username)throw Error("PostgreSQL host, database, and username are required");if(b.createDatabase){let a=await o(b,"postgres");try{let c=await a.client.query("SELECT 1 FROM pg_database WHERE datname = $1",[b.database]);if(0===c.rowCount){let c=b.database.replace(/"/g,'""');await a.client.query(`CREATE DATABASE "${c}"`)}}finally{await a.close()}}let a=await o(b);try{return await a.exec(`
81
- CREATE TABLE IF NOT EXISTS prompt_logs (
82
- id TEXT PRIMARY KEY,
83
- created_at TIMESTAMPTZ NOT NULL,
84
- session_id TEXT,
85
- source_format TEXT,
86
- target_format TEXT,
87
- model TEXT,
88
- endpoint TEXT,
89
- stage TEXT,
90
- provider_url TEXT,
91
- provider TEXT,
92
- account_name TEXT,
93
- connection_id TEXT,
94
- display_model TEXT,
95
- client_ip TEXT,
96
- client_port TEXT,
97
- client_user_agent TEXT,
98
- client_host TEXT,
99
- source_tool TEXT,
100
- source_tool_label TEXT,
101
- source_host TEXT,
102
- prompt_text TEXT,
103
- full_request_json JSONB,
104
- response_text TEXT,
105
- status_code INTEGER,
106
- error_text TEXT,
107
- meta_json JSONB
108
- );
109
-
110
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_created_at
111
- ON prompt_logs(created_at DESC);
112
-
113
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_model
114
- ON prompt_logs(model);
115
-
116
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_stage
117
- ON prompt_logs(stage);
118
-
119
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_session
120
- ON prompt_logs(session_id);
121
-
122
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_client_ip
123
- ON prompt_logs(client_ip);
124
-
125
- CREATE INDEX IF NOT EXISTS idx_prompt_logs_source_tool
126
- ON prompt_logs(source_tool);
127
- `),await r(a),{ok:!0,type:"postgres",message:"PostgreSQL prompt log schema is ready"}}finally{await a.close()}}if("mysql"===b.type){if(!b.host||!b.database||!b.username)throw Error("MySQL host, database, and username are required");if(b.createDatabase){let a=await p(b,!1);try{let c=b.database.replace(/`/g,"``");await a.exec(`CREATE DATABASE IF NOT EXISTS \`${c}\` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci`)}finally{await a.close()}}let a=await p(b,!0);try{return await a.exec(`
128
- CREATE TABLE IF NOT EXISTS prompt_logs (
129
- id VARCHAR(80) PRIMARY KEY,
130
- created_at DATETIME(3) NOT NULL,
131
- session_id VARCHAR(255),
132
- source_format VARCHAR(80),
133
- target_format VARCHAR(80),
134
- model VARCHAR(255),
135
- endpoint TEXT,
136
- stage VARCHAR(80),
137
- provider_url TEXT,
138
- provider VARCHAR(120),
139
- account_name VARCHAR(255),
140
- connection_id VARCHAR(120),
141
- display_model VARCHAR(512),
142
- client_ip VARCHAR(64),
143
- client_port VARCHAR(32),
144
- client_user_agent TEXT,
145
- client_host TEXT,
146
- source_tool VARCHAR(80),
147
- source_tool_label VARCHAR(120),
148
- source_host VARCHAR(255),
149
- prompt_text LONGTEXT,
150
- full_request_json JSON,
151
- response_text LONGTEXT,
152
- status_code INT,
153
- error_text TEXT,
154
- meta_json JSON,
155
- INDEX idx_prompt_logs_created_at (created_at),
156
- INDEX idx_prompt_logs_model (model),
157
- INDEX idx_prompt_logs_stage (stage),
158
- INDEX idx_prompt_logs_session (session_id),
159
- INDEX idx_prompt_logs_client_ip (client_ip),
160
- INDEX idx_prompt_logs_source_tool (source_tool)
161
- );
162
- `),await u(a,b),{ok:!0,type:"mysql",message:"MySQL prompt log schema is ready"}}finally{await a.close()}}throw Error(`Unsupported database type: ${b.type}`)}async function w(a=null){let b=k(a||await l());if("sqlite"===b.type){let a=await n(b);try{return a.exec("SELECT 1;"),{ok:!0,type:"sqlite",message:"SQLite connection OK",sqlitePath:a.sqlitePath}}finally{a.close()}}if("postgres"===b.type){let a=await o(b);try{return await a.exec("SELECT 1;"),{ok:!0,type:"postgres",message:"PostgreSQL connection OK"}}finally{await a.close()}}if("mysql"===b.type){let a=await p(b,!0);try{return await a.exec("SELECT 1;"),{ok:!0,type:"mysql",message:"MySQL connection OK"}}finally{await a.close()}}throw Error(`Unsupported database type: ${b.type}`)}},50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},89718:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mY:()=>d.mY,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(56403)},94755:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}}};
@@ -1,81 +0,0 @@
1
- "use strict";exports.id=7242,exports.ids=[7242],exports.modules={97242:(a,b,c)=>{c.d(b,{DU:()=>y,Ws:()=>z,_3:()=>B,nv:()=>A});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(45903);let i=new Set;function j(a,b,c=null){let d=Number(a);if(!Number.isFinite(d)||d<0)return b;let e=Math.floor(d);return c?Math.min(e,c):e}function k(a){return String(a||"").trim()}async function l(){let a=(0,h.I6)(await (0,h.L7)());return a.sqlitePath||(a.sqlitePath=g().join(process.env.DATA_DIR||"/var/lib/bluerouter","logs","promptLogs.sqlite")),a}async function m(a){try{let b=await Promise.resolve().then(c.t.bind(c,87550,23)),d=new(b.default||b)(a);return d.pragma("busy_timeout = 5000"),{all:(a,b={})=>d.prepare(a).all(b),get:(a,b={})=>d.prepare(a).get(b),run:(a,b={})=>d.prepare(a).run(b),close:()=>d.close()}}catch{let b=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(a);return b.exec("PRAGMA busy_timeout = 5000"),{all:(a,c={})=>b.prepare(a).all(c),get:(a,c={})=>b.prepare(a).get(c),run:(a,c={})=>b.prepare(a).run(c),close:()=>b.close()}}}async function n(a){let b=new(await Promise.resolve().then(c.bind(c,64939))).Client({host:a.host,port:Number(a.port||5432),database:a.database,user:a.username,password:a.password,ssl:!!a.ssl&&{rejectUnauthorized:!1}});return await b.connect(),{query:async(a,c=[])=>(await b.query(a,c)).rows,queryOne:async(a,c=[])=>(await b.query(a,c)).rows[0]||null,async exec(a,c=[]){await b.query(a,c)},async close(){await b.end()}}}async function o(a){let b=await c.e(8491).then(c.t.bind(c,38491,19)),d=await b.createConnection({host:a.host,port:Number(a.port||3306),database:a.database,user:a.username,password:a.password,ssl:a.ssl?{}:void 0,dateStrings:!0});return{async query(a,b=[]){let[c]=await d.query(a,b);return c},async queryOne(a,b=[]){let[c]=await d.query(a,b);return c[0]||null},async exec(a,b=[]){await d.query(a,b)},async close(){await d.end()}}}async function p(a){if(!e().existsSync(a.sqlitePath))return;let b=await m(a.sqlitePath);try{if(!b.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = 'prompt_logs'"))return;for(let a of["CREATE INDEX IF NOT EXISTS idx_prompt_logs_created_id ON prompt_logs(created_at DESC, id)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_stage_created_at ON prompt_logs(stage, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_model_created_at ON prompt_logs(model, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_display_model_created_at ON prompt_logs(display_model, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_session_created_at ON prompt_logs(session_id, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_client_ip_created_at ON prompt_logs(client_ip, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_source_tool_created_at ON prompt_logs(source_tool, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_connection_created_at ON prompt_logs(connection_id, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_account_created_at ON prompt_logs(account_name, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_provider_created_at ON prompt_logs(provider, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_status_created_at ON prompt_logs(status_code, created_at DESC)"])b.run(a)}finally{b.close()}}async function q(a){let b=await n(a);try{for(let a of["CREATE INDEX IF NOT EXISTS idx_prompt_logs_created_id ON prompt_logs (created_at DESC, id)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_stage_created_at ON prompt_logs (stage, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_model_created_at ON prompt_logs (model, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_display_model_created_at ON prompt_logs (display_model, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_session_created_at ON prompt_logs (session_id, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_client_ip_created_at ON prompt_logs (client_ip, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_source_tool_created_at ON prompt_logs (source_tool, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_connection_created_at ON prompt_logs (connection_id, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_account_created_at ON prompt_logs (account_name, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_provider_created_at ON prompt_logs (provider, created_at DESC)","CREATE INDEX IF NOT EXISTS idx_prompt_logs_status_created_at ON prompt_logs (status_code, created_at DESC)"])await b.exec(a)}finally{await b.close()}}async function r(a,b,c){let d=await a.queryOne("SELECT COUNT(1) AS count FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'prompt_logs' AND INDEX_NAME = ?",[b]);0===Number(d?.count||0)&&await a.exec(c)}async function s(a){let b=await o(a);try{let a=await b.queryOne("SELECT COUNT(1) AS count FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'prompt_logs'");if(0===Number(a?.count||0))return;for(let[a,c]of[["idx_prompt_logs_created_id","CREATE INDEX idx_prompt_logs_created_id ON prompt_logs (created_at DESC, id)"],["idx_prompt_logs_stage_created_at","CREATE INDEX idx_prompt_logs_stage_created_at ON prompt_logs (stage, created_at DESC)"],["idx_prompt_logs_model_created_at","CREATE INDEX idx_prompt_logs_model_created_at ON prompt_logs (model, created_at DESC)"],["idx_prompt_logs_display_model_created_at","CREATE INDEX idx_prompt_logs_display_model_created_at ON prompt_logs (display_model, created_at DESC)"],["idx_prompt_logs_session_created_at","CREATE INDEX idx_prompt_logs_session_created_at ON prompt_logs (session_id, created_at DESC)"],["idx_prompt_logs_client_ip_created_at","CREATE INDEX idx_prompt_logs_client_ip_created_at ON prompt_logs (client_ip, created_at DESC)"],["idx_prompt_logs_source_tool_created_at","CREATE INDEX idx_prompt_logs_source_tool_created_at ON prompt_logs (source_tool, created_at DESC)"],["idx_prompt_logs_connection_created_at","CREATE INDEX idx_prompt_logs_connection_created_at ON prompt_logs (connection_id, created_at DESC)"],["idx_prompt_logs_account_created_at","CREATE INDEX idx_prompt_logs_account_created_at ON prompt_logs (account_name, created_at DESC)"],["idx_prompt_logs_provider_created_at","CREATE INDEX idx_prompt_logs_provider_created_at ON prompt_logs (provider, created_at DESC)"],["idx_prompt_logs_status_created_at","CREATE INDEX idx_prompt_logs_status_created_at ON prompt_logs (status_code, created_at DESC)"]])await r(b,a,c)}finally{await b.close()}}async function t(a){if(!a.enabled)return;let b="sqlite"===a.type?`sqlite:${a.sqlitePath}`:`${a.type}:${a.host||""}:${a.port||""}:${a.database||""}`;if(!i.has(b))try{"sqlite"===a.type?await p(a):"postgres"===a.type?await q(a):"mysql"===a.type&&await s(a),i.add(b)}catch(a){console.warn("[prompt-logs] Unable to ensure query indexes:",a.message)}}async function u(a){if(!e().existsSync(a.sqlitePath))return{models:[],stages:[],missing:!0,dbInfo:{type:"sqlite",sqlitePath:a.sqlitePath}};let b=await m(a.sqlitePath);try{if(!b.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = 'prompt_logs'"))return{models:[],stages:[],missing:!0,dbInfo:{type:"sqlite",sqlitePath:a.sqlitePath}};let c=b.all("SELECT DISTINCT COALESCE(NULLIF(display_model, ''), model) AS model FROM prompt_logs WHERE model IS NOT NULL AND model <> '' ORDER BY model LIMIT 300").map(a=>a.model),d=b.all("SELECT DISTINCT stage FROM prompt_logs WHERE stage IS NOT NULL AND stage <> '' ORDER BY stage LIMIT 100").map(a=>a.stage);return{models:c,stages:d,dbInfo:{type:"sqlite",sqlitePath:a.sqlitePath}}}finally{b.close()}}async function v(a){let b="postgres"===a.type?await n(a):await o(a);try{let c=(await b.query("SELECT DISTINCT COALESCE(NULLIF(display_model, ''), model) AS model FROM prompt_logs WHERE model IS NOT NULL AND model <> '' ORDER BY model LIMIT 300")).map(a=>a.model),d=(await b.query("SELECT DISTINCT stage FROM prompt_logs WHERE stage IS NOT NULL AND stage <> '' ORDER BY stage LIMIT 100")).map(a=>a.stage);return{models:c,stages:d,dbInfo:{type:a.type,host:a.host,database:a.database}}}finally{await b.close()}}async function w(a,b){if(!e().existsSync(a.sqlitePath))return{rows:[],total:0,models:[],stages:[],missing:!0,dbInfo:{type:"sqlite",sqlitePath:a.sqlitePath}};let c=await m(a.sqlitePath);try{let d,e;if(!c.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = 'prompt_logs'"))return{rows:[],total:0,models:[],stages:[],missing:!0,dbInfo:{type:"sqlite",sqlitePath:a.sqlitePath}};let{clause:f,params:g}=(d=[],e={limit:b.limit,offset:b.offset},b.keyword&&(d.push(`(
2
- prompt_text LIKE @keyword OR
3
- response_text LIKE @keyword OR
4
- error_text LIKE @keyword OR
5
- model LIKE @keyword OR
6
- endpoint LIKE @keyword OR
7
- provider_url LIKE @keyword OR
8
- provider LIKE @keyword OR
9
- account_name LIKE @keyword OR
10
- connection_id LIKE @keyword OR
11
- display_model LIKE @keyword OR
12
- session_id LIKE @keyword OR
13
- client_ip LIKE @keyword OR
14
- client_host LIKE @keyword OR
15
- client_user_agent LIKE @keyword OR
16
- source_tool LIKE @keyword OR
17
- source_tool_label LIKE @keyword OR
18
- source_host LIKE @keyword
19
- )`),e.keyword=`%${b.keyword}%`),b.model&&(d.push("(model = @model OR display_model = @model)"),e.model=b.model),b.stage&&(d.push("stage = @stage"),e.stage=b.stage),b.sessionId&&(d.push("session_id = @sessionId"),e.sessionId=b.sessionId),b.clientIp&&(d.push("client_ip LIKE @clientIp"),e.clientIp=`%${b.clientIp}%`),b.sourceTool&&(d.push("(source_tool LIKE @sourceTool OR source_tool_label LIKE @sourceTool OR source_host LIKE @sourceTool)"),e.sourceTool=`%${b.sourceTool}%`),b.dateFrom&&(d.push("created_at >= @dateFrom"),e.dateFrom=b.dateFrom),b.dateTo&&(d.push("created_at <= @dateTo"),e.dateTo=b.dateTo),{clause:d.length?`WHERE ${d.join(" AND ")}`:"",params:e}),h=c.get(`SELECT COUNT(*) AS count FROM prompt_logs ${f}`,g)?.count||0,i=c.all(`
20
- SELECT
21
- id,
22
- created_at,
23
- session_id,
24
- source_format,
25
- target_format,
26
- model,
27
- endpoint,
28
- stage,
29
- provider_url,
30
- provider,
31
- account_name,
32
- connection_id,
33
- display_model,
34
- client_ip,
35
- client_port,
36
- client_user_agent,
37
- client_host,
38
- source_tool,
39
- source_tool_label,
40
- source_host,
41
- substr(coalesce(prompt_text,''), 1, 900) AS prompt_preview,
42
- length(coalesce(prompt_text,'')) AS prompt_length,
43
- substr(coalesce(response_text,''), 1, 400) AS response_preview,
44
- status_code,
45
- error_text
46
- FROM prompt_logs
47
- ${f}
48
- ORDER BY created_at DESC
49
- LIMIT @limit OFFSET @offset
50
- `,g),j=[],k=[];if(b.includeOptions){let b=await u(a);j=b.models,k=b.stages}return{rows:i,total:h,models:j,stages:k,dbInfo:{type:"sqlite",sqlitePath:a.sqlitePath}}}finally{c.close()}}async function x(a,b){let c=a.type,d="postgres"===c?await n(a):await o(a);try{let e=function(a,b){let c=[],d=[],e=a=>(d.push(a),"postgres"===b)?`$${d.length}`:"?",f="postgres"===b?"ILIKE":"LIKE";if(a.keyword){let b=`%${a.keyword}%`;c.push(`(${["prompt_text","response_text","error_text","model","endpoint","provider_url","provider","account_name","connection_id","display_model","session_id","client_ip","client_host","client_user_agent","source_tool","source_tool_label","source_host"].map(a=>`${a} ${f} ${e(b)}`).join(" OR ")})`)}if(a.model&&c.push(`(model = ${e(a.model)} OR display_model = ${e(a.model)})`),a.stage&&c.push(`stage = ${e(a.stage)}`),a.sessionId&&c.push(`session_id = ${e(a.sessionId)}`),a.clientIp&&c.push(`client_ip ${f} ${e(`%${a.clientIp}%`)}`),a.sourceTool){let b=`%${a.sourceTool}%`;c.push(`(source_tool ${f} ${e(b)} OR source_tool_label ${f} ${e(b)} OR source_host ${f} ${e(b)})`)}return a.dateFrom&&c.push(`created_at >= ${e(a.dateFrom)}`),a.dateTo&&c.push(`created_at <= ${e(a.dateTo)}`),{clause:c.length?`WHERE ${c.join(" AND ")}`:"",params:d,add:e}}(b,c),f=[...e.params],g=await d.queryOne(`SELECT COUNT(*) AS count FROM prompt_logs ${e.clause}`,f),h=e.add(b.limit),i=e.add(b.offset),j="postgres"===c?"LEFT(coalesce(prompt_text,''), 900)":"SUBSTRING(coalesce(prompt_text,''), 1, 900)",k="postgres"===c?"char_length(coalesce(prompt_text,''))":"CHAR_LENGTH(coalesce(prompt_text,''))",l="postgres"===c?"LEFT(coalesce(response_text,''), 400)":"SUBSTRING(coalesce(response_text,''), 1, 400)",m=await d.query(`
51
- SELECT
52
- id,
53
- created_at,
54
- session_id,
55
- source_format,
56
- target_format,
57
- model,
58
- endpoint,
59
- stage,
60
- provider_url,
61
- provider,
62
- account_name,
63
- connection_id,
64
- display_model,
65
- client_ip,
66
- client_port,
67
- client_user_agent,
68
- client_host,
69
- source_tool,
70
- source_tool_label,
71
- source_host,
72
- ${j} AS prompt_preview,
73
- ${k} AS prompt_length,
74
- ${l} AS response_preview,
75
- status_code,
76
- error_text
77
- FROM prompt_logs
78
- ${e.clause}
79
- ORDER BY created_at DESC
80
- LIMIT ${h} OFFSET ${i}
81
- `,e.params),n=[],o=[];if(b.includeOptions){let b=await v(a);n=b.models,o=b.stages}return{rows:m,total:Number(g?.count||0),models:n,stages:o,dbInfo:{type:a.type,host:a.host,database:a.database}}}finally{await d.close()}}async function y(){let a=await l();if(!a.enabled)return{disabled:!0,models:[],stages:[],dbInfo:{type:a.type}};if(await t(a),"sqlite"===a.type)return u(a);if("postgres"===a.type||"mysql"===a.type)return v(a);throw Error(`Unsupported prompt log database type: ${a.type}`)}async function z(a={}){let b=await l(),c=function(a={}){return{keyword:k(a.keyword),model:k(a.model),stage:k(a.stage),sessionId:k(a.sessionId),clientIp:k(a.clientIp),sourceTool:k(a.sourceTool),dateFrom:k(a.dateFrom),dateTo:k(a.dateTo),limit:j(a.limit,50,200),offset:j(a.offset,0),includeOptions:!0===a.includeOptions}}(a);if(!b.enabled)return{disabled:!0,rows:[],total:0,models:[],stages:[],dbInfo:{type:b.type}};if(await t(b),"sqlite"===b.type)return w(b,c);if("postgres"===b.type||"mysql"===b.type)return x(b,c);throw Error(`Unsupported prompt log database type: ${b.type}`)}async function A(a){let b=await l();if("sqlite"===b.type){if(!e().existsSync(b.sqlitePath))return null;let c=await m(b.sqlitePath);try{return c.get("SELECT * FROM prompt_logs WHERE id = @id",{id:a})||null}finally{c.close()}}if("postgres"===b.type){let c=await n(b);try{return await c.queryOne("SELECT * FROM prompt_logs WHERE id = $1",[a])}finally{await c.close()}}if("mysql"===b.type){let c=await o(b);try{return await c.queryOne("SELECT * FROM prompt_logs WHERE id = ?",[a])}finally{await c.close()}}throw Error(`Unsupported prompt log database type: ${b.type}`)}async function B(a){let b=await l();if("sqlite"===b.type){if(!e().existsSync(b.sqlitePath))return{changed:0};let c=await m(b.sqlitePath);try{return{changed:c.run("DELETE FROM prompt_logs WHERE id = @id",{id:a}).changes||0}}finally{c.close()}}if("postgres"===b.type){let c=await n(b);try{let b=await c.queryOne("SELECT COUNT(*) AS count FROM prompt_logs WHERE id = $1",[a]);return await c.exec("DELETE FROM prompt_logs WHERE id = $1",[a]),{changed:Number(b?.count||0)}}finally{await c.close()}}if("mysql"===b.type){let c=await o(b);try{return await c.exec("DELETE FROM prompt_logs WHERE id = ?",[a]),{changed:1}}finally{await c.close()}}throw Error(`Unsupported prompt log database type: ${b.type}`)}}};