purplemux 0.3.0 → 0.3.2

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 (204) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +49 -49
  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 +7 -7
  6. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06an6au._.js +1 -1
  7. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__02f5zis._.js → [root-of-the-server]__08dxtof._.js} +1 -1
  8. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08z3drz._.js +1 -1
  9. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__11uqzxt._.js → [root-of-the-server]__0kumyrr._.js} +2 -2
  10. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0s7k1je._.js +3 -0
  11. package/.next/standalone/.next/server/chunks/ssr/{_13qovxu._.js → _0.stp0n._.js} +2 -2
  12. package/.next/standalone/.next/server/chunks/ssr/{_11h746h._.js → _00cx0p2._.js} +2 -2
  13. package/.next/standalone/.next/server/chunks/ssr/_02rms4q._.js +1 -1
  14. package/.next/standalone/.next/server/chunks/ssr/_06_8vkn._.js +2 -2
  15. package/.next/standalone/.next/server/chunks/ssr/{_0uwytsj._.js → _078y4dk._.js} +2 -2
  16. package/.next/standalone/.next/server/chunks/ssr/{_0uph6rf._.js → _0kzht5v._.js} +2 -2
  17. package/.next/standalone/.next/server/chunks/ssr/_0m6flec._.js +1 -1
  18. package/.next/standalone/.next/server/chunks/ssr/_0pg-q18._.js +1 -1
  19. package/.next/standalone/.next/server/chunks/ssr/_0r90z3l._.js +8 -0
  20. package/.next/standalone/.next/server/chunks/ssr/_0w.1ts8._.js +1 -1
  21. package/.next/standalone/.next/server/chunks/ssr/_0w6jc9p._.js +1 -1
  22. package/.next/standalone/.next/server/chunks/ssr/{_0z6yp7a._.js → _0y_feze._.js} +1 -1
  23. package/.next/standalone/.next/server/chunks/ssr/{_0v2czf2._.js → _10dec5o._.js} +1 -1
  24. package/.next/standalone/.next/server/chunks/ssr/{messages_01~7za1._.js → messages_0f3u1ly._.js} +1 -1
  25. package/.next/standalone/.next/server/chunks/ssr/{messages_10_yt3k._.js → messages_0k204ao._.js} +1 -1
  26. package/.next/standalone/.next/server/chunks/ssr/messages_de_terminal_json_[json]_cjs_05jirtw._.js +1 -1
  27. package/.next/standalone/.next/server/chunks/ssr/messages_en_terminal_json_[json]_cjs_0~ls3g-._.js +1 -1
  28. package/.next/standalone/.next/server/chunks/ssr/messages_es_terminal_json_[json]_cjs_04g2b1_._.js +1 -1
  29. package/.next/standalone/.next/server/chunks/ssr/messages_fr_terminal_json_[json]_cjs_0uhakya._.js +1 -1
  30. package/.next/standalone/.next/server/chunks/ssr/messages_ja_terminal_json_[json]_cjs_0776z4f._.js +1 -1
  31. package/.next/standalone/.next/server/chunks/ssr/messages_ko_terminal_json_[json]_cjs_06611.3._.js +1 -1
  32. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_terminal_json_[json]_cjs_034yyg9._.js +1 -1
  33. package/.next/standalone/.next/server/chunks/ssr/messages_ru_terminal_json_[json]_cjs_0emk8~n._.js +1 -1
  34. package/.next/standalone/.next/server/chunks/ssr/messages_tr_terminal_json_[json]_cjs_0xpix8g._.js +1 -1
  35. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_terminal_json_[json]_cjs_12vwl8a._.js +1 -1
  36. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_terminal_json_[json]_cjs_0spg5z5._.js +1 -1
  37. package/.next/standalone/.next/server/chunks/ssr/node_modules_0t5csgq._.js +1 -1
  38. package/.next/standalone/.next/server/chunks/ssr/node_modules_use-intl_dist_esm_production_react_0bnxcps.js +1 -1
  39. package/.next/standalone/.next/server/chunks/ssr/{src_components_00nri37._.js → src_components_05-kki3._.js} +1 -1
  40. package/.next/standalone/.next/server/chunks/ssr/{src_components_0jrgsp7._.js → src_components_0fb83uz._.js} +1 -1
  41. package/.next/standalone/.next/server/chunks/ssr/{src_components_0mhu5-5._.js → src_components_0gkfyrc._.js} +1 -1
  42. package/.next/standalone/.next/server/chunks/ssr/{src_components_0~e6p9k._.js → src_components_0n3s0.7._.js} +1 -1
  43. package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
  44. package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
  45. package/.next/standalone/.next/server/functions-config-manifest.json +1 -1
  46. package/.next/standalone/.next/server/middleware-build-manifest.js +49 -49
  47. package/.next/standalone/.next/server/pages/_app/build-manifest.json +6 -6
  48. package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
  49. package/.next/standalone/.next/server/pages/_app.js +2 -2
  50. package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/pages/_document.js +3 -3
  52. package/.next/standalone/.next/server/pages/_document.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/pages/_error/build-manifest.json +3 -3
  54. package/.next/standalone/.next/server/pages/_error/client-build-manifest.json +1 -1
  55. package/.next/standalone/.next/server/pages/_error.js +4 -4
  56. package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/pages/de/404.html +1 -1
  58. package/.next/standalone/.next/server/pages/de/500.html +1 -1
  59. package/.next/standalone/.next/server/pages/en/404.html +1 -1
  60. package/.next/standalone/.next/server/pages/en/500.html +1 -1
  61. package/.next/standalone/.next/server/pages/es/404.html +1 -1
  62. package/.next/standalone/.next/server/pages/es/500.html +1 -1
  63. package/.next/standalone/.next/server/pages/fr/404.html +1 -1
  64. package/.next/standalone/.next/server/pages/fr/500.html +1 -1
  65. package/.next/standalone/.next/server/pages/index/build-manifest.json +7 -7
  66. package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
  67. package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +4 -4
  68. package/.next/standalone/.next/server/pages/index.js +5 -5
  69. package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/pages/ja/404.html +1 -1
  71. package/.next/standalone/.next/server/pages/ja/500.html +1 -1
  72. package/.next/standalone/.next/server/pages/ko/404.html +1 -1
  73. package/.next/standalone/.next/server/pages/ko/500.html +1 -1
  74. package/.next/standalone/.next/server/pages/login/build-manifest.json +4 -4
  75. package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
  76. package/.next/standalone/.next/server/pages/login.js +4 -4
  77. package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
  79. package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
  80. package/.next/standalone/.next/server/pages/reports/build-manifest.json +6 -6
  81. package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
  82. package/.next/standalone/.next/server/pages/reports.js +5 -5
  83. package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/pages/reset/build-manifest.json +4 -4
  85. package/.next/standalone/.next/server/pages/reset/client-build-manifest.json +1 -1
  86. package/.next/standalone/.next/server/pages/reset.js +5 -5
  87. package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/pages/ru/404.html +1 -1
  89. package/.next/standalone/.next/server/pages/ru/500.html +1 -1
  90. package/.next/standalone/.next/server/pages/stats/build-manifest.json +6 -6
  91. package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
  92. package/.next/standalone/.next/server/pages/stats.js +5 -5
  93. package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +4 -4
  95. package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
  96. package/.next/standalone/.next/server/pages/tools-required.js +5 -5
  97. package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/pages/tr/404.html +1 -1
  99. package/.next/standalone/.next/server/pages/tr/500.html +1 -1
  100. package/.next/standalone/.next/server/pages/webview/build-manifest.json +6 -6
  101. package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
  102. package/.next/standalone/.next/server/pages/webview.js +5 -5
  103. package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
  104. package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
  105. package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
  106. package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
  107. package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
  108. package/.next/standalone/.next/static/chunks/01.oujz.z9cq..js +1 -0
  109. package/.next/standalone/.next/static/chunks/{0~23in~aqup16.js → 0176ysv-agwwx.js} +1 -1
  110. package/.next/standalone/.next/static/chunks/{0icark0o3b_6j.js → 03s5e91.zrsi_.js} +4 -4
  111. package/.next/standalone/.next/static/chunks/{0h57gqab.hlp8.js → 05zk.ks4roh-4.js} +6 -6
  112. package/.next/standalone/.next/static/chunks/05~6_0_288m3t.js +1 -0
  113. package/.next/standalone/.next/static/chunks/06uy95ammv.ud.js +1 -0
  114. package/.next/standalone/.next/static/chunks/08-el~h0ax929.js +1 -0
  115. package/.next/standalone/.next/static/chunks/{14_wa..vd6~2y.js → 0984g4~der6-4.js} +2 -2
  116. package/.next/standalone/.next/static/chunks/{016ho28abx9rt.js → 0_psc1~qmka.m.js} +4 -4
  117. package/.next/standalone/.next/static/chunks/{00s6ekn81~vi-.js → 0ap~c~__qw2_0.js} +6 -6
  118. package/.next/standalone/.next/static/chunks/0cir.n19rqu--.js +8 -0
  119. package/.next/standalone/.next/static/chunks/0dpud6_2~.2iv.js +1 -0
  120. package/.next/standalone/.next/static/chunks/0euxle0n3zjm3.js +1 -0
  121. package/.next/standalone/.next/static/chunks/0fax5v7rwhm7g.js +6 -0
  122. package/.next/standalone/.next/static/chunks/{0wf0tx~eo05t~.js → 0gfoib7v3q4k_.js} +1 -1
  123. package/.next/standalone/.next/static/chunks/{0538dx15fw8_n.js → 0kep81gqgj5f5.js} +7 -7
  124. package/.next/standalone/.next/static/chunks/0kriln8d9.mdo.js +1 -0
  125. package/.next/standalone/.next/static/chunks/{0eia27slkj8a0.js → 0l.88yoxq6tq8.js} +6 -6
  126. package/.next/standalone/.next/static/chunks/{0ea-k_kbq5gi1.js → 0n7jmg60eqx1a.js} +1 -1
  127. package/.next/standalone/.next/static/chunks/0nm1wy7i1z64_.js +1 -0
  128. package/.next/standalone/.next/static/chunks/0o1e0e_okaxww.js +1 -0
  129. package/.next/standalone/.next/static/chunks/{0l80eb3i.wx6k.js → 0p2m6i37_wprv.js} +1 -1
  130. package/.next/standalone/.next/static/chunks/0qz-agdkp9v1q.js +16 -0
  131. package/.next/standalone/.next/static/chunks/0w1v1a5wi.byq.js +1 -0
  132. package/.next/standalone/.next/static/chunks/0wha_~zny181w.js +1 -0
  133. package/.next/standalone/.next/static/chunks/0wu-q.gmu-64d.js +5 -0
  134. package/.next/standalone/.next/static/chunks/{00l132mp04ubq.js → 0xfp8sfehtui9.js} +1 -1
  135. package/.next/standalone/.next/static/chunks/0yzd69blq638o.js +1 -0
  136. package/.next/standalone/.next/static/chunks/{0erebazb6ppou.js → 12f3vk2rnkb8u.js} +6 -6
  137. package/.next/standalone/.next/static/chunks/135cvydv7redz.js +1 -0
  138. package/.next/standalone/.next/static/chunks/14rrqgjvv0_69.js +1 -0
  139. package/.next/standalone/.next/static/chunks/14vposxx99rq4.js +1 -0
  140. package/.next/standalone/.next/static/chunks/{09mlfwheuib_9.js → 168.xhj-0lt8a.js} +1 -1
  141. package/.next/standalone/.next/static/chunks/1792_-2m366un.js +1 -0
  142. package/.next/standalone/.next/static/chunks/{0nr5ul7mf1bo7.js → 179vwj~zm1gya.js} +1 -1
  143. package/.next/standalone/.next/static/chunks/{turbopack-10c4z.4l4dxnu.js → turbopack-0.6hkxuraykc4.js} +1 -1
  144. package/.next/standalone/.next/static/chunks/{turbopack-05.ehb143ourd.js → turbopack-0g2bivvnd2gyd.js} +1 -1
  145. package/.next/standalone/.next/static/chunks/{turbopack-0ji23rzquaykn.js → turbopack-0heaqdupr4xj6.js} +1 -1
  146. package/.next/standalone/.next/static/chunks/{turbopack-02wj1-z8.1081.js → turbopack-0jcfxeuy1ge85.js} +1 -1
  147. package/.next/standalone/.next/static/chunks/{turbopack-07.z46yb_52p5.js → turbopack-0rntg0~hh7h.0.js} +1 -1
  148. package/.next/standalone/.next/static/chunks/{turbopack-05j~l.6~_nm9l.js → turbopack-0sk1uk-fkcqdx.js} +1 -1
  149. package/.next/standalone/.next/static/chunks/{turbopack-11utvoktq4lmr.js → turbopack-0w89gj59tho~b.js} +1 -1
  150. package/.next/standalone/.next/static/chunks/{turbopack-04t3309-jsj3y.js → turbopack-0~gn911-6yqk2.js} +1 -1
  151. package/.next/standalone/.next/static/chunks/{turbopack-0-rpf9ad3km~v.js → turbopack-14fnzd5yh28gy.js} +1 -1
  152. package/.next/standalone/.next/static/{bybcCRIlOhSPtqdnJUPM- → pZhcwQ83aP87HDTIzzyJ6}/_buildManifest.js +8 -8
  153. package/.next/standalone/.next/static/{bybcCRIlOhSPtqdnJUPM- → pZhcwQ83aP87HDTIzzyJ6}/_clientMiddlewareManifest.js +1 -1
  154. package/.next/standalone/messages/de/terminal.json +1 -1
  155. package/.next/standalone/messages/en/terminal.json +1 -1
  156. package/.next/standalone/messages/es/terminal.json +1 -1
  157. package/.next/standalone/messages/fr/terminal.json +1 -1
  158. package/.next/standalone/messages/ja/terminal.json +1 -1
  159. package/.next/standalone/messages/ko/terminal.json +1 -1
  160. package/.next/standalone/messages/pt-BR/terminal.json +1 -1
  161. package/.next/standalone/messages/ru/terminal.json +1 -1
  162. package/.next/standalone/messages/tr/terminal.json +1 -1
  163. package/.next/standalone/messages/zh-CN/terminal.json +1 -1
  164. package/.next/standalone/messages/zh-TW/terminal.json +1 -1
  165. package/.next/standalone/package.json +6 -5
  166. package/.next/standalone/server.js +1 -1
  167. package/.next/standalone/src/config/tmux.conf +11 -3
  168. package/README.de.md +41 -14
  169. package/README.es.md +41 -14
  170. package/README.fr.md +41 -14
  171. package/README.ja.md +41 -14
  172. package/README.ko.md +41 -14
  173. package/README.md +41 -14
  174. package/README.pt-BR.md +41 -14
  175. package/README.ru.md +41 -14
  176. package/README.tr.md +41 -14
  177. package/README.zh-CN.md +41 -14
  178. package/README.zh-TW.md +41 -14
  179. package/dist/server.js +6 -5
  180. package/package.json +6 -5
  181. package/src/config/tmux.conf +11 -3
  182. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0y7-o~r._.js +0 -3
  183. package/.next/standalone/.next/server/chunks/ssr/_08ytq3p._.js +0 -8
  184. package/.next/standalone/.next/static/chunks/00snihvygw9l4.js +0 -1
  185. package/.next/standalone/.next/static/chunks/00yfl7agnve...js +0 -5
  186. package/.next/standalone/.next/static/chunks/02ocrfbfg24nx.js +0 -1
  187. package/.next/standalone/.next/static/chunks/04rkjr-2duj5b.js +0 -1
  188. package/.next/standalone/.next/static/chunks/0c8wt2p0xhe5i.js +0 -1
  189. package/.next/standalone/.next/static/chunks/0duqg-kf_y-i3.js +0 -1
  190. package/.next/standalone/.next/static/chunks/0ep22zye8flqz.js +0 -1
  191. package/.next/standalone/.next/static/chunks/0ff6a07hvp4pu.js +0 -6
  192. package/.next/standalone/.next/static/chunks/0fg9x61ohrtv3.js +0 -1
  193. package/.next/standalone/.next/static/chunks/0fgx5m8vdxaap.js +0 -1
  194. package/.next/standalone/.next/static/chunks/0m_sn0gry7q~c.js +0 -1
  195. package/.next/standalone/.next/static/chunks/0p5c0gp6gyhh6.js +0 -1
  196. package/.next/standalone/.next/static/chunks/0qsmo2marl-6d.js +0 -16
  197. package/.next/standalone/.next/static/chunks/0ul9.j_tmw365.js +0 -1
  198. package/.next/standalone/.next/static/chunks/107yj1xx63glr.js +0 -1
  199. package/.next/standalone/.next/static/chunks/12_04jv.ecbd-.js +0 -1
  200. package/.next/standalone/.next/static/chunks/14cccdp9z2qvf.js +0 -8
  201. package/.next/standalone/.next/static/chunks/14yj.l6qq359_.js +0 -1
  202. package/.next/standalone/.next/static/chunks/1786bmcy3s8sd.js +0 -1
  203. package/.next/standalone/.next/static/chunks/17mf_h-e8sebp.js +0 -1
  204. /package/.next/standalone/.next/static/{bybcCRIlOhSPtqdnJUPM- → pZhcwQ83aP87HDTIzzyJ6}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[811705,396552,a=>{"use strict";var b=a.i(508171),c=a.i(799856);a.s(["Card",0,function({className:a,size:d="default",...e}){return(0,b.jsx)("div",{"data-slot":"card","data-size":d,className:(0,c.cn)("group/card flex flex-col gap-4 overflow-hidden rounded-xl bg-card py-4 text-sm text-card-foreground ring-1 ring-foreground/10 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",a),...e})},"CardContent",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-content",className:(0,c.cn)("px-4 group-data-[size=sm]/card:px-3",a),...d})},"CardHeader",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-header",className:(0,c.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",a),...d})},"CardTitle",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-title",className:(0,c.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",a),...d})}],811705);var d=a.i(398544);let e=a=>a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:a.toLocaleString();a.s(["WEEKDAY_LABELS",0,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"formatAxisTick",0,a=>e(a),"formatCostWithComma",0,a=>{if(a<1)return`$${a.toFixed(2)}`;let[b,c]=a.toFixed(1).split(".");return`$${Number(b).toLocaleString()}.${c}`},"formatDate",0,a=>(0,d.default)(a).format("MM/DD"),"formatDuration",0,a=>{let b=Math.floor(a/6e4);if(b<60)return`${b}m`;let c=Math.floor(b/60);if(c<24)return`${c}h ${b%60}m`;let d=Math.floor(c/24);return`${d}d ${c%24}h`},"formatNumber",0,e,"formatNumberWithComma",0,a=>a.toLocaleString(),"getChangeRate",0,(a,b)=>{if(0===b)return null;let c=(a-b)/b*100;return`${c>=0?"+":""}${Math.round(c).toLocaleString()}%`}],396552)},436028,a=>{"use strict";let b=(0,a.i(564375).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],436028)},776979,a=>{"use strict";var b=a.i(508171),c=a.i(127669),d=a.i(113952),e=a.i(436028),f=a.i(506766),g=a.i(396465);let h=({onRetry:a})=>{let c=(0,d.useTranslations)("stats"),h=(0,d.useTranslations)("common");return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 rounded-xl bg-card py-12 ring-1 ring-foreground/10",children:[(0,b.jsx)(e.AlertCircle,{className:"h-5 w-5 text-muted-foreground"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:c("errorLoadFailed")}),(0,b.jsxs)(g.Button,{variant:"outline",size:"sm",onClick:a,children:[(0,b.jsx)(f.RefreshCw,{className:"mr-1.5 h-3 w-3"}),h("retry")]})]})};class i extends c.Component{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(a,b){console.error(`[${this.props.sectionName}] Error:`,a,b)}handleRetry=()=>{this.setState({hasError:!1})};render(){return this.state.hasError?(0,b.jsx)(h,{onRetry:this.handleRetry}):this.props.children}}a.s(["default",0,i])},321327,a=>{"use strict";var b=a.i(579168),c=a.i(627068),d=a.i(332759),e=a.i(817359),f=a.i(468695),g=a.i(508171),h=a.i(127669),i=a.i(119059),j=a.i(113952),k=a.i(199987),l=a.i(125487),m=a.i(274399),n=a.i(396465),o=a.i(356233),p=a.i(266929),q=a.i(776979),r=a.i(398544),s=a.i(92654),t=a.i(93538),u=a.i(643228),v=a.i(506766),w=a.i(581228),x=a.i(510414),y=a.i(811705),z=a.i(678240),A=a.i(396552);let B="prose prose-sm prose-invert max-w-none text-foreground/80 [&_h2]:mt-4 [&_h2]:mb-1 [&_h2]:text-base [&_h2]:font-semibold [&_h2]:text-foreground [&_h3]:mt-2 [&_h3]:mb-0.5 [&_h3]:text-sm [&_h3]:font-medium [&_h3]:text-foreground/80 [&_ul]:my-0.5 [&_ul]:pl-4 [&_li]:my-0 [&_li]:text-sm [&_p]:text-sm [&_p]:my-1 [&_p]:leading-relaxed",C=(0,h.memo)(({days:a,cache:b,onCacheUpdate:c,batchActions:d,onBatchRunningChange:e})=>{let f=(0,j.useTranslations)("stats"),i=(0,z.default)(a=>a.locale),k=(0,z.default)(a=>a.noteSummaryProvider),[m,o]=(0,h.useState)(null),[p,q]=(0,h.useState)(new Set),[C,D]=(0,h.useState)(!1),E=(0,h.useRef)(!1),F=(0,h.useCallback)(async(a,b=!1)=>{let c=await fetch("/api/stats/daily-report/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({date:a,force:b,locale:i,provider:k})});if(!c.ok)throw Error((await c.json().catch(()=>({message:"unknown error"}))).message??`HTTP ${c.status}`);return await c.json()},[i,k]),G=(0,h.useCallback)(async(a,b=!1)=>{o(a);try{let d=await F(a,b);c(a,d),x.toast.success(f("summaryGenerated"))}catch(a){x.toast.error(a instanceof Error?a.message:f("summaryFailed"))}finally{o(null)}},[F,c,f]),H=(0,h.useCallback)(async()=>{E.current=!1,D(!0);let d=0;try{for(let e of a){if(E.current)break;let a=b?.days[e.date];if(!a||a.locale!==i||(a.provider??"claude")!==k){o(e.date);try{let a=await F(e.date);c(e.date,a),d++}catch{x.toast.error(f("summaryDateFailed",{date:e.date}));break}}}}finally{o(null),D(!1),d>0&&x.toast.success(f("summaryBatchComplete",{count:d}))}},[a,b,F,c,f,i,k]),I=(0,h.useCallback)(()=>{E.current=!0},[]),J=(0,h.useCallback)(a=>{q(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},[]),K=(0,r.default)().format("YYYY-MM-DD");return(0,h.useEffect)(()=>{d&&(d.start=H,d.stop=I)},[d,H,I]),(0,h.useEffect)(()=>{e?.(C)},[C,e]),(0,g.jsxs)("div",{className:"space-y-4",children:[a.map(a=>{let c=(0,r.default)(a.date),d=A.WEEKDAY_LABELS[c.day()],e=a.date===K,h=b?.days[a.date]??null,i=m===a.date,j=p.has(a.date);return(0,g.jsxs)("div",{className:"space-y-2",children:[(0,g.jsxs)("div",{className:"flex items-center justify-between px-1",children:[(0,g.jsxs)("div",{className:"flex items-center gap-2",children:[(0,g.jsxs)("span",{className:"text-base font-medium text-muted-foreground",children:[a.date," (",d,")"]}),e&&(0,g.jsx)("span",{className:"rounded bg-ui-teal/15 px-1.5 py-0.5 text-[10px] font-medium text-ui-teal",children:f("today")})]}),(0,g.jsxs)("div",{className:"flex items-center gap-1.5",children:[h&&(0,g.jsxs)(g.Fragment,{children:[i&&(0,g.jsx)("span",{className:"text-xs text-muted-foreground",children:f("generating")}),(0,g.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:()=>G(a.date,!0),disabled:null!==m,className:"text-muted-foreground",children:(0,g.jsx)(v.RefreshCw,{className:`h-3 w-3${i?" animate-spin":""}`})})]}),(0,g.jsxs)("span",{className:"text-xs tabular-nums text-muted-foreground",children:[f("sessionCount",{count:a.sessionCount})," · ",(0,A.formatCostWithComma)(a.cost)]})]})]}),(0,g.jsx)(y.Card,{size:"sm",children:(0,g.jsxs)(y.CardContent,{className:"space-y-2",children:[!h&&!i&&(0,g.jsxs)(n.Button,{variant:"outline",size:"xs",onClick:()=>G(a.date),disabled:null!==m,children:[(0,g.jsx)(l.Sparkles,{className:"h-3 w-3"}),f("summarize")]}),!h&&i&&(0,g.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,g.jsx)(w.default,{className:"h-2.5 w-2.5"}),(0,g.jsx)("span",{children:f("generatingSummary")})]}),h&&(0,g.jsx)(g.Fragment,{children:(0,g.jsxs)("div",{className:i?"opacity-40":void 0,children:[(0,g.jsx)("div",{className:B,children:(0,g.jsx)(s.default,{children:h.brief})}),h.detail&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(n.Button,{variant:"ghost",size:"xs",onClick:()=>J(a.date),className:"text-muted-foreground",disabled:i,children:j?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(t.ChevronDown,{className:"h-3 w-3"}),f("collapse")]}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(u.ChevronRight,{className:"h-3 w-3"}),f("showMore")]})}),j&&(0,g.jsx)("div",{className:"border-t pt-2",children:(0,g.jsx)("div",{className:B,children:(0,g.jsx)(s.default,{children:h.detail})})})]})]})})]})})]},a.date)}),0===a.length&&(0,g.jsx)("p",{className:"py-4 text-center text-xs text-muted-foreground",children:f("noActivity")})]})}),D=()=>{let a=(0,j.useTranslations)("reports");(0,o.default)(a("title"));let[b,c]=(0,h.useState)([]),[d,e]=(0,h.useState)(0),[f,p]=(0,h.useState)(!0),[r,s]=(0,h.useState)(!1),t=(0,h.useCallback)(async(a,b)=>(await fetch(`/api/stats/daily-report/list?offset=${a}&limit=10`,{signal:b})).json(),[]);(0,h.useEffect)(()=>{let a=new AbortController;return t(0,a.signal).then(a=>{c(a.days),e(a.total)}).catch(()=>{}).finally(()=>p(!1)),()=>a.abort()},[t]);let u=(0,h.useCallback)(async()=>{s(!0);try{let a=await t(b.length);c(b=>[...b,...a.days]),e(a.total)}catch{}finally{s(!1)}},[b.length,t]),v=(0,h.useCallback)((a,b)=>{c(c=>c.map(c=>c.date===a?{...c,report:b}:c))},[]),w=b.map(a=>({date:a.date,sessionCount:a.sessionCount,cost:a.cost})),x={days:Object.fromEntries(b.filter(a=>a.report).map(a=>[a.date,a.report]))},y=b.length<d,z=b.filter(a=>!a.report).length,A=(0,h.useRef)({start:()=>{},stop:()=>{}}),[B,D]=(0,h.useState)(!1),E=(0,g.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:(0,g.jsxs)("div",{className:"mx-auto max-w-content px-4 py-6",children:[(0,g.jsxs)("div",{className:"mb-6 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[(0,g.jsxs)("div",{className:"flex items-center gap-2",children:[(0,g.jsx)(k.FileText,{className:"h-5 w-5 text-claude-active"}),(0,g.jsx)("h1",{className:"text-base font-semibold",children:a("title")})]}),(0,g.jsx)("div",{className:"flex items-center gap-2",children:!f&&z>0&&(B?(0,g.jsxs)(n.Button,{variant:"outline",size:"xs",onClick:()=>A.current.stop(),children:[(0,g.jsx)(m.Square,{className:"h-3 w-3"}),a("stop")]}):(0,g.jsxs)(n.Button,{variant:"outline",size:"xs",onClick:()=>A.current.start(),children:[(0,g.jsx)(l.Sparkles,{className:"h-3 w-3"}),a("summarize",{count:z})]}))})]}),(0,g.jsx)(q.default,{sectionName:a("title"),children:f?(0,g.jsx)("div",{className:"space-y-2",children:Array.from({length:5}).map((a,b)=>(0,g.jsxs)("div",{className:"flex items-center gap-3 rounded-xl bg-card px-4 py-4 ring-1 ring-foreground/10",children:[(0,g.jsxs)("div",{className:"flex-1 space-y-2",children:[(0,g.jsx)("div",{className:"h-3.5 w-32 animate-pulse rounded bg-muted"}),(0,g.jsx)("div",{className:"h-3 w-20 animate-pulse rounded bg-muted"})]}),(0,g.jsx)("div",{className:"h-3 w-24 animate-pulse rounded bg-muted"})]},b))}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(C,{days:w,cache:x,onCacheUpdate:v,batchActions:A.current,onBatchRunningChange:D}),y&&(0,g.jsx)("div",{className:"mt-3 flex justify-center",children:(0,g.jsx)(n.Button,{variant:"outline",size:"sm",onClick:u,disabled:r,children:r?a("loadingMore"):a("loadMore",{count:d-b.length})})})]})})]})});return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(i.default,{children:(0,g.jsx)("title",{children:a("pageTitle")})}),E]})};D.getLayout=p.getPageShellWithTitlebarLayout;let E=async b=>{let{requireAuth:c}=await a.A(120441),{loadMessagesServer:d}=await a.A(168414);return c(b,async()=>({props:{messages:await d()}}))};a.s(["default",0,D,"getServerSideProps",0,E],254728);var F=a.i(254728),G=a.i(509193);let H=(0,d.hoist)(F,"default"),I=(0,d.hoist)(F,"getStaticProps"),J=(0,d.hoist)(F,"getStaticPaths"),K=(0,d.hoist)(F,"getServerSideProps"),L=(0,d.hoist)(F,"config"),M=(0,d.hoist)(F,"reportWebVitals"),N=(0,d.hoist)(F,"unstable_getStaticProps"),O=(0,d.hoist)(F,"unstable_getStaticPaths"),P=(0,d.hoist)(F,"unstable_getStaticParams"),Q=(0,d.hoist)(F,"unstable_getServerProps"),R=(0,d.hoist)(F,"unstable_getServerSideProps"),S=new b.PagesRouteModule({definition:{kind:c.RouteKind.PAGES,page:"/reports",pathname:"/reports",bundlePath:"",filename:""},distDir:".next",relativeProjectDir:"",components:{App:f.default,Document:e.default},userland:F}),T=(0,G.getHandler)({srcPage:"/reports",config:L,userland:F,routeModule:S,getStaticPaths:J,getStaticProps:I,getServerSideProps:K});a.s(["config",0,L,"default",0,H,"getServerSideProps",0,K,"getStaticPaths",0,J,"getStaticProps",0,I,"handler",0,T,"reportWebVitals",0,M,"routeModule",0,S,"unstable_getServerProps",0,Q,"unstable_getServerSideProps",0,R,"unstable_getStaticParams",0,P,"unstable_getStaticPaths",0,O,"unstable_getStaticProps",0,N],321327)},876457,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_workspace_settings-dialog_tsx_05v~y7d._.js"].map(b=>a.l(b))).then(()=>b(563410)))},200022,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js"].map(b=>a.l(b))).then(()=>b(469403)))},419326,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_0~e6p9k._.js"].map(b=>a.l(b))).then(()=>b(9252)))},120441,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_require-auth_ts_0lybmh2._.js"].map(b=>a.l(b))).then(()=>b(56975)))},168414,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_load-messages_ts_11e7h4~._.js"].map(b=>a.l(b))).then(()=>b(387607)))}];
