purplemux 0.1.21 → 0.2.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 (428) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +77 -77
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/routes-manifest.json +13 -7
  6. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00glsnv._.js +3 -0
  7. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__05bsxq0._.js → [root-of-the-server]__00yjayf._.js} +2 -2
  8. package/.next/standalone/.next/server/chunks/[root-of-the-server]__01.~37j._.js +3 -0
  9. package/.next/standalone/.next/server/chunks/[root-of-the-server]__03l15.f._.js +3 -0
  10. package/.next/standalone/.next/server/chunks/[root-of-the-server]__045vzzi._.js +1 -1
  11. package/.next/standalone/.next/server/chunks/[root-of-the-server]__04cr_m8._.js +3 -0
  12. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0ff8o47._.js → [root-of-the-server]__04o.cbq._.js} +2 -2
  13. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05ij_ys._.js +42 -0
  14. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07gfnob._.js +3 -0
  15. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07xijrd._.js +3 -0
  16. package/.next/standalone/.next/server/chunks/[root-of-the-server]__09gkm_6._.js +3 -0
  17. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_.po82._.js +3 -0
  18. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0auutl5._.js +5 -0
  19. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cjfc~l._.js +3 -0
  20. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l~_wd0._.js +1 -1
  21. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0m4quth._.js → [root-of-the-server]__0n61.a8._.js} +2 -2
  22. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ovn6yp._.js +3 -0
  23. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qvunc5._.js +3 -0
  24. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t1c-6w._.js +3 -0
  25. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__09w77m2._.js → [root-of-the-server]__0t7wqt6._.js} +2 -2
  26. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vi8p6v._.js +3 -0
  27. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w3m-oz._.js +3 -0
  28. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11j9~6h._.js +1 -1
  29. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0xn_0ft._.js → [root-of-the-server]__12ksl6n._.js} +3 -3
  30. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12nr~pb._.js +3 -0
  31. package/.next/standalone/.next/server/chunks/_0e8e4zn._.js +1 -1
  32. package/.next/standalone/.next/server/chunks/_0isokfh._.js +1 -1
  33. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_00-t8sq.js +3 -0
  34. package/.next/standalone/.next/server/chunks/src_lib_136edwc._.js +3 -0
  35. package/.next/standalone/.next/server/chunks/src_lib_layout-store_ts_0fanx7c._.js +1 -1
  36. package/.next/standalone/.next/server/chunks/src_lib_session-parser_ts_0~rhicw._.js +1 -1
  37. package/.next/standalone/.next/server/chunks/src_lib_status-manager_ts_003hlhy._.js +13 -1
  38. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0au.ssp._.js +3 -0
  39. package/.next/standalone/.next/server/chunks/ssr/{_0_mc3i2._.js → _00ehnd~._.js} +2 -2
  40. package/.next/standalone/.next/server/chunks/ssr/{_0qejycp._.js → _00rrt71._.js} +1 -1
  41. package/.next/standalone/.next/server/chunks/ssr/_06yggfn._.js +1 -1
  42. package/.next/standalone/.next/server/chunks/ssr/{_0kjoxb9._.js → _08h9ynz._.js} +2 -2
  43. package/.next/standalone/.next/server/chunks/ssr/_08ytq3p._.js +1 -1
  44. package/.next/standalone/.next/server/chunks/ssr/{_0h~fc23._.js → _0_c~3id._.js} +2 -2
  45. package/.next/standalone/.next/server/chunks/ssr/{_0-xx2s1._.js → _0_owbnq._.js} +2 -2
  46. package/.next/standalone/.next/server/chunks/ssr/_0al4.z9._.js +1 -1
  47. package/.next/standalone/.next/server/chunks/ssr/_0b~zgl1._.js +1 -1
  48. package/.next/standalone/.next/server/chunks/ssr/{_0quk21n._.js → _0dg4_bi._.js} +2 -2
  49. package/.next/standalone/.next/server/chunks/ssr/{_0qy269j._.js → _0gp1meg._.js} +2 -2
  50. package/.next/standalone/.next/server/chunks/ssr/_0iy5a-w._.js +1 -1
  51. package/.next/standalone/.next/server/chunks/ssr/_0js4l3t._.js +1 -1
  52. package/.next/standalone/.next/server/chunks/ssr/{_0fuovbm._.js → _0lnui2f._.js} +2 -2
  53. package/.next/standalone/.next/server/chunks/ssr/_0nkeoiw._.js +1 -1
  54. package/.next/standalone/.next/server/chunks/ssr/_0qbbxeq._.js +1 -1
  55. package/.next/standalone/.next/server/chunks/ssr/{_06.nllk._.js → _0rxhzwm._.js} +2 -2
  56. package/.next/standalone/.next/server/chunks/ssr/{_0g258pg._.js → _0sfctwm._.js} +2 -2
  57. package/.next/standalone/.next/server/chunks/ssr/{_0c0hpua._.js → _0ulmx3c._.js} +2 -2
  58. package/.next/standalone/.next/server/chunks/ssr/{_0k9ybcl._.js → _0wlh.pc._.js} +2 -2
  59. package/.next/standalone/.next/server/chunks/ssr/{_11wj.a4._.js → _0y5jzd3._.js} +1 -1
  60. package/.next/standalone/.next/server/chunks/ssr/_0z61aq-._.js +3 -0
  61. package/.next/standalone/.next/server/chunks/ssr/{_0lhf6qf._.js → _0~.theb._.js} +2 -2
  62. package/.next/standalone/.next/server/chunks/ssr/{_0si9.17._.js → _11rnj4l._.js} +2 -2
  63. package/.next/standalone/.next/server/chunks/ssr/{messages_127a4ox._.js → messages_046iw4z._.js} +1 -1
  64. package/.next/standalone/.next/server/chunks/ssr/{messages_005j2ko._.js → messages_0zr0cc7._.js} +1 -1
  65. package/.next/standalone/.next/server/chunks/ssr/messages_de_notification_json_[json]_cjs_02k70lx._.js +1 -1
  66. package/.next/standalone/.next/server/chunks/ssr/messages_de_session_json_[json]_cjs_0b-1vpl._.js +1 -1
  67. package/.next/standalone/.next/server/chunks/ssr/messages_de_settings_json_[json]_cjs_0ksu4_w._.js +1 -1
  68. package/.next/standalone/.next/server/chunks/ssr/messages_en_notification_json_[json]_cjs_0jqq879._.js +1 -1
  69. package/.next/standalone/.next/server/chunks/ssr/messages_en_session_json_[json]_cjs_0jaymfk._.js +1 -1
  70. package/.next/standalone/.next/server/chunks/ssr/messages_en_settings_json_[json]_cjs_0qwl-zt._.js +1 -1
  71. package/.next/standalone/.next/server/chunks/ssr/messages_es_notification_json_[json]_cjs_0q.i2xj._.js +1 -1
  72. package/.next/standalone/.next/server/chunks/ssr/messages_es_session_json_[json]_cjs_0jy1144._.js +1 -1
  73. package/.next/standalone/.next/server/chunks/ssr/messages_es_settings_json_[json]_cjs_0ce_kv6._.js +1 -1
  74. package/.next/standalone/.next/server/chunks/ssr/messages_fr_notification_json_[json]_cjs_0muj65q._.js +1 -1
  75. package/.next/standalone/.next/server/chunks/ssr/messages_fr_session_json_[json]_cjs_0rz0g.c._.js +1 -1
  76. package/.next/standalone/.next/server/chunks/ssr/messages_fr_settings_json_[json]_cjs_0h_6lba._.js +1 -1
  77. package/.next/standalone/.next/server/chunks/ssr/messages_ja_notification_json_[json]_cjs_03v~p7j._.js +1 -1
  78. package/.next/standalone/.next/server/chunks/ssr/messages_ja_session_json_[json]_cjs_0cos-uy._.js +1 -1
  79. package/.next/standalone/.next/server/chunks/ssr/messages_ja_settings_json_[json]_cjs_0pg~fls._.js +1 -1
  80. package/.next/standalone/.next/server/chunks/ssr/messages_ko_notification_json_[json]_cjs_0gx~jkl._.js +1 -1
  81. package/.next/standalone/.next/server/chunks/ssr/messages_ko_session_json_[json]_cjs_0x4saic._.js +1 -1
  82. package/.next/standalone/.next/server/chunks/ssr/messages_ko_settings_json_[json]_cjs_07xpfc8._.js +1 -1
  83. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_notification_json_[json]_cjs_02mo05m._.js +1 -1
  84. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_session_json_[json]_cjs_0-x8ftl._.js +1 -1
  85. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_settings_json_[json]_cjs_0frspzp._.js +1 -1
  86. package/.next/standalone/.next/server/chunks/ssr/messages_ru_notification_json_[json]_cjs_03crije._.js +1 -1
  87. package/.next/standalone/.next/server/chunks/ssr/messages_ru_session_json_[json]_cjs_0~2-kve._.js +1 -1
  88. package/.next/standalone/.next/server/chunks/ssr/messages_ru_settings_json_[json]_cjs_08ex00.._.js +1 -1
  89. package/.next/standalone/.next/server/chunks/ssr/messages_tr_notification_json_[json]_cjs_0g.576s._.js +1 -1
  90. package/.next/standalone/.next/server/chunks/ssr/messages_tr_session_json_[json]_cjs_0zsvt_4._.js +1 -1
  91. package/.next/standalone/.next/server/chunks/ssr/messages_tr_settings_json_[json]_cjs_0piu0da._.js +1 -1
  92. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_notification_json_[json]_cjs_07v9on4._.js +1 -1
  93. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_session_json_[json]_cjs_134xza~._.js +1 -1
  94. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_settings_json_[json]_cjs_0uazwgy._.js +1 -1
  95. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_notification_json_[json]_cjs_0.ktzjy._.js +1 -1
  96. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_session_json_[json]_cjs_0mv_~-8._.js +1 -1
  97. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_settings_json_[json]_cjs_09u0c5l._.js +1 -1
  98. package/.next/standalone/.next/server/chunks/ssr/{node_modules_0cndrls._.js → node_modules_0kc8lix._.js} +2 -2
  99. package/.next/standalone/.next/server/chunks/ssr/src_05g_qd3._.js +1 -1
  100. package/.next/standalone/.next/server/chunks/ssr/{src_components_10v_9d0._.js → src_components_0cflin8._.js} +1 -1
  101. package/.next/standalone/.next/server/chunks/ssr/{src_components_04vn0dm._.js → src_components_0g.s~e7._.js} +1 -1
  102. package/.next/standalone/.next/server/chunks/ssr/{src_components_0gsv3ly._.js → src_components_0jrj_vu._.js} +1 -1
  103. package/.next/standalone/.next/server/chunks/ssr/{src_components_0iq~ool._.js → src_components_0rs9yzr._.js} +1 -1
  104. package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
  105. package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
  106. package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-browser-title_ts_0bw6.cb._.js +1 -1
  107. package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-workspace-store_ts_0h40e5c._.js +1 -1
  108. package/.next/standalone/.next/server/chunks/ssr/src_lib_message-namespaces_ts_0wjpvu5._.js +3 -0
  109. package/.next/standalone/.next/server/middleware-build-manifest.js +77 -77
  110. package/.next/standalone/.next/server/pages/_app/build-manifest.json +7 -7
  111. package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
  112. package/.next/standalone/.next/server/pages/_app.js +4 -4
  113. package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
  114. package/.next/standalone/.next/server/pages/_error/build-manifest.json +2 -2
  115. package/.next/standalone/.next/server/pages/_error/client-build-manifest.json +1 -1
  116. package/.next/standalone/.next/server/pages/_error.js +2 -2
  117. package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/pages/api/check-claude.js +1 -1
  119. package/.next/standalone/.next/server/pages/api/check-claude.js.nft.json +1 -1
  120. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js +1 -1
  121. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js.nft.json +1 -1
  122. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js +1 -1
  123. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js +1 -1
  125. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js +1 -1
  127. package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js.nft.json +1 -1
  128. package/.next/standalone/.next/server/pages/api/cli/tabs.js +1 -1
  129. package/.next/standalone/.next/server/pages/api/cli/tabs.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/pages/api/cli/workspaces.js +1 -1
  131. package/.next/standalone/.next/server/pages/api/cli/workspaces.js.nft.json +1 -1
  132. package/.next/standalone/.next/server/pages/api/git/branch.js +1 -1
  133. package/.next/standalone/.next/server/pages/api/git/branch.js.nft.json +1 -1
  134. package/.next/standalone/.next/server/pages/api/git/status.js +1 -1
  135. package/.next/standalone/.next/server/pages/api/git/status.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/pages/api/layout/cwd.js +1 -1
  137. package/.next/standalone/.next/server/pages/api/layout/cwd.js.nft.json +1 -1
  138. package/.next/standalone/.next/server/pages/api/layout/diff.js +1 -1
  139. package/.next/standalone/.next/server/pages/api/layout/diff.js.nft.json +1 -1
  140. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js +1 -1
  141. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +2 -2
  143. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js.nft.json +1 -1
  144. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js +1 -1
  145. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js.nft.json +1 -1
  146. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +4 -4
  147. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js +1 -1
  149. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js.nft.json +1 -1
  150. package/.next/standalone/.next/server/pages/api/layout/pane.js +1 -1
  151. package/.next/standalone/.next/server/pages/api/layout/pane.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/pages/api/layout.js +1 -1
  153. package/.next/standalone/.next/server/pages/api/layout.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/pages/api/message-history.js +1 -1
  155. package/.next/standalone/.next/server/pages/api/message-history.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/pages/api/push/vapid-key.js +1 -1
  157. package/.next/standalone/.next/server/pages/api/push/vapid-key.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js +1 -1
  159. package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js +1 -1
  161. package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js +1 -1
  163. package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/pages/api/stats/projects.js +1 -1
  165. package/.next/standalone/.next/server/pages/api/stats/projects.js.nft.json +1 -1
  166. package/.next/standalone/.next/server/pages/api/stats/sessions.js +1 -1
  167. package/.next/standalone/.next/server/pages/api/stats/sessions.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/pages/api/stats/uptime.js +1 -1
  169. package/.next/standalone/.next/server/pages/api/stats/uptime.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/pages/api/status/hook.js +4 -4
  171. package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
  172. package/.next/standalone/.next/server/pages/api/status/statusline.js +9 -1
  173. package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
  174. package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js +1 -1
  175. package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/pages/api/timeline/entries.js +1 -1
  177. package/.next/standalone/.next/server/pages/api/timeline/entries.js.nft.json +1 -1
  178. package/.next/standalone/.next/server/pages/api/timeline/message-counts/pages-manifest.json +3 -0
  179. package/.next/standalone/.next/server/pages/api/timeline/message-counts.js +5 -0
  180. package/.next/standalone/.next/server/pages/api/timeline/message-counts.js.map +5 -0
  181. package/.next/standalone/.next/server/pages/api/timeline/message-counts.js.nft.json +1 -0
  182. package/.next/standalone/.next/server/pages/api/timeline/sessions.js +1 -1
  183. package/.next/standalone/.next/server/pages/api/timeline/sessions.js.nft.json +1 -1
  184. package/.next/standalone/.next/server/pages/api/tmux/capture.js +1 -1
  185. package/.next/standalone/.next/server/pages/api/tmux/capture.js.nft.json +1 -1
  186. package/.next/standalone/.next/server/pages/api/tmux/info.js +1 -1
  187. package/.next/standalone/.next/server/pages/api/tmux/info.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/pages/api/tmux/permission-options.js +1 -1
  189. package/.next/standalone/.next/server/pages/api/tmux/permission-options.js.nft.json +1 -1
  190. package/.next/standalone/.next/server/pages/api/tmux/plan-options.js +1 -1
  191. package/.next/standalone/.next/server/pages/api/tmux/plan-options.js.nft.json +1 -1
  192. package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +5 -5
  193. package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js.nft.json +1 -1
  194. package/.next/standalone/.next/server/pages/api/tmux/reset.js +3 -3
  195. package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
  196. package/.next/standalone/.next/server/pages/api/tmux/send-input.js +1 -1
  197. package/.next/standalone/.next/server/pages/api/tmux/send-input.js.nft.json +1 -1
  198. package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js +1 -1
  199. package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js.nft.json +1 -1
  200. package/.next/standalone/.next/server/pages/api/workspace/active.js +1 -1
  201. package/.next/standalone/.next/server/pages/api/workspace/active.js.nft.json +1 -1
  202. package/.next/standalone/.next/server/pages/api/workspace/reorder.js +1 -1
  203. package/.next/standalone/.next/server/pages/api/workspace/reorder.js.nft.json +1 -1
  204. package/.next/standalone/.next/server/pages/api/workspace/validate.js +1 -1
  205. package/.next/standalone/.next/server/pages/api/workspace/validate.js.nft.json +1 -1
  206. package/.next/standalone/.next/server/pages/api/workspace.js +4 -4
  207. package/.next/standalone/.next/server/pages/api/workspace.js.nft.json +1 -1
  208. package/.next/standalone/.next/server/pages/de/404.html +1 -1
  209. package/.next/standalone/.next/server/pages/de/500.html +1 -1
  210. package/.next/standalone/.next/server/pages/en/404.html +1 -1
  211. package/.next/standalone/.next/server/pages/en/500.html +1 -1
  212. package/.next/standalone/.next/server/pages/es/404.html +1 -1
  213. package/.next/standalone/.next/server/pages/es/500.html +1 -1
  214. package/.next/standalone/.next/server/pages/fr/404.html +1 -1
  215. package/.next/standalone/.next/server/pages/fr/500.html +1 -1
  216. package/.next/standalone/.next/server/pages/index/build-manifest.json +12 -12
  217. package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
  218. package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +6 -6
  219. package/.next/standalone/.next/server/pages/index.js +13 -13
  220. package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
  221. package/.next/standalone/.next/server/pages/ja/404.html +1 -1
  222. package/.next/standalone/.next/server/pages/ja/500.html +1 -1
  223. package/.next/standalone/.next/server/pages/ko/404.html +1 -1
  224. package/.next/standalone/.next/server/pages/ko/500.html +1 -1
  225. package/.next/standalone/.next/server/pages/login/build-manifest.json +10 -10
  226. package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
  227. package/.next/standalone/.next/server/pages/login.js +2 -2
  228. package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
  229. package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
  230. package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
  231. package/.next/standalone/.next/server/pages/reports/build-manifest.json +16 -16
  232. package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
  233. package/.next/standalone/.next/server/pages/reports.js +9 -9
  234. package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
  235. package/.next/standalone/.next/server/pages/reset/build-manifest.json +2 -2
  236. package/.next/standalone/.next/server/pages/reset/client-build-manifest.json +1 -1
  237. package/.next/standalone/.next/server/pages/reset.js +3 -3
  238. package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
  239. package/.next/standalone/.next/server/pages/ru/404.html +1 -1
  240. package/.next/standalone/.next/server/pages/ru/500.html +1 -1
  241. package/.next/standalone/.next/server/pages/stats/build-manifest.json +13 -13
  242. package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
  243. package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +1 -1
  244. package/.next/standalone/.next/server/pages/stats.js +6 -6
  245. package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
  246. package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +2 -2
  247. package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
  248. package/.next/standalone/.next/server/pages/tools-required.js +3 -3
  249. package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
  250. package/.next/standalone/.next/server/pages/tr/404.html +1 -1
  251. package/.next/standalone/.next/server/pages/tr/500.html +1 -1
  252. package/.next/standalone/.next/server/pages/webview/build-manifest.json +10 -10
  253. package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
  254. package/.next/standalone/.next/server/pages/webview.js +10 -10
  255. package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
  256. package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
  257. package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
  258. package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
  259. package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
  260. package/.next/standalone/.next/server/pages-manifest.json +1 -0
  261. package/.next/standalone/.next/static/{dcByQy16pcz2rzj9snwtK → WXAyTQ0PHZnxXXCwEZpit}/_buildManifest.js +9 -8
  262. package/.next/standalone/.next/static/chunks/0-97ruc25d2lz.js +1 -0
  263. package/.next/standalone/.next/static/chunks/{17e9_m-u1zvfx.js → 0-xrsiia9hc.c.js} +1 -1
  264. package/.next/standalone/.next/static/chunks/{135rnnu.-sh80.js → 0.ecwkadp7-hq.js} +1 -1
  265. package/.next/standalone/.next/static/chunks/00nx1s6rpu537.js +1 -0
  266. package/.next/standalone/.next/static/chunks/{0nin7ftvq8x5c.js → 00ziyk306y55s.js} +1 -1
  267. package/.next/standalone/.next/static/chunks/{0kebzqtn4norb.js → 01-fb9rb-21.a.js} +1 -1
  268. package/.next/standalone/.next/static/chunks/{0dthloew7zc8k.js → 010m3dplwy4n6.js} +16 -16
  269. package/.next/standalone/.next/static/chunks/{0_7qn_xpf-6l~.js → 02mfn213kze9c.js} +2 -2
  270. package/.next/standalone/.next/static/chunks/02r-a1_lz7fuk.js +1 -0
  271. package/.next/standalone/.next/static/chunks/04bbxzycy0y90.js +1 -0
  272. package/.next/standalone/.next/static/chunks/{0y--b123-dayk.js → 04cl8pvql07vz.js} +1 -1
  273. package/.next/standalone/.next/static/chunks/{15wkoi26~8omr.js → 04f25y8yc8j00.js} +1 -1
  274. package/.next/standalone/.next/static/chunks/{02.xbkqbezb~v.js → 04uzwc8c9u49~.js} +1 -1
  275. package/.next/standalone/.next/static/chunks/05oh32ya2uzfq.js +1 -0
  276. package/.next/standalone/.next/static/chunks/06e51nokt~dtt.js +1 -0
  277. package/.next/standalone/.next/static/chunks/06ypydsl._u~2.js +5 -0
  278. package/.next/standalone/.next/static/chunks/07-xm--o034du.js +1 -0
  279. package/.next/standalone/.next/static/chunks/071neb1eikeoh.js +1 -0
  280. package/.next/standalone/.next/static/chunks/07i6~xrmgspp8.js +1 -0
  281. package/.next/standalone/.next/static/chunks/{0i7zwsw_~llk0.js → 07v3udp2qhc02.js} +1 -1
  282. package/.next/standalone/.next/static/chunks/{0kox55ju9c.e4.js → 088o~nd5em_1d.js} +1 -1
  283. package/.next/standalone/.next/static/chunks/{10_1w.i.mluxp.js → 08xz_z9u4ex9t.js} +1 -1
  284. package/.next/standalone/.next/static/chunks/{02119z8xemosp.js → 08yjqhf82rx~h.js} +1 -1
  285. package/.next/standalone/.next/static/chunks/095e2xf3z6x3g.js +23 -0
  286. package/.next/standalone/.next/static/chunks/{040hwmh16ihpj.js → 09agwg~-xbxbs.js} +1 -1
  287. package/.next/standalone/.next/static/chunks/09tinkgkd8br_.js +1 -0
  288. package/.next/standalone/.next/static/chunks/09vjzvj4~rwbf.js +1 -0
  289. package/.next/standalone/.next/static/chunks/{0puhant9cy0xw.js → 0__ve3txz-02p.js} +1 -1
  290. package/.next/standalone/.next/static/chunks/0a1hi9y0lwv3j.js +1 -0
  291. package/.next/standalone/.next/static/chunks/{0fzb0m-2k2x14.js → 0bzbaprexb9od.js} +1 -1
  292. package/.next/standalone/.next/static/chunks/{0ggsfsmm~hj5t.js → 0cfpdp0_-.4aj.js} +1 -1
  293. package/.next/standalone/.next/static/chunks/0chjvj73yfmoj.js +1 -0
  294. package/.next/standalone/.next/static/chunks/{0yi.kp2rt4-nc.js → 0ea-k_kbq5gi1.js} +1 -1
  295. package/.next/standalone/.next/static/chunks/{082eokcz_e-4q.js → 0f81tdf_8utww.js} +1 -1
  296. package/.next/standalone/.next/static/chunks/{14ajlpt1s6ueh.js → 0ff6a07hvp4pu.js} +2 -2
  297. package/.next/standalone/.next/static/chunks/{105.cpxealiud.js → 0fotmrplo6yc7.js} +1 -1
  298. package/.next/standalone/.next/static/chunks/{0h_vfy~qxk1_6.js → 0h-7ntqpip4oi.js} +1 -1
  299. package/.next/standalone/.next/static/chunks/{0wvyw8fxpnmre.js → 0h~_fdj60t_~l.js} +1 -1
  300. package/.next/standalone/.next/static/chunks/{04_s.sj1oagqr.js → 0i2uqmry6cyl_.js} +1 -1
  301. package/.next/standalone/.next/static/chunks/0if5fmp94~nc2.js +12 -0
  302. package/.next/standalone/.next/static/chunks/{1235zq5em7nh2.js → 0iw7xjsfo1v-u.js} +10 -10
  303. package/.next/standalone/.next/static/chunks/0jxk8j~j30thp.js +1 -0
  304. package/.next/standalone/.next/static/chunks/{0_eof.53ko6d_.js → 0lz-p_awksh5e.js} +1 -1
  305. package/.next/standalone/.next/static/chunks/0m_amua611xl0.js +5 -0
  306. package/.next/standalone/.next/static/chunks/0nyar-7g9rya6.js +1 -0
  307. package/.next/standalone/.next/static/chunks/0o6esya.vhm1..js +1 -0
  308. package/.next/standalone/.next/static/chunks/0oxlivdn8c89b.js +1 -0
  309. package/.next/standalone/.next/static/chunks/{0iiahbpxxksju.js → 0p1vmcv-mlsg5.js} +1 -1
  310. package/.next/standalone/.next/static/chunks/{14067kbmixmm6.js → 0pw-284q1gfk3.js} +1 -1
  311. package/.next/standalone/.next/static/chunks/{0turlr93lvkg8.js → 0t0-4sn-nqqld.js} +1 -1
  312. package/.next/standalone/.next/static/chunks/{09jl7_l-yth-3.js → 0t76mt4_ijxw7.js} +1 -1
  313. package/.next/standalone/.next/static/chunks/{0_nr91n2-npr6.js → 0u-1zto-umjh9.js} +1 -1
  314. package/.next/standalone/.next/static/chunks/{0x4khblf0c7-p.js → 0u9~wuf2zbs5z.js} +1 -1
  315. package/.next/standalone/.next/static/chunks/{0krb2wvo2_ipb.js → 0unvbz84l4g9h.js} +1 -1
  316. package/.next/standalone/.next/static/chunks/{12up4kbv36k4r.js → 0w52yh2srwcs0.js} +2 -2
  317. package/.next/standalone/.next/static/chunks/{0ml0ppx6kwe2_.js → 0w9~wt6~_cxhf.js} +1 -1
  318. package/.next/standalone/.next/static/chunks/0wp13r5su.j3e.js +1 -0
  319. package/.next/standalone/.next/static/chunks/{0e~.6y_x93o06.js → 0y3fmkya..f_6.js} +13 -13
  320. package/.next/standalone/.next/static/chunks/0~ei.a78nuwqe.js +1 -0
  321. package/.next/standalone/.next/static/chunks/{0hqhf5soi_25r.js → 0~lnp45fxxtgz.js} +1 -1
  322. package/.next/standalone/.next/static/chunks/0~nlz9.lltzrz.js +1 -0
  323. package/.next/standalone/.next/static/chunks/10bvbbw1062os.js +1 -0
  324. package/.next/standalone/.next/static/chunks/{01sxhicgu6p69.js → 11ess6mn2988z.js} +10 -10
  325. package/.next/standalone/.next/static/chunks/11gch78bg_qsn.js +1 -0
  326. package/.next/standalone/.next/static/chunks/{0zzlz_qu90xvc.js → 11nk1lwom62oe.js} +1 -1
  327. package/.next/standalone/.next/static/chunks/{0sj1hijbxwqzi.js → 131tx--pi8.tm.js} +1 -1
  328. package/.next/standalone/.next/static/chunks/13zzmkwag6vsm.css +1 -0
  329. package/.next/standalone/.next/static/chunks/13~7v30_nnqks.js +1 -0
  330. package/.next/standalone/.next/static/chunks/{0arxgyek93av0.js → 17deooyefr~9o.js} +1 -1
  331. package/.next/standalone/.next/static/chunks/{0jhs9_arn872p.js → 17e2iymrk7eoa.js} +1 -1
  332. package/.next/standalone/.next/static/chunks/{0kima6zc7cl2p.js → 17et6y09q052u.js} +1 -1
  333. package/.next/standalone/.next/static/chunks/17jcucuef_33-.js +1 -0
  334. package/.next/standalone/.next/static/chunks/{turbopack-11cbtg95iwob2.js → turbopack-0-itu0o9y_vq8.js} +1 -1
  335. package/.next/standalone/.next/static/chunks/{turbopack-0t_pmdbcbax~k.js → turbopack-0.28.d-q12n3p.js} +1 -1
  336. package/.next/standalone/.next/static/chunks/{turbopack-0tl7oxj3760qz.js → turbopack-0.4ipr_kch~.s.js} +1 -1
  337. package/.next/standalone/.next/static/chunks/{turbopack-02re16zyko_-d.js → turbopack-0g80nrinbfgtk.js} +1 -1
  338. package/.next/standalone/.next/static/chunks/{turbopack-03ch5ephon-wk.js → turbopack-0h0~tr4tgq3aa.js} +1 -1
  339. package/.next/standalone/.next/static/chunks/{turbopack-0k.5aa0_xv2hq.js → turbopack-0hwi_g-tegs_u.js} +1 -1
  340. package/.next/standalone/.next/static/chunks/{turbopack-0au9jjcv_8-gl.js → turbopack-0np.oib7-.1fp.js} +1 -1
  341. package/.next/standalone/.next/static/chunks/{turbopack-02yx2w1m.5ub9.js → turbopack-0qmx66h203l93.js} +1 -1
  342. package/.next/standalone/.next/static/chunks/{turbopack-0vqdj~g~ggw3x.js → turbopack-11utvoktq4lmr.js} +1 -1
  343. package/.next/standalone/messages/de/notification.json +3 -1
  344. package/.next/standalone/messages/de/session.json +5 -2
  345. package/.next/standalone/messages/de/settings.json +22 -1
  346. package/.next/standalone/messages/en/notification.json +3 -1
  347. package/.next/standalone/messages/en/session.json +5 -2
  348. package/.next/standalone/messages/en/settings.json +20 -1
  349. package/.next/standalone/messages/es/notification.json +3 -1
  350. package/.next/standalone/messages/es/session.json +5 -2
  351. package/.next/standalone/messages/es/settings.json +22 -1
  352. package/.next/standalone/messages/fr/notification.json +3 -1
  353. package/.next/standalone/messages/fr/session.json +5 -2
  354. package/.next/standalone/messages/fr/settings.json +22 -1
  355. package/.next/standalone/messages/ja/notification.json +3 -1
  356. package/.next/standalone/messages/ja/session.json +5 -2
  357. package/.next/standalone/messages/ja/settings.json +22 -1
  358. package/.next/standalone/messages/ko/notification.json +3 -1
  359. package/.next/standalone/messages/ko/session.json +5 -2
  360. package/.next/standalone/messages/ko/settings.json +20 -1
  361. package/.next/standalone/messages/pt-BR/notification.json +3 -1
  362. package/.next/standalone/messages/pt-BR/session.json +5 -2
  363. package/.next/standalone/messages/pt-BR/settings.json +22 -1
  364. package/.next/standalone/messages/ru/notification.json +3 -1
  365. package/.next/standalone/messages/ru/session.json +5 -2
  366. package/.next/standalone/messages/ru/settings.json +22 -1
  367. package/.next/standalone/messages/tr/notification.json +3 -1
  368. package/.next/standalone/messages/tr/session.json +5 -2
  369. package/.next/standalone/messages/tr/settings.json +22 -1
  370. package/.next/standalone/messages/zh-CN/notification.json +3 -1
  371. package/.next/standalone/messages/zh-CN/session.json +5 -2
  372. package/.next/standalone/messages/zh-CN/settings.json +22 -1
  373. package/.next/standalone/messages/zh-TW/notification.json +3 -1
  374. package/.next/standalone/messages/zh-TW/session.json +5 -2
  375. package/.next/standalone/messages/zh-TW/settings.json +22 -1
  376. package/.next/standalone/package.json +4 -5
  377. package/.next/standalone/server.js +1 -1
  378. package/dist/server.js +219 -244
  379. package/package.json +4 -5
  380. package/.next/standalone/.next/server/chunks/[root-of-the-server]__019s3sg._.js +0 -15
  381. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02d5mfa._.js +0 -3
  382. package/.next/standalone/.next/server/chunks/[root-of-the-server]__050uepg._.js +0 -3
  383. package/.next/standalone/.next/server/chunks/[root-of-the-server]__093j355._.js +0 -3
  384. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cy9s8s._.js +0 -3
  385. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dn3vc8._.js +0 -5
  386. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g99747._.js +0 -3
  387. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ge7g~x._.js +0 -3
  388. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0iqf2xr._.js +0 -15
  389. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ky2xd.._.js +0 -3
  390. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l806ne._.js +0 -3
  391. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mm5n3z._.js +0 -15
  392. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0psi612._.js +0 -3
  393. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qtw~r6._.js +0 -3
  394. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ysyw3z._.js +0 -3
  395. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0~7f-os._.js +0 -3
  396. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10b7n-k._.js +0 -3
  397. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0-e2yqy._.js +0 -3
  398. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0vwkkwh._.js +0 -3
  399. package/.next/standalone/.next/server/chunks/ssr/_0mu2snc._.js +0 -3
  400. package/.next/standalone/.next/static/chunks/0.me5n9dvrgga.js +0 -1
  401. package/.next/standalone/.next/static/chunks/04u8dbn0ogxqm.js +0 -5
  402. package/.next/standalone/.next/static/chunks/0617badw.sq7c.js +0 -1
  403. package/.next/standalone/.next/static/chunks/06ik0y0xz_pxd.js +0 -5
  404. package/.next/standalone/.next/static/chunks/06~0v3h-9qr-b.js +0 -1
  405. package/.next/standalone/.next/static/chunks/0_iwf7xd96dhg.js +0 -1
  406. package/.next/standalone/.next/static/chunks/0b.80wy8lilvw.js +0 -1
  407. package/.next/standalone/.next/static/chunks/0c9nugbfmzaq4.js +0 -23
  408. package/.next/standalone/.next/static/chunks/0da0otp~vxk80.js +0 -1
  409. package/.next/standalone/.next/static/chunks/0diujbo1qkcle.css +0 -1
  410. package/.next/standalone/.next/static/chunks/0ep6reedai0y6.js +0 -1
  411. package/.next/standalone/.next/static/chunks/0f6dlhth6ll0c.js +0 -12
  412. package/.next/standalone/.next/static/chunks/0j.bb896cs98k.js +0 -1
  413. package/.next/standalone/.next/static/chunks/0j630d8~~4rbz.js +0 -1
  414. package/.next/standalone/.next/static/chunks/0k7kp5g9etss9.js +0 -1
  415. package/.next/standalone/.next/static/chunks/0ng68zj-fjm.w.js +0 -1
  416. package/.next/standalone/.next/static/chunks/0nsq-sayv38ks.js +0 -1
  417. package/.next/standalone/.next/static/chunks/0nvalz7iwy6qc.js +0 -1
  418. package/.next/standalone/.next/static/chunks/0rr7vbxqscvhw.js +0 -1
  419. package/.next/standalone/.next/static/chunks/0s66~z6yys6zz.js +0 -1
  420. package/.next/standalone/.next/static/chunks/0s8imclb5deef.js +0 -1
  421. package/.next/standalone/.next/static/chunks/0u7flh--27u75.js +0 -1
  422. package/.next/standalone/.next/static/chunks/0vrlsk_eqnj7q.js +0 -1
  423. package/.next/standalone/.next/static/chunks/0vw93vbkgsb1a.js +0 -1
  424. package/.next/standalone/.next/static/chunks/12i5z~h-3ys7k.js +0 -1
  425. package/.next/standalone/.next/static/chunks/171khl108g-m8.js +0 -1
  426. package/.next/standalone/.next/static/chunks/17fzeqm4m_x67.js +0 -1
  427. /package/.next/standalone/.next/static/{dcByQy16pcz2rzj9snwtK → WXAyTQ0PHZnxXXCwEZpit}/_clientMiddlewareManifest.js +0 -0
  428. /package/.next/standalone/.next/static/{dcByQy16pcz2rzj9snwtK → WXAyTQ0PHZnxXXCwEZpit}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[990294,(e,t,a)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",a="minute",n="hour",r="week",i="month",s="quarter",u="year",o="date",c="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(e,t,a){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(a)+e},p="en",f={};f[p]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],a=e%100;return"["+e+(t[(a-20)%10]||t[a]||t[0])+"]"}};var m="$isDayjsObject",y=function(e){return e instanceof g||!(!e||!e[m])},C=function e(t,a,n){var r;if(!t)return p;if("string"==typeof t){var i=t.toLowerCase();f[i]&&(r=i),a&&(f[i]=a,r=i);var s=t.split("-");if(!r&&s.length>1)return e(s[0])}else{var u=t.name;f[u]=t,r=u}return!n&&r&&(p=r),r||!n&&p},v=function(e,t){if(y(e))return e.clone();var a="object"==typeof t?t:{};return a.date=e,a.args=arguments,new g(a)},$={s:h,z:function(e){var t=-e.utcOffset(),a=Math.abs(t);return(t<=0?"+":"-")+h(Math.floor(a/60),2,"0")+":"+h(a%60,2,"0")},m:function e(t,a){if(t.date()<a.date())return-e(a,t);var n=12*(a.year()-t.year())+(a.month()-t.month()),r=t.clone().add(n,i),s=a-r<0,u=t.clone().add(n+(s?-1:1),i);return+(-(n+(a-r)/(s?r-u:u-r))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:i,y:u,w:r,d:"day",D:o,h:n,m:a,s:t,ms:e,Q:s})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};$.l=C,$.i=y,$.w=function(e,t){return v(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var g=function(){function h(e){this.$L=C(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[m]=!0}var p=h.prototype;return p.parse=function(e){this.$d=function(e){var t=e.date,a=e.utc;if(null===t)return new Date(NaN);if($.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(l);if(n){var r=n[2]-1||0,i=(n[7]||"0").substring(0,3);return a?new Date(Date.UTC(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)):new Date(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)}}return new Date(t)}(e),this.init()},p.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},p.$utils=function(){return $},p.isValid=function(){return this.$d.toString()!==c},p.isSame=function(e,t){var a=v(e);return this.startOf(t)<=a&&a<=this.endOf(t)},p.isAfter=function(e,t){return v(e)<this.startOf(t)},p.isBefore=function(e,t){return this.endOf(t)<v(e)},p.$g=function(e,t,a){return $.u(e)?this[t]:this.set(a,e)},p.unix=function(){return Math.floor(this.valueOf()/1e3)},p.valueOf=function(){return this.$d.getTime()},p.startOf=function(e,s){var c=this,l=!!$.u(s)||s,d=$.p(e),h=function(e,t){var a=$.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return l?a:a.endOf("day")},p=function(e,t){return $.w(c.toDate()[e].apply(c.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(t)),c)},f=this.$W,m=this.$M,y=this.$D,C="set"+(this.$u?"UTC":"");switch(d){case u:return l?h(1,0):h(31,11);case i:return l?h(1,m):h(0,m+1);case r:var v=this.$locale().weekStart||0,g=(f<v?f+7:f)-v;return h(l?y-g:y+(6-g),m);case"day":case o:return p(C+"Hours",0);case n:return p(C+"Minutes",1);case a:return p(C+"Seconds",2);case t:return p(C+"Milliseconds",3);default:return this.clone()}},p.endOf=function(e){return this.startOf(e,!1)},p.$set=function(r,s){var c,l=$.p(r),d="set"+(this.$u?"UTC":""),h=((c={}).day=d+"Date",c[o]=d+"Date",c[i]=d+"Month",c[u]=d+"FullYear",c[n]=d+"Hours",c[a]=d+"Minutes",c[t]=d+"Seconds",c[e]=d+"Milliseconds",c)[l],p="day"===l?this.$D+(s-this.$W):s;if(l===i||l===u){var f=this.clone().set(o,1);f.$d[h](p),f.init(),this.$d=f.set(o,Math.min(this.$D,f.daysInMonth())).$d}else h&&this.$d[h](p);return this.init(),this},p.set=function(e,t){return this.clone().$set(e,t)},p.get=function(e){return this[$.p(e)]()},p.add=function(e,s){var o,c=this;e=Number(e);var l=$.p(s),d=function(t){var a=v(c);return $.w(a.date(a.date()+Math.round(t*e)),c)};if(l===i)return this.set(i,this.$M+e);if(l===u)return this.set(u,this.$y+e);if("day"===l)return d(1);if(l===r)return d(7);var h=((o={})[a]=6e4,o[n]=36e5,o[t]=1e3,o)[l]||1,p=this.$d.getTime()+e*h;return $.w(p,this)},p.subtract=function(e,t){return this.add(-1*e,t)},p.format=function(e){var t=this,a=this.$locale();if(!this.isValid())return a.invalidDate||c;var n=e||"YYYY-MM-DDTHH:mm:ssZ",r=$.z(this),i=this.$H,s=this.$m,u=this.$M,o=a.weekdays,l=a.months,h=a.meridiem,p=function(e,a,r,i){return e&&(e[a]||e(t,n))||r[a].slice(0,i)},f=function(e){return $.s(i%12||12,e,"0")},m=h||function(e,t,a){var n=e<12?"AM":"PM";return a?n.toLowerCase():n};return n.replace(d,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return $.s(t.$y,4,"0");case"M":return u+1;case"MM":return $.s(u+1,2,"0");case"MMM":return p(a.monthsShort,u,l,3);case"MMMM":return p(l,u);case"D":return t.$D;case"DD":return $.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return p(a.weekdaysMin,t.$W,o,2);case"ddd":return p(a.weekdaysShort,t.$W,o,3);case"dddd":return o[t.$W];case"H":return String(i);case"HH":return $.s(i,2,"0");case"h":return f(1);case"hh":return f(2);case"a":return m(i,s,!0);case"A":return m(i,s,!1);case"m":return String(s);case"mm":return $.s(s,2,"0");case"s":return String(t.$s);case"ss":return $.s(t.$s,2,"0");case"SSS":return $.s(t.$ms,3,"0");case"Z":return r}return null}(e)||r.replace(":","")})},p.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},p.diff=function(e,o,c){var l,d=this,h=$.p(o),p=v(e),f=(p.utcOffset()-this.utcOffset())*6e4,m=this-p,y=function(){return $.m(d,p)};switch(h){case u:l=y()/12;break;case i:l=y();break;case s:l=y()/3;break;case r:l=(m-f)/6048e5;break;case"day":l=(m-f)/864e5;break;case n:l=m/36e5;break;case a:l=m/6e4;break;case t:l=m/1e3;break;default:l=m}return c?l:$.a(l)},p.daysInMonth=function(){return this.endOf(i).$D},p.$locale=function(){return f[this.$L]},p.locale=function(e,t){if(!e)return this.$L;var a=this.clone(),n=C(e,t,!0);return n&&(a.$L=n),a},p.clone=function(){return $.w(this.$d,this)},p.toDate=function(){return new Date(this.valueOf())},p.toJSON=function(){return this.isValid()?this.toISOString():null},p.toISOString=function(){return this.$d.toISOString()},p.toString=function(){return this.$d.toUTCString()},h}(),b=g.prototype;return v.prototype=b,[["$ms",e],["$s",t],["$m",a],["$H",n],["$W","day"],["$M",i],["$y",u],["$D",o]].forEach(function(e){b[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),v.extend=function(e,t){return e.$i||(e(t,g,v),e.$i=!0),v},v.locale=C,v.isDayjs=y,v.unix=function(e){return v(1e3*e)},v.en=f[p],v.Ls=f,v.p={},v}()},975925,e=>{"use strict";var t=e.i(990294);let a=e=>{let a=new Date;switch(e){case"today":return{start:(0,t.default)().startOf("day").toDate(),end:a};case"7d":return{start:(0,t.default)().subtract(7,"day").startOf("day").toDate(),end:a};case"30d":return{start:(0,t.default)().subtract(30,"day").startOf("day").toDate(),end:a};case"all":return{start:new Date(0),end:a}}};e.s(["isDateStringWithinPeriod",0,(e,n)=>{if("all"===n)return!0;let{start:r,end:i}=a(n),s=(0,t.default)(e).toDate();return s>=r&&s<=i},"isWithinPeriod",0,(e,t)=>{if("all"===t)return!0;let{start:n,end:r}=a(t),i=new Date(e);return i>=n&&i<=r},"parsePeriod",0,e=>"today"===e||"7d"===e||"30d"===e||"all"===e?e:"all"])},180112,e=>{"use strict";var t=e.i(924868),a=e.i(814747),n=e.i(446786),r=e.i(990294),i=e.i(975925);let s={"opus-4-7":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-6":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-5":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-1":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"opus-4":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"sonnet-4-6":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-7":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"haiku-4-5":{input:1,output:5,cacheWrite5m:1.25,cacheWrite1h:2,cacheRead:.1},"haiku-3-5":{input:.8,output:4,cacheWrite5m:1,cacheWrite1h:1.6,cacheRead:.08},"haiku-3":{input:.25,output:1.25,cacheWrite5m:.3,cacheWrite1h:.5,cacheRead:.03},"opus-3":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5}},u={input:30,output:150,cacheWrite5m:37.5,cacheWrite1h:60,cacheRead:3},o=(e,t,a,n,r,i)=>t/1e6*e.input+n/1e6*e.cacheWrite5m+r/1e6*e.cacheWrite1h+i/1e6*e.cacheRead+a/1e6*e.output,c=a.default.join(n.default.homedir(),".claude","stats-cache.json"),l=(e,t,a,n,r,i)=>((e,t,a,n,r,i)=>{let c=((e,t,a,n,r,i,c=!1)=>{let l,d=(l=e.replace(/\[.*?\]$/,"").match(/claude-(\w+-[\d]+(?:-[\d]+)*)(?:-\d{8}|-v\d)?(?:\:\d)?$/))?l[1]:null;if(!d)return null;let h=c&&"opus-4-6"===d?u:s[d];return h?o(h,t,a,n,r,i):null})(e,t,a,n,r,i);if(null!==c)return c;let l=e.toLowerCase();return o(l.includes("opus")?s["opus-4-6"]:l.includes("haiku")?s["haiku-4-5"]:s["sonnet-4-6"],t,a,n,r,i)})(e,t,a,r,i,n),d={version:0,lastComputedDate:"",dailyActivity:[],dailyModelTokens:[],modelUsage:{},totalSessions:0,totalMessages:0,longestSession:{sessionId:"",duration:0,messageCount:0,timestamp:""},firstSessionDate:"",hourCounts:{},dayHourCounts:{},totalSpeculationTimeSavedMs:0},h=e=>"object"!=typeof e||null===e?{}:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Number(t??0)])),p=async()=>{try{var e,a,n;let r=await t.default.readFile(c,"utf-8"),i=JSON.parse(r);return{version:Number(i.version??0),lastComputedDate:String(i.lastComputedDate??""),dailyActivity:(e=i.dailyActivity,Array.isArray(e)?e.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),messageCount:Number(e.messageCount??0),sessionCount:Number(e.sessionCount??0),toolCallCount:Number(e.toolCallCount??0)})):[]),dailyModelTokens:(a=i.dailyModelTokens,Array.isArray(a)?a.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),tokensByModel:"object"==typeof e.tokensByModel&&null!==e.tokensByModel?Object.fromEntries(Object.entries(e.tokensByModel).map(([e,t])=>[e,(e=>{if("number"==typeof e)return{input:e,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0};if("object"==typeof e&&null!==e){let t=Number(e.cacheCreation??0),a=Number(e.cacheCreation1h??0),n=null!=e.cacheCreation5m?Number(e.cacheCreation5m):Math.max(0,t-a);return{input:Number(e.input??0),output:Number(e.output??0),cacheRead:Number(e.cacheRead??0),cacheCreation:t,cacheCreation5m:n,cacheCreation1h:a}}return{input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0}})(t)])):{}})):[]),modelUsage:(e=>{if("object"!=typeof e||null===e)return{};let t={};for(let[a,n]of Object.entries(e)){if("object"!=typeof n||null===n)continue;let e=Number(n.cacheCreationInputTokens??0),r=Number(n.cacheCreation1hInputTokens??0),i=null!=n.cacheCreation5mInputTokens?Number(n.cacheCreation5mInputTokens):Math.max(0,e-r);t[a]={inputTokens:Number(n.inputTokens??0),outputTokens:Number(n.outputTokens??0),cacheReadInputTokens:Number(n.cacheReadInputTokens??0),cacheCreationInputTokens:e,cacheCreation5mInputTokens:i,cacheCreation1hInputTokens:r,webSearchRequests:Number(n.webSearchRequests??0),costUSD:Number(n.costUSD??0),contextWindow:Number(n.contextWindow??0),maxOutputTokens:Number(n.maxOutputTokens??0)}}return t})(i.modelUsage),totalSessions:Number(i.totalSessions??0),totalMessages:Number(i.totalMessages??0),longestSession:(n=i.longestSession,"object"!=typeof n||null===n?{sessionId:"",duration:0,messageCount:0,timestamp:""}:{sessionId:String(n.sessionId??""),duration:Number(n.duration??0),messageCount:Number(n.messageCount??0),timestamp:String(n.timestamp??"")}),firstSessionDate:String(i.firstSessionDate??""),hourCounts:h(i.hourCounts),dayHourCounts:h(i.dayHourCounts),totalSpeculationTimeSavedMs:Number(i.totalSpeculationTimeSavedMs??0)}}catch{return d}},f=(e,t)=>{let a=(e=>{if("all"===e||"today"===e)return null;let t="7d"===e?7:30;return{prevStart:(0,r.default)().subtract(2*t,"day").startOf("day"),prevEnd:(0,r.default)().subtract(t,"day").startOf("day")}})(t);if(!a)return!1;let n=(0,r.default)(e);return(n.isAfter(a.prevStart)||n.isSame(a.prevStart))&&n.isBefore(a.prevEnd)};e.s(["buildOverview",0,(e,t)=>{let a,n,s,u,o=e.dailyActivity.filter(e=>(0,i.isDateStringWithinPeriod)(e.date,t)),c=e.dailyModelTokens.filter(e=>(0,i.isDateStringWithinPeriod)(e.date,t)),d="all"===t?e.totalSessions:o.reduce((e,t)=>e+t.sessionCount,0),h="all"===t?e.totalMessages:o.reduce((e,t)=>e+t.messageCount,0),p=o.reduce((e,t)=>e+t.toolCallCount,0),m=(a=e.dailyActivity,n=t,a.filter(e=>f(e.date,n))),y=m.reduce((e,t)=>e+t.sessionCount,0),C=m.reduce((e,t)=>e+t.messageCount,0),v={};if("all"===t)for(let[t,a]of Object.entries(e.modelUsage))v[t]={input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadInputTokens,cacheCreation:a.cacheCreationInputTokens,cacheCreation5m:a.cacheCreation5mInputTokens,cacheCreation1h:a.cacheCreation1hInputTokens,cost:l(t,a.inputTokens,a.outputTokens,a.cacheReadInputTokens,a.cacheCreation5mInputTokens,a.cacheCreation1hInputTokens)};else{for(let e of c)for(let[t,a]of Object.entries(e.tokensByModel))v[t]||(v[t]={input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0,cost:0}),v[t].input+=a.input,v[t].output+=a.output,v[t].cacheRead+=a.cacheRead,v[t].cacheCreation+=a.cacheCreation,v[t].cacheCreation5m+=a.cacheCreation5m,v[t].cacheCreation1h+=a.cacheCreation1h;for(let[t,a]of Object.entries(v)){let n=e.modelUsage[t];if(!n)continue;let r=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,i=a.input+a.output+a.cacheRead+a.cacheCreation;r>0&&(a.cost=i/r*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}}let $=c.map(e=>{let t=0,a=0,n=0,r=0;for(let i of Object.values(e.tokensByModel))t+=i.input,a+=i.output,n+=i.cacheRead,r+=i.cacheCreation;return{date:e.date,input:t,output:a,cacheRead:n,cacheCreation:r}}),g=(0,r.default)().format("YYYY-MM-DD"),b=(0,r.default)().startOf("month").format("YYYY-MM-DD"),S=e.dailyActivity.find(e=>e.date===g)?.messageCount??0,k=e.dailyActivity.filter(e=>e.date>=b).reduce((e,t)=>e+t.messageCount,0),M=Object.values(v).reduce((e,t)=>e+t.cost,0),T=t=>{let a=0;for(let n of t)for(let[t,r]of Object.entries(n.tokensByModel)){let n=e.modelUsage[t];if(!n)continue;let i=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,s=r.input+r.output+r.cacheRead+r.cacheCreation;i>0&&(a+=s/i*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}return a},D=T(e.dailyModelTokens.filter(e=>e.date===g));return{totalSessions:d,totalMessages:h,previousSessions:y,previousMessages:C,totalToolCalls:p,dailyActivity:o,modelTokens:v,dailyTokens:$,todayMessages:S,thisMonthMessages:k,totalCost:M,todayCost:D,thisMonthCost:T(e.dailyModelTokens.filter(e=>e.date>=b)),previousCost:T((s=e.dailyModelTokens,u=t,s.filter(e=>f(e.date,u)))),hourlyDistribution:e.hourCounts,dayHourDistribution:e.dayHourCounts,firstSessionDate:e.firstSessionDate,lastComputedDate:e.lastComputedDate,computedAt:new Date().toISOString()}},"readStatsCache",0,p],180112)},219839,e=>{"use strict";var t=e.i(926747),a=e.i(190406),n=e.i(244898),r=e.i(262950),i=e.i(177579),s=e.i(180112),u=e.i(7991);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"method-not-allowed"});let a=Math.max(0,Number(e.query.offset)||0),n=Math.min(50,Math.max(1,Number(e.query.limit)||10)),[r,o]=await Promise.all([(0,i.getStatsCache)(),(0,u.readAllCachedReports)()]),c=(0,s.buildOverview)(r,"all"),l=c.dailyTokens.reduce((e,t)=>e+t.input+t.output+t.cacheRead+t.cacheCreation,0),d=Object.values(c.modelTokens).reduce((e,t)=>e+t.cost,0),h=c.dailyActivity.filter(e=>e.sessionCount>0).map(e=>{let t=c.dailyTokens.find(t=>t.date===e.date),a=t?t.input+t.output+t.cacheRead+t.cacheCreation:0;return{date:e.date,sessionCount:e.sessionCount,cost:l>0?a/l*d:0,report:o[e.date]??null}}).sort((e,t)=>t.date.localeCompare(e.date)),p={days:h.slice(a,a+n),total:h.length,offset:a,limit:n};return t.status(200).json(p)};e.s(["default",0,o],730099);var c=e.i(730099),l=e.i(7031),d=e.i(181927),h=e.i(846432);let p=(0,r.hoist)(c,"default"),f=(0,r.hoist)(c,"config"),m=new n.PagesAPIRouteModule({definition:{kind:a.RouteKind.PAGES_API,page:"/api/stats/daily-report/list",pathname:"/api/stats/daily-report/list",bundlePath:"",filename:""},userland:c,distDir:".next",relativeProjectDir:""});async function y(e,a,n){n.requestMeta&&(0,h.setRequestMeta)(e,n.requestMeta),m.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/stats/daily-report/list";r=r.replace(/\/index$/,"")||"/";let i=await m.prepare(e,a,{srcPage:r});if(!i){a.statusCode=400,a.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:s,params:u,prerenderManifest:o,routerServerContext:c}=i;try{let t,n=e.method||"GET",i=(0,l.getTracer)(),h=i.getActiveScopeSpan(),p=!!(null==c?void 0:c.isWrappedByNextServer),f=m.instrumentationOnRequestError.bind(m),y=async l=>m.render(e,a,{query:{...s,...u},params:u,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:m.isDev,page:"/api/stats/daily-report/list",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":a.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${n} ${s}`;l.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),l.updateName(e),t&&t!==l&&(t.setAttribute("http.route",s),t.updateName(e))}else l.updateName(`${n} ${r}`)});p&&h?await y(h):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(d.BaseServerSpan.handleRequest,{spanName:`${n} ${r}`,kind:l.SpanKind.SERVER,attributes:{"http.method":n,"http.target":e.url}},y),void 0,!p))}catch(e){if(m.isDev)throw e;(0,t.sendError)(a,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}e.s(["config",0,f,"default",0,p,"handler",0,y],219839)}];
1
+ module.exports=[990294,(e,t,a)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",a="minute",n="hour",r="week",i="month",s="quarter",u="year",o="date",c="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(e,t,a){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(a)+e},p="en",f={};f[p]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],a=e%100;return"["+e+(t[(a-20)%10]||t[a]||t[0])+"]"}};var m="$isDayjsObject",y=function(e){return e instanceof g||!(!e||!e[m])},C=function e(t,a,n){var r;if(!t)return p;if("string"==typeof t){var i=t.toLowerCase();f[i]&&(r=i),a&&(f[i]=a,r=i);var s=t.split("-");if(!r&&s.length>1)return e(s[0])}else{var u=t.name;f[u]=t,r=u}return!n&&r&&(p=r),r||!n&&p},v=function(e,t){if(y(e))return e.clone();var a="object"==typeof t?t:{};return a.date=e,a.args=arguments,new g(a)},$={s:h,z:function(e){var t=-e.utcOffset(),a=Math.abs(t);return(t<=0?"+":"-")+h(Math.floor(a/60),2,"0")+":"+h(a%60,2,"0")},m:function e(t,a){if(t.date()<a.date())return-e(a,t);var n=12*(a.year()-t.year())+(a.month()-t.month()),r=t.clone().add(n,i),s=a-r<0,u=t.clone().add(n+(s?-1:1),i);return+(-(n+(a-r)/(s?r-u:u-r))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:i,y:u,w:r,d:"day",D:o,h:n,m:a,s:t,ms:e,Q:s})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};$.l=C,$.i=y,$.w=function(e,t){return v(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var g=function(){function h(e){this.$L=C(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[m]=!0}var p=h.prototype;return p.parse=function(e){this.$d=function(e){var t=e.date,a=e.utc;if(null===t)return new Date(NaN);if($.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(l);if(n){var r=n[2]-1||0,i=(n[7]||"0").substring(0,3);return a?new Date(Date.UTC(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)):new Date(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)}}return new Date(t)}(e),this.init()},p.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},p.$utils=function(){return $},p.isValid=function(){return this.$d.toString()!==c},p.isSame=function(e,t){var a=v(e);return this.startOf(t)<=a&&a<=this.endOf(t)},p.isAfter=function(e,t){return v(e)<this.startOf(t)},p.isBefore=function(e,t){return this.endOf(t)<v(e)},p.$g=function(e,t,a){return $.u(e)?this[t]:this.set(a,e)},p.unix=function(){return Math.floor(this.valueOf()/1e3)},p.valueOf=function(){return this.$d.getTime()},p.startOf=function(e,s){var c=this,l=!!$.u(s)||s,d=$.p(e),h=function(e,t){var a=$.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return l?a:a.endOf("day")},p=function(e,t){return $.w(c.toDate()[e].apply(c.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(t)),c)},f=this.$W,m=this.$M,y=this.$D,C="set"+(this.$u?"UTC":"");switch(d){case u:return l?h(1,0):h(31,11);case i:return l?h(1,m):h(0,m+1);case r:var v=this.$locale().weekStart||0,g=(f<v?f+7:f)-v;return h(l?y-g:y+(6-g),m);case"day":case o:return p(C+"Hours",0);case n:return p(C+"Minutes",1);case a:return p(C+"Seconds",2);case t:return p(C+"Milliseconds",3);default:return this.clone()}},p.endOf=function(e){return this.startOf(e,!1)},p.$set=function(r,s){var c,l=$.p(r),d="set"+(this.$u?"UTC":""),h=((c={}).day=d+"Date",c[o]=d+"Date",c[i]=d+"Month",c[u]=d+"FullYear",c[n]=d+"Hours",c[a]=d+"Minutes",c[t]=d+"Seconds",c[e]=d+"Milliseconds",c)[l],p="day"===l?this.$D+(s-this.$W):s;if(l===i||l===u){var f=this.clone().set(o,1);f.$d[h](p),f.init(),this.$d=f.set(o,Math.min(this.$D,f.daysInMonth())).$d}else h&&this.$d[h](p);return this.init(),this},p.set=function(e,t){return this.clone().$set(e,t)},p.get=function(e){return this[$.p(e)]()},p.add=function(e,s){var o,c=this;e=Number(e);var l=$.p(s),d=function(t){var a=v(c);return $.w(a.date(a.date()+Math.round(t*e)),c)};if(l===i)return this.set(i,this.$M+e);if(l===u)return this.set(u,this.$y+e);if("day"===l)return d(1);if(l===r)return d(7);var h=((o={})[a]=6e4,o[n]=36e5,o[t]=1e3,o)[l]||1,p=this.$d.getTime()+e*h;return $.w(p,this)},p.subtract=function(e,t){return this.add(-1*e,t)},p.format=function(e){var t=this,a=this.$locale();if(!this.isValid())return a.invalidDate||c;var n=e||"YYYY-MM-DDTHH:mm:ssZ",r=$.z(this),i=this.$H,s=this.$m,u=this.$M,o=a.weekdays,l=a.months,h=a.meridiem,p=function(e,a,r,i){return e&&(e[a]||e(t,n))||r[a].slice(0,i)},f=function(e){return $.s(i%12||12,e,"0")},m=h||function(e,t,a){var n=e<12?"AM":"PM";return a?n.toLowerCase():n};return n.replace(d,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return $.s(t.$y,4,"0");case"M":return u+1;case"MM":return $.s(u+1,2,"0");case"MMM":return p(a.monthsShort,u,l,3);case"MMMM":return p(l,u);case"D":return t.$D;case"DD":return $.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return p(a.weekdaysMin,t.$W,o,2);case"ddd":return p(a.weekdaysShort,t.$W,o,3);case"dddd":return o[t.$W];case"H":return String(i);case"HH":return $.s(i,2,"0");case"h":return f(1);case"hh":return f(2);case"a":return m(i,s,!0);case"A":return m(i,s,!1);case"m":return String(s);case"mm":return $.s(s,2,"0");case"s":return String(t.$s);case"ss":return $.s(t.$s,2,"0");case"SSS":return $.s(t.$ms,3,"0");case"Z":return r}return null}(e)||r.replace(":","")})},p.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},p.diff=function(e,o,c){var l,d=this,h=$.p(o),p=v(e),f=(p.utcOffset()-this.utcOffset())*6e4,m=this-p,y=function(){return $.m(d,p)};switch(h){case u:l=y()/12;break;case i:l=y();break;case s:l=y()/3;break;case r:l=(m-f)/6048e5;break;case"day":l=(m-f)/864e5;break;case n:l=m/36e5;break;case a:l=m/6e4;break;case t:l=m/1e3;break;default:l=m}return c?l:$.a(l)},p.daysInMonth=function(){return this.endOf(i).$D},p.$locale=function(){return f[this.$L]},p.locale=function(e,t){if(!e)return this.$L;var a=this.clone(),n=C(e,t,!0);return n&&(a.$L=n),a},p.clone=function(){return $.w(this.$d,this)},p.toDate=function(){return new Date(this.valueOf())},p.toJSON=function(){return this.isValid()?this.toISOString():null},p.toISOString=function(){return this.$d.toISOString()},p.toString=function(){return this.$d.toUTCString()},h}(),b=g.prototype;return v.prototype=b,[["$ms",e],["$s",t],["$m",a],["$H",n],["$W","day"],["$M",i],["$y",u],["$D",o]].forEach(function(e){b[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),v.extend=function(e,t){return e.$i||(e(t,g,v),e.$i=!0),v},v.locale=C,v.isDayjs=y,v.unix=function(e){return v(1e3*e)},v.en=f[p],v.Ls=f,v.p={},v}()},975925,e=>{"use strict";var t=e.i(990294);let a=e=>{let a=new Date;switch(e){case"today":return{start:(0,t.default)().startOf("day").toDate(),end:a};case"7d":return{start:(0,t.default)().subtract(7,"day").startOf("day").toDate(),end:a};case"30d":return{start:(0,t.default)().subtract(30,"day").startOf("day").toDate(),end:a};case"all":return{start:new Date(0),end:a}}};e.s(["isDateStringWithinPeriod",0,(e,n)=>{if("all"===n)return!0;let{start:r,end:i}=a(n),s=(0,t.default)(e).toDate();return s>=r&&s<=i},"isWithinPeriod",0,(e,t)=>{if("all"===t)return!0;let{start:n,end:r}=a(t),i=new Date(e);return i>=n&&i<=r},"parsePeriod",0,e=>"today"===e||"7d"===e||"30d"===e||"all"===e?e:"all"])},333493,e=>{"use strict";var t=e.i(924868),a=e.i(814747),n=e.i(446786),r=e.i(990294),i=e.i(975925);let s={"opus-4-7":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-6":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-5":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-1":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"opus-4":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"sonnet-4-6":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-7":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"haiku-4-5":{input:1,output:5,cacheWrite5m:1.25,cacheWrite1h:2,cacheRead:.1},"haiku-3-5":{input:.8,output:4,cacheWrite5m:1,cacheWrite1h:1.6,cacheRead:.08},"haiku-3":{input:.25,output:1.25,cacheWrite5m:.3,cacheWrite1h:.5,cacheRead:.03},"opus-3":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5}},u={input:30,output:150,cacheWrite5m:37.5,cacheWrite1h:60,cacheRead:3},o=(e,t,a,n,r,i)=>t/1e6*e.input+n/1e6*e.cacheWrite5m+r/1e6*e.cacheWrite1h+i/1e6*e.cacheRead+a/1e6*e.output,c=a.default.join(n.default.homedir(),".claude","stats-cache.json"),l=(e,t,a,n,r,i)=>((e,t,a,n,r,i)=>{let c=((e,t,a,n,r,i,c=!1)=>{let l,d=(l=e.replace(/\[.*?\]$/,"").match(/claude-(\w+-[\d]+(?:-[\d]+)*)(?:-\d{8}|-v\d)?(?:\:\d)?$/))?l[1]:null;if(!d)return null;let h=c&&"opus-4-6"===d?u:s[d];return h?o(h,t,a,n,r,i):null})(e,t,a,n,r,i);if(null!==c)return c;let l=e.toLowerCase();return o(l.includes("opus")?s["opus-4-6"]:l.includes("haiku")?s["haiku-4-5"]:s["sonnet-4-6"],t,a,n,r,i)})(e,t,a,r,i,n),d={version:0,lastComputedDate:"",dailyActivity:[],dailyModelTokens:[],modelUsage:{},totalSessions:0,totalMessages:0,longestSession:{sessionId:"",duration:0,messageCount:0,timestamp:""},firstSessionDate:"",hourCounts:{},dayHourCounts:{},totalSpeculationTimeSavedMs:0},h=e=>"object"!=typeof e||null===e?{}:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Number(t??0)])),p=async()=>{try{var e,a,n;let r=await t.default.readFile(c,"utf-8"),i=JSON.parse(r);return{version:Number(i.version??0),lastComputedDate:String(i.lastComputedDate??""),dailyActivity:(e=i.dailyActivity,Array.isArray(e)?e.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),messageCount:Number(e.messageCount??0),sessionCount:Number(e.sessionCount??0),toolCallCount:Number(e.toolCallCount??0)})):[]),dailyModelTokens:(a=i.dailyModelTokens,Array.isArray(a)?a.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),tokensByModel:"object"==typeof e.tokensByModel&&null!==e.tokensByModel?Object.fromEntries(Object.entries(e.tokensByModel).map(([e,t])=>[e,(e=>{if("number"==typeof e)return{input:e,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0};if("object"==typeof e&&null!==e){let t=Number(e.cacheCreation??0),a=Number(e.cacheCreation1h??0),n=null!=e.cacheCreation5m?Number(e.cacheCreation5m):Math.max(0,t-a);return{input:Number(e.input??0),output:Number(e.output??0),cacheRead:Number(e.cacheRead??0),cacheCreation:t,cacheCreation5m:n,cacheCreation1h:a}}return{input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0}})(t)])):{}})):[]),modelUsage:(e=>{if("object"!=typeof e||null===e)return{};let t={};for(let[a,n]of Object.entries(e)){if("object"!=typeof n||null===n)continue;let e=Number(n.cacheCreationInputTokens??0),r=Number(n.cacheCreation1hInputTokens??0),i=null!=n.cacheCreation5mInputTokens?Number(n.cacheCreation5mInputTokens):Math.max(0,e-r);t[a]={inputTokens:Number(n.inputTokens??0),outputTokens:Number(n.outputTokens??0),cacheReadInputTokens:Number(n.cacheReadInputTokens??0),cacheCreationInputTokens:e,cacheCreation5mInputTokens:i,cacheCreation1hInputTokens:r,webSearchRequests:Number(n.webSearchRequests??0),costUSD:Number(n.costUSD??0),contextWindow:Number(n.contextWindow??0),maxOutputTokens:Number(n.maxOutputTokens??0)}}return t})(i.modelUsage),totalSessions:Number(i.totalSessions??0),totalMessages:Number(i.totalMessages??0),longestSession:(n=i.longestSession,"object"!=typeof n||null===n?{sessionId:"",duration:0,messageCount:0,timestamp:""}:{sessionId:String(n.sessionId??""),duration:Number(n.duration??0),messageCount:Number(n.messageCount??0),timestamp:String(n.timestamp??"")}),firstSessionDate:String(i.firstSessionDate??""),hourCounts:h(i.hourCounts),dayHourCounts:h(i.dayHourCounts),totalSpeculationTimeSavedMs:Number(i.totalSpeculationTimeSavedMs??0)}}catch{return d}},f=(e,t)=>{let a=(e=>{if("all"===e||"today"===e)return null;let t="7d"===e?7:30;return{prevStart:(0,r.default)().subtract(2*t,"day").startOf("day"),prevEnd:(0,r.default)().subtract(t,"day").startOf("day")}})(t);if(!a)return!1;let n=(0,r.default)(e);return(n.isAfter(a.prevStart)||n.isSame(a.prevStart))&&n.isBefore(a.prevEnd)};e.s(["buildOverview",0,(e,t)=>{let a,n,s,u,o=e.dailyActivity.filter(e=>(0,i.isDateStringWithinPeriod)(e.date,t)),c=e.dailyModelTokens.filter(e=>(0,i.isDateStringWithinPeriod)(e.date,t)),d="all"===t?e.totalSessions:o.reduce((e,t)=>e+t.sessionCount,0),h="all"===t?e.totalMessages:o.reduce((e,t)=>e+t.messageCount,0),p=o.reduce((e,t)=>e+t.toolCallCount,0),m=(a=e.dailyActivity,n=t,a.filter(e=>f(e.date,n))),y=m.reduce((e,t)=>e+t.sessionCount,0),C=m.reduce((e,t)=>e+t.messageCount,0),v={};if("all"===t)for(let[t,a]of Object.entries(e.modelUsage))v[t]={input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadInputTokens,cacheCreation:a.cacheCreationInputTokens,cacheCreation5m:a.cacheCreation5mInputTokens,cacheCreation1h:a.cacheCreation1hInputTokens,cost:l(t,a.inputTokens,a.outputTokens,a.cacheReadInputTokens,a.cacheCreation5mInputTokens,a.cacheCreation1hInputTokens)};else{for(let e of c)for(let[t,a]of Object.entries(e.tokensByModel))v[t]||(v[t]={input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0,cost:0}),v[t].input+=a.input,v[t].output+=a.output,v[t].cacheRead+=a.cacheRead,v[t].cacheCreation+=a.cacheCreation,v[t].cacheCreation5m+=a.cacheCreation5m,v[t].cacheCreation1h+=a.cacheCreation1h;for(let[t,a]of Object.entries(v)){let n=e.modelUsage[t];if(!n)continue;let r=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,i=a.input+a.output+a.cacheRead+a.cacheCreation;r>0&&(a.cost=i/r*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}}let $=c.map(e=>{let t=0,a=0,n=0,r=0;for(let i of Object.values(e.tokensByModel))t+=i.input,a+=i.output,n+=i.cacheRead,r+=i.cacheCreation;return{date:e.date,input:t,output:a,cacheRead:n,cacheCreation:r}}),g=(0,r.default)().format("YYYY-MM-DD"),b=(0,r.default)().startOf("month").format("YYYY-MM-DD"),S=e.dailyActivity.find(e=>e.date===g)?.messageCount??0,k=e.dailyActivity.filter(e=>e.date>=b).reduce((e,t)=>e+t.messageCount,0),M=Object.values(v).reduce((e,t)=>e+t.cost,0),T=t=>{let a=0;for(let n of t)for(let[t,r]of Object.entries(n.tokensByModel)){let n=e.modelUsage[t];if(!n)continue;let i=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,s=r.input+r.output+r.cacheRead+r.cacheCreation;i>0&&(a+=s/i*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}return a},D=T(e.dailyModelTokens.filter(e=>e.date===g));return{totalSessions:d,totalMessages:h,previousSessions:y,previousMessages:C,totalToolCalls:p,dailyActivity:o,modelTokens:v,dailyTokens:$,todayMessages:S,thisMonthMessages:k,totalCost:M,todayCost:D,thisMonthCost:T(e.dailyModelTokens.filter(e=>e.date>=b)),previousCost:T((s=e.dailyModelTokens,u=t,s.filter(e=>f(e.date,u)))),hourlyDistribution:e.hourCounts,dayHourDistribution:e.dayHourCounts,firstSessionDate:e.firstSessionDate,lastComputedDate:e.lastComputedDate,computedAt:new Date().toISOString()}},"readStatsCache",0,p],333493)},219839,e=>{"use strict";var t=e.i(926747),a=e.i(190406),n=e.i(244898),r=e.i(262950),i=e.i(177579),s=e.i(333493),u=e.i(7991);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"method-not-allowed"});let a=Math.max(0,Number(e.query.offset)||0),n=Math.min(50,Math.max(1,Number(e.query.limit)||10)),[r,o]=await Promise.all([(0,i.getStatsCache)(),(0,u.readAllCachedReports)()]),c=(0,s.buildOverview)(r,"all"),l=c.dailyTokens.reduce((e,t)=>e+t.input+t.output+t.cacheRead+t.cacheCreation,0),d=Object.values(c.modelTokens).reduce((e,t)=>e+t.cost,0),h=c.dailyActivity.filter(e=>e.sessionCount>0).map(e=>{let t=c.dailyTokens.find(t=>t.date===e.date),a=t?t.input+t.output+t.cacheRead+t.cacheCreation:0;return{date:e.date,sessionCount:e.sessionCount,cost:l>0?a/l*d:0,report:o[e.date]??null}}).sort((e,t)=>t.date.localeCompare(e.date)),p={days:h.slice(a,a+n),total:h.length,offset:a,limit:n};return t.status(200).json(p)};e.s(["default",0,o],730099);var c=e.i(730099),l=e.i(7031),d=e.i(181927),h=e.i(846432);let p=(0,r.hoist)(c,"default"),f=(0,r.hoist)(c,"config"),m=new n.PagesAPIRouteModule({definition:{kind:a.RouteKind.PAGES_API,page:"/api/stats/daily-report/list",pathname:"/api/stats/daily-report/list",bundlePath:"",filename:""},userland:c,distDir:".next",relativeProjectDir:""});async function y(e,a,n){n.requestMeta&&(0,h.setRequestMeta)(e,n.requestMeta),m.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/stats/daily-report/list";r=r.replace(/\/index$/,"")||"/";let i=await m.prepare(e,a,{srcPage:r});if(!i){a.statusCode=400,a.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:s,params:u,prerenderManifest:o,routerServerContext:c}=i;try{let t,n=e.method||"GET",i=(0,l.getTracer)(),h=i.getActiveScopeSpan(),p=!!(null==c?void 0:c.isWrappedByNextServer),f=m.instrumentationOnRequestError.bind(m),y=async l=>m.render(e,a,{query:{...s,...u},params:u,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:m.isDev,page:"/api/stats/daily-report/list",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":a.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${n} ${s}`;l.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),l.updateName(e),t&&t!==l&&(t.setAttribute("http.route",s),t.updateName(e))}else l.updateName(`${n} ${r}`)});p&&h?await y(h):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(d.BaseServerSpan.handleRequest,{spanName:`${n} ${r}`,kind:l.SpanKind.SERVER,attributes:{"http.method":n,"http.target":e.url}},y),void 0,!p))}catch(e){if(m.isDev)throw e;(0,t.sendError)(a,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}e.s(["config",0,f,"default",0,p,"handler",0,y],219839)}];
2
2
 
