@jheavenknows/bluerouter 5.1.13 → 5.1.14

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 (450) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +3 -3
  3. package/app/.next-cli-build/build-manifest.json +2 -2
  4. package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js +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_client-reference-manifest.js +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page_client-reference-manifest.js +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page_client-reference-manifest.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  38. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  39. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  40. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  41. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  42. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  43. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  44. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  45. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  46. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  47. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  48. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  49. package/app/.next-cli-build/server/app/_not-found.rsc +5 -5
  50. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
  51. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  52. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +5 -5
  53. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  54. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  55. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  56. package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
  58. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  59. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  60. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  61. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  62. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  64. package/app/.next-cli-build/server/app/api/branding/[asset]/route.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/api/branding/route.js.nft.json +1 -1
  66. package/app/.next-cli-build/server/app/api/branding/upload/route.js.nft.json +1 -1
  67. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  68. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js.nft.json +1 -1
  70. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js.nft.json +1 -1
  71. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js.nft.json +1 -1
  72. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  73. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  74. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  76. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js +3 -3
  78. package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
  79. package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
  80. package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
  81. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
  82. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
  83. package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/api/dashboard/token-saver/route.js.nft.json +1 -1
  85. package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
  86. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  87. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  88. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  89. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  90. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  91. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  92. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  93. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  95. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  99. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  101. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  104. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/api-key-models/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/provider-health/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  129. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  132. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  145. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  146. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  172. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  176. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  182. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  184. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  186. package/app/.next-cli-build/server/app/callback.html +1 -1
  187. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  188. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  189. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  190. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +5 -5
  191. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  192. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  193. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  194. package/app/.next-cli-build/server/app/dashboard/analytics.html +1 -1
  195. package/app/.next-cli-build/server/app/dashboard/analytics.rsc +7 -7
  196. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
  197. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
  198. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  199. package/app/.next-cli-build/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  200. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_full.segment.rsc +7 -7
  201. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  202. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_index.segment.rsc +5 -5
  203. package/app/.next-cli-build/server/app/dashboard/analytics.segments/_tree.segment.rsc +1 -1
  204. package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
  205. package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +7 -7
  206. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +2 -2
  207. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys.segment.rsc +1 -1
  208. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  209. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  210. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +7 -7
  211. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_head.segment.rsc +1 -1
  212. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_index.segment.rsc +5 -5
  213. package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +1 -1
  214. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  215. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +7 -7
  216. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  217. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  218. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  219. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  220. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +7 -7
  221. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  222. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +5 -5
  223. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  224. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  225. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +7 -7
  226. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  227. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  228. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  229. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  230. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
  231. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  232. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +5 -5
  233. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  234. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  235. package/app/.next-cli-build/server/app/dashboard/combos.rsc +7 -7
  236. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  237. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  238. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  239. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  240. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +7 -7
  241. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  242. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +5 -5
  243. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  244. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  245. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +7 -7
  246. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  247. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  248. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  249. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  250. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
  251. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  252. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +5 -5
  253. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  254. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  255. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +7 -7
  256. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  257. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  258. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  259. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  260. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  261. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +7 -7
  262. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  263. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +5 -5
  264. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  265. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  266. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +7 -7
  267. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  268. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  269. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  270. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  271. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +7 -7
  272. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  273. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +5 -5
  274. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  275. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  276. package/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  277. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
  278. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  279. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  280. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  281. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  282. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  283. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +5 -5
  284. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  285. package/app/.next-cli-build/server/app/dashboard/prompt-logs.html +1 -1
  286. package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +6 -6
  287. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +1 -1
  288. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs.segment.rsc +1 -1
  289. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  290. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  291. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +6 -6
  292. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_head.segment.rsc +1 -1
  293. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_index.segment.rsc +5 -5
  294. package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +1 -1
  295. package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
  296. package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +6 -6
  297. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +1 -1
  298. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health.segment.rsc +1 -1
  299. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  300. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  301. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +6 -6
  302. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_head.segment.rsc +1 -1
  303. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_index.segment.rsc +5 -5
  304. package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_tree.segment.rsc +1 -1
  305. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  306. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +7 -7
  307. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  308. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  309. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  310. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  311. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  312. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +7 -7
  313. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  314. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +5 -5
  315. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  316. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  317. package/app/.next-cli-build/server/app/dashboard/providers.rsc +7 -7
  318. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  319. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  320. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  321. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  322. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +7 -7
  323. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  324. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +5 -5
  325. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  326. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  327. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +7 -7
  328. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  329. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  330. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  331. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  332. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +7 -7
  333. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  334. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +5 -5
  335. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  336. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  337. package/app/.next-cli-build/server/app/dashboard/quota.rsc +8 -8
  338. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  339. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  340. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  341. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  342. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +8 -8
  343. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  344. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +5 -5
  345. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  346. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  347. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  348. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  349. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  350. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  351. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +5 -5
  352. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  353. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  354. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  355. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  356. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  357. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  358. package/app/.next-cli-build/server/app/dashboard/skills.rsc +7 -7
  359. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  360. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  362. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  363. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +7 -7
  364. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  365. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +5 -5
  366. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  367. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  368. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
  369. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +1 -1
  370. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
  371. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  372. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  373. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
  374. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
  375. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +5 -5
  376. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  377. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  378. package/app/.next-cli-build/server/app/dashboard/translator.rsc +7 -7
  379. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  380. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  381. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  382. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  383. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +7 -7
  384. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  385. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +5 -5
  386. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  387. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  388. package/app/.next-cli-build/server/app/dashboard/usage.rsc +7 -7
  389. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  390. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  391. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  392. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  393. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +7 -7
  394. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  395. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +5 -5
  396. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  397. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  398. package/app/.next-cli-build/server/app/dashboard.rsc +7 -7
  399. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  400. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  401. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  402. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +7 -7
  403. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  404. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +5 -5
  405. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  406. package/app/.next-cli-build/server/app/index.html +1 -1
  407. package/app/.next-cli-build/server/app/index.rsc +5 -5
  408. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  409. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
  410. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  411. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +5 -5
  412. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  413. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  414. package/app/.next-cli-build/server/app/landing.html +1 -1
  415. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  416. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  417. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  418. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +5 -5
  419. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  420. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  421. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  422. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  423. package/app/.next-cli-build/server/app/login.html +1 -1
  424. package/app/.next-cli-build/server/app/login.rsc +6 -6
  425. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +6 -6
  426. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  427. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +5 -5
  428. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  429. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  430. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  431. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  432. package/app/.next-cli-build/server/app-paths-manifest.json +3 -3
  433. package/app/.next-cli-build/server/chunks/2338.js +1 -1
  434. package/app/.next-cli-build/server/chunks/3110.js +1 -1
  435. package/app/.next-cli-build/server/chunks/4746.js +1 -1
  436. package/app/.next-cli-build/server/chunks/6328.js +1 -1
  437. package/app/.next-cli-build/server/chunks/9434.js +1 -1
  438. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  439. package/app/.next-cli-build/server/pages/404.html +1 -1
  440. package/app/.next-cli-build/server/pages/500.html +1 -1
  441. package/app/.next-cli-build/static/chunks/{5263-9da83c86eb9302d9.js → 5263-fcdafa0e3f67a0a8.js} +1 -1
  442. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/analytics/page-72c09fc9a8ff54df.js +1 -0
  443. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.12-to-5.1.13-5.1.13-20260713-234535/data.sqlite +0 -0
  444. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite +0 -0
  445. package/app/package.json +1 -1
  446. package/package.json +1 -1
  447. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/analytics/page-6bd62c37019ccc73.js +0 -1
  448. package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.92-to-5.1.6-5.1.6-20260710-144934/data.sqlite +0 -0
  449. /package/app/.next-cli-build/static/{1ovOimAG8l5oHiZ7J4Tu7 → Q371hBUMyonkErZzbbcC6}/_buildManifest.js +0 -0
  450. /package/app/.next-cli-build/static/{1ovOimAG8l5oHiZ7J4Tu7 → Q371hBUMyonkErZzbbcC6}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.91-to-5.0.92-5.0.92-20260708-072716/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.92-to-5.1.6-5.1.6-20260710-144934/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.10-to-5.1.12-5.1.12-20260710-182957/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.6-to-5.1.9-5.1.9-20260710-165928/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.9-to-5.1.10-5.1.10-20260710-170922/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal","../../../../../cli/.build-home/AppData/Roaming/bluerouter/jwt-secret","../../../../../cli/.build-home/AppData/Roaming/bluerouter/machine-id","../../../../../cli/.build-home/AppData/Roaming/nextjs-nodejs/Config/config.json","../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../node_modules/@swc/helpers/package.json","../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../node_modules/next/dist/client/lib/console.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../node_modules/next/dist/lib/constants.js","../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../node_modules/next/dist/lib/is-error.js","../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../node_modules/next/dist/server/node-environment.js","../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../node_modules/next/dist/server/require-hook.js","../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../node_modules/next/package.json","../../../../../node_modules/pg-cloudflare/dist/empty.js","../../../../../node_modules/pg-cloudflare/dist/index.js","../../../../../node_modules/pg-cloudflare/package.json","../../../../../node_modules/pg-connection-string/index.js","../../../../../node_modules/pg-connection-string/package.json","../../../../../node_modules/pg-int8/index.js","../../../../../node_modules/pg-int8/package.json","../../../../../node_modules/pg-pool/index.js","../../../../../node_modules/pg-pool/package.json","../../../../../node_modules/pg-protocol/dist/buffer-reader.js","../../../../../node_modules/pg-protocol/dist/buffer-writer.js","../../../../../node_modules/pg-protocol/dist/index.js","../../../../../node_modules/pg-protocol/dist/messages.js","../../../../../node_modules/pg-protocol/dist/parser.js","../../../../../node_modules/pg-protocol/dist/serializer.js","../../../../../node_modules/pg-protocol/package.json","../../../../../node_modules/pg-types/index.js","../../../../../node_modules/pg-types/lib/arrayParser.js","../../../../../node_modules/pg-types/lib/binaryParsers.js","../../../../../node_modules/pg-types/lib/builtins.js","../../../../../node_modules/pg-types/lib/textParsers.js","../../../../../node_modules/pg-types/package.json","../../../../../node_modules/pg/esm/index.mjs","../../../../../node_modules/pg/lib/client.js","../../../../../node_modules/pg/lib/connection-parameters.js","../../../../../node_modules/pg/lib/connection.js","../../../../../node_modules/pg/lib/crypto/cert-signatures.js","../../../../../node_modules/pg/lib/crypto/sasl.js","../../../../../node_modules/pg/lib/crypto/utils.js","../../../../../node_modules/pg/lib/defaults.js","../../../../../node_modules/pg/lib/index.js","../../../../../node_modules/pg/lib/native/client.js","../../../../../node_modules/pg/lib/native/index.js","../../../../../node_modules/pg/lib/native/query.js","../../../../../node_modules/pg/lib/query.js","../../../../../node_modules/pg/lib/result.js","../../../../../node_modules/pg/lib/stream.js","../../../../../node_modules/pg/lib/type-overrides.js","../../../../../node_modules/pg/lib/utils.js","../../../../../node_modules/pg/package.json","../../../../../node_modules/pgpass/lib/helper.js","../../../../../node_modules/pgpass/lib/index.js","../../../../../node_modules/pgpass/package.json","../../../../../node_modules/postgres-array/index.js","../../../../../node_modules/postgres-array/package.json","../../../../../node_modules/postgres-bytea/index.js","../../../../../node_modules/postgres-bytea/package.json","../../../../../node_modules/postgres-date/index.js","../../../../../node_modules/postgres-date/package.json","../../../../../node_modules/postgres-interval/index.js","../../../../../node_modules/postgres-interval/package.json","../../../../../node_modules/react/cjs/react.development.js","../../../../../node_modules/react/cjs/react.production.js","../../../../../node_modules/react/index.js","../../../../../node_modules/react/package.json","../../../../../node_modules/split2/index.js","../../../../../node_modules/split2/package.json","../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../node_modules/sql.js/package.json","../../../../../node_modules/xtend/mutable.js","../../../../../node_modules/xtend/package.json","../../../../../package.json","../../../../../src/lib/db/adapters/betterSqliteAdapter.js","../../../../../src/lib/db/adapters/bunSqliteAdapter.js","../../../../../src/lib/db/adapters/nodeSqliteAdapter.js","../../../../../src/lib/db/adapters/sqljsAdapter.js","../../../../../src/lib/db/migrate.js","../../../../../src/shared/utils/apiKey.js","../../../../package.json","../../../chunks/12.js","../../../chunks/1220.js","../../../chunks/1361.js","../../../chunks/1817.js","../../../chunks/1998.js","../../../chunks/232.js","../../../chunks/2338.js","../../../chunks/241.js","../../../chunks/2506.js","../../../chunks/2650.js","../../../chunks/2944.js","../../../chunks/3104.js","../../../chunks/3110.js","../../../chunks/318.js","../../../chunks/319.js","../../../chunks/3593.js","../../../chunks/3801.js","../../../chunks/4013.js","../../../chunks/402.js","../../../chunks/4177.js","../../../chunks/4306.js","../../../chunks/436.js","../../../chunks/4404.js","../../../chunks/4632.js","../../../chunks/4684.js","../../../chunks/4739.js","../../../chunks/4741.js","../../../chunks/4746.js","../../../chunks/4778.js","../../../chunks/4780.js","../../../chunks/4790.js","../../../chunks/4803.js","../../../chunks/507.js","../../../chunks/5154.js","../../../chunks/5206.js","../../../chunks/5258.js","../../../chunks/5433.js","../../../chunks/5573.js","../../../chunks/5592.js","../../../chunks/5681.js","../../../chunks/5852.js","../../../chunks/5901.js","../../../chunks/595.js","../../../chunks/6053.js","../../../chunks/6064.js","../../../chunks/6103.js","../../../chunks/6108.js","../../../chunks/6182.js","../../../chunks/6252.js","../../../chunks/6311.js","../../../chunks/6328.js","../../../chunks/6844.js","../../../chunks/6935.js","../../../chunks/6936.js","../../../chunks/6939.js","../../../chunks/698.js","../../../chunks/7016.js","../../../chunks/7242.js","../../../chunks/7250.js","../../../chunks/7324.js","../../../chunks/7341.js","../../../chunks/7464.js","../../../chunks/7669.js","../../../chunks/7772.js","../../../chunks/7774.js","../../../chunks/7828.js","../../../chunks/7965.js","../../../chunks/8062.js","../../../chunks/8255.js","../../../chunks/8352.js","../../../chunks/8469.js","../../../chunks/8491.js","../../../chunks/8520.js","../../../chunks/8590.js","../../../chunks/8895.js","../../../chunks/8971.js","../../../chunks/9413.js","../../../chunks/9434.js","../../../chunks/9489.js","../../../chunks/9609.js","../../../chunks/9614.js","../../../webpack-runtime.js","route_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.92-to-5.1.6-5.1.6-20260710-144934/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.10-to-5.1.12-5.1.12-20260710-182957/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.12-to-5.1.13-5.1.13-20260713-234535/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.6-to-5.1.9-5.1.9-20260710-165928/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.9-to-5.1.10-5.1.10-20260710-170922/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm","../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal","../../../../../cli/.build-home/AppData/Roaming/bluerouter/jwt-secret","../../../../../cli/.build-home/AppData/Roaming/bluerouter/machine-id","../../../../../cli/.build-home/AppData/Roaming/nextjs-nodejs/Config/config.json","../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../node_modules/@swc/helpers/package.json","../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../node_modules/next/dist/client/lib/console.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../node_modules/next/dist/lib/constants.js","../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../node_modules/next/dist/lib/is-error.js","../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../node_modules/next/dist/server/node-environment.js","../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../node_modules/next/dist/server/require-hook.js","../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../node_modules/next/package.json","../../../../../node_modules/pg-cloudflare/dist/empty.js","../../../../../node_modules/pg-cloudflare/dist/index.js","../../../../../node_modules/pg-cloudflare/package.json","../../../../../node_modules/pg-connection-string/index.js","../../../../../node_modules/pg-connection-string/package.json","../../../../../node_modules/pg-int8/index.js","../../../../../node_modules/pg-int8/package.json","../../../../../node_modules/pg-pool/index.js","../../../../../node_modules/pg-pool/package.json","../../../../../node_modules/pg-protocol/dist/buffer-reader.js","../../../../../node_modules/pg-protocol/dist/buffer-writer.js","../../../../../node_modules/pg-protocol/dist/index.js","../../../../../node_modules/pg-protocol/dist/messages.js","../../../../../node_modules/pg-protocol/dist/parser.js","../../../../../node_modules/pg-protocol/dist/serializer.js","../../../../../node_modules/pg-protocol/package.json","../../../../../node_modules/pg-types/index.js","../../../../../node_modules/pg-types/lib/arrayParser.js","../../../../../node_modules/pg-types/lib/binaryParsers.js","../../../../../node_modules/pg-types/lib/builtins.js","../../../../../node_modules/pg-types/lib/textParsers.js","../../../../../node_modules/pg-types/package.json","../../../../../node_modules/pg/esm/index.mjs","../../../../../node_modules/pg/lib/client.js","../../../../../node_modules/pg/lib/connection-parameters.js","../../../../../node_modules/pg/lib/connection.js","../../../../../node_modules/pg/lib/crypto/cert-signatures.js","../../../../../node_modules/pg/lib/crypto/sasl.js","../../../../../node_modules/pg/lib/crypto/utils.js","../../../../../node_modules/pg/lib/defaults.js","../../../../../node_modules/pg/lib/index.js","../../../../../node_modules/pg/lib/native/client.js","../../../../../node_modules/pg/lib/native/index.js","../../../../../node_modules/pg/lib/native/query.js","../../../../../node_modules/pg/lib/query.js","../../../../../node_modules/pg/lib/result.js","../../../../../node_modules/pg/lib/stream.js","../../../../../node_modules/pg/lib/type-overrides.js","../../../../../node_modules/pg/lib/utils.js","../../../../../node_modules/pg/package.json","../../../../../node_modules/pgpass/lib/helper.js","../../../../../node_modules/pgpass/lib/index.js","../../../../../node_modules/pgpass/package.json","../../../../../node_modules/postgres-array/index.js","../../../../../node_modules/postgres-array/package.json","../../../../../node_modules/postgres-bytea/index.js","../../../../../node_modules/postgres-bytea/package.json","../../../../../node_modules/postgres-date/index.js","../../../../../node_modules/postgres-date/package.json","../../../../../node_modules/postgres-interval/index.js","../../../../../node_modules/postgres-interval/package.json","../../../../../node_modules/react/cjs/react.development.js","../../../../../node_modules/react/cjs/react.production.js","../../../../../node_modules/react/index.js","../../../../../node_modules/react/package.json","../../../../../node_modules/split2/index.js","../../../../../node_modules/split2/package.json","../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../node_modules/sql.js/package.json","../../../../../node_modules/xtend/mutable.js","../../../../../node_modules/xtend/package.json","../../../../../package.json","../../../../../src/lib/db/adapters/betterSqliteAdapter.js","../../../../../src/lib/db/adapters/bunSqliteAdapter.js","../../../../../src/lib/db/adapters/nodeSqliteAdapter.js","../../../../../src/lib/db/adapters/sqljsAdapter.js","../../../../../src/lib/db/migrate.js","../../../../../src/shared/utils/apiKey.js","../../../../package.json","../../../chunks/12.js","../../../chunks/1220.js","../../../chunks/1361.js","../../../chunks/1817.js","../../../chunks/1998.js","../../../chunks/232.js","../../../chunks/2338.js","../../../chunks/241.js","../../../chunks/2506.js","../../../chunks/2650.js","../../../chunks/2944.js","../../../chunks/3104.js","../../../chunks/3110.js","../../../chunks/318.js","../../../chunks/319.js","../../../chunks/3593.js","../../../chunks/3801.js","../../../chunks/4013.js","../../../chunks/402.js","../../../chunks/4177.js","../../../chunks/4306.js","../../../chunks/436.js","../../../chunks/4404.js","../../../chunks/4632.js","../../../chunks/4684.js","../../../chunks/4739.js","../../../chunks/4741.js","../../../chunks/4746.js","../../../chunks/4778.js","../../../chunks/4780.js","../../../chunks/4790.js","../../../chunks/4803.js","../../../chunks/507.js","../../../chunks/5154.js","../../../chunks/5206.js","../../../chunks/5258.js","../../../chunks/5433.js","../../../chunks/5573.js","../../../chunks/5592.js","../../../chunks/5681.js","../../../chunks/5852.js","../../../chunks/5901.js","../../../chunks/595.js","../../../chunks/6053.js","../../../chunks/6064.js","../../../chunks/6103.js","../../../chunks/6108.js","../../../chunks/6182.js","../../../chunks/6252.js","../../../chunks/6311.js","../../../chunks/6328.js","../../../chunks/6844.js","../../../chunks/6935.js","../../../chunks/6936.js","../../../chunks/6939.js","../../../chunks/698.js","../../../chunks/7016.js","../../../chunks/7242.js","../../../chunks/7250.js","../../../chunks/7324.js","../../../chunks/7341.js","../../../chunks/7464.js","../../../chunks/7669.js","../../../chunks/7772.js","../../../chunks/7774.js","../../../chunks/7828.js","../../../chunks/7965.js","../../../chunks/8062.js","../../../chunks/8255.js","../../../chunks/8352.js","../../../chunks/8469.js","../../../chunks/8491.js","../../../chunks/8520.js","../../../chunks/8590.js","../../../chunks/8895.js","../../../chunks/8971.js","../../../chunks/9413.js","../../../chunks/9434.js","../../../chunks/9489.js","../../../chunks/9609.js","../../../chunks/9614.js","../../../webpack-runtime.js","route_client-reference-manifest.js"]}
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var a={};a.id=451,a.ids=[451,9614],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{a.exports=require("node:buffer")},9588:(a,b,c)=>{c.d(b,{I8:()=>j,Tv:()=>u,UX:()=>o,aV:()=>n,bz:()=>q,hH:()=>t,oW:()=>s,s0:()=>l,ub:()=>m,vZ:()=>p});var d=c(65573),e=c(23211),f=c(89718),g=c(33792),h=c(90389);function i(a){return String(a||"").trim().toLowerCase()}function j(a){return i(a)}function k(a={}){return[a.ldapUsername,a.ldapEmail,a.ldapName,a.oidcEmail,a.oidcName,a.localUsername,a.username,a.email].map(i).filter(Boolean)}function l(a={}){let b=k(a),c=b[0]||"local",d=a.ldapName||a.ldapEmail||a.oidcName||a.oidcEmail||a.localUsername||c;return{userId:c,displayName:d,loginMethod:a.oidc?"OIDC":a.ldap?"LDAP":"Local",candidates:b}}function m(a={},b={}){var c;if(!b?.authenticated)return!1;if(b.local||!b.ldap&&!b.oidc||b.role===h.hS.ADMIN||!0===b.ldapIsAdmin)return!0;let d=Array.isArray(c=a.ldapAllowedUsers)?c.map(i).filter(Boolean):String(c||"").split(/[,\n]/).map(i).filter(Boolean);return 0!==d.length&&k(b).some(a=>d.includes(a))}function n(a={},b={}){return!(!b?.authenticated||m(a,b))&&(b.role===h.hS.MONITOR_ADMIN||!0===b.ldapIsMonitorAdmin)}function o(a={},b={}){return!(!b?.authenticated||m(a,b)||n(a,b))&&(b.role===h.hS.AI_GATEWAYS_MONITOR||!0===b.ldapIsAiGatewaysMonitor)}function p(a={},b={}){return b?.authenticated?m(a,b)?h.hS.ADMIN:n(a,b)?h.hS.MONITOR_ADMIN:o(a,b)?h.hS.AI_GATEWAYS_MONITOR:h.hS.USER:h.hS.GUEST}function q(a={}){return!0===a.isAdmin||!0===a.isMonitorAdmin}async function r(){let a=await (0,f.mt)(),b=await (0,d.UL)(),c=await (0,g.dY)(b.get("auth_token")?.value);if(!c?.authenticated)return{authenticated:!1,isAdmin:!1,isMonitorAdmin:!1,isAiGatewaysMonitor:!1,role:h.hS.GUEST,userId:"",displayName:"Guest",loginMethod:"None",settings:{...a,requireLogin:!0},session:null};let e=l(c||{}),i=p(a,c||{}),j=i===h.hS.ADMIN,k=i===h.hS.MONITOR_ADMIN,m=i===h.hS.AI_GATEWAYS_MONITOR;return{authenticated:!0,isAdmin:j,isMonitorAdmin:k,isAiGatewaysMonitor:m,role:i,canManageApiKeys:j||k,canUseMonitorAdminTabs:j||k,canViewAllAnalytics:j||k||m,...e,settings:{...a,requireLogin:!0},session:c}}async function s(){let a=await r();return a.authenticated?{access:a,response:null}:{access:a,response:e.NextResponse.json({error:"Authentication required"},{status:401})}}async function t(a={}){let{allowMonitorAdmin:b=!1}=a||{},{access:c,response:d}=await s();return d?{access:c,response:d}:c.isAdmin||b&&c.isMonitorAdmin?{access:c,response:null}:{access:c,response:e.NextResponse.json({error:"Admin access required"},{status:403})}}function u(a,b){if(!a?.authenticated||!b)return!1;if(q(a))return!0;let c=i(a.userId),d=i(b.ownerUser),e=i(b.createdByUser);return!!c&&(d===c||e===c)}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{a.exports=c(44870)},19771:a=>{a.exports=require("process")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33792:(a,b,c)=>{c.d(b,{Dc:()=>p,OZ:()=>s,YK:()=>n,dY:()=>q,tm:()=>r});var d=c(86935),e=c(69614),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(77598),k=c.n(j),l=c(49120);let m=new TextEncoder().encode(function(){if(process.env.JWT_SECRET)return process.env.JWT_SECRET;let a=i().join(l.DATA_DIR,"jwt-secret");try{return g().readFileSync(a,"utf8").trim()}catch{}g().mkdirSync(l.DATA_DIR,{recursive:!0});let b=k().randomBytes(32).toString("hex");return g().writeFileSync(a,b,{mode:384}),b}());function n(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=a?.headers?.get?.("x-forwarded-proto");return b||"https"===c}async function o(a={}){return new d.P({authenticated:!0,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("86400s").sign(m)}async function p(a){if(!a)return!1;try{return await (0,e.V)(a,m),!0}catch{return!1}}async function q(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,m);return b}catch{return null}}async function r(a,b,c={}){let d=await o(c);a.set("auth_token",d,{httpOnly:!0,secure:n(b),sameSite:"lax",path:"/",maxAge:86400})}function s(a){a.delete("auth_token")}},33873:a=>{a.exports=require("path")},34631:a=>{a.exports=require("tls")},41204:a=>{a.exports=require("string_decoder")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},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()}},53053:a=>{a.exports=require("node:diagnostics_channel")},53254:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>bq,patchFetch:()=>bp,routeModule:()=>bl,serverHooks:()=>bo,workAsyncStorage:()=>bm,workUnitAsyncStorage:()=>bn});var d={};c.r(d),c.d(d,{GET:()=>bk,dynamic:()=>bi});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(36366),x=c(644),y=c(45903),z=c(97242);let A=new Set;function B(a){return String(a||"").trim()}function C(a,b=0){let c=Number(a);return Number.isFinite(c)?c:b}async function D(){return(0,y.I6)(await (0,y.L7)())}async function E(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(),{type:"postgres",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 F(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,connectTimeout:3e3});return{type:"mysql",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 G(a){if("postgres"===a.type)return E(a);if("mysql"===a.type)return F(a);throw Error(`Unsupported prompt log database type: ${a.type}`)}async function H(){await (0,z.DU)().catch(()=>null)}async function I(a){if(!a.enabled)return;let b=`${a.type}:${a.host||""}:${a.port||""}:${a.database||""}`;if(!A.has(b))try{await H(a),A.add(b)}catch(a){console.warn("[prompt-log-analytics] Unable to ensure indexes:",a?.message||a)}}async function J(a,b,c,d,e=50){let f=Math.max(1,Math.min(500,Number(e)||50));return await a.query(`SELECT ${c},
1
+ "use strict";(()=>{var a={};a.id=451,a.ids=[451,9614],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4573:a=>{a.exports=require("node:buffer")},9588:(a,b,c)=>{c.d(b,{I8:()=>j,Tv:()=>u,UX:()=>o,aV:()=>n,bz:()=>q,hH:()=>t,oW:()=>s,s0:()=>l,ub:()=>m,vZ:()=>p});var d=c(65573),e=c(23211),f=c(89718),g=c(33792),h=c(90389);function i(a){return String(a||"").trim().toLowerCase()}function j(a){return i(a)}function k(a={}){return[a.ldapUsername,a.ldapEmail,a.ldapName,a.oidcEmail,a.oidcName,a.localUsername,a.username,a.email].map(i).filter(Boolean)}function l(a={}){let b=k(a),c=b[0]||"local",d=a.ldapName||a.ldapEmail||a.oidcName||a.oidcEmail||a.localUsername||c;return{userId:c,displayName:d,loginMethod:a.oidc?"OIDC":a.ldap?"LDAP":"Local",candidates:b}}function m(a={},b={}){var c;if(!b?.authenticated)return!1;if(b.local||!b.ldap&&!b.oidc||b.role===h.hS.ADMIN||!0===b.ldapIsAdmin)return!0;let d=Array.isArray(c=a.ldapAllowedUsers)?c.map(i).filter(Boolean):String(c||"").split(/[,\n]/).map(i).filter(Boolean);return 0!==d.length&&k(b).some(a=>d.includes(a))}function n(a={},b={}){return!(!b?.authenticated||m(a,b))&&(b.role===h.hS.MONITOR_ADMIN||!0===b.ldapIsMonitorAdmin)}function o(a={},b={}){return!(!b?.authenticated||m(a,b)||n(a,b))&&(b.role===h.hS.AI_GATEWAYS_MONITOR||!0===b.ldapIsAiGatewaysMonitor)}function p(a={},b={}){return b?.authenticated?m(a,b)?h.hS.ADMIN:n(a,b)?h.hS.MONITOR_ADMIN:o(a,b)?h.hS.AI_GATEWAYS_MONITOR:h.hS.USER:h.hS.GUEST}function q(a={}){return!0===a.isAdmin||!0===a.isMonitorAdmin}async function r(){let a=await (0,f.mt)(),b=await (0,d.UL)(),c=await (0,g.dY)(b.get("auth_token")?.value);if(!c?.authenticated)return{authenticated:!1,isAdmin:!1,isMonitorAdmin:!1,isAiGatewaysMonitor:!1,role:h.hS.GUEST,userId:"",displayName:"Guest",loginMethod:"None",settings:{...a,requireLogin:!0},session:null};let e=l(c||{}),i=p(a,c||{}),j=i===h.hS.ADMIN,k=i===h.hS.MONITOR_ADMIN,m=i===h.hS.AI_GATEWAYS_MONITOR;return{authenticated:!0,isAdmin:j,isMonitorAdmin:k,isAiGatewaysMonitor:m,role:i,canManageApiKeys:j||k,canUseMonitorAdminTabs:j||k,canViewAllAnalytics:j||k||m,...e,settings:{...a,requireLogin:!0},session:c}}async function s(){let a=await r();return a.authenticated?{access:a,response:null}:{access:a,response:e.NextResponse.json({error:"Authentication required"},{status:401})}}async function t(a={}){let{allowMonitorAdmin:b=!1}=a||{},{access:c,response:d}=await s();return d?{access:c,response:d}:c.isAdmin||b&&c.isMonitorAdmin?{access:c,response:null}:{access:c,response:e.NextResponse.json({error:"Admin access required"},{status:403})}}function u(a,b){if(!a?.authenticated||!b)return!1;if(q(a))return!0;let c=i(a.userId),d=i(b.ownerUser),e=i(b.createdByUser);return!!c&&(d===c||e===c)}},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19225:(a,b,c)=>{a.exports=c(44870)},19771:a=>{a.exports=require("process")},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33792:(a,b,c)=>{c.d(b,{Dc:()=>p,OZ:()=>s,YK:()=>n,dY:()=>q,tm:()=>r});var d=c(86935),e=c(69614),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(77598),k=c.n(j),l=c(49120);let m=new TextEncoder().encode(function(){if(process.env.JWT_SECRET)return process.env.JWT_SECRET;let a=i().join(l.DATA_DIR,"jwt-secret");try{return g().readFileSync(a,"utf8").trim()}catch{}g().mkdirSync(l.DATA_DIR,{recursive:!0});let b=k().randomBytes(32).toString("hex");return g().writeFileSync(a,b,{mode:384}),b}());function n(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=a?.headers?.get?.("x-forwarded-proto");return b||"https"===c}async function o(a={}){return new d.P({authenticated:!0,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("86400s").sign(m)}async function p(a){if(!a)return!1;try{return await (0,e.V)(a,m),!0}catch{return!1}}async function q(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,m);return b}catch{return null}}async function r(a,b,c={}){let d=await o(c);a.set("auth_token",d,{httpOnly:!0,secure:n(b),sameSite:"lax",path:"/",maxAge:86400})}function s(a){a.delete("auth_token")}},33873:a=>{a.exports=require("path")},34631:a=>{a.exports=require("tls")},41204:a=>{a.exports=require("string_decoder")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46293:a=>{a.exports=require("sql.js")},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()}},53053:a=>{a.exports=require("node:diagnostics_channel")},53254:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>bt,patchFetch:()=>bs,routeModule:()=>bo,serverHooks:()=>br,workAsyncStorage:()=>bp,workUnitAsyncStorage:()=>bq});var d={};c.r(d),c.d(d,{GET:()=>bn,dynamic:()=>bl});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(36366),x=c(644),y=c(45903),z=c(97242);let A=new Set;function B(a){return String(a||"").trim()}function C(a,b=0){let c=Number(a);return Number.isFinite(c)?c:b}async function D(){return(0,y.I6)(await (0,y.L7)())}async function E(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(),{type:"postgres",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 F(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,connectTimeout:3e3});return{type:"mysql",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 G(a){if("postgres"===a.type)return E(a);if("mysql"===a.type)return F(a);throw Error(`Unsupported prompt log database type: ${a.type}`)}async function H(){await (0,z.DU)().catch(()=>null)}async function I(a){if(!a.enabled)return;let b=`${a.type}:${a.host||""}:${a.port||""}:${a.database||""}`;if(!A.has(b))try{await H(a),A.add(b)}catch(a){console.warn("[prompt-log-analytics] Unable to ensure indexes:",a?.message||a)}}async function J(a,b,c,d,e=50){let f=Math.max(1,Math.min(500,Number(e)||50));return await a.query(`SELECT ${c},
2
2
  COUNT(*) AS requests,
3
3
  SUM(CASE WHEN error_text IS NOT NULL AND error_text <> '' THEN 1
4
4
  WHEN status_code IS NOT NULL AND CONCAT('', status_code) NOT LIKE '2%' THEN 1
@@ -495,7 +495,7 @@
495
495
  SUM(CASE WHEN thinkingAutoOff = 1 THEN 1 ELSE 0 END) AS autoOffRequests
496
496
  FROM base
497
497
  GROUP BY label, sortOrder
498
- ORDER BY sortOrder ASC`,e.params)||[],d=ab(b.totalRequests,0),g=ab(b.gte30kRequests,0),h=ab(b.gte50kRequests,0),i=ab(b.gte100kRequests,0);return{totalRequests:d,gte30kRequests:g,gte50kRequests:h,gte100kRequests:i,gte30kRate:d?g/d:0,gte50kRate:d?h/d:0,gte100kRate:d?i/d:0,avgRequestSize:ab(b.avgRequestSize,0),maxRequestSize:ab(b.maxRequestSize,0),avgLargeLatencyMs:ab(b.avgLargeLatencyMs,null),avgLargeTtftMs:ab(b.avgLargeTtftMs,null),largePromptTokens:ab(b.largePromptTokens,0),largeCompletionTokens:ab(b.largeCompletionTokens,0),buckets:c.map(a=>{let b=ab(a.requests,0),c=ab(a.autoOffRequests,0);return{label:a.label,requests:b,share:d?b/d:0,avgRequestSize:ab(a.avgRequestSize,0),maxRequestSize:ab(a.maxRequestSize,0),avgLatencyMs:ab(a.avgLatencyMs,null),avgTtftMs:ab(a.avgTtftMs,null),promptTokens:ab(a.promptTokens,0),completionTokens:ab(a.completionTokens,0),autoOffRequests:c,autoOffRate:b?c/b:0}})}}catch(a){return console.error("[analytics] Failed to build large context analytics:",a?.message||a),{totalRequests:0,gte30kRequests:0,gte50kRequests:0,gte100kRequests:0,gte30kRate:0,gte50kRate:0,gte100kRate:0,buckets:[]}}}async function a6(a,b,c,d={},e=new Map){let f=await a1(a,b,c,e),g=await a2(a,b,c),h=await a$(a,b,c),i=await a_(a,b,c),j=await a0(a,b,c),k=await a3(a,b,c),l=f[0]||null,m=h[0]||null,n=i[0]||null,o=j[0]||null,p=f.reduce((a,b)=>a+ab(b.totalTokens,0),0),q=ab(d.totalTokens,0),r=l&&q?ab(l.totalTokens,0)/q:0,s=m&&q?ab(m.totalTokens,0)/q:0,t=n&&q?ab(n.totalTokens,0)/q:0,u=k.filter(a=>["30k-50k","50k-70k",">=70k"].includes(a.label)).reduce((a,b)=>a+ab(b.share,0),0),v=k.find(a=>">=70k"===a.label)||null;return{summary:{trackedUsers:f.length,topUserLabel:l?.label||"-",topUserTokens:l?.totalTokens||0,topUserTokenShare:r,topUsersTokenShare:q?p/q:0,topApiKeyLabel:m?.label||"-",topApiKeyTokens:m?.totalTokens||0,topApiKeyTokenShare:s,topSourceIpLabel:n?.label||"-",topSourceIpTokens:n?.totalTokens||0,topSourceIpTokenShare:t,topSourceIpHeavyLabel:o?.label||"-",topSourceIpHeavyRequests:o?.heavyRequests||0,longInputBucketShare:u,extremeInputShare:v?.share||0,problemClients:g.length},topHeavyUsers:f,topProblemClients:g,topApiKeysByTokens:h,topSourceIpsByTokens:i,topSourceIpsByHeavyRequests:j,inputBuckets:k}}function a7(a){let b=String(a??"");return/[",\n\r]/.test(b)?`"${b.replace(/"/g,'""')}"`:b}async function a8(a,b=4){let c=[a].filter(Boolean),d=Math.max(0,Math.max(1,Math.min(6,Number(b)||4))-c.length);if(d<=0)return c;for(let a of(await Promise.all(Array.from({length:d},async()=>{try{return await (0,O.d9)()}catch(a){return console.warn("[dashboardAnalytics] Extra MySQL analytics connection unavailable:",a?.message||a),null}}))))a&&c.push(a);return c}function a9(a,b=0){return Array.isArray(a)&&0!==a.length?a[Math.abs(b)%a.length]||a[0]:null}async function ba(a=[]){let b=[...new Set((a||[]).filter(Boolean))];await Promise.all(b.map(a=>a?.close?.().catch(()=>{})))}function bb(a={}){return{rows:[],generatedAt:"",nextRefreshAt:"",refreshEveryMs:9e5,period:S,periodLabel:"H\xf4m nay",status:"warming",...a}}function bc(){return global._dashboardTokenLeaderboard||(global._dashboardTokenLeaderboard={data:bb(),refreshPromise:null,timerStarted:!1,lastError:""}),global._dashboardTokenLeaderboard}async function bd(){let a=am({period:S,timeZone:T}),b=await (0,O.d9)(),c=[b];try{c=await a8(b,1);let d=a9(c,0),e=aE(a,null),f=await d.get(`SELECT
498
+ ORDER BY sortOrder ASC`,e.params)||[],d=ab(b.totalRequests,0),g=ab(b.gte30kRequests,0),h=ab(b.gte50kRequests,0),i=ab(b.gte100kRequests,0);return{totalRequests:d,gte30kRequests:g,gte50kRequests:h,gte100kRequests:i,gte30kRate:d?g/d:0,gte50kRate:d?h/d:0,gte100kRate:d?i/d:0,avgRequestSize:ab(b.avgRequestSize,0),maxRequestSize:ab(b.maxRequestSize,0),avgLargeLatencyMs:ab(b.avgLargeLatencyMs,null),avgLargeTtftMs:ab(b.avgLargeTtftMs,null),largePromptTokens:ab(b.largePromptTokens,0),largeCompletionTokens:ab(b.largeCompletionTokens,0),buckets:c.map(a=>{let b=ab(a.requests,0),c=ab(a.autoOffRequests,0);return{label:a.label,requests:b,share:d?b/d:0,avgRequestSize:ab(a.avgRequestSize,0),maxRequestSize:ab(a.maxRequestSize,0),avgLatencyMs:ab(a.avgLatencyMs,null),avgTtftMs:ab(a.avgTtftMs,null),promptTokens:ab(a.promptTokens,0),completionTokens:ab(a.completionTokens,0),autoOffRequests:c,autoOffRate:b?c/b:0}})}}catch(a){return console.error("[analytics] Failed to build large context analytics:",a?.message||a),{totalRequests:0,gte30kRequests:0,gte50kRequests:0,gte100kRequests:0,gte30kRate:0,gte50kRate:0,gte100kRate:0,buckets:[]}}}async function a6(a,b,c,d={},e=new Map){let f=await a1(a,b,c,e),g=await a2(a,b,c),h=await a$(a,b,c),i=await a_(a,b,c),j=await a0(a,b,c),k=await a3(a,b,c),l=f[0]||null,m=h[0]||null,n=i[0]||null,o=j[0]||null,p=f.reduce((a,b)=>a+ab(b.totalTokens,0),0),q=ab(d.totalTokens,0),r=l&&q?ab(l.totalTokens,0)/q:0,s=m&&q?ab(m.totalTokens,0)/q:0,t=n&&q?ab(n.totalTokens,0)/q:0,u=k.filter(a=>["30k-50k","50k-70k",">=70k"].includes(a.label)).reduce((a,b)=>a+ab(b.share,0),0),v=k.find(a=>">=70k"===a.label)||null;return{summary:{trackedUsers:f.length,topUserLabel:l?.label||"-",topUserTokens:l?.totalTokens||0,topUserTokenShare:r,topUsersTokenShare:q?p/q:0,topApiKeyLabel:m?.label||"-",topApiKeyTokens:m?.totalTokens||0,topApiKeyTokenShare:s,topSourceIpLabel:n?.label||"-",topSourceIpTokens:n?.totalTokens||0,topSourceIpTokenShare:t,topSourceIpHeavyLabel:o?.label||"-",topSourceIpHeavyRequests:o?.heavyRequests||0,longInputBucketShare:u,extremeInputShare:v?.share||0,problemClients:g.length},topHeavyUsers:f,topProblemClients:g,topApiKeysByTokens:h,topSourceIpsByTokens:i,topSourceIpsByHeavyRequests:j,inputBuckets:k}}function a7(a){let b=String(a??"");return/[",\n\r]/.test(b)?`"${b.replace(/"/g,'""')}"`:b}function a8(a){global._dashboardAnalyticsV4BuildQueue||(global._dashboardAnalyticsV4BuildQueue=Promise.resolve());let b=global._dashboardAnalyticsV4BuildQueue.catch(()=>{}).then(a);return global._dashboardAnalyticsV4BuildQueue=b.then(()=>void 0,()=>void 0),b}async function a9(a,b=4){let c=[a].filter(Boolean),d=Math.max(0,Math.max(1,Math.min(6,Number(b)||4))-c.length);if(d<=0)return c;for(let a of(await Promise.all(Array.from({length:d},async()=>{try{return await (0,O.d9)()}catch(a){return console.warn("[dashboardAnalytics] Extra MySQL analytics connection unavailable:",a?.message||a),null}}))))a&&c.push(a);return c}function ba(a,b=0){return Array.isArray(a)&&0!==a.length?a[Math.abs(b)%a.length]||a[0]:null}async function bb(a=[]){let b=[...new Set((a||[]).filter(Boolean))];await Promise.all(b.map(a=>a?.close?.().catch(()=>{})))}function bc(a={}){return{rows:[],generatedAt:"",nextRefreshAt:"",refreshEveryMs:Q,period:S,periodLabel:"H\xf4m nay",status:"warming",...a}}function bd(){return global._dashboardTokenLeaderboard||(global._dashboardTokenLeaderboard={data:bc(),refreshPromise:null,timerStarted:!1,lastError:""}),global._dashboardTokenLeaderboard}async function be(){let a=am({period:S,timeZone:T}),b=await (0,O.d9)(),c=[b];try{c=await a9(b,1);let d=ba(c,0),e=aE(a,null),f=await d.get(`SELECT
499
499
  SUM(COALESCE(promptTokens, 0) + COALESCE(completionTokens, 0)) AS totalTokens,
500
500
  COUNT(*) AS requests
501
501
  FROM usageHistory
@@ -534,4 +534,4 @@
534
534
  FROM base
535
535
  GROUP BY groupKey
536
536
  ORDER BY totalTokens DESC, requests DESC
537
- LIMIT ?`,[...e.params,5])||[];return{rows:function(a=[],b=0){return a.map((a,c)=>{let d=c+1,e=ab(a.promptTokens,0),f=ab(a.completionTokens,0),g=ab(a.totalTokens,e+f),h=_(a.ownerUser),i=_(a.apiKeyName),j=_(a.apiKeyFingerprint);return{key:_(a.key)||`${d}`,rank:d,title:U[c]||"Token Royalty",ownerUser:h,label:h||i||j||"Local / kh\xf4ng API key",apiKeyName:i,apiKeyFingerprint:j,requests:ab(a.requests,0),promptTokens:e,completionTokens:f,totalTokens:g,cost:ab(a.cost,0),apiKeyCount:ab(a.apiKeyCount,0),modelCount:ab(a.modelCount,0),providerCount:ab(a.providerCount,0),sourceIpCount:ab(a.sourceIpCount,0),lastSeen:a.lastSeen||"",tokenShare:b?g/b:0}})}(h,g),generatedAt:new Date().toISOString(),nextRefreshAt:new Date(Date.now()+9e5).toISOString(),refreshEveryMs:9e5,period:S,periodLabel:"H\xf4m nay",status:"ready",totalTokens:g,totalRequests:ab(f.requests,0)}}finally{await ba(c)}}async function be(){let a=bc();return a.refreshPromise||(a.refreshPromise=bd().then(b=>(a.data=b,a.lastError="",b)).catch(b=>{let c=b?.message||String(b);return a.lastError=c,a.data=bb({status:a.data?.rows?.length?"stale":"error",error:c}),console.error("[analytics] Failed to refresh token leaderboard:",c),a.data}).finally(()=>{a.refreshPromise=null})),a.refreshPromise}async function bf(a){let b=await (0,w.c)(),c=await (0,O.d9)().catch(a=>(console.error("[dashboardAnalytics] MySQL observability query adapter unavailable; SQLite fallback is disabled:",a?.message||a),null));if(!c)throw Error("MySQL observability is not configured or unavailable; SQLite analytics fallback is disabled.");let d=[c];try{d=await a8(c,3);let e=a9(d,0),[f,g]=await Promise.all([ao(b),ap(b)]),h=a.userOwnedOnly?function(a=[],b={}){let c=[...new Set((a||[]).map(a=>aa(a)).filter(Boolean))];if(0===c.length)return{enabled:!0,noMatch:!0,owners:[],identifiers:[],ids:[],fingerprints:[]};let d=new Set(c),e=new Set,f=new Set,g=new Set;for(let a of b.all||[]){let b=aa(a.ownerUser);b&&d.has(b)&&(a.key&&e.add(a.key),a.id&&(e.add(a.id),f.add(a.id)),a.fingerprint&&(e.add(a.fingerprint),g.add(a.fingerprint)))}return{enabled:!0,noMatch:0===e.size,owners:c,identifiers:[...e],ids:[...f],fingerprints:[...g]}}(a.ownerCandidates,f):a.ownedAnyUserOnly?function(a={}){let b=new Set,c=new Set,d=new Set,e=new Set;for(let f of a.all||[]){let a=aa(f.ownerUser);a&&(b.add(a),f.key&&c.add(f.key),f.id&&(c.add(f.id),d.add(f.id)),f.fingerprint&&(c.add(f.fingerprint),e.add(f.fingerprint)))}return{enabled:!0,noMatch:0===c.size&&0===b.size,owners:[...b],identifiers:[...c],ids:[...d],fingerprints:[...e]}}(f):null,i=h?{...a,ownerScope:h}:a,j=function(a,b){let c=aa(a);if(!c)return null;let d=[],e=!1;for(let a of(["local","local-no-key","no-key","khong-key","kh\xf4ng-key","kh\xf4ng d\xf9ng api key"].some(a=>a.includes(c)||c.includes(a))&&(e=!0),b.all||[]))[a.key,a.id,a.name,a.ownerUser,a.createdByUser,a.machineId,a.fingerprint,a.masked].some(a=>aa(a).includes(c))&&a.key&&d.push(a.key);return a.length>=16&&!d.includes(a)&&d.push(a),{keys:[...new Set(d)],includeLocal:e,noMatch:0===d.length&&!e,filter:c}}(i.apiKey,f),k=i.userOwnedOnly||i.ownedAnyUserOnly?Promise.resolve(function(a="disabled"){return{disabled:!0,reason:a,missing:!1,total:0,sampled:0,dbInfo:{},models:[],stages:[],topClientIps:[],topSourceTools:[],topSessions:[],topStages:[],topModels:[],topAccounts:[],topStatuses:[]}}("user_owned_scope_no_api_key_columns")):M({keyword:i.keyword,model:i.model,sourceTool:i.sourceTool,clientIp:i.clientIp,sessionId:i.sessionId,dateFrom:i.startIso,dateTo:i.endIso,workingTimeRanges:i.workingTimeRanges}),l=(0,N.Wl)({keyword:i.keyword,provider:i.provider,model:i.model,connectionId:i.connectionId,endpoint:i.endpoint,apiKey:i.apiKey,apiKeyScope:h,status:i.status,sourceTool:i.sourceTool,clientIp:i.clientIp,sessionId:i.sessionId,dateFrom:i.startIso,dateTo:i.endIso,workingTimeRanges:i.workingTimeRanges}),[m,n,o,p,q,r]=await Promise.all([av(a9(d,0),i,j),aw(a9(d,1),i,j),aA(a9(d,2),i,f,g,j),aD(a9(d,3),i,j),k,l]),s=function(a={},b=new Map){if(!a||"object"!=typeof a)return a;let c=a=>Array.isArray(a)?a.map(a=>(function(a={},b=new Map){if(!a||"object"!=typeof a)return a;let c=_(a.provider||a.errorSource||a.providerId),d=_(a.providerLabel)||aq(c,b),e={...a};for(let a of["sample","sampleMessage","errorMessage","errorMessageShort","message","details"])"string"==typeof e[a]&&(e[a]=function(a,b,c){let d="string"==typeof a?a:"";return d&&b&&c&&b!==c?d.split(b).join(c):a}(e[a],c,d));return{...e,provider:c,providerLabel:d,label:_(e.label)||d||c||"unknown"}})(a,b)):[];return{...a,topErrors:c(a.topErrors),topServerErrors:c(a.topServerErrors),topClientErrors:c(a.topClientErrors),topRateLimitErrors:c(a.topRateLimitErrors),errorDistribution:c(a.errorDistribution),byFaultOwner:c(a.byFaultOwner),byProvider:c(a.byProvider)}}(r,g),t=s?.summary||{};n.rawErrorEvents=ab(s?.total,0),n.serverErrorEvents=ab(t.serverImpacting,0),n.gatewayErrorEvents=ab(t.gateway,0),n.upstreamErrorEvents=ab(t.upstream,0),n.clientErrorEvents=ab(t.client,0),n.rateLimitErrorEvents=ab(t.rateLimit,0),n.unknownErrorEvents=ab(t.unknown,0),n.serverErrorRate=n.requests?n.serverErrorEvents/n.requests:0,n.clientErrorRate=n.requests?n.clientErrorEvents/n.requests:0,n.rateLimitErrorRate=n.requests?n.rateLimitErrorEvents/n.requests:0,s?.topErrors?.length&&(o.errors=s.topErrors);let u=new Map([...f.byKey.entries(),...f.byFingerprint.entries()]),[v,w,x,y,z,A,B]=await Promise.all([aI(a9(d,0),i,j,n),a6(a9(d,1),i,j,n,g),a4(a9(d,2),i,j),a5(a9(d,3),i,j),aB(a9(d,2),i,j,m),aM(a9(d,3),i,j,u,g),aN(a9(d,0),i,j,u,g)]),[C,D]=await Promise.all([aJ(a9(d,1),i,j,g),aK(a9(d,2),i,j,u,g)]);v.byModel=C,v.slowestRequests=D,n.userExperienceScore=v.score,n.userExperienceLabel=v.label,n.slowRequestRate=v.slowRequestRate,n.longInputRate=v.longInputRate,n.thinkingAutoOffRate=x.autoOffRate||0,n.largeContextRate=y.gte50kRate||0,n.topHeavyUser=w.summary?.topUserLabel||"",n.topHeavyUserTokenShare=w.summary?.topUserTokenShare||0,n.extremeInputShare=w.summary?.extremeInputShare||0;let E=await aT(e,i,o,q,f,j,g),F=function({overview:a,groups:b,promptLogStats:c,requestErrorStats:d,experience:e,clientRequests:f}){let g=[],h=d?.summary||{},i=ab(h.serverImpacting,0),j=ab(h.client,0),k=ab(h.rateLimit,0),l=ab(a.serverErrorRate,a.requests?i/a.requests:0),m=ab(a.clientErrorRate,a.requests?j/a.requests:0);a.requests>=10&&i>=3&&l>=.05?g.push({level:l>=.15?"danger":"warning",title:"Tỷ lệ lỗi server/provider cao",detail:`${i.toLocaleString("vi-VN")} lỗi server-impacting (${(100*l).toFixed(1)}% request) trong khoảng thời gian đang lọc. Ưu ti\xean kiểm tra upstream/provider, gateway, timeout v\xe0 5xx.`}):a.requests>=10&&a.errorRate>=.2&&m>=.1?g.push({level:"warning",title:"Nhiều lỗi do client/request",detail:`${j.toLocaleString("vi-VN")} lỗi được ph\xe2n loại l\xe0 client-side (${(100*m).toFixed(1)}% request): sai endpoint/model/auth/body/context. Kh\xf4ng n\xean t\xednh nh\xf3m n\xe0y như lỗi server.`}):a.requests>=10&&a.errorRate>=.2&&g.push({level:"warning",title:"Tỷ lệ lỗi tổng cao",detail:`Tổng lỗi usage l\xe0 ${(100*a.errorRate).toFixed(1)}%, nhưng lỗi server-impacting chỉ ${(100*l).toFixed(1)}%. Xem ph\xe2n loại client/server b\xean dưới trước khi kết luận provider hỏng.`}),k>=5&&a.requests>0&&k/a.requests>=.05&&g.push({level:"warning",title:"Rate limit / quota đ\xe1ng ch\xfa \xfd",detail:`${k.toLocaleString("vi-VN")} lỗi rate-limit/quota trong khoảng lọc. Kiểm tra policy API key, quota provider hoặc ph\xe2n tải model.`});let n=b.apiKeys?.[0];n&&a.totalTokens>0&&n.totalTokens/a.totalTokens>=.5&&g.push({level:"warning",title:"Một API key d\xf9ng phần lớn token",detail:`${n.name||n.fingerprint} đang d\xf9ng ${(n.totalTokens/a.totalTokens*100).toFixed(1)}% tổng token.`});let o=c?.topClientIps?.[0];o&&c.total>0&&o.requests/c.total>=.5&&o.requests>=20&&g.push({level:"warning",title:"Một IP chiếm phần lớn request prompt log",detail:`${o.label} chiếm ${(o.requests/c.total*100).toFixed(1)}% prompt logs trong to\xe0n bộ dữ liệu khớp bộ lọc.`});let p=d?.topServerErrors?.[0];return p&&p.requests>=5&&g.push({level:p.requests>=20?"danger":"warning",title:"Provider/Gateway c\xf3 lỗi cần xử l\xfd",detail:`${p.providerLabel||p.provider||p.errorSource||"unknown"}/${p.model||"unknown"} c\xf3 ${p.requests.toLocaleString("vi-VN")} lỗi ${p.errorType||p.status||"server-impacting"}.`}),e?.samples>=10&&ab(e.slowRequestRate,0)>=.2&&g.push({level:e.slowRequestRate>=.4?"danger":"warning",title:"Nhiều request phản hồi chậm",detail:`${(100*e.slowRequestRate).toFixed(1)}% request th\xe0nh c\xf4ng c\xf3 latency >= 45s. Kiểm tra request input d\xe0i, chờ slot/upstream queue v\xe0 tải model server.`}),e?.samples>=10&&ab(e.longInputRate,0)>=.3&&g.push({level:"warning",title:"Tỷ lệ request input d\xe0i cao",detail:`${(100*e.longInputRate).toFixed(1)}% request c\xf3 input >= 30k token. Với VS Code/agent, P95/P99 latency cao c\xf3 thể chủ yếu do prompt eval v\xe0 chờ slot, kh\xf4ng phải do output chậm.`}),f?.summary?.topUserTokenShare>=.35&&g.push({level:f.summary.topUserTokenShare>=.6?"danger":"warning",title:"Token usage tập trung v\xe0o một user/API key",detail:`${f.summary.topUserLabel||"Một client"} đang chiếm ${(100*f.summary.topUserTokenShare).toFixed(1)}% tổng token trong khoảng lọc. N\xean kiểm tra quota, workflow VS Code/agent v\xe0 request input d\xe0i của client n\xe0y.`}),f?.summary?.extremeInputShare>=.1&&g.push({level:f.summary.extremeInputShare>=.25?"danger":"warning",title:"Nhiều request cực d\xe0i >=70k token",detail:`${(100*f.summary.extremeInputShare).toFixed(1)}% request th\xe0nh c\xf4ng c\xf3 input >=70k token. Đ\xe2y l\xe0 nh\xf3m dễ k\xe9o TTFT/P95/P99 l\xean cao v\xe0 l\xe0m request nhỏ phải chờ slot.`}),g}({overview:n,groups:o,promptLogStats:q,requestErrorStats:s,experience:v,clientRequests:w}),G={generatedAt:new Date().toISOString(),analyticsVersion:"v3.6-token-leaderboard",filters:{period:i.period,startIso:i.startIso,endIso:i.endIso,provider:i.provider,model:i.model,connectionId:i.connectionId,status:i.status,endpoint:i.endpoint,apiKey:i.apiKey,clientIp:i.clientIp,sourceTool:i.sourceTool,sessionId:i.sessionId,keyword:i.keyword,userOwnedOnly:i.userOwnedOnly,ownedAnyUserOnly:i.ownedAnyUserOnly},overview:n,latency:p,experience:v,clientRequests:w,tokenLeaderboard:(!function(){let a=bc();if(a.timerStarted)return;a.timerStarted=!0;let b=setTimeout(()=>{be().catch(()=>{})},1e3);b.unref?.();let c=setInterval(()=>{be().catch(()=>{})},9e5);c.unref?.()}(),bc().data||bb()),thinkingAnalytics:x,largeContextAnalytics:y,timeSeries:z,groups:o,promptLogs:q,requestErrors:s,anomalies:F,recentUsage:A,heavyRequests:B,options:E,qualityNotes:[]};return await ba(d),G}catch(a){throw await ba(d),console.error("[dashboardAnalytics] MySQL observability query failed; SQLite fallback is disabled:",a?.message||a),a}}async function bg(a={}){var b,c;let d,e,f=Date.now(),g=(d={...b=am(a,{now:new Date(f)})},delete d.start,delete d.end,delete d.workingTimeRanges,"custom"!==b.period&&(d.startIso="",d.endIso=""),JSON.stringify(d)),h=(global._dashboardAnalyticsV3Cache||(global._dashboardAnalyticsV3Cache=new Map),global._dashboardAnalyticsV3Cache),i=h.get(g);if(i&&f-i.createdAt<Q)return i.lastAccessedAt=f,i.data;let j=(global._dashboardAnalyticsV3InFlight||(global._dashboardAnalyticsV3InFlight=new Map),global._dashboardAnalyticsV3InFlight),k=j.get(g);if(k)return i&&f-i.createdAt<R?(i.lastAccessedAt=f,i.data):await k;let l=(c=async()=>{let b=h.get(g),c=Date.now();if(b&&c-b.createdAt<Q)return b.lastAccessedAt=c,b.data;try{let b=am(a,{now:new Date(c)}),d=await bf(b),e=Date.now();return h.set(g,{createdAt:e,lastAccessedAt:e,data:d}),!function(a,b=Date.now()){for(let[c,d]of a)b-d.createdAt>R&&a.delete(c);if(!(a.size<=50))for(let[b]of[...a.entries()].sort((a,b)=>(a[1].lastAccessedAt||a[1].createdAt)-(b[1].lastAccessedAt||b[1].createdAt))){if(a.size<=50)break;a.delete(b)}}(h,e),d}catch(b){let a=h.get(g);if(a&&Date.now()-a.createdAt<R)return a.lastAccessedAt=Date.now(),console.warn("[dashboardAnalytics] Refresh failed; serving the last complete analytics snapshot:",b?.message||b),a.data;throw b}},!global._dashboardAnalyticsV3BuildQueue&&(global._dashboardAnalyticsV3BuildQueue=Promise.resolve()),e=global._dashboardAnalyticsV3BuildQueue.catch(()=>{}).then(c),global._dashboardAnalyticsV3BuildQueue=e.then(()=>void 0,()=>void 0),e).finally(()=>{j.get(g)===l&&j.delete(g)});return(j.set(g,l),i&&f-i.createdAt<R)?(i.lastAccessedAt=f,l.catch(a=>{console.error("[dashboardAnalytics] Background refresh failed:",a?.message||a)}),i.data):await l}var bh=c(9588);let bi="force-dynamic",bj=["period","dateFrom","dateTo","provider","model","connectionId","status","endpoint","apiKey","clientIp","sourceIp","sourceTool","sessionId","keyword","maxPromptLogRows","timeZone"];async function bk(a){try{let b,{access:c,response:d}=await (0,bh.oW)();if(d)return d;let{searchParams:e}=new URL(a.url),f=function(a){let b={};for(let c of bj){let d=a.get(c);null!==d&&""!==String(d).trim()&&(b[c]=d)}return b}(e);b=c.isAdmin||c.isMonitorAdmin?f:c.isAiGatewaysMonitor?{...f,ownedAnyUserOnly:!0}:{...f,userOwnedOnly:!0,ownerCandidates:[...new Set([...c.candidates||[],c.userId].map(bh.I8).filter(Boolean))]};let g=await bg(b);if("csv"===e.get("format")){let a=(function(a){let b=[];for(let[c,d]of(b.push(["section","key","label","requests","success","errors","errorRate","inputTokens","outputTokens","totalTokens","cost","lastSeen"]),[["providers",a.groups.providers],["models",a.groups.models],["providerAccounts",a.groups.providerAccounts],["apiKeys",a.groups.apiKeys],["endpoints",a.groups.endpoints],["clientIps",a.promptLogs.topClientIps],["sourceTools",a.promptLogs.topSourceTools],["requestErrors",a.requestErrors?.topErrors||a.groups.errors],["modelExperience",a.experience?.byModel||[]],["clientHeavyUsers",a.clientRequests?.topHeavyUsers||[]],["clientTopApiKeysByTokens",a.clientRequests?.topApiKeysByTokens||[]],["clientTopSourceIpsByTokens",a.clientRequests?.topSourceIpsByTokens||[]],["clientTopSourceIpsByHeavyRequests",a.clientRequests?.topSourceIpsByHeavyRequests||[]],["clientProblemClients",a.clientRequests?.topProblemClients||[]],["inputBuckets",a.clientRequests?.inputBuckets||[]]]))for(let a of d||[])b.push([c,a.key||"",a.label||a.name||"",a.requests||0,a.success||0,a.errors||0,a.errorRate||0,a.promptTokens||0,a.completionTokens||0,a.totalTokens||0,a.cost||0,a.lastSeen||""]);return b})(g).map(a=>a.map(a7).join(",")).join("\n");return new Response(a,{status:200,headers:{"Content-Type":"text/csv; charset=utf-8","Content-Disposition":`attachment; filename="bluerouter-analytics-${new Date().toISOString().slice(0,10)}.csv"`,"Cache-Control":"no-store"}})}return v.NextResponse.json(g,{headers:{"Cache-Control":"no-store"}})}catch(a){return console.error("[analytics] Failed to build dashboard analytics:",a),v.NextResponse.json({error:a?.message||"Failed to build dashboard analytics"},{status:500})}}let bl=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/dashboard/analytics/route",pathname:"/api/dashboard/analytics",filename:"route",bundlePath:"app/api/dashboard/analytics/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"D:\\bluerouter\\src\\app\\api\\dashboard\\analytics\\route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:bm,workUnitAsyncStorage:bn,serverHooks:bo}=bl;function bp(){return(0,g.patchFetch)({workAsyncStorage:bm,workUnitAsyncStorage:bn})}async function bq(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),bl.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/dashboard/analytics/route";"/index"===d&&(d="/");let e=await bl.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||bl.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===bl.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await bl.getIncrementalCache(a,x,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>bl.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>bl.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await bl.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await bl.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)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await bl.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64939:a=>{a.exports=import("pg")},66136:a=>{a.exports=require("timers")},69614:(a,b,c)=>{c.d(b,{V:()=>p});var d=c(88888),e=c(91356),f=c(99129),g=c(73575),h=c(41570),i=c(19035),j=c(24762),k=c(80308),l=c(11980);async function m(a,b,c){if(!(0,i.Gv)(a))throw new f.Ye("Flattened JWS must be an object");if(void 0===a.protected&&void 0===a.header)throw new f.Ye('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==a.protected&&"string"!=typeof a.protected)throw new f.Ye("JWS Protected Header incorrect type");if(void 0===a.payload)throw new f.Ye("JWS Payload missing");if("string"!=typeof a.signature)throw new f.Ye("JWS Signature missing or incorrect type");if(void 0!==a.header&&!(0,i.Gv)(a.header))throw new f.Ye("JWS Unprotected Header incorrect type");let m={};if(a.protected)try{let b=(0,d.D)(a.protected);m=JSON.parse(g.D0.decode(b))}catch{throw new f.Ye("JWS Protected Header is invalid")}if(!(0,i.fz)(m,a.header))throw new f.Ye("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");let n={...m,...a.header},o=(0,k.n)(f.Ye,new Map([["b64",!0]]),c?.crit,m,n),p=!0;if(o.has("b64")&&"boolean"!=typeof(p=m.b64))throw new f.Ye('The "b64" (base64url-encode payload) Header Parameter must be a boolean');let{alg:q}=n;if("string"!=typeof q||!q)throw new f.Ye('JWS "alg" (Algorithm) Header Parameter missing or invalid');let r=c&&function(a,b){if(void 0!==b&&(!Array.isArray(b)||b.some(a=>"string"!=typeof a)))throw TypeError(`"${a}" option must be an array of strings`);if(b)return new Set(b)}("algorithms",c.algorithms);if(r&&!r.has(q))throw new f.Rb('"alg" (Algorithm) Header Parameter value not allowed');if(p){if("string"!=typeof a.payload)throw new f.Ye("JWS Payload must be a string")}else if("string"!=typeof a.payload&&!(a.payload instanceof Uint8Array))throw new f.Ye("JWS Payload must be a string or an Uint8Array instance");let s=!1;"function"==typeof b&&(b=await b(m,a),s=!0),(0,j.y)(q,b,"verify");let t=(0,g.xW)(void 0!==a.protected?(0,g.lF)(a.protected):new Uint8Array,(0,g.lF)("."),"string"==typeof a.payload?p?(0,g.lF)(a.payload):g.Rd.encode(a.payload):a.payload),u=(0,h.h2)(a.signature,"signature",f.Ye),v=await (0,l.l)(b,q);if(!await (0,e.MX)(q,v,u,t))throw new f.h2;let w={payload:p?(0,h.h2)(a.payload,"payload",f.Ye):"string"==typeof a.payload?g.Rd.encode(a.payload):a.payload};return(void 0!==a.protected&&(w.protectedHeader=m),void 0!==a.header&&(w.unprotectedHeader=a.header),s)?{...w,key:v}:w}async function n(a,b,c){if(a instanceof Uint8Array&&(a=g.D0.decode(a)),"string"!=typeof a)throw new f.Ye("Compact JWS must be a string or Uint8Array");let{0:d,1:e,2:h,length:i}=a.split(".");if(3!==i)throw new f.Ye("Invalid Compact JWS");let j=await m({payload:e,protected:d,signature:h},b,c),k={payload:j.payload,protectedHeader:j.protectedHeader};return"function"==typeof b?{...k,key:j.key}:k}var o=c(17347);async function p(a,b,c){let d=await n(a,b,c);if(d.protectedHeader.crit?.includes("b64")&&!1===d.protectedHeader.b64)throw new f.Dp("JWTs MUST NOT use unencoded payload");let e={payload:(0,o.k6)(d.protectedHeader,d.payload,c),protectedHeader:d.protectedHeader};return"function"==typeof b?{...e,key:d.key}:e}},73024:a=>{a.exports=require("node:fs")},74075:a=>{a.exports=require("zlib")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},79428:a=>{a.exports=require("buffer")},80099:a=>{a.exports=require("node:sqlite")},81787:a=>{a.exports=require("bun:sqlite")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},90389:(a,b,c)=>{c.d(b,{hS:()=>d});let d=Object.freeze({ADMIN:"admin",MONITOR_ADMIN:"monitor_admin",AI_GATEWAYS_MONITOR:"ai_gateways_monitor",USER:"user",GUEST:"guest"});Object.freeze([{href:"/dashboard/endpoint",label:"Endpoint",icon:"api"},{href:"/dashboard/api-keys",label:"API Keys",icon:"vpn_key"},{href:"/dashboard/usage",label:"Usage",icon:"bar_chart"},{href:"/dashboard/analytics",label:"Analytics",icon:"monitoring"},{href:"/dashboard/quota",label:"Quota Tracker",icon:"data_usage"},{href:"/dashboard/prompt-logs",label:"Prompt Logs",icon:"manage_search"}]),Object.freeze(["/dashboard","/dashboard/endpoint","/dashboard/api-keys","/dashboard/usage","/dashboard/analytics","/dashboard/quota","/dashboard/prompt-logs"])},91645:a=>{a.exports=require("net")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);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()}}},94735:a=>{a.exports=require("events")},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)}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,5592,5573,6935,402,5901,7242],()=>b(b.s=53254));module.exports=c})();
537
+ LIMIT ?`,[...e.params,5])||[];return{rows:function(a=[],b=0){return a.map((a,c)=>{let d=c+1,e=ab(a.promptTokens,0),f=ab(a.completionTokens,0),g=ab(a.totalTokens,e+f),h=_(a.ownerUser),i=_(a.apiKeyName),j=_(a.apiKeyFingerprint);return{key:_(a.key)||`${d}`,rank:d,title:U[c]||"Token Royalty",ownerUser:h,label:h||i||j||"Local / kh\xf4ng API key",apiKeyName:i,apiKeyFingerprint:j,requests:ab(a.requests,0),promptTokens:e,completionTokens:f,totalTokens:g,cost:ab(a.cost,0),apiKeyCount:ab(a.apiKeyCount,0),modelCount:ab(a.modelCount,0),providerCount:ab(a.providerCount,0),sourceIpCount:ab(a.sourceIpCount,0),lastSeen:a.lastSeen||"",tokenShare:b?g/b:0}})}(h,g),generatedAt:new Date().toISOString(),nextRefreshAt:new Date(Date.now()+Q).toISOString(),refreshEveryMs:Q,period:S,periodLabel:"H\xf4m nay",status:"ready",totalTokens:g,totalRequests:ab(f.requests,0)}}finally{await bb(c)}}async function bf({serialize:a=!0}={}){let b=bd();return b.refreshPromise||(b.refreshPromise=(a?a8(()=>be()):be()).then(a=>(b.data=a,b.lastError="",a)).catch(a=>{let c=a?.message||String(a);return b.lastError=c,b.data=b.data?.rows?.length?{...b.data,status:"stale",error:c}:bc({status:"error",error:c}),console.error("[analytics] Failed to refresh token leaderboard:",c),b.data}).finally(()=>{b.refreshPromise=null})),b.refreshPromise}function bg(){let a=bd();if(a.timerStarted)return;if(a.timerStarted=!0,a.data?.status!=="ready"&&!a.data?.rows?.length){let a=setTimeout(()=>{bf().catch(()=>{})},1e3);a.unref?.()}let b=setInterval(()=>{bf().catch(()=>{})},Q);b.unref?.()}async function bh(){let a=bd();if(a.data?.status==="ready"||a.data?.rows?.length)return bg(),a.data;let b=await bf({serialize:!1});return bg(),b}async function bi(a){let b=await (0,w.c)(),c=await (0,O.d9)().catch(a=>(console.error("[dashboardAnalytics] MySQL observability query adapter unavailable; SQLite fallback is disabled:",a?.message||a),null));if(!c)throw Error("MySQL observability is not configured or unavailable; SQLite analytics fallback is disabled.");let d=[c];try{d=await a9(c,3);let e=ba(d,0),[f,g]=await Promise.all([ao(b),ap(b)]),h=a.userOwnedOnly?function(a=[],b={}){let c=[...new Set((a||[]).map(a=>aa(a)).filter(Boolean))];if(0===c.length)return{enabled:!0,noMatch:!0,owners:[],identifiers:[],ids:[],fingerprints:[]};let d=new Set(c),e=new Set,f=new Set,g=new Set;for(let a of b.all||[]){let b=aa(a.ownerUser);b&&d.has(b)&&(a.key&&e.add(a.key),a.id&&(e.add(a.id),f.add(a.id)),a.fingerprint&&(e.add(a.fingerprint),g.add(a.fingerprint)))}return{enabled:!0,noMatch:0===e.size,owners:c,identifiers:[...e],ids:[...f],fingerprints:[...g]}}(a.ownerCandidates,f):a.ownedAnyUserOnly?function(a={}){let b=new Set,c=new Set,d=new Set,e=new Set;for(let f of a.all||[]){let a=aa(f.ownerUser);a&&(b.add(a),f.key&&c.add(f.key),f.id&&(c.add(f.id),d.add(f.id)),f.fingerprint&&(c.add(f.fingerprint),e.add(f.fingerprint)))}return{enabled:!0,noMatch:0===c.size&&0===b.size,owners:[...b],identifiers:[...c],ids:[...d],fingerprints:[...e]}}(f):null,i=h?{...a,ownerScope:h}:a,j=function(a,b){let c=aa(a);if(!c)return null;let d=[],e=!1;for(let a of(["local","local-no-key","no-key","khong-key","kh\xf4ng-key","kh\xf4ng d\xf9ng api key"].some(a=>a.includes(c)||c.includes(a))&&(e=!0),b.all||[]))[a.key,a.id,a.name,a.ownerUser,a.createdByUser,a.machineId,a.fingerprint,a.masked].some(a=>aa(a).includes(c))&&a.key&&d.push(a.key);return a.length>=16&&!d.includes(a)&&d.push(a),{keys:[...new Set(d)],includeLocal:e,noMatch:0===d.length&&!e,filter:c}}(i.apiKey,f),k=i.userOwnedOnly||i.ownedAnyUserOnly?Promise.resolve(function(a="disabled"){return{disabled:!0,reason:a,missing:!1,total:0,sampled:0,dbInfo:{},models:[],stages:[],topClientIps:[],topSourceTools:[],topSessions:[],topStages:[],topModels:[],topAccounts:[],topStatuses:[]}}("user_owned_scope_no_api_key_columns")):M({keyword:i.keyword,model:i.model,sourceTool:i.sourceTool,clientIp:i.clientIp,sessionId:i.sessionId,dateFrom:i.startIso,dateTo:i.endIso,workingTimeRanges:i.workingTimeRanges}),l=(0,N.Wl)({keyword:i.keyword,provider:i.provider,model:i.model,connectionId:i.connectionId,endpoint:i.endpoint,apiKey:i.apiKey,apiKeyScope:h,status:i.status,sourceTool:i.sourceTool,clientIp:i.clientIp,sessionId:i.sessionId,dateFrom:i.startIso,dateTo:i.endIso,workingTimeRanges:i.workingTimeRanges}),[m,n,o,p,q,r]=await Promise.all([av(ba(d,0),i,j),aw(ba(d,1),i,j),aA(ba(d,2),i,f,g,j),aD(ba(d,3),i,j),k,l]),s=function(a={},b=new Map){if(!a||"object"!=typeof a)return a;let c=a=>Array.isArray(a)?a.map(a=>(function(a={},b=new Map){if(!a||"object"!=typeof a)return a;let c=_(a.provider||a.errorSource||a.providerId),d=_(a.providerLabel)||aq(c,b),e={...a};for(let a of["sample","sampleMessage","errorMessage","errorMessageShort","message","details"])"string"==typeof e[a]&&(e[a]=function(a,b,c){let d="string"==typeof a?a:"";return d&&b&&c&&b!==c?d.split(b).join(c):a}(e[a],c,d));return{...e,provider:c,providerLabel:d,label:_(e.label)||d||c||"unknown"}})(a,b)):[];return{...a,topErrors:c(a.topErrors),topServerErrors:c(a.topServerErrors),topClientErrors:c(a.topClientErrors),topRateLimitErrors:c(a.topRateLimitErrors),errorDistribution:c(a.errorDistribution),byFaultOwner:c(a.byFaultOwner),byProvider:c(a.byProvider)}}(r,g),t=s?.summary||{};n.rawErrorEvents=ab(s?.total,0),n.serverErrorEvents=ab(t.serverImpacting,0),n.gatewayErrorEvents=ab(t.gateway,0),n.upstreamErrorEvents=ab(t.upstream,0),n.clientErrorEvents=ab(t.client,0),n.rateLimitErrorEvents=ab(t.rateLimit,0),n.unknownErrorEvents=ab(t.unknown,0),n.serverErrorRate=n.requests?n.serverErrorEvents/n.requests:0,n.clientErrorRate=n.requests?n.clientErrorEvents/n.requests:0,n.rateLimitErrorRate=n.requests?n.rateLimitErrorEvents/n.requests:0,s?.topErrors?.length&&(o.errors=s.topErrors);let u=new Map([...f.byKey.entries(),...f.byFingerprint.entries()]),[v,w,x,y,z,A,B]=await Promise.all([aI(ba(d,0),i,j,n),a6(ba(d,1),i,j,n,g),a4(ba(d,2),i,j),a5(ba(d,3),i,j),aB(ba(d,2),i,j,m),aM(ba(d,3),i,j,u,g),aN(ba(d,0),i,j,u,g)]),[C,D]=await Promise.all([aJ(ba(d,1),i,j,g),aK(ba(d,2),i,j,u,g)]);v.byModel=C,v.slowestRequests=D,n.userExperienceScore=v.score,n.userExperienceLabel=v.label,n.slowRequestRate=v.slowRequestRate,n.longInputRate=v.longInputRate,n.thinkingAutoOffRate=x.autoOffRate||0,n.largeContextRate=y.gte50kRate||0,n.topHeavyUser=w.summary?.topUserLabel||"",n.topHeavyUserTokenShare=w.summary?.topUserTokenShare||0,n.extremeInputShare=w.summary?.extremeInputShare||0;let E=await aT(e,i,o,q,f,j,g),F=function({overview:a,groups:b,promptLogStats:c,requestErrorStats:d,experience:e,clientRequests:f}){let g=[],h=d?.summary||{},i=ab(h.serverImpacting,0),j=ab(h.client,0),k=ab(h.rateLimit,0),l=ab(a.serverErrorRate,a.requests?i/a.requests:0),m=ab(a.clientErrorRate,a.requests?j/a.requests:0);a.requests>=10&&i>=3&&l>=.05?g.push({level:l>=.15?"danger":"warning",title:"Tỷ lệ lỗi server/provider cao",detail:`${i.toLocaleString("vi-VN")} lỗi server-impacting (${(100*l).toFixed(1)}% request) trong khoảng thời gian đang lọc. Ưu ti\xean kiểm tra upstream/provider, gateway, timeout v\xe0 5xx.`}):a.requests>=10&&a.errorRate>=.2&&m>=.1?g.push({level:"warning",title:"Nhiều lỗi do client/request",detail:`${j.toLocaleString("vi-VN")} lỗi được ph\xe2n loại l\xe0 client-side (${(100*m).toFixed(1)}% request): sai endpoint/model/auth/body/context. Kh\xf4ng n\xean t\xednh nh\xf3m n\xe0y như lỗi server.`}):a.requests>=10&&a.errorRate>=.2&&g.push({level:"warning",title:"Tỷ lệ lỗi tổng cao",detail:`Tổng lỗi usage l\xe0 ${(100*a.errorRate).toFixed(1)}%, nhưng lỗi server-impacting chỉ ${(100*l).toFixed(1)}%. Xem ph\xe2n loại client/server b\xean dưới trước khi kết luận provider hỏng.`}),k>=5&&a.requests>0&&k/a.requests>=.05&&g.push({level:"warning",title:"Rate limit / quota đ\xe1ng ch\xfa \xfd",detail:`${k.toLocaleString("vi-VN")} lỗi rate-limit/quota trong khoảng lọc. Kiểm tra policy API key, quota provider hoặc ph\xe2n tải model.`});let n=b.apiKeys?.[0];n&&a.totalTokens>0&&n.totalTokens/a.totalTokens>=.5&&g.push({level:"warning",title:"Một API key d\xf9ng phần lớn token",detail:`${n.name||n.fingerprint} đang d\xf9ng ${(n.totalTokens/a.totalTokens*100).toFixed(1)}% tổng token.`});let o=c?.topClientIps?.[0];o&&c.total>0&&o.requests/c.total>=.5&&o.requests>=20&&g.push({level:"warning",title:"Một IP chiếm phần lớn request prompt log",detail:`${o.label} chiếm ${(o.requests/c.total*100).toFixed(1)}% prompt logs trong to\xe0n bộ dữ liệu khớp bộ lọc.`});let p=d?.topServerErrors?.[0];return p&&p.requests>=5&&g.push({level:p.requests>=20?"danger":"warning",title:"Provider/Gateway c\xf3 lỗi cần xử l\xfd",detail:`${p.providerLabel||p.provider||p.errorSource||"unknown"}/${p.model||"unknown"} c\xf3 ${p.requests.toLocaleString("vi-VN")} lỗi ${p.errorType||p.status||"server-impacting"}.`}),e?.samples>=10&&ab(e.slowRequestRate,0)>=.2&&g.push({level:e.slowRequestRate>=.4?"danger":"warning",title:"Nhiều request phản hồi chậm",detail:`${(100*e.slowRequestRate).toFixed(1)}% request th\xe0nh c\xf4ng c\xf3 latency >= 45s. Kiểm tra request input d\xe0i, chờ slot/upstream queue v\xe0 tải model server.`}),e?.samples>=10&&ab(e.longInputRate,0)>=.3&&g.push({level:"warning",title:"Tỷ lệ request input d\xe0i cao",detail:`${(100*e.longInputRate).toFixed(1)}% request c\xf3 input >= 30k token. Với VS Code/agent, P95/P99 latency cao c\xf3 thể chủ yếu do prompt eval v\xe0 chờ slot, kh\xf4ng phải do output chậm.`}),f?.summary?.topUserTokenShare>=.35&&g.push({level:f.summary.topUserTokenShare>=.6?"danger":"warning",title:"Token usage tập trung v\xe0o một user/API key",detail:`${f.summary.topUserLabel||"Một client"} đang chiếm ${(100*f.summary.topUserTokenShare).toFixed(1)}% tổng token trong khoảng lọc. N\xean kiểm tra quota, workflow VS Code/agent v\xe0 request input d\xe0i của client n\xe0y.`}),f?.summary?.extremeInputShare>=.1&&g.push({level:f.summary.extremeInputShare>=.25?"danger":"warning",title:"Nhiều request cực d\xe0i >=70k token",detail:`${(100*f.summary.extremeInputShare).toFixed(1)}% request th\xe0nh c\xf4ng c\xf3 input >=70k token. Đ\xe2y l\xe0 nh\xf3m dễ k\xe9o TTFT/P95/P99 l\xean cao v\xe0 l\xe0m request nhỏ phải chờ slot.`}),g}({overview:n,groups:o,promptLogStats:q,requestErrorStats:s,experience:v,clientRequests:w}),G=await bh(),H={generatedAt:new Date().toISOString(),analyticsVersion:"v3.7-token-leaderboard-cache",filters:{period:i.period,startIso:i.startIso,endIso:i.endIso,provider:i.provider,model:i.model,connectionId:i.connectionId,status:i.status,endpoint:i.endpoint,apiKey:i.apiKey,clientIp:i.clientIp,sourceTool:i.sourceTool,sessionId:i.sessionId,keyword:i.keyword,userOwnedOnly:i.userOwnedOnly,ownedAnyUserOnly:i.ownedAnyUserOnly},overview:n,latency:p,experience:v,clientRequests:w,tokenLeaderboard:G,thinkingAnalytics:x,largeContextAnalytics:y,timeSeries:z,groups:o,promptLogs:q,requestErrors:s,anomalies:F,recentUsage:A,heavyRequests:B,options:E,qualityNotes:[]};return await bb(d),H}catch(a){throw await bb(d),console.error("[dashboardAnalytics] MySQL observability query failed; SQLite fallback is disabled:",a?.message||a),a}}async function bj(a={}){var b;let c,d=Date.now(),e=(c={...b=am(a,{now:new Date(d)})},delete c.start,delete c.end,delete c.workingTimeRanges,"custom"!==b.period&&(c.startIso="",c.endIso=""),JSON.stringify(c)),f=(global._dashboardAnalyticsV4Cache||(global._dashboardAnalyticsV4Cache=new Map),global._dashboardAnalyticsV4Cache),g=f.get(e);if(g&&d-g.createdAt<Q)return g.lastAccessedAt=d,g.data;let h=(global._dashboardAnalyticsV4InFlight||(global._dashboardAnalyticsV4InFlight=new Map),global._dashboardAnalyticsV4InFlight),i=h.get(e);if(i)return g&&d-g.createdAt<R?(g.lastAccessedAt=d,g.data):await i;let j=a8(async()=>{let b=f.get(e),c=Date.now();if(b&&c-b.createdAt<Q)return b.lastAccessedAt=c,b.data;try{let b=am(a,{now:new Date(c)}),d=await bi(b),g=Date.now();return f.set(e,{createdAt:g,lastAccessedAt:g,data:d}),!function(a,b=Date.now()){for(let[c,d]of a)b-d.createdAt>R&&a.delete(c);if(!(a.size<=50))for(let[b]of[...a.entries()].sort((a,b)=>(a[1].lastAccessedAt||a[1].createdAt)-(b[1].lastAccessedAt||b[1].createdAt))){if(a.size<=50)break;a.delete(b)}}(f,g),d}catch(b){let a=f.get(e);if(a&&Date.now()-a.createdAt<R)return a.lastAccessedAt=Date.now(),console.warn("[dashboardAnalytics] Refresh failed; serving the last complete analytics snapshot:",b?.message||b),a.data;throw b}}).finally(()=>{h.get(e)===j&&h.delete(e)});return(h.set(e,j),g&&d-g.createdAt<R)?(g.lastAccessedAt=d,j.catch(a=>{console.error("[dashboardAnalytics] Background refresh failed:",a?.message||a)}),g.data):await j}var bk=c(9588);let bl="force-dynamic",bm=["period","dateFrom","dateTo","provider","model","connectionId","status","endpoint","apiKey","clientIp","sourceIp","sourceTool","sessionId","keyword","maxPromptLogRows","timeZone"];async function bn(a){try{let b,{access:c,response:d}=await (0,bk.oW)();if(d)return d;let{searchParams:e}=new URL(a.url),f=function(a){let b={};for(let c of bm){let d=a.get(c);null!==d&&""!==String(d).trim()&&(b[c]=d)}return b}(e);b=c.isAdmin||c.isMonitorAdmin?f:c.isAiGatewaysMonitor?{...f,ownedAnyUserOnly:!0}:{...f,userOwnedOnly:!0,ownerCandidates:[...new Set([...c.candidates||[],c.userId].map(bk.I8).filter(Boolean))]};let g=await bj(b);if("csv"===e.get("format")){let a=(function(a){let b=[];for(let[c,d]of(b.push(["section","key","label","requests","success","errors","errorRate","inputTokens","outputTokens","totalTokens","cost","lastSeen"]),[["providers",a.groups.providers],["models",a.groups.models],["providerAccounts",a.groups.providerAccounts],["apiKeys",a.groups.apiKeys],["endpoints",a.groups.endpoints],["clientIps",a.promptLogs.topClientIps],["sourceTools",a.promptLogs.topSourceTools],["requestErrors",a.requestErrors?.topErrors||a.groups.errors],["modelExperience",a.experience?.byModel||[]],["clientHeavyUsers",a.clientRequests?.topHeavyUsers||[]],["clientTopApiKeysByTokens",a.clientRequests?.topApiKeysByTokens||[]],["clientTopSourceIpsByTokens",a.clientRequests?.topSourceIpsByTokens||[]],["clientTopSourceIpsByHeavyRequests",a.clientRequests?.topSourceIpsByHeavyRequests||[]],["clientProblemClients",a.clientRequests?.topProblemClients||[]],["inputBuckets",a.clientRequests?.inputBuckets||[]]]))for(let a of d||[])b.push([c,a.key||"",a.label||a.name||"",a.requests||0,a.success||0,a.errors||0,a.errorRate||0,a.promptTokens||0,a.completionTokens||0,a.totalTokens||0,a.cost||0,a.lastSeen||""]);return b})(g).map(a=>a.map(a7).join(",")).join("\n");return new Response(a,{status:200,headers:{"Content-Type":"text/csv; charset=utf-8","Content-Disposition":`attachment; filename="bluerouter-analytics-${new Date().toISOString().slice(0,10)}.csv"`,"Cache-Control":"no-store"}})}return v.NextResponse.json(g,{headers:{"Cache-Control":"no-store"}})}catch(a){return console.error("[analytics] Failed to build dashboard analytics:",a),v.NextResponse.json({error:a?.message||"Failed to build dashboard analytics"},{status:500})}}let bo=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/dashboard/analytics/route",pathname:"/api/dashboard/analytics",filename:"route",bundlePath:"app/api/dashboard/analytics/route"},distDir:".next-cli-build",relativeProjectDir:"",resolvedPagePath:"D:\\bluerouter\\src\\app\\api\\dashboard\\analytics\\route.js",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:bp,workUnitAsyncStorage:bq,serverHooks:br}=bo;function bs(){return(0,g.patchFetch)({workAsyncStorage:bp,workUnitAsyncStorage:bq})}async function bt(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),bo.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/dashboard/analytics/route";"/index"===d&&(d="/");let e=await bo.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||bo.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===bo.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await bo.getIncrementalCache(a,x,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>bo.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>bo.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await bo.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await bo.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)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await bo.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64939:a=>{a.exports=import("pg")},66136:a=>{a.exports=require("timers")},69614:(a,b,c)=>{c.d(b,{V:()=>p});var d=c(88888),e=c(91356),f=c(99129),g=c(73575),h=c(41570),i=c(19035),j=c(24762),k=c(80308),l=c(11980);async function m(a,b,c){if(!(0,i.Gv)(a))throw new f.Ye("Flattened JWS must be an object");if(void 0===a.protected&&void 0===a.header)throw new f.Ye('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==a.protected&&"string"!=typeof a.protected)throw new f.Ye("JWS Protected Header incorrect type");if(void 0===a.payload)throw new f.Ye("JWS Payload missing");if("string"!=typeof a.signature)throw new f.Ye("JWS Signature missing or incorrect type");if(void 0!==a.header&&!(0,i.Gv)(a.header))throw new f.Ye("JWS Unprotected Header incorrect type");let m={};if(a.protected)try{let b=(0,d.D)(a.protected);m=JSON.parse(g.D0.decode(b))}catch{throw new f.Ye("JWS Protected Header is invalid")}if(!(0,i.fz)(m,a.header))throw new f.Ye("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");let n={...m,...a.header},o=(0,k.n)(f.Ye,new Map([["b64",!0]]),c?.crit,m,n),p=!0;if(o.has("b64")&&"boolean"!=typeof(p=m.b64))throw new f.Ye('The "b64" (base64url-encode payload) Header Parameter must be a boolean');let{alg:q}=n;if("string"!=typeof q||!q)throw new f.Ye('JWS "alg" (Algorithm) Header Parameter missing or invalid');let r=c&&function(a,b){if(void 0!==b&&(!Array.isArray(b)||b.some(a=>"string"!=typeof a)))throw TypeError(`"${a}" option must be an array of strings`);if(b)return new Set(b)}("algorithms",c.algorithms);if(r&&!r.has(q))throw new f.Rb('"alg" (Algorithm) Header Parameter value not allowed');if(p){if("string"!=typeof a.payload)throw new f.Ye("JWS Payload must be a string")}else if("string"!=typeof a.payload&&!(a.payload instanceof Uint8Array))throw new f.Ye("JWS Payload must be a string or an Uint8Array instance");let s=!1;"function"==typeof b&&(b=await b(m,a),s=!0),(0,j.y)(q,b,"verify");let t=(0,g.xW)(void 0!==a.protected?(0,g.lF)(a.protected):new Uint8Array,(0,g.lF)("."),"string"==typeof a.payload?p?(0,g.lF)(a.payload):g.Rd.encode(a.payload):a.payload),u=(0,h.h2)(a.signature,"signature",f.Ye),v=await (0,l.l)(b,q);if(!await (0,e.MX)(q,v,u,t))throw new f.h2;let w={payload:p?(0,h.h2)(a.payload,"payload",f.Ye):"string"==typeof a.payload?g.Rd.encode(a.payload):a.payload};return(void 0!==a.protected&&(w.protectedHeader=m),void 0!==a.header&&(w.unprotectedHeader=a.header),s)?{...w,key:v}:w}async function n(a,b,c){if(a instanceof Uint8Array&&(a=g.D0.decode(a)),"string"!=typeof a)throw new f.Ye("Compact JWS must be a string or Uint8Array");let{0:d,1:e,2:h,length:i}=a.split(".");if(3!==i)throw new f.Ye("Invalid Compact JWS");let j=await m({payload:e,protected:d,signature:h},b,c),k={payload:j.payload,protectedHeader:j.protectedHeader};return"function"==typeof b?{...k,key:j.key}:k}var o=c(17347);async function p(a,b,c){let d=await n(a,b,c);if(d.protectedHeader.crit?.includes("b64")&&!1===d.protectedHeader.b64)throw new f.Dp("JWTs MUST NOT use unencoded payload");let e={payload:(0,o.k6)(d.protectedHeader,d.payload,c),protectedHeader:d.protectedHeader};return"function"==typeof b?{...e,key:d.key}:e}},73024:a=>{a.exports=require("node:fs")},74075:a=>{a.exports=require("zlib")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},79428:a=>{a.exports=require("buffer")},80099:a=>{a.exports=require("node:sqlite")},81787:a=>{a.exports=require("bun:sqlite")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},90389:(a,b,c)=>{c.d(b,{hS:()=>d});let d=Object.freeze({ADMIN:"admin",MONITOR_ADMIN:"monitor_admin",AI_GATEWAYS_MONITOR:"ai_gateways_monitor",USER:"user",GUEST:"guest"});Object.freeze([{href:"/dashboard/endpoint",label:"Endpoint",icon:"api"},{href:"/dashboard/api-keys",label:"API Keys",icon:"vpn_key"},{href:"/dashboard/usage",label:"Usage",icon:"bar_chart"},{href:"/dashboard/analytics",label:"Analytics",icon:"monitoring"},{href:"/dashboard/quota",label:"Quota Tracker",icon:"data_usage"},{href:"/dashboard/prompt-logs",label:"Prompt Logs",icon:"manage_search"}]),Object.freeze(["/dashboard","/dashboard/endpoint","/dashboard/api-keys","/dashboard/usage","/dashboard/analytics","/dashboard/quota","/dashboard/prompt-logs"])},91645:a=>{a.exports=require("net")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);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()}}},94735:a=>{a.exports=require("events")},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)}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,5592,5573,6935,402,5901,7242],()=>b(b.s=53254));module.exports=c})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.91-to-5.0.92-5.0.92-20260708-072716/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.92-to-5.1.6-5.1.6-20260710-144934/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.10-to-5.1.12-5.1.12-20260710-182957/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.6-to-5.1.9-5.1.9-20260710-165928/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.9-to-5.1.10-5.1.10-20260710-170922/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/jwt-secret","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/machine-id","../../../../../../cli/.build-home/AppData/Roaming/nextjs-nodejs/Config/config.json","../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/pg-cloudflare/dist/empty.js","../../../../../../node_modules/pg-cloudflare/dist/index.js","../../../../../../node_modules/pg-cloudflare/package.json","../../../../../../node_modules/pg-connection-string/index.js","../../../../../../node_modules/pg-connection-string/package.json","../../../../../../node_modules/pg-int8/index.js","../../../../../../node_modules/pg-int8/package.json","../../../../../../node_modules/pg-pool/index.js","../../../../../../node_modules/pg-pool/package.json","../../../../../../node_modules/pg-protocol/dist/buffer-reader.js","../../../../../../node_modules/pg-protocol/dist/buffer-writer.js","../../../../../../node_modules/pg-protocol/dist/index.js","../../../../../../node_modules/pg-protocol/dist/messages.js","../../../../../../node_modules/pg-protocol/dist/parser.js","../../../../../../node_modules/pg-protocol/dist/serializer.js","../../../../../../node_modules/pg-protocol/package.json","../../../../../../node_modules/pg-types/index.js","../../../../../../node_modules/pg-types/lib/arrayParser.js","../../../../../../node_modules/pg-types/lib/binaryParsers.js","../../../../../../node_modules/pg-types/lib/builtins.js","../../../../../../node_modules/pg-types/lib/textParsers.js","../../../../../../node_modules/pg-types/package.json","../../../../../../node_modules/pg/esm/index.mjs","../../../../../../node_modules/pg/lib/client.js","../../../../../../node_modules/pg/lib/connection-parameters.js","../../../../../../node_modules/pg/lib/connection.js","../../../../../../node_modules/pg/lib/crypto/cert-signatures.js","../../../../../../node_modules/pg/lib/crypto/sasl.js","../../../../../../node_modules/pg/lib/crypto/utils.js","../../../../../../node_modules/pg/lib/defaults.js","../../../../../../node_modules/pg/lib/index.js","../../../../../../node_modules/pg/lib/native/client.js","../../../../../../node_modules/pg/lib/native/index.js","../../../../../../node_modules/pg/lib/native/query.js","../../../../../../node_modules/pg/lib/query.js","../../../../../../node_modules/pg/lib/result.js","../../../../../../node_modules/pg/lib/stream.js","../../../../../../node_modules/pg/lib/type-overrides.js","../../../../../../node_modules/pg/lib/utils.js","../../../../../../node_modules/pg/package.json","../../../../../../node_modules/pgpass/lib/helper.js","../../../../../../node_modules/pgpass/lib/index.js","../../../../../../node_modules/pgpass/package.json","../../../../../../node_modules/postgres-array/index.js","../../../../../../node_modules/postgres-array/package.json","../../../../../../node_modules/postgres-bytea/index.js","../../../../../../node_modules/postgres-bytea/package.json","../../../../../../node_modules/postgres-date/index.js","../../../../../../node_modules/postgres-date/package.json","../../../../../../node_modules/postgres-interval/index.js","../../../../../../node_modules/postgres-interval/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../node_modules/split2/index.js","../../../../../../node_modules/split2/package.json","../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../node_modules/sql.js/package.json","../../../../../../node_modules/xtend/mutable.js","../../../../../../node_modules/xtend/package.json","../../../../../../package.json","../../../../../../src/lib/db/adapters/betterSqliteAdapter.js","../../../../../../src/lib/db/adapters/bunSqliteAdapter.js","../../../../../../src/lib/db/adapters/nodeSqliteAdapter.js","../../../../../../src/lib/db/adapters/sqljsAdapter.js","../../../../../../src/lib/db/migrate.js","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/12.js","../../../../chunks/1220.js","../../../../chunks/1361.js","../../../../chunks/1817.js","../../../../chunks/1998.js","../../../../chunks/232.js","../../../../chunks/2338.js","../../../../chunks/241.js","../../../../chunks/2506.js","../../../../chunks/2650.js","../../../../chunks/2944.js","../../../../chunks/3104.js","../../../../chunks/3110.js","../../../../chunks/318.js","../../../../chunks/319.js","../../../../chunks/3593.js","../../../../chunks/3801.js","../../../../chunks/4013.js","../../../../chunks/402.js","../../../../chunks/4177.js","../../../../chunks/4306.js","../../../../chunks/436.js","../../../../chunks/4404.js","../../../../chunks/4632.js","../../../../chunks/4684.js","../../../../chunks/4739.js","../../../../chunks/4741.js","../../../../chunks/4746.js","../../../../chunks/4778.js","../../../../chunks/4780.js","../../../../chunks/4790.js","../../../../chunks/4803.js","../../../../chunks/507.js","../../../../chunks/5154.js","../../../../chunks/5206.js","../../../../chunks/5258.js","../../../../chunks/5433.js","../../../../chunks/5573.js","../../../../chunks/5592.js","../../../../chunks/5681.js","../../../../chunks/5852.js","../../../../chunks/5901.js","../../../../chunks/595.js","../../../../chunks/6053.js","../../../../chunks/6064.js","../../../../chunks/6103.js","../../../../chunks/6108.js","../../../../chunks/6182.js","../../../../chunks/6252.js","../../../../chunks/6311.js","../../../../chunks/6328.js","../../../../chunks/6844.js","../../../../chunks/6935.js","../../../../chunks/6936.js","../../../../chunks/6939.js","../../../../chunks/698.js","../../../../chunks/7016.js","../../../../chunks/7242.js","../../../../chunks/7250.js","../../../../chunks/7324.js","../../../../chunks/7341.js","../../../../chunks/7464.js","../../../../chunks/7669.js","../../../../chunks/7772.js","../../../../chunks/7774.js","../../../../chunks/7828.js","../../../../chunks/7965.js","../../../../chunks/8062.js","../../../../chunks/8255.js","../../../../chunks/8352.js","../../../../chunks/8469.js","../../../../chunks/8491.js","../../../../chunks/8520.js","../../../../chunks/8590.js","../../../../chunks/8895.js","../../../../chunks/8971.js","../../../../chunks/9413.js","../../../../chunks/9434.js","../../../../chunks/9489.js","../../../../chunks/9609.js","../../../../chunks/9614.js","../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.0.92-to-5.1.6-5.1.6-20260710-144934/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.10-to-5.1.12-5.1.12-20260710-182957/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.12-to-5.1.13-5.1.13-20260713-234535/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.6-to-5.1.9-5.1.9-20260710-165928/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.1.9-to-5.1.10-5.1.10-20260710-170922/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/jwt-secret","../../../../../../cli/.build-home/AppData/Roaming/bluerouter/machine-id","../../../../../../cli/.build-home/AppData/Roaming/nextjs-nodejs/Config/config.json","../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/pg-cloudflare/dist/empty.js","../../../../../../node_modules/pg-cloudflare/dist/index.js","../../../../../../node_modules/pg-cloudflare/package.json","../../../../../../node_modules/pg-connection-string/index.js","../../../../../../node_modules/pg-connection-string/package.json","../../../../../../node_modules/pg-int8/index.js","../../../../../../node_modules/pg-int8/package.json","../../../../../../node_modules/pg-pool/index.js","../../../../../../node_modules/pg-pool/package.json","../../../../../../node_modules/pg-protocol/dist/buffer-reader.js","../../../../../../node_modules/pg-protocol/dist/buffer-writer.js","../../../../../../node_modules/pg-protocol/dist/index.js","../../../../../../node_modules/pg-protocol/dist/messages.js","../../../../../../node_modules/pg-protocol/dist/parser.js","../../../../../../node_modules/pg-protocol/dist/serializer.js","../../../../../../node_modules/pg-protocol/package.json","../../../../../../node_modules/pg-types/index.js","../../../../../../node_modules/pg-types/lib/arrayParser.js","../../../../../../node_modules/pg-types/lib/binaryParsers.js","../../../../../../node_modules/pg-types/lib/builtins.js","../../../../../../node_modules/pg-types/lib/textParsers.js","../../../../../../node_modules/pg-types/package.json","../../../../../../node_modules/pg/esm/index.mjs","../../../../../../node_modules/pg/lib/client.js","../../../../../../node_modules/pg/lib/connection-parameters.js","../../../../../../node_modules/pg/lib/connection.js","../../../../../../node_modules/pg/lib/crypto/cert-signatures.js","../../../../../../node_modules/pg/lib/crypto/sasl.js","../../../../../../node_modules/pg/lib/crypto/utils.js","../../../../../../node_modules/pg/lib/defaults.js","../../../../../../node_modules/pg/lib/index.js","../../../../../../node_modules/pg/lib/native/client.js","../../../../../../node_modules/pg/lib/native/index.js","../../../../../../node_modules/pg/lib/native/query.js","../../../../../../node_modules/pg/lib/query.js","../../../../../../node_modules/pg/lib/result.js","../../../../../../node_modules/pg/lib/stream.js","../../../../../../node_modules/pg/lib/type-overrides.js","../../../../../../node_modules/pg/lib/utils.js","../../../../../../node_modules/pg/package.json","../../../../../../node_modules/pgpass/lib/helper.js","../../../../../../node_modules/pgpass/lib/index.js","../../../../../../node_modules/pgpass/package.json","../../../../../../node_modules/postgres-array/index.js","../../../../../../node_modules/postgres-array/package.json","../../../../../../node_modules/postgres-bytea/index.js","../../../../../../node_modules/postgres-bytea/package.json","../../../../../../node_modules/postgres-date/index.js","../../../../../../node_modules/postgres-date/package.json","../../../../../../node_modules/postgres-interval/index.js","../../../../../../node_modules/postgres-interval/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../node_modules/split2/index.js","../../../../../../node_modules/split2/package.json","../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../node_modules/sql.js/package.json","../../../../../../node_modules/xtend/mutable.js","../../../../../../node_modules/xtend/package.json","../../../../../../package.json","../../../../../../src/lib/db/adapters/betterSqliteAdapter.js","../../../../../../src/lib/db/adapters/bunSqliteAdapter.js","../../../../../../src/lib/db/adapters/nodeSqliteAdapter.js","../../../../../../src/lib/db/adapters/sqljsAdapter.js","../../../../../../src/lib/db/migrate.js","../../../../../../src/shared/utils/apiKey.js","../../../../../package.json","../../../../chunks/12.js","../../../../chunks/1220.js","../../../../chunks/1361.js","../../../../chunks/1817.js","../../../../chunks/1998.js","../../../../chunks/232.js","../../../../chunks/2338.js","../../../../chunks/241.js","../../../../chunks/2506.js","../../../../chunks/2650.js","../../../../chunks/2944.js","../../../../chunks/3104.js","../../../../chunks/3110.js","../../../../chunks/318.js","../../../../chunks/319.js","../../../../chunks/3593.js","../../../../chunks/3801.js","../../../../chunks/4013.js","../../../../chunks/402.js","../../../../chunks/4177.js","../../../../chunks/4306.js","../../../../chunks/436.js","../../../../chunks/4404.js","../../../../chunks/4632.js","../../../../chunks/4684.js","../../../../chunks/4739.js","../../../../chunks/4741.js","../../../../chunks/4746.js","../../../../chunks/4778.js","../../../../chunks/4780.js","../../../../chunks/4790.js","../../../../chunks/4803.js","../../../../chunks/507.js","../../../../chunks/5154.js","../../../../chunks/5206.js","../../../../chunks/5258.js","../../../../chunks/5433.js","../../../../chunks/5573.js","../../../../chunks/5592.js","../../../../chunks/5681.js","../../../../chunks/5852.js","../../../../chunks/5901.js","../../../../chunks/595.js","../../../../chunks/6053.js","../../../../chunks/6064.js","../../../../chunks/6103.js","../../../../chunks/6108.js","../../../../chunks/6182.js","../../../../chunks/6252.js","../../../../chunks/6311.js","../../../../chunks/6328.js","../../../../chunks/6844.js","../../../../chunks/6935.js","../../../../chunks/6936.js","../../../../chunks/6939.js","../../../../chunks/698.js","../../../../chunks/7016.js","../../../../chunks/7242.js","../../../../chunks/7250.js","../../../../chunks/7324.js","../../../../chunks/7341.js","../../../../chunks/7464.js","../../../../chunks/7669.js","../../../../chunks/7772.js","../../../../chunks/7774.js","../../../../chunks/7828.js","../../../../chunks/7965.js","../../../../chunks/8062.js","../../../../chunks/8255.js","../../../../chunks/8352.js","../../../../chunks/8469.js","../../../../chunks/8491.js","../../../../chunks/8520.js","../../../../chunks/8590.js","../../../../chunks/8895.js","../../../../chunks/8971.js","../../../../chunks/9413.js","../../../../chunks/9434.js","../../../../chunks/9489.js","../../../../chunks/9609.js","../../../../chunks/9614.js","../../../../webpack-runtime.js","route_client-reference-manifest.js"]}