1
+ module.exports=[811705,396552,a=>{"use strict";var b=a.i(508171),c=a.i(799856);a.s(["Card",0,function({className:a,size:d="default",...e}){return(0,b.jsx)("div",{"data-slot":"card","data-size":d,className:(0,c.cn)("group/card flex flex-col gap-4 overflow-hidden rounded-xl bg-card py-4 text-sm text-card-foreground ring-1 ring-foreground/10 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",a),...e})},"CardContent",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-content",className:(0,c.cn)("px-4 group-data-[size=sm]/card:px-3",a),...d})},"CardHeader",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-header",className:(0,c.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",a),...d})},"CardTitle",0,function({className:a,...d}){return(0,b.jsx)("div",{"data-slot":"card-title",className:(0,c.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",a),...d})}],811705);var d=a.i(398544);let e=a=>a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:a.toLocaleString();a.s(["WEEKDAY_LABELS",0,["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"formatAxisTick",0,a=>e(a),"formatCostWithComma",0,a=>{if(a<1)return`$${a.toFixed(2)}`;let[b,c]=a.toFixed(1).split(".");return`$${Number(b).toLocaleString()}.${c}`},"formatDate",0,a=>(0,d.default)(a).format("MM/DD"),"formatDuration",0,a=>{let b=Math.floor(a/6e4);if(b<60)return`${b}m`;let c=Math.floor(b/60);if(c<24)return`${c}h ${b%60}m`;let d=Math.floor(c/24);return`${d}d ${c%24}h`},"formatNumber",0,e,"formatNumberWithComma",0,a=>a.toLocaleString(),"getChangeRate",0,(a,b)=>{if(0===b)return null;let c=(a-b)/b*100;return`${c>=0?"+":""}${Math.round(c).toLocaleString()}%`}],396552)},436028,a=>{"use strict";let b=(0,a.i(564375).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],436028)},776979,a=>{"use strict";var b=a.i(508171),c=a.i(127669),d=a.i(113952),e=a.i(436028),f=a.i(506766),g=a.i(396465);let h=({onRetry:a})=>{let c=(0,d.useTranslations)("stats"),h=(0,d.useTranslations)("common");return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 rounded-xl bg-card py-12 ring-1 ring-foreground/10",children:[(0,b.jsx)(e.AlertCircle,{className:"h-5 w-5 text-muted-foreground"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:c("errorLoadFailed")}),(0,b.jsxs)(g.Button,{variant:"outline",size:"sm",onClick:a,children:[(0,b.jsx)(f.RefreshCw,{className:"mr-1.5 h-3 w-3"}),h("retry")]})]})};class i extends c.Component{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(a,b){console.error(`[${this.props.sectionName}] Error:`,a,b)}handleRetry=()=>{this.setState({hasError:!1})};render(){return this.state.hasError?(0,b.jsx)(h,{onRetry:this.handleRetry}):this.props.children}}a.s(["default",0,i])},321327,a=>{"use strict";var b=a.i(579168),c=a.i(627068),d=a.i(332759),e=a.i(817359),f=a.i(468695),g=a.i(508171),h=a.i(127669),i=a.i(119059),j=a.i(113952),k=a.i(199987),l=a.i(125487),m=a.i(274399),n=a.i(396465),o=a.i(356233),p=a.i(266929),q=a.i(776979),r=a.i(398544),s=a.i(92654),t=a.i(93538),u=a.i(643228),v=a.i(506766),w=a.i(581228),x=a.i(510414),y=a.i(811705),z=a.i(678240),A=a.i(396552);let B="prose prose-sm prose-invert max-w-none text-foreground/80 [&_h2]:mt-4 [&_h2]:mb-1 [&_h2]:text-base [&_h2]:font-semibold [&_h2]:text-foreground [&_h3]:mt-2 [&_h3]:mb-0.5 [&_h3]:text-sm [&_h3]:font-medium [&_h3]:text-foreground/80 [&_ul]:my-0.5 [&_ul]:pl-4 [&_li]:my-0 [&_li]:text-sm [&_p]:text-sm [&_p]:my-1 [&_p]:leading-relaxed",C=(0,h.memo)(({days:a,cache:b,onCacheUpdate:c,batchActions:d,onBatchRunningChange:e})=>{let f=(0,j.useTranslations)("stats"),i=(0,z.default)(a=>a.locale),k=(0,z.default)(a=>a.noteSummaryProvider),[m,o]=(0,h.useState)(null),[p,q]=(0,h.useState)(new Set),[C,D]=(0,h.useState)(!1),E=(0,h.useRef)(!1),F=(0,h.useCallback)(async(a,b=!1)=>{let c=await fetch("/api/stats/daily-report/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({date:a,force:b,locale:i,provider:k})});if(!c.ok)throw Error((await c.json().catch(()=>({message:"unknown error"}))).message??`HTTP ${c.status}`);return await c.json()},[i,k]),G=(0,h.useCallback)(async(a,b=!1)=>{o(a);try{let d=await F(a,b);c(a,d),x.toast.success(f("summaryGenerated"))}catch(a){x.toast.error(a instanceof Error?a.message:f("summaryFailed"))}finally{o(null)}},[F,c,f]),H=(0,h.useCallback)(async()=>{E.current=!1,D(!0);let d=0;try{for(let e of a){if(E.current)break;let a=b?.days[e.date];if(!a||a.locale!==i||(a.provider??"claude")!==k){o(e.date);try{let a=await F(e.date);c(e.date,a),d++}catch{x.toast.error(f("summaryDateFailed",{date:e.date}));break}}}}finally{o(null),D(!1),d>0&&x.toast.success(f("summaryBatchComplete",{count:d}))}},[a,b,F,c,f,i,k]),I=(0,h.useCallback)(()=>{E.current=!0},[]),J=(0,h.useCallback)(a=>{q(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},[]),K=(0,r.default)().format("YYYY-MM-DD");return(0,h.useEffect)(()=>{d&&(d.start=H,d.stop=I)},[d,H,I]),(0,h.useEffect)(()=>{e?.(C)},[C,e]),(0,g.jsxs)("div",{className:"space-y-4",children:[a.map(a=>{let c=(0,r.default)(a.date),d=A.WEEKDAY_LABELS[c.day()],e=a.date===K,h=b?.days[a.date]??null,i=m===a.date,j=p.has(a.date);return(0,g.jsxs)("div",{className:"space-y-2",children:[(0,g.jsxs)("div",{className:"flex items-center justify-between px-1",children:[(0,g.jsxs)("div",{className:"flex items-center gap-2",children:[(0,g.jsxs)("span",{className:"text-base font-medium text-muted-foreground",children:[a.date," (",d,")"]}),e&&(0,g.jsx)("span",{className:"rounded bg-ui-teal/15 px-1.5 py-0.5 text-[10px] font-medium text-ui-teal",children:f("today")})]}),(0,g.jsxs)("div",{className:"flex items-center gap-1.5",children:[h&&(0,g.jsxs)(g.Fragment,{children:[i&&(0,g.jsx)("span",{className:"text-xs text-muted-foreground",children:f("generating")}),(0,g.jsx)(n.Button,{variant:"ghost",size:"icon-xs",onClick:()=>G(a.date,!0),disabled:null!==m,className:"text-muted-foreground",children:(0,g.jsx)(v.RefreshCw,{className:`h-3 w-3${i?" animate-spin":""}`})})]}),(0,g.jsxs)("span",{className:"text-xs tabular-nums text-muted-foreground",children:[f("sessionCount",{count:a.sessionCount})," · ",(0,A.formatCostWithComma)(a.cost)]})]})]}),(0,g.jsx)(y.Card,{size:"sm",children:(0,g.jsxs)(y.CardContent,{className:"space-y-2",children:[!h&&!i&&(0,g.jsxs)(n.Button,{variant:"outline",size:"xs",onClick:()=>G(a.date),disabled:null!==m,children:[(0,g.jsx)(l.Sparkles,{className:"h-3 w-3"}),f("summarize")]}),!h&&i&&(0,g.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,g.jsx)(w.default,{className:"h-2.5 w-2.5"}),(0,g.jsx)("span",{children:f("generatingSummary")})]}),h&&(0,g.jsx)(g.Fragment,{children:(0,g.jsxs)("div",{className:i?"opacity-40":void 0,children:[(0,g.jsx)("div",{className:B,children:(0,g.jsx)(s.default,{children:h.brief})}),h.detail&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(n.Button,{variant:"ghost",size:"xs",onClick:()=>J(a.date),className:"text-muted-foreground",disabled:i,children:j?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(t.ChevronDown,{className:"h-3 w-3"}),f("collapse")]}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(u.ChevronRight,{className:"h-3 w-3"}),f("showMore")]})}),j&&(0,g.jsx)("div",{className:"border-t pt-2",children:(0,g.jsx)("div",{className:B,children:(0,g.jsx)(s.default,{children:h.detail})})})]})]})})]})})]},a.date)}),0===a.length&&(0,g.jsx)("p",{className:"py-4 text-center text-xs text-muted-foreground",children:f("noActivity")})]})}),D=()=>{let a=(0,j.useTranslations)("reports");(0,o.default)(a("title"));let[b,c]=(0,h.useState)([]),[d,e]=(0,h.useState)(0),[f,p]=(0,h.useState)(!0),[r,s]=(0,h.useState)(!1),t=(0,h.useCallback)(async(a,b)=>(await fetch(`/api/stats/daily-report/list?offset=${a}&limit=10`,{signal:b})).json(),[]);(0,h.useEffect)(()=>{let a=new AbortController;return t(0,a.signal).then(a=>{c(a.days),e(a.total)}).catch(()=>{}).finally(()=>p(!1)),()=>a.abort()},[t]);let u=(0,h.useCallback)(async()=>{s(!0);try{let a=await t(b.length);c(b=>[...b,...a.days]),e(a.total)}catch{}finally{s(!1)}},[b.length,t]),v=(0,h.useCallback)((a,b)=>{c(c=>c.map(c=>c.date===a?{...c,report:b}:c))},[]),w=b.map(a=>({date:a.date,sessionCount:a.sessionCount,cost:a.cost})),x={days:Object.fromEntries(b.filter(a=>a.report).map(a=>[a.date,a.report]))},y=b.length<d,z=b.filter(a=>!a.report).length,A=(0,h.useRef)({start:()=>{},stop:()=>{}}),[B,D]=(0,h.useState)(!1),E=(0,g.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:(0,g.jsxs)("div",{className:"mx-auto max-w-content px-4 py-6",children:[(0,g.jsxs)("div",{className:"mb-6 flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[(0,g.jsxs)("div",{className:"flex items-center gap-2",children:[(0,g.jsx)(k.FileText,{className:"h-5 w-5 text-claude-active"}),(0,g.jsx)("h1",{className:"text-base font-semibold",children:a("title")})]}),(0,g.jsx)("div",{className:"flex items-center gap-2",children:!f&&z>0&&(B?(0,g.jsxs)(n.Button,{variant:"outline",size:"xs",onClick:()=>A.current.stop(),children:[(0,g.jsx)(m.Square,{className:"h-3 w-3"}),a("stop")]}):(0,g.jsxs)(n.Button,{variant:"outline",size:"xs",onClick:()=>A.current.start(),children:[(0,g.jsx)(l.Sparkles,{className:"h-3 w-3"}),a("summarize",{count:z})]}))})]}),(0,g.jsx)(q.default,{sectionName:a("title"),children:f?(0,g.jsx)("div",{className:"space-y-2",children:Array.from({length:5}).map((a,b)=>(0,g.jsxs)("div",{className:"flex items-center gap-3 rounded-xl bg-card px-4 py-4 ring-1 ring-foreground/10",children:[(0,g.jsxs)("div",{className:"flex-1 space-y-2",children:[(0,g.jsx)("div",{className:"h-3.5 w-32 animate-pulse rounded bg-muted"}),(0,g.jsx)("div",{className:"h-3 w-20 animate-pulse rounded bg-muted"})]}),(0,g.jsx)("div",{className:"h-3 w-24 animate-pulse rounded bg-muted"})]},b))}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(C,{days:w,cache:x,onCacheUpdate:v,batchActions:A.current,onBatchRunningChange:D}),y&&(0,g.jsx)("div",{className:"mt-3 flex justify-center",children:(0,g.jsx)(n.Button,{variant:"outline",size:"sm",onClick:u,disabled:r,children:r?a("loadingMore"):a("loadMore",{count:d-b.length})})})]})})]})});return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(i.default,{children:(0,g.jsx)("title",{children:a("pageTitle")})}),E]})};D.getLayout=p.getPageShellWithTitlebarLayout;let E=async b=>{let{requireAuth:c}=await a.A(120441),{loadMessagesServer:d}=await a.A(168414);return c(b,async()=>({props:{messages:await d()}}))};a.s(["default",0,D,"getServerSideProps",0,E],254728);var F=a.i(254728),G=a.i(509193);let H=(0,d.hoist)(F,"default"),I=(0,d.hoist)(F,"getStaticProps"),J=(0,d.hoist)(F,"getStaticPaths"),K=(0,d.hoist)(F,"getServerSideProps"),L=(0,d.hoist)(F,"config"),M=(0,d.hoist)(F,"reportWebVitals"),N=(0,d.hoist)(F,"unstable_getStaticProps"),O=(0,d.hoist)(F,"unstable_getStaticPaths"),P=(0,d.hoist)(F,"unstable_getStaticParams"),Q=(0,d.hoist)(F,"unstable_getServerProps"),R=(0,d.hoist)(F,"unstable_getServerSideProps"),S=new b.PagesRouteModule({definition:{kind:c.RouteKind.PAGES,page:"/reports",pathname:"/reports",bundlePath:"",filename:""},distDir:".next",relativeProjectDir:"",components:{App:f.default,Document:e.default},userland:F}),T=(0,G.getHandler)({srcPage:"/reports",config:L,userland:F,routeModule:S,getStaticPaths:J,getStaticProps:I,getServerSideProps:K});a.s(["config",0,L,"default",0,H,"getServerSideProps",0,K,"getStaticPaths",0,J,"getStaticProps",0,I,"handler",0,T,"reportWebVitals",0,M,"routeModule",0,S,"unstable_getServerProps",0,Q,"unstable_getServerSideProps",0,R,"unstable_getStaticParams",0,P,"unstable_getStaticPaths",0,O,"unstable_getStaticProps",0,N],321327)},876457,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_workspace_settings-dialog_tsx_05v~y7d._.js"].map(b=>a.l(b))).then(()=>b(563410)))},200022,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js"].map(b=>a.l(b))).then(()=>b(469403)))},419326,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_05-kki3._.js"].map(b=>a.l(b))).then(()=>b(9252)))},120441,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_require-auth_ts_0lybmh2._.js"].map(b=>a.l(b))).then(()=>b(56975)))},168414,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_load-messages_ts_11e7h4~._.js"].map(b=>a.l(b))).then(()=>b(387607)))}];
2
2
 