3
3
  //# sourceMappingURL=_0e8e4zn._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[180112,e=>{"use strict";var t=e.i(924868),a=e.i(814747),n=e.i(446786),r=e.i(990294),s=e.i(975925);let i={"opus-4-7":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-6":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-5":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-1":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"opus-4":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"sonnet-4-6":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-7":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"haiku-4-5":{input:1,output:5,cacheWrite5m:1.25,cacheWrite1h:2,cacheRead:.1},"haiku-3-5":{input:.8,output:4,cacheWrite5m:1,cacheWrite1h:1.6,cacheRead:.08},"haiku-3":{input:.25,output:1.25,cacheWrite5m:.3,cacheWrite1h:.5,cacheRead:.03},"opus-3":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5}},o={input:30,output:150,cacheWrite5m:37.5,cacheWrite1h:60,cacheRead:3},u=(e,t,a,n,r,s)=>t/1e6*e.input+n/1e6*e.cacheWrite5m+r/1e6*e.cacheWrite1h+s/1e6*e.cacheRead+a/1e6*e.output,c=a.default.join(n.default.homedir(),".claude","stats-cache.json"),l=(e,t,a,n,r,s)=>((e,t,a,n,r,s)=>{let c=((e,t,a,n,r,s,c=!1)=>{let l,d=(l=e.replace(/\[.*?\]$/,"").match(/claude-(\w+-[\d]+(?:-[\d]+)*)(?:-\d{8}|-v\d)?(?:\:\d)?$/))?l[1]:null;if(!d)return null;let h=c&&"opus-4-6"===d?o:i[d];return h?u(h,t,a,n,r,s):null})(e,t,a,n,r,s);if(null!==c)return c;let l=e.toLowerCase();return u(l.includes("opus")?i["opus-4-6"]:l.includes("haiku")?i["haiku-4-5"]:i["sonnet-4-6"],t,a,n,r,s)})(e,t,a,r,s,n),d={version:0,lastComputedDate:"",dailyActivity:[],dailyModelTokens:[],modelUsage:{},totalSessions:0,totalMessages:0,longestSession:{sessionId:"",duration:0,messageCount:0,timestamp:""},firstSessionDate:"",hourCounts:{},dayHourCounts:{},totalSpeculationTimeSavedMs:0},h=e=>"object"!=typeof e||null===e?{}:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Number(t??0)])),f=async()=>{try{var e,a,n;let r=await t.default.readFile(c,"utf-8"),s=JSON.parse(r);return{version:Number(s.version??0),lastComputedDate:String(s.lastComputedDate??""),dailyActivity:(e=s.dailyActivity,Array.isArray(e)?e.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),messageCount:Number(e.messageCount??0),sessionCount:Number(e.sessionCount??0),toolCallCount:Number(e.toolCallCount??0)})):[]),dailyModelTokens:(a=s.dailyModelTokens,Array.isArray(a)?a.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),tokensByModel:"object"==typeof e.tokensByModel&&null!==e.tokensByModel?Object.fromEntries(Object.entries(e.tokensByModel).map(([e,t])=>[e,(e=>{if("number"==typeof e)return{input:e,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0};if("object"==typeof e&&null!==e){let t=Number(e.cacheCreation??0),a=Number(e.cacheCreation1h??0),n=null!=e.cacheCreation5m?Number(e.cacheCreation5m):Math.max(0,t-a);return{input:Number(e.input??0),output:Number(e.output??0),cacheRead:Number(e.cacheRead??0),cacheCreation:t,cacheCreation5m:n,cacheCreation1h:a}}return{input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0}})(t)])):{}})):[]),modelUsage:(e=>{if("object"!=typeof e||null===e)return{};let t={};for(let[a,n]of Object.entries(e)){if("object"!=typeof n||null===n)continue;let e=Number(n.cacheCreationInputTokens??0),r=Number(n.cacheCreation1hInputTokens??0),s=null!=n.cacheCreation5mInputTokens?Number(n.cacheCreation5mInputTokens):Math.max(0,e-r);t[a]={inputTokens:Number(n.inputTokens??0),outputTokens:Number(n.outputTokens??0),cacheReadInputTokens:Number(n.cacheReadInputTokens??0),cacheCreationInputTokens:e,cacheCreation5mInputTokens:s,cacheCreation1hInputTokens:r,webSearchRequests:Number(n.webSearchRequests??0),costUSD:Number(n.costUSD??0),contextWindow:Number(n.contextWindow??0),maxOutputTokens:Number(n.maxOutputTokens??0)}}return t})(s.modelUsage),totalSessions:Number(s.totalSessions??0),totalMessages:Number(s.totalMessages??0),longestSession:(n=s.longestSession,"object"!=typeof n||null===n?{sessionId:"",duration:0,messageCount:0,timestamp:""}:{sessionId:String(n.sessionId??""),duration:Number(n.duration??0),messageCount:Number(n.messageCount??0),timestamp:String(n.timestamp??"")}),firstSessionDate:String(s.firstSessionDate??""),hourCounts:h(s.hourCounts),dayHourCounts:h(s.dayHourCounts),totalSpeculationTimeSavedMs:Number(s.totalSpeculationTimeSavedMs??0)}}catch{return d}},p=(e,t)=>{let a=(e=>{if("all"===e||"today"===e)return null;let t="7d"===e?7:30;return{prevStart:(0,r.default)().subtract(2*t,"day").startOf("day"),prevEnd:(0,r.default)().subtract(t,"day").startOf("day")}})(t);if(!a)return!1;let n=(0,r.default)(e);return(n.isAfter(a.prevStart)||n.isSame(a.prevStart))&&n.isBefore(a.prevEnd)};e.s(["buildOverview",0,(e,t)=>{let a,n,i,o,u=e.dailyActivity.filter(e=>(0,s.isDateStringWithinPeriod)(e.date,t)),c=e.dailyModelTokens.filter(e=>(0,s.isDateStringWithinPeriod)(e.date,t)),d="all"===t?e.totalSessions:u.reduce((e,t)=>e+t.sessionCount,0),h="all"===t?e.totalMessages:u.reduce((e,t)=>e+t.messageCount,0),f=u.reduce((e,t)=>e+t.toolCallCount,0),m=(a=e.dailyActivity,n=t,a.filter(e=>p(e.date,n))),y=m.reduce((e,t)=>e+t.sessionCount,0),g=m.reduce((e,t)=>e+t.messageCount,0),C={};if("all"===t)for(let[t,a]of Object.entries(e.modelUsage))C[t]={input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadInputTokens,cacheCreation:a.cacheCreationInputTokens,cacheCreation5m:a.cacheCreation5mInputTokens,cacheCreation1h:a.cacheCreation1hInputTokens,cost:l(t,a.inputTokens,a.outputTokens,a.cacheReadInputTokens,a.cacheCreation5mInputTokens,a.cacheCreation1hInputTokens)};else{for(let e of c)for(let[t,a]of Object.entries(e.tokensByModel))C[t]||(C[t]={input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0,cost:0}),C[t].input+=a.input,C[t].output+=a.output,C[t].cacheRead+=a.cacheRead,C[t].cacheCreation+=a.cacheCreation,C[t].cacheCreation5m+=a.cacheCreation5m,C[t].cacheCreation1h+=a.cacheCreation1h;for(let[t,a]of Object.entries(C)){let n=e.modelUsage[t];if(!n)continue;let r=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,s=a.input+a.output+a.cacheRead+a.cacheCreation;r>0&&(a.cost=s/r*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}}let v=c.map(e=>{let t=0,a=0,n=0,r=0;for(let s of Object.values(e.tokensByModel))t+=s.input,a+=s.output,n+=s.cacheRead,r+=s.cacheCreation;return{date:e.date,input:t,output:a,cacheRead:n,cacheCreation:r}}),S=(0,r.default)().format("YYYY-MM-DD"),k=(0,r.default)().startOf("month").format("YYYY-MM-DD"),$=e.dailyActivity.find(e=>e.date===S)?.messageCount??0,T=e.dailyActivity.filter(e=>e.date>=k).reduce((e,t)=>e+t.messageCount,0),M=Object.values(C).reduce((e,t)=>e+t.cost,0),w=t=>{let a=0;for(let n of t)for(let[t,r]of Object.entries(n.tokensByModel)){let n=e.modelUsage[t];if(!n)continue;let s=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,i=r.input+r.output+r.cacheRead+r.cacheCreation;s>0&&(a+=i/s*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}return a},b=w(e.dailyModelTokens.filter(e=>e.date===S));return{totalSessions:d,totalMessages:h,previousSessions:y,previousMessages:g,totalToolCalls:f,dailyActivity:u,modelTokens:C,dailyTokens:v,todayMessages:$,thisMonthMessages:T,totalCost:M,todayCost:b,thisMonthCost:w(e.dailyModelTokens.filter(e=>e.date>=k)),previousCost:w((i=e.dailyModelTokens,o=t,i.filter(e=>p(e.date,o)))),hourlyDistribution:e.hourCounts,dayHourDistribution:e.dayHourCounts,firstSessionDate:e.firstSessionDate,lastComputedDate:e.lastComputedDate,computedAt:new Date().toISOString()}},"readStatsCache",0,f],180112)},422392,e=>{"use strict";let t=new Map,a=6e4;e.s(["getCached",0,e=>{let a=t.get(e);return a?Date.now()>a.expiresAt?(t.delete(e),null):a.data:null},"setCached",0,(e,n,r=a)=>{t.set(e,{data:n,expiresAt:Date.now()+r})}])},990294,(e,t,a)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",a="minute",n="hour",r="week",s="month",i="quarter",o="year",u="date",c="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(e,t,a){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(a)+e},f="en",p={};p[f]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],a=e%100;return"["+e+(t[(a-20)%10]||t[a]||t[0])+"]"}};var m="$isDayjsObject",y=function(e){return e instanceof S||!(!e||!e[m])},g=function e(t,a,n){var r;if(!t)return f;if("string"==typeof t){var s=t.toLowerCase();p[s]&&(r=s),a&&(p[s]=a,r=s);var i=t.split("-");if(!r&&i.length>1)return e(i[0])}else{var o=t.name;p[o]=t,r=o}return!n&&r&&(f=r),r||!n&&f},C=function(e,t){if(y(e))return e.clone();var a="object"==typeof t?t:{};return a.date=e,a.args=arguments,new S(a)},v={s:h,z:function(e){var t=-e.utcOffset(),a=Math.abs(t);return(t<=0?"+":"-")+h(Math.floor(a/60),2,"0")+":"+h(a%60,2,"0")},m:function e(t,a){if(t.date()<a.date())return-e(a,t);var n=12*(a.year()-t.year())+(a.month()-t.month()),r=t.clone().add(n,s),i=a-r<0,o=t.clone().add(n+(i?-1:1),s);return+(-(n+(a-r)/(i?r-o:o-r))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:s,y:o,w:r,d:"day",D:u,h:n,m:a,s:t,ms:e,Q:i})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};v.l=g,v.i=y,v.w=function(e,t){return C(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var S=function(){function h(e){this.$L=g(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[m]=!0}var f=h.prototype;return f.parse=function(e){this.$d=function(e){var t=e.date,a=e.utc;if(null===t)return new Date(NaN);if(v.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(l);if(n){var r=n[2]-1||0,s=(n[7]||"0").substring(0,3);return a?new Date(Date.UTC(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)):new Date(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)}}return new Date(t)}(e),this.init()},f.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},f.$utils=function(){return v},f.isValid=function(){return this.$d.toString()!==c},f.isSame=function(e,t){var a=C(e);return this.startOf(t)<=a&&a<=this.endOf(t)},f.isAfter=function(e,t){return C(e)<this.startOf(t)},f.isBefore=function(e,t){return this.endOf(t)<C(e)},f.$g=function(e,t,a){return v.u(e)?this[t]:this.set(a,e)},f.unix=function(){return Math.floor(this.valueOf()/1e3)},f.valueOf=function(){return this.$d.getTime()},f.startOf=function(e,i){var c=this,l=!!v.u(i)||i,d=v.p(e),h=function(e,t){var a=v.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return l?a:a.endOf("day")},f=function(e,t){return v.w(c.toDate()[e].apply(c.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(t)),c)},p=this.$W,m=this.$M,y=this.$D,g="set"+(this.$u?"UTC":"");switch(d){case o:return l?h(1,0):h(31,11);case s:return l?h(1,m):h(0,m+1);case r:var C=this.$locale().weekStart||0,S=(p<C?p+7:p)-C;return h(l?y-S:y+(6-S),m);case"day":case u:return f(g+"Hours",0);case n:return f(g+"Minutes",1);case a:return f(g+"Seconds",2);case t:return f(g+"Milliseconds",3);default:return this.clone()}},f.endOf=function(e){return this.startOf(e,!1)},f.$set=function(r,i){var c,l=v.p(r),d="set"+(this.$u?"UTC":""),h=((c={}).day=d+"Date",c[u]=d+"Date",c[s]=d+"Month",c[o]=d+"FullYear",c[n]=d+"Hours",c[a]=d+"Minutes",c[t]=d+"Seconds",c[e]=d+"Milliseconds",c)[l],f="day"===l?this.$D+(i-this.$W):i;if(l===s||l===o){var p=this.clone().set(u,1);p.$d[h](f),p.init(),this.$d=p.set(u,Math.min(this.$D,p.daysInMonth())).$d}else h&&this.$d[h](f);return this.init(),this},f.set=function(e,t){return this.clone().$set(e,t)},f.get=function(e){return this[v.p(e)]()},f.add=function(e,i){var u,c=this;e=Number(e);var l=v.p(i),d=function(t){var a=C(c);return v.w(a.date(a.date()+Math.round(t*e)),c)};if(l===s)return this.set(s,this.$M+e);if(l===o)return this.set(o,this.$y+e);if("day"===l)return d(1);if(l===r)return d(7);var h=((u={})[a]=6e4,u[n]=36e5,u[t]=1e3,u)[l]||1,f=this.$d.getTime()+e*h;return v.w(f,this)},f.subtract=function(e,t){return this.add(-1*e,t)},f.format=function(e){var t=this,a=this.$locale();if(!this.isValid())return a.invalidDate||c;var n=e||"YYYY-MM-DDTHH:mm:ssZ",r=v.z(this),s=this.$H,i=this.$m,o=this.$M,u=a.weekdays,l=a.months,h=a.meridiem,f=function(e,a,r,s){return e&&(e[a]||e(t,n))||r[a].slice(0,s)},p=function(e){return v.s(s%12||12,e,"0")},m=h||function(e,t,a){var n=e<12?"AM":"PM";return a?n.toLowerCase():n};return n.replace(d,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return v.s(t.$y,4,"0");case"M":return o+1;case"MM":return v.s(o+1,2,"0");case"MMM":return f(a.monthsShort,o,l,3);case"MMMM":return f(l,o);case"D":return t.$D;case"DD":return v.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return f(a.weekdaysMin,t.$W,u,2);case"ddd":return f(a.weekdaysShort,t.$W,u,3);case"dddd":return u[t.$W];case"H":return String(s);case"HH":return v.s(s,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return m(s,i,!0);case"A":return m(s,i,!1);case"m":return String(i);case"mm":return v.s(i,2,"0");case"s":return String(t.$s);case"ss":return v.s(t.$s,2,"0");case"SSS":return v.s(t.$ms,3,"0");case"Z":return r}return null}(e)||r.replace(":","")})},f.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},f.diff=function(e,u,c){var l,d=this,h=v.p(u),f=C(e),p=(f.utcOffset()-this.utcOffset())*6e4,m=this-f,y=function(){return v.m(d,f)};switch(h){case o:l=y()/12;break;case s:l=y();break;case i:l=y()/3;break;case r:l=(m-p)/6048e5;break;case"day":l=(m-p)/864e5;break;case n:l=m/36e5;break;case a:l=m/6e4;break;case t:l=m/1e3;break;default:l=m}return c?l:v.a(l)},f.daysInMonth=function(){return this.endOf(s).$D},f.$locale=function(){return p[this.$L]},f.locale=function(e,t){if(!e)return this.$L;var a=this.clone(),n=g(e,t,!0);return n&&(a.$L=n),a},f.clone=function(){return v.w(this.$d,this)},f.toDate=function(){return new Date(this.valueOf())},f.toJSON=function(){return this.isValid()?this.toISOString():null},f.toISOString=function(){return this.$d.toISOString()},f.toString=function(){return this.$d.toUTCString()},h}(),k=S.prototype;return C.prototype=k,[["$ms",e],["$s",t],["$m",a],["$H",n],["$W","day"],["$M",s],["$y",o],["$D",u]].forEach(function(e){k[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),C.extend=function(e,t){return e.$i||(e(t,S,C),e.$i=!0),C},C.locale=g,C.isDayjs=y,C.unix=function(e){return C(1e3*e)},C.en=p[f],C.Ls=p,C.p={},C}()},975925,e=>{"use strict";var t=e.i(990294);let a=e=>{let a=new Date;switch(e){case"today":return{start:(0,t.default)().startOf("day").toDate(),end:a};case"7d":return{start:(0,t.default)().subtract(7,"day").startOf("day").toDate(),end:a};case"30d":return{start:(0,t.default)().subtract(30,"day").startOf("day").toDate(),end:a};case"all":return{start:new Date(0),end:a}}};e.s(["isDateStringWithinPeriod",0,(e,n)=>{if("all"===n)return!0;let{start:r,end:s}=a(n),i=(0,t.default)(e).toDate();return i>=r&&i<=s},"isWithinPeriod",0,(e,t)=>{if("all"===t)return!0;let{start:n,end:r}=a(t),s=new Date(e);return s>=n&&s<=r},"parsePeriod",0,e=>"today"===e||"7d"===e||"30d"===e||"all"===e?e:"all"])},411941,e=>{"use strict";var t=e.i(924868),a=e.i(522734),n=e.i(814747),r=e.i(446786),s=e.i(319668),i=e.i(975925),o=e.i(7991);let u=n.default.join(r.default.homedir(),".claude","projects"),c=e=>/^agent-/.test(e),l=async()=>{let e=[];try{for(let a of(await t.default.readdir(u))){let r=n.default.join(u,a),s=await t.default.stat(r).catch(()=>null);if(s?.isDirectory())for(let s of(await t.default.readdir(r).catch(()=>[])))!s.endsWith(".jsonl")||c(s)||e.push({filePath:n.default.join(r,s),project:a})}}catch{}return e},d=async(e,t,n)=>{let r=new Map,u="";try{let o=(0,a.createReadStream)(e,{encoding:"utf-8"});for await(let e of s.default.createInterface({input:o,crlfDelay:1/0}))if(e.trim())try{let a=JSON.parse(e),s=String(a.timestamp??"");if(u||"string"!=typeof a.cwd||(u=a.cwd),!s||!(0,i.isWithinPeriod)(s,n))continue;let o=String(a.sessionId??"");if(!o)continue;let c=String(a.type??"");if("user"!==c&&"assistant"!==c)continue;let l=r.get(o);if(l||(l={sessionId:o,project:t,startedAt:s,lastActivityAt:s,messageCount:0,totalInputTokens:0,totalOutputTokens:0,model:""},r.set(o,l)),s<l.startedAt&&(l.startedAt=s),s>l.lastActivityAt&&(l.lastActivityAt=s),"user"===c&&l.messageCount++,"assistant"===c){let e=a.message;if(e){let t=String(e.model??"");t&&(l.model=t);let a=e.usage;a&&(l.totalInputTokens+=Number(a.input_tokens??0),l.totalOutputTokens+=Number(a.output_tokens??0))}}}catch{}}catch{}if(u){let e=(0,o.shortenCwd)(u);for(let t of r.values())t.project=e}return Array.from(r.values())},h=async(e,t)=>{let a=[],n=0,r=async()=>{for(;n<e.length;){let t=n++;a[t]=await e[t]()}},s=Array.from({length:Math.min(t,e.length)},()=>r());return await Promise.all(s),a},f=async(e,t)=>{let n=new Map;try{let r=(0,a.createReadStream)(e,{encoding:"utf-8"});for await(let e of s.default.createInterface({input:r,crlfDelay:1/0}))if(e.trim())try{let a=JSON.parse(e),r=String(a.timestamp??"");if(!r)continue;let s=r.slice(0,10);if(!t.has(s))continue;let i=String(a.sessionId??"");if(!i)continue;let o=String(a.type??"");if("user"!==o&&"assistant"!==o)continue;let u=new Date(r).getTime();if(isNaN(u))continue;let c=n.get(s);c||(c=new Map,n.set(s,c));let l=c.get(i);l?l.push(u):c.set(i,[u])}catch{}}catch{}return n},p=async e=>{let t=await l();if(0===t.length)return new Map;let a=t.map(t=>()=>f(t.filePath,e)),n=await h(a,10),r=new Map;for(let e of n)for(let[t,a]of e){let e=r.get(t);for(let[n,s]of(e||(e=new Map,r.set(t,e)),a)){let t=e.get(n);t?t.push(...s):e.set(n,[...s])}}return r},m=async e=>{let t=await l();if(0===t.length)return[];let a=t.map(t=>()=>d(t.filePath,t.project,e)),n=await h(a,10),r=new Map;for(let e of n)for(let t of e){let e=r.get(t.project);e?(e.sessionCount++,e.messageCount+=t.messageCount,e.totalTokens+=t.totalInputTokens+t.totalOutputTokens):r.set(t.project,{project:t.project,sessionCount:1,messageCount:t.messageCount,totalTokens:t.totalInputTokens+t.totalOutputTokens})}return Array.from(r.values()).sort((e,t)=>t.totalTokens-e.totalTokens)},y=async e=>{let t=await l();if(0===t.length)return[];let a=t.map(t=>()=>d(t.filePath,t.project,e)),n=await h(a,10),r=[];for(let e of n)for(let t of e)r.push({sessionId:t.sessionId,project:t.project,startedAt:t.startedAt,lastActivityAt:t.lastActivityAt,messageCount:t.messageCount,totalTokens:t.totalInputTokens+t.totalOutputTokens,model:t.model});return r.sort((e,t)=>t.startedAt.localeCompare(e.startedAt))};e.s(["parseAllProjects",0,m,"parseAllSessions",0,y,"parseTimestampsByDay",0,p])},69396,e=>{"use strict";var t=e.i(926747),a=e.i(190406),n=e.i(244898),r=e.i(262950),s=e.i(411941),i=e.i(180112),o=e.i(975925),u=e.i(422392);let c=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"method-not-allowed"});let a=(0,o.parsePeriod)(e.query.period),n=`stats:sessions:${a}`,r=(0,u.getCached)(n);if(r)return t.status(200).json(r);let[c,l]=await Promise.all([(0,s.parseAllSessions)(a),(0,i.readStatsCache)()]),d=c.map(e=>new Date(e.lastActivityAt).getTime()-new Date(e.startedAt).getTime()).filter(e=>e>0),h={sessions:c,averageDurationMs:d.length>0?Math.round(d.reduce((e,t)=>e+t,0)/d.length):0,longestSession:l.longestSession.sessionId?l.longestSession:null,totalSessions:c.length};return(0,u.setCached)(n,h),t.status(200).json(h)};e.s(["default",0,c],900287);var l=e.i(900287),d=e.i(7031),h=e.i(181927),f=e.i(846432);let p=(0,r.hoist)(l,"default"),m=(0,r.hoist)(l,"config"),y=new n.PagesAPIRouteModule({definition:{kind:a.RouteKind.PAGES_API,page:"/api/stats/sessions",pathname:"/api/stats/sessions",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function g(e,a,n){n.requestMeta&&(0,f.setRequestMeta)(e,n.requestMeta),y.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/stats/sessions";r=r.replace(/\/index$/,"")||"/";let s=await y.prepare(e,a,{srcPage:r});if(!s){a.statusCode=400,a.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:i,params:o,prerenderManifest:u,routerServerContext:c}=s;try{let t,n=e.method||"GET",s=(0,d.getTracer)(),l=s.getActiveScopeSpan(),f=!!(null==c?void 0:c.isWrappedByNextServer),p=y.instrumentationOnRequestError.bind(y),m=async l=>y.render(e,a,{query:{...i,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:u.preview,propagateError:!1,dev:y.isDev,page:"/api/stats/sessions",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>p(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":a.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==h.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=e.get("next.route");if(i){let e=`${n} ${i}`;l.setAttributes({"next.route":i,"http.route":i,"next.span_name":e}),l.updateName(e),t&&t!==l&&(t.setAttribute("http.route",i),t.updateName(e))}else l.updateName(`${n} ${r}`)});f&&l?await m(l):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(h.BaseServerSpan.handleRequest,{spanName:`${n} ${r}`,kind:d.SpanKind.SERVER,attributes:{"http.method":n,"http.target":e.url}},m),void 0,!f))}catch(e){if(y.isDev)throw e;(0,t.sendError)(a,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}e.s(["config",0,m,"default",0,p,"handler",0,g],69396)}];
