@hirra/vibemeter 0.1.0

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 (266) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +12 -0
  3. package/.next/build/chunks/[root-of-the-server]__0d-m0h0._.js +206 -0
  4. package/.next/build/chunks/[root-of-the-server]__0d-m0h0._.js.map +8 -0
  5. package/.next/build/chunks/[root-of-the-server]__0ubbtyl._.js +500 -0
  6. package/.next/build/chunks/[root-of-the-server]__0ubbtyl._.js.map +11 -0
  7. package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_06e.r3r._.js +13 -0
  8. package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_06e.r3r._.js.map +5 -0
  9. package/.next/build/chunks/[turbopack]_runtime.js +890 -0
  10. package/.next/build/chunks/[turbopack]_runtime.js.map +11 -0
  11. package/.next/build/chunks/node_modules_13sb.px._.js +6815 -0
  12. package/.next/build/chunks/node_modules_13sb.px._.js.map +47 -0
  13. package/.next/build/package.json +1 -0
  14. package/.next/build/postcss.js +6 -0
  15. package/.next/build/postcss.js.map +5 -0
  16. package/.next/build-manifest.json +21 -0
  17. package/.next/export-marker.json +6 -0
  18. package/.next/fallback-build-manifest.json +13 -0
  19. package/.next/images-manifest.json +68 -0
  20. package/.next/next-minimal-server.js.nft.json +1 -0
  21. package/.next/next-server.js.nft.json +1 -0
  22. package/.next/package.json +1 -0
  23. package/.next/prerender-manifest.json +90 -0
  24. package/.next/required-server-files.js +335 -0
  25. package/.next/required-server-files.json +335 -0
  26. package/.next/routes-manifest.json +108 -0
  27. package/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
  28. package/.next/server/app/_global-error/page/build-manifest.json +17 -0
  29. package/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
  30. package/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
  31. package/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
  32. package/.next/server/app/_global-error/page.js +10 -0
  33. package/.next/server/app/_global-error/page.js.map +5 -0
  34. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  35. package/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
  36. package/.next/server/app/_global-error.html +1 -0
  37. package/.next/server/app/_global-error.meta +15 -0
  38. package/.next/server/app/_global-error.rsc +15 -0
  39. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +5 -0
  40. package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  41. package/.next/server/app/_global-error.segments/_head.segment.rsc +6 -0
  42. package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
  43. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  44. package/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  45. package/.next/server/app/_not-found/page/build-manifest.json +17 -0
  46. package/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
  47. package/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  48. package/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
  49. package/.next/server/app/_not-found/page.js +13 -0
  50. package/.next/server/app/_not-found/page.js.map +5 -0
  51. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  52. package/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
  53. package/.next/server/app/_not-found.html +1 -0
  54. package/.next/server/app/_not-found.meta +16 -0
  55. package/.next/server/app/_not-found.rsc +16 -0
  56. package/.next/server/app/_not-found.segments/_full.segment.rsc +16 -0
  57. package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  58. package/.next/server/app/_not-found.segments/_index.segment.rsc +5 -0
  59. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  60. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
  61. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -0
  62. package/.next/server/app/admin/page/app-paths-manifest.json +3 -0
  63. package/.next/server/app/admin/page/build-manifest.json +17 -0
  64. package/.next/server/app/admin/page/next-font-manifest.json +11 -0
  65. package/.next/server/app/admin/page/react-loadable-manifest.json +1 -0
  66. package/.next/server/app/admin/page/server-reference-manifest.json +4 -0
  67. package/.next/server/app/admin/page.js +14 -0
  68. package/.next/server/app/admin/page.js.map +5 -0
  69. package/.next/server/app/admin/page.js.nft.json +1 -0
  70. package/.next/server/app/admin/page_client-reference-manifest.js +3 -0
  71. package/.next/server/app/api/codex-accounts/route/app-paths-manifest.json +3 -0
  72. package/.next/server/app/api/codex-accounts/route/build-manifest.json +9 -0
  73. package/.next/server/app/api/codex-accounts/route/server-reference-manifest.json +4 -0
  74. package/.next/server/app/api/codex-accounts/route.js +6 -0
  75. package/.next/server/app/api/codex-accounts/route.js.map +5 -0
  76. package/.next/server/app/api/codex-accounts/route.js.nft.json +1 -0
  77. package/.next/server/app/api/codex-accounts/route_client-reference-manifest.js +3 -0
  78. package/.next/server/app/api/import-sessions/route/app-paths-manifest.json +3 -0
  79. package/.next/server/app/api/import-sessions/route/build-manifest.json +9 -0
  80. package/.next/server/app/api/import-sessions/route/server-reference-manifest.json +4 -0
  81. package/.next/server/app/api/import-sessions/route.js +6 -0
  82. package/.next/server/app/api/import-sessions/route.js.map +5 -0
  83. package/.next/server/app/api/import-sessions/route.js.nft.json +1 -0
  84. package/.next/server/app/api/import-sessions/route_client-reference-manifest.js +3 -0
  85. package/.next/server/app/api/sessions/[id]/tags/route/app-paths-manifest.json +3 -0
  86. package/.next/server/app/api/sessions/[id]/tags/route/build-manifest.json +9 -0
  87. package/.next/server/app/api/sessions/[id]/tags/route/server-reference-manifest.json +4 -0
  88. package/.next/server/app/api/sessions/[id]/tags/route.js +7 -0
  89. package/.next/server/app/api/sessions/[id]/tags/route.js.map +5 -0
  90. package/.next/server/app/api/sessions/[id]/tags/route.js.nft.json +1 -0
  91. package/.next/server/app/api/sessions/[id]/tags/route_client-reference-manifest.js +3 -0
  92. package/.next/server/app/api/sessions/route/app-paths-manifest.json +3 -0
  93. package/.next/server/app/api/sessions/route/build-manifest.json +9 -0
  94. package/.next/server/app/api/sessions/route/server-reference-manifest.json +4 -0
  95. package/.next/server/app/api/sessions/route.js +6 -0
  96. package/.next/server/app/api/sessions/route.js.map +5 -0
  97. package/.next/server/app/api/sessions/route.js.nft.json +1 -0
  98. package/.next/server/app/api/sessions/route_client-reference-manifest.js +3 -0
  99. package/.next/server/app/api/usage/route/app-paths-manifest.json +3 -0
  100. package/.next/server/app/api/usage/route/build-manifest.json +9 -0
  101. package/.next/server/app/api/usage/route/server-reference-manifest.json +4 -0
  102. package/.next/server/app/api/usage/route.js +6 -0
  103. package/.next/server/app/api/usage/route.js.map +5 -0
  104. package/.next/server/app/api/usage/route.js.nft.json +1 -0
  105. package/.next/server/app/api/usage/route_client-reference-manifest.js +3 -0
  106. package/.next/server/app/favicon.ico/route/app-paths-manifest.json +3 -0
  107. package/.next/server/app/favicon.ico/route/build-manifest.json +9 -0
  108. package/.next/server/app/favicon.ico/route.js +7 -0
  109. package/.next/server/app/favicon.ico/route.js.map +5 -0
  110. package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  111. package/.next/server/app/favicon.ico.body +0 -0
  112. package/.next/server/app/favicon.ico.meta +1 -0
  113. package/.next/server/app/page/app-paths-manifest.json +3 -0
  114. package/.next/server/app/page/build-manifest.json +17 -0
  115. package/.next/server/app/page/next-font-manifest.json +11 -0
  116. package/.next/server/app/page/react-loadable-manifest.json +1 -0
  117. package/.next/server/app/page/server-reference-manifest.json +4 -0
  118. package/.next/server/app/page.js +14 -0
  119. package/.next/server/app/page.js.map +5 -0
  120. package/.next/server/app/page.js.nft.json +1 -0
  121. package/.next/server/app/page_client-reference-manifest.js +3 -0
  122. package/.next/server/app-paths-manifest.json +12 -0
  123. package/.next/server/chunks/[externals]_next_dist_0arv.vj._.js +3 -0
  124. package/.next/server/chunks/[externals]_next_dist_0arv.vj._.js.map +1 -0
  125. package/.next/server/chunks/[root-of-the-server]__0-74syk._.js +4 -0
  126. package/.next/server/chunks/[root-of-the-server]__0-74syk._.js.map +1 -0
  127. package/.next/server/chunks/[root-of-the-server]__00q0o~z._.js +41 -0
  128. package/.next/server/chunks/[root-of-the-server]__00q0o~z._.js.map +1 -0
  129. package/.next/server/chunks/[root-of-the-server]__0866q87._.js +44 -0
  130. package/.next/server/chunks/[root-of-the-server]__0866q87._.js.map +1 -0
  131. package/.next/server/chunks/[root-of-the-server]__0ade2u0._.js +96 -0
  132. package/.next/server/chunks/[root-of-the-server]__0ade2u0._.js.map +1 -0
  133. package/.next/server/chunks/[root-of-the-server]__0chedn~._.js +3 -0
  134. package/.next/server/chunks/[root-of-the-server]__0chedn~._.js.map +1 -0
  135. package/.next/server/chunks/[root-of-the-server]__0j8-xkl._.js +13 -0
  136. package/.next/server/chunks/[root-of-the-server]__0j8-xkl._.js.map +1 -0
  137. package/.next/server/chunks/[root-of-the-server]__0ub_1u.._.js +63 -0
  138. package/.next/server/chunks/[root-of-the-server]__0ub_1u.._.js.map +1 -0
  139. package/.next/server/chunks/[turbopack]_runtime.js +903 -0
  140. package/.next/server/chunks/[turbopack]_runtime.js.map +11 -0
  141. package/.next/server/chunks/_next-internal_server_app_api_codex-accounts_route_actions_0mvn0sb.js +3 -0
  142. package/.next/server/chunks/_next-internal_server_app_api_codex-accounts_route_actions_0mvn0sb.js.map +1 -0
  143. package/.next/server/chunks/_next-internal_server_app_api_import-sessions_route_actions_0gcv3u8.js +3 -0
  144. package/.next/server/chunks/_next-internal_server_app_api_import-sessions_route_actions_0gcv3u8.js.map +1 -0
  145. package/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_tags_route_actions_0qemhrr.js +3 -0
  146. package/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_tags_route_actions_0qemhrr.js.map +1 -0
  147. package/.next/server/chunks/_next-internal_server_app_api_sessions_route_actions_0y1t9w0.js +3 -0
  148. package/.next/server/chunks/_next-internal_server_app_api_sessions_route_actions_0y1t9w0.js.map +1 -0
  149. package/.next/server/chunks/_next-internal_server_app_api_usage_route_actions_0rd63ni.js +3 -0
  150. package/.next/server/chunks/_next-internal_server_app_api_usage_route_actions_0rd63ni.js.map +1 -0
  151. package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js +3 -0
  152. package/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js.map +1 -0
  153. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0m.429v.js +3 -0
  154. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0m.429v.js.map +1 -0
  155. package/.next/server/chunks/node_modules_zod_v4_classic_external_131y~ke.js +64 -0
  156. package/.next/server/chunks/node_modules_zod_v4_classic_external_131y~ke.js.map +1 -0
  157. package/.next/server/chunks/ssr/[root-of-the-server]__02g_-ps._.js +3 -0
  158. package/.next/server/chunks/ssr/[root-of-the-server]__02g_-ps._.js.map +1 -0
  159. package/.next/server/chunks/ssr/[root-of-the-server]__054lv8d._.js +3 -0
  160. package/.next/server/chunks/ssr/[root-of-the-server]__054lv8d._.js.map +1 -0
  161. package/.next/server/chunks/ssr/[root-of-the-server]__08qr2ji._.js +33 -0
  162. package/.next/server/chunks/ssr/[root-of-the-server]__08qr2ji._.js.map +1 -0
  163. package/.next/server/chunks/ssr/[root-of-the-server]__098zro9._.js +19 -0
  164. package/.next/server/chunks/ssr/[root-of-the-server]__098zro9._.js.map +1 -0
  165. package/.next/server/chunks/ssr/[root-of-the-server]__09hgk-7._.js +3 -0
  166. package/.next/server/chunks/ssr/[root-of-the-server]__09hgk-7._.js.map +1 -0
  167. package/.next/server/chunks/ssr/[root-of-the-server]__0cqes87._.js +33 -0
  168. package/.next/server/chunks/ssr/[root-of-the-server]__0cqes87._.js.map +1 -0
  169. package/.next/server/chunks/ssr/[root-of-the-server]__0l.drdn._.js +3 -0
  170. package/.next/server/chunks/ssr/[root-of-the-server]__0l.drdn._.js.map +1 -0
  171. package/.next/server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js +120 -0
  172. package/.next/server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js.map +1 -0
  173. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js +3 -0
  174. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js.map +1 -0
  175. package/.next/server/chunks/ssr/[turbopack]_runtime.js +903 -0
  176. package/.next/server/chunks/ssr/[turbopack]_runtime.js.map +11 -0
  177. package/.next/server/chunks/ssr/_0ye~8el._.js +7 -0
  178. package/.next/server/chunks/ssr/_0ye~8el._.js.map +1 -0
  179. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js +3 -0
  180. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0k77kol.js.map +1 -0
  181. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js +3 -0
  182. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0eq97pa.js.map +1 -0
  183. package/.next/server/chunks/ssr/_next-internal_server_app_admin_page_actions_0ycnu8f.js +3 -0
  184. package/.next/server/chunks/ssr/_next-internal_server_app_admin_page_actions_0ycnu8f.js.map +1 -0
  185. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js +3 -0
  186. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js.map +1 -0
  187. package/.next/server/chunks/ssr/node_modules_09w7yel._.js +33 -0
  188. package/.next/server/chunks/ssr/node_modules_09w7yel._.js.map +1 -0
  189. package/.next/server/chunks/ssr/node_modules_0ck2~9g._.js +3 -0
  190. package/.next/server/chunks/ssr/node_modules_0ck2~9g._.js.map +1 -0
  191. package/.next/server/chunks/ssr/node_modules_0i2xw~e._.js +3 -0
  192. package/.next/server/chunks/ssr/node_modules_0i2xw~e._.js.map +1 -0
  193. package/.next/server/chunks/ssr/node_modules_next_dist_0e1izl_._.js +6 -0
  194. package/.next/server/chunks/ssr/node_modules_next_dist_0e1izl_._.js.map +1 -0
  195. package/.next/server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js +3 -0
  196. package/.next/server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js.map +1 -0
  197. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js +3 -0
  198. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js.map +1 -0
  199. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js +3 -0
  200. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js.map +1 -0
  201. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js +3 -0
  202. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js.map +1 -0
  203. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js +3 -0
  204. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js.map +1 -0
  205. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03-z2qq.js +4 -0
  206. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_03-z2qq.js.map +1 -0
  207. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_07vh7rm.js +4 -0
  208. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_07vh7rm.js.map +1 -0
  209. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0l5h-6w.js +4 -0
  210. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0l5h-6w.js.map +1 -0
  211. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0qp4u6g.js +4 -0
  212. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0qp4u6g.js.map +1 -0
  213. package/.next/server/chunks/ssr/src_components_CodexAccountsPanel_tsx_0n9xjzi._.js +3 -0
  214. package/.next/server/chunks/ssr/src_components_CodexAccountsPanel_tsx_0n9xjzi._.js.map +1 -0
  215. package/.next/server/functions-config-manifest.json +7 -0
  216. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  217. package/.next/server/middleware-build-manifest.js +21 -0
  218. package/.next/server/middleware-manifest.json +6 -0
  219. package/.next/server/next-font-manifest.js +1 -0
  220. package/.next/server/next-font-manifest.json +19 -0
  221. package/.next/server/pages/404.html +1 -0
  222. package/.next/server/pages/500.html +1 -0
  223. package/.next/server/pages-manifest.json +4 -0
  224. package/.next/server/prefetch-hints.json +1 -0
  225. package/.next/server/server-reference-manifest.js +1 -0
  226. package/.next/server/server-reference-manifest.json +5 -0
  227. package/.next/static/chunks/002~6040mndie.css +3 -0
  228. package/.next/static/chunks/00gq-v0e07i1q.js +31 -0
  229. package/.next/static/chunks/01xlw8hd842-c.js +1 -0
  230. package/.next/static/chunks/02g3221oh~3le.js +2 -0
  231. package/.next/static/chunks/03~yq9q893hmn.js +1 -0
  232. package/.next/static/chunks/05t54y~yfn5og.js +2 -0
  233. package/.next/static/chunks/07lhk_q6pmm3r.js +1 -0
  234. package/.next/static/chunks/0d3shmwh5_nmn.js +1 -0
  235. package/.next/static/chunks/0ljfidstam_7k.js +1 -0
  236. package/.next/static/chunks/0pqt~8bl3ukh4.js +4 -0
  237. package/.next/static/chunks/turbopack-14vio.b1b9i4l.js +1 -0
  238. package/.next/static/fZRw0LZi2i6aUKKet_Evv/_buildManifest.js +11 -0
  239. package/.next/static/fZRw0LZi2i6aUKKet_Evv/_clientMiddlewareManifest.js +1 -0
  240. package/.next/static/fZRw0LZi2i6aUKKet_Evv/_ssgManifest.js +1 -0
  241. package/.next/static/media/4fa387ec64143e14-s.0.qu-9752pffj.woff2 +0 -0
  242. package/.next/static/media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2 +0 -0
  243. package/.next/static/media/5ce348bf30bf5439-s.0ee55_hj9qcer.woff2 +0 -0
  244. package/.next/static/media/6306c77e7c8268e4-s.0mao5jbfbduzp.woff2 +0 -0
  245. package/.next/static/media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2 +0 -0
  246. package/.next/static/media/797e433ab948586e-s.p.09zddjkbdep5a.woff2 +0 -0
  247. package/.next/static/media/7d817b4c03b0c5f1-s.0uzt.a6d44yda.woff2 +0 -0
  248. package/.next/static/media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2 +0 -0
  249. package/.next/static/media/bbc41e54d2fcbd21-s.0mvwgmnhv29no.woff2 +0 -0
  250. package/.next/static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2 +0 -0
  251. package/.next/static/media/favicon.0x3dzn~oxb6tn.ico +0 -0
  252. package/.next/static/media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2 +0 -0
  253. package/.next/types/cache-life.d.ts +145 -0
  254. package/.next/types/routes.d.ts +78 -0
  255. package/.next/types/validator.ts +124 -0
  256. package/LICENSE +21 -0
  257. package/README.md +119 -0
  258. package/bin/vibemeter.mjs +221 -0
  259. package/docs/demo1.png +0 -0
  260. package/next.config.mjs +8 -0
  261. package/package.json +51 -0
  262. package/public/file.svg +1 -0
  263. package/public/globe.svg +1 -0
  264. package/public/next.svg +1 -0
  265. package/public/vercel.svg +1 -0
  266. package/public/window.svg +1 -0
