@hirra/vibemeter 0.1.3 → 0.1.4

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 (262) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +7 -1
  3. package/.next/build-manifest.json +7 -8
  4. package/.next/fallback-build-manifest.json +3 -3
  5. package/.next/prerender-manifest.json +16 -12
  6. package/.next/required-server-files.js +5 -4
  7. package/.next/required-server-files.json +5 -4
  8. package/.next/routes-manifest.json +36 -0
  9. package/.next/server/app/_global-error/page/build-manifest.json +4 -5
  10. package/.next/server/app/_global-error/page.js +4 -4
  11. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  12. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_global-error.html +1 -1
  14. package/.next/server/app/_global-error.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  18. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  19. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  20. package/.next/server/app/_not-found/page/build-manifest.json +4 -5
  21. package/.next/server/app/_not-found/page.js +5 -4
  22. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  23. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  24. package/.next/server/app/admin/page/build-manifest.json +4 -5
  25. package/.next/server/app/admin/page.js +7 -5
  26. package/.next/server/app/admin/page.js.nft.json +1 -1
  27. package/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/codex-accounts/route.js +1 -1
  29. package/.next/server/app/api/codex-accounts/route.js.nft.json +1 -1
  30. package/.next/server/app/api/float/route/app-paths-manifest.json +3 -0
  31. package/.next/server/app/api/float/route/build-manifest.json +9 -0
  32. package/.next/server/app/api/float/route/server-reference-manifest.json +4 -0
  33. package/.next/server/app/api/float/route.js +8 -0
  34. package/.next/server/app/api/float/route.js.map +5 -0
  35. package/.next/server/app/api/float/route.js.nft.json +1 -0
  36. package/.next/server/app/api/float/route_client-reference-manifest.js +3 -0
  37. package/.next/server/app/api/import-sessions/route.js.nft.json +1 -1
  38. package/.next/server/app/api/sessions/[id]/tags/route.js +1 -1
  39. package/.next/server/app/api/sessions/[id]/tags/route.js.nft.json +1 -1
  40. package/.next/server/app/api/sessions/route.js +1 -1
  41. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  42. package/.next/server/app/api/settings/alerts/route/app-paths-manifest.json +3 -0
  43. package/.next/server/app/api/settings/alerts/route/build-manifest.json +9 -0
  44. package/.next/server/app/api/settings/alerts/route/server-reference-manifest.json +4 -0
  45. package/.next/server/app/api/settings/alerts/route.js +9 -0
  46. package/.next/server/app/api/settings/alerts/route.js.map +5 -0
  47. package/.next/server/app/api/settings/alerts/route.js.nft.json +1 -0
  48. package/.next/server/app/api/settings/alerts/route_client-reference-manifest.js +3 -0
  49. package/.next/server/app/api/settings/notify/route/app-paths-manifest.json +3 -0
  50. package/.next/server/app/api/settings/notify/route/build-manifest.json +9 -0
  51. package/.next/server/app/api/settings/notify/route/server-reference-manifest.json +4 -0
  52. package/.next/server/app/api/settings/notify/route.js +7 -0
  53. package/.next/server/app/api/settings/notify/route.js.map +5 -0
  54. package/.next/server/app/api/settings/notify/route.js.nft.json +1 -0
  55. package/.next/server/app/api/settings/notify/route_client-reference-manifest.js +3 -0
  56. package/.next/server/app/api/usage/route.js +1 -1
  57. package/.next/server/app/api/usage/route.js.nft.json +1 -1
  58. package/.next/server/app/float/page/app-paths-manifest.json +3 -0
  59. package/.next/server/app/float/page/build-manifest.json +16 -0
  60. package/.next/server/app/float/page/next-font-manifest.json +11 -0
  61. package/.next/server/app/float/page/react-loadable-manifest.json +1 -0
  62. package/.next/server/app/float/page/server-reference-manifest.json +4 -0
  63. package/.next/server/app/float/page.js +15 -0
  64. package/.next/server/app/float/page.js.map +5 -0
  65. package/.next/server/app/float/page.js.nft.json +1 -0
  66. package/.next/server/app/float/page_client-reference-manifest.js +3 -0
  67. package/.next/server/app/install.sh/route/app-paths-manifest.json +3 -0
  68. package/.next/server/app/install.sh/route/build-manifest.json +9 -0
  69. package/.next/server/app/install.sh/route/server-reference-manifest.json +4 -0
  70. package/.next/server/app/install.sh/route.js +6 -0
  71. package/.next/server/app/install.sh/route.js.map +5 -0
  72. package/.next/server/app/install.sh/route.js.nft.json +1 -0
  73. package/.next/server/app/install.sh/route_client-reference-manifest.js +3 -0
  74. package/.next/server/app/install.sh.body +108 -0
  75. package/.next/server/app/install.sh.meta +1 -0
  76. package/.next/server/app/page/build-manifest.json +4 -5
  77. package/.next/server/app/page.js +8 -5
  78. package/.next/server/app/page.js.nft.json +1 -1
  79. package/.next/server/app/page_client-reference-manifest.js +1 -1
  80. package/.next/server/app/settings/page/app-paths-manifest.json +3 -0
  81. package/.next/server/app/settings/page/build-manifest.json +16 -0
  82. package/.next/server/app/settings/page/next-font-manifest.json +11 -0
  83. package/.next/server/app/settings/page/react-loadable-manifest.json +1 -0
  84. package/.next/server/app/settings/page/server-reference-manifest.json +4 -0
  85. package/.next/server/app/settings/page.js +17 -0
  86. package/.next/server/app/settings/page.js.map +5 -0
  87. package/.next/server/app/settings/page.js.nft.json +1 -0
  88. package/.next/server/app/settings/page_client-reference-manifest.js +3 -0
  89. package/.next/server/app-paths-manifest.json +7 -1
  90. package/.next/server/chunks/[externals]__0_i~3ox._.js +3 -0
  91. package/.next/server/chunks/[externals]__0_i~3ox._.js.map +1 -0
  92. package/.next/server/chunks/[externals]__13p_1zh._.js +3 -0
  93. package/.next/server/chunks/[externals]__13p_1zh._.js.map +1 -0
  94. package/.next/server/chunks/[root-of-the-server]__01t2c3w._.js +38 -0
  95. package/.next/server/chunks/[root-of-the-server]__01t2c3w._.js.map +1 -0
  96. package/.next/server/chunks/{[root-of-the-server]__0g0u0lm._.js → [root-of-the-server]__024yzee._.js} +2 -2
  97. package/.next/server/chunks/{[root-of-the-server]__00q0o~z._.js → [root-of-the-server]__082iwfa._.js} +2 -2
  98. package/.next/server/chunks/[root-of-the-server]__0chedn~._.js +1 -1
  99. package/.next/server/chunks/[root-of-the-server]__0mwf0bn._.js +38 -0
  100. package/.next/server/chunks/[root-of-the-server]__0mwf0bn._.js.map +1 -0
  101. package/.next/server/chunks/{[root-of-the-server]__0-74syk._.js → [root-of-the-server]__0ru3_it._.js} +2 -2
  102. package/.next/server/chunks/[root-of-the-server]__0u6y_k1._.js +111 -0
  103. package/.next/server/chunks/[root-of-the-server]__0u6y_k1._.js.map +1 -0
  104. package/.next/server/chunks/{[root-of-the-server]__0866q87._.js → [root-of-the-server]__0xa4dzi._.js} +2 -2
  105. package/.next/server/chunks/[root-of-the-server]__13415c6._.js +96 -0
  106. package/.next/server/chunks/[root-of-the-server]__13415c6._.js.map +1 -0
  107. package/.next/server/chunks/[root-of-the-server]__13j_28o._.js +96 -0
  108. package/.next/server/chunks/[root-of-the-server]__13j_28o._.js.map +1 -0
  109. package/.next/server/chunks/_next-internal_server_app_api_float_route_actions_012j~jr.js +3 -0
  110. package/.next/server/chunks/_next-internal_server_app_api_float_route_actions_012j~jr.js.map +1 -0
  111. package/.next/server/chunks/_next-internal_server_app_api_settings_alerts_route_actions_0ydcyko.js +3 -0
  112. package/.next/server/chunks/_next-internal_server_app_api_settings_alerts_route_actions_0ydcyko.js.map +1 -0
  113. package/.next/server/chunks/_next-internal_server_app_api_settings_notify_route_actions_0-j35mb.js +3 -0
  114. package/.next/server/chunks/_next-internal_server_app_api_settings_notify_route_actions_0-j35mb.js.map +1 -0
  115. package/.next/server/chunks/_next-internal_server_app_install_sh_route_actions_0cj-6me.js +3 -0
  116. package/.next/server/chunks/_next-internal_server_app_install_sh_route_actions_0cj-6me.js.map +1 -0
  117. package/.next/server/chunks/node_modules_next_06f88ko._.js +19 -0
  118. package/.next/server/chunks/node_modules_next_06f88ko._.js.map +1 -0
  119. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_03jj5jj.js +18 -0
  120. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_03jj5jj.js.map +1 -0
  121. package/.next/server/chunks/src_12i1qk5._.js +3 -0
  122. package/.next/server/chunks/src_12i1qk5._.js.map +1 -0
  123. package/.next/server/chunks/src_lib_alerts_ticker_ts_0n6oy1d._.js +169 -0
  124. package/.next/server/chunks/src_lib_alerts_ticker_ts_0n6oy1d._.js.map +1 -0
  125. package/.next/server/chunks/ssr/[root-of-the-server]__03mt8o0._.js +3 -0
  126. package/.next/server/chunks/ssr/[root-of-the-server]__03mt8o0._.js.map +1 -0
  127. package/.next/server/chunks/ssr/{[root-of-the-server]__098zro9._.js → [root-of-the-server]__090jxzh._.js} +2 -2
  128. package/.next/server/chunks/ssr/[root-of-the-server]__090jxzh._.js.map +1 -0
  129. package/.next/server/chunks/ssr/{[root-of-the-server]__09hgk-7._.js → [root-of-the-server]__0c3j40u._.js} +2 -2
  130. package/.next/server/chunks/ssr/[root-of-the-server]__0c3j40u._.js.map +1 -0
  131. package/.next/server/chunks/ssr/[root-of-the-server]__0ot4nev._.js +3 -0
  132. package/.next/server/chunks/ssr/[root-of-the-server]__0ot4nev._.js.map +1 -0
  133. package/.next/server/chunks/ssr/[root-of-the-server]__0q_~l2m._.js +90 -0
  134. package/.next/server/chunks/ssr/[root-of-the-server]__0q_~l2m._.js.map +1 -0
  135. package/.next/server/chunks/ssr/{[root-of-the-server]__0cqes87._.js → [root-of-the-server]__0qt26ty._.js} +2 -2
  136. package/.next/server/chunks/ssr/[root-of-the-server]__0qt26ty._.js.map +1 -0
  137. package/.next/server/chunks/ssr/[root-of-the-server]__0s5.uhg._.js +55 -0
  138. package/.next/server/chunks/ssr/[root-of-the-server]__0s5.uhg._.js.map +1 -0
  139. package/.next/server/chunks/ssr/[root-of-the-server]__0x~-phx._.js +3 -0
  140. package/.next/server/chunks/ssr/[root-of-the-server]__0x~-phx._.js.map +1 -0
  141. package/.next/server/chunks/ssr/[root-of-the-server]__0y_zq8k._.js +3 -0
  142. package/.next/server/chunks/ssr/[root-of-the-server]__0y_zq8k._.js.map +1 -0
  143. package/.next/server/chunks/ssr/{[root-of-the-server]__08qr2ji._.js → [root-of-the-server]__0~953ob._.js} +2 -2
  144. package/.next/server/chunks/ssr/[root-of-the-server]__0~953ob._.js.map +1 -0
  145. package/.next/server/chunks/ssr/_0-9j34y._.js +70 -0
  146. package/.next/server/chunks/ssr/_0-9j34y._.js.map +1 -0
  147. package/.next/server/chunks/ssr/_0jxmm9h._.js +6 -0
  148. package/.next/server/chunks/ssr/_0jxmm9h._.js.map +1 -0
  149. package/.next/server/chunks/ssr/_0lfe3wr._.js +3 -0
  150. package/.next/server/chunks/ssr/_0lfe3wr._.js.map +1 -0
  151. package/.next/server/chunks/ssr/{node_modules_0i2xw~e._.js → _0nvprxh._.js} +5 -2
  152. package/.next/server/chunks/ssr/_0nvprxh._.js.map +1 -0
  153. package/.next/server/chunks/ssr/_0pugb10._.js +6 -0
  154. package/.next/server/chunks/ssr/_0pugb10._.js.map +1 -0
  155. package/.next/server/chunks/ssr/_next-internal_server_app_float_page_actions_0x6hm4p.js +3 -0
  156. package/.next/server/chunks/ssr/_next-internal_server_app_float_page_actions_0x6hm4p.js.map +1 -0
  157. package/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_0mr68ai.js +3 -0
  158. package/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_0mr68ai.js.map +1 -0
  159. package/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js +3 -0
  160. package/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js.map +1 -0
  161. package/.next/server/chunks/ssr/node_modules_next_dist_09jzzl8._.js +3 -0
  162. package/.next/server/chunks/ssr/node_modules_next_dist_09jzzl8._.js.map +1 -0
  163. package/.next/server/chunks/ssr/{node_modules_next_dist_0e1izl_._.js → node_modules_next_dist_0h9llsw._.js} +2 -2
  164. package/.next/server/chunks/ssr/node_modules_next_dist_0h9llsw._.js.map +1 -0
  165. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06b_a87.js +4 -0
  166. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06b_a87.js.map +1 -0
  167. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0p_u4px.js +4 -0
  168. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0p_u4px.js.map +1 -0
  169. package/.next/server/chunks/ssr/src_0urkups._.js +3 -0
  170. package/.next/server/chunks/ssr/src_0urkups._.js.map +1 -0
  171. package/.next/server/chunks/ssr/src_components_0ox9d~w._.js +3 -0
  172. package/.next/server/chunks/ssr/src_components_0ox9d~w._.js.map +1 -0
  173. package/.next/server/chunks/ssr/src_components_CodexAccountsPanel_tsx_0n9xjzi._.js +1 -1
  174. package/.next/server/chunks/ssr/src_components_CodexAccountsPanel_tsx_0n9xjzi._.js.map +1 -1
  175. package/.next/server/chunks/ssr/src_components_FloatingWidget_tsx_089.6oo._.js +3 -0
  176. package/.next/server/chunks/ssr/src_components_FloatingWidget_tsx_089.6oo._.js.map +1 -0
  177. package/.next/server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js +3 -0
  178. package/.next/server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js.map +1 -0
  179. package/.next/server/edge/chunks/_0-m5tdn._.js +3 -0
  180. package/.next/server/edge/chunks/_0-m5tdn._.js.map +1 -0
  181. package/.next/server/edge/chunks/node_modules_next_dist_esm_build_templates_edge-wrapper_0mz-5sp.js.map +1 -0
  182. package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_0mz-5sp.js +3 -0
  183. package/.next/server/functions-config-manifest.json +4 -1
  184. package/.next/server/instrumentation/middleware-manifest.json +12 -0
  185. package/.next/server/instrumentation.js +4 -0
  186. package/.next/server/instrumentation.js.map +5 -0
  187. package/.next/server/instrumentation.js.nft.json +1 -0
  188. package/.next/server/middleware-build-manifest.js +7 -8
  189. package/.next/server/next-font-manifest.js +1 -1
  190. package/.next/server/next-font-manifest.json +8 -0
  191. package/.next/server/pages/500.html +1 -1
  192. package/.next/server/pages-manifest.json +0 -1
  193. package/.next/server/server-reference-manifest.js +1 -1
  194. package/.next/server/server-reference-manifest.json +1 -1
  195. package/.next/static/chunks/0bymg5d-lqs0o.js +5 -0
  196. package/.next/static/chunks/0ebdqsutnp8y4.js +1 -0
  197. package/.next/static/chunks/0i3~mnai-l497.js +1 -0
  198. package/.next/static/chunks/0idj4tdmyr934.js +1 -0
  199. package/.next/static/chunks/10eoi4q2wk80z.js +1 -0
  200. package/.next/static/chunks/10refkmyp9rbl.css +3 -0
  201. package/.next/static/chunks/{07lhk_q6pmm3r.js → 10u3y4bw1ayzs.js} +1 -1
  202. package/.next/static/chunks/{00gq-v0e07i1q.js → 115dplafwys-z.js} +1 -1
  203. package/.next/static/chunks/12-9memveha-v.js +1 -0
  204. package/.next/static/chunks/163s8y.j70104.js +4 -0
  205. package/.next/static/chunks/turbopack-0k9twle9a8sh6.js +1 -0
  206. package/.next/types/routes.d.ts +8 -2
  207. package/.next/types/validator.ts +54 -0
  208. package/README.md +57 -17
  209. package/bin/vibemeter-float.swift +970 -0
  210. package/bin/vibemeter-notify.sh +172 -0
  211. package/bin/vibemeter.mjs +385 -7
  212. package/package.json +2 -1
  213. package/public/demo1.png +0 -0
  214. package/public/float-ball.png +0 -0
  215. package/public/float-collapsed.png +0 -0
  216. package/public/float-expanded.png +0 -0
  217. package/public/pay-alipay.jpg +0 -0
  218. package/.next/server/app/_not-found.html +0 -1
  219. package/.next/server/app/_not-found.meta +0 -16
  220. package/.next/server/app/_not-found.rsc +0 -16
  221. package/.next/server/app/_not-found.segments/_full.segment.rsc +0 -16
  222. package/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
  223. package/.next/server/app/_not-found.segments/_index.segment.rsc +0 -5
  224. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +0 -5
  225. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
  226. package/.next/server/app/_not-found.segments/_tree.segment.rsc +0 -2
  227. package/.next/server/chunks/[root-of-the-server]__0y68a5d._.js +0 -96
  228. package/.next/server/chunks/[root-of-the-server]__0y68a5d._.js.map +0 -1
  229. package/.next/server/chunks/ssr/[root-of-the-server]__054lv8d._.js +0 -3
  230. package/.next/server/chunks/ssr/[root-of-the-server]__054lv8d._.js.map +0 -1
  231. package/.next/server/chunks/ssr/[root-of-the-server]__08qr2ji._.js.map +0 -1
  232. package/.next/server/chunks/ssr/[root-of-the-server]__098zro9._.js.map +0 -1
  233. package/.next/server/chunks/ssr/[root-of-the-server]__09hgk-7._.js.map +0 -1
  234. package/.next/server/chunks/ssr/[root-of-the-server]__0cqes87._.js.map +0 -1
  235. package/.next/server/chunks/ssr/[root-of-the-server]__0l.drdn._.js +0 -3
  236. package/.next/server/chunks/ssr/[root-of-the-server]__0l.drdn._.js.map +0 -1
  237. package/.next/server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js +0 -120
  238. package/.next/server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js.map +0 -1
  239. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js +0 -3
  240. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js.map +0 -1
  241. package/.next/server/chunks/ssr/_0ye~8el._.js +0 -7
  242. package/.next/server/chunks/ssr/_0ye~8el._.js.map +0 -1
  243. package/.next/server/chunks/ssr/node_modules_0ck2~9g._.js +0 -3
  244. package/.next/server/chunks/ssr/node_modules_0ck2~9g._.js.map +0 -1
  245. package/.next/server/chunks/ssr/node_modules_0i2xw~e._.js.map +0 -1
  246. package/.next/server/chunks/ssr/node_modules_next_dist_0e1izl_._.js.map +0 -1
  247. package/.next/server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js +0 -3
  248. package/.next/server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js.map +0 -1
  249. package/.next/server/pages/404.html +0 -1
  250. package/.next/static/chunks/002~6040mndie.css +0 -3
  251. package/.next/static/chunks/02g3221oh~3le.js +0 -2
  252. package/.next/static/chunks/0ljfidstam_7k.js +0 -1
  253. package/.next/static/chunks/0pqt~8bl3ukh4.js +0 -4
  254. package/.next/static/chunks/0yz9oprcns4nm.js +0 -2
  255. package/.next/static/chunks/turbopack-14vio.b1b9i4l.js +0 -1
  256. /package/.next/server/chunks/{[root-of-the-server]__0g0u0lm._.js.map → [root-of-the-server]__024yzee._.js.map} +0 -0
  257. /package/.next/server/chunks/{[root-of-the-server]__00q0o~z._.js.map → [root-of-the-server]__082iwfa._.js.map} +0 -0
  258. /package/.next/server/chunks/{[root-of-the-server]__0-74syk._.js.map → [root-of-the-server]__0ru3_it._.js.map} +0 -0
  259. /package/.next/server/chunks/{[root-of-the-server]__0866q87._.js.map → [root-of-the-server]__0xa4dzi._.js.map} +0 -0
  260. /package/.next/static/{DcqlVrgh4gM8jlqrnOCpT → _Y03MiN6NI16Ms86q6vCJ}/_buildManifest.js +0 -0
  261. /package/.next/static/{DcqlVrgh4gM8jlqrnOCpT → _Y03MiN6NI16Ms86q6vCJ}/_clientMiddlewareManifest.js +0 -0
  262. /package/.next/static/{DcqlVrgh4gM8jlqrnOCpT → _Y03MiN6NI16Ms86q6vCJ}/_ssgManifest.js +0 -0