1
+ module.exports=[333493,e=>{"use strict";var t=e.i(924868),a=e.i(814747),n=e.i(446786),r=e.i(990294),s=e.i(975925);let i={"opus-4-7":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-6":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-5":{input:5,output:25,cacheWrite5m:6.25,cacheWrite1h:10,cacheRead:.5},"opus-4-1":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"opus-4":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5},"sonnet-4-6":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-4":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-7":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"sonnet-3-5":{input:3,output:15,cacheWrite5m:3.75,cacheWrite1h:6,cacheRead:.3},"haiku-4-5":{input:1,output:5,cacheWrite5m:1.25,cacheWrite1h:2,cacheRead:.1},"haiku-3-5":{input:.8,output:4,cacheWrite5m:1,cacheWrite1h:1.6,cacheRead:.08},"haiku-3":{input:.25,output:1.25,cacheWrite5m:.3,cacheWrite1h:.5,cacheRead:.03},"opus-3":{input:15,output:75,cacheWrite5m:18.75,cacheWrite1h:30,cacheRead:1.5}},o={input:30,output:150,cacheWrite5m:37.5,cacheWrite1h:60,cacheRead:3},u=(e,t,a,n,r,s)=>t/1e6*e.input+n/1e6*e.cacheWrite5m+r/1e6*e.cacheWrite1h+s/1e6*e.cacheRead+a/1e6*e.output,c=a.default.join(n.default.homedir(),".claude","stats-cache.json"),l=(e,t,a,n,r,s)=>((e,t,a,n,r,s)=>{let c=((e,t,a,n,r,s,c=!1)=>{let l,d=(l=e.replace(/\[.*?\]$/,"").match(/claude-(\w+-[\d]+(?:-[\d]+)*)(?:-\d{8}|-v\d)?(?:\:\d)?$/))?l[1]:null;if(!d)return null;let h=c&&"opus-4-6"===d?o:i[d];return h?u(h,t,a,n,r,s):null})(e,t,a,n,r,s);if(null!==c)return c;let l=e.toLowerCase();return u(l.includes("opus")?i["opus-4-6"]:l.includes("haiku")?i["haiku-4-5"]:i["sonnet-4-6"],t,a,n,r,s)})(e,t,a,r,s,n),d={version:0,lastComputedDate:"",dailyActivity:[],dailyModelTokens:[],modelUsage:{},totalSessions:0,totalMessages:0,longestSession:{sessionId:"",duration:0,messageCount:0,timestamp:""},firstSessionDate:"",hourCounts:{},dayHourCounts:{},totalSpeculationTimeSavedMs:0},h=e=>"object"!=typeof e||null===e?{}:Object.fromEntries(Object.entries(e).map(([e,t])=>[e,Number(t??0)])),f=async()=>{try{var e,a,n;let r=await t.default.readFile(c,"utf-8"),s=JSON.parse(r);return{version:Number(s.version??0),lastComputedDate:String(s.lastComputedDate??""),dailyActivity:(e=s.dailyActivity,Array.isArray(e)?e.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),messageCount:Number(e.messageCount??0),sessionCount:Number(e.sessionCount??0),toolCallCount:Number(e.toolCallCount??0)})):[]),dailyModelTokens:(a=s.dailyModelTokens,Array.isArray(a)?a.filter(e=>"object"==typeof e&&null!==e).map(e=>({date:String(e.date??""),tokensByModel:"object"==typeof e.tokensByModel&&null!==e.tokensByModel?Object.fromEntries(Object.entries(e.tokensByModel).map(([e,t])=>[e,(e=>{if("number"==typeof e)return{input:e,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0};if("object"==typeof e&&null!==e){let t=Number(e.cacheCreation??0),a=Number(e.cacheCreation1h??0),n=null!=e.cacheCreation5m?Number(e.cacheCreation5m):Math.max(0,t-a);return{input:Number(e.input??0),output:Number(e.output??0),cacheRead:Number(e.cacheRead??0),cacheCreation:t,cacheCreation5m:n,cacheCreation1h:a}}return{input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0}})(t)])):{}})):[]),modelUsage:(e=>{if("object"!=typeof e||null===e)return{};let t={};for(let[a,n]of Object.entries(e)){if("object"!=typeof n||null===n)continue;let e=Number(n.cacheCreationInputTokens??0),r=Number(n.cacheCreation1hInputTokens??0),s=null!=n.cacheCreation5mInputTokens?Number(n.cacheCreation5mInputTokens):Math.max(0,e-r);t[a]={inputTokens:Number(n.inputTokens??0),outputTokens:Number(n.outputTokens??0),cacheReadInputTokens:Number(n.cacheReadInputTokens??0),cacheCreationInputTokens:e,cacheCreation5mInputTokens:s,cacheCreation1hInputTokens:r,webSearchRequests:Number(n.webSearchRequests??0),costUSD:Number(n.costUSD??0),contextWindow:Number(n.contextWindow??0),maxOutputTokens:Number(n.maxOutputTokens??0)}}return t})(s.modelUsage),totalSessions:Number(s.totalSessions??0),totalMessages:Number(s.totalMessages??0),longestSession:(n=s.longestSession,"object"!=typeof n||null===n?{sessionId:"",duration:0,messageCount:0,timestamp:""}:{sessionId:String(n.sessionId??""),duration:Number(n.duration??0),messageCount:Number(n.messageCount??0),timestamp:String(n.timestamp??"")}),firstSessionDate:String(s.firstSessionDate??""),hourCounts:h(s.hourCounts),dayHourCounts:h(s.dayHourCounts),totalSpeculationTimeSavedMs:Number(s.totalSpeculationTimeSavedMs??0)}}catch{return d}},p=(e,t)=>{let a=(e=>{if("all"===e||"today"===e)return null;let t="7d"===e?7:30;return{prevStart:(0,r.default)().subtract(2*t,"day").startOf("day"),prevEnd:(0,r.default)().subtract(t,"day").startOf("day")}})(t);if(!a)return!1;let n=(0,r.default)(e);return(n.isAfter(a.prevStart)||n.isSame(a.prevStart))&&n.isBefore(a.prevEnd)};e.s(["buildOverview",0,(e,t)=>{let a,n,i,o,u=e.dailyActivity.filter(e=>(0,s.isDateStringWithinPeriod)(e.date,t)),c=e.dailyModelTokens.filter(e=>(0,s.isDateStringWithinPeriod)(e.date,t)),d="all"===t?e.totalSessions:u.reduce((e,t)=>e+t.sessionCount,0),h="all"===t?e.totalMessages:u.reduce((e,t)=>e+t.messageCount,0),f=u.reduce((e,t)=>e+t.toolCallCount,0),m=(a=e.dailyActivity,n=t,a.filter(e=>p(e.date,n))),y=m.reduce((e,t)=>e+t.sessionCount,0),g=m.reduce((e,t)=>e+t.messageCount,0),C={};if("all"===t)for(let[t,a]of Object.entries(e.modelUsage))C[t]={input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadInputTokens,cacheCreation:a.cacheCreationInputTokens,cacheCreation5m:a.cacheCreation5mInputTokens,cacheCreation1h:a.cacheCreation1hInputTokens,cost:l(t,a.inputTokens,a.outputTokens,a.cacheReadInputTokens,a.cacheCreation5mInputTokens,a.cacheCreation1hInputTokens)};else{for(let e of c)for(let[t,a]of Object.entries(e.tokensByModel))C[t]||(C[t]={input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0,cost:0}),C[t].input+=a.input,C[t].output+=a.output,C[t].cacheRead+=a.cacheRead,C[t].cacheCreation+=a.cacheCreation,C[t].cacheCreation5m+=a.cacheCreation5m,C[t].cacheCreation1h+=a.cacheCreation1h;for(let[t,a]of Object.entries(C)){let n=e.modelUsage[t];if(!n)continue;let r=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,s=a.input+a.output+a.cacheRead+a.cacheCreation;r>0&&(a.cost=s/r*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}}let v=c.map(e=>{let t=0,a=0,n=0,r=0;for(let s of Object.values(e.tokensByModel))t+=s.input,a+=s.output,n+=s.cacheRead,r+=s.cacheCreation;return{date:e.date,input:t,output:a,cacheRead:n,cacheCreation:r}}),S=(0,r.default)().format("YYYY-MM-DD"),k=(0,r.default)().startOf("month").format("YYYY-MM-DD"),$=e.dailyActivity.find(e=>e.date===S)?.messageCount??0,T=e.dailyActivity.filter(e=>e.date>=k).reduce((e,t)=>e+t.messageCount,0),M=Object.values(C).reduce((e,t)=>e+t.cost,0),w=t=>{let a=0;for(let n of t)for(let[t,r]of Object.entries(n.tokensByModel)){let n=e.modelUsage[t];if(!n)continue;let s=n.inputTokens+n.outputTokens+n.cacheReadInputTokens+n.cacheCreationInputTokens,i=r.input+r.output+r.cacheRead+r.cacheCreation;s>0&&(a+=i/s*l(t,n.inputTokens,n.outputTokens,n.cacheReadInputTokens,n.cacheCreation5mInputTokens,n.cacheCreation1hInputTokens))}return a},b=w(e.dailyModelTokens.filter(e=>e.date===S));return{totalSessions:d,totalMessages:h,previousSessions:y,previousMessages:g,totalToolCalls:f,dailyActivity:u,modelTokens:C,dailyTokens:v,todayMessages:$,thisMonthMessages:T,totalCost:M,todayCost:b,thisMonthCost:w(e.dailyModelTokens.filter(e=>e.date>=k)),previousCost:w((i=e.dailyModelTokens,o=t,i.filter(e=>p(e.date,o)))),hourlyDistribution:e.hourCounts,dayHourDistribution:e.dayHourCounts,firstSessionDate:e.firstSessionDate,lastComputedDate:e.lastComputedDate,computedAt:new Date().toISOString()}},"readStatsCache",0,f],333493)},422392,e=>{"use strict";let t=new Map,a=6e4;e.s(["getCached",0,e=>{let a=t.get(e);return a?Date.now()>a.expiresAt?(t.delete(e),null):a.data:null},"setCached",0,(e,n,r=a)=>{t.set(e,{data:n,expiresAt:Date.now()+r})}])},990294,(e,t,a)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",a="minute",n="hour",r="week",s="month",i="quarter",o="year",u="date",c="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(e,t,a){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(a)+e},f="en",p={};p[f]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],a=e%100;return"["+e+(t[(a-20)%10]||t[a]||t[0])+"]"}};var m="$isDayjsObject",y=function(e){return e instanceof S||!(!e||!e[m])},g=function e(t,a,n){var r;if(!t)return f;if("string"==typeof t){var s=t.toLowerCase();p[s]&&(r=s),a&&(p[s]=a,r=s);var i=t.split("-");if(!r&&i.length>1)return e(i[0])}else{var o=t.name;p[o]=t,r=o}return!n&&r&&(f=r),r||!n&&f},C=function(e,t){if(y(e))return e.clone();var a="object"==typeof t?t:{};return a.date=e,a.args=arguments,new S(a)},v={s:h,z:function(e){var t=-e.utcOffset(),a=Math.abs(t);return(t<=0?"+":"-")+h(Math.floor(a/60),2,"0")+":"+h(a%60,2,"0")},m:function e(t,a){if(t.date()<a.date())return-e(a,t);var n=12*(a.year()-t.year())+(a.month()-t.month()),r=t.clone().add(n,s),i=a-r<0,o=t.clone().add(n+(i?-1:1),s);return+(-(n+(a-r)/(i?r-o:o-r))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:s,y:o,w:r,d:"day",D:u,h:n,m:a,s:t,ms:e,Q:i})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};v.l=g,v.i=y,v.w=function(e,t){return C(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var S=function(){function h(e){this.$L=g(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[m]=!0}var f=h.prototype;return f.parse=function(e){this.$d=function(e){var t=e.date,a=e.utc;if(null===t)return new Date(NaN);if(v.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(l);if(n){var r=n[2]-1||0,s=(n[7]||"0").substring(0,3);return a?new Date(Date.UTC(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)):new Date(n[1],r,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)}}return new Date(t)}(e),this.init()},f.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},f.$utils=function(){return v},f.isValid=function(){return this.$d.toString()!==c},f.isSame=function(e,t){var a=C(e);return this.startOf(t)<=a&&a<=this.endOf(t)},f.isAfter=function(e,t){return C(e)<this.startOf(t)},f.isBefore=function(e,t){return this.endOf(t)<C(e)},f.$g=function(e,t,a){return v.u(e)?this[t]:this.set(a,e)},f.unix=function(){return Math.floor(this.valueOf()/1e3)},f.valueOf=function(){return this.$d.getTime()},f.startOf=function(e,i){var c=this,l=!!v.u(i)||i,d=v.p(e),h=function(e,t){var a=v.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return l?a:a.endOf("day")},f=function(e,t){return v.w(c.toDate()[e].apply(c.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(t)),c)},p=this.$W,m=this.$M,y=this.$D,g="set"+(this.$u?"UTC":"");switch(d){case o:return l?h(1,0):h(31,11);case s:return l?h(1,m):h(0,m+1);case r:var C=this.$locale().weekStart||0,S=(p<C?p+7:p)-C;return h(l?y-S:y+(6-S),m);case"day":case u:return f(g+"Hours",0);case n:return f(g+"Minutes",1);case a:return f(g+"Seconds",2);case t:return f(g+"Milliseconds",3);default:return this.clone()}},f.endOf=function(e){return this.startOf(e,!1)},f.$set=function(r,i){var c,l=v.p(r),d="set"+(this.$u?"UTC":""),h=((c={}).day=d+"Date",c[u]=d+"Date",c[s]=d+"Month",c[o]=d+"FullYear",c[n]=d+"Hours",c[a]=d+"Minutes",c[t]=d+"Seconds",c[e]=d+"Milliseconds",c)[l],f="day"===l?this.$D+(i-this.$W):i;if(l===s||l===o){var p=this.clone().set(u,1);p.$d[h](f),p.init(),this.$d=p.set(u,Math.min(this.$D,p.daysInMonth())).$d}else h&&this.$d[h](f);return this.init(),this},f.set=function(e,t){return this.clone().$set(e,t)},f.get=function(e){return this[v.p(e)]()},f.add=function(e,i){var u,c=this;e=Number(e);var l=v.p(i),d=function(t){var a=C(c);return v.w(a.date(a.date()+Math.round(t*e)),c)};if(l===s)return this.set(s,this.$M+e);if(l===o)return this.set(o,this.$y+e);if("day"===l)return d(1);if(l===r)return d(7);var h=((u={})[a]=6e4,u[n]=36e5,u[t]=1e3,u)[l]||1,f=this.$d.getTime()+e*h;return v.w(f,this)},f.subtract=function(e,t){return this.add(-1*e,t)},f.format=function(e){var t=this,a=this.$locale();if(!this.isValid())return a.invalidDate||c;var n=e||"YYYY-MM-DDTHH:mm:ssZ",r=v.z(this),s=this.$H,i=this.$m,o=this.$M,u=a.weekdays,l=a.months,h=a.meridiem,f=function(e,a,r,s){return e&&(e[a]||e(t,n))||r[a].slice(0,s)},p=function(e){return v.s(s%12||12,e,"0")},m=h||function(e,t,a){var n=e<12?"AM":"PM";return a?n.toLowerCase():n};return n.replace(d,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return v.s(t.$y,4,"0");case"M":return o+1;case"MM":return v.s(o+1,2,"0");case"MMM":return f(a.monthsShort,o,l,3);case"MMMM":return f(l,o);case"D":return t.$D;case"DD":return v.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return f(a.weekdaysMin,t.$W,u,2);case"ddd":return f(a.weekdaysShort,t.$W,u,3);case"dddd":return u[t.$W];case"H":return String(s);case"HH":return v.s(s,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return m(s,i,!0);case"A":return m(s,i,!1);case"m":return String(i);case"mm":return v.s(i,2,"0");case"s":return String(t.$s);case"ss":return v.s(t.$s,2,"0");case"SSS":return v.s(t.$ms,3,"0");case"Z":return r}return null}(e)||r.replace(":","")})},f.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},f.diff=function(e,u,c){var l,d=this,h=v.p(u),f=C(e),p=(f.utcOffset()-this.utcOffset())*6e4,m=this-f,y=function(){return v.m(d,f)};switch(h){case o:l=y()/12;break;case s:l=y();break;case i:l=y()/3;break;case r:l=(m-p)/6048e5;break;case"day":l=(m-p)/864e5;break;case n:l=m/36e5;break;case a:l=m/6e4;break;case t:l=m/1e3;break;default:l=m}return c?l:v.a(l)},f.daysInMonth=function(){return this.endOf(s).$D},f.$locale=function(){return p[this.$L]},f.locale=function(e,t){if(!e)return this.$L;var a=this.clone(),n=g(e,t,!0);return n&&(a.$L=n),a},f.clone=function(){return v.w(this.$d,this)},f.toDate=function(){return new Date(this.valueOf())},f.toJSON=function(){return this.isValid()?this.toISOString():null},f.toISOString=function(){return this.$d.toISOString()},f.toString=function(){return this.$d.toUTCString()},h}(),k=S.prototype;return C.prototype=k,[["$ms",e],["$s",t],["$m",a],["$H",n],["$W","day"],["$M",s],["$y",o],["$D",u]].forEach(function(e){k[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),C.extend=function(e,t){return e.$i||(e(t,S,C),e.$i=!0),C},C.locale=g,C.isDayjs=y,C.unix=function(e){return C(1e3*e)},C.en=p[f],C.Ls=p,C.p={},C}()},975925,e=>{"use strict";var t=e.i(990294);let a=e=>{let a=new Date;switch(e){case"today":return{start:(0,t.default)().startOf("day").toDate(),end:a};case"7d":return{start:(0,t.default)().subtract(7,"day").startOf("day").toDate(),end:a};case"30d":return{start:(0,t.default)().subtract(30,"day").startOf("day").toDate(),end:a};case"all":return{start:new Date(0),end:a}}};e.s(["isDateStringWithinPeriod",0,(e,n)=>{if("all"===n)return!0;let{start:r,end:s}=a(n),i=(0,t.default)(e).toDate();return i>=r&&i<=s},"isWithinPeriod",0,(e,t)=>{if("all"===t)return!0;let{start:n,end:r}=a(t),s=new Date(e);return s>=n&&s<=r},"parsePeriod",0,e=>"today"===e||"7d"===e||"30d"===e||"all"===e?e:"all"])},411941,e=>{"use strict";var t=e.i(924868),a=e.i(522734),n=e.i(814747),r=e.i(446786),s=e.i(319668),i=e.i(975925),o=e.i(7991);let u=n.default.join(r.default.homedir(),".claude","projects"),c=e=>/^agent-/.test(e),l=async()=>{let e=[];try{for(let a of(await t.default.readdir(u))){let r=n.default.join(u,a),s=await t.default.stat(r).catch(()=>null);if(s?.isDirectory())for(let s of(await t.default.readdir(r).catch(()=>[])))!s.endsWith(".jsonl")||c(s)||e.push({filePath:n.default.join(r,s),project:a})}}catch{}return e},d=async(e,t,n)=>{let r=new Map,u="";try{let o=(0,a.createReadStream)(e,{encoding:"utf-8"});for await(let e of s.default.createInterface({input:o,crlfDelay:1/0}))if(e.trim())try{let a=JSON.parse(e),s=String(a.timestamp??"");if(u||"string"!=typeof a.cwd||(u=a.cwd),!s||!(0,i.isWithinPeriod)(s,n))continue;let o=String(a.sessionId??"");if(!o)continue;let c=String(a.type??"");if("user"!==c&&"assistant"!==c)continue;let l=r.get(o);if(l||(l={sessionId:o,project:t,startedAt:s,lastActivityAt:s,messageCount:0,totalInputTokens:0,totalOutputTokens:0,model:""},r.set(o,l)),s<l.startedAt&&(l.startedAt=s),s>l.lastActivityAt&&(l.lastActivityAt=s),"user"===c&&l.messageCount++,"assistant"===c){let e=a.message;if(e){let t=String(e.model??"");t&&(l.model=t);let a=e.usage;a&&(l.totalInputTokens+=Number(a.input_tokens??0),l.totalOutputTokens+=Number(a.output_tokens??0))}}}catch{}}catch{}if(u){let e=(0,o.shortenCwd)(u);for(let t of r.values())t.project=e}return Array.from(r.values())},h=async(e,t)=>{let a=[],n=0,r=async()=>{for(;n<e.length;){let t=n++;a[t]=await e[t]()}},s=Array.from({length:Math.min(t,e.length)},()=>r());return await Promise.all(s),a},f=async(e,t)=>{let n=new Map;try{let r=(0,a.createReadStream)(e,{encoding:"utf-8"});for await(let e of s.default.createInterface({input:r,crlfDelay:1/0}))if(e.trim())try{let a=JSON.parse(e),r=String(a.timestamp??"");if(!r)continue;let s=r.slice(0,10);if(!t.has(s))continue;let i=String(a.sessionId??"");if(!i)continue;let o=String(a.type??"");if("user"!==o&&"assistant"!==o)continue;let u=new Date(r).getTime();if(isNaN(u))continue;let c=n.get(s);c||(c=new Map,n.set(s,c));let l=c.get(i);l?l.push(u):c.set(i,[u])}catch{}}catch{}return n},p=async e=>{let t=await l();if(0===t.length)return new Map;let a=t.map(t=>()=>f(t.filePath,e)),n=await h(a,10),r=new Map;for(let e of n)for(let[t,a]of e){let e=r.get(t);for(let[n,s]of(e||(e=new Map,r.set(t,e)),a)){let t=e.get(n);t?t.push(...s):e.set(n,[...s])}}return r},m=async e=>{let t=await l();if(0===t.length)return[];let a=t.map(t=>()=>d(t.filePath,t.project,e)),n=await h(a,10),r=new Map;for(let e of n)for(let t of e){let e=r.get(t.project);e?(e.sessionCount++,e.messageCount+=t.messageCount,e.totalTokens+=t.totalInputTokens+t.totalOutputTokens):r.set(t.project,{project:t.project,sessionCount:1,messageCount:t.messageCount,totalTokens:t.totalInputTokens+t.totalOutputTokens})}return Array.from(r.values()).sort((e,t)=>t.totalTokens-e.totalTokens)},y=async e=>{let t=await l();if(0===t.length)return[];let a=t.map(t=>()=>d(t.filePath,t.project,e)),n=await h(a,10),r=[];for(let e of n)for(let t of e)r.push({sessionId:t.sessionId,project:t.project,startedAt:t.startedAt,lastActivityAt:t.lastActivityAt,messageCount:t.messageCount,totalTokens:t.totalInputTokens+t.totalOutputTokens,model:t.model});return r.sort((e,t)=>t.startedAt.localeCompare(e.startedAt))};e.s(["parseAllProjects",0,m,"parseAllSessions",0,y,"parseTimestampsByDay",0,p])},69396,e=>{"use strict";var t=e.i(926747),a=e.i(190406),n=e.i(244898),r=e.i(262950),s=e.i(411941),i=e.i(333493),o=e.i(975925),u=e.i(422392);let c=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"method-not-allowed"});let a=(0,o.parsePeriod)(e.query.period),n=`stats:sessions:${a}`,r=(0,u.getCached)(n);if(r)return t.status(200).json(r);let[c,l]=await Promise.all([(0,s.parseAllSessions)(a),(0,i.readStatsCache)()]),d=c.map(e=>new Date(e.lastActivityAt).getTime()-new Date(e.startedAt).getTime()).filter(e=>e>0),h={sessions:c,averageDurationMs:d.length>0?Math.round(d.reduce((e,t)=>e+t,0)/d.length):0,longestSession:l.longestSession.sessionId?l.longestSession:null,totalSessions:c.length};return(0,u.setCached)(n,h),t.status(200).json(h)};e.s(["default",0,c],900287);var l=e.i(900287),d=e.i(7031),h=e.i(181927),f=e.i(846432);let p=(0,r.hoist)(l,"default"),m=(0,r.hoist)(l,"config"),y=new n.PagesAPIRouteModule({definition:{kind:a.RouteKind.PAGES_API,page:"/api/stats/sessions",pathname:"/api/stats/sessions",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function g(e,a,n){n.requestMeta&&(0,f.setRequestMeta)(e,n.requestMeta),y.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/stats/sessions";r=r.replace(/\/index$/,"")||"/";let s=await y.prepare(e,a,{srcPage:r});if(!s){a.statusCode=400,a.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:i,params:o,prerenderManifest:u,routerServerContext:c}=s;try{let t,n=e.method||"GET",s=(0,d.getTracer)(),l=s.getActiveScopeSpan(),f=!!(null==c?void 0:c.isWrappedByNextServer),p=y.instrumentationOnRequestError.bind(y),m=async l=>y.render(e,a,{query:{...i,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:u.preview,propagateError:!1,dev:y.isDev,page:"/api/stats/sessions",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>p(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":a.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==h.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=e.get("next.route");if(i){let e=`${n} ${i}`;l.setAttributes({"next.route":i,"http.route":i,"next.span_name":e}),l.updateName(e),t&&t!==l&&(t.setAttribute("http.route",i),t.updateName(e))}else l.updateName(`${n} ${r}`)});f&&l?await m(l):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(h.BaseServerSpan.handleRequest,{spanName:`${n} ${r}`,kind:d.SpanKind.SERVER,attributes:{"http.method":n,"http.target":e.url}},m),void 0,!f))}catch(e){if(y.isDev)throw e;(0,t.sendError)(a,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}e.s(["config",0,m,"default",0,p,"handler",0,g],69396)}];
2
2
 
