purplemux 0.3.2 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +116 -116
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +7 -7
- package/.next/standalone/.next/server/chunks/[externals]__0s~lw5_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-vpxlt._.js +5 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.wdm~p._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.xasox._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0075vnc._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02.ow52._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__023w5uy._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03rse4i._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__048funf._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05le.ev._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05~jgqd._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06kid0d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07ajdqq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07fh~7w._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0mky_tj._.js → [root-of-the-server]__08nq4la._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ageh3g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0atje0b._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cejele._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cy47p4._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d9yo3_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e5am-o._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e6z0u6._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0erq9rf._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f-1scw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f0-oim._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fdh07q._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00o93bf._.js → [root-of-the-server]__0fe0pqx._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fjtk0d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g-v44c._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gm~y1a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0h-9m0e._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i0mb1-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j3kgjw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jqcz6h._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lp1y.v._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m9hms3._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mpstz.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oqbs5g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pta11j._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q0laz1._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qpwsk~._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sgq23a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sisigk._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t27n38._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ts_s1k._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vno7dh._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vroi1-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wae66j._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x01z7b._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xgh-_t._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xs6_~.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y774bl._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y_v9~l._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10v85i5._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__110w2ya._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11b3nvp._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12_dfe-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12lg8hi._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12v9yor._.js +3 -0
- package/.next/standalone/.next/server/chunks/_07f-e5d._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0abd-ef._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0naftfn._.js +1 -1
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_019~zpv.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_054vaqw.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_05soyh7.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0dag3xq.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0drg5k..js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0qpjud8.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0to2msc.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0uk385d.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0v8pump.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_06lqtoi._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_0bj652.._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05vtngr._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07jm3ld._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__00fyckt._.js → [root-of-the-server]__0fdpmgm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__02~n2ds._.js → [root-of-the-server]__0hixhy3._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0lnsb8q._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ytsvx3._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-0n2jc._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-w3tj9._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0.asmh_._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0.~7e5x._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0025oot._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0148tmw._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_03.p176._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0y_feze._.js → _03u5alz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_05enhz-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_05oyq08._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0-gv~al._.js → _05qk2n5._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_06mfd2z._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_00zzfsm._.js → _072p152._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0.stp0n._.js → _08~3wi.._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_09n7sza._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/_0b3mmpo._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_09l7tmm._.js → _0e8bhy5._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/_0g4dxt7._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0h7bs4u._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_12l2tic._.js → _0injlej._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0k_04fj._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0l_4npy._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_02eucpw._.js → _0mrdl.g._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0ob2rr-._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0qzs~4y._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0olu-g8._.js → _0r.fjs0._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{_10dec5o._.js → _0sju65h._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_00cx0p2._.js → _0tk3_d1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0vebac6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0w7x_09._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_053tm~z._.js → _0wrhe~n._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0xnk7ht._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0bhsmmv._.js → _0xxqycz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0kzht5v._.js → _10eoz_a._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0k0r2i-._.js → _10hul60._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_10uebjl._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_11m23bw._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_13s7t5u._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{messages_0k204ao._.js → messages_02_r1om._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{messages_0f3u1ly._.js → messages_0u_y48r._.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_timeline_json_[json]_cjs_0_i8-gb._.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_timeline_json_[json]_cjs_0a50w3r._.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_timeline_json_[json]_cjs_07-b7ka._.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_timeline_json_[json]_cjs_045zga0._.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_timeline_json_[json]_cjs_0iwksd.._.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_timeline_json_[json]_cjs_03gxaph._.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_timeline_json_[json]_cjs_0mhm8bo._.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_timeline_json_[json]_cjs_104t_vy._.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_timeline_json_[json]_cjs_11fne8p._.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_timeline_json_[json]_cjs_0g0-bd6._.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_timeline_json_[json]_cjs_0b3tm.x._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0.l39rf._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_07i.2e~._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_0bbmd88._.js → node_modules_0az5xxz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0cx6hl6._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_02oar3h._.js → node_modules_0g6n2o4._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0v0j4dl._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0wwbj_z._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0d_1ie5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0ik66ii._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0k730f5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_pages_0edfh6g.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0n3s0.7._.js → src_components_054lzv8._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_components_07a_zfh._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0gkfyrc._.js → src_components_0_j7p.~._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_components_05-kki3._.js → src_components_0dzgkvt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0fb83uz._.js → src_components_0l6f_-1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_components_11nysou._.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_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_stats_session-section_tsx_0imh21c._.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_tooltip_tsx_0nba54u._.js +1 -1
- 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/middleware-build-manifest.js +116 -116
- package/.next/standalone/.next/server/middleware.js +1 -1
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +5 -5
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_document.js +3 -2
- package/.next/standalone/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_error/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/_error/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_error.js +7 -6
- package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/login.js +1 -1
- package/.next/standalone/.next/server/pages/api/auth/login.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/preflight.js +2 -2
- package/.next/standalone/.next/server/pages/api/auth/preflight.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/setup.js +2 -2
- package/.next/standalone/.next/server/pages/api/auth/setup.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/check-agent.js +2 -2
- package/.next/standalone/.next/server/pages/api/check-agent.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/check-claude.js +2 -2
- package/.next/standalone/.next/server/pages/api/check-claude.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/api-guide.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/api-guide.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js.nft.json +1 -1
- 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 +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/codex/launch-args.js +4 -4
- package/.next/standalone/.next/server/pages/api/codex/launch-args.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/codex/launch-command.js +2 -2
- package/.next/standalone/.next/server/pages/api/codex/launch-command.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/codex/sessions.js +2 -2
- package/.next/standalone/.next/server/pages/api/codex/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/config.js +1 -1
- package/.next/standalone/.next/server/pages/api/config.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/branch.js +2 -1
- package/.next/standalone/.next/server/pages/api/git/branch.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/status.js +2 -1
- package/.next/standalone/.next/server/pages/api/git/status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/sync.js +2 -1
- package/.next/standalone/.next/server/pages/api/git/sync.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/cwd.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/cwd.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/diff.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/diff.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/file-content.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/file-content.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/git-log.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/git-log.js.nft.json +1 -1
- 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 +4 -4
- 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 +6 -6
- 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 +2 -2
- package/.next/standalone/.next/server/pages/api/message-history.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/preflight/runtime.js +2 -2
- package/.next/standalone/.next/server/pages/api/preflight/runtime.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/aggregated.js +3 -3
- package/.next/standalone/.next/server/pages/api/stats/aggregated.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/cache-status.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/cache-status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js +2 -2
- 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 +2 -2
- 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 +4 -4
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/history.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/history.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/overview.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/overview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/projects.js +3 -3
- package/.next/standalone/.next/server/pages/api/stats/projects.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/sessions.js +3 -3
- package/.next/standalone/.next/server/pages/api/stats/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/uptime.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/uptime.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/agent-launch.js +4 -4
- package/.next/standalone/.next/server/pages/api/status/agent-launch.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/hook.js +5 -5
- package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js +9 -9
- package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js +2 -1
- package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/timeline/sessions.js +2 -2
- package/.next/standalone/.next/server/pages/api/timeline/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/capture.js +2 -1
- package/.next/standalone/.next/server/pages/api/tmux/capture.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/info.js +2 -1
- package/.next/standalone/.next/server/pages/api/tmux/info.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js +2 -2
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/plan-options.js +2 -2
- package/.next/standalone/.next/server/pages/api/tmux/plan-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +4 -4
- 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/tmux/send-input.js +2 -1
- package/.next/standalone/.next/server/pages/api/tmux/send-input.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].js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/group.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/group.js.nft.json +1 -1
- 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 +3 -3
- 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 +20 -20
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +12 -12
- package/.next/standalone/.next/server/pages/index.js +19 -18
- 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 +12 -12
- package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/login.js +16 -15
- 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 +20 -20
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/reports.js +21 -20
- package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/reset/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/reset/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reset.js +8 -7
- 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 +21 -21
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +15 -15
- package/.next/standalone/.next/server/pages/stats.js +21 -20
- 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 +12 -11
- 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 +20 -20
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/webview.js +21 -20
- package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
- package/.next/standalone/.next/static/{pZhcwQ83aP87HDTIzzyJ6 → Fvh2ZScb-GvlCulutSHF4}/_buildManifest.js +8 -8
- package/.next/standalone/.next/static/chunks/0-_m9g0bmuw6r.js +1 -0
- package/.next/standalone/.next/static/chunks/0.sri97ob4xz_.js +1 -0
- package/.next/standalone/.next/static/chunks/0.vz-0q9sjiuw.js +1 -0
- package/.next/standalone/.next/static/chunks/0.wij9w6vcwhg.js +1 -0
- package/.next/standalone/.next/static/chunks/0.~3qhg2-u3ky.js +1 -0
- package/.next/standalone/.next/static/chunks/00oa6ti8pq8c5.js +1 -0
- package/.next/standalone/.next/static/chunks/00ubv7ksa49tb.js +1 -0
- package/.next/standalone/.next/static/chunks/00wzy83e7d7gj.js +24 -0
- package/.next/standalone/.next/static/chunks/{0p-l.y2j.t_~p.js → 034mn8n--pyn6.js} +1 -1
- package/.next/standalone/.next/static/chunks/03eq8u6303wiy.js +1 -0
- package/.next/standalone/.next/static/chunks/{0dp8cx7g1vggf.js → 03jt6vqn-xilm.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0vr33-opwem7e.js → 04wf7.-7.-mpm.js} +1 -1
- package/.next/standalone/.next/static/chunks/05gba103lqp8r.js +1 -0
- package/.next/standalone/.next/static/chunks/07fcrp1t~2ivl.js +1 -0
- package/.next/standalone/.next/static/chunks/{02o84r01jsc.z.js → 07hp_eaak.fq-.js} +1 -1
- package/.next/standalone/.next/static/chunks/07lv2vmm9ayna.js +1 -0
- package/.next/standalone/.next/static/chunks/{07yop4v9xcwb9.js → 07qi73ciivwg_.js} +1 -1
- package/.next/standalone/.next/static/chunks/07vu4hx3.8d.3.js +1 -0
- package/.next/standalone/.next/static/chunks/09-h3tvhahhc~.js +24 -0
- package/.next/standalone/.next/static/chunks/09tnrtb~sgtjh.js +1 -0
- package/.next/standalone/.next/static/chunks/0_0bwcp~9lea8.js +1 -0
- package/.next/standalone/.next/static/chunks/0_ac9op.u-oja.js +5 -0
- package/.next/standalone/.next/static/chunks/{09psmnx8qch_s.js → 0_eqdbfwxb.~r.js} +1 -1
- package/.next/standalone/.next/static/chunks/0_ybvkygns8mh.js +1 -0
- package/.next/standalone/.next/static/chunks/{0ddh4qmi2awdq.js → 0byb_iu6a-~vd.js} +1 -1
- package/.next/standalone/.next/static/chunks/0c79f5oit0rws.js +1 -0
- package/.next/standalone/.next/static/chunks/{0f73mm-~6n8dq.js → 0ci366svlb59q.js} +14 -14
- package/.next/standalone/.next/static/chunks/0cy3p~8fa8p~8.js +1 -0
- package/.next/standalone/.next/static/chunks/0d8s09d-izdbq.js +6 -0
- package/.next/standalone/.next/static/chunks/0dqqxbo0n.jgl.js +1 -0
- package/.next/standalone/.next/static/chunks/0eledkadcprk3.js +1 -0
- package/.next/standalone/.next/static/chunks/0f04ma94_t32g.js +16 -0
- package/.next/standalone/.next/static/chunks/{0zgde2~kd4r.x.js → 0fe99e3vjh08f.js} +1 -1
- package/.next/standalone/.next/static/chunks/0fjl0qhyaiq8_.js +1 -0
- package/.next/standalone/.next/static/chunks/0fq~w9fqllgym.js +25 -0
- package/.next/standalone/.next/static/chunks/0h4_jo8dw7z07.js +1 -0
- package/.next/standalone/.next/static/chunks/0ho64go6.dk2j.js +1 -0
- package/.next/standalone/.next/static/chunks/0i.mswv9.fh.y.js +1 -0
- package/.next/standalone/.next/static/chunks/0jckr4.c_ydck.js +1 -0
- package/.next/standalone/.next/static/chunks/0jfnx~s5fhzop.js +1 -0
- package/.next/standalone/.next/static/chunks/0jlwnzphd~x2n.js +1 -0
- package/.next/standalone/.next/static/chunks/{09vwjd8b2iu9z.js → 0jrvo~4zrssmr.js} +1 -1
- package/.next/standalone/.next/static/chunks/0jux26vr_9f3j.js +16 -0
- package/.next/standalone/.next/static/chunks/{0szl_dovu0hgw.js → 0kbvx8fek6-wx.js} +1 -1
- package/.next/standalone/.next/static/chunks/0kgbmub.~n57_.js +1 -0
- package/.next/standalone/.next/static/chunks/{0-wv6sqgkc5wn.js → 0kmmaeod1s.vw.js} +1 -1
- package/.next/standalone/.next/static/chunks/0ky_fbnkmgw7q.js +1 -0
- package/.next/standalone/.next/static/chunks/0n.6yhpaevnz8.js +5 -0
- package/.next/standalone/.next/static/chunks/0nfea.nmg9qb1.js +1 -0
- package/.next/standalone/.next/static/chunks/{0kduo1cn7.pw0.js → 0nrajy77zpml1.js} +1 -1
- package/.next/standalone/.next/static/chunks/{038s7u_er9zkt.js → 0odkktrw2jut5.js} +1 -1
- package/.next/standalone/.next/static/chunks/0ot3qpr3oci.i.js +1 -0
- package/.next/standalone/.next/static/chunks/0oy0bdczs6jt8.js +1 -0
- package/.next/standalone/.next/static/chunks/0pag.t~kqlyp3.js +1 -0
- package/.next/standalone/.next/static/chunks/0pt89sjdo2ipr.js +1 -0
- package/.next/standalone/.next/static/chunks/{119llmw30g8ci.js → 0qwx.1h21gux4.js} +1 -1
- package/.next/standalone/.next/static/chunks/0rxc9kp0e79gt.js +1 -0
- package/.next/standalone/.next/static/chunks/{0suuptk6vxdav.js → 0s3as241o1mvo.js} +1 -1
- package/.next/standalone/.next/static/chunks/0sk1~xt8d6eoe.js +1 -0
- package/.next/standalone/.next/static/chunks/{04q2v0ev2_m6..js → 0sp1248q.hqf1.js} +14 -14
- package/.next/standalone/.next/static/chunks/0ssj2l353r77p.js +1 -0
- package/.next/standalone/.next/static/chunks/0swujoqiaycd1.js +16 -0
- package/.next/standalone/.next/static/chunks/0sz2qp_r_~kqm.js +1 -0
- package/.next/standalone/.next/static/chunks/0tcl5-wzvdvh5.js +1 -0
- package/.next/standalone/.next/static/chunks/{0laeq9nzminux.js → 0tg_xz8-y12iw.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0nr0sc2w3n.t5.js → 0u0j5g_n8yfug.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0n7jmg60eqx1a.js → 0u0tuq5t1k65o.js} +1 -1
- package/.next/standalone/.next/static/chunks/{09vzrni555ktn.js → 0u27983xn~~l-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0cir.n19rqu--.js → 0vb_8vnjxy5d5.js} +3 -3
- package/.next/standalone/.next/static/chunks/0vgi6hb2nblyr.js +1 -0
- package/.next/standalone/.next/static/chunks/0vp09ip~b_3vk.js +1 -0
- package/.next/standalone/.next/static/chunks/{0s.jetayn5dov.js → 0w4iuufjlhqgh.js} +1 -1
- package/.next/standalone/.next/static/chunks/0xkgug8yajfut.css +1 -0
- package/.next/standalone/.next/static/chunks/0y-6.52zsn5h_.js +1 -0
- package/.next/standalone/.next/static/chunks/0zjazky.ffn.5.js +1 -0
- package/.next/standalone/.next/static/chunks/{0g3stahwz~vh..js → 0zqs7o6kl6cen.js} +2 -2
- package/.next/standalone/.next/static/chunks/0z~czj2_621fq.js +1 -0
- package/.next/standalone/.next/static/chunks/0~j4u9753jf1d.js +1 -0
- package/.next/standalone/.next/static/chunks/0~ln-rekt-0tf.js +1 -0
- package/.next/standalone/.next/static/chunks/0~nc~.u7n58cn.js +1 -0
- package/.next/standalone/.next/static/chunks/0~np-8bf4t.r-.js +13 -0
- package/.next/standalone/.next/static/chunks/0~nt8sh~v.8xl.js +1 -0
- package/.next/standalone/.next/static/chunks/{0cf9hfx9kzqzb.js → 11qkofozxwb7-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0-0~b1fbfsoe~.js → 123.1tju3vua2.js} +1 -1
- package/.next/standalone/.next/static/chunks/12euqjbocagwt.js +12 -0
- package/.next/standalone/.next/static/chunks/12jwdr.-.hy1i.js +1 -0
- package/.next/standalone/.next/static/chunks/13o8~8tv2fn~3.js +1 -0
- package/.next/standalone/.next/static/chunks/14l28wdk~4pdq.js +24 -0
- package/.next/standalone/.next/static/chunks/15fxeeh5uenh3.js +1 -0
- package/.next/standalone/.next/static/chunks/15lb7b31.h8mg.js +1 -0
- package/.next/standalone/.next/static/chunks/15t.i9ua4pzb8.js +1 -0
- package/.next/standalone/.next/static/chunks/{10a.wwlnw50l5.js → 16ec1gvsgte06.js} +1 -1
- package/.next/standalone/.next/static/chunks/16eok15c7...d.js +1 -0
- package/.next/standalone/.next/static/chunks/17_b-3tuiu.b3.js +1 -0
- package/.next/standalone/.next/static/chunks/{0~o730huopa91.js → 17_gs~3jl212-.js} +1 -1
- package/.next/standalone/.next/static/chunks/17o5i93-p9y8p.js +1 -0
- package/.next/standalone/.next/static/chunks/180mwv20.t.r5.js +1 -0
- package/.next/standalone/.next/static/chunks/{0nqofghl.17w_.js → 18bw2zz5ejwop.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0heaqdupr4xj6.js → turbopack-02undbvb.95yf.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-14fnzd5yh28gy.js → turbopack-0hhd0k47o3zqx.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0g2bivvnd2gyd.js → turbopack-0npdg9_tz9kge.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0w89gj59tho~b.js → turbopack-0vo-yp2tf_zye.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0rntg0~hh7h.0.js → turbopack-0x9g~5tbkb3z6.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0.6hkxuraykc4.js → turbopack-0ykf3nc1yfrio.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0~gn911-6yqk2.js → turbopack-0yuo~n90_i6mk.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0sk1uk-fkcqdx.js → turbopack-14age6cyn.1v1.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0jcfxeuy1ge85.js → turbopack-17_zn5.-e_pwc.js} +1 -1
- package/.next/standalone/messages/de/settings.json +21 -2
- package/.next/standalone/messages/de/timeline.json +2 -2
- package/.next/standalone/messages/en/settings.json +21 -2
- package/.next/standalone/messages/en/timeline.json +2 -2
- package/.next/standalone/messages/es/settings.json +21 -2
- package/.next/standalone/messages/es/timeline.json +2 -2
- package/.next/standalone/messages/fr/settings.json +21 -2
- package/.next/standalone/messages/fr/timeline.json +2 -2
- package/.next/standalone/messages/ja/settings.json +21 -2
- package/.next/standalone/messages/ja/timeline.json +2 -2
- package/.next/standalone/messages/ko/settings.json +21 -2
- package/.next/standalone/messages/ko/timeline.json +2 -2
- package/.next/standalone/messages/pt-BR/settings.json +21 -2
- package/.next/standalone/messages/pt-BR/timeline.json +2 -2
- package/.next/standalone/messages/ru/settings.json +21 -2
- package/.next/standalone/messages/ru/timeline.json +2 -2
- package/.next/standalone/messages/tr/settings.json +21 -2
- package/.next/standalone/messages/tr/timeline.json +2 -2
- package/.next/standalone/messages/zh-CN/settings.json +21 -2
- package/.next/standalone/messages/zh-CN/timeline.json +2 -2
- package/.next/standalone/messages/zh-TW/settings.json +21 -2
- package/.next/standalone/messages/zh-TW/timeline.json +2 -2
- package/.next/standalone/package.json +3 -18
- package/.next/standalone/server.js +1 -1
- package/dist/server.js +72 -37
- package/package.json +3 -18
- package/.next/standalone/.next/server/chunks/[externals]__07eo6bi._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00blz4b._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00erel2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00keyoc._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00rusjd._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07d3bxo._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07o3h27._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0a7jyyu._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0an3.o.._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ftuoz8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f~d9ug._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ge78._._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0il~az0._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0imsr4v._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j.h25r._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j.iwzl._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jnxiiv._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jzp9~o._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0k-me_v._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l5~4k1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mq5lip._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nh5fcb._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nwq7wo._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nzphpn._.js +0 -5
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qslqkf._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u_xzjy._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uf.iy5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0v9vm~c._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vdn0s8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vr68v2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xg~7a2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xoflea._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__108dnsu._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12t3f_q._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13e34kx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0-mzwe.._.js +0 -3
- package/.next/standalone/.next/server/chunks/_00w4xwx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_00xyelm._.js +0 -3
- package/.next/standalone/.next/server/chunks/_019w2er._.js +0 -3
- package/.next/standalone/.next/server/chunks/_01shkub._.js +0 -3
- package/.next/standalone/.next/server/chunks/_048rfcr._.js +0 -3
- package/.next/standalone/.next/server/chunks/_04tsf.p._.js +0 -3
- package/.next/standalone/.next/server/chunks/_04wz5fx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_05xvbu4._.js +0 -3
- package/.next/standalone/.next/server/chunks/_06ntp-s._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0763djt._.js +0 -3
- package/.next/standalone/.next/server/chunks/_07dkduh._.js +0 -3
- package/.next/standalone/.next/server/chunks/_07g1_zx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_08hfr9b._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0_7my__._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0_wofwd._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0f2px04._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0j.srxq._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0py_7vt._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0r3d5qz._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0rh64c3._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0swnrzn._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0w-k~4g._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0y9vgfm._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0zym6f2._.js +0 -3
- package/.next/standalone/.next/server/chunks/_10i3z4~._.js +0 -3
- package/.next/standalone/.next/server/chunks/_13_e4ue._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__023cjc5._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08dxtof._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0glt298._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0-9ezhb._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_00zsk6a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_018tm~n._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_01l~by9._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_02rms4q._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_05bq96_._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_06_8vkn._.js +0 -18
- package/.next/standalone/.next/server/chunks/ssr/_078y4dk._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0_b1pqf._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0fota2a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0hmni4d._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0j87~j9._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0m6flec._.js +0 -18
- package/.next/standalone/.next/server/chunks/ssr/_0nbe6mv._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0o0~1bt._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0pg-q18._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0qov9e_._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0w.1ts8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0w6jc9p._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0xdbgmz._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0z4bg3i._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_1289s74._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0_2gaq0._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0ydhwnx._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0~y8-_1._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/node_modules_105or.6._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/node_modules_1294wzs._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_030gj7p._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_04tdvwp._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0bdox2f._.js +0 -3
- package/.next/standalone/.next/static/chunks/0.4j~sc70rsrv.js +0 -1
- package/.next/standalone/.next/static/chunks/0.p~i94j58w8~.js +0 -1
- package/.next/standalone/.next/static/chunks/0.znxwgo-re2m.js +0 -1
- package/.next/standalone/.next/static/chunks/01.oujz.z9cq..js +0 -1
- package/.next/standalone/.next/static/chunks/0176ysv-agwwx.js +0 -1
- package/.next/standalone/.next/static/chunks/01fkwofcdqa6f.js +0 -1
- package/.next/standalone/.next/static/chunks/031unywm42_xs.js +0 -1
- package/.next/standalone/.next/static/chunks/034iwnjckh0il.js +0 -5
- package/.next/standalone/.next/static/chunks/03s5e91.zrsi_.js +0 -16
- package/.next/standalone/.next/static/chunks/04h2nxywvycry.js +0 -1
- package/.next/standalone/.next/static/chunks/051z~faikiw.t.js +0 -1
- package/.next/standalone/.next/static/chunks/059bbrow.p4tj.js +0 -1
- package/.next/standalone/.next/static/chunks/05tuw5nb50jqc.js +0 -1
- package/.next/standalone/.next/static/chunks/05zk.ks4roh-4.js +0 -24
- package/.next/standalone/.next/static/chunks/075ypo7pvlqvz.js +0 -1
- package/.next/standalone/.next/static/chunks/094_-.5.ue3p4.js +0 -1
- package/.next/standalone/.next/static/chunks/09ntfl7b8vh1y.js +0 -1
- package/.next/standalone/.next/static/chunks/0_7~rgbkmfo_p.js +0 -1
- package/.next/standalone/.next/static/chunks/0_psc1~qmka.m.js +0 -12
- package/.next/standalone/.next/static/chunks/0amz67ga8kcr7.js +0 -1
- package/.next/standalone/.next/static/chunks/0ap~c~__qw2_0.js +0 -25
- package/.next/standalone/.next/static/chunks/0b__~uq5xxl7i.js +0 -1
- package/.next/standalone/.next/static/chunks/0celh22a.~-u6.js +0 -1
- package/.next/standalone/.next/static/chunks/0do_uad33n8hv.js +0 -1
- package/.next/standalone/.next/static/chunks/0dwxj97xm70gv.js +0 -1
- package/.next/standalone/.next/static/chunks/0euxle0n3zjm3.js +0 -1
- package/.next/standalone/.next/static/chunks/0fax5v7rwhm7g.js +0 -6
- package/.next/standalone/.next/static/chunks/0fj1a4qnwy9s3.js +0 -1
- package/.next/standalone/.next/static/chunks/0g6r03ctl6d0y.js +0 -1
- package/.next/standalone/.next/static/chunks/0gfoib7v3q4k_.js +0 -1
- package/.next/standalone/.next/static/chunks/0hrsfwzxhrdg9.js +0 -1
- package/.next/standalone/.next/static/chunks/0jml98og5gb-~.js +0 -1
- package/.next/standalone/.next/static/chunks/0k-8shbo0tie5.js +0 -1
- package/.next/standalone/.next/static/chunks/0kep81gqgj5f5.js +0 -24
- package/.next/standalone/.next/static/chunks/0kriln8d9.mdo.js +0 -1
- package/.next/standalone/.next/static/chunks/0l.88yoxq6tq8.js +0 -24
- package/.next/standalone/.next/static/chunks/0lrjdru2bjp.x.js +0 -1
- package/.next/standalone/.next/static/chunks/0m4185ccd6adw.js +0 -1
- package/.next/standalone/.next/static/chunks/0nm1wy7i1z64_.js +0 -1
- package/.next/standalone/.next/static/chunks/0o1duxjxx_ar8.css +0 -1
- package/.next/standalone/.next/static/chunks/0o24wzcc3lhqj.js +0 -1
- package/.next/standalone/.next/static/chunks/0oh5xnzizgxt1.js +0 -1
- package/.next/standalone/.next/static/chunks/0oj36.r5qgu_7.js +0 -1
- package/.next/standalone/.next/static/chunks/0p2m6i37_wprv.js +0 -1
- package/.next/standalone/.next/static/chunks/0pojknlc_-2a2.js +0 -1
- package/.next/standalone/.next/static/chunks/0pyrh4zs52aog.js +0 -1
- package/.next/standalone/.next/static/chunks/0qz-agdkp9v1q.js +0 -16
- package/.next/standalone/.next/static/chunks/0t5w4x7owhfbe.js +0 -1
- package/.next/standalone/.next/static/chunks/0tmyyb67fvkg1.js +0 -1
- package/.next/standalone/.next/static/chunks/0un7lj6-.1ad3.js +0 -5
- package/.next/standalone/.next/static/chunks/0v1teptb865rv.js +0 -1
- package/.next/standalone/.next/static/chunks/0vdw2~trmzg71.js +0 -1
- package/.next/standalone/.next/static/chunks/0x2nrv0y7ik9o.js +0 -1
- package/.next/standalone/.next/static/chunks/0x9prsaq~w.t-.js +0 -1
- package/.next/standalone/.next/static/chunks/0xa1.t1vj1mw0.js +0 -1
- package/.next/standalone/.next/static/chunks/0xfp8sfehtui9.js +0 -1
- package/.next/standalone/.next/static/chunks/0y.tsl2t9e.n..js +0 -1
- package/.next/standalone/.next/static/chunks/0zj5rfbadmr-8.js +0 -1
- package/.next/standalone/.next/static/chunks/0zkmymf6bhpsj.js +0 -1
- package/.next/standalone/.next/static/chunks/0~-0t4i~p3pcf.js +0 -1
- package/.next/standalone/.next/static/chunks/0~2x5.s5syxpx.js +0 -1
- package/.next/standalone/.next/static/chunks/12f3vk2rnkb8u.js +0 -13
- package/.next/standalone/.next/static/chunks/14kx686__yikg.js +0 -1
- package/.next/standalone/.next/static/chunks/14vposxx99rq4.js +0 -1
- package/.next/standalone/.next/static/chunks/1617_g18pxhs7.js +0 -1
- package/.next/standalone/.next/static/chunks/166~a4sl8v944.js +0 -1
- package/.next/standalone/.next/static/chunks/168.xhj-0lt8a.js +0 -16
- package/.next/standalone/.next/static/chunks/179vwj~zm1gya.js +0 -1
- package/.next/standalone/.next/static/chunks/17d9mnk-k8oqi.js +0 -1
- package/.next/standalone/.next/static/chunks/17z_vu-9k57ay.js +0 -1
- /package/.next/standalone/.next/static/{pZhcwQ83aP87HDTIzzyJ6 → Fvh2ZScb-GvlCulutSHF4}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{pZhcwQ83aP87HDTIzzyJ6 → Fvh2ZScb-GvlCulutSHF4}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),n=e.i(666126),l=e.i(825265),u=e.i(804767),d=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",w=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},f=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(f,"workspaces.json"),g=r.default.join(f,"layout.json"),h=r.default.join(f,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let v=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),x=e=>(e.groups||(e.groups=[]),e.groups),b=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},I=async e=>{let r;r=x(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l}=e,u=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,n.broadcastSync)({type:"workspace"})},S=async()=>{let e=await (0,l.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,l.resolveLayoutDir)(r),{recursive:!0}),await (0,l.writeLayoutFile)(e,(0,l.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await I(i),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},W=async()=>{try{let e=await t.default.readFile(h,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await S()}catch{return null}},P=async()=>{await t.default.mkdir(r.default.join(f,"workspaces"),{recursive:!0});let e=await b();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await S():await t.default.access(h).then(()=>!0).catch(()=>!1)&&(e=await W())),!e){let t=k();await I(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,l.resolveLayoutFile)(t.id),r=await (0,l.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,l.createDefaultLayout)(t.id,t.directories[0]),await (0,l.writeLayoutFile)(r,e);continue}let i=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,l.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,l.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},$=async()=>{let e=await b();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},A=async()=>{let e=await b();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},j=async e=>{let t=await b();return t?.workspaces.find(t=>t.id===e)},L=async(e,r,a)=>v(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await b()??k(),n=`ws-${(0,i.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),d=await (0,l.createDefaultLayout)(n,e,a);await t.default.mkdir((0,l.resolveLayoutDir)(n),{recursive:!0}),await (0,l.writeLayoutFile)(d,(0,l.resolveLayoutFile)(n));let f={id:n,name:u,directories:[e]};return o.workspaces.push(f),await I(o),await w(f),p.debug(`Created: ${n} (${u}, ${e})`),f}),_=async e=>v(async()=>{let t=await b()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,l.readLayoutFile)((0,l.resolveLayoutFile)(e));if(i)for(let e of(0,u.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,l.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await I(t),p.info(`Deleted: ${e} (${a.name})`),!0}),q=async(e,t)=>v(async()=>{let r=await b();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await I(r),await w(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),D=async e=>v(async()=>{let t=await b()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await I(t)}),C=async(e,t)=>v(async()=>{let r=await b();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await I(r),await w(a))}),F=async e=>v(async()=>{let t=await b()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await I(t),!0)}),N=async e=>v(async()=>{let t=await b()??k(),r=x(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await I(t),p.debug(`Group created: ${s.id} (${s.name})`),s}),R=async(e,t)=>v(async()=>{let r=await b();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await I(r),{...a}):a}),E=async(e,t)=>v(async()=>{let r=await b();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await I(r),!0))}),O=async e=>v(async()=>{let t=await b();if(!t)return!1;let r=x(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await I(t),p.info(`Group ungrouped: ${e}`),!0}),T=async e=>v(async()=>{let t=await b();if(!t)return!1;let r=x(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await I(t),!0)}),M=async(e,t)=>v(async()=>{let r=await b();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await I(r),!0)}),G=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,N,"createWorkspace",0,L,"deleteWorkspace",0,_,"getActiveWorkspaceId",0,A,"getWorkspaceById",0,j,"getWorkspaces",0,$,"initWorkspaceStore",0,P,"renameGroup",0,R,"renameWorkspace",0,q,"reorderGroups",0,T,"reorderWorkspaces",0,F,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,M,"ungroupGroup",0,O,"updateActive",0,D,"updateWorkspaceDirectories",0,C,"validateDirectory",0,G],322429)},561089,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(964759);let o=(0,e.i(25146).createLogger)("tmux"),n=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});let r="string"==typeof e.body?.tabId?e.body.tabId:void 0;if(!r)return t.status(400).json({error:"tabId required"});try{let e=await (0,s.getStatusManager)().recoverUnknownIfPending(r);return t.status(200).json(e)}catch(e){return o.error(`recover-unknown failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"recover-unknown failed"})}};e.s(["default",0,n],353162);var l=e.i(353162),u=e.i(7031),d=e.i(181927),p=e.i(846432);let c=(0,i.hoist)(l,"default"),w=(0,i.hoist)(l,"config"),f=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/tmux/recover-unknown",pathname:"/api/tmux/recover-unknown",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function y(e,r,a){a.requestMeta&&(0,p.setRequestMeta)(e,a.requestMeta),f.isDev&&(0,p.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/tmux/recover-unknown";i=i.replace(/\/index$/,"")||"/";let s=await f.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:o,params:n,prerenderManifest:l,routerServerContext:c}=s;try{let t,a=e.method||"GET",s=(0,u.getTracer)(),p=s.getActiveScopeSpan(),w=!!(null==c?void 0:c.isWrappedByNextServer),y=f.instrumentationOnRequestError.bind(f),g=async u=>f.render(e,r,{query:{...o,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:f.isDev,page:"/api/tmux/recover-unknown",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>y(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=e.get("next.route");if(o){let e=`${a} ${o}`;u.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",o),t.updateName(e))}else u.updateName(`${a} ${i}`)});w&&p?await g(p):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(d.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:u.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},g),void 0,!w))}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,w,"default",0,c,"handler",0,y],561089)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(e=>Promise.resolve().then(()=>e(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0mpstz.._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},175609,(e,t,r)=>{t.exports=e.x("node-pty-592e8dc6192cfd06",()=>require("node-pty-592e8dc6192cfd06"))},971780,e=>{"use strict";var t=e.i(459015);e.i(478319),e.i(220951),e.i(175609),e.i(597789),e.i(965898),new TextEncoder,new TextDecoder,e.i(825265),(0,e.i(25146).createLogger)("terminal"),new TextDecoder;let r=globalThis,s=r.__purplemux_terminal_connections??=new Map;r.__purplemux_terminal_output_ts??=new Map;let a=(e,t,r)=>{for(let a of s.values())if(a.sessionName===e&&!a.cleaned)return void a.pty.resize(t,r)},n=e=>new Promise(t=>setTimeout(t,e)),i=async(e,r,i)=>{let o=(e=>{for(let t of s.values())if(t.sessionName===e&&!t.cleaned)return{cols:t.currentCols,rows:t.currentRows};return null})(e);if(o&&o.cols>50&&o.rows>=i)return(0,t.capturePaneContentWithHistory)(e,50);let u=(e=>{for(let t of s.values())if(t.sessionName===e&&!t.cleaned){if(t.capturePaused)return null;return t.capturePaused=!0,{cols:t.currentCols,rows:t.currentRows}}return null})(e);if(!u)return(0,t.capturePaneContent)(e);try{return a(e,Math.max(o?.cols??0,r),Math.max(o?.rows??0,i)),await n(300),await (0,t.capturePaneContent)(e)}finally{a(e,u.cols,u.rows),await n(300),(e=>{for(let t of s.values())if(t.sessionName===e&&!t.cleaned){if(!t.capturePaused)return;t.capturePaused=!1;return}})(e)}};e.s(["capturePaneAtWidth",0,i],971780)},8372,e=>{"use strict";var t=e.i(926747),r=e.i(190406),s=e.i(244898),a=e.i(262950),n=e.i(459015),i=e.i(971780);let o=(0,e.i(25146).createLogger)("tmux"),u=/^\s*(?:[❯›>]\s+)?(?:\d+\.\s+)?(.+)$/,l=["Yes,","Yes ","No,","No ","Tell Claude"],p=e=>/^\s+\S/.test(e)||/^\s*[❯›>]/.test(e),d=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});let r=e.query.session;if(!r)return t.status(400).json({error:"session parameter required"});if(!await (0,n.hasSession)(r))return t.status(404).json({error:"Session not found"});try{let e=await (0,i.capturePaneAtWidth)(r,120,50);if(!e)return t.status(200).json({options:[]});let s=(e=>{let t=e.split("\n"),r=[],s=!1;for(let e of t){if(!e.trim()||!p(e)){if(s)break;continue}let t=e.match(u);if(!t)continue;let a=t[1].trim();if(s)if(l.some(e=>a.startsWith(e)))r.push(a);else break;else l.some(e=>a.startsWith(e))&&(r.push(a),s=!0)}return r})(e);return t.status(200).json({options:s})}catch(e){return o.error(`plan-options query failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"Terminal capture failed"})}};e.s(["default",0,d],875757);var c=e.i(875757),f=e.i(7031),m=e.i(181927),x=e.i(846432);let h=(0,a.hoist)(c,"default"),v=(0,a.hoist)(c,"config"),w=new s.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/tmux/plan-options",pathname:"/api/tmux/plan-options",bundlePath:"",filename:""},userland:c,distDir:".next",relativeProjectDir:""});async function q(e,r,s){s.requestMeta&&(0,x.setRequestMeta)(e,s.requestMeta),w.isDev&&(0,x.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/tmux/plan-options";a=a.replace(/\/index$/,"")||"/";let n=await w.prepare(e,r,{srcPage:a});if(!n){r.statusCode=400,r.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve());return}let{query:i,params:o,prerenderManifest:u,routerServerContext:l}=n;try{let t,s=e.method||"GET",n=(0,f.getTracer)(),p=n.getActiveScopeSpan(),d=!!(null==l?void 0:l.isWrappedByNextServer),c=w.instrumentationOnRequestError.bind(w),x=async p=>w.render(e,r,{query:{...i,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:u.preview,propagateError:!1,dev:w.isDev,page:"/api/tmux/plan-options",internalRevalidate:null==l?void 0:l.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!p)return;p.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.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 i=e.get("next.route");if(i){let e=`${s} ${i}`;p.setAttributes({"next.route":i,"http.route":i,"next.span_name":e}),p.updateName(e),t&&t!==p&&(t.setAttribute("http.route",i),t.updateName(e))}else p.updateName(`${s} ${a}`)});d&&p?await x(p):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(m.BaseServerSpan.handleRequest,{spanName:`${s} ${a}`,kind:f.SpanKind.SERVER,attributes:{"http.method":s,"http.target":e.url}},x),void 0,!d))}catch(e){if(w.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,v,"default",0,h,"handler",0,q],8372)},981532,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_0kkbnw5._.js"].map(t=>e.l(t))).then(()=>t(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__0oqbs5g._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),n=e.i(666126),l=e.i(825265),u=e.i(804767),d=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",f=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},w=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(w,"workspaces.json"),g=r.default.join(w,"layout.json"),v=r.default.join(w,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let h=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),b=e=>(e.groups||(e.groups=[]),e.groups),I=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},x=async e=>{let r;r=b(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l}=e,u=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,n.broadcastSync)({type:"workspace"})},P=async()=>{let e=await (0,l.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,l.resolveLayoutDir)(r),{recursive:!0}),await (0,l.writeLayoutFile)(e,(0,l.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await x(i),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},S=async()=>{try{let e=await t.default.readFile(v,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await P()}catch{return null}},T=async()=>{await t.default.mkdir(r.default.join(w,"workspaces"),{recursive:!0});let e=await I();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await P():await t.default.access(v).then(()=>!0).catch(()=>!1)&&(e=await S())),!e){let t=k();await x(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,l.resolveLayoutFile)(t.id),r=await (0,l.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,l.createDefaultLayout)(t.id,t.directories[0]),await (0,l.writeLayoutFile)(r,e);continue}let i=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,l.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,l.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},W=async()=>{let e=await I();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},A=async()=>{let e=await I();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},j=async e=>{let t=await I();return t?.workspaces.find(t=>t.id===e)},_=async(e,r,a)=>h(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await I()??k(),n=`ws-${(0,i.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),d=await (0,l.createDefaultLayout)(n,e,a);await t.default.mkdir((0,l.resolveLayoutDir)(n),{recursive:!0}),await (0,l.writeLayoutFile)(d,(0,l.resolveLayoutFile)(n));let w={id:n,name:u,directories:[e]};return o.workspaces.push(w),await x(o),await f(w),p.debug(`Created: ${n} (${u}, ${e})`),w}),q=async e=>h(async()=>{let t=await I()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,l.readLayoutFile)((0,l.resolveLayoutFile)(e));if(i)for(let e of(0,u.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,l.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await x(t),p.info(`Deleted: ${e} (${a.name})`),!0}),$=async(e,t)=>h(async()=>{let r=await I();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await x(r),await f(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),C=async e=>h(async()=>{let t=await I()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await x(t)}),F=async(e,t)=>h(async()=>{let r=await I();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await x(r),await f(a))}),L=async e=>h(async()=>{let t=await I()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await x(t),!0)}),N=async e=>h(async()=>{let t=await I()??k(),r=b(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await x(t),p.debug(`Group created: ${s.id} (${s.name})`),s}),D=async(e,t)=>h(async()=>{let r=await I();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await x(r),{...a}):a}),E=async(e,t)=>h(async()=>{let r=await I();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await x(r),!0))}),B=async e=>h(async()=>{let t=await I();if(!t)return!1;let r=b(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await x(t),p.info(`Group ungrouped: ${e}`),!0}),R=async e=>h(async()=>{let t=await I();if(!t)return!1;let r=b(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await x(t),!0)}),O=async(e,t)=>h(async()=>{let r=await I();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await x(r),!0)}),G=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,N,"createWorkspace",0,_,"deleteWorkspace",0,q,"getActiveWorkspaceId",0,A,"getWorkspaceById",0,j,"getWorkspaces",0,W,"initWorkspaceStore",0,T,"renameGroup",0,D,"renameWorkspace",0,$,"reorderGroups",0,R,"reorderWorkspaces",0,L,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,O,"ungroupGroup",0,B,"updateActive",0,C,"updateWorkspaceDirectories",0,F,"validateDirectory",0,G],322429)},319668,(e,t,r)=>{t.exports=e.x("readline",()=>require("readline"))},853932,e=>{"use strict";var t=e.i(282992);let r={status:"not-running",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},a={status:"not-installed",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},i=async(e,i)=>{let s=(0,t.listProviders)(),o=s.length>0;for(let t of s){let r=await t.detectActiveSession(e,i);if("running"===r.status)return{provider:t,info:r};"not-installed"!==r.status&&(o=!1)}return{provider:null,info:o?a:r}};e.s(["detectAnyActiveSession",0,i])},462180,e=>{"use strict";var t=e.i(798415),r=e.i(751905),a=e.i(282992);e.i(853932),(0,a.registerProvider)(t.claudeProvider),(0,a.registerProvider)(r.codexProvider),e.s([])},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"),o=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var n="string"==typeof i?i:void 0;if(!n)return!1;let l=(()=>{if(o.__ptCliToken)return o.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(s,"utf-8").trim()||null}catch{return null}})();if(e)return o.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");o.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(s),{recursive:!0}),r.default.writeFileSync(s,i,{mode:384})}catch{}return i})();return n.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(n),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},o=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},n=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 o=e.query.tabId,n="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!n)return void t.status(400).json({error:"workspaceId is required"});let l=await s(n,o);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:o,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,s,"resolveFirstPaneId",0,o,"withBrowserTab",0,n],200523)},338823,e=>{"use strict";e.i(462180);var t=e.i(282992);let r=async e=>{let r=(0,t.getProviderByPanelType)(e);if(!r)return{ok:!0,provider:null};let a=await r.preflight();if(a.installed)return{ok:!0,provider:r};let i="claude"===r.id&&!!a.binaryPath;return{ok:!1,status:409,code:i?"agent-path-missing":"agent-not-installed",providerId:r.id,providerDisplayName:r.displayName,panelType:r.panelType,suggestedCommand:i?"claude-path":"claude"===r.id?"claude":null}};e.s(["checkAgentAvailabilityForPanelType",0,r,"toAgentAvailabilityError",0,e=>({error:e.code,providerId:e.providerId,providerDisplayName:e.providerDisplayName,panelType:e.panelType,suggestedCommand:e.suggestedCommand})])},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),o=e.i(825265),n=e.i(804767),l=e.i(322429),u=e.i(200523);e.i(462180);var d=e.i(282992),p=e.i(338823);let c=(0,e.i(25146).createLogger)("api:cli:tabs"),f=["terminal","claude-code","codex-cli","agent-sessions","web-browser","diff"],w=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,o.getLayout)(e);for(let r of(0,n.collectPanes)(t.root))for(let t of r.tabs){let r=(0,d.getProviderByPanelType)(t.panelType);a.push({tabId:t.id,workspaceId:e,name:t.name,sessionName:t.sessionName,panelType:t.panelType,agentProviderId:r?.id??null,agentSessionId:r?.readSessionId(t)??null})}}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 n=await (0,u.resolveFirstPaneId)(r);if(!n)return t.status(500).json({error:"No pane available in workspace"});if(void 0!==i&&!f.includes(i))return t.status(400).json({error:"Invalid panelType",validPanelTypes:f});let d=i||"terminal",w=await (0,p.checkAgentAvailabilityForPanelType)(d);if(!w.ok)return t.status(w.status).json((0,p.toAgentAvailabilityError)(w));try{let e=await (0,o.addTabToPane)(r,n,a,s.directories[0],d);if(!e)return t.status(500).json({error:"Failed to create tab"});return t.status(201).json({tabId:e.id,workspaceId:r,paneId:n,sessionName:e.sessionName,name:e.name,panelType:e.panelType,agentProviderId:null,agentSessionId:null})}catch(r){let e=r instanceof Error?r.message:"unknown error";return c.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,w],902516);var y=e.i(902516),g=e.i(7031),v=e.i(181927),m=e.i(846432);let h=(0,i.hoist)(y,"default"),k=(0,i.hoist)(y,"config"),b=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/index",pathname:"/api/cli/tabs",bundlePath:"",filename:""},userland:y,distDir:".next",relativeProjectDir:""});async function I(e,r,a){a.requestMeta&&(0,m.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,m.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/index";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:o,params:n,prerenderManifest:l,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,g.getTracer)(),d=s.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=b.instrumentationOnRequestError.bind(b),f=async d=>b.render(e,r,{query:{...o,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:b.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")!==v.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} ${i}`)});p&&d?await f(d):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(v.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:g.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},f),void 0,!p))}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,k,"default",0,h,"handler",0,I],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__0pta11j._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),n=e.i(666126),l=e.i(825265),d=e.i(804767),u=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",w=async e=>{let t=[];for(let r of(0,u.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},f=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(f,"workspaces.json"),g=r.default.join(f,"layout.json"),m=r.default.join(f,"tabs.json"),v=globalThis;v.__purplemuxWorkspaceLock||(v.__purplemuxWorkspaceLock=Promise.resolve());let h=async e=>{let t,r=new Promise(e=>{t=e}),a=v.__purplemuxWorkspaceLock;v.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),b=e=>(e.groups||(e.groups=[]),e.groups),x=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},I=async e=>{let r;r=b(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l}=e,d=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l});if(v.__purplemuxWorkspacesContentCache===d)return;e.updatedAt=new Date().toISOString();let u=y+".tmp";try{await t.default.writeFile(u,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(u,y)}catch(e){throw await t.default.unlink(u).catch(()=>{}),e}v.__purplemuxWorkspacesContentCache=d,(0,n.broadcastSync)({type:"workspace"})},P=async()=>{let e=await (0,l.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,l.resolveLayoutDir)(r),{recursive:!0}),await (0,l.writeLayoutFile)(e,(0,l.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await I(i),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},S=async()=>{try{let e=await t.default.readFile(m,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await P()}catch{return null}},A=async()=>{await t.default.mkdir(r.default.join(f,"workspaces"),{recursive:!0});let e=await x();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await P():await t.default.access(m).then(()=>!0).catch(()=>!1)&&(e=await S())),!e){let t=k();await I(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,l.resolveLayoutFile)(t.id),r=await (0,l.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,l.createDefaultLayout)(t.id,t.directories[0]),await (0,l.writeLayoutFile)(r,e);continue}let i=(0,d.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,l.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,l.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},W=async()=>{let e=await x();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},T=async()=>{let e=await x();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},$=async e=>{let t=await x();return t?.workspaces.find(t=>t.id===e)},j=async(e,r,a)=>h(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await x()??k(),n=`ws-${(0,i.nanoid)(6)}`,d=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),u=await (0,l.createDefaultLayout)(n,e,a);await t.default.mkdir((0,l.resolveLayoutDir)(n),{recursive:!0}),await (0,l.writeLayoutFile)(u,(0,l.resolveLayoutFile)(n));let f={id:n,name:d,directories:[e]};return o.workspaces.push(f),await I(o),await w(f),p.debug(`Created: ${n} (${d}, ${e})`),f}),L=async e=>h(async()=>{let t=await x()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,l.readLayoutFile)((0,l.resolveLayoutFile)(e));if(i)for(let e of(0,d.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,l.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await I(t),p.info(`Deleted: ${e} (${a.name})`),!0}),D=async(e,t)=>h(async()=>{let r=await x();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await I(r),await w(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),N=async e=>h(async()=>{let t=await x()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await I(t)}),q=async(e,t)=>h(async()=>{let r=await x();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await I(r),await w(a))}),_=async e=>h(async()=>{let t=await x()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await I(t),!0)}),C=async e=>h(async()=>{let t=await x()??k(),r=b(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await I(t),p.debug(`Group created: ${s.id} (${s.name})`),s}),F=async(e,t)=>h(async()=>{let r=await x();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await I(r),{...a}):a}),E=async(e,t)=>h(async()=>{let r=await x();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await I(r),!0))}),R=async e=>h(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await I(t),p.info(`Group ungrouped: ${e}`),!0}),O=async e=>h(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await I(t),!0)}),G=async(e,t)=>h(async()=>{let r=await x();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await I(r),!0)}),M=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,C,"createWorkspace",0,j,"deleteWorkspace",0,L,"getActiveWorkspaceId",0,T,"getWorkspaceById",0,$,"getWorkspaces",0,W,"initWorkspaceStore",0,A,"renameGroup",0,F,"renameWorkspace",0,D,"reorderGroups",0,O,"reorderWorkspaces",0,_,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,G,"ungroupGroup",0,R,"updateActive",0,N,"updateWorkspaceDirectories",0,q,"validateDirectory",0,M],322429)},319668,(e,t,r)=>{t.exports=e.x("readline",()=>require("readline"))},853932,e=>{"use strict";var t=e.i(282992);let r={status:"not-running",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},a={status:"not-installed",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},i=async(e,i)=>{let s=(0,t.listProviders)(),o=s.length>0;for(let t of s){let r=await t.detectActiveSession(e,i);if("running"===r.status)return{provider:t,info:r};"not-installed"!==r.status&&(o=!1)}return{provider:null,info:o?a:r}};e.s(["detectAnyActiveSession",0,i])},462180,e=>{"use strict";var t=e.i(798415),r=e.i(751905),a=e.i(282992);e.i(853932),(0,a.registerProvider)(t.claudeProvider),(0,a.registerProvider)(r.codexProvider),e.s([])},338823,e=>{"use strict";e.i(462180);var t=e.i(282992);let r=async e=>{let r=(0,t.getProviderByPanelType)(e);if(!r)return{ok:!0,provider:null};let a=await r.preflight();if(a.installed)return{ok:!0,provider:r};let i="claude"===r.id&&!!a.binaryPath;return{ok:!1,status:409,code:i?"agent-path-missing":"agent-not-installed",providerId:r.id,providerDisplayName:r.displayName,panelType:r.panelType,suggestedCommand:i?"claude-path":"claude"===r.id?"claude":null}};e.s(["checkAgentAvailabilityForPanelType",0,r,"toAgentAvailabilityError",0,e=>({error:e.code,providerId:e.providerId,providerDisplayName:e.providerDisplayName,panelType:e.panelType,suggestedCommand:e.suggestedCommand})])},997054,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(446786),o=e.i(322429),n=e.i(825265),l=e.i(804767);e.i(462180);var d=e.i(282992),u=e.i(338823),p=e.i(459015),c=e.i(964759);let w=(0,e.i(25146).createLogger)("workspace-api"),f=async(e,t)=>{if("GET"===e.method){let e=await (0,o.getWorkspaces)();return t.status(200).json(e)}if("POST"===e.method){let{directory:r,name:a,resumeSessionId:i,panelType:f}=e.body??{},y=i?(0,d.getProviderByPanelType)(f??"claude-code"):null;if(i){if(!y)return t.status(400).json({error:"Unknown panel type for resume"});if(!y.isValidSessionId(i))return t.status(400).json({error:"Invalid session ID format"});let e=await (0,u.checkAgentAvailabilityForPanelType)(y.panelType);if(!e.ok)return t.status(e.status).json((0,u.toAgentAvailabilityError)(e))}let g=r&&"string"==typeof r?r:s.default.homedir();try{let e=y?{panelType:y.panelType}:void 0,r=await (0,o.createWorkspace)(g,a,e),s=await (0,n.readLayoutFile)((0,n.resolveLayoutFile)(r.id)),u=s?(0,l.collectAllTabs)(s.root)[0]:null;if(i&&y&&u&&(y.writeSessionId(u,i),await (0,n.updateTabAgentSessionId)(u.sessionName,y,i)),u&&"web-browser"!==u.panelType){let e=(0,d.getProviderByPanelType)(u.panelType);(0,c.getStatusManager)().registerTab(u.id,{cliState:"inactive",workspaceId:r.id,tabName:u.name,tmuxSession:u.sessionName,panelType:u.panelType,agentProviderId:e?.id,agentSessionId:e?.readSessionId(u)??null,lastEvent:null,eventSeq:0})}return i&&y&&u&&setTimeout(async()=>{try{let e=await y.buildResumeCommand(i,{workspaceId:r.id});await (0,p.sendKeys)(u.sessionName,e),(0,c.getStatusManager)().markAgentLaunch(u.id)}catch(e){w.warn(`resume sendKeys failed: ${e instanceof Error?e.message:e}`)}},500),t.status(200).json(r)}catch(a){let e=a instanceof Error?a.message:"Unknown error",r=["not exist","directory","registered"].some(t=>e.includes(t));return t.status(r?400:500).json({error:e})}}return t.setHeader("Allow","GET, POST"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,f],401508);var y=e.i(401508),g=e.i(7031),m=e.i(181927),v=e.i(846432);let h=(0,i.hoist)(y,"default"),k=(0,i.hoist)(y,"config"),b=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/workspace/index",pathname:"/api/workspace",bundlePath:"",filename:""},userland:y,distDir:".next",relativeProjectDir:""});async function x(e,r,a){a.requestMeta&&(0,v.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,v.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/workspace/index";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:o,params:n,prerenderManifest:l,routerServerContext:d}=s;try{let t,a=e.method||"GET",s=(0,g.getTracer)(),u=s.getActiveScopeSpan(),p=!!(null==d?void 0:d.isWrappedByNextServer),c=b.instrumentationOnRequestError.bind(b),w=async u=>b.render(e,r,{query:{...o,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:b.isDev,page:"/api/workspace/index",internalRevalidate:null==d?void 0:d.revalidate,onError:(...t)=>c(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==m.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=e.get("next.route");if(o){let e=`${a} ${o}`;u.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",o),t.updateName(e))}else u.updateName(`${a} ${i}`)});p&&u?await w(u):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(m.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:g.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},w),void 0,!p))}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,k,"default",0,h,"handler",0,x],997054)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(e=>Promise.resolve().then(()=>e(785128)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0q0laz1._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[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"))},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"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let o=r.default.join(i.default.homedir(),".purplemux","logs"),s=process.env.LOG_LEVEL||"info",a=(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),n=["trace","debug","info","warn","error","fatal"],l=globalThis;if(!l.__ptRootLogger){let e=[s,...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]??s,t}])},818794,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),o=e.i(262950),s=e.i(845994),a=e.i(772601);let n={count:0,firstAt:0},l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});if(0!==n.count&&(Date.now()-n.firstAt>9e5?(n={count:0,firstAt:0},!1):n.count>=16))return t.status(429).json({error:"Too many login attempts. Please try again later."});let{password:r}=e.body??{},i=process.env.AUTH_PASSWORD;if(!r||!i||!await (0,s.verifyPassword)(r,i))return 0===n.count||Date.now()-n.firstAt>9e5?n={count:1,firstAt:Date.now()}:n.count++,t.status(401).json({error:"Invalid password."});n={count:0,firstAt:0};let o=await (0,a.signSessionToken)(),l=(0,a.isSecureRequest)(e);return t.setHeader("Set-Cookie",(0,a.buildCookieHeader)(o,l)),t.status(200).json({ok:!0})};e.s(["default",0,l],328912);var u=e.i(328912),p=e.i(7031),d=e.i(181927),x=e.i(846432);let c=(0,o.hoist)(u,"default"),f=(0,o.hoist)(u,"config"),m=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/auth/login",pathname:"/api/auth/login",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function g(e,r,i){i.requestMeta&&(0,x.setRequestMeta)(e,i.requestMeta),m.isDev&&(0,x.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let o="/api/auth/login";o=o.replace(/\/index$/,"")||"/";let s=await m.prepare(e,r,{srcPage:o});if(!s){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:a,params:n,prerenderManifest:l,routerServerContext:u}=s;try{let t,i=e.method||"GET",s=(0,p.getTracer)(),x=s.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),f=m.instrumentationOnRequestError.bind(m),g=async p=>m.render(e,r,{query:{...a,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:m.isDev,page:"/api/auth/login",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!p)return;p.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=s.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 a=e.get("next.route");if(a){let e=`${i} ${a}`;p.setAttributes({"next.route":a,"http.route":a,"next.span_name":e}),p.updateName(e),t&&t!==p&&(t.setAttribute("http.route",a),t.updateName(e))}else p.updateName(`${i} ${o}`)});c&&x?await g(x):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(d.BaseServerSpan.handleRequest,{spanName:`${i} ${o}`,kind:p.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},g),void 0,!c))}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,f,"default",0,c,"handler",0,g],818794)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0qpwsk~._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},319668,(e,t,r)=>{t.exports=e.x("readline",()=>require("readline"))},990294,(e,t,r)=>{e.e,t.exports=function(){"use strict";var e="millisecond",t="second",r="minute",n="hour",s="week",i="month",a="quarter",u="year",o="date",c="Invalid Date",d=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,l=/\[([^\]]+)]|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 n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(r)+e},f="en",p={};p[f]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}};var $="$isDayjsObject",v=function(e){return e instanceof M||!(!e||!e[$])},m=function e(t,r,n){var s;if(!t)return f;if("string"==typeof t){var i=t.toLowerCase();p[i]&&(s=i),r&&(p[i]=r,s=i);var a=t.split("-");if(!s&&a.length>1)return e(a[0])}else{var u=t.name;p[u]=t,s=u}return!n&&s&&(f=s),s||!n&&f},y=function(e,t){if(v(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new M(r)},g={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 n=12*(r.year()-t.year())+(r.month()-t.month()),s=t.clone().add(n,i),a=r-s<0,u=t.clone().add(n+(a?-1:1),i);return+(-(n+(r-s)/(a?s-u:u-s))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:i,y:u,w:s,d:"day",D:o,h:n,m:r,s:t,ms:e,Q:a})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};g.l=m,g.i=v,g.w=function(e,t){return y(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var M=function(){function h(e){this.$L=m(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[$]=!0}var f=h.prototype;return f.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(g.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(d);if(n){var s=n[2]-1||0,i=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],s,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)):new Date(n[1],s,n[3]||1,n[4]||0,n[5]||0,n[6]||0,i)}}return new Date(t)}(e),this.init()},f.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},f.$utils=function(){return g},f.isValid=function(){return this.$d.toString()!==c},f.isSame=function(e,t){var r=y(e);return this.startOf(t)<=r&&r<=this.endOf(t)},f.isAfter=function(e,t){return y(e)<this.startOf(t)},f.isBefore=function(e,t){return this.endOf(t)<y(e)},f.$g=function(e,t,r){return g.u(e)?this[t]:this.set(r,e)},f.unix=function(){return Math.floor(this.valueOf()/1e3)},f.valueOf=function(){return this.$d.getTime()},f.startOf=function(e,a){var c=this,d=!!g.u(a)||a,l=g.p(e),h=function(e,t){var r=g.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return d?r:r.endOf("day")},f=function(e,t){return g.w(c.toDate()[e].apply(c.toDate("s"),(d?[0,0,0,0]:[23,59,59,999]).slice(t)),c)},p=this.$W,$=this.$M,v=this.$D,m="set"+(this.$u?"UTC":"");switch(l){case u:return d?h(1,0):h(31,11);case i:return d?h(1,$):h(0,$+1);case s:var y=this.$locale().weekStart||0,M=(p<y?p+7:p)-y;return h(d?v-M:v+(6-M),$);case"day":case o:return f(m+"Hours",0);case n:return f(m+"Minutes",1);case r:return f(m+"Seconds",2);case t:return f(m+"Milliseconds",3);default:return this.clone()}},f.endOf=function(e){return this.startOf(e,!1)},f.$set=function(s,a){var c,d=g.p(s),l="set"+(this.$u?"UTC":""),h=((c={}).day=l+"Date",c[o]=l+"Date",c[i]=l+"Month",c[u]=l+"FullYear",c[n]=l+"Hours",c[r]=l+"Minutes",c[t]=l+"Seconds",c[e]=l+"Milliseconds",c)[d],f="day"===d?this.$D+(a-this.$W):a;if(d===i||d===u){var p=this.clone().set(o,1);p.$d[h](f),p.init(),this.$d=p.set(o,Math.min(this.$D,p.daysInMonth())).$d}else h&&this.$d[h](f);return this.init(),this},f.set=function(e,t){return this.clone().$set(e,t)},f.get=function(e){return this[g.p(e)]()},f.add=function(e,a){var o,c=this;e=Number(e);var d=g.p(a),l=function(t){var r=y(c);return g.w(r.date(r.date()+Math.round(t*e)),c)};if(d===i)return this.set(i,this.$M+e);if(d===u)return this.set(u,this.$y+e);if("day"===d)return l(1);if(d===s)return l(7);var h=((o={})[r]=6e4,o[n]=36e5,o[t]=1e3,o)[d]||1,f=this.$d.getTime()+e*h;return g.w(f,this)},f.subtract=function(e,t){return this.add(-1*e,t)},f.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||c;var n=e||"YYYY-MM-DDTHH:mm:ssZ",s=g.z(this),i=this.$H,a=this.$m,u=this.$M,o=r.weekdays,d=r.months,h=r.meridiem,f=function(e,r,s,i){return e&&(e[r]||e(t,n))||s[r].slice(0,i)},p=function(e){return g.s(i%12||12,e,"0")},$=h||function(e,t,r){var n=e<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(l,function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return g.s(t.$y,4,"0");case"M":return u+1;case"MM":return g.s(u+1,2,"0");case"MMM":return f(r.monthsShort,u,d,3);case"MMMM":return f(d,u);case"D":return t.$D;case"DD":return g.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return f(r.weekdaysMin,t.$W,o,2);case"ddd":return f(r.weekdaysShort,t.$W,o,3);case"dddd":return o[t.$W];case"H":return String(i);case"HH":return g.s(i,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return $(i,a,!0);case"A":return $(i,a,!1);case"m":return String(a);case"mm":return g.s(a,2,"0");case"s":return String(t.$s);case"ss":return g.s(t.$s,2,"0");case"SSS":return g.s(t.$ms,3,"0");case"Z":return s}return null}(e)||s.replace(":","")})},f.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},f.diff=function(e,o,c){var d,l=this,h=g.p(o),f=y(e),p=(f.utcOffset()-this.utcOffset())*6e4,$=this-f,v=function(){return g.m(l,f)};switch(h){case u:d=v()/12;break;case i:d=v();break;case a:d=v()/3;break;case s:d=($-p)/6048e5;break;case"day":d=($-p)/864e5;break;case n:d=$/36e5;break;case r:d=$/6e4;break;case t:d=$/1e3;break;default:d=$}return c?d:g.a(d)},f.daysInMonth=function(){return this.endOf(i).$D},f.$locale=function(){return p[this.$L]},f.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),n=m(e,t,!0);return n&&(r.$L=n),r},f.clone=function(){return g.w(this.$d,this)},f.toDate=function(){return new Date(this.valueOf())},f.toJSON=function(){return this.isValid()?this.toISOString():null},f.toISOString=function(){return this.$d.toISOString()},f.toString=function(){return this.$d.toUTCString()},h}(),x=M.prototype;return y.prototype=x,[["$ms",e],["$s",t],["$m",r],["$H",n],["$W","day"],["$M",i],["$y",u],["$D",o]].forEach(function(e){x[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),y.extend=function(e,t){return e.$i||(e(t,M,y),e.$i=!0),y},y.locale=m,y.isDayjs=v,y.unix=function(e){return y(1e3*e)},y.en=p[f],y.Ls=p,y.p={},y}()},843866,e=>{"use strict";var t=e.i(926747),r=e.i(190406),n=e.i(244898),s=e.i(262950),i=e.i(7991);let a=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"method-not-allowed"});let{date:r,force:n,locale:s,provider:a}=e.body;if(!r||!/^\d{4}-\d{2}-\d{2}$/.test(r))return t.status(400).json({error:"invalid-date",message:"date must be YYYY-MM-DD"});if(void 0!==a&&"claude"!==a&&"codex"!==a)return t.status(400).json({error:"invalid-provider",message:"provider must be claude or codex"});let u="string"==typeof s&&s.trim()?s:"en";try{let e=await (0,i.generateDailyReport)(r,!!n,u,a);return t.status(200).json(e)}catch(r){let e=r instanceof Error?r.message:"unknown error";return t.status(500).json({error:"generation-failed",message:e})}};e.s(["default",0,a],806436);var u=e.i(806436),o=e.i(7031),c=e.i(181927),d=e.i(846432);let l=(0,s.hoist)(u,"default"),h=(0,s.hoist)(u,"config"),f=new n.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/stats/daily-report/generate",pathname:"/api/stats/daily-report/generate",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function p(e,r,n){n.requestMeta&&(0,d.setRequestMeta)(e,n.requestMeta),f.isDev&&(0,d.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/stats/daily-report/generate";s=s.replace(/\/index$/,"")||"/";let i=await f.prepare(e,r,{srcPage:s});if(!i){r.statusCode=400,r.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve());return}let{query:a,params:u,prerenderManifest:l,routerServerContext:h}=i;try{let t,n=e.method||"GET",i=(0,o.getTracer)(),d=i.getActiveScopeSpan(),p=!!(null==h?void 0:h.isWrappedByNextServer),$=f.instrumentationOnRequestError.bind(f),v=async o=>f.render(e,r,{query:{...a,...u},params:u,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:f.isDev,page:"/api/stats/daily-report/generate",internalRevalidate:null==h?void 0:h.revalidate,onError:(...t)=>$(e,...t)}).finally(()=>{if(!o)return;o.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==c.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=`${n} ${a}`;o.setAttributes({"next.route":a,"http.route":a,"next.span_name":e}),o.updateName(e),t&&t!==o&&(t.setAttribute("http.route",a),t.updateName(e))}else o.updateName(`${n} ${s}`)});p&&d?await v(d):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(c.BaseServerSpan.handleRequest,{spanName:`${n} ${s}`,kind:o.SpanKind.SERVER,attributes:{"http.method":n,"http.target":e.url}},v),void 0,!p))}catch(e){if(f.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==n.waitUntil||n.waitUntil.call(n,Promise.resolve())}}e.s(["config",0,h,"default",0,l,"handler",0,p],843866)},981532,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_0kkbnw5._.js"].map(t=>e.l(t))).then(()=>t(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__0sgq23a._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),l=e.i(666126),n=e.i(825265),u=e.i(804767),d=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",w=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},f=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(f,"workspaces.json"),g=r.default.join(f,"layout.json"),h=r.default.join(f,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let k=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},v=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),b=e=>(e.groups||(e.groups=[]),e.groups),x=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},I=async e=>{let r;r=b(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:n}=e,u=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:n});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,l.broadcastSync)({type:"workspace"})},W=async()=>{let e=await (0,n.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,n.resolveLayoutDir)(r),{recursive:!0}),await (0,n.writeLayoutFile)(e,(0,n.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await I(i),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},S=async()=>{try{let e=await t.default.readFile(h,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await W()}catch{return null}},P=async()=>{await t.default.mkdir(r.default.join(f,"workspaces"),{recursive:!0});let e=await x();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await W():await t.default.access(h).then(()=>!0).catch(()=>!1)&&(e=await S())),!e){let t=v();await I(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,n.resolveLayoutFile)(t.id),r=await (0,n.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,n.createDefaultLayout)(t.id,t.directories[0]),await (0,n.writeLayoutFile)(r,e);continue}let i=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,n.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,n.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},A=async()=>{let e=await x();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},$=async()=>{let e=await x();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},_=async e=>{let t=await x();return t?.workspaces.find(t=>t.id===e)},j=async(e,r,a)=>k(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await x()??v(),l=`ws-${(0,i.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),d=await (0,n.createDefaultLayout)(l,e,a);await t.default.mkdir((0,n.resolveLayoutDir)(l),{recursive:!0}),await (0,n.writeLayoutFile)(d,(0,n.resolveLayoutFile)(l));let f={id:l,name:u,directories:[e]};return o.workspaces.push(f),await I(o),await w(f),p.debug(`Created: ${l} (${u}, ${e})`),f}),q=async e=>k(async()=>{let t=await x()??v(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,n.readLayoutFile)((0,n.resolveLayoutFile)(e));if(i)for(let e of(0,u.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,n.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await I(t),p.info(`Deleted: ${e} (${a.name})`),!0}),L=async(e,t)=>k(async()=>{let r=await x();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await I(r),await w(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),D=async e=>k(async()=>{let t=await x()??v();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await I(t)}),C=async(e,t)=>k(async()=>{let r=await x();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await I(r),await w(a))}),F=async e=>k(async()=>{let t=await x()??v(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await I(t),!0)}),N=async e=>k(async()=>{let t=await x()??v(),r=b(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await I(t),p.debug(`Group created: ${s.id} (${s.name})`),s}),R=async(e,t)=>k(async()=>{let r=await x();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await I(r),{...a}):a}),E=async(e,t)=>k(async()=>{let r=await x();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await I(r),!0))}),T=async e=>k(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await I(t),p.info(`Group ungrouped: ${e}`),!0}),O=async e=>k(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await I(t),!0)}),G=async(e,t)=>k(async()=>{let r=await x();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await I(r),!0)}),M=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,N,"createWorkspace",0,j,"deleteWorkspace",0,q,"getActiveWorkspaceId",0,$,"getWorkspaceById",0,_,"getWorkspaces",0,A,"initWorkspaceStore",0,P,"renameGroup",0,R,"renameWorkspace",0,L,"reorderGroups",0,O,"reorderWorkspaces",0,F,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,G,"ungroupGroup",0,T,"updateActive",0,D,"updateWorkspaceDirectories",0,C,"validateDirectory",0,M],322429)},697275,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(322429);let o=async(e,t)=>{if("PATCH"!==e.method)return t.setHeader("Allow","PATCH"),t.status(405).json({error:"Method not allowed"});let r=e.body??{},a=null;return(Array.isArray(r.items)&&r.items.length>0?a=r.items.map(e=>({id:String(e.id),groupId:null===e.groupId?null:"string"==typeof e.groupId?e.groupId:void 0})):Array.isArray(r.workspaceIds)&&r.workspaceIds.length>0&&(a=r.workspaceIds.map(e=>({id:String(e)}))),a)?await (0,s.reorderWorkspaces)(a)?t.status(200).json({ok:!0}):t.status(400).json({error:"Invalid order"}):t.status(400).json({error:"items array required"})};e.s(["default",0,o],658981);var l=e.i(658981),n=e.i(7031),u=e.i(181927),d=e.i(846432);let p=(0,i.hoist)(l,"default"),c=(0,i.hoist)(l,"config"),w=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/workspace/reorder",pathname:"/api/workspace/reorder",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function f(e,r,a){a.requestMeta&&(0,d.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,d.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/workspace/reorder";i=i.replace(/\/index$/,"")||"/";let s=await w.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:o,params:l,prerenderManifest:p,routerServerContext:c}=s;try{let t,a=e.method||"GET",s=(0,n.getTracer)(),d=s.getActiveScopeSpan(),f=!!(null==c?void 0:c.isWrappedByNextServer),y=w.instrumentationOnRequestError.bind(w),g=async n=>w.render(e,r,{query:{...o,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:p.preview,propagateError:!1,dev:w.isDev,page:"/api/workspace/reorder",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>y(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")!==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 o=e.get("next.route");if(o){let e=`${a} ${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(`${a} ${i}`)});f&&d?await g(d):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(u.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:n.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},g),void 0,!f))}catch(e){if(w.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,f],697275)},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__0sisigk._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),l=e.i(666126),n=e.i(825265),u=e.i(804767),d=e.i(282992);let c=(0,o.createLogger)("workspace"),p="Workspace ",f=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},w=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(w,"workspaces.json"),g=r.default.join(w,"layout.json"),h=r.default.join(w,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let v=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),b=e=>(e.groups||(e.groups=[]),e.groups),x=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{c.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},I=async e=>{let r;r=b(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:n}=e,u=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:n});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,l.broadcastSync)({type:"workspace"})},S=async()=>{let e=await (0,n.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,n.resolveLayoutDir)(r),{recursive:!0}),await (0,n.writeLayoutFile)(e,(0,n.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await I(i),c.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},W=async()=>{try{let e=await t.default.readFile(h,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return c.info("tabs.json → layout.json migration complete"),await S()}catch{return null}},_=async()=>{await t.default.mkdir(r.default.join(w,"workspaces"),{recursive:!0});let e=await x();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await S():await t.default.access(h).then(()=>!0).catch(()=>!1)&&(e=await W())),!e){let t=k();await I(t),e=t,c.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,n.resolveLayoutFile)(t.id),r=await (0,n.readLayoutFile)(e);if(!r){c.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,n.createDefaultLayout)(t.id,t.directories[0]),await (0,n.writeLayoutFile)(r,e);continue}let i=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,n.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,n.writeLayoutFile)(r,e)}catch(e){c.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},P=async()=>{let e=await x();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},j=async()=>{let e=await x();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},q=async e=>{let t=await x();return t?.workspaces.find(t=>t.id===e)},$=async(e,r,a)=>v(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await x()??k(),l=`ws-${(0,i.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(p)){let e=parseInt(r.name.slice(p.length),10);e>t&&(t=e)}return`${p}${t+1}`})(o.workspaces),d=await (0,n.createDefaultLayout)(l,e,a);await t.default.mkdir((0,n.resolveLayoutDir)(l),{recursive:!0}),await (0,n.writeLayoutFile)(d,(0,n.resolveLayoutFile)(l));let w={id:l,name:u,directories:[e]};return o.workspaces.push(w),await I(o),await f(w),c.debug(`Created: ${l} (${u}, ${e})`),w}),A=async e=>v(async()=>{let t=await x()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,n.readLayoutFile)((0,n.resolveLayoutFile)(e));if(i)for(let e of(0,u.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,n.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await I(t),c.info(`Deleted: ${e} (${a.name})`),!0}),T=async(e,t)=>v(async()=>{let r=await x();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await I(r),await f(a),c.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),C=async e=>v(async()=>{let t=await x()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await I(t)}),L=async(e,t)=>v(async()=>{let r=await x();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await I(r),await f(a))}),F=async e=>v(async()=>{let t=await x()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await I(t),!0)}),D=async e=>v(async()=>{let t=await x()??k(),r=b(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await I(t),c.debug(`Group created: ${s.id} (${s.name})`),s}),B=async(e,t)=>v(async()=>{let r=await x();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await I(r),{...a}):a}),E=async(e,t)=>v(async()=>{let r=await x();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await I(r),!0))}),N=async e=>v(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await I(t),c.info(`Group ungrouped: ${e}`),!0}),R=async e=>v(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await I(t),!0)}),G=async(e,t)=>v(async()=>{let r=await x();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await I(r),!0)}),O=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,D,"createWorkspace",0,$,"deleteWorkspace",0,A,"getActiveWorkspaceId",0,j,"getWorkspaceById",0,q,"getWorkspaces",0,P,"initWorkspaceStore",0,_,"renameGroup",0,B,"renameWorkspace",0,T,"reorderGroups",0,R,"reorderWorkspaces",0,F,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,G,"ungroupGroup",0,N,"updateActive",0,C,"updateWorkspaceDirectories",0,L,"validateDirectory",0,O],322429)},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"),o=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var l="string"==typeof i?i:void 0;if(!l)return!1;let n=(()=>{if(o.__ptCliToken)return o.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(s,"utf-8").trim()||null}catch{return null}})();if(e)return o.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");o.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(s),{recursive:!0}),r.default.writeFileSync(s,i,{mode:384})}catch{}return i})();return l.length===n.length&&(0,t.timingSafeEqual)(Buffer.from(l),Buffer.from(n))}])},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},o=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},l=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 o=e.query.tabId,l="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!l)return void t.status(400).json({error:"workspaceId is required"});let n=await s(l,o);if(!n)return void t.status(404).json({error:"Tab not found"});if("web-browser"!==n.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:o,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,s,"resolveFirstPaneId",0,o,"withBrowserTab",0,l],200523)},513092,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(200523);let o=async(e,t)=>{await (0,s.withBrowserTab)(e,t,"GET",async({tabId:r,bridge:a})=>{let i="1"===e.query.full||"true"===e.query.full,s="base64"===e.query.format?"base64":"png";try{let e=await a.capture(r,{fullPage:i});if("base64"===s)return void t.status(200).json({tabId:r,format:"png",base64:e});let o=Buffer.from(e,"base64");t.setHeader("Content-Type","image/png"),t.setHeader("Content-Length",String(o.byteLength)),t.status(200).end(o)}catch(r){let e=r instanceof Error?r.message:"capture failed";t.status(409).json({error:e})}})};e.s(["default",0,o],821755);var l=e.i(821755),n=e.i(7031),u=e.i(181927),d=e.i(846432);let c=(0,i.hoist)(l,"default"),p=(0,i.hoist)(l,"config"),f=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/browser/screenshot",pathname:"/api/cli/tabs/[tabId]/browser/screenshot",bundlePath:"",filename:""},userland:l,distDir:".next",relativeProjectDir:""});async function w(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/screenshot";i=i.replace(/\/index$/,"")||"/";let s=await f.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:o,params:l,prerenderManifest:c,routerServerContext:p}=s;try{let t,a=e.method||"GET",s=(0,n.getTracer)(),d=s.getActiveScopeSpan(),w=!!(null==p?void 0:p.isWrappedByNextServer),y=f.instrumentationOnRequestError.bind(f),g=async n=>f.render(e,r,{query:{...o,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:c.preview,propagateError:!1,dev:f.isDev,page:"/api/cli/tabs/[tabId]/browser/screenshot",internalRevalidate:null==p?void 0:p.revalidate,onError:(...t)=>y(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")!==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 o=e.get("next.route");if(o){let e=`${a} ${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(`${a} ${i}`)});w&&d?await g(d):(t=s.getActiveScopeSpan(),await s.withPropagatedContext(e.headers,()=>s.trace(u.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:n.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},g),void 0,!w))}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,p,"default",0,c,"handler",0,w],513092)},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__0t27n38._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[319668,(e,t,s)=>{t.exports=e.x("readline",()=>require("readline"))},853932,e=>{"use strict";var t=e.i(282992);let s={status:"not-running",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},n={status:"not-installed",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},i=async(e,i)=>{let r=(0,t.listProviders)(),a=r.length>0;for(let t of r){let s=await t.detectActiveSession(e,i);if("running"===s.status)return{provider:t,info:s};"not-installed"!==s.status&&(a=!1)}return{provider:null,info:a?n:s}};e.s(["detectAnyActiveSession",0,i])},75874,e=>{"use strict";var t=e.i(924868),s=e.i(814747),n=e.i(446786);let i=s.default.join(n.default.homedir(),".purplemux"),r=s.default.join(i,"push-subscriptions.json"),a=globalThis;a.__ptPushLock||(a.__ptPushLock=Promise.resolve());let l=async e=>{let t,s=new Promise(e=>{t=e}),n=a.__ptPushLock;a.__ptPushLock=s,await n;try{return await e()}finally{t()}},u=async()=>{try{let e=await t.default.readFile(r,"utf-8");return JSON.parse(e)}catch{return[]}},o=async e=>{await t.default.mkdir(i,{recursive:!0});let s=r+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,r)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}},c=async()=>u(),d=async e=>l(async()=>{let t=await u(),s=t.findIndex(t=>t.endpoint===e.endpoint);s>=0?t[s]=e:t.push(e),await o(t)}),f=async e=>l(async()=>{let t=await u(),s=t.filter(t=>t.endpoint!==e);s.length!==t.length&&await o(s)}),p=globalThis;p.__ptVisibleDevices||(p.__ptVisibleDevices=new Map);let h=p.__ptVisibleDevices,m=globalThis;m.__ptSessionPushTarget||(m.__ptSessionPushTarget=new Map);let w=m.__ptSessionPushTarget;e.s(["addSubscription",0,d,"clearSessionPushTarget",0,e=>{w.delete(e)},"getSubscriptions",0,c,"isAnyDeviceVisible",0,()=>{let e=Date.now();for(let[t,s]of h)if(!(e-s>6e4))return!0;else h.delete(t);return!1},"markDeviceHidden",0,e=>{h.delete(e)},"markDeviceVisible",0,e=>{h.set(e,Date.now())},"removeSubscription",0,f,"setSessionPushTarget",0,(e,t)=>{w.set(e,t)}])},175609,(e,t,s)=>{t.exports=e.x("node-pty-592e8dc6192cfd06",()=>require("node-pty-592e8dc6192cfd06"))},971780,e=>{"use strict";var t=e.i(459015);e.i(478319),e.i(220951),e.i(175609),e.i(597789),e.i(965898),new TextEncoder,new TextDecoder,e.i(825265),(0,e.i(25146).createLogger)("terminal"),new TextDecoder;let s=globalThis,n=s.__purplemux_terminal_connections??=new Map;s.__purplemux_terminal_output_ts??=new Map;let i=(e,t,s)=>{for(let i of n.values())if(i.sessionName===e&&!i.cleaned)return void i.pty.resize(t,s)},r=e=>new Promise(t=>setTimeout(t,e)),a=async(e,s,a)=>{let l=(e=>{for(let t of n.values())if(t.sessionName===e&&!t.cleaned)return{cols:t.currentCols,rows:t.currentRows};return null})(e);if(l&&l.cols>50)return(0,t.capturePaneContentWithHistory)(e,50);let u=(e=>{for(let t of n.values())if(t.sessionName===e&&!t.cleaned){if(t.capturePaused)return null;return t.capturePaused=!0,{cols:t.currentCols,rows:t.currentRows}}return null})(e);if(!u)return(0,t.capturePaneContent)(e);try{i(e,s,a),await r(300);let n=await (0,t.capturePaneContent)(e);return i(e,u.cols,u.rows),await r(300),n}finally{(e=>{for(let t of n.values())if(t.sessionName===e&&!t.cleaned){if(!t.capturePaused)return;t.capturePaused=!1;return}})(e)}};e.s(["capturePaneAtWidth",0,a],971780)},443571,e=>{"use strict";let t=["Yes","Yes,","No","Accept","Decline","Open System Settings","Try again","Use this","Continue without","Resume from summary","Resume full session","Continue this conversation","Send message as","Don't ask me again"],s=/^\s*(?:[❯›>]\s+)?(.+)$/,n=/^\s*[❯›>]\s+/,i=/^\d+\.\s+/,r=/^\s*([❯›>])?\s*(\d+)\.?\s*(\S.*)$/,a=e=>e.replace(i,""),l=(e,t)=>e.some(e=>a(e).startsWith(t)),u=e=>e.match(/^\s*/)?.[0].length??0,o=/^(Yes,\s*and\s+don[\u2019']?t\s+ask)\s*:\s*(.+)$/,c=e=>!(e.length<2)&&(l(e,"Yes")&&l(e,"No")||l(e,"Accept")&&l(e,"Decline")||l(e,"Open System Settings")||l(e,"Use this")&&l(e,"Continue without")||l(e,"Resume from summary")&&l(e,"Resume full session")||l(e,"Continue this conversation")&&l(e,"Send message as"));e.s(["parsePermissionOptions",0,e=>{let i=e.split("\n"),l=(e=>{let t=[],s=[],n=0,i=1,a=0,l=()=>{s.length>=2&&t.push({rawOptions:s.slice(),focusedIndex:n}),s=[],n=0,i=1,a=0};for(let t of e){if(!t.trim())continue;let e=t.match(r);if(e){let r=e[1],o=Number(e[2]),c=e[3].trim();if(c.length>0){if(1===o){l(),s.push(c),r&&(n=0),a=u(t),i=2;continue}if(o===i){r&&(n=s.length),s.push(c),a=u(t),i+=1;continue}}}if(s.length>0){if(u(t)>a){s[s.length-1]+=t.trimStart();continue}if(/^\s+\S/.test(t))continue;l()}}l();let c=t[t.length-1];return c?{options:c.rawOptions.map((e,t)=>{let s;return`${t+1}. ${(s=e.match(o))?`${s[1]} again for: ${s[2].trim()}`:/^Yes(?![,\s]|$)/.test(e)?"Yes":/^No(?![,\s]|$)/.test(e)?"No":e}`}),focusedIndex:c.focusedIndex}:{options:[],focusedIndex:0}})(i);if(l.options.length>=2&&c(l.options))return l;let d=(e=>{let i=[],r=0,l=!1;for(let u of e){if(!u.trim()){if(l)break;continue}let e=n.test(u),o=/^\s+\S/.test(u);if(!e&&!o){if(l)break;continue}let c=u.match(s);if(!c)continue;let d=c[1].trim(),f=a(d);t.some(e=>f.startsWith(e))&&(e&&(r=i.length),i.push(d),l=!0)}return{options:i,focusedIndex:r}})(i);return c(d.options)?d:{options:[],focusedIndex:0}}])},785128,e=>{"use strict";let t=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),s=new Set(["codex","Codex","node"]),n=e=>{if("~"===e||"/"===e)return e;let t=e.replace(/\/$/,"").split("/");return t[t.length-1]||e},i=(e,t)=>"codex-cli"===t&&s.has(e)?"Codex":e;e.s(["formatTabTitle",0,(e,s)=>{let r=e.trim();if(!r)return"";let a=(e=>{let t=e.trim();if(!t)return null;let s=t.indexOf("|");return s>0?t.slice(0,s):null})(e);if(null!==a){let e=r.slice(r.indexOf("|")+1);return t.has(a)?n(e):i(a,s)}let l=r.match(/@[^:]+:\s*(.*)/);if(l)return n(l[1].trim());if(r.startsWith("/")||r.startsWith("~"))return n(r);let u=r.split(/\s+/)[0];return t.has(u)?"":i(u||"",s)}])},746514,e=>{"use strict";let t;var s=e.i(924868),n=e.i(522734),i=e.i(814747),r=e.i(319668),a=e.i(511748),l=e.i(459015),u=e.i(25146);let o=(e,t)=>`${e}:${t}`,c=(0,u.createLogger)("session-list"),d=i.default.join(process.env.HOME||process.env.USERPROFILE||"/",".claude","projects"),f=(t=new Map,{get:(e,s)=>{let n=o(e,s),i=t.get(n);if(i)return Date.now()-i.cachedAt>3e4?void t.delete(n):i.meta},set:(e,s,n,i)=>{t.set(o(e,s),{meta:n,mtime:i,cachedAt:Date.now()})},isStale:(e,s,n)=>{let i=o(e,s),r=t.get(i);return!r||(Date.now()-r.cachedAt>3e4?(t.delete(i),!0):r.mtime!==n)},clear:()=>{t.clear()}}),p=e=>{let t=(0,a.toClaudeProjectName)(e);return i.default.join(d,t)},h=async(e,t)=>{let s=Array(e.length),n=0,i=async()=>{for(;n<e.length;){let t=n++;try{let n=await e[t]();s[t]={status:"fulfilled",value:n}}catch(e){s[t]={status:"rejected",reason:e}}}},r=Array.from({length:Math.min(t,e.length)},()=>i());return await Promise.all(r),s},m=e=>e.length<=200?e:e.slice(0,200)+"…",w=async e=>{let t=(0,n.createReadStream)(e,{encoding:"utf-8"}),s=r.default.createInterface({input:t,crlfDelay:1/0}),i=null,a="",l=0,u=!0;try{for await(let e of s){if(u&&(u=!1,e.trim()))try{let t=JSON.parse(e);t.timestamp&&(i=new Date(t.timestamp).toISOString())}catch{}if((e.includes('"type":"human"')||e.includes('"type": "human"')||e.includes('"type":"user"')||e.includes('"type": "user"'))&&!e.includes('"isMeta":true')&&!e.includes('"isMeta": true')&&(l++,!a))try{let t=JSON.parse(e);if(("human"===t.type||"user"===t.type)&&!t.isMeta){let e=t.message;if(e)if("string"==typeof e)a=m(e);else if(Array.isArray(e.content)){let t=e.content.find(e=>"text"===e.type&&e.text);t&&(a=m(t.text))}else"string"==typeof e.content&&(a=m(e.content))}}catch{}}}finally{s.close(),t.destroy()}return{startedAt:i,firstMessage:a,turnCount:l}},g=async e=>{try{let t=await s.default.stat(e),n=i.default.basename(e,".jsonl"),r=f.get("claude",n);if(r&&!f.isStale("claude",n,t.mtimeMs))return r;let{startedAt:a,firstMessage:l,turnCount:u}=await w(e),o=a||t.birthtime.toISOString(),c=t.mtime.toISOString(),d={sessionId:n,startedAt:o,lastActivityAt:c,firstMessage:l,turnCount:u};return f.set("claude",n,d,t.mtimeMs),d}catch(t){return c.warn({err:t},`failed to parse session meta: ${e}`),null}},y=async(e,t)=>{let n,r=t||await (0,l.getSessionCwd)(e);if(!r)throw Error("cwd-lookup-failed");let a=p(r);try{n=(await s.default.readdir(a)).filter(e=>e.endsWith(".jsonl"))}catch{return[]}let u=n.map(e=>()=>g(i.default.join(a,e))),o=await h(u,10),c=[];for(let e of o)"fulfilled"===e.status&&e.value&&c.push(e.value);return c.sort((e,t)=>new Date(t.lastActivityAt).getTime()-new Date(e.lastActivityAt).getTime()),c};e.s(["cwdToProjectPath",0,p,"listSessions",0,y],746514)}];
|
|
1
|
+
module.exports=[319668,(e,t,s)=>{t.exports=e.x("readline",()=>require("readline"))},853932,e=>{"use strict";var t=e.i(282992);let s={status:"not-running",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},n={status:"not-installed",sessionId:null,jsonlPath:null,pid:null,startedAt:null,cwd:null},i=async(e,i)=>{let r=(0,t.listProviders)(),l=r.length>0;for(let t of r){let s=await t.detectActiveSession(e,i);if("running"===s.status)return{provider:t,info:s};"not-installed"!==s.status&&(l=!1)}return{provider:null,info:l?n:s}};e.s(["detectAnyActiveSession",0,i])},75874,e=>{"use strict";var t=e.i(924868),s=e.i(814747),n=e.i(446786);let i=s.default.join(n.default.homedir(),".purplemux"),r=s.default.join(i,"push-subscriptions.json"),l=globalThis;l.__ptPushLock||(l.__ptPushLock=Promise.resolve());let a=async e=>{let t,s=new Promise(e=>{t=e}),n=l.__ptPushLock;l.__ptPushLock=s,await n;try{return await e()}finally{t()}},o=async()=>{try{let e=await t.default.readFile(r,"utf-8");return JSON.parse(e)}catch{return[]}},u=async e=>{await t.default.mkdir(i,{recursive:!0});let s=r+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,r)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}},c=async()=>o(),d=async()=>(await o()).map(e=>({endpoint:e.endpoint})),f=async e=>a(async()=>{let t=await o(),s=t.findIndex(t=>t.endpoint===e.endpoint);s>=0?t[s]=e:t.push(e),await u(t)}),p=async e=>a(async()=>{let t=await o(),s=t.filter(t=>t.endpoint!==e);s.length!==t.length&&await u(s)}),h=globalThis;h.__ptVisibleDevices||(h.__ptVisibleDevices=new Map);let m=h.__ptVisibleDevices,g=globalThis;g.__ptSessionPushTarget||(g.__ptSessionPushTarget=new Map);let w=g.__ptSessionPushTarget;e.s(["addSubscription",0,f,"clearSessionPushTarget",0,e=>{w.delete(e)},"getSubscriptions",0,c,"isAnyDeviceVisible",0,()=>{let e=Date.now();for(let[t,s]of m)if(!(e-s>6e4))return!0;else m.delete(t);return!1},"listDeviceEndpoints",0,d,"markDeviceHidden",0,e=>{m.delete(e)},"markDeviceVisible",0,e=>{m.set(e,Date.now())},"removeSubscription",0,p,"setSessionPushTarget",0,(e,t)=>{w.set(e,t)}])},175609,(e,t,s)=>{t.exports=e.x("node-pty-592e8dc6192cfd06",()=>require("node-pty-592e8dc6192cfd06"))},971780,e=>{"use strict";var t=e.i(459015);e.i(478319),e.i(220951),e.i(175609),e.i(597789),e.i(965898),new TextEncoder,new TextDecoder,e.i(825265),(0,e.i(25146).createLogger)("terminal"),new TextDecoder;let s=globalThis,n=s.__purplemux_terminal_connections??=new Map;s.__purplemux_terminal_output_ts??=new Map;let i=(e,t,s)=>{for(let i of n.values())if(i.sessionName===e&&!i.cleaned)return void i.pty.resize(t,s)},r=e=>new Promise(t=>setTimeout(t,e)),l=async(e,s,l)=>{let a=(e=>{for(let t of n.values())if(t.sessionName===e&&!t.cleaned)return{cols:t.currentCols,rows:t.currentRows};return null})(e);if(a&&a.cols>50&&a.rows>=l)return(0,t.capturePaneContentWithHistory)(e,50);let o=(e=>{for(let t of n.values())if(t.sessionName===e&&!t.cleaned){if(t.capturePaused)return null;return t.capturePaused=!0,{cols:t.currentCols,rows:t.currentRows}}return null})(e);if(!o)return(0,t.capturePaneContent)(e);try{return i(e,Math.max(a?.cols??0,s),Math.max(a?.rows??0,l)),await r(300),await (0,t.capturePaneContent)(e)}finally{i(e,o.cols,o.rows),await r(300),(e=>{for(let t of n.values())if(t.sessionName===e&&!t.cleaned){if(!t.capturePaused)return;t.capturePaused=!1;return}})(e)}};e.s(["capturePaneAtWidth",0,l],971780)},443571,e=>{"use strict";let t=["Yes","Yes,","No","Accept","Decline","Open System Settings","Try again","Use this","Continue without","Resume from summary","Resume full session","Continue this conversation","Send message as","Don't ask me again"],s=/^\s*(?:[❯›>]\s+)?(.+)$/,n=/^\s*[❯›>]\s+/,i=/^(\d+)\.\s+/,r=/^\s*([❯›>])?\s*(?:[↓↑]\s*)?(\d+)\.?\s*(\S.*)$/,l=/^[\s─━\-]+$/,a=e=>e.replace(i,""),o=(e,t)=>e.some(e=>a(e).startsWith(t)),u=e=>e.match(/^\s*/)?.[0].length??0,c=e=>e.trim().replace(/^[☐☑]\s*/,"").trim(),d=e=>/^[\s]*[☐☑]\s*\S/.test(e),f=/^(Yes,\s*and\s+don[\u2019']?t\s+ask)\s*:\s*(.+)$/,p=e=>{let t=e.match(f);return t?`${t[1]} again for: ${t[2].trim()}`:/^Yes(?![,\s]|$)/.test(e)?"Yes":/^No(?![,\s]|$)/.test(e)?"No":e},h=e=>!(e.length<2)&&(o(e,"Yes")&&o(e,"No")||o(e,"Accept")&&o(e,"Decline")||o(e,"Open System Settings")||o(e,"Use this")&&o(e,"Continue without")||o(e,"Resume from summary")&&o(e,"Resume full session")||o(e,"Continue this conversation")&&o(e,"Send message as")),m=(e,t,s)=>({...e,...((e,t)=>{if(t<=0)return{};let s=t-1;for(;s>=0&&(!e[s].trim()||l.test(e[s]));)s-=1;let n=[];for(;s>=0&&e[s].trim()&&!l.test(e[s]);)n.unshift(c(e[s])),s-=1;for(;s>=0&&(!e[s].trim()||l.test(e[s]));)s-=1;let i=[],r=[];for(;s>=0&&e[s].trim()&&!l.test(e[s]);)r.unshift(e[s]),i.unshift(c(e[s])),s-=1;let a=n.join("\n").trim(),o=r.some(d)?i.join("\n").trim():"";return{...o&&{title:o},...a&&{request:a}}})(t,s)});e.s(["parseChoiceOptions",0,e=>{let t=e.split("\n"),s=[],n=[],i=-1,a=0,o=-1,u=()=>{n.length>=2&&i>=0&&s.push({options:n.slice(),focusedIndex:i,optionStartIndex:o}),n=[],i=-1,a=0,o=-1};for(let e=0;e<t.length;e+=1){let s=t[e];if(!s.trim()||l.test(s))continue;let c=s.match(r);if(c){let t=c[1],s=Number(c[2]),r=c[3].trim();if(n.length>0&&s<=a&&u(),r.length>0){0===n.length&&(o=e),t&&(i=n.length),n.push(`${s}. ${p(r)}`),a=s;continue}}n.length>0&&!/^\s+\S/.test(s)&&u()}u();let c=s[s.length-1];return c?m({options:c.options,focusedIndex:c.focusedIndex},t,c.optionStartIndex):{options:[],focusedIndex:0}},"parsePermissionOptions",0,e=>{let i=e.split("\n"),l=(e=>{let t=[],s=[],n=0,i=1,l=0,a=-1,o=()=>{s.length>=2&&t.push({rawOptions:s.slice(),focusedIndex:n,optionStartIndex:a}),s=[],n=0,i=1,l=0,a=-1};for(let t=0;t<e.length;t+=1){let c=e[t];if(!c.trim())continue;let d=c.match(r);if(d){let e=d[1],r=Number(d[2]),f=d[3].trim();if(f.length>0){if(1===r){o(),s.push(f),e&&(n=0),l=u(c),a=t,i=2;continue}if(r===i){e&&(n=s.length),s.push(f),l=u(c),i+=1;continue}}}if(s.length>0){if(u(c)>l){s[s.length-1]+=c.trimStart();continue}if(/^\s+\S/.test(c))continue;o()}}o();let c=t[t.length-1];return c?{...m({options:c.rawOptions.map((e,t)=>`${t+1}. ${p(e)}`),focusedIndex:c.focusedIndex},e,c.optionStartIndex)}:{options:[],focusedIndex:0}})(i);if(l.options.length>=2&&h(l.options))return l;let o=(e=>{let i=[],r=0,l=-1,o=!1;for(let u=0;u<e.length;u+=1){let c=e[u];if(!c.trim()){if(o)break;continue}let d=n.test(c),f=/^\s+\S/.test(c);if(!d&&!f){if(o)break;continue}let p=c.match(s);if(!p)continue;let h=p[1].trim(),m=a(h);t.some(e=>m.startsWith(e))&&(0===i.length&&(l=u),d&&(r=i.length),i.push(h),o=!0)}return m({options:i,focusedIndex:r},e,l)})(i);return h(o.options)?o:{options:[],focusedIndex:0}}])},785128,e=>{"use strict";let t=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),s=new Set(["codex","Codex","node"]),n=e=>{if("~"===e||"/"===e)return e;let t=e.replace(/\/$/,"").split("/");return t[t.length-1]||e},i=(e,t)=>"codex-cli"===t&&s.has(e)?"Codex":e;e.s(["formatTabTitle",0,(e,s)=>{let r=e.trim();if(!r)return"";let l=(e=>{let t=e.trim();if(!t)return null;let s=t.indexOf("|");return s>0?t.slice(0,s):null})(e);if(null!==l){let e=r.slice(r.indexOf("|")+1);return t.has(l)?n(e):i(l,s)}let a=r.match(/@[^:]+:\s*(.*)/);if(a)return n(a[1].trim());if(r.startsWith("/")||r.startsWith("~"))return n(r);let o=r.split(/\s+/)[0];return t.has(o)?"":i(o||"",s)}])},746514,e=>{"use strict";let t;var s=e.i(924868),n=e.i(522734),i=e.i(814747),r=e.i(319668),l=e.i(511748),a=e.i(459015),o=e.i(25146);let u=(e,t)=>`${e}:${t}`,c=(0,o.createLogger)("session-list"),d=i.default.join(process.env.HOME||process.env.USERPROFILE||"/",".claude","projects"),f=(t=new Map,{get:(e,s)=>{let n=u(e,s),i=t.get(n);if(i)return Date.now()-i.cachedAt>3e4?void t.delete(n):i.meta},set:(e,s,n,i)=>{t.set(u(e,s),{meta:n,mtime:i,cachedAt:Date.now()})},isStale:(e,s,n)=>{let i=u(e,s),r=t.get(i);return!r||(Date.now()-r.cachedAt>3e4?(t.delete(i),!0):r.mtime!==n)},clear:()=>{t.clear()}}),p=e=>{let t=(0,l.toClaudeProjectName)(e);return i.default.join(d,t)},h=async(e,t)=>{let s=Array(e.length),n=0,i=async()=>{for(;n<e.length;){let t=n++;try{let n=await e[t]();s[t]={status:"fulfilled",value:n}}catch(e){s[t]={status:"rejected",reason:e}}}},r=Array.from({length:Math.min(t,e.length)},()=>i());return await Promise.all(r),s},m=e=>e.length<=200?e:e.slice(0,200)+"…",g=async e=>{let t=(0,n.createReadStream)(e,{encoding:"utf-8"}),s=r.default.createInterface({input:t,crlfDelay:1/0}),i=null,l="",a=0,o=!0;try{for await(let e of s){if(o&&(o=!1,e.trim()))try{let t=JSON.parse(e);t.timestamp&&(i=new Date(t.timestamp).toISOString())}catch{}if((e.includes('"type":"human"')||e.includes('"type": "human"')||e.includes('"type":"user"')||e.includes('"type": "user"'))&&!e.includes('"isMeta":true')&&!e.includes('"isMeta": true')&&(a++,!l))try{let t=JSON.parse(e);if(("human"===t.type||"user"===t.type)&&!t.isMeta){let e=t.message;if(e)if("string"==typeof e)l=m(e);else if(Array.isArray(e.content)){let t=e.content.find(e=>"text"===e.type&&e.text);t&&(l=m(t.text))}else"string"==typeof e.content&&(l=m(e.content))}}catch{}}}finally{s.close(),t.destroy()}return{startedAt:i,firstMessage:l,turnCount:a}},w=async e=>{try{let t=await s.default.stat(e),n=i.default.basename(e,".jsonl"),r=f.get("claude",n);if(r&&!f.isStale("claude",n,t.mtimeMs))return r;let{startedAt:l,firstMessage:a,turnCount:o}=await g(e),u=l||t.birthtime.toISOString(),c=t.mtime.toISOString(),d={sessionId:n,startedAt:u,lastActivityAt:c,firstMessage:a,turnCount:o};return f.set("claude",n,d,t.mtimeMs),d}catch(t){return c.warn({err:t},`failed to parse session meta: ${e}`),null}},y=async(e,t)=>{let n,r=t||await (0,a.getSessionCwd)(e);if(!r)throw Error("cwd-lookup-failed");let l=p(r);try{n=(await s.default.readdir(l)).filter(e=>e.endsWith(".jsonl"))}catch{return[]}let o=n.map(e=>()=>w(i.default.join(l,e))),u=await h(o,10),c=[];for(let e of u)"fulfilled"===e.status&&e.value&&c.push(e.value);return c.sort((e,t)=>new Date(t.lastActivityAt).getTime()-new Date(e.lastActivityAt).getTime()),c};e.s(["cwdToProjectPath",0,p,"listSessions",0,y],746514)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0ts_s1k._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),n=e.i(666126),l=e.i(825265),u=e.i(804767),d=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",w=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},f=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(f,"workspaces.json"),g=r.default.join(f,"layout.json"),h=r.default.join(f,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let v=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),x=e=>(e.groups||(e.groups=[]),e.groups),b=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},W=async e=>{let r;r=x(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l}=e,u=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,n.broadcastSync)({type:"workspace"})},I=async()=>{let e=await (0,l.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,l.resolveLayoutDir)(r),{recursive:!0}),await (0,l.writeLayoutFile)(e,(0,l.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await W(i),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},S=async()=>{try{let e=await t.default.readFile(h,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await I()}catch{return null}},P=async()=>{await t.default.mkdir(r.default.join(f,"workspaces"),{recursive:!0});let e=await b();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await I():await t.default.access(h).then(()=>!0).catch(()=>!1)&&(e=await S())),!e){let t=k();await W(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,l.resolveLayoutFile)(t.id),r=await (0,l.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,l.createDefaultLayout)(t.id,t.directories[0]),await (0,l.writeLayoutFile)(r,e);continue}let i=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,l.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,l.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},$=async()=>{let e=await b();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},A=async()=>{let e=await b();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},_=async e=>{let t=await b();return t?.workspaces.find(t=>t.id===e)},j=async(e,r,a)=>v(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await b()??k(),n=`ws-${(0,i.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),d=await (0,l.createDefaultLayout)(n,e,a);await t.default.mkdir((0,l.resolveLayoutDir)(n),{recursive:!0}),await (0,l.writeLayoutFile)(d,(0,l.resolveLayoutFile)(n));let f={id:n,name:u,directories:[e]};return o.workspaces.push(f),await W(o),await w(f),p.debug(`Created: ${n} (${u}, ${e})`),f}),L=async e=>v(async()=>{let t=await b()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,l.readLayoutFile)((0,l.resolveLayoutFile)(e));if(i)for(let e of(0,u.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,l.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await W(t),p.info(`Deleted: ${e} (${a.name})`),!0}),q=async(e,t)=>v(async()=>{let r=await b();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await W(r),await w(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),D=async e=>v(async()=>{let t=await b()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await W(t)}),F=async(e,t)=>v(async()=>{let r=await b();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await W(r),await w(a))}),C=async e=>v(async()=>{let t=await b()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await W(t),!0)}),N=async e=>v(async()=>{let t=await b()??k(),r=x(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await W(t),p.debug(`Group created: ${s.id} (${s.name})`),s}),R=async(e,t)=>v(async()=>{let r=await b();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await W(r),{...a}):a}),E=async(e,t)=>v(async()=>{let r=await b();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await W(r),!0))}),O=async e=>v(async()=>{let t=await b();if(!t)return!1;let r=x(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await W(t),p.info(`Group ungrouped: ${e}`),!0}),T=async e=>v(async()=>{let t=await b();if(!t)return!1;let r=x(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await W(t),!0)}),G=async(e,t)=>v(async()=>{let r=await b();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await W(r),!0)}),M=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,N,"createWorkspace",0,j,"deleteWorkspace",0,L,"getActiveWorkspaceId",0,A,"getWorkspaceById",0,_,"getWorkspaces",0,$,"initWorkspaceStore",0,P,"renameGroup",0,R,"renameWorkspace",0,q,"reorderGroups",0,T,"reorderWorkspaces",0,C,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,G,"ungroupGroup",0,O,"updateActive",0,D,"updateWorkspaceDirectories",0,F,"validateDirectory",0,M],322429)},113214,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(825265),o=e.i(322429);let n=(0,e.i(25146).createLogger)("layout"),l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});let r=e.query.workspace||await (0,o.getActiveWorkspaceId)();if(!r)return t.status(400).json({error:"No workspace found"});try{let{sourcePaneId:a,orientation:i,cwd:o,panelType:n}=e.body??{};if(a&&i){let e=await (0,s.splitPaneInLayout)(r,a,i,o,n);if(!e)return t.status(404).json({error:"Target pane not found"});return t.status(200).json(e)}let l=await (0,s.createPane)(r,o);return t.status(200).json(l)}catch(e){return n.error(`pane creation failed: ${e instanceof Error?e.message:e}`),t.status(500).json({error:"Failed to create pane"})}};e.s(["default",0,l],846086);var u=e.i(846086),d=e.i(7031),p=e.i(181927),c=e.i(846432);let w=(0,i.hoist)(u,"default"),f=(0,i.hoist)(u,"config"),y=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/layout/pane/index",pathname:"/api/layout/pane",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function g(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),y.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/layout/pane/index";i=i.replace(/\/index$/,"")||"/";let s=await y.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:o,params:n,prerenderManifest:l,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,d.getTracer)(),c=s.getActiveScopeSpan(),w=!!(null==u?void 0:u.isWrappedByNextServer),f=y.instrumentationOnRequestError.bind(y),g=async d=>y.render(e,r,{query:{...o,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:y.isDev,page:"/api/layout/pane/index",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>f(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 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} ${i}`)});w&&c?await g(c):(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}},g),void 0,!w))}catch(e){if(y.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,w,"handler",0,g],113214)},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__0vno7dh._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),i=e.i(44014),s=e.i(459015),o=e.i(25146),n=e.i(666126),l=e.i(825265),u=e.i(804767),d=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",f=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},w=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(w,"workspaces.json"),g=r.default.join(w,"layout.json"),h=r.default.join(w,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let v=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),b=e=>(e.groups||(e.groups=[]),e.groups),I=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},x=async e=>{let r;r=b(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,i=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else i.push(t)}let s=[];for(let e of t){let t=a.get(e.id);t&&s.push(...t)}return s.push(...i),s})(e.workspaces,r);let{workspaces:a,groups:i,activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l}=e,u=JSON.stringify({workspaces:a,groups:i??[],activeWorkspaceId:s,sidebarCollapsed:o,sidebarWidth:l});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,n.broadcastSync)({type:"workspace"})},S=async()=>{let e=await (0,l.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,l.resolveLayoutDir)(r),{recursive:!0}),await (0,l.writeLayoutFile)(e,(0,l.resolveLayoutFile)(r));let i={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await x(i),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),i},W=async()=>{try{let e=await t.default.readFile(h,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,i.nanoid)(6)}`,s={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(s,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await S()}catch{return null}},P=async()=>{await t.default.mkdir(r.default.join(w,"workspaces"),{recursive:!0});let e=await I();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await S():await t.default.access(h).then(()=>!0).catch(()=>!1)&&(e=await W())),!e){let t=k();await x(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,s.listSessions)();for(let t of e.workspaces){let e=(0,l.resolveLayoutFile)(t.id),r=await (0,l.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,l.createDefaultLayout)(t.id,t.directories[0]),await (0,l.writeLayoutFile)(r,e);continue}let i=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),s=`pt-${t.id}-`,o=a.filter(e=>i.includes(e)||e.startsWith(s));try{await (0,l.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,l.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},_=async()=>{let e=await I();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},j=async()=>{let e=await I();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},q=async e=>{let t=await I();return t?.workspaces.find(t=>t.id===e)},T=async(e,r,a)=>v(async()=>{let s;try{s=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!s.isDirectory())throw Error("Please enter a directory path, not a file");let o=await I()??k(),n=`ws-${(0,i.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),d=await (0,l.createDefaultLayout)(n,e,a);await t.default.mkdir((0,l.resolveLayoutDir)(n),{recursive:!0}),await (0,l.writeLayoutFile)(d,(0,l.resolveLayoutFile)(n));let w={id:n,name:u,directories:[e]};return o.workspaces.push(w),await x(o),await f(w),p.debug(`Created: ${n} (${u}, ${e})`),w}),$=async e=>v(async()=>{let t=await I()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],i=await (0,l.readLayoutFile)((0,l.resolveLayoutFile)(e));if(i)for(let e of(0,u.collectAllTabs)(i.root))try{await (0,s.killSession)(e.sessionName)}catch{}try{await (0,l.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await x(t),p.info(`Deleted: ${e} (${a.name})`),!0}),A=async(e,t)=>v(async()=>{let r=await I();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await x(r),await f(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),C=async e=>v(async()=>{let t=await I()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await x(t)}),F=async(e,t)=>v(async()=>{let r=await I();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await x(r),await f(a))}),L=async e=>v(async()=>{let t=await I()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),i=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),i.push(e)}return i.length===t.workspaces.length&&(t.workspaces=i,await x(t),!0)}),D=async e=>v(async()=>{let t=await I()??k(),r=b(t),a=e.trim()||`Group ${r.length+1}`,s={id:`grp-${(0,i.nanoid)(6)}`,name:a,collapsed:!1};return r.push(s),await x(t),p.debug(`Group created: ${s.id} (${s.name})`),s}),N=async(e,t)=>v(async()=>{let r=await I();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let i=t.trim();return i?(a.name=i,await x(r),{...a}):a}),E=async(e,t)=>v(async()=>{let r=await I();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await x(r),!0))}),B=async e=>v(async()=>{let t=await I();if(!t)return!1;let r=b(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await x(t),p.info(`Group ungrouped: ${e}`),!0}),R=async e=>v(async()=>{let t=await I();if(!t)return!1;let r=b(t),a=new Map(r.map(e=>[e.id,e])),i=[];for(let t of e){let e=a.get(t);if(!e)return!1;i.push(e)}return i.length===r.length&&(t.groups=i,await x(t),!0)}),G=async(e,t)=>v(async()=>{let r=await I();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let i=new Set((r.groups??[]).map(e=>e.id)),s=t&&i.has(t)?t:null;return(a.groupId??null)===s||(a.groupId=s,await x(r),!0)}),M=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,D,"createWorkspace",0,T,"deleteWorkspace",0,$,"getActiveWorkspaceId",0,j,"getWorkspaceById",0,q,"getWorkspaces",0,_,"initWorkspaceStore",0,P,"renameGroup",0,N,"renameWorkspace",0,A,"reorderGroups",0,R,"reorderWorkspaces",0,L,"setGroupCollapsed",0,E,"setWorkspaceGroup",0,G,"ungroupGroup",0,B,"updateActive",0,C,"updateWorkspaceDirectories",0,F,"validateDirectory",0,M],322429)},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"),o=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var n="string"==typeof i?i:void 0;if(!n)return!1;let l=(()=>{if(o.__ptCliToken)return o.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(s,"utf-8").trim()||null}catch{return null}})();if(e)return o.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");o.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(s),{recursive:!0}),r.default.writeFileSync(s,i,{mode:384})}catch{}return i})();return n.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(n),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},o=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null},n=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 o=e.query.tabId,n="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!n)return void t.status(400).json({error:"workspaceId is required"});let l=await s(n,o);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:o,bridge:u}):t.status(503).json({error:"Browser bridge unavailable (Electron-only feature)"})};e.s(["findTab",0,s,"resolveFirstPaneId",0,o,"withBrowserTab",0,n],200523)},673759,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),s=e.i(871911),o=e.i(200523),n=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,o.findTab)(a,r);if(!i)return t.status(404).json({error:"Tab not found"});if(!await (0,n.hasSession)(i.tab.sessionName))return t.status(409).json({error:"Tab session is not running"});let l=await (0,n.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),c=e.i(846432);let f=(0,i.hoist)(u,"default"),w=(0,i.hoist)(u,"config"),y=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 g(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),y.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/result";i=i.replace(/\/index$/,"")||"/";let s=await y.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:o,params:n,prerenderManifest:l,routerServerContext:u}=s;try{let t,a=e.method||"GET",s=(0,d.getTracer)(),c=s.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),w=y.instrumentationOnRequestError.bind(y),g=async d=>y.render(e,r,{query:{...o,...n},params:n,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:y.isDev,page:"/api/cli/tabs/[tabId]/result",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>w(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 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} ${i}`)});f&&c?await g(c):(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}},g),void 0,!f))}catch(e){if(y.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,w,"default",0,f,"handler",0,g],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__0vroi1-._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},282992,e=>{"use strict";let t=globalThis;t.__ptAgentProviders||(t.__ptAgentProviders=new Map);let r=t.__ptAgentProviders;e.s(["getProvider",0,e=>r.get(e)??null,"getProviderByPanelType",0,e=>{if(!e)return null;for(let t of r.values())if(t.panelType===e)return t;return null},"getProviderByProcessName",0,(e,t)=>{for(let a of r.values())if(a.matchesProcess(e,t))return a;return null},"listProviders",0,()=>Array.from(r.values()),"registerProvider",0,e=>{r.set(e.id,e)}])},322429,e=>{"use strict";var t=e.i(924868),r=e.i(814747),a=e.i(446786),s=e.i(44014),i=e.i(459015),o=e.i(25146),l=e.i(666126),n=e.i(825265),u=e.i(804767),d=e.i(282992);let p=(0,o.createLogger)("workspace"),c="Workspace ",w=async e=>{let t=[];for(let r of(0,d.listProviders)()){let a=r.writeWorkspacePrompt?.(e);a&&t.push(a)}await Promise.all(t)},f=r.default.join(a.default.homedir(),".purplemux"),y=r.default.join(f,"workspaces.json"),g=r.default.join(f,"layout.json"),h=r.default.join(f,"tabs.json"),m=globalThis;m.__purplemuxWorkspaceLock||(m.__purplemuxWorkspaceLock=Promise.resolve());let v=async e=>{let t,r=new Promise(e=>{t=e}),a=m.__purplemuxWorkspaceLock;m.__purplemuxWorkspaceLock=r,await a;try{return await e()}finally{t()}},k=()=>({workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:new Date().toISOString()}),b=e=>(e.groups||(e.groups=[]),e.groups),x=async()=>{let e;try{e=await t.default.readFile(y,"utf-8")}catch{return null}try{let t=JSON.parse(e);for(let e of t.workspaces)!e.directories&&e.directory&&(e.directories=[e.directory],delete e.directory),delete e.order;for(let e of(Array.isArray(t.groups)||(t.groups=[]),t.groups))delete e.order;let r=new Set(t.groups.map(e=>e.id));for(let e of t.workspaces)e.groupId&&!r.has(e.groupId)&&(e.groupId=null);return t}catch{p.warn("Failed to parse workspaces.json, starting empty");try{await t.default.copyFile(y,y.replace(/\.json$/,".json.bak"))}catch{}return null}},I=async e=>{let r;r=b(e),e.workspaces=((e,t)=>{let r=new Set(t.map(e=>e.id)),a=new Map,s=[];for(let t of e){let e=t.groupId??null;if(e&&r.has(e)){let r=a.get(e)??[];r.push(t),a.set(e,r)}else s.push(t)}let i=[];for(let e of t){let t=a.get(e.id);t&&i.push(...t)}return i.push(...s),i})(e.workspaces,r);let{workspaces:a,groups:s,activeWorkspaceId:i,sidebarCollapsed:o,sidebarWidth:n}=e,u=JSON.stringify({workspaces:a,groups:s??[],activeWorkspaceId:i,sidebarCollapsed:o,sidebarWidth:n});if(m.__purplemuxWorkspacesContentCache===u)return;e.updatedAt=new Date().toISOString();let d=y+".tmp";try{await t.default.writeFile(d,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(d,y)}catch(e){throw await t.default.unlink(d).catch(()=>{}),e}m.__purplemuxWorkspacesContentCache=u,(0,l.broadcastSync)({type:"workspace"})},W=async()=>{let e=await (0,n.readLayoutFile)(g);if(!e)return null;let r="ws-default";await t.default.mkdir((0,n.resolveLayoutDir)(r),{recursive:!0}),await (0,n.writeLayoutFile)(e,(0,n.resolveLayoutFile)(r));let s={workspaces:[{id:r,name:"default",directories:[a.default.homedir()]}],sidebarCollapsed:!1,sidebarWidth:240,updatedAt:e.updatedAt||new Date().toISOString()};return await I(s),p.info("Phase 4 layout.json → Workspace 'default' migration complete"),s},P=async()=>{try{let e=await t.default.readFile(h,"utf-8"),r=JSON.parse(e);if(!Array.isArray(r.tabs)||0===r.tabs.length)return null;let a=`pane-${(0,s.nanoid)(6)}`,i={root:{type:"pane",id:a,tabs:r.tabs,activeTabId:r.activeTabId??null},activePaneId:a,updatedAt:new Date().toISOString()},o=g+".tmp";try{await t.default.writeFile(o,JSON.stringify(i,null,2),{mode:384}),await t.default.rename(o,g)}catch(e){throw await t.default.unlink(o).catch(()=>{}),e}return p.info("tabs.json → layout.json migration complete"),await W()}catch{return null}},S=async()=>{await t.default.mkdir(r.default.join(f,"workspaces"),{recursive:!0});let e=await x();if(!e&&(await t.default.access(g).then(()=>!0).catch(()=>!1)?e=await W():await t.default.access(h).then(()=>!0).catch(()=>!1)&&(e=await P())),!e){let t=k();await I(t),e=t,p.info("Initial workspaces.json created")}if(0===e.workspaces.length)return;let a=await (0,i.listSessions)();for(let t of e.workspaces){let e=(0,n.resolveLayoutFile)(t.id),r=await (0,n.readLayoutFile)(e);if(!r){p.warn(`Workspace '${t.name}': layout.json corrupted, reset to default pane`),r=await (0,n.createDefaultLayout)(t.id,t.directories[0]),await (0,n.writeLayoutFile)(r,e);continue}let s=(0,u.collectAllTabs)(r.root).map(e=>e.sessionName),i=`pt-${t.id}-`,o=a.filter(e=>s.includes(e)||e.startsWith(i));try{await (0,n.crossCheckLayout)(r,o,t.id,t.directories[0])&&await (0,n.writeLayoutFile)(r,e)}catch(e){p.error(`Workspace '${t.name}': tmux consistency check failed: ${e instanceof Error?e.message:e}`)}}},A=async()=>{let e=await x();return e?{workspaces:e.workspaces,groups:e.groups??[],activeWorkspaceId:e.activeWorkspaceId,sidebarCollapsed:e.sidebarCollapsed,sidebarWidth:e.sidebarWidth}:{workspaces:[],groups:[],sidebarCollapsed:!1,sidebarWidth:220}},$=async()=>{let e=await x();return e?.activeWorkspaceId&&e.workspaces.some(t=>t.id===e.activeWorkspaceId)?e.activeWorkspaceId:e?.workspaces[0]?.id??null},_=async e=>{let t=await x();return t?.workspaces.find(t=>t.id===e)},j=async(e,r,a)=>v(async()=>{let i;try{i=await t.default.stat(e)}catch{throw Error("Directory does not exist")}if(!i.isDirectory())throw Error("Please enter a directory path, not a file");let o=await x()??k(),l=`ws-${(0,s.nanoid)(6)}`,u=r?.trim()||(e=>{let t=0;for(let r of e)if(r.name.startsWith(c)){let e=parseInt(r.name.slice(c.length),10);e>t&&(t=e)}return`${c}${t+1}`})(o.workspaces),d=await (0,n.createDefaultLayout)(l,e,a);await t.default.mkdir((0,n.resolveLayoutDir)(l),{recursive:!0}),await (0,n.writeLayoutFile)(d,(0,n.resolveLayoutFile)(l));let f={id:l,name:u,directories:[e]};return o.workspaces.push(f),await I(o),await w(f),p.debug(`Created: ${l} (${u}, ${e})`),f}),q=async e=>v(async()=>{let t=await x()??k(),r=t.workspaces.findIndex(t=>t.id===e);if(-1===r)return!1;let a=t.workspaces[r],s=await (0,n.readLayoutFile)((0,n.resolveLayoutFile)(e));if(s)for(let e of(0,u.collectAllTabs)(s.root))try{await (0,i.killSession)(e.sessionName)}catch{}try{await (0,n.removeLayoutFile)(e)}catch{}return t.workspaces.splice(r,1),await I(t),p.info(`Deleted: ${e} (${a.name})`),!0}),L=async(e,t)=>v(async()=>{let r=await x();if(!r)return null;let a=r.workspaces.find(t=>t.id===e);return a?(a.name=t,await I(r),await w(a),p.debug(`Renamed: ${e} → "${t}"`),{...a}):null}),D=async e=>v(async()=>{let t=await x()??k();void 0!==e.activeWorkspaceId&&(t.activeWorkspaceId=e.activeWorkspaceId),void 0!==e.sidebarCollapsed&&(t.sidebarCollapsed=e.sidebarCollapsed),void 0!==e.sidebarWidth&&(t.sidebarWidth=e.sidebarWidth),await I(t)}),C=async(e,t)=>v(async()=>{let r=await x();if(!r)return;let a=r.workspaces.find(t=>t.id===e);a&&JSON.stringify(a.directories)!==JSON.stringify(t)&&(a.directories=t,await I(r),await w(a))}),F=async e=>v(async()=>{let t=await x()??k(),r=new Map(t.workspaces.map(e=>[e.id,e])),a=new Set((t.groups??[]).map(e=>e.id)),s=[];for(let t of e){let e=r.get(t.id);if(!e)return!1;void 0!==t.groupId&&(e.groupId=t.groupId&&a.has(t.groupId)?t.groupId:null),s.push(e)}return s.length===t.workspaces.length&&(t.workspaces=s,await I(t),!0)}),N=async e=>v(async()=>{let t=await x()??k(),r=b(t),a=e.trim()||`Group ${r.length+1}`,i={id:`grp-${(0,s.nanoid)(6)}`,name:a,collapsed:!1};return r.push(i),await I(t),p.debug(`Group created: ${i.id} (${i.name})`),i}),R=async(e,t)=>v(async()=>{let r=await x();if(!r)return null;let a=(r.groups??[]).find(t=>t.id===e);if(!a)return null;let s=t.trim();return s?(a.name=s,await I(r),{...a}):a}),T=async(e,t)=>v(async()=>{let r=await x();if(!r)return!1;let a=(r.groups??[]).find(t=>t.id===e);return!!a&&(a.collapsed===t||(a.collapsed=t,await I(r),!0))}),E=async e=>v(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=r.findIndex(t=>t.id===e);if(-1===a)return!1;for(let r of t.workspaces)r.groupId===e&&(r.groupId=null);return r.splice(a,1),await I(t),p.info(`Group ungrouped: ${e}`),!0}),O=async e=>v(async()=>{let t=await x();if(!t)return!1;let r=b(t),a=new Map(r.map(e=>[e.id,e])),s=[];for(let t of e){let e=a.get(t);if(!e)return!1;s.push(e)}return s.length===r.length&&(t.groups=s,await I(t),!0)}),G=async(e,t)=>v(async()=>{let r=await x();if(!r)return!1;let a=r.workspaces.find(t=>t.id===e);if(!a)return!1;let s=new Set((r.groups??[]).map(e=>e.id)),i=t&&s.has(t)?t:null;return(a.groupId??null)===i||(a.groupId=i,await I(r),!0)}),M=async e=>{try{if(!(await t.default.stat(e)).isDirectory())return{valid:!1,error:"Please enter a directory path, not a file"}}catch{return{valid:!1,error:"Directory does not exist"}}return{valid:!0,suggestedName:r.default.basename(e)}};e.s(["createGroup",0,N,"createWorkspace",0,j,"deleteWorkspace",0,q,"getActiveWorkspaceId",0,$,"getWorkspaceById",0,_,"getWorkspaces",0,A,"initWorkspaceStore",0,S,"renameGroup",0,R,"renameWorkspace",0,L,"reorderGroups",0,O,"reorderWorkspaces",0,F,"setGroupCollapsed",0,T,"setWorkspaceGroup",0,G,"ungroupGroup",0,E,"updateActive",0,D,"updateWorkspaceDirectories",0,C,"validateDirectory",0,M],322429)},779844,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),s=e.i(262950),i=e.i(825265),o=e.i(322429);let l=async(e,t)=>{if("PATCH"!==e.method)return t.setHeader("Allow","PATCH"),t.status(405).json({error:"Method not allowed"});let r=e.query.workspace||await (0,o.getActiveWorkspaceId)();if(!r)return t.status(400).json({error:"No workspace found"});let a=e.query.paneId,{tabIds:s}=e.body??{};if(!Array.isArray(s)||0===s.length)return t.status(400).json({error:"tabIds array required"});let l=await (0,i.reorderTabsInPane)(r,a,s);return l?t.status(200).json(l):t.status(404).json({error:"Target not found"})};e.s(["default",0,l],970421);var n=e.i(970421),u=e.i(7031),d=e.i(181927),p=e.i(846432);let c=(0,s.hoist)(n,"default"),w=(0,s.hoist)(n,"config"),f=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/layout/pane/[paneId]/tabs/order",pathname:"/api/layout/pane/[paneId]/tabs/order",bundlePath:"",filename:""},userland:n,distDir:".next",relativeProjectDir:""});async function y(e,r,a){a.requestMeta&&(0,p.setRequestMeta)(e,a.requestMeta),f.isDev&&(0,p.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/layout/pane/[paneId]/tabs/order";s=s.replace(/\/index$/,"")||"/";let i=await f.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:l,prerenderManifest:n,routerServerContext:c}=i;try{let t,a=e.method||"GET",i=(0,u.getTracer)(),p=i.getActiveScopeSpan(),w=!!(null==c?void 0:c.isWrappedByNextServer),y=f.instrumentationOnRequestError.bind(f),g=async u=>f.render(e,r,{query:{...o,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:n.preview,propagateError:!1,dev:f.isDev,page:"/api/layout/pane/[paneId]/tabs/order",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>y(e,...t)}).finally(()=>{if(!u)return;u.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=i.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=e.get("next.route");if(o){let e=`${a} ${o}`;u.setAttributes({"next.route":o,"http.route":o,"next.span_name":e}),u.updateName(e),t&&t!==u&&(t.setAttribute("http.route",o),t.updateName(e))}else u.updateName(`${a} ${s}`)});w&&p?await g(p):(t=i.getActiveScopeSpan(),await i.withPropagatedContext(e.headers,()=>i.trace(d.BaseServerSpan.handleRequest,{spanName:`${a} ${s}`,kind:u.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},g),void 0,!w))}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,w,"default",0,c,"handler",0,y],779844)},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__0wae66j._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[270406,(e,t,s)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,s)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},75874,e=>{"use strict";var t=e.i(924868),s=e.i(814747),i=e.i(446786);let r=s.default.join(i.default.homedir(),".purplemux"),a=s.default.join(r,"push-subscriptions.json"),n=globalThis;n.__ptPushLock||(n.__ptPushLock=Promise.resolve());let o=async e=>{let t,s=new Promise(e=>{t=e}),i=n.__ptPushLock;n.__ptPushLock=s,await i;try{return await e()}finally{t()}},l=async()=>{try{let e=await t.default.readFile(a,"utf-8");return JSON.parse(e)}catch{return[]}},u=async e=>{await t.default.mkdir(r,{recursive:!0});let s=a+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,a)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}},p=async()=>l(),d=async e=>o(async()=>{let t=await l(),s=t.findIndex(t=>t.endpoint===e.endpoint);s>=0?t[s]=e:t.push(e),await u(t)}),
|
|
1
|
+
module.exports=[270406,(e,t,s)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,s)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},75874,e=>{"use strict";var t=e.i(924868),s=e.i(814747),i=e.i(446786);let r=s.default.join(i.default.homedir(),".purplemux"),a=s.default.join(r,"push-subscriptions.json"),n=globalThis;n.__ptPushLock||(n.__ptPushLock=Promise.resolve());let o=async e=>{let t,s=new Promise(e=>{t=e}),i=n.__ptPushLock;n.__ptPushLock=s,await i;try{return await e()}finally{t()}},l=async()=>{try{let e=await t.default.readFile(a,"utf-8");return JSON.parse(e)}catch{return[]}},u=async e=>{await t.default.mkdir(r,{recursive:!0});let s=a+".tmp";try{await t.default.writeFile(s,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(s,a)}catch(e){throw await t.default.unlink(s).catch(()=>{}),e}},p=async()=>l(),d=async()=>(await l()).map(e=>({endpoint:e.endpoint})),c=async e=>o(async()=>{let t=await l(),s=t.findIndex(t=>t.endpoint===e.endpoint);s>=0?t[s]=e:t.push(e),await u(t)}),h=async e=>o(async()=>{let t=await l(),s=t.filter(t=>t.endpoint!==e);s.length!==t.length&&await u(s)}),v=globalThis;v.__ptVisibleDevices||(v.__ptVisibleDevices=new Map);let f=v.__ptVisibleDevices,g=globalThis;g.__ptSessionPushTarget||(g.__ptSessionPushTarget=new Map);let m=g.__ptSessionPushTarget;e.s(["addSubscription",0,c,"clearSessionPushTarget",0,e=>{m.delete(e)},"getSubscriptions",0,p,"isAnyDeviceVisible",0,()=>{let e=Date.now();for(let[t,s]of f)if(!(e-s>6e4))return!0;else f.delete(t);return!1},"listDeviceEndpoints",0,d,"markDeviceHidden",0,e=>{f.delete(e)},"markDeviceVisible",0,e=>{f.set(e,Date.now())},"removeSubscription",0,h,"setSessionPushTarget",0,(e,t)=>{m.set(e,t)}])},270424,e=>{"use strict";var t=e.i(926747),s=e.i(190406),i=e.i(244898),r=e.i(262950),a=e.i(75874);let n=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});let{endpoint:s,sessionId:i}=e.body??{};return"string"==typeof i&&i?(s?(0,a.setSessionPushTarget)(i,s):(0,a.clearSessionPushTarget)(i),t.status(200).json({ok:!0})):t.status(400).json({error:"Invalid body"})};e.s(["default",0,n],557058);var o=e.i(557058),l=e.i(7031),u=e.i(181927),p=e.i(846432);let d=(0,r.hoist)(o,"default"),c=(0,r.hoist)(o,"config"),h=new i.PagesAPIRouteModule({definition:{kind:s.RouteKind.PAGES_API,page:"/api/push/register-session",pathname:"/api/push/register-session",bundlePath:"",filename:""},userland:o,distDir:".next",relativeProjectDir:""});async function v(e,s,i){i.requestMeta&&(0,p.setRequestMeta)(e,i.requestMeta),h.isDev&&(0,p.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/push/register-session";r=r.replace(/\/index$/,"")||"/";let a=await h.prepare(e,s,{srcPage:r});if(!a){s.statusCode=400,s.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:n,params:o,prerenderManifest:d,routerServerContext:c}=a;try{let t,i=e.method||"GET",a=(0,l.getTracer)(),p=a.getActiveScopeSpan(),v=!!(null==c?void 0:c.isWrappedByNextServer),f=h.instrumentationOnRequestError.bind(h),g=async l=>h.render(e,s,{query:{...n,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:d.preview,propagateError:!1,dev:h.isDev,page:"/api/push/register-session",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>f(e,...t)}).finally(()=>{if(!l)return;l.setAttributes({"http.status_code":s.statusCode,"next.rsc":!1});let e=a.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 n=e.get("next.route");if(n){let e=`${i} ${n}`;l.setAttributes({"next.route":n,"http.route":n,"next.span_name":e}),l.updateName(e),t&&t!==l&&(t.setAttribute("http.route",n),t.updateName(e))}else l.updateName(`${i} ${r}`)});v&&p?await g(p):(t=a.getActiveScopeSpan(),await a.withPropagatedContext(e.headers,()=>a.trace(u.BaseServerSpan.handleRequest,{spanName:`${i} ${r}`,kind:l.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},g),void 0,!v))}catch(e){if(h.isDev)throw e;(0,t.sendError)(s,500,"Internal Server Error")}finally{null==i.waitUntil||i.waitUntil.call(i,Promise.resolve())}}e.s(["config",0,c,"default",0,d,"handler",0,v],270424)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0x01z7b._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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"))},319668,(e,t,r)=>{t.exports=e.x("readline",()=>require("readline"))},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",u="year",o="date",c="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,h=function(e,t,r){var a=String(e);return!a||a.length>=t?e:""+Array(t+1-a.length).join(r)+e},f="en",p={};p[f]={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}};var m="$isDayjsObject",y=function(e){return e instanceof D||!(!e||!e[m])},v=function e(t,r,a){var n;if(!t)return f;if("string"==typeof t){var i=t.toLowerCase();p[i]&&(n=i),r&&(p[i]=r,n=i);var s=t.split("-");if(!n&&s.length>1)return e(s[0])}else{var u=t.name;p[u]=t,n=u}return!a&&n&&(f=n),n||!a&&f},$=function(e,t){if(y(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new D(r)},g={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,u=t.clone().add(a+(s?-1:1),i);return+(-(a+(r-n)/(s?n-u:u-n))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(c){return({M:i,y:u,w:n,d:"day",D:o,h:a,m:r,s:t,ms:e,Q:s})[c]||String(c||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}};g.l=v,g.i=y,g.w=function(e,t){return $(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var D=function(){function h(e){this.$L=v(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[m]=!0}var f=h.prototype;return f.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(g.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()},f.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},f.$utils=function(){return g},f.isValid=function(){return this.$d.toString()!==c},f.isSame=function(e,t){var r=$(e);return this.startOf(t)<=r&&r<=this.endOf(t)},f.isAfter=function(e,t){return $(e)<this.startOf(t)},f.isBefore=function(e,t){return this.endOf(t)<$(e)},f.$g=function(e,t,r){return g.u(e)?this[t]:this.set(r,e)},f.unix=function(){return Math.floor(this.valueOf()/1e3)},f.valueOf=function(){return this.$d.getTime()},f.startOf=function(e,s){var c=this,l=!!g.u(s)||s,d=g.p(e),h=function(e,t){var r=g.w(c.$u?Date.UTC(c.$y,t,e):new Date(c.$y,t,e),c);return l?r:r.endOf("day")},f=function(e,t){return g.w(c.toDate()[e].apply(c.toDate("s"),(l?[0,0,0,0]:[23,59,59,999]).slice(t)),c)},p=this.$W,m=this.$M,y=this.$D,v="set"+(this.$u?"UTC":"");switch(d){case u:return l?h(1,0):h(31,11);case i:return l?h(1,m):h(0,m+1);case n:var $=this.$locale().weekStart||0,D=(p<$?p+7:p)-$;return h(l?y-D:y+(6-D),m);case"day":case o:return f(v+"Hours",0);case a:return f(v+"Minutes",1);case r:return f(v+"Seconds",2);case t:return f(v+"Milliseconds",3);default:return this.clone()}},f.endOf=function(e){return this.startOf(e,!1)},f.$set=function(n,s){var c,l=g.p(n),d="set"+(this.$u?"UTC":""),h=((c={}).day=d+"Date",c[o]=d+"Date",c[i]=d+"Month",c[u]=d+"FullYear",c[a]=d+"Hours",c[r]=d+"Minutes",c[t]=d+"Seconds",c[e]=d+"Milliseconds",c)[l],f="day"===l?this.$D+(s-this.$W):s;if(l===i||l===u){var p=this.clone().set(o,1);p.$d[h](f),p.init(),this.$d=p.set(o,Math.min(this.$D,p.daysInMonth())).$d}else h&&this.$d[h](f);return this.init(),this},f.set=function(e,t){return this.clone().$set(e,t)},f.get=function(e){return this[g.p(e)]()},f.add=function(e,s){var o,c=this;e=Number(e);var l=g.p(s),d=function(t){var r=$(c);return g.w(r.date(r.date()+Math.round(t*e)),c)};if(l===i)return this.set(i,this.$M+e);if(l===u)return this.set(u,this.$y+e);if("day"===l)return d(1);if(l===n)return d(7);var h=((o={})[r]=6e4,o[a]=36e5,o[t]=1e3,o)[l]||1,f=this.$d.getTime()+e*h;return g.w(f,this)},f.subtract=function(e,t){return this.add(-1*e,t)},f.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=g.z(this),i=this.$H,s=this.$m,u=this.$M,o=r.weekdays,l=r.months,h=r.meridiem,f=function(e,r,n,i){return e&&(e[r]||e(t,a))||n[r].slice(0,i)},p=function(e){return g.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 g.s(t.$y,4,"0");case"M":return u+1;case"MM":return g.s(u+1,2,"0");case"MMM":return f(r.monthsShort,u,l,3);case"MMMM":return f(l,u);case"D":return t.$D;case"DD":return g.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return f(r.weekdaysMin,t.$W,o,2);case"ddd":return f(r.weekdaysShort,t.$W,o,3);case"dddd":return o[t.$W];case"H":return String(i);case"HH":return g.s(i,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return m(i,s,!0);case"A":return m(i,s,!1);case"m":return String(s);case"mm":return g.s(s,2,"0");case"s":return String(t.$s);case"ss":return g.s(t.$s,2,"0");case"SSS":return g.s(t.$ms,3,"0");case"Z":return n}return null}(e)||n.replace(":","")})},f.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},f.diff=function(e,o,c){var l,d=this,h=g.p(o),f=$(e),p=(f.utcOffset()-this.utcOffset())*6e4,m=this-f,y=function(){return g.m(d,f)};switch(h){case u:l=y()/12;break;case i:l=y();break;case s:l=y()/3;break;case n:l=(m-p)/6048e5;break;case"day":l=(m-p)/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:g.a(l)},f.daysInMonth=function(){return this.endOf(i).$D},f.$locale=function(){return p[this.$L]},f.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),a=v(e,t,!0);return a&&(r.$L=a),r},f.clone=function(){return g.w(this.$d,this)},f.toDate=function(){return new Date(this.valueOf())},f.toJSON=function(){return this.isValid()?this.toISOString():null},f.toISOString=function(){return this.$d.toISOString()},f.toString=function(){return this.$d.toUTCString()},h}(),M=D.prototype;return $.prototype=M,[["$ms",e],["$s",t],["$m",r],["$H",a],["$W","day"],["$M",i],["$y",u],["$D",o]].forEach(function(e){M[e[1]]=function(t){return this.$g(t,e[0],e[1])}}),$.extend=function(e,t){return e.$i||(e(t,D,$),e.$i=!0),$},$.locale=v,$.isDayjs=y,$.unix=function(e){return $(1e3*e)},$.en=p[f],$.Ls=p,$.p={},$}()},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";e.i(924868);var t=e.i(814747),r=e.i(446786),a=e.i(990294),n=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}},s={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;t.default.join(r.default.homedir(),".claude","stats-cache.json");let o=(e,t,r,a,n,o)=>((e,t,r,a,n,o)=>{let c=((e,t,r,a,n,o,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?s:i[d];return h?u(h,t,r,a,n,o):null})(e,t,r,a,n,o);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,r,a,n,o)})(e,t,r,n,o,a),c=(e,t)=>{let r=(e=>{if("all"===e||"today"===e)return null;let t="7d"===e?7:30;return{prevStart:(0,a.default)().subtract(2*t,"day").startOf("day"),prevEnd:(0,a.default)().subtract(t,"day").startOf("day")}})(t);if(!r)return!1;let n=(0,a.default)(e);return(n.isAfter(r.prevStart)||n.isSame(r.prevStart))&&n.isBefore(r.prevEnd)};e.s(["buildOverview",0,(e,t)=>{let r,i,s,u,l=e.dailyActivity.filter(e=>(0,n.isDateStringWithinPeriod)(e.date,t)),d=e.dailyModelTokens.filter(e=>(0,n.isDateStringWithinPeriod)(e.date,t)),h="all"===t?e.totalSessions:l.reduce((e,t)=>e+t.sessionCount,0),f="all"===t?e.totalMessages:l.reduce((e,t)=>e+t.messageCount,0),p=l.reduce((e,t)=>e+t.toolCallCount,0),m=(r=e.dailyActivity,i=t,r.filter(e=>c(e.date,i))),y=m.reduce((e,t)=>e+t.sessionCount,0),v=m.reduce((e,t)=>e+t.messageCount,0),$={};if("all"===t)for(let[t,r]of Object.entries(e.modelUsage))$[t]={input:r.inputTokens,output:r.outputTokens,cacheRead:r.cacheReadInputTokens,cacheCreation:r.cacheCreationInputTokens,cacheCreation5m:r.cacheCreation5mInputTokens,cacheCreation1h:r.cacheCreation1hInputTokens,cost:o(t,r.inputTokens,r.outputTokens,r.cacheReadInputTokens,r.cacheCreation5mInputTokens,r.cacheCreation1hInputTokens)};else{for(let e of d)for(let[t,r]of Object.entries(e.tokensByModel))$[t]||($[t]={input:0,output:0,cacheRead:0,cacheCreation:0,cacheCreation5m:0,cacheCreation1h:0,cost:0}),$[t].input+=r.input,$[t].output+=r.output,$[t].cacheRead+=r.cacheRead,$[t].cacheCreation+=r.cacheCreation,$[t].cacheCreation5m+=r.cacheCreation5m,$[t].cacheCreation1h+=r.cacheCreation1h;for(let[e,t]of Object.entries($))t.cost=o(e,t.input,t.output,t.cacheRead,t.cacheCreation5m,t.cacheCreation1h)}let g=d.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}}),D=(0,a.default)().format("YYYY-MM-DD"),M=(0,a.default)().startOf("month").format("YYYY-MM-DD"),S=e.dailyActivity.find(e=>e.date===D)?.messageCount??0,C=e.dailyActivity.filter(e=>e.date>=M).reduce((e,t)=>e+t.messageCount,0),w=Object.values($).reduce((e,t)=>e+t.cost,0),b=e=>{let t=0;for(let r of e)for(let[e,a]of Object.entries(r.tokensByModel))t+=o(e,a.input,a.output,a.cacheRead,a.cacheCreation5m,a.cacheCreation1h);return t},x=b(e.dailyModelTokens.filter(e=>e.date===D));return{totalSessions:h,totalMessages:f,previousSessions:y,previousMessages:v,totalToolCalls:p,dailyActivity:l,modelTokens:$,dailyTokens:g,todayMessages:S,thisMonthMessages:C,totalCost:w,todayCost:x,thisMonthCost:b(e.dailyModelTokens.filter(e=>e.date>=M)),previousCost:b((s=e.dailyModelTokens,u=t,s.filter(e=>c(e.date,u)))),hourlyDistribution:e.hourCounts,dayHourDistribution:e.dayHourCounts,firstSessionDate:e.firstSessionDate,lastComputedDate:e.lastComputedDate,computedAt:new Date().toISOString()}}],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),u=e.i(7991);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"method-not-allowed"});let r=Math.max(0,Number(e.query.offset)||0),a=Math.min(50,Math.max(1,Number(e.query.limit)||10)),[n,o]=await Promise.all([(0,i.getStatsCache)(),(0,u.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:o[e.date]??null}}).sort((e,t)=>t.date.localeCompare(e.date)),f={days:h.slice(r,r+a),total:h.length,offset:r,limit:a};return t.status(200).json(f)};e.s(["default",0,o],730099);var c=e.i(730099),l=e.i(7031),d=e.i(181927),h=e.i(846432);let f=(0,n.hoist)(c,"default"),p=(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:u,prerenderManifest:o,routerServerContext:c}=i;try{let t,a=e.method||"GET",i=(0,l.getTracer)(),h=i.getActiveScopeSpan(),f=!!(null==c?void 0:c.isWrappedByNextServer),p=m.instrumentationOnRequestError.bind(m),y=async l=>m.render(e,r,{query:{...s,...u},params:u,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:m.isDev,page:"/api/stats/daily-report/list",internalRevalidate:null==c?void 0:c.revalidate,onError:(...t)=>p(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}`)});f&&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,!f))}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,p,"default",0,f,"handler",0,y],219839)},981532,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_0kkbnw5._.js"].map(t=>e.l(t))).then(()=>t(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__0xgh-_t._.js.map
|