purplemux 0.2.0 → 0.2.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.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +21 -21
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +7 -7
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__045vzzi._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0auutl5._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11j9~6h._.js +1 -1
- package/.next/standalone/.next/server/chunks/{_05otee~._.js → _04dq3gt._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0uxocm.._.js → _09vws3v._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0d415er._.js → _0ap4fy.._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_0e8e4zn._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0isokfh._.js +1 -1
- package/.next/standalone/.next/server/chunks/{_0_1vqqb._.js → _0su2osz._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0xmsr59._.js → _0uo_gs5._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_06vitke._.js → _134uyu_._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{src_lib_136edwc._.js → src_lib_0vs5asg._.js} +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_session-parser_ts_0~rhicw._.js +3 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0glt298._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0au.ssp._.js → [root-of-the-server]__0nkl4wz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_06yggfn._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0al4.z9._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0b~zgl1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0f8k39w._.js +14 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0_owbnq._.js → _0h4kenr._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0z61aq-._.js → _0ihbr8k._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0js4l3t._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0nkeoiw._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0rxhzwm._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0y31tie._.js +14 -0
- package/.next/standalone/.next/server/chunks/ssr/messages_de_session_json_[json]_cjs_0b-1vpl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_session_json_[json]_cjs_0jaymfk._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_session_json_[json]_cjs_0jy1144._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_session_json_[json]_cjs_0rz0g.c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_session_json_[json]_cjs_0cos-uy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_session_json_[json]_cjs_0x4saic._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_session_json_[json]_cjs_0-x8ftl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_session_json_[json]_cjs_0~2-kve._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_session_json_[json]_cjs_0zsvt_4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_session_json_[json]_cjs_134xza~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_session_json_[json]_cjs_0mv_~-8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +21 -21
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +5 -5
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +2 -2
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_error.js +2 -2
- package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/hook.js +1 -1
- package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js +1 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/reset.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace.js +1 -1
- package/.next/standalone/.next/server/pages/api/workspace.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/de/404.html +1 -1
- package/.next/standalone/.next/server/pages/de/500.html +1 -1
- package/.next/standalone/.next/server/pages/en/404.html +1 -1
- package/.next/standalone/.next/server/pages/en/500.html +1 -1
- package/.next/standalone/.next/server/pages/es/404.html +1 -1
- package/.next/standalone/.next/server/pages/es/500.html +1 -1
- package/.next/standalone/.next/server/pages/fr/404.html +1 -1
- package/.next/standalone/.next/server/pages/fr/500.html +1 -1
- package/.next/standalone/.next/server/pages/index/build-manifest.json +4 -4
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +8 -10
- package/.next/standalone/.next/server/pages/index.js +2 -2
- package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/ja/404.html +1 -1
- package/.next/standalone/.next/server/pages/ja/500.html +1 -1
- package/.next/standalone/.next/server/pages/ko/404.html +1 -1
- package/.next/standalone/.next/server/pages/ko/500.html +1 -1
- package/.next/standalone/.next/server/pages/login.js +2 -2
- package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
- package/.next/standalone/.next/server/pages/reports/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports.js +2 -2
- package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/reset.js +2 -2
- package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/ru/404.html +1 -1
- package/.next/standalone/.next/server/pages/ru/500.html +1 -1
- package/.next/standalone/.next/server/pages/stats/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats.js +2 -2
- package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required.js +2 -2
- package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tr/404.html +1 -1
- package/.next/standalone/.next/server/pages/tr/500.html +1 -1
- package/.next/standalone/.next/server/pages/webview/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview.js +2 -2
- package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
- package/.next/standalone/.next/static/{WXAyTQ0PHZnxXXCwEZpit → 5mb_D_gy6E3wsT_BhuXDS}/_buildManifest.js +4 -4
- package/.next/standalone/.next/static/chunks/0-ku865ak6iur.js +1 -0
- package/.next/standalone/.next/static/chunks/{17deooyefr~9o.js → 04.g49tb8txni.js} +1 -1
- package/.next/standalone/.next/static/chunks/05_e09pgcymkh.js +1 -0
- package/.next/standalone/.next/static/chunks/{0w9~wt6~_cxhf.js → 05o-f2v7xe3_~.js} +1 -1
- package/.next/standalone/.next/static/chunks/06zq-2isv5vn6.js +1 -0
- package/.next/standalone/.next/static/chunks/{11ess6mn2988z.js → 08zfbuugw_i52.js} +3 -3
- package/.next/standalone/.next/static/chunks/{0lz-p_awksh5e.js → 0biwudo-tl.dw.js} +1 -1
- package/.next/standalone/.next/static/chunks/0dh2cf_c4gz65.js +1 -0
- package/.next/standalone/.next/static/chunks/0fwnzw~qq_abm.js +1 -0
- package/.next/standalone/.next/static/chunks/{00ziyk306y55s.js → 0g2qc5wv7c9.a.js} +1 -1
- package/.next/standalone/.next/static/chunks/0gjtphww9wtey.js +12 -0
- package/.next/standalone/.next/static/chunks/0om8~g_7-c-x5.js +12 -0
- package/.next/standalone/.next/static/chunks/{17et6y09q052u.js → 0qc36tzow-sbz.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0if5fmp94~nc2.js → 0qr~rkd5sq-yp.js} +5 -5
- package/.next/standalone/.next/static/chunks/{0y3fmkya..f_6.js → 0qwvk-uq944-d.js} +3 -3
- package/.next/standalone/.next/static/chunks/{095e2xf3z6x3g.js → 0r_ynb..7ongv.js} +4 -4
- package/.next/standalone/.next/static/chunks/{010m3dplwy4n6.js → 0ryghnq7iy47v.js} +3 -3
- package/.next/standalone/.next/static/chunks/0se1ra8f1bor~.js +1 -0
- package/.next/standalone/.next/static/chunks/{0pw-284q1gfk3.js → 0szz-2.f~11pz.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0u-1zto-umjh9.js → 0t2val7bf4~s7.js} +1 -1
- package/.next/standalone/.next/static/chunks/{08xz_z9u4ex9t.js → 0tgkw7pjpp21_.js} +1 -1
- package/.next/standalone/.next/static/chunks/{04uzwc8c9u49~.js → 0u9dn7tzog.gz.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0jxk8j~j30thp.js → 0u9yrtrs1bktp.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0f81tdf_8utww.js → 0wdd71tayg8y1.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0h~_fdj60t_~l.js → 0~vm4d30sl9ii.js} +1 -1
- package/.next/standalone/.next/static/chunks/107edt81z_gzy.css +3 -0
- package/.next/standalone/.next/static/chunks/{0t0-4sn-nqqld.js → 128d.rbx4e4rt.js} +1 -1
- package/.next/standalone/.next/static/chunks/132lgf3mld2ax.js +1 -0
- package/.next/standalone/.next/static/chunks/{07v3udp2qhc02.js → 17jdo1q-xb24-.js} +1 -1
- package/.next/standalone/.next/static/chunks/184~yri~m3wao.css +1 -0
- package/.next/standalone/.next/static/chunks/{turbopack-0.28.d-q12n3p.js → turbopack-066o21-32lo7n.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0-itu0o9y_vq8.js → turbopack-0abq2d._xmt7y.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0h0~tr4tgq3aa.js → turbopack-0sisjg~-koq5w.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0qmx66h203l93.js → turbopack-11tk4snp~dxd4.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0g80nrinbfgtk.js → turbopack-17.piokhhz77b.js} +1 -1
- package/.next/standalone/messages/de/session.json +3 -1
- package/.next/standalone/messages/en/session.json +3 -1
- package/.next/standalone/messages/es/session.json +3 -1
- package/.next/standalone/messages/fr/session.json +3 -1
- package/.next/standalone/messages/ja/session.json +3 -1
- package/.next/standalone/messages/ko/session.json +3 -1
- package/.next/standalone/messages/pt-BR/session.json +3 -1
- package/.next/standalone/messages/ru/session.json +3 -1
- package/.next/standalone/messages/tr/session.json +3 -1
- package/.next/standalone/messages/zh-CN/session.json +3 -1
- package/.next/standalone/messages/zh-TW/session.json +3 -1
- package/.next/standalone/package.json +4 -3
- package/.next/standalone/server.js +1 -1
- package/dist/server.js +268 -6
- package/package.json +4 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07i-oza._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0iy5a-w._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/_0qbbxeq._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0kc8lix._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_highlight_js_lib_core_0h1yngz.js +0 -3
- package/.next/standalone/.next/static/chunks/0-xrsiia9hc.c.js +0 -1
- package/.next/standalone/.next/static/chunks/04bbxzycy0y90.js +0 -1
- package/.next/standalone/.next/static/chunks/05oh32ya2uzfq.js +0 -1
- package/.next/standalone/.next/static/chunks/06e51nokt~dtt.js +0 -1
- package/.next/standalone/.next/static/chunks/06ypydsl._u~2.js +0 -5
- package/.next/standalone/.next/static/chunks/071neb1eikeoh.js +0 -1
- package/.next/standalone/.next/static/chunks/09tinkgkd8br_.js +0 -1
- package/.next/standalone/.next/static/chunks/0m_amua611xl0.js +0 -5
- package/.next/standalone/.next/static/chunks/0o6esya.vhm1..js +0 -1
- package/.next/standalone/.next/static/chunks/0z3gpm0o.mwwy.css +0 -3
- package/.next/standalone/.next/static/chunks/0~ei.a78nuwqe.js +0 -1
- package/.next/standalone/.next/static/chunks/10r8rypk5fanv.js +0 -1
- package/.next/standalone/.next/static/chunks/13zzmkwag6vsm.css +0 -1
- /package/.next/standalone/.next/static/{WXAyTQ0PHZnxXXCwEZpit → 5mb_D_gy6E3wsT_BhuXDS}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{WXAyTQ0PHZnxXXCwEZpit → 5mb_D_gy6E3wsT_BhuXDS}/_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"])},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)}];
|
|
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)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_0e8e4zn._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
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)}];
|
|
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)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_0isokfh._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[561089,e=>{"use strict";var t=e.i(926747),r=e.i(190406),n=e.i(244898),a=e.i(262950),i=e.i(964759);let o=(0,e.i(25146).createLogger)("tmux"),s=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});let r="string"==typeof e.body?.tabId?e.body.tabId:void 0;if(!r)return t.status(400).json({error:"tabId required"});try{let e=await (0,i.getStatusManager)().recoverUnknownIfPending(r);return t.status(200).json(e)}catch(e){return o.error(`recover-unknown failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"recover-unknown failed"})}};e.s(["default",0,s],353162);var u=e.i(353162),l=e.i(7031),d=e.i(181927),p=e.i(846432);let v=(0,a.hoist)(u,"default"),c=(0,a.hoist)(u,"config"),h=new n.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/tmux/recover-unknown",pathname:"/api/tmux/recover-unknown",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function m(e,r,n){n.requestMeta&&(0,p.setRequestMeta)(e,n.requestMeta),h.isDev&&(0,p.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/tmux/recover-unknown";a=a.replace(/\/index$/,"")||"/";let i=await h.prepare(e,r,{srcPage:a});if(!i){r.statusCode=400,r.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:o,params:s,prerenderManifest:u,routerServerContext:v}=i;try{let t,n=e.method||"GET",i=(0,l.getTracer)(),p=i.getActiveScopeSpan(),c=!!(null==v?void 0:v.isWrappedByNextServer),m=h.instrumentationOnRequestError.bind(h),g=async l=>h.render(e,r,{query:{...o,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:u.preview,propagateError:!1,dev:h.isDev,page:"/api/tmux/recover-unknown",internalRevalidate:null==v?void 0:v.revalidate,onError:(...t)=>m(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":r.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 o=e.get("next.route");if(o){let e=`${n} ${o}`;l.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),l.updateName(e),t&&t!==l&&(t.setAttribute("http.route",o),t.updateName(e))}else l.updateName(`${n} ${a}`)});c&&p?await g(p):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(d.BaseServerSpan.handleRequest,{spanName:`${n} ${a}`,kind:l.SpanKind.SERVER,attributes:{"http.method":n,"http.target":e.url}},g),void 0,!c))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}e.s(["config",0,c,"default",0,v,"handler",0,m],561089)},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
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=_0su2osz._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
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"),o=globalThis;e.s(["verifyCliToken",0,e=>{let a=e.headers["x-pmux-token"];var s="string"==typeof a?a:void 0;if(!s)return!1;let l=(()=>{if(o.__ptCliToken)return o.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return o.__ptCliToken=e,e;let a=(0,t.randomBytes)(32).toString("hex");o.__ptCliToken=a;try{r.default.mkdirSync(i.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,a,{mode:384})}catch{}return a})();return s.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(s),Buffer.from(l))}])},34717,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),n=e.i(871911),o=e.i(964759);let s=(0,e.i(25146).createLogger)("hooks"),l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let{event:r,session:i,notificationType:a}=e.body??{};if("string"==typeof r&&"poll"!==r&&"string"==typeof i&&i){let e="string"==typeof a&&a?a:void 0;s.debug({event:r,session:i,notificationType:e},`received ${r}${e?`(${e})`:""}`),(0,o.getStatusManager)().updateTabFromHook(i,r,e)}else s.debug({body:e.body},"poll trigger"),(0,o.getStatusManager)().poll().catch(e=>{s.error({err:e},"Poll trigger failed")});return t.status(204).end()};e.s(["default",0,l],860464);var u=e.i(860464),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,a.hoist)(u,"default"),h=(0,a.hoist)(u,"config"),v=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/status/hook",pathname:"/api/status/hook",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function g(e,r,i){i.requestMeta&&(0,f.setRequestMeta)(e,i.requestMeta),v.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/status/hook";a=a.replace(/\/index$/,"")||"/";let n=await v.prepare(e,r,{srcPage:a});if(!n){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:o,params:s,prerenderManifest:l,routerServerContext:u}=n;try{let t,i=e.method||"GET",n=(0,d.getTracer)(),f=n.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),h=v.instrumentationOnRequestError.bind(v),g=async d=>v.render(e,r,{query:{...o,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:v.isDev,page:"/api/status/hook",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>h(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.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 o=e.get("next.route");if(o){let e=`${i} ${o}`;d.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",o),t.updateName(e))}else d.updateName(`${i} ${a}`)});c&&f?await g(f):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:d.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},g),void 0,!c))}catch(e){if(v.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==i.waitUntil||i.waitUntil.call(i,Promise.resolve())}}e.s(["config",0,h,"default",0,c,"handler",0,g],34717)},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
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=_0uo_gs5._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[845994,e=>{"use strict";var t=e.i(924868),a=e.i(814747),r=e.i(446786),i=e.i(254799),s=e.i(666126);(0,e.i(25146).createLogger)("config");let n=a.default.join(r.default.homedir(),".purplemux"),o=a.default.join(n,"config.json"),l=globalThis;l.__ptConfigLock||(l.__ptConfigLock=Promise.resolve());let u=async e=>{let t,a=new Promise(e=>{t=e}),r=l.__ptConfigLock;l.__ptConfigLock=a,await r;try{return await e()}finally{t()}},d=()=>({updatedAt:new Date().toISOString()}),p=async()=>{try{let e=await t.default.readFile(o,"utf-8");return JSON.parse(e)}catch{return null}},c=async e=>{let{updatedAt:a,...r}=e,i=JSON.stringify(r);if(l.__ptConfigContentCache===i)return;e.updatedAt=new Date().toISOString();let n=o+".tmp";try{await t.default.writeFile(n,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(n,o)}catch(e){throw await t.default.unlink(n).catch(()=>{}),e}l.__ptConfigContentCache=i,(0,s.broadcastSync)({type:"config"})},f="scrypt:",g=e=>"string"==typeof e&&e.startsWith(f),m=async e=>{let t=i.default.randomBytes(16),a=await new Promise((a,r)=>{i.default.scrypt(e,t,64,(e,t)=>{e?r(e):a(t)})});return`${f}${t.toString("hex")}:${a.toString("hex")}`},h=async(e,t)=>{if(!g(t))return!1;let[,a,r]=t.split(":"),s=Buffer.from(a,"hex"),n=Buffer.from(r,"hex"),o=await new Promise((t,a)=>{i.default.scrypt(e,s,n.length,(e,r)=>{e?a(e):t(r)})});return i.default.timingSafeEqual(o,n)},w=async()=>await p()??d(),y=async e=>u(async()=>{let t=await p()??d();Object.assign(t,e),await c(t)}),v=async()=>{let e=await p();return!g(e?.authPassword)},S=async()=>{let e=await p();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>i.default.randomBytes(32).toString("hex"),"getConfig",0,w,"getDangerouslySkipPermissions",0,S,"hashPassword",0,m,"needsSetup",0,v,"updateConfig",0,y,"verifyPassword",0,h])},478490,e=>{"use strict";var t=e.i(845994);e.i(924868);var a=e.i(814747),r=e.i(446786),i=e.i(25146);e.i(796902),(0,i.createLogger)("hooks");let s=a.default.join(r.default.homedir(),".purplemux"),n=a.default.join(s,"hooks.json");a.default.join(s,"port"),a.default.join(s,"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),d=async e=>{let a=await (0,t.getDangerouslySkipPermissions)(),r=[`--settings ${n}`];return e&&r.push(`--append-system-prompt-file ${(0,o.getClaudePromptPath)(e)}`),a&&r.push("--dangerously-skip-permissions"),r.join(" ")},p=async(e,t)=>{if(!u(e))throw Error(`Invalid session ID format: ${e}`);let a=await d(t);return`claude --resume ${e} ${a}`};e.s(["buildResumeCommand",0,p,"isValidSessionId",0,u],478490)},997054,e=>{"use strict";var t=e.i(926747),a=e.i(190406),r=e.i(244898),i=e.i(262950),s=e.i(446786),n=e.i(322429),o=e.i(825265),l=e.i(804767),u=e.i(478490),d=e.i(459015),p=e.i(964759);let c=(0,e.i(25146).createLogger)("workspace-api"),f=async(e,t)=>{if("GET"===e.method){let e=await (0,n.getWorkspaces)();return t.status(200).json(e)}if("POST"===e.method){let{directory:a,name:r,resumeSessionId:i}=e.body??{};if(i&&!(0,u.isValidSessionId)(i))return t.status(400).json({error:"Invalid session ID format"});let f=a&&"string"==typeof a?a:s.default.homedir();try{let e=i?{panelType:"claude-code"}:void 0,a=await (0,n.createWorkspace)(f,r,e),s=await (0,o.readLayoutFile)((0,o.resolveLayoutFile)(a.id)),g=s?(0,l.collectAllTabs)(s.root)[0]:null;return g&&"web-browser"!==g.panelType&&(0,p.getStatusManager)().registerTab(g.id,{cliState:"inactive",workspaceId:a.id,tabName:g.name,tmuxSession:g.sessionName,lastEvent:null,eventSeq:0}),i&&g&&setTimeout(async()=>{try{let e=await (0,u.buildResumeCommand)(i,a.id);await (0,d.sendKeys)(g.sessionName,e)}catch(e){c.warn(`resume sendKeys failed: ${e instanceof Error?e.message:e}`)}},500),t.status(200).json(a)}catch(r){let e=r instanceof Error?r.message:"Unknown error",a=["not exist","directory","registered"].some(t=>e.includes(t));return t.status(a?400:500).json({error:e})}}return t.setHeader("Allow","GET, POST"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,f],401508);var g=e.i(401508),m=e.i(7031),h=e.i(181927),w=e.i(846432);let y=(0,i.hoist)(g,"default"),v=(0,i.hoist)(g,"config"),S=new r.PagesAPIRouteModule({definition:{kind:a.RouteKind.PAGES_API,page:"/api/workspace/index",pathname:"/api/workspace",bundlePath:"",filename:""},userland:g,distDir:".next",relativeProjectDir:""});async function P(e,a,r){r.requestMeta&&(0,w.setRequestMeta)(e,r.requestMeta),S.isDev&&(0,w.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/workspace/index";i=i.replace(/\/index$/,"")||"/";let s=await S.prepare(e,a,{srcPage:i});if(!s){a.statusCode=400,a.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve());return}let{query:n,params:o,prerenderManifest:l,routerServerContext:u}=s;try{let t,r=e.method||"GET",s=(0,m.getTracer)(),d=s.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=S.instrumentationOnRequestError.bind(S),f=async d=>S.render(e,a,{query:{...n,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:S.isDev,page:"/api/workspace/index",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!d)return;d.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 n=e.get("next.route");if(n){let e=`${r} ${n}`;d.setAttributes({"next.route":n,"http.route":n,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",n),t.updateName(e))}else d.updateName(`${r} ${i}`)});p&&d?await f(d):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(h.BaseServerSpan.handleRequest,{spanName:`${r} ${i}`,kind:m.SpanKind.SERVER,attributes:{"http.method":r,"http.target":e.url}},f),void 0,!p))}catch(e){if(S.isDev)throw e;(0,t.sendError)(a,500,"Internal Server Error")}finally{null==r.waitUntil||r.waitUntil.call(r,Promise.resolve())}}e.s(["config",0,v,"default",0,y,"handler",0,P],997054)},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
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=_134uyu_._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
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
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=src_lib_0vs5asg._.js.map
|