3
3
  //# sourceMappingURL=_0isokfh._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[135992,e=>{"use strict";var t=e.i(926747),i=e.i(190406),a=e.i(244898),n=e.i(262950),s=e.i(924868),r=e.i(814747),l=e.i(446786),o=e.i(233405),u=e.i(871911),d=e.i(796902),p=(e.i(522734),e.i(25146));let c=(0,p.createLogger)("session-stats"),f=r.default.join(l.default.homedir(),".purplemux","session-stats");r.default.join(l.default.homedir(),".claude","projects");let m=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,_=e=>r.default.join(f,`${e}.json`),h=e=>{let t=r.default.basename(e,".jsonl");return m.test(t)?t:null},w=async e=>{if(!m.test(e))return null;try{let t=await s.default.readFile(_(e),"utf-8");return JSON.parse(t)}catch{return null}},g=async e=>{await s.default.mkdir(f,{recursive:!0});let t=_(e.sessionId),i=`${t}.tmp`;try{await s.default.writeFile(i,JSON.stringify(e),{mode:384}),await s.default.rename(i,t)}catch(e){await s.default.unlink(i).catch(()=>{}),c.debug({err:e},"failed to write session stats")}},y=async(e,t)=>{if(!m.test(e))return;let i=await w(e)??{sessionId:e};await g({...i,...t,sessionId:e})};e.i(478319);var v=e.i(220951);e.i(143511);e.i(840665);e.i(319668);e.i(459015);e.i(746514);e.i(825265),e.i(964759);e.i(478490),e.i(133446),(0,p.createLogger)("timeline");let x=globalThis;x.__pmuxTimelineConnections||(x.__pmuxTimelineConnections=new Map),x.__pmuxTimelineFileWatchers||(x.__pmuxTimelineFileWatchers=new Map),x.__pmuxTimelineSessionWatchers||(x.__pmuxTimelineSessionWatchers=new Map),x.__pmuxTimelinePendingJsonlWatchers||(x.__pmuxTimelinePendingJsonlWatchers=new Map),x.__pmuxTimelineConnections;let S=x.__pmuxTimelineFileWatchers;x.__pmuxTimelineSessionWatchers,x.__pmuxTimelinePendingJsonlWatchers;let T=e=>e.readyState===v.WebSocket.OPEN&&e.bufferedAmount<1048576,P=(e,t)=>{T(e)&&e.send(JSON.stringify(t))},b=(0,p.createLogger)("statusline"),j=async e=>{let t=e.workspace?.project_dir,i=[];for(let e of(t&&(i.push(r.default.join(t,".claude","settings.local.json")),i.push(r.default.join(t,".claude","settings.json"))),i.push(r.default.join(l.default.homedir(),".claude","settings.json")),i))try{let t=await s.default.readFile(e,"utf-8"),i=JSON.parse(t),a=i?.statusLine?.command;if("string"==typeof a&&a.trim())return a}catch{}return null},k=async e=>{let t=e.rate_limits?.five_hour??null,i=e.rate_limits?.seven_day??null;if(!t&&!i)return;let a={ts:Date.now()/1e3,five_hour:t,seven_day:i};try{await s.default.writeFile(d.RATE_LIMITS_FILE,JSON.stringify(a))}catch(e){b.debug({err:e},"failed to write rate-limits.json")}},R=async e=>{let t=(e=>{let t=e.session_id;if(!t)return null;let i=e.context_window,a=i?.current_usage,n=a?(a.input_tokens??0)+(a.cache_creation_input_tokens??0)+(a.cache_read_input_tokens??0):0;return{sessionId:t,transcriptPath:e.transcript_path,inputTokens:i?.total_input_tokens??0,outputTokens:i?.total_output_tokens??0,cost:e.cost?.total_cost_usd??null,currentContextTokens:n,contextWindowSize:i?.context_window_size??0,usedPercentage:i?.used_percentage??null,model:e.model?.display_name??null,exceeds200k:e.exceeds_200k_tokens??!1,receivedAt:Date.now()}})(e);if(!t)return;await y(t.sessionId,t);let i=await w(t.sessionId)??t;try{for(let e of S.values())if(h(e.jsonlPath)===i.sessionId)for(let t of e.connections)P(t,{type:"timeline:stats-update",sessionStats:i})}catch(e){b.debug({err:e},"failed to broadcast session stats")}},A=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});if(!(0,u.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let i=e.body??{};await Promise.all([k(i),R(i)]),t.setHeader("Content-Type","text/plain; charset=utf-8");try{let e=await j(i);if(e){let a,n=await (a=JSON.stringify(i),new Promise((t,i)=>{let n=(0,o.spawn)("sh",["-c",e],{stdio:["pipe","pipe","pipe"]}),s="",r="";n.stdout.on("data",e=>{s+=e.toString()}),n.stderr.on("data",e=>{r+=e.toString()}),n.on("error",i),n.on("close",e=>{0!==e&&r&&b.debug({code:e,stderr:r},"user statusLine exited non-zero"),t(s)}),n.stdin.write(a),n.stdin.end()}));return t.status(200).send(n)}}catch(e){b.debug({err:e},"user statusLine failed")}return t.status(204).end()};e.s(["default",0,A],826327);var E=e.i(826327),N=e.i(7031),M=e.i(181927),W=e.i(846432);let I=(0,n.hoist)(E,"default"),$=(0,n.hoist)(E,"config"),q=new a.PagesAPIRouteModule({definition:{kind:i.RouteKind.PAGES_API,page:"/api/status/statusline",pathname:"/api/status/statusline",bundlePath:"",filename:""},userland:E,distDir:".next",relativeProjectDir:""});async function O(e,i,a){a.requestMeta&&(0,W.setRequestMeta)(e,a.requestMeta),q.isDev&&(0,W.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/status/statusline";n=n.replace(/\/index$/,"")||"/";let s=await q.prepare(e,i,{srcPage:n});if(!s){i.statusCode=400,i.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:r,params:l,prerenderManifest:o,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,N.getTracer)(),d=s.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=q.instrumentationOnRequestError.bind(q),f=async d=>q.render(e,i,{query:{...r,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:q.isDev,page:"/api/status/statusline",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":i.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==M.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=e.get("next.route");if(r){let e=`${a} ${r}`;d.setAttributes({"next.route":r,"http.route":r,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",r),t.updateName(e))}else d.updateName(`${a} ${n}`)});p&&d?await f(d):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(M.BaseServerSpan.handleRequest,{spanName:`${a} ${n}`,kind:N.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},f),void 0,!p))}catch(e){if(q.isDev)throw e;(0,t.sendError)(i,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,$,"default",0,I,"handler",0,O],135992)}];