@@ -0,0 +1,4 @@
1
+ {
2
+ "node": {},
3
+ "edge": {}
4
+ }
@@ -0,0 +1,6 @@
1
+ var R=require("../../../chunks/[turbopack]_runtime.js")("server/app/api/usage/route.js")
2
+ R.c("server/chunks/[root-of-the-server]__0ub_1u.._.js")
3
+ R.c("server/chunks/[root-of-the-server]__0j8-xkl._.js")
4
+ R.c("server/chunks/_next-internal_server_app_api_usage_route_actions_0rd63ni.js")
5
+ R.m(62043)
6
+ module.exports=R.m(62043).exports
@@ -0,0 +1,5 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sections": []
5
+ }
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../../../../.data/continuity.sqlite","../../../../../.data/continuity.sqlite-shm","../../../../../.data/continuity.sqlite-wal","../../../../../.data/probe-usage.txt","../../../../../.data/sessions.db","../../../../../.data/statusline-latest.json","../../../../../AGENTS.md","../../../../../CLAUDE.md","../../../../../LICENSE","../../../../../README.md","../../../../../bin/vibemeter.mjs","../../../../../docs/demo1.png","../../../../../eslint.config.mjs","../../../../../next.config.mjs","../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../node_modules/@swc/helpers/package.json","../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../node_modules/next/dist/client/lib/console.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route-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","../../../../../package-lock.json","../../../../../package.json","../../../../../postcss.config.mjs","../../../../../public/file.svg","../../../../../public/globe.svg","../../../../../public/next.svg","../../../../../public/vercel.svg","../../../../../public/window.svg","../../../../../src/app/admin/page.tsx","../../../../../src/app/api/codex-accounts/route.ts","../../../../../src/app/api/import-sessions/route.ts","../../../../../src/app/api/sessions/[id]/tags/route.ts","../../../../../src/app/api/sessions/route.ts","../../../../../src/app/api/usage/route.ts","../../../../../src/app/favicon.ico","../../../../../src/app/globals.css","../../../../../src/app/layout.tsx","../../../../../src/app/page.tsx","../../../../../src/components/AchievementsCard.tsx","../../../../../src/components/ActivityCard.tsx","../../../../../src/components/BurndownChart.tsx","../../../../../src/components/CodexAccountsPanel.tsx","../../../../../src/components/Dashboard.tsx","../../../../../src/components/FileHotspots.tsx","../../../../../src/components/ProjectLeaderboard.tsx","../../../../../src/components/SessionsTable.tsx","../../../../../src/components/SpendingCard.tsx","../../../../../src/components/ToolSplitCard.tsx","../../../../../src/lib/codex-auth.ts","../../../../../src/lib/collectors/codex-importer.ts","../../../../../src/lib/collectors/cursor-importer.ts","../../../../../src/lib/collectors/session-importer.ts","../../../../../src/lib/data-dir.ts","../../../../../src/lib/db-bootstrap.ts","../../../../../src/lib/db.ts","../../../../../src/lib/parsers/codex-ratelimit.ts","../../../../../src/lib/parsers/session-log.ts","../../../../../src/lib/parsers/statusline-json.ts","../../../../../src/lib/schema.ts","../../../../../src/lib/session-refresh.ts","../../../../../src/lib/stats.ts","../../../../../src/lib/usage-snapshots.ts","../../../../../tests/codex-auth.test.ts","../../../../../tests/codex-ratelimit.test.ts","../../../../../tests/db-migration.test.ts","../../../../../tests/session-refresh.test.ts","../../../../../tests/usage-accounts.test.ts","../../../../../tools/menubar/Vibemeter.app/Contents/Info.plist","../../../../../tools/menubar/Vibemeter.app/Contents/MacOS/Vibemeter","../../../../../tools/menubar/Vibemeter.swift","../../../../../tools/menubar/build.sh","../../../../../tsconfig.json","../../../../../tsconfig.tsbuildinfo","../../../../node_modules/better-sqlite3-90e2652d1716b047","../../../chunks/[root-of-the-server]__0j8-xkl._.js","../../../chunks/[root-of-the-server]__0ub_1u.._.js","../../../chunks/[turbopack]_runtime.js","../../../chunks/_next-internal_server_app_api_usage_route_actions_0rd63ni.js","./route_client-reference-manifest.js"]}
@@ -0,0 +1,3 @@
1
+ globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
2
+ globalThis.__RSC_MANIFEST["/api/usage/route"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"rscModuleMapping":{},"edgeRscModuleMapping":{},"entryCSSFiles":{},"entryJSFiles":{}};
3
+
@@ -0,0 +1,3 @@
1
+ {
2
+ "/favicon.ico/route": "app/favicon.ico/route.js"
3
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "devFiles": [],
3
+ "ampDevFiles": [],
4
+ "polyfillFiles": [],
5
+ "lowPriorityFiles": [],
6
+ "rootMainFiles": [],
7
+ "pages": {},
8
+ "ampFirstPages": []
9
+ }
@@ -0,0 +1,7 @@
1
+ var R=require("../../chunks/[turbopack]_runtime.js")("server/app/favicon.ico/route.js")
2
+ R.c("server/chunks/[externals]_next_dist_0arv.vj._.js")
3
+ R.c("server/chunks/[root-of-the-server]__0j8-xkl._.js")
4
+ R.c("server/chunks/node_modules_next_dist_esm_build_templates_app-route_0m.429v.js")
5
+ R.c("server/chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js")
6
+ R.m(27413)
7
+ module.exports=R.m(27413).exports
@@ -0,0 +1,5 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sections": []
5
+ }
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../../../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/next-server/app-route-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","../../chunks/[externals]_next_dist_0arv.vj._.js","../../chunks/[root-of-the-server]__0j8-xkl._.js","../../chunks/[turbopack]_runtime.js","../../chunks/_next-internal_server_app_favicon_ico_route_actions_095lj93.js","../../chunks/node_modules_next_dist_esm_build_templates_app-route_0m.429v.js"]}
@@ -0,0 +1 @@
1
+ {"status":200,"headers":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"_N_T_/layout,_N_T_/favicon.ico/layout,_N_T_/favicon.ico/route,_N_T_/favicon.ico"}}
@@ -0,0 +1,3 @@
1
+ {
2
+ "/page": "app/page.js"
3
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "devFiles": [],
3
+ "ampDevFiles": [],
4
+ "polyfillFiles": [
5
+ "static/chunks/03~yq9q893hmn.js"
6
+ ],
7
+ "lowPriorityFiles": [],
8
+ "rootMainFiles": [
9
+ "static/chunks/00gq-v0e07i1q.js",
10
+ "static/chunks/0pqt~8bl3ukh4.js",
11
+ "static/chunks/02g3221oh~3le.js",
12
+ "static/chunks/07lhk_q6pmm3r.js",
13
+ "static/chunks/turbopack-14vio.b1b9i4l.js"
14
+ ],
15
+ "pages": {},
16
+ "ampFirstPages": []
17
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "pages": {},
3
+ "app": {
4
+ "[project]/src/app/page": [
5
+ "static/media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2",
6
+ "static/media/797e433ab948586e-s.p.09zddjkbdep5a.woff2"
7
+ ]
8
+ },
9
+ "appUsingSizeAdjust": true,
10
+ "pagesUsingSizeAdjust": false
11
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "node": {},
3
+ "edge": {}
4
+ }
@@ -0,0 +1,14 @@
1
+ var R=require("../chunks/ssr/[turbopack]_runtime.js")("server/app/page.js")
2
+ R.c("server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js")
3
+ R.c("server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js")
4
+ R.c("server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_07vh7rm.js")
5
+ R.c("server/chunks/ssr/[root-of-the-server]__0l.drdn._.js")
6
+ R.c("server/chunks/ssr/[root-of-the-server]__098zro9._.js")
7
+ R.c("server/chunks/ssr/[root-of-the-server]__0v73tbn._.js")
8
+ R.c("server/chunks/ssr/node_modules_next_dist_client_components_0inhx6q._.js")
9
+ R.c("server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0ghu-f7.js")
10
+ R.c("server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0cjv-23.js")
11
+ R.c("server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0lgvd_..js")
12
+ R.c("server/chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js")
13
+ R.m(99726)
14
+ module.exports=R.m(99726).exports
@@ -0,0 +1,5 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sections": []
5
+ }
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../../.data/continuity.sqlite","../../../.data/continuity.sqlite-shm","../../../.data/continuity.sqlite-wal","../../../.data/probe-usage.txt","../../../.data/sessions.db","../../../.data/statusline-latest.json","../../../AGENTS.md","../../../CLAUDE.md","../../../LICENSE","../../../README.md","../../../bin/vibemeter.mjs","../../../docs/demo1.png","../../../eslint.config.mjs","../../../next.config.mjs","../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../node_modules/@swc/helpers/package.json","../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../node_modules/better-sqlite3/lib/database.js","../../../node_modules/better-sqlite3/lib/index.js","../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../node_modules/better-sqlite3/lib/methods/function.js","../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../node_modules/better-sqlite3/lib/methods/table.js","../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../node_modules/better-sqlite3/lib/util.js","../../../node_modules/better-sqlite3/package.json","../../../node_modules/bindings/bindings.js","../../../node_modules/bindings/package.json","../../../node_modules/file-uri-to-path/index.js","../../../node_modules/file-uri-to-path/package.json","../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../node_modules/next/dist/client/components/app-router-headers.js","../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../node_modules/next/dist/client/lib/console.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../node_modules/next/dist/compiled/next-server/app-page-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","../../../package-lock.json","../../../package.json","../../../postcss.config.mjs","../../../public/file.svg","../../../public/globe.svg","../../../public/next.svg","../../../public/vercel.svg","../../../public/window.svg","../../../src/app/admin/page.tsx","../../../src/app/api/codex-accounts/route.ts","../../../src/app/api/import-sessions/route.ts","../../../src/app/api/sessions/[id]/tags/route.ts","../../../src/app/api/sessions/route.ts","../../../src/app/api/usage/route.ts","../../../src/app/favicon.ico","../../../src/app/globals.css","../../../src/app/layout.tsx","../../../src/app/page.tsx","../../../src/components/AchievementsCard.tsx","../../../src/components/ActivityCard.tsx","../../../src/components/BurndownChart.tsx","../../../src/components/CodexAccountsPanel.tsx","../../../src/components/Dashboard.tsx","../../../src/components/FileHotspots.tsx","../../../src/components/ProjectLeaderboard.tsx","../../../src/components/SessionsTable.tsx","../../../src/components/SpendingCard.tsx","../../../src/components/ToolSplitCard.tsx","../../../src/lib/codex-auth.ts","../../../src/lib/collectors/codex-importer.ts","../../../src/lib/collectors/cursor-importer.ts","../../../src/lib/collectors/session-importer.ts","../../../src/lib/data-dir.ts","../../../src/lib/db-bootstrap.ts","../../../src/lib/db.ts","../../../src/lib/parsers/codex-ratelimit.ts","../../../src/lib/parsers/session-log.ts","../../../src/lib/parsers/statusline-json.ts","../../../src/lib/schema.ts","../../../src/lib/session-refresh.ts","../../../src/lib/stats.ts","../../../src/lib/usage-snapshots.ts","../../../tests/codex-auth.test.ts","../../../tests/codex-ratelimit.test.ts","../../../tests/db-migration.test.ts","../../../tests/session-refresh.test.ts","../../../tests/usage-accounts.test.ts","../../../tools/menubar/Vibemeter.app/Contents/Info.plist","../../../tools/menubar/Vibemeter.app/Contents/MacOS/Vibemeter","../../../tools/menubar/Vibemeter.swift","../../../tools/menubar/build.sh","../../../tsconfig.json","../../../tsconfig.tsbuildinfo","../../node_modules/better-sqlite3-90e2652d1716b047","../chunks/ssr/[root-of-the-server]__098zro9._.js","../chunks/ssr/[root-of-the-server]__09hgk-7._.js","../chunks/ssr/[root-of-the-server]__0l.drdn._.js","../chunks/ssr/[root-of-the-server]__0v1zqf~._.js","../chunks/ssr/[root-of-the-server]__0v73tbn._.js","../chunks/ssr/[turbopack]_runtime.js","../chunks/ssr/_0ye~8el._.js","../chunks/ssr/_next-internal_server_app_page_actions_09-gtaw.js","../chunks/ssr/node_modules_09w7yel._.js","../chunks/ssr/node_modules_0ck2~9g._.js","../chunks/ssr/node_modules_next_dist_0e1izl_._.js","../chunks/ssr/node_modules_next_dist_0gsjr7_._.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_07vh7rm.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["/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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.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/01xlw8hd842-c.js","/_next/static/chunks/0d3shmwh5_nmn.js"],"async":false},"[project]/src/components/Dashboard.tsx <module evaluation>":{"id":58116,"name":"*","chunks":["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/05t54y~yfn5og.js"],"async":false},"[project]/src/components/Dashboard.tsx":{"id":58116,"name":"*","chunks":["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/05t54y~yfn5og.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js <module evaluation>":{"id":22016,"name":"*","chunks":["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/05t54y~yfn5og.js"],"async":false},"[project]/node_modules/next/dist/client/app-dir/link.js":{"id":22016,"name":"*","chunks":["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0d3shmwh5_nmn.js","/_next/static/chunks/05t54y~yfn5og.js"],"async":false}},"ssrModuleMapping":{"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js"],"async":false}},"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js","server/chunks/ssr/node_modules_09w7yel._.js"],"async":false}},"58116":{"*":{"id":39579,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js","server/chunks/ssr/_0ye~8el._.js","server/chunks/ssr/node_modules_0ck2~9g._.js"],"async":false}},"22016":{"*":{"id":38246,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__09hgk-7._.js","server/chunks/ssr/node_modules_next_dist_0e1izl_._.js","server/chunks/ssr/_0ye~8el._.js","server/chunks/ssr/node_modules_0ck2~9g._.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}},"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"58116":{"*":{"id":92848,"name":"*","chunks":[],"async":false}},"22016":{"*":{"id":84707,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/layout":[{"path":"static/chunks/002~6040mndie.css","inlined":false}],"[project]/node_modules/next/dist/client/components/builtin/global-error":[{"path":"static/chunks/002~6040mndie.css","inlined":false}],"[project]/src/app/page":[{"path":"static/chunks/002~6040mndie.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/layout":["static/chunks/01xlw8hd842-c.js","static/chunks/0d3shmwh5_nmn.js"],"[project]/node_modules/next/dist/client/components/builtin/global-error":["static/chunks/01xlw8hd842-c.js","static/chunks/0d3shmwh5_nmn.js"],"[project]/src/app/page":["static/chunks/01xlw8hd842-c.js","static/chunks/0d3shmwh5_nmn.js","static/chunks/05t54y~yfn5og.js"]}};
3
+
@@ -0,0 +1,12 @@
1
+ {
2
+ "/_global-error/page": "app/_global-error/page.js",
3
+ "/_not-found/page": "app/_not-found/page.js",
4
+ "/admin/page": "app/admin/page.js",
5
+ "/api/codex-accounts/route": "app/api/codex-accounts/route.js",
6
+ "/api/import-sessions/route": "app/api/import-sessions/route.js",
7
+ "/api/sessions/[id]/tags/route": "app/api/sessions/[id]/tags/route.js",
8
+ "/api/sessions/route": "app/api/sessions/route.js",
9
+ "/api/usage/route": "app/api/usage/route.js",
10
+ "/favicon.ico/route": "app/favicon.ico/route.js",
11
+ "/page": "app/page.js"
12
+ }
@@ -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"))}];
2
+
3
+ //# sourceMappingURL=%5Bexternals%5D_next_dist_0arv.vj._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +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)}
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
+
4
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0-74syk._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/lib/codex-auth.ts","../../../node_modules/next/dist/esm/build/templates/app-route.js","../../../src/app/api/codex-accounts/route.ts"],"sourcesContent":["import { mkdir, readFile, rename, readdir, stat, unlink, writeFile } from 'node:fs/promises';\nimport { readFileSync, statSync } from 'node:fs';\nimport { homedir } from 'node:os';\nimport path from 'node:path';\n\ninterface CodexAuthFile {\n auth_mode?: unknown;\n OPENAI_API_KEY?: unknown;\n tokens?: {\n id_token?: unknown;\n access_token?: unknown;\n refresh_token?: unknown;\n account_id?: unknown;\n };\n last_refresh?: unknown;\n}\n\nexport interface CodexAccountSummary {\n accountId: string;\n label: string;\n email: string | null;\n name: string | null;\n planType: string | null;\n userId: string | null;\n lastRefresh: string | null;\n idTokenExpiresAt: string | null;\n accessTokenExpiresAt: string | null;\n storedAt: string | null;\n isCurrent: boolean;\n}\n\nexport interface CodexAuthPaths {\n authPath?: string;\n storeDir?: string;\n}\n\nexport interface CurrentCodexAccount {\n accountId: string;\n authMtimeMs: number;\n}\n\nconst AUTH_CLAIMS_KEY = 'https://api.openai.com/auth';\n\nfunction defaultAuthPath() {\n return path.join(/* turbopackIgnore: true */ homedir(), '.codex', 'auth.json');\n}\n\nfunction defaultStoreDir() {\n return path.join(/* turbopackIgnore: true */ homedir(), '.codex', 'auth-accounts');\n}\n\nfunction resolvePaths(paths: CodexAuthPaths = {}) {\n return {\n authPath: paths.authPath ?? defaultAuthPath(),\n storeDir: paths.storeDir ?? defaultStoreDir(),\n };\n}\n\nfunction accountPath(accountId: string, storeDir: string) {\n return path.join(/* turbopackIgnore: true */ storeDir, `${accountId.replace(/[^a-zA-Z0-9_-]/g, '_')}.json`);\n}\n\nasync function readAuthFile(filePath: string): Promise<CodexAuthFile> {\n const raw = await readFile(filePath, 'utf8');\n const parsed = JSON.parse(raw) as CodexAuthFile;\n if (!parsed.tokens || typeof parsed.tokens.account_id !== 'string') {\n throw new Error('Codex auth file is missing tokens.account_id');\n }\n return parsed;\n}\n\nasync function writeJsonAtomic(filePath: string, data: unknown) {\n await mkdir(path.dirname(filePath), { recursive: true });\n const tmp = `${filePath}.${process.pid}.${Date.now()}.tmp`;\n await writeFile(tmp, `${JSON.stringify(data, null, 2)}\\n`, { encoding: 'utf8', mode: 0o600 });\n await rename(tmp, filePath);\n}\n\nfunction decodeJwtPayload(token: unknown): Record<string, unknown> | null {\n if (typeof token !== 'string') return null;\n const [, payload] = token.split('.');\n if (!payload) return null;\n\n try {\n return JSON.parse(Buffer.from(payload, 'base64url').toString('utf8')) as Record<string, unknown>;\n } catch {\n return null;\n }\n}\n\nfunction stringClaim(value: unknown): string | null {\n return typeof value === 'string' && value.length > 0 ? value : null;\n}\n\nfunction expiryClaim(value: unknown): string | null {\n return typeof value === 'number' ? new Date(value * 1000).toISOString() : null;\n}\n\nfunction summarizeAuth(auth: CodexAuthFile, storedAt: string | null, currentAccountId: string | null): CodexAccountSummary {\n const accountId = stringClaim(auth.tokens?.account_id);\n if (!accountId) throw new Error('Codex auth file is missing tokens.account_id');\n\n const idPayload = decodeJwtPayload(auth.tokens?.id_token);\n const accessPayload = decodeJwtPayload(auth.tokens?.access_token);\n const idAuthClaims = idPayload?.[AUTH_CLAIMS_KEY] as Record<string, unknown> | undefined;\n const accessAuthClaims = accessPayload?.[AUTH_CLAIMS_KEY] as Record<string, unknown> | undefined;\n\n const email = stringClaim(idPayload?.email);\n const name = stringClaim(idPayload?.name);\n const planType = stringClaim(idAuthClaims?.chatgpt_plan_type) ?? stringClaim(accessAuthClaims?.chatgpt_plan_type);\n const userId = stringClaim(idAuthClaims?.user_id) ?? stringClaim(accessAuthClaims?.user_id);\n const label = email ?? name ?? `${accountId.slice(0, 8)}...${accountId.slice(-4)}`;\n\n return {\n accountId,\n label,\n email,\n name,\n planType,\n userId,\n lastRefresh: stringClaim(auth.last_refresh),\n idTokenExpiresAt: expiryClaim(idPayload?.exp),\n accessTokenExpiresAt: expiryClaim(accessPayload?.exp),\n storedAt,\n isCurrent: accountId === currentAccountId,\n };\n}\n\nexport async function getCodexAccounts(paths: CodexAuthPaths = {}): Promise<CodexAccountSummary[]> {\n const { authPath, storeDir } = resolvePaths(paths);\n let currentAccountId: string | null = null;\n let currentAuth: CodexAuthFile | null = null;\n\n try {\n currentAuth = await readAuthFile(authPath);\n currentAccountId = stringClaim(currentAuth.tokens?.account_id);\n } catch {\n currentAuth = null;\n }\n\n const accounts = new Map<string, CodexAccountSummary>();\n\n try {\n const entries = await readdir(storeDir);\n for (const entry of entries) {\n if (!entry.endsWith('.json')) continue;\n const filePath = path.join(storeDir, entry);\n try {\n const storedAuth = await readAuthFile(filePath);\n const storedStat = await stat(filePath);\n const summary = summarizeAuth(storedAuth, storedStat.mtime.toISOString(), currentAccountId);\n accounts.set(summary.accountId, summary);\n } catch {\n // Ignore malformed account snapshots so one bad file does not break the admin page.\n }\n }\n } catch {\n // Missing store just means no saved accounts yet.\n }\n\n if (currentAuth && currentAccountId && !accounts.has(currentAccountId)) {\n accounts.set(currentAccountId, summarizeAuth(currentAuth, null, currentAccountId));\n }\n\n return [...accounts.values()].sort((a, b) => {\n if (a.isCurrent !== b.isCurrent) return a.isCurrent ? -1 : 1;\n return a.label.localeCompare(b.label);\n });\n}\n\nexport function getCurrentCodexAccount(paths: CodexAuthPaths = {}): CurrentCodexAccount | null {\n const { authPath } = resolvePaths(paths);\n try {\n const auth = JSON.parse(readFileSync(authPath, 'utf8')) as CodexAuthFile;\n const accountId = stringClaim(auth.tokens?.account_id);\n if (!accountId) return null;\n return {\n accountId,\n authMtimeMs: statSync(authPath).mtimeMs,\n };\n } catch {\n return null;\n }\n}\n\nexport async function importCurrentCodexAuth(paths: CodexAuthPaths = {}): Promise<CodexAccountSummary> {\n const { authPath, storeDir } = resolvePaths(paths);\n const auth = await readAuthFile(authPath);\n const accountId = auth.tokens?.account_id as string;\n const destination = accountPath(accountId, storeDir);\n await writeJsonAtomic(destination, auth);\n const storedStat = await stat(destination);\n return summarizeAuth(auth, storedStat.mtime.toISOString(), accountId);\n}\n\nexport async function switchCodexAccount(accountId: string, paths: CodexAuthPaths = {}) {\n const { authPath, storeDir } = resolvePaths(paths);\n const source = accountPath(accountId, storeDir);\n const auth = await readAuthFile(source);\n const sourceAccountId = auth.tokens?.account_id;\n if (sourceAccountId !== accountId) {\n throw new Error('Stored account id does not match requested account');\n }\n\n let backupPath: string | null = null;\n try {\n const current = await readFile(authPath, 'utf8');\n backupPath = `${authPath}.${new Date().toISOString().replace(/[:.]/g, '-')}.bak`;\n await writeFile(backupPath, current, { encoding: 'utf8', mode: 0o600 });\n } catch {\n backupPath = null;\n }\n\n await writeJsonAtomic(authPath, auth);\n return {\n ...summarizeAuth(auth, null, accountId),\n backupPath,\n };\n}\n\nexport async function deleteCodexAccount(accountId: string, paths: CodexAuthPaths = {}) {\n const { authPath, storeDir } = resolvePaths(paths);\n const auth = await readAuthFile(authPath).catch(() => null);\n if (auth?.tokens?.account_id === accountId) {\n throw new Error('Cannot delete the currently active Codex account');\n }\n await unlink(accountPath(accountId, storeDir));\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/codex-accounts/route\",\n pathname: \"/api/codex-accounts\",\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/codex-accounts/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/codex-accounts/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","import { NextResponse } from 'next/server';\nimport {\n deleteCodexAccount,\n getCodexAccounts,\n importCurrentCodexAuth,\n switchCodexAccount,\n} from '@/lib/codex-auth';\n\nexport const runtime = 'nodejs';\nexport const dynamic = 'force-dynamic';\n\nfunction errorResponse(error: unknown, status = 400) {\n return NextResponse.json(\n { error: error instanceof Error ? error.message : 'Codex account operation failed' },\n { status },\n );\n}\n\nexport async function GET() {\n try {\n return NextResponse.json({ accounts: await getCodexAccounts() });\n } catch (error) {\n return errorResponse(error, 500);\n }\n}\n\nexport async function POST(request: Request) {\n try {\n const body = await request.json().catch(() => ({})) as { action?: string; accountId?: string };\n\n if (body.action === 'import-current') {\n const account = await importCurrentCodexAuth();\n return NextResponse.json({ account, accounts: await getCodexAccounts() });\n }\n\n if (body.action === 'switch') {\n if (!body.accountId) return errorResponse(new Error('Missing accountId'));\n const account = await switchCodexAccount(body.accountId);\n return NextResponse.json({ account, accounts: await getCodexAccounts() });\n }\n\n if (body.action === 'delete') {\n if (!body.accountId) return errorResponse(new Error('Missing accountId'));\n await deleteCodexAccount(body.accountId);\n return NextResponse.json({ accounts: await getCodexAccounts() });\n }\n\n return errorResponse(new Error('Unsupported action'));\n } catch (error) {\n return errorResponse(error);\n }\n}\n"],"names":["AUTH_CLAIMS_KEY","defaultAuthPath","join","defaultStoreDir","resolvePaths","paths","authPath","storeDir","accountPath","accountId","replace","readAuthFile","filePath","raw","parsed","JSON","parse","tokens","account_id","Error","writeJsonAtomic","data","dirname","recursive","tmp","process","pid","Date","now","stringify","encoding","mode","decodeJwtPayload","token","payload","split","Buffer","from","toString","stringClaim","value","length","expiryClaim","toISOString","summarizeAuth","auth","storedAt","currentAccountId","idPayload","id_token","accessPayload","access_token","idAuthClaims","accessAuthClaims","email","name","planType","chatgpt_plan_type","userId","user_id","label","slice","lastRefresh","last_refresh","idTokenExpiresAt","exp","accessTokenExpiresAt","isCurrent","getCodexAccounts","currentAuth","accounts","Map","entries","entry","endsWith","storedAuth","storedStat","summary","mtime","set","has","values","sort","a","b","localeCompare","getCurrentCodexAccount","authMtimeMs","mtimeMs","importCurrentCodexAuth","destination","switchCodexAccount","source","sourceAccountId","backupPath","current","deleteCodexAccount","catch","runtime","dynamic","errorResponse","error","status","json","message","GET","POST","request","body","action","account"],"mappings":"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","ignoreList":[1]}
@@ -0,0 +1,41 @@
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(`
2
+ CREATE TABLE IF NOT EXISTS sessions (
3
+ id TEXT PRIMARY KEY,
4
+ tool TEXT NOT NULL,
5
+ started_at INTEGER NOT NULL,
6
+ ended_at INTEGER,
7
+ exit_code INTEGER,
8
+ cwd TEXT,
9
+ cli_args TEXT,
10
+ summary TEXT,
11
+ confidence TEXT NOT NULL DEFAULT 'medium'
12
+ );
13
+
14
+ CREATE TABLE IF NOT EXISTS usage_snapshots (
15
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
16
+ captured_at INTEGER NOT NULL,
17
+ source TEXT NOT NULL,
18
+ account_id TEXT,
19
+ window_5h_used_pct REAL,
20
+ window_weekly_used_pct REAL,
21
+ reset_at_5h INTEGER,
22
+ reset_at_weekly INTEGER,
23
+ raw_output TEXT,
24
+ confidence TEXT NOT NULL
25
+ );
26
+
27
+ CREATE TABLE IF NOT EXISTS file_changes (
28
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
29
+ session_id TEXT NOT NULL,
30
+ path TEXT NOT NULL,
31
+ change_type TEXT NOT NULL,
32
+ detected_at INTEGER NOT NULL,
33
+ FOREIGN KEY (session_id) REFERENCES sessions(id)
34
+ );
35
+ `),(i=(t,r,a)=>{try{e.exec(`ALTER TABLE ${t} ADD COLUMN ${r} ${a}`)}catch{}})("sessions","ai_title","TEXT"),i("sessions","tags",'TEXT DEFAULT "[]"'),i("sessions","codex_category","TEXT"),i("sessions","tokens_used","INTEGER"),i("usage_snapshots","account_id","TEXT"),e.exec(`
36
+ CREATE INDEX IF NOT EXISTS idx_sessions_started ON sessions(started_at DESC);
37
+ CREATE INDEX IF NOT EXISTS idx_usage_captured ON usage_snapshots(captured_at DESC);
38
+ CREATE INDEX IF NOT EXISTS idx_usage_source_account_captured ON usage_snapshots(source, account_id, captured_at DESC);
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
+
41
+ //# sourceMappingURL=%5Broot-of-the-server%5D__00q0o~z._.js.map