@thangnm.nip/irouter 0.0.18 → 0.0.20

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 (570) hide show
  1. package/app/.next/BUILD_ID +1 -1
  2. package/app/.next/app-path-routes-manifest.json +1 -0
  3. package/app/.next/build-manifest.json +2 -2
  4. package/app/.next/routes-manifest.json +8 -0
  5. package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  6. package/app/.next/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  7. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  8. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  9. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  10. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  11. package/app/.next/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  12. package/app/.next/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  13. package/app/.next/server/app/(dashboard)/dashboard/employees/[keyId]/page.js +2 -2
  14. package/app/.next/server/app/(dashboard)/dashboard/employees/[keyId]/page_client-reference-manifest.js +1 -1
  15. package/app/.next/server/app/(dashboard)/dashboard/employees/page.js +4 -4
  16. package/app/.next/server/app/(dashboard)/dashboard/employees/page_client-reference-manifest.js +1 -1
  17. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +3 -3
  18. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  20. package/app/.next/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  21. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  22. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  23. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  24. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  25. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  26. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  27. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  28. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  30. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  31. package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  32. package/app/.next/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  33. package/app/.next/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  34. package/app/.next/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  35. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  36. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  37. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  38. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  39. package/app/.next/server/app/_global-error/page.js +2 -2
  40. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  41. package/app/.next/server/app/_global-error.html +1 -1
  42. package/app/.next/server/app/_global-error.rsc +1 -1
  43. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  44. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  45. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  46. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  47. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  48. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  49. package/app/.next/server/app/_not-found/page.js +2 -2
  50. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  51. package/app/.next/server/app/_not-found.html +1 -1
  52. package/app/.next/server/app/_not-found.rsc +4 -4
  53. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  54. package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  55. package/app/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
  56. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  57. package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  58. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  59. package/app/.next/server/app/api/9remote/install/route.js +1 -1
  60. package/app/.next/server/app/api/9remote/start/route.js +1 -1
  61. package/app/.next/server/app/api/9remote/status/route.js +1 -1
  62. package/app/.next/server/app/api/auth/login/route.js +1 -1
  63. package/app/.next/server/app/api/auth/logout/route.js +1 -1
  64. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
  65. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
  66. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  67. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  68. package/app/.next/server/app/api/cli-tools/copilot-settings/route.js +1 -1
  69. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
  70. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +1 -1
  71. package/app/.next/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  72. package/app/.next/server/app/api/cloud/auth/route.js +1 -1
  73. package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
  74. package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
  75. package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
  76. package/app/.next/server/app/api/combos/[id]/route.js +1 -1
  77. package/app/.next/server/app/api/combos/route.js +1 -1
  78. package/app/.next/server/app/api/employees/[keyId]/stats/route.js +2 -2
  79. package/app/.next/server/app/api/employees/stats/route.js +2 -2
  80. package/app/.next/server/app/api/init/route.js +1 -1
  81. package/app/.next/server/app/api/keys/[id]/route.js +1 -1
  82. package/app/.next/server/app/api/keys/route.js +1 -1
  83. package/app/.next/server/app/api/locale/route.js +1 -1
  84. package/app/.next/server/app/api/models/alias/route.js +1 -1
  85. package/app/.next/server/app/api/models/availability/route.js +1 -1
  86. package/app/.next/server/app/api/models/route.js +1 -1
  87. package/app/.next/server/app/api/models/test/route.js +1 -1
  88. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  89. package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  90. package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
  91. package/app/.next/server/app/api/oauth/iflow/cookie/route.js +1 -1
  92. package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  93. package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
  94. package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  95. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  96. package/app/.next/server/app/api/pricing/route.js +1 -1
  97. package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
  98. package/app/.next/server/app/api/provider-nodes/route.js +1 -1
  99. package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
  100. package/app/.next/server/app/api/providers/[id]/access-policy/route.js +1 -0
  101. package/app/.next/server/app/api/providers/[id]/access-policy/route.js.nft.json +1 -0
  102. package/app/.next/server/app/api/providers/[id]/access-policy/route_client-reference-manifest.js +1 -0
  103. package/app/.next/server/app/api/providers/[id]/models/route.js +1 -1
  104. package/app/.next/server/app/api/providers/[id]/route.js +1 -1
  105. package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
  106. package/app/.next/server/app/api/providers/[id]/test-models/route.js +1 -1
  107. package/app/.next/server/app/api/providers/client/route.js +1 -1
  108. package/app/.next/server/app/api/providers/route.js +1 -1
  109. package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
  110. package/app/.next/server/app/api/providers/validate/route.js +1 -1
  111. package/app/.next/server/app/api/proxy-pools/[id]/route.js +1 -1
  112. package/app/.next/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  113. package/app/.next/server/app/api/proxy-pools/route.js +1 -1
  114. package/app/.next/server/app/api/settings/database/route.js +1 -1
  115. package/app/.next/server/app/api/settings/proxy-test/route.js +1 -1
  116. package/app/.next/server/app/api/settings/require-login/route.js +1 -1
  117. package/app/.next/server/app/api/settings/route.js +1 -1
  118. package/app/.next/server/app/api/shutdown/route.js +1 -1
  119. package/app/.next/server/app/api/tags/route.js +1 -1
  120. package/app/.next/server/app/api/translator/console-logs/route.js +1 -1
  121. package/app/.next/server/app/api/translator/console-logs/stream/route.js +2 -2
  122. package/app/.next/server/app/api/translator/load/route.js +1 -1
  123. package/app/.next/server/app/api/translator/save/route.js +1 -1
  124. package/app/.next/server/app/api/translator/send/route.js +1 -1
  125. package/app/.next/server/app/api/translator/translate/route.js +1 -1
  126. package/app/.next/server/app/api/tunnel/disable/route.js +1 -1
  127. package/app/.next/server/app/api/tunnel/enable/route.js +1 -1
  128. package/app/.next/server/app/api/tunnel/status/route.js +1 -1
  129. package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
  130. package/app/.next/server/app/api/usage/chart/route.js +2 -2
  131. package/app/.next/server/app/api/usage/history/route.js +2 -2
  132. package/app/.next/server/app/api/usage/logs/route.js +2 -2
  133. package/app/.next/server/app/api/usage/providers/route.js +2 -2
  134. package/app/.next/server/app/api/usage/request-details/[id]/download/route.js +2 -2
  135. package/app/.next/server/app/api/usage/request-details/[id]/route.js +1 -1
  136. package/app/.next/server/app/api/usage/request-details/aggregate/route.js +13 -13
  137. package/app/.next/server/app/api/usage/request-details/route.js +2 -2
  138. package/app/.next/server/app/api/usage/request-logs/route.js +2 -2
  139. package/app/.next/server/app/api/usage/stats/route.js +2 -2
  140. package/app/.next/server/app/api/usage/stream/route.js +8 -8
  141. package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
  142. package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  143. package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
  144. package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  145. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  146. package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  147. package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
  148. package/app/.next/server/app/api/v1/messages/route.js +1 -1
  149. package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
  150. package/app/.next/server/app/api/v1/models/route.js +1 -1
  151. package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
  152. package/app/.next/server/app/api/v1/responses/route.js +1 -1
  153. package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
  154. package/app/.next/server/app/api/v1/route.js +1 -1
  155. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
  156. package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  157. package/app/.next/server/app/api/v1beta/models/route.js +1 -1
  158. package/app/.next/server/app/api/v1internal/route.js +1 -1
  159. package/app/.next/server/app/api/v1internal/route.js.nft.json +1 -1
  160. package/app/.next/server/app/api/version/route.js +1 -1
  161. package/app/.next/server/app/callback/page.js +2 -2
  162. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  163. package/app/.next/server/app/callback.html +1 -1
  164. package/app/.next/server/app/callback.rsc +4 -4
  165. package/app/.next/server/app/callback.segments/_full.segment.rsc +4 -4
  166. package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  167. package/app/.next/server/app/callback.segments/_index.segment.rsc +4 -4
  168. package/app/.next/server/app/callback.segments/_tree.segment.rsc +2 -2
  169. package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  170. package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  171. package/app/.next/server/app/dashboard/basic-chat.html +1 -1
  172. package/app/.next/server/app/dashboard/basic-chat.rsc +6 -6
  173. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  174. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  175. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  176. package/app/.next/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  177. package/app/.next/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  178. package/app/.next/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  179. package/app/.next/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  180. package/app/.next/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  181. package/app/.next/server/app/dashboard/cli-tools.html +1 -1
  182. package/app/.next/server/app/dashboard/cli-tools.rsc +6 -6
  183. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  184. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  185. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  186. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  187. package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  188. package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  189. package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  190. package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  191. package/app/.next/server/app/dashboard/combos.html +1 -1
  192. package/app/.next/server/app/dashboard/combos.rsc +6 -6
  193. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  194. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  195. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  196. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  197. package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  198. package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  199. package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  200. package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  201. package/app/.next/server/app/dashboard/employees.html +1 -1
  202. package/app/.next/server/app/dashboard/employees.rsc +6 -6
  203. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk/dashboard/employees/__PAGE__.segment.rsc +2 -2
  204. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk/dashboard/employees.segment.rsc +1 -1
  205. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  206. package/app/.next/server/app/dashboard/employees.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  207. package/app/.next/server/app/dashboard/employees.segments/_full.segment.rsc +6 -6
  208. package/app/.next/server/app/dashboard/employees.segments/_head.segment.rsc +1 -1
  209. package/app/.next/server/app/dashboard/employees.segments/_index.segment.rsc +4 -4
  210. package/app/.next/server/app/dashboard/employees.segments/_tree.segment.rsc +2 -2
  211. package/app/.next/server/app/dashboard/endpoint.html +1 -1
  212. package/app/.next/server/app/dashboard/endpoint.rsc +6 -6
  213. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  214. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  215. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  216. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  217. package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  218. package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  219. package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  220. package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  221. package/app/.next/server/app/dashboard/mitm.html +1 -1
  222. package/app/.next/server/app/dashboard/mitm.rsc +6 -6
  223. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  224. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  225. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  226. package/app/.next/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  227. package/app/.next/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  228. package/app/.next/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  229. package/app/.next/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  230. package/app/.next/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  231. package/app/.next/server/app/dashboard/profile.html +1 -1
  232. package/app/.next/server/app/dashboard/profile.rsc +6 -6
  233. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  234. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  235. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  236. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  237. package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  238. package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  239. package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  240. package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  241. package/app/.next/server/app/dashboard/providers/new.html +1 -1
  242. package/app/.next/server/app/dashboard/providers/new.rsc +6 -6
  243. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  244. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  245. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  246. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  247. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  248. package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  249. package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  250. package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  251. package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  252. package/app/.next/server/app/dashboard/providers.html +1 -1
  253. package/app/.next/server/app/dashboard/providers.rsc +6 -6
  254. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  255. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  256. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  257. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  258. package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  259. package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  260. package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  261. package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  262. package/app/.next/server/app/dashboard/proxy-pools.html +1 -1
  263. package/app/.next/server/app/dashboard/proxy-pools.rsc +6 -6
  264. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  265. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  266. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  267. package/app/.next/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  268. package/app/.next/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  269. package/app/.next/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  270. package/app/.next/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  271. package/app/.next/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  272. package/app/.next/server/app/dashboard/quota.html +2 -2
  273. package/app/.next/server/app/dashboard/quota.rsc +5 -5
  274. package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +1 -1
  275. package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  276. package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  277. package/app/.next/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  278. package/app/.next/server/app/dashboard/quota.segments/_full.segment.rsc +5 -5
  279. package/app/.next/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  280. package/app/.next/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  281. package/app/.next/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  282. package/app/.next/server/app/dashboard/settings/pricing/page.js +2 -2
  283. package/app/.next/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  284. package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
  285. package/app/.next/server/app/dashboard/settings/pricing.rsc +4 -4
  286. package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  287. package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  288. package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  289. package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  290. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  291. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  292. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  293. package/app/.next/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  294. package/app/.next/server/app/dashboard/translator.html +1 -1
  295. package/app/.next/server/app/dashboard/translator.rsc +6 -6
  296. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  297. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  298. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  299. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  300. package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  301. package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  302. package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  303. package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  304. package/app/.next/server/app/dashboard/usage.html +1 -1
  305. package/app/.next/server/app/dashboard/usage.rsc +6 -6
  306. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  307. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  308. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  309. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  310. package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  311. package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  312. package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  313. package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  314. package/app/.next/server/app/dashboard.html +1 -1
  315. package/app/.next/server/app/dashboard.rsc +5 -5
  316. package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +1 -1
  317. package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  318. package/app/.next/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  319. package/app/.next/server/app/dashboard.segments/_full.segment.rsc +5 -5
  320. package/app/.next/server/app/dashboard.segments/_head.segment.rsc +1 -1
  321. package/app/.next/server/app/dashboard.segments/_index.segment.rsc +4 -4
  322. package/app/.next/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  323. package/app/.next/server/app/favicon.ico/route.js +1 -1
  324. package/app/.next/server/app/index.html +1 -1
  325. package/app/.next/server/app/index.rsc +4 -4
  326. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  327. package/app/.next/server/app/index.segments/_full.segment.rsc +4 -4
  328. package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
  329. package/app/.next/server/app/index.segments/_index.segment.rsc +4 -4
  330. package/app/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  331. package/app/.next/server/app/landing/page.js +2 -2
  332. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  333. package/app/.next/server/app/landing.html +1 -1
  334. package/app/.next/server/app/landing.rsc +4 -4
  335. package/app/.next/server/app/landing.segments/_full.segment.rsc +4 -4
  336. package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  337. package/app/.next/server/app/landing.segments/_index.segment.rsc +4 -4
  338. package/app/.next/server/app/landing.segments/_tree.segment.rsc +2 -2
  339. package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
  340. package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  341. package/app/.next/server/app/login/page.js +2 -2
  342. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  343. package/app/.next/server/app/login.html +1 -1
  344. package/app/.next/server/app/login.rsc +5 -5
  345. package/app/.next/server/app/login.segments/_full.segment.rsc +5 -5
  346. package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
  347. package/app/.next/server/app/login.segments/_index.segment.rsc +4 -4
  348. package/app/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  349. package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  350. package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
  351. package/app/.next/server/app/manifest.webmanifest/route.js +2 -2
  352. package/app/.next/server/app/page.js +2 -2
  353. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  354. package/app/.next/server/app-paths-manifest.json +1 -0
  355. package/app/.next/server/chunks/1051.js +1 -0
  356. package/app/.next/server/chunks/2664.js +1 -1
  357. package/app/.next/server/chunks/3093.js +1 -1
  358. package/app/.next/server/chunks/6811.js +1 -1
  359. package/app/.next/server/chunks/6898.js +1 -1
  360. package/app/.next/server/chunks/9489.js +1 -0
  361. package/app/.next/server/chunks/9718.js +1 -1
  362. package/app/.next/server/middleware-build-manifest.js +1 -1
  363. package/app/.next/server/pages/404.html +1 -1
  364. package/app/.next/server/pages/500.html +1 -1
  365. package/app/.next/static/chunks/{5497-f66eb2acf4020098.js → 5497-189ace2180e8dc37.js} +1 -1
  366. package/app/.next/static/chunks/app/{_global-error/page-12c5a5ad06b69231.js → (dashboard)/dashboard/page-378b8dff959a5ad8.js} +1 -1
  367. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-592b4c4f5e745ebe.js +1 -0
  368. package/app/.next/static/chunks/app/{api/9remote/install/route-12c5a5ad06b69231.js → _global-error/page-378b8dff959a5ad8.js} +1 -1
  369. package/app/.next/static/chunks/app/{(dashboard)/dashboard/page-12c5a5ad06b69231.js → api/9remote/install/route-378b8dff959a5ad8.js} +1 -1
  370. package/app/.next/static/chunks/app/api/9remote/start/{route-12c5a5ad06b69231.js → route-378b8dff959a5ad8.js} +1 -1
  371. package/app/.next/static/chunks/app/api/9remote/status/route-378b8dff959a5ad8.js +1 -0
  372. package/app/.next/static/chunks/app/api/auth/login/route-378b8dff959a5ad8.js +1 -0
  373. package/app/.next/static/chunks/app/api/auth/logout/route-378b8dff959a5ad8.js +1 -0
  374. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-378b8dff959a5ad8.js +1 -0
  375. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-378b8dff959a5ad8.js +1 -0
  376. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-378b8dff959a5ad8.js +1 -0
  377. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-378b8dff959a5ad8.js +1 -0
  378. package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-378b8dff959a5ad8.js +1 -0
  379. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-378b8dff959a5ad8.js +1 -0
  380. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-378b8dff959a5ad8.js +1 -0
  381. package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-378b8dff959a5ad8.js +1 -0
  382. package/app/.next/static/chunks/app/api/cloud/auth/route-378b8dff959a5ad8.js +1 -0
  383. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-378b8dff959a5ad8.js +1 -0
  384. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-378b8dff959a5ad8.js +1 -0
  385. package/app/.next/static/chunks/app/api/cloud/models/alias/route-378b8dff959a5ad8.js +1 -0
  386. package/app/.next/static/chunks/app/api/combos/[id]/route-378b8dff959a5ad8.js +1 -0
  387. package/app/.next/static/chunks/app/api/combos/route-378b8dff959a5ad8.js +1 -0
  388. package/app/.next/static/chunks/app/api/employees/[keyId]/stats/route-378b8dff959a5ad8.js +1 -0
  389. package/app/.next/static/chunks/app/api/employees/stats/route-378b8dff959a5ad8.js +1 -0
  390. package/app/.next/static/chunks/app/api/init/route-378b8dff959a5ad8.js +1 -0
  391. package/app/.next/static/chunks/app/api/keys/[id]/route-378b8dff959a5ad8.js +1 -0
  392. package/app/.next/static/chunks/app/api/keys/route-378b8dff959a5ad8.js +1 -0
  393. package/app/.next/static/chunks/app/api/locale/route-378b8dff959a5ad8.js +1 -0
  394. package/app/.next/static/chunks/app/api/models/alias/route-378b8dff959a5ad8.js +1 -0
  395. package/app/.next/static/chunks/app/api/models/availability/route-378b8dff959a5ad8.js +1 -0
  396. package/app/.next/static/chunks/app/api/models/route-378b8dff959a5ad8.js +1 -0
  397. package/app/.next/static/chunks/app/api/models/test/route-378b8dff959a5ad8.js +1 -0
  398. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-378b8dff959a5ad8.js +1 -0
  399. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-378b8dff959a5ad8.js +1 -0
  400. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-378b8dff959a5ad8.js +1 -0
  401. package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-378b8dff959a5ad8.js +1 -0
  402. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-378b8dff959a5ad8.js +1 -0
  403. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-378b8dff959a5ad8.js +1 -0
  404. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-378b8dff959a5ad8.js +1 -0
  405. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-378b8dff959a5ad8.js +1 -0
  406. package/app/.next/static/chunks/app/api/pricing/route-378b8dff959a5ad8.js +1 -0
  407. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-378b8dff959a5ad8.js +1 -0
  408. package/app/.next/static/chunks/app/api/provider-nodes/route-378b8dff959a5ad8.js +1 -0
  409. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-378b8dff959a5ad8.js +1 -0
  410. package/app/.next/static/chunks/app/api/providers/[id]/access-policy/route-378b8dff959a5ad8.js +1 -0
  411. package/app/.next/static/chunks/app/api/providers/[id]/models/route-378b8dff959a5ad8.js +1 -0
  412. package/app/.next/static/chunks/app/api/providers/[id]/route-378b8dff959a5ad8.js +1 -0
  413. package/app/.next/static/chunks/app/api/providers/[id]/test/route-378b8dff959a5ad8.js +1 -0
  414. package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-378b8dff959a5ad8.js +1 -0
  415. package/app/.next/static/chunks/app/api/providers/client/route-378b8dff959a5ad8.js +1 -0
  416. package/app/.next/static/chunks/app/api/providers/route-378b8dff959a5ad8.js +1 -0
  417. package/app/.next/static/chunks/app/api/providers/test-batch/route-378b8dff959a5ad8.js +1 -0
  418. package/app/.next/static/chunks/app/api/providers/validate/route-378b8dff959a5ad8.js +1 -0
  419. package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-378b8dff959a5ad8.js +1 -0
  420. package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-378b8dff959a5ad8.js +1 -0
  421. package/app/.next/static/chunks/app/api/proxy-pools/route-378b8dff959a5ad8.js +1 -0
  422. package/app/.next/static/chunks/app/api/settings/database/route-378b8dff959a5ad8.js +1 -0
  423. package/app/.next/static/chunks/app/api/settings/proxy-test/route-378b8dff959a5ad8.js +1 -0
  424. package/app/.next/static/chunks/app/api/settings/require-login/route-378b8dff959a5ad8.js +1 -0
  425. package/app/.next/static/chunks/app/api/settings/route-378b8dff959a5ad8.js +1 -0
  426. package/app/.next/static/chunks/app/api/shutdown/route-378b8dff959a5ad8.js +1 -0
  427. package/app/.next/static/chunks/app/api/tags/route-378b8dff959a5ad8.js +1 -0
  428. package/app/.next/static/chunks/app/api/translator/console-logs/route-378b8dff959a5ad8.js +1 -0
  429. package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-378b8dff959a5ad8.js +1 -0
  430. package/app/.next/static/chunks/app/api/translator/load/route-378b8dff959a5ad8.js +1 -0
  431. package/app/.next/static/chunks/app/api/translator/save/route-378b8dff959a5ad8.js +1 -0
  432. package/app/.next/static/chunks/app/api/translator/send/route-378b8dff959a5ad8.js +1 -0
  433. package/app/.next/static/chunks/app/api/translator/translate/route-378b8dff959a5ad8.js +1 -0
  434. package/app/.next/static/chunks/app/api/tunnel/disable/route-378b8dff959a5ad8.js +1 -0
  435. package/app/.next/static/chunks/app/api/tunnel/enable/route-378b8dff959a5ad8.js +1 -0
  436. package/app/.next/static/chunks/app/api/tunnel/status/route-378b8dff959a5ad8.js +1 -0
  437. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-378b8dff959a5ad8.js +1 -0
  438. package/app/.next/static/chunks/app/api/usage/chart/route-378b8dff959a5ad8.js +1 -0
  439. package/app/.next/static/chunks/app/api/usage/history/route-378b8dff959a5ad8.js +1 -0
  440. package/app/.next/static/chunks/app/api/usage/logs/route-378b8dff959a5ad8.js +1 -0
  441. package/app/.next/static/chunks/app/api/usage/providers/route-378b8dff959a5ad8.js +1 -0
  442. package/app/.next/static/chunks/app/api/usage/request-details/[id]/download/route-378b8dff959a5ad8.js +1 -0
  443. package/app/.next/static/chunks/app/api/usage/request-details/[id]/route-378b8dff959a5ad8.js +1 -0
  444. package/app/.next/static/chunks/app/api/usage/request-details/aggregate/route-378b8dff959a5ad8.js +1 -0
  445. package/app/.next/static/chunks/app/api/usage/request-details/route-378b8dff959a5ad8.js +1 -0
  446. package/app/.next/static/chunks/app/api/usage/request-logs/route-378b8dff959a5ad8.js +1 -0
  447. package/app/.next/static/chunks/app/api/usage/stats/route-378b8dff959a5ad8.js +1 -0
  448. package/app/.next/static/chunks/app/api/usage/stream/route-378b8dff959a5ad8.js +1 -0
  449. package/app/.next/static/chunks/app/api/v1/api/chat/route-378b8dff959a5ad8.js +1 -0
  450. package/app/.next/static/chunks/app/api/v1/chat/completions/route-378b8dff959a5ad8.js +1 -0
  451. package/app/.next/static/chunks/app/api/v1/embeddings/route-378b8dff959a5ad8.js +1 -0
  452. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-378b8dff959a5ad8.js +1 -0
  453. package/app/.next/static/chunks/app/api/v1/messages/route-378b8dff959a5ad8.js +1 -0
  454. package/app/.next/static/chunks/app/api/v1/models/route-378b8dff959a5ad8.js +1 -0
  455. package/app/.next/static/chunks/app/api/v1/responses/route-378b8dff959a5ad8.js +1 -0
  456. package/app/.next/static/chunks/app/api/v1/route-378b8dff959a5ad8.js +1 -0
  457. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-378b8dff959a5ad8.js +1 -0
  458. package/app/.next/static/chunks/app/api/v1beta/models/route-378b8dff959a5ad8.js +1 -0
  459. package/app/.next/static/chunks/app/api/v1internal/route-378b8dff959a5ad8.js +1 -0
  460. package/app/.next/static/chunks/app/api/version/route-378b8dff959a5ad8.js +1 -0
  461. package/app/.next/static/chunks/app/{layout-224ac805b7ae89a3.js → layout-dcc32c615c88bd9b.js} +1 -1
  462. package/app/.next/static/chunks/app/manifest.webmanifest/route-378b8dff959a5ad8.js +1 -0
  463. package/app/.next/static/chunks/app/page-378b8dff959a5ad8.js +1 -0
  464. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-378b8dff959a5ad8.js +1 -0
  465. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-378b8dff959a5ad8.js +1 -0
  466. package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-378b8dff959a5ad8.js +1 -0
  467. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-378b8dff959a5ad8.js +1 -0
  468. package/app/.next/static/css/bcba695583d9b815.css +1 -0
  469. package/app/package.json +1 -1
  470. package/package.json +1 -1
  471. package/app/.next/server/chunks/289.js +0 -1
  472. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-81e062741834b97d.js +0 -1
  473. package/app/.next/static/chunks/app/api/9remote/status/route-12c5a5ad06b69231.js +0 -1
  474. package/app/.next/static/chunks/app/api/auth/login/route-12c5a5ad06b69231.js +0 -1
  475. package/app/.next/static/chunks/app/api/auth/logout/route-12c5a5ad06b69231.js +0 -1
  476. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-12c5a5ad06b69231.js +0 -1
  477. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-12c5a5ad06b69231.js +0 -1
  478. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-12c5a5ad06b69231.js +0 -1
  479. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-12c5a5ad06b69231.js +0 -1
  480. package/app/.next/static/chunks/app/api/cli-tools/copilot-settings/route-12c5a5ad06b69231.js +0 -1
  481. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-12c5a5ad06b69231.js +0 -1
  482. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-12c5a5ad06b69231.js +0 -1
  483. package/app/.next/static/chunks/app/api/cli-tools/opencode-settings/route-12c5a5ad06b69231.js +0 -1
  484. package/app/.next/static/chunks/app/api/cloud/auth/route-12c5a5ad06b69231.js +0 -1
  485. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-12c5a5ad06b69231.js +0 -1
  486. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-12c5a5ad06b69231.js +0 -1
  487. package/app/.next/static/chunks/app/api/cloud/models/alias/route-12c5a5ad06b69231.js +0 -1
  488. package/app/.next/static/chunks/app/api/combos/[id]/route-12c5a5ad06b69231.js +0 -1
  489. package/app/.next/static/chunks/app/api/combos/route-12c5a5ad06b69231.js +0 -1
  490. package/app/.next/static/chunks/app/api/employees/[keyId]/stats/route-12c5a5ad06b69231.js +0 -1
  491. package/app/.next/static/chunks/app/api/employees/stats/route-12c5a5ad06b69231.js +0 -1
  492. package/app/.next/static/chunks/app/api/init/route-12c5a5ad06b69231.js +0 -1
  493. package/app/.next/static/chunks/app/api/keys/[id]/route-12c5a5ad06b69231.js +0 -1
  494. package/app/.next/static/chunks/app/api/keys/route-12c5a5ad06b69231.js +0 -1
  495. package/app/.next/static/chunks/app/api/locale/route-12c5a5ad06b69231.js +0 -1
  496. package/app/.next/static/chunks/app/api/models/alias/route-12c5a5ad06b69231.js +0 -1
  497. package/app/.next/static/chunks/app/api/models/availability/route-12c5a5ad06b69231.js +0 -1
  498. package/app/.next/static/chunks/app/api/models/route-12c5a5ad06b69231.js +0 -1
  499. package/app/.next/static/chunks/app/api/models/test/route-12c5a5ad06b69231.js +0 -1
  500. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-12c5a5ad06b69231.js +0 -1
  501. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-12c5a5ad06b69231.js +0 -1
  502. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-12c5a5ad06b69231.js +0 -1
  503. package/app/.next/static/chunks/app/api/oauth/iflow/cookie/route-12c5a5ad06b69231.js +0 -1
  504. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-12c5a5ad06b69231.js +0 -1
  505. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-12c5a5ad06b69231.js +0 -1
  506. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-12c5a5ad06b69231.js +0 -1
  507. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-12c5a5ad06b69231.js +0 -1
  508. package/app/.next/static/chunks/app/api/pricing/route-12c5a5ad06b69231.js +0 -1
  509. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-12c5a5ad06b69231.js +0 -1
  510. package/app/.next/static/chunks/app/api/provider-nodes/route-12c5a5ad06b69231.js +0 -1
  511. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-12c5a5ad06b69231.js +0 -1
  512. package/app/.next/static/chunks/app/api/providers/[id]/models/route-12c5a5ad06b69231.js +0 -1
  513. package/app/.next/static/chunks/app/api/providers/[id]/route-12c5a5ad06b69231.js +0 -1
  514. package/app/.next/static/chunks/app/api/providers/[id]/test/route-12c5a5ad06b69231.js +0 -1
  515. package/app/.next/static/chunks/app/api/providers/[id]/test-models/route-12c5a5ad06b69231.js +0 -1
  516. package/app/.next/static/chunks/app/api/providers/client/route-12c5a5ad06b69231.js +0 -1
  517. package/app/.next/static/chunks/app/api/providers/route-12c5a5ad06b69231.js +0 -1
  518. package/app/.next/static/chunks/app/api/providers/test-batch/route-12c5a5ad06b69231.js +0 -1
  519. package/app/.next/static/chunks/app/api/providers/validate/route-12c5a5ad06b69231.js +0 -1
  520. package/app/.next/static/chunks/app/api/proxy-pools/[id]/route-12c5a5ad06b69231.js +0 -1
  521. package/app/.next/static/chunks/app/api/proxy-pools/[id]/test/route-12c5a5ad06b69231.js +0 -1
  522. package/app/.next/static/chunks/app/api/proxy-pools/route-12c5a5ad06b69231.js +0 -1
  523. package/app/.next/static/chunks/app/api/settings/database/route-12c5a5ad06b69231.js +0 -1
  524. package/app/.next/static/chunks/app/api/settings/proxy-test/route-12c5a5ad06b69231.js +0 -1
  525. package/app/.next/static/chunks/app/api/settings/require-login/route-12c5a5ad06b69231.js +0 -1
  526. package/app/.next/static/chunks/app/api/settings/route-12c5a5ad06b69231.js +0 -1
  527. package/app/.next/static/chunks/app/api/shutdown/route-12c5a5ad06b69231.js +0 -1
  528. package/app/.next/static/chunks/app/api/tags/route-12c5a5ad06b69231.js +0 -1
  529. package/app/.next/static/chunks/app/api/translator/console-logs/route-12c5a5ad06b69231.js +0 -1
  530. package/app/.next/static/chunks/app/api/translator/console-logs/stream/route-12c5a5ad06b69231.js +0 -1
  531. package/app/.next/static/chunks/app/api/translator/load/route-12c5a5ad06b69231.js +0 -1
  532. package/app/.next/static/chunks/app/api/translator/save/route-12c5a5ad06b69231.js +0 -1
  533. package/app/.next/static/chunks/app/api/translator/send/route-12c5a5ad06b69231.js +0 -1
  534. package/app/.next/static/chunks/app/api/translator/translate/route-12c5a5ad06b69231.js +0 -1
  535. package/app/.next/static/chunks/app/api/tunnel/disable/route-12c5a5ad06b69231.js +0 -1
  536. package/app/.next/static/chunks/app/api/tunnel/enable/route-12c5a5ad06b69231.js +0 -1
  537. package/app/.next/static/chunks/app/api/tunnel/status/route-12c5a5ad06b69231.js +0 -1
  538. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-12c5a5ad06b69231.js +0 -1
  539. package/app/.next/static/chunks/app/api/usage/chart/route-12c5a5ad06b69231.js +0 -1
  540. package/app/.next/static/chunks/app/api/usage/history/route-12c5a5ad06b69231.js +0 -1
  541. package/app/.next/static/chunks/app/api/usage/logs/route-12c5a5ad06b69231.js +0 -1
  542. package/app/.next/static/chunks/app/api/usage/providers/route-12c5a5ad06b69231.js +0 -1
  543. package/app/.next/static/chunks/app/api/usage/request-details/[id]/download/route-12c5a5ad06b69231.js +0 -1
  544. package/app/.next/static/chunks/app/api/usage/request-details/[id]/route-12c5a5ad06b69231.js +0 -1
  545. package/app/.next/static/chunks/app/api/usage/request-details/aggregate/route-12c5a5ad06b69231.js +0 -1
  546. package/app/.next/static/chunks/app/api/usage/request-details/route-12c5a5ad06b69231.js +0 -1
  547. package/app/.next/static/chunks/app/api/usage/request-logs/route-12c5a5ad06b69231.js +0 -1
  548. package/app/.next/static/chunks/app/api/usage/stats/route-12c5a5ad06b69231.js +0 -1
  549. package/app/.next/static/chunks/app/api/usage/stream/route-12c5a5ad06b69231.js +0 -1
  550. package/app/.next/static/chunks/app/api/v1/api/chat/route-12c5a5ad06b69231.js +0 -1
  551. package/app/.next/static/chunks/app/api/v1/chat/completions/route-12c5a5ad06b69231.js +0 -1
  552. package/app/.next/static/chunks/app/api/v1/embeddings/route-12c5a5ad06b69231.js +0 -1
  553. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-12c5a5ad06b69231.js +0 -1
  554. package/app/.next/static/chunks/app/api/v1/messages/route-12c5a5ad06b69231.js +0 -1
  555. package/app/.next/static/chunks/app/api/v1/models/route-12c5a5ad06b69231.js +0 -1
  556. package/app/.next/static/chunks/app/api/v1/responses/route-12c5a5ad06b69231.js +0 -1
  557. package/app/.next/static/chunks/app/api/v1/route-12c5a5ad06b69231.js +0 -1
  558. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-12c5a5ad06b69231.js +0 -1
  559. package/app/.next/static/chunks/app/api/v1beta/models/route-12c5a5ad06b69231.js +0 -1
  560. package/app/.next/static/chunks/app/api/v1internal/route-12c5a5ad06b69231.js +0 -1
  561. package/app/.next/static/chunks/app/api/version/route-12c5a5ad06b69231.js +0 -1
  562. package/app/.next/static/chunks/app/manifest.webmanifest/route-12c5a5ad06b69231.js +0 -1
  563. package/app/.next/static/chunks/app/page-12c5a5ad06b69231.js +0 -1
  564. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-12c5a5ad06b69231.js +0 -1
  565. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-12c5a5ad06b69231.js +0 -1
  566. package/app/.next/static/chunks/next/dist/client/components/builtin/not-found-12c5a5ad06b69231.js +0 -1
  567. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-12c5a5ad06b69231.js +0 -1
  568. package/app/.next/static/css/1af9dd740b1b289e.css +0 -1
  569. /package/app/.next/static/{jRzqJ3I-9P1BJUJputQ6t → B2_zlWbWojumLEuXv1Xhe}/_buildManifest.js +0 -0
  570. /package/app/.next/static/{jRzqJ3I-9P1BJUJputQ6t → B2_zlWbWojumLEuXv1Xhe}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=907,a.ids=[907],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12412:a=>{a.exports=require("assert")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},18271:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>k});var e=c(48895),f=c(89718),g=c(99675),h=c(55330),i=a([e,h]);[e,h]=i.then?(await i)():i;let l=["expired","authentication","unauthorized","401","re-authorize"];async function j(a,b=!1){let c=(0,h.SB)(a.provider),d={accessToken:a.accessToken,refreshToken:a.refreshToken,expiresAt:a.expiresAt||a.tokenExpiresAt,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||c.needsRefresh(d)))return{connection:a,refreshed:!1};let e=await c.refreshCredentials(d,console);if(!e){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let g={updatedAt:new Date().toISOString()};return e.accessToken&&(g.accessToken=e.accessToken),e.refreshToken&&(g.refreshToken=e.refreshToken),e.expiresIn?g.expiresAt=new Date(Date.now()+1e3*e.expiresIn).toISOString():e.expiresAt&&(g.expiresAt=e.expiresAt),(e.copilotToken||e.copilotTokenExpiresAt)&&(g.providerSpecificData={...a.providerSpecificData,copilotToken:e.copilotToken,copilotTokenExpiresAt:e.copilotTokenExpiresAt}),await (0,f.rj)(a.id,g),{connection:{...a,...g},refreshed:!0}}async function k(a,{params:b}){let c;try{let{connectionId:a}=await b;if(!(c=await (0,f.Mc)(a)))return Response.json({error:"Connection not found"},{status:404});if("oauth"!==c.authType)return Response.json({message:"Usage not available for API key connections"});try{c=(await j(c)).connection}catch(a){return console.error("[Usage API] Credential refresh failed:",a),Response.json({error:`Credential refresh failed: ${a.message}`},{status:401})}let d=await (0,g.m)(c);if(function(a){if(!a?.message)return!1;let b=a.message.toLowerCase();return l.some(a=>b.includes(a))}(d)&&c.refreshToken)try{c=(await j(c,!0)).connection,d=await (0,g.m)(c)}catch(a){console.warn(`[Usage] ${c.provider}: force refresh failed: ${a.message}`)}return Response.json(d)}catch(b){let a=c?.provider??"unknown";return console.warn(`[Usage] ${a}: ${b.message}`),Response.json({error:b.message},{status:500})}}d()}catch(a){d(a)}})},19225:(a,b,c)=>{a.exports=c(44870)},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},73496:a=>{a.exports=require("http2")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81115:a=>{a.exports=require("constants")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},92764:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});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(18271),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/[connectionId]/route",pathname:"/api/usage/[connectionId]",filename:"route",bundlePath:"app/api/usage/[connectionId]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/[connectionId]/route.js",nextConfigOutput:"standalone",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/[connectionId]/route";"/index"===d&&(d="/");let e=await z.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: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&&!y){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||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.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 z.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)=>z.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=>z.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 z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.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"),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 z.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}}d()}catch(a){d(a)}})},94735:a=>{a.exports=require("events")},99675:(a,b,c)=>{c.d(b,{m:()=>g});var d=c(75924);let e={quotaApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels",loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token",clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",userAgent:(0,d.A9)()},f="2023-06-01";async function g(a){let{provider:b,accessToken:c,providerSpecificData:d}=a;switch(b){case"github":return await i(c,d);case"gemini-cli":return await k(c);case"antigravity":return await l(c);case"claude":return await n(c);case"codex":return await p(c);case"kiro":return await q(c,d);case"qwen":return await r(c,d);case"iflow":return await s(c);default:return{message:`Usage API not implemented for ${b}`}}}function h(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a||"string"==typeof a)return new Date(a).toISOString();return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}async function i(a,b){try{if(!a)throw Error("No GitHub access token available. Please re-authorize the connection.");let b=await fetch("https://api.github.com/copilot_internal/user",{headers:{Authorization:`token ${a}`,Accept:"application/json","X-GitHub-Api-Version":"2022-11-28","User-Agent":"GitHubCopilotChat/0.26.7","Editor-Version":"vscode/1.100.0","Editor-Plugin-Version":"copilot-chat/0.26.7"}});if(!b.ok){let a=await b.text();throw Error(`GitHub API error: ${a}`)}let c=await b.json();if(c.quota_snapshots){let a=c.quota_snapshots,b=h(c.quota_reset_date);return{plan:c.copilot_plan,resetDate:c.quota_reset_date,quotas:{chat:{...j(a.chat),resetAt:b},completions:{...j(a.completions),resetAt:b},premium_interactions:{...j(a.premium_interactions),resetAt:b}}}}if(c.monthly_quotas||c.limited_user_quotas){let a=c.monthly_quotas||{},b=c.limited_user_quotas||{},d=h(c.limited_user_reset_date);return{plan:c.copilot_plan||c.access_type_sku,resetDate:c.limited_user_reset_date,quotas:{chat:{used:b.chat||0,total:a.chat||0,unlimited:!1,resetAt:d},completions:{used:b.completions||0,total:a.completions||0,unlimited:!1,resetAt:d}}}}return{message:"GitHub Copilot connected. Unable to parse quota data."}}catch(a){throw Error(`Failed to fetch GitHub usage: ${a.message}`)}}function j(a){return a?{used:a.entitlement-a.remaining,total:a.entitlement,remaining:a.remaining,unlimited:a.unlimited||!1}:{used:0,total:0,unlimited:!0}}async function k(a){try{if(!(await fetch("https://cloudresourcemanager.googleapis.com/v1/projects?filter=lifecycleState:ACTIVE",{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}})).ok)return{message:"Gemini CLI uses Google Cloud quotas. Check Google Cloud Console for details."};return{message:"Gemini CLI connected. Usage tracked via Google Cloud Console."}}catch(a){return{message:"Unable to fetch Gemini usage. Check Google Cloud Console."}}}async function l(a,b){try{let b,c=await m(a),d=c?.cloudaicompanionProject||null,f=new AbortController,g=setTimeout(()=>f.abort(),1e4);try{b=await fetch(e.quotaApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":e.userAgent,"Content-Type":"application/json","X-Client-Name":"antigravity","X-Client-Version":"1.107.0","x-request-source":"local"},body:JSON.stringify({...d?{project:d}:{}}),signal:f.signal})}finally{clearTimeout(g)}if(403===b.status)return{message:"Antigravity quota API access forbidden. Chat may still work.",quotas:{}};if(401===b.status)return{message:"Antigravity quota API authentication expired. Chat may still work.",quotas:{}};if(!b.ok)throw Error(`Antigravity API error: ${b.status}`);let i=await b.json(),j={};if(i.models){let a=["claude-opus-4-6-thinking","claude-sonnet-4-6","gemini-3.1-pro-high","gemini-3.1-pro-low","gemini-3-flash","gpt-oss-120b-medium"];for(let[b,c]of Object.entries(i.models)){if(!c.quotaInfo||c.isInternal||!a.includes(b))continue;let d=c.quotaInfo.remainingFraction||0,e=100*d,f=Math.round(1e3*d),g=1e3-f;j[b]={used:g,total:1e3,resetAt:h(c.quotaInfo.resetTime),remainingPercentage:e,unlimited:!1,displayName:c.displayName||b}}}return{plan:c?.currentTier?.name||"Unknown",quotas:j,subscriptionInfo:c}}catch(a){return console.error("[Antigravity Usage] Error:",a.message,a.cause),{message:`Antigravity error: ${a.message}`}}}async function m(a){let b=new AbortController,c=setTimeout(()=>b.abort(),1e4);try{let c=await fetch(e.loadProjectApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":e.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify({metadata:d.Cn,mode:1}),signal:b.signal});if(!c.ok)return null;return await c.json()}catch(a){return console.error("[Antigravity Subscription] Error:",a.message),null}finally{clearTimeout(c)}}async function n(a){try{let b=await fetch("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":f}});if(b.ok){let a=await b.json(),c={},d=a=>a&&"object"==typeof a&&"number"==typeof a.utilization,e=a=>{let b=a.utilization,c=Math.max(0,100-b);return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:h(a.resets_at),unlimited:!1}};for(let[b,f]of(d(a.five_hour)&&(c["session (5h)"]=e(a.five_hour)),d(a.seven_day)&&(c["weekly (7d)"]=e(a.seven_day)),Object.entries(a)))if(b.startsWith("seven_day_")&&"seven_day"!==b&&d(f)){let a=b.replace("seven_day_","");c[`weekly ${a} (7d)`]=e(f)}return{plan:"Claude Code",extraUsage:a.extra_usage??null,quotas:c}}return console.warn(`[Claude Usage] OAuth endpoint returned ${b.status}, falling back to legacy`),await o(a)}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function o(a){try{let b=await fetch("https://api.anthropic.com/v1/settings",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":f}});if(b.ok){let c=await b.json();if(c.organization_id){let b=await fetch("https://api.anthropic.com/v1/organizations/{org_id}/usage".replace("{org_id}",c.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":f}});if(b.ok){let a=await b.json();return{plan:c.plan||"Unknown",organization:c.organization_name,quotas:a}}}return{plan:c.plan||"Unknown",organization:c.organization_name,message:"Claude connected. Usage details require admin access."}}return{message:"Claude connected. Usage API requires admin permissions."}}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function p(a){try{let b=await fetch("https://chatgpt.com/backend-api/wham/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}});if(!b.ok)throw Error(`Codex API error: ${b.status}`);let c=await b.json(),d=c.rate_limit||{},e=d.primary_window||{},f=d.secondary_window||{},g=h(e.reset_at?1e3*e.reset_at:null),i=h(f.reset_at?1e3*f.reset_at:null);return{plan:c.plan_type||"unknown",limitReached:d.limit_reached||!1,quotas:{session:{used:e.used_percent||0,total:100,remaining:100-(e.used_percent||0),resetAt:g,unlimited:!1},weekly:{used:f.used_percent||0,total:100,remaining:100-(f.used_percent||0),resetAt:i,unlimited:!1}}}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function q(a,b){let c=b?.profileArn||"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX";try{let b=await fetch("https://codewhisperer.us-east-1.amazonaws.com",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/x-amz-json-1.0","x-amz-target":"AmazonCodeWhispererService.GetUsageLimits",Accept:"application/json"},body:JSON.stringify({origin:"AI_EDITOR",profileArn:c,resourceType:"AGENTIC_REQUEST"})});if(!b.ok){let a=await b.text();if(403===b.status||401===b.status)return{message:"Kiro quota API authentication expired. Chat may still work.",quotas:{}};throw Error(`Kiro API error (${b.status}): ${a}`)}let d=await b.json(),e=d.usageBreakdownList||[],f={},g=h(d.nextDateReset||d.resetDate);return e.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",c=a.currentUsageWithPrecision||0,d=a.usageLimitWithPrecision||0;if(f[b]={used:c,total:d,remaining:d-c,resetAt:g,unlimited:!1},a.freeTrialInfo){let c=a.freeTrialInfo.currentUsageWithPrecision||0,d=a.freeTrialInfo.usageLimitWithPrecision||0;f[`${b}_freetrial`]={used:c,total:d,remaining:d-c,resetAt:g,unlimited:!1}}}),{plan:d.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:f}}catch(b){try{let b=new URLSearchParams({origin:"AI_EDITOR",profileArn:c,resourceType:"AGENTIC_REQUEST"}),d=await fetch(`https://q.us-east-1.amazonaws.com/getUsageLimits?${b}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}});if(!d.ok)throw Error(`Fallback API error (${d.status})`);let e=await d.json(),f=e.usageBreakdownList||[],g={},i=h(e.nextDateReset||e.resetDate);return f.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",c=a.currentUsageWithPrecision||0,d=a.usageLimitWithPrecision||0;if(g[b]={used:c,total:d,remaining:d-c,resetAt:i,unlimited:!1},a.freeTrialInfo){let c=a.freeTrialInfo.currentUsageWithPrecision||0,d=a.freeTrialInfo.usageLimitWithPrecision||0;g[`${b}_freetrial`]={used:c,total:d,remaining:d-c,resetAt:h(a.freeTrialInfo.freeTrialExpiry),unlimited:!1}}}),{plan:e.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:g}}catch(a){throw Error(`Failed to fetch Kiro usage: ${b.message} | Fallback: ${a.message}`)}}}async function r(a,b){try{if(!b?.resourceUrl)return{message:"Qwen connected. No resource URL available."};return{message:"Qwen connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch Qwen usage."}}}async function s(a){try{return{message:"iFlow connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch iFlow usage."}}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,6557,9718,3832,6072,8590,3093,8895],()=>b(b.s=92764));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=907,a.ids=[907],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},643:a=>{a.exports=require("node:perf_hooks")},1932:a=>{a.exports=require("url")},4573:a=>{a.exports=require("node:buffer")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12412:a=>{a.exports=require("assert")},14985:a=>{a.exports=require("dns")},16698:a=>{a.exports=require("node:async_hooks")},18271:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>k});var e=c(48895),f=c(89718),g=c(99675),h=c(55330),i=a([e,h]);[e,h]=i.then?(await i)():i;let l=["expired","authentication","unauthorized","401","re-authorize"];async function j(a,b=!1){let c=(0,h.SB)(a.provider),d={accessToken:a.accessToken,refreshToken:a.refreshToken,expiresAt:a.expiresAt||a.tokenExpiresAt,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||c.needsRefresh(d)))return{connection:a,refreshed:!1};let e=await c.refreshCredentials(d,console);if(!e){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let g={updatedAt:new Date().toISOString()};return e.accessToken&&(g.accessToken=e.accessToken),e.refreshToken&&(g.refreshToken=e.refreshToken),e.expiresIn?g.expiresAt=new Date(Date.now()+1e3*e.expiresIn).toISOString():e.expiresAt&&(g.expiresAt=e.expiresAt),(e.copilotToken||e.copilotTokenExpiresAt)&&(g.providerSpecificData={...a.providerSpecificData,copilotToken:e.copilotToken,copilotTokenExpiresAt:e.copilotTokenExpiresAt}),await (0,f.rj)(a.id,g),{connection:{...a,...g},refreshed:!0}}async function k(a,{params:b}){let c;try{let{connectionId:a}=await b;if(!(c=await (0,f.Mc)(a)))return Response.json({error:"Connection not found"},{status:404});if("oauth"!==c.authType)return Response.json({message:"Usage not available for API key connections"});try{c=(await j(c)).connection}catch(a){return console.error("[Usage API] Credential refresh failed:",a),Response.json({error:`Credential refresh failed: ${a.message}`},{status:401})}let d=await (0,g.m)(c);if(function(a){if(!a?.message)return!1;let b=a.message.toLowerCase();return l.some(a=>b.includes(a))}(d)&&c.refreshToken)try{c=(await j(c,!0)).connection,d=await (0,g.m)(c)}catch(a){console.warn(`[Usage] ${c.provider}: force refresh failed: ${a.message}`)}return Response.json(d)}catch(b){let a=c?.provider??"unknown";return console.warn(`[Usage] ${a}: ${b.message}`),Response.json({error:b.message},{status:500})}}d()}catch(a){d(a)}})},19225:(a,b,c)=>{a.exports=c(44870)},21820:a=>{a.exports=require("os")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},32467:a=>{a.exports=require("node:http2")},33873:a=>{a.exports=require("path")},34589:a=>{a.exports=require("node:assert")},36478:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});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(18271),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/[connectionId]/route",pathname:"/api/usage/[connectionId]",filename:"route",bundlePath:"app/api/usage/[connectionId]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/[connectionId]/route.js",nextConfigOutput:"standalone",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/usage/[connectionId]/route";"/index"===d&&(d="/");let e=await z.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: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&&!y){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||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.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 z.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)=>z.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=>z.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 z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.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"),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 z.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}}d()}catch(a){d(a)}})},37067:a=>{a.exports=require("node:http")},37540:a=>{a.exports=require("node:console")},38522:a=>{a.exports=require("node:zlib")},40610:a=>{a.exports=require("node:dns")},41692:a=>{a.exports=require("node:tls")},41792:a=>{a.exports=require("node:querystring")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},53053:a=>{a.exports=require("node:diagnostics_channel")},55511:a=>{a.exports=require("crypto")},55591:a=>{a.exports=require("https")},57075:a=>{a.exports=require("node:stream")},57975:a=>{a.exports=require("node:util")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},73429:a=>{a.exports=require("node:util/types")},73496:a=>{a.exports=require("http2")},74075:a=>{a.exports=require("zlib")},75919:a=>{a.exports=require("node:worker_threads")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78474:a=>{a.exports=require("node:events")},79868:a=>{a.exports=require("node:sqlite")},81115:a=>{a.exports=require("constants")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{a.exports=require("better-sqlite3")},87997:a=>{a.exports=require("node:timers")},91645:a=>{a.exports=require("net")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},94735:a=>{a.exports=require("events")},99675:(a,b,c)=>{c.d(b,{m:()=>g});var d=c(75924);let e={quotaApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels",loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token",clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",userAgent:(0,d.A9)()},f="2023-06-01";async function g(a){let{provider:b,accessToken:c,providerSpecificData:d}=a;switch(b){case"github":return await i(c,d);case"gemini-cli":return await k(c);case"antigravity":return await l(c);case"claude":return await n(c);case"codex":return await p(c);case"kiro":return await q(c,d);case"qwen":return await r(c,d);case"iflow":return await s(c);default:return{message:`Usage API not implemented for ${b}`}}}function h(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a||"string"==typeof a)return new Date(a).toISOString();return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}async function i(a,b){try{if(!a)throw Error("No GitHub access token available. Please re-authorize the connection.");let b=await fetch("https://api.github.com/copilot_internal/user",{headers:{Authorization:`token ${a}`,Accept:"application/json","X-GitHub-Api-Version":"2022-11-28","User-Agent":"GitHubCopilotChat/0.26.7","Editor-Version":"vscode/1.100.0","Editor-Plugin-Version":"copilot-chat/0.26.7"}});if(!b.ok){let a=await b.text();throw Error(`GitHub API error: ${a}`)}let c=await b.json();if(c.quota_snapshots){let a=c.quota_snapshots,b=h(c.quota_reset_date);return{plan:c.copilot_plan,resetDate:c.quota_reset_date,quotas:{chat:{...j(a.chat),resetAt:b},completions:{...j(a.completions),resetAt:b},premium_interactions:{...j(a.premium_interactions),resetAt:b}}}}if(c.monthly_quotas||c.limited_user_quotas){let a=c.monthly_quotas||{},b=c.limited_user_quotas||{},d=h(c.limited_user_reset_date);return{plan:c.copilot_plan||c.access_type_sku,resetDate:c.limited_user_reset_date,quotas:{chat:{used:b.chat||0,total:a.chat||0,unlimited:!1,resetAt:d},completions:{used:b.completions||0,total:a.completions||0,unlimited:!1,resetAt:d}}}}return{message:"GitHub Copilot connected. Unable to parse quota data."}}catch(a){throw Error(`Failed to fetch GitHub usage: ${a.message}`)}}function j(a){return a?{used:a.entitlement-a.remaining,total:a.entitlement,remaining:a.remaining,unlimited:a.unlimited||!1}:{used:0,total:0,unlimited:!0}}async function k(a){try{if(!(await fetch("https://cloudresourcemanager.googleapis.com/v1/projects?filter=lifecycleState:ACTIVE",{headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}})).ok)return{message:"Gemini CLI uses Google Cloud quotas. Check Google Cloud Console for details."};return{message:"Gemini CLI connected. Usage tracked via Google Cloud Console."}}catch(a){return{message:"Unable to fetch Gemini usage. Check Google Cloud Console."}}}async function l(a,b){try{let b,c=await m(a),d=c?.cloudaicompanionProject||null,f=new AbortController,g=setTimeout(()=>f.abort(),1e4);try{b=await fetch(e.quotaApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":e.userAgent,"Content-Type":"application/json","X-Client-Name":"antigravity","X-Client-Version":"1.107.0","x-request-source":"local"},body:JSON.stringify({...d?{project:d}:{}}),signal:f.signal})}finally{clearTimeout(g)}if(403===b.status)return{message:"Antigravity quota API access forbidden. Chat may still work.",quotas:{}};if(401===b.status)return{message:"Antigravity quota API authentication expired. Chat may still work.",quotas:{}};if(!b.ok)throw Error(`Antigravity API error: ${b.status}`);let i=await b.json(),j={};if(i.models){let a=["claude-opus-4-6-thinking","claude-sonnet-4-6","gemini-3.1-pro-high","gemini-3.1-pro-low","gemini-3-flash","gpt-oss-120b-medium"];for(let[b,c]of Object.entries(i.models)){if(!c.quotaInfo||c.isInternal||!a.includes(b))continue;let d=c.quotaInfo.remainingFraction||0,e=100*d,f=Math.round(1e3*d),g=1e3-f;j[b]={used:g,total:1e3,resetAt:h(c.quotaInfo.resetTime),remainingPercentage:e,unlimited:!1,displayName:c.displayName||b}}}return{plan:c?.currentTier?.name||"Unknown",quotas:j,subscriptionInfo:c}}catch(a){return console.error("[Antigravity Usage] Error:",a.message,a.cause),{message:`Antigravity error: ${a.message}`}}}async function m(a){let b=new AbortController,c=setTimeout(()=>b.abort(),1e4);try{let c=await fetch(e.loadProjectApiUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"User-Agent":e.userAgent,"Content-Type":"application/json","x-request-source":"local"},body:JSON.stringify({metadata:d.Cn,mode:1}),signal:b.signal});if(!c.ok)return null;return await c.json()}catch(a){return console.error("[Antigravity Subscription] Error:",a.message),null}finally{clearTimeout(c)}}async function n(a){try{let b=await fetch("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":f}});if(b.ok){let a=await b.json(),c={},d=a=>a&&"object"==typeof a&&"number"==typeof a.utilization,e=a=>{let b=a.utilization,c=Math.max(0,100-b);return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:h(a.resets_at),unlimited:!1}};for(let[b,f]of(d(a.five_hour)&&(c["session (5h)"]=e(a.five_hour)),d(a.seven_day)&&(c["weekly (7d)"]=e(a.seven_day)),Object.entries(a)))if(b.startsWith("seven_day_")&&"seven_day"!==b&&d(f)){let a=b.replace("seven_day_","");c[`weekly ${a} (7d)`]=e(f)}return{plan:"Claude Code",extraUsage:a.extra_usage??null,quotas:c}}return console.warn(`[Claude Usage] OAuth endpoint returned ${b.status}, falling back to legacy`),await o(a)}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function o(a){try{let b=await fetch("https://api.anthropic.com/v1/settings",{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":f}});if(b.ok){let c=await b.json();if(c.organization_id){let b=await fetch("https://api.anthropic.com/v1/organizations/{org_id}/usage".replace("{org_id}",c.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":f}});if(b.ok){let a=await b.json();return{plan:c.plan||"Unknown",organization:c.organization_name,quotas:a}}}return{plan:c.plan||"Unknown",organization:c.organization_name,message:"Claude connected. Usage details require admin access."}}return{message:"Claude connected. Usage API requires admin permissions."}}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function p(a){try{let b=await fetch("https://chatgpt.com/backend-api/wham/usage",{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}});if(!b.ok)throw Error(`Codex API error: ${b.status}`);let c=await b.json(),d=c.rate_limit||{},e=d.primary_window||{},f=d.secondary_window||{},g=h(e.reset_at?1e3*e.reset_at:null),i=h(f.reset_at?1e3*f.reset_at:null);return{plan:c.plan_type||"unknown",limitReached:d.limit_reached||!1,quotas:{session:{used:e.used_percent||0,total:100,remaining:100-(e.used_percent||0),resetAt:g,unlimited:!1},weekly:{used:f.used_percent||0,total:100,remaining:100-(f.used_percent||0),resetAt:i,unlimited:!1}}}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function q(a,b){let c=b?.profileArn||"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX";try{let b=await fetch("https://codewhisperer.us-east-1.amazonaws.com",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/x-amz-json-1.0","x-amz-target":"AmazonCodeWhispererService.GetUsageLimits",Accept:"application/json"},body:JSON.stringify({origin:"AI_EDITOR",profileArn:c,resourceType:"AGENTIC_REQUEST"})});if(!b.ok){let a=await b.text();if(403===b.status||401===b.status)return{message:"Kiro quota API authentication expired. Chat may still work.",quotas:{}};throw Error(`Kiro API error (${b.status}): ${a}`)}let d=await b.json(),e=d.usageBreakdownList||[],f={},g=h(d.nextDateReset||d.resetDate);return e.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",c=a.currentUsageWithPrecision||0,d=a.usageLimitWithPrecision||0;if(f[b]={used:c,total:d,remaining:d-c,resetAt:g,unlimited:!1},a.freeTrialInfo){let c=a.freeTrialInfo.currentUsageWithPrecision||0,d=a.freeTrialInfo.usageLimitWithPrecision||0;f[`${b}_freetrial`]={used:c,total:d,remaining:d-c,resetAt:g,unlimited:!1}}}),{plan:d.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:f}}catch(b){try{let b=new URLSearchParams({origin:"AI_EDITOR",profileArn:c,resourceType:"AGENTIC_REQUEST"}),d=await fetch(`https://q.us-east-1.amazonaws.com/getUsageLimits?${b}`,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}});if(!d.ok)throw Error(`Fallback API error (${d.status})`);let e=await d.json(),f=e.usageBreakdownList||[],g={},i=h(e.nextDateReset||e.resetDate);return f.forEach(a=>{let b=a.resourceType?.toLowerCase()||"unknown",c=a.currentUsageWithPrecision||0,d=a.usageLimitWithPrecision||0;if(g[b]={used:c,total:d,remaining:d-c,resetAt:i,unlimited:!1},a.freeTrialInfo){let c=a.freeTrialInfo.currentUsageWithPrecision||0,d=a.freeTrialInfo.usageLimitWithPrecision||0;g[`${b}_freetrial`]={used:c,total:d,remaining:d-c,resetAt:h(a.freeTrialInfo.freeTrialExpiry),unlimited:!1}}}),{plan:e.subscriptionInfo?.subscriptionTitle||"Kiro",quotas:g}}catch(a){throw Error(`Failed to fetch Kiro usage: ${b.message} | Fallback: ${a.message}`)}}}async function r(a,b){try{if(!b?.resourceUrl)return{message:"Qwen connected. No resource URL available."};return{message:"Qwen connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch Qwen usage."}}}async function s(a){try{return{message:"iFlow connected. Usage tracked per request."}}catch(a){return{message:"Unable to fetch iFlow usage."}}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,6557,9718,3832,6072,8590,3093,8895],()=>b(b.s=36478));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=4422,a.ids=[336,4422],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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},72585:(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(76072),x=c(89718);let y=new Set(["2h","6h","12h","24h","7d","30d","60d"]);async function z(a){try{let{searchParams:b}=new URL(a.url),c=b.get("period")||"7d",d=b.get("from"),e=b.get("to"),f=d&&e;if(!f&&!y.has(c))return v.NextResponse.json({error:"Invalid period"},{status:400});let g=null,h=b.get("apiKey");if(h){let a=await (0,x.getApiKeyById)(h);g=a?.key||null}let i=await (0,w.getChartData)(f?"7d":c,g,f?{from:d,to:e}:{});return v.NextResponse.json(i)}catch(a){return console.error("[API] Failed to get chart data:",a),v.NextResponse.json({error:"Failed to fetch chart data"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/chart/route",pathname:"/api/usage/chart",filename:"route",bundlePath:"app/api/usage/chart/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/chart/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/chart/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}}},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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=4422,a.ids=[336,4422],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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},49201:(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(76072),x=c(89718);let y=new Set(["2h","6h","12h","24h","7d","30d","60d"]);async function z(a){try{let{searchParams:b}=new URL(a.url),c=b.get("period")||"7d",d=b.get("from"),e=b.get("to"),f=d&&e;if(!f&&!y.has(c))return v.NextResponse.json({error:"Invalid period"},{status:400});let g=null,h=b.get("apiKey");if(h){let a=await (0,x.getApiKeyById)(h);g=a?.key||null}let i=await (0,w.getChartData)(f?"7d":c,g,f?{from:d,to:e}:{});return v.NextResponse.json(i)}catch(a){return console.error("[API] Failed to get chart data:",a),v.NextResponse.json({error:"Failed to fetch chart data"},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/usage/chart/route",pathname:"/api/usage/chart",filename:"route",bundlePath:"app/api/usage/chart/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/nip/Desktop/WORKSPACE/iCheck/iCheck.AI.Workflows/9router/src/app/api/usage/chart/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/chart/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")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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,6557,1813,9718,6072],()=>b(b.s=72585));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,6557,1813,9718,6072],()=>b(b.s=49201));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=3038,a.ids=[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")},6884:(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}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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=[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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},47167:(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")},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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,6557,1813,9718,6072],()=>b(b.s=6884));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,6557,1813,9718,6072],()=>b(b.s=47167));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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},32028:(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}}},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},37365:(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}}},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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=32028));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=37365));module.exports=c})();
@@ -1,4 +1,4 @@
1
- (()=>{var a={};a.id=1088,a.ids=[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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},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",deprecated:!0,deprecationNotice:"Google has tightened Gemini CLI abuse detection and restricted Pro models to paid accounts (Mar 25, 2026). Using this provider may violate ToS and risk account bans."},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:"#D97757"},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"},opencode:{id:"opencode",alias:"oc",name:"OpenCode",icon:"terminal",color:"#E87040",textIcon:"OC"}},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:"#D97757",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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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=[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")},12041:(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}}},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},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",deprecated:!0,deprecationNotice:"Google has tightened Gemini CLI abuse detection and restricted Pro models to paid accounts (Mar 25, 2026). Using this provider may violate ToS and risk account bans."},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:"#D97757"},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"},opencode:{id:"opencode",alias:"oc",name:"OpenCode",icon:"terminal",color:"#E87040",textIcon:"OC"}},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:"#D97757",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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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}},85363:(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}}},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,6557,1813,9718],()=>b(b.s=85363));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}},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,6557,1813,9718],()=>b(b.s=12041));module.exports=c})();
@@ -1,4 +1,4 @@
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")},33440:(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}}},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")},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=`
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")},38255:(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}}},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")},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
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}},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=33440));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}},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=38255));module.exports=c})();
@@ -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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87550:a=>{"use strict";a.exports=require("better-sqlite3")},91063:(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}}},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=91063));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")},12412:a=>{"use strict";a.exports=require("assert")},27910:a=>{"use strict";a.exports=require("stream")},28354:a=>{"use strict";a.exports=require("util")},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")},59070:(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}}},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:()=>{},81115:a=>{"use strict";a.exports=require("constants")},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=59070));module.exports=c})();