@@ -0,0 +1,5 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sections": []
5
+ }
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../../../.data/alerts-state.json","../../../../.data/alerts.json","../../../../.data/continuity.sqlite","../../../../.data/continuity.sqlite-shm","../../../../.data/continuity.sqlite-wal","../../../../.data/probe-usage.txt","../../../../.data/sessions.db","../../../../.data/statusline-latest.json","../../../../bin/vibemeter-float.swift","../../../../bin/vibemeter-notify.sh","../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../node_modules/@swc/helpers/package.json","../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../node_modules/next/dist/client/lib/console.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js","../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../node_modules/next/dist/compiled/ws/index.js","../../../../node_modules/next/dist/compiled/ws/package.json","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/picocolors.js","../../../../node_modules/next/dist/lib/scheduler.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../node_modules/next/dist/server/node-environment.js","../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../node_modules/next/dist/server/require-hook.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../node_modules/react/cjs/react.development.js","../../../../node_modules/react/cjs/react.production.js","../../../../node_modules/react/index.js","../../../../node_modules/react/package.json","../../../../tools/menubar/Vibemeter.app/Contents/Info.plist","../../../../tools/menubar/Vibemeter.app/Contents/MacOS/Vibemeter","../../chunks/ssr/[root-of-the-server]__03mt8o0._.js","../../chunks/ssr/[root-of-the-server]__090jxzh._.js","../../chunks/ssr/[root-of-the-server]__0c3j40u._.js","../../chunks/ssr/[root-of-the-server]__0ot4nev._.js","../../chunks/ssr/[root-of-the-server]__0x~-phx._.js","../../chunks/ssr/[turbopack]_runtime.js","../../chunks/ssr/_0lfe3wr._.js","../../chunks/ssr/_0nvprxh._.js","../../chunks/ssr/_0pugb10._.js","../../chunks/ssr/_next-internal_server_app_settings_page_actions_0mr68ai.js","../../chunks/ssr/node_modules_09w7yel._.js","../../chunks/ssr/node_modules_next_dist_09jzzl8._.js","../../chunks/ssr/node_modules_next_dist_0h9llsw._.js","../../chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js","../../chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js","../../chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js","../../chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js","../../chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06b_a87.js","../../chunks/ssr/src_0urkups._.js","../../chunks/ssr/src_components_0ox9d~w._.js","../../chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","./page/react-loadable-manifest.json","./page_client-reference-manifest.js"]}
@@ -0,0 +1,3 @@
1
+ globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
2
+ globalThis.__RSC_MANIFEST["/settings/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/src/lib/i18n/client.tsx <module evaluation>":{"id":84167,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/src/lib/i18n/client.tsx":{"id":84167,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":22016,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js":{"id":22016,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/SettingsNotifyPanel.tsx <module evaluation>":{"id":5557,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/SettingsNotifyPanel.tsx":{"id":5557,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/SettingsAlertsPanel.tsx <module evaluation>":{"id":53522,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/SettingsAlertsPanel.tsx":{"id":53522,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/SettingsDonatePanel.tsx <module evaluation>":{"id":47063,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/SettingsDonatePanel.tsx":{"id":47063,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/LocaleSwitcher.tsx <module evaluation>":{"id":96521,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false},"[project]/src/components/LocaleSwitcher.tsx":{"id":96521,"name":"*","chunks":["/_next/static/chunks/0i3~mnai-l497.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/10eoi4q2wk80z.js"],"async":false}},"ssrModuleMapping":{"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"84167":{"*":{"id":42553,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js"],"async":false}},"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","server/chunks/ssr/node_modules_09w7yel._.js"],"async":false}},"22016":{"*":{"id":38246,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","server/chunks/ssr/src_components_0ox9d~w._.js","server/chunks/ssr/_0nvprxh._.js"],"async":false}},"5557":{"*":{"id":65750,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","server/chunks/ssr/src_components_0ox9d~w._.js","server/chunks/ssr/_0nvprxh._.js"],"async":false}},"53522":{"*":{"id":63218,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","server/chunks/ssr/src_components_0ox9d~w._.js","server/chunks/ssr/_0nvprxh._.js"],"async":false}},"47063":{"*":{"id":94834,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","server/chunks/ssr/src_components_0ox9d~w._.js","server/chunks/ssr/_0nvprxh._.js"],"async":false}},"96521":{"*":{"id":81491,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__0c3j40u._.js","server/chunks/ssr/node_modules_next_dist_0h9llsw._.js","server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js","server/chunks/ssr/src_components_0ox9d~w._.js","server/chunks/ssr/_0nvprxh._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"39756":{"*":{"id":26768,"name":"*","chunks":[],"async":false}},"37457":{"*":{"id":17910,"name":"*","chunks":[],"async":false}},"47257":{"*":{"id":92977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":48552,"name":"*","chunks":[],"async":false}},"68017":{"*":{"id":83919,"name":"*","chunks":[],"async":false}},"97367":{"*":{"id":24150,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":40771,"name":"*","chunks":[],"async":false}},"84167":{"*":{"id":35471,"name":"*","chunks":[],"async":false}},"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"22016":{"*":{"id":84707,"name":"*","chunks":[],"async":false}},"5557":{"*":{"id":53749,"name":"*","chunks":[],"async":false}},"53522":{"*":{"id":79995,"name":"*","chunks":[],"async":false}},"47063":{"*":{"id":75926,"name":"*","chunks":[],"async":false}},"96521":{"*":{"id":36419,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/layout":[{"path":"static/chunks/10refkmyp9rbl.css","inlined":false}],"[project]/node_modules/next/dist/client/components/builtin/global-error":[{"path":"static/chunks/10refkmyp9rbl.css","inlined":false}],"[project]/src/app/settings/page":[{"path":"static/chunks/10refkmyp9rbl.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/layout":["static/chunks/0i3~mnai-l497.js","static/chunks/0d3shmwh5_nmn.js"],"[project]/node_modules/next/dist/client/components/builtin/global-error":["static/chunks/0i3~mnai-l497.js","static/chunks/0d3shmwh5_nmn.js"],"[project]/src/app/settings/page":["static/chunks/0i3~mnai-l497.js","static/chunks/0d3shmwh5_nmn.js","static/chunks/10eoi4q2wk80z.js"]}};
3
+
@@ -3,10 +3,16 @@
3
3
  "/_not-found/page": "app/_not-found/page.js",
4
4
  "/admin/page": "app/admin/page.js",
5
5
  "/api/codex-accounts/route": "app/api/codex-accounts/route.js",
6
+ "/api/float/route": "app/api/float/route.js",
6
7
  "/api/import-sessions/route": "app/api/import-sessions/route.js",
7
8
  "/api/sessions/[id]/tags/route": "app/api/sessions/[id]/tags/route.js",
8
9
  "/api/sessions/route": "app/api/sessions/route.js",
10
+ "/api/settings/alerts/route": "app/api/settings/alerts/route.js",
11
+ "/api/settings/notify/route": "app/api/settings/notify/route.js",
9
12
  "/api/usage/route": "app/api/usage/route.js",
10
13
  "/favicon.ico/route": "app/favicon.ico/route.js",
11
- "/page": "app/page.js"
14
+ "/float/page": "app/float/page.js",
15
+ "/install.sh/route": "app/install.sh/route.js",
16
+ "/page": "app/page.js",
17
+ "/settings/page": "app/settings/page.js"
12
18
  }
@@ -0,0 +1,3 @@
1
+ module.exports=[14747,(e,r,s)=>{r.exports=e.x("path",()=>require("path"))},85148,(e,r,s)=>{r.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},22734,(e,r,s)=>{r.exports=e.x("fs",()=>require("fs"))},2157,(e,r,s)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,r,s)=>{r.exports=e.x("node:os",()=>require("node:os"))},50227,(e,r,s)=>{r.exports=e.x("node:path",()=>require("node:path"))},12714,(e,r,s)=>{r.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},46786,(e,r,s)=>{r.exports=e.x("os",()=>require("os"))}];
2
+
3
+ //# sourceMappingURL=%5Bexternals%5D__0_i~3ox._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ module.exports=[93695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},2157,(e,r,t)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,r,t)=>{r.exports=e.x("node:os",()=>require("node:os"))},50227,(e,r,t)=>{r.exports=e.x("node:path",()=>require("node:path"))},74533,(e,r,t)=>{r.exports=e.x("node:child_process",()=>require("node:child_process"))}];
2
+
3
+ //# sourceMappingURL=%5Bexternals%5D__13p_1zh._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ module.exports=[93695,(e,t,n)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,n)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,n)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,n)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,n)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,n)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},93818,e=>{"use strict";var t=e.i(46023),n=e.i(43793),r=e.i(81149);function a(e,t,n,r){if(!r)return null;let a=r.window_5h_used_pct,s=r.window_weekly_used_pct;return{agent:e,label:t,accountLabel:n,remaining5h:null==a?null:Math.max(0,100-a),used5h:a,remainingWeekly:null==s?null:Math.max(0,100-s),usedWeekly:s,resetAt5h:r.reset_at_5h,resetAtWeekly:r.reset_at_weekly,capturedAt:r.captured_at}}function s(e){let t=[e.remaining5h,e.remainingWeekly].filter(e=>null!=e);return 0===t.length?1/0:Math.min(...t)}function l(e){var t;let n=e.ended_at??Date.now();return{id:e.id,tool:e.tool,project:(t=e.cwd,t?.split("/").filter(Boolean).pop()??"unknown"),title:e.ai_title??e.summary,startedAt:e.started_at,endedAt:e.ended_at,durationMs:Math.max(0,n-e.started_at)}}function o(e,t,n){let r=Date.now(),a=e.prepare(`
2
+ SELECT id, tool, cwd, ai_title, summary, started_at, ended_at
3
+ FROM sessions
4
+ WHERE tool = ?
5
+ AND started_at > ?
6
+ AND (
7
+ ended_at IS NULL
8
+ OR (? = 'codex' AND ended_at > ?)
9
+ )
10
+ ORDER BY COALESCE(ended_at, ?) DESC, started_at DESC
11
+ LIMIT 1
12
+ `).get(t,r-864e5,t,r-6e5,r),s=e.prepare(`
13
+ SELECT id, tool, cwd, ai_title, summary, started_at, ended_at
14
+ FROM sessions
15
+ WHERE tool = ?
16
+ AND ended_at IS NOT NULL
17
+ ORDER BY ended_at DESC
18
+ LIMIT 1
19
+ `).get(t),o=a?l(a):null,d=s?l(s):null;return{agent:t,state:o?"active":d&&d.endedAt&&d.endedAt>r-3e5?"recent":"idle",quotaLevel:function(e){if(!e)return"unknown";let t=[e.remaining5h,e.remainingWeekly].filter(e=>null!=e);if(0===t.length)return"unknown";let n=Math.min(...t);return n<20?"critical":n<45?"warning":"ok"}(n),activeSession:o,recentSession:d}}async function d(){let e=(0,n.getDb)(),l=(await (0,t.getCodexAccounts)()).find(e=>e.isCurrent)??null,d=l?(0,r.getLatestUsageSnapshot)(e,"codex",l.accountId):(0,r.getLatestUsageSnapshot)(e,"codex"),i=(0,r.getLatestUsageSnapshot)(e,"statusline"),u=[a("codex","Codex",l?.label??null,d),a("claude-code","Claude",null,i)].filter(e=>null!=e),p=u.length>0?[...u].sort((e,t)=>s(e)-s(t))[0]:null,c=u.find(e=>"codex"===e.agent)??null,x=u.find(e=>"claude-code"===e.agent)??null,_=new Date;_.setHours(0,0,0,0);let g=_.getTime(),E=g+864e5,m=e.prepare("SELECT COUNT(*) AS count FROM sessions").get().count,w=e.prepare(`
20
+ SELECT COUNT(*) AS count
21
+ FROM sessions
22
+ WHERE started_at < ?
23
+ AND COALESCE(ended_at, ?) >= ?
24
+ `).get(E,Date.now(),g).count,C=e.prepare(`
25
+ SELECT tool, COUNT(*) AS count
26
+ FROM sessions
27
+ WHERE started_at < ?
28
+ AND COALESCE(ended_at, ?) >= ?
29
+ GROUP BY tool
30
+ ORDER BY count DESC
31
+ `).all(E,Date.now(),g),S=e.prepare(`
32
+ SELECT tool, cwd, ai_title, summary, started_at
33
+ FROM sessions
34
+ ORDER BY started_at DESC
35
+ LIMIT 1
36
+ `).get();return{generatedAt:Date.now(),primary:p,quotas:u,liveByAgent:[o(e,"claude-code",x),o(e,"codex",c)],todaySessions:w,totalSessions:m,todayByTool:C,lastSession:S?{tool:S.tool,project:S.cwd?.split("/").filter(Boolean).pop()??"unknown",title:S.ai_title??S.summary,startedAt:S.started_at}:null}}e.s(["getFloatStats",0,d])}];
37
+
38
+ //# sourceMappingURL=%5Broot-of-the-server%5D__01t2c3w._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/float-stats.ts"],"sourcesContent":["import { getCodexAccounts } from './codex-auth';\nimport { getDb } from './db';\nimport { getLatestUsageSnapshot, type UsageSnapshotRecord } from './usage-snapshots';\n\nexport interface FloatQuota {\n agent: 'codex' | 'claude-code';\n label: string;\n accountLabel: string | null;\n remaining5h: number | null;\n used5h: number | null;\n remainingWeekly: number | null;\n usedWeekly: number | null;\n resetAt5h: number | null;\n resetAtWeekly: number | null;\n capturedAt: number | null;\n}\n\nexport interface FloatStats {\n generatedAt: number;\n primary: FloatQuota | null;\n quotas: FloatQuota[];\n liveByAgent: FloatAgentLive[];\n todaySessions: number;\n totalSessions: number;\n todayByTool: { tool: string; count: number }[];\n lastSession: {\n tool: string;\n project: string;\n title: string | null;\n startedAt: number;\n } | null;\n}\n\nexport interface FloatLiveSession {\n id: string;\n tool: string;\n project: string;\n title: string | null;\n startedAt: number;\n endedAt: number | null;\n durationMs: number;\n}\n\nexport interface FloatAgentLive {\n agent: 'codex' | 'claude-code';\n state: 'active' | 'recent' | 'idle';\n quotaLevel: 'ok' | 'warning' | 'critical' | 'unknown';\n activeSession: FloatLiveSession | null;\n recentSession: FloatLiveSession | null;\n}\n\nfunction quotaFromSnapshot(\n agent: FloatQuota['agent'],\n label: string,\n accountLabel: string | null,\n row: UsageSnapshotRecord | null,\n): FloatQuota | null {\n if (!row) return null;\n const used5h = row.window_5h_used_pct;\n const usedWeekly = row.window_weekly_used_pct;\n return {\n agent,\n label,\n accountLabel,\n remaining5h: used5h == null ? null : Math.max(0, 100 - used5h),\n used5h,\n remainingWeekly: usedWeekly == null ? null : Math.max(0, 100 - usedWeekly),\n usedWeekly,\n resetAt5h: row.reset_at_5h,\n resetAtWeekly: row.reset_at_weekly,\n capturedAt: row.captured_at,\n };\n}\n\nfunction quotaPressure(quota: FloatQuota): number {\n const candidates = [quota.remaining5h, quota.remainingWeekly].filter((value): value is number => value != null);\n if (candidates.length === 0) return Number.POSITIVE_INFINITY;\n return Math.min(...candidates);\n}\n\nfunction projectName(cwd: string | null): string {\n return cwd?.split('/').filter(Boolean).pop() ?? 'unknown';\n}\n\nfunction quotaLevel(quota: FloatQuota | null): FloatAgentLive['quotaLevel'] {\n if (!quota) return 'unknown';\n const values = [quota.remaining5h, quota.remainingWeekly].filter((value): value is number => value != null);\n if (values.length === 0) return 'unknown';\n const remaining = Math.min(...values);\n if (remaining < 20) return 'critical';\n if (remaining < 45) return 'warning';\n return 'ok';\n}\n\nfunction toLiveSession(row: {\n id: string;\n tool: string;\n cwd: string | null;\n ai_title: string | null;\n summary: string | null;\n started_at: number;\n ended_at: number | null;\n}): FloatLiveSession {\n const end = row.ended_at ?? Date.now();\n return {\n id: row.id,\n tool: row.tool,\n project: projectName(row.cwd),\n title: row.ai_title ?? row.summary,\n startedAt: row.started_at,\n endedAt: row.ended_at,\n durationMs: Math.max(0, end - row.started_at),\n };\n}\n\nfunction getAgentLive(\n db: ReturnType<typeof getDb>,\n agent: FloatAgentLive['agent'],\n quota: FloatQuota | null,\n): FloatAgentLive {\n const now = Date.now();\n const activeCutoff = now - 24 * 3_600_000;\n const codexRecentCutoff = now - 10 * 60_000;\n\n const active = db.prepare(`\n SELECT id, tool, cwd, ai_title, summary, started_at, ended_at\n FROM sessions\n WHERE tool = ?\n AND started_at > ?\n AND (\n ended_at IS NULL\n OR (? = 'codex' AND ended_at > ?)\n )\n ORDER BY COALESCE(ended_at, ?) DESC, started_at DESC\n LIMIT 1\n `).get(agent, activeCutoff, agent, codexRecentCutoff, now) as Parameters<typeof toLiveSession>[0] | undefined;\n\n const recent = db.prepare(`\n SELECT id, tool, cwd, ai_title, summary, started_at, ended_at\n FROM sessions\n WHERE tool = ?\n AND ended_at IS NOT NULL\n ORDER BY ended_at DESC\n LIMIT 1\n `).get(agent) as Parameters<typeof toLiveSession>[0] | undefined;\n\n const activeSession = active ? toLiveSession(active) : null;\n const recentSession = recent ? toLiveSession(recent) : null;\n return {\n agent,\n state: activeSession ? 'active' : recentSession && recentSession.endedAt && recentSession.endedAt > now - 5 * 60_000 ? 'recent' : 'idle',\n quotaLevel: quotaLevel(quota),\n activeSession,\n recentSession,\n };\n}\n\nexport async function getFloatStats(): Promise<FloatStats> {\n const db = getDb();\n const codexAccounts = await getCodexAccounts();\n const currentCodex = codexAccounts.find((account) => account.isCurrent) ?? null;\n const codexRow = currentCodex\n ? getLatestUsageSnapshot(db, 'codex', currentCodex.accountId)\n : getLatestUsageSnapshot(db, 'codex');\n const claudeRow = getLatestUsageSnapshot(db, 'statusline');\n\n const quotas = [\n quotaFromSnapshot('codex', 'Codex', currentCodex?.label ?? null, codexRow),\n quotaFromSnapshot('claude-code', 'Claude', null, claudeRow),\n ].filter((quota): quota is FloatQuota => quota != null);\n\n const primary = quotas.length > 0\n ? [...quotas].sort((a, b) => quotaPressure(a) - quotaPressure(b))[0]\n : null;\n const codexQuota = quotas.find((quota) => quota.agent === 'codex') ?? null;\n const claudeQuota = quotas.find((quota) => quota.agent === 'claude-code') ?? null;\n\n const dayStart = new Date();\n dayStart.setHours(0, 0, 0, 0);\n const todayStart = dayStart.getTime();\n const todayEnd = todayStart + 86_400_000;\n\n const totalSessions = (db.prepare(`SELECT COUNT(*) AS count FROM sessions`).get() as { count: number }).count;\n const todaySessions = (db.prepare(`\n SELECT COUNT(*) AS count\n FROM sessions\n WHERE started_at < ?\n AND COALESCE(ended_at, ?) >= ?\n `).get(todayEnd, Date.now(), todayStart) as { count: number }).count;\n const todayByTool = db.prepare(`\n SELECT tool, COUNT(*) AS count\n FROM sessions\n WHERE started_at < ?\n AND COALESCE(ended_at, ?) >= ?\n GROUP BY tool\n ORDER BY count DESC\n `).all(todayEnd, Date.now(), todayStart) as { tool: string; count: number }[];\n const lastSession = db.prepare(`\n SELECT tool, cwd, ai_title, summary, started_at\n FROM sessions\n ORDER BY started_at DESC\n LIMIT 1\n `).get() as { tool: string; cwd: string | null; ai_title: string | null; summary: string | null; started_at: number } | undefined;\n\n return {\n generatedAt: Date.now(),\n primary,\n quotas,\n liveByAgent: [\n getAgentLive(db, 'claude-code', claudeQuota),\n getAgentLive(db, 'codex', codexQuota),\n ],\n todaySessions,\n totalSessions,\n todayByTool,\n lastSession: lastSession ? {\n tool: lastSession.tool,\n project: lastSession.cwd?.split('/').filter(Boolean).pop() ?? 'unknown',\n title: lastSession.ai_title ?? lastSession.summary,\n startedAt: lastSession.started_at,\n } : null,\n };\n}\n"],"names":["quotaFromSnapshot","agent","label","accountLabel","row","used5h","window_5h_used_pct","usedWeekly","window_weekly_used_pct","remaining5h","Math","max","remainingWeekly","resetAt5h","reset_at_5h","resetAtWeekly","reset_at_weekly","capturedAt","captured_at","quotaPressure","quota","candidates","filter","value","length","Number","POSITIVE_INFINITY","min","projectName","cwd","split","Boolean","pop","quotaLevel","values","remaining","toLiveSession","end","ended_at","Date","now","id","tool","project","title","ai_title","summary","startedAt","started_at","endedAt","durationMs","getAgentLive","db","activeCutoff","codexRecentCutoff","active","prepare","get","recent","activeSession","recentSession","state","getFloatStats","codexAccounts","currentCodex","find","account","isCurrent","codexRow","accountId","claudeRow","quotas","primary","sort","a","b","codexQuota","claudeQuota","dayStart","setHours","todayStart","getTime","todayEnd","totalSessions","count","todaySessions","todayByTool","all","lastSession","generatedAt","liveByAgent"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- module.exports=[14747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},93695,(e,t,a)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,a)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,a)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},85148,(e,t,a)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},22734,(e,t,a)=>{t.exports=e.x("fs",()=>require("fs"))},43793,77930,e=>{"use strict";var t=e.i(85148),a=e.i(14747),r=e.i(22734);function s(){return process.env.VIBEMETER_DATA_DIR??a.default.join(process.cwd(),".data")}e.s(["dataDir",0,s],77930);let n=null;e.s(["getDb",0,function(){var e;let o;if(n)return n;let i=s();return r.default.mkdirSync(i,{recursive:!0}),(n=new t.default(a.default.join(i,"continuity.sqlite"))).pragma("journal_mode = WAL"),(e=n).exec(`
1
+ module.exports=[93695,(e,t,a)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,a)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,a)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},85148,(e,t,a)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},22734,(e,t,a)=>{t.exports=e.x("fs",()=>require("fs"))},43793,77930,e=>{"use strict";var t=e.i(85148),a=e.i(14747),r=e.i(22734);function s(){return process.env.VIBEMETER_DATA_DIR??a.default.join(process.cwd(),".data")}e.s(["dataDir",0,s],77930);let n=null;e.s(["getDb",0,function(){var e;let o;if(n)return n;let i=s();return r.default.mkdirSync(i,{recursive:!0}),(n=new t.default(a.default.join(i,"continuity.sqlite"))).pragma("journal_mode = WAL"),(e=n).exec(`
2
2
  CREATE TABLE IF NOT EXISTS sessions (
3
3
  id TEXT PRIMARY KEY,
4
4
  tool TEXT NOT NULL,
@@ -59,4 +59,4 @@ module.exports=[14747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},93695
59
59
  @reset_at_5h, @reset_at_weekly, @raw_output, @confidence)
60
60
  `).run({captured_at:t.capturedAt,source:t.source,account_id:t.accountId,window_5h_used_pct:t.window5hUsedPct,window_weekly_used_pct:t.windowWeeklyUsedPct,reset_at_5h:t.resetAt5h,reset_at_weekly:t.resetAtWeekly,raw_output:t.rawOutput,confidence:t.confidence})}])},62043,e=>{"use strict";var t=e.i(47909),a=e.i(74017),r=e.i(96250),s=e.i(59756),n=e.i(61916),o=e.i(74677),i=e.i(69741),u=e.i(16795),d=e.i(87718),c=e.i(95169),l=e.i(47587),p=e.i(66012),E=e.i(70101),_=e.i(26937),T=e.i(10372),R=e.i(93695);e.i(52474);var h=e.i(220),w=e.i(89171),x=e.i(43793),g=e.i(81149);let N=new Set(["claude_usage_cmd","statusline","manual","codex"]);e.s(["GET",0,function(e){let t=new URL(e.url),a=t.searchParams.get("source"),r=a&&N.has(a)?a:null,s=t.searchParams.get("accountId"),n=(0,x.getDb)();if(r)return w.NextResponse.json({snapshot:(0,g.getLatestUsageSnapshot)(n,r,"codex"===r&&s?s:null)});let o=n.prepare("SELECT * FROM usage_snapshots ORDER BY captured_at DESC LIMIT 1").get();return w.NextResponse.json({snapshot:o??null})}],51548);var f=e.i(51548);let v=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/usage/route",pathname:"/api/usage",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/usage/route.ts",nextConfigOutput:"",userland:f,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:I,serverHooks:C}=v;async function y(e,t,r){r.requestMeta&&(0,s.setRequestMeta)(e,r.requestMeta),v.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/usage/route";w=w.replace(/\/index$/,"")||"/";let x=await v.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:g,deploymentId:N,params:f,nextConfig:A,parsedUrl:I,isDraftMode:C,prerenderManifest:y,routerServerContext:m,isOnDemandRevalidate:O,revalidateOnlyGenerated:S,resolvedPathname:L,clientReferenceManifest:U,serverActionsManifest:k}=x,b=(0,i.normalizeAppPath)(w),D=!!(y.dynamicRoutes[b]||y.routes[L]),P=async()=>((null==m?void 0:m.render404)?await m.render404(e,t,I,!1):t.end("This page could not be found"),null);if(D&&!C){let e=!!y.routes[L],t=y.dynamicRoutes[b];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await P();throw new R.NoFallbackError}}let q=null;!D||v.isDev||C||(q="/index"===(q=L)?"/":q);let X=!0===v.isDev||!D,M=D&&!X;k&&U&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:U,serverActionsManifest:k});let j=e.method||"GET",F=(0,n.getTracer)(),H=F.getActiveScopeSpan(),G=!!(null==m?void 0:m.isWrappedByNextServer),B=!!(0,s.getRequestMeta)(e,"minimalMode"),K=(0,s.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,A,y,B);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let $={params:f,previewProps:y.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:X,incrementalCache:K,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,s)=>v.onRequestError(e,t,r,s,m)},sharedContext:{buildId:g,deploymentId:N}},Y=new u.NodeNextRequest(e),W=new u.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(Y,(0,d.signalFromNodeResponse)(t));try{let s,o=async e=>v.handle(V,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=F.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route");if(r){let t=`${j} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",r),s.updateName(t))}else e.updateName(`${j} ${w}`)}),i=async s=>{var n,i;let u=async({previousCacheEntry:a})=>{try{if(!B&&O&&S&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=$.renderOpts.fetchMetrics;let i=$.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let u=$.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(Y,W,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,E.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[T.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,r=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,l.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:O})},!1,m),t}},d=await v.handleResponse({req:e,nextConfig:A,cacheKey:q,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:S,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:B});if(!D)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",O?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,E.fromNodeOutgoingHttpHeaders)(d.value.headers);return B&&D||c.delete(T.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,_.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(Y,W,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};G&&H?await i(H):(s=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${j} ${w}`,kind:n.SpanKind.SERVER,attributes:{"http.method":j,"http.target":e.url}},i),void 0,!G))}catch(t){if(t instanceof R.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:b,routeType:"route",revalidateReason:(0,l.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:O})},!1,m),D)throw t;return await (0,p.sendResponse)(Y,W,new Response(null,{status:500})),null}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:I})},"routeModule",0,v,"serverHooks",0,C,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,I],62043)}];
