@thangnm.nip/irouter 0.0.15 → 0.0.17

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 (540) hide show
  1. package/app/.next/BUILD_ID +1 -1
  2. package/app/.next/app-path-routes-manifest.json +4 -3
  3. package/app/.next/build-manifest.json +2 -2
  4. package/app/.next/prerender-manifest.json +3 -3
  5. package/app/.next/routes-manifest.json +8 -0
  6. package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  7. package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  8. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  9. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  10. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  11. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  12. package/app/.next/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  13. package/app/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  14. package/app/.next/server/app/(dashboard)/dashboard/employees/[keyId]/page.js +2 -2
  15. package/app/.next/server/app/(dashboard)/dashboard/employees/[keyId]/page_client-reference-manifest.js +1 -1
  16. package/app/.next/server/app/(dashboard)/dashboard/employees/page.js +3 -3
  17. package/app/.next/server/app/(dashboard)/dashboard/employees/page_client-reference-manifest.js +1 -1
  18. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +3 -3
  19. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  20. package/app/.next/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  21. package/app/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  22. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  23. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  24. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  25. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  26. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  27. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  28. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  29. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  30. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  31. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  32. package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  33. package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  34. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  35. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  36. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  37. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/_global-error/page.js +3 -3
  39. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  40. package/app/.next/server/app/_global-error.html +1 -1
  41. package/app/.next/server/app/_global-error.rsc +1 -1
  42. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  43. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  44. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  45. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  46. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  47. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  48. package/app/.next/server/app/_not-found/page.js +2 -2
  49. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  50. package/app/.next/server/app/_not-found.html +1 -1
  51. package/app/.next/server/app/_not-found.rsc +4 -4
  52. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  53. package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  54. package/app/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
  55. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  56. package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  57. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  58. package/app/.next/server/app/api/auth/login/route.js +1 -1
  59. package/app/.next/server/app/api/auth/logout/route.js +1 -1
  60. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  61. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
  62. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  63. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  64. package/app/.next/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  65. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +1 -1
  66. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  67. package/app/.next/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  68. package/app/.next/server/app/api/cloud/auth/route.js +1 -1
  69. package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
  70. package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
  71. package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
  72. package/app/.next/server/app/api/combos/[id]/route.js +1 -1
  73. package/app/.next/server/app/api/combos/route.js +1 -1
  74. package/app/.next/server/app/api/employees/[keyId]/stats/route.js +2 -2
  75. package/app/.next/server/app/api/employees/stats/route.js +2 -2
  76. package/app/.next/server/app/api/init/route.js +1 -1
  77. package/app/.next/server/app/api/keys/[id]/route.js +1 -1
  78. package/app/.next/server/app/api/keys/route.js +1 -1
  79. package/app/.next/server/app/api/locale/route.js +1 -1
  80. package/app/.next/server/app/api/models/alias/route.js +1 -1
  81. package/app/.next/server/app/api/models/availability/route.js +1 -1
  82. package/app/.next/server/app/api/models/route.js +1 -1
  83. package/app/.next/server/app/api/models/test/route.js +1 -1
  84. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  85. package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  86. package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
  87. package/app/.next/server/app/api/oauth/iflow/cookie/route.js +1 -1
  88. package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  89. package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
  90. package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  91. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  92. package/app/.next/server/app/api/pricing/route.js +1 -1
  93. package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
  94. package/app/.next/server/app/api/provider-nodes/route.js +1 -1
  95. package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
  96. package/app/.next/server/app/api/providers/[id]/models/route.js +1 -1
  97. package/app/.next/server/app/api/providers/[id]/route.js +1 -1
  98. package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
  99. package/app/.next/server/app/api/providers/[id]/test-models/route.js +1 -1
  100. package/app/.next/server/app/api/providers/client/route.js +1 -1
  101. package/app/.next/server/app/api/providers/route.js +1 -1
  102. package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
  103. package/app/.next/server/app/api/providers/validate/route.js +1 -1
  104. package/app/.next/server/app/api/proxy-pools/[id]/route.js +1 -1
  105. package/app/.next/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  106. package/app/.next/server/app/api/proxy-pools/route.js +1 -1
  107. package/app/.next/server/app/api/settings/database/route.js +1 -1
  108. package/app/.next/server/app/api/settings/proxy-test/route.js +1 -1
  109. package/app/.next/server/app/api/settings/require-login/route.js +1 -1
  110. package/app/.next/server/app/api/settings/route.js +1 -1
  111. package/app/.next/server/app/api/shutdown/route.js +1 -1
  112. package/app/.next/server/app/api/tags/route.js +1 -1
  113. package/app/.next/server/app/api/translator/console-logs/route.js +1 -1
  114. package/app/.next/server/app/api/translator/console-logs/stream/route.js +2 -2
  115. package/app/.next/server/app/api/translator/load/route.js +1 -1
  116. package/app/.next/server/app/api/translator/save/route.js +1 -1
  117. package/app/.next/server/app/api/translator/send/route.js +1 -1
  118. package/app/.next/server/app/api/translator/translate/route.js +1 -1
  119. package/app/.next/server/app/api/tunnel/disable/route.js +1 -1
  120. package/app/.next/server/app/api/tunnel/enable/route.js +1 -1
  121. package/app/.next/server/app/api/tunnel/status/route.js +1 -1
  122. package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
  123. package/app/.next/server/app/api/usage/chart/route.js +2 -2
  124. package/app/.next/server/app/api/usage/history/route.js +2 -2
  125. package/app/.next/server/app/api/usage/logs/route.js +2 -2
  126. package/app/.next/server/app/api/usage/providers/route.js +2 -2
  127. package/app/.next/server/app/api/usage/request-details/[id]/download/route.js +55 -0
  128. package/app/.next/server/app/api/usage/request-details/[id]/download/route.js.nft.json +1 -0
  129. package/app/.next/server/app/api/usage/request-details/[id]/download/route_client-reference-manifest.js +1 -0
  130. package/app/.next/server/app/api/usage/request-details/[id]/route.js +1 -1
  131. package/app/.next/server/app/api/usage/request-details/route.js +2 -2
  132. package/app/.next/server/app/api/usage/request-logs/route.js +3 -3
  133. package/app/.next/server/app/api/usage/stats/route.js +2 -2
  134. package/app/.next/server/app/api/usage/stream/route.js +3 -3
  135. package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
  136. package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
  137. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  138. package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
  139. package/app/.next/server/app/api/v1/messages/route.js +1 -1
  140. package/app/.next/server/app/api/v1/models/route.js +1 -1
  141. package/app/.next/server/app/api/v1/responses/route.js +1 -1
  142. package/app/.next/server/app/api/v1/route.js +1 -1
  143. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
  144. package/app/.next/server/app/api/v1beta/models/route.js +1 -1
  145. package/app/.next/server/app/api/v1internal/route.js +1 -1
  146. package/app/.next/server/app/api/version/route.js +1 -1
  147. package/app/.next/server/app/callback/page.js +2 -2
  148. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  149. package/app/.next/server/app/callback.html +1 -1
  150. package/app/.next/server/app/callback.rsc +4 -4
  151. package/app/.next/server/app/callback.segments/_full.segment.rsc +4 -4
  152. package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  153. package/app/.next/server/app/callback.segments/_index.segment.rsc +4 -4
  154. package/app/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
  155. package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  156. package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  157. package/app/.next/server/app/dashboard/basic-chat.html +1 -1
  158. package/app/.next/server/app/dashboard/basic-chat.rsc +6 -6
  159. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  160. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  161. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  162. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  163. package/app/.next/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  164. package/app/.next/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  165. package/app/.next/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  166. package/app/.next/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  167. package/app/.next/server/app/dashboard/cli-tools.html +1 -1
  168. package/app/.next/server/app/dashboard/cli-tools.rsc +6 -6
  169. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  170. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  171. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  172. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  173. package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  174. package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  175. package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  176. package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  177. package/app/.next/server/app/dashboard/combos.html +1 -1
  178. package/app/.next/server/app/dashboard/combos.rsc +6 -6
  179. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  180. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  181. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  182. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  183. package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  184. package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  185. package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  186. package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  187. package/app/.next/server/app/dashboard/employees.html +1 -1
  188. package/app/.next/server/app/dashboard/employees.rsc +6 -6
  189. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk/dashboard/employees/__PAGE__.segment.rsc +2 -2
  190. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk/dashboard/employees.segment.rsc +1 -1
  191. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  192. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  193. package/app/.next/server/app/dashboard/employees.segments/_full.segment.rsc +6 -6
  194. package/app/.next/server/app/dashboard/employees.segments/_head.segment.rsc +1 -1
  195. package/app/.next/server/app/dashboard/employees.segments/_index.segment.rsc +4 -4
  196. package/app/.next/server/app/dashboard/employees.segments/_tree.segment.rsc +2 -2
  197. package/app/.next/server/app/dashboard/endpoint.html +1 -1
  198. package/app/.next/server/app/dashboard/endpoint.rsc +6 -6
  199. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  200. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  201. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  202. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  203. package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  204. package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  205. package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  206. package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  207. package/app/.next/server/app/dashboard/mitm.html +1 -1
  208. package/app/.next/server/app/dashboard/mitm.rsc +6 -6
  209. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  210. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  211. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  212. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  213. package/app/.next/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  214. package/app/.next/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  215. package/app/.next/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  216. package/app/.next/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  217. package/app/.next/server/app/dashboard/profile.html +1 -1
  218. package/app/.next/server/app/dashboard/profile.rsc +6 -6
  219. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  220. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  221. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  222. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  223. package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  224. package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  225. package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  226. package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  227. package/app/.next/server/app/dashboard/providers/new.html +1 -1
  228. package/app/.next/server/app/dashboard/providers/new.rsc +6 -6
  229. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  230. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  231. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  232. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  233. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  234. package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  235. package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  236. package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  237. package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  238. package/app/.next/server/app/dashboard/providers.html +1 -1
  239. package/app/.next/server/app/dashboard/providers.rsc +6 -6
  240. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  241. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  242. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  243. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  244. package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  245. package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  246. package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  247. package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  248. package/app/.next/server/app/dashboard/proxy-pools.html +1 -1
  249. package/app/.next/server/app/dashboard/proxy-pools.rsc +6 -6
  250. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  251. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  252. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  253. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  254. package/app/.next/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  255. package/app/.next/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  256. package/app/.next/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  257. package/app/.next/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  258. package/app/.next/server/app/dashboard/settings/pricing/page.js +2 -2
  259. package/app/.next/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  260. package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
  261. package/app/.next/server/app/dashboard/settings/pricing.rsc +4 -4
  262. package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  263. package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  264. package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  265. package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  266. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  267. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  268. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  269. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  270. package/app/.next/server/app/dashboard/translator.html +1 -1
  271. package/app/.next/server/app/dashboard/translator.rsc +6 -6
  272. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  273. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  274. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  275. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  276. package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  277. package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  278. package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  279. package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  280. package/app/.next/server/app/dashboard/usage.html +1 -1
  281. package/app/.next/server/app/dashboard/usage.rsc +6 -6
  282. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  283. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  284. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  285. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  286. package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  287. package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  288. package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  289. package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  290. package/app/.next/server/app/dashboard.html +1 -1
  291. package/app/.next/server/app/dashboard.rsc +5 -5
  292. package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +1 -1
  293. package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  294. package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  295. package/app/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
  296. package/app/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
  297. package/app/.next/server/app/dashboard.segments/_index.segment.rsc +4 -4
  298. package/app/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  299. package/app/.next/server/app/favicon.ico/route.js +1 -1
  300. package/app/.next/server/app/index.html +1 -1
  301. package/app/.next/server/app/index.rsc +4 -4
  302. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  303. package/app/.next/server/app/index.segments/_full.segment.rsc +4 -4
  304. package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
  305. package/app/.next/server/app/index.segments/_index.segment.rsc +4 -4
  306. package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  307. package/app/.next/server/app/landing/page.js +2 -2
  308. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  309. package/app/.next/server/app/landing.html +1 -1
  310. package/app/.next/server/app/landing.rsc +4 -4
  311. package/app/.next/server/app/landing.segments/_full.segment.rsc +4 -4
  312. package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  313. package/app/.next/server/app/landing.segments/_index.segment.rsc +4 -4
  314. package/app/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
  315. package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  316. package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  317. package/app/.next/server/app/login/page.js +2 -2
  318. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  319. package/app/.next/server/app/login.html +1 -1
  320. package/app/.next/server/app/login.rsc +5 -5
  321. package/app/.next/server/app/login.segments/_full.segment.rsc +5 -5
  322. package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
  323. package/app/.next/server/app/login.segments/_index.segment.rsc +4 -4
  324. package/app/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  325. package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  326. package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
  327. package/app/.next/server/app/manifest.webmanifest/route.js +2 -2
  328. package/app/.next/server/app/page.js +2 -2
  329. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  330. package/app/.next/server/app-paths-manifest.json +4 -3
  331. package/app/.next/server/chunks/1424.js +1 -1
  332. package/app/.next/server/chunks/2664.js +1 -1
  333. package/app/.next/server/chunks/3093.js +1 -1
  334. package/app/.next/server/chunks/6828.js +1 -1
  335. package/app/.next/server/chunks/7774.js +4 -4
  336. package/app/.next/server/chunks/9609.js +1 -1
  337. package/app/.next/server/middleware-build-manifest.js +1 -1
  338. package/app/.next/server/middleware.js +2 -2
  339. package/app/.next/server/pages/404.html +1 -1
  340. package/app/.next/server/pages/500.html +1 -1
  341. package/app/.next/server/server-reference-manifest.js +1 -1
  342. package/app/.next/server/server-reference-manifest.json +1 -1
  343. package/app/.next/static/chunks/{1321-bfe1e017b24212e4.js → 1321-60e1aa92cc4ecddf.js} +1 -1
  344. package/app/.next/static/chunks/app/(dashboard)/dashboard/employees/[keyId]/page-a8dfa0076abced5f.js +1 -0
  345. package/app/.next/static/chunks/app/(dashboard)/dashboard/employees/{page-82eb0e27b836ec5d.js → page-d04ec4821a34b406.js} +2 -2
  346. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-604b484002105441.js +1 -0
  347. package/app/.next/static/chunks/app/_global-error/page-604b484002105441.js +1 -0
  348. package/app/.next/static/chunks/app/api/auth/login/route-604b484002105441.js +1 -0
  349. package/app/.next/static/chunks/app/api/auth/logout/route-604b484002105441.js +1 -0
  350. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-604b484002105441.js +1 -0
  351. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-604b484002105441.js +1 -0
  352. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-604b484002105441.js +1 -0
  353. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-604b484002105441.js +1 -0
  354. package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-604b484002105441.js +1 -0
  355. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-604b484002105441.js +1 -0
  356. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-604b484002105441.js +1 -0
  357. package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-604b484002105441.js +1 -0
  358. package/app/.next/static/chunks/app/api/cloud/auth/route-604b484002105441.js +1 -0
  359. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-604b484002105441.js +1 -0
  360. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-604b484002105441.js +1 -0
  361. package/app/.next/static/chunks/app/api/cloud/models/alias/route-604b484002105441.js +1 -0
  362. package/app/.next/static/chunks/app/api/combos/[id]/route-604b484002105441.js +1 -0
  363. package/app/.next/static/chunks/app/api/combos/route-604b484002105441.js +1 -0
  364. package/app/.next/static/chunks/app/api/employees/[keyId]/stats/route-604b484002105441.js +1 -0
  365. package/app/.next/static/chunks/app/api/employees/stats/route-604b484002105441.js +1 -0
  366. package/app/.next/static/chunks/app/api/init/route-604b484002105441.js +1 -0
  367. package/app/.next/static/chunks/app/api/keys/[id]/route-604b484002105441.js +1 -0
  368. package/app/.next/static/chunks/app/api/keys/route-604b484002105441.js +1 -0
  369. package/app/.next/static/chunks/app/api/locale/route-604b484002105441.js +1 -0
  370. package/app/.next/static/chunks/app/api/models/alias/route-604b484002105441.js +1 -0
  371. package/app/.next/static/chunks/app/api/models/availability/route-604b484002105441.js +1 -0
  372. package/app/.next/static/chunks/app/api/models/route-604b484002105441.js +1 -0
  373. package/app/.next/static/chunks/app/api/models/test/route-604b484002105441.js +1 -0
  374. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-604b484002105441.js +1 -0
  375. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-604b484002105441.js +1 -0
  376. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-604b484002105441.js +1 -0
  377. package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-604b484002105441.js +1 -0
  378. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-604b484002105441.js +1 -0
  379. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-604b484002105441.js +1 -0
  380. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-604b484002105441.js +1 -0
  381. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-604b484002105441.js +1 -0
  382. package/app/.next/static/chunks/app/api/pricing/route-604b484002105441.js +1 -0
  383. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-604b484002105441.js +1 -0
  384. package/app/.next/static/chunks/app/api/provider-nodes/route-604b484002105441.js +1 -0
  385. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-604b484002105441.js +1 -0
  386. package/app/.next/static/chunks/app/api/providers/[id]/models/route-604b484002105441.js +1 -0
  387. package/app/.next/static/chunks/app/api/providers/[id]/route-604b484002105441.js +1 -0
  388. package/app/.next/static/chunks/app/api/providers/[id]/test/route-604b484002105441.js +1 -0
  389. package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-604b484002105441.js +1 -0
  390. package/app/.next/static/chunks/app/api/providers/client/route-604b484002105441.js +1 -0
  391. package/app/.next/static/chunks/app/api/providers/route-604b484002105441.js +1 -0
  392. package/app/.next/static/chunks/app/api/providers/test-batch/route-604b484002105441.js +1 -0
  393. package/app/.next/static/chunks/app/api/providers/validate/route-604b484002105441.js +1 -0
  394. package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-604b484002105441.js +1 -0
  395. package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-604b484002105441.js +1 -0
  396. package/app/.next/static/chunks/app/api/proxy-pools/route-604b484002105441.js +1 -0
  397. package/app/.next/static/chunks/app/api/settings/database/route-604b484002105441.js +1 -0
  398. package/app/.next/static/chunks/app/api/settings/proxy-test/route-604b484002105441.js +1 -0
  399. package/app/.next/static/chunks/app/api/settings/require-login/route-604b484002105441.js +1 -0
  400. package/app/.next/static/chunks/app/api/settings/route-604b484002105441.js +1 -0
  401. package/app/.next/static/chunks/app/api/shutdown/route-604b484002105441.js +1 -0
  402. package/app/.next/static/chunks/app/api/tags/route-604b484002105441.js +1 -0
  403. package/app/.next/static/chunks/app/api/translator/console-logs/route-604b484002105441.js +1 -0
  404. package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-604b484002105441.js +1 -0
  405. package/app/.next/static/chunks/app/api/translator/load/route-604b484002105441.js +1 -0
  406. package/app/.next/static/chunks/app/api/translator/save/route-604b484002105441.js +1 -0
  407. package/app/.next/static/chunks/app/api/translator/send/route-604b484002105441.js +1 -0
  408. package/app/.next/static/chunks/app/api/translator/translate/route-604b484002105441.js +1 -0
  409. package/app/.next/static/chunks/app/api/tunnel/disable/route-604b484002105441.js +1 -0
  410. package/app/.next/static/chunks/app/api/tunnel/enable/route-604b484002105441.js +1 -0
  411. package/app/.next/static/chunks/app/api/tunnel/status/route-604b484002105441.js +1 -0
  412. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-604b484002105441.js +1 -0
  413. package/app/.next/static/chunks/app/api/usage/chart/route-604b484002105441.js +1 -0
  414. package/app/.next/static/chunks/app/api/usage/history/route-604b484002105441.js +1 -0
  415. package/app/.next/static/chunks/app/api/usage/logs/route-604b484002105441.js +1 -0
  416. package/app/.next/static/chunks/app/api/usage/providers/route-604b484002105441.js +1 -0
  417. package/app/.next/static/chunks/app/api/usage/request-details/[id]/download/route-604b484002105441.js +1 -0
  418. package/app/.next/static/chunks/app/api/usage/request-details/[id]/route-604b484002105441.js +1 -0
  419. package/app/.next/static/chunks/app/api/usage/request-details/route-604b484002105441.js +1 -0
  420. package/app/.next/static/chunks/app/api/usage/request-logs/route-604b484002105441.js +1 -0
  421. package/app/.next/static/chunks/app/api/usage/stats/route-604b484002105441.js +1 -0
  422. package/app/.next/static/chunks/app/api/usage/stream/route-604b484002105441.js +1 -0
  423. package/app/.next/static/chunks/app/api/v1/api/chat/route-604b484002105441.js +1 -0
  424. package/app/.next/static/chunks/app/api/v1/chat/completions/route-604b484002105441.js +1 -0
  425. package/app/.next/static/chunks/app/api/v1/embeddings/route-604b484002105441.js +1 -0
  426. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-604b484002105441.js +1 -0
  427. package/app/.next/static/chunks/app/api/v1/messages/route-604b484002105441.js +1 -0
  428. package/app/.next/static/chunks/app/api/v1/models/route-604b484002105441.js +1 -0
  429. package/app/.next/static/chunks/app/api/v1/responses/route-604b484002105441.js +1 -0
  430. package/app/.next/static/chunks/app/api/v1/route-604b484002105441.js +1 -0
  431. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-604b484002105441.js +1 -0
  432. package/app/.next/static/chunks/app/api/v1beta/models/route-604b484002105441.js +1 -0
  433. package/app/.next/static/chunks/app/api/v1internal/route-604b484002105441.js +1 -0
  434. package/app/.next/static/chunks/app/api/version/route-604b484002105441.js +1 -0
  435. package/app/.next/static/chunks/app/manifest.webmanifest/route-604b484002105441.js +1 -0
  436. package/app/.next/static/chunks/app/page-604b484002105441.js +1 -0
  437. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-604b484002105441.js +1 -0
  438. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-604b484002105441.js +1 -0
  439. package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-604b484002105441.js +1 -0
  440. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-604b484002105441.js +1 -0
  441. package/app/.next/static/css/{6bc797837e8d92cb.css → 61a8dca49b7d0d45.css} +1 -1
  442. package/app/package.json +1 -1
  443. package/package.json +1 -1
  444. package/app/.next/static/chunks/app/(dashboard)/dashboard/employees/[keyId]/page-64723c9c795f09e8.js +0 -1
  445. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-bc93a8fd4c287f29.js +0 -1
  446. package/app/.next/static/chunks/app/_global-error/page-bc93a8fd4c287f29.js +0 -1
  447. package/app/.next/static/chunks/app/api/auth/login/route-bc93a8fd4c287f29.js +0 -1
  448. package/app/.next/static/chunks/app/api/auth/logout/route-bc93a8fd4c287f29.js +0 -1
  449. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-bc93a8fd4c287f29.js +0 -1
  450. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-bc93a8fd4c287f29.js +0 -1
  451. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-bc93a8fd4c287f29.js +0 -1
  452. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-bc93a8fd4c287f29.js +0 -1
  453. package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-bc93a8fd4c287f29.js +0 -1
  454. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-bc93a8fd4c287f29.js +0 -1
  455. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-bc93a8fd4c287f29.js +0 -1
  456. package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-bc93a8fd4c287f29.js +0 -1
  457. package/app/.next/static/chunks/app/api/cloud/auth/route-bc93a8fd4c287f29.js +0 -1
  458. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-bc93a8fd4c287f29.js +0 -1
  459. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-bc93a8fd4c287f29.js +0 -1
  460. package/app/.next/static/chunks/app/api/cloud/models/alias/route-bc93a8fd4c287f29.js +0 -1
  461. package/app/.next/static/chunks/app/api/combos/[id]/route-bc93a8fd4c287f29.js +0 -1
  462. package/app/.next/static/chunks/app/api/combos/route-bc93a8fd4c287f29.js +0 -1
  463. package/app/.next/static/chunks/app/api/employees/[keyId]/stats/route-bc93a8fd4c287f29.js +0 -1
  464. package/app/.next/static/chunks/app/api/employees/stats/route-bc93a8fd4c287f29.js +0 -1
  465. package/app/.next/static/chunks/app/api/init/route-bc93a8fd4c287f29.js +0 -1
  466. package/app/.next/static/chunks/app/api/keys/[id]/route-bc93a8fd4c287f29.js +0 -1
  467. package/app/.next/static/chunks/app/api/keys/route-bc93a8fd4c287f29.js +0 -1
  468. package/app/.next/static/chunks/app/api/locale/route-bc93a8fd4c287f29.js +0 -1
  469. package/app/.next/static/chunks/app/api/models/alias/route-bc93a8fd4c287f29.js +0 -1
  470. package/app/.next/static/chunks/app/api/models/availability/route-bc93a8fd4c287f29.js +0 -1
  471. package/app/.next/static/chunks/app/api/models/route-bc93a8fd4c287f29.js +0 -1
  472. package/app/.next/static/chunks/app/api/models/test/route-bc93a8fd4c287f29.js +0 -1
  473. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-bc93a8fd4c287f29.js +0 -1
  474. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-bc93a8fd4c287f29.js +0 -1
  475. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-bc93a8fd4c287f29.js +0 -1
  476. package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-bc93a8fd4c287f29.js +0 -1
  477. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-bc93a8fd4c287f29.js +0 -1
  478. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-bc93a8fd4c287f29.js +0 -1
  479. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-bc93a8fd4c287f29.js +0 -1
  480. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-bc93a8fd4c287f29.js +0 -1
  481. package/app/.next/static/chunks/app/api/pricing/route-bc93a8fd4c287f29.js +0 -1
  482. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-bc93a8fd4c287f29.js +0 -1
  483. package/app/.next/static/chunks/app/api/provider-nodes/route-bc93a8fd4c287f29.js +0 -1
  484. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-bc93a8fd4c287f29.js +0 -1
  485. package/app/.next/static/chunks/app/api/providers/[id]/models/route-bc93a8fd4c287f29.js +0 -1
  486. package/app/.next/static/chunks/app/api/providers/[id]/route-bc93a8fd4c287f29.js +0 -1
  487. package/app/.next/static/chunks/app/api/providers/[id]/test/route-bc93a8fd4c287f29.js +0 -1
  488. package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-bc93a8fd4c287f29.js +0 -1
  489. package/app/.next/static/chunks/app/api/providers/client/route-bc93a8fd4c287f29.js +0 -1
  490. package/app/.next/static/chunks/app/api/providers/route-bc93a8fd4c287f29.js +0 -1
  491. package/app/.next/static/chunks/app/api/providers/test-batch/route-bc93a8fd4c287f29.js +0 -1
  492. package/app/.next/static/chunks/app/api/providers/validate/route-bc93a8fd4c287f29.js +0 -1
  493. package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-bc93a8fd4c287f29.js +0 -1
  494. package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-bc93a8fd4c287f29.js +0 -1
  495. package/app/.next/static/chunks/app/api/proxy-pools/route-bc93a8fd4c287f29.js +0 -1
  496. package/app/.next/static/chunks/app/api/settings/database/route-bc93a8fd4c287f29.js +0 -1
  497. package/app/.next/static/chunks/app/api/settings/proxy-test/route-bc93a8fd4c287f29.js +0 -1
  498. package/app/.next/static/chunks/app/api/settings/require-login/route-bc93a8fd4c287f29.js +0 -1
  499. package/app/.next/static/chunks/app/api/settings/route-bc93a8fd4c287f29.js +0 -1
  500. package/app/.next/static/chunks/app/api/shutdown/route-bc93a8fd4c287f29.js +0 -1
  501. package/app/.next/static/chunks/app/api/tags/route-bc93a8fd4c287f29.js +0 -1
  502. package/app/.next/static/chunks/app/api/translator/console-logs/route-bc93a8fd4c287f29.js +0 -1
  503. package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-bc93a8fd4c287f29.js +0 -1
  504. package/app/.next/static/chunks/app/api/translator/load/route-bc93a8fd4c287f29.js +0 -1
  505. package/app/.next/static/chunks/app/api/translator/save/route-bc93a8fd4c287f29.js +0 -1
  506. package/app/.next/static/chunks/app/api/translator/send/route-bc93a8fd4c287f29.js +0 -1
  507. package/app/.next/static/chunks/app/api/translator/translate/route-bc93a8fd4c287f29.js +0 -1
  508. package/app/.next/static/chunks/app/api/tunnel/disable/route-bc93a8fd4c287f29.js +0 -1
  509. package/app/.next/static/chunks/app/api/tunnel/enable/route-bc93a8fd4c287f29.js +0 -1
  510. package/app/.next/static/chunks/app/api/tunnel/status/route-bc93a8fd4c287f29.js +0 -1
  511. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-bc93a8fd4c287f29.js +0 -1
  512. package/app/.next/static/chunks/app/api/usage/chart/route-bc93a8fd4c287f29.js +0 -1
  513. package/app/.next/static/chunks/app/api/usage/history/route-bc93a8fd4c287f29.js +0 -1
  514. package/app/.next/static/chunks/app/api/usage/logs/route-bc93a8fd4c287f29.js +0 -1
  515. package/app/.next/static/chunks/app/api/usage/providers/route-bc93a8fd4c287f29.js +0 -1
  516. package/app/.next/static/chunks/app/api/usage/request-details/[id]/route-bc93a8fd4c287f29.js +0 -1
  517. package/app/.next/static/chunks/app/api/usage/request-details/route-bc93a8fd4c287f29.js +0 -1
  518. package/app/.next/static/chunks/app/api/usage/request-logs/route-bc93a8fd4c287f29.js +0 -1
  519. package/app/.next/static/chunks/app/api/usage/stats/route-bc93a8fd4c287f29.js +0 -1
  520. package/app/.next/static/chunks/app/api/usage/stream/route-bc93a8fd4c287f29.js +0 -1
  521. package/app/.next/static/chunks/app/api/v1/api/chat/route-bc93a8fd4c287f29.js +0 -1
  522. package/app/.next/static/chunks/app/api/v1/chat/completions/route-bc93a8fd4c287f29.js +0 -1
  523. package/app/.next/static/chunks/app/api/v1/embeddings/route-bc93a8fd4c287f29.js +0 -1
  524. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-bc93a8fd4c287f29.js +0 -1
  525. package/app/.next/static/chunks/app/api/v1/messages/route-bc93a8fd4c287f29.js +0 -1
  526. package/app/.next/static/chunks/app/api/v1/models/route-bc93a8fd4c287f29.js +0 -1
  527. package/app/.next/static/chunks/app/api/v1/responses/route-bc93a8fd4c287f29.js +0 -1
  528. package/app/.next/static/chunks/app/api/v1/route-bc93a8fd4c287f29.js +0 -1
  529. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-bc93a8fd4c287f29.js +0 -1
  530. package/app/.next/static/chunks/app/api/v1beta/models/route-bc93a8fd4c287f29.js +0 -1
  531. package/app/.next/static/chunks/app/api/v1internal/route-bc93a8fd4c287f29.js +0 -1
  532. package/app/.next/static/chunks/app/api/version/route-bc93a8fd4c287f29.js +0 -1
  533. package/app/.next/static/chunks/app/manifest.webmanifest/route-bc93a8fd4c287f29.js +0 -1
  534. package/app/.next/static/chunks/app/page-bc93a8fd4c287f29.js +0 -1
  535. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-bc93a8fd4c287f29.js +0 -1
  536. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-bc93a8fd4c287f29.js +0 -1
  537. package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-bc93a8fd4c287f29.js +0 -1
  538. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-bc93a8fd4c287f29.js +0 -1
  539. /package/app/.next/static/{kmNkIwW2GX8scIWQJLsGe → NE40wwY-97u2w_r9iMzIM}/_buildManifest.js +0 -0
  540. /package/app/.next/static/{kmNkIwW2GX8scIWQJLsGe → NE40wwY-97u2w_r9iMzIM}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=3038,a.ids=[118,336,3038],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46509:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>z,dynamic:()=>y});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(76072),x=c(89718);let y="force-dynamic";async function z(a){try{let{searchParams:b}=new URL(a.url),d=b.get("apiKey");if(!d){let a=await (0,w.getUsageStats)();return v.NextResponse.json(a)}let e=parseInt(b.get("page"))||1,f=parseInt(b.get("pageSize"))||20,g=b.get("provider"),h=b.get("startDate"),i=b.get("endDate"),j=await (0,x.getApiKeyById)(d);if(!j)return v.NextResponse.json({error:"API key not found"},{status:404});let{getUsageDb:k}=await Promise.resolve().then(c.bind(c,76072)),l=[...(await k()).data.history||[]];if(l=l.filter(a=>a.apiKey===j.key),g&&(l=l.filter(a=>a.provider===g)),h){let a=new Date(h).getTime();l=l.filter(b=>new Date(b.timestamp).getTime()>=a)}if(i){let a=new Date(i).getTime();l=l.filter(b=>new Date(b.timestamp).getTime()<=a)}l.sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp));let m=l.length,n=Math.ceil(m/f),o=l.slice((e-1)*f,e*f).map(a=>({id:a.connectionId||a.timestamp,detailId:a.connectionId||null,timestamp:a.timestamp,model:a.model,provider:a.provider,promptTokens:a.tokens?.prompt_tokens||0,completionTokens:a.tokens?.completion_tokens||0,tokens:a.tokens||{},cost:a.cost||0,status:a.status||"success",connectionId:a.connectionId,endpoint:a.endpoint}));return v.NextResponse.json({details:o,pagination:{page:e,pageSize:f,totalItems:m,totalPages:n,hasNext:e<n,hasPrev:e>1}})}catch(a){return console.error("[API] Failed to get usage history:",a),v.NextResponse.json({error:"Failed to fetch usage history"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/history/route",pathname:"/api/usage/history",filename:"route",bundlePath:"app/api/usage/history/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/history/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/history/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.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 A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,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"),y&&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 A.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}}},48161:a=>{"use strict";a.exports=require("node:os")},50122:(a,b,c)=>{"use strict";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()}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
1
+ (()=>{var a={};a.id=3038,a.ids=[118,336,3038],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},21042:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>z,dynamic:()=>y});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(76072),x=c(89718);let y="force-dynamic";async function z(a){try{let{searchParams:b}=new URL(a.url),d=b.get("apiKey");if(!d){let a=await (0,w.getUsageStats)();return v.NextResponse.json(a)}let e=parseInt(b.get("page"))||1,f=parseInt(b.get("pageSize"))||20,g=b.get("provider"),h=b.get("startDate"),i=b.get("endDate"),j=await (0,x.getApiKeyById)(d);if(!j)return v.NextResponse.json({error:"API key not found"},{status:404});let{getUsageDb:k}=await Promise.resolve().then(c.bind(c,76072)),l=[...(await k()).data.history||[]];if(l=l.filter(a=>a.apiKey===j.key),g&&(l=l.filter(a=>a.provider===g)),h){let a=new Date(h).getTime();l=l.filter(b=>new Date(b.timestamp).getTime()>=a)}if(i){let a=new Date(i).getTime();l=l.filter(b=>new Date(b.timestamp).getTime()<=a)}l.sort((a,b)=>new Date(b.timestamp)-new Date(a.timestamp));let m=l.length,n=Math.ceil(m/f),o=l.slice((e-1)*f,e*f).map(a=>({id:a.connectionId||a.timestamp,detailId:a.connectionId||null,timestamp:a.timestamp,model:a.model,provider:a.provider,promptTokens:a.tokens?.prompt_tokens||0,completionTokens:a.tokens?.completion_tokens||0,tokens:a.tokens||{},cost:a.cost||0,status:a.status||"success",connectionId:a.connectionId,endpoint:a.endpoint}));return v.NextResponse.json({details:o,pagination:{page:e,pageSize:f,totalItems:m,totalPages:n,hasNext:e<n,hasPrev:e>1}})}catch(a){return console.error("[API] Failed to get usage history:",a),v.NextResponse.json({error:"Failed to fetch usage history"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/history/route",pathname:"/api/usage/history",filename:"route",bundlePath:"app/api/usage/history/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/history/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/history/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.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 A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,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"),y&&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 A.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}}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},50122:(a,b,c)=>{"use strict";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()}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
2
2
  -- usage_history -----------------------------------------------------------
3
3
  CREATE TABLE IF NOT EXISTS usage_history (
4
4
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -65,4 +65,4 @@ CREATE TABLE IF NOT EXISTS meta (
65
65
  latency, tokens, cost
66
66
  FROM request_details ${g}
67
67
  ORDER BY timestamp DESC
68
- LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},94755:(a,b,c)=>{"use strict";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)}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,9718,6072],()=>b(b.s=46509));module.exports=c})();
68
+ LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},94755:(a,b,c)=>{"use strict";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)}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,9718,6072],()=>b(b.s=21042));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=8207,a.ids=[336,8207],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64039:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x});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(76072);async function x(){try{let a=await (0,w.getRecentLogs)(200);return v.NextResponse.json(a)}catch(a){return console.error("Error fetching logs:",a),v.NextResponse.json({error:"Failed to fetch logs"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/logs/route",pathname:"/api/usage/logs",filename:"route",bundlePath:"app/api/usage/logs/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/logs/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/logs/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
1
+ (()=>{var a={};a.id=8207,a.ids=[336,8207],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12060:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x});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(76072);async function x(){try{let a=await (0,w.getRecentLogs)(200);return v.NextResponse.json(a)}catch(a){return console.error("Error fetching logs:",a),v.NextResponse.json({error:"Failed to fetch logs"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/logs/route",pathname:"/api/usage/logs",filename:"route",bundlePath:"app/api/usage/logs/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/logs/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/logs/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
2
2
  -- usage_history -----------------------------------------------------------
3
3
  CREATE TABLE IF NOT EXISTS usage_history (
4
4
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -65,4 +65,4 @@ CREATE TABLE IF NOT EXISTS meta (
65
65
  latency, tokens, cost
66
66
  FROM request_details ${g}
67
67
  ORDER BY timestamp DESC
68
- LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,6072],()=>b(b.s=64039));module.exports=c})();
68
+ LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,6072],()=>b(b.s=12060));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=1088,a.ids=[118,1088],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},50122:(a,b,c)=>{"use strict";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()}},50182:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>z});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(82941),x=c(89718),y=c(75681);async function z(){try{let a=[];w.m1||(a=(0,w.XA)().prepare("SELECT DISTINCT provider FROM request_details WHERE provider IS NOT NULL ORDER BY provider").all().map(a=>a.provider));let b=await (0,x.getProviderNodes)(),c={};for(let a of b)c[a.id]=a.name;let d=a.map(a=>{let b=a;if(c[a])b=c[a];else{let c=(0,y.zt)(a)||y.Q2[a];c?.name&&(b=c.name)}return{id:a,name:b}});return v.NextResponse.json({providers:d})}catch(a){return console.error("[API] Failed to get providers:",a),v.NextResponse.json({error:"Failed to fetch providers"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/providers/route",pathname:"/api/usage/providers",filename:"route",bundlePath:"app/api/usage/providers/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/providers/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/providers/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.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 A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,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"),y&&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 A.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}}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},75681:(a,b,c)=>{"use strict";c.d(b,{DI:()=>h,IS:()=>d,JH:()=>g,Q2:()=>k,fg:()=>f,gb:()=>j,mq:()=>i,rs:()=>m,wG:()=>n,zN:()=>e,zt:()=>l});let d={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},e={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#079A8B"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},f={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#079A8B",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"}},g="openai-compatible-",h="anthropic-compatible-";function i(a){return"string"==typeof a&&a.startsWith(g)}function j(a){return"string"==typeof a&&a.startsWith(h)}let k={...d,...e,...f};function l(a){for(let b of Object.values(k))if(b.alias===a||b.id===a)return b;return null}function m(a){let b=l(a);return b?.id||a}function n(a){let b=k[a];return b?.alias||a}Object.values(k).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(k).reduce((a,b)=>(a[b.id]=b.alias,a),{})},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
1
+ (()=>{var a={};a.id=1088,a.ids=[118,1088],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},11259:(a,b,c)=>{"use strict";c.d(b,{Pv:()=>k}),c(73024);var d=c(51455),e=c(76760),f=c(73136);async function g(a,b,c){for(let d=0;d<b;d++)try{return await a()}catch(a){if(d<b-1)await new Promise(a=>setTimeout(a,c));else throw a}}class h{#a;#b;#c=!1;#d=null;#e=null;#f=null;#g=null;#h(a){return this.#g=a,this.#f||=new Promise((a,b)=>{this.#e=[a,b]}),new Promise((a,b)=>{this.#f?.then(a).catch(b)})}async #i(a){this.#c=!0;try{await (0,d.writeFile)(this.#b,a,"utf-8"),await g(async()=>{await (0,d.rename)(this.#b,this.#a)},10,100),this.#d?.[0]()}catch(a){throw a instanceof Error&&this.#d?.[1](a),a}finally{if(this.#c=!1,this.#d=this.#e,this.#e=this.#f=null,null!==this.#g){let a=this.#g;this.#g=null,await this.write(a)}}}constructor(a){this.#a=a,this.#b=function(a){let b=a instanceof URL?(0,f.fileURLToPath)(a):a.toString();return(0,e.join)((0,e.dirname)(b),`.${(0,e.basename)(b)}.tmp`)}(a)}async write(a){return this.#c?this.#h(a):this.#i(a)}}class i{#a;#j;constructor(a){this.#a=a,this.#j=new h(a)}async read(){let a;try{a=await (0,d.readFile)(this.#a,"utf-8")}catch(a){if("ENOENT"===a.code)return null;throw a}return a}write(a){return this.#j.write(a)}}class j{#k;#l;#m;constructor(a,{parse:b,stringify:c}){this.#k=new i(a),this.#l=b,this.#m=c}async read(){let a=await this.#k.read();return null===a?null:this.#l(a)}write(a){return this.#k.write(this.#m(a))}}class k extends j{constructor(a){super(a,{parse:JSON.parse,stringify:a=>JSON.stringify(a,null,2)})}}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},50122:(a,b,c)=>{"use strict";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()}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},56212:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>z});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(82941),x=c(89718),y=c(75681);async function z(){try{let a=[];w.m1||(a=(0,w.XA)().prepare("SELECT DISTINCT provider FROM request_details WHERE provider IS NOT NULL ORDER BY provider").all().map(a=>a.provider));let b=await (0,x.getProviderNodes)(),c={};for(let a of b)c[a.id]=a.name;let d=a.map(a=>{let b=a;if(c[a])b=c[a];else{let c=(0,y.zt)(a)||y.Q2[a];c?.name&&(b=c.name)}return{id:a,name:b}});return v.NextResponse.json({providers:d})}catch(a){return console.error("[API] Failed to get providers:",a),v.NextResponse.json({error:"Failed to fetch providers"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/providers/route",pathname:"/api/usage/providers",filename:"route",bundlePath:"app/api/usage/providers/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/providers/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/providers/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.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 A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,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"),y&&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 A.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},75681:(a,b,c)=>{"use strict";c.d(b,{DI:()=>h,IS:()=>d,JH:()=>g,Q2:()=>k,fg:()=>f,gb:()=>j,mq:()=>i,rs:()=>m,wG:()=>n,zN:()=>e,zt:()=>l});let d={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},e={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#079A8B"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},f={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},"glm-cn":{id:"glm-cn",alias:"glm-cn",name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},alicode:{id:"alicode",alias:"alicode",name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},"alicode-intl":{id:"alicode-intl",alias:"alicode-intl",name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#079A8B",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"},chutes:{id:"chutes",alias:"ch",name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai"},ollama:{id:"ollama",alias:"ollama",name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},"ollama-local":{id:"ollama-local",alias:"ollama-local",name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},vertex:{id:"vertex",alias:"vx",name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai"},"vertex-partner":{id:"vertex-partner",alias:"vxp",name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models"}},g="openai-compatible-",h="anthropic-compatible-";function i(a){return"string"==typeof a&&a.startsWith(g)}function j(a){return"string"==typeof a&&a.startsWith(h)}let k={...d,...e,...f};function l(a){for(let b of Object.values(k))if(b.alias===a||b.id===a)return b;return null}function m(a){let b=l(a);return b?.id||a}function n(a){let b=k[a];return b?.alias||a}Object.values(k).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(k).reduce((a,b)=>(a[b.id]=b.alias,a),{})},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
2
2
  -- usage_history -----------------------------------------------------------
3
3
  CREATE TABLE IF NOT EXISTS usage_history (
4
4
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -52,4 +52,4 @@ CREATE TABLE IF NOT EXISTS meta (
52
52
  key TEXT PRIMARY KEY,
53
53
  value TEXT
54
54
  );
55
- `,p=null;function q(){if(l)throw Error("[sqliteDb] SQLite is not available in Cloudflare Workers");return p||((p=new(k())(n)).pragma("journal_mode = WAL"),p.pragma("synchronous = NORMAL"),p.pragma("cache_size = -8000"),p.pragma("temp_store = MEMORY"),p.pragma("busy_timeout = 5000"),p.exec(o),console.log(`[sqliteDb] Opened database: ${n}`)),p}},82996:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});class d{adapter;data;constructor(a,b){!function(a,b){if(void 0===a)throw Error("lowdb: missing adapter");if(void 0===b)throw Error("lowdb: missing default data")}(a,b),this.adapter=a,this.data=b}async read(){let a=await this.adapter.read();a&&(this.data=a)}async write(){this.data&&await this.adapter.write(this.data)}async update(a){a(this.data),await this.write()}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},94755:(a,b,c)=>{"use strict";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)}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,9718],()=>b(b.s=50182));module.exports=c})();
55
+ `,p=null;function q(){if(l)throw Error("[sqliteDb] SQLite is not available in Cloudflare Workers");return p||((p=new(k())(n)).pragma("journal_mode = WAL"),p.pragma("synchronous = NORMAL"),p.pragma("cache_size = -8000"),p.pragma("temp_store = MEMORY"),p.pragma("busy_timeout = 5000"),p.exec(o),console.log(`[sqliteDb] Opened database: ${n}`)),p}},82996:(a,b,c)=>{"use strict";c.d(b,{t:()=>d});class d{adapter;data;constructor(a,b){!function(a,b){if(void 0===a)throw Error("lowdb: missing adapter");if(void 0===b)throw Error("lowdb: missing default data")}(a,b),this.adapter=a,this.data=b}async read(){let a=await this.adapter.read();a&&(this.data=a)}async write(){this.data&&await this.adapter.write(this.data)}async update(a){a(this.data),await this.write()}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},94755:(a,b,c)=>{"use strict";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)}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,9718],()=>b(b.s=56212));module.exports=c})();
@@ -0,0 +1,55 @@
1
+ (()=>{var a={};a.id=1817,a.ids=[1817],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51141:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>z,dynamic:()=>x});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(82941);let x="force-dynamic",y=["request","provider_request","provider_response","response"];async function z(a,{params:b}){try{let{id:c}=await b,{searchParams:d}=new URL(a.url),e=d.get("field");if(!c||!e||!y.includes(e))return v.NextResponse.json({error:`Invalid field. Allowed: ${y.join(", ")}`},{status:400});if(w.m1)return v.NextResponse.json({error:"Not available"},{status:404});let f=(0,w.XA)().prepare(`SELECT ${e} FROM request_details WHERE id = ?`).get(c);if(!f||!f[e])return v.NextResponse.json({error:"Content not found"},{status:404});let g=f[e],h=`${e}_${c.substring(0,20)}.json`,i=g;try{let a=JSON.parse(g);i=JSON.stringify(a,null,2)}catch{}return new Response(i,{headers:{"Content-Type":"application/json","Content-Disposition":`attachment; filename="${h}"`}})}catch(a){return console.error("[API] Failed to download request detail field:",a),v.NextResponse.json({error:"Failed to download"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-details/[id]/download/route",pathname:"/api/usage/request-details/[id]/download",filename:"route",bundlePath:"app/api/usage/request-details/[id]/download/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-details/[id]/download/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-details/[id]/download/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.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 A.getIncrementalCache(a,w,z,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:z.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,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"),y&&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 A.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
2
+ -- usage_history -----------------------------------------------------------
3
+ CREATE TABLE IF NOT EXISTS usage_history (
4
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
5
+ provider TEXT,
6
+ model TEXT,
7
+ connection_id TEXT,
8
+ api_key TEXT,
9
+ endpoint TEXT,
10
+ prompt_tokens INTEGER DEFAULT 0,
11
+ completion_tokens INTEGER DEFAULT 0,
12
+ cached_tokens INTEGER DEFAULT 0,
13
+ reasoning_tokens INTEGER DEFAULT 0,
14
+ cache_creation_tokens INTEGER DEFAULT 0,
15
+ cost REAL DEFAULT 0,
16
+ status TEXT DEFAULT 'ok',
17
+ timestamp TEXT NOT NULL
18
+ );
19
+
20
+ CREATE INDEX IF NOT EXISTS idx_usage_timestamp ON usage_history(timestamp);
21
+ CREATE INDEX IF NOT EXISTS idx_usage_provider ON usage_history(provider);
22
+ CREATE INDEX IF NOT EXISTS idx_usage_model ON usage_history(model);
23
+ CREATE INDEX IF NOT EXISTS idx_usage_api_key ON usage_history(api_key);
24
+ CREATE INDEX IF NOT EXISTS idx_usage_connection_id ON usage_history(connection_id);
25
+
26
+ -- request_details ---------------------------------------------------------
27
+ CREATE TABLE IF NOT EXISTS request_details (
28
+ id TEXT PRIMARY KEY,
29
+ provider TEXT,
30
+ model TEXT,
31
+ connection_id TEXT,
32
+ api_key TEXT,
33
+ status TEXT,
34
+ timestamp TEXT NOT NULL,
35
+ latency TEXT, -- JSON
36
+ tokens TEXT, -- JSON
37
+ request TEXT, -- JSON (may be truncated)
38
+ provider_request TEXT, -- JSON
39
+ provider_response TEXT, -- JSON
40
+ response TEXT, -- JSON (may be truncated)
41
+ cost REAL DEFAULT 0
42
+ );
43
+
44
+ CREATE INDEX IF NOT EXISTS idx_details_timestamp ON request_details(timestamp);
45
+ CREATE INDEX IF NOT EXISTS idx_details_provider ON request_details(provider);
46
+ CREATE INDEX IF NOT EXISTS idx_details_model ON request_details(model);
47
+ CREATE INDEX IF NOT EXISTS idx_details_status ON request_details(status);
48
+ CREATE INDEX IF NOT EXISTS idx_details_api_key ON request_details(api_key);
49
+
50
+ -- meta (tracks migration state, version, etc.) ---------------------------
51
+ CREATE TABLE IF NOT EXISTS meta (
52
+ key TEXT PRIMARY KEY,
53
+ value TEXT
54
+ );
55
+ `,p=null;function q(){if(l)throw Error("[sqliteDb] SQLite is not available in Cloudflare Workers");return p||((p=new(k())(n)).pragma("journal_mode = WAL"),p.pragma("synchronous = NORMAL"),p.pragma("cache_size = -8000"),p.pragma("temp_store = MEMORY"),p.pragma("busy_timeout = 5000"),p.exec(o),console.log(`[sqliteDb] Opened database: ${n}`)),p}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},96487:()=>{}};var b=require("../../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=51141));module.exports=c})();
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../../../../../../../../../../../../.9router/bin/cloudflared","../../../../../../../../../../../../../.9router/db.json","../../../../../../../../../../../../../.9router/irouter.db","../../../../../../../../../../../../../.9router/irouter.db-shm","../../../../../../../../../../../../../.9router/irouter.db-wal","../../../../../../../../../../../../../.9router/log.txt","../../../../../../../../../../../../../.9router/mitm/rootCA.crt","../../../../../../../../../../../../../.9router/mitm/rootCA.key","../../../../../../../../../../../../../.9router/request-details.json.bak","../../../../../../../../../../../../../.9router/usage.json.bak","../../../../../../../../../../../../../package.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/react/cjs/react.development.js","../../../../../../../../node_modules/react/cjs/react.production.js","../../../../../../../../node_modules/react/index.js","../../../../../../../../node_modules/react/package.json","../../../../../../../../package.json","../../../../../../../package.json","../../../../../../chunks/1813.js","../../../../../../chunks/4741.js","../../../../../../webpack-runtime.js","route_client-reference-manifest.js"]}
@@ -0,0 +1 @@
1
+ globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/usage/request-details/[id]/download/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-details/[id]/download/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
@@ -1 +1 @@
1
- (()=>{var a={};a.id=6106,a.ids=[6106],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},18851:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x,dynamic:()=>w});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);let w="force-dynamic";async function x(a,{params:b}){try{let{id:d}=await b,{searchParams:e}=new URL(a.url),f=e.get("model"),g=e.get("timestamp");if(!d)return v.NextResponse.json({error:"ID is required"},{status:400});let{getRequestDetailById:h,getRequestDetails:i}=await c.e(336).then(c.bind(c,90336)),j=await h(d);if(!j&&g){let a=new Date(g).getTime(),b=await i({pageSize:100}),c=(b?.details||[]).filter(b=>{let c=new Date(b.timestamp).getTime(),d=Math.abs(c-a),e=!f||b.model===f;return d<5e3&&e});c.length>0&&(c.sort((b,c)=>{let d=Math.abs(new Date(b.timestamp).getTime()-a),e=Math.abs(new Date(c.timestamp).getTime()-a);return d-e}),j=c[0])}if(!j){let a={connectionId:d,pageSize:10};f&&(a.model=f);let b=await i(a);j=b?.details?.[0]||null}if(!j)return v.NextResponse.json({error:"Request detail not found"},{status:404});return v.NextResponse.json(j)}catch(a){return console.error("[API] Failed to get request detail:",a),v.NextResponse.json({error:"Failed to fetch request detail"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-details/[id]/route",pathname:"/api/usage/request-details/[id]",filename:"route",bundlePath:"app/api/usage/request-details/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-details/[id]/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-details/[id]/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=18851));module.exports=c})();
1
+ (()=>{var a={};a.id=6106,a.ids=[6106],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},20248:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x,dynamic:()=>w});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);let w="force-dynamic";async function x(a,{params:b}){try{let{id:d}=await b,{searchParams:e}=new URL(a.url),f=e.get("model"),g=e.get("timestamp");if(!d)return v.NextResponse.json({error:"ID is required"},{status:400});let{getRequestDetailById:h,getRequestDetails:i}=await c.e(336).then(c.bind(c,90336)),j=await h(d);if(!j&&g){let a=new Date(g).getTime(),b=await i({pageSize:100}),c=(b?.details||[]).filter(b=>{let c=new Date(b.timestamp).getTime(),d=Math.abs(c-a),e=!f||b.model===f;return d<5e3&&e});c.length>0&&(c.sort((b,c)=>{let d=Math.abs(new Date(b.timestamp).getTime()-a),e=Math.abs(new Date(c.timestamp).getTime()-a);return d-e}),j=c[0])}if(!j){let a={connectionId:d,pageSize:10};f&&(a.model=f);let b=await i(a);j=b?.details?.[0]||null}if(!j)return v.NextResponse.json({error:"Request detail not found"},{status:404});return v.NextResponse.json(j)}catch(a){return console.error("[API] Failed to get request detail:",a),v.NextResponse.json({error:"Failed to fetch request detail"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-details/[id]/route",pathname:"/api/usage/request-details/[id]",filename:"route",bundlePath:"app/api/usage/request-details/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-details/[id]/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-details/[id]/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=20248));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=1200,a.ids=[336,1200],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
1
+ (()=>{var a={};a.id=1200,a.ids=[336,1200],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},50712:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x});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(76072);async function x(a){try{let{searchParams:b}=new URL(a.url),d=parseInt(b.get("page"))||1,e=parseInt(b.get("pageSize"))||20,f=b.get("provider"),g=b.get("model"),h=b.get("connectionId"),i=b.get("status"),j=b.get("startDate"),k=b.get("endDate"),l=b.get("apiKeyId");if(d<1)return v.NextResponse.json({error:"Page must be >= 1"},{status:400});if(e<1||e>100)return v.NextResponse.json({error:"PageSize must be between 1 and 100"},{status:400});let m={page:d,pageSize:e};if(f&&(m.provider=f),g&&(m.model=g),h&&(m.connectionId=h),i&&(m.status=i),j&&(m.startDate=j),k&&(m.endDate=k),l){let{getApiKeyById:a}=await Promise.all([c.e(9718),c.e(118)]).then(c.bind(c,89718)),b=await a(l);b&&(m.apiKey=b.key)}let n=await (0,w.getRequestDetails)(m);return v.NextResponse.json(n)}catch(a){return console.error("[API] Failed to get request details:",a),v.NextResponse.json({error:"Failed to fetch request details"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-details/route",pathname:"/api/usage/request-details",filename:"route",bundlePath:"app/api/usage/request-details/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-details/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-details/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
2
2
  -- usage_history -----------------------------------------------------------
3
3
  CREATE TABLE IF NOT EXISTS usage_history (
4
4
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -65,4 +65,4 @@ CREATE TABLE IF NOT EXISTS meta (
65
65
  latency, tokens, cost
66
66
  FROM request_details ${g}
67
67
  ORDER BY timestamp DESC
68
- LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{},99480:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x});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(76072);async function x(a){try{let{searchParams:b}=new URL(a.url),d=parseInt(b.get("page"))||1,e=parseInt(b.get("pageSize"))||20,f=b.get("provider"),g=b.get("model"),h=b.get("connectionId"),i=b.get("status"),j=b.get("startDate"),k=b.get("endDate"),l=b.get("apiKeyId");if(d<1)return v.NextResponse.json({error:"Page must be >= 1"},{status:400});if(e<1||e>100)return v.NextResponse.json({error:"PageSize must be between 1 and 100"},{status:400});let m={page:d,pageSize:e};if(f&&(m.provider=f),g&&(m.model=g),h&&(m.connectionId=h),i&&(m.status=i),j&&(m.startDate=j),k&&(m.endDate=k),l){let{getApiKeyById:a}=await Promise.all([c.e(9718),c.e(118)]).then(c.bind(c,89718)),b=await a(l);b&&(m.apiKey=b.key)}let n=await (0,w.getRequestDetails)(m);return v.NextResponse.json(n)}catch(a){return console.error("[API] Failed to get request details:",a),v.NextResponse.json({error:"Failed to fetch request details"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-details/route",pathname:"/api/usage/request-details",filename:"route",bundlePath:"app/api/usage/request-details/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-details/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-details/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,6072],()=>b(b.s=99480));module.exports=c})();
68
+ LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,6072],()=>b(b.s=50712));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=9027,a.ids=[336,9027],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},22124:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x});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(76072);async function x(){try{let a=await (0,w.getRecentLogs)(200);return v.NextResponse.json(a)}catch(a){return console.error("[API ERROR] /api/usage/logs failed:",a),console.error("[API ERROR] Stack:",a?.stack),v.NextResponse.json({error:"Failed to fetch logs"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-logs/route",pathname:"/api/usage/request-logs",filename:"route",bundlePath:"app/api/usage/request-logs/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-logs/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-logs/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
1
+ (()=>{var a={};a.id=9027,a.ids=[336,9027],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1932:a=>{"use strict";a.exports=require("url")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},82941:(a,b,c)=>{"use strict";c.d(b,{XA:()=>q,m1:()=>l,nJ:()=>m});var d=c(76760),e=c.n(d),f=c(48161),g=c.n(f),h=c(73024),i=c.n(h),j=c(87550),k=c.n(j);let l="u">typeof caches||"object"==typeof caches,m=function(){if(l)return"/tmp";if(process.env.DATA_DIR)return process.env.DATA_DIR;let a=g().homedir();return"win32"===process.platform?e().join(process.env.APPDATA||e().join(a,"AppData","Roaming"),"9router"):e().join(a,".9router")}(),n=e().join(m,"irouter.db");l||i().existsSync(m)||i().mkdirSync(m,{recursive:!0});let o=`
2
2
  -- usage_history -----------------------------------------------------------
3
3
  CREATE TABLE IF NOT EXISTS usage_history (
4
4
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -52,7 +52,7 @@ CREATE TABLE IF NOT EXISTS meta (
52
52
  key TEXT PRIMARY KEY,
53
53
  value TEXT
54
54
  );
55
- `,p=null;function q(){if(l)throw Error("[sqliteDb] SQLite is not available in Cloudflare Workers");return p||((p=new(k())(n)).pragma("journal_mode = WAL"),p.pragma("synchronous = NORMAL"),p.pragma("cache_size = -8000"),p.pragma("temp_store = MEMORY"),p.pragma("busy_timeout = 5000"),p.exec(o),console.log(`[sqliteDb] Opened database: ${n}`)),p}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},90336:(a,b,c)=>{"use strict";c.d(b,{getRequestDetailById:()=>m,getRequestDetails:()=>l,o:()=>k});var d=c(82941);let e=null,f=0;async function g(){if(e&&Date.now()-f<5e3)return e;try{let{getSettings:a}=await Promise.all([c.e(9718),c.e(118)]).then(c.bind(c,89718)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;e={enabled:"boolean"==typeof b.observabilityEnabled?b.observabilityEnabled:d,maxJsonSize:1024*(b.observabilityMaxJsonSize||parseInt(process.env.OBSERVABILITY_MAX_JSON_SIZE||"5",10))}}catch{e={enabled:!0,maxJsonSize:5120}}return f=Date.now(),e}function h(a,b){if(!a||"object"!=typeof a)return null;try{let c=JSON.stringify(a);if(c.length>b)return JSON.stringify({_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)});return c}catch{return null}}function i(a){if(!a||"object"!=typeof a)return null;try{return JSON.stringify(a)}catch{return null}}let j=null;async function k(a){if(d.m1)return;let b=await g();if(b.enabled)try{var c;let e,f,g;a.id||(c=a.model,e=new Date().toISOString(),f=Math.random().toString(36).substring(2,8),g=c?c.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown",a.id=`${e}-${f}-${g}`),a.timestamp||(a.timestamp=new Date().toISOString()),a.request?.headers&&(a.request.headers=function(a){if(!a||"object"!=typeof a)return{};let b=["authorization","x-api-key","cookie","token","api-key"],c={...a};for(let a of Object.keys(c))b.some(b=>a.toLowerCase().includes(b))&&delete c[a];return c}(a.request.headers));let k=b.maxJsonSize;(j||(j=(0,d.XA)().prepare(`
55
+ `,p=null;function q(){if(l)throw Error("[sqliteDb] SQLite is not available in Cloudflare Workers");return p||((p=new(k())(n)).pragma("journal_mode = WAL"),p.pragma("synchronous = NORMAL"),p.pragma("cache_size = -8000"),p.pragma("temp_store = MEMORY"),p.pragma("busy_timeout = 5000"),p.exec(o),console.log(`[sqliteDb] Opened database: ${n}`)),p}},85877:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>D,patchFetch:()=>C,routeModule:()=>y,serverHooks:()=>B,workAsyncStorage:()=>z,workUnitAsyncStorage:()=>A});var d={};c.r(d),c.d(d,{GET:()=>x});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(76072);async function x(){try{let a=await (0,w.getRecentLogs)(200);return v.NextResponse.json(a)}catch(a){return console.error("[API ERROR] /api/usage/logs failed:",a),console.error("[API ERROR] Stack:",a?.stack),v.NextResponse.json({error:"Failed to fetch logs"},{status:500})}}let y=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/request-logs/route",pathname:"/api/usage/request-logs",filename:"route",bundlePath:"app/api/usage/request-logs/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/request-logs/route.js",nextConfigOutput:"standalone",userland:d}),{workAsyncStorage:z,workUnitAsyncStorage:A,serverHooks:B}=y;function C(){return(0,g.patchFetch)({workAsyncStorage:z,workUnitAsyncStorage:A})}async function D(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),y.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/request-logs/route";"/index"===d&&(d="/");let e=await y.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||y.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===y.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await y.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>y.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>y.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await y.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await y.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await y.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},90336:(a,b,c)=>{"use strict";c.d(b,{getRequestDetailById:()=>m,getRequestDetails:()=>l,o:()=>k});var d=c(82941);let e=null,f=0;async function g(){if(e&&Date.now()-f<5e3)return e;try{let{getSettings:a}=await Promise.all([c.e(9718),c.e(118)]).then(c.bind(c,89718)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;e={enabled:"boolean"==typeof b.observabilityEnabled?b.observabilityEnabled:d,maxJsonSize:1024*(b.observabilityMaxJsonSize||parseInt(process.env.OBSERVABILITY_MAX_JSON_SIZE||"5",10))}}catch{e={enabled:!0,maxJsonSize:5120}}return f=Date.now(),e}function h(a,b){if(!a||"object"!=typeof a)return null;try{let c=JSON.stringify(a);if(c.length>b)return JSON.stringify({_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)});return c}catch{return null}}function i(a){if(!a||"object"!=typeof a)return null;try{return JSON.stringify(a)}catch{return null}}let j=null;async function k(a){if(d.m1)return;let b=await g();if(b.enabled)try{var c;let e,f,g;a.id||(c=a.model,e=new Date().toISOString(),f=Math.random().toString(36).substring(2,8),g=c?c.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown",a.id=`${e}-${f}-${g}`),a.timestamp||(a.timestamp=new Date().toISOString()),a.request?.headers&&(a.request.headers=function(a){if(!a||"object"!=typeof a)return{};let b=["authorization","x-api-key","cookie","token","api-key"],c={...a};for(let a of Object.keys(c))b.some(b=>a.toLowerCase().includes(b))&&delete c[a];return c}(a.request.headers));let k=b.maxJsonSize;(j||(j=(0,d.XA)().prepare(`
56
56
  INSERT OR REPLACE INTO request_details
57
57
  (id, provider, model, connection_id, api_key, status, timestamp,
58
58
  latency, tokens, request, provider_request, provider_response,
@@ -65,4 +65,4 @@ CREATE TABLE IF NOT EXISTS meta (
65
65
  latency, tokens, cost
66
66
  FROM request_details ${g}
67
67
  ORDER BY timestamp DESC
68
- LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,6072],()=>b(b.s=22124));module.exports=c})();
68
+ LIMIT @limit OFFSET @offset`).all({...f,limit:j,offset:(i-1)*j}),o=null;try{o=(await c.e(6072).then(c.bind(c,76072))).calculateCost}catch{}let p=[];for(let a of m){let b={id:a.id,provider:a.provider,model:a.model,connectionId:a.connection_id,apiKey:a.api_key,status:a.status,timestamp:a.timestamp,latency:n(a.latency),tokens:n(a.tokens),cost:a.cost||0};if(o&&b.tokens&&b.provider&&b.model&&!b.cost)try{b.cost=await o(b.provider,b.model,b.tokens)}catch{}p.push(b)}return{details:p,pagination:{page:i,pageSize:j,totalItems:h,totalPages:k,hasNext:i<k,hasPrev:i>1}}}async function m(a){if(d.m1)return null;let b=(0,d.XA)().prepare("SELECT * FROM request_details WHERE id = ?").get(a);return b?{id:b.id,provider:b.provider,model:b.model,connectionId:b.connection_id,apiKey:b.api_key,status:b.status,timestamp:b.timestamp,latency:n(b.latency),tokens:n(b.tokens),request:n(b.request),providerRequest:n(b.provider_request),providerResponse:n(b.provider_response),response:n(b.response),cost:b.cost||0}:null}function n(a){if(!a)return{};try{if("string"==typeof a&&a.length>51200)return{_truncated:!0,_originalSize:a.length,_preview:a.substring(0,200)};return JSON.parse(a)}catch{return{}}}},94735:a=>{"use strict";a.exports=require("events")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,6072],()=>b(b.s=85877));module.exports=c})();