3
- //# sourceMappingURL=_0uwytsj._.js.map
3
+ //# sourceMappingURL=_078y4dk._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[354224,a=>{"use strict";var b=a.i(579168),c=a.i(627068),d=a.i(332759),e=a.i(817359),f=a.i(468695),g=a.i(508171),h=a.i(127669),i=a.i(119059),j=a.i(41910),k=a.i(356233),l=a.i(266929),m=a.i(604076);let n=()=>{let a=(0,j.useRouter)(),b="string"==typeof a.query.url?a.query.url:"",c=(0,h.useMemo)(()=>{if(!b)return"Webview";try{return new URL(b).hostname}catch{return"Webview"}},[b]);return(0,k.default)(c),(0,h.useEffect)(()=>{b&&m.default.getState().open(`deeplink:${b}`,b,c)},[b,c]),(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(i.default,{children:(0,g.jsxs)("title",{children:[c," - purplemux"]})}),(0,g.jsx)("div",{className:"flex min-h-0 flex-1"})]})};n.getLayout=l.getPageShellWithTitlebarLayout;let o=async b=>{let{requireAuth:c}=await a.A(120441),{loadMessagesServer:d}=await a.A(168414);return c(b,async()=>({props:{messages:await d()}}))};a.s(["default",0,n,"getServerSideProps",0,o],869912);var p=a.i(869912),q=a.i(509193);let r=(0,d.hoist)(p,"default"),s=(0,d.hoist)(p,"getStaticProps"),t=(0,d.hoist)(p,"getStaticPaths"),u=(0,d.hoist)(p,"getServerSideProps"),v=(0,d.hoist)(p,"config"),w=(0,d.hoist)(p,"reportWebVitals"),x=(0,d.hoist)(p,"unstable_getStaticProps"),y=(0,d.hoist)(p,"unstable_getStaticPaths"),z=(0,d.hoist)(p,"unstable_getStaticParams"),A=(0,d.hoist)(p,"unstable_getServerProps"),B=(0,d.hoist)(p,"unstable_getServerSideProps"),C=new b.PagesRouteModule({definition:{kind:c.RouteKind.PAGES,page:"/webview",pathname:"/webview",bundlePath:"",filename:""},distDir:".next",relativeProjectDir:"",components:{App:f.default,Document:e.default},userland:p}),D=(0,q.getHandler)({srcPage:"/webview",config:v,userland:p,routeModule:C,getStaticPaths:t,getStaticProps:s,getServerSideProps:u});a.s(["config",0,v,"default",0,r,"getServerSideProps",0,u,"getStaticPaths",0,t,"getStaticProps",0,s,"handler",0,D,"reportWebVitals",0,w,"routeModule",0,C,"unstable_getServerProps",0,A,"unstable_getServerSideProps",0,B,"unstable_getStaticParams",0,z,"unstable_getStaticPaths",0,y,"unstable_getStaticProps",0,x],354224)},876457,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_workspace_settings-dialog_tsx_05v~y7d._.js"].map(b=>a.l(b))).then(()=>b(563410)))},200022,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js"].map(b=>a.l(b))).then(()=>b(469403)))},419326,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_0mhu5-5._.js"].map(b=>a.l(b))).then(()=>b(9252)))},120441,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_require-auth_ts_0lybmh2._.js"].map(b=>a.l(b))).then(()=>b(56975)))},168414,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_load-messages_ts_11e7h4~._.js"].map(b=>a.l(b))).then(()=>b(387607)))}];
1
+ module.exports=[354224,a=>{"use strict";var b=a.i(579168),c=a.i(627068),d=a.i(332759),e=a.i(817359),f=a.i(468695),g=a.i(508171),h=a.i(127669),i=a.i(119059),j=a.i(41910),k=a.i(356233),l=a.i(266929),m=a.i(604076);let n=()=>{let a=(0,j.useRouter)(),b="string"==typeof a.query.url?a.query.url:"",c=(0,h.useMemo)(()=>{if(!b)return"Webview";try{return new URL(b).hostname}catch{return"Webview"}},[b]);return(0,k.default)(c),(0,h.useEffect)(()=>{b&&m.default.getState().open(`deeplink:${b}`,b,c)},[b,c]),(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(i.default,{children:(0,g.jsxs)("title",{children:[c," - purplemux"]})}),(0,g.jsx)("div",{className:"flex min-h-0 flex-1"})]})};n.getLayout=l.getPageShellWithTitlebarLayout;let o=async b=>{let{requireAuth:c}=await a.A(120441),{loadMessagesServer:d}=await a.A(168414);return c(b,async()=>({props:{messages:await d()}}))};a.s(["default",0,n,"getServerSideProps",0,o],869912);var p=a.i(869912),q=a.i(509193);let r=(0,d.hoist)(p,"default"),s=(0,d.hoist)(p,"getStaticProps"),t=(0,d.hoist)(p,"getStaticPaths"),u=(0,d.hoist)(p,"getServerSideProps"),v=(0,d.hoist)(p,"config"),w=(0,d.hoist)(p,"reportWebVitals"),x=(0,d.hoist)(p,"unstable_getStaticProps"),y=(0,d.hoist)(p,"unstable_getStaticPaths"),z=(0,d.hoist)(p,"unstable_getStaticParams"),A=(0,d.hoist)(p,"unstable_getServerProps"),B=(0,d.hoist)(p,"unstable_getServerSideProps"),C=new b.PagesRouteModule({definition:{kind:c.RouteKind.PAGES,page:"/webview",pathname:"/webview",bundlePath:"",filename:""},distDir:".next",relativeProjectDir:"",components:{App:f.default,Document:e.default},userland:p}),D=(0,q.getHandler)({srcPage:"/webview",config:v,userland:p,routeModule:C,getStaticPaths:t,getStaticProps:s,getServerSideProps:u});a.s(["config",0,v,"default",0,r,"getServerSideProps",0,u,"getStaticPaths",0,t,"getStaticProps",0,s,"handler",0,D,"reportWebVitals",0,w,"routeModule",0,C,"unstable_getServerProps",0,A,"unstable_getServerSideProps",0,B,"unstable_getStaticParams",0,z,"unstable_getStaticPaths",0,y,"unstable_getStaticProps",0,x],354224)},876457,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_workspace_settings-dialog_tsx_05v~y7d._.js"].map(b=>a.l(b))).then(()=>b(563410)))},200022,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_features_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js"].map(b=>a.l(b))).then(()=>b(469403)))},419326,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_components_0gkfyrc._.js"].map(b=>a.l(b))).then(()=>b(9252)))},120441,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_require-auth_ts_0lybmh2._.js"].map(b=>a.l(b))).then(()=>b(56975)))},168414,a=>{a.v(b=>Promise.all(["server/chunks/ssr/src_lib_load-messages_ts_11e7h4~._.js"].map(b=>a.l(b))).then(()=>b(387607)))}];
2
2
 
3
- //# sourceMappingURL=_0uph6rf._.js.map
3
+ //# sourceMappingURL=_0kzht5v._.js.map