61
61
 
62
- //# sourceMappingURL=%5Broot-of-the-server%5D__0g0u0lm._.js.map
62
+ //# sourceMappingURL=%5Broot-of-the-server%5D__024yzee._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},85148,(e,t,r)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},43793,77930,e=>{"use strict";var t=e.i(85148),r=e.i(14747),a=e.i(22734);function s(){return process.env.VIBEMETER_DATA_DIR??r.default.join(process.cwd(),".data")}e.s(["dataDir",0,s],77930);let n=null;e.s(["getDb",0,function(){var e;let i;if(n)return n;let o=s();return a.default.mkdirSync(o,{recursive:!0}),(n=new t.default(r.default.join(o,"continuity.sqlite"))).pragma("journal_mode = WAL"),(e=n).exec(`
1
+ module.exports=[93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},85148,(e,t,r)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},43793,77930,e=>{"use strict";var t=e.i(85148),r=e.i(14747),a=e.i(22734);function s(){return process.env.VIBEMETER_DATA_DIR??r.default.join(process.cwd(),".data")}e.s(["dataDir",0,s],77930);let n=null;e.s(["getDb",0,function(){var e;let i;if(n)return n;let o=s();return a.default.mkdirSync(o,{recursive:!0}),(n=new t.default(r.default.join(o,"continuity.sqlite"))).pragma("journal_mode = WAL"),(e=n).exec(`
2
2
  CREATE TABLE IF NOT EXISTS sessions (
3
3
  id TEXT PRIMARY KEY,
4
4
  tool TEXT NOT NULL,
@@ -38,4 +38,4 @@ module.exports=[14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},93695
38
38
  CREATE INDEX IF NOT EXISTS idx_usage_source_account_captured ON usage_snapshots(source, account_id, captured_at DESC);
39
39
  `),n}],43793)},16113,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),s=e.i(59756),n=e.i(61916),i=e.i(74677),o=e.i(69741),d=e.i(16795),l=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),E=e.i(70101),T=e.i(26937),R=e.i(10372),x=e.i(93695);e.i(52474);var h=e.i(220),N=e.i(89171),g=e.i(69719),_=e.i(43793);let v=g.z.object({tags:g.z.array(g.z.string().max(32)).max(10)});async function f(e,{params:t}){let{id:r}=await t,a=await e.json(),s=v.safeParse(a);return s.success?((0,_.getDb)().prepare("UPDATE sessions SET tags = ? WHERE id = ?").run(JSON.stringify(s.data.tags),r),N.NextResponse.json({ok:!0,tags:s.data.tags})):N.NextResponse.json({error:"invalid"},{status:400})}e.s(["PATCH",0,f],33768);var A=e.i(33768);let w=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/tags/route",pathname:"/api/sessions/[id]/tags",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/tags/route.ts",nextConfigOutput:"",userland:A,...{}}),{workAsyncStorage:m,workUnitAsyncStorage:C,serverHooks:I}=w;async function y(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let N="/api/sessions/[id]/tags/route";N=N.replace(/\/index$/,"")||"/";let g=await w.prepare(e,t,{srcPage:N,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:_,deploymentId:v,params:f,nextConfig:A,parsedUrl:m,isDraftMode:C,prerenderManifest:I,routerServerContext:y,isOnDemandRevalidate:O,revalidateOnlyGenerated:S,resolvedPathname:b,clientReferenceManifest:L,serverActionsManifest:U}=g,q=(0,o.normalizeAppPath)(N),P=!!(I.dynamicRoutes[q]||I.routes[b]),D=async()=>((null==y?void 0:y.render404)?await y.render404(e,t,m,!1):t.end("This page could not be found"),null);if(P&&!C){let e=!!I.routes[b],t=I.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await D();throw new x.NoFallbackError}}let X=null;!P||w.isDev||C||(X="/index"===(X=b)?"/":X);let k=!0===w.isDev||!P,j=P&&!k;U&&L&&(0,i.setManifestsSingleton)({page:N,clientReferenceManifest:L,serverActionsManifest:U});let M=e.method||"GET",H=(0,n.getTracer)(),F=H.getActiveScopeSpan(),G=!!(null==y?void 0:y.isWrappedByNextServer),K=!!(0,s.getRequestMeta)(e,"minimalMode"),$=(0,s.getRequestMeta)(e,"incrementalCache")||await w.getIncrementalCache(e,A,I,K);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let B={params:f,previewProps:I.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:k,incrementalCache:$,cacheLifeProfiles:A.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>w.onRequestError(e,t,a,s,y)},sharedContext:{buildId:_,deploymentId:v}},Y=new d.NodeNextRequest(e),W=new d.NodeNextResponse(t),z=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(t));try{let s,i=async e=>w.handle(z,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",a),s.updateName(t))}else e.updateName(`${M} ${N}`)}),o=async s=>{var n,o;let d=async({previousCacheEntry:r})=>{try{if(!K&&O&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(s);e.fetchMetrics=B.renderOpts.fetchMetrics;let o=B.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let d=B.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(Y,W,n,B.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,E.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[R.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,a=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await w.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,y),t}},l=await w.handleResponse({req:e,nextConfig:A,cacheKey:X,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:K});if(!P)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(o=l.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",O?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,E.fromNodeOutgoingHttpHeaders)(l.value.headers);return K&&P||u.delete(R.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,T.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(Y,W,new Response(l.value.body,{headers:u,status:l.value.status||200})),null};G&&F?await o(F):(s=H.getActiveScopeSpan(),await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${N}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},o),void 0,!G))}catch(t){if(t instanceof x.NoFallbackError||await w.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,y),P)throw t;return await (0,p.sendResponse)(Y,W,new Response(null,{status:500})),null}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:m,workUnitAsyncStorage:C})},"routeModule",0,w,"serverHooks",0,I,"workAsyncStorage",0,m,"workUnitAsyncStorage",0,C],16113)}];
