@hirra/vibemeter 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +7 -1
  3. package/.next/build-manifest.json +7 -8
  4. package/.next/fallback-build-manifest.json +3 -3
  5. package/.next/prerender-manifest.json +16 -12
  6. package/.next/required-server-files.js +5 -4
  7. package/.next/required-server-files.json +5 -4
  8. package/.next/routes-manifest.json +36 -0
  9. package/.next/server/app/_global-error/page/build-manifest.json +4 -5
  10. package/.next/server/app/_global-error/page.js +4 -4
  11. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  12. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_global-error.html +1 -1
  14. package/.next/server/app/_global-error.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  18. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  19. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  20. package/.next/server/app/_not-found/page/build-manifest.json +4 -5
  21. package/.next/server/app/_not-found/page.js +5 -4
  22. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  23. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  24. package/.next/server/app/admin/page/build-manifest.json +4 -5
  25. package/.next/server/app/admin/page.js +7 -5
  26. package/.next/server/app/admin/page.js.nft.json +1 -1
  27. package/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/codex-accounts/route.js +1 -1
  29. package/.next/server/app/api/codex-accounts/route.js.nft.json +1 -1
  30. package/.next/server/app/api/float/route/app-paths-manifest.json +3 -0
  31. package/.next/server/app/api/float/route/build-manifest.json +9 -0
  32. package/.next/server/app/api/float/route/server-reference-manifest.json +4 -0
  33. package/.next/server/app/api/float/route.js +8 -0
  34. package/.next/server/app/api/float/route.js.map +5 -0
  35. package/.next/server/app/api/float/route.js.nft.json +1 -0
  36. package/.next/server/app/api/float/route_client-reference-manifest.js +3 -0
  37. package/.next/server/app/api/import-sessions/route.js.nft.json +1 -1
  38. package/.next/server/app/api/sessions/[id]/tags/route.js +1 -1
  39. package/.next/server/app/api/sessions/[id]/tags/route.js.nft.json +1 -1
  40. package/.next/server/app/api/sessions/route.js +1 -1
  41. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  42. package/.next/server/app/api/settings/alerts/route/app-paths-manifest.json +3 -0
  43. package/.next/server/app/api/settings/alerts/route/build-manifest.json +9 -0
  44. package/.next/server/app/api/settings/alerts/route/server-reference-manifest.json +4 -0
  45. package/.next/server/app/api/settings/alerts/route.js +9 -0
  46. package/.next/server/app/api/settings/alerts/route.js.map +5 -0
  47. package/.next/server/app/api/settings/alerts/route.js.nft.json +1 -0
  48. package/.next/server/app/api/settings/alerts/route_client-reference-manifest.js +3 -0
  49. package/.next/server/app/api/settings/notify/route/app-paths-manifest.json +3 -0
  50. package/.next/server/app/api/settings/notify/route/build-manifest.json +9 -0
  51. package/.next/server/app/api/settings/notify/route/server-reference-manifest.json +4 -0
  52. package/.next/server/app/api/settings/notify/route.js +7 -0
  53. package/.next/server/app/api/settings/notify/route.js.map +5 -0
  54. package/.next/server/app/api/settings/notify/route.js.nft.json +1 -0
  55. package/.next/server/app/api/settings/notify/route_client-reference-manifest.js +3 -0
  56. package/.next/server/app/api/usage/route.js +1 -1
  57. package/.next/server/app/api/usage/route.js.nft.json +1 -1
  58. package/.next/server/app/float/page/app-paths-manifest.json +3 -0
  59. package/.next/server/app/float/page/build-manifest.json +16 -0
  60. package/.next/server/app/float/page/next-font-manifest.json +11 -0
  61. package/.next/server/app/float/page/react-loadable-manifest.json +1 -0
  62. package/.next/server/app/float/page/server-reference-manifest.json +4 -0
  63. package/.next/server/app/float/page.js +15 -0
  64. package/.next/server/app/float/page.js.map +5 -0
  65. package/.next/server/app/float/page.js.nft.json +1 -0
  66. package/.next/server/app/float/page_client-reference-manifest.js +3 -0
  67. package/.next/server/app/install.sh/route/app-paths-manifest.json +3 -0
  68. package/.next/server/app/install.sh/route/build-manifest.json +9 -0
  69. package/.next/server/app/install.sh/route/server-reference-manifest.json +4 -0
  70. package/.next/server/app/install.sh/route.js +6 -0
  71. package/.next/server/app/install.sh/route.js.map +5 -0
  72. package/.next/server/app/install.sh/route.js.nft.json +1 -0
  73. package/.next/server/app/install.sh/route_client-reference-manifest.js +3 -0
  74. package/.next/server/app/install.sh.body +108 -0
  75. package/.next/server/app/install.sh.meta +1 -0
  76. package/.next/server/app/page/build-manifest.json +4 -5
  77. package/.next/server/app/page.js +8 -5
  78. package/.next/server/app/page.js.nft.json +1 -1
  79. package/.next/server/app/page_client-reference-manifest.js +1 -1
  80. package/.next/server/app/settings/page/app-paths-manifest.json +3 -0
  81. package/.next/server/app/settings/page/build-manifest.json +16 -0
  82. package/.next/server/app/settings/page/next-font-manifest.json +11 -0
  83. package/.next/server/app/settings/page/react-loadable-manifest.json +1 -0
  84. package/.next/server/app/settings/page/server-reference-manifest.json +4 -0
  85. package/.next/server/app/settings/page.js +17 -0
  86. package/.next/server/app/settings/page.js.map +5 -0
  87. package/.next/server/app/settings/page.js.nft.json +1 -0
  88. package/.next/server/app/settings/page_client-reference-manifest.js +3 -0
  89. package/.next/server/app-paths-manifest.json +7 -1
  90. package/.next/server/chunks/[externals]__0_i~3ox._.js +3 -0
  91. package/.next/server/chunks/[externals]__0_i~3ox._.js.map +1 -0
  92. package/.next/server/chunks/[externals]__13p_1zh._.js +3 -0
  93. package/.next/server/chunks/[externals]__13p_1zh._.js.map +1 -0
  94. package/.next/server/chunks/[root-of-the-server]__01t2c3w._.js +38 -0
  95. package/.next/server/chunks/[root-of-the-server]__01t2c3w._.js.map +1 -0
  96. package/.next/server/chunks/{[root-of-the-server]__0g0u0lm._.js → [root-of-the-server]__024yzee._.js} +2 -2
  97. package/.next/server/chunks/{[root-of-the-server]__00q0o~z._.js → [root-of-the-server]__082iwfa._.js} +2 -2
  98. package/.next/server/chunks/[root-of-the-server]__0chedn~._.js +1 -1
  99. package/.next/server/chunks/[root-of-the-server]__0mwf0bn._.js +38 -0
  100. package/.next/server/chunks/[root-of-the-server]__0mwf0bn._.js.map +1 -0
  101. package/.next/server/chunks/{[root-of-the-server]__0-74syk._.js → [root-of-the-server]__0ru3_it._.js} +2 -2
  102. package/.next/server/chunks/[root-of-the-server]__0u6y_k1._.js +111 -0
  103. package/.next/server/chunks/[root-of-the-server]__0u6y_k1._.js.map +1 -0
  104. package/.next/server/chunks/{[root-of-the-server]__0866q87._.js → [root-of-the-server]__0xa4dzi._.js} +2 -2
  105. package/.next/server/chunks/[root-of-the-server]__13415c6._.js +96 -0
  106. package/.next/server/chunks/[root-of-the-server]__13415c6._.js.map +1 -0
  107. package/.next/server/chunks/[root-of-the-server]__13j_28o._.js +96 -0
  108. package/.next/server/chunks/[root-of-the-server]__13j_28o._.js.map +1 -0
  109. package/.next/server/chunks/_next-internal_server_app_api_float_route_actions_012j~jr.js +3 -0
  110. package/.next/server/chunks/_next-internal_server_app_api_float_route_actions_012j~jr.js.map +1 -0
  111. package/.next/server/chunks/_next-internal_server_app_api_settings_alerts_route_actions_0ydcyko.js +3 -0
  112. package/.next/server/chunks/_next-internal_server_app_api_settings_alerts_route_actions_0ydcyko.js.map +1 -0
  113. package/.next/server/chunks/_next-internal_server_app_api_settings_notify_route_actions_0-j35mb.js +3 -0
  114. package/.next/server/chunks/_next-internal_server_app_api_settings_notify_route_actions_0-j35mb.js.map +1 -0
  115. package/.next/server/chunks/_next-internal_server_app_install_sh_route_actions_0cj-6me.js +3 -0
  116. package/.next/server/chunks/_next-internal_server_app_install_sh_route_actions_0cj-6me.js.map +1 -0
  117. package/.next/server/chunks/node_modules_next_06f88ko._.js +19 -0
  118. package/.next/server/chunks/node_modules_next_06f88ko._.js.map +1 -0
  119. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_03jj5jj.js +18 -0
  120. package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_03jj5jj.js.map +1 -0
  121. package/.next/server/chunks/src_12i1qk5._.js +3 -0
  122. package/.next/server/chunks/src_12i1qk5._.js.map +1 -0
  123. package/.next/server/chunks/src_lib_alerts_ticker_ts_0n6oy1d._.js +169 -0
  124. package/.next/server/chunks/src_lib_alerts_ticker_ts_0n6oy1d._.js.map +1 -0
  125. package/.next/server/chunks/ssr/[root-of-the-server]__03mt8o0._.js +3 -0
  126. package/.next/server/chunks/ssr/[root-of-the-server]__03mt8o0._.js.map +1 -0
  127. package/.next/server/chunks/ssr/{[root-of-the-server]__098zro9._.js → [root-of-the-server]__090jxzh._.js} +2 -2
  128. package/.next/server/chunks/ssr/[root-of-the-server]__090jxzh._.js.map +1 -0
  129. package/.next/server/chunks/ssr/{[root-of-the-server]__09hgk-7._.js → [root-of-the-server]__0c3j40u._.js} +2 -2
  130. package/.next/server/chunks/ssr/[root-of-the-server]__0c3j40u._.js.map +1 -0
  131. package/.next/server/chunks/ssr/[root-of-the-server]__0ot4nev._.js +3 -0
  132. package/.next/server/chunks/ssr/[root-of-the-server]__0ot4nev._.js.map +1 -0
  133. package/.next/server/chunks/ssr/[root-of-the-server]__0q_~l2m._.js +90 -0
  134. package/.next/server/chunks/ssr/[root-of-the-server]__0q_~l2m._.js.map +1 -0
  135. package/.next/server/chunks/ssr/{[root-of-the-server]__0cqes87._.js → [root-of-the-server]__0qt26ty._.js} +2 -2
  136. package/.next/server/chunks/ssr/[root-of-the-server]__0qt26ty._.js.map +1 -0
  137. package/.next/server/chunks/ssr/[root-of-the-server]__0s5.uhg._.js +55 -0
  138. package/.next/server/chunks/ssr/[root-of-the-server]__0s5.uhg._.js.map +1 -0
  139. package/.next/server/chunks/ssr/[root-of-the-server]__0x~-phx._.js +3 -0
  140. package/.next/server/chunks/ssr/[root-of-the-server]__0x~-phx._.js.map +1 -0
  141. package/.next/server/chunks/ssr/[root-of-the-server]__0y_zq8k._.js +3 -0
  142. package/.next/server/chunks/ssr/[root-of-the-server]__0y_zq8k._.js.map +1 -0
  143. package/.next/server/chunks/ssr/{[root-of-the-server]__08qr2ji._.js → [root-of-the-server]__0~953ob._.js} +2 -2
  144. package/.next/server/chunks/ssr/[root-of-the-server]__0~953ob._.js.map +1 -0
  145. package/.next/server/chunks/ssr/_0-9j34y._.js +70 -0
  146. package/.next/server/chunks/ssr/_0-9j34y._.js.map +1 -0
  147. package/.next/server/chunks/ssr/_0jxmm9h._.js +6 -0
  148. package/.next/server/chunks/ssr/_0jxmm9h._.js.map +1 -0
  149. package/.next/server/chunks/ssr/_0lfe3wr._.js +3 -0
  150. package/.next/server/chunks/ssr/_0lfe3wr._.js.map +1 -0
  151. package/.next/server/chunks/ssr/{node_modules_0i2xw~e._.js → _0nvprxh._.js} +5 -2
  152. package/.next/server/chunks/ssr/_0nvprxh._.js.map +1 -0
  153. package/.next/server/chunks/ssr/_0pugb10._.js +6 -0
  154. package/.next/server/chunks/ssr/_0pugb10._.js.map +1 -0
  155. package/.next/server/chunks/ssr/_next-internal_server_app_float_page_actions_0x6hm4p.js +3 -0
  156. package/.next/server/chunks/ssr/_next-internal_server_app_float_page_actions_0x6hm4p.js.map +1 -0
  157. package/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_0mr68ai.js +3 -0
  158. package/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_0mr68ai.js.map +1 -0
  159. package/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js +3 -0
  160. package/.next/server/chunks/ssr/node_modules_@swc_helpers_cjs__interop_require_default_cjs_11~q6fv._.js.map +1 -0
  161. package/.next/server/chunks/ssr/node_modules_next_dist_09jzzl8._.js +3 -0
  162. package/.next/server/chunks/ssr/node_modules_next_dist_09jzzl8._.js.map +1 -0
  163. package/.next/server/chunks/ssr/{node_modules_next_dist_0e1izl_._.js → node_modules_next_dist_0h9llsw._.js} +2 -2
  164. package/.next/server/chunks/ssr/node_modules_next_dist_0h9llsw._.js.map +1 -0
  165. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06b_a87.js +4 -0
  166. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_06b_a87.js.map +1 -0
  167. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0p_u4px.js +4 -0
  168. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0p_u4px.js.map +1 -0
  169. package/.next/server/chunks/ssr/src_0urkups._.js +3 -0
  170. package/.next/server/chunks/ssr/src_0urkups._.js.map +1 -0
  171. package/.next/server/chunks/ssr/src_components_0ox9d~w._.js +3 -0
  172. package/.next/server/chunks/ssr/src_components_0ox9d~w._.js.map +1 -0
  173. package/.next/server/chunks/ssr/src_components_CodexAccountsPanel_tsx_0n9xjzi._.js +1 -1
  174. package/.next/server/chunks/ssr/src_components_CodexAccountsPanel_tsx_0n9xjzi._.js.map +1 -1
  175. package/.next/server/chunks/ssr/src_components_FloatingWidget_tsx_089.6oo._.js +3 -0
  176. package/.next/server/chunks/ssr/src_components_FloatingWidget_tsx_089.6oo._.js.map +1 -0
  177. package/.next/server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js +3 -0
  178. package/.next/server/chunks/ssr/src_lib_i18n_client_tsx_07pysgz._.js.map +1 -0
  179. package/.next/server/edge/chunks/_0-m5tdn._.js +3 -0
  180. package/.next/server/edge/chunks/_0-m5tdn._.js.map +1 -0
  181. package/.next/server/edge/chunks/node_modules_next_dist_esm_build_templates_edge-wrapper_0mz-5sp.js.map +1 -0
  182. package/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_0mz-5sp.js +3 -0
  183. package/.next/server/functions-config-manifest.json +4 -1
  184. package/.next/server/instrumentation/middleware-manifest.json +12 -0
  185. package/.next/server/instrumentation.js +4 -0
  186. package/.next/server/instrumentation.js.map +5 -0
  187. package/.next/server/instrumentation.js.nft.json +1 -0
  188. package/.next/server/middleware-build-manifest.js +7 -8
  189. package/.next/server/next-font-manifest.js +1 -1
  190. package/.next/server/next-font-manifest.json +8 -0
  191. package/.next/server/pages/500.html +1 -1
  192. package/.next/server/pages-manifest.json +0 -1
  193. package/.next/server/server-reference-manifest.js +1 -1
  194. package/.next/server/server-reference-manifest.json +1 -1
  195. package/.next/static/chunks/0bymg5d-lqs0o.js +5 -0
  196. package/.next/static/chunks/0ebdqsutnp8y4.js +1 -0
  197. package/.next/static/chunks/0i3~mnai-l497.js +1 -0
  198. package/.next/static/chunks/0idj4tdmyr934.js +1 -0
  199. package/.next/static/chunks/10eoi4q2wk80z.js +1 -0
  200. package/.next/static/chunks/10refkmyp9rbl.css +3 -0
  201. package/.next/static/chunks/{07lhk_q6pmm3r.js → 10u3y4bw1ayzs.js} +1 -1
  202. package/.next/static/chunks/{00gq-v0e07i1q.js → 115dplafwys-z.js} +1 -1
  203. package/.next/static/chunks/12-9memveha-v.js +1 -0
  204. package/.next/static/chunks/163s8y.j70104.js +4 -0
  205. package/.next/static/chunks/turbopack-0k9twle9a8sh6.js +1 -0
  206. package/.next/types/routes.d.ts +8 -2
  207. package/.next/types/validator.ts +54 -0
  208. package/README.md +57 -17
  209. package/bin/vibemeter-float.swift +970 -0
  210. package/bin/vibemeter-notify.sh +172 -0
  211. package/bin/vibemeter.mjs +385 -7
  212. package/package.json +2 -1
  213. package/public/demo1.png +0 -0
  214. package/public/float-ball.png +0 -0
  215. package/public/float-collapsed.png +0 -0
  216. package/public/float-expanded.png +0 -0
  217. package/public/pay-alipay.jpg +0 -0
  218. package/.next/server/app/_not-found.html +0 -1
  219. package/.next/server/app/_not-found.meta +0 -16
  220. package/.next/server/app/_not-found.rsc +0 -16
  221. package/.next/server/app/_not-found.segments/_full.segment.rsc +0 -16
  222. package/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
  223. package/.next/server/app/_not-found.segments/_index.segment.rsc +0 -5
  224. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +0 -5
  225. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
  226. package/.next/server/app/_not-found.segments/_tree.segment.rsc +0 -2
  227. package/.next/server/chunks/[root-of-the-server]__0y68a5d._.js +0 -96
  228. package/.next/server/chunks/[root-of-the-server]__0y68a5d._.js.map +0 -1
  229. package/.next/server/chunks/ssr/[root-of-the-server]__054lv8d._.js +0 -3
  230. package/.next/server/chunks/ssr/[root-of-the-server]__054lv8d._.js.map +0 -1
  231. package/.next/server/chunks/ssr/[root-of-the-server]__08qr2ji._.js.map +0 -1
  232. package/.next/server/chunks/ssr/[root-of-the-server]__098zro9._.js.map +0 -1
  233. package/.next/server/chunks/ssr/[root-of-the-server]__09hgk-7._.js.map +0 -1
  234. package/.next/server/chunks/ssr/[root-of-the-server]__0cqes87._.js.map +0 -1
  235. package/.next/server/chunks/ssr/[root-of-the-server]__0l.drdn._.js +0 -3
  236. package/.next/server/chunks/ssr/[root-of-the-server]__0l.drdn._.js.map +0 -1
  237. package/.next/server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js +0 -120
  238. package/.next/server/chunks/ssr/[root-of-the-server]__0v1zqf~._.js.map +0 -1
  239. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js +0 -3
  240. package/.next/server/chunks/ssr/[root-of-the-server]__0v73tbn._.js.map +0 -1
  241. package/.next/server/chunks/ssr/_0ye~8el._.js +0 -7
  242. package/.next/server/chunks/ssr/_0ye~8el._.js.map +0 -1
  243. package/.next/server/chunks/ssr/node_modules_0ck2~9g._.js +0 -3
  244. package/.next/server/chunks/ssr/node_modules_0ck2~9g._.js.map +0 -1
  245. package/.next/server/chunks/ssr/node_modules_0i2xw~e._.js.map +0 -1
  246. package/.next/server/chunks/ssr/node_modules_next_dist_0e1izl_._.js.map +0 -1
  247. package/.next/server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js +0 -3
  248. package/.next/server/chunks/ssr/node_modules_next_dist_0gsjr7_._.js.map +0 -1
  249. package/.next/server/pages/404.html +0 -1
  250. package/.next/static/chunks/002~6040mndie.css +0 -3
  251. package/.next/static/chunks/02g3221oh~3le.js +0 -2
  252. package/.next/static/chunks/0ljfidstam_7k.js +0 -1
  253. package/.next/static/chunks/0pqt~8bl3ukh4.js +0 -4
  254. package/.next/static/chunks/0yz9oprcns4nm.js +0 -2
  255. package/.next/static/chunks/turbopack-14vio.b1b9i4l.js +0 -1
  256. /package/.next/server/chunks/{[root-of-the-server]__0g0u0lm._.js.map → [root-of-the-server]__024yzee._.js.map} +0 -0
  257. /package/.next/server/chunks/{[root-of-the-server]__00q0o~z._.js.map → [root-of-the-server]__082iwfa._.js.map} +0 -0
  258. /package/.next/server/chunks/{[root-of-the-server]__0-74syk._.js.map → [root-of-the-server]__0ru3_it._.js.map} +0 -0
  259. /package/.next/server/chunks/{[root-of-the-server]__0866q87._.js.map → [root-of-the-server]__0xa4dzi._.js.map} +0 -0
  260. /package/.next/static/{DcqlVrgh4gM8jlqrnOCpT → _Y03MiN6NI16Ms86q6vCJ}/_buildManifest.js +0 -0
  261. /package/.next/static/{DcqlVrgh4gM8jlqrnOCpT → _Y03MiN6NI16Ms86q6vCJ}/_clientMiddlewareManifest.js +0 -0
  262. /package/.next/static/{DcqlVrgh4gM8jlqrnOCpT → _Y03MiN6NI16Ms86q6vCJ}/_ssgManifest.js +0 -0
