purplemux 0.2.2 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +99 -94
- 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 +91 -7
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__014kwh_._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0t1c-6w._.js → [root-of-the-server]__016s4a9._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02v.lnb._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05ij_ys._.js +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0cjfc~l._.js → [root-of-the-server]__06h3gzy._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08tdlcm._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ar~lbk._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0auutl5._.js +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bo-su1._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bocpgx._.js +30 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c-bb5d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0dt2efu._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i-jyh3._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i1m1v9._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ihlt6s._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kd7wei._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l~_wd0._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__04o.cbq._.js → [root-of-the-server]__0m99ffd._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mky_tj._.js +35 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oiiu_o._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oqgn2h._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0hzysmw._.js → [root-of-the-server]__0q8lffz._.js} +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rhb4gk._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vjtjtc._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w0wz~a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x_e0yw._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0t7wqt6._.js → [root-of-the-server]__10h2vlr._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11iyaqz._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11xw16l._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00yjayf._.js → [root-of-the-server]__121-6-e._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12ksl6n._.js +2 -2
- package/.next/standalone/.next/server/chunks/{_0out7wm._.js → _0-mgr1c._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_0.5a4bu._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_134uyu_._.js → _03-duro._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_05-8rnc._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0ap4fy.._.js → _07097f~._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0st-_d~._.js → _0jzxge9._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0uo_gs5._.js → _0ll-5~7._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_0mhomq~._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0.hbe-v._.js → _0pk0hms._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_0qm27ix._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0su2osz._.js → _0v81st0._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_0vgpyhz._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_1368r9s._.js → _0w0qjyh._.js} +1 -1
- package/.next/standalone/.next/server/chunks/_0wok5xu._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0tumyht._.js → _0wu6uxd._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_04dq3gt._.js → _0z7d6.z._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0c63jma._.js → _0zf5mig._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{_0mnwbyo._.js → _0~~9-pj._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{src_lib_0vs5asg._.js → src_lib_0p.xsqi._.js} +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_layout-store_ts_0fanx7c._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_workspace-store_ts_0vqt073._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ap_bxo._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0hwcydd._.js → [root-of-the-server]__0grkevn._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0t9ru13._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-9ezhb._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_003~2_g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_00zsk6a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_00rrt71._.js → _016o9_-._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_01eupc5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0y5jzd3._.js → _020f2r.._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0_c~3id._.js → _02jzd5g._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_08h9ynz._.js → _058y~nz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_05bq96_._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0_sz4y0._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0a64og5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_00ehnd~._.js → _0c1yivm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0ccg0_z._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/_0egedv6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0fnzfs-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0fota2a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0rxhzwm._.js → _0ftinmo._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0h4kenr._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0hat6~g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hp8_ck._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hq29bt._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0ihbr8k._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0mltzed._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0nbe6mv._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0nvs1~o._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0o8h1fd._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/_0pg-q18._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0w.1ts8._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0w1phzp._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0w6jc9p._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0lnui2f._.js → _0~hz1fq._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_11v_6.6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1289s74._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{messages_046iw4z._.js → messages_02eoowy._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{messages_0zr0cc7._.js → messages_0hmq5dp._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_diff_json_[json]_cjs_0w6blyy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_settings_json_[json]_cjs_0ksu4_w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_sidebar_json_[json]_cjs_0loc-1-._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_webBrowser_json_[json]_cjs_0wfz-ul._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_workspace_json_[json]_cjs_0g7nkdq._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_diff_json_[json]_cjs_0z34_dc._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_settings_json_[json]_cjs_0qwl-zt._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_sidebar_json_[json]_cjs_0un0e3f._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_webBrowser_json_[json]_cjs_0oirdko._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_workspace_json_[json]_cjs_0m9rzyy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_diff_json_[json]_cjs_0kheix4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_settings_json_[json]_cjs_0ce_kv6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_sidebar_json_[json]_cjs_080u46~._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_webBrowser_json_[json]_cjs_0w_no_c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_workspace_json_[json]_cjs_0xf0_50._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_diff_json_[json]_cjs_11vxoy5._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_settings_json_[json]_cjs_0h_6lba._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_sidebar_json_[json]_cjs_05y8v8h._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_webBrowser_json_[json]_cjs_00tbjsf._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_workspace_json_[json]_cjs_0h88f-g._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_diff_json_[json]_cjs_0t~9dro._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_settings_json_[json]_cjs_0pg~fls._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_sidebar_json_[json]_cjs_0i0x8w9._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_webBrowser_json_[json]_cjs_0tp7~.s._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_workspace_json_[json]_cjs_03dlzmi._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_diff_json_[json]_cjs_0cw7xj1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_settings_json_[json]_cjs_07xpfc8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_sidebar_json_[json]_cjs_0mql5dv._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_webBrowser_json_[json]_cjs_0ibtysu._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_workspace_json_[json]_cjs_0frxg.r._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_diff_json_[json]_cjs_0vc-p7n._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_settings_json_[json]_cjs_0frspzp._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_sidebar_json_[json]_cjs_07h4b1q._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_webBrowser_json_[json]_cjs_0eu9fbw._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_workspace_json_[json]_cjs_0lahru2._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_diff_json_[json]_cjs_07na~n8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_settings_json_[json]_cjs_08ex00.._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_sidebar_json_[json]_cjs_0aksrjo._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_webBrowser_json_[json]_cjs_113-x8n._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_workspace_json_[json]_cjs_0wm5nhc._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_diff_json_[json]_cjs_0a00gr_._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_settings_json_[json]_cjs_0piu0da._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_sidebar_json_[json]_cjs_0yj47nu._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_webBrowser_json_[json]_cjs_12ziott._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_workspace_json_[json]_cjs_0wygfyf._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_diff_json_[json]_cjs_0b01x_1._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_settings_json_[json]_cjs_0uazwgy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_sidebar_json_[json]_cjs_0yzmolg._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_webBrowser_json_[json]_cjs_0e5lp-q._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_workspace_json_[json]_cjs_0h3v0-e._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_diff_json_[json]_cjs_088r89k._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_settings_json_[json]_cjs_09u0c5l._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_sidebar_json_[json]_cjs_0pnu~0h._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_webBrowser_json_[json]_cjs_0u_cpuv._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_workspace_json_[json]_cjs_0ymw5wz._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_02oar3h._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0_2gaq0._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0bbmd88._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0ydhwnx._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_1294wzs._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_030gj7p._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_04tdvwp._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0bdox2f._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0rs9yzr._.js → src_components_0_aiven._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0cflin8._.js → src_components_0geizrr._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0g.s~e7._.js → src_components_11_1i~k._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0jrj_vu._.js → src_components_12mrirb._.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/chunks/ssr/src_components_ui_input_tsx_0pgha5u._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-browser-title_ts_0bw6.cb._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-workspace-store_ts_0h40e5c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_workspace-store_ts_00x-rec._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +99 -94
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +7 -6
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +4 -4
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_document.js +3 -3
- package/.next/standalone/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_error.js +4 -4
- package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/preflight.js +1 -1
- package/.next/standalone/.next/server/pages/api/auth/preflight.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/sync/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/git/sync.js +5 -0
- package/.next/standalone/.next/server/pages/api/git/sync.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/git/sync.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/layout/commit-diff/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js +5 -0
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/layout/file-content/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/layout/file-content.js +5 -0
- package/.next/standalone/.next/server/pages/api/layout/file-content.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/layout/file-content.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/layout/git-log/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/layout/git-log.js +5 -0
- package/.next/standalone/.next/server/pages/api/layout/git-log.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/layout/git-log.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +3 -3
- 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/order.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +3 -3
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/message-history.js +1 -1
- package/.next/standalone/.next/server/pages/api/message-history.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/push/vapid-key.js +1 -1
- package/.next/standalone/.next/server/pages/api/push/vapid-key.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/projects.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/projects.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/sessions.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/uptime.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/uptime.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/hook.js +3 -3
- package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js +5 -5
- package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +5 -5
- 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 +3 -3
- package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/active.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/active.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId]/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId].js +8 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId].js.map +5 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId].js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js +8 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/workspace/group.js +8 -0
- package/.next/standalone/.next/server/pages/api/workspace/group.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/workspace/group.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/workspace/reorder.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/reorder.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/validate.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/validate.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace.js +4 -4
- 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 +17 -16
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/index.js +20 -19
- 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/build-manifest.json +11 -11
- package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/login.js +12 -11
- 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 +19 -18
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports.js +18 -17
- package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/reset.js +5 -5
- 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 +17 -16
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats.js +19 -18
- package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required.js +8 -7
- 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 +18 -17
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview.js +19 -18
- 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/server/pages-manifest.json +12 -0
- package/.next/standalone/.next/static/{5mb_D_gy6E3wsT_BhuXDS → CjJlqsAWYyyu76AJtHaqt}/_buildManifest.js +18 -6
- package/.next/standalone/.next/static/chunks/{0w1ldes9u.mhe.js → 0-8v00lvs9_s0.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0oy5nvsojxb2i.js → 0-rskn1p_p.qb.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0h7n~i8gk~-a2.js → 0.4j~sc70rsrv.js} +1 -1
- package/.next/standalone/.next/static/chunks/0._2l5v1hwkfn.js +24 -0
- package/.next/standalone/.next/static/chunks/{0g0xm7shj062y.js → 001_h.~thz3j3.js} +1 -1
- package/.next/standalone/.next/static/chunks/00ljvc.i_9p~6.js +1 -0
- package/.next/standalone/.next/static/chunks/00s78xqkxglkv.js +1 -0
- package/.next/standalone/.next/static/chunks/01raz3nv-e~~d.js +1 -0
- package/.next/standalone/.next/static/chunks/024gkwka6p59k.js +1 -0
- package/.next/standalone/.next/static/chunks/02ncyh-v8g~cs.css +1 -0
- package/.next/standalone/.next/static/chunks/{0312riii_sl_1.js → 02o84r01jsc.z.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0.ecwkadp7-hq.js → 034_utxy1sujb.js} +1 -1
- package/.next/standalone/.next/static/chunks/038h8wl_~fi3u.js +1 -0
- package/.next/standalone/.next/static/chunks/038s7u_er9zkt.js +1 -0
- package/.next/standalone/.next/static/chunks/039-4cgt.dvjg.js +1 -0
- package/.next/standalone/.next/static/chunks/03ljx9csfmrpn.js +1 -0
- package/.next/standalone/.next/static/chunks/03sj62c3p8g11.js +1 -0
- package/.next/standalone/.next/static/chunks/03t01d94eyxh2.js +1 -0
- package/.next/standalone/.next/static/chunks/{17l496oycdhjx.js → 03vck__37a5cl.js} +1 -1
- package/.next/standalone/.next/static/chunks/04hn532e1vcts.js +1 -0
- package/.next/standalone/.next/static/chunks/{0w_03xk_xkc5a.js → 05kyduw8swd_h.js} +1 -1
- package/.next/standalone/.next/static/chunks/05o56eq7.f3q2.js +1 -0
- package/.next/standalone/.next/static/chunks/06vobum5720oa.js +1 -0
- package/.next/standalone/.next/static/chunks/071hdd91oy~.7.js +1 -0
- package/.next/standalone/.next/static/chunks/07yop4v9xcwb9.js +1 -0
- package/.next/standalone/.next/static/chunks/08.6.1cg_x8r-.js +16 -0
- package/.next/standalone/.next/static/chunks/08d4u-qlylmde.js +1 -0
- package/.next/standalone/.next/static/chunks/08e5.t4gotxaw.js +1 -0
- package/.next/standalone/.next/static/chunks/08ojbbzi2ergt.js +16 -0
- package/.next/standalone/.next/static/chunks/{0v6__.cfcitpl.js → 08qhrobub25u0.js} +1 -1
- package/.next/standalone/.next/static/chunks/08ttt2~ok56v6.js +1 -0
- package/.next/standalone/.next/static/chunks/{11wdicoufd516.js → 094_-.5.ue3p4.js} +1 -1
- package/.next/standalone/.next/static/chunks/09lb6md956bhb.js +16 -0
- package/.next/standalone/.next/static/chunks/09qd4fo1rz3it.js +1 -0
- package/.next/standalone/.next/static/chunks/{0d5b6a8r1tk95.js → 09s7ub8rgh~u-.js} +1 -1
- package/.next/standalone/.next/static/chunks/09sf~1tyznv2b.js +1 -0
- package/.next/standalone/.next/static/chunks/09x4be2pfe6z0.js +1 -0
- package/.next/standalone/.next/static/chunks/{02su2lz3i24nj.js → 09zxrli-btome.js} +1 -1
- package/.next/standalone/.next/static/chunks/0_7~rgbkmfo_p.js +1 -0
- package/.next/standalone/.next/static/chunks/0a7eicps6hbl6.js +1 -0
- package/.next/standalone/.next/static/chunks/{13u3mwvwu3kc..js → 0apqp49tgoz~z.js} +1 -1
- package/.next/standalone/.next/static/chunks/{02mfn213kze9c.js → 0b.a4_8picceu.js} +7 -7
- package/.next/standalone/.next/static/chunks/0batq-3sj.qi1.js +25 -0
- package/.next/standalone/.next/static/chunks/{0_67ozmvnvz16.js → 0bx27stclo8g5.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0i2uqmry6cyl_.js → 0c2_tqkbyti3h.js} +1 -1
- package/.next/standalone/.next/static/chunks/0cmg_jvd.7c43.js +1 -0
- package/.next/standalone/.next/static/chunks/0ddh4qmi2awdq.js +1 -0
- package/.next/standalone/.next/static/chunks/0di4o-khzv2gt.js +1 -0
- package/.next/standalone/.next/static/chunks/0dwxj97xm70gv.js +1 -0
- package/.next/standalone/.next/static/chunks/0e20ujygcf3hc.js +1 -0
- package/.next/standalone/.next/static/chunks/0e5t3kx~_brfk.js +1 -0
- package/.next/standalone/.next/static/chunks/0evu-825nnqef.js +1 -0
- package/.next/standalone/.next/static/chunks/0f.5lthmbt~yc.js +1 -0
- package/.next/standalone/.next/static/chunks/{0fotmrplo6yc7.js → 0f_7vuqno92ye.js} +1 -1
- package/.next/standalone/.next/static/chunks/0g-71jn3elu8f.js +1 -0
- package/.next/standalone/.next/static/chunks/0gr4lznv-6qml.js +1 -0
- package/.next/standalone/.next/static/chunks/0hl3ccityypgx.js +1 -0
- package/.next/standalone/.next/static/chunks/0hv4~cszgs3im.js +1 -0
- package/.next/standalone/.next/static/chunks/0hzis~e79cnwi.js +1 -0
- package/.next/standalone/.next/static/chunks/0jkvb4hgqlgxk.js +1 -0
- package/.next/standalone/.next/static/chunks/0k2_zze3o98ow.js +1 -0
- package/.next/standalone/.next/static/chunks/0kqxfunh4731g.js +1 -0
- package/.next/standalone/.next/static/chunks/{0fn24h74ta78c.js → 0k~crb4s4z7gy.js} +1 -1
- package/.next/standalone/.next/static/chunks/0lrjdru2bjp.x.js +1 -0
- package/.next/standalone/.next/static/chunks/0mvvym~9uf429.js +1 -0
- package/.next/standalone/.next/static/chunks/0mwkajcworx_-.js +1 -0
- package/.next/standalone/.next/static/chunks/0nqofghl.17w_.js +1 -0
- package/.next/standalone/.next/static/chunks/0o1lsz827g-q_.js +1 -0
- package/.next/standalone/.next/static/chunks/{0pb15t~lqcp4y.js → 0oh5xnzizgxt1.js} +1 -1
- package/.next/standalone/.next/static/chunks/0po8l-8pns0vb.js +1 -0
- package/.next/standalone/.next/static/chunks/{0qr~rkd5sq-yp.js → 0p~_~afvrxx99.js} +7 -6
- package/.next/standalone/.next/static/chunks/0q9nn4yuva4jl.js +1 -0
- package/.next/standalone/.next/static/chunks/0q9y8zysz~put.js +24 -0
- package/.next/standalone/.next/static/chunks/{0_htal_j04mkg.js → 0r3lm4_qr3y.a.js} +1 -1
- package/.next/standalone/.next/static/chunks/0r69~xx12-zsq.js +1 -0
- package/.next/standalone/.next/static/chunks/0reai1zdu.khx.js +1 -0
- package/.next/standalone/.next/static/chunks/0s7sv9xe3e1c9.js +1 -0
- package/.next/standalone/.next/static/chunks/0szl_dovu0hgw.js +1 -0
- package/.next/standalone/.next/static/chunks/{0axhnd2vw3m5e.js → 0t-o-jwf0~-b5.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0ml5~2ty-rbv_.js → 0t5w4x7owhfbe.js} +1 -1
- package/.next/standalone/.next/static/chunks/0thg_6bh34-xa.js +1 -0
- package/.next/standalone/.next/static/chunks/0uhkmh73bi.8w.js +1 -0
- package/.next/standalone/.next/static/chunks/0v6zafwjb5kk6.js +1 -0
- package/.next/standalone/.next/static/chunks/0vvqh.pfm9jum.js +1 -0
- package/.next/standalone/.next/static/chunks/{128d.rbx4e4rt.js → 0w0qmu364g~xt.js} +1 -1
- package/.next/standalone/.next/static/chunks/0w6_q_4rzxy6l.js +1 -0
- package/.next/standalone/.next/static/chunks/0wjrfyntnywn5.js +1 -0
- package/.next/standalone/.next/static/chunks/0xa1.t1vj1mw0.js +1 -0
- package/.next/standalone/.next/static/chunks/0xvbx6ob2wnco.js +1 -0
- package/.next/standalone/.next/static/chunks/0y441gn709g7u.js +1 -0
- package/.next/standalone/.next/static/chunks/0yd3l8p2m9-c_.js +1 -0
- package/.next/standalone/.next/static/chunks/{0uzs3jw4-93ly.js → 0zih6-g65txpb.js} +1 -1
- package/.next/standalone/.next/static/chunks/0zmym5gg0bnkg.js +1 -0
- package/.next/standalone/.next/static/chunks/105sb_yg7fcpu.js +1 -0
- package/.next/standalone/.next/static/chunks/109f1pvy3e_vd.js +1 -0
- package/.next/standalone/.next/static/chunks/10em078j6cul4.js +1 -0
- package/.next/standalone/.next/static/chunks/{0a9t5laucshuf.js → 10todxw2604hk.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0a0wcelktujjt.js → 119t_hwpxj_ko.js} +1 -1
- package/.next/standalone/.next/static/chunks/13i76gpwz2k5a.js +1 -0
- package/.next/standalone/.next/static/chunks/13j5zp717ie6d.js +24 -0
- package/.next/standalone/.next/static/chunks/13~.y-z7wud.h.js +1 -0
- package/.next/standalone/.next/static/chunks/140j4evqxtxmn.js +1 -0
- package/.next/standalone/.next/static/chunks/142km8a40ar5o.js +1 -0
- package/.next/standalone/.next/static/chunks/149sb_-h03mxq.js +1 -0
- package/.next/standalone/.next/static/chunks/{017n78o_7xb4_.js → 15hd85wggjanq.js} +1 -1
- package/.next/standalone/.next/static/chunks/15sblmrroyskk.js +1 -0
- package/.next/standalone/.next/static/chunks/16.twr9cx.kle.js +1 -0
- package/.next/standalone/.next/static/chunks/169ui~u~dpalg.js +1 -0
- package/.next/standalone/.next/static/chunks/171_ek.xwzobw.js +1 -0
- package/.next/standalone/.next/static/chunks/179zldqdb4pm2.js +1 -0
- package/.next/standalone/.next/static/chunks/{turbopack-0hwi_g-tegs_u.js → turbopack-0-ooli-pimh-6.js} +1 -1
- package/.next/standalone/.next/static/chunks/turbopack-06o7eaf8n1nth.js +1 -0
- package/.next/standalone/.next/static/chunks/turbopack-0duv.5cir9jm5.js +1 -0
- package/.next/standalone/.next/static/chunks/turbopack-0f2cool0ub~vp.js +1 -0
- package/.next/standalone/.next/static/chunks/turbopack-0q6z-bk-atg2w.js +1 -0
- package/.next/standalone/.next/static/chunks/{turbopack-066o21-32lo7n.js → turbopack-0sa282u154fdk.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0np.oib7-.1fp.js → turbopack-0vv2_r1br0hyc.js} +1 -1
- package/.next/standalone/messages/de/diff.json +26 -1
- package/.next/standalone/messages/de/settings.json +3 -1
- package/.next/standalone/messages/de/sidebar.json +10 -1
- package/.next/standalone/messages/de/webBrowser.json +5 -1
- package/.next/standalone/messages/de/workspace.json +2 -0
- package/.next/standalone/messages/en/diff.json +26 -1
- package/.next/standalone/messages/en/settings.json +3 -1
- package/.next/standalone/messages/en/sidebar.json +10 -1
- package/.next/standalone/messages/en/webBrowser.json +5 -1
- package/.next/standalone/messages/en/workspace.json +2 -0
- package/.next/standalone/messages/es/diff.json +26 -1
- package/.next/standalone/messages/es/settings.json +3 -1
- package/.next/standalone/messages/es/sidebar.json +10 -1
- package/.next/standalone/messages/es/webBrowser.json +5 -1
- package/.next/standalone/messages/es/workspace.json +2 -0
- package/.next/standalone/messages/fr/diff.json +26 -1
- package/.next/standalone/messages/fr/settings.json +3 -1
- package/.next/standalone/messages/fr/sidebar.json +10 -1
- package/.next/standalone/messages/fr/webBrowser.json +5 -1
- package/.next/standalone/messages/fr/workspace.json +2 -0
- package/.next/standalone/messages/ja/diff.json +26 -1
- package/.next/standalone/messages/ja/settings.json +3 -1
- package/.next/standalone/messages/ja/sidebar.json +10 -1
- package/.next/standalone/messages/ja/webBrowser.json +5 -1
- package/.next/standalone/messages/ja/workspace.json +2 -0
- package/.next/standalone/messages/ko/diff.json +26 -1
- package/.next/standalone/messages/ko/settings.json +3 -1
- package/.next/standalone/messages/ko/sidebar.json +10 -1
- package/.next/standalone/messages/ko/webBrowser.json +5 -1
- package/.next/standalone/messages/ko/workspace.json +2 -0
- package/.next/standalone/messages/pt-BR/diff.json +26 -1
- package/.next/standalone/messages/pt-BR/settings.json +3 -1
- package/.next/standalone/messages/pt-BR/sidebar.json +10 -1
- package/.next/standalone/messages/pt-BR/webBrowser.json +5 -1
- package/.next/standalone/messages/pt-BR/workspace.json +2 -0
- package/.next/standalone/messages/ru/diff.json +26 -1
- package/.next/standalone/messages/ru/settings.json +3 -1
- package/.next/standalone/messages/ru/sidebar.json +10 -1
- package/.next/standalone/messages/ru/webBrowser.json +5 -1
- package/.next/standalone/messages/ru/workspace.json +2 -0
- package/.next/standalone/messages/tr/diff.json +26 -1
- package/.next/standalone/messages/tr/settings.json +3 -1
- package/.next/standalone/messages/tr/sidebar.json +10 -1
- package/.next/standalone/messages/tr/webBrowser.json +5 -1
- package/.next/standalone/messages/tr/workspace.json +2 -0
- package/.next/standalone/messages/zh-CN/diff.json +26 -1
- package/.next/standalone/messages/zh-CN/settings.json +3 -1
- package/.next/standalone/messages/zh-CN/sidebar.json +10 -1
- package/.next/standalone/messages/zh-CN/webBrowser.json +5 -1
- package/.next/standalone/messages/zh-CN/workspace.json +2 -0
- package/.next/standalone/messages/zh-TW/diff.json +26 -1
- package/.next/standalone/messages/zh-TW/settings.json +3 -1
- package/.next/standalone/messages/zh-TW/sidebar.json +10 -1
- package/.next/standalone/messages/zh-TW/webBrowser.json +5 -1
- package/.next/standalone/messages/zh-TW/workspace.json +2 -0
- package/.next/standalone/package.json +5 -2
- package/.next/standalone/server.js +1 -1
- package/.next/standalone/src/pages/api/layout/commit-diff.ts +94 -0
- package/.next/standalone/src/pages/api/layout/cwd.ts +38 -0
- package/.next/standalone/src/pages/api/layout/diff.ts +196 -0
- package/.next/standalone/src/pages/api/layout/file-content.ts +130 -0
- package/.next/standalone/src/pages/api/layout/git-log.ts +55 -0
- package/.next/standalone/src/pages/api/layout/index.ts +38 -0
- package/.next/standalone/src/pages/api/layout/pane/[paneId]/index.ts +38 -0
- package/.next/standalone/src/pages/api/layout/pane/[paneId]/tabs/[tabId]/index.ts +94 -0
- package/.next/standalone/src/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.ts +31 -0
- package/.next/standalone/src/pages/api/layout/pane/[paneId]/tabs/index.ts +66 -0
- package/.next/standalone/src/pages/api/layout/pane/[paneId]/tabs/order.ts +30 -0
- package/.next/standalone/src/pages/api/layout/pane/index.ts +38 -0
- package/README.de.md +4 -3
- package/README.es.md +4 -3
- package/README.fr.md +4 -3
- package/README.ja.md +4 -3
- package/README.ko.md +4 -3
- package/README.md +4 -3
- package/README.pt-BR.md +4 -3
- package/README.ru.md +4 -3
- package/README.tr.md +4 -3
- package/README.zh-CN.md +4 -3
- package/README.zh-TW.md +4 -3
- package/bin/cli.js +95 -0
- package/dist/server.js +63 -8
- package/package.json +5 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02.9a5j._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__045g9-a._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ef59mr._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0n61.a8._.js +0 -30
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pv48rv._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qda0wx._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0zjping._.js +0 -3
- package/.next/standalone/.next/server/chunks/_04pfden._.js +0 -3
- package/.next/standalone/.next/server/chunks/_09vws3v._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0e8e4zn._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0isokfh._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0j2u-od._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0t8j4qd._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0xd1ivw._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0c0bz7t._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0nkl4wz._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0-67bvb._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_02nf4d7._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_05dcjwi._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_06yggfn._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0_soefg._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0al4.z9._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0dg4_bi._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0f8k39w._.js +0 -14
- package/.next/standalone/.next/server/chunks/ssr/_0gp1meg._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0hqzsa8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0kno-5w._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0nkeoiw._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0ob2rr-._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0sfctwm._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0sm8slq._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0svke5s._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0ulmx3c._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0wlh.pc._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0y31tie._.js +0 -14
- package/.next/standalone/.next/server/chunks/ssr/_0~.theb._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_10s2f96._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_11rnj4l._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_124p60s._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_react_esm_03v8q-a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_react_esm_0wddb~n._.js +0 -3
- package/.next/standalone/.next/static/chunks/0-8-cf3vuob~..js +0 -1
- package/.next/standalone/.next/static/chunks/0-97ruc25d2lz.js +0 -1
- package/.next/standalone/.next/static/chunks/0-ku865ak6iur.js +0 -1
- package/.next/standalone/.next/static/chunks/00g7isu_5s43..js +0 -1
- package/.next/standalone/.next/static/chunks/00nx1s6rpu537.js +0 -1
- package/.next/standalone/.next/static/chunks/00s-0sui~_24w.js +0 -1
- package/.next/standalone/.next/static/chunks/01-fb9rb-21.a.js +0 -1
- package/.next/standalone/.next/static/chunks/02dumv8n.ewiw.js +0 -1
- package/.next/standalone/.next/static/chunks/02r-a1_lz7fuk.js +0 -1
- package/.next/standalone/.next/static/chunks/03eaekq6omt65.js +0 -1
- package/.next/standalone/.next/static/chunks/04~p~.qz9diil.js +0 -1
- package/.next/standalone/.next/static/chunks/05_e09pgcymkh.js +0 -1
- package/.next/standalone/.next/static/chunks/05y90.zbqijkv.js +0 -1
- package/.next/standalone/.next/static/chunks/07-xm--o034du.js +0 -1
- package/.next/standalone/.next/static/chunks/072ccw0gkueqq.js +0 -1
- package/.next/standalone/.next/static/chunks/07i6~xrmgspp8.js +0 -1
- package/.next/standalone/.next/static/chunks/07rq~qv9ldwo~.js +0 -1
- package/.next/standalone/.next/static/chunks/08vvx8xtxwt5o.js +0 -1
- package/.next/standalone/.next/static/chunks/08zfbuugw_i52.js +0 -23
- package/.next/standalone/.next/static/chunks/09agwg~-xbxbs.js +0 -1
- package/.next/standalone/.next/static/chunks/0a1hi9y0lwv3j.js +0 -1
- package/.next/standalone/.next/static/chunks/0af.3khnmptnl.js +0 -1
- package/.next/standalone/.next/static/chunks/0afll97o4hu39.js +0 -1
- package/.next/standalone/.next/static/chunks/0ajkjqq1xc_.a.js +0 -1
- package/.next/standalone/.next/static/chunks/0chjvj73yfmoj.js +0 -1
- package/.next/standalone/.next/static/chunks/0d4vi6-ju6lha.js +0 -1
- package/.next/standalone/.next/static/chunks/0daflfjkvkh-d.js +0 -1
- package/.next/standalone/.next/static/chunks/0dh2cf_c4gz65.js +0 -1
- package/.next/standalone/.next/static/chunks/0dp178b-0_ltl.js +0 -1
- package/.next/standalone/.next/static/chunks/0dqb3atw-kpb2.js +0 -1
- package/.next/standalone/.next/static/chunks/0efkrks2gm27v.js +0 -1
- package/.next/standalone/.next/static/chunks/0fuay9akccsr9.js +0 -1
- package/.next/standalone/.next/static/chunks/0fwnzw~qq_abm.js +0 -1
- package/.next/standalone/.next/static/chunks/0gjtphww9wtey.js +0 -12
- package/.next/standalone/.next/static/chunks/0h-7ntqpip4oi.js +0 -1
- package/.next/standalone/.next/static/chunks/0idah_uu8ylro.js +0 -1
- package/.next/standalone/.next/static/chunks/0iw7xjsfo1v-u.js +0 -16
- package/.next/standalone/.next/static/chunks/0jj7ska-q4zmb.js +0 -1
- package/.next/standalone/.next/static/chunks/0k50-hp08.xtp.js +0 -1
- package/.next/standalone/.next/static/chunks/0n1xl_9xb64~a.js +0 -1
- package/.next/standalone/.next/static/chunks/0nh~2y4pr-6b-.js +0 -1
- package/.next/standalone/.next/static/chunks/0nyar-7g9rya6.js +0 -1
- package/.next/standalone/.next/static/chunks/0o_yi7-4-ckig.js +0 -1
- package/.next/standalone/.next/static/chunks/0om8~g_7-c-x5.js +0 -12
- package/.next/standalone/.next/static/chunks/0otoymu09sgml.js +0 -1
- package/.next/standalone/.next/static/chunks/0oxlivdn8c89b.js +0 -1
- package/.next/standalone/.next/static/chunks/0qwvk-uq944-d.js +0 -23
- package/.next/standalone/.next/static/chunks/0r7uk81oh650e.js +0 -1
- package/.next/standalone/.next/static/chunks/0r_ynb..7ongv.js +0 -23
- package/.next/standalone/.next/static/chunks/0ro78lxc~ndn_.js +0 -1
- package/.next/standalone/.next/static/chunks/0ryghnq7iy47v.js +0 -24
- package/.next/standalone/.next/static/chunks/0se1ra8f1bor~.js +0 -1
- package/.next/standalone/.next/static/chunks/0t_38o03_pjwq.js +0 -1
- package/.next/standalone/.next/static/chunks/0u9yrtrs1bktp.js +0 -1
- package/.next/standalone/.next/static/chunks/0u9~wuf2zbs5z.js +0 -1
- package/.next/standalone/.next/static/chunks/0vmc7tq7ze-wk.js +0 -1
- package/.next/standalone/.next/static/chunks/0wlz6--vu7adu.js +0 -1
- package/.next/standalone/.next/static/chunks/0wp13r5su.j3e.js +0 -1
- package/.next/standalone/.next/static/chunks/0wx.aq674yk~q.js +0 -1
- package/.next/standalone/.next/static/chunks/0x7cvsf..ezd..js +0 -1
- package/.next/standalone/.next/static/chunks/0xas4ca5n6mzi.js +0 -1
- package/.next/standalone/.next/static/chunks/0xmalbon9eqvg.js +0 -1
- package/.next/standalone/.next/static/chunks/0y1_gk64rkp0g.js +0 -1
- package/.next/standalone/.next/static/chunks/0zz.9uk42mbks.js +0 -1
- package/.next/standalone/.next/static/chunks/0~lnp45fxxtgz.js +0 -1
- package/.next/standalone/.next/static/chunks/0~nlz9.lltzrz.js +0 -1
- package/.next/standalone/.next/static/chunks/10bvbbw1062os.js +0 -1
- package/.next/standalone/.next/static/chunks/11gch78bg_qsn.js +0 -1
- package/.next/standalone/.next/static/chunks/11nk1lwom62oe.js +0 -1
- package/.next/standalone/.next/static/chunks/131tx--pi8.tm.js +0 -1
- package/.next/standalone/.next/static/chunks/132lgf3mld2ax.js +0 -1
- package/.next/standalone/.next/static/chunks/13nitezuv6q6x.js +0 -1
- package/.next/standalone/.next/static/chunks/13~7v30_nnqks.js +0 -1
- package/.next/standalone/.next/static/chunks/14xlpbx6dj_4i.js +0 -1
- package/.next/standalone/.next/static/chunks/16dbi-ty-ptnr.js +0 -1
- package/.next/standalone/.next/static/chunks/17jcucuef_33-.js +0 -1
- package/.next/standalone/.next/static/chunks/184~yri~m3wao.css +0 -1
- package/.next/standalone/.next/static/chunks/186b1th1fl440.js +0 -1
- package/.next/standalone/.next/static/chunks/18d9u7jni2vco.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-0abq2d._xmt7y.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-0sisjg~-koq5w.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-11tk4snp~dxd4.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-17.piokhhz77b.js +0 -1
- /package/.next/standalone/.next/static/{5mb_D_gy6E3wsT_BhuXDS → CjJlqsAWYyyu76AJtHaqt}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{5mb_D_gy6E3wsT_BhuXDS → CjJlqsAWYyyu76AJtHaqt}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[270406,(t,e,r)=>{e.exports=t.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(t,e,r)=>{e.exports=t.x("os",()=>require("os"))},814747,(t,e,r)=>{e.exports=t.x("path",()=>require("path"))},924868,(t,e,r)=>{e.exports=t.x("fs/promises",()=>require("fs/promises"))},224361,(t,e,r)=>{e.exports=t.x("util",()=>require("util"))},233405,(t,e,r)=>{e.exports=t.x("child_process",()=>require("child_process"))},597789,965898,t=>{"use strict";let e=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(e?JSON.parse(e):{...process.env});e||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),t.s(["PRISTINE_ENV",0,r],965898);let n=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),a=["LC_"],s=t=>n.has(t)||a.some(e=>t.startsWith(e)),i={TERM:"xterm-256color",COLORTERM:"truecolor"},u=()=>{let t={};for(let[e,n]of Object.entries(r))void 0!==n&&s(e)&&(t[e]=n);return{...t,...i}},o=t=>`'${t.replace(/'/g,"'\\''")}'`,l=()=>r.SHELL||"/bin/bash";t.s(["buildShellEnv",0,()=>u(),"buildShellLaunchCommand",0,()=>{let t=Object.entries(u()).map(([t,e])=>`${t}=${o(e)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${t} ${o(l())} -l`},"defaultShell",0,l],597789)},422392,t=>{"use strict";let e=new Map,r=6e4;t.s(["getCached",0,t=>{let r=e.get(t);return r?Date.now()>r.expiresAt?(e.delete(t),null):r.data:null},"setCached",0,(t,n,a=r)=>{e.set(t,{data:n,expiresAt:Date.now()+a})}])},990294,(t,e,r)=>{t.e,e.exports=function(){"use strict";var t="millisecond",e="second",r="minute",n="hour",a="week",s="month",i="quarter",u="year",o="date",l="Invalid Date",c=/^(\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,f=function(t,e,r){var n=String(t);return!n||n.length>=e?t:""+Array(e+1-n.length).join(r)+t},h="en",p={};p[h]={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(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}};var m="$isDayjsObject",y=function(t){return t instanceof v||!(!t||!t[m])},M=function t(e,r,n){var a;if(!e)return h;if("string"==typeof e){var s=e.toLowerCase();p[s]&&(a=s),r&&(p[s]=r,a=s);var i=e.split("-");if(!a&&i.length>1)return t(i[0])}else{var u=e.name;p[u]=e,a=u}return!n&&a&&(h=a),a||!n&&h},g=function(t,e){if(y(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new v(r)},$={s:f,z:function(t){var e=-t.utcOffset(),r=Math.abs(e);return(e<=0?"+":"-")+f(Math.floor(r/60),2,"0")+":"+f(r%60,2,"0")},m:function t(e,r){if(e.date()<r.date())return-t(r,e);var n=12*(r.year()-e.year())+(r.month()-e.month()),a=e.clone().add(n,s),i=r-a<0,u=e.clone().add(n+(i?-1:1),s);return+(-(n+(r-a)/(i?a-u:u-a))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(l){return({M:s,y:u,w:a,d:"day",D:o,h:n,m:r,s:e,ms:t,Q:i})[l]||String(l||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}};$.l=M,$.i=y,$.w=function(t,e){return g(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var v=function(){function f(t){this.$L=M(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[m]=!0}var h=f.prototype;return h.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if($.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var n=e.match(c);if(n){var a=n[2]-1||0,s=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],a,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)):new Date(n[1],a,n[3]||1,n[4]||0,n[5]||0,n[6]||0,s)}}return new Date(e)}(t),this.init()},h.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},h.$utils=function(){return $},h.isValid=function(){return this.$d.toString()!==l},h.isSame=function(t,e){var r=g(t);return this.startOf(e)<=r&&r<=this.endOf(e)},h.isAfter=function(t,e){return g(t)<this.startOf(e)},h.isBefore=function(t,e){return this.endOf(e)<g(t)},h.$g=function(t,e,r){return $.u(t)?this[e]:this.set(r,t)},h.unix=function(){return Math.floor(this.valueOf()/1e3)},h.valueOf=function(){return this.$d.getTime()},h.startOf=function(t,i){var l=this,c=!!$.u(i)||i,d=$.p(t),f=function(t,e){var r=$.w(l.$u?Date.UTC(l.$y,e,t):new Date(l.$y,e,t),l);return c?r:r.endOf("day")},h=function(t,e){return $.w(l.toDate()[t].apply(l.toDate("s"),(c?[0,0,0,0]:[23,59,59,999]).slice(e)),l)},p=this.$W,m=this.$M,y=this.$D,M="set"+(this.$u?"UTC":"");switch(d){case u:return c?f(1,0):f(31,11);case s:return c?f(1,m):f(0,m+1);case a:var g=this.$locale().weekStart||0,v=(p<g?p+7:p)-g;return f(c?y-v:y+(6-v),m);case"day":case o:return h(M+"Hours",0);case n:return h(M+"Minutes",1);case r:return h(M+"Seconds",2);case e:return h(M+"Milliseconds",3);default:return this.clone()}},h.endOf=function(t){return this.startOf(t,!1)},h.$set=function(a,i){var l,c=$.p(a),d="set"+(this.$u?"UTC":""),f=((l={}).day=d+"Date",l[o]=d+"Date",l[s]=d+"Month",l[u]=d+"FullYear",l[n]=d+"Hours",l[r]=d+"Minutes",l[e]=d+"Seconds",l[t]=d+"Milliseconds",l)[c],h="day"===c?this.$D+(i-this.$W):i;if(c===s||c===u){var p=this.clone().set(o,1);p.$d[f](h),p.init(),this.$d=p.set(o,Math.min(this.$D,p.daysInMonth())).$d}else f&&this.$d[f](h);return this.init(),this},h.set=function(t,e){return this.clone().$set(t,e)},h.get=function(t){return this[$.p(t)]()},h.add=function(t,i){var o,l=this;t=Number(t);var c=$.p(i),d=function(e){var r=g(l);return $.w(r.date(r.date()+Math.round(e*t)),l)};if(c===s)return this.set(s,this.$M+t);if(c===u)return this.set(u,this.$y+t);if("day"===c)return d(1);if(c===a)return d(7);var f=((o={})[r]=6e4,o[n]=36e5,o[e]=1e3,o)[c]||1,h=this.$d.getTime()+t*f;return $.w(h,this)},h.subtract=function(t,e){return this.add(-1*t,e)},h.format=function(t){var e=this,r=this.$locale();if(!this.isValid())return r.invalidDate||l;var n=t||"YYYY-MM-DDTHH:mm:ssZ",a=$.z(this),s=this.$H,i=this.$m,u=this.$M,o=r.weekdays,c=r.months,f=r.meridiem,h=function(t,r,a,s){return t&&(t[r]||t(e,n))||a[r].slice(0,s)},p=function(t){return $.s(s%12||12,t,"0")},m=f||function(t,e,r){var n=t<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(d,function(t,n){return n||function(t){switch(t){case"YY":return String(e.$y).slice(-2);case"YYYY":return $.s(e.$y,4,"0");case"M":return u+1;case"MM":return $.s(u+1,2,"0");case"MMM":return h(r.monthsShort,u,c,3);case"MMMM":return h(c,u);case"D":return e.$D;case"DD":return $.s(e.$D,2,"0");case"d":return String(e.$W);case"dd":return h(r.weekdaysMin,e.$W,o,2);case"ddd":return h(r.weekdaysShort,e.$W,o,3);case"dddd":return o[e.$W];case"H":return String(s);case"HH":return $.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 $.s(i,2,"0");case"s":return String(e.$s);case"ss":return $.s(e.$s,2,"0");case"SSS":return $.s(e.$ms,3,"0");case"Z":return a}return null}(t)||a.replace(":","")})},h.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},h.diff=function(t,o,l){var c,d=this,f=$.p(o),h=g(t),p=(h.utcOffset()-this.utcOffset())*6e4,m=this-h,y=function(){return $.m(d,h)};switch(f){case u:c=y()/12;break;case s:c=y();break;case i:c=y()/3;break;case a:c=(m-p)/6048e5;break;case"day":c=(m-p)/864e5;break;case n:c=m/36e5;break;case r:c=m/6e4;break;case e:c=m/1e3;break;default:c=m}return l?c:$.a(c)},h.daysInMonth=function(){return this.endOf(s).$D},h.$locale=function(){return p[this.$L]},h.locale=function(t,e){if(!t)return this.$L;var r=this.clone(),n=M(t,e,!0);return n&&(r.$L=n),r},h.clone=function(){return $.w(this.$d,this)},h.toDate=function(){return new Date(this.valueOf())},h.toJSON=function(){return this.isValid()?this.toISOString():null},h.toISOString=function(){return this.$d.toISOString()},h.toString=function(){return this.$d.toUTCString()},f}(),w=v.prototype;return g.prototype=w,[["$ms",t],["$s",e],["$m",r],["$H",n],["$W","day"],["$M",s],["$y",u],["$D",o]].forEach(function(t){w[t[1]]=function(e){return this.$g(e,t[0],t[1])}}),g.extend=function(t,e){return t.$i||(t(e,v,g),t.$i=!0),g},g.locale=M,g.isDayjs=y,g.unix=function(t){return g(1e3*t)},g.en=p[h],g.Ls=p,g.p={},g}()},975925,t=>{"use strict";var e=t.i(990294);let r=t=>{let r=new Date;switch(t){case"today":return{start:(0,e.default)().startOf("day").toDate(),end:r};case"7d":return{start:(0,e.default)().subtract(7,"day").startOf("day").toDate(),end:r};case"30d":return{start:(0,e.default)().subtract(30,"day").startOf("day").toDate(),end:r};case"all":return{start:new Date(0),end:r}}};t.s(["isDateStringWithinPeriod",0,(t,n)=>{if("all"===n)return!0;let{start:a,end:s}=r(n),i=(0,e.default)(t).toDate();return i>=a&&i<=s},"isWithinPeriod",0,(t,e)=>{if("all"===e)return!0;let{start:n,end:a}=r(e),s=new Date(t);return s>=n&&s<=a},"parsePeriod",0,t=>"today"===t||"7d"===t||"30d"===t||"all"===t?t:"all"])},411941,t=>{"use strict";var e=t.i(924868),r=t.i(522734),n=t.i(814747),a=t.i(446786),s=t.i(319668),i=t.i(975925),u=t.i(7991);let o=n.default.join(a.default.homedir(),".claude","projects"),l=t=>/^agent-/.test(t),c=async()=>{let t=[];try{for(let r of(await e.default.readdir(o))){let a=n.default.join(o,r),s=await e.default.stat(a).catch(()=>null);if(s?.isDirectory())for(let s of(await e.default.readdir(a).catch(()=>[])))!s.endsWith(".jsonl")||l(s)||t.push({filePath:n.default.join(a,s),project:r})}}catch{}return t},d=async(t,e,n)=>{let a=new Map,o="";try{let u=(0,r.createReadStream)(t,{encoding:"utf-8"});for await(let t of s.default.createInterface({input:u,crlfDelay:1/0}))if(t.trim())try{let r=JSON.parse(t),s=String(r.timestamp??"");if(o||"string"!=typeof r.cwd||(o=r.cwd),!s||!(0,i.isWithinPeriod)(s,n))continue;let u=String(r.sessionId??"");if(!u)continue;let l=String(r.type??"");if("user"!==l&&"assistant"!==l)continue;let c=a.get(u);if(c||(c={sessionId:u,project:e,startedAt:s,lastActivityAt:s,messageCount:0,totalInputTokens:0,totalOutputTokens:0,model:""},a.set(u,c)),s<c.startedAt&&(c.startedAt=s),s>c.lastActivityAt&&(c.lastActivityAt=s),"user"===l&&c.messageCount++,"assistant"===l){let t=r.message;if(t){let e=String(t.model??"");e&&(c.model=e);let r=t.usage;r&&(c.totalInputTokens+=Number(r.input_tokens??0),c.totalOutputTokens+=Number(r.output_tokens??0))}}}catch{}}catch{}if(o){let t=(0,u.shortenCwd)(o);for(let e of a.values())e.project=t}return Array.from(a.values())},f=async(t,e)=>{let r=[],n=0,a=async()=>{for(;n<t.length;){let e=n++;r[e]=await t[e]()}},s=Array.from({length:Math.min(e,t.length)},()=>a());return await Promise.all(s),r},h=async(t,e)=>{let n=new Map;try{let a=(0,r.createReadStream)(t,{encoding:"utf-8"});for await(let t of s.default.createInterface({input:a,crlfDelay:1/0}))if(t.trim())try{let r=JSON.parse(t),a=String(r.timestamp??"");if(!a)continue;let s=a.slice(0,10);if(!e.has(s))continue;let i=String(r.sessionId??"");if(!i)continue;let u=String(r.type??"");if("user"!==u&&"assistant"!==u)continue;let o=new Date(a).getTime();if(isNaN(o))continue;let l=n.get(s);l||(l=new Map,n.set(s,l));let c=l.get(i);c?c.push(o):l.set(i,[o])}catch{}}catch{}return n},p=async t=>{let e=await c();if(0===e.length)return new Map;let r=e.map(e=>()=>h(e.filePath,t)),n=await f(r,10),a=new Map;for(let t of n)for(let[e,r]of t){let t=a.get(e);for(let[n,s]of(t||(t=new Map,a.set(e,t)),r)){let e=t.get(n);e?e.push(...s):t.set(n,[...s])}}return a},m=async t=>{let e=await c();if(0===e.length)return[];let r=e.map(e=>()=>d(e.filePath,e.project,t)),n=await f(r,10),a=new Map;for(let t of n)for(let e of t){let t=a.get(e.project);t?(t.sessionCount++,t.messageCount+=e.messageCount,t.totalTokens+=e.totalInputTokens+e.totalOutputTokens):a.set(e.project,{project:e.project,sessionCount:1,messageCount:e.messageCount,totalTokens:e.totalInputTokens+e.totalOutputTokens})}return Array.from(a.values()).sort((t,e)=>e.totalTokens-t.totalTokens)},y=async t=>{let e=await c();if(0===e.length)return[];let r=e.map(e=>()=>d(e.filePath,e.project,t)),n=await f(r,10),a=[];for(let t of n)for(let e of t)a.push({sessionId:e.sessionId,project:e.project,startedAt:e.startedAt,lastActivityAt:e.lastActivityAt,messageCount:e.messageCount,totalTokens:e.totalInputTokens+e.totalOutputTokens,model:e.model});return a.sort((t,e)=>e.startedAt.localeCompare(t.startedAt))};t.s(["parseAllProjects",0,m,"parseAllSessions",0,y,"parseTimestampsByDay",0,p])},412078,t=>{"use strict";var e=t.i(926747),r=t.i(190406),n=t.i(244898),a=t.i(262950),s=t.i(924868),i=t.i(814747),u=t.i(446786),o=t.i(990294),l=t.i(411941),c=t.i(422392);let d=i.default.join(u.default.homedir(),".purplemux","stats"),f=i.default.join(d,"uptime-cache.json"),h=async()=>{try{let t=await s.default.readFile(f,"utf-8"),e=JSON.parse(t);if(1!==e.version)return null;return e}catch{return null}},p=async t=>{await s.default.mkdir(d,{recursive:!0}),await s.default.writeFile(f,JSON.stringify(t),"utf-8")},m=async(t,e)=>{if("GET"!==t.method)return e.setHeader("Allow","GET"),e.status(405).json({error:"method-not-allowed"});let r="stats:uptime:7d",n=(0,c.getCached)(r);if(n)return e.status(200).json(n);let a=(0,o.default)(),s=a.format("YYYY-MM-DD"),i=a.subtract(6,"day").startOf("day"),u=[];for(let t=0;t<7;t++)u.push(i.add(t,"day").format("YYYY-MM-DD"));let d=await h(),f=new Set;for(let t of(f.add(s),u))t===s||d?.days[t]||f.add(t);let m=await (0,l.parseTimestampsByDay)(f),y={version:1,lastComputedDate:s,days:{...d?.days}},M=a.subtract(30,"day").format("YYYY-MM-DD");for(let t of Object.keys(y.days))t<M&&delete y.days[t];for(let[t,e]of m){if(t===s)continue;let r={};for(let[t,n]of e)r[t]=n;y.days[t]=r}p(y).catch(()=>{});let g=new Map,$=t=>{for(let[e,r]of t instanceof Map?t.entries():Object.entries(t)){let t=g.get(e);t?t.push(...r):g.set(e,[...r])}};for(let t of u){let e=m.get(t);e?$(e):y.days[t]&&$(y.days[t])}for(let t of g.values())t.sort((t,e)=>t-e);let v=((t,e,r)=>{let n=e.valueOf(),a=Math.ceil((r-n)/6e4),s=new Int32Array(a);for(let e of t.values()){if(0===e.length)continue;let t=new Set;for(let r=0;r<e.length;r++){let a=e[r],s=(a-n)/6e4|0;if(t.add(s),r+1<e.length){let i=e[r+1];if(i-a<=9e5){let e=(i-n)/6e4|0;for(let r=s;r<=e;r++)t.add(r)}}}for(let e of t)e>=0&&e<a&&s[e]++}let i=[],u=0,o=0,l={},c=-1,d=0;for(let t=0;t<=a;t++){let e=t<a?s[t]:0;if(e>0){c<0&&(c=t,d=0),u++,e>d&&(d=e),e>o&&(o=e);for(let t=2;t<=e;t++)l[t]=(l[t]??0)+1}else if(c>=0){let e=n+6e4*c,s=n+6e4*t,u=t>=a;i.push({startMs:e,endMs:u?r:s,durationMinutes:t-c,maxConcurrent:d,active:u}),c=-1}}i.sort((t,e)=>e.startMs-t.startMs);let f=[];for(let t=0;t<7;t++){let r=n+864e5*t,a=r+864e5,s=e.add(t,"day").format("YYYY-MM-DD"),u=[];for(let t of i){if(t.endMs<=r||t.startMs>=a)continue;let e=Math.max(t.startMs,r),n=Math.min(t.endMs,a),s=(e-r)/6e4|0,i=Math.max(1,(n-e)/6e4|0);u.push({startMinuteOfDay:s,durationMinutes:i,maxConcurrent:t.maxConcurrent})}u.sort((t,e)=>t.startMinuteOfDay-e.startMinuteOfDay),f.push({date:s,segments:u})}let h=i.length,p=h>0?Math.max(...i.map(t=>t.durationMinutes)):0,m=h>0?Math.round(i.reduce((t,e)=>t+e.durationMinutes,0)/h):0,y=i.find(t=>t.active);return{streaks:i,days:f,longestStreakMinutes:p,averageStreakMinutes:m,totalStreaks:h,totalActiveMinutes:u,currentStreak:{active:!!y,minutes:y?.durationMinutes??0,maxConcurrent:y?.maxConcurrent??0},comboMinutes:Object.fromEntries(Object.entries(l).map(([t,e])=>[Number(t),e])),maxConcurrent:o}})(g,i,a.valueOf());return(0,c.setCached)(r,v),e.status(200).json(v)};t.s(["default",0,m],982694);var y=t.i(982694),M=t.i(7031),g=t.i(181927),$=t.i(846432);let v=(0,a.hoist)(y,"default"),w=(0,a.hoist)(y,"config"),S=new n.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/stats/uptime",pathname:"/api/stats/uptime",bundlePath:"",filename:""},userland:y,distDir:".next",relativeProjectDir:""});async function D(t,r,n){n.requestMeta&&(0,$.setRequestMeta)(t,n.requestMeta),S.isDev&&(0,$.addRequestMeta)(t,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/stats/uptime";a=a.replace(/\/index$/,"")||"/";let s=await S.prepare(t,r,{srcPage:a});if(!s){r.statusCode=400,r.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:i,params:u,prerenderManifest:o,routerServerContext:l}=s;try{let e,n=t.method||"GET",s=(0,M.getTracer)(),c=s.getActiveScopeSpan(),d=!!(null==l?void 0:l.isWrappedByNextServer),f=S.instrumentationOnRequestError.bind(S),h=async c=>S.render(t,r,{query:{...i,...u},params:u,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:S.isDev,page:"/api/stats/uptime",internalRevalidate:null==l?void 0:l.revalidate,onError:(...e)=>f(t,...e)}).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let t=s.getRootSpanAttributes();if(!t)return;if(t.get("next.span_type")!==g.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${t.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=t.get("next.route");if(i){let t=`${n} ${i}`;c.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),c.updateName(t),e&&e!==c&&(e.setAttribute("http.route",i),e.updateName(t))}else c.updateName(`${n} ${a}`)});d&&c?await h(c):(e=s.getActiveScopeSpan(),await s.withPropagatedContext(t.headers,()=>s.trace(g.BaseServerSpan.handleRequest,{spanName:`${n} ${a}`,kind:M.SpanKind.SERVER,attributes:{"http.method":n,"http.target":t.url}},h),void 0,!d))}catch(t){if(S.isDev)throw t;(0,e.sendError)(r,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}t.s(["config",0,w,"default",0,v,"handler",0,D],412078)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0dt2efu._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},713915,e=>{"use strict";var t=e.i(233405),r=e.i(924868),i=e.i(446786),a=e.i(814747),n=e.i(224361),l=e.i(597789),s=e.i(965898);let o=(0,n.promisify)(t.execFile),u=null,d=null,c=async()=>{let e=i.default.userInfo().shell||(0,l.defaultShell)();try{let{stdout:t}=await o(e,["-ilc",'echo -n "$PATH"'],{timeout:5e3,env:{...(0,l.buildShellEnv)(),SHELL:e,DISABLE_AUTO_UPDATE:"true",ZSH_TMUX_AUTOSTARTED:"true"}});return t.toString().trim()}catch{return s.PRISTINE_ENV.PATH||""}},p=async()=>u||(d||(d=c().then(e=>(u=e,d=null,e))),d),f=async(e,t,r)=>{try{let i=await p(),{stdout:a}=await o(e,t,{timeout:5e3,env:{...process.env,PATH:i}});return{installed:!0,version:r(a)}}catch{return{installed:!1,version:null}}},h=e=>e.trim().match(/(\d+\.\d+[\d.]*)/)?.[1]??null,g=[a.default.join(i.default.homedir(),".local","bin")],m=async()=>{for(let e of g)try{return await (0,r.access)(a.default.join(e,"claude")),e}catch{}return null},y=e=>e.installed&&null!==e.version&&parseFloat(e.version)>=2.9,S=async()=>{u=await c();let[e,t,n]=await Promise.all([f("tmux",["-V"],h),f("git",["--version"],h),f("claude",["--version"],h)]),l=(y(e)&&t.installed&&n.installed,n.installed?null:await m()),s=!1;if(n.installed||l)try{await (0,r.access)(a.default.join(i.default.homedir(),".claude")),s=!0}catch{}return{tmux:{...e,compatible:y(e)},git:t,claude:{...n,binaryPath:l,loggedIn:s}}},x=null,v=null,_=null,w=null,E=async()=>_&&Date.now()-_.checkedAt<1e3?_.result:w||(w=S().then(e=>(_={result:e,checkedAt:Date.now()},w=null,e)).catch(e=>{throw w=null,e})),T=async()=>{u=await c();let[e,t,r]=await Promise.all([f("tmux",["-V"],h),f("git",["--version"],h),f("claude",["--version"],h)]);return{tmux:{...e,compatible:y(e)},git:t,claude:r}},P=async()=>x&&Date.now()-x.checkedAt<3e4?x.result:v||(v=T().then(e=>(x={result:e,checkedAt:Date.now()},v=null,e)).catch(e=>{throw v=null,e}));e.s(["getCachedPreflightStatus",0,E,"getCachedRuntimePreflight",0,P,"getShellPath",0,p,"invalidateRuntimeCache",0,()=>{x=null,v=null}])},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let i=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),a=["LC_"],n=e=>i.has(e)||a.some(t=>e.startsWith(t)),l={TERM:"xterm-256color",COLORTERM:"truecolor"},s=()=>{let e={};for(let[t,i]of Object.entries(r))void 0!==i&&n(t)&&(e[t]=i);return{...e,...l}},o=e=>`'${e.replace(/'/g,"'\\''")}'`,u=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>s(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(s()).map(([e,t])=>`${e}=${o(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${o(u())} -l`},"defaultShell",0,u],597789)},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let a=r.default.join(i.default.homedir(),".purplemux","logs"),n=process.env.LOG_LEVEL||"info",l=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,i]=r.split("=").map(e=>e.trim());e&&i&&(t[e]=i)}return t})(process.env.LOG_LEVELS),s=["trace","debug","info","warn","error","fatal"],o=globalThis;if(!o.__ptRootLogger){let e=[n,...Object.values(l)].reduce((e,t)=>s.indexOf(t)<s.indexOf(e)?t:e,"fatal");o.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(a,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=o.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=l[e]??n,t}])},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},666126,e=>{"use strict";e.i(478319);var t=e.i(220951);(0,e.i(25146).createLogger)("sync");let r=globalThis;r.__ptSyncClients||(r.__ptSyncClients=new Set);let i=r.__ptSyncClients;e.s(["broadcastSync",0,e=>{let r=JSON.stringify(e);for(let e of i)e.readyState===t.WebSocket.OPEN&&e.bufferedAmount<1048576&&e.send(r)}])},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"),l=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 o=(()=>{if(l.__ptCliToken)return l.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return l.__ptCliToken=e,e;let a=(0,t.randomBytes)(32).toString("hex");l.__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===o.length&&(0,t.timingSafeEqual)(Buffer.from(s),Buffer.from(o))}])},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 l=r.default.join(i.default.homedir(),".purplemux"),s=r.default.join(l,"config.json"),o=globalThis;o.__ptConfigLock||(o.__ptConfigLock=Promise.resolve());let u=async e=>{let t,r=new Promise(e=>{t=e}),i=o.__ptConfigLock;o.__ptConfigLock=r,await i;try{return await e()}finally{t()}},d=()=>({updatedAt:new Date().toISOString()}),c=async()=>{try{let e=await t.default.readFile(s,"utf-8");return JSON.parse(e)}catch{return null}},p=async e=>{let{updatedAt:r,...i}=e,a=JSON.stringify(i);if(o.__ptConfigContentCache===a)return;e.updatedAt=new Date().toISOString();let l=s+".tmp";try{await t.default.writeFile(l,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(l,s)}catch(e){throw await t.default.unlink(l).catch(()=>{}),e}o.__ptConfigContentCache=a,(0,n.broadcastSync)({type:"config"})},f="scrypt:",h=e=>"string"==typeof e&&e.startsWith(f),g=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`${f}${t.toString("hex")}:${r.toString("hex")}`},m=async(e,t)=>{if(!h(t))return!1;let[,r,i]=t.split(":"),n=Buffer.from(r,"hex"),l=Buffer.from(i,"hex"),s=await new Promise((t,r)=>{a.default.scrypt(e,n,l.length,(e,i)=>{e?r(e):t(i)})});return a.default.timingSafeEqual(s,l)},y=async()=>await c()??d(),S=async e=>u(async()=>{let t=await c()??d();Object.assign(t,e),await p(t)}),x=async()=>{let e=await c();return!h(e?.authPassword)},v=async()=>{let e=await c();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>a.default.randomBytes(32).toString("hex"),"getConfig",0,y,"getDangerouslySkipPermissions",0,v,"hashPassword",0,g,"needsSetup",0,x,"updateConfig",0,S,"verifyPassword",0,m])},284345,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),n=e.i(713915),l=e.i(845994),s=e.i(772601),o=e.i(871911);let u=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!await (0,l.needsSetup)()&&!((0,o.verifyCliToken)(e)||await (0,s.verifyRequestSession)(e.headers.cookie)))return t.status(401).json({error:"Unauthorized"});let r=await (0,n.getCachedPreflightStatus)();return t.status(200).json(r)};e.s(["default",0,u],16083);var d=e.i(16083),c=e.i(7031),p=e.i(181927),f=e.i(846432);let h=(0,a.hoist)(d,"default"),g=(0,a.hoist)(d,"config"),m=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/auth/preflight",pathname:"/api/auth/preflight",bundlePath:"",filename:""},userland:d,distDir:".next",relativeProjectDir:""});async function y(e,r,i){i.requestMeta&&(0,f.setRequestMeta)(e,i.requestMeta),m.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/auth/preflight";a=a.replace(/\/index$/,"")||"/";let n=await m.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:l,params:s,prerenderManifest:o,routerServerContext:u}=n;try{let t,i=e.method||"GET",n=(0,c.getTracer)(),d=n.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),h=m.instrumentationOnRequestError.bind(m),g=async d=>m.render(e,r,{query:{...l,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:m.isDev,page:"/api/auth/preflight",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 l=e.get("next.route");if(l){let e=`${i} ${l}`;d.setAttributes({"next.route":l,"http.route":l,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",l),t.updateName(e))}else d.updateName(`${i} ${a}`)});f&&d?await g(d):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:c.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},g),void 0,!f))}catch(e){if(m.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,g,"default",0,h,"handler",0,y],284345)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0i-jyh3._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i: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 i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429),i=e.i(871911);let n=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},s=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},o=async(e,t,r,a)=>{if(e.method!==r){t.setHeader("Allow",r),t.status(405).json({error:"Method not allowed"});return}if(!(0,i.verifyCliToken)(e))return void t.status(403).json({error:"Forbidden"});let s=e.query.tabId,o="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!o)return void t.status(400).json({error:"workspaceId is required"});let l=await n(o,s);if(!l)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==l.tab.panelType)return void t.status(400).json({error:"Tab is not a web-browser panel"});let u=globalThis.__ptBrowserBridge??null;u?await a({tabId:s,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,n,"resolveFirstPaneId",0,s,"withBrowserTab",0,o],200523)},500208,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),o=e.i(825265);let l=async(e,t)=>{if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});if("GET"===e.method){let e=await (0,s.findTab)(a,r);return e?t.status(200).json({tabId:e.tab.id,workspaceId:e.workspaceId,paneId:e.paneId,name:e.tab.name,sessionName:e.tab.sessionName,panelType:e.tab.panelType}):t.status(404).json({error:"Tab not found"})}if("DELETE"===e.method){let e=await (0,s.findTab)(a,r);if(!e)return t.status(404).json({error:"Tab not found"});let i=await (0,o.removeTabFromPane)(a,e.paneId,r);return t.status(200).json({ok:i})}return t.setHeader("Allow","GET, DELETE"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,l],83594);var u=e.i(83594),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),b=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/index",pathname:"/api/cli/tabs/[tabId]",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function w(e,r,a){a.requestMeta&&(0,f.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/index";i=i.replace(/\/index$/,"")||"/";let n=await b.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:l,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),f=n.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),v=b.instrumentationOnRequestError.bind(b),w=async d=>b.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:b.isDev,page:"/api/cli/tabs/[tabId]/index",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(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 s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});c&&f?await w(f):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},w),void 0,!c))}catch(e){if(b.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,c,"handler",0,w],500208)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0i1m1v9._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let a=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),n=["LC_"],i=e=>a.has(e)||n.some(t=>e.startsWith(t)),s={TERM:"xterm-256color",COLORTERM:"truecolor"},l=()=>{let e={};for(let[t,a]of Object.entries(r))void 0!==a&&i(t)&&(e[t]=a);return{...e,...s}},o=e=>`'${e.replace(/'/g,"'\\''")}'`,u=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>l(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(l()).map(([e,t])=>`${e}=${o(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${o(u())} -l`},"defaultShell",0,u],597789)},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),a=e.i(446786);let n=r.default.join(a.default.homedir(),".purplemux","logs"),i=process.env.LOG_LEVEL||"info",s=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,a]=r.split("=").map(e=>e.trim());e&&a&&(t[e]=a)}return t})(process.env.LOG_LEVELS),l=["trace","debug","info","warn","error","fatal"],o=globalThis;if(!o.__ptRootLogger){let e=[i,...Object.values(s)].reduce((e,t)=>l.indexOf(t)<l.indexOf(e)?t:e,"fatal");o.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(n,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=o.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=s[e]??i,t}])},44014,e=>{"use strict";let t,r;var a=e.i(666680);e.s(["nanoid",0,function(e=21){var n;n=e|=0,!t||t.length<n?(t=Buffer.allocUnsafe(128*n),a.webcrypto.getRandomValues(t),r=0):r+n>t.length&&(a.webcrypto.getRandomValues(t),r=0),r+=n;let i="";for(let a=r-e;a<r;a++)i+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&t[a]];return i}],44014)},459015,544538,e=>{"use strict";var t=e.i(233405),r=e.i(924868),a=e.i(224361),n=e.i(814747),i=e.i(44014),s=e.i(965898),l=e.i(597789),o=e.i(25146);process.platform;let u="linux"===process.platform;e.s(["isLinux",0,u],544538);let c=(0,o.createLogger)("terminal"),p=(0,a.promisify)(t.execFile),d="purple",m=n.default.join(process.env.__PMUX_APP_DIR_UNPACKED||process.env.__PMUX_APP_DIR||process.cwd(),"src","config","tmux.conf"),f=async()=>{try{let{stdout:e}=await p("tmux",["-L",d,"ls","-F","#{session_name}"],{timeout:5e3});return e.trim().split("\n").map(e=>e.trim()).filter(e=>e.startsWith("pt-"))}catch{return[]}},y=async(e,t,r,a)=>{let n=(0,l.buildShellLaunchCommand)();await p("tmux",["-u","-L",d,"-f",m,"new-session","-d","-s",e,"-x",String(t),"-y",String(r),n],{timeout:5e3,cwd:a||s.PRISTINE_ENV.HOME||"/"}),await E(),c.debug(`tmux session created: ${e} (cols: ${t}, rows: ${r})`)},h=e=>new Promise(t=>setTimeout(t,e)),w=async e=>{if(!await g(e))return;c.debug(`killSession start: ${e}`);let t=await v(e);if(t)try{c.debug(`SIGTERM → process group ${t}: ${e}`),process.kill(-t,"SIGTERM")}catch{}try{await p("tmux",["-L",d,"kill-session","-t",e],{timeout:5e3})}catch{}for(let t=0;t<5;t++){if(!await g(e))return void c.debug(`killSession done (SIGTERM): ${e}`);await h(200)}if(c.warn(`session survived SIGTERM, escalating to SIGKILL: ${e}`),t)try{c.debug(`SIGKILL → process group ${t}: ${e}`),process.kill(-t,"SIGKILL")}catch{}try{await p("tmux",["-L",d,"kill-session","-t",e],{timeout:5e3})}catch{}for(let t=0;t<3;t++){if(!await g(e))return void c.debug(`killSession done (SIGKILL): ${e}`);await h(200)}c.warn(`tmux session still alive after kill: ${e}`)},g=async e=>{try{return await p("tmux",["-L",d,"has-session","-t",e],{timeout:5e3}),!0}catch{return!1}},S=async()=>{},x=async()=>{await S();let e=await f();e.length>0&&e.forEach(e=>{c.debug(`existing tmux session found: ${e}`)})},_=async e=>{if(u)try{return await r.default.readlink(`/proc/${e}/cwd`)}catch{return null}try{let{stdout:t}=await p("lsof",["-a","-p",String(e),"-d","cwd","-Fn"],{timeout:5e3}),r=t.split("\n").find(e=>e.startsWith("n/"));return r?r.slice(1):null}catch{return null}},L=async e=>{let t=await v(e);if(t){let e=await _(t);if(e)return e}try{let{stdout:t}=await p("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_current_path}"],{timeout:5e3});return t.trim()||null}catch{return null}},v=async e=>{try{let{stdout:t}=await p("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_pid}"],{timeout:5e3}),r=parseInt(t.trim(),10);return Number.isNaN(r)?null:r}catch{return null}},E=async()=>{try{await p("tmux",["-L",d,"source-file",m],{timeout:5e3})}catch{}},P=async e=>{try{let{stdout:t}=await p("tmux",["-L",d,"list-panes","-t",e,"-F","#{pane_current_command}"],{timeout:5e3});return t.trim()||null}catch{return null}},b=async()=>{try{let{stdout:e}=await p("tmux",["-L",d,"list-panes","-a","-F","#{session_name} #{pane_current_command} #{pane_current_path} #{pane_pid} #{window_activity}"],{timeout:5e3}),t=new Map;for(let r of e.trim().split("\n")){if(!r)continue;let[e,a,n,i,s]=r.split(" ");if(e&&a){let r=parseInt(i,10),l=parseInt(s,10);t.set(e,{command:a,path:n||"",pid:Number.isNaN(r)?0:r,windowActivity:Number.isNaN(l)?0:l})}}return t}catch{return new Map}},I=new Set(["bash","zsh","fish","sh","dash"]),N=async e=>{let t=await P(e);return t?{isSafe:I.has(t),processName:t}:{isSafe:!1,processName:"unknown"}},R=async e=>{try{let{stdout:t}=await p("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_title}"],{timeout:5e3});return t.trim()||null}catch{return null}},$=async e=>{await p("tmux",["-L",d,"copy-mode","-q","-t",e],{timeout:5e3}).catch(()=>{})},T=async(e,t)=>{await $(e),await p("tmux",["-L",d,"send-keys","-t",e,t,"Enter"],{timeout:5e3})},M=async(e,t)=>{await $(e),await p("tmux",["-L",d,"send-keys","-t",e,t],{timeout:5e3})},A=async(e,t)=>{await $(e),await p("tmux",["-L",d,"send-keys","-t",e,"-l",`\x1b[200~${t}\x1b[201~`],{timeout:5e3}),await p("tmux",["-L",d,"send-keys","-t",e,"Enter"],{timeout:5e3}),await new Promise(e=>setTimeout(e,600)),await p("tmux",["-L",d,"send-keys","-t",e,"Enter"],{timeout:5e3})},q=async e=>{try{let{stdout:t}=await p("tmux",["-L",d,"display-message","-p","-t",e,"#{pane_current_path} #{pane_current_command} #{pane_pid} #{pane_width} #{pane_height} #{session_created}"],{timeout:5e3}),[r,a,n,i,s,l]=t.trim().split(" ");return{cwd:r||null,command:a||null,pid:n&&parseInt(n,10)||null,width:i&&parseInt(i,10)||null,height:s&&parseInt(s,10)||null,sessionCreated:l&&parseInt(l,10)||null}}catch{return{cwd:null,command:null,pid:null,width:null,height:null,sessionCreated:null}}},C=new Set(["node","python","python3","ruby","perl","deno","bun"]),k=async()=>{try{await p("tmux",["-L",d,"kill-server"],{timeout:5e3}),c.debug("tmux server killed")}catch{}},j=async e=>{try{let{stdout:t}=await p("tmux",["-L",d,"capture-pane","-p","-t",e],{timeout:5e3});return t}catch{return null}},O=async(e,t)=>{try{let{stdout:r}=await p("tmux",["-L",d,"capture-pane","-p","-S",`-${t}`,"-t",e],{timeout:5e3});return r}catch{return null}},D=async e=>{if(u){let t=[];return await Promise.all(e.map(async e=>{try{for(let a of(await r.default.readFile(`/proc/${e}/task/${e}/children`,"utf-8")).trim().split(/\s+/)){let e=parseInt(a,10);Number.isNaN(e)||t.push(e)}}catch{}})),t}try{let{stdout:t}=await p("pgrep",["-P",e.join(",")],{timeout:5e3});return t.trim().split("\n").map(e=>parseInt(e,10)).filter(e=>!Number.isNaN(e))}catch{return[]}},H=async e=>{let t=[],r=[e];for(;r.length>0;){let e=await D(r);if(0===e.length)break;t.push(...e),r=e}return t},U=async e=>{try{let t=new Set(e),{stdout:r}=await p("ss",["-tlnp"],{timeout:5e3}),a=new Set;for(let e of r.split("\n")){let r=e.match(/pid=(\d+)/g);if(!r||!r.some(e=>t.has(parseInt(e.replace("pid=",""),10))))continue;let n=e.match(/:(\d+)\s/);n&&a.add(parseInt(n[1],10))}return[...a].sort((e,t)=>e-t)}catch{return[]}},G=async e=>{let t=await H(e);if(0===t.length)return[];if(u)return U(t);try{let{stdout:e}=await p("lsof",["-a","-p",t.join(","),"-i","-sTCP:LISTEN","-P","-Fn"],{timeout:5e3}),r=new Set;for(let t of e.split("\n"))if(t.startsWith("n")){let e=t.match(/:(\d+)$/);e&&r.add(parseInt(e[1],10))}return[...r].sort((e,t)=>e-t)}catch{return[]}},F=async e=>{let t=await v(e);if(!t)return null;try{let{stdout:e}=await p("pgrep",["-n","-P",String(t)],{timeout:5e3}),r=e.trim();if(!r)return null;let{stdout:a}=await p("ps",["-o","args=","-p",r],{timeout:5e3}),i=a.trim();if(!i)return null;let s=i.split(/\s+/);if(0===s.length)return i;if(s[0]=n.default.basename(s[0]),C.has(s[0])&&s.length>1){let e=n.default.basename(s[1]).replace(/\.(c|m)?js$/,"");s.splice(0,2,e)}return s.join(" ")}catch{return null}};e.s(["SAFE_SHELLS",0,I,"applyConfig",0,E,"capturePaneContent",0,j,"capturePaneContentWithHistory",0,O,"checkTerminalProcess",0,N,"createSession",0,y,"defaultSessionName",0,()=>`pt-${(0,i.nanoid)(6)}-${(0,i.nanoid)(6)}-${(0,i.nanoid)(6)}`,"exitCopyMode",0,$,"getAllPanesInfo",0,b,"getLastCommand",0,F,"getListeningPorts",0,G,"getPaneCurrentCommand",0,P,"getPaneDetailInfo",0,q,"getPaneTitle",0,R,"getSessionCwd",0,L,"getSessionPanePid",0,v,"hasSession",0,g,"killServer",0,k,"killSession",0,w,"listSessions",0,f,"scanSessions",0,x,"sendBracketedPaste",0,A,"sendKeys",0,T,"sendRawKeys",0,M,"workspaceSessionName",0,(e,t,r)=>`pt-${e}-${t}-${r}`],459015)},285788,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),n=e.i(262950),i=e.i(233405),s=e.i(224361),l=e.i(924868),o=e.i(814747),u=e.i(459015),c=e.i(25146);let p=(0,s.promisify)(i.execFile),d=(0,c.createLogger)("file-content"),m="WORKTREE",f=/^[A-Za-z0-9][A-Za-z0-9_\-/.^~]{0,200}$/,y={content:"",truncated:!1,binary:!1},h=e=>{if(!e||Array.isArray(e)||"/dev/null"===e||e.includes("\0")||e.startsWith("/"))return null;let t=0;for(let r of e.split("/"))if(""!==r&&"."!==r)if(".."===r){if((t-=1)<0)return null}else t+=1;return e},w=(e,t)=>{let r=Array.isArray(e)?e[0]:e;return r?r===m?m:f.test(r)?r:null:t},g=e=>e.length>1e6?{content:"",truncated:!0,binary:!1}:e.includes(0)?{content:"",truncated:!1,binary:!0}:{content:e.toString("utf8"),truncated:!1,binary:!1},S=async(e,t,r)=>{try{let{stdout:a}=await p("git",["-C",e,"show",`${t}:${r}`],{timeout:1e4,maxBuffer:1001024,encoding:"buffer"});return g(a)}catch{return y}},x=async(e,t)=>{try{let r=(0,o.resolve)(e,t);if(r!==e&&!r.startsWith(e+o.sep))return y;let a=await (0,l.readFile)(r);return g(a)}catch{return y}},_=(e,t,r)=>r?t===m?x(e,r):S(e,t,r):Promise.resolve(y),L=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});let r="string"==typeof e.query.session?e.query.session:void 0;if(!r)return t.status(400).json({error:"session parameter required"});let a=h(e.query.oldPath),n=h(e.query.newPath),i=w(e.query.oldRef,"HEAD"),s=w(e.query.newRef,m);if(!i||!s)return t.status(400).json({error:"Invalid ref"});if(!a&&!n)return t.status(400).json({error:"oldPath or newPath required"});if(!await (0,u.hasSession)(r))return t.status(404).json({error:"Session not found"});let l=await (0,u.getSessionCwd)(r);if(!l)return t.status(500).json({error:"Failed to get CWD"});try{let[e,r]=await Promise.all([_(l,i,a),_(l,s,n)]),o=e.truncated||r.truncated,u=e.binary||r.binary;return t.status(200).json({oldContent:o||u?"":e.content,newContent:o||u?"":r.content,truncated:o,binary:u})}catch(e){return d.error(`file-content failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"Failed to get file content"})}};e.s(["default",0,L],447353);var v=e.i(447353),E=e.i(7031),P=e.i(181927),b=e.i(846432);let I=(0,n.hoist)(v,"default"),N=(0,n.hoist)(v,"config"),R=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/layout/file-content",pathname:"/api/layout/file-content",bundlePath:"",filename:""},userland:v,distDir:".next",relativeProjectDir:""});async function $(e,r,a){a.requestMeta&&(0,b.setRequestMeta)(e,a.requestMeta),R.isDev&&(0,b.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/layout/file-content";n=n.replace(/\/index$/,"")||"/";let i=await R.prepare(e,r,{srcPage:n});if(!i){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:l,prerenderManifest:o,routerServerContext:u}=i;try{let t,a=e.method||"GET",i=(0,E.getTracer)(),c=i.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),d=R.instrumentationOnRequestError.bind(R),m=async c=>R.render(e,r,{query:{...s,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:R.isDev,page:"/api/layout/file-content",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>d(e,...t)}).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.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 s=e.get("next.route");if(s){let e=`${a} ${s}`;c.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),c.updateName(e),t&&t!==c&&(t.setAttribute("http.route",s),t.updateName(e))}else c.updateName(`${a} ${n}`)});p&&c?await m(c):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(P.BaseServerSpan.handleRequest,{spanName:`${a} ${n}`,kind:E.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},m),void 0,!p))}catch(e){if(R.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,N,"default",0,I,"handler",0,$],285788)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0ihlt6s._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let s=a.default.join(i.default.homedir(),".purplemux","cli-token"),n=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(n.__ptCliToken)return n.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(s,"utf-8").trim()||null}catch{return null}})();if(e)return n.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");n.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(s),{recursive:!0}),r.default.writeFileSync(s,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429),i=e.i(871911);let s=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let s=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(s.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},o=async(e,t,r,a)=>{if(e.method!==r){t.setHeader("Allow",r),t.status(405).json({error:"Method not allowed"});return}if(!(0,i.verifyCliToken)(e))return void t.status(403).json({error:"Forbidden"});let n=e.query.tabId,o="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!o)return void t.status(400).json({error:"workspaceId is required"});let l=await s(o,n);if(!l)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==l.tab.panelType)return void t.status(400).json({error:"Tab is not a web-browser panel"});let u=globalThis.__ptBrowserBridge??null;u?await a({tabId:n,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,s,"resolveFirstPaneId",0,n,"withBrowserTab",0,o],200523)},802873,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(871911),n=e.i(200523),o=e.i(459015);let l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});if(!(0,s.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let{content:i}=e.body;if(!i)return t.status(400).json({error:"content is required"});let l=await (0,n.findTab)(a,r);return l?await (0,o.hasSession)(l.tab.sessionName)?(await (0,o.sendBracketedPaste)(l.tab.sessionName,i),t.status(200).json({status:"sent"})):t.status(409).json({error:"Tab session is not running"}):t.status(404).json({error:"Tab not found"})};e.s(["default",0,l],197672);var u=e.i(197672),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),b=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/send",pathname:"/api/cli/tabs/[tabId]/send",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function h(e,r,a){a.requestMeta&&(0,f.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/send";i=i.replace(/\/index$/,"")||"/";let s=await b.prepare(e,r,{srcPage:i});if(!s){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:n,params:o,prerenderManifest:l,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,d.getTracer)(),f=s.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),v=b.instrumentationOnRequestError.bind(b),h=async d=>b.render(e,r,{query:{...n,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:b.isDev,page:"/api/cli/tabs/[tabId]/send",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.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 n=e.get("next.route");if(n){let e=`${a} ${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(`${a} ${i}`)});c&&f?await h(f):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},h),void 0,!c))}catch(e){if(b.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,c,"handler",0,h],802873)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0kd7wei._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),s=e.i(446786);let o=r.default.join(s.default.homedir(),".purplemux","logs"),i=process.env.LOG_LEVEL||"info",a=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,s]=r.split("=").map(e=>e.trim());e&&s&&(t[e]=s)}return t})(process.env.LOG_LEVELS),n=["trace","debug","info","warn","error","fatal"],l=globalThis;if(!l.__ptRootLogger){let e=[i,...Object.values(a)].reduce((e,t)=>n.indexOf(t)<n.indexOf(e)?t:e,"fatal");l.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(o,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=l.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=a[e]??i,t}])},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},666126,e=>{"use strict";e.i(478319);var t=e.i(220951);(0,e.i(25146).createLogger)("sync");let r=globalThis;r.__ptSyncClients||(r.__ptSyncClients=new Set);let s=r.__ptSyncClients;e.s(["broadcastSync",0,e=>{let r=JSON.stringify(e);for(let e of s)e.readyState===t.WebSocket.OPEN&&e.bufferedAmount<1048576&&e.send(r)}])},845994,e=>{"use strict";var t=e.i(924868),r=e.i(814747),s=e.i(446786),o=e.i(254799),i=e.i(666126);(0,e.i(25146).createLogger)("config");let a=r.default.join(s.default.homedir(),".purplemux"),n=r.default.join(a,"config.json"),l=globalThis;l.__ptConfigLock||(l.__ptConfigLock=Promise.resolve());let u=async e=>{let t,r=new Promise(e=>{t=e}),s=l.__ptConfigLock;l.__ptConfigLock=r,await s;try{return await e()}finally{t()}},d=()=>({updatedAt:new Date().toISOString()}),p=async()=>{try{let e=await t.default.readFile(n,"utf-8");return JSON.parse(e)}catch{return null}},c=async e=>{let{updatedAt:r,...s}=e,o=JSON.stringify(s);if(l.__ptConfigContentCache===o)return;e.updatedAt=new Date().toISOString();let a=n+".tmp";try{await t.default.writeFile(a,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(a,n)}catch(e){throw await t.default.unlink(a).catch(()=>{}),e}l.__ptConfigContentCache=o,(0,i.broadcastSync)({type:"config"})},f="scrypt:",g=e=>"string"==typeof e&&e.startsWith(f),m=async e=>{let t=o.default.randomBytes(16),r=await new Promise((r,s)=>{o.default.scrypt(e,t,64,(e,t)=>{e?s(e):r(t)})});return`${f}${t.toString("hex")}:${r.toString("hex")}`},h=async(e,t)=>{if(!g(t))return!1;let[,r,s]=t.split(":"),i=Buffer.from(r,"hex"),a=Buffer.from(s,"hex"),n=await new Promise((t,r)=>{o.default.scrypt(e,i,a.length,(e,s)=>{e?r(e):t(s)})});return o.default.timingSafeEqual(n,a)},y=async()=>await p()??d(),w=async e=>u(async()=>{let t=await p()??d();Object.assign(t,e),await c(t)}),x=async()=>{let e=await p();return!g(e?.authPassword)},S=async()=>{let e=await p();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>o.default.randomBytes(32).toString("hex"),"getConfig",0,y,"getDangerouslySkipPermissions",0,S,"hashPassword",0,m,"needsSetup",0,x,"updateConfig",0,w,"verifyPassword",0,h])},716018,e=>{"use strict";e.i(446786);e.s(["isBoundToLocalhostOnly",0,()=>"127.0.0.1"===(process.env.__PMUX_BOUND_HOST??"0.0.0.0"),"updateAccessFromConfig",0,e=>{process.env.HOST?.trim()||(process.env.__PMUX_NETWORK_ACCESS=e)}],716018)},671207,e=>{"use strict";var t=e.i(926747),r=e.i(190406),s=e.i(244898),o=e.i(262950),i=e.i(845994),a=e.i(716018);let n=["code-server","vscode","vscode-insiders","cursor","windsurf","zed","custom","off"],l=["top-left","top-center","top-right","bottom-left","bottom-center","bottom-right"],u=e=>"string"==typeof e&&l.includes(e),d=["appTheme","terminalTheme","customCSS","dangerouslySkipPermissions","editorUrl","editorPreset","authPassword","notificationsEnabled","toastOnCompleteEnabled","toastDuration","toastPositionDesktop","toastPositionMobile","locale","fontSize","systemResourcesEnabled","networkAccess"],p=["localhost","tailscale","all"],c=async(e,t)=>{if("GET"===e.method){let{authPassword:e,authSecret:r,...s}=await (0,i.getConfig)(),o="string"==typeof process.env.HOST&&process.env.HOST.trim().length>0;return t.status(200).json({...s,hasAuthPassword:!!e,hostEnvLocked:o,bindHostIsLocal:(0,a.isBoundToLocalhostOnly)()})}if("PATCH"===e.method){let r,s,o,l=e.body??{},c={};for(let e of d)e in l&&(c[e]=l[e]);if("editorUrl"in c&&"string"!=typeof c.editorUrl)return t.status(400).json({error:"editorUrl must be a string."});if("editorPreset"in c&&!("string"==typeof(r=c.editorPreset)&&n.includes(r)))return t.status(400).json({error:"editorPreset is invalid."});if("networkAccess"in c&&!("string"==typeof(s=c.networkAccess)&&p.includes(s)))return t.status(400).json({error:"networkAccess must be one of: localhost, tailscale, all."});if("toastPositionDesktop"in c&&!u(c.toastPositionDesktop))return t.status(400).json({error:"toastPositionDesktop is invalid."});if("toastPositionMobile"in c&&!u(c.toastPositionMobile))return t.status(400).json({error:"toastPositionMobile is invalid."});if("toastDuration"in c&&!("number"==typeof(o=c.toastDuration)&&Number.isFinite(o)&&o>=1e3&&o<=6e4))return t.status(400).json({error:"toastDuration must be a number between 1000 and 60000."});if("string"==typeof c.authPassword&&c.authPassword){let e=await (0,i.hashPassword)(c.authPassword),t=(0,i.generateSecret)();c.authPassword=e,c.authSecret=t,await (0,i.updateConfig)(c),process.env.AUTH_PASSWORD=e,process.env.NEXTAUTH_SECRET=t}else delete c.authPassword,await (0,i.updateConfig)(c);return"networkAccess"in c&&(0,a.updateAccessFromConfig)(c.networkAccess),t.status(200).json({ok:!0})}return t.setHeader("Allow","GET, PATCH"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,c],183329);var f=e.i(183329),g=e.i(7031),m=e.i(181927),h=e.i(846432);let y=(0,o.hoist)(f,"default"),w=(0,o.hoist)(f,"config"),x=new s.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/config",pathname:"/api/config",bundlePath:"",filename:""},userland:f,distDir:".next",relativeProjectDir:""});async function S(e,r,s){s.requestMeta&&(0,h.setRequestMeta)(e,s.requestMeta),x.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let o="/api/config";o=o.replace(/\/index$/,"")||"/";let i=await x.prepare(e,r,{srcPage:o});if(!i){r.statusCode=400,r.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve());return}let{query:a,params:n,prerenderManifest:l,routerServerContext:u}=i;try{let t,s=e.method||"GET",i=(0,g.getTracer)(),d=i.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=x.instrumentationOnRequestError.bind(x),f=async d=>x.render(e,r,{query:{...a,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:x.isDev,page:"/api/config",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=e.get("next.route");if(a){let e=`${s} ${a}`;d.setAttributes({"next.route":a,"http.route":a,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",a),t.updateName(e))}else d.updateName(`${s} ${o}`)});p&&d?await f(d):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(m.BaseServerSpan.handleRequest,{spanName:`${s} ${o}`,kind:g.SpanKind.SERVER,attributes:{"http.method":s,"http.target":e.url}},f),void 0,!p))}catch(e){if(x.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==s.waitUntil||s.waitUntil.call(s,Promise.resolve())}}e.s(["config",0,w,"default",0,y,"handler",0,S],671207)}];
|
|
1
|
+
module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),s=e.i(446786);let o=r.default.join(s.default.homedir(),".purplemux","logs"),i=process.env.LOG_LEVEL||"info",a=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,s]=r.split("=").map(e=>e.trim());e&&s&&(t[e]=s)}return t})(process.env.LOG_LEVELS),n=["trace","debug","info","warn","error","fatal"],l=globalThis;if(!l.__ptRootLogger){let e=[i,...Object.values(a)].reduce((e,t)=>n.indexOf(t)<n.indexOf(e)?t:e,"fatal");l.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(o,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=l.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=a[e]??i,t}])},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},666126,e=>{"use strict";e.i(478319);var t=e.i(220951);(0,e.i(25146).createLogger)("sync");let r=globalThis;r.__ptSyncClients||(r.__ptSyncClients=new Set);let s=r.__ptSyncClients;e.s(["broadcastSync",0,e=>{let r=JSON.stringify(e);for(let e of s)e.readyState===t.WebSocket.OPEN&&e.bufferedAmount<1048576&&e.send(r)}])},845994,e=>{"use strict";var t=e.i(924868),r=e.i(814747),s=e.i(446786),o=e.i(254799),i=e.i(666126);(0,e.i(25146).createLogger)("config");let a=r.default.join(s.default.homedir(),".purplemux"),n=r.default.join(a,"config.json"),l=globalThis;l.__ptConfigLock||(l.__ptConfigLock=Promise.resolve());let u=async e=>{let t,r=new Promise(e=>{t=e}),s=l.__ptConfigLock;l.__ptConfigLock=r,await s;try{return await e()}finally{t()}},d=()=>({updatedAt:new Date().toISOString()}),p=async()=>{try{let e=await t.default.readFile(n,"utf-8");return JSON.parse(e)}catch{return null}},c=async e=>{let{updatedAt:r,...s}=e,o=JSON.stringify(s);if(l.__ptConfigContentCache===o)return;e.updatedAt=new Date().toISOString();let a=n+".tmp";try{await t.default.writeFile(a,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(a,n)}catch(e){throw await t.default.unlink(a).catch(()=>{}),e}l.__ptConfigContentCache=o,(0,i.broadcastSync)({type:"config"})},f="scrypt:",g=e=>"string"==typeof e&&e.startsWith(f),m=async e=>{let t=o.default.randomBytes(16),r=await new Promise((r,s)=>{o.default.scrypt(e,t,64,(e,t)=>{e?s(e):r(t)})});return`${f}${t.toString("hex")}:${r.toString("hex")}`},h=async(e,t)=>{if(!g(t))return!1;let[,r,s]=t.split(":"),i=Buffer.from(r,"hex"),a=Buffer.from(s,"hex"),n=await new Promise((t,r)=>{o.default.scrypt(e,i,a.length,(e,s)=>{e?r(e):t(s)})});return o.default.timingSafeEqual(n,a)},y=async()=>await p()??d(),w=async e=>u(async()=>{let t=await p()??d();Object.assign(t,e),await c(t)}),x=async()=>{let e=await p();return!g(e?.authPassword)},S=async()=>{let e=await p();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>o.default.randomBytes(32).toString("hex"),"getConfig",0,y,"getDangerouslySkipPermissions",0,S,"hashPassword",0,m,"needsSetup",0,x,"updateConfig",0,w,"verifyPassword",0,h])},716018,e=>{"use strict";e.i(446786);e.s(["isBoundToLocalhostOnly",0,()=>"127.0.0.1"===(process.env.__PMUX_BOUND_HOST??"0.0.0.0"),"updateAccessFromConfig",0,e=>{process.env.HOST?.trim()||(process.env.__PMUX_NETWORK_ACCESS=e)}],716018)},671207,e=>{"use strict";var t=e.i(926747),r=e.i(190406),s=e.i(244898),o=e.i(262950),i=e.i(845994),a=e.i(716018);let n=["code-server","vscode","vscode-insiders","cursor","windsurf","zed","custom","off"],l=["top-left","top-center","top-right","bottom-left","bottom-center","bottom-right"],u=e=>"string"==typeof e&&l.includes(e),d=["appTheme","terminalTheme","customCSS","dangerouslySkipPermissions","claudeShowTerminal","editorUrl","editorPreset","authPassword","notificationsEnabled","toastOnCompleteEnabled","toastDuration","toastPositionDesktop","toastPositionMobile","locale","fontSize","systemResourcesEnabled","networkAccess"],p=["localhost","tailscale","all"],c=async(e,t)=>{if("GET"===e.method){let{authPassword:e,authSecret:r,...s}=await (0,i.getConfig)(),o="string"==typeof process.env.HOST&&process.env.HOST.trim().length>0;return t.status(200).json({...s,hasAuthPassword:!!e,hostEnvLocked:o,bindHostIsLocal:(0,a.isBoundToLocalhostOnly)()})}if("PATCH"===e.method){let r,s,o,l=e.body??{},c={};for(let e of d)e in l&&(c[e]=l[e]);if("editorUrl"in c&&"string"!=typeof c.editorUrl)return t.status(400).json({error:"editorUrl must be a string."});if("editorPreset"in c&&!("string"==typeof(r=c.editorPreset)&&n.includes(r)))return t.status(400).json({error:"editorPreset is invalid."});if("networkAccess"in c&&!("string"==typeof(s=c.networkAccess)&&p.includes(s)))return t.status(400).json({error:"networkAccess must be one of: localhost, tailscale, all."});if("toastPositionDesktop"in c&&!u(c.toastPositionDesktop))return t.status(400).json({error:"toastPositionDesktop is invalid."});if("toastPositionMobile"in c&&!u(c.toastPositionMobile))return t.status(400).json({error:"toastPositionMobile is invalid."});if("toastDuration"in c&&!("number"==typeof(o=c.toastDuration)&&Number.isFinite(o)&&o>=1e3&&o<=6e4))return t.status(400).json({error:"toastDuration must be a number between 1000 and 60000."});if("string"==typeof c.authPassword&&c.authPassword){let e=await (0,i.hashPassword)(c.authPassword),t=(0,i.generateSecret)();c.authPassword=e,c.authSecret=t,await (0,i.updateConfig)(c),process.env.AUTH_PASSWORD=e,process.env.NEXTAUTH_SECRET=t}else delete c.authPassword,await (0,i.updateConfig)(c);return"networkAccess"in c&&(0,a.updateAccessFromConfig)(c.networkAccess),t.status(200).json({ok:!0})}return t.setHeader("Allow","GET, PATCH"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,c],183329);var f=e.i(183329),g=e.i(7031),m=e.i(181927),h=e.i(846432);let y=(0,o.hoist)(f,"default"),w=(0,o.hoist)(f,"config"),x=new s.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/config",pathname:"/api/config",bundlePath:"",filename:""},userland:f,distDir:".next",relativeProjectDir:""});async function S(e,r,s){s.requestMeta&&(0,h.setRequestMeta)(e,s.requestMeta),x.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let o="/api/config";o=o.replace(/\/index$/,"")||"/";let i=await x.prepare(e,r,{srcPage:o});if(!i){r.statusCode=400,r.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve());return}let{query:a,params:n,prerenderManifest:l,routerServerContext:u}=i;try{let t,s=e.method||"GET",i=(0,g.getTracer)(),d=i.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=x.instrumentationOnRequestError.bind(x),f=async d=>x.render(e,r,{query:{...a,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:x.isDev,page:"/api/config",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=e.get("next.route");if(a){let e=`${s} ${a}`;d.setAttributes({"next.route":a,"http.route":a,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",a),t.updateName(e))}else d.updateName(`${s} ${o}`)});p&&d?await f(d):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(m.BaseServerSpan.handleRequest,{spanName:`${s} ${o}`,kind:g.SpanKind.SERVER,attributes:{"http.method":s,"http.target":e.url}},f),void 0,!p))}catch(e){if(x.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==s.waitUntil||s.waitUntil.call(s,Promise.resolve())}}e.s(["config",0,w,"default",0,y,"handler",0,S],671207)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0l~_wd0._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[
|
|
1
|
+
module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let a=r.default.join(i.default.homedir(),".purplemux","logs"),s=process.env.LOG_LEVEL||"info",o=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,i]=r.split("=").map(e=>e.trim());e&&i&&(t[e]=i)}return t})(process.env.LOG_LEVELS),l=["trace","debug","info","warn","error","fatal"],n=globalThis;if(!n.__ptRootLogger){let e=[s,...Object.values(o)].reduce((e,t)=>l.indexOf(t)<l.indexOf(e)?t:e,"fatal");n.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(a,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let p=n.__ptRootLogger;e.s(["createLogger",0,e=>{let t=p.child({module:e});return t.level=o[e]??s,t}])},206892,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),s=e.i(228448);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});let r=await (0,s.getVAPIDKeys)();return t.status(200).json({publicKey:r.publicKey})};e.s(["default",0,o],24648);var l=e.i(24648),n=e.i(7031),p=e.i(181927),u=e.i(846432);let d=(0,a.hoist)(l,"default"),x=(0,a.hoist)(l,"config"),c=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/push/vapid-key",pathname:"/api/push/vapid-key",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function m(e,r,i){i.requestMeta&&(0,u.setRequestMeta)(e,i.requestMeta),c.isDev&&(0,u.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/push/vapid-key";a=a.replace(/\/index$/,"")||"/";let s=await c.prepare(e,r,{srcPage:a});if(!s){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:o,params:l,prerenderManifest:d,routerServerContext:x}=s;try{let t,i=e.method||"GET",s=(0,n.getTracer)(),u=s.getActiveScopeSpan(),m=!!(null==x?void 0:x.isWrappedByNextServer),f=c.instrumentationOnRequestError.bind(c),h=async n=>c.render(e,r,{query:{...o,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:d.preview,propagateError:!1,dev:c.isDev,page:"/api/push/vapid-key",internalRevalidate:null==x?void 0:x.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!n)return;n.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.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}`;n.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),n.updateName(e),t&&t!==n&&(t.setAttribute("http.route",o),t.updateName(e))}else n.updateName(`${i} ${a}`)});m&&u?await h(u):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:n.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},h),void 0,!m))}catch(e){if(c.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,x,"default",0,d,"handler",0,m],206892)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0m99ffd._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[446786,(e,t,
|
|
1
|
+
module.exports=[446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),s=e.i(446786);let i=a.default.join(s.default.homedir(),".purplemux","cli-token"),o=globalThis;e.s(["verifyCliToken",0,e=>{let s=e.headers["x-pmux-token"];var n="string"==typeof s?s:void 0;if(!n)return!1;let l=(()=>{if(o.__ptCliToken)return o.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(i,"utf-8").trim()||null}catch{return null}})();if(e)return o.__ptCliToken=e,e;let s=(0,t.randomBytes)(32).toString("hex");o.__ptCliToken=s;try{r.default.mkdirSync(a.default.dirname(i),{recursive:!0}),r.default.writeFileSync(i,s,{mode:384})}catch{}return s})();return n.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(n),Buffer.from(l))}])},494749,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),s=e.i(262950),i=e.i(871911);let o=`# purplemux CLI HTTP API
|
|
2
2
|
|
|
3
3
|
All endpoints require header \`x-pmux-token: <PMUX_TOKEN>\`.
|
|
4
4
|
|
|
@@ -35,6 +35,39 @@ GET /api/cli/tabs/<tabId>/status?workspaceId=WS
|
|
|
35
35
|
GET /api/cli/tabs/<tabId>/result?workspaceId=WS
|
|
36
36
|
Capture the current pane content.
|
|
37
37
|
Response: { "content": "..." }
|
|
38
|
-
|
|
38
|
+
|
|
39
|
+
## Web-browser tabs
|
|
40
|
+
|
|
41
|
+
These endpoints only work when the tab's panelType is "web-browser" and the webview
|
|
42
|
+
has attached (dom-ready has fired at least once). Electron runtime required;
|
|
43
|
+
503 is returned in headless/remote mode.
|
|
44
|
+
|
|
45
|
+
GET /api/cli/tabs/<tabId>/browser/url?workspaceId=WS
|
|
46
|
+
Current URL + title of the webview.
|
|
47
|
+
Response: { "tabId", "url", "title" }
|
|
48
|
+
|
|
49
|
+
GET /api/cli/tabs/<tabId>/browser/screenshot?workspaceId=WS[&full=1][&format=base64]
|
|
50
|
+
PNG screenshot. Default returns image/png; format=base64 returns { base64 } JSON.
|
|
51
|
+
full=1 captures beyond the viewport.
|
|
52
|
+
|
|
53
|
+
GET /api/cli/tabs/<tabId>/browser/console?workspaceId=WS[&since=MS][&level=LEVEL]
|
|
54
|
+
Ring buffer (last 500 entries) of console messages, Log entries, and exceptions.
|
|
55
|
+
Response: { "tabId", "entries": [{ "level", "text", "ts", "source"?, "url"?, "line"? }] }
|
|
56
|
+
|
|
57
|
+
GET /api/cli/tabs/<tabId>/browser/network?workspaceId=WS[&since=MS][&method=M][&url=SUBSTR][&status=CODE]
|
|
58
|
+
Ring buffer (last 500 requests).
|
|
59
|
+
Response: { "tabId", "entries": [{ "requestId", "method", "url", "status"?, "mimeType"?,
|
|
60
|
+
"resourceType"?, "error"?, "ts", "endedAt"? }] }
|
|
61
|
+
|
|
62
|
+
GET /api/cli/tabs/<tabId>/browser/network?workspaceId=WS&requestId=RID
|
|
63
|
+
Fetch response body for one request (cached after first call).
|
|
64
|
+
Response: { "tabId", "requestId", "body" }
|
|
65
|
+
|
|
66
|
+
POST /api/cli/tabs/<tabId>/browser/eval?workspaceId=WS
|
|
67
|
+
Body: { "expression": "..." }
|
|
68
|
+
Evaluates the expression in the webview via CDP Runtime.evaluate
|
|
69
|
+
(returnByValue, awaitPromise, 10s timeout).
|
|
70
|
+
Response: { "tabId", "value" }
|
|
71
|
+
`,n=async(e,t)=>"GET"!==e.method?(t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"})):(0,i.verifyCliToken)(e)?(t.setHeader("Content-Type","text/markdown; charset=utf-8"),t.status(200).send(o)):t.status(403).json({error:"Forbidden"});e.s(["default",0,n],571676);var l=e.i(571676),d=e.i(7031),p=e.i(181927),u=e.i(846432);let c=(0,s.hoist)(l,"default"),b=(0,s.hoist)(l,"config"),m=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/api-guide",pathname:"/api/cli/api-guide",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function w(e,r,a){a.requestMeta&&(0,u.setRequestMeta)(e,a.requestMeta),m.isDev&&(0,u.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/cli/api-guide";s=s.replace(/\/index$/,"")||"/";let i=await m.prepare(e,r,{srcPage:s});if(!i){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:o,params:n,prerenderManifest:l,routerServerContext:c}=i;try{let t,a=e.method||"GET",i=(0,d.getTracer)(),u=i.getActiveScopeSpan(),b=!!(null==c?void 0:c.isWrappedByNextServer),w=m.instrumentationOnRequestError.bind(m),f=async d=>m.render(e,r,{query:{...o,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:m.isDev,page:"/api/cli/api-guide",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>w(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.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=`${a} ${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(`${a} ${s}`)});b&&u?await f(u):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${s}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},f),void 0,!b))}catch(e){if(m.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,b,"default",0,c,"handler",0,w],494749)}];
|
|
39
72
|
|
|
40
73
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0mky_tj._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i: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 i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429),i=e.i(871911);let n=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},s=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},o=async(e,t,r,a)=>{if(e.method!==r){t.setHeader("Allow",r),t.status(405).json({error:"Method not allowed"});return}if(!(0,i.verifyCliToken)(e))return void t.status(403).json({error:"Forbidden"});let s=e.query.tabId,o="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!o)return void t.status(400).json({error:"workspaceId is required"});let l=await n(o,s);if(!l)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==l.tab.panelType)return void t.status(400).json({error:"Tab is not a web-browser panel"});let u=globalThis.__ptBrowserBridge??null;u?await a({tabId:s,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,n,"resolveFirstPaneId",0,s,"withBrowserTab",0,o],200523)},673759,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),o=e.i(459015);let l=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let i=await (0,s.findTab)(a,r);if(!i)return t.status(404).json({error:"Tab not found"});if(!await (0,o.hasSession)(i.tab.sessionName))return t.status(409).json({error:"Tab session is not running"});let l=await (0,o.capturePaneContent)(i.tab.sessionName);return t.status(200).json({content:l})};e.s(["default",0,l],16409);var u=e.i(16409),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),b=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/result",pathname:"/api/cli/tabs/[tabId]/result",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function h(e,r,a){a.requestMeta&&(0,f.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/result";i=i.replace(/\/index$/,"")||"/";let n=await b.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:l,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),f=n.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),v=b.instrumentationOnRequestError.bind(b),h=async d=>b.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:b.isDev,page:"/api/cli/tabs/[tabId]/result",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(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 s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});c&&f?await h(f):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},h),void 0,!c))}catch(e){if(b.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,c,"handler",0,h],673759)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0oiiu_o._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i: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 i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429),i=e.i(871911);let n=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},s=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},o=async(e,t,r,a)=>{if(e.method!==r){t.setHeader("Allow",r),t.status(405).json({error:"Method not allowed"});return}if(!(0,i.verifyCliToken)(e))return void t.status(403).json({error:"Forbidden"});let s=e.query.tabId,o="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!o)return void t.status(400).json({error:"workspaceId is required"});let l=await n(o,s);if(!l)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==l.tab.panelType)return void t.status(400).json({error:"Tab is not a web-browser panel"});let u=globalThis.__ptBrowserBridge??null;u?await a({tabId:s,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,n,"resolveFirstPaneId",0,s,"withBrowserTab",0,o],200523)},38271,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(200523);let s=async(e,t)=>{await (0,n.withBrowserTab)(e,t,"GET",({tabId:e,bridge:r})=>{let a=r.getUrl(e),i=r.getTitle(e);null===a?t.status(409).json({error:"Browser tab not attached yet"}):t.status(200).json({tabId:e,url:a,title:i})})};e.s(["default",0,s],293755);var o=e.i(293755),l=e.i(7031),u=e.i(181927),d=e.i(846432);let p=(0,i.hoist)(o,"default"),c=(0,i.hoist)(o,"config"),f=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/browser/url",pathname:"/api/cli/tabs/[tabId]/browser/url",bundlePath:"",filename:""},userland:o,distDir:".next",relativeProjectDir:""});async function v(e,r,a){a.requestMeta&&(0,d.setRequestMeta)(e,a.requestMeta),f.isDev&&(0,d.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/browser/url";i=i.replace(/\/index$/,"")||"/";let n=await f.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:p,routerServerContext:c}=n;try{let t,a=e.method||"GET",n=(0,l.getTracer)(),d=n.getActiveScopeSpan(),v=!!(null==c?void 0:c.isWrappedByNextServer),b=f.instrumentationOnRequestError.bind(f),w=async l=>f.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:p.preview,propagateError:!1,dev:f.isDev,page:"/api/cli/tabs/[tabId]/browser/url",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>b(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==u.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=`${a} ${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(`${a} ${i}`)});v&&d?await w(d):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(u.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:l.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},w),void 0,!v))}catch(e){if(f.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,c,"default",0,p,"handler",0,v],38271)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0oqgn2h._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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 l="string"==typeof a?a:void 0;if(!l)return!1;let o=(()=>{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 l.length===o.length&&(0,t.timingSafeEqual)(Buffer.from(l),Buffer.from(o))}])},58349,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),n=e.i(322429),s=e.i(871911);let l=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!(0,s.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let{workspaces:r}=await (0,n.getWorkspaces)(),i=r.map(e=>({id:e.id,name:e.name,directories:e.directories}));return t.status(200).json({workspaces:i})};e.s(["default",0,l],765063);var o=e.i(765063),u=e.i(7031),d=e.i(181927),p=e.i(846432);let c=(0,a.hoist)(o,"default"),f=(0,a.hoist)(o,"config"),v=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/workspaces",pathname:"/api/cli/workspaces",bundlePath:"",filename:""},userland:o,distDir:".next",relativeProjectDir:""});async function h(e,r,i){i.requestMeta&&(0,p.setRequestMeta)(e,i.requestMeta),v.isDev&&(0,p.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/cli/workspaces";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:s,params:l,prerenderManifest:o,routerServerContext:c}=n;try{let t,i=e.method||"GET",n=(0,u.getTracer)(),p=n.getActiveScopeSpan(),f=!!(null==c?void 0:c.isWrappedByNextServer),h=v.instrumentationOnRequestError.bind(v),m=async u=>v.render(e,r,{query:{...s,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:v.isDev,page:"/api/cli/workspaces",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>h(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.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=`${i} ${s}`;u.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",s),t.updateName(e))}else u.updateName(`${i} ${a}`)});f&&p?await m(p):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(d.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:u.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},m),void 0,!f))}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,f,"default",0,c,"handler",0,h],58349)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0q8lffz._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let s=a.default.join(i.default.homedir(),".purplemux","cli-token"),n=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(n.__ptCliToken)return n.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(s,"utf-8").trim()||null}catch{return null}})();if(e)return n.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");n.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(s),{recursive:!0}),r.default.writeFileSync(s,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429),i=e.i(871911);let s=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let s=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(s.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},o=async(e,t,r,a)=>{if(e.method!==r){t.setHeader("Allow",r),t.status(405).json({error:"Method not allowed"});return}if(!(0,i.verifyCliToken)(e))return void t.status(403).json({error:"Forbidden"});let n=e.query.tabId,o="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!o)return void t.status(400).json({error:"workspaceId is required"});let l=await s(o,n);if(!l)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==l.tab.panelType)return void t.status(400).json({error:"Tab is not a web-browser panel"});let u=globalThis.__ptBrowserBridge??null;u?await a({tabId:n,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,s,"resolveFirstPaneId",0,n,"withBrowserTab",0,o],200523)},928818,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(871911),n=e.i(200523),o=e.i(459015);let l=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!(0,s.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let i=await (0,n.findTab)(a,r);if(!i)return t.status(404).json({error:"Tab not found"});if(!await (0,o.hasSession)(i.tab.sessionName))return t.status(200).json({tabId:r,workspaceId:a,alive:!1});let l=await (0,o.getPaneCurrentCommand)(i.tab.sessionName);return t.status(200).json({tabId:r,workspaceId:a,alive:!0,command:l,cliState:i.tab.cliState??null,claudeSessionId:i.tab.claudeSessionId??null})};e.s(["default",0,l],968326);var u=e.i(968326),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),b=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/status",pathname:"/api/cli/tabs/[tabId]/status",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function h(e,r,a){a.requestMeta&&(0,f.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/status";i=i.replace(/\/index$/,"")||"/";let s=await b.prepare(e,r,{srcPage:i});if(!s){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:n,params:o,prerenderManifest:l,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,d.getTracer)(),f=s.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),v=b.instrumentationOnRequestError.bind(b),h=async d=>b.render(e,r,{query:{...n,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:b.isDev,page:"/api/cli/tabs/[tabId]/status",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.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 n=e.get("next.route");if(n){let e=`${a} ${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(`${a} ${i}`)});c&&f?await h(f):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},h),void 0,!c))}catch(e){if(b.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,c,"handler",0,h],928818)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0rhb4gk._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let a=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),n=["LC_"],i=e=>a.has(e)||n.some(t=>e.startsWith(t)),s={TERM:"xterm-256color",COLORTERM:"truecolor"},o=()=>{let e={};for(let[t,a]of Object.entries(r))void 0!==a&&i(t)&&(e[t]=a);return{...e,...s}},u=e=>`'${e.replace(/'/g,"'\\''")}'`,c=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>o(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(o()).map(([e,t])=>`${e}=${u(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${u(c())} -l`},"defaultShell",0,c],597789)},990294,(e,t,r)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",r="minute",a="hour",n="week",i="month",s="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,r){var a=String(e);return!a||a.length>=t?e:""+Array(t+1-a.length).join(r)+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"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}};var m="$isDayjsObject",y=function(e){return e instanceof $||!(!e||!e[m])},S=function e(t,r,a){var n;if(!t)return p;if("string"==typeof t){var i=t.toLowerCase();f[i]&&(n=i),r&&(f[i]=r,n=i);var s=t.split("-");if(!n&&s.length>1)return e(s[0])}else{var o=t.name;f[o]=t,n=o}return!a&&n&&(p=n),n||!a&&p},C=function(e,t){if(y(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new $(r)},v={s:h,z:function(e){var t=-e.utcOffset(),r=Math.abs(t);return(t<=0?"+":"-")+h(Math.floor(r/60),2,"0")+":"+h(r%60,2,"0")},m:function e(t,r){if(t.date()<r.date())return-e(r,t);var a=12*(r.year()-t.year())+(r.month()-t.month()),n=t.clone().add(a,i),s=r-n<0,o=t.clone().add(a+(s?-1:1),i);return+(-(a+(r-n)/(s?n-o:o-n))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:i,y:o,w:n,d:"day",D:u,h:a,m:r,s:t,ms:e,Q:s})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};v.l=S,v.i=y,v.w=function(e,t){return C(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var $=function(){function h(e){this.$L=S(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,r=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 a=t.match(l);if(a){var n=a[2]-1||0,i=(a[7]||"0").substring(0,3);return r?new Date(Date.UTC(a[1],n,a[3]||1,a[4]||0,a[5]||0,a[6]||0,i)):new Date(a[1],n,a[3]||1,a[4]||0,a[5]||0,a[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 v},p.isValid=function(){return this.$d.toString()!==c},p.isSame=function(e,t){var r=C(e);return this.startOf(t)<=r&&r<=this.endOf(t)},p.isAfter=function(e,t){return C(e)<this.startOf(t)},p.isBefore=function(e,t){return this.endOf(t)<C(e)},p.$g=function(e,t,r){return v.u(e)?this[t]:this.set(r,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=!!v.u(s)||s,d=v.p(e),h=function(e,t){var r=v.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return l?r:r.endOf("day")},p=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)},f=this.$W,m=this.$M,y=this.$D,S="set"+(this.$u?"UTC":"");switch(d){case o:return l?h(1,0):h(31,11);case i:return l?h(1,m):h(0,m+1);case n:var C=this.$locale().weekStart||0,$=(f<C?f+7:f)-C;return h(l?y-$:y+(6-$),m);case"day":case u:return p(S+"Hours",0);case a:return p(S+"Minutes",1);case r:return p(S+"Seconds",2);case t:return p(S+"Milliseconds",3);default:return this.clone()}},p.endOf=function(e){return this.startOf(e,!1)},p.$set=function(n,s){var c,l=v.p(n),d="set"+(this.$u?"UTC":""),h=((c={}).day=d+"Date",c[u]=d+"Date",c[i]=d+"Month",c[o]=d+"FullYear",c[a]=d+"Hours",c[r]=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===o){var f=this.clone().set(u,1);f.$d[h](p),f.init(),this.$d=f.set(u,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[v.p(e)]()},p.add=function(e,s){var u,c=this;e=Number(e);var l=v.p(s),d=function(t){var r=C(c);return v.w(r.date(r.date()+Math.round(t*e)),c)};if(l===i)return this.set(i,this.$M+e);if(l===o)return this.set(o,this.$y+e);if("day"===l)return d(1);if(l===n)return d(7);var h=((u={})[r]=6e4,u[a]=36e5,u[t]=1e3,u)[l]||1,p=this.$d.getTime()+e*h;return v.w(p,this)},p.subtract=function(e,t){return this.add(-1*e,t)},p.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||c;var a=e||"YYYY-MM-DDTHH:mm:ssZ",n=v.z(this),i=this.$H,s=this.$m,o=this.$M,u=r.weekdays,l=r.months,h=r.meridiem,p=function(e,r,n,i){return e&&(e[r]||e(t,a))||n[r].slice(0,i)},f=function(e){return v.s(i%12||12,e,"0")},m=h||function(e,t,r){var a=e<12?"AM":"PM";return r?a.toLowerCase():a};return a.replace(d,function(e,a){return a||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 p(r.monthsShort,o,l,3);case"MMMM":return p(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 p(r.weekdaysMin,t.$W,u,2);case"ddd":return p(r.weekdaysShort,t.$W,u,3);case"dddd":return u[t.$W];case"H":return String(i);case"HH":return v.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 v.s(s,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 n}return null}(e)||n.replace(":","")})},p.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},p.diff=function(e,u,c){var l,d=this,h=v.p(u),p=C(e),f=(p.utcOffset()-this.utcOffset())*6e4,m=this-p,y=function(){return v.m(d,p)};switch(h){case o:l=y()/12;break;case i:l=y();break;case s:l=y()/3;break;case n:l=(m-f)/6048e5;break;case"day":l=(m-f)/864e5;break;case a:l=m/36e5;break;case r:l=m/6e4;break;case t:l=m/1e3;break;default:l=m}return c?l:v.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 r=this.clone(),a=S(e,t,!0);return a&&(r.$L=a),r},p.clone=function(){return v.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=$.prototype;return C.prototype=b,[["$ms",e],["$s",t],["$m",r],["$H",a],["$W","day"],["$M",i],["$y",o],["$D",u]].forEach(function(e){b[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),C.extend=function(e,t){return e.$i||(e(t,$,C),e.$i=!0),C},C.locale=S,C.isDayjs=y,C.unix=function(e){return C(1e3*e)},C.en=f[p],C.Ls=f,C.p={},C}()},975925,e=>{"use strict";var t=e.i(990294);let r=e=>{let r=new Date;switch(e){case"today":return{start:(0,t.default)().startOf("day").toDate(),end:r};case"7d":return{start:(0,t.default)().subtract(7,"day").startOf("day").toDate(),end:r};case"30d":return{start:(0,t.default)().subtract(30,"day").startOf("day").toDate(),end:r};case"all":return{start:new Date(0),end:r}}};e.s(["isDateStringWithinPeriod",0,(e,a)=>{if("all"===a)return!0;let{start:n,end:i}=r(a),s=(0,t.default)(e).toDate();return s>=n&&s<=i},"isWithinPeriod",0,(e,t)=>{if("all"===t)return!0;let{start:a,end:n}=r(t),i=new Date(e);return i>=a&&i<=n},"parsePeriod",0,e=>"today"===e||"7d"===e||"30d"===e||"all"===e?e:"all"])},180112,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),n=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}},o={input:30,output:150,cacheWrite5m:37.5,cacheWrite1h:60,cacheRead:3},u=(e,t,r,a,n,i)=>t/1e6*e.input+a/1e6*e.cacheWrite5m+n/1e6*e.cacheWrite1h+i/1e6*e.cacheRead+r/1e6*e.output,c=r.default.join(a.default.homedir(),".claude","stats-cache.json"),l=(e,t,r,a,n,i)=>((e,t,r,a,n,i)=>{let c=((e,t,r,a,n,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?o:s[d];return h?u(h,t,r,a,n,i):null})(e,t,r,a,n,i);if(null!==c)return c;let l=e.toLowerCase();return u(l.includes("opus")?s["opus-4-6"]:l.includes("haiku")?s["haiku-4-5"]:s["sonnet-4-6"],t,r,a,n,i)})(e,t,r,n,i,a),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,r,a;let n=await t.default.readFile(c,"utf-8"),i=JSON.parse(n);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:(r=i.dailyModelTokens,Array.isArray(r)?r.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),r=Number(e.cacheCreation1h??0),a=null!=e.cacheCreation5m?Number(e.cacheCreation5m):Math.max(0,t-r);return{input:Number(e.input??0),output:Number(e.output??0),cacheRead:Number(e.cacheRead??0),cacheCreation:t,cacheCreation5m:a,cacheCreation1h:r}}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[r,a]of Object.entries(e)){if("object"!=typeof a||null===a)continue;let e=Number(a.cacheCreationInputTokens??0),n=Number(a.cacheCreation1hInputTokens??0),i=null!=a.cacheCreation5mInputTokens?Number(a.cacheCreation5mInputTokens):Math.max(0,e-n);t[r]={inputTokens:Number(a.inputTokens??0),outputTokens:Number(a.outputTokens??0),cacheReadInputTokens:Number(a.cacheReadInputTokens??0),cacheCreationInputTokens:e,cacheCreation5mInputTokens:i,cacheCreation1hInputTokens:n,webSearchRequests:Number(a.webSearchRequests??0),costUSD:Number(a.costUSD??0),contextWindow:Number(a.contextWindow??0),maxOutputTokens:Number(a.maxOutputTokens??0)}}return t})(i.modelUsage),totalSessions:Number(i.totalSessions??0),totalMessages:Number(i.totalMessages??0),longestSession:(a=i.longestSession,"object"!=typeof a||null===a?{sessionId:"",duration:0,messageCount:0,timestamp:""}:{sessionId:String(a.sessionId??""),duration:Number(a.duration??0),messageCount:Number(a.messageCount??0),timestamp:String(a.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 r=(e=>{if("all"===e||"today"===e)return null;let t="7d"===e?7:30;return{prevStart:(0,n.default)().subtract(2*t,"day").startOf("day"),prevEnd:(0,n.default)().subtract(t,"day").startOf("day")}})(t);if(!r)return!1;let a=(0,n.default)(e);return(a.isAfter(r.prevStart)||a.isSame(r.prevStart))&&a.isBefore(r.prevEnd)};e.s(["buildOverview",0,(e,t)=>{let r,a,s,o,u=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:u.reduce((e,t)=>e+t.sessionCount,0),h="all"===t?e.totalMessages:u.reduce((e,t)=>e+t.messageCount,0),p=u.reduce((e,t)=>e+t.toolCallCount,0),m=(r=e.dailyActivity,a=t,r.filter(e=>f(e.date,a))),y=m.reduce((e,t)=>e+t.sessionCount,0),S=m.reduce((e,t)=>e+t.messageCount,0),C={};if("all"===t)for(let[t,r]of Object.entries(e.modelUsage))C[t]={input:r.inputTokens,output:r.outputTokens,cacheRead:r.cacheReadInputTokens,cacheCreation:r.cacheCreationInputTokens,cacheCreation5m:r.cacheCreation5mInputTokens,cacheCreation1h:r.cacheCreation1hInputTokens,cost:l(t,r.inputTokens,r.outputTokens,r.cacheReadInputTokens,r.cacheCreation5mInputTokens,r.cacheCreation1hInputTokens)};else{for(let e of c)for(let[t,r]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+=r.input,C[t].output+=r.output,C[t].cacheRead+=r.cacheRead,C[t].cacheCreation+=r.cacheCreation,C[t].cacheCreation5m+=r.cacheCreation5m,C[t].cacheCreation1h+=r.cacheCreation1h;for(let[t,r]of Object.entries(C)){let a=e.modelUsage[t];if(!a)continue;let n=a.inputTokens+a.outputTokens+a.cacheReadInputTokens+a.cacheCreationInputTokens,i=r.input+r.output+r.cacheRead+r.cacheCreation;n>0&&(r.cost=i/n*l(t,a.inputTokens,a.outputTokens,a.cacheReadInputTokens,a.cacheCreation5mInputTokens,a.cacheCreation1hInputTokens))}}let v=c.map(e=>{let t=0,r=0,a=0,n=0;for(let i of Object.values(e.tokensByModel))t+=i.input,r+=i.output,a+=i.cacheRead,n+=i.cacheCreation;return{date:e.date,input:t,output:r,cacheRead:a,cacheCreation:n}}),$=(0,n.default)().format("YYYY-MM-DD"),b=(0,n.default)().startOf("month").format("YYYY-MM-DD"),M=e.dailyActivity.find(e=>e.date===$)?.messageCount??0,T=e.dailyActivity.filter(e=>e.date>=b).reduce((e,t)=>e+t.messageCount,0),g=Object.values(C).reduce((e,t)=>e+t.cost,0),k=t=>{let r=0;for(let a of t)for(let[t,n]of Object.entries(a.tokensByModel)){let a=e.modelUsage[t];if(!a)continue;let i=a.inputTokens+a.outputTokens+a.cacheReadInputTokens+a.cacheCreationInputTokens,s=n.input+n.output+n.cacheRead+n.cacheCreation;i>0&&(r+=s/i*l(t,a.inputTokens,a.outputTokens,a.cacheReadInputTokens,a.cacheCreation5mInputTokens,a.cacheCreation1hInputTokens))}return r},D=k(e.dailyModelTokens.filter(e=>e.date===$));return{totalSessions:d,totalMessages:h,previousSessions:y,previousMessages:S,totalToolCalls:p,dailyActivity:u,modelTokens:C,dailyTokens:v,todayMessages:M,thisMonthMessages:T,totalCost:g,todayCost:D,thisMonthCost:k(e.dailyModelTokens.filter(e=>e.date>=b)),previousCost:k((s=e.dailyModelTokens,o=t,s.filter(e=>f(e.date,o)))),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),r=e.i(190406),a=e.i(244898),n=e.i(262950),i=e.i(177579),s=e.i(180112),o=e.i(7991);let u=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"method-not-allowed"});let r=Math.max(0,Number(e.query.offset)||0),a=Math.min(50,Math.max(1,Number(e.query.limit)||10)),[n,u]=await Promise.all([(0,i.getStatsCache)(),(0,o.readAllCachedReports)()]),c=(0,s.buildOverview)(n,"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),r=t?t.input+t.output+t.cacheRead+t.cacheCreation:0;return{date:e.date,sessionCount:e.sessionCount,cost:l>0?r/l*d:0,report:u[e.date]??null}}).sort((e,t)=>t.date.localeCompare(e.date)),p={days:h.slice(r,r+a),total:h.length,offset:r,limit:a};return t.status(200).json(p)};e.s(["default",0,u],730099);var c=e.i(730099),l=e.i(7031),d=e.i(181927),h=e.i(846432);let p=(0,n.hoist)(c,"default"),f=(0,n.hoist)(c,"config"),m=new a.PagesAPIRouteModule({definition:{kind:r.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,r,a){a.requestMeta&&(0,h.setRequestMeta)(e,a.requestMeta),m.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let n="/api/stats/daily-report/list";n=n.replace(/\/index$/,"")||"/";let i=await m.prepare(e,r,{srcPage:n});if(!i){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:u,routerServerContext:c}=i;try{let t,a=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,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:u.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":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 s=e.get("next.route");if(s){let e=`${a} ${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(`${a} ${n}`)});p&&h?await y(h):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(d.BaseServerSpan.handleRequest,{spanName:`${a} ${n}`,kind:l.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},y),void 0,!p))}catch(e){if(m.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,f,"default",0,p,"handler",0,y],219839)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0vjtjtc._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let s=a.default.join(i.default.homedir(),".purplemux","cli-token"),n=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(n.__ptCliToken)return n.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(s,"utf-8").trim()||null}catch{return null}})();if(e)return n.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");n.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(s),{recursive:!0}),r.default.writeFileSync(s,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429),i=e.i(871911);let s=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let s=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(s.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},o=async(e,t,r,a)=>{if(e.method!==r){t.setHeader("Allow",r),t.status(405).json({error:"Method not allowed"});return}if(!(0,i.verifyCliToken)(e))return void t.status(403).json({error:"Forbidden"});let n=e.query.tabId,o="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!o)return void t.status(400).json({error:"workspaceId is required"});let l=await s(o,n);if(!l)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==l.tab.panelType)return void t.status(400).json({error:"Tab is not a web-browser panel"});let u=globalThis.__ptBrowserBridge??null;u?await a({tabId:n,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,s,"resolveFirstPaneId",0,n,"withBrowserTab",0,o],200523)},780653,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(871911),n=e.i(825265),o=e.i(804767),l=e.i(322429),u=e.i(200523);let d=(0,e.i(25146).createLogger)("api:cli:tabs"),p=["terminal","claude-code","web-browser","diff"],c=async(e,t)=>{if(!(0,s.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});if("GET"===e.method){let r="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0,a=[];for(let e of r?[r]:(await (0,l.getWorkspaces)()).workspaces.map(e=>e.id)){if(!await (0,l.getWorkspaceById)(e))continue;let t=await (0,n.getLayout)(e);for(let r of(0,o.collectPanes)(t.root))for(let t of r.tabs)a.push({tabId:t.id,workspaceId:e,name:t.name,sessionName:t.sessionName,panelType:t.panelType})}return t.status(200).json({tabs:a})}if("POST"===e.method){let{workspaceId:r,name:a,panelType:i}=e.body;if(!r)return t.status(400).json({error:"workspaceId is required"});let s=await (0,l.getWorkspaceById)(r);if(!s)return t.status(404).json({error:"Workspace not found"});let o=await (0,u.resolveFirstPaneId)(r);if(!o)return t.status(500).json({error:"No pane available in workspace"});let c=p.includes(i)?i:"terminal";try{let e=await (0,n.addTabToPane)(r,o,a,s.directories[0],c);if(!e)return t.status(500).json({error:"Failed to create tab"});return t.status(201).json({tabId:e.id,workspaceId:r,paneId:o,sessionName:e.sessionName,name:e.name})}catch(r){let e=r instanceof Error?r.message:"unknown error";return d.error(`create tab failed: ${e}`),t.status(500).json({error:e})}}return t.setHeader("Allow","GET, POST"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,c],902516);var f=e.i(902516),v=e.i(7031),w=e.i(181927),m=e.i(846432);let y=(0,i.hoist)(f,"default"),b=(0,i.hoist)(f,"config"),h=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/index",pathname:"/api/cli/tabs",bundlePath:"",filename:""},userland:f,distDir:".next",relativeProjectDir:""});async function g(e,r,a){a.requestMeta&&(0,m.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,m.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/index";i=i.replace(/\/index$/,"")||"/";let s=await h.prepare(e,r,{srcPage:i});if(!s){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:n,params:o,prerenderManifest:l,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,v.getTracer)(),d=s.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=h.instrumentationOnRequestError.bind(h),f=async d=>h.render(e,r,{query:{...n,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:h.isDev,page:"/api/cli/tabs/index",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==w.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=`${a} ${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(`${a} ${i}`)});p&&d?await f(d):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(w.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:v.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},f),void 0,!p))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,b,"default",0,y,"handler",0,g],780653)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0w0wz~a._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[270406,(e,t,a)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,a)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,a)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},224361,(e,t,a)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,a)=>{t.exports=e.x("child_process",()=>require("child_process"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,a=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(a)),e.s(["PRISTINE_ENV",0,a],965898);let n=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),r=["LC_"],s=e=>n.has(e)||r.some(t=>e.startsWith(t)),i={TERM:"xterm-256color",COLORTERM:"truecolor"},o=()=>{let e={};for(let[t,n]of Object.entries(a))void 0!==n&&s(t)&&(e[t]=n);return{...e,...i}},u=e=>`'${e.replace(/'/g,"'\\''")}'`,c=()=>a.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>o(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(o()).map(([e,t])=>`${e}=${u(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${u(c())} -l`},"defaultShell",0,c],597789)},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)])),p=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}},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,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),p=u.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),g=m.reduce((e,t)=>e+t.messageCount,0),S={};if("all"===t)for(let[t,a]of Object.entries(e.modelUsage))S[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))S[t]||(S[t]={input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0,cost:0}),S[t].input+=a.input,S[t].output+=a.output,S[t].cacheRead+=a.cacheRead,S[t].cacheCreation+=a.cacheCreation,S[t].cacheCreation5m+=a.cacheCreation5m,S[t].cacheCreation1h+=a.cacheCreation1h;for(let[t,a]of Object.entries(S)){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 C=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}}),v=(0,r.default)().format("YYYY-MM-DD"),T=(0,r.default)().startOf("month").format("YYYY-MM-DD"),M=e.dailyActivity.find(e=>e.date===v)?.messageCount??0,$=e.dailyActivity.filter(e=>e.date>=T).reduce((e,t)=>e+t.messageCount,0),k=Object.values(S).reduce((e,t)=>e+t.cost,0),b=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},D=b(e.dailyModelTokens.filter(e=>e.date===v));return{totalSessions:d,totalMessages:h,previousSessions:y,previousMessages:g,totalToolCalls:p,dailyActivity:u,modelTokens:S,dailyTokens:C,todayMessages:M,thisMonthMessages:$,totalCost:k,todayCost:D,thisMonthCost:b(e.dailyModelTokens.filter(e=>e.date>=T)),previousCost:b((i=e.dailyModelTokens,o=t,i.filter(e=>f(e.date,o)))),hourlyDistribution:e.hourCounts,dayHourDistribution:e.dayHourCounts,firstSessionDate:e.firstSessionDate,lastComputedDate:e.lastComputedDate,computedAt:new Date().toISOString()}},"readStatsCache",0,p],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},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 v||!(!e||!e[m])},g=function e(t,a,n){var r;if(!t)return p;if("string"==typeof t){var s=t.toLowerCase();f[s]&&(r=s),a&&(f[s]=a,r=s);var i=t.split("-");if(!r&&i.length>1)return e(i[0])}else{var o=t.name;f[o]=t,r=o}return!n&&r&&(p=r),r||!n&&p},S=function(e,t){if(y(e))return e.clone();var a="object"==typeof t?t:{};return a.date=e,a.args=arguments,new v(a)},C={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}};C.l=g,C.i=y,C.w=function(e,t){return S(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var v=function(){function h(e){this.$L=g(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(C.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()},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 C},p.isValid=function(){return this.$d.toString()!==c},p.isSame=function(e,t){var a=S(e);return this.startOf(t)<=a&&a<=this.endOf(t)},p.isAfter=function(e,t){return S(e)<this.startOf(t)},p.isBefore=function(e,t){return this.endOf(t)<S(e)},p.$g=function(e,t,a){return C.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,i){var c=this,l=!!C.u(i)||i,d=C.p(e),h=function(e,t){var a=C.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 C.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,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 S=this.$locale().weekStart||0,v=(f<S?f+7:f)-S;return h(l?y-v:y+(6-v),m);case"day":case u:return p(g+"Hours",0);case n:return p(g+"Minutes",1);case a:return p(g+"Seconds",2);case t:return p(g+"Milliseconds",3);default:return this.clone()}},p.endOf=function(e){return this.startOf(e,!1)},p.$set=function(r,i){var c,l=C.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],p="day"===l?this.$D+(i-this.$W):i;if(l===s||l===o){var f=this.clone().set(u,1);f.$d[h](p),f.init(),this.$d=f.set(u,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[C.p(e)]()},p.add=function(e,i){var u,c=this;e=Number(e);var l=C.p(i),d=function(t){var a=S(c);return C.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,p=this.$d.getTime()+e*h;return C.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=C.z(this),s=this.$H,i=this.$m,o=this.$M,u=a.weekdays,l=a.months,h=a.meridiem,p=function(e,a,r,s){return e&&(e[a]||e(t,n))||r[a].slice(0,s)},f=function(e){return C.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 C.s(t.$y,4,"0");case"M":return o+1;case"MM":return C.s(o+1,2,"0");case"MMM":return p(a.monthsShort,o,l,3);case"MMMM":return p(l,o);case"D":return t.$D;case"DD":return C.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return p(a.weekdaysMin,t.$W,u,2);case"ddd":return p(a.weekdaysShort,t.$W,u,3);case"dddd":return u[t.$W];case"H":return String(s);case"HH":return C.s(s,2,"0");case"h":return f(1);case"hh":return f(2);case"a":return m(s,i,!0);case"A":return m(s,i,!1);case"m":return String(i);case"mm":return C.s(i,2,"0");case"s":return String(t.$s);case"ss":return C.s(t.$s,2,"0");case"SSS":return C.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,u,c){var l,d=this,h=C.p(u),p=S(e),f=(p.utcOffset()-this.utcOffset())*6e4,m=this-p,y=function(){return C.m(d,p)};switch(h){case o:l=y()/12;break;case s:l=y();break;case i: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:C.a(l)},p.daysInMonth=function(){return this.endOf(s).$D},p.$locale=function(){return f[this.$L]},p.locale=function(e,t){if(!e)return this.$L;var a=this.clone(),n=g(e,t,!0);return n&&(a.$L=n),a},p.clone=function(){return C.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}(),T=v.prototype;return S.prototype=T,[["$ms",e],["$s",t],["$m",a],["$H",n],["$W","day"],["$M",s],["$y",o],["$D",u]].forEach(function(e){T[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),S.extend=function(e,t){return e.$i||(e(t,v,S),e.$i=!0),S},S.locale=g,S.isDayjs=y,S.unix=function(e){return S(1e3*e)},S.en=f[p],S.Ls=f,S.p={},S}()},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},p=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},f=async e=>{let t=await l();if(0===t.length)return new Map;let a=t.map(t=>()=>p(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,f])},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),p=e.i(846432);let f=(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,p.setRequestMeta)(e,n.requestMeta),y.isDev&&(0,p.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(),p=!!(null==c?void 0:c.isWrappedByNextServer),f=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)=>f(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}`)});p&&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,!p))}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,f,"handler",0,g],69396)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0x_e0yw._.js.map
|