40
40
 
41
- //# sourceMappingURL=%5Broot-of-the-server%5D__00q0o~z._.js.map
41
+ //# sourceMappingURL=%5Broot-of-the-server%5D__082iwfa._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},72627,e=>{"use strict";let t;var r,a=e.i(47909),n=e.i(74017),s=e.i(96250),o=e.i(59756),i=e.i(61916),l=e.i(74677),d=e.i(69741),u=e.i(16795),p=e.i(87718),c=e.i(95169),h=e.i(47587),x=e.i(66012),v=e.i(70101),R=e.i(26937),m=e.i(10372),f=e.i(93695);e.i(52474);var g=e.i(220),w=e.i(89171);let y=(r=async()=>{let{importSessions:t}=await e.A(35415);return t()},t=null,{refreshSessions(){if(!t)try{t=Promise.resolve(r()).finally(()=>{t=null})}catch(e){throw t=null,e}return t}});async function E(){try{let e=Date.now(),t=await y.refreshSessions();return w.NextResponse.json({...t,durationMs:Date.now()-e})}catch(e){return w.NextResponse.json({error:e instanceof Error?e.message:"Failed to refresh sessions"},{status:500})}}e.s(["POST",0,E,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],66906);var C=e.i(66906);let A=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/import-sessions/route",pathname:"/api/import-sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/import-sessions/route.ts",nextConfigOutput:"",userland:C,...{}}),{workAsyncStorage:_,workUnitAsyncStorage:b,serverHooks:N}=A;async function P(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),A.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/import-sessions/route";a=a.replace(/\/index$/,"")||"/";let s=await A.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:w,deploymentId:y,params:E,nextConfig:C,parsedUrl:_,isDraftMode:b,prerenderManifest:N,routerServerContext:P,isOnDemandRevalidate:T,revalidateOnlyGenerated:S,resolvedPathname:k,clientReferenceManifest:q,serverActionsManifest:j}=s,O=(0,d.normalizeAppPath)(a),H=!!(N.dynamicRoutes[O]||N.routes[k]),I=async()=>((null==P?void 0:P.render404)?await P.render404(e,t,_,!1):t.end("This page could not be found"),null);if(H&&!b){let e=!!N.routes[k],t=N.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(C.adapterPath)return await I();throw new f.NoFallbackError}}let M=null;!H||A.isDev||b||(M="/index"===(M=k)?"/":M);let U=!0===A.isDev||!H,D=H&&!U;j&&q&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:q,serverActionsManifest:j});let F=e.method||"GET",$=(0,i.getTracer)(),K=$.getActiveScopeSpan(),B=!!(null==P?void 0:P.isWrappedByNextServer),L=!!(0,o.getRequestMeta)(e,"minimalMode"),G=(0,o.getRequestMeta)(e,"incrementalCache")||await A.getIncrementalCache(e,C,N,L);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let V={params:E,previewProps:N.preview,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:U,incrementalCache:G,cacheLifeProfiles:C.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>A.onRequestError(e,t,a,n,P)},sharedContext:{buildId:w,deploymentId:y}},W=new u.NodeNextRequest(e),X=new u.NodeNextResponse(t),z=p.NextRequestAdapter.fromNodeNextRequest(W,(0,p.signalFromNodeResponse)(t));try{let s,o=async e=>A.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${F} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${F} ${a}`)}),l=async s=>{var i,l;let d=async({previousCacheEntry:n})=>{try{if(!L&&T&&S&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=V.renderOpts.fetchMetrics;let i=V.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let l=V.renderOpts.collectedTags;if(!H)return await (0,x.sendResponse)(W,X,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,v.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,P),t}},u=await A.handleResponse({req:e,nextConfig:C,cacheKey:M,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:N,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:L});if(!H)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",T?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,v.fromNodeOutgoingHttpHeaders)(u.value.headers);return L&&H||p.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,x.sendResponse)(W,X,new Response(u.value.body,{headers:p,status:u.value.status||200})),null};B&&K?await l(K):(s=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${F} ${a}`,kind:i.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof f.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,P),H)throw t;return await (0,x.sendResponse)(W,X,new Response(null,{status:500})),null}}e.s(["handler",0,P,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:b})},"routeModule",0,A,"serverHooks",0,N,"workAsyncStorage",0,_,"workUnitAsyncStorage",0,b],72627)},35415,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__0y68a5d._.js","server/chunks/node_modules_zod_v4_classic_external_131y~ke.js"].map(t=>e.l(t))).then(()=>t(80909)))}];
1
+ module.exports=[93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},72627,e=>{"use strict";let t;var r,a=e.i(47909),n=e.i(74017),s=e.i(96250),o=e.i(59756),i=e.i(61916),l=e.i(74677),d=e.i(69741),u=e.i(16795),p=e.i(87718),c=e.i(95169),h=e.i(47587),x=e.i(66012),v=e.i(70101),R=e.i(26937),m=e.i(10372),f=e.i(93695);e.i(52474);var g=e.i(220),w=e.i(89171);let y=(r=async()=>{let{importSessions:t}=await e.A(35415);return t()},t=null,{refreshSessions(){if(!t)try{t=Promise.resolve(r()).finally(()=>{t=null})}catch(e){throw t=null,e}return t}});async function E(){try{let e=Date.now(),t=await y.refreshSessions();return w.NextResponse.json({...t,durationMs:Date.now()-e})}catch(e){return w.NextResponse.json({error:e instanceof Error?e.message:"Failed to refresh sessions"},{status:500})}}e.s(["POST",0,E,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],66906);var C=e.i(66906);let A=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/import-sessions/route",pathname:"/api/import-sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/import-sessions/route.ts",nextConfigOutput:"",userland:C,...{}}),{workAsyncStorage:_,workUnitAsyncStorage:b,serverHooks:N}=A;async function P(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),A.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/import-sessions/route";a=a.replace(/\/index$/,"")||"/";let s=await A.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:w,deploymentId:y,params:E,nextConfig:C,parsedUrl:_,isDraftMode:b,prerenderManifest:N,routerServerContext:P,isOnDemandRevalidate:T,revalidateOnlyGenerated:S,resolvedPathname:k,clientReferenceManifest:q,serverActionsManifest:j}=s,O=(0,d.normalizeAppPath)(a),H=!!(N.dynamicRoutes[O]||N.routes[k]),I=async()=>((null==P?void 0:P.render404)?await P.render404(e,t,_,!1):t.end("This page could not be found"),null);if(H&&!b){let e=!!N.routes[k],t=N.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(C.adapterPath)return await I();throw new f.NoFallbackError}}let M=null;!H||A.isDev||b||(M="/index"===(M=k)?"/":M);let U=!0===A.isDev||!H,D=H&&!U;j&&q&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:q,serverActionsManifest:j});let F=e.method||"GET",$=(0,i.getTracer)(),K=$.getActiveScopeSpan(),B=!!(null==P?void 0:P.isWrappedByNextServer),L=!!(0,o.getRequestMeta)(e,"minimalMode"),G=(0,o.getRequestMeta)(e,"incrementalCache")||await A.getIncrementalCache(e,C,N,L);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let V={params:E,previewProps:N.preview,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:U,incrementalCache:G,cacheLifeProfiles:C.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>A.onRequestError(e,t,a,n,P)},sharedContext:{buildId:w,deploymentId:y}},W=new u.NodeNextRequest(e),X=new u.NodeNextResponse(t),z=p.NextRequestAdapter.fromNodeNextRequest(W,(0,p.signalFromNodeResponse)(t));try{let s,o=async e=>A.handle(z,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${F} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${F} ${a}`)}),l=async s=>{var i,l;let d=async({previousCacheEntry:n})=>{try{if(!L&&T&&S&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=V.renderOpts.fetchMetrics;let i=V.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let l=V.renderOpts.collectedTags;if(!H)return await (0,x.sendResponse)(W,X,a,V.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,v.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,P),t}},u=await A.handleResponse({req:e,nextConfig:C,cacheKey:M,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:N,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:L});if(!H)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",T?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let p=(0,v.fromNodeOutgoingHttpHeaders)(u.value.headers);return L&&H||p.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||p.get("Cache-Control")||p.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,x.sendResponse)(W,X,new Response(u.value.body,{headers:p,status:u.value.status||200})),null};B&&K?await l(K):(s=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${F} ${a}`,kind:i.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},l),void 0,!B))}catch(t){if(t instanceof f.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,P),H)throw t;return await (0,x.sendResponse)(W,X,new Response(null,{status:500})),null}}e.s(["handler",0,P,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:b})},"routeModule",0,A,"serverHooks",0,N,"workAsyncStorage",0,_,"workUnitAsyncStorage",0,b],72627)},35415,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__13415c6._.js","server/chunks/node_modules_zod_v4_classic_external_131y~ke.js"].map(t=>e.l(t))).then(()=>t(80909)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0chedn~._.js.map
@@ -0,0 +1,38 @@
1
+ module.exports=[93695,(e,t,a)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,a)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,a)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,a)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},93818,e=>{"use strict";var t=e.i(46023),a=e.i(43793),r=e.i(81149);function n(e,t,a,r){if(!r)return null;let n=r.window_5h_used_pct,s=r.window_weekly_used_pct;return{agent:e,label:t,accountLabel:a,remaining5h:null==n?null:Math.max(0,100-n),used5h:n,remainingWeekly:null==s?null:Math.max(0,100-s),usedWeekly:s,resetAt5h:r.reset_at_5h,resetAtWeekly:r.reset_at_weekly,capturedAt:r.captured_at}}function s(e){let t=[e.remaining5h,e.remainingWeekly].filter(e=>null!=e);return 0===t.length?1/0:Math.min(...t)}function o(e){var t;let a=e.ended_at??Date.now();return{id:e.id,tool:e.tool,project:(t=e.cwd,t?.split("/").filter(Boolean).pop()??"unknown"),title:e.ai_title??e.summary,startedAt:e.started_at,endedAt:e.ended_at,durationMs:Math.max(0,a-e.started_at)}}function i(e,t,a){let r=Date.now(),n=e.prepare(`
2
+ SELECT id, tool, cwd, ai_title, summary, started_at, ended_at
3
+ FROM sessions
4
+ WHERE tool = ?
5
+ AND started_at > ?
6
+ AND (
7
+ ended_at IS NULL
8
+ OR (? = 'codex' AND ended_at > ?)
9
+ )
10
+ ORDER BY COALESCE(ended_at, ?) DESC, started_at DESC
11
+ LIMIT 1
12
+ `).get(t,r-864e5,t,r-6e5,r),s=e.prepare(`
13
+ SELECT id, tool, cwd, ai_title, summary, started_at, ended_at
14
+ FROM sessions
15
+ WHERE tool = ?
16
+ AND ended_at IS NOT NULL
17
+ ORDER BY ended_at DESC
18
+ LIMIT 1
19
+ `).get(t),i=n?o(n):null,l=s?o(s):null;return{agent:t,state:i?"active":l&&l.endedAt&&l.endedAt>r-3e5?"recent":"idle",quotaLevel:function(e){if(!e)return"unknown";let t=[e.remaining5h,e.remainingWeekly].filter(e=>null!=e);if(0===t.length)return"unknown";let a=Math.min(...t);return a<20?"critical":a<45?"warning":"ok"}(a),activeSession:i,recentSession:l}}async function l(){let e=(0,a.getDb)(),o=(await (0,t.getCodexAccounts)()).find(e=>e.isCurrent)??null,l=o?(0,r.getLatestUsageSnapshot)(e,"codex",o.accountId):(0,r.getLatestUsageSnapshot)(e,"codex"),d=(0,r.getLatestUsageSnapshot)(e,"statusline"),u=[n("codex","Codex",o?.label??null,l),n("claude-code","Claude",null,d)].filter(e=>null!=e),p=u.length>0?[...u].sort((e,t)=>s(e)-s(t))[0]:null,c=u.find(e=>"codex"===e.agent)??null,h=u.find(e=>"claude-code"===e.agent)??null,g=new Date;g.setHours(0,0,0,0);let R=g.getTime(),x=R+864e5,E=e.prepare("SELECT COUNT(*) AS count FROM sessions").get().count,m=e.prepare(`
20
+ SELECT COUNT(*) AS count
21
+ FROM sessions
22
+ WHERE started_at < ?
23
+ AND COALESCE(ended_at, ?) >= ?
24
+ `).get(x,Date.now(),R).count,f=e.prepare(`
25
+ SELECT tool, COUNT(*) AS count
26
+ FROM sessions
27
+ WHERE started_at < ?
28
+ AND COALESCE(ended_at, ?) >= ?
29
+ GROUP BY tool
30
+ ORDER BY count DESC
31
+ `).all(x,Date.now(),R),w=e.prepare(`
32
+ SELECT tool, cwd, ai_title, summary, started_at
33
+ FROM sessions
34
+ ORDER BY started_at DESC
35
+ LIMIT 1
36
+ `).get();return{generatedAt:Date.now(),primary:p,quotas:u,liveByAgent:[i(e,"claude-code",h),i(e,"codex",c)],todaySessions:m,totalSessions:E,todayByTool:f,lastSession:w?{tool:w.tool,project:w.cwd?.split("/").filter(Boolean).pop()??"unknown",title:w.ai_title??w.summary,startedAt:w.started_at}:null}}e.s(["getFloatStats",0,l])},66814,e=>{"use strict";var t=e.i(47909),a=e.i(74017),r=e.i(96250),n=e.i(59756),s=e.i(61916),o=e.i(74677),i=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),p=e.i(47587),c=e.i(66012),h=e.i(70101),g=e.i(26937),R=e.i(10372),x=e.i(93695);e.i(52474);var E=e.i(220),m=e.i(89171),f=e.i(93818),w=e.i(80909);async function v(e){return"usage"===new URL(e.url).searchParams.get("refresh")&&(0,w.importUsageSnapshots)(),m.NextResponse.json(await (0,f.getFloatStats)())}e.s(["GET",0,v,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],13049);var C=e.i(13049);let _=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/float/route",pathname:"/api/float",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/float/route.ts",nextConfigOutput:"",userland:C,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:y,serverHooks:S}=_;async function O(e,t,r){r.requestMeta&&(0,n.setRequestMeta)(e,r.requestMeta),_.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let m="/api/float/route";m=m.replace(/\/index$/,"")||"/";let f=await _.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:w,deploymentId:v,params:C,nextConfig:A,parsedUrl:y,isDraftMode:S,prerenderManifest:O,routerServerContext:T,isOnDemandRevalidate:N,revalidateOnlyGenerated:D,resolvedPathname:k,clientReferenceManifest:b,serverActionsManifest:M}=f,U=(0,i.normalizeAppPath)(m),L=!!(O.dynamicRoutes[U]||O.routes[k]),P=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,y,!1):t.end("This page could not be found"),null);if(L&&!S){let e=!!O.routes[k],t=O.dynamicRoutes[U];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await P();throw new x.NoFallbackError}}let q=null;!L||_.isDev||S||(q="/index"===(q=k)?"/":q);let I=!0===_.isDev||!L,H=L&&!I;M&&b&&(0,o.setManifestsSingleton)({page:m,clientReferenceManifest:b,serverActionsManifest:M});let j=e.method||"GET",F=(0,s.getTracer)(),B=F.getActiveScopeSpan(),W=!!(null==T?void 0:T.isWrappedByNextServer),$=!!(0,n.getRequestMeta)(e,"minimalMode"),K=(0,n.getRequestMeta)(e,"incrementalCache")||await _.getIncrementalCache(e,A,O,$);null==K||K.resetRequestCache(),globalThis.__incrementalCache=K;let G={params:C,previewProps:O.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:I,incrementalCache:K,cacheLifeProfiles:A.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>_.onRequestError(e,t,r,n,T)},sharedContext:{buildId:w,deploymentId:v}},Y=new l.NodeNextRequest(e),V=new l.NodeNextResponse(t),X=d.NextRequestAdapter.fromNodeNextRequest(Y,(0,d.signalFromNodeResponse)(t));try{let n,o=async e=>_.handle(X,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=F.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route");if(r){let t=`${j} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",r),n.updateName(t))}else e.updateName(`${j} ${m}`)}),i=async n=>{var s,i;let l=async({previousCacheEntry:a})=>{try{if(!$&&N&&D&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=G.renderOpts.fetchMetrics;let i=G.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let l=G.renderOpts.collectedTags;if(!L)return await (0,c.sendResponse)(Y,V,s,G.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[R.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,r=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await _.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,T),t}},d=await _.handleResponse({req:e,nextConfig:A,cacheKey:q,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:D,responseGenerator:l,waitUntil:r.waitUntil,isMinimalMode:$});if(!L)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});$||t.setHeader("x-nextjs-cache",N?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return $&&L||u.delete(R.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(Y,V,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};W&&B?await i(B):(n=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${j} ${m}`,kind:s.SpanKind.SERVER,attributes:{"http.method":j,"http.target":e.url}},i),void 0,!W))}catch(t){if(t instanceof x.NoFallbackError||await _.onRequestError(e,t,{routerKind:"App Router",routePath:U,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,T),L)throw t;return await (0,c.sendResponse)(Y,V,new Response(null,{status:500})),null}}e.s(["handler",0,O,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:y})},"routeModule",0,_,"serverHooks",0,S,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,y],66814)}];
37
+
38
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0mwf0bn._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/float-stats.ts","../../../src/app/api/float/route.ts","../../../node_modules/next/dist/esm/build/templates/app-route.js"],"sourcesContent":["import { getCodexAccounts } from './codex-auth';\nimport { getDb } from './db';\nimport { getLatestUsageSnapshot, type UsageSnapshotRecord } from './usage-snapshots';\n\nexport interface FloatQuota {\n agent: 'codex' | 'claude-code';\n label: string;\n accountLabel: string | null;\n remaining5h: number | null;\n used5h: number | null;\n remainingWeekly: number | null;\n usedWeekly: number | null;\n resetAt5h: number | null;\n resetAtWeekly: number | null;\n capturedAt: number | null;\n}\n\nexport interface FloatStats {\n generatedAt: number;\n primary: FloatQuota | null;\n quotas: FloatQuota[];\n liveByAgent: FloatAgentLive[];\n todaySessions: number;\n totalSessions: number;\n todayByTool: { tool: string; count: number }[];\n lastSession: {\n tool: string;\n project: string;\n title: string | null;\n startedAt: number;\n } | null;\n}\n\nexport interface FloatLiveSession {\n id: string;\n tool: string;\n project: string;\n title: string | null;\n startedAt: number;\n endedAt: number | null;\n durationMs: number;\n}\n\nexport interface FloatAgentLive {\n agent: 'codex' | 'claude-code';\n state: 'active' | 'recent' | 'idle';\n quotaLevel: 'ok' | 'warning' | 'critical' | 'unknown';\n activeSession: FloatLiveSession | null;\n recentSession: FloatLiveSession | null;\n}\n\nfunction quotaFromSnapshot(\n agent: FloatQuota['agent'],\n label: string,\n accountLabel: string | null,\n row: UsageSnapshotRecord | null,\n): FloatQuota | null {\n if (!row) return null;\n const used5h = row.window_5h_used_pct;\n const usedWeekly = row.window_weekly_used_pct;\n return {\n agent,\n label,\n accountLabel,\n remaining5h: used5h == null ? null : Math.max(0, 100 - used5h),\n used5h,\n remainingWeekly: usedWeekly == null ? null : Math.max(0, 100 - usedWeekly),\n usedWeekly,\n resetAt5h: row.reset_at_5h,\n resetAtWeekly: row.reset_at_weekly,\n capturedAt: row.captured_at,\n };\n}\n\nfunction quotaPressure(quota: FloatQuota): number {\n const candidates = [quota.remaining5h, quota.remainingWeekly].filter((value): value is number => value != null);\n if (candidates.length === 0) return Number.POSITIVE_INFINITY;\n return Math.min(...candidates);\n}\n\nfunction projectName(cwd: string | null): string {\n return cwd?.split('/').filter(Boolean).pop() ?? 'unknown';\n}\n\nfunction quotaLevel(quota: FloatQuota | null): FloatAgentLive['quotaLevel'] {\n if (!quota) return 'unknown';\n const values = [quota.remaining5h, quota.remainingWeekly].filter((value): value is number => value != null);\n if (values.length === 0) return 'unknown';\n const remaining = Math.min(...values);\n if (remaining < 20) return 'critical';\n if (remaining < 45) return 'warning';\n return 'ok';\n}\n\nfunction toLiveSession(row: {\n id: string;\n tool: string;\n cwd: string | null;\n ai_title: string | null;\n summary: string | null;\n started_at: number;\n ended_at: number | null;\n}): FloatLiveSession {\n const end = row.ended_at ?? Date.now();\n return {\n id: row.id,\n tool: row.tool,\n project: projectName(row.cwd),\n title: row.ai_title ?? row.summary,\n startedAt: row.started_at,\n endedAt: row.ended_at,\n durationMs: Math.max(0, end - row.started_at),\n };\n}\n\nfunction getAgentLive(\n db: ReturnType<typeof getDb>,\n agent: FloatAgentLive['agent'],\n quota: FloatQuota | null,\n): FloatAgentLive {\n const now = Date.now();\n const activeCutoff = now - 24 * 3_600_000;\n const codexRecentCutoff = now - 10 * 60_000;\n\n const active = db.prepare(`\n SELECT id, tool, cwd, ai_title, summary, started_at, ended_at\n FROM sessions\n WHERE tool = ?\n AND started_at > ?\n AND (\n ended_at IS NULL\n OR (? = 'codex' AND ended_at > ?)\n )\n ORDER BY COALESCE(ended_at, ?) DESC, started_at DESC\n LIMIT 1\n `).get(agent, activeCutoff, agent, codexRecentCutoff, now) as Parameters<typeof toLiveSession>[0] | undefined;\n\n const recent = db.prepare(`\n SELECT id, tool, cwd, ai_title, summary, started_at, ended_at\n FROM sessions\n WHERE tool = ?\n AND ended_at IS NOT NULL\n ORDER BY ended_at DESC\n LIMIT 1\n `).get(agent) as Parameters<typeof toLiveSession>[0] | undefined;\n\n const activeSession = active ? toLiveSession(active) : null;\n const recentSession = recent ? toLiveSession(recent) : null;\n return {\n agent,\n state: activeSession ? 'active' : recentSession && recentSession.endedAt && recentSession.endedAt > now - 5 * 60_000 ? 'recent' : 'idle',\n quotaLevel: quotaLevel(quota),\n activeSession,\n recentSession,\n };\n}\n\nexport async function getFloatStats(): Promise<FloatStats> {\n const db = getDb();\n const codexAccounts = await getCodexAccounts();\n const currentCodex = codexAccounts.find((account) => account.isCurrent) ?? null;\n const codexRow = currentCodex\n ? getLatestUsageSnapshot(db, 'codex', currentCodex.accountId)\n : getLatestUsageSnapshot(db, 'codex');\n const claudeRow = getLatestUsageSnapshot(db, 'statusline');\n\n const quotas = [\n quotaFromSnapshot('codex', 'Codex', currentCodex?.label ?? null, codexRow),\n quotaFromSnapshot('claude-code', 'Claude', null, claudeRow),\n ].filter((quota): quota is FloatQuota => quota != null);\n\n const primary = quotas.length > 0\n ? [...quotas].sort((a, b) => quotaPressure(a) - quotaPressure(b))[0]\n : null;\n const codexQuota = quotas.find((quota) => quota.agent === 'codex') ?? null;\n const claudeQuota = quotas.find((quota) => quota.agent === 'claude-code') ?? null;\n\n const dayStart = new Date();\n dayStart.setHours(0, 0, 0, 0);\n const todayStart = dayStart.getTime();\n const todayEnd = todayStart + 86_400_000;\n\n const totalSessions = (db.prepare(`SELECT COUNT(*) AS count FROM sessions`).get() as { count: number }).count;\n const todaySessions = (db.prepare(`\n SELECT COUNT(*) AS count\n FROM sessions\n WHERE started_at < ?\n AND COALESCE(ended_at, ?) >= ?\n `).get(todayEnd, Date.now(), todayStart) as { count: number }).count;\n const todayByTool = db.prepare(`\n SELECT tool, COUNT(*) AS count\n FROM sessions\n WHERE started_at < ?\n AND COALESCE(ended_at, ?) >= ?\n GROUP BY tool\n ORDER BY count DESC\n `).all(todayEnd, Date.now(), todayStart) as { tool: string; count: number }[];\n const lastSession = db.prepare(`\n SELECT tool, cwd, ai_title, summary, started_at\n FROM sessions\n ORDER BY started_at DESC\n LIMIT 1\n `).get() as { tool: string; cwd: string | null; ai_title: string | null; summary: string | null; started_at: number } | undefined;\n\n return {\n generatedAt: Date.now(),\n primary,\n quotas,\n liveByAgent: [\n getAgentLive(db, 'claude-code', claudeQuota),\n getAgentLive(db, 'codex', codexQuota),\n ],\n todaySessions,\n totalSessions,\n todayByTool,\n lastSession: lastSession ? {\n tool: lastSession.tool,\n project: lastSession.cwd?.split('/').filter(Boolean).pop() ?? 'unknown',\n title: lastSession.ai_title ?? lastSession.summary,\n startedAt: lastSession.started_at,\n } : null,\n };\n}\n","import { NextResponse } from 'next/server';\nimport { getFloatStats } from '@/lib/float-stats';\nimport { importUsageSnapshots } from '@/lib/collectors/session-importer';\n\nexport const runtime = 'nodejs';\nexport const dynamic = 'force-dynamic';\n\nexport async function GET(request: Request) {\n const url = new URL(request.url);\n if (url.searchParams.get('refresh') === 'usage') {\n importUsageSnapshots();\n }\n return NextResponse.json(await getFloatStats());\n}\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { addRequestMeta, getRequestMeta, setRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { setManifestsSingleton } from \"next/dist/esm/server/app-render/manifests-singleton\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/float/route\",\n pathname: \"/api/float\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/src/app/api/float/route.ts\",\n nextConfigOutput,\n // The static import is used for initialization (methods, dynamic, etc.).\n userland: userland,\n // In Turbopack dev mode, also provide a getter that calls require() on every\n // request. This re-reads from devModuleCache so HMR updates are picked up,\n // and the async wrapper unwraps async-module Promises (ESM-only\n // serverExternalPackages) automatically.\n ...process.env.TURBOPACK && process.env.__NEXT_DEV_SERVER ? {\n getUserland: ()=>import(\"INNER_APP_ROUTE\")\n } : {}\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n if (ctx.requestMeta) {\n setRequestMeta(req, ctx.requestMeta);\n }\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());\n }\n let srcPage = \"/api/float/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, deploymentId, params, nextConfig, parsedUrl, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname, clientReferenceManifest, serverActionsManifest } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n const render404 = async ()=>{\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext == null ? void 0 : routerServerContext.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false);\n } else {\n res.end('This page could not be found');\n }\n return null;\n };\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.adapterPath) {\n return await render404();\n }\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse;\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest\n });\n }\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const isWrappedByNextServer = Boolean(routerServerContext == null ? void 0 : routerServerContext.isWrappedByNextServer);\n const isMinimalMode = Boolean(getRequestMeta(req, 'minimalMode'));\n const incrementalCache = getRequestMeta(req, 'incrementalCache') || await routeModule.getIncrementalCache(req, nextConfig, prerenderManifest, isMinimalMode);\n incrementalCache == null ? void 0 : incrementalCache.resetRequestCache();\n globalThis.__incrementalCache = incrementalCache;\n const context = {\n params,\n previewProps: prerenderManifest.preview,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache,\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext)\n },\n sharedContext: {\n buildId,\n deploymentId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n let parentSpan;\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n // Propagate http.route to the parent span if one exists (e.g.\n // a platform-created HTTP span in adapter deployments).\n if (parentSpan && parentSpan !== span) {\n parentSpan.setAttribute('http.route', route);\n parentSpan.updateName(name);\n }\n } else {\n span.updateName(`${method} ${srcPage}`);\n }\n });\n };\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!isMinimalMode && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!isMinimalMode) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (isWrappedByNextServer && activeSpan) {\n await handleResponse(activeSpan);\n } else {\n parentSpan = tracer.getActiveScopeSpan();\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${srcPage}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse), undefined, !isWrappedByNextServer);\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n"],"names":["quotaFromSnapshot","agent","label","accountLabel","row","used5h","window_5h_used_pct","usedWeekly","window_weekly_used_pct","remaining5h","Math","max","remainingWeekly","resetAt5h","reset_at_5h","resetAtWeekly","reset_at_weekly","capturedAt","captured_at","quotaPressure","quota","candidates","filter","value","length","Number","POSITIVE_INFINITY","min","projectName","cwd","split","Boolean","pop","quotaLevel","values","remaining","toLiveSession","end","ended_at","Date","now","id","tool","project","title","ai_title","summary","startedAt","started_at","endedAt","durationMs","getAgentLive","db","activeCutoff","codexRecentCutoff","active","prepare","get","recent","activeSession","recentSession","state","getFloatStats","codexAccounts","currentCodex","find","account","isCurrent","codexRow","accountId","claudeRow","quotas","primary","sort","a","b","codexQuota","claudeQuota","dayStart","setHours","todayStart","getTime","todayEnd","totalSessions","count","todaySessions","todayByTool","all","lastSession","generatedAt","liveByAgent","runtime","dynamic","GET","request","url","URL","searchParams","json"],"mappings":"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","ignoreList":[2]}
@@ -1,4 +1,4 @@
1
- module.exports=[93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},46023,e=>{"use strict";var t=e.i(12714),r=e.i(2157),n=e.i(60526),a=e.i(50227);let o="https://api.openai.com/auth";function i(e={}){return{authPath:e.authPath??a.default.join((0,n.homedir)(),".codex","auth.json"),storeDir:e.storeDir??a.default.join((0,n.homedir)(),".codex","auth-accounts")}}function s(e,t){return a.default.join(t,`${e.replace(/[^a-zA-Z0-9_-]/g,"_")}.json`)}async function u(e){let r=JSON.parse(await (0,t.readFile)(e,"utf8"));if(!r.tokens||"string"!=typeof r.tokens.account_id)throw Error("Codex auth file is missing tokens.account_id");return r}async function c(e,r){await (0,t.mkdir)(a.default.dirname(e),{recursive:!0});let n=`${e}.${process.pid}.${Date.now()}.tmp`;await (0,t.writeFile)(n,`${JSON.stringify(r,null,2)}
1
+ module.exports=[93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},46023,e=>{"use strict";var t=e.i(12714),r=e.i(2157),n=e.i(60526),a=e.i(50227);let o="https://api.openai.com/auth";function i(e={}){return{authPath:e.authPath??a.default.join((0,n.homedir)(),".codex","auth.json"),storeDir:e.storeDir??a.default.join((0,n.homedir)(),".codex","auth-accounts")}}function s(e,t){return a.default.join(t,`${e.replace(/[^a-zA-Z0-9_-]/g,"_")}.json`)}async function u(e){let r=JSON.parse(await (0,t.readFile)(e,"utf8"));if(!r.tokens||"string"!=typeof r.tokens.account_id)throw Error("Codex auth file is missing tokens.account_id");return r}async function c(e,r){await (0,t.mkdir)(a.default.dirname(e),{recursive:!0});let n=`${e}.${process.pid}.${Date.now()}.tmp`;await (0,t.writeFile)(n,`${JSON.stringify(r,null,2)}
2
2
  `,{encoding:"utf8",mode:384}),await (0,t.rename)(n,e)}function l(e){if("string"!=typeof e)return null;let[,t]=e.split(".");if(!t)return null;try{return JSON.parse(Buffer.from(t,"base64url").toString("utf8"))}catch{return null}}function d(e){return"string"==typeof e&&e.length>0?e:null}function p(e){return"number"==typeof e?new Date(1e3*e).toISOString():null}function h(e,t,r){let n=d(e.tokens?.account_id);if(!n)throw Error("Codex auth file is missing tokens.account_id");let a=l(e.tokens?.id_token),i=l(e.tokens?.access_token),s=a?.[o],u=i?.[o],c=d(a?.email),h=d(a?.name),f=d(s?.chatgpt_plan_type)??d(u?.chatgpt_plan_type),x=d(s?.user_id)??d(u?.user_id),w=c??h??`${n.slice(0,8)}...${n.slice(-4)}`;return{accountId:n,label:w,email:c,name:h,planType:f,userId:x,lastRefresh:d(e.last_refresh),idTokenExpiresAt:p(a?.exp),accessTokenExpiresAt:p(i?.exp),storedAt:t,isCurrent:n===r}}async function f(e={}){let{authPath:r,storeDir:n}=i(e),o=null,s=null;try{s=await u(r),o=d(s.tokens?.account_id)}catch{s=null}let c=new Map;try{for(let e of(await (0,t.readdir)(n))){if(!e.endsWith(".json"))continue;let r=a.default.join(n,e);try{let e=await u(r),n=await (0,t.stat)(r),a=h(e,n.mtime.toISOString(),o);c.set(a.accountId,a)}catch{}}}catch{}return s&&o&&!c.has(o)&&c.set(o,h(s,null,o)),[...c.values()].sort((e,t)=>e.isCurrent!==t.isCurrent?e.isCurrent?-1:1:e.label.localeCompare(t.label))}async function x(e={}){let{authPath:r,storeDir:n}=i(e),a=await u(r),o=a.tokens?.account_id,l=s(o,n);return await c(l,a),h(a,(await (0,t.stat)(l)).mtime.toISOString(),o)}async function w(e,r={}){let{authPath:n,storeDir:a}=i(r),o=s(e,a),l=await u(o);if(l.tokens?.account_id!==e)throw Error("Stored account id does not match requested account");let d=null;try{let e=await (0,t.readFile)(n,"utf8");d=`${n}.${new Date().toISOString().replace(/[:.]/g,"-")}.bak`,await (0,t.writeFile)(d,e,{encoding:"utf8",mode:384})}catch{d=null}return await c(n,l),{...h(l,null,e),backupPath:d}}async function m(e,r={}){let{authPath:n,storeDir:a}=i(r),o=await u(n).catch(()=>null);if(o?.tokens?.account_id===e)throw Error("Cannot delete the currently active Codex account");await (0,t.unlink)(s(e,a))}e.s(["deleteCodexAccount",0,m,"getCodexAccounts",0,f,"getCurrentCodexAccount",0,function(e={}){let{authPath:t}=i(e);try{let e=JSON.parse((0,r.readFileSync)(t,"utf8")),n=d(e.tokens?.account_id);if(!n)return null;return{accountId:n,authMtimeMs:(0,r.statSync)(t).mtimeMs}}catch{return null}},"importCurrentCodexAuth",0,x,"switchCodexAccount",0,w])},21947,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),o=e.i(61916),i=e.i(74677),s=e.i(69741),u=e.i(16795),c=e.i(87718),l=e.i(95169),d=e.i(47587),p=e.i(66012),h=e.i(70101),f=e.i(26937),x=e.i(10372),w=e.i(93695);e.i(52474);var m=e.i(220),g=e.i(89171),R=e.i(46023);function v(e,t=400){return g.NextResponse.json({error:e instanceof Error?e.message:"Codex account operation failed"},{status:t})}async function y(){try{return g.NextResponse.json({accounts:await (0,R.getCodexAccounts)()})}catch(e){return v(e,500)}}async function C(e){try{let t=await e.json().catch(()=>({}));if("import-current"===t.action){let e=await (0,R.importCurrentCodexAuth)();return g.NextResponse.json({account:e,accounts:await (0,R.getCodexAccounts)()})}if("switch"===t.action){if(!t.accountId)return v(Error("Missing accountId"));let e=await (0,R.switchCodexAccount)(t.accountId);return g.NextResponse.json({account:e,accounts:await (0,R.getCodexAccounts)()})}if("delete"===t.action){if(!t.accountId)return v(Error("Missing accountId"));return await (0,R.deleteCodexAccount)(t.accountId),g.NextResponse.json({accounts:await (0,R.getCodexAccounts)()})}return v(Error("Unsupported action"))}catch(e){return v(e)}}e.s(["GET",0,y,"POST",0,C,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],89492);var E=e.i(89492);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/codex-accounts/route",pathname:"/api/codex-accounts",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/codex-accounts/route.ts",nextConfigOutput:"",userland:E,...{}}),{workAsyncStorage:_,workUnitAsyncStorage:k,serverHooks:S}=A;async function b(e,t,n){n.requestMeta&&(0,a.setRequestMeta)(e,n.requestMeta),A.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/codex-accounts/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,deploymentId:y,params:C,nextConfig:E,parsedUrl:_,isDraftMode:k,prerenderManifest:S,routerServerContext:b,isOnDemandRevalidate:N,revalidateOnlyGenerated:j,resolvedPathname:O,clientReferenceManifest:q,serverActionsManifest:T}=R,I=(0,s.normalizeAppPath)(g),P=!!(S.dynamicRoutes[I]||S.routes[O]),M=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,_,!1):t.end("This page could not be found"),null);if(P&&!k){let e=!!S.routes[O],t=S.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await M();throw new w.NoFallbackError}}let D=null;!P||A.isDev||k||(D="/index"===(D=O)?"/":D);let $=!0===A.isDev||!P,H=P&&!$;T&&q&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:q,serverActionsManifest:T});let U=e.method||"GET",F=(0,o.getTracer)(),K=F.getActiveScopeSpan(),B=!!(null==b?void 0:b.isWrappedByNextServer),L=!!(0,a.getRequestMeta)(e,"minimalMode"),G=(0,a.getRequestMeta)(e,"incrementalCache")||await A.getIncrementalCache(e,E,S,L);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let J={params:C,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:$,incrementalCache:G,cacheLifeProfiles:E.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>A.onRequestError(e,t,n,a,b)},sharedContext:{buildId:v,deploymentId:y}},W=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),X=c.NextRequestAdapter.fromNodeNextRequest(W,(0,c.signalFromNodeResponse)(t));try{let a,i=async e=>A.handle(X,J).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${U} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),a&&a!==e&&(a.setAttribute("http.route",n),a.updateName(t))}else e.updateName(`${U} ${g}`)}),s=async a=>{var o,s;let u=async({previousCacheEntry:r})=>{try{if(!L&&N&&j&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await i(a);e.fetchMetrics=J.renderOpts.fetchMetrics;let s=J.renderOpts.pendingWaitUntil;s&&n.waitUntil&&(n.waitUntil(s),s=void 0);let u=J.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(W,V,o,J.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(o.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==J.renderOpts.collectedRevalidate&&!(J.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&J.renderOpts.collectedRevalidate,n=void 0===J.renderOpts.collectedExpire||J.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:J.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,b),t}},c=await A.handleResponse({req:e,nextConfig:E,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:j,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:L});if(!P)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(s=c.value)?void 0:s.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",N?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return L&&P||l.delete(x.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,f.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(W,V,new Response(c.value.body,{headers:l,status:c.value.status||200})),null};B&&K?await s(K):(a=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(l.BaseServerSpan.handleRequest,{spanName:`${U} ${g}`,kind:o.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},s),void 0,!B))}catch(t){if(t instanceof w.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,b),P)throw t;return await (0,p.sendResponse)(W,V,new Response(null,{status:500})),null}}e.s(["handler",0,b,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:k})},"routeModule",0,A,"serverHooks",0,S,"workAsyncStorage",0,_,"workUnitAsyncStorage",0,k],21947)}];
3
3
 
4
- //# sourceMappingURL=%5Broot-of-the-server%5D__0-74syk._.js.map
4
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0ru3_it._.js.map