@@ -0,0 +1,6 @@
1
+ module.exports=[39579,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(50944),f=a.i(42553);let g=["blocked","poc","spike","review","done"];function h(a){return a?a.split("/").filter(Boolean).pop()??a:"—"}function i({tool:a}){return"codex"===a?(0,b.jsx)("span",{className:"text-xs px-1.5 py-0.5 rounded bg-emerald-900/40 text-emerald-400 border border-emerald-800/50",children:"codex"}):"cursor"===a?(0,b.jsx)("span",{className:"text-xs px-1.5 py-0.5 rounded bg-sky-900/40 text-sky-400 border border-sky-800/50",children:"cursor"}):(0,b.jsx)("span",{className:"text-xs px-1.5 py-0.5 rounded bg-violet-900/40 text-violet-400 border border-violet-800/50",children:"claude"})}function j({label:a,onRemove:c}){let d={blocked:"bg-red-900/40 text-red-400 border-red-800/50",poc:"bg-yellow-900/40 text-yellow-400 border-yellow-800/50",spike:"bg-orange-900/40 text-orange-400 border-orange-800/50",review:"bg-blue-900/40 text-blue-400 border-blue-800/50",done:"bg-zinc-700/40 text-zinc-400 border-zinc-600/50"}[a]??"bg-zinc-800/40 text-zinc-400 border-zinc-700/50";return(0,b.jsxs)("span",{className:`inline-flex items-center gap-1 text-xs px-1.5 py-0.5 rounded border ${d}`,children:[a,c&&(0,b.jsx)("button",{onClick:c,className:"hover:text-white leading-none",children:"×"})]})}function k({sessions:a}){let d=(0,f.useT)(),[e,l]=(0,c.useState)(""),[m,n]=(0,c.useState)({}),[o,p]=(0,c.useState)({}),[q,r]=(0,c.useState)(null),s=(0,c.useMemo)(()=>{let b=e.toLowerCase();return b?a.filter(a=>h(a.cwd).toLowerCase().includes(b)||(a.ai_title??"").toLowerCase().includes(b)||(a.summary??"").toLowerCase().includes(b)):a},[a,e]);async function t(a,b){n(c=>({...c,[a]:b})),await fetch(`/api/sessions/${a}/tags`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({tags:b})})}function u(a){return m[a.id]??function(a){try{return a?JSON.parse(a):[]}catch{return[]}}(a.tags)}function v(a,b){let c=b.trim().toLowerCase().replace(/\s+/g,"-");if(!c)return;let d=u(a);d.includes(c)||(t(a.id,[...d,c]),p(b=>({...b,[a.id]:""})))}return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-5 py-3 border-b border-zinc-800 gap-4",children:[(0,b.jsx)("h2",{className:"text-sm font-medium text-zinc-300 shrink-0",children:d("card.sessions.recent")}),(0,b.jsx)("input",{type:"text",placeholder:d("card.sessions.search"),value:e,onChange:a=>l(a.target.value),className:"flex-1 max-w-xs bg-zinc-800 border border-zinc-700 rounded px-3 py-1 text-xs text-zinc-200 placeholder-zinc-600 focus:outline-none focus:border-zinc-500"}),(0,b.jsx)("span",{className:"text-xs text-zinc-500 shrink-0",children:d("card.sessions.activeCount",{active:a.filter(a=>!a.ended_at).length,shown:s.length,total:a.length})})]}),0===s.length?(0,b.jsx)("p",{className:"px-5 py-8 text-zinc-600 text-sm text-center",children:d("card.sessions.noMatch")}):(0,b.jsxs)("table",{className:"w-full text-sm",children:[(0,b.jsx)("thead",{children:(0,b.jsxs)("tr",{className:"text-xs text-zinc-500 border-b border-zinc-800",children:[(0,b.jsx)("th",{className:"px-4 py-2 text-left font-normal",children:d("card.sessions.started")}),(0,b.jsx)("th",{className:"px-4 py-2 text-left font-normal",children:d("card.sessions.tool")}),(0,b.jsx)("th",{className:"px-4 py-2 text-left font-normal",children:d("card.sessions.project")}),(0,b.jsx)("th",{className:"px-4 py-2 text-left font-normal",children:d("card.sessions.duration")}),(0,b.jsx)("th",{className:"px-4 py-2 text-left font-normal",children:d("card.sessions.status")}),(0,b.jsx)("th",{className:"px-4 py-2 text-left font-normal",children:d("card.sessions.tags")})]})}),(0,b.jsx)("tbody",{children:s.map(a=>{let e=!a.ended_at,f=u(a),k=q===a.id;return(0,b.jsx)(c.default.Fragment,{children:(0,b.jsxs)("tr",{className:"border-b border-zinc-800/40 hover:bg-zinc-800/20 transition-colors",children:[(0,b.jsx)("td",{className:"px-4 py-2 text-zinc-500 tabular-nums whitespace-nowrap text-xs",children:new Date(a.started_at).toLocaleString(void 0,{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1})}),(0,b.jsx)("td",{className:"px-4 py-2",children:(0,b.jsx)(i,{tool:a.tool})}),(0,b.jsxs)("td",{className:"px-4 py-2 max-w-xs",children:[(0,b.jsx)("div",{className:"text-zinc-200 text-xs font-medium",children:h(a.cwd)}),a.ai_title&&(0,b.jsx)("div",{className:"text-zinc-500 text-xs truncate",children:a.ai_title}),!a.ai_title&&a.summary&&(0,b.jsx)("div",{className:"text-zinc-600 text-xs truncate",children:a.summary})]}),(0,b.jsx)("td",{className:"px-4 py-2 text-zinc-500 tabular-nums text-xs",children:function(a,b,c){if(!b)return c;let d=Math.round((b-a)/6e4);return d<60?`${d}m`:`${Math.floor(d/60)}h ${d%60}m`}(a.started_at,a.ended_at??null,d("card.sessions.active"))}),(0,b.jsx)("td",{className:"px-4 py-2",children:e?(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 text-emerald-400 text-xs",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-400 animate-pulse inline-block"}),d("card.sessions.active")]}):(0,b.jsx)("span",{className:"text-zinc-700 text-xs",children:d("card.sessions.done")})}),(0,b.jsx)("td",{className:"px-4 py-2",children:(0,b.jsxs)("div",{className:"flex flex-wrap gap-1 items-center",children:[f.map(c=>(0,b.jsx)(j,{label:c,onRemove:()=>{t(a.id,u(a).filter(a=>a!==c))}},c)),k?(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("input",{autoFocus:!0,value:o[a.id]??"",onChange:b=>p(c=>({...c,[a.id]:b.target.value})),onKeyDown:b=>{"Enter"===b.key&&v(a,o[a.id]??""),"Escape"===b.key&&r(null)},placeholder:d("card.sessions.tagPlaceholder"),className:"w-16 bg-zinc-800 border border-zinc-600 rounded px-1 py-0.5 text-xs text-zinc-200 focus:outline-none"}),(0,b.jsx)("div",{className:"flex gap-1",children:g.filter(a=>!f.includes(a)).slice(0,3).map(c=>(0,b.jsx)("button",{onClick:()=>v(a,c),className:"text-xs text-zinc-500 hover:text-zinc-300 px-1 py-0.5 rounded border border-zinc-700",children:c},c))}),(0,b.jsx)("button",{onClick:()=>r(null),className:"text-zinc-600 hover:text-zinc-400 text-xs",children:"✕"})]}):(0,b.jsx)("button",{onClick:()=>r(a.id),className:"text-zinc-700 hover:text-zinc-400 text-xs leading-none",children:"+"})]})})]})},a.id)})})]})]})}let l={"claude-code":"bg-violet-500",codex:"bg-emerald-500",cursor:"bg-sky-500",other:"bg-zinc-500"};function m({data:a}){let c=(0,f.useT)(),d=a.reduce((a,b)=>a+b.sessions,0);return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:c("card.toolSplit.title")}),0===a.length?(0,b.jsx)("p",{className:"text-zinc-600 text-sm",children:c("common.empty")}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"flex h-2 rounded overflow-hidden gap-0.5 mb-3",children:a.map(a=>(0,b.jsx)("div",{className:`${l[a.tool]??"bg-zinc-500"} rounded-sm`,style:{width:`${a.pct}%`}},a.tool))}),(0,b.jsx)("div",{className:"space-y-1.5",children:a.map(a=>{let d;return(0,b.jsxs)("div",{className:"flex items-center justify-between text-xs",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:`w-2 h-2 rounded-sm inline-block ${l[a.tool]??"bg-zinc-500"}`}),(0,b.jsx)("span",{className:"text-zinc-300",children:"claude-code"===a.tool?"claude code":a.tool})]}),(0,b.jsxs)("span",{className:"text-zinc-500 tabular-nums",children:[a.sessions," ",c("card.toolSplit.sessions")," · ",(d=a.totalMs/36e5)<1?`${Math.round(60*d)}m`:`${d.toFixed(1)}h`," · ",a.pct,"%"]})]},a.tool)})}),(0,b.jsx)("p",{className:"text-xs text-zinc-600 mt-2",children:c("card.toolSplit.totalSessions",{n:d})})]})]})}function n(a){return a.map(a=>`${a.x.toFixed(1)},${a.y.toFixed(1)}`).join(" ")}function o(a){let b=new Date(a),c=new Date,d=b.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit",hour12:!1});return b.toDateString()===c.toDateString()?d:`${(b.getMonth()+1).toString().padStart(2,"0")}/${b.getDate().toString().padStart(2,"0")} ${d}`}function p({data:a,label:d="claude code"}){let e=(0,f.useT)(),g=(0,c.useRef)(null),[h,i]=(0,c.useState)(null),j=a.length>=2?a[0].ts:0,k=a.length>=2?a[a.length-1].ts:1,l=k-j||1,m=a=>32+(a-j)/l*520,q=a=>null==a?null:4+(1-a/100)*112,r=(0,c.useCallback)(b=>{if(!g.current||a.length<2)return;let c=g.current.getBoundingClientRect(),d=32+520*Math.max(0,Math.min(1,(b.clientX-c.left)/c.width)),e=a[0],f=1/0;for(let b of a){let a=Math.abs(m(b.ts)-d);a<f&&(f=a,e=b)}i({svgX:m(e.ts),screenX:b.clientX,screenY:c.top,point:e})},[a,j,l]);if(a.length<2)return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-2",children:e("card.burndown.header",{label:d})}),(0,b.jsx)("p",{className:"text-zinc-600 text-sm",children:e("card.burndown.notEnough")})]});let s=a.filter(a=>null!=a.pct5h).map(a=>({x:m(a.ts),y:q(a.pct5h)})),t=a.filter(a=>null!=a.pctWeekly).map(a=>({x:m(a.ts),y:q(a.pctWeekly)})),u=a.filter(a=>null!=a.pct5h).at(-1)?.pct5h,v=a.filter(a=>null!=a.pctWeekly).at(-1)?.pctWeekly;return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5 relative",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:e("card.burndown.header",{label:d})}),(0,b.jsxs)("svg",{ref:g,viewBox:"0 0 560 120",className:"w-full h-28 cursor-crosshair",preserveAspectRatio:"none",onMouseMove:r,onMouseLeave:()=>i(null),children:[[0,25,50,75,100].map(a=>{let c=q(a);return(0,b.jsxs)("g",{children:[(0,b.jsx)("line",{x1:32,y1:c,x2:552,y2:c,stroke:"#27272a",strokeWidth:"1"}),(0,b.jsxs)("text",{x:29,y:c+3.5,textAnchor:"end",fontSize:"8",fill:"#52525b",children:[a,"%"]})]},a)}),s.length>=2&&(0,b.jsx)("polyline",{points:n(s),fill:"none",stroke:"#8b5cf6",strokeWidth:"1.5",strokeLinejoin:"round"}),t.length>=2&&(0,b.jsx)("polyline",{points:n(t),fill:"none",stroke:"#10b981",strokeWidth:"1.5",strokeLinejoin:"round",strokeDasharray:"4 2"}),h&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("line",{x1:h.svgX,y1:4,x2:h.svgX,y2:116,stroke:"#52525b",strokeWidth:"1",strokeDasharray:"3 2"}),null!=h.point.pct5h&&(0,b.jsx)("circle",{cx:h.svgX,cy:q(h.point.pct5h),r:"2.5",fill:"#8b5cf6"}),null!=h.point.pctWeekly&&(0,b.jsx)("circle",{cx:h.svgX,cy:q(h.point.pctWeekly),r:"2.5",fill:"#10b981"})]})]}),h&&(0,b.jsxs)("div",{className:"pointer-events-none absolute z-10 bg-zinc-800 border border-zinc-700 rounded px-2 py-1.5 text-xs shadow-lg",style:{left:`${((h.svgX-32)/520*100).toFixed(1)}%`,transform:h.svgX>364?"translateX(-110%)":"translateX(4px)",top:"40px"},children:[(0,b.jsx)("p",{className:"text-zinc-400 mb-1",children:o(h.point.ts)}),null!=h.point.pct5h&&(0,b.jsxs)("p",{className:"text-violet-400",children:[e("card.burndown.legend5h"),": ",h.point.pct5h.toFixed(0),"% ",e("card.burndown.tipUsed")]}),null!=h.point.pctWeekly&&(0,b.jsxs)("p",{className:"text-emerald-400",children:[e("card.burndown.legend7d"),": ",h.point.pctWeekly.toFixed(0),"% ",e("card.burndown.tipUsed")]})]}),(0,b.jsxs)("div",{className:"flex items-center justify-between mt-1 text-xs text-zinc-600",children:[(0,b.jsx)("span",{children:o(j)}),(0,b.jsxs)("div",{className:"flex gap-4",children:[(0,b.jsxs)("span",{className:"text-violet-400",children:["— ",e("card.burndown.legend5h")," ",null!=u?`(${u.toFixed(0)}% ${e("card.burndown.tipUsed")})`:""]}),(0,b.jsxs)("span",{className:"text-emerald-400",children:["-- ",e("card.burndown.legend7d")," ",null!=v?`(${v.toFixed(0)}% ${e("card.burndown.tipUsed")})`:""]})]}),(0,b.jsx)("span",{children:o(k)})]})]})}function q({data:a}){let c=(0,f.useT)();if(0===a.length)return null;let d=a[0].changes;return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:c("card.hotspots.title")}),(0,b.jsx)("div",{className:"space-y-2",children:a.map(a=>{let e,f;return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center justify-between text-xs mb-0.5",children:[(0,b.jsxs)("span",{className:"text-zinc-300 truncate max-w-xs",title:a.path,children:[(0,b.jsxs)("span",{className:"text-zinc-600",children:[(e=a.path.split("/")).length>1?e.slice(-2,-1)[0]:"","/"]}),(f=a.path).split("/").pop()??f]}),(0,b.jsxs)("span",{className:"text-zinc-500 tabular-nums ml-2 shrink-0",children:[a.changes,"× · ",a.sessions," ",c("card.hotspots.sessions")]})]}),(0,b.jsx)("div",{className:"h-1 bg-zinc-800 rounded",children:(0,b.jsx)("div",{className:"h-1 bg-amber-500/60 rounded",style:{width:`${a.changes/d*100}%`}})})]},a.path)})})]})}function r(a){return a>=1e9?`${(a/1e9).toFixed(1)}B`:a>=1e6?`${(a/1e6).toFixed(0)}M`:a>=1e3?`${(a/1e3).toFixed(0)}K`:String(a)}function s({data:a,toolFilter:c}){let d=(0,f.useT)(),e="all"===c||"claude-code"===c,g="all"===c||"codex"===c,h=e?Math.max(...a.daily.map(a=>a.claudeUsd),.01):.01,i=g?Math.max(...a.daily.map(a=>a.codexTokens),1):1;return e||g?(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:d("card.spending.title")}),(0,b.jsxs)("div",{className:"flex gap-6 mb-4",children:[e&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("p",{className:"text-xl font-bold text-violet-400",children:["$",a.claudeTotalUsd.toFixed(2)]}),(0,b.jsx)("p",{className:"text-xs text-zinc-600 mt-0.5",children:d("card.spending.claudeCost")})]}),g&&(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-xl font-bold text-emerald-400",children:r(a.codexTotalTokens)}),(0,b.jsx)("p",{className:"text-xs text-zinc-600 mt-0.5",children:d("card.spending.codexTokens")})]})]}),(0,b.jsx)("p",{className:"text-xs text-zinc-600 mb-2",children:d("card.spending.last14d")}),(0,b.jsx)("div",{className:"flex items-end gap-px h-16",children:a.daily.map(a=>{let c=e?a.claudeUsd/h*100:0,d=g?a.codexTokens/i*100:0,f=[a.date.slice(5),e?`Claude $${a.claudeUsd.toFixed(2)}`:"",g?`Codex ${r(a.codexTokens)} tokens`:""].filter(Boolean).join("\n");return(0,b.jsx)("div",{className:"flex-1 flex flex-col items-center",title:f,children:(0,b.jsxs)("div",{className:"w-full flex flex-col justify-end gap-px",style:{height:"56px"},children:[g&&a.codexTokens>0&&(0,b.jsx)("div",{className:"w-full bg-emerald-600/60 rounded-sm",style:{height:`${Math.max(.56*d,1)}px`}}),e&&a.claudeUsd>0&&(0,b.jsx)("div",{className:"w-full bg-violet-500/70 rounded-sm",style:{height:`${Math.max(.56*c,1)}px`}})]})},a.date)})}),(0,b.jsxs)("div",{className:"flex justify-between mt-1",children:[(0,b.jsx)("span",{className:"text-zinc-700 text-xs",children:a.daily[0]?.date.slice(5)}),(0,b.jsx)("span",{className:"text-zinc-700 text-xs",children:a.daily[a.daily.length-1]?.date.slice(5)})]}),(0,b.jsxs)("div",{className:"flex gap-4 mt-2",children:[e&&(0,b.jsxs)("span",{className:"flex items-center gap-1 text-xs text-zinc-600",children:[(0,b.jsx)("span",{className:"w-2 h-2 rounded-sm bg-violet-500/70 inline-block"})," ",d("card.spending.legendClaude")]}),g&&(0,b.jsxs)("span",{className:"flex items-center gap-1 text-xs text-zinc-600",children:[(0,b.jsx)("span",{className:"w-2 h-2 rounded-sm bg-emerald-600/60 inline-block"})," ",d("card.spending.legendCodex")]})]})]}):(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:d("card.spending.title")}),(0,b.jsx)("p",{className:"text-zinc-600 text-sm",children:d("card.spending.noCursor")})]})}let t=["card.activity.dayMon","card.activity.dayTue","card.activity.dayWed","card.activity.dayThu","card.activity.dayFri","card.activity.daySat","card.activity.daySun"];function u(a){return a<60?`${Math.round(a)}m`:`${(a/60).toFixed(1)}h`}function v(a){let b=new Date(a);return`${b.getHours().toString().padStart(2,"0")}:${b.getMinutes().toString().padStart(2,"0")}`}let w={"claude-code":"bg-violet-500/80 border-violet-400 text-violet-50",codex:"bg-emerald-600/80 border-emerald-400 text-emerald-50",cursor:"bg-sky-600/80 border-sky-400 text-sky-50"};function x({sessions:a,streak:d,timeline:e}){var g;let h=(0,f.useT)(),i=t.map(a=>h(a)),[j,k]=(0,c.useState)("pattern"),[l,m]=(0,c.useState)(null),n=(0,c.useMemo)(()=>(function(a){let b=new Map;for(let c of a){let a=c.started_at,d=c.ended_at??Math.min(Date.now(),c.started_at+36e5),e=a,f=null;for(;e<d;){let a=new Date(e),c=(a.getDay()+6)%7,g=a.getHours(),h=`${c}-${g}`,i=new Date(a);i.setMinutes(0,0,0),i.setHours(a.getHours()+1);let j=(Math.min(i.getTime(),d)-e)/6e4,k=b.get(h)??{minutes:0,sessions:0};k.minutes+=j,null===f&&(k.sessions+=1,f=h),b.set(h,k),e=i.getTime()}}let c=[];for(let a=0;a<7;a++)for(let d=0;d<24;d++){let e=b.get(`${a}-${d}`)??{minutes:0,sessions:0};c.push({dow:a,hour:d,...e})}return c})(a),[a]),o=Math.max(...n.map(a=>a.minutes),1),p=n.reduce((a,b)=>a+b.minutes,0)/60,q=n.reduce((a,b)=>b.minutes>a.minutes?b:a,n[0]),r=new Date(e.dateLabel+"T00:00:00").getTime(),s=r+864e5,y=e.sessions.map(a=>({...a,_start:Math.max(a.startMs,r),_end:Math.min(a.endMs,s)})).filter(a=>a._end>a._start).sort((a,b)=>a._start-b._start),z=[];for(let a of y){let b=!1;for(let c of z)if(c[c.length-1]._end<=a._start){c.push(a),b=!0;break}b||z.push([a])}let A=Math.max(z.length,1),B=y.reduce((a,b)=>a+(b._end-b._start),0)/36e5;return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5 relative",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-4 gap-4 flex-wrap",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider",children:h("card.activity.title")}),(0,b.jsxs)("div",{className:"flex gap-1",children:[(0,b.jsx)("button",{onClick:()=>k("pattern"),className:`text-xs px-2.5 py-1 rounded border transition-colors ${"pattern"===j?"bg-zinc-700 border-zinc-500 text-zinc-100":"border-zinc-800 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,children:h("card.activity.viewPattern")}),(0,b.jsx)("button",{onClick:()=>k("today"),className:`text-xs px-2.5 py-1 rounded border transition-colors ${"today"===j?"bg-zinc-700 border-zinc-500 text-zinc-100":"border-zinc-800 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,children:h("card.activity.viewToday")})]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-4 text-xs",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-base font-bold text-zinc-100 tabular-nums",children:d.current}),(0,b.jsx)("span",{className:"text-zinc-500 ml-1",children:h("card.activity.dayStreak")})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-base font-bold text-zinc-300 tabular-nums",children:d.longest}),(0,b.jsx)("span",{className:"text-zinc-500 ml-1",children:h("card.activity.longest")})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{className:"text-base font-bold text-zinc-300 tabular-nums",children:d.totalDays}),(0,b.jsx)("span",{className:"text-zinc-500 ml-1",children:h("card.activity.activeDays")})]}),(0,b.jsxs)("div",{className:"border-l border-zinc-800 pl-4",children:[(0,b.jsxs)("span",{className:"text-base font-bold text-violet-400 tabular-nums",children:[p.toFixed(0),"h"]}),(0,b.jsx)("span",{className:"text-zinc-500 ml-1",children:h("card.activity.total")})]})]})]}),"pattern"===j?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("p",{className:"text-xs text-zinc-600 mb-2",children:h("card.activity.peakSlotFmt",{day:i[q.dow],hour:q.hour.toString().padStart(2,"0"),mins:u(q.minutes)})}),(0,b.jsxs)("div",{className:"flex gap-1 text-xs",children:[(0,b.jsx)("div",{className:"w-8 shrink-0"}),(0,b.jsx)("div",{className:"flex-1 grid gap-px",style:{gridTemplateColumns:"repeat(24, minmax(0, 1fr))"},children:Array.from({length:24}).map((a,c)=>(0,b.jsx)("div",{className:`text-center text-[9px] text-zinc-600 ${c%3==0?"":"opacity-40"}`,children:c%3==0?c.toString().padStart(2,"0"):""},c))})]}),i.map((a,c)=>(0,b.jsxs)("div",{className:"flex gap-1 mt-px",children:[(0,b.jsx)("div",{className:"w-8 shrink-0 text-[10px] text-zinc-600 leading-4",children:a}),(0,b.jsx)("div",{className:"flex-1 grid gap-px",style:{gridTemplateColumns:"repeat(24, minmax(0, 1fr))"},children:Array.from({length:24}).map((d,e)=>{let f=n[24*c+e];return(0,b.jsx)("div",{className:`h-4 rounded-sm ${function(a,b){if(0===a)return"bg-zinc-900";let c=b>0?a/b:0;return c<.15?"bg-violet-900/40":c<.3?"bg-violet-800/60":c<.5?"bg-violet-700":c<.75?"bg-violet-600":"bg-violet-400"}(f.minutes,o)}`,title:`${a} ${e.toString().padStart(2,"0")}:00
2
+ ${u(f.minutes)} \xb7 ${f.sessions} sessions`},e)})})]},a)),(0,b.jsxs)("div",{className:"flex items-center gap-2 mt-3 text-[10px] text-zinc-600",children:[(0,b.jsx)("span",{children:h("card.activity.less")}),(0,b.jsx)("span",{className:"w-3 h-3 rounded-sm bg-zinc-900 border border-zinc-800"}),(0,b.jsx)("span",{className:"w-3 h-3 rounded-sm bg-violet-900/40"}),(0,b.jsx)("span",{className:"w-3 h-3 rounded-sm bg-violet-800/60"}),(0,b.jsx)("span",{className:"w-3 h-3 rounded-sm bg-violet-700"}),(0,b.jsx)("span",{className:"w-3 h-3 rounded-sm bg-violet-600"}),(0,b.jsx)("span",{className:"w-3 h-3 rounded-sm bg-violet-400"}),(0,b.jsx)("span",{children:h("card.activity.more")})]})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("p",{className:"text-xs text-zinc-600 mb-2",children:h("card.activity.dayHeader",{date:e.dateLabel,n:y.length,hours:B.toFixed(1)})}),0===y.length?(0,b.jsx)("p",{className:"text-zinc-600 text-sm py-4",children:h("card.activity.noToday")}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"relative h-4 mb-1",children:Array.from({length:25}).map((a,c)=>(0,b.jsx)("div",{className:"absolute top-0 text-[10px] text-zinc-600 tabular-nums",style:{left:`${c/24*100}%`,transform:"translateX(-50%)"},children:c%3==0?c.toString().padStart(2,"0"):""},c))}),(0,b.jsxs)("div",{className:"relative bg-zinc-950/50 rounded overflow-hidden",style:{height:`${32*A+4}px`},children:[Array.from({length:25}).map((a,c)=>(0,b.jsx)("div",{className:"absolute top-0 bottom-0 border-l border-zinc-800/40",style:{left:`${c/24*100}%`}},c)),z.flatMap((a,c)=>a.map(a=>{let d=(a._start-r)/864e5*100,e=(a._end-a._start)/864e5*100;return(0,b.jsx)("div",{className:`absolute rounded border text-[11px] font-medium leading-none cursor-pointer hover:brightness-125 transition-all overflow-hidden ${w[a.tool]??"bg-zinc-600 border-zinc-500 text-zinc-100"}`,style:{left:`${d}%`,width:`${Math.max(e,.4)}%`,top:`${4+32*c}px`,height:"28px"},onMouseEnter:b=>m({s:a,x:b.clientX,y:b.clientY}),onMouseMove:b=>m({s:a,x:b.clientX,y:b.clientY}),onMouseLeave:()=>m(null),children:e>4&&(0,b.jsxs)("div",{className:"px-1.5 py-1 truncate",children:[(0,b.jsx)("span",{className:"opacity-80",children:v(a._start)})," · ",a.project]})},a.id)}))]}),(0,b.jsxs)("div",{className:"flex gap-4 mt-3 text-[11px] text-zinc-600",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-sm bg-violet-500/80 inline-block"})," claude code"]}),(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-sm bg-emerald-600/80 inline-block"})," codex"]}),(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-sm bg-sky-600/80 inline-block"})," cursor"]})]}),l&&(0,b.jsxs)("div",{className:"fixed z-20 bg-zinc-800 border border-zinc-700 rounded px-3 py-2 text-xs shadow-xl pointer-events-none max-w-xs",style:{left:l.x+12,top:l.y+12},children:[(0,b.jsxs)("p",{className:"text-zinc-100 font-medium mb-0.5",children:[l.s.project," ",(0,b.jsxs)("span",{className:"text-zinc-500 font-normal",children:["· ",l.s.tool]})]}),l.s.aiTitle&&(0,b.jsx)("p",{className:"text-zinc-400 mb-1 line-clamp-2",children:l.s.aiTitle}),(0,b.jsxs)("p",{className:"text-zinc-500 tabular-nums",children:[v(l.s.startMs)," → ",v(l.s.endMs)," · ",(g=l.s.startMs,Math.max(1,Math.round((l.s.endMs-g)/6e4))),"m"]})]})]})]})]})}let y={"claude-code":"bg-violet-500",codex:"bg-emerald-500",cursor:"bg-sky-500"};function z({sessions:a,limit:d=10}){let e=(0,f.useT)(),g=(0,c.useMemo)(()=>{let b=new Map;for(let d of a){var c;let a=(c=d.cwd)?c.split("/").filter(Boolean).pop()??c:"—";if("—"===a)continue;let e=(d.ended_at??d.started_at)-d.started_at,f=b.get(a)??{project:a,cwd:d.cwd,sessions:0,totalMs:0,tools:{}};f.sessions+=1,f.totalMs+=e,f.tools[d.tool]=(f.tools[d.tool]??0)+1,b.set(a,f)}return[...b.values()].sort((a,b)=>b.totalMs-a.totalMs).slice(0,d)},[a,d]),h=Math.max(...g.map(a=>a.totalMs),1);return 0===g.length?(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:e("card.leaderboard.title")}),(0,b.jsx)("p",{className:"text-zinc-600 text-sm",children:e("card.leaderboard.noProjects")})]}):(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-3",children:e("card.leaderboard.title")}),(0,b.jsx)("div",{className:"space-y-1.5",children:g.map((a,c)=>{let d;return(0,b.jsxs)("div",{className:"group",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 text-xs",children:[(0,b.jsx)("span",{className:"w-5 text-right text-zinc-600 tabular-nums",children:c+1}),(0,b.jsx)("span",{className:"flex-1 text-zinc-200 truncate",title:a.cwd??a.project,children:a.project}),(0,b.jsx)("div",{className:"flex gap-0.5",children:Object.entries(a.tools).map(([a,c])=>(0,b.jsx)("span",{className:`w-1.5 h-1.5 rounded-full ${y[a]??"bg-zinc-500"}`,title:`${a}: ${c}`},a))}),(0,b.jsxs)("span",{className:"text-zinc-500 tabular-nums w-12 text-right",children:[a.sessions,"×"]}),(0,b.jsx)("span",{className:"text-zinc-400 tabular-nums w-14 text-right",children:(d=a.totalMs/36e5)<1?`${Math.round(60*d)}m`:`${d.toFixed(1)}h`})]}),(0,b.jsx)("div",{className:"flex gap-px h-1 mt-0.5 ml-8",children:(0,b.jsx)("div",{className:"bg-violet-500/30 rounded-sm",style:{width:`${a.totalMs/h*100}%`}})})]},a.project)})})]})}function A({data:a}){let d=(0,f.useT)(),[e,g]=(0,c.useState)(!1),h=a.filter(a=>a.unlocked),i=a.filter(a=>!a.unlocked).sort((a,b)=>{let c=a.progress?a.progress.current/a.progress.target:0;return(b.progress?b.progress.current/b.progress.target:0)-c}),j=e?[...h,...i]:[...h.slice(0,4),...i.slice(0,Math.max(0,6-Math.min(h.length,4)))];return(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,b.jsx)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider",children:d("card.achievements.title")}),(0,b.jsx)("p",{className:"text-xs text-zinc-600",children:d("card.achievements.unlocked",{n:h.length,total:a.length})})]}),(0,b.jsx)("div",{className:"grid grid-cols-2 gap-2",children:j.map(a=>{var c,e,f,g;let h,i,j=a.progress?Math.min(100,a.progress.current/a.progress.target*100):100*!!a.unlocked;return(0,b.jsxs)("div",{className:`rounded border px-2.5 py-2 ${a.unlocked?"border-amber-700/50 bg-amber-950/30":"border-zinc-800 bg-zinc-950/30"}`,title:a.description,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,b.jsxs)("span",{className:`text-xs font-medium ${a.unlocked?"text-amber-300":"text-zinc-500"}`,children:[a.unlocked?"★":"☆"," ",(c=a.id,e=a.title,(h=d(`achv.${c}.title`))===`achv.${c}.title`?e:h)]}),(0,b.jsx)("span",{className:"text-[10px] text-zinc-600 tabular-nums shrink-0",children:function(a){if(!a.progress)return"";let{current:b,target:c}=a.progress;return c>=1e6?`${(b/1e6).toFixed(0)}M / ${(c/1e6).toFixed(0)}M`:c>=1e3?`${b.toLocaleString()} / ${c.toLocaleString()}`:c>=100&&Number.isFinite(b)&&b<100&&b%1!=0?`${b.toFixed(1)} / ${c}`:`${Math.floor(b)} / ${c}`}(a)})]}),(0,b.jsx)("div",{className:"h-0.5 bg-zinc-800 rounded mt-1.5 overflow-hidden",children:(0,b.jsx)("div",{className:`h-full ${a.unlocked?"bg-amber-500":"bg-zinc-600"}`,style:{width:`${j}%`}})}),(0,b.jsx)("p",{className:"text-[10px] text-zinc-600 mt-1 truncate",children:(f=a.id,g=a.description,(i=d(`achv.${f}.desc`))===`achv.${f}.desc`?g:i)})]},a.id)})}),a.length>6&&(0,b.jsx)("button",{onClick:()=>g(!e),className:"w-full mt-3 text-xs text-zinc-500 hover:text-zinc-300 border border-zinc-800 rounded py-1",children:e?d("card.achievements.showLess"):d("card.achievements.showAll",{n:a.length})})]})}let B=["all","claude-code","codex","cursor"],C={all:"dashboard.toolAll","claude-code":"dashboard.toolClaude",codex:"dashboard.toolCodex",cursor:"dashboard.toolCursor"},D=["today","7d","30d","all"],E={today:"dashboard.dateToday2","7d":"dashboard.date7days","30d":"dashboard.date30days",all:"dashboard.dateAlltime"};function F(a,b){if(!a)return"";let c=a-Date.now();if(c<=0)return b("dashboard.resetting");let d=new Date(a),e=d.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",hour12:!1}),f=new Date().toDateString()===d.toDateString()?e:`${(d.getMonth()+1).toString().padStart(2,"0")}/${d.getDate().toString().padStart(2,"0")} ${e}`,g=Math.floor(c/36e5),h=Math.floor(c%36e5/6e4);return b("dashboard.resetsAt",{date:f,rel:g>0?`${g}h ${h}m`:`${h}m`})}function G(a){let b=Math.max(0,Math.min(100,a));return`${b>=100?100:Math.floor(b)}%`}function H(a){let b=Math.max(0,Math.min(100,a));return`${b<=0?0:Math.ceil(b)}%`}a.s(["Dashboard",0,function({sessions:a,streak:g,allBurndown:h,claudeBurndown:i,codexBurndown:j,hotspots:l,claudeUsage:n,codexUsage:o,codexAccounts:r,selectedCodexAccountId:t,initialToolFilter:u,spending:v,timeline:w,achievements:y}){var I;let J,K,L=(0,f.useT)(),M=(0,e.useRouter)(),N=(0,e.usePathname)(),O=(0,e.useSearchParams)(),P=O.get("agent"),Q=B.includes(P)?P:u,[R,S]=(0,c.useState)("all"),[T,U]=(0,c.useState)("idle"),[V,W]=(0,c.useState)(null),X=(0,c.useMemo)(()=>r.find(a=>a.accountId===t)??null,[r,t]),Y=X?`${L("dashboard.codexLabelPrefix")} \xb7 ${X.label}`:L("dashboard.codexLabel"),Z=t?L("dashboard.noSnapshot"):L("dashboard.noData"),$=t?X?.isCurrent?L("dashboard.useCodexThenRefresh"):L("dashboard.switchAdminThenUse"):L("dashboard.noData"),_=(0,c.useMemo)(()=>{let a;return a=new Date,"today"===R?(a.setHours(0,0,0,0),a.getTime()):"7d"===R?Date.now()-6048e5:"30d"===R?Date.now()-2592e6:0},[R]),aa=(0,c.useMemo)(()=>{let b=_>0?a.filter(a=>a.started_at>=_):a,c={all:b.length};for(let a of b)c[a.tool]=(c[a.tool]??0)+1;return c},[a,_]),ab=(0,c.useMemo)(()=>{let b="all"===Q?a:a.filter(a=>a.tool===Q);return _>0&&(b=b.filter(a=>a.started_at>=_)),b},[a,Q,_]),ac=(0,c.useMemo)(()=>{let a=new Map;for(let b of ab){let c=(b.ended_at??b.started_at)-b.started_at,d=a.get(b.tool)??{sessions:0,totalMs:0};a.set(b.tool,{sessions:d.sessions+1,totalMs:d.totalMs+c})}let b=Math.max([...a.values()].reduce((a,b)=>a+b.totalMs,0),1);return[...a.entries()].map(([a,c])=>({tool:a,sessions:c.sessions,totalMs:c.totalMs,pct:Math.round(c.totalMs/b*100)})).sort((a,b)=>b.totalMs-a.totalMs)},[ab]),ad=(0,c.useMemo)(()=>{if(0===_)return v;let a=new Date(_).toISOString().slice(0,10);return{...v,daily:v.daily.filter(b=>b.date>=a)}},[v,_]);async function ae(){U("refreshing"),W(null);try{let a=await fetch("/api/import-sessions",{method:"POST"}),b=await a.json();if(!a.ok)throw Error(b.error??L("dashboard.refreshFailed"));U("done"),W(L("dashboard.scanned",{n:b.scanned??0,seconds:Math.round((b.durationMs??0)/100)/10})),M.refresh()}catch(a){U("error"),W(a instanceof Error?a.message:L("dashboard.refreshFailed"))}}function af(a,b){let c=new URLSearchParams(O.toString());"all"===a?(c.delete("agent"),c.delete("codexAccount")):(c.set("agent",a),"codex"!==a&&c.delete("codexAccount")),"codex"===a&&b?c.set("codexAccount",b):c.delete("codexAccount");let d=c.toString();M.replace(d?`${N}?${d}`:N,{scroll:!1}),M.refresh()}return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-between mb-4 gap-3",children:[(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:B.filter(a=>"all"===a||(aa[a]??0)>0).sort((a,b)=>"all"===a?-1:"all"===b?1:(aa[b]??0)-(aa[a]??0)).map(a=>(0,b.jsxs)("button",{onClick:()=>{af(a,"codex"===a?t:null)},className:`text-xs px-3 py-1.5 rounded-full border transition-colors ${Q===a?"bg-zinc-700 border-zinc-500 text-zinc-100":"border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,children:[L(C[a]),(0,b.jsx)("span",{className:"ml-1.5 text-zinc-600 tabular-nums",children:aa[a]??0})]},a))}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[(0,b.jsx)("div",{className:"flex gap-1",children:D.map(a=>(0,b.jsx)("button",{onClick:()=>S(a),className:`text-xs px-3 py-1.5 rounded-full border transition-colors ${R===a?"bg-zinc-700 border-zinc-500 text-zinc-100":"border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,children:L(E[a])},a))}),(0,b.jsx)("button",{type:"button",onClick:ae,disabled:"refreshing"===T,className:"text-xs px-3 py-1.5 rounded-full border border-violet-500/40 bg-violet-500/10 text-violet-100 transition-colors hover:bg-violet-500/20 disabled:cursor-not-allowed disabled:opacity-50",children:"refreshing"===T?L("dashboard.refreshing"):L("dashboard.refreshData")})]})]}),V&&(0,b.jsx)("div",{className:`mb-4 rounded-lg border px-4 py-3 text-xs ${"error"===T?"border-red-900/60 bg-red-950/40 text-red-200":"border-emerald-900/60 bg-emerald-950/30 text-emerald-200"}`,children:V}),"codex"===Q&&r.length>0&&(0,b.jsxs)("div",{className:"mb-3 flex flex-wrap items-center justify-between gap-2 rounded-lg border border-zinc-800 bg-zinc-900 px-4 py-3",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("p",{className:"text-xs uppercase tracking-wider text-zinc-500",children:L("dashboard.codexAccount")}),(0,b.jsx)("p",{className:"mt-1 truncate text-xs text-zinc-600",children:X?X.isCurrent?L("dashboard.codexCurrentOnly"):L("dashboard.codexSavedOnly"):L("dashboard.codexAllUsage")})]}),(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsxs)("select",{value:t??"",onChange:a=>{af("codex",a.target.value||null)},className:"max-w-72 rounded-md border border-zinc-700 bg-zinc-950 px-3 py-2 text-xs text-zinc-100 outline-none transition-colors hover:border-zinc-500 focus:border-violet-500",children:[(0,b.jsx)("option",{value:"",children:L("dashboard.codexAccountAll")}),r.map(a=>(0,b.jsxs)("option",{value:a.accountId,children:[a.label," · ",a.planType??L("common.unknown"),a.isCurrent?" · current":""]},a.accountId))]}),(0,b.jsx)("span",{className:"hidden shrink-0 text-xs text-zinc-600 sm:inline",children:X?(I=X.accountId).length>12?`${I.slice(0,6)}...${I.slice(-4)}`:I:L("dashboard.short")})]}),X&&!X.isCurrent&&(0,b.jsx)(d.default,{href:"/admin",className:"basis-full text-xs text-violet-300 transition-colors hover:text-violet-100",children:L("dashboard.codexSwitchHint")})]}),"all"!==Q&&(J="codex"===Q?o:"claude-code"===Q?n:null,K="codex"===Q?Y:"claude-code"===Q?L("dashboard.claudeCodeLower"):L(C[Q]).toLowerCase(),(0,b.jsx)(b.Fragment,{children:(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsxs)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-2",children:[L("dashboard.window5h")," · ",K]}),J?.window_5h_used_pct!=null?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("p",{className:"text-3xl font-bold text-zinc-100",children:G(100-J.window_5h_used_pct)}),(0,b.jsxs)("p",{className:"text-xs text-zinc-500 mt-1",children:[L("dashboard.remaining")," · ",H(J.window_5h_used_pct)," ",L("dashboard.used")]}),J.reset_at_5h&&(0,b.jsx)("p",{className:"text-xs text-zinc-600 mt-1",children:F(J.reset_at_5h,L)})]}):(0,b.jsx)("p",{className:"text-zinc-600 text-sm mt-1",children:"codex"===Q?Z:L("dashboard.noData")})]}),(0,b.jsxs)("div",{className:"rounded-lg border border-zinc-800 bg-zinc-900 p-5",children:[(0,b.jsxs)("p",{className:"text-xs text-zinc-500 uppercase tracking-wider mb-2",children:[L("dashboard.window7d")," · ",K]}),J?.window_weekly_used_pct!=null?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("p",{className:"text-3xl font-bold text-zinc-100",children:G(100-J.window_weekly_used_pct)}),(0,b.jsxs)("p",{className:"text-xs text-zinc-500 mt-1",children:[L("dashboard.remaining")," · ",H(J.window_weekly_used_pct)," ",L("dashboard.used")]}),J.reset_at_weekly&&(0,b.jsx)("p",{className:"text-xs text-zinc-600 mt-1",children:F(J.reset_at_weekly,L)})]}):(0,b.jsx)("p",{className:"text-zinc-600 text-sm mt-1",children:"codex"===Q?$:L("dashboard.noData")})]})]})})),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[(0,b.jsx)(s,{data:ad,toolFilter:Q}),(0,b.jsx)(A,{data:y})]}),(0,b.jsx)("div",{className:"mb-4",children:(0,b.jsx)(x,{sessions:ab,streak:g,timeline:w})}),(0,b.jsx)("div",{className:"mb-4",children:(0,b.jsx)(p,{data:"codex"===Q?j:"claude-code"===Q?i:h,label:"codex"===Q?Y:"claude-code"===Q?L("dashboard.claudeCodeLower"):L("dashboard.allAgents")})}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[(0,b.jsx)(m,{data:ac}),(0,b.jsx)(z,{sessions:ab})]}),(0,b.jsx)("div",{className:"mb-4",children:(0,b.jsx)(k,{sessions:ab.slice(0,40)})}),l.length>0&&(0,b.jsx)(q,{data:l})]})}],39579)},94613,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return f}});let d=a.r(72131),e=()=>{};function f(a){let{headManager:b,reduceComponentsToState:c}=a;function f(){if(b&&b.mountedInstances){let a=d.Children.toArray(Array.from(b.mountedInstances).filter(Boolean));b.updateHead(c(a))}}return b?.mountedInstances?.add(a.children),f(),e(()=>(b?.mountedInstances?.add(a.children),()=>{b?.mountedInstances?.delete(a.children)})),e(()=>(b&&(b._pendingUpdate=f),()=>{b&&(b._pendingUpdate=f)})),null}},92966,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored.contexts.HeadManagerContext},58018,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={default:function(){return p},defaultHead:function(){return l}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(33354),g=a.r(46058),h=a.r(87924),i=g._(a.r(72131)),j=f._(a.r(94613)),k=a.r(92966);function l(){return[(0,h.jsx)("meta",{charSet:"utf-8"},"charset"),(0,h.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function m(a,b){return"string"==typeof b||"number"==typeof b?a:b.type===i.default.Fragment?a.concat(i.default.Children.toArray(b.props.children).reduce((a,b)=>"string"==typeof b||"number"==typeof b?a:a.concat(b),[])):a.concat(b)}a.r(92434);let n=["name","httpEquiv","charSet","itemProp"];function o(a){let b,c,d,e;return a.reduce(m,[]).reverse().concat(l().reverse()).filter((b=new Set,c=new Set,d=new Set,e={},a=>{let f=!0,g=!1;if(a.key&&"number"!=typeof a.key&&a.key.indexOf("$")>0){g=!0;let c=a.key.slice(a.key.indexOf("$")+1);b.has(c)?f=!1:b.add(c)}switch(a.type){case"title":case"base":c.has(a.type)?f=!1:c.add(a.type);break;case"meta":for(let b=0,c=n.length;b<c;b++){let c=n[b];if(a.props.hasOwnProperty(c))if("charSet"===c)d.has(c)?f=!1:d.add(c);else{let b=a.props[c],d=e[c]||new Set;("name"!==c||!g)&&d.has(b)?f=!1:(d.add(b),e[c]=d)}}}return f})).reverse().map((a,b)=>{let c=a.key||b;return i.default.cloneElement(a,{key:c})})}let p=function({children:a}){let b=(0,i.useContext)(k.HeadManagerContext);return(0,h.jsx)(j.default,{reduceComponentsToState:o,headManager:b,children:a})};("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},4987,(a,b,c)=>{"use strict";function d({widthInt:a,heightInt:b,blurWidth:c,blurHeight:e,blurDataURL:f,objectFit:g}){let h=c?40*c:a,i=e?40*e:b,j=h&&i?`viewBox='0 0 ${h} ${i}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${j}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${j?"none":"contain"===g?"xMidYMid":"cover"===g?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${f}'/%3E%3C/svg%3E`}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"getImageBlurSvg",{enumerable:!0,get:function(){return d}})},345,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={VALID_LOADERS:function(){return f},imageConfigDefault:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=["default","imgix","cloudinary","akamai","custom"],g={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},94915,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"getImgProps",{enumerable:!0,get:function(){return j}}),a.r(92434);let d=a.r(68063),e=a.r(4987),f=a.r(345),g=["-moz-initial","fill","none","scale-down",void 0];function h(a){return void 0!==a.default}function i(a){return void 0===a?a:"number"==typeof a?Number.isFinite(a)?a:NaN:"string"==typeof a&&/^[0-9]+$/.test(a)?parseInt(a,10):NaN}function j({src:a,sizes:b,unoptimized:c=!1,priority:k=!1,preload:l=!1,loading:m,className:n,quality:o,width:p,height:q,fill:r=!1,style:s,overrideSrc:t,onLoad:u,onLoadingComplete:v,placeholder:w="empty",blurDataURL:x,fetchPriority:y,decoding:z="async",layout:A,objectFit:B,objectPosition:C,lazyBoundary:D,lazyRoot:E,...F},G){var H;let I,J,K,{imgConf:L,showAltText:M,blurComplete:N,defaultLoader:O}=G,P=L||f.imageConfigDefault;if("allSizes"in P)I=P;else{let a=[...P.deviceSizes,...P.imageSizes].sort((a,b)=>a-b),b=P.deviceSizes.sort((a,b)=>a-b),c=P.qualities?.sort((a,b)=>a-b);I={...P,allSizes:a,deviceSizes:b,qualities:c}}if(void 0===O)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let Q=F.loader||O;delete F.loader,delete F.srcSet;let R="__next_img_default"in Q;if(R){if("custom"===I.loader)throw Object.defineProperty(Error(`Image with src "${a}" is missing "loader" prop.
3
+ Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let a=Q;Q=b=>{let{config:c,...d}=b;return a(d)}}if(A){"fill"===A&&(r=!0);let a={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[A];a&&(s={...s,...a});let c={responsive:"100vw",fill:"100vw"}[A];c&&!b&&(b=c)}let S="",T=i(p),U=i(q);if((H=a)&&"object"==typeof H&&(h(H)||void 0!==H.src)){let b=h(a)?a.default:a;if(!b.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(b)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!b.height||!b.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(b)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(J=b.blurWidth,K=b.blurHeight,x=x||b.blurDataURL,S=b.src,!r)if(T||U){if(T&&!U){let a=T/b.width;U=Math.round(b.height*a)}else if(!T&&U){let a=U/b.height;T=Math.round(b.width*a)}}else T=b.width,U=b.height}let V=!k&&!l&&("lazy"===m||void 0===m);(!(a="string"==typeof a?a:S)||a.startsWith("data:")||a.startsWith("blob:"))&&(c=!0,V=!1),I.unoptimized&&(c=!0),R&&!I.dangerouslyAllowSVG&&a.split("?",1)[0].endsWith(".svg")&&(c=!0);let W=i(o),X=Object.assign(r?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:B,objectPosition:C}:{},M?{}:{color:"transparent"},s),Y=N||"empty"===w?null:"blur"===w?`url("data:image/svg+xml;charset=utf-8,${(0,e.getImageBlurSvg)({widthInt:T,heightInt:U,blurWidth:J,blurHeight:K,blurDataURL:x||"",objectFit:X.objectFit})}")`:`url("${w}")`,Z=g.includes(X.objectFit)?"fill"===X.objectFit?"100% 100%":"cover":X.objectFit,$=Y?{backgroundSize:Z,backgroundPosition:X.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:Y}:{},_=function({config:a,src:b,unoptimized:c,width:e,quality:f,sizes:g,loader:h}){if(c){if(b.startsWith("/")&&!b.startsWith("//")){let a=(0,d.getDeploymentId)();if(a){let c=b.indexOf("?");if(-1!==c){let d=new URLSearchParams(b.slice(c+1));d.get("dpl")||(d.append("dpl",a),b=b.slice(0,c)+"?"+d.toString())}else b+=`?dpl=${a}`}}return{src:b,srcSet:void 0,sizes:void 0}}let{widths:i,kind:j}=function({deviceSizes:a,allSizes:b},c,d){if(d){let c=/(^|\s)(1?\d?\d)vw/g,e=[];for(let a;a=c.exec(d);)e.push(parseInt(a[2]));if(e.length){let c=.01*Math.min(...e);return{widths:b.filter(b=>b>=a[0]*c),kind:"w"}}return{widths:b,kind:"w"}}return"number"!=typeof c?{widths:a,kind:"w"}:{widths:[...new Set([c,2*c].map(a=>b.find(b=>b>=a)||b[b.length-1]))],kind:"x"}}(a,e,g),k=i.length-1;return{sizes:g||"w"!==j?g:"100vw",srcSet:i.map((c,d)=>`${h({config:a,src:b,quality:f,width:c})} ${"w"===j?c:d+1}${j}`).join(", "),src:h({config:a,src:b,quality:f,width:i[k]})}}({config:I,src:a,unoptimized:c,width:T,quality:W,sizes:b,loader:Q}),aa=V?"lazy":m;return{props:{...F,loading:aa,fetchPriority:y,width:T,height:U,decoding:z,className:n,style:{...X,...$},sizes:_.sizes,srcSet:_.srcSet,src:t||_.src},meta:{unoptimized:c,preload:l||k,placeholder:w,fill:r}}}},4486,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored.contexts.ImageConfigContext},53773,(a,b,c)=>{"use strict";b.exports=a.r(42602).vendored.contexts.RouterContext},35444,(a,b,c)=>{"use strict";function d(a,b){let c=a||75;return b?.qualities?.length?b.qualities.reduce((a,b)=>Math.abs(b-c)<Math.abs(a-c)?b:a,b.qualities[0]):c}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"findClosestQuality",{enumerable:!0,get:function(){return d}})},2305,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return g}});let d=a.r(35444),e=a.r(68063);function f({config:a,src:b,width:c,quality:g}){let h=(0,e.getDeploymentId)();if(b.startsWith("/")&&!b.startsWith("//")){let a=b.indexOf("?");if(-1!==a){let c=new URLSearchParams(b.slice(a+1)),d=c.get("dpl");if(d){h=d,c.delete("dpl");let e=c.toString();b=b.slice(0,a)+(e?"?"+e:"")}}}if(b.startsWith("/")&&b.includes("?")&&a.localPatterns?.length===1&&"**"===a.localPatterns[0].pathname&&""===a.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${b}" is using a query string which is not configured in images.localPatterns.
4
+ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let i=(0,d.findClosestQuality)(g,a);return`${a.path}?url=${encodeURIComponent(b)}&w=${c}&q=${i}${b.startsWith("/")&&h?`&dpl=${h}`:""}`}f.__next_img_default=!0;let g=f},67161,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"Image",{enumerable:!0,get:function(){return u}});let d=a.r(33354),e=a.r(46058),f=a.r(87924),g=e._(a.r(72131)),h=d._(a.r(35112)),i=d._(a.r(58018)),j=a.r(94915),k=a.r(345),l=a.r(4486);a.r(92434);let m=a.r(53773),n=d._(a.r(2305)),o=a.r(8591),p={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function q(a,b,c,d,e,f,g){let h=a?.src;a&&a["data-loaded-src"]!==h&&(a["data-loaded-src"]=h,("decode"in a?a.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(a.parentElement&&a.isConnected){if("empty"!==b&&e(!0),c?.current){let b=new Event("load");Object.defineProperty(b,"target",{writable:!1,value:a});let d=!1,e=!1;c.current({...b,nativeEvent:b,currentTarget:a,target:a,isDefaultPrevented:()=>d,isPropagationStopped:()=>e,persist:()=>{},preventDefault:()=>{d=!0,b.preventDefault()},stopPropagation:()=>{e=!0,b.stopPropagation()}})}d?.current&&d.current(a)}}))}function r(a){return g.use?{fetchPriority:a}:{fetchpriority:a}}globalThis.__NEXT_IMAGE_IMPORTED=!0;let s=(0,g.forwardRef)(({src:a,srcSet:b,sizes:c,height:d,width:e,decoding:h,className:i,style:j,fetchPriority:k,placeholder:l,loading:m,unoptimized:n,fill:p,onLoadRef:s,onLoadingCompleteRef:t,setBlurComplete:u,setShowAltText:v,sizesInput:w,onLoad:x,onError:y,...z},A)=>{let B=(0,g.useCallback)(a=>{a&&(y&&(a.src=a.src),a.complete&&q(a,l,s,t,u,n,w))},[a,l,s,t,u,y,n,w]),C=(0,o.useMergedRef)(A,B);return(0,f.jsx)("img",{...z,...r(k),loading:m,width:e,height:d,decoding:h,"data-nimg":p?"fill":"1",className:i,style:j,sizes:c,srcSet:b,src:a,ref:C,onLoad:a=>{q(a.currentTarget,l,s,t,u,n,w)},onError:a=>{v(!0),"empty"!==l&&u(!0),y&&y(a)}})});function t({isAppRouter:a,imgAttributes:b}){let c={as:"image",imageSrcSet:b.srcSet,imageSizes:b.sizes,crossOrigin:b.crossOrigin,referrerPolicy:b.referrerPolicy,...r(b.fetchPriority)};return a&&h.default.preload?(h.default.preload(b.src,c),null):(0,f.jsx)(i.default,{children:(0,f.jsx)("link",{rel:"preload",href:b.srcSet?void 0:b.src,...c},"__nimg-"+b.src+b.srcSet+b.sizes)})}let u=(0,g.forwardRef)((a,b)=>{let c=(0,g.useContext)(m.RouterContext),d=(0,g.useContext)(l.ImageConfigContext),e=(0,g.useMemo)(()=>{let a=p||d||k.imageConfigDefault,b=[...a.deviceSizes,...a.imageSizes].sort((a,b)=>a-b),c=a.deviceSizes.sort((a,b)=>a-b),e=a.qualities?.sort((a,b)=>a-b);return{...a,allSizes:b,deviceSizes:c,qualities:e,localPatterns:d?.localPatterns}},[d]),{onLoad:h,onLoadingComplete:i}=a,o=(0,g.useRef)(h);(0,g.useEffect)(()=>{o.current=h},[h]);let q=(0,g.useRef)(i);(0,g.useEffect)(()=>{q.current=i},[i]);let[r,u]=(0,g.useState)(!1),[v,w]=(0,g.useState)(!1),{props:x,meta:y}=(0,j.getImgProps)(a,{defaultLoader:n.default,imgConf:e,blurComplete:r,showAltText:v});return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(s,{...x,unoptimized:y.unoptimized,placeholder:y.placeholder,fill:y.fill,onLoadRef:o,onLoadingCompleteRef:q,setBlurComplete:u,setShowAltText:w,sizesInput:a.sizes,ref:b}),y.preload?(0,f.jsx)(t,{isAppRouter:!c,imgAttributes:x}):null]})});("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)}];
5
+
6
+ //# sourceMappingURL=_0jxmm9h._.js.map