2
+
3
+ //# sourceMappingURL=node_modules_next_dist_esm_build_templates_pages-api_00-t8sq.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),i=e.i(814747),a=e.i(446786);let n=i.default.join(a.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let a=e.headers["x-pmux-token"];var o="string"==typeof a?a:void 0;if(!o)return!1;let l=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let a=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=a;try{r.default.mkdirSync(i.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,a,{mode:384})}catch{}return a})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},845994,e=>{"use strict";var t=e.i(924868),r=e.i(814747),i=e.i(446786),a=e.i(254799),n=e.i(666126);(0,e.i(25146).createLogger)("config");let s=r.default.join(i.default.homedir(),".purplemux"),o=r.default.join(s,"config.json"),l=globalThis;l.__ptConfigLock||(l.__ptConfigLock=Promise.resolve());let u=async e=>{let t,r=new Promise(e=>{t=e}),i=l.__ptConfigLock;l.__ptConfigLock=r,await i;try{return await e()}finally{t()}},f=()=>({updatedAt:new Date().toISOString()}),d=async()=>{try{let e=await t.default.readFile(o,"utf-8");return JSON.parse(e)}catch{return null}},c=async e=>{let{updatedAt:r,...i}=e,a=JSON.stringify(i);if(l.__ptConfigContentCache===a)return;e.updatedAt=new Date().toISOString();let s=o+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,o)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}l.__ptConfigContentCache=a,(0,n.broadcastSync)({type:"config"})},p="scrypt:",g=e=>"string"==typeof e&&e.startsWith(p),m=async e=>{let t=a.default.randomBytes(16),r=await new Promise((r,i)=>{a.default.scrypt(e,t,64,(e,t)=>{e?i(e):r(t)})});return`${p}${t.toString("hex")}:${r.toString("hex")}`},h=async(e,t)=>{if(!g(t))return!1;let[,r,i]=t.split(":"),n=Buffer.from(r,"hex"),s=Buffer.from(i,"hex"),o=await new Promise((t,r)=>{a.default.scrypt(e,n,s.length,(e,i)=>{e?r(e):t(i)})});return a.default.timingSafeEqual(o,s)},y=async()=>await d()??f(),w=async e=>u(async()=>{let t=await d()??f();Object.assign(t,e),await c(t)}),S=async()=>{let e=await d();return!g(e?.authPassword)},k=async()=>{let e=await d();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>a.default.randomBytes(32).toString("hex"),"getConfig",0,y,"getDangerouslySkipPermissions",0,k,"hashPassword",0,m,"needsSetup",0,S,"updateConfig",0,w,"verifyPassword",0,h])},478490,e=>{"use strict";var t=e.i(845994);e.i(924868);var r=e.i(814747),i=e.i(446786),a=e.i(25146);e.i(796902),(0,a.createLogger)("hooks");let n=r.default.join(i.default.homedir(),".purplemux"),s=r.default.join(n,"hooks.json");r.default.join(n,"port"),r.default.join(n,"status-hook.sh");var o=e.i(160874);let l=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,u=e=>"string"==typeof e&&l.test(e),f=async e=>{let r=await (0,t.getDangerouslySkipPermissions)(),i=[`--settings ${s}`];return e&&i.push(`--append-system-prompt-file ${(0,o.getClaudePromptPath)(e)}`),r&&i.push("--dangerously-skip-permissions"),i.join(" ")},d=async(e,t)=>{if(!u(e))throw Error(`Invalid session ID format: ${e}`);let r=await f(t);return`claude --resume ${e} ${r}`};e.s(["buildResumeCommand",0,d,"isValidSessionId",0,u],478490)},133446,e=>{"use strict";var t=e.i(814747),r=e.i(446786);let i=t.default.join(r.default.homedir(),".claude","projects");e.s(["isAllowedJsonlPath",0,e=>{let r=t.default.resolve(e);return r.startsWith(i+t.default.sep)&&r.endsWith(".jsonl")}])},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(e=>Promise.resolve().then(()=>e(785128)))}];
2
+
3
+ //# sourceMappingURL=src_lib_136edwc._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[825265,804767,e=>{"use strict";var t=e.i(924868),a=e.i(814747),n=e.i(446786),r=e.i(44014),i=e.i(459015),l=e.i(666126),o=e.i(25146);let s=e=>"pane"===e.type?[e]:[...s(e.children[0]),...s(e.children[1])],d=e=>s(e).flatMap(e=>e.tabs),c=(e,t)=>"pane"===e.type?e.id===t?e:null:c(e.children[0],t)||c(e.children[1],t),u=e=>"pane"===e.type?e.id:u(e.children[0]),p=e=>"pane"===e.type?e.id:p(e.children[1]),w=(e,t,a)=>"pane"===e.type?e.id===t?a:e:{...e,children:[w(e.children[0],t,a),w(e.children[1],t,a)]},y=(e,t)=>{if("pane"===e.type)return null;let[a,n]=e.children;if("pane"===a.type&&a.id===t)return n;if("pane"===n.type&&n.id===t)return a;let r=y(a,t);if(r)return{...e,children:[r,n]};let i=y(n,t);return i?{...e,children:[a,i]}:null},f=(e,t)=>{if("pane"===e.type)return null;let[a,n]=e.children;return"pane"===a.type&&a.id===t?u(n):"pane"===n.type&&n.id===t?p(a):f(a,t)||f(n,t)},b=(e,t)=>{let a=f(e.root,t),n=y(e.root,t);n&&(e.root=n),e.activePaneId===t&&(e.activePaneId=a??s(e.root)[0]?.id??null)},h=(e,t,a)=>{if("split"!==e.type)return e;if(0===t.length)return{...e,ratio:a};let[n,...r]=t,i=[e.children[0],e.children[1]];return i[n]=h(e.children[n],r,a),{...e,children:i}},m=(e,t)=>"pane"===e.type||e.orientation!==t?1:m(e.children[0],t)+m(e.children[1],t),v=e=>{if("pane"===e.type)return!0;let t=m(e.children[0],e.orientation),a=m(e.children[1],e.orientation);return!(Math.abs(e.ratio-t/(t+a)*100)>1)&&v(e.children[0])&&v(e.children[1])},I=e=>{if("pane"===e.type)return e;let t=m(e.children[0],e.orientation),a=Math.round(t/(t+m(e.children[1],e.orientation))*1e4)/100;return{...e,ratio:a,children:[I(e.children[0]),I(e.children[1])]}};e.s(["collectAllTabs",0,d,"collectPanes",0,s,"equalizeNode",0,I,"findPane",0,c,"getFirstPaneId",0,u,"isEqualized",0,v,"removePaneWithFocus",0,b,"replacePane",0,w,"updateRatioAtPath",0,h],804767);let S=(0,o.createLogger)("layout"),T=a.default.join(n.default.homedir(),".purplemux"),P=globalThis;P.__ptLayoutLock||(P.__ptLayoutLock=Promise.resolve()),P.__ptLayoutContentCache||(P.__ptLayoutContentCache=new Map),void 0===P.__ptLayoutReconciler&&(P.__ptLayoutReconciler=null);let g=async e=>{let t,a=new Promise(e=>{t=e}),n=P.__ptLayoutLock;P.__ptLayoutLock=a,await n;try{return await e()}finally{t()}},L=()=>`pane-${(0,r.nanoid)(6)}`,N=()=>`tab-${(0,r.nanoid)(6)}`,_=e=>a.default.join(T,"workspaces",e),k=e=>a.default.join(_(e),"layout.json"),A=(e,t)=>{let a=L(),n=((e,t,a=0,n)=>{let r=N(),l={id:r,sessionName:(0,i.workspaceSessionName)(e,t,r),name:"",order:a};return n&&(l.cwd=n),l})(e,a,0,t);return{pane:{type:"pane",id:a,tabs:[n],activeTabId:n.id},tab:n}},C=async e=>{let a;try{a=await t.default.readFile(e,"utf-8")}catch{return null}try{return JSON.parse(a)}catch{S.warn(`${e} parse failed`);try{await t.default.copyFile(e,e.replace(/\.json$/,".json.bak"))}catch{}return null}},O=async(e,n)=>{let r,i=JSON.stringify({root:e.root,activePaneId:e.activePaneId}),o=P.__ptLayoutContentCache;if(o.get(n)===i)return;await t.default.mkdir(a.default.dirname(n),{recursive:!0});let s=n+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,n)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}o.set(n,i);let c=(r=n.match(/workspaces\/(ws-[^/]+)\//),r?.[1]??null);if(c){let t=P.__ptLayoutReconciler;if(t){let a=d(e.root).map(e=>e.id);t.reconcileWorkspaceTabs(c,a)}(0,l.broadcastSync)({type:"layout",workspaceId:c})}},D=async e=>{await t.default.rm(_(e),{recursive:!0,force:!0}),F(e);let a=P.__ptLayoutReconciler;a&&a.removeWorkspaceTabs(e),(0,l.broadcastSync)({type:"layout",workspaceId:e})},F=e=>{let t=k(e);P.__ptLayoutContentCache.delete(t)},$=(t,a)=>{let n=[...new Set(d(a).map(e=>e.cwd).filter(e=>!!e))];n.length>0&&e.A(981532).then(({updateWorkspaceDirectories:e})=>{e(t,n).catch(()=>{})}).catch(()=>{})},M=async(e,t,a,n)=>{let r=!1,l=new Set(t),o=s(e.root),d=new Set;for(let e of o)for(let t of e.tabs)if("web-browser"!==t.panelType&&(d.add(t.sessionName),!l.has(t.sessionName)&&"claude-code"===t.panelType)){let e=t.cwd||n;S.debug(`crossCheck: Claude tab session recreated: ${t.sessionName} (cwd: ${e})`),await (0,i.createSession)(t.sessionName,80,24,e),r=!0}let c=t.filter(e=>!d.has(e));if(c.length>0){r=!0;let e=o[0];if(e){let t=e.tabs.length>0?Math.max(...e.tabs.map(e=>e.order)):-1;for(let a of c)t++,e.tabs.push({id:N(),sessionName:a,name:"",order:t});!e.activeTabId&&e.tabs.length>0&&(e.activeTabId=e.tabs[0].id)}}if(r){e.updatedAt=new Date().toISOString();let t=s(e.root);e.activePaneId&&!t.some(t=>t.id===e.activePaneId)&&(e.activePaneId=t[0]?.id??null)}return r},R=async(e,t,a)=>{let{pane:n,tab:r}=A(e,t);return a?.panelType&&(r.panelType=a.panelType),await (0,i.createSession)(r.sessionName,80,24,t),{root:n,activePaneId:n.id,updatedAt:new Date().toISOString()}},j=async(e,t)=>g(async()=>{let a=k(e),n=await C(a);if(n)return n;let{pane:r,tab:l}=A(e,t);await (0,i.createSession)(l.sessionName,80,24,t);let o={root:r,activePaneId:r.id,updatedAt:new Date().toISOString()};return await O(o,a),o}),x=async(e,t)=>{let a=L(),n=N(),r=(0,i.workspaceSessionName)(e,a,n);return await (0,i.createSession)(r,80,24,t),{paneId:a,tab:{id:n,sessionName:r,name:"",order:0,...t?{cwd:t}:{}}}},U=async(e,t=[])=>{for(let e of t)try{await (0,i.killSession)(e)}catch{}},W=async(e,t,a,n,r,l)=>g(async()=>{let o=k(e),d=await C(o);if(!d)return null;let c=s(d.root).find(e=>e.id===t);if(!c)return null;let u="web-browser"===r,p=N(),w=(0,i.workspaceSessionName)(e,t,p);!u&&(await (0,i.createSession)(w,80,24,n),l&&await (0,i.sendKeys)(w,l));let y=c.tabs.length>0?Math.max(...c.tabs.map(e=>e.order))+1:0,f={id:p,sessionName:w,name:a?.trim()||(u?"Web Browser":""),order:y,...n?{cwd:n}:{},...r?{panelType:r}:{}};return c.tabs.push(f),c.activeTabId=p,d.updatedAt=new Date().toISOString(),await O(d,o),$(e,d.root),f}),E=async(e,t,a)=>{let n=await g(async()=>{let n=k(e),r=await C(n);if(!r)return null;let i=s(r.root).find(e=>e.id===t);if(!i)return null;let l=i.tabs.find(e=>e.id===a);return l?{sessionName:l.sessionName,panelType:l.panelType}:null});return!!n&&("web-browser"!==n.panelType&&await (0,i.killSession)(n.sessionName),g(async()=>{let n=k(e),r=await C(n);if(!r)return!1;let i=s(r.root).find(e=>e.id===t);if(!i)return!1;let l=i.tabs.findIndex(e=>e.id===a);return -1!==l&&(i.tabs.splice(l,1),i.activeTabId===a&&(i.activeTabId=i.tabs[0]?.id??null),0===i.tabs.length&&s(r.root).length>1&&b(r,t),i.tabs.forEach((e,t)=>{e.order=t}),r.updatedAt=new Date().toISOString(),await O(r,n),$(e,r.root),!0)}))},q=async(e,t,a,n)=>g(async()=>{let r=k(e),l=await C(r);if(!l)return!1;let o=s(l.root).find(e=>e.id===t);if(!o)return!1;let d=o.tabs.find(e=>e.id===a);return!!d&&(!!await (0,i.hasSession)(d.sessionName)||(await (0,i.createSession)(d.sessionName,80,24,d.cwd),n&&await (0,i.sendKeys)(d.sessionName,n),!0))}),z=e=>{let t=e.match(/^pt-(ws-.*?)-(pane-.*?)-(tab-.+)$/);return t?{wsId:t[1],paneId:t[2],tabId:t[3]}:null},B=async(e,t)=>{let a=z(e);a&&await g(async()=>{let n=k(a.wsId),r=await C(n);if(!r)return;let i=d(r.root).find(t=>t.sessionName===e);i&&(i.claudeSessionId=t,r.updatedAt=new Date().toISOString(),await O(r,n))})},J=async(e,t)=>{let a=z(e);a&&await g(async()=>{let n=k(a.wsId),r=await C(n);if(!r)return;let i=d(r.root).find(t=>t.sessionName===e);i&&i.claudeSummary!==t&&(i.claudeSummary=t,r.updatedAt=new Date().toISOString(),await O(r,n))})},K=async(e,t,a)=>{let n=z(e);n&&await g(async()=>{let r=k(n.wsId),i=await C(r);if(!i)return;let l=d(i.root).find(t=>t.sessionName===e);l&&(l.cliState!==t||l.dismissedAt!==a)&&(l.cliState=t,l.dismissedAt=a,i.updatedAt=new Date().toISOString(),await O(i,r))})},G=async(e,t)=>g(async()=>{let a=k(e),n=await C(a);if(!n)return null;let r=t(n);return r?(r.updatedAt=new Date().toISOString(),await O(r,a),$(e,r.root),r):null}),H=async(e,t)=>G(e,e=>{if(void 0!==t.activePaneId){if(!c(e.root,t.activePaneId))return null;e.activePaneId=t.activePaneId}return t.ratioUpdate&&(e.root=h(e.root,t.ratioUpdate.path,t.ratioUpdate.ratio)),t.equalize&&(e.root=I(e.root)),e}),Q=async(e,t,a)=>G(e,e=>{let n=c(e.root,t);if(!n)return null;if(void 0!==a.activeTabId){if(!n.tabs.some(e=>e.id===a.activeTabId))return null;n.activeTabId=a.activeTabId}return e}),V=async(e,t,a,n,r)=>{let l="web-browser"===r,o=L(),s=N(),d=(0,i.workspaceSessionName)(e,o,s);l||await (0,i.createSession)(d,80,24,n);let u={id:s,sessionName:d,name:l?"Web Browser":"",order:0,...n?{cwd:n}:{}};r&&(u.panelType=r);let p={type:"pane",id:o,tabs:[u],activeTabId:s},y=await G(e,e=>{let r=c(e.root,t);if(!r)return null;let i=v(e.root);if(n){let e=r.tabs.find(e=>e.id===r.activeTabId);e&&(e.cwd=n)}let l={type:"split",orientation:a,ratio:50,children:[{...r},p]};return e.root=w(e.root,t,l),i&&(e.root=I(e.root)),e.activePaneId=o,e});return y||l||await (0,i.killSession)(d).catch(()=>{}),y},X=async(e,t)=>{let a=[],n=await g(async()=>{let n=k(e),r=await C(n);if(!r)return null;let i=c(r.root,t);if(!i||s(r.root).length<=1)return null;a=i.tabs.filter(e=>"web-browser"!==e.panelType).map(e=>e.sessionName);let l=v(r.root);return b(r,t),l&&(r.root=I(r.root)),r.updatedAt=new Date().toISOString(),await O(r,n),$(e,r.root),r});return await Promise.all(a.map(e=>(0,i.killSession)(e).catch(()=>{}))),n},Y=async(e,t,a)=>G(e,e=>{let n=c(e.root,t);if(!n)return null;let r=new Map(n.tabs.map(e=>[e.id,e])),i=a.map((e,t)=>{let a=r.get(e);return a?{...a,order:t}:null}).filter(e=>null!==e);return i.length!==n.tabs.length?null:(n.tabs=i,e)}),Z=async(e,t,a,n,r)=>G(e,e=>{let i=c(e.root,a),l=c(e.root,n);if(!i||!l)return null;let o=i.tabs.findIndex(e=>e.id===t);if(-1===o)return null;let[d]=i.tabs.splice(o,1);return i.activeTabId===t&&(i.activeTabId=i.tabs[0]?.id??null),i.tabs.forEach((e,t)=>{e.order=t}),l.tabs.splice(r,0,d),l.tabs.forEach((e,t)=>{e.order=t}),l.activeTabId=t,0===i.tabs.length&&s(e.root).length>1&&b(e,a),e.activePaneId=n,e}),ee=async(t,a,n,r)=>{let i,l;if(void 0!==r.cwd||void 0!==r.title){let o=await (async()=>{let e=k(t),r=await C(e);return r?c(r.root,a)?.tabs.find(e=>e.id===n)?.sessionName??null:null})();if(o){let{getSessionCwd:t,getPaneCurrentCommand:a}=await e.A(322522),{formatTabTitle:n}=await e.A(245061);if(void 0!==r.cwd&&(i=await t(o)),void 0!==r.title){let[e,r]=await Promise.all([a(o),void 0!==i?Promise.resolve(i):t(o)]);e&&r&&(l=n(`${e}|${r}`))}}}return G(t,e=>{let t=c(e.root,a);if(!t)return null;let o=t.tabs.find(e=>e.id===n);if(!o)return null;let s=void 0!==r.title?l??r.title:void 0;return void 0!==r.name&&(o.name=r.name),void 0!==r.panelType&&(o.panelType=r.panelType),void 0!==s&&(o.title=s),void 0!==r.cwd&&(o.cwd=i??r.cwd),void 0!==r.lastCommand&&(o.lastCommand=r.lastCommand),void 0!==r.webUrl&&(o.webUrl=r.webUrl),e})};e.s(["addTabToPane",0,W,"closePaneInLayout",0,X,"createDefaultLayout",0,R,"createPane",0,x,"crossCheckLayout",0,M,"deletePane",0,U,"getLayout",0,j,"moveTabBetweenPanes",0,Z,"parseSessionName",0,z,"patchLayout",0,H,"patchPane",0,Q,"patchTab",0,ee,"readLayoutFile",0,C,"removeLayoutFile",0,D,"removeTabFromPane",0,E,"reorderTabsInPane",0,Y,"resolveLayoutDir",0,_,"resolveLayoutFile",0,k,"restartTabSession",0,q,"setLayoutReconciler",0,e=>{P.__ptLayoutReconciler=e},"splitPaneInLayout",0,V,"updateTabClaudeSessionId",0,B,"updateTabClaudeSummary",0,J,"updateTabCliStatus",0,K,"writeLayoutFile",0,O],825265)}];
1
+ module.exports=[825265,804767,e=>{"use strict";var t=e.i(924868),a=e.i(814747),n=e.i(446786),r=e.i(44014),i=e.i(459015),l=e.i(666126),o=e.i(25146);let s=e=>"pane"===e.type?[e]:[...s(e.children[0]),...s(e.children[1])],d=e=>s(e).flatMap(e=>e.tabs),c=(e,t)=>"pane"===e.type?e.id===t?e:null:c(e.children[0],t)||c(e.children[1],t),u=e=>"pane"===e.type?e.id:u(e.children[0]),p=e=>"pane"===e.type?e.id:p(e.children[1]),w=(e,t,a)=>"pane"===e.type?e.id===t?a:e:{...e,children:[w(e.children[0],t,a),w(e.children[1],t,a)]},y=(e,t)=>{if("pane"===e.type)return null;let[a,n]=e.children;if("pane"===a.type&&a.id===t)return n;if("pane"===n.type&&n.id===t)return a;let r=y(a,t);if(r)return{...e,children:[r,n]};let i=y(n,t);return i?{...e,children:[a,i]}:null},f=(e,t)=>{if("pane"===e.type)return null;let[a,n]=e.children;return"pane"===a.type&&a.id===t?u(n):"pane"===n.type&&n.id===t?p(a):f(a,t)||f(n,t)},b=(e,t)=>{let a=f(e.root,t),n=y(e.root,t);n&&(e.root=n),e.activePaneId===t&&(e.activePaneId=a??s(e.root)[0]?.id??null)},h=(e,t,a)=>{if("split"!==e.type)return e;if(0===t.length)return{...e,ratio:a};let[n,...r]=t,i=[e.children[0],e.children[1]];return i[n]=h(e.children[n],r,a),{...e,children:i}},m=(e,t)=>"pane"===e.type||e.orientation!==t?1:m(e.children[0],t)+m(e.children[1],t),v=e=>{if("pane"===e.type)return!0;let t=m(e.children[0],e.orientation),a=m(e.children[1],e.orientation);return!(Math.abs(e.ratio-t/(t+a)*100)>1)&&v(e.children[0])&&v(e.children[1])},I=e=>{if("pane"===e.type)return e;let t=m(e.children[0],e.orientation),a=Math.round(t/(t+m(e.children[1],e.orientation))*1e4)/100;return{...e,ratio:a,children:[I(e.children[0]),I(e.children[1])]}};e.s(["collectAllTabs",0,d,"collectPanes",0,s,"equalizeNode",0,I,"findPane",0,c,"getFirstPaneId",0,u,"isEqualized",0,v,"removePaneWithFocus",0,b,"replacePane",0,w,"updateRatioAtPath",0,h],804767);let S=(0,o.createLogger)("layout"),T=a.default.join(n.default.homedir(),".purplemux"),g=globalThis;g.__ptLayoutLock||(g.__ptLayoutLock=Promise.resolve()),g.__ptLayoutContentCache||(g.__ptLayoutContentCache=new Map),void 0===g.__ptLayoutReconciler&&(g.__ptLayoutReconciler=null);let P=async e=>{let t,a=new Promise(e=>{t=e}),n=g.__ptLayoutLock;g.__ptLayoutLock=a,await n;try{return await e()}finally{t()}},L=()=>`pane-${(0,r.nanoid)(6)}`,N=()=>`tab-${(0,r.nanoid)(6)}`,_=e=>a.default.join(T,"workspaces",e),k=e=>a.default.join(_(e),"layout.json"),A=(e,t)=>{let a=L(),n=((e,t,a=0,n)=>{let r=N(),l={id:r,sessionName:(0,i.workspaceSessionName)(e,t,r),name:"",order:a};return n&&(l.cwd=n),l})(e,a,0,t);return{pane:{type:"pane",id:a,tabs:[n],activeTabId:n.id},tab:n}},C=async e=>{let a;try{a=await t.default.readFile(e,"utf-8")}catch{return null}try{return JSON.parse(a)}catch{S.warn(`${e} parse failed`);try{await t.default.copyFile(e,e.replace(/\.json$/,".json.bak"))}catch{}return null}},O=async(e,n)=>{let r,i=JSON.stringify({root:e.root,activePaneId:e.activePaneId}),o=g.__ptLayoutContentCache;if(o.get(n)===i)return;await t.default.mkdir(a.default.dirname(n),{recursive:!0});let s=n+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,n)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}o.set(n,i);let c=(r=n.match(/workspaces\/(ws-[^/]+)\//),r?.[1]??null);if(c){let t=g.__ptLayoutReconciler;if(t){let a=d(e.root).map(e=>e.id);t.reconcileWorkspaceTabs(c,a)}(0,l.broadcastSync)({type:"layout",workspaceId:c})}},D=async e=>{await t.default.rm(_(e),{recursive:!0,force:!0}),F(e);let a=g.__ptLayoutReconciler;a&&a.removeWorkspaceTabs(e),(0,l.broadcastSync)({type:"layout",workspaceId:e})},F=e=>{let t=k(e);g.__ptLayoutContentCache.delete(t)},M=(t,a)=>{let n=[...new Set(d(a).map(e=>e.cwd).filter(e=>!!e))];n.length>0&&e.A(981532).then(({updateWorkspaceDirectories:e})=>{e(t,n).catch(()=>{})}).catch(()=>{})},U=async(e,t,a,n)=>{let r=!1,l=new Set(t),o=s(e.root),d=new Set;for(let e of o)for(let t of e.tabs)if("web-browser"!==t.panelType&&(d.add(t.sessionName),!l.has(t.sessionName)&&"claude-code"===t.panelType)){let e=t.cwd||n;S.debug(`crossCheck: Claude tab session recreated: ${t.sessionName} (cwd: ${e})`),await (0,i.createSession)(t.sessionName,80,24,e),r=!0}let c=t.filter(e=>!d.has(e));if(c.length>0){r=!0;let e=o[0];if(e){let t=e.tabs.length>0?Math.max(...e.tabs.map(e=>e.order)):-1;for(let a of c)t++,e.tabs.push({id:N(),sessionName:a,name:"",order:t});!e.activeTabId&&e.tabs.length>0&&(e.activeTabId=e.tabs[0].id)}}if(r){e.updatedAt=new Date().toISOString();let t=s(e.root);e.activePaneId&&!t.some(t=>t.id===e.activePaneId)&&(e.activePaneId=t[0]?.id??null)}return r},$=async(e,t,a)=>{let{pane:n,tab:r}=A(e,t);return a?.panelType&&(r.panelType=a.panelType),await (0,i.createSession)(r.sessionName,80,24,t),{root:n,activePaneId:n.id,updatedAt:new Date().toISOString()}},R=async(e,t)=>P(async()=>{let a=k(e),n=await C(a);if(n)return n;let{pane:r,tab:l}=A(e,t);await (0,i.createSession)(l.sessionName,80,24,t);let o={root:r,activePaneId:r.id,updatedAt:new Date().toISOString()};return await O(o,a),o}),j=async(e,t)=>{let a=L(),n=N(),r=(0,i.workspaceSessionName)(e,a,n);return await (0,i.createSession)(r,80,24,t),{paneId:a,tab:{id:n,sessionName:r,name:"",order:0,...t?{cwd:t}:{}}}},x=async(e,t=[])=>{for(let e of t)try{await (0,i.killSession)(e)}catch{}},W=async(e,t,a,n,r,l)=>P(async()=>{let o=k(e),d=await C(o);if(!d)return null;let c=s(d.root).find(e=>e.id===t);if(!c)return null;let u="web-browser"===r,p=N(),w=(0,i.workspaceSessionName)(e,t,p);!u&&(await (0,i.createSession)(w,80,24,n),l&&await (0,i.sendKeys)(w,l));let y=c.tabs.length>0?Math.max(...c.tabs.map(e=>e.order))+1:0,f={id:p,sessionName:w,name:a?.trim()||(u?"Web Browser":""),order:y,...n?{cwd:n}:{},...r?{panelType:r}:{}};return c.tabs.push(f),c.activeTabId=p,d.updatedAt=new Date().toISOString(),await O(d,o),M(e,d.root),f}),E=async(e,t,a)=>{let n=await P(async()=>{let n=k(e),r=await C(n);if(!r)return null;let i=s(r.root).find(e=>e.id===t);if(!i)return null;let l=i.tabs.find(e=>e.id===a);return l?{sessionName:l.sessionName,panelType:l.panelType}:null});return!!n&&("web-browser"!==n.panelType&&await (0,i.killSession)(n.sessionName),P(async()=>{let n=k(e),r=await C(n);if(!r)return!1;let i=s(r.root).find(e=>e.id===t);if(!i)return!1;let l=i.tabs.findIndex(e=>e.id===a);return -1!==l&&(i.tabs.splice(l,1),i.activeTabId===a&&(i.activeTabId=i.tabs[0]?.id??null),0===i.tabs.length&&s(r.root).length>1&&b(r,t),i.tabs.forEach((e,t)=>{e.order=t}),r.updatedAt=new Date().toISOString(),await O(r,n),M(e,r.root),!0)}))},q=async(e,t,a,n)=>P(async()=>{let r=k(e),l=await C(r);if(!l)return!1;let o=s(l.root).find(e=>e.id===t);if(!o)return!1;let d=o.tabs.find(e=>e.id===a);return!!d&&(!!await (0,i.hasSession)(d.sessionName)||(await (0,i.createSession)(d.sessionName,80,24,d.cwd),n&&await (0,i.sendKeys)(d.sessionName,n),!0))}),z=e=>{let t=e.match(/^pt-(ws-.*?)-(pane-.*?)-(tab-.+)$/);return t?{wsId:t[1],paneId:t[2],tabId:t[3]}:null},B=async(e,t)=>{let a=z(e);a&&await P(async()=>{let n=k(a.wsId),r=await C(n);if(!r)return;let i=d(r.root).find(t=>t.sessionName===e);i&&(i.claudeSessionId=t,r.updatedAt=new Date().toISOString(),await O(r,n))})},J=async(e,t)=>{let a=z(e);a&&await P(async()=>{let n=k(a.wsId),r=await C(n);if(!r)return;let i=d(r.root).find(t=>t.sessionName===e);i&&i.claudeSummary!==t&&(i.claudeSummary=t,r.updatedAt=new Date().toISOString(),await O(r,n))})},K=async(e,t)=>{let a=z(e);a&&await P(async()=>{let n=k(a.wsId),r=await C(n);if(!r)return;let i=d(r.root).find(t=>t.sessionName===e);i&&i.lastUserMessage!==t&&(i.lastUserMessage=t,r.updatedAt=new Date().toISOString(),await O(r,n))})},G=async(e,t,a)=>{let n=z(e);n&&await P(async()=>{let r=k(n.wsId),i=await C(r);if(!i)return;let l=d(i.root).find(t=>t.sessionName===e);l&&(l.cliState!==t||l.dismissedAt!==a)&&(l.cliState=t,l.dismissedAt=a,i.updatedAt=new Date().toISOString(),await O(i,r))})},H=async(e,t)=>P(async()=>{let a=k(e),n=await C(a);if(!n)return null;let r=t(n);return r?(r.updatedAt=new Date().toISOString(),await O(r,a),M(e,r.root),r):null}),Q=async(e,t)=>H(e,e=>{if(void 0!==t.activePaneId){if(!c(e.root,t.activePaneId))return null;e.activePaneId=t.activePaneId}return t.ratioUpdate&&(e.root=h(e.root,t.ratioUpdate.path,t.ratioUpdate.ratio)),t.equalize&&(e.root=I(e.root)),e}),V=async(e,t,a)=>H(e,e=>{let n=c(e.root,t);if(!n)return null;if(void 0!==a.activeTabId){if(!n.tabs.some(e=>e.id===a.activeTabId))return null;n.activeTabId=a.activeTabId}return e}),X=async(e,t,a,n,r)=>{let l="web-browser"===r,o=L(),s=N(),d=(0,i.workspaceSessionName)(e,o,s);l||await (0,i.createSession)(d,80,24,n);let u={id:s,sessionName:d,name:l?"Web Browser":"",order:0,...n?{cwd:n}:{}};r&&(u.panelType=r);let p={type:"pane",id:o,tabs:[u],activeTabId:s},y=await H(e,e=>{let r=c(e.root,t);if(!r)return null;let i=v(e.root);if(n){let e=r.tabs.find(e=>e.id===r.activeTabId);e&&(e.cwd=n)}let l={type:"split",orientation:a,ratio:50,children:[{...r},p]};return e.root=w(e.root,t,l),i&&(e.root=I(e.root)),e.activePaneId=o,e});return y||l||await (0,i.killSession)(d).catch(()=>{}),y},Y=async(e,t)=>{let a=[],n=await P(async()=>{let n=k(e),r=await C(n);if(!r)return null;let i=c(r.root,t);if(!i||s(r.root).length<=1)return null;a=i.tabs.filter(e=>"web-browser"!==e.panelType).map(e=>e.sessionName);let l=v(r.root);return b(r,t),l&&(r.root=I(r.root)),r.updatedAt=new Date().toISOString(),await O(r,n),M(e,r.root),r});return await Promise.all(a.map(e=>(0,i.killSession)(e).catch(()=>{}))),n},Z=async(e,t,a)=>H(e,e=>{let n=c(e.root,t);if(!n)return null;let r=new Map(n.tabs.map(e=>[e.id,e])),i=a.map((e,t)=>{let a=r.get(e);return a?{...a,order:t}:null}).filter(e=>null!==e);return i.length!==n.tabs.length?null:(n.tabs=i,e)}),ee=async(e,t,a,n,r)=>H(e,e=>{let i=c(e.root,a),l=c(e.root,n);if(!i||!l)return null;let o=i.tabs.findIndex(e=>e.id===t);if(-1===o)return null;let[d]=i.tabs.splice(o,1);return i.activeTabId===t&&(i.activeTabId=i.tabs[0]?.id??null),i.tabs.forEach((e,t)=>{e.order=t}),l.tabs.splice(r,0,d),l.tabs.forEach((e,t)=>{e.order=t}),l.activeTabId=t,0===i.tabs.length&&s(e.root).length>1&&b(e,a),e.activePaneId=n,e}),et=async(t,a,n,r)=>{let i,l;if(void 0!==r.cwd||void 0!==r.title){let o=await (async()=>{let e=k(t),r=await C(e);return r?c(r.root,a)?.tabs.find(e=>e.id===n)?.sessionName??null:null})();if(o){let{getSessionCwd:t,getPaneCurrentCommand:a}=await e.A(322522),{formatTabTitle:n}=await e.A(245061);if(void 0!==r.cwd&&(i=await t(o)),void 0!==r.title){let[e,r]=await Promise.all([a(o),void 0!==i?Promise.resolve(i):t(o)]);e&&r&&(l=n(`${e}|${r}`))}}}return H(t,e=>{let t=c(e.root,a);if(!t)return null;let o=t.tabs.find(e=>e.id===n);if(!o)return null;let s=void 0!==r.title?l??r.title:void 0;return void 0!==r.name&&(o.name=r.name),void 0!==r.panelType&&(o.panelType=r.panelType),void 0!==s&&(o.title=s),void 0!==r.cwd&&(o.cwd=i??r.cwd),void 0!==r.lastCommand&&(o.lastCommand=r.lastCommand),void 0!==r.webUrl&&(o.webUrl=r.webUrl),e})};e.s(["addTabToPane",0,W,"closePaneInLayout",0,Y,"createDefaultLayout",0,$,"createPane",0,j,"crossCheckLayout",0,U,"deletePane",0,x,"getLayout",0,R,"moveTabBetweenPanes",0,ee,"parseSessionName",0,z,"patchLayout",0,Q,"patchPane",0,V,"patchTab",0,et,"readLayoutFile",0,C,"removeLayoutFile",0,D,"removeTabFromPane",0,E,"reorderTabsInPane",0,Z,"resolveLayoutDir",0,_,"resolveLayoutFile",0,k,"restartTabSession",0,q,"setLayoutReconciler",0,e=>{g.__ptLayoutReconciler=e},"splitPaneInLayout",0,X,"updateTabClaudeSessionId",0,B,"updateTabClaudeSummary",0,J,"updateTabCliStatus",0,G,"updateTabLastUserMessage",0,K,"writeLayoutFile",0,O],825265)}];
2
2
 
3
3
  //# sourceMappingURL=src_lib_layout-store_ts_0fanx7c._.js.map