purplemux 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +86 -81
- 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 +47 -7
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__014kwh_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02v.lnb._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ar~lbk._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i-jyh3._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i1m1v9._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kd7wei._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mky_tj._.js +35 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oiiu_o._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oqgn2h._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rhb4gk._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0w0wz~a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11xw16l._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ap_bxo._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-9ezhb._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_003~2_g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_00zsk6a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_01eupc5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_05bq96_._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0_sz4y0._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0a64og5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0ccg0_z._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/_0egedv6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0fnzfs-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0-ug5tr._.js → _0fota2a._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0ftinmo._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0h4kenr._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0hat6~g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hp8_ck._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hq29bt._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0ihbr8k._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0mltzed._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0nbe6mv._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_101yu0w._.js → _0o8h1fd._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0pg-q18._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0w.1ts8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0w6jc9p._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0ozy~xe._.js → _0~hz1fq._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_11v_6.6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1289s74._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/messages_de_webBrowser_json_[json]_cjs_0wfz-ul._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_webBrowser_json_[json]_cjs_0oirdko._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_webBrowser_json_[json]_cjs_0w_no_c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_webBrowser_json_[json]_cjs_00tbjsf._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_webBrowser_json_[json]_cjs_0tp7~.s._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_webBrowser_json_[json]_cjs_0ibtysu._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_webBrowser_json_[json]_cjs_0eu9fbw._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_webBrowser_json_[json]_cjs_113-x8n._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_webBrowser_json_[json]_cjs_12ziott._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_webBrowser_json_[json]_cjs_0e5lp-q._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_webBrowser_json_[json]_cjs_0u_cpuv._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_030gj7p._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_04tdvwp._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0bdox2f._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_lib_message-namespaces_ts_0wjpvu5._.js +3 -0
- package/.next/standalone/.next/server/middleware-build-manifest.js +86 -81
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +4 -4
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +2 -2
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/preflight.js +1 -1
- package/.next/standalone/.next/server/pages/api/auth/preflight.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url/pages-manifest.json +3 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js +8 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js.map +5 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js.nft.json +1 -0
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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/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 +15 -14
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/index.js +12 -11
- 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 +8 -7
- package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/login.js +8 -7
- 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 +17 -16
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports.js +13 -12
- package/.next/standalone/.next/server/pages/reports.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 +16 -15
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats.js +13 -12
- 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 +3 -2
- package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tr/404.html +1 -1
- package/.next/standalone/.next/server/pages/tr/500.html +1 -1
- package/.next/standalone/.next/server/pages/webview/build-manifest.json +16 -15
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview.js +12 -11
- package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
- package/.next/standalone/.next/server/pages-manifest.json +5 -0
- package/.next/standalone/.next/static/{X7BRO7ORR4bKFt1LXzGU8 → CjJlqsAWYyyu76AJtHaqt}/_buildManifest.js +11 -6
- package/.next/standalone/.next/static/chunks/{0w1ldes9u.mhe.js → 0-8v00lvs9_s0.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0oy5nvsojxb2i.js → 0-rskn1p_p.qb.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0h7n~i8gk~-a2.js → 0.4j~sc70rsrv.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0j.sfmmqj2xel.js → 0._2l5v1hwkfn.js} +16 -15
- package/.next/standalone/.next/static/chunks/{0g0xm7shj062y.js → 001_h.~thz3j3.js} +1 -1
- package/.next/standalone/.next/static/chunks/00s78xqkxglkv.js +1 -0
- package/.next/standalone/.next/static/chunks/{0n2k1al4sr_qq.css → 02ncyh-v8g~cs.css} +1 -1
- package/.next/standalone/.next/static/chunks/{0312riii_sl_1.js → 02o84r01jsc.z.js} +1 -1
- package/.next/standalone/.next/static/chunks/039-4cgt.dvjg.js +1 -0
- package/.next/standalone/.next/static/chunks/03t01d94eyxh2.js +1 -0
- package/.next/standalone/.next/static/chunks/04hn532e1vcts.js +1 -0
- package/.next/standalone/.next/static/chunks/05o56eq7.f3q2.js +1 -0
- package/.next/standalone/.next/static/chunks/07yop4v9xcwb9.js +1 -0
- package/.next/standalone/.next/static/chunks/{0ynitrrzdxcnh.js → 08.6.1cg_x8r-.js} +8 -7
- package/.next/standalone/.next/static/chunks/08d4u-qlylmde.js +1 -0
- package/.next/standalone/.next/static/chunks/08ojbbzi2ergt.js +16 -0
- package/.next/standalone/.next/static/chunks/{0x.dxrfqc.ix9.js → 09lb6md956bhb.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0d5b6a8r1tk95.js → 09s7ub8rgh~u-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{02su2lz3i24nj.js → 09zxrli-btome.js} +1 -1
- package/.next/standalone/.next/static/chunks/0_7~rgbkmfo_p.js +1 -0
- package/.next/standalone/.next/static/chunks/{13u3mwvwu3kc..js → 0apqp49tgoz~z.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0te1jnz5.rt.r.js → 0b.a4_8picceu.js} +7 -7
- package/.next/standalone/.next/static/chunks/{05zne4hn1v65k.js → 0batq-3sj.qi1.js} +17 -16
- package/.next/standalone/.next/static/chunks/{0_67ozmvnvz16.js → 0bx27stclo8g5.js} +1 -1
- package/.next/standalone/.next/static/chunks/0cmg_jvd.7c43.js +1 -0
- package/.next/standalone/.next/static/chunks/0ddh4qmi2awdq.js +1 -0
- package/.next/standalone/.next/static/chunks/0dwxj97xm70gv.js +1 -0
- package/.next/standalone/.next/static/chunks/{07.5h~7~q9~1e.js → 0f_7vuqno92ye.js} +1 -1
- package/.next/standalone/.next/static/chunks/0g-71jn3elu8f.js +1 -0
- package/.next/standalone/.next/static/chunks/0hv4~cszgs3im.js +1 -0
- package/.next/standalone/.next/static/chunks/0kqxfunh4731g.js +1 -0
- package/.next/standalone/.next/static/chunks/{0fn24h74ta78c.js → 0k~crb4s4z7gy.js} +1 -1
- package/.next/standalone/.next/static/chunks/0lrjdru2bjp.x.js +1 -0
- package/.next/standalone/.next/static/chunks/0mwkajcworx_-.js +1 -0
- package/.next/standalone/.next/static/chunks/0nqofghl.17w_.js +1 -0
- package/.next/standalone/.next/static/chunks/0o1lsz827g-q_.js +1 -0
- package/.next/standalone/.next/static/chunks/{0-p.9vdmq-_co.js → 0p~_~afvrxx99.js} +4 -4
- package/.next/standalone/.next/static/chunks/{0~nexgc77r_hk.js → 0q9y8zysz~put.js} +15 -14
- package/.next/standalone/.next/static/chunks/{0_htal_j04mkg.js → 0r3lm4_qr3y.a.js} +1 -1
- package/.next/standalone/.next/static/chunks/0r69~xx12-zsq.js +1 -0
- package/.next/standalone/.next/static/chunks/0s7sv9xe3e1c9.js +1 -0
- package/.next/standalone/.next/static/chunks/0thg_6bh34-xa.js +1 -0
- package/.next/standalone/.next/static/chunks/{121i8u8byuotx.js → 0w0qmu364g~xt.js} +1 -1
- package/.next/standalone/.next/static/chunks/0xa1.t1vj1mw0.js +1 -0
- package/.next/standalone/.next/static/chunks/{0pv9~yath4mjh.js → 0y441gn709g7u.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0uzs3jw4-93ly.js → 0zih6-g65txpb.js} +1 -1
- package/.next/standalone/.next/static/chunks/0zmym5gg0bnkg.js +1 -0
- package/.next/standalone/.next/static/chunks/109f1pvy3e_vd.js +1 -0
- package/.next/standalone/.next/static/chunks/10em078j6cul4.js +1 -0
- package/.next/standalone/.next/static/chunks/{0a9t5laucshuf.js → 10todxw2604hk.js} +1 -1
- package/.next/standalone/.next/static/chunks/13i76gpwz2k5a.js +1 -0
- package/.next/standalone/.next/static/chunks/{06vxx-4w.uvj0.js → 13j5zp717ie6d.js} +16 -15
- package/.next/standalone/.next/static/chunks/{017n78o_7xb4_.js → 15hd85wggjanq.js} +1 -1
- package/.next/standalone/.next/static/chunks/15sblmrroyskk.js +1 -0
- package/.next/standalone/.next/static/chunks/16.twr9cx.kle.js +1 -0
- package/.next/standalone/.next/static/chunks/{turbopack-0d-xk62f1t05v.js → turbopack-0-ooli-pimh-6.js} +1 -1
- package/.next/standalone/.next/static/chunks/turbopack-06o7eaf8n1nth.js +1 -0
- package/.next/standalone/.next/static/chunks/{turbopack-0zcblahe.hdqd.js → turbopack-0duv.5cir9jm5.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-15bv~a4hbvh29.js → turbopack-0f2cool0ub~vp.js} +1 -1
- package/.next/standalone/.next/static/chunks/turbopack-0q6z-bk-atg2w.js +1 -0
- package/.next/standalone/.next/static/chunks/turbopack-0sa282u154fdk.js +1 -0
- package/.next/standalone/.next/static/chunks/turbopack-0vv2_r1br0hyc.js +1 -0
- package/.next/standalone/messages/de/webBrowser.json +5 -1
- package/.next/standalone/messages/en/webBrowser.json +5 -1
- package/.next/standalone/messages/es/webBrowser.json +5 -1
- package/.next/standalone/messages/fr/webBrowser.json +5 -1
- package/.next/standalone/messages/ja/webBrowser.json +5 -1
- package/.next/standalone/messages/ko/webBrowser.json +5 -1
- package/.next/standalone/messages/pt-BR/webBrowser.json +5 -1
- package/.next/standalone/messages/ru/webBrowser.json +5 -1
- package/.next/standalone/messages/tr/webBrowser.json +5 -1
- package/.next/standalone/messages/zh-CN/webBrowser.json +5 -1
- package/.next/standalone/messages/zh-TW/webBrowser.json +5 -1
- package/.next/standalone/package.json +5 -2
- package/.next/standalone/server.js +1 -1
- package/README.de.md +4 -3
- package/README.es.md +4 -3
- package/README.fr.md +4 -3
- package/README.ja.md +4 -3
- package/README.ko.md +4 -3
- package/README.md +4 -3
- package/README.pt-BR.md +4 -3
- package/README.ru.md +4 -3
- package/README.tr.md +4 -3
- package/README.zh-CN.md +4 -3
- package/README.zh-TW.md +4 -3
- package/bin/cli.js +95 -0
- package/dist/server.js +5 -2
- package/package.json +5 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02.9a5j._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_fu3k.._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_imm_0._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0abp0lo._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g8mjyh._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lk7ru8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0da5cj~._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12b2-y_._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_04iqb-o._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_04q3_kj._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0a_u5qm._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0d58w1~._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0nib_x8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0nuztht._.js +0 -18
- package/.next/standalone/.next/server/chunks/ssr/_0oca87b._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0ovjjn5._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0pk4~_0._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0qt-m3l._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0sm8slq._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_10s2f96._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_13c-b~p._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_13lrp9_._.js +0 -3
- package/.next/standalone/.next/static/chunks/0-7en.d6a3jki.js +0 -1
- package/.next/standalone/.next/static/chunks/0-pm5wxsyxs3e.js +0 -1
- package/.next/standalone/.next/static/chunks/01ul8lmr04ls3.js +0 -1
- package/.next/standalone/.next/static/chunks/05b7zy0n0vhms.js +0 -1
- package/.next/standalone/.next/static/chunks/05kshd9vdrl4o.js +0 -1
- package/.next/standalone/.next/static/chunks/05w~qu2zpvh2f.js +0 -1
- package/.next/standalone/.next/static/chunks/0af.3khnmptnl.js +0 -1
- package/.next/standalone/.next/static/chunks/0dp178b-0_ltl.js +0 -1
- package/.next/standalone/.next/static/chunks/0ebjicjua7yl-.js +0 -1
- package/.next/standalone/.next/static/chunks/0kaufevqdhsld.js +0 -1
- package/.next/standalone/.next/static/chunks/0n4fv8.loh_0x.js +0 -1
- package/.next/standalone/.next/static/chunks/0nn618je7_7ec.js +0 -16
- package/.next/standalone/.next/static/chunks/0q0yh17_ncipj.js +0 -1
- package/.next/standalone/.next/static/chunks/0qkrdmhiv-0d3.js +0 -1
- package/.next/standalone/.next/static/chunks/0r9z55-r31en8.js +0 -1
- package/.next/standalone/.next/static/chunks/0ra09kjja5rf..js +0 -1
- package/.next/standalone/.next/static/chunks/0sc7tkg1gojr..js +0 -1
- package/.next/standalone/.next/static/chunks/0u9yrtrs1bktp.js +0 -1
- package/.next/standalone/.next/static/chunks/0wvu-lowt9uem.js +0 -1
- package/.next/standalone/.next/static/chunks/0x7cvsf..ezd..js +0 -1
- package/.next/standalone/.next/static/chunks/0z_~g~mb.kjs1.js +0 -1
- package/.next/standalone/.next/static/chunks/0~lnp45fxxtgz.js +0 -1
- package/.next/standalone/.next/static/chunks/0~ts_4hi7.u_0.js +0 -1
- package/.next/standalone/.next/static/chunks/13_l03e3sab-g.js +0 -1
- package/.next/standalone/.next/static/chunks/156~ejmpjxu8e.js +0 -1
- package/.next/standalone/.next/static/chunks/16bag6z7n~ffw.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-0nn9kx.dkgwqs.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-0rb3q18bhb2hu.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-0~wmco6ifn20m.js +0 -1
- package/.next/standalone/.next/static/chunks/turbopack-1469mxaruw82d.js +0 -1
- /package/.next/standalone/.next/static/{X7BRO7ORR4bKFt1LXzGU8 → CjJlqsAWYyyu76AJtHaqt}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{X7BRO7ORR4bKFt1LXzGU8 → CjJlqsAWYyyu76AJtHaqt}/_ssgManifest.js +0 -0
package/README.md
CHANGED
|
@@ -48,9 +48,9 @@ Plus
|
|
|
48
48
|
- **Tab management** — Multiple tabs, drag to reorder, auto titles from process names
|
|
49
49
|
- **Keyboard shortcuts** — Splits, tab switching, focus movement
|
|
50
50
|
- **Terminal themes** — Dark / light mode, multiple color themes
|
|
51
|
-
- **Workspaces** — Save and restore panel layouts, tabs, and working directories
|
|
52
|
-
- **Git
|
|
53
|
-
- **Web browser panel** —
|
|
51
|
+
- **Workspaces & groups** — Save and restore panel layouts, tabs, and working directories. Organize workspaces into groups with drag-and-drop
|
|
52
|
+
- **Git workflow** — Side-by-side / line-by-line diff with syntax highlighting, inline hunk expansion, and a paginated history tab. Fetch / pull / push from the panel with ahead/behind indicators — if sync fails (dirty worktree, conflicts), Ask Claude in one click
|
|
53
|
+
- **Web browser panel** — Embedded browser for checking dev output (Electron). Drive it from the `purplemux` CLI and switch viewports with a built-in device emulator
|
|
54
54
|
|
|
55
55
|
### Claude Code integration
|
|
56
56
|
|
|
@@ -59,6 +59,7 @@ Plus
|
|
|
59
59
|
- **One-click resume** — Restart a paused session directly from the browser
|
|
60
60
|
- **Auto resume** — Recover previous Claude sessions on server start
|
|
61
61
|
- **Quick prompts** — Register frequently used prompts and send with one click
|
|
62
|
+
- **Attachments** — Drop images into the chat input, or attach files to insert their paths. Works on mobile
|
|
62
63
|
- **Message history** — Reuse previous messages
|
|
63
64
|
- **Usage analytics** — Tokens (input / output / cache read / cache write), cost, per-project breakdowns, daily AI reports
|
|
64
65
|
- **Rate limits** — 5-hour / 7-day remaining usage with reset countdown
|
package/README.pt-BR.md
CHANGED
|
@@ -48,9 +48,9 @@ E ainda
|
|
|
48
48
|
- **Gerenciamento de abas** — Múltiplas abas, reordenação por arrasto, títulos automáticos baseados no nome do processo
|
|
49
49
|
- **Atalhos de teclado** — Divisão, troca de abas, movimento de foco
|
|
50
50
|
- **Temas do terminal** — Modo escuro / claro e vários esquemas de cores
|
|
51
|
-
- **Workspaces** — Salve e restaure layouts de painéis, abas e diretórios de trabalho por workspace
|
|
52
|
-
- **
|
|
53
|
-
- **Painel de navegador web** — Navegador embutido ao lado do terminal para conferir o resultado de desenvolvimento (Electron)
|
|
51
|
+
- **Workspaces e grupos** — Salve e restaure layouts de painéis, abas e diretórios de trabalho por workspace. Organize os workspaces em grupos com arrastar e soltar
|
|
52
|
+
- **Fluxo de trabalho Git** — Side-by-side / Line-by-line com destaque de sintaxe, expansão de hunks inline e uma aba de histórico paginada. Fetch / pull / push direto do painel com indicadores ahead/behind — se o sync falhar (dirty worktree, conflitos), Ask Claude em um clique
|
|
53
|
+
- **Painel de navegador web** — Navegador embutido ao lado do terminal para conferir o resultado de desenvolvimento (Electron). Controle pelo CLI `purplemux` e alterne viewports com um emulador de dispositivo integrado
|
|
54
54
|
|
|
55
55
|
### Integração com Claude Code
|
|
56
56
|
|
|
@@ -59,6 +59,7 @@ E ainda
|
|
|
59
59
|
- **Resume em um clique** — Retome sessões pausadas direto do navegador
|
|
60
60
|
- **Resume automático** — Restauração automática de sessões anteriores do Claude ao iniciar o servidor
|
|
61
61
|
- **Prompts rápidos** — Cadastre prompts frequentes e envie com um clique
|
|
62
|
+
- **Anexos** — Solte imagens no campo de chat ou anexe arquivos para inserir o caminho. Funciona também no mobile
|
|
62
63
|
- **Histórico de mensagens** — Reutilize mensagens anteriores
|
|
63
64
|
- **Estatísticas de uso** — Tokens (input / output / cache read / cache write), custo, análise por projeto e relatórios de IA diários
|
|
64
65
|
- **Rate limit** — Saldo de 5 horas / 7 dias com contagem regressiva de reset
|
package/README.ru.md
CHANGED
|
@@ -48,9 +48,9 @@ npx purplemux
|
|
|
48
48
|
- **Управление вкладками** — много вкладок, перестановка перетаскиванием, автоматические заголовки на основе имени процесса
|
|
49
49
|
- **Горячие клавиши** — разделение, переключение вкладок, перемещение фокуса
|
|
50
50
|
- **Темы терминала** — тёмный / светлый режим, несколько цветовых тем
|
|
51
|
-
- **Рабочие
|
|
52
|
-
-
|
|
53
|
-
- **Панель веб-браузера** — встроенный браузер рядом с терминалом для проверки результата разработки (Electron)
|
|
51
|
+
- **Рабочие пространства и группы** — сохранение и восстановление раскладки панелей, вкладок и рабочих каталогов в пределах рабочего пространства. Объединяйте рабочие пространства в группы перетаскиванием
|
|
52
|
+
- **Git-воркфлоу** — Side-by-side / Line-by-line с подсветкой синтаксиса, инлайновое раскрытие hunk и отдельная вкладка истории с пагинацией. Fetch / pull / push прямо из панели с индикаторами ahead/behind — при ошибке синхронизации (dirty worktree, конфликты) можно в один клик Ask Claude
|
|
53
|
+
- **Панель веб-браузера** — встроенный браузер рядом с терминалом для проверки результата разработки (Electron). Управляется через CLI `purplemux`, со встроенным эмулятором устройств для переключения viewport
|
|
54
54
|
|
|
55
55
|
### Интеграция с Claude Code
|
|
56
56
|
|
|
@@ -59,6 +59,7 @@ npx purplemux
|
|
|
59
59
|
- **Resume в один клик** — возобновляйте приостановленную сессию прямо из браузера
|
|
60
60
|
- **Автоматический resume** — при старте сервера восстанавливаются предыдущие сессии Claude
|
|
61
61
|
- **Быстрые промпты** — сохраняйте часто используемые промпты и отправляйте их в один клик
|
|
62
|
+
- **Вложения** — перетаскивайте изображения в поле ввода чата или прикрепляйте файлы — путь будет вставлен автоматически. Работает и на мобильных
|
|
62
63
|
- **История сообщений** — повторно используйте прошлые сообщения
|
|
63
64
|
- **Статистика использования** — токены (input / output / cache read / cache write), стоимость, разбивка по проектам, ежедневные AI-отчёты
|
|
64
65
|
- **Rate limit** — остаток за 5 часов / 7 дней, обратный отсчёт до сброса
|
package/README.tr.md
CHANGED
|
@@ -48,9 +48,9 @@ Ayrıca
|
|
|
48
48
|
- **Sekme yönetimi** — Çoklu sekme, sürükleyerek sıralama, süreç adına dayalı otomatik başlıklar
|
|
49
49
|
- **Klavye kısayolları** — Bölme, sekme değiştirme, odak hareketi
|
|
50
50
|
- **Terminal temaları** — Koyu / açık mod, çeşitli renk temaları
|
|
51
|
-
- **Çalışma
|
|
52
|
-
- **Git
|
|
53
|
-
- **Web tarayıcı paneli** — Geliştirme çıktısını kontrol etmek için terminalin yanında gömülü tarayıcı (Electron)
|
|
51
|
+
- **Çalışma alanları & gruplar** — Panel düzenini, sekmeleri ve çalışma dizinlerini çalışma alanı bazında kaydedin ve geri yükleyin. Çalışma alanlarını sürükle-bırak ile gruplara ayırarak yönetin
|
|
52
|
+
- **Git iş akışı** — Side-by-side / Line-by-line geçişi ve sözdizimi vurgulamasıyla birlikte satır içi hunk genişletme ve sayfalandırılmış geçmiş sekmesi. Panelden doğrudan fetch / pull / push (ahead/behind göstergeleriyle) — sync başarısız olursa (dirty worktree, çakışma) tek tıkla Ask Claude
|
|
53
|
+
- **Web tarayıcı paneli** — Geliştirme çıktısını kontrol etmek için terminalin yanında gömülü tarayıcı (Electron). `purplemux` CLI'dan kontrol edin ve dahili cihaz öykünücüsüyle viewport'u değiştirin
|
|
54
54
|
|
|
55
55
|
### Claude Code entegrasyonu
|
|
56
56
|
|
|
@@ -59,6 +59,7 @@ Ayrıca
|
|
|
59
59
|
- **Tek tıkla Resume** — Duraklatılmış oturumu doğrudan tarayıcıdan devam ettirin
|
|
60
60
|
- **Otomatik Resume** — Sunucu başlatıldığında önceki Claude oturumlarını otomatik olarak kurtarır
|
|
61
61
|
- **Hızlı prompt'lar** — Sık kullanılan prompt'ları kaydedin ve tek tıkla gönderin
|
|
62
|
+
- **Ekler** — Sohbet alanına görseller bırakın veya dosya ekleyerek yolunu otomatik ekletin. Mobilde de çalışır
|
|
62
63
|
- **Mesaj geçmişi** — Önceki mesajları tekrar kullanın
|
|
63
64
|
- **Kullanım istatistikleri** — Token'lar (input / output / cache read / cache write), maliyet, proje bazlı kırılım, günlük AI raporları
|
|
64
65
|
- **Rate limit** — 5 saat / 7 gün kalan kullanım ve sıfırlama geri sayımı
|
package/README.zh-CN.md
CHANGED
|
@@ -48,9 +48,9 @@ npx purplemux
|
|
|
48
48
|
- **标签管理** — 多标签、拖拽排序、基于进程名的自动标题
|
|
49
49
|
- **键盘快捷键** — 分割、切换标签、焦点移动
|
|
50
50
|
- **终端主题** — 深色 / 浅色模式,多种配色主题
|
|
51
|
-
-
|
|
52
|
-
- **Git
|
|
53
|
-
- **内置浏览器面板** — 在终端旁嵌入浏览器查看开发结果 (Electron)
|
|
51
|
+
- **工作区 & 分组** — 以工作区为单位保存 / 恢复面板布局、标签与工作目录。通过拖拽将工作区组织为分组进行管理
|
|
52
|
+
- **Git 工作流** — 支持 Side-by-side / Line-by-line 切换与语法高亮,以及行内 hunk 展开、分页历史标签。可从面板直接 fetch / pull / push (含 ahead/behind 指示) — 同步失败时 (dirty worktree、冲突) 一键 Ask Claude
|
|
53
|
+
- **内置浏览器面板** — 在终端旁嵌入浏览器查看开发结果 (Electron)。可通过 `purplemux` CLI 控制,并内置设备模拟器切换视口
|
|
54
54
|
|
|
55
55
|
### Claude Code 集成
|
|
56
56
|
|
|
@@ -59,6 +59,7 @@ npx purplemux
|
|
|
59
59
|
- **一键 Resume** — 直接从浏览器恢复已中断的会话
|
|
60
60
|
- **自动 Resume** — 服务器启动时自动恢复之前的 Claude 会话
|
|
61
61
|
- **快速提示** — 注册常用提示,一键发送
|
|
62
|
+
- **附件** — 在聊天输入中拖入图片,或附加文件以自动插入路径。移动端同样可用
|
|
62
63
|
- **消息历史** — 复用之前的消息
|
|
63
64
|
- **用量统计** — Token (input / output / cache read / cache write)、成本、按项目拆分、每日 AI 报告
|
|
64
65
|
- **速率限制** — 5 小时 / 7 天剩余额度,重置倒计时
|
package/README.zh-TW.md
CHANGED
|
@@ -48,9 +48,9 @@ npx purplemux
|
|
|
48
48
|
- **分頁管理** — 多分頁、拖曳排序、依據行程名稱自動命名
|
|
49
49
|
- **鍵盤快速鍵** — 分割、切換分頁、移動焦點
|
|
50
50
|
- **終端機佈景主題** — 深色 / 淺色模式,多種配色佈景主題
|
|
51
|
-
-
|
|
52
|
-
- **Git
|
|
53
|
-
- **內建瀏覽器窗格** — 在終端機旁嵌入瀏覽器檢視開發結果 (Electron)
|
|
51
|
+
- **工作區 & 群組** — 以工作區為單位儲存 / 還原窗格配置、分頁與工作目錄。可透過拖曳將工作區組織為群組進行管理
|
|
52
|
+
- **Git 工作流程** — 支援 Side-by-side / Line-by-line 切換與語法高亮,並可行內展開 hunk、分頁瀏覽歷史紀錄分頁。可從窗格直接 fetch / pull / push (含 ahead/behind 指示) — 同步失敗時 (dirty worktree、衝突) 一鍵 Ask Claude
|
|
53
|
+
- **內建瀏覽器窗格** — 在終端機旁嵌入瀏覽器檢視開發結果 (Electron)。可透過 `purplemux` CLI 控制,並以內建裝置模擬器切換視口
|
|
54
54
|
|
|
55
55
|
### Claude Code 整合
|
|
56
56
|
|
|
@@ -59,6 +59,7 @@ npx purplemux
|
|
|
59
59
|
- **一鍵 Resume** — 直接從瀏覽器恢復已中斷的工作階段
|
|
60
60
|
- **自動 Resume** — 伺服器啟動時自動還原先前的 Claude 工作階段
|
|
61
61
|
- **快速提示** — 註冊常用提示,一鍵送出
|
|
62
|
+
- **附件** — 在聊天輸入中拖放圖片,或附加檔案以自動插入路徑。行動裝置同樣可用
|
|
62
63
|
- **訊息紀錄** — 重複使用先前的訊息
|
|
63
64
|
- **使用量統計** — Token (input / output / cache read / cache write)、成本、依專案分析、每日 AI 報告
|
|
64
65
|
- **速率限制** — 5 小時 / 7 天剩餘額度,重置倒數
|
package/bin/cli.js
CHANGED
|
@@ -52,6 +52,23 @@ const api = async (method, path, data) => {
|
|
|
52
52
|
return { resp, body };
|
|
53
53
|
};
|
|
54
54
|
|
|
55
|
+
const apiRaw = async (method, path) => {
|
|
56
|
+
const url = `${BASE}${path}`;
|
|
57
|
+
const resp = await fetch(url, {
|
|
58
|
+
method,
|
|
59
|
+
headers: { 'X-Pmux-Token': TOKEN },
|
|
60
|
+
});
|
|
61
|
+
if (!resp.ok) {
|
|
62
|
+
const ct = resp.headers.get('content-type') || '';
|
|
63
|
+
if (ct.includes('json')) {
|
|
64
|
+
const body = await resp.json();
|
|
65
|
+
die(body?.error || `HTTP ${resp.status}`);
|
|
66
|
+
}
|
|
67
|
+
die(`HTTP ${resp.status}`);
|
|
68
|
+
}
|
|
69
|
+
return resp;
|
|
70
|
+
};
|
|
71
|
+
|
|
55
72
|
const cmdWorkspaces = async () => {
|
|
56
73
|
requireEnv();
|
|
57
74
|
const { body } = await api('GET', '/api/cli/workspaces');
|
|
@@ -141,6 +158,75 @@ const cmdTabClose = async (args) => {
|
|
|
141
158
|
if (resp.ok) process.stdout.write('ok\n');
|
|
142
159
|
};
|
|
143
160
|
|
|
161
|
+
const cmdTabBrowser = async (args) => {
|
|
162
|
+
requireEnv();
|
|
163
|
+
const sub = args[0];
|
|
164
|
+
const rest = stripFlags(args.slice(1), ['--workspace', '-w', '-o', '--since', '--level', '--method', '--url', '--status', '--request', '--full']);
|
|
165
|
+
const tabId = rest[0];
|
|
166
|
+
if (!sub) die('browser subcommand required (url | screenshot | console | network | eval)');
|
|
167
|
+
if (!tabId) die('tab ID is required');
|
|
168
|
+
const wsId = resolveWsForTab(args);
|
|
169
|
+
const qs = `workspaceId=${encodeURIComponent(wsId)}`;
|
|
170
|
+
|
|
171
|
+
switch (sub) {
|
|
172
|
+
case 'url': {
|
|
173
|
+
const { body } = await api('GET', `/api/cli/tabs/${tabId}/browser/url?${qs}`);
|
|
174
|
+
out(body);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
case 'screenshot': {
|
|
178
|
+
const outPath = flagValue(args, '-o') || flagValue(args, '--output');
|
|
179
|
+
const full = args.includes('--full') ? '1' : '0';
|
|
180
|
+
const path = `/api/cli/tabs/${tabId}/browser/screenshot?${qs}&full=${full}`;
|
|
181
|
+
if (outPath) {
|
|
182
|
+
const resp = await apiRaw('GET', path);
|
|
183
|
+
const buf = Buffer.from(await resp.arrayBuffer());
|
|
184
|
+
fs.writeFileSync(outPath, buf);
|
|
185
|
+
out({ saved: outPath, bytes: buf.byteLength });
|
|
186
|
+
} else {
|
|
187
|
+
const { body } = await api('GET', `${path}&format=base64`);
|
|
188
|
+
out(body);
|
|
189
|
+
}
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
case 'console': {
|
|
193
|
+
const since = flagValue(args, '--since');
|
|
194
|
+
const level = flagValue(args, '--level');
|
|
195
|
+
const params = [qs];
|
|
196
|
+
if (since) params.push(`since=${encodeURIComponent(since)}`);
|
|
197
|
+
if (level) params.push(`level=${encodeURIComponent(level)}`);
|
|
198
|
+
const { body } = await api('GET', `/api/cli/tabs/${tabId}/browser/console?${params.join('&')}`);
|
|
199
|
+
out(body);
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
case 'network': {
|
|
203
|
+
const since = flagValue(args, '--since');
|
|
204
|
+
const method = flagValue(args, '--method');
|
|
205
|
+
const urlFilter = flagValue(args, '--url');
|
|
206
|
+
const status = flagValue(args, '--status');
|
|
207
|
+
const requestId = flagValue(args, '--request');
|
|
208
|
+
const params = [qs];
|
|
209
|
+
if (requestId) params.push(`requestId=${encodeURIComponent(requestId)}`);
|
|
210
|
+
if (since) params.push(`since=${encodeURIComponent(since)}`);
|
|
211
|
+
if (method) params.push(`method=${encodeURIComponent(method)}`);
|
|
212
|
+
if (urlFilter) params.push(`url=${encodeURIComponent(urlFilter)}`);
|
|
213
|
+
if (status) params.push(`status=${encodeURIComponent(status)}`);
|
|
214
|
+
const { body } = await api('GET', `/api/cli/tabs/${tabId}/browser/network?${params.join('&')}`);
|
|
215
|
+
out(body);
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
case 'eval': {
|
|
219
|
+
const expression = rest.slice(1).join(' ');
|
|
220
|
+
if (!expression) die('expression is required');
|
|
221
|
+
const { body } = await api('POST', `/api/cli/tabs/${tabId}/browser/eval?${qs}`, { expression });
|
|
222
|
+
out(body);
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
default:
|
|
226
|
+
die(`unknown browser subcommand: ${sub}. Use url | screenshot | console | network | eval`);
|
|
227
|
+
}
|
|
228
|
+
};
|
|
229
|
+
|
|
144
230
|
const cmdApiGuide = async () => {
|
|
145
231
|
requireEnv();
|
|
146
232
|
const resp = await fetch(`${BASE}/api/cli/api-guide`, {
|
|
@@ -183,6 +269,14 @@ Commands:
|
|
|
183
269
|
tab status -w WS TAB_ID Tab status
|
|
184
270
|
tab result -w WS TAB_ID Capture tab pane content
|
|
185
271
|
tab close -w WS TAB_ID Close a tab
|
|
272
|
+
tab browser url -w WS TAB_ID Current URL + title of a web-browser tab
|
|
273
|
+
tab browser screenshot -w WS TAB_ID Capture tab screenshot (PNG). Use -o FILE to save, --full for full page
|
|
274
|
+
[-o FILE] [--full]
|
|
275
|
+
tab browser console -w WS TAB_ID Read recent console entries (ring buffer, 500 entries)
|
|
276
|
+
[--since MS] [--level LEVEL]
|
|
277
|
+
tab browser network -w WS TAB_ID Read recent network entries, or with --request ID to fetch body
|
|
278
|
+
[--since MS] [--method M] [--url SUBSTR] [--status CODE] [--request ID]
|
|
279
|
+
tab browser eval -w WS TAB_ID EXPR Evaluate JS expression inside the tab; returns serialized value
|
|
186
280
|
api-guide Print full HTTP API reference
|
|
187
281
|
help Show this usage
|
|
188
282
|
|
|
@@ -209,6 +303,7 @@ const main = async () => {
|
|
|
209
303
|
case 'status': return cmdTabStatus(rest);
|
|
210
304
|
case 'result': return cmdTabResult(rest);
|
|
211
305
|
case 'close': return cmdTabClose(rest);
|
|
306
|
+
case 'browser': return cmdTabBrowser(rest);
|
|
212
307
|
default: die(`unknown tab command: ${sub || '(none)'}. Run 'purplemux help' for usage.`);
|
|
213
308
|
}
|
|
214
309
|
break;
|
package/dist/server.js
CHANGED
|
@@ -32380,7 +32380,7 @@ init_logger();
|
|
|
32380
32380
|
// package.json
|
|
32381
32381
|
var package_default = {
|
|
32382
32382
|
name: "purplemux",
|
|
32383
|
-
version: "0.2.
|
|
32383
|
+
version: "0.2.4",
|
|
32384
32384
|
description: "Manage multiple Claude Code sessions from your browser",
|
|
32385
32385
|
license: "MIT",
|
|
32386
32386
|
author: "subicura",
|
|
@@ -32417,6 +32417,8 @@ var package_default = {
|
|
|
32417
32417
|
scripts: {
|
|
32418
32418
|
dev: "tsx watch server.ts",
|
|
32419
32419
|
build: "next build && node scripts/post-build.js && tsup",
|
|
32420
|
+
"build:landing": "eleventy",
|
|
32421
|
+
"dev:landing": "eleventy --serve",
|
|
32420
32422
|
"build:server": "tsup",
|
|
32421
32423
|
"build:electron:main": "tsup --config electron/tsup.config.ts",
|
|
32422
32424
|
"build:electron": "next build && node scripts/post-build.js --electron && tsup && pnpm build:electron:main",
|
|
@@ -32485,6 +32487,7 @@ var package_default = {
|
|
|
32485
32487
|
zustand: "^5.0.12"
|
|
32486
32488
|
},
|
|
32487
32489
|
devDependencies: {
|
|
32490
|
+
"@11ty/eleventy": "^3.1.5",
|
|
32488
32491
|
"@electron/rebuild": "^4.0.3",
|
|
32489
32492
|
"@tailwindcss/postcss": "^4",
|
|
32490
32493
|
"@types/node": "^24.12.0",
|
|
@@ -32513,7 +32516,7 @@ var package_default = {
|
|
|
32513
32516
|
hono: ">=4.12.14",
|
|
32514
32517
|
"@hono/node-server": ">=1.19.13",
|
|
32515
32518
|
lodash: ">=4.18.0",
|
|
32516
|
-
"@xmldom/xmldom": "^0.8.
|
|
32519
|
+
"@xmldom/xmldom": "^0.8.13",
|
|
32517
32520
|
"picomatch@>=2.0.0 <3.0.0": ">=2.3.2",
|
|
32518
32521
|
"picomatch@>=4.0.0 <5.0.0": ">=4.0.4"
|
|
32519
32522
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "purplemux",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"description": "Manage multiple Claude Code sessions from your browser",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "subicura",
|
|
@@ -37,6 +37,8 @@
|
|
|
37
37
|
"scripts": {
|
|
38
38
|
"dev": "tsx watch server.ts",
|
|
39
39
|
"build": "next build && node scripts/post-build.js && tsup",
|
|
40
|
+
"build:landing": "eleventy",
|
|
41
|
+
"dev:landing": "eleventy --serve",
|
|
40
42
|
"build:server": "tsup",
|
|
41
43
|
"build:electron:main": "tsup --config electron/tsup.config.ts",
|
|
42
44
|
"build:electron": "next build && node scripts/post-build.js --electron && tsup && pnpm build:electron:main",
|
|
@@ -105,6 +107,7 @@
|
|
|
105
107
|
"zustand": "^5.0.12"
|
|
106
108
|
},
|
|
107
109
|
"devDependencies": {
|
|
110
|
+
"@11ty/eleventy": "^3.1.5",
|
|
108
111
|
"@electron/rebuild": "^4.0.3",
|
|
109
112
|
"@tailwindcss/postcss": "^4",
|
|
110
113
|
"@types/node": "^24.12.0",
|
|
@@ -133,7 +136,7 @@
|
|
|
133
136
|
"hono": ">=4.12.14",
|
|
134
137
|
"@hono/node-server": ">=1.19.13",
|
|
135
138
|
"lodash": ">=4.18.0",
|
|
136
|
-
"@xmldom/xmldom": "^0.8.
|
|
139
|
+
"@xmldom/xmldom": "^0.8.13",
|
|
137
140
|
"picomatch@>=2.0.0 <3.0.0": ">=2.3.2",
|
|
138
141
|
"picomatch@>=4.0.0 <5.0.0": ">=4.0.4"
|
|
139
142
|
}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},597789,965898,e=>{"use strict";let t=process.env.__PMUX_PRISTINE_ENV,r=Object.freeze(t?JSON.parse(t):{...process.env});t||(process.env.__PMUX_PRISTINE_ENV=JSON.stringify(r)),e.s(["PRISTINE_ENV",0,r],965898);let i=new Set(["HOME","USER","LOGNAME","SHELL","PATH","TERM","COLORTERM","LANG","TMPDIR","SSH_AUTH_SOCK","SSH_CONNECTION","SSH_TTY","DISPLAY","WAYLAND_DISPLAY","XDG_RUNTIME_DIR","TZ"]),a=["LC_"],n=e=>i.has(e)||a.some(t=>e.startsWith(t)),l={TERM:"xterm-256color",COLORTERM:"truecolor"},s=()=>{let e={};for(let[t,i]of Object.entries(r))void 0!==i&&n(t)&&(e[t]=i);return{...e,...l}},o=e=>`'${e.replace(/'/g,"'\\''")}'`,u=()=>r.SHELL||"/bin/bash";e.s(["buildShellEnv",0,()=>s(),"buildShellLaunchCommand",0,()=>{let e=Object.entries(s()).map(([e,t])=>`${e}=${o(t)}`).join(" ");return`env -i TMUX="$TMUX" TMUX_PANE="$TMUX_PANE" ${e} ${o(u())} -l`},"defaultShell",0,u],597789)},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},130146,(e,t,r)=>{t.exports=e.x("pino-28069d5257187539",()=>require("pino-28069d5257187539"))},25146,e=>{"use strict";var t=e.i(130146),r=e.i(814747),i=e.i(446786);let a=r.default.join(i.default.homedir(),".purplemux","logs"),n=process.env.LOG_LEVEL||"info",l=(e=>{if(!e)return{};let t={};for(let r of e.split(",")){let[e,i]=r.split("=").map(e=>e.trim());e&&i&&(t[e]=i)}return t})(process.env.LOG_LEVELS),s=["trace","debug","info","warn","error","fatal"],o=globalThis;if(!o.__ptRootLogger){let e=[n,...Object.values(l)].reduce((e,t)=>s.indexOf(t)<s.indexOf(e)?t:e,"fatal");o.__ptRootLogger=(0,t.default)({level:e,transport:{targets:[{target:"pino-roll",level:e,options:{file:r.default.join(a,"purplemux"),frequency:"daily",dateFormat:"yyyy-MM-dd",limit:{count:7},mkdir:!0}},{target:"pino-pretty",level:e,options:{colorize:!0,ignore:"pid,hostname,module",translateTime:"HH:MM:ss",messageFormat:"[{module}] {msg}"}}]}})}let u=o.__ptRootLogger;e.s(["createLogger",0,e=>{let t=u.child({module:e});return t.level=l[e]??n,t}])},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},406461,(e,t,r)=>{t.exports=e.x("zlib",()=>require("zlib"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},524836,(e,t,r)=>{t.exports=e.x("https",()=>require("https"))},921517,(e,t,r)=>{t.exports=e.x("http",()=>require("http"))},504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},755004,(e,t,r)=>{t.exports=e.x("tls",()=>require("tls"))},792509,(e,t,r)=>{t.exports=e.x("url",()=>require("url"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},666126,e=>{"use strict";e.i(478319);var t=e.i(220951);(0,e.i(25146).createLogger)("sync");let r=globalThis;r.__ptSyncClients||(r.__ptSyncClients=new Set);let i=r.__ptSyncClients;e.s(["broadcastSync",0,e=>{let r=JSON.stringify(e);for(let e of i)e.readyState===t.WebSocket.OPEN&&e.bufferedAmount<1048576&&e.send(r)}])},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},713915,e=>{"use strict";var t=e.i(233405),r=e.i(924868),i=e.i(446786),a=e.i(814747),n=e.i(224361),l=e.i(597789),s=e.i(965898);let o=(0,n.promisify)(t.execFile),u=null,d=null,c=async()=>{let e=i.default.userInfo().shell||(0,l.defaultShell)();try{let{stdout:t}=await o(e,["-ilc",'echo -n "$PATH"'],{timeout:5e3,env:{...(0,l.buildShellEnv)(),SHELL:e,DISABLE_AUTO_UPDATE:"true",ZSH_TMUX_AUTOSTARTED:"true"}});return t.toString().trim()}catch{return s.PRISTINE_ENV.PATH||""}},p=async()=>u||(d||(d=c().then(e=>(u=e,d=null,e))),d),f=async(e,t,r)=>{try{let i=await p(),{stdout:a}=await o(e,t,{timeout:5e3,env:{...process.env,PATH:i}});return{installed:!0,version:r(a)}}catch{return{installed:!1,version:null}}},h=e=>e.trim().match(/(\d+\.\d+[\d.]*)/)?.[1]??null,g=[a.default.join(i.default.homedir(),".local","bin")],m=async()=>{for(let e of g)try{return await (0,r.access)(a.default.join(e,"claude")),e}catch{}return null},y=e=>e.installed&&null!==e.version&&parseFloat(e.version)>=2.9,S=async()=>{u=await c();let[e,t,n]=await Promise.all([f("tmux",["-V"],h),f("git",["--version"],h),f("claude",["--version"],h)]),l=(y(e)&&t.installed&&n.installed,n.installed?null:await m()),s=!1;if(n.installed||l)try{await (0,r.access)(a.default.join(i.default.homedir(),".claude")),s=!0}catch{}return{tmux:{...e,compatible:y(e)},git:t,claude:{...n,binaryPath:l,loggedIn:s}}},x=null,v=null,_=null,w=null,E=async()=>_&&Date.now()-_.checkedAt<1e3?_.result:w||(w=S().then(e=>(_={result:e,checkedAt:Date.now()},w=null,e)).catch(e=>{throw w=null,e})),T=async()=>{u=await c();let[e,t,r]=await Promise.all([f("tmux",["-V"],h),f("git",["--version"],h),f("claude",["--version"],h)]);return{tmux:{...e,compatible:y(e)},git:t,claude:r}},P=async()=>x&&Date.now()-x.checkedAt<3e4?x.result:v||(v=T().then(e=>(x={result:e,checkedAt:Date.now()},v=null,e)).catch(e=>{throw v=null,e}));e.s(["getCachedPreflightStatus",0,E,"getCachedRuntimePreflight",0,P,"getShellPath",0,p,"invalidateRuntimeCache",0,()=>{x=null,v=null}])},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),i=e.i(814747),a=e.i(446786);let n=i.default.join(a.default.homedir(),".purplemux","cli-token"),l=globalThis;e.s(["verifyCliToken",0,e=>{let a=e.headers["x-pmux-token"];var s="string"==typeof a?a:void 0;if(!s)return!1;let o=(()=>{if(l.__ptCliToken)return l.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return l.__ptCliToken=e,e;let a=(0,t.randomBytes)(32).toString("hex");l.__ptCliToken=a;try{r.default.mkdirSync(i.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,a,{mode:384})}catch{}return a})();return s.length===o.length&&(0,t.timingSafeEqual)(Buffer.from(s),Buffer.from(o))}])},845994,e=>{"use strict";var t=e.i(924868),r=e.i(814747),i=e.i(446786),a=e.i(254799),n=e.i(666126);(0,e.i(25146).createLogger)("config");let l=r.default.join(i.default.homedir(),".purplemux"),s=r.default.join(l,"config.json"),o=globalThis;o.__ptConfigLock||(o.__ptConfigLock=Promise.resolve());let u=async e=>{let t,r=new Promise(e=>{t=e}),i=o.__ptConfigLock;o.__ptConfigLock=r,await i;try{return await e()}finally{t()}},d=()=>({updatedAt:new Date().toISOString()}),c=async()=>{try{let e=await t.default.readFile(s,"utf-8");return JSON.parse(e)}catch{return null}},p=async e=>{let{updatedAt:r,...i}=e,a=JSON.stringify(i);if(o.__ptConfigContentCache===a)return;e.updatedAt=new Date().toISOString();let l=s+".tmp";try{await t.default.writeFile(l,JSON.stringify(e,null,2),{mode:384}),await t.default.rename(l,s)}catch(e){throw await t.default.unlink(l).catch(()=>{}),e}o.__ptConfigContentCache=a,(0,n.broadcastSync)({type:"config"})},f="scrypt:",h=e=>"string"==typeof e&&e.startsWith(f),g=async e=>{let t=a.default.randomBytes(16),r=await new Promise((r,i)=>{a.default.scrypt(e,t,64,(e,t)=>{e?i(e):r(t)})});return`${f}${t.toString("hex")}:${r.toString("hex")}`},m=async(e,t)=>{if(!h(t))return!1;let[,r,i]=t.split(":"),n=Buffer.from(r,"hex"),l=Buffer.from(i,"hex"),s=await new Promise((t,r)=>{a.default.scrypt(e,n,l.length,(e,i)=>{e?r(e):t(i)})});return a.default.timingSafeEqual(s,l)},y=async()=>await c()??d(),S=async e=>u(async()=>{let t=await c()??d();Object.assign(t,e),await p(t)}),x=async()=>{let e=await c();return!h(e?.authPassword)},v=async()=>{let e=await c();return e?.dangerouslySkipPermissions??!1};e.s(["generateSecret",0,()=>a.default.randomBytes(32).toString("hex"),"getConfig",0,y,"getDangerouslySkipPermissions",0,v,"hashPassword",0,g,"needsSetup",0,x,"updateConfig",0,S,"verifyPassword",0,m])},284345,e=>{"use strict";var t=e.i(926747),r=e.i(190406),i=e.i(244898),a=e.i(262950),n=e.i(713915),l=e.i(845994),s=e.i(772601),o=e.i(871911);let u=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!await (0,l.needsSetup)()&&!((0,o.verifyCliToken)(e)||await (0,s.verifyRequestSession)(e.headers.cookie)))return t.status(401).json({error:"Unauthorized"});let r=await (0,n.getCachedPreflightStatus)();return t.status(200).json(r)};e.s(["default",0,u],16083);var d=e.i(16083),c=e.i(7031),p=e.i(181927),f=e.i(846432);let h=(0,a.hoist)(d,"default"),g=(0,a.hoist)(d,"config"),m=new i.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/auth/preflight",pathname:"/api/auth/preflight",bundlePath:"",filename:""},userland:d,distDir:".next",relativeProjectDir:""});async function y(e,r,i){i.requestMeta&&(0,f.setRequestMeta)(e,i.requestMeta),m.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/auth/preflight";a=a.replace(/\/index$/,"")||"/";let n=await m.prepare(e,r,{srcPage:a});if(!n){r.statusCode=400,r.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve());return}let{query:l,params:s,prerenderManifest:o,routerServerContext:u}=n;try{let t,i=e.method||"GET",n=(0,c.getTracer)(),d=n.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),h=m.instrumentationOnRequestError.bind(m),g=async d=>m.render(e,r,{query:{...l,...s},params:s,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:m.isDev,page:"/api/auth/preflight",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>h(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let l=e.get("next.route");if(l){let e=`${i} ${l}`;d.setAttributes({"next.route":l,"http.route":l,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",l),t.updateName(e))}else d.updateName(`${i} ${a}`)});f&&d?await g(d):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${i} ${a}`,kind:c.SpanKind.SERVER,attributes:{"http.method":i,"http.target":e.url}},g),void 0,!f))}catch(e){if(m.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==i.waitUntil||i.waitUntil.call(i,Promise.resolve())}}e.s(["config",0,g,"default",0,h,"handler",0,y],284345)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__02.9a5j._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429);let i=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null};e.s(["findTab",0,i,"resolveFirstPaneId",0,n])},780653,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(825265),o=e.i(804767),l=e.i(322429),u=e.i(200523);let d=(0,e.i(25146).createLogger)("api:cli:tabs"),p=["terminal","claude-code","web-browser","diff"],c=async(e,t)=>{if(!(0,n.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,s.getLayout)(e);for(let r of(0,o.collectPanes)(t.root))for(let t of r.tabs)a.push({tabId:t.id,workspaceId:e,name:t.name,sessionName:t.sessionName,panelType:t.panelType})}return t.status(200).json({tabs:a})}if("POST"===e.method){let{workspaceId:r,name:a,panelType:i}=e.body;if(!r)return t.status(400).json({error:"workspaceId is required"});let n=await (0,l.getWorkspaceById)(r);if(!n)return t.status(404).json({error:"Workspace not found"});let o=await (0,u.resolveFirstPaneId)(r);if(!o)return t.status(500).json({error:"No pane available in workspace"});let c=p.includes(i)?i:"terminal";try{let e=await (0,s.addTabToPane)(r,o,a,n.directories[0],c);if(!e)return t.status(500).json({error:"Failed to create tab"});return t.status(201).json({tabId:e.id,workspaceId:r,paneId:o,sessionName:e.sessionName,name:e.name})}catch(r){let e=r instanceof Error?r.message:"unknown error";return d.error(`create tab failed: ${e}`),t.status(500).json({error:e})}}return t.setHeader("Allow","GET, POST"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,c],902516);var f=e.i(902516),m=e.i(7031),v=e.i(181927),h=e.i(846432);let g=(0,i.hoist)(f,"default"),y=(0,i.hoist)(f,"config"),w=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/index",pathname:"/api/cli/tabs",bundlePath:"",filename:""},userland:f,distDir:".next",relativeProjectDir:""});async function b(e,r,a){a.requestMeta&&(0,h.setRequestMeta)(e,a.requestMeta),w.isDev&&(0,h.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/index";i=i.replace(/\/index$/,"")||"/";let n=await w.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:l,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,m.getTracer)(),d=n.getActiveScopeSpan(),p=!!(null==u?void 0:u.isWrappedByNextServer),c=w.instrumentationOnRequestError.bind(w),f=async d=>w.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:w.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=n.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 s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});p&&d?await f(d):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(v.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:m.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},f),void 0,!p))}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,y,"default",0,g,"handler",0,b],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__0_fu3k.._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var l="string"==typeof i?i:void 0;if(!l)return!1;let o=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return l.length===o.length&&(0,t.timingSafeEqual)(Buffer.from(l),Buffer.from(o))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429);let i=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null};e.s(["findTab",0,i,"resolveFirstPaneId",0,n])},928818,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),l=e.i(459015);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let i=await (0,s.findTab)(a,r);if(!i)return t.status(404).json({error:"Tab not found"});if(!await (0,l.hasSession)(i.tab.sessionName))return t.status(200).json({tabId:r,workspaceId:a,alive:!1});let o=await (0,l.getPaneCurrentCommand)(i.tab.sessionName);return t.status(200).json({tabId:r,workspaceId:a,alive:!0,command:o,cliState:i.tab.cliState??null,claudeSessionId:i.tab.claudeSessionId??null})};e.s(["default",0,o],968326);var u=e.i(968326),d=e.i(7031),p=e.i(181927),c=e.i(846432);let f=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),h=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/status",pathname:"/api/cli/tabs/[tabId]/status",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function m(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/status";i=i.replace(/\/index$/,"")||"/";let n=await h.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:l,prerenderManifest:o,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),c=n.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),v=h.instrumentationOnRequestError.bind(h),m=async d=>h.render(e,r,{query:{...s,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:h.isDev,page:"/api/cli/tabs/[tabId]/status",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});f&&c?await m(c):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},m),void 0,!f))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,f,"handler",0,m],928818)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0_imm_0._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429);let i=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null};e.s(["findTab",0,i,"resolveFirstPaneId",0,n])},500208,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),o=e.i(825265);let l=async(e,t)=>{if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});if("GET"===e.method){let e=await (0,s.findTab)(a,r);return e?t.status(200).json({tabId:e.tab.id,workspaceId:e.workspaceId,paneId:e.paneId,name:e.tab.name,sessionName:e.tab.sessionName,panelType:e.tab.panelType}):t.status(404).json({error:"Tab not found"})}if("DELETE"===e.method){let e=await (0,s.findTab)(a,r);if(!e)return t.status(404).json({error:"Tab not found"});let i=await (0,o.removeTabFromPane)(a,e.paneId,r);return t.status(200).json({ok:i})}return t.setHeader("Allow","GET, DELETE"),t.status(405).json({error:"Method not allowed"})};e.s(["default",0,l],83594);var u=e.i(83594),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),m=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/index",pathname:"/api/cli/tabs/[tabId]",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function h(e,r,a){a.requestMeta&&(0,f.setRequestMeta)(e,a.requestMeta),m.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/index";i=i.replace(/\/index$/,"")||"/";let n=await m.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:l,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),f=n.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),v=m.instrumentationOnRequestError.bind(m),h=async d=>m.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:m.isDev,page:"/api/cli/tabs/[tabId]/index",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});c&&f?await h(f):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},h),void 0,!c))}catch(e){if(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,v,"default",0,c,"handler",0,h],500208)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0abp0lo._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var l="string"==typeof i?i:void 0;if(!l)return!1;let o=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return l.length===o.length&&(0,t.timingSafeEqual)(Buffer.from(l),Buffer.from(o))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429);let i=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null};e.s(["findTab",0,i,"resolveFirstPaneId",0,n])},673759,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),l=e.i(459015);let o=async(e,t)=>{if("GET"!==e.method)return t.setHeader("Allow","GET"),t.status(405).json({error:"Method not allowed"});if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let i=await (0,s.findTab)(a,r);if(!i)return t.status(404).json({error:"Tab not found"});if(!await (0,l.hasSession)(i.tab.sessionName))return t.status(409).json({error:"Tab session is not running"});let o=await (0,l.capturePaneContent)(i.tab.sessionName);return t.status(200).json({content:o})};e.s(["default",0,o],16409);var u=e.i(16409),d=e.i(7031),p=e.i(181927),f=e.i(846432);let c=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),h=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 m(e,r,a){a.requestMeta&&(0,f.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,f.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/result";i=i.replace(/\/index$/,"")||"/";let n=await h.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:l,prerenderManifest:o,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),f=n.getActiveScopeSpan(),c=!!(null==u?void 0:u.isWrappedByNextServer),v=h.instrumentationOnRequestError.bind(h),m=async d=>h.render(e,r,{query:{...s,...l},params:l,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:o.preview,propagateError:!1,dev:h.isDev,page:"/api/cli/tabs/[tabId]/result",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});c&&f?await m(f):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},m),void 0,!c))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,c,"handler",0,m],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__0g8mjyh._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},871911,e=>{"use strict";var t=e.i(254799),r=e.i(522734),a=e.i(814747),i=e.i(446786);let n=a.default.join(i.default.homedir(),".purplemux","cli-token"),s=globalThis;e.s(["verifyCliToken",0,e=>{let i=e.headers["x-pmux-token"];var o="string"==typeof i?i:void 0;if(!o)return!1;let l=(()=>{if(s.__ptCliToken)return s.__ptCliToken;let e=(()=>{try{return r.default.readFileSync(n,"utf-8").trim()||null}catch{return null}})();if(e)return s.__ptCliToken=e,e;let i=(0,t.randomBytes)(32).toString("hex");s.__ptCliToken=i;try{r.default.mkdirSync(a.default.dirname(n),{recursive:!0}),r.default.writeFileSync(n,i,{mode:384})}catch{}return i})();return o.length===l.length&&(0,t.timingSafeEqual)(Buffer.from(o),Buffer.from(l))}])},200523,e=>{"use strict";var t=e.i(825265),r=e.i(804767),a=e.i(322429);let i=async(e,i)=>{if(!await (0,a.getWorkspaceById)(e))return null;let n=await (0,t.getLayout)(e);for(let t of(0,r.collectPanes)(n.root)){let r=t.tabs.find(e=>e.id===i);if(r)return{workspaceId:e,paneId:t.id,tab:r}}return null},n=async e=>{let a=await (0,t.getLayout)(e);return(0,r.getFirstPaneId)(a.root)||null};e.s(["findTab",0,i,"resolveFirstPaneId",0,n])},802873,e=>{"use strict";var t=e.i(926747),r=e.i(190406),a=e.i(244898),i=e.i(262950),n=e.i(871911),s=e.i(200523),o=e.i(459015);let l=async(e,t)=>{if("POST"!==e.method)return t.setHeader("Allow","POST"),t.status(405).json({error:"Method not allowed"});if(!(0,n.verifyCliToken)(e))return t.status(403).json({error:"Forbidden"});let r=e.query.tabId,a="string"==typeof e.query.workspaceId?e.query.workspaceId:void 0;if(!a)return t.status(400).json({error:"workspaceId is required"});let{content:i}=e.body;if(!i)return t.status(400).json({error:"content is required"});let l=await (0,s.findTab)(a,r);return l?await (0,o.hasSession)(l.tab.sessionName)?(await (0,o.sendBracketedPaste)(l.tab.sessionName,i),t.status(200).json({status:"sent"})):t.status(409).json({error:"Tab session is not running"}):t.status(404).json({error:"Tab not found"})};e.s(["default",0,l],197672);var u=e.i(197672),d=e.i(7031),p=e.i(181927),c=e.i(846432);let f=(0,i.hoist)(u,"default"),v=(0,i.hoist)(u,"config"),h=new a.PagesAPIRouteModule({definition:{kind:r.RouteKind.PAGES_API,page:"/api/cli/tabs/[tabId]/send",pathname:"/api/cli/tabs/[tabId]/send",bundlePath:"",filename:""},userland:u,distDir:".next",relativeProjectDir:""});async function m(e,r,a){a.requestMeta&&(0,c.setRequestMeta)(e,a.requestMeta),h.isDev&&(0,c.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let i="/api/cli/tabs/[tabId]/send";i=i.replace(/\/index$/,"")||"/";let n=await h.prepare(e,r,{srcPage:i});if(!n){r.statusCode=400,r.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve());return}let{query:s,params:o,prerenderManifest:l,routerServerContext:u}=n;try{let t,a=e.method||"GET",n=(0,d.getTracer)(),c=n.getActiveScopeSpan(),f=!!(null==u?void 0:u.isWrappedByNextServer),v=h.instrumentationOnRequestError.bind(h),m=async d=>h.render(e,r,{query:{...s,...o},params:o,allowedRevalidateHeaderKeys:[],multiZoneDraftMode:!1,trustHostHeader:!1,previewProps:l.preview,propagateError:!1,dev:h.isDev,page:"/api/cli/tabs/[tabId]/send",internalRevalidate:null==u?void 0:u.revalidate,onError:(...t)=>v(e,...t)}).finally(()=>{if(!d)return;d.setAttributes({"http.status_code":r.statusCode,"next.rsc":!1});let e=n.getRootSpanAttributes();if(!e)return;if(e.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${e.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=e.get("next.route");if(s){let e=`${a} ${s}`;d.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),d.updateName(e),t&&t!==d&&(t.setAttribute("http.route",s),t.updateName(e))}else d.updateName(`${a} ${i}`)});f&&c?await m(c):(t=n.getActiveScopeSpan(),await n.withPropagatedContext(e.headers,()=>n.trace(p.BaseServerSpan.handleRequest,{spanName:`${a} ${i}`,kind:d.SpanKind.SERVER,attributes:{"http.method":a,"http.target":e.url}},m),void 0,!f))}catch(e){if(h.isDev)throw e;(0,t.sendError)(r,500,"Internal Server Error")}finally{null==a.waitUntil||a.waitUntil.call(a,Promise.resolve())}}e.s(["config",0,v,"default",0,f,"handler",0,m],802873)},981532,e=>{e.v(e=>Promise.resolve().then(()=>e(322429)))},322522,e=>{e.v(e=>Promise.resolve().then(()=>e(459015)))},245061,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_tab-title_ts_0onatvs._.js"].map(t=>e.l(t))).then(()=>t(785128)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0lk7ru8._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[508171,(a,b,c)=>{b.exports=a.x("react/jsx-runtime",()=>require("react/jsx-runtime"))},127669,(a,b,c)=>{b.exports=a.x("react",()=>require("react"))},456195,(a,b,c)=>{b.exports=a.x("react-dom",()=>require("react-dom"))},398544,(a,b,c)=>{a.e,b.exports=function(){"use strict";var a="millisecond",b="second",c="minute",d="hour",e="week",f="month",g="quarter",h="year",i="date",j="Invalid Date",k=/^(\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,m=function(a,b,c){var d=String(a);return!d||d.length>=b?a:""+Array(b+1-d.length).join(c)+a},n="en",o={};o[n]={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(a){var b=["th","st","nd","rd"],c=a%100;return"["+a+(b[(c-20)%10]||b[c]||b[0])+"]"}};var p="$isDayjsObject",q=function(a){return a instanceof u||!(!a||!a[p])},r=function a(b,c,d){var e;if(!b)return n;if("string"==typeof b){var f=b.toLowerCase();o[f]&&(e=f),c&&(o[f]=c,e=f);var g=b.split("-");if(!e&&g.length>1)return a(g[0])}else{var h=b.name;o[h]=b,e=h}return!d&&e&&(n=e),e||!d&&n},s=function(a,b){if(q(a))return a.clone();var c="object"==typeof b?b:{};return c.date=a,c.args=arguments,new u(c)},t={s:m,z:function(a){var b=-a.utcOffset(),c=Math.abs(b);return(b<=0?"+":"-")+m(Math.floor(c/60),2,"0")+":"+m(c%60,2,"0")},m:function a(b,c){if(b.date()<c.date())return-a(c,b);var d=12*(c.year()-b.year())+(c.month()-b.month()),e=b.clone().add(d,f),g=c-e<0,h=b.clone().add(d+(g?-1:1),f);return+(-(d+(c-e)/(g?e-h:h-e))||0)},a:function(a){return a<0?Math.ceil(a)||0:Math.floor(a)},p:function(j){return({M:f,y:h,w:e,d:"day",D:i,h:d,m:c,s:b,ms:a,Q:g})[j]||String(j||"").toLowerCase().replace(/s$/,"")},u:function(a){return void 0===a}};t.l=r,t.i=q,t.w=function(a,b){return s(a,{locale:b.$L,utc:b.$u,x:b.$x,$offset:b.$offset})};var u=function(){function m(a){this.$L=r(a.locale,null,!0),this.parse(a),this.$x=this.$x||a.x||{},this[p]=!0}var n=m.prototype;return n.parse=function(a){this.$d=function(a){var b=a.date,c=a.utc;if(null===b)return new Date(NaN);if(t.u(b))return new Date;if(b instanceof Date)return new Date(b);if("string"==typeof b&&!/Z$/i.test(b)){var d=b.match(k);if(d){var e=d[2]-1||0,f=(d[7]||"0").substring(0,3);return c?new Date(Date.UTC(d[1],e,d[3]||1,d[4]||0,d[5]||0,d[6]||0,f)):new Date(d[1],e,d[3]||1,d[4]||0,d[5]||0,d[6]||0,f)}}return new Date(b)}(a),this.init()},n.init=function(){var a=this.$d;this.$y=a.getFullYear(),this.$M=a.getMonth(),this.$D=a.getDate(),this.$W=a.getDay(),this.$H=a.getHours(),this.$m=a.getMinutes(),this.$s=a.getSeconds(),this.$ms=a.getMilliseconds()},n.$utils=function(){return t},n.isValid=function(){return this.$d.toString()!==j},n.isSame=function(a,b){var c=s(a);return this.startOf(b)<=c&&c<=this.endOf(b)},n.isAfter=function(a,b){return s(a)<this.startOf(b)},n.isBefore=function(a,b){return this.endOf(b)<s(a)},n.$g=function(a,b,c){return t.u(a)?this[b]:this.set(c,a)},n.unix=function(){return Math.floor(this.valueOf()/1e3)},n.valueOf=function(){return this.$d.getTime()},n.startOf=function(a,g){var j=this,k=!!t.u(g)||g,l=t.p(a),m=function(a,b){var c=t.w(j.$u?Date.UTC(j.$y,b,a):new Date(j.$y,b,a),j);return k?c:c.endOf("day")},n=function(a,b){return t.w(j.toDate()[a].apply(j.toDate("s"),(k?[0,0,0,0]:[23,59,59,999]).slice(b)),j)},o=this.$W,p=this.$M,q=this.$D,r="set"+(this.$u?"UTC":"");switch(l){case h:return k?m(1,0):m(31,11);case f:return k?m(1,p):m(0,p+1);case e:var s=this.$locale().weekStart||0,u=(o<s?o+7:o)-s;return m(k?q-u:q+(6-u),p);case"day":case i:return n(r+"Hours",0);case d:return n(r+"Minutes",1);case c:return n(r+"Seconds",2);case b:return n(r+"Milliseconds",3);default:return this.clone()}},n.endOf=function(a){return this.startOf(a,!1)},n.$set=function(e,g){var j,k=t.p(e),l="set"+(this.$u?"UTC":""),m=((j={}).day=l+"Date",j[i]=l+"Date",j[f]=l+"Month",j[h]=l+"FullYear",j[d]=l+"Hours",j[c]=l+"Minutes",j[b]=l+"Seconds",j[a]=l+"Milliseconds",j)[k],n="day"===k?this.$D+(g-this.$W):g;if(k===f||k===h){var o=this.clone().set(i,1);o.$d[m](n),o.init(),this.$d=o.set(i,Math.min(this.$D,o.daysInMonth())).$d}else m&&this.$d[m](n);return this.init(),this},n.set=function(a,b){return this.clone().$set(a,b)},n.get=function(a){return this[t.p(a)]()},n.add=function(a,g){var i,j=this;a=Number(a);var k=t.p(g),l=function(b){var c=s(j);return t.w(c.date(c.date()+Math.round(b*a)),j)};if(k===f)return this.set(f,this.$M+a);if(k===h)return this.set(h,this.$y+a);if("day"===k)return l(1);if(k===e)return l(7);var m=((i={})[c]=6e4,i[d]=36e5,i[b]=1e3,i)[k]||1,n=this.$d.getTime()+a*m;return t.w(n,this)},n.subtract=function(a,b){return this.add(-1*a,b)},n.format=function(a){var b=this,c=this.$locale();if(!this.isValid())return c.invalidDate||j;var d=a||"YYYY-MM-DDTHH:mm:ssZ",e=t.z(this),f=this.$H,g=this.$m,h=this.$M,i=c.weekdays,k=c.months,m=c.meridiem,n=function(a,c,e,f){return a&&(a[c]||a(b,d))||e[c].slice(0,f)},o=function(a){return t.s(f%12||12,a,"0")},p=m||function(a,b,c){var d=a<12?"AM":"PM";return c?d.toLowerCase():d};return d.replace(l,function(a,d){return d||function(a){switch(a){case"YY":return String(b.$y).slice(-2);case"YYYY":return t.s(b.$y,4,"0");case"M":return h+1;case"MM":return t.s(h+1,2,"0");case"MMM":return n(c.monthsShort,h,k,3);case"MMMM":return n(k,h);case"D":return b.$D;case"DD":return t.s(b.$D,2,"0");case"d":return String(b.$W);case"dd":return n(c.weekdaysMin,b.$W,i,2);case"ddd":return n(c.weekdaysShort,b.$W,i,3);case"dddd":return i[b.$W];case"H":return String(f);case"HH":return t.s(f,2,"0");case"h":return o(1);case"hh":return o(2);case"a":return p(f,g,!0);case"A":return p(f,g,!1);case"m":return String(g);case"mm":return t.s(g,2,"0");case"s":return String(b.$s);case"ss":return t.s(b.$s,2,"0");case"SSS":return t.s(b.$ms,3,"0");case"Z":return e}return null}(a)||e.replace(":","")})},n.utcOffset=function(){return-(15*Math.round(this.$d.getTimezoneOffset()/15))},n.diff=function(a,i,j){var k,l=this,m=t.p(i),n=s(a),o=(n.utcOffset()-this.utcOffset())*6e4,p=this-n,q=function(){return t.m(l,n)};switch(m){case h:k=q()/12;break;case f:k=q();break;case g:k=q()/3;break;case e:k=(p-o)/6048e5;break;case"day":k=(p-o)/864e5;break;case d:k=p/36e5;break;case c:k=p/6e4;break;case b:k=p/1e3;break;default:k=p}return j?k:t.a(k)},n.daysInMonth=function(){return this.endOf(f).$D},n.$locale=function(){return o[this.$L]},n.locale=function(a,b){if(!a)return this.$L;var c=this.clone(),d=r(a,b,!0);return d&&(c.$L=d),c},n.clone=function(){return t.w(this.$d,this)},n.toDate=function(){return new Date(this.valueOf())},n.toJSON=function(){return this.isValid()?this.toISOString():null},n.toISOString=function(){return this.$d.toISOString()},n.toString=function(){return this.$d.toUTCString()},m}(),v=u.prototype;return s.prototype=v,[["$ms",a],["$s",b],["$m",c],["$H",d],["$W","day"],["$M",f],["$y",h],["$D",i]].forEach(function(a){v[a[1]]=function(b){return this.$g(b,a[0],a[1])}}),s.extend=function(a,b){return a.$i||(a(b,u,s),a.$i=!0),s},s.locale=r,s.isDayjs=q,s.unix=function(a){return s(1e3*a)},s.en=o[n],s.Ls=o,s.p={},s}()},908597,a=>{"use strict";a.s(["getVisuallyOrderedWorkspaces",0,(a,b)=>{let c=new Set(b.map(a=>a.id)),d=new Map,e=[];for(let b of a){let a=b.groupId??null;if(a&&c.has(a)){let c=d.get(a)??[];c.push(b),d.set(a,c)}else e.push(b)}let f=[];for(let a of b){let b=d.get(a.id);b&&f.push(...b)}return f.push(...e),f}])},986013,a=>{"use strict";let b,c;var d=a.i(666680);a.s(["nanoid",0,function(a=21){var e;e=a|=0,!b||b.length<e?(b=Buffer.allocUnsafe(128*e),d.webcrypto.getRandomValues(b),c=0):c+e>b.length&&(d.webcrypto.getRandomValues(b),c=0),c+=e;let f="";for(let d=c-a;d<c;d++)f+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&b[d]];return f}],986013)},144784,a=>{"use strict";let b=a=>"pane"===a.type?[a]:[...b(a.children[0]),...b(a.children[1])],c=(a,b)=>"pane"===a.type?a.id===b?a:null:c(a.children[0],b)||c(a.children[1],b),d=a=>"pane"===a.type?a.id:d(a.children[0]),e=a=>"pane"===a.type?a.id:e(a.children[1]),f=(a,b,c)=>"pane"===a.type?a.id===b?c:a:{...a,children:[f(a.children[0],b,c),f(a.children[1],b,c)]},g=(a,b)=>{if("pane"===a.type)return null;let[c,d]=a.children;if("pane"===c.type&&c.id===b)return d;if("pane"===d.type&&d.id===b)return c;let e=g(c,b);if(e)return{...a,children:[e,d]};let f=g(d,b);return f?{...a,children:[c,f]}:null},h=(a,b)=>{if("pane"===a.type)return null;let[c,f]=a.children;return"pane"===c.type&&c.id===b?d(f):"pane"===f.type&&f.id===b?e(c):h(c,b)||h(f,b)},i=(a,b,c)=>{if("split"!==a.type)return a;if(0===b.length)return{...a,ratio:c};let[d,...e]=b,f=[a.children[0],a.children[1]];return f[d]=i(a.children[d],e,c),{...a,children:f}},j=(a,b)=>"pane"===a.type||a.orientation!==b?1:j(a.children[0],b)+j(a.children[1],b),k=a=>{if("pane"===a.type)return!0;let b=j(a.children[0],a.orientation),c=j(a.children[1],a.orientation);return!(Math.abs(a.ratio-b/(b+c)*100)>1)&&k(a.children[0])&&k(a.children[1])},l=a=>{if("pane"===a.type)return a;let b=j(a.children[0],a.orientation),c=Math.round(b/(b+j(a.children[1],a.orientation))*1e4)/100;return{...a,ratio:c,children:[l(a.children[0]),l(a.children[1])]}},m=(a,b,c)=>{if("pane"===a.type)return a.id===b?c(a):a;let d=m(a.children[0],b,c);if(d!==a.children[0])return{...a,children:[d,a.children[1]]};let e=m(a.children[1],b,c);return e!==a.children[1]?{...a,children:[a.children[0],e]}:a};a.s(["collectAllTabs",0,a=>b(a).flatMap(a=>a.tabs),"collectPanes",0,b,"equalizeNode",0,l,"findAdjacentPaneInDirection",0,(a,b,c)=>{let f=[],g=a=>{if("pane"===a.type)return a.id===b;for(let b=0;b<2;b++){if(f.push({node:a,childIndex:b}),g(a.children[b]))return!0;f.pop()}return!1};if(!g(a))return null;let h="left"===c||"right"===c?"horizontal":"vertical",i=+("left"===c||"up"===c);for(let a=f.length-1;a>=0;a--){let{node:b,childIndex:g}=f[a];if("split"===b.type&&b.orientation===h&&g===i){let a=b.children[1-i];return"left"===c||"up"===c?e(a):d(a)}}return null},"findPane",0,c,"findResizeTarget",0,(a,b,c)=>{let d=[],e=a=>{if("pane"===a.type)return a.id===b;for(let b=0;b<2;b++){if(d.push({node:a,childIndex:b}),e(a.children[b]))return!0;d.pop()}return!1};if(!e(a))return null;let f="left"===c||"right"===c?"horizontal":"vertical",g=+("right"!==c&&"down"!==c),h="right"===c||"down"===c;for(let a=d.length-1;a>=0;a--){let{node:b,childIndex:c}=d[a];if("split"===b.type&&b.orientation===f&&c===g)return{path:d.slice(0,a).map(a=>a.childIndex),currentRatio:b.ratio,increase:h}}return null},"getFirstPaneId",0,d,"isEqualized",0,k,"removePaneWithFocus",0,(a,c)=>{let d=h(a.root,c),e=g(a.root,c);e&&(a.root=e),a.activePaneId===c&&(a.activePaneId=d??b(a.root)[0]?.id??null)},"replacePane",0,f,"updatePaneInTree",0,m,"updateRatioAtPath",0,i])},206456,a=>{"use strict";let b=new Set(["zsh","bash","fish","sh","-zsh","-bash","-fish","-sh"]),c=a=>{if("~"===a||"/"===a)return a;let b=a.replace(/\/$/,"").split("/");return b[b.length-1]||a},d=a=>{let b=a.trim();if(!b)return null;let c=b.indexOf("|");return c>0?b.slice(0,c):null};a.s(["formatTabTitle",0,a=>{let e=a.trim();if(!e)return"";let f=d(a);if(null!==f){let a=e.slice(e.indexOf("|")+1);return b.has(f)?c(a):f}let g=e.match(/@[^:]+:\s*(.*)/);if(g)return c(g[1].trim());if(e.startsWith("/")||e.startsWith("~"))return c(e);let h=e.split(/\s+/)[0];return b.has(h)?"":h||""},"isShellProcess",0,a=>{let c=d(a);return null!==c&&b.has(c)},"parseCurrentCommand",0,d])},4873,a=>{"use strict";var b=a.i(127669);let c=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},d=a=>{let d=a?c(a):c,e=a=>(function(a,c=a=>a){let d=b.default.useSyncExternalStore(a.subscribe,b.default.useCallback(()=>c(a.getState()),[a,c]),b.default.useCallback(()=>c(a.getInitialState()),[a,c]));return b.default.useDebugValue(d),d})(d,a);return Object.assign(e,d),e};a.s(["create",0,a=>a?d(a):d],4873)},721043,a=>{"use strict";a.s(["default",0,!1])},740398,83041,480824,a=>{"use strict";var b=a.i(127669),c=(a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}},d=["light","dark"],e="(prefers-color-scheme: dark)",f=b.createContext(void 0),g={setTheme:a=>{},themes:[]},h=()=>{var a;return null!=(a=b.useContext(f))?a:g},i=["light","dark"],j=({forcedTheme:a,disableTransitionOnChange:c=!1,enableSystem:g=!0,enableColorScheme:h=!0,storageKey:j="theme",themes:o=i,defaultTheme:p=g?"system":"light",attribute:q="data-theme",value:r,children:s,nonce:t,scriptProps:u})=>{let[v,w]=b.useState(()=>l(j,p)),[x,y]=b.useState(()=>"system"===v?n():v),z=r?Object.values(r):o,A=b.useCallback(a=>{let b=a;if(!b)return;"system"===a&&g&&(b=n());let e=r?r[b]:b,f=c?m(t):null,i=document.documentElement,j=a=>{"class"===a?(i.classList.remove(...z),e&&i.classList.add(e)):a.startsWith("data-")&&(e?i.setAttribute(a,e):i.removeAttribute(a))};if(Array.isArray(q)?q.forEach(j):j(q),h){let a=d.includes(p)?p:null,c=d.includes(b)?b:a;i.style.colorScheme=c}null==f||f()},[t]),B=b.useCallback(a=>{let b="function"==typeof a?a(v):a;w(b);try{localStorage.setItem(j,b)}catch(a){}},[v]),C=b.useCallback(b=>{y(n(b)),"system"===v&&g&&!a&&A("system")},[v,a]);b.useEffect(()=>{let a=window.matchMedia(e);return a.addListener(C),C(a),()=>a.removeListener(C)},[C]),b.useEffect(()=>{let a=a=>{a.key===j&&(a.newValue?w(a.newValue):B(p))};return window.addEventListener("storage",a),()=>window.removeEventListener("storage",a)},[B]),b.useEffect(()=>{A(null!=a?a:v)},[a,v]);let D=b.useMemo(()=>({theme:v,setTheme:B,forcedTheme:a,resolvedTheme:"system"===v?x:v,themes:g?[...o,"system"]:o,systemTheme:g?x:void 0}),[v,B,a,x,g,o]);return b.createElement(f.Provider,{value:D},b.createElement(k,{forcedTheme:a,storageKey:j,attribute:q,enableSystem:g,enableColorScheme:h,defaultTheme:p,value:r,themes:o,nonce:t,scriptProps:u}),s)},k=b.memo(({forcedTheme:a,storageKey:d,attribute:e,enableSystem:f,enableColorScheme:g,defaultTheme:h,value:i,themes:j,nonce:k,scriptProps:l})=>{let m=JSON.stringify([e,d,h,a,j,i,f,g]).slice(1,-1);return b.createElement("script",{...l,suppressHydrationWarning:!0,nonce:k,dangerouslySetInnerHTML:{__html:`(${c.toString()})(${m})`}})}),l=(a,b)=>{},m=a=>{let b=document.createElement("style");return a&&b.setAttribute("nonce",a),b.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(b),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(b)},1)}},n=a=>(a||(a=window.matchMedia(e)),a.matches?"dark":"light");a.s(["ThemeProvider",0,a=>b.useContext(f)?b.createElement(b.Fragment,null,a.children):b.createElement(j,{...a}),"useTheme",0,h],740398);var o=a.i(4873);let p=[{id:"snazzy",name:"Snazzy",variant:"dark",colors:{background:"#1e1f29",foreground:"#ebece6",cursor:"#e4e4e4",cursorAccent:"#1e1f29",selectionBackground:"#81aec6",selectionForeground:"#000000",black:"#000000",red:"#fc4346",green:"#50fb7c",yellow:"#f0fb8c",blue:"#49baff",magenta:"#fc4cb4",cyan:"#8be9fe",white:"#ededec",brightBlack:"#555555",brightRed:"#fc4346",brightGreen:"#50fb7c",brightYellow:"#f0fb8c",brightBlue:"#49baff",brightMagenta:"#fc4cb4",brightCyan:"#8be9fe",brightWhite:"#ededec"}},{id:"dracula",name:"Dracula",variant:"dark",colors:{background:"#282a36",foreground:"#f8f8f2",cursor:"#f8f8f2",cursorAccent:"#282a36",selectionBackground:"#44475a",selectionForeground:"#f8f8f2",black:"#21222c",red:"#ff5555",green:"#50fa7b",yellow:"#f1fa8c",blue:"#bd93f9",magenta:"#ff79c6",cyan:"#8be9fd",white:"#f8f8f2",brightBlack:"#6272a4",brightRed:"#ff6e6e",brightGreen:"#69ff94",brightYellow:"#ffffa5",brightBlue:"#d6acff",brightMagenta:"#ff92df",brightCyan:"#a4ffff",brightWhite:"#ffffff"}},{id:"one-dark",name:"One Dark",variant:"dark",colors:{background:"#282c34",foreground:"#abb2bf",cursor:"#528bff",cursorAccent:"#282c34",selectionBackground:"#3e4451",selectionForeground:"#abb2bf",black:"#282c34",red:"#e06c75",green:"#98c379",yellow:"#e5c07b",blue:"#61afef",magenta:"#c678dd",cyan:"#56b6c2",white:"#abb2bf",brightBlack:"#5c6370",brightRed:"#e06c75",brightGreen:"#98c379",brightYellow:"#e5c07b",brightBlue:"#61afef",brightMagenta:"#c678dd",brightCyan:"#56b6c2",brightWhite:"#ffffff"}},{id:"tokyo-night",name:"Tokyo Night",variant:"dark",colors:{background:"#1a1b26",foreground:"#a9b1d6",cursor:"#c0caf5",cursorAccent:"#1a1b26",selectionBackground:"#33467c",selectionForeground:"#a9b1d6",black:"#15161e",red:"#f7768e",green:"#9ece6a",yellow:"#e0af68",blue:"#7aa2f7",magenta:"#bb9af7",cyan:"#7dcfff",white:"#a9b1d6",brightBlack:"#414868",brightRed:"#f7768e",brightGreen:"#9ece6a",brightYellow:"#e0af68",brightBlue:"#7aa2f7",brightMagenta:"#bb9af7",brightCyan:"#7dcfff",brightWhite:"#c0caf5"}},{id:"nord",name:"Nord",variant:"dark",colors:{background:"#2e3440",foreground:"#d8dee9",cursor:"#d8dee9",cursorAccent:"#2e3440",selectionBackground:"#434c5e",selectionForeground:"#d8dee9",black:"#3b4252",red:"#bf616a",green:"#a3be8c",yellow:"#ebcb8b",blue:"#81a1c1",magenta:"#b48ead",cyan:"#88c0d0",white:"#e5e9f0",brightBlack:"#4c566a",brightRed:"#bf616a",brightGreen:"#a3be8c",brightYellow:"#ebcb8b",brightBlue:"#81a1c1",brightMagenta:"#b48ead",brightCyan:"#8fbcbb",brightWhite:"#eceff4"}},{id:"catppuccin-mocha",name:"Catppuccin Mocha",variant:"dark",colors:{background:"#1e1e2e",foreground:"#cdd6f4",cursor:"#f5e0dc",cursorAccent:"#1e1e2e",selectionBackground:"#585b70",selectionForeground:"#cdd6f4",black:"#45475a",red:"#f38ba8",green:"#a6e3a1",yellow:"#f9e2af",blue:"#89b4fa",magenta:"#f5c2e7",cyan:"#94e2d5",white:"#bac2de",brightBlack:"#585b70",brightRed:"#f38ba8",brightGreen:"#a6e3a1",brightYellow:"#f9e2af",brightBlue:"#89b4fa",brightMagenta:"#f5c2e7",brightCyan:"#94e2d5",brightWhite:"#a6adc8"}},{id:"catppuccin-latte",name:"Catppuccin Latte",variant:"light",colors:{background:"#eff1f5",foreground:"#4c4f69",cursor:"#dc8a78",cursorAccent:"#eff1f5",selectionBackground:"#acb0be",selectionForeground:"#4c4f69",black:"#5c5f77",red:"#d20f39",green:"#40a02b",yellow:"#df8e1d",blue:"#1e66f5",magenta:"#ea76cb",cyan:"#179299",white:"#acb0be",brightBlack:"#6c6f85",brightRed:"#d20f39",brightGreen:"#40a02b",brightYellow:"#df8e1d",brightBlue:"#1e66f5",brightMagenta:"#ea76cb",brightCyan:"#179299",brightWhite:"#bcc0cc"}},{id:"github-light",name:"GitHub Light",variant:"light",colors:{background:"#f6f8fa",foreground:"#24292f",cursor:"#044289",cursorAccent:"#f6f8fa",selectionBackground:"#b6d7ff",selectionForeground:"#24292f",black:"#24292f",red:"#cf222e",green:"#116329",yellow:"#9a6700",blue:"#0969da",magenta:"#8250df",cyan:"#1b7c83",white:"#6e7781",brightBlack:"#57606a",brightRed:"#a40e26",brightGreen:"#1a7f37",brightYellow:"#bf8700",brightBlue:"#218bff",brightMagenta:"#a475f9",brightCyan:"#3192aa",brightWhite:"#8c959f"}},{id:"one-light",name:"One Light",variant:"light",colors:{background:"#fafafa",foreground:"#383a42",cursor:"#526eff",cursorAccent:"#fafafa",selectionBackground:"#e5e5e6",selectionForeground:"#383a42",black:"#383a42",red:"#e45649",green:"#50a14f",yellow:"#c18401",blue:"#4078f2",magenta:"#a626a4",cyan:"#0184bc",white:"#a0a1a7",brightBlack:"#696c77",brightRed:"#e45649",brightGreen:"#50a14f",brightYellow:"#c18401",brightBlue:"#4078f2",brightMagenta:"#a626a4",brightCyan:"#0184bc",brightWhite:"#d4d4d4"}},{id:"solarized-light",name:"Solarized Light",variant:"light",colors:{background:"#fdf6e3",foreground:"#657b83",cursor:"#657b83",cursorAccent:"#fdf6e3",selectionBackground:"#eee8d5",selectionForeground:"#657b83",black:"#073642",red:"#dc322f",green:"#859900",yellow:"#b58900",blue:"#268bd2",magenta:"#d33682",cyan:"#2aa198",white:"#eee8d5",brightBlack:"#002b36",brightRed:"#cb4b16",brightGreen:"#586e75",brightYellow:"#657b83",brightBlue:"#839496",brightMagenta:"#6c71c4",brightCyan:"#93a1a1",brightWhite:"#fdf6e3"}},{id:"tokyo-night-light",name:"Tokyo Night Light",variant:"light",colors:{background:"#e1e2e7",foreground:"#3760bf",cursor:"#3760bf",cursorAccent:"#e1e2e7",selectionBackground:"#b6bfe2",selectionForeground:"#3760bf",black:"#e9e9ed",red:"#f52a65",green:"#587539",yellow:"#8c6c3e",blue:"#2e7de9",magenta:"#9854f1",cyan:"#007197",white:"#6172b0",brightBlack:"#a1a6c5",brightRed:"#f52a65",brightGreen:"#587539",brightYellow:"#8c6c3e",brightBlue:"#2e7de9",brightMagenta:"#9854f1",brightCyan:"#007197",brightWhite:"#3760bf"}},{id:"nord-light",name:"Nord Light",variant:"light",colors:{background:"#eceff4",foreground:"#2e3440",cursor:"#2e3440",cursorAccent:"#eceff4",selectionBackground:"#d8dee9",selectionForeground:"#2e3440",black:"#2e3440",red:"#bf616a",green:"#a3be8c",yellow:"#ebcb8b",blue:"#81a1c1",magenta:"#b48ead",cyan:"#88c0d0",white:"#d8dee9",brightBlack:"#4c566a",brightRed:"#bf616a",brightGreen:"#a3be8c",brightYellow:"#ebcb8b",brightBlue:"#81a1c1",brightMagenta:"#b48ead",brightCyan:"#8fbcbb",brightWhite:"#eceff4"}}],q={light:"catppuccin-latte",dark:"snazzy"},r=a=>p.find(b=>b.id===a)??p[0];a.s(["DEFAULT_THEME_IDS",0,q,"TERMINAL_THEMES",0,p,"getTerminalTheme",0,r],83041);let s=(0,o.create)(a=>({themeIds:{...q},setTheme:(b,c)=>{a(a=>{let d={...a.themeIds,[b]:c};return fetch("/api/config",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({terminalTheme:d})}).catch(()=>{}),{themeIds:d}})},hydrate:b=>{a({themeIds:{...q,...b}})}}));a.s(["default",0,()=>{let{resolvedTheme:a}=h(),b="light"===a?"light":"dark",{themeIds:c,setTheme:d}=s(),e=r(c[b]);return{mode:b,themeIds:c,theme:e,setTerminalTheme:d,themes:p}},"initTerminalTheme",0,a=>{a&&s.getState().hydrate(a)}],480824)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0da5cj~._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[666680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},688947,(a,b,c)=>{b.exports=a.x("stream",()=>require("stream"))},406461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},522734,(a,b,c)=>{b.exports=a.x("fs",()=>require("fs"))},111794,a=>{"use strict";a.s(["MESSAGE_NAMESPACES",0,["common","sidebar","header","terminal","connection","workspace","login","onboarding","settings","stats","reset","reports","timeline","notification","session","messageHistory","webBrowser","mobile","toolsRequired","diff","shortcuts"]])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__12b2-y_._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[353723,a=>{"use strict";var b=a.i(127669),c=a.i(241196),d=a.i(404694),e=a.i(286255);a.s(["useAnchoredPopupScrollLock",0,function(a,f,g,h){let[i,j]=b.useState(!1);(0,e.useIsoLayoutEffect)(()=>{if(!a||!f||null==g)return void j(!1);let b=(0,c.ownerDocument)(g).documentElement.clientWidth,d=g.offsetWidth;j(b>0&&d>0&&d>=b-20)},[a,f,g]),(0,d.useScrollLock)(a&&(!f||i),h)}])},856626,a=>{"use strict";var b=a.i(179256),c=a.i(127669);let d=c.createContext(void 0);a.s(["useToolbarRootContext",0,function(a){let e=c.useContext(d);if(void 0===e&&!a)throw Error((0,b.default)(69));return e}])},132660,a=>{"use strict";let b=(0,a.i(564375).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],132660)},524256,a=>{"use strict";let b=(0,a.i(564375).default)("network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);a.s(["Network",0,b],524256)},874193,228561,781528,770280,393230,353076,884892,746248,951762,a=>{"use strict";a.s([],874193);var b=a.i(127669),c=a.i(1415),d=a.i(195433),e=a.i(832668),f=a.i(92856),g=a.i(395344),h=a.i(463880),i=a.i(179256);let j=b.createContext(void 0);function k(a){let c=b.useContext(j);if(void 0===c&&!a)throw Error((0,i.default)(47));return c}a.s(["PopoverRootContext",0,j,"usePopoverRootContext",0,k],228561);var l=a.i(456195),m=a.i(691387),n=a.i(790206),o=a.i(214739),p=a.i(963973),q=a.i(727482),r=a.i(791666),s=a.i(934051),t=a.i(953554),u=a.i(560783);let v={...s.popupStoreSelectors,disabled:(0,n.createSelector)(a=>a.disabled),instantType:(0,n.createSelector)(a=>a.instantType),openMethod:(0,n.createSelector)(a=>a.openMethod),openChangeReason:(0,n.createSelector)(a=>a.openChangeReason),modal:(0,n.createSelector)(a=>a.modal),focusManagerModal:(0,n.createSelector)(a=>a.focusManagerModal),stickIfOpen:(0,n.createSelector)(a=>a.stickIfOpen),titleElementId:(0,n.createSelector)(a=>a.titleElementId),descriptionElementId:(0,n.createSelector)(a=>a.descriptionElementId),openOnHover:(0,n.createSelector)(a=>a.openOnHover),closeDelay:(0,n.createSelector)(a=>a.closeDelay),hasViewport:(0,n.createSelector)(a=>a.hasViewport)};class w extends m.ReactStore{constructor(a){const c={...(0,s.createInitialPopupStoreState)(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,nested:!1,openOnHover:!1,closeDelay:0,hasViewport:!1,...a};c.open&&a?.mounted===void 0&&(c.mounted=!0),super(c,{popupRef:b.createRef(),backdropRef:b.createRef(),internalBackdropRef:b.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:b.createRef(),beforeContentFocusGuardRef:b.createRef(),stickIfOpenTimeout:new o.Timeout,triggerElements:new t.PopupTriggerMap},v)}setOpen=(a,b)=>{let c=b.reason===r.REASONS.triggerHover,d=b.reason===r.REASONS.triggerPress&&0===b.event.detail,e=!a&&(b.reason===r.REASONS.escapeKey||null==b.reason);if(b.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},this.context.onOpenChange?.(a,b),b.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(a,b);let f=()=>{let c={open:a,openChangeReason:b.reason},d=b.trigger?.id??null;(d||a)&&(c.activeTriggerId=d,c.activeTriggerElement=b.trigger??null),this.update(c)};c?(this.set("stickIfOpen",!0),this.context.stickIfOpenTimeout.start(u.PATIENT_CLICK_THRESHOLD,()=>{this.set("stickIfOpen",!1)}),l.flushSync(f)):f(),d||e?this.set("instantType",d?"click":"dismiss"):b.reason===r.REASONS.focusOut?this.set("instantType","focus"):this.set("instantType",void 0)};static useStore(a,b){let c=(0,p.useRefWithInit)(()=>new w(b)).current,d=a??c;return(0,q.useOnMount)(c.disposeEffect),d}disposeEffect=()=>this.context.stickIfOpenTimeout.disposeEffect()}a.s(["PopoverStore",0,w],781528);var x=a.i(149137),y=a.i(153651),z=a.i(33559),A=a.i(508171);function B({props:a}){let{children:i,open:k,defaultOpen:l=!1,onOpenChange:m,onOpenChangeComplete:n,modal:o=!1,handle:p,triggerId:q,defaultTriggerId:s=null}=a,t=w.useStore(p?.store,{modal:o,open:l,openProp:k,activeTriggerId:s,triggerIdProp:q});(0,c.useOnFirstRender)(()=>{void 0===k&&!1===t.state.open&&!0===l&&t.update({open:!0,activeTriggerId:s})}),t.useControlledProp("openProp",k),t.useControlledProp("triggerIdProp",q);let u=t.useState("open"),v=t.useState("payload");t.useContextCallback("onOpenChange",m),t.useContextCallback("onOpenChangeComplete",n);let{openMethod:C,triggerProps:D}=(0,z.useOpenInteractionType)(u);(0,y.useImplicitActiveTrigger)(t);let{forceUnmount:E}=(0,y.useOpenStateTransitions)(u,t,()=>{t.update({stickIfOpen:!0,openChangeReason:null})});b.useEffect(()=>{u||t.context.stickIfOpenTimeout.clear()},[t,u]);let F=b.useCallback(a=>{let b=(0,x.createChangeEventDetails)(a);return b.preventUnmountOnClose=()=>{t.set("preventUnmountingOnClose",!0)},b},[t]),G=b.useCallback(()=>{t.setOpen(!1,F(r.REASONS.imperativeAction))},[t,F]);b.useImperativeHandle(a.actionsRef,()=>({unmount:E,close:G}),[E,G]);let H=(0,h.useSyncedFloatingRootContext)({popupStore:t,onOpenChange:t.setOpen}),I=(0,d.useDismiss)(H,{outsidePressEvent:{mouse:"trap-focus"===o?"sloppy":"intentional",touch:"sloppy"}}),J=(0,f.useRole)(H),{getReferenceProps:K,getFloatingProps:L,getTriggerProps:M}=(0,e.useInteractions)([I,J]),N=b.useMemo(()=>K(D),[K,D]),O=b.useMemo(()=>M(D),[M,D]),P=b.useMemo(()=>L(),[L]);t.useSyncedValues({modal:o,openMethod:C,activeTriggerProps:N,inactiveTriggerProps:O,popupProps:P,floatingRootContext:H,nested:null!=(0,g.useFloatingParentNodeId)()});let Q=b.useMemo(()=>({store:t}),[t]);return(0,A.jsx)(j.Provider,{value:Q,children:"function"==typeof i?i({payload:v}):i})}a.s(["PopoverRoot",0,function(a){return k(!0)?(0,A.jsx)(B,{props:a}):(0,A.jsx)(g.FloatingTree,{children:(0,A.jsx)(B,{props:a})})}],770280);var C=a.i(20700),D=a.i(567962),E=a.i(716334),F=a.i(910055),G=a.i(57387),H=a.i(709829),I=a.i(743514),J=a.i(592343),K=a.i(611599),L=a.i(281921),M=a.i(407973);function N(a,c){let d=b.useRef(null),e=(0,K.useStableCallback)(b=>{l.flushSync(()=>{a.setOpen(!1,(0,x.createChangeEventDetails)(r.REASONS.focusOut,b.nativeEvent,b.currentTarget))});let c=(0,M.getTabbableBeforeElement)(d.current);c?.focus()});return{preFocusGuardRef:d,handlePreFocusGuardFocus:e,handleFocusTargetFocus:(0,K.useStableCallback)(b=>{let d=a.select("positionerElement");if(d&&(0,M.isOutsideEvent)(b,d))a.context.beforeContentFocusGuardRef.current?.focus();else{l.flushSync(()=>{a.setOpen(!1,(0,x.createChangeEventDetails)(r.REASONS.focusOut,b.nativeEvent,b.currentTarget))});let e=(0,M.getTabbableAfterElement)(a.context.triggerFocusTargetRef.current||c.current);for(;null!==e&&(0,L.contains)(d,e);){let a=e;if((e=(0,M.getNextTabbable)(e))===a)break}e?.focus()}})}}a.s(["useTriggerFocusGuards",0,N],393230);let O=b.forwardRef(function(a,c){let{render:d,className:f,disabled:g=!1,nativeButton:h=!0,handle:j,payload:l,openOnHover:m=!1,delay:n=300,closeDelay:o=0,id:p,style:q,...s}=a,t=k(!0),v=j?.store??t?.store;if(!v)throw Error((0,i.default)(74));let w=(0,I.useBaseUiId)(p),x=v.useState("isTriggerActive",w),z=v.useState("floatingRootContext"),B=v.useState("isOpenedByTrigger",w),K=b.useRef(null),{registerTrigger:L,isMountedByThisTrigger:M}=(0,y.useTriggerDataForwarding)(w,K,v,{payload:l,disabled:g,openOnHover:m,closeDelay:o}),O=v.useState("openChangeReason"),P=v.useState("stickIfOpen"),Q=v.useState("openMethod"),R=v.useState("focusManagerModal"),S=(0,H.useHoverReferenceInteraction)(z,{enabled:null!=z&&m&&("touch"!==Q||O!==r.REASONS.triggerPress),mouseOnly:!0,move:!1,handleClose:(0,F.safePolygon)(),restMs:n,delay:{close:o},triggerElementRef:K,isActiveTrigger:x,isClosing:()=>"ending"===v.select("transitionStatus")}),T=(0,G.useClick)(z,{enabled:null!=z,stickIfOpen:P}),U=(0,e.useInteractions)([T]),V=v.useState("triggerProps",M),{getButtonProps:W,buttonRef:X}=(0,C.useButton)({disabled:g,native:h}),Y=b.useMemo(()=>({open:a=>a&&O===r.REASONS.triggerPress?D.pressableTriggerOpenStateMapping.open(a):D.triggerOpenStateMapping.open(a)}),[O]),Z=(0,E.useRenderElement)("button",a,{state:{disabled:g,open:B},ref:[X,c,L,K],props:[U.getReferenceProps(),S,V,{[u.CLICK_TRIGGER_IDENTIFIER]:"",id:w},s,W],stateAttributesMapping:Y}),{preFocusGuardRef:$,handlePreFocusGuardFocus:_,handleFocusTargetFocus:aa}=N(v,K);return x&&!R?(0,A.jsxs)(b.Fragment,{children:[(0,A.jsx)(J.FocusGuard,{ref:$,onFocus:_}),(0,A.jsx)(b.Fragment,{children:Z},w),(0,A.jsx)(J.FocusGuard,{ref:v.context.triggerFocusTargetRef,onFocus:aa})]}):(0,A.jsx)(b.Fragment,{children:Z},w)});a.s(["PopoverTrigger",0,O],353076);var P=a.i(606359);let Q=b.createContext(void 0);a.s(["PopoverPortalContext",0,Q,"usePopoverPortalContext",0,function(){let a=b.useContext(Q);if(void 0===a)throw Error((0,i.default)(45));return a}],884892);let R=b.forwardRef(function(a,b){let{keepMounted:c=!1,...d}=a,{store:e}=k();return e.useState("mounted")||c?(0,A.jsx)(Q.Provider,{value:c,children:(0,A.jsx)(P.FloatingPortal,{ref:b,...d})}):null});a.s(["PopoverPortal",0,R],746248);let S=b.createContext(void 0);a.s(["PopoverPositionerContext",0,S,"usePopoverPositionerContext",0,function(){let a=b.useContext(S);if(!a)throw Error((0,i.default)(46));return a}],951762)},182659,a=>{"use strict";var b=a.i(127669),c=a.i(7461),d=a.i(286255),e=a.i(395344),f=a.i(228561),g=a.i(951762),h=a.i(847105),i=a.i(884892),j=a.i(623268),k=a.i(791666),l=a.i(560783),m=a.i(897605),n=a.i(511134),o=a.i(980726),p=a.i(353723),q=a.i(508171);let r=b.forwardRef(function(a,r){let{render:s,className:t,anchor:u,positionMethod:v="absolute",side:w="bottom",align:x="center",sideOffset:y=0,alignOffset:z=0,collisionBoundary:A="clipping-ancestors",collisionPadding:B=5,arrowPadding:C=5,sticky:D=!1,disableAnchorTracking:E=!1,collisionAvoidance:F=l.POPUP_COLLISION_AVOIDANCE,style:G,...H}=a,{store:I}=(0,f.usePopoverRootContext)(),J=(0,i.usePopoverPortalContext)(),K=(0,e.useFloatingNodeId)(),L=I.useState("floatingRootContext"),M=I.useState("mounted"),N=I.useState("open"),O=I.useState("openChangeReason"),P=I.useState("activeTriggerElement"),Q=I.useState("modal"),R=I.useState("openMethod"),S=I.useState("positionerElement"),T=I.useState("instantType"),U=I.useState("transitionStatus"),V=I.useState("hasViewport"),W=b.useRef(null),X=(0,m.useAnimationsFinished)(S,!1,!1),Y=(0,h.useAnchorPositioning)({anchor:u,floatingRootContext:L,positionMethod:v,mounted:M,side:w,sideOffset:y,align:x,alignOffset:z,arrowPadding:C,collisionBoundary:A,collisionPadding:B,sticky:D,disableAnchorTracking:E,keepMounted:J,nodeId:K,collisionAvoidance:F,adaptiveOrigin:V?n.adaptiveOrigin:void 0}),Z=L.useState("domReferenceElement");(0,d.useIsoLayoutEffect)(()=>{let a=W.current;if(Z&&(W.current=Z),a&&Z&&Z!==a){I.set("instantType",void 0);let a=new AbortController;return X(()=>{I.set("instantType","trigger-change")},a.signal),()=>{a.abort()}}},[Z,X,I]);let $={open:N,side:Y.side,align:Y.align,anchorHidden:Y.anchorHidden,instant:T};(0,p.useAnchoredPopupScrollLock)(N&&!0===Q&&O!==k.REASONS.triggerHover,"touch"===R,S,P);let _=b.useCallback(a=>{I.set("positionerElement",a)},[I]),aa=(0,o.usePositioner)(a,$,{styles:Y.positionerStyles,transitionStatus:U,props:H,refs:[r,_],hidden:!M,inert:!N});return(0,q.jsxs)(g.PopoverPositionerContext.Provider,{value:Y,children:[M&&!0===Q&&O!==k.REASONS.triggerHover&&(0,q.jsx)(j.InternalBackdrop,{ref:I.context.internalBackdropRef,inert:(0,c.inertValue)(!N),cutout:P}),(0,q.jsx)(e.FloatingNode,{id:K,children:aa})]})});a.s(["PopoverPositioner",0,r])},158799,a=>{"use strict";var b,c=a.i(508171);a.i(874193);var d=a.i(770280),e=a.i(353076),f=a.i(746248),g=a.i(182659),h=a.i(127669),i=a.i(128107),j=a.i(647591),k=a.i(298294),l=a.i(228561),m=a.i(951762),n=a.i(567962),o=a.i(771353),p=a.i(804795),q=a.i(716334),r=a.i(791666),s=a.i(158334),t=a.i(856626),u=a.i(935080),v=a.i(286255),w=a.i(611599);let x=h.createContext(void 0);function y(a){let{value:b,children:d}=a;return(0,c.jsx)(x.Provider,{value:b,children:d})}let z={...n.popupStateMapping,...o.transitionStatusMapping},A=h.forwardRef(function(a,b){let{className:d,render:e,initialFocus:f,finalFocus:g,style:n,...o}=a,{store:v}=(0,l.usePopoverRootContext)(),x=(0,m.usePopoverPositionerContext)(),A=null!=(0,t.useToolbarRootContext)(!0),{context:B,hasClosePart:C}=function(){let[a,b]=h.useState(0),c=(0,w.useStableCallback)(()=>(b(a=>a+1),()=>{b(a=>Math.max(0,a-1))}));return{context:h.useMemo(()=>({register:c}),[c]),hasClosePart:a>0}}(),D=v.useState("open"),E=v.useState("openMethod"),F=v.useState("instantType"),G=v.useState("transitionStatus"),H=v.useState("popupProps"),I=v.useState("titleElementId"),J=v.useState("descriptionElementId"),K=v.useState("modal"),L=v.useState("mounted"),M=v.useState("openChangeReason"),N=v.useState("activeTriggerElement"),O=v.useState("floatingRootContext");(0,p.useOpenChangeComplete)({open:D,ref:v.context.popupRef,onComplete(){D&&v.context.onOpenChangeComplete?.(!0)}});let P=v.useState("disabled"),Q=v.useState("openOnHover"),R=v.useState("closeDelay");(0,k.useHoverFloatingInteraction)(O,{enabled:Q&&!P,closeDelay:R});let S=void 0===f?function(a){return"touch"!==a||v.context.popupRef.current}:f,T={open:D,side:x.side,align:x.align,instant:F,transitionStatus:G},U=!1!==K&&C;v.useSyncedValue("focusManagerModal",U);let V=h.useCallback(a=>{v.set("popupElement",a)},[v]),W=(0,q.useRenderElement)("div",a,{state:T,ref:[b,v.context.popupRef,V],props:[H,{"aria-labelledby":I,"aria-describedby":J,onKeyDown(a){A&&s.COMPOSITE_KEYS.has(a.key)&&a.stopPropagation()}},(0,u.getDisabledMountTransitionStyles)(G),o],stateAttributesMapping:z});return(0,c.jsx)(j.FloatingFocusManager,{context:O,openInteractionType:E,modal:U,disabled:!L||M===r.REASONS.triggerHover,initialFocus:S,returnFocus:g,restoreFocus:"popup",previousFocusableElement:(0,i.isHTMLElement)(N)?N:void 0,nextFocusableElement:v.context.triggerFocusTargetRef,beforeContentFocusGuardRef:v.context.beforeContentFocusGuardRef,children:(0,c.jsx)(y,{value:B,children:W})})}),B=h.forwardRef(function(a,b){let{className:c,render:d,style:e,...f}=a,{store:g}=(0,l.usePopoverRootContext)(),h=g.useState("open"),{arrowRef:i,side:j,align:k,arrowUncentered:o,arrowStyles:p}=(0,m.usePopoverPositionerContext)();return(0,q.useRenderElement)("div",a,{state:{open:h,side:j,align:k,uncentered:o},ref:[b,i],props:[{style:p,"aria-hidden":!0},f],stateAttributesMapping:n.popupStateMapping})}),C={...n.popupStateMapping,...o.transitionStatusMapping},D=h.forwardRef(function(a,b){let{className:c,render:d,style:e,...f}=a,{store:g}=(0,l.usePopoverRootContext)(),h=g.useState("open"),i=g.useState("mounted"),j=g.useState("transitionStatus"),k=g.useState("openChangeReason");return(0,q.useRenderElement)("div",a,{state:{open:h,transitionStatus:j},ref:[g.context.backdropRef,b],props:[{role:"presentation",hidden:!i,style:{pointerEvents:k===r.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},f],stateAttributesMapping:C})});var E=a.i(743514);let F=h.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{store:g}=(0,l.usePopoverRootContext)(),h=(0,E.useBaseUiId)(f.id);return(0,v.useIsoLayoutEffect)(()=>(g.set("titleElementId",h),()=>{g.set("titleElementId",void 0)}),[g,h]),(0,q.useRenderElement)("h2",a,{ref:b,props:[{id:h},f]})}),G=h.forwardRef(function(a,b){let{render:c,className:d,style:e,...f}=a,{store:g}=(0,l.usePopoverRootContext)(),h=(0,E.useBaseUiId)(f.id);return(0,v.useIsoLayoutEffect)(()=>(g.set("descriptionElementId",h),()=>{g.set("descriptionElementId",void 0)}),[g,h]),(0,q.useRenderElement)("p",a,{ref:b,props:[{id:h},f]})});var H=a.i(20700),I=a.i(149137);let J=h.forwardRef(function(a,b){let c,{render:d,className:e,disabled:f=!1,nativeButton:g=!0,style:i,...j}=a,{buttonRef:k,getButtonProps:m}=(0,H.useButton)({disabled:f,focusableWhenDisabled:!1,native:g}),{store:n}=(0,l.usePopoverRootContext)();return c=h.useContext(x),(0,v.useIsoLayoutEffect)(()=>c?.register(),[c]),(0,q.useRenderElement)("button",a,{ref:[b,k],props:[{onClick(a){n.setOpen(!1,(0,I.createChangeEventDetails)(r.REASONS.closePress,a.nativeEvent,a.currentTarget))}},j,m]})}),K=((b={}).popupWidth="--popup-width",b.popupHeight="--popup-height",b);var L=a.i(358932);let M={activationDirection:a=>a?{"data-activation-direction":a}:null},N=h.forwardRef(function(a,b){let{render:c,className:d,style:e,children:f,...g}=a,{store:h}=(0,l.usePopoverRootContext)(),{side:i}=(0,m.usePopoverPositionerContext)(),j=h.useState("instantType"),{children:k,state:n}=(0,L.usePopupViewport)({store:h,side:i,cssVars:K,children:f}),o={activationDirection:n.activationDirection,transitioning:n.transitioning,instant:j};return(0,q.useRenderElement)("div",a,{state:o,ref:b,props:[g,{children:k}],stateAttributesMapping:M})});var O=a.i(179256),P=a.i(781528);class Q{constructor(){this.store=new P.PopoverStore}open(a){let b=a?this.store.context.triggerElements.getById(a)??void 0:void 0;if(a&&!b)throw Error((0,O.default)(80,a));this.store.setOpen(!0,(0,I.createChangeEventDetails)(r.REASONS.imperativeAction,void 0,b))}close(){this.store.setOpen(!1,(0,I.createChangeEventDetails)(r.REASONS.imperativeAction,void 0,void 0))}get isOpen(){return this.store.state.open}}a.s(["Arrow",0,B,"Backdrop",0,D,"Close",0,J,"Description",0,G,"Handle",0,Q,"Popup",0,A,"Portal",()=>f.PopoverPortal,"Positioner",()=>g.PopoverPositioner,"Root",()=>d.PopoverRoot,"Title",0,F,"Trigger",()=>e.PopoverTrigger,"Viewport",0,N,"createHandle",0,function(){return new Q}],248351);var R=a.i(248351),R=R,S=a.i(799856);a.s(["Popover",0,function({...a}){return(0,c.jsx)(R.Root,{"data-slot":"popover",...a})},"PopoverContent",0,function({className:a,align:b="center",alignOffset:d=0,side:e="bottom",sideOffset:f=4,...g}){return(0,c.jsx)(R.Portal,{children:(0,c.jsx)(R.Positioner,{align:b,alignOffset:d,side:e,sideOffset:f,className:"isolate z-50",children:(0,c.jsx)(R.Popup,{"data-slot":"popover-content",className:(0,S.cn)("z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",a),...g})})})},"PopoverTrigger",0,function({...a}){return(0,c.jsx)(R.Trigger,{"data-slot":"popover-trigger",...a})}],158799)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=_04iqb-o._.js.map
|