purplemux 0.3.2 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +116 -116
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +7 -7
- package/.next/standalone/.next/server/chunks/[externals]__0s~lw5_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-vpxlt._.js +5 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.wdm~p._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.xasox._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0075vnc._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02.ow52._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__023w5uy._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03rse4i._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__048funf._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05le.ev._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05~jgqd._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06kid0d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07ajdqq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07fh~7w._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0mky_tj._.js → [root-of-the-server]__08nq4la._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ageh3g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0atje0b._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cejele._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cy47p4._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d9yo3_._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e5am-o._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e6z0u6._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0erq9rf._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f-1scw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f0-oim._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fdh07q._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00o93bf._.js → [root-of-the-server]__0fe0pqx._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fjtk0d._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g-v44c._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0gm~y1a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0h-9m0e._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0i0mb1-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j3kgjw._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jqcz6h._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0lp1y.v._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0m9hms3._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mpstz.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0oqbs5g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0pta11j._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0q0laz1._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qpwsk~._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sgq23a._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0sisigk._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t27n38._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ts_s1k._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vno7dh._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vroi1-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wae66j._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x01z7b._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xgh-_t._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xs6_~.._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y774bl._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0y_v9~l._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10v85i5._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__110w2ya._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11b3nvp._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12_dfe-._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12lg8hi._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12v9yor._.js +3 -0
- package/.next/standalone/.next/server/chunks/_07f-e5d._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0abd-ef._.js +3 -0
- package/.next/standalone/.next/server/chunks/_0naftfn._.js +1 -1
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_019~zpv.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_054vaqw.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_05soyh7.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0dag3xq.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0drg5k..js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0qpjud8.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0to2msc.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0uk385d.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_pages-api_0v8pump.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_06lqtoi._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_0bj652.._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05vtngr._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07jm3ld._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__00fyckt._.js → [root-of-the-server]__0fdpmgm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__02~n2ds._.js → [root-of-the-server]__0hixhy3._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0lnsb8q._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ytsvx3._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-0n2jc._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0-w3tj9._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0.asmh_._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0.~7e5x._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0025oot._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0148tmw._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_03.p176._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0y_feze._.js → _03u5alz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_05enhz-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_05oyq08._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0-gv~al._.js → _05qk2n5._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_06mfd2z._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_00zzfsm._.js → _072p152._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0.stp0n._.js → _08~3wi.._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_09n7sza._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/_0b3mmpo._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_09l7tmm._.js → _0e8bhy5._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/_0g4dxt7._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0h7bs4u._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_12l2tic._.js → _0injlej._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0k_04fj._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0l_4npy._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_02eucpw._.js → _0mrdl.g._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0ob2rr-._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0qzs~4y._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0olu-g8._.js → _0r.fjs0._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/{_10dec5o._.js → _0sju65h._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_00cx0p2._.js → _0tk3_d1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0vebac6._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0w7x_09._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_053tm~z._.js → _0wrhe~n._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0xnk7ht._.js +18 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0bhsmmv._.js → _0xxqycz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0kzht5v._.js → _10eoz_a._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0k0r2i-._.js → _10hul60._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_10uebjl._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_11m23bw._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_13s7t5u._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{messages_0k204ao._.js → messages_02_r1om._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{messages_0f3u1ly._.js → messages_0u_y48r._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_settings_json_[json]_cjs_0ksu4_w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_de_timeline_json_[json]_cjs_0_i8-gb._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_settings_json_[json]_cjs_0qwl-zt._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_en_timeline_json_[json]_cjs_0a50w3r._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_settings_json_[json]_cjs_0ce_kv6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_es_timeline_json_[json]_cjs_07-b7ka._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_settings_json_[json]_cjs_0h_6lba._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_fr_timeline_json_[json]_cjs_045zga0._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_settings_json_[json]_cjs_0pg~fls._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ja_timeline_json_[json]_cjs_0iwksd.._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_settings_json_[json]_cjs_07xpfc8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ko_timeline_json_[json]_cjs_03gxaph._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_settings_json_[json]_cjs_0frspzp._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_timeline_json_[json]_cjs_0mhm8bo._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_settings_json_[json]_cjs_08ex00.._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_ru_timeline_json_[json]_cjs_104t_vy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_settings_json_[json]_cjs_0piu0da._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_tr_timeline_json_[json]_cjs_11fne8p._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_settings_json_[json]_cjs_0uazwgy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_timeline_json_[json]_cjs_0g0-bd6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_settings_json_[json]_cjs_09u0c5l._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_timeline_json_[json]_cjs_0b3tm.x._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0.l39rf._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_07i.2e~._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_0bbmd88._.js → node_modules_0az5xxz._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0cx6hl6._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_02oar3h._.js → node_modules_0g6n2o4._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0v0j4dl._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0wwbj_z._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0d_1ie5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0ik66ii._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0k730f5._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_pages_0edfh6g.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0n3s0.7._.js → src_components_054lzv8._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_components_07a_zfh._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0gkfyrc._.js → src_components_0_j7p.~._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_components_05-kki3._.js → src_components_0dzgkvt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_components_0fb83uz._.js → src_components_0l6f_-1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_components_11nysou._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_shortcuts_cheat-sheet-dialog_tsx_0i2pbva._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_stats_session-section_tsx_0imh21c._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_ui_tooltip_tsx_0nba54u._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-browser-title_ts_0bw6.cb._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_hooks_use-workspace-store_ts_0h40e5c._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +116 -116
- package/.next/standalone/.next/server/middleware.js +1 -1
- package/.next/standalone/.next/server/pages/_app/build-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_app.js +5 -5
- package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_document.js +3 -2
- package/.next/standalone/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/_error/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/_error/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/_error.js +7 -6
- package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/login.js +1 -1
- package/.next/standalone/.next/server/pages/api/auth/login.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/preflight.js +2 -2
- package/.next/standalone/.next/server/pages/api/auth/preflight.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/auth/setup.js +2 -2
- package/.next/standalone/.next/server/pages/api/auth/setup.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/check-agent.js +2 -2
- package/.next/standalone/.next/server/pages/api/check-agent.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/check-claude.js +2 -2
- package/.next/standalone/.next/server/pages/api/check-claude.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/api-guide.js +1 -1
- package/.next/standalone/.next/server/pages/api/cli/api-guide.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/console.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/eval.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/network.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/screenshot.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/browser/url.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/result.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/send.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId]/status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js +3 -3
- package/.next/standalone/.next/server/pages/api/cli/tabs/[tabId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/tabs.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js +2 -2
- package/.next/standalone/.next/server/pages/api/cli/workspaces.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/codex/launch-args.js +4 -4
- package/.next/standalone/.next/server/pages/api/codex/launch-args.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/codex/launch-command.js +2 -2
- package/.next/standalone/.next/server/pages/api/codex/launch-command.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/codex/sessions.js +2 -2
- package/.next/standalone/.next/server/pages/api/codex/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/config.js +1 -1
- package/.next/standalone/.next/server/pages/api/config.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/branch.js +2 -1
- package/.next/standalone/.next/server/pages/api/git/branch.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/status.js +2 -1
- package/.next/standalone/.next/server/pages/api/git/status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/git/sync.js +2 -1
- package/.next/standalone/.next/server/pages/api/git/sync.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/commit-diff.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/cwd.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/cwd.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/diff.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/diff.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/file-content.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/file-content.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/git-log.js +2 -1
- package/.next/standalone/.next/server/pages/api/layout/git-log.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId]/move.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +4 -4
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/order.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +6 -6
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane/[paneId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout/pane.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout/pane.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/layout.js +2 -2
- package/.next/standalone/.next/server/pages/api/layout.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/message-history.js +2 -2
- package/.next/standalone/.next/server/pages/api/message-history.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/preflight/runtime.js +2 -2
- package/.next/standalone/.next/server/pages/api/preflight/runtime.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/push/vapid-key.js +1 -1
- package/.next/standalone/.next/server/pages/api/push/vapid-key.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/aggregated.js +3 -3
- package/.next/standalone/.next/server/pages/api/stats/aggregated.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/cache-status.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/cache-status.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/daily-report/cache.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js +2 -2
- package/.next/standalone/.next/server/pages/api/stats/daily-report/generate.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/daily-report/list.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/history.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/history.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/overview.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/overview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/projects.js +3 -3
- package/.next/standalone/.next/server/pages/api/stats/projects.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/sessions.js +3 -3
- package/.next/standalone/.next/server/pages/api/stats/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/stats/uptime.js +4 -4
- package/.next/standalone/.next/server/pages/api/stats/uptime.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/agent-launch.js +4 -4
- package/.next/standalone/.next/server/pages/api/status/agent-launch.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/hook.js +5 -5
- package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/status/statusline.js +9 -9
- package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js +2 -1
- package/.next/standalone/.next/server/pages/api/system/tmux-sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/timeline/sessions.js +2 -2
- package/.next/standalone/.next/server/pages/api/timeline/sessions.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/capture.js +2 -1
- package/.next/standalone/.next/server/pages/api/tmux/capture.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/info.js +2 -1
- package/.next/standalone/.next/server/pages/api/tmux/info.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js +2 -2
- package/.next/standalone/.next/server/pages/api/tmux/permission-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/plan-options.js +2 -2
- package/.next/standalone/.next/server/pages/api/tmux/plan-options.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +4 -4
- package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/reset.js +3 -3
- package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/tmux/send-input.js +2 -1
- package/.next/standalone/.next/server/pages/api/tmux/send-input.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/[workspaceId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/active.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/active.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId].js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/group/[groupId].js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/group/reorder.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/group.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/group.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/reorder.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/reorder.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace/validate.js +2 -2
- package/.next/standalone/.next/server/pages/api/workspace/validate.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/api/workspace.js +3 -3
- package/.next/standalone/.next/server/pages/api/workspace.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/de/404.html +1 -1
- package/.next/standalone/.next/server/pages/de/500.html +1 -1
- package/.next/standalone/.next/server/pages/en/404.html +1 -1
- package/.next/standalone/.next/server/pages/en/500.html +1 -1
- package/.next/standalone/.next/server/pages/es/404.html +1 -1
- package/.next/standalone/.next/server/pages/es/500.html +1 -1
- package/.next/standalone/.next/server/pages/fr/404.html +1 -1
- package/.next/standalone/.next/server/pages/fr/500.html +1 -1
- package/.next/standalone/.next/server/pages/index/build-manifest.json +20 -20
- package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +12 -12
- package/.next/standalone/.next/server/pages/index.js +19 -18
- package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/ja/404.html +1 -1
- package/.next/standalone/.next/server/pages/ja/500.html +1 -1
- package/.next/standalone/.next/server/pages/ko/404.html +1 -1
- package/.next/standalone/.next/server/pages/ko/500.html +1 -1
- package/.next/standalone/.next/server/pages/login/build-manifest.json +12 -12
- package/.next/standalone/.next/server/pages/login/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/login.js +16 -15
- package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
- package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
- package/.next/standalone/.next/server/pages/reports/build-manifest.json +20 -20
- package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reports/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/reports.js +21 -20
- package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/reset/build-manifest.json +3 -3
- package/.next/standalone/.next/server/pages/reset/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/reset.js +8 -7
- package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/ru/404.html +1 -1
- package/.next/standalone/.next/server/pages/ru/500.html +1 -1
- package/.next/standalone/.next/server/pages/stats/build-manifest.json +21 -21
- package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/stats/react-loadable-manifest.json +15 -15
- package/.next/standalone/.next/server/pages/stats.js +21 -20
- package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required/build-manifest.json +7 -7
- package/.next/standalone/.next/server/pages/tools-required/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/tools-required.js +12 -11
- package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/tr/404.html +1 -1
- package/.next/standalone/.next/server/pages/tr/500.html +1 -1
- package/.next/standalone/.next/server/pages/webview/build-manifest.json +20 -20
- package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/webview/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/webview.js +21 -20
- package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
- package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
- package/.next/standalone/.next/static/{pZhcwQ83aP87HDTIzzyJ6 → Fvh2ZScb-GvlCulutSHF4}/_buildManifest.js +8 -8
- package/.next/standalone/.next/static/chunks/0-_m9g0bmuw6r.js +1 -0
- package/.next/standalone/.next/static/chunks/0.sri97ob4xz_.js +1 -0
- package/.next/standalone/.next/static/chunks/0.vz-0q9sjiuw.js +1 -0
- package/.next/standalone/.next/static/chunks/0.wij9w6vcwhg.js +1 -0
- package/.next/standalone/.next/static/chunks/0.~3qhg2-u3ky.js +1 -0
- package/.next/standalone/.next/static/chunks/00oa6ti8pq8c5.js +1 -0
- package/.next/standalone/.next/static/chunks/00ubv7ksa49tb.js +1 -0
- package/.next/standalone/.next/static/chunks/00wzy83e7d7gj.js +24 -0
- package/.next/standalone/.next/static/chunks/{0p-l.y2j.t_~p.js → 034mn8n--pyn6.js} +1 -1
- package/.next/standalone/.next/static/chunks/03eq8u6303wiy.js +1 -0
- package/.next/standalone/.next/static/chunks/{0dp8cx7g1vggf.js → 03jt6vqn-xilm.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0vr33-opwem7e.js → 04wf7.-7.-mpm.js} +1 -1
- package/.next/standalone/.next/static/chunks/05gba103lqp8r.js +1 -0
- package/.next/standalone/.next/static/chunks/07fcrp1t~2ivl.js +1 -0
- package/.next/standalone/.next/static/chunks/{02o84r01jsc.z.js → 07hp_eaak.fq-.js} +1 -1
- package/.next/standalone/.next/static/chunks/07lv2vmm9ayna.js +1 -0
- package/.next/standalone/.next/static/chunks/{07yop4v9xcwb9.js → 07qi73ciivwg_.js} +1 -1
- package/.next/standalone/.next/static/chunks/07vu4hx3.8d.3.js +1 -0
- package/.next/standalone/.next/static/chunks/09-h3tvhahhc~.js +24 -0
- package/.next/standalone/.next/static/chunks/09tnrtb~sgtjh.js +1 -0
- package/.next/standalone/.next/static/chunks/0_0bwcp~9lea8.js +1 -0
- package/.next/standalone/.next/static/chunks/0_ac9op.u-oja.js +5 -0
- package/.next/standalone/.next/static/chunks/{09psmnx8qch_s.js → 0_eqdbfwxb.~r.js} +1 -1
- package/.next/standalone/.next/static/chunks/0_ybvkygns8mh.js +1 -0
- package/.next/standalone/.next/static/chunks/{0ddh4qmi2awdq.js → 0byb_iu6a-~vd.js} +1 -1
- package/.next/standalone/.next/static/chunks/0c79f5oit0rws.js +1 -0
- package/.next/standalone/.next/static/chunks/{0f73mm-~6n8dq.js → 0ci366svlb59q.js} +14 -14
- package/.next/standalone/.next/static/chunks/0cy3p~8fa8p~8.js +1 -0
- package/.next/standalone/.next/static/chunks/0d8s09d-izdbq.js +6 -0
- package/.next/standalone/.next/static/chunks/0dqqxbo0n.jgl.js +1 -0
- package/.next/standalone/.next/static/chunks/0eledkadcprk3.js +1 -0
- package/.next/standalone/.next/static/chunks/0f04ma94_t32g.js +16 -0
- package/.next/standalone/.next/static/chunks/{0zgde2~kd4r.x.js → 0fe99e3vjh08f.js} +1 -1
- package/.next/standalone/.next/static/chunks/0fjl0qhyaiq8_.js +1 -0
- package/.next/standalone/.next/static/chunks/0fq~w9fqllgym.js +25 -0
- package/.next/standalone/.next/static/chunks/0h4_jo8dw7z07.js +1 -0
- package/.next/standalone/.next/static/chunks/0ho64go6.dk2j.js +1 -0
- package/.next/standalone/.next/static/chunks/0i.mswv9.fh.y.js +1 -0
- package/.next/standalone/.next/static/chunks/0jckr4.c_ydck.js +1 -0
- package/.next/standalone/.next/static/chunks/0jfnx~s5fhzop.js +1 -0
- package/.next/standalone/.next/static/chunks/0jlwnzphd~x2n.js +1 -0
- package/.next/standalone/.next/static/chunks/{09vwjd8b2iu9z.js → 0jrvo~4zrssmr.js} +1 -1
- package/.next/standalone/.next/static/chunks/0jux26vr_9f3j.js +16 -0
- package/.next/standalone/.next/static/chunks/{0szl_dovu0hgw.js → 0kbvx8fek6-wx.js} +1 -1
- package/.next/standalone/.next/static/chunks/0kgbmub.~n57_.js +1 -0
- package/.next/standalone/.next/static/chunks/{0-wv6sqgkc5wn.js → 0kmmaeod1s.vw.js} +1 -1
- package/.next/standalone/.next/static/chunks/0ky_fbnkmgw7q.js +1 -0
- package/.next/standalone/.next/static/chunks/0n.6yhpaevnz8.js +5 -0
- package/.next/standalone/.next/static/chunks/0nfea.nmg9qb1.js +1 -0
- package/.next/standalone/.next/static/chunks/{0kduo1cn7.pw0.js → 0nrajy77zpml1.js} +1 -1
- package/.next/standalone/.next/static/chunks/{038s7u_er9zkt.js → 0odkktrw2jut5.js} +1 -1
- package/.next/standalone/.next/static/chunks/0ot3qpr3oci.i.js +1 -0
- package/.next/standalone/.next/static/chunks/0oy0bdczs6jt8.js +1 -0
- package/.next/standalone/.next/static/chunks/0pag.t~kqlyp3.js +1 -0
- package/.next/standalone/.next/static/chunks/0pt89sjdo2ipr.js +1 -0
- package/.next/standalone/.next/static/chunks/{119llmw30g8ci.js → 0qwx.1h21gux4.js} +1 -1
- package/.next/standalone/.next/static/chunks/0rxc9kp0e79gt.js +1 -0
- package/.next/standalone/.next/static/chunks/{0suuptk6vxdav.js → 0s3as241o1mvo.js} +1 -1
- package/.next/standalone/.next/static/chunks/0sk1~xt8d6eoe.js +1 -0
- package/.next/standalone/.next/static/chunks/{04q2v0ev2_m6..js → 0sp1248q.hqf1.js} +14 -14
- package/.next/standalone/.next/static/chunks/0ssj2l353r77p.js +1 -0
- package/.next/standalone/.next/static/chunks/0swujoqiaycd1.js +16 -0
- package/.next/standalone/.next/static/chunks/0sz2qp_r_~kqm.js +1 -0
- package/.next/standalone/.next/static/chunks/0tcl5-wzvdvh5.js +1 -0
- package/.next/standalone/.next/static/chunks/{0laeq9nzminux.js → 0tg_xz8-y12iw.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0nr0sc2w3n.t5.js → 0u0j5g_n8yfug.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0n7jmg60eqx1a.js → 0u0tuq5t1k65o.js} +1 -1
- package/.next/standalone/.next/static/chunks/{09vzrni555ktn.js → 0u27983xn~~l-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0cir.n19rqu--.js → 0vb_8vnjxy5d5.js} +3 -3
- package/.next/standalone/.next/static/chunks/0vgi6hb2nblyr.js +1 -0
- package/.next/standalone/.next/static/chunks/0vp09ip~b_3vk.js +1 -0
- package/.next/standalone/.next/static/chunks/{0s.jetayn5dov.js → 0w4iuufjlhqgh.js} +1 -1
- package/.next/standalone/.next/static/chunks/0xkgug8yajfut.css +1 -0
- package/.next/standalone/.next/static/chunks/0y-6.52zsn5h_.js +1 -0
- package/.next/standalone/.next/static/chunks/0zjazky.ffn.5.js +1 -0
- package/.next/standalone/.next/static/chunks/{0g3stahwz~vh..js → 0zqs7o6kl6cen.js} +2 -2
- package/.next/standalone/.next/static/chunks/0z~czj2_621fq.js +1 -0
- package/.next/standalone/.next/static/chunks/0~j4u9753jf1d.js +1 -0
- package/.next/standalone/.next/static/chunks/0~ln-rekt-0tf.js +1 -0
- package/.next/standalone/.next/static/chunks/0~nc~.u7n58cn.js +1 -0
- package/.next/standalone/.next/static/chunks/0~np-8bf4t.r-.js +13 -0
- package/.next/standalone/.next/static/chunks/0~nt8sh~v.8xl.js +1 -0
- package/.next/standalone/.next/static/chunks/{0cf9hfx9kzqzb.js → 11qkofozxwb7-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0-0~b1fbfsoe~.js → 123.1tju3vua2.js} +1 -1
- package/.next/standalone/.next/static/chunks/12euqjbocagwt.js +12 -0
- package/.next/standalone/.next/static/chunks/12jwdr.-.hy1i.js +1 -0
- package/.next/standalone/.next/static/chunks/13o8~8tv2fn~3.js +1 -0
- package/.next/standalone/.next/static/chunks/14l28wdk~4pdq.js +24 -0
- package/.next/standalone/.next/static/chunks/15fxeeh5uenh3.js +1 -0
- package/.next/standalone/.next/static/chunks/15lb7b31.h8mg.js +1 -0
- package/.next/standalone/.next/static/chunks/15t.i9ua4pzb8.js +1 -0
- package/.next/standalone/.next/static/chunks/{10a.wwlnw50l5.js → 16ec1gvsgte06.js} +1 -1
- package/.next/standalone/.next/static/chunks/16eok15c7...d.js +1 -0
- package/.next/standalone/.next/static/chunks/17_b-3tuiu.b3.js +1 -0
- package/.next/standalone/.next/static/chunks/{0~o730huopa91.js → 17_gs~3jl212-.js} +1 -1
- package/.next/standalone/.next/static/chunks/17o5i93-p9y8p.js +1 -0
- package/.next/standalone/.next/static/chunks/180mwv20.t.r5.js +1 -0
- package/.next/standalone/.next/static/chunks/{0nqofghl.17w_.js → 18bw2zz5ejwop.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0heaqdupr4xj6.js → turbopack-02undbvb.95yf.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-14fnzd5yh28gy.js → turbopack-0hhd0k47o3zqx.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0g2bivvnd2gyd.js → turbopack-0npdg9_tz9kge.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0w89gj59tho~b.js → turbopack-0vo-yp2tf_zye.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0rntg0~hh7h.0.js → turbopack-0x9g~5tbkb3z6.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0.6hkxuraykc4.js → turbopack-0ykf3nc1yfrio.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0~gn911-6yqk2.js → turbopack-0yuo~n90_i6mk.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0sk1uk-fkcqdx.js → turbopack-14age6cyn.1v1.js} +1 -1
- package/.next/standalone/.next/static/chunks/{turbopack-0jcfxeuy1ge85.js → turbopack-17_zn5.-e_pwc.js} +1 -1
- package/.next/standalone/messages/de/settings.json +21 -2
- package/.next/standalone/messages/de/timeline.json +2 -2
- package/.next/standalone/messages/en/settings.json +21 -2
- package/.next/standalone/messages/en/timeline.json +2 -2
- package/.next/standalone/messages/es/settings.json +21 -2
- package/.next/standalone/messages/es/timeline.json +2 -2
- package/.next/standalone/messages/fr/settings.json +21 -2
- package/.next/standalone/messages/fr/timeline.json +2 -2
- package/.next/standalone/messages/ja/settings.json +21 -2
- package/.next/standalone/messages/ja/timeline.json +2 -2
- package/.next/standalone/messages/ko/settings.json +21 -2
- package/.next/standalone/messages/ko/timeline.json +2 -2
- package/.next/standalone/messages/pt-BR/settings.json +21 -2
- package/.next/standalone/messages/pt-BR/timeline.json +2 -2
- package/.next/standalone/messages/ru/settings.json +21 -2
- package/.next/standalone/messages/ru/timeline.json +2 -2
- package/.next/standalone/messages/tr/settings.json +21 -2
- package/.next/standalone/messages/tr/timeline.json +2 -2
- package/.next/standalone/messages/zh-CN/settings.json +21 -2
- package/.next/standalone/messages/zh-CN/timeline.json +2 -2
- package/.next/standalone/messages/zh-TW/settings.json +21 -2
- package/.next/standalone/messages/zh-TW/timeline.json +2 -2
- package/.next/standalone/package.json +3 -18
- package/.next/standalone/server.js +1 -1
- package/dist/server.js +72 -37
- package/package.json +3 -18
- package/.next/standalone/.next/server/chunks/[externals]__07eo6bi._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00blz4b._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00erel2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00keyoc._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00rusjd._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07d3bxo._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07o3h27._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0a7jyyu._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0an3.o.._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ftuoz8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f~d9ug._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ge78._._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0il~az0._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0imsr4v._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j.h25r._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j.iwzl._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jnxiiv._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jzp9~o._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0k-me_v._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l5~4k1._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0mq5lip._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nh5fcb._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nwq7wo._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0nzphpn._.js +0 -5
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qslqkf._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u_xzjy._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0uf.iy5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0v9vm~c._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vdn0s8._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0vr68v2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xg~7a2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xoflea._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__108dnsu._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__12t3f_q._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13e34kx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0-mzwe.._.js +0 -3
- package/.next/standalone/.next/server/chunks/_00w4xwx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_00xyelm._.js +0 -3
- package/.next/standalone/.next/server/chunks/_019w2er._.js +0 -3
- package/.next/standalone/.next/server/chunks/_01shkub._.js +0 -3
- package/.next/standalone/.next/server/chunks/_048rfcr._.js +0 -3
- package/.next/standalone/.next/server/chunks/_04tsf.p._.js +0 -3
- package/.next/standalone/.next/server/chunks/_04wz5fx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_05xvbu4._.js +0 -3
- package/.next/standalone/.next/server/chunks/_06ntp-s._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0763djt._.js +0 -3
- package/.next/standalone/.next/server/chunks/_07dkduh._.js +0 -3
- package/.next/standalone/.next/server/chunks/_07g1_zx._.js +0 -3
- package/.next/standalone/.next/server/chunks/_08hfr9b._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0_7my__._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0_wofwd._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0f2px04._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0j.srxq._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0py_7vt._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0r3d5qz._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0rh64c3._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0swnrzn._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0w-k~4g._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0y9vgfm._.js +0 -3
- package/.next/standalone/.next/server/chunks/_0zym6f2._.js +0 -3
- package/.next/standalone/.next/server/chunks/_10i3z4~._.js +0 -3
- package/.next/standalone/.next/server/chunks/_13_e4ue._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__023cjc5._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08dxtof._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0glt298._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0-9ezhb._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_00zsk6a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_018tm~n._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_01l~by9._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_02rms4q._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_05bq96_._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_06_8vkn._.js +0 -18
- package/.next/standalone/.next/server/chunks/ssr/_078y4dk._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0_b1pqf._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0fota2a._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0hmni4d._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0j87~j9._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0m6flec._.js +0 -18
- package/.next/standalone/.next/server/chunks/ssr/_0nbe6mv._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0o0~1bt._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0pg-q18._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0qov9e_._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0w.1ts8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0w6jc9p._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0xdbgmz._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0z4bg3i._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_1289s74._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0_2gaq0._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0ydhwnx._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_0~y8-_1._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/node_modules_105or.6._.js +0 -7
- package/.next/standalone/.next/server/chunks/ssr/node_modules_1294wzs._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_030gj7p._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_04tdvwp._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_@base-ui_0bdox2f._.js +0 -3
- package/.next/standalone/.next/static/chunks/0.4j~sc70rsrv.js +0 -1
- package/.next/standalone/.next/static/chunks/0.p~i94j58w8~.js +0 -1
- package/.next/standalone/.next/static/chunks/0.znxwgo-re2m.js +0 -1
- package/.next/standalone/.next/static/chunks/01.oujz.z9cq..js +0 -1
- package/.next/standalone/.next/static/chunks/0176ysv-agwwx.js +0 -1
- package/.next/standalone/.next/static/chunks/01fkwofcdqa6f.js +0 -1
- package/.next/standalone/.next/static/chunks/031unywm42_xs.js +0 -1
- package/.next/standalone/.next/static/chunks/034iwnjckh0il.js +0 -5
- package/.next/standalone/.next/static/chunks/03s5e91.zrsi_.js +0 -16
- package/.next/standalone/.next/static/chunks/04h2nxywvycry.js +0 -1
- package/.next/standalone/.next/static/chunks/051z~faikiw.t.js +0 -1
- package/.next/standalone/.next/static/chunks/059bbrow.p4tj.js +0 -1
- package/.next/standalone/.next/static/chunks/05tuw5nb50jqc.js +0 -1
- package/.next/standalone/.next/static/chunks/05zk.ks4roh-4.js +0 -24
- package/.next/standalone/.next/static/chunks/075ypo7pvlqvz.js +0 -1
- package/.next/standalone/.next/static/chunks/094_-.5.ue3p4.js +0 -1
- package/.next/standalone/.next/static/chunks/09ntfl7b8vh1y.js +0 -1
- package/.next/standalone/.next/static/chunks/0_7~rgbkmfo_p.js +0 -1
- package/.next/standalone/.next/static/chunks/0_psc1~qmka.m.js +0 -12
- package/.next/standalone/.next/static/chunks/0amz67ga8kcr7.js +0 -1
- package/.next/standalone/.next/static/chunks/0ap~c~__qw2_0.js +0 -25
- package/.next/standalone/.next/static/chunks/0b__~uq5xxl7i.js +0 -1
- package/.next/standalone/.next/static/chunks/0celh22a.~-u6.js +0 -1
- package/.next/standalone/.next/static/chunks/0do_uad33n8hv.js +0 -1
- package/.next/standalone/.next/static/chunks/0dwxj97xm70gv.js +0 -1
- package/.next/standalone/.next/static/chunks/0euxle0n3zjm3.js +0 -1
- package/.next/standalone/.next/static/chunks/0fax5v7rwhm7g.js +0 -6
- package/.next/standalone/.next/static/chunks/0fj1a4qnwy9s3.js +0 -1
- package/.next/standalone/.next/static/chunks/0g6r03ctl6d0y.js +0 -1
- package/.next/standalone/.next/static/chunks/0gfoib7v3q4k_.js +0 -1
- package/.next/standalone/.next/static/chunks/0hrsfwzxhrdg9.js +0 -1
- package/.next/standalone/.next/static/chunks/0jml98og5gb-~.js +0 -1
- package/.next/standalone/.next/static/chunks/0k-8shbo0tie5.js +0 -1
- package/.next/standalone/.next/static/chunks/0kep81gqgj5f5.js +0 -24
- package/.next/standalone/.next/static/chunks/0kriln8d9.mdo.js +0 -1
- package/.next/standalone/.next/static/chunks/0l.88yoxq6tq8.js +0 -24
- package/.next/standalone/.next/static/chunks/0lrjdru2bjp.x.js +0 -1
- package/.next/standalone/.next/static/chunks/0m4185ccd6adw.js +0 -1
- package/.next/standalone/.next/static/chunks/0nm1wy7i1z64_.js +0 -1
- package/.next/standalone/.next/static/chunks/0o1duxjxx_ar8.css +0 -1
- package/.next/standalone/.next/static/chunks/0o24wzcc3lhqj.js +0 -1
- package/.next/standalone/.next/static/chunks/0oh5xnzizgxt1.js +0 -1
- package/.next/standalone/.next/static/chunks/0oj36.r5qgu_7.js +0 -1
- package/.next/standalone/.next/static/chunks/0p2m6i37_wprv.js +0 -1
- package/.next/standalone/.next/static/chunks/0pojknlc_-2a2.js +0 -1
- package/.next/standalone/.next/static/chunks/0pyrh4zs52aog.js +0 -1
- package/.next/standalone/.next/static/chunks/0qz-agdkp9v1q.js +0 -16
- package/.next/standalone/.next/static/chunks/0t5w4x7owhfbe.js +0 -1
- package/.next/standalone/.next/static/chunks/0tmyyb67fvkg1.js +0 -1
- package/.next/standalone/.next/static/chunks/0un7lj6-.1ad3.js +0 -5
- package/.next/standalone/.next/static/chunks/0v1teptb865rv.js +0 -1
- package/.next/standalone/.next/static/chunks/0vdw2~trmzg71.js +0 -1
- package/.next/standalone/.next/static/chunks/0x2nrv0y7ik9o.js +0 -1
- package/.next/standalone/.next/static/chunks/0x9prsaq~w.t-.js +0 -1
- package/.next/standalone/.next/static/chunks/0xa1.t1vj1mw0.js +0 -1
- package/.next/standalone/.next/static/chunks/0xfp8sfehtui9.js +0 -1
- package/.next/standalone/.next/static/chunks/0y.tsl2t9e.n..js +0 -1
- package/.next/standalone/.next/static/chunks/0zj5rfbadmr-8.js +0 -1
- package/.next/standalone/.next/static/chunks/0zkmymf6bhpsj.js +0 -1
- package/.next/standalone/.next/static/chunks/0~-0t4i~p3pcf.js +0 -1
- package/.next/standalone/.next/static/chunks/0~2x5.s5syxpx.js +0 -1
- package/.next/standalone/.next/static/chunks/12f3vk2rnkb8u.js +0 -13
- package/.next/standalone/.next/static/chunks/14kx686__yikg.js +0 -1
- package/.next/standalone/.next/static/chunks/14vposxx99rq4.js +0 -1
- package/.next/standalone/.next/static/chunks/1617_g18pxhs7.js +0 -1
- package/.next/standalone/.next/static/chunks/166~a4sl8v944.js +0 -1
- package/.next/standalone/.next/static/chunks/168.xhj-0lt8a.js +0 -16
- package/.next/standalone/.next/static/chunks/179vwj~zm1gya.js +0 -1
- package/.next/standalone/.next/static/chunks/17d9mnk-k8oqi.js +0 -1
- package/.next/standalone/.next/static/chunks/17z_vu-9k57ay.js +0 -1
- /package/.next/standalone/.next/static/{pZhcwQ83aP87HDTIzzyJ6 → Fvh2ZScb-GvlCulutSHF4}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{pZhcwQ83aP87HDTIzzyJ6 → Fvh2ZScb-GvlCulutSHF4}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[51395,a=>{"use strict";let b,c;var d=a.i(508171),e=a.i(127669),f=a.i(113952),g=a.i(369773),h=a.i(506766),i=a.i(493901);function j({groupSize:a,panelElement:b,styleProp:c}){let d,[e,f]=function(a){switch(typeof a){case"number":return[a,"px"];case"string":{let b=parseFloat(a);return a.endsWith("%")?[b,"%"]:a.endsWith("px")?[b,"px"]:a.endsWith("rem")?[b,"rem"]:a.endsWith("em")?[b,"em"]:a.endsWith("vh")?[b,"vh"]:a.endsWith("vw")?[b,"vw"]:[b,"%"]}}}(c);switch(f){case"%":d=e/100*a;break;case"px":d=e;break;case"rem":d=e*parseFloat(getComputedStyle(b.ownerDocument.body).fontSize);break;case"em":d=e*parseFloat(getComputedStyle(b).fontSize);break;case"vh":d=e/100*window.innerHeight;break;case"vw":d=e/100*window.innerWidth}return d}function k(a){return parseFloat(a.toFixed(3))}function l({group:a}){let{orientation:b,panels:c}=a;return c.reduce((a,c)=>a+="horizontal"===b?c.element.offsetWidth:c.element.offsetHeight,0)}function m(a){let{panels:b}=a,c=l({group:a});return 0===c?b.map(a=>({groupResizeBehavior:a.panelConstraints.groupResizeBehavior,collapsedSize:0,collapsible:!0===a.panelConstraints.collapsible,defaultSize:void 0,disabled:a.panelConstraints.disabled,minSize:0,maxSize:100,panelId:a.id})):b.map(a=>{let b,{element:d,panelConstraints:e}=a,f=0;void 0!==e.collapsedSize&&(f=k(j({groupSize:c,panelElement:d,styleProp:e.collapsedSize})/c*100)),void 0!==e.defaultSize&&(b=k(j({groupSize:c,panelElement:d,styleProp:e.defaultSize})/c*100));let g=0;void 0!==e.minSize&&(g=k(j({groupSize:c,panelElement:d,styleProp:e.minSize})/c*100));let h=100;return void 0!==e.maxSize&&(h=k(j({groupSize:c,panelElement:d,styleProp:e.maxSize})/c*100)),{groupResizeBehavior:e.groupResizeBehavior,collapsedSize:f,collapsible:!0===e.collapsible,defaultSize:b,disabled:e.disabled,minSize:g,maxSize:h,panelId:a.id}})}function n(a,b="Assertion error"){if(!a)throw Error(b)}function o(a,b){return Array.from(b).sort("horizontal"===a?p:q)}function p(a,b){let c=a.element.offsetLeft-b.element.offsetLeft;return 0!==c?c:a.element.offsetWidth-b.element.offsetWidth}function q(a,b){let c=a.element.offsetTop-b.element.offsetTop;return 0!==c?c:a.element.offsetHeight-b.element.offsetHeight}function r(a){return null!==a&&"object"==typeof a&&"nodeType"in a&&a.nodeType===Node.ELEMENT_NODE}function s(a,b){return{x:a.x>=b.left&&a.x<=b.right?0:Math.min(Math.abs(a.x-b.left),Math.abs(a.x-b.right)),y:a.y>=b.top&&a.y<=b.bottom?0:Math.min(Math.abs(a.y-b.top),Math.abs(a.y-b.bottom))}}function t(a){let{element:c,orientation:d,panels:e,separators:f}=a,g=o(d,Array.from(c.children).filter(r).map(a=>({element:a}))).map(({element:a})=>a),h=[],i=!1,j=!1,k=-1,m=-1,p=0,q,t=[];{let a=-1;for(let b of g)b.hasAttribute("data-panel")&&(a++,b.hasAttribute("data-disabled")||(p++,-1===k&&(k=a),m=a))}if(p>1){let c=-1;for(let o of g)if(o.hasAttribute("data-panel")){c++;let f=e.find(a=>a.element===o);if(f){if(q){let e,g=q.element.getBoundingClientRect(),p=o.getBoundingClientRect();if(j){let a="horizontal"===d?new DOMRect(g.right,g.top,0,g.height):new DOMRect(g.left,g.bottom,g.width,0),b="horizontal"===d?new DOMRect(p.left,p.top,0,p.height):new DOMRect(p.left,p.top,p.width,0);switch(t.length){case 0:e=[a,b];break;case 1:{let c=t[0],f=function({orientation:a,rects:b,targetRect:c}){let d={x:c.x+c.width/2,y:c.y+c.height/2},e,f=Number.MAX_VALUE;for(let c of b){let{x:b,y:g}=s(d,c),h="horizontal"===a?b:g;h<f&&(f=h,e=c)}return n(e,"No rect found"),e}({orientation:d,rects:[g,p],targetRect:c.element.getBoundingClientRect()});e=[c,f===g?b:a];break}default:e=t}}else e=t.length?t:["horizontal"===d?new DOMRect(g.right,p.top,p.left-g.right,p.height):new DOMRect(p.left,g.bottom,p.width,p.top-g.bottom)];for(let d of e){let e="width"in d?d:d.element.getBoundingClientRect(),g=(void 0===b&&(b="function"==typeof matchMedia&&!!matchMedia("(pointer:coarse)").matches),b)?a.resizeTargetMinimumSize.coarse:a.resizeTargetMinimumSize.fine;if(e.width<g){let a=g-e.width;e=new DOMRect(e.x-a/2,e.y,e.width+a,e.height)}if(e.height<g){let a=g-e.height;e=new DOMRect(e.x,e.y-a/2,e.width,e.height+a)}let j=c<=k||c>m;i||j||h.push({group:a,groupSize:l({group:a}),panels:[q,f],separator:"width"in d?void 0:d,rect:e}),i=!1}}j=!1,q=f,t=[]}}else if(o.hasAttribute("data-separator")){null!==o.ariaDisabled&&(i=!0);let a=f.find(a=>a.element===o);a?t.push(a):(q=void 0,t=[])}else j=!0}return h}class u{#a={};addListener(a,b){let c=this.#a[a];return void 0===c?this.#a[a]=[b]:c.includes(b)||c.push(b),()=>{this.removeListener(a,b)}}emit(a,b){let c=this.#a[a];if(void 0!==c)if(1===c.length)c[0].call(null,b);else{let a=!1,d=null,e=Array.from(c);for(let c=0;c<e.length;c++){let f=e[c];try{f.call(null,b)}catch(b){null===d&&(a=!0,d=b)}}if(a)throw d}}removeAllListeners(){this.#a={}}removeListener(a,b){let c=this.#a[a];if(void 0!==c){let a=c.indexOf(b);a>=0&&c.splice(a,1)}}}let v=new Map,w=new u;function x(a,b){for(let[b]of v)if(b.id===a)return b}function y(a,b){for(let[b,c]of v)if(b.id===a)return c;if(b)throw Error(`Could not find data for Group with id ${a}`)}function z(a,b){return w.addListener("groupChange",c=>{c.group.id===a&&b(c)})}function A(a,b){let c=v.get(a);(v=new Map(v)).set(a,b),w.emit("groupChange",{group:a,prev:c,next:b})}let B=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function C(a){let b=a.length;for(;b--;){let c=a[b];if(n(c,"Missing node"),function(a){let b,c=getComputedStyle(a);return!!("fixed"===c.position||"auto"!==c.zIndex&&("static"!==c.position||"flex"===(b=getComputedStyle(F(a)??a).display)||"inline-flex"===b)||1>+c.opacity||"transform"in c&&"none"!==c.transform||"webkitTransform"in c&&"none"!==c.webkitTransform||"mixBlendMode"in c&&"normal"!==c.mixBlendMode||"filter"in c&&"none"!==c.filter||"webkitFilter"in c&&"none"!==c.webkitFilter||"isolation"in c&&"isolate"===c.isolation||B.test(c.willChange)||"touch"===c.webkitOverflowScrolling)}(c))return c}return null}function D(a){return a&&Number(getComputedStyle(a).zIndex)||0}function E(a){let b=[];for(;a;)b.push(a),a=F(a);return b}function F(a){let{parentNode:b}=a;return null!==b&&"object"==typeof b&&"nodeType"in b&&b.nodeType===Node.DOCUMENT_FRAGMENT_NODE?b.host:b}function G(a,b){let c=[];return b.forEach((b,d)=>{if(d.disabled)return;let e=t(d),f=function(a,b,c){let d,e={x:1/0,y:1/0};for(let f of b){let b=s(c,f.rect);switch(a){case"horizontal":b.x<=e.x&&(d=f,e=b);break;case"vertical":b.y<=e.y&&(d=f,e=b)}}return d?{distance:e,hitRegion:d}:void 0}(d.orientation,e,{x:a.clientX,y:a.clientY});f&&f.distance.x<=0&&f.distance.y<=0&&function({groupElement:a,hitRegion:b,pointerEventTarget:c}){if(!r(c)||c.contains(a)||a.contains(c))return!0;if(function(a,b){let c;if(a===b)throw Error("Cannot compare node with itself");let d={a:E(a),b:E(b)};for(;d.a.at(-1)===d.b.at(-1);)c=d.a.pop(),d.b.pop();n(c,"Stacking order can only be calculated for elements with a common ancestor");let e={a:D(C(d.a)),b:D(C(d.b))};if(e.a===e.b){let a=c.childNodes,b={a:d.a.at(-1),b:d.b.at(-1)},e=a.length;for(;e--;){let c=a[e];if(c===b.a)return 1;if(c===b.b)return -1}}return Math.sign(e.a-e.b)}(c,a)>0){let e=c;for(;e;){var d;if(e.contains(a))break;if(d=e.getBoundingClientRect(),d.x<b.x+b.width&&d.x+d.width>b.x&&d.y<b.y+b.height&&d.y+d.height>b.y)return!1;e=e.parentElement}}return!0}({groupElement:d.element,hitRegion:f.hitRegion.rect,pointerEventTarget:a.target})&&c.push(f.hitRegion)}),c}function H(a,b,c=0){return Math.abs(k(a)-k(b))<=c}function I(a,b){return H(a,b)?0:a>b?1:-1}function J({overrideDisabledPanels:a,panelConstraints:b,prevSize:c,size:d}){let{collapsedSize:e=0,collapsible:f,disabled:g,maxSize:h=100,minSize:i=0}=b;return g&&!a?c:(0>I(d,i)&&(d=f&&0>I(d,(e+i)/2)?e:i),k(d=Math.min(h,d)))}function K({delta:a,initialLayout:b,panelConstraints:c,pivotIndices:d,prevLayout:e,trigger:f}){if(H(a,0))return b;let g="imperative-api"===f,h=Object.values(b),i=Object.values(e),j=[...h],[k,l]=d;n(null!=k,"Invalid first pivot index"),n(null!=l,"Invalid second pivot index");let m=0;if("keyboard"===f){{let b=a<0?l:k,d=c[b];n(d,`Panel constraints not found for index ${b}`);let{collapsedSize:e=0,collapsible:f,minSize:g=0}=d;if(f){let c=h[b];if(n(null!=c,`Previous layout not found for panel index ${b}`),H(c,e)){let b=g-c;I(b,Math.abs(a))>0&&(a=a<0?0-b:b)}}}{let b=a<0?k:l,d=c[b];n(d,`No panel constraints found for index ${b}`);let{collapsedSize:e=0,collapsible:f,minSize:g=0}=d;if(f){let c=h[b];if(n(null!=c,`Previous layout not found for panel index ${b}`),H(c,g)){let b=c-e;I(b,Math.abs(a))>0&&(a=a<0?0-b:b)}}}}else{let b=a<0?l:k,d=c[b];n(d,`Panel constraints not found for index ${b}`);let e=h[b],{collapsible:f,collapsedSize:g,minSize:i}=d;if(f&&0>I(e,i))if(a>0){let b=i-g;0>I(e+a,i)&&(a=0>=I(a,b/2)?0:b)}else{let b=i-g;0>I(e-a,i)&&(a=I(100+a,100-b/2)>0?0:-b)}}{let b=a<0?1:-1,d=a<0?l:k,e=0;for(;;){let a=h[d];if(n(null!=a,`Previous layout not found for panel index ${d}`),e+=J({overrideDisabledPanels:g,panelConstraints:c[d],prevSize:a,size:100})-a,(d+=b)<0||d>=c.length)break}let f=Math.min(Math.abs(a),Math.abs(e));a=a<0?0-f:f}{let b=a<0?k:l;for(;b>=0&&b<c.length;){let d=Math.abs(a)-Math.abs(m),e=h[b];n(null!=e,`Previous layout not found for panel index ${b}`);let f=e-d,i=J({overrideDisabledPanels:g,panelConstraints:c[b],prevSize:e,size:f});if(!H(e,i)&&(m+=e-i,j[b]=i,m.toFixed(3).localeCompare(Math.abs(a).toFixed(3),void 0,{numeric:!0})>=0))break;a<0?b--:b++}}if(function(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!=b[c])return!1;return!0}(i,j))return e;{let b=a<0?l:k,d=h[b];n(null!=d,`Previous layout not found for panel index ${b}`);let e=d+m,f=J({overrideDisabledPanels:g,panelConstraints:c[b],prevSize:d,size:e});if(j[b]=f,!H(f,e)){let b=e-f,d=a<0?l:k;for(;d>=0&&d<c.length;){let e=j[d];n(null!=e,`Previous layout not found for panel index ${d}`);let f=e+b,h=J({overrideDisabledPanels:g,panelConstraints:c[d],prevSize:e,size:f});if(H(e,h)||(b-=h-e,j[d]=h),H(b,0))break;a>0?d--:d++}}}if(!H(Object.values(j).reduce((a,b)=>b+a,0),100,.1))return e;let o=Object.keys(e);return j.reduce((a,b,c)=>(a[o[c]]=b,a),{})}function L(a,b){if(Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(void 0===b[c]||0!==I(a[c],b[c]))return!1;return!0}function M({layout:a,panelConstraints:b}){let c=Object.values(a),d=[...c],e=d.reduce((a,b)=>a+b,0);if(d.length!==b.length)throw Error(`Invalid ${b.length} panel layout: ${d.map(a=>`${a}%`).join(", ")}`);if(!H(e,100)&&d.length>0)for(let a=0;a<b.length;a++){let b=d[a];n(null!=b,`No layout data found for index ${a}`);let c=100/e*b;d[a]=c}let f=0;for(let a=0;a<b.length;a++){let e=c[a];n(null!=e,`No layout data found for index ${a}`);let g=d[a];n(null!=g,`No layout data found for index ${a}`);let h=J({overrideDisabledPanels:!0,panelConstraints:b[a],prevSize:e,size:g});g!=h&&(f+=g-h,d[a]=h)}if(!H(f,0))for(let a=0;a<b.length;a++){let c=d[a];n(null!=c,`No layout data found for index ${a}`);let e=c+f,g=J({overrideDisabledPanels:!0,panelConstraints:b[a],prevSize:c,size:e});if(c!==g&&(f-=g-c,d[a]=g,H(f,0)))break}let g=Object.keys(a);return d.reduce((a,b,c)=>(a[g[c]]=b,a),{})}function N({groupId:a,panelId:b}){let c=()=>{for(let[b,{defaultLayoutDeferred:c,derivedPanelConstraints:d,layout:e,groupSize:f,separatorToPanels:g}]of v)if(b.id===a)return{defaultLayoutDeferred:c,derivedPanelConstraints:d,group:b,groupSize:f,layout:e,separatorToPanels:g};throw Error(`Group ${a} not found`)},d=()=>{let a=c().derivedPanelConstraints.find(a=>a.panelId===b);if(void 0!==a)return a;throw Error(`Panel constraints not found for Panel ${b}`)},e=()=>{let a=c().group.panels.find(a=>a.id===b);if(void 0!==a)return a;throw Error(`Layout not found for Panel ${b}`)},f=()=>{let a=c().layout[b];if(void 0!==a)return a;throw Error(`Layout not found for Panel ${b}`)},g=a=>{let d=f();if(a===d)return;let{defaultLayoutDeferred:e,derivedPanelConstraints:g,group:h,groupSize:i,layout:j,separatorToPanels:k}=c(),l=h.panels.findIndex(a=>a.id===b),m=l===h.panels.length-1,n=M({layout:K({delta:m?d-a:a-d,initialLayout:j,panelConstraints:g,pivotIndices:m?[l-1,l]:[l,l+1],prevLayout:j,trigger:"imperative-api"}),panelConstraints:g});L(j,n)||A(h,{defaultLayoutDeferred:e,derivedPanelConstraints:g,groupSize:i,layout:n,separatorToPanels:k})};return{collapse:()=>{let{collapsible:a,collapsedSize:b}=d(),{mutableValues:c}=e(),h=f();a&&h!==b&&(c.expandToSize=h,g(b))},expand:()=>{let{collapsible:a,collapsedSize:b,minSize:c}=d(),{mutableValues:h}=e(),i=f();if(a&&i===b){let a=h.expandToSize??c;0===a&&(a=1),g(a)}},getSize:()=>{let{group:a}=c(),b=f(),{element:d}=e();return{asPercentage:b,inPixels:"horizontal"===a.orientation?d.offsetWidth:d.offsetHeight}},isCollapsed:()=>{let{collapsible:a,collapsedSize:b}=d(),c=f();return a&&H(b,c)},resize:a=>{let{group:b}=c(),{element:d}=e(),f=l({group:b});g(k(j({groupSize:f,panelElement:d,styleProp:a})/f*100))}}}function O(a){a.defaultPrevented||G(a,v).forEach(b=>{if(b.separator&&!b.separator.disableDoubleClick){let c=b.panels.find(a=>void 0!==a.panelConstraints.defaultSize);if(c){let d=c.panelConstraints.defaultSize,e=N({groupId:b.group.id,panelId:c.id});e&&void 0!==d&&(e.resize(d),a.preventDefault())}}})}function P(a){for(let[b]of v)if(b.separators.some(b=>b.element===a))return b;throw Error("Could not find parent Group for separator element")}function Q({groupId:a}){let b=()=>{for(let[b,c]of v)if(b.id===a)return{group:b,...c};throw Error(`Could not find Group with id "${a}"`)};return{getLayout(){let{defaultLayoutDeferred:a,layout:c}=b();return a?{}:c},setLayout(a){let{defaultLayoutDeferred:c,derivedPanelConstraints:d,group:e,groupSize:f,layout:g,separatorToPanels:h}=b(),i=M({layout:a,panelConstraints:d});return c?g:(L(g,i)||A(e,{defaultLayoutDeferred:c,derivedPanelConstraints:d,groupSize:f,layout:i,separatorToPanels:h}),i)}}}function R(a,b){let c=P(a),d=y(c.id,!0),e=c.separators.find(b=>b.element===a);n(e,"Matching separator not found");let f=d.separatorToPanels.get(e);n(f,"Matching panels not found");let g=f.map(a=>c.panels.indexOf(a)),h=Q({groupId:c.id}).getLayout(),i=M({layout:K({delta:b,initialLayout:h,panelConstraints:d.derivedPanelConstraints,pivotIndices:g,prevLayout:h,trigger:"keyboard"}),panelConstraints:d.derivedPanelConstraints});L(h,i)||A(c,{defaultLayoutDeferred:d.defaultLayoutDeferred,derivedPanelConstraints:d.derivedPanelConstraints,groupSize:d.groupSize,layout:i,separatorToPanels:d.separatorToPanels})}function S(a){if(a.defaultPrevented)return;let b=a.currentTarget,c=P(b);if(!c.disabled)switch(a.key){case"ArrowDown":a.preventDefault(),"vertical"===c.orientation&&R(b,5);break;case"ArrowLeft":a.preventDefault(),"horizontal"===c.orientation&&R(b,-5);break;case"ArrowRight":a.preventDefault(),"horizontal"===c.orientation&&R(b,5);break;case"ArrowUp":a.preventDefault(),"vertical"===c.orientation&&R(b,-5);break;case"End":a.preventDefault(),R(b,100);break;case"Enter":{a.preventDefault();let c=P(b),{derivedPanelConstraints:d,layout:e,separatorToPanels:f}=y(c.id,!0),g=c.separators.find(a=>a.element===b);n(g,"Matching separator not found");let h=f.get(g);n(h,"Matching panels not found");let i=h[0],j=d.find(a=>a.panelId===i.id);if(n(j,"Panel metadata not found"),j.collapsible){let a=e[i.id];R(b,(j.collapsedSize===a?c.mutableState.expandedPanelSizes[i.id]??j.minSize:j.collapsedSize)-a)}break}case"F6":{a.preventDefault();let c=P(b).separators.map(a=>a.element),d=Array.from(c).findIndex(b=>b===a.currentTarget);n(null!==d,"Index not found");let e=a.shiftKey?d>0?d-1:c.length-1:d+1<c.length?d+1:0;c[e].focus({preventScroll:!0});break}case"Home":a.preventDefault(),R(b,-100)}}let T={cursorFlags:0,state:"inactive"},U=new u;function V(a){let b=T;T=a,U.emit("change",{prev:b,next:a})}function W(a){if(a.defaultPrevented||"mouse"===a.pointerType&&a.button>0)return;let b=v,c=G(a,b),d=new Map,e=!1;c.forEach(a=>{a.separator&&(e||(e=!0,a.separator.element.focus({preventScroll:!0})));let c=b.get(a.group);c&&d.set(a.group,c.layout)}),V({cursorFlags:0,hitRegions:c,initialLayoutMap:d,pointerDownAtPoint:{x:a.clientX,y:a.clientY},state:"active"}),c.length&&a.preventDefault()}let X=a=>a,Y=()=>{};function Z(){return void 0===c&&(c=!1),c}let $=new WeakMap;function _(a){if(null===a.defaultView||void 0===a.defaultView)return;let{prevStyle:b,styleSheet:c}=$.get(a)??{};void 0===c&&(c=new a.defaultView.CSSStyleSheet,a.adoptedStyleSheets&&a.adoptedStyleSheets.push(c));let d=T;switch(d.state){case"active":case"hover":{let a=function({cursorFlags:a,groups:b,state:c}){let d=0,e=0;switch(c){case"active":case"hover":b.forEach(a=>{if(!a.mutableState.disableCursor)switch(a.orientation){case"horizontal":d++;break;case"vertical":e++}})}if(0!==d||0!==e){if("active"===c&&a&&Z()){let b=(4&a)!=0,c=(8&a)!=0;if((1&a)!=0)return b?"se-resize":c?"ne-resize":"e-resize";if((2&a)!=0)return b?"sw-resize":c?"nw-resize":"w-resize";if(b)return"s-resize";if(c)return"n-resize"}return Z()?d>0&&e>0?"move":d>0?"ew-resize":"ns-resize":d>0&&e>0?"grab":d>0?"col-resize":"row-resize"}}({cursorFlags:d.cursorFlags,groups:d.hitRegions.map(a=>a.group),state:d.state}),e=`*, *:hover {cursor: ${a} !important; }`;if(b===e)return;b=e,a?0===c.cssRules.length?c.insertRule(e):c.replaceSync(e):1===c.cssRules.length&&c.deleteRule(0);break}case"inactive":b=void 0,1===c.cssRules.length&&c.deleteRule(0)}$.set(a,{prevStyle:b,styleSheet:c})}function aa({document:a,event:b,hitRegions:c,initialLayoutMap:d,mountedGroups:e,pointerDownAtPoint:f,prevCursorFlags:g}){var h;let i,j,k=0;c.forEach(a=>{let{group:c,groupSize:g}=a,{orientation:h,panels:i}=c,{disableCursor:j}=c.mutableState,l=0;l=f?"horizontal"===h?(b.clientX-f.x)/g*100:(b.clientY-f.y)/g*100:"horizontal"===h?b.clientX<0?-100:100:b.clientY<0?-100:100;let m=d.get(c),n=e.get(c);if(!m||!n)return;let{defaultLayoutDeferred:o,derivedPanelConstraints:p,groupSize:q,layout:r,separatorToPanels:s}=n;if(p&&r&&s){let b=K({delta:l,initialLayout:m,panelConstraints:p,pivotIndices:a.panels.map(a=>i.indexOf(a)),prevLayout:r,trigger:"mouse-or-touch"});if(L(b,r)){if(0!==l&&!j)switch(h){case"horizontal":k|=l<0?1:2;break;case"vertical":k|=l<0?4:8}}else A(a.group,{defaultLayoutDeferred:o,derivedPanelConstraints:p,groupSize:q,layout:b,separatorToPanels:s})}});let l=0;0===b.movementX?l|=3&g:l|=3&k,0===b.movementY?l|=12&g:l|=12&k,h=l,i=T,(j={...T}).cursorFlags=h,T=j,U.emit("change",{prev:i,next:j}),_(a)}function ab(a){let b=v,c=T;"active"===c.state&&aa({document:a.currentTarget,event:a,hitRegions:c.hitRegions,initialLayoutMap:c.initialLayoutMap,mountedGroups:b,prevCursorFlags:c.cursorFlags})}function ac(a){if(a.defaultPrevented)return;let b=T,c=v;if("active"===b.state){if(0===a.buttons){V({cursorFlags:0,state:"inactive"}),b.hitRegions.forEach(a=>{let b=y(a.group.id,!0);A(a.group,b)});return}for(let c of b.hitRegions)if(c.separator){let{element:b}=c.separator;b.hasPointerCapture?.(a.pointerId)||b.setPointerCapture?.(a.pointerId)}aa({document:a.currentTarget,event:a,hitRegions:b.hitRegions,initialLayoutMap:b.initialLayoutMap,mountedGroups:c,pointerDownAtPoint:b.pointerDownAtPoint,prevCursorFlags:b.cursorFlags})}else{let d=G(a,c);0===d.length?"inactive"!==b.state&&V({cursorFlags:0,state:"inactive"}):V({cursorFlags:0,hitRegions:d,state:"hover"}),_(a.currentTarget)}}function ad(a){a.relatedTarget instanceof HTMLIFrameElement&&"hover"===T.state&&V({cursorFlags:0,state:"inactive"})}function ae(a){if(a.defaultPrevented||"mouse"===a.pointerType&&a.button>0)return;let b=T;"active"===b.state&&(V({cursorFlags:0,state:"inactive"}),b.hitRegions.length>0&&(_(a.currentTarget),b.hitRegions.forEach(a=>{let b=y(a.group.id,!0);A(a.group,b)}),a.preventDefault()))}function af(a){let b=0,c=0,d={};for(let e of a)if(void 0!==e.defaultSize){b++;let a=k(e.defaultSize);c+=a,d[e.panelId]=a}else d[e.panelId]=void 0;let e=a.length-b;if(0!==e){let b=k((100-c)/e);for(let c of a)void 0===c.defaultSize&&(d[c.panelId]=b)}return d}let ag=new Map;function ah(a){let b=(0,e.useId)();return`${a??b}`}let ai=e.useEffect;function aj(a){let b=(0,e.useRef)(a);return ai(()=>{b.current=a},[a]),(0,e.useCallback)((...a)=>b.current?.(...a),[b])}function ak(...a){return aj(b=>{a.forEach(a=>{if(a)switch(typeof a){case"function":a(b);break;case"object":a.current=b}})})}function al(a){let b=(0,e.useRef)({...a});return ai(()=>{for(let c in a)b.current[c]=a[c]},[a]),b.current}let am=(0,e.createContext)(null);function an({children:a,className:b,defaultLayout:c,disableCursor:f,disabled:g,elementRef:h,groupRef:i,id:j,onLayoutChange:p,onLayoutChanged:q,orientation:r="horizontal",resizeTargetMinimumSize:s={coarse:20,fine:10},style:u,...w}){let B,C=(0,e.useRef)({onLayoutChange:{},onLayoutChanged:{}}),D=aj(a=>{L(C.current.onLayoutChange,a)||(C.current.onLayoutChange=a,p?.(a))}),E=aj(a=>{L(C.current.onLayoutChanged,a)||(C.current.onLayoutChanged=a,q?.(a))}),F=ah(j),G=(0,e.useRef)(null),[I,J]=function(){let[a,b]=(0,e.useState)({});return[a,(0,e.useCallback)(()=>b({}),[])]}(),K=(0,e.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:s,separators:[]}),N=ak(G,h);B=(0,e.useRef)({getLayout:()=>({}),setLayout:X}),(0,e.useImperativeHandle)(i,()=>B.current,[]),ai(()=>{Object.assign(B.current,Q({groupId:F}))});let P=aj((a,b)=>{let d=T,e=x(a),f=y(a);if(f){let a=!1;return"active"===d.state&&(a=d.hitRegions.some(a=>a.group===e)),{flexGrow:f.layout[b]??1,pointerEvents:a?"none":void 0}}if(c?.[b])return{flexGrow:c?.[b]}}),R=al({defaultLayout:c,disableCursor:f}),U=(0,e.useMemo)(()=>({get disableCursor(){return!!R.disableCursor},getPanelStyles:P,id:F,orientation:r,registerPanel:a=>{let b=K.current;return b.panels=o(r,[...b.panels,a]),J(),()=>{b.panels=b.panels.filter(b=>b!==a),J()}},registerSeparator:a=>{let b=K.current;return b.separators=o(r,[...b.separators,a]),J(),()=>{b.separators=b.separators.filter(b=>b!==a),J()}},updatePanelProps:(a,{disabled:b})=>{let c=K.current.panels.find(b=>b.id===a);c&&(c.panelConstraints.disabled=b);let d=x(F),e=y(F);d&&e&&A(d,{...e,derivedPanelConstraints:m(d)})},updateSeparatorProps:(a,{disabled:b,disableDoubleClick:c})=>{let d=K.current.separators.find(b=>b.id===a);d&&(d.disabled=b,d.disableDoubleClick=c)}}),[P,F,J,r,R]),V=(0,e.useRef)(null);return ai(()=>{let a,b,c,d,e,f,h,i,j,o,p,q,s,u=G.current;if(null===u)return;let w=K.current;if(void 0!==R.defaultLayout&&Object.keys(R.defaultLayout).length===w.panels.length)for(let b of(a={},w.panels)){let c=R.defaultLayout[b.id];void 0!==c&&(a[b.id]=c)}let x={disabled:!!g,element:u,id:F,mutableState:{defaultLayout:a,disableCursor:!!R.disableCursor,expandedPanelSizes:K.current.lastExpandedPanelSizes,layouts:K.current.layouts},orientation:r,panels:w.panels,resizeTargetMinimumSize:w.resizeTargetMinimumSize,separators:w.separators};V.current=x;let B=(b=!0,n(x.element.ownerDocument.defaultView,"Cannot register an unmounted Group"),c=x.element.ownerDocument.defaultView.ResizeObserver,d=new Set,e=new Set,(f=new c(a=>{for(let c of a){let{borderBoxSize:a,target:d}=c;if(d===x.element){if(b){let a=l({group:x});if(0===a)return;let b=y(x.id);if(!b)return;let c=m(x),d=b.defaultLayoutDeferred?af(c):b.layout,e=M({layout:function({group:a,nextGroupSize:b,prevGroupSize:c,prevLayout:d}){if(c<=0||b<=0||c===b)return d;let e=0,f=0,g=!1,h=new Map,i=[];for(let j of a.panels){let a=d[j.id]??0;if("preserve-pixel-size"===j.panelConstraints.groupResizeBehavior){g=!0;let d=k(a/100*c/b*100);h.set(j.id,d),e+=d}else i.push(j.id),f+=a}if(!g||0===i.length)return d;let j=100-e,l={...d};if(h.forEach((a,b)=>{l[b]=a}),f>0)for(let a of i){let b=d[a]??0;l[a]=k(b/f*j)}else{let a=k(j/i.length);for(let b of i)l[b]=a}return l}({group:x,nextGroupSize:a,prevGroupSize:b.groupSize,prevLayout:d}),panelConstraints:c});if(!b.defaultLayoutDeferred&&L(b.layout,e)&&function(a,b){if(Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(a[c]!==b[c])return!1;return!0}(b.derivedPanelConstraints,c)&&b.groupSize===a)return;A(x,{defaultLayoutDeferred:!1,derivedPanelConstraints:c,groupSize:a,layout:e,separatorToPanels:b.separatorToPanels})}}else!function(a,b,c){if(!c[0])return;let d=a.panels.find(a=>a.element===b);if(!d||!d.onResize)return;let e=l({group:a}),f="horizontal"===a.orientation?d.element.offsetWidth:d.element.offsetHeight,g=d.mutableValues.prevSize,h={asPercentage:k(f/e*100),inPixels:f};d.mutableValues.prevSize=h,d.onResize(h,d.id,g)}(x,d,a)}})).observe(x.element),x.panels.forEach(a=>{n(!d.has(a.id),`Panel ids must be unique; id "${a.id}" was used more than once`),d.add(a.id),a.onResize&&f.observe(a.element)}),h=l({group:x}),i=m(x),j=x.panels.map(({id:a})=>a).join(","),(o=x.mutableState.defaultLayout)&&(function(a,b){let c=a.map(a=>a.id),d=Object.keys(b);if(c.length!==d.length)return!1;for(let a of c)if(!d.includes(a))return!1;return!0}(x.panels,o)||(o=void 0)),p=M({layout:x.mutableState.layouts[j]??o??af(i),panelConstraints:i}),q=x.element.ownerDocument,ag.set(q,(ag.get(q)??0)+1),s=new Map,t(x).forEach(a=>{a.separator&&s.set(a.separator,a.panels)}),A(x,{defaultLayoutDeferred:0===h,derivedPanelConstraints:i,groupSize:h,layout:p,separatorToPanels:s}),x.separators.forEach(a=>{n(!e.has(a.id),`Separator ids must be unique; id "${a.id}" was used more than once`),e.add(a.id),a.element.addEventListener("keydown",S)}),1===ag.get(q)&&(q.addEventListener("dblclick",O,!0),q.addEventListener("pointerdown",W,!0),q.addEventListener("pointerleave",ab),q.addEventListener("pointermove",ac),q.addEventListener("pointerout",ad),q.addEventListener("pointerup",ae,!0)),function(){b=!1,ag.set(q,Math.max(0,(ag.get(q)??0)-1)),(v=new Map(v)).delete(x),x.separators.forEach(a=>{a.element.removeEventListener("keydown",S)}),ag.get(q)||(q.removeEventListener("dblclick",O,!0),q.removeEventListener("pointerdown",W,!0),q.removeEventListener("pointerleave",ab),q.removeEventListener("pointermove",ac),q.removeEventListener("pointerout",ad),q.removeEventListener("pointerup",ae,!0)),f.disconnect()}),{defaultLayoutDeferred:C,derivedPanelConstraints:I,layout:J}=y(x.id,!0);!C&&I.length>0&&(D(J),E(J));let N=z(F,a=>{let{defaultLayoutDeferred:b,derivedPanelConstraints:c,layout:d}=a.next;if(b||0===c.length)return;let e=x.panels.map(({id:a})=>a).join(",");x.mutableState.layouts[e]=d,c.forEach(b=>{if(b.collapsible){let{layout:c}=a.prev??{};if(c){let a=H(b.collapsedSize,d[b.panelId]),e=H(b.collapsedSize,c[b.panelId]);a&&!e&&(x.mutableState.expandedPanelSizes[b.panelId]=c[b.panelId])}}});let f="active"!==T.state;D(d),f&&E(d)});return()=>{V.current=null,B(),N()}},[g,F,E,D,r,I,R]),(0,e.useEffect)(()=>{let a=V.current;a&&(a.mutableState.defaultLayout=c,a.mutableState.disableCursor=!!f)}),(0,d.jsx)(am.Provider,{value:U,children:(0,d.jsx)("div",{...w,className:b,"data-group":!0,"data-testid":F,id:F,ref:N,style:{height:"100%",width:"100%",overflow:"hidden",...u,display:"flex",flexDirection:"horizontal"===r?"row":"column",flexWrap:"nowrap",touchAction:"horizontal"===r?"pan-y":"pan-x"},children:a})})}function ao(){let a=(0,e.useContext)(am);return n(a,"Group Context not found; did you render a Panel or Separator outside of a Group?"),a}function ap({children:a,className:b,collapsedSize:c="0%",collapsible:f=!1,defaultSize:g,disabled:h,elementRef:i,groupResizeBehavior:j="preserve-relative-size",id:k,maxSize:l="100%",minSize:m="0%",onResize:n,panelRef:o,style:p,...q}){let r,s=!!k,t=ah(k),u=al({disabled:h}),v=(0,e.useRef)(null),w=ak(v,i),{getPanelStyles:x,id:y,orientation:A,registerPanel:B,updatePanelProps:C}=ao(),D=null!==n,E=aj((a,b,c)=>{n?.(a,k,c)});ai(()=>{let a=v.current;if(null!==a)return B({element:a,id:t,idIsStable:s,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:D?E:void 0,panelConstraints:{groupResizeBehavior:j,collapsedSize:c,collapsible:f,defaultSize:g,disabled:u.disabled,maxSize:l,minSize:m}})},[j,c,f,g,D,t,s,l,m,E,B,u]),(0,e.useEffect)(()=>{C(t,{disabled:h})},[h,t,C]),function(a,b){let{id:c}=ao(),d=(0,e.useRef)({collapse:Y,expand:Y,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:Y});(0,e.useImperativeHandle)(b,()=>d.current,[]),ai(()=>{Object.assign(d.current,N({groupId:c,panelId:a}))})}(t,o);let F=()=>{let a=x(y,t);if(a)return JSON.stringify(a)},G=(0,e.useSyncExternalStore)(a=>z(y,a),F,F);return r=G?JSON.parse(G):g?{flexGrow:void 0,flexShrink:void 0,flexBasis:g}:{flexGrow:1},(0,d.jsx)("div",{...q,"data-disabled":h||void 0,"data-panel":!0,"data-testid":t,id:t,ref:w,style:{...aq,display:"flex",flexBasis:0,flexShrink:1,overflow:"visible",...r},children:(0,d.jsx)("div",{className:b,style:{maxHeight:"100%",maxWidth:"100%",flexGrow:1,overflow:"auto",...p,touchAction:"horizontal"===A?"pan-y":"pan-x"},children:a})})}an.displayName="Group",ap.displayName="Panel";let aq={minHeight:0,maxHeight:"100%",height:"auto",minWidth:0,maxWidth:"100%",width:"auto",border:"none",borderWidth:0,padding:0,margin:0};function ar({children:a,className:b,disabled:c,disableDoubleClick:f,elementRef:g,id:h,style:i,...j}){let k,l,m=ah(h),n=al({disabled:c,disableDoubleClick:f}),[o,p]=(0,e.useState)({}),[q,r]=(0,e.useState)("inactive"),[s,t]=(0,e.useState)(!1),u=(0,e.useRef)(null),v=ak(u,g),{disableCursor:w,id:x,orientation:y,registerSeparator:A,updateSeparatorProps:B}=ao();return ai(()=>{let a=u.current;if(null!==a){var b;let c={disabled:n.disabled,disableDoubleClick:n.disableDoubleClick,element:a,id:m},d=A(c),e=(b=a=>{r("inactive"!==a.next.state&&a.next.hitRegions.some(a=>a.separator===c)?a.next.state:"inactive")},U.addListener("change",b)),f=z(x,a=>{let{derivedPanelConstraints:b,layout:d,separatorToPanels:e}=a.next,f=e.get(c);if(f){let a=f[0],c=f.indexOf(a);p(function({layout:a,panelConstraints:b,panelId:c,panelIndex:d}){let e,f,g=a[c],h=b.find(a=>a.panelId===c);if(h){let i=h.maxSize,j=h.collapsible?h.collapsedSize:h.minSize,k=[d,d+1];f=M({layout:K({delta:j-g,initialLayout:a,panelConstraints:b,pivotIndices:k,prevLayout:a}),panelConstraints:b})[c],e=M({layout:K({delta:i-g,initialLayout:a,panelConstraints:b,pivotIndices:k,prevLayout:a}),panelConstraints:b})[c]}return{valueControls:c,valueMax:e,valueMin:f,valueNow:g}}({layout:d,panelConstraints:b,panelId:a.id,panelIndex:c}))}});return()=>{e(),f(),d()}}},[x,m,A,n]),(0,e.useEffect)(()=>{B(m,{disabled:c,disableDoubleClick:f})},[c,f,m,B]),c&&!w&&(k="not-allowed"),l=c?"disabled":"active"===q?"active":s?"focus":q,(0,d.jsx)("div",{...j,"aria-controls":o.valueControls,"aria-disabled":c||void 0,"aria-orientation":"horizontal"===y?"vertical":"horizontal","aria-valuemax":o.valueMax,"aria-valuemin":o.valueMin,"aria-valuenow":o.valueNow,children:a,className:b,"data-separator":l,"data-testid":m,id:m,onBlur:()=>t(!1),onFocus:()=>t(!0),ref:v,role:"separator",style:{flexBasis:"auto",cursor:k,...i,flexGrow:0,flexShrink:0,touchAction:"none"},tabIndex:c?void 0:0})}ar.displayName="Separator";var as=a.i(581228),at=a.i(510414),au=a.i(396465),av=a.i(799856),aw=a.i(626605),ax=a.i(144784),ay=a.i(912251),az=a.i(380132),aA=a.i(760644),aB=a.i(259982);let aC=a=>a?.activePaneId?(0,ax.collectPanes)(a.root).find(b=>b.id===a.activePaneId)??null:null;var aD=a.i(199462),aE=a.i(552591),aF=a.i(456195),aG=a.i(93538),aH=a.i(15143),aH=aH,aI=a.i(343155),aJ=a.i(514385),aK=a.i(693567),aL=a.i(678240),aM=a.i(484682),aN=a.i(864232),aO=a.i(478163),aP=a.i(59443),aQ=a.i(356474),aR=a.i(671015),aS=a.i(850120),aT=a.i(747868),aU=a.i(576949),aV=a.i(291677),aW=a.i(505947),aX=a.i(443821),aY=a.i(795541),aZ=a.i(164405),a$=a.i(166528),a_=a.i(417533),a0=a.i(340001),a1=a.i(378836),a2=a.i(838997),a3=a.i(619923),a4=a.i(47691),a5=a.i(106816);let a6=()=>(0,d.jsx)("div",{className:"shrink-0 border-b",children:(0,d.jsx)("div",{className:"flex items-center px-4 py-1.5",children:(0,d.jsxs)("div",{className:"flex h-5 items-center gap-3",children:[(0,d.jsx)(a0.Skeleton,{className:"h-3 w-40"}),(0,d.jsx)(a0.Skeleton,{className:"h-3 w-20"})]})})}),a7=({meta:a,sessionName:b,sessionId:c,jsonlPath:f})=>{let[g,h]=(0,e.useState)(!1),i=(0,e.useCallback)(()=>h(a=>!a),[]),j=(0,e.useCallback)(()=>h(!1),[]),k=(0,a5.default)(f,g),{branch:l,isLoading:m}=(0,a2.default)(b),{status:n}=(0,a3.default)(b,g),o=(0,a4.default)(b,g),p=(0,e.useRef)(null),[,q]=(0,e.useState)(0);return(0,e.useEffect)(()=>{let a=setInterval(()=>q(a=>a+1),6e4);return()=>clearInterval(a)},[]),(0,e.useEffect)(()=>{if(!g)return;let a=a=>{p.current&&!p.current.contains(a.target)&&j()},b=a=>{"Escape"===a.key&&j()};return document.addEventListener("mousedown",a),document.addEventListener("keydown",b),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",b)}},[g,j]),(0,d.jsxs)("div",{ref:p,className:"relative shrink-0 border-b",children:[(0,d.jsxs)("div",{className:"flex cursor-pointer items-center justify-between px-4 py-1.5 hover:bg-muted/30",role:"button",tabIndex:0,onClick:i,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),i())},children:[(0,d.jsx)(a1.MetaCompact,{title:a.title,totalCost:a.totalCost,branch:l,usedPercentage:a.usedPercentage,currentContextTokens:a.currentContextTokens,contextWindowSize:a.contextWindowSize}),(0,d.jsx)(aG.ChevronDown,{size:14,className:(0,av.cn)("shrink-0 text-muted-foreground transition-transform duration-150",g&&"rotate-180")})]}),(0,d.jsx)("div",{className:(0,av.cn)("absolute inset-x-0 top-full z-10 origin-top border-b bg-background shadow-sm transition-all duration-150 ease-out",g?"scale-y-100 opacity-100":"pointer-events-none scale-y-95 opacity-0"),children:(0,d.jsx)("div",{className:"px-4 py-3",children:(0,d.jsx)(a1.MetaDetail,{title:a.title,sessionId:c,createdAt:a.createdAt,updatedAt:a.updatedAt,fileSize:a.fileSize,userCount:k?.userCount??a.userCount,assistantCount:k?.assistantCount??a.assistantCount,toolCount:k?.toolCount??null,toolBreakdown:k?.toolBreakdown??null,inputTokens:a.inputTokens,cachedInputTokens:a.cachedInputTokens,outputTokens:a.outputTokens,reasoningOutputTokens:a.reasoningOutputTokens,totalCost:a.totalCost,currentContextTokens:a.currentContextTokens,contextWindowSize:a.contextWindowSize,usedPercentage:a.usedPercentage,model:a.model,branch:l,isBranchLoading:m,gitStatus:n,tmuxInfo:o})})})]})},a8=({tabId:a,sessionName:b,claudeSessionId:c,cwd:g,className:h,onClose:i,onNewSession:j,scrollToBottomRef:k,addPendingMessageRef:l,removePendingMessageRef:m,trustPrompt:n,onTrustResponse:o})=>{let p=(0,f.useTranslations)("terminal"),[q,r]=(0,e.useState)(null),s=(0,aA.default)(b=>b.tabs[a]?.agentProcess??null),t=(0,aA.default)(b=>b.tabs[a]?.agentInstalled??!0),u=(0,aA.default)(b=>b.tabs[a]?.cliState??"inactive"),v=(0,aA.default)(b=>b.tabs[a]?.compactingSince??null),w=(0,aA.default)(b=>(0,aA.selectSessionView)(b.tabs,a)),x=(0,aA.default)(b=>b.tabs[a]?.sessionMetaCache??null),y=(0,aA.default)(b=>b.tabs[a]?.agentSummary??null),z=(0,aA.default)(b=>b.tabs[a]?.lastUserMessage??null),A=(0,e.useCallback)(()=>{r(null)},[]),B=(0,e.useCallback)(a=>{r(null),at.toast.warning(p("resumeBlocked"),{description:a.processName?p("resumeBlockedProcess",{name:a.processName}):void 0})},[p]),C=(0,e.useCallback)(()=>{r(null),at.toast.error(p("resumeFailed"))},[p]),{entries:D,tasks:E,sessionId:F,jsonlPath:G,sessionSummary:H,initMeta:I,sessionStats:J,agentProcess:K,wsStatus:L,isLoading:M,error:N,loadMore:O,hasMore:P,retrySession:Q,sendResume:R,addPendingUserMessage:S,removePendingUserMessage:T}=(0,aR.default)({sessionName:b,claudeSessionId:c,enabled:!!b,resumeCallbacks:{onResumeStarted:A,onResumeBlocked:B,onResumeError:C},onSync:b=>{let c=Date.now();null!==b.agentProcess&&aA.default.getState().setAgentProcess(a,b.agentProcess,c),b.agentInstalled||aA.default.getState().setAgentInstalled(a,!1),aA.default.getState().setTimelineLoading(a,b.isLoading)},getCliState:()=>aA.default.getState().tabs[a]?.cliState}),{sessions:U,hasMore:V,isLoading:W,isLoadingMore:X,error:Y,refetch:Z,loadMore:$}=(0,aS.default)({tmuxSession:b,enabled:!!b&&!0!==s,cwd:g});(0,e.useEffect)(()=>(l&&(l.current=S),m&&(m.current=T),()=>{l&&(l.current=void 0),m&&(m.current=void 0)}),[l,m,S,T]);let _=(0,e.useRef)(s);(0,e.useEffect)(()=>{let a=_.current;_.current=s,!0!==a&&!0===s&&!0!==K&&Q()},[s,K,Q]),(0,e.useEffect)(()=>{if("unknown"!==u)return;let b=new AbortController;return fetch("/api/tmux/recover-unknown",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:a}),signal:b.signal}).catch(()=>{}),()=>b.abort()},[a,u]);let aa=(0,aT.default)("check"===w,b),ab=null===s||0===D.length&&M,ac=(0,aU.useSessionMetaCompute)(D,H,I,J,y,z);(0,e.useEffect)(()=>{ab||aA.default.getState().setSessionMetaCache(a,{meta:ac,sessionId:F,jsonlPath:G})},[ab,ac,F,G,a]);let ad=(0,e.useCallback)(a=>{q||(r(a),R(a,b))},[q,R,b]);if(!t)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center gap-3 text-muted-foreground",h),children:[(0,d.jsx)("span",{className:"text-sm font-medium",children:p("installClaude")}),(0,d.jsx)("span",{className:"text-xs",children:p("installClaudeHint")})]});if(n&&o)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",h),children:[(0,d.jsx)(aZ.default,{folderPath:n.folderPath,agent:n.agent,onRespond:o}),(0,d.jsx)("button",{className:"mt-3 text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:i,children:p("checkTerminal")})]});if("check"===w)return aa?(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",h),children:aa.isBypassPrompt&&aa.options.length>0?(0,d.jsx)(aY.default,{sessionName:b,options:aa.options,fallback:(0,d.jsx)("button",{className:"text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:i,children:p("checkTerminal")})}):(0,d.jsx)("button",{className:"mt-3 text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:i,children:p("checkTerminal")})}):(0,d.jsx)(aX.default,{icon:(0,d.jsx)(a_.default,{className:"h-8 w-8 text-foreground motion-safe:animate-spin motion-reduce:opacity-70 [animation-duration:1.5s]"}),main:c||F?p("claudeBootResuming"):p("claudeBootMain"),almostReady:p("claudeBootAlmostReady"),subtitle:p("claudeBootSubtitle"),className:(0,av.cn)("animate-delayed-fade-in",h)});if("session-list"===w)return null===s||W&&0===U.length?(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",h),children:(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"})}):0!==U.length||Y?(0,d.jsx)("div",{className:(0,av.cn)("h-full w-full",h),children:(0,d.jsx)(aV.default,{sessions:U,isLoading:W,isLoadingMore:X,hasMore:V,error:Y,resumingSessionId:q,onSelectSession:ad,onRefresh:Z,onLoadMore:$,onNewSession:j})}):(0,d.jsx)("div",{className:(0,av.cn)("h-full w-full",h),children:(0,d.jsx)(aW.default,{onClose:i,onNewSession:j})});let ae=ab?x:{meta:ac,sessionId:F,jsonlPath:G};return(0,d.jsxs)("div",{className:(0,av.cn)("flex min-h-0 w-full flex-1 flex-col",h),children:[ae?(0,d.jsx)(a7,{meta:ae.meta,sessionName:b,sessionId:ae.sessionId,jsonlPath:ae.jsonlPath}):(0,d.jsx)(a6,{}),(0,d.jsx)("div",{className:"min-h-0 flex-1",children:(0,d.jsx)(a$.default,{entries:D,tasks:E,sessionId:F,sessionName:b,tabId:a,initMeta:I,sessionStats:J,cliState:u,compactingSince:v,wsStatus:L,isLoading:M,error:N,onRetry:Q,onLoadMore:O,hasMore:P,scrollToBottomRef:k})})]})};var a9=a.i(430409),ba=a.i(555416),bb=a.i(155116),bc=a.i(7137),bd=a.i(80723);let be=({tabId:a,sessionName:b,cwd:c,className:g,onClose:h,onNewSession:j,onRestart:k,updatePrompt:l,onUpdatePromptResponse:m,trustPrompt:n,onTrustResponse:o,scrollToBottomRef:p,addPendingMessageRef:q,removePendingMessageRef:r})=>{let s=(0,f.useTranslations)("terminal"),[t,u]=(0,e.useState)(null),v=(0,aA.default)(b=>b.tabs[a]?.agentProcess??null),w=(0,aA.default)(b=>b.tabs[a]?.agentInstalled??!0),x=(0,aA.default)(b=>b.tabs[a]?.cliState??"inactive"),y=(0,aA.default)(b=>b.tabs[a]?.compactingSince??null),z=(0,aA.default)(b=>(0,aA.selectSessionView)(b.tabs,a)),A=(0,aA.default)(b=>b.tabs[a]?.agentSessionId??null),B=(0,aA.default)(b=>b.tabs[a]?.sessionMetaCache??null),C=(0,aA.default)(b=>b.tabs[a]?.agentSummary??null),D=(0,aA.default)(b=>b.tabs[a]?.lastUserMessage??null),E=(0,e.useCallback)(()=>{j?.()},[j]),F=(0,e.useCallback)(()=>{u(null)},[]),G=(0,e.useCallback)(a=>{u(null),at.toast.warning(s("resumeBlocked"),{description:a.processName?s("resumeBlockedProcess",{name:a.processName}):void 0})},[s]),H=(0,e.useCallback)(()=>{u(null),at.toast.error(s("codexResumeFailed"))},[s]),{entries:I,tasks:J,sessionId:K,jsonlPath:L,sessionSummary:M,initMeta:N,sessionStats:O,agentProcess:P,wsStatus:Q,isLoading:R,error:S,loadMore:T,hasMore:U,retrySession:V,sendResume:W,addPendingUserMessage:X,removePendingUserMessage:Y}=(0,aR.default)({sessionName:b,agentSessionId:A,panelType:"codex-cli",enabled:!!b,resumeCallbacks:{onResumeStarted:F,onResumeBlocked:G,onResumeError:H},onSync:b=>{let c=Date.now();null!==b.agentProcess&&aA.default.getState().setAgentProcess(a,b.agentProcess,c),b.agentInstalled||aA.default.getState().setAgentInstalled(a,!1),aA.default.getState().setTimelineLoading(a,b.isLoading)},getCliState:()=>aA.default.getState().tabs[a]?.cliState}),{sessions:Z,isLoading:$,error:_,refresh:aa}=(0,ba.useCodexSessions)(c,!!c&&"session-list"===z&&!0!==v);(0,e.useEffect)(()=>(q&&(q.current=X),r&&(r.current=Y),()=>{q&&(q.current=void 0),r&&(r.current=void 0)}),[q,r,X,Y]);let ab=(0,e.useRef)(v);(0,e.useEffect)(()=>{let a=ab.current;ab.current=v,!0!==a&&!0===v&&!0!==P&&V()},[v,P,V]),(0,e.useEffect)(()=>{if("unknown"!==x)return;let b=new AbortController;return fetch("/api/tmux/recover-unknown",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:a}),signal:b.signal}).catch(()=>{}),()=>b.abort()},[a,x]),(0,e.useEffect)(()=>{if("check"!==z)return;if("inactive"!==x&&"unknown"!==x&&"cancelled"!==x)return void aA.default.getState().setSessionView(a,"timeline");if(!0===v||!0===P)return void aA.default.getState().setAgentProcess(a,!0,Date.now());let c=!1,d=async()=>{try{let d=await fetch(`/api/check-agent?session=${b}`);if(!d.ok)return;let e=await d.json();if(c||!0!==e.running||"codex-cli"!==e.providerPanelType)return;aA.default.getState().setAgentProcess(a,!0,"number"==typeof e.checkedAt?e.checkedAt:Date.now())}catch{}};d();let e=window.setInterval(d,800);return()=>{c=!0,window.clearInterval(e)}},[v,P,x,b,a,z]);let ac=null===v||0===I.length&&R,ad=(0,aU.useSessionMetaCompute)(I,M,N,O,C,D);(0,e.useEffect)(()=>{ac||aA.default.getState().setSessionMetaCache(a,{meta:ad,sessionId:K,jsonlPath:L})},[ac,ad,K,L,a]);let ae=(0,e.useCallback)(a=>{t||(u(a.sessionId),W(a.sessionId,b))},[t,W,b]);if(!w)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center gap-3 px-6 text-center text-muted-foreground",g),role:"status",children:[(0,d.jsx)(a9.default,{size:32,className:"text-muted-foreground/60"}),(0,d.jsx)("span",{className:"text-sm font-medium text-foreground",children:s("codexNotInstalled")})]});if(l&&m)return(0,d.jsx)("div",{className:(0,av.cn)("animate-delayed-fade-in flex h-full w-full flex-col items-center justify-center gap-3 px-6",g),children:(0,d.jsx)(bc.default,{prompt:l,onRespond:m})});if(n&&o)return(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",g),children:(0,d.jsx)(aZ.default,{folderPath:n.folderPath,agent:n.agent,onRespond:o})});if("check"===z)return(0,d.jsx)("div",{className:(0,av.cn)("animate-delayed-fade-in flex h-full w-full flex-col items-center justify-center gap-3 px-6",g),children:(0,d.jsx)(bb.default,{onRestart:k})});if("session-list"===z)return null!==v&&c?(0,d.jsx)("div",{className:(0,av.cn)("h-full w-full",g),children:(0,d.jsx)(bd.default,{sessions:Z,isLoading:$,error:_?s("codexSessionsLoadFailed"):null,resumingSessionId:t,onSelectSession:ae,onRefresh:aa,onNewSession:j})}):(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",g),children:(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"})});if("inactive"===x&&!1===v&&!A&&!R)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center",g),role:"status",children:[(0,d.jsx)(a9.default,{size:32,className:"text-muted-foreground/60"}),(0,d.jsx)("p",{className:"text-sm font-medium text-foreground",children:s("codexInactiveMessage")}),j&&(0,d.jsxs)(au.Button,{size:"sm",onClick:E,children:[(0,d.jsx)(i.Plus,{className:"size-3.5"}),s("codexStartSession")]})]});let af=ac?B:{meta:ad,sessionId:K,jsonlPath:L};return(0,d.jsxs)("div",{className:(0,av.cn)("flex min-h-0 w-full flex-1 flex-col",g),children:[af?(0,d.jsx)(a7,{meta:af.meta,sessionName:b,sessionId:af.sessionId,jsonlPath:af.jsonlPath}):(0,d.jsx)(a6,{}),(0,d.jsx)("div",{className:"min-h-0 flex-1",children:(0,d.jsx)(a$.default,{entries:I,tasks:J,sessionId:K,sessionName:b,tabId:a,initMeta:N,sessionStats:O,cliState:x,compactingSince:y,wsStatus:Q,isLoading:R,error:S,onRetry:V,onLoadMore:T,hasMore:U,scrollToBottomRef:p})})]})};var bf=a.i(265725),bg=a.i(219379),bh=a.i(741798),bi=a.i(660558),bj=a.i(665315),bk=a.i(775495),bl=a.i(358137);let bm=({cwd:a,lastCommand:b,onRestartWithCommand:c,onRestartNew:e})=>{let g=(0,f.useTranslations)("terminal");return(0,d.jsxs)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:[(0,d.jsx)(bl.WifiOff,{className:"h-5 w-5 text-muted-foreground"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:g("disconnectedSessionNotFound")}),(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[a&&(0,d.jsx)("span",{className:"max-w-72 truncate text-xs text-muted-foreground/60",children:a.replace(/^\/Users\/[^/]+/,"~")}),b&&(0,d.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,d.jsx)("code",{className:"max-w-64 truncate rounded bg-muted px-2 py-1 text-xs",children:b}),(0,d.jsx)(au.Button,{variant:"outline",size:"sm",onClick:()=>c(b),children:g("restartWithCommand")})]}),b&&(0,d.jsxs)("div",{className:"flex w-40 items-center gap-2 text-muted-foreground/40",children:[(0,d.jsx)("div",{className:"h-px flex-1 bg-current"}),(0,d.jsx)("span",{className:"text-[11px]",children:g("or")}),(0,d.jsx)("div",{className:"h-px flex-1 bg-current"})]}),(0,d.jsx)(au.Button,{variant:"outline",size:"sm",onClick:e,children:g("restartNewTerminal")})]})]})};var bn=a.i(630560),bo=a.i(734637);let bp=({hint:a,onSubmit:b,onDismiss:c})=>{let g=(0,f.useTranslations)("terminal"),h=(0,f.useTranslations)("common"),i=(0,e.useRef)(null);return(0,e.useEffect)(()=>{i.current?.focus()},[]),(0,d.jsxs)("div",{className:"absolute bottom-3 left-3 right-3 z-30 rounded-lg border border-border bg-card shadow-lg animate-[fadeIn_150ms_ease-out]",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 px-3 pt-2.5",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:g("dragDropNotSupported")}),(0,d.jsx)("button",{className:"ml-auto flex h-5 w-5 shrink-0 items-center justify-center rounded text-muted-foreground hover:text-foreground",onClick:c,"aria-label":h("close"),children:(0,d.jsx)(bo.X,{className:"h-3.5 w-3.5"})})]}),(0,d.jsx)("div",{className:"px-3 pt-1 pb-2.5",children:(0,d.jsxs)("div",{className:"flex items-center gap-2 rounded border border-border bg-background px-2 py-1.5",children:[(0,d.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground/60",children:a}),(0,d.jsx)("input",{ref:i,className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground/40",placeholder:g("fullPathPlaceholder"),onKeyDown:a=>{"Enter"===a.key?b(a.currentTarget.value):"Escape"===a.key&&c()}})]})})]})};var bq=a.i(354447),br=a.i(19267),bs=a.i(545375),bt=a.i(721043),bu=a.i(165402);let bv=a=>a.replace(/[ \t\\'"(){}[\]!#$&;`|*?<>~^%]/g,"\\$&");var bw=a.i(734163);let bx=(0,a.i(564375).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var by=a.i(643228),bz=a.i(767810),bA=a.i(98456),bB=a.i(949348),bC=a.i(470167),bD=a.i(231473),bE=a.i(448557),bF=a.i(203725);let bG=({tab:a,isActive:b,isDragging:c,dropSide:g,displayTitle:h,currentProcess:i,modeSwitcher:j,onSwitch:k,onDelete:l,onRename:m,onFocusPane:n,onDragStart:o,onDragEnd:p,onDragOver:q,onDragLeave:r})=>{let s=(0,f.useTranslations)("terminal"),[t,u]=(0,e.useState)(!1),[v,w]=(0,e.useState)(""),x=(0,e.useRef)(null);(0,e.useEffect)(()=>{t&&requestAnimationFrame(()=>x.current?.select())},[t]);let y=()=>{let b=v.trim();u(!1),b!==a.name&&m(b)},z="agent-sessions"===a.panelType?s("sessionList"):"",A=a.name||z||h||"";return(0,d.jsxs)("div",{"data-tab-id":a.id,role:"tab","aria-selected":b,tabIndex:b?0:-1,className:(0,av.cn)("group relative flex min-w-[104px] max-w-[170px] cursor-pointer items-center gap-1 border-b-2 px-2 text-xs select-none",b&&j&&"min-w-[136px] max-w-[210px] pr-1",b?"border-b-accent-color bg-secondary text-foreground":"border-b-transparent text-muted-foreground hover:bg-accent hover:text-foreground",c&&"opacity-30"),onClick:()=>{t||b||k(),n()},onDoubleClick:()=>{u(!0),w(a.name)},draggable:!t,onDragStart:o,onDragEnd:p,onDragOver:q,onDragLeave:r,children:["left"===g&&(0,d.jsx)("div",{className:"absolute top-1 bottom-1 left-0 w-0.5 bg-ui-blue"}),t?(0,d.jsx)("input",{ref:x,className:"w-full min-w-0 border-b border-accent-color bg-transparent text-xs text-foreground outline-none",value:v,onChange:a=>w(a.target.value),onKeyDown:a=>{"Enter"===a.key&&y(),"Escape"===a.key&&u(!1)},onBlur:y,onClick:a=>a.stopPropagation()}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(bF.default,{tabId:a.id,panelType:a.panelType}),"claude-code"===a.panelType?(0,d.jsx)(bD.default,{className:"mx-0.5 h-3 w-3 shrink-0"}):"codex-cli"===a.panelType?(0,d.jsx)(a9.default,{className:"mx-0.5 h-3 w-3 shrink-0 text-foreground","aria-label":"Codex"}):"web-browser"===a.panelType?(0,d.jsx)(bA.Globe,{className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}):"diff"===a.panelType?(0,d.jsx)(bB.GitCompareArrows,{className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}):"agent-sessions"===a.panelType?(0,d.jsx)(bC.History,{className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}):(0,d.jsx)(bE.default,{process:i??h,className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}),(0,d.jsx)("span",{className:(0,av.cn)("mr-1 min-w-0 truncate",A?"opacity-100":"opacity-0"),children:A}),b&&j]}),(0,d.jsx)("button",{className:(0,av.cn)("-mr-0.5 flex h-6 w-6 shrink-0 items-center justify-center text-muted-foreground hover:text-foreground",b?"visible":"invisible group-hover:visible"),onClick:a=>{a.stopPropagation(),l()},"aria-label":s("closeTabLabel"),children:(0,d.jsx)(bo.X,{className:"h-3 w-3"})}),"right"===g&&(0,d.jsx)("div",{className:"absolute top-1 right-0 bottom-1 w-0.5 bg-ui-blue"})]})};var bH=a.i(158799),bI=a.i(96968),bJ=a.i(345283);a.i(466180);let bK=({paneId:a,isCreating:b,activePanelType:c,onCreateTab:g})=>{let h,j=(0,f.useTranslations)("terminal"),k=(0,bJ.default)(),[l,m]=(0,e.useState)(!1),n=(0,bI.default)(),o=(0,aw.useLayoutStore)(a=>a.workspaceId),p={notInstalled:(h=(0,f.useTranslations)("terminal"))("codexNotInstalled"),copyCommand:h("codexCopyCommand"),copied:h("codexCopied"),copyConfigPath:h("codexCopyConfigPath"),configParseFailed:h("codexConfigParseFailed"),launchFailed:h("codexLaunchFailed"),resumeFailed:h("codexResumeFailed"),approvalSendFailed:h("codexApprovalSendFailed"),approvalNotApplied:h("codexApprovalNotApplied"),retry:h("codexRetry")},{ensureAgentInstalled:q,installDialogs:r}=(0,bw.useAgentInstallCheck)(),s=(0,e.useMemo)(()=>{let a=[{key:"claude",type:"claude-code",icon:(0,d.jsx)(bD.default,{className:"h-3.5 w-3.5"}),label:j("claudeNewConversation"),startAgent:"claude"},{key:"codex",type:"codex-cli",icon:(0,d.jsx)(a9.default,{className:"h-3.5 w-3.5"}),label:j("codexNewConversation"),startAgent:"codex"},{key:"agent-sessions",type:"agent-sessions",icon:(0,d.jsx)(bC.History,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:j("sessionList")},{key:"terminal",type:"terminal",icon:(0,d.jsx)(bE.default,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Terminal"},{key:"web-browser",type:"web-browser",icon:(0,d.jsx)(bA.Globe,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Web Browser"}];return n?a.filter(a=>"web-browser"!==a.key):a},[n,j]),[t,u]=(0,e.useState)(0),v=(0,e.useRef)([]),w=(0,e.useCallback)(()=>{let a=(a=>{switch(a){case"terminal":return"terminal";case"web-browser":return"web-browser";case"codex-cli":return"codex";case"agent-sessions":return"agent-sessions";default:return"claude"}})(c),b=s.findIndex(b=>b.key===a);u(b>=0?b:0),m(!0)},[c,s]);(0,e.useEffect)(()=>{let b=b=>{let c=b.detail;c?.paneId===a&&w()};return window.addEventListener("open-new-tab-menu",b),()=>window.removeEventListener("open-new-tab-menu",b)},[a,w]),(0,e.useEffect)(()=>{l&&v.current[t]?.focus()},[l,t]);let x=(0,e.useCallback)(async()=>{if(await q("codex"))try{let a=await (0,aO.fetchCodexLaunchCommand)(o);g("codex-cli",{command:a})}catch{at.toast.error(p.launchFailed,{id:"codex-launch-failed",duration:6e3,action:void 0})}},[p,q,g,o]),y=(0,e.useCallback)(async a=>{if(m(!1),"claude"===a){if(!await q("claude"))return;g("claude-code",{command:(0,aN.buildClaudeLaunchCommand)({workspaceId:o,dangerouslySkipPermissions:aL.default.getState().dangerouslySkipPermissions})});return}x()},[q,x,g,o]),z=a=>{"startAgent"in a&&a.startAgent?y(a.startAgent):(m(!1),g(a.type))};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"flex items-center border-l border-r border-border px-0.5",children:(0,d.jsxs)(bH.Popover,{open:l,onOpenChange:a=>{a?w():m(!1)},children:[(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsx)(bz.TooltipTrigger,{render:(0,d.jsx)(bH.PopoverTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground hover:text-foreground",b&&"pointer-events-none opacity-50"),disabled:b,"aria-label":j("openNewTab")}),children:b?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(i.Plus,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:j("newTabTooltip",{shortcut:`${k?"⌘":"Ctrl+"}T`})})]}),(0,d.jsx)(bH.PopoverContent,{side:"bottom",align:"start",className:"w-max min-w-52 max-w-[calc(100vw-1rem)] gap-0 p-0.5",onKeyDown:a=>{if("ArrowDown"===a.key)a.preventDefault(),u(a=>(a+1)%s.length);else if("ArrowUp"===a.key)a.preventDefault(),u(a=>(a-1+s.length)%s.length);else if("Enter"===a.key){a.preventDefault();let b=s[t];b&&z(b)}},children:s.map((a,b)=>(0,d.jsx)("div",{className:(0,av.cn)("flex rounded-sm",t===b&&"bg-accent"),onMouseEnter:()=>u(b),children:(0,d.jsxs)("button",{ref:a=>{v.current[b]=a},className:"flex min-w-0 flex-1 items-center gap-2 rounded-sm px-2.5 py-2 text-xs text-foreground hover:bg-accent focus:outline-none",onClick:()=>void z(a),children:[a.icon,(0,d.jsx)("span",{className:"min-w-0 flex-1 truncate text-left",children:a.label})]})},a.key))})]})}),r]})};var bL=a.i(103222);let bM=a=>a.startAction?`Start ${a.label}`:a.label,bN=a=>"claude-code"===a||"codex-cli"===a?"Chat":"Terminal",bO=({tabId:a,paneId:b,sessionName:c,panelType:f,onSwitchPanelType:g})=>{let[h,i]=(0,e.useState)(!1),j=(0,aA.default)(b=>b.tabs[a]),k=(0,aB.getAgentPanelTypeFromProvider)(j?.agentProviderId),l=!!k&&(j?.agentProcess===!0||(0,aB.isAgentRunning)(j?.cliState)||((a,b)=>{if(!b)return!1;let c=b.toLowerCase();return"claude-code"===a?"claude"===c:"codex-cli"===a&&"codex"===c})(k,j?.currentProcess)),m=(0,aB.isAgentPanel)(f)?f:l?k:void 0,n="claude-code"===f||"codex-cli"===f?{type:f,label:bN(f)}:{type:"terminal",label:"Terminal"},o=[{type:"terminal",label:"Terminal"},...m?[{type:m,label:bN(m)}]:[{type:"claude-code",label:"Claude",startAction:!0},{type:"codex-cli",label:"Codex",startAction:!0}]],p=async()=>{try{let b=await fetch(`/api/check-agent?session=${encodeURIComponent(c)}`);if(!b.ok)return;let d=await b.json();(0,bL.applyAgentCheckResult)(a,d)}catch{}};return(0,d.jsxs)(bH.Popover,{open:h,onOpenChange:a=>{a?p().finally(()=>i(!0)):i(!1)},children:[(0,d.jsx)(bH.PopoverTrigger,{className:"flex h-5 shrink-0 items-center rounded border border-border/70 bg-background/70 px-1.5 text-[10px] leading-none text-foreground hover:bg-accent focus:outline-none focus:ring-1 focus:ring-ring","aria-label":"Select tab mode",title:"Select tab mode",onClick:a=>a.stopPropagation(),children:(0,d.jsx)("span",{children:n.label})}),(0,d.jsx)(bH.PopoverContent,{side:"bottom",align:"end",className:"w-max min-w-[var(--anchor-width)] max-w-[calc(100vw-1rem)] gap-0 p-0.5",onClick:a=>a.stopPropagation(),children:o.map(c=>{let e=f===c.type;return(0,d.jsx)("button",{type:"button",className:(0,av.cn)("flex w-full items-center rounded-sm px-2 py-1 text-left text-[11px] leading-4 text-foreground whitespace-nowrap hover:bg-accent",e&&"bg-accent font-medium"),"aria-pressed":e,"aria-label":bM(c),onClick:d=>{d.stopPropagation(),(c=>{if(f===c.type)return i(!1);if((0,aB.tryAgentSwitch)({current:f,target:c.type,cliState:j?.cliState,agentProcess:j?.agentProcess,runningAgentPanelType:k})){if(i(!1),"terminal"===c.type&&(0,aB.isAgentPanel)(f)&&aA.default.getState().setDetectedAgent(a,{running:!0,providerId:"claude-code"===f?"claude":"codex-cli"===f?"codex":void 0,panelType:f}),c.startAction&&("claude-code"===c.type||"codex-cli"===c.type))return window.dispatchEvent(new CustomEvent("purplemux-start-agent",{detail:{paneId:b,tabId:a,provider:"codex-cli"===c.type?"codex":"claude"}}));g(c.type)}})(c)},children:(0,d.jsx)("span",{children:bM(c)})},c.type)})})]})},bP=({paneId:a,tabs:b,activeTabId:c,tabTitles:h,tabProcesses:i,isLoading:j,error:k,isCreating:l,paneCount:m,isSplitting:n,onSwitchTab:o,onCreateTab:p,onDeleteTab:q,onRenameTab:r,onSwitchPanelType:s,onReorderTabs:t,onClosePane:u,onMoveTab:v,onFocusPane:w,onRetry:x})=>{let y=(0,f.useTranslations)("terminal"),z=(0,f.useTranslations)("common"),A=(0,e.useRef)(null),B=(0,e.useMemo)(()=>[...b].sort((a,b)=>a.order-b.order),[b]),{draggedTabId:C,dropTarget:D,isDragOverFromOther:E,handleDragOver:F,handleDrop:G,handleTabBarDragEnter:H,handleTabBarDragLeave:I,startDrag:J,endDrag:K,clearDropTarget:L}=(({paneId:a,sortedTabs:b,onReorderTabs:c,onMoveTab:d})=>{let[f,g]=(0,e.useState)(null),[h,i]=(0,e.useState)(null),[j,k]=(0,e.useState)(!1),l=(0,e.useRef)(0),m=(0,e.useCallback)((a,b)=>{a.preventDefault(),a.dataTransfer.dropEffect="move";let c=a.currentTarget.getBoundingClientRect();i({id:b,side:a.clientX<c.left+c.width/2?"left":"right"})},[]),n=(0,e.useCallback)(e=>{e.preventDefault(),l.current=0,k(!1);let f=e.dataTransfer.getData("text/tab-id"),j=e.dataTransfer.getData("text/pane-id");if(!f){g(null),i(null);return}if(j&&j!==a){let a;d(f,j,h?(a=b.findIndex(a=>a.id===h.id),"right"===h.side?a+1:a):b.length),g(null),i(null);return}if(!h||f===h.id){g(null),i(null);return}let m=b.filter(a=>a.id!==f),n=m.findIndex(a=>a.id===h.id),o="right"===h.side?n+1:n,p=b.find(a=>a.id===f);p&&m.splice(o,0,p),c(m.map(a=>a.id)),g(null),i(null)},[a,b,h,d,c]),o=(0,e.useCallback)(b=>{b.preventDefault(),l.current++;let c=Array.from(b.dataTransfer.types).find(a=>a.startsWith("application/x-pane/")),d=c?.replace("application/x-pane/","")??null;null!==d&&d!==a&&k(!0)},[a]),p=(0,e.useCallback)(()=>{l.current--,l.current<=0&&(l.current=0,k(!1),i(null))},[]),q=(0,e.useCallback)((b,c)=>{b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("text/tab-id",c),b.dataTransfer.setData("text/pane-id",a),b.dataTransfer.setData(`application/x-pane/${a}`,"");let d=b.currentTarget.cloneNode(!0);d.querySelector('[aria-label="탭 닫기"]')?.remove(),d.querySelectorAll(".sr-only").forEach(a=>a.remove()),d.style.cssText="position:fixed;left:-9999px;display:flex;align-items:center;gap:6px;padding:4px 12px;background:var(--card);color:var(--foreground);border:none;border-radius:4px;font-size:12px;opacity:0.6;transform:scale(0.9);white-space:nowrap;",document.body.appendChild(d),b.dataTransfer.setDragImage(d,0,0),requestAnimationFrame(()=>d.remove()),g(c)},[a]);return{draggedTabId:f,dropTarget:h,isDragOverFromOther:j,handleDragOver:m,handleDrop:n,handleTabBarDragEnter:o,handleTabBarDragLeave:p,startDrag:q,endDrag:(0,e.useCallback)(()=>{g(null),i(null)},[]),clearDropTarget:(0,e.useCallback)(()=>{i(null)},[])}})({paneId:a,sortedTabs:B,onReorderTabs:t,onMoveTab:v}),[M,N]=(0,e.useState)(!1),[O,P]=(0,e.useState)(!1),Q=M||O,R=(0,e.useCallback)(()=>{let a=A.current;a&&(N(a.scrollLeft>0),P(a.scrollLeft+a.clientWidth<a.scrollWidth-1))},[]);(0,e.useEffect)(()=>{R();let a=A.current;if(!a)return;let b=new ResizeObserver(R);return b.observe(a),()=>b.disconnect()},[R,b]),(0,e.useEffect)(()=>{if(!c||!A.current)return;let a=A.current.querySelector(`[data-tab-id="${c}"]`);a?.scrollIntoView({behavior:"instant",inline:"nearest",block:"nearest"})},[c]),(0,e.useEffect)(()=>{let a=A.current;if(!a)return;let b=b=>{let c=b.deltaX+b.deltaY;0!==c&&(b.preventDefault(),a.scrollLeft+=c,R())};return a.addEventListener("wheel",b,{passive:!1}),()=>a.removeEventListener("wheel",b)},[R]);let S=a=>{let b=A.current;b&&b.scrollBy({left:a,behavior:"smooth"})};return k?(0,d.jsxs)("div",{className:"flex h-[36px] shrink-0 items-center gap-2 bg-background px-3",children:[(0,d.jsx)(g.AlertTriangle,{className:"h-3.5 w-3.5 text-ui-amber"}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:k}),(0,d.jsx)(au.Button,{variant:"ghost",size:"xs",className:"h-5 px-2 text-xs text-foreground hover:text-foreground",onClick:x,children:z("retry")})]}):j?(0,d.jsx)("div",{className:"flex h-[36px] shrink-0 items-center gap-1.5 bg-background px-2",children:[1,2,3].map(a=>(0,d.jsx)("div",{className:"h-4 w-16 animate-pulse rounded bg-muted"},a))}):(0,d.jsxs)("div",{className:(0,av.cn)("flex h-[36px] shrink-0 items-stretch border-b border-border transition-colors",E?"bg-accent-color/10":"bg-background"),onDragEnter:H,onDragLeave:I,onDragOver:a=>a.preventDefault(),onDrop:G,children:[Q&&(0,d.jsx)("button",{className:(0,av.cn)("flex w-5 shrink-0 items-center justify-center text-muted-foreground transition-opacity hover:text-foreground",M?"opacity-100":"pointer-events-none opacity-0"),onClick:()=>S(-200),tabIndex:M?0:-1,children:(0,d.jsx)(bx,{className:"h-3.5 w-3.5"})}),(0,d.jsx)("div",{ref:A,role:"tablist",className:"flex flex-1 items-stretch overflow-x-auto",style:{scrollbarWidth:"none"},onScroll:R,children:B.map(b=>{let e;return(0,d.jsx)(bG,{tab:b,isActive:b.id===c,isDragging:b.id===C,dropSide:D?.id===b.id?D.side:null,displayTitle:h?.[b.id],currentProcess:i?.[b.id],modeSwitcher:b.id!==c||(e=b.panelType)&&"terminal"!==e&&"claude-code"!==e&&"codex-cli"!==e?void 0:(0,d.jsx)(bO,{tabId:b.id,paneId:a,sessionName:b.sessionName,panelType:b.panelType??"terminal",onSwitchPanelType:s}),onSwitch:()=>o(b.id),onDelete:()=>q(b.id),onRename:a=>{r(b.id,a)},onFocusPane:w,onDragStart:a=>J(a,b.id),onDragEnd:K,onDragOver:a=>F(a,b.id),onDragLeave:L},b.id)})}),Q&&(0,d.jsx)("button",{className:(0,av.cn)("flex w-5 shrink-0 items-center justify-center text-muted-foreground transition-opacity hover:text-foreground",O?"opacity-100":"pointer-events-none opacity-0"),onClick:()=>S(200),tabIndex:O?0:-1,children:(0,d.jsx)(by.ChevronRight,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipProvider,{children:(0,d.jsxs)("div",{className:"flex shrink-0 items-stretch",children:[(0,d.jsx)(bK,{paneId:a,isCreating:l,activePanelType:B.find(a=>a.id===c)?.panelType,onCreateTab:p}),m>=2&&(0,d.jsx)("div",{className:"flex items-center px-0.5",children:(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsx)(bz.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",n?"pointer-events-none opacity-30":"hover:text-foreground"),disabled:n,onClick:a=>{a.stopPropagation(),u()},"aria-label":y("closeAllTabs"),children:(0,d.jsx)(bo.X,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:y("closeAllTabs")})]})})]})})]})};var bQ=a.i(206456),bR=a.i(188289),bS=a.i(480824);let bT={write:()=>{},reset:()=>{},fit:()=>({cols:80,rows:24}),focus:()=>{},getBufferText:()=>""},bU={sendStdin:()=>{},sendResize:()=>{}},bV={normal:{normal:12,claudeCode:10},large:{normal:14,claudeCode:12},"x-large":{normal:16,claudeCode:14}},bW=[],bX=(0,e.memo)(({paneId:a,paneNumber:b})=>{let c,g=(0,f.useTranslations)("terminal"),h=(0,aw.useLayoutStore)(b=>b.layout?(0,ax.findPane)(b.layout.root,a):null),j=h?.tabs??bW,k=h?.activeTabId??null,l=(0,aw.useLayoutStore)(b=>b.layout?.activePaneId===a),m=(0,aw.useLayoutStore)(a=>a.paneCount),n=(0,aw.useLayoutStore)(a=>a.isSplitting),o=(0,aw.useLayoutStore)(a=>a.switchTabInPane),p=(0,aw.useLayoutStore)(a=>a.createTabInPane),q=(0,aw.useLayoutStore)(a=>a.deleteTabInPane),r=(0,aw.useLayoutStore)(a=>a.closePane),s=(0,aw.useLayoutStore)(a=>a.focusPane),t=(0,aw.useLayoutStore)(a=>a.moveTab),u=(0,aw.useLayoutStore)(a=>a.renameTabInPane),v=(0,aw.useLayoutStore)(a=>a.reorderTabsInPane),w=(0,aw.useLayoutStore)(a=>a.updateTabPanelType),x=(0,aw.useLayoutStore)(a=>a.updateTabTerminalLayout),y=(0,aw.useLayoutStore)(a=>a.layout?.diffSettings),z=(0,aw.useLayoutStore)(a=>a.updateDiffSettings),A=j.find(a=>a.id===k),B=A?.panelType??"terminal",C="claude-code"===B,D="codex-cli"===B,E="agent-sessions"===B,F=C||D,G="web-browser"===B,H="diff"===B,{ensureAgentInstalled:I,installDialogs:J}=(0,bw.useAgentInstallCheck)(),{theme:K}=(0,bS.default)(),L=(0,aL.default)(a=>a.fontSize),M=(0,aL.default)(a=>a.claudeShowTerminal),N=A?.terminalCollapsed??!M,[O,P]=(0,e.useState)(!1),[Q,R]=(0,e.useState)(!1),S=(0,e.useRef)(0),[T,U]=(0,e.useState)(!1),[V,W]=(0,e.useState)(!1),[X,Y]=(0,e.useState)(!1),Z=(0,e.useMemo)(()=>j.map(a=>a.id),[j]),$=(0,aD.default)((0,aM.useShallow)(a=>{let b={};for(let c of j){if("agent-sessions"===c.panelType)continue;let d=a.metadata[c.id]?.title;d&&(b[c.id]=d)}return b})),_=(0,aA.default)((0,aM.useShallow)(a=>{let b={};for(let c of Z){let d=a.tabs[c]?.currentProcess;d&&(b[c]=d)}return b})),aa=(0,aD.default)(a=>k?a.metadata[k]?.cwd:void 0),ab=(0,aw.useLayoutStore)(a=>a.workspaceId);(0,e.useEffect)(()=>{let a=requestAnimationFrame(()=>W(!0));return()=>{cancelAnimationFrame(a)}},[]);let ac=(0,e.useRef)(bT),ad=(0,e.useRef)(bU),ae=(0,e.useRef)(null),af=(0,e.useRef)(null),ag=(0,e.useRef)(null),ah=(0,e.useRef)(j),ai=(0,e.useRef)(k),aj=(0,e.useRef)(m),ak=(0,e.useRef)(l);(0,e.useEffect)(()=>{ah.current=j,ai.current=k,aj.current=m,ak.current=l});let al=(0,e.useCallback)(async()=>{let a=ai.current,b=a?ah.current.find(b=>b.id===a):null;if(b)try{let a=await fetch(`/api/layout/cwd?session=${b.sessionName}`);if(!a.ok)return;let{cwd:c,lastCommand:d}=await a.json();c&&aD.default.getState().setCwd(b.id,c),aD.default.getState().setLastCommand(b.id,d??null)}catch{}},[]),am=(0,e.useRef)(()=>{}),ao=(0,e.useRef)(void 0),aq=(0,e.useRef)(void 0),ay=(0,e.useRef)(null),az=(0,e.useRef)(()=>{}),aB=(0,e.useRef)(!1),aC=(0,e.useRef)(null),aF=(0,e.useRef)(null),aR=(0,e.useRef)(!1),aS=(0,e.useRef)(void 0),aT=(0,e.useRef)(void 0),aU=(0,e.useRef)(void 0),aV=(0,e.useRef)(void 0),aW=(0,e.useRef)(null),aX=(0,e.useRef)(""),aY=(0,aA.default)(a=>k?a.tabs[k]?.cliState??"inactive":"inactive"),aZ=(0,aA.default)(a=>k?a.tabs[k]?.agentProcess??null:null),a$=(0,aA.default)(a=>k?a.tabs[k]?.agentSessionId??null:null),a_="timeline"===(0,aA.default)(a=>k?(0,aA.selectSessionView)(a.tabs,k):"session-list"),a0=(0,e.useCallback)(a=>{aR.current||(aC.current?aF.current=a:a())},[]),a1=(0,e.useCallback)(a=>{aC.current={x:a.clientX,y:a.clientY},aF.current=null,aR.current=!1},[]),a2=(0,e.useCallback)(a=>{let b=aC.current;aC.current=null;let c=!!b&&(a.clientX-b.x)**2+(a.clientY-b.y)**2>=25;c&&(aR.current=!0,requestAnimationFrame(()=>{aR.current=!1})),aF.current&&!c&&aF.current(),aF.current=null},[]),{prompts:a3}=(0,bs.default)(),a4=(0,e.useRef)(new Set),[a5,a6]=(0,e.useState)(null),a7=(0,e.useCallback)((a,b)=>{if(!0!==b.running||!(0,bL.isAgentPanelType)(b.providerPanelType))return void a6(b=>b?.tabId===a?null:b);let c="string"==typeof b.providerId&&b.providerId?b.providerId:b.providerPanelType,d=`${a}:${c}`;if(a4.current.has(d))return;a4.current.add(d);let e="string"==typeof b.providerDisplayName&&b.providerDisplayName?b.providerDisplayName:c;a6({tabId:a,providerId:c,displayName:e,panelType:b.providerPanelType,sessionId:"string"==typeof b.sessionId&&b.sessionId?b.sessionId:null,resumable:!0===b.resumable})},[]),{trustPrompt:a9,onTerminalData:ba,onTrustResponse:bb}=(0,bq.default)({enabled:(C||D)&&"inactive"===aY,getBufferText:()=>ac.current.getBufferText(),sendStdin:a=>ad.current.sendStdin(a)}),{updatePrompt:bc,onTerminalData:bd,onRespond:bl}=(0,br.default)({enabled:D&&"inactive"===aY,scopeKey:k,getBufferText:()=>ac.current.getBufferText(),sendStdin:a=>ad.current.sendStdin(a),onUpdated:()=>{az.current()}});(0,e.useEffect)(()=>{k&&C&&l&&(0,aA.isCliIdle)(aY)&&(0,aE.dismissTab)(k)},[k,aY,C,l]),(0,e.useEffect)(()=>{k&&l&&(0,aE.dismissTab)(k)},[k,l]);let bo=(0,e.useCallback)(()=>{"idle"===aY&&aS.current?.()},[aY]),bx=(0,e.useCallback)(a=>{aT.current?.(a)},[]),by=(0,e.useCallback)((a,b)=>aT.current?.(a,b)??"",[]),bz=(0,e.useCallback)(a=>{aU.current?.(a)},[]),bA=(0,e.useCallback)(a=>{a.dataTransfer.types.includes("Files")&&(a.preventDefault(),a.stopPropagation(),a.dataTransfer.dropEffect="copy")},[]),bB=(0,e.useCallback)(a=>{!a.dataTransfer.files||0===a.dataTransfer.files.length||aV.current&&(a.preventDefault(),a.stopPropagation(),aV.current(Array.from(a.dataTransfer.files)))},[]),bC=(0,e.useCallback)(a=>{aq.current?.(a),ao.current?.()},[]),bD=(0,e.useCallback)(a=>(0,bR.isAppShortcut)(a)?(a.preventDefault(),(0,bR.isClearShortcut)(a)&&am.current(),(0,bR.isFocusInputShortcut)(a)&&ao.current?.(),!1):!(0,bR.isShiftEnter)(a)||(a.preventDefault(),ad.current.sendStdin("\n"),!1),[]),{terminalRef:bE,write:bF,clear:bG,reset:bH,fit:bI,focus:bJ,isReady:bK,getBufferText:bM}=(0,aJ.default)({theme:K.colors,fontSize:(bV[L]??bV.normal)[F?"claudeCode":"normal"],onInput:a=>{ad.current.sendStdin(a)},onResize:(a,b)=>ad.current.sendResize(a,b),onTitleChange:a=>{let b=ai.current;if(!b)return;let c=ah.current.find(a=>a.id===b);if(!c||c?.panelType==="web-browser"||c?.panelType==="agent-sessions"||a===aX.current)return;aX.current=a;let d=(0,bQ.formatTabTitle)(a,c?.panelType),e=(0,bQ.parseCurrentCommand)(a);if(aD.default.getState().setTitle(b,d),aA.default.getState().setCurrentProcess(b,e),(0,bQ.isShellProcess)(a)&&aW.current){let a=aW.current;aW.current=null,ad.current.sendStdin(`${a}\r`)}let f=ah.current.find(a=>a.id===b);if(f){let a=aA.default.getState().tabs[b]?.agentProcessCheckedAt??0;fetch(`/api/check-agent?session=${f.sessionName}`).then(a=>a.json()).then(d=>{c?.panelType==="terminal"&&a7(b,d);let{running:e}=!0===d.running&&(0,bL.isAgentPanelType)(d.providerPanelType)?{running:!0}:{running:!1},g=aA.default.getState().tabs[b];if(g&&g.agentProcessCheckedAt!==a){g.agentProcess!==e&&setTimeout(()=>{fetch(`/api/check-agent?session=${f.sessionName}`).then(a=>a.json()).then(a=>{c?.panelType==="terminal"&&a7(b,a),(0,bL.applyAgentCheckResult)(b,a)}).catch(()=>{})},500);return}(0,bL.applyAgentCheckResult)(b,d)}).catch(()=>{})}al()},customKeyEventHandler:bD});(0,e.useEffect)(()=>{am.current=bG}),(0,e.useEffect)(()=>{let a=a=>{(0,bR.isFocusInputShortcut)(a)&&l&&(a.preventDefault(),ao.current?.())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[l]);let bN=(0,e.useCallback)(async()=>{if(ag.current)return;let b=ah.current,c=ai.current,d=aj.current;if(!c)return;if(1===b.length&&d>1)return void r(a);let e=[...b].sort((a,b)=>a.order-b.order),f=e.findIndex(a=>a.id===c),g=e[f+1]||e[f-1];g&&o(a,g.id),ag.current=c;try{await q(a,c)}finally{ag.current=null}},[a,o,q,r]),{status:bO,retryCount:bX,disconnectReason:bY,connect:bZ,reconnect:b$,sendStdin:b_,sendWebStdin:b0,sendResize:b1}=(0,aK.default)({onData:a=>{ac.current.write(a),ba(),bd()},onConnected:()=>{P(!0),af.current=ai.current;let a=ai.current;a&&aA.default.getState().setTerminalConnected(a,!0);let{cols:b,rows:c}=ac.current.fit();ad.current.sendResize(b,c),ak.current&&ac.current.focus(),al(),clearTimeout(S.current),S.current=window.setTimeout(()=>R(!1),50)},onSessionEnded:bN});(0,e.useEffect)(()=>{ac.current={write:bF,reset:bH,fit:bI,focus:bJ,getBufferText:bM},ad.current={sendStdin:b_,sendResize:b1}}),(0,e.useEffect)(()=>{bK||(ae.current=null)},[bK]),(0,e.useEffect)(()=>{if(!bK||!k)return;let a=j.find(a=>a.id===k);if(!a)return;if("web-browser"===a.panelType){aX.current="";return}if(ae.current===a.sessionName)return;null!==ae.current&&(R(!0),bH(),aX.current="");let b=aA.default.getState(),c=b.tabs[k];b.initTab(k,{terminalConnected:!1,panelType:a.panelType,...!c?(0,aA.getInitialTabStateFromLayoutTab)(a):{}}),ae.current=a.sessionName;let{cols:d,rows:e}=bI();bZ(a.sessionName,d,e)},[bK,k]),(0,e.useEffect)(()=>{let a=ai.current;a&&aA.default.getState().setTerminalConnected(a,"connected"===bO)},[bO]),(0,e.useEffect)(()=>{"disconnected"===bO&&O&&af.current&&af.current!==k&&j.some(a=>a.id===af.current)&&(ae.current=null,o(a,af.current))},[bO]),(0,e.useEffect)(()=>{if(!bK||"connected"!==bO)return;let a=setTimeout(()=>{let{cols:a,rows:b}=bI();ad.current.sendResize(a,b)},150);return()=>clearTimeout(a)},[m]),(0,e.useEffect)(()=>{if(!bK||"connected"!==bO)return;let a=setTimeout(()=>{let{cols:a,rows:b}=bI();ad.current.sendResize(a,b)},300);return()=>clearTimeout(a)},[bO]),(0,e.useEffect)(()=>{if(l&&bK&&"connected"===bO){let{cols:a,rows:b}=bI();ad.current.sendResize(a,b);let c=aB.current;aB.current=!1,!c&&F&&a_?a0(()=>ao.current?.()):bJ()}},[l]);let b2=(0,e.useCallback)(b=>{b!==k&&((0,aE.dismissTab)(b),o(a,b))},[a,k,o]),b3=(0,e.useCallback)(async(b,c)=>{U(!0);let d=await p(a,b,c?.command,c?.resumeSessionId);if(d){aA.default.getState().initTab(d.id,{panelType:b,workspaceId:ab??""}),(c?.command||c?.resumeSessionId)&&aA.default.getState().setSessionView(d.id,"check");let a=ai.current,e=a?aD.default.getState().metadata[a]?.title:null;e&&"web-browser"!==b&&"agent-sessions"!==b&&aD.default.getState().setTitle(d.id,e)}U(!1)},[a,p,ab]),b4=(0,e.useCallback)(async b=>{if(!ag.current){if(1===j.length&&m>1)return void r(a);ag.current=b;try{await q(a,b)}finally{ag.current=null}}},[a,j,m,q,r]),b5=(0,e.useCallback)(async(b,c)=>{await aw.useLayoutStore.getState().restartTabInPane(a,b,c)&&b$()},[a,b$]),b6=(0,e.useRef)(new Set);(0,e.useEffect)(()=>{"disconnected"!==bO||"session-not-found"!==bY||!k||!A||"terminal"!==(A.panelType??"terminal")||A.lastCommand||b6.current.has(k)||(b6.current.add(k),b5(k))},[bO,bY,k,A,b5]);let b7=(0,e.useCallback)((b,c)=>{u(a,b,c)},[a,u]),b8=(0,e.useCallback)(b=>{v(a,b)},[a,v]),b9=(0,e.useCallback)((b,c,d)=>{t(b,c,a,d)},[a,t]),ca=(0,e.useCallback)(()=>{s(a)},[a,s]),cb=(0,e.useCallback)(b=>{k&&(Y(!0),w(a,k,b))},[a,k,w]),cc=(0,e.useCallback)(async(a,b)=>{await I(b)&&(ay.current={text:a,provider:b},cb("codex"===b?"codex-cli":"claude-code"))},[I,cb]);(0,e.useEffect)(()=>{let b=b=>{let c=b.detail;c?.paneId===a&&c.text&&c.provider&&cc(c.text,c.provider)};return window.addEventListener("purplemux-send-to-agent",b),()=>window.removeEventListener("purplemux-send-to-agent",b)},[a,cc]),(0,e.useEffect)(()=>{let a=ay.current;if(!a||B!==("codex"===a.provider?"codex-cli":"claude-code"))return;ay.current=null;let b=window.setTimeout(()=>{aq.current?.(a.text),ao.current?.()},100);return()=>window.clearTimeout(b)},[B]);let cd=(0,e.useCallback)(b=>{k&&ab&&fetch(`/api/layout/pane/${a}/tabs/${k}?workspace=${ab}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({webUrl:b})}).catch(()=>{})},[k,a,ab]);(0,e.useEffect)(()=>{if(!k||!0!==aZ||"terminal"!==B)return void a6(null);if(a5?.tabId!==k)return},[k,aZ,B,a5]),(0,e.useEffect)(()=>{if(!k||!0!==aZ||"terminal"!==B||a5?.tabId===k)return;let a=A?.sessionName;if(!a)return;let b=!1;return fetch(`/api/check-agent?session=${a}`).then(a=>a.json()).then(a=>{b||a7(k,a)}).catch(()=>{}),()=>{b=!0}},[k,B,A?.sessionName,aZ,a5?.tabId,a7]);let{showPathInput:ce,droppedFileHint:cf,handleDragOver:cg,handleDrop:ch,handlePathInputSubmit:ci,handlePathInputDismiss:cj}=(({sendStdin:a,focus:b,wsId:c,tabId:d})=>{let[f,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(""),j=(0,e.useCallback)(a=>{a.dataTransfer.types.includes("Files")&&(a.preventDefault(),a.dataTransfer.dropEffect="copy")},[]),k=(0,e.useCallback)(c=>{0!==c.length&&(a(`\x1b[200~${c.join(" ")}\x1b[201~`),b())},[a,b]),l=(0,e.useCallback)(async a=>{let b=a.filter(bu.isImageFile);if(0===b.length)return!1;try{let a=await Promise.all(b.map(a=>(0,bu.uploadImage)(a,{wsId:c,tabId:d})));return k(a.map(a=>bv(a.path))),!0}catch(a){return at.toast.error(a instanceof Error?a.message:"Upload failed"),!0}},[c,d,k]),m=(0,e.useCallback)(a=>{a.preventDefault();let{files:b}=a.dataTransfer;if(0===b.length)return;let c=bt.default?window.electronAPI:null,d=[],e=Array.from(b);for(let a of e){let b=c?.getPathForFile(a);b&&d.push(bv(b))}d.length>0?k(d):e.some(bu.isImageFile)?l(e):(i(e.map(a=>a.name).join(", ")),g(!0))},[k,l]);return{showPathInput:f,droppedFileHint:h,handleDragOver:j,handleDrop:m,handlePathInputSubmit:(0,e.useCallback)(c=>{if(g(!1),i(""),c.trim()){let d=bv(c.trim());a(`\x1b[200~${d}\x1b[201~`),b()}},[a,b]),handlePathInputDismiss:(0,e.useCallback)(()=>{g(!1),i(""),b()},[b])}})({sendStdin:a=>ad.current.sendStdin(a),focus:bJ,wsId:ab??void 0,tabId:k??void 0}),ck=(0,e.useCallback)(a=>(0,aN.buildClaudeLaunchCommand)({workspaceId:ab,dangerouslySkipPermissions:aL.default.getState().dangerouslySkipPermissions,resumeSessionId:a}),[ab]),cl=(0,e.useCallback)(async()=>{"connected"!==bO||!k||await I("claude")&&(aA.default.getState().setSessionView(k,"check"),b_(`${ck(null)}\r`))},[bO,b_,k,ck,I]),cm=(0,e.useCallback)(async()=>{"connected"!==bO||!k||await I("claude")&&(aW.current=ck(null),aA.default.getState().setSessionView(k,"check"),b_("/exit\r"))},[bO,b_,k,ck,I]),cn=(0,e.useCallback)(()=>(0,aO.fetchCodexLaunchCommand)(ab),[ab]),co=(0,e.useCallback)((a,b)=>{fetch("/api/status/agent-launch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:a,resetAgentSession:b?.resetAgentSession===!0})}).catch(()=>{})},[]),cp=(0,e.useCallback)(async()=>{let a;if("connected"===bO&&k&&await I("codex")){try{a=await cn()}catch{at.toast.error(g("codexLaunchFailed"));return}co(k,{resetAgentSession:!0}),aA.default.getState().setSessionView(k,"check"),b_(`${a}\r`)}},[bO,b_,k,cn,I,co,g]),cq=(0,e.useCallback)(async()=>{await I("claude")&&(cb("claude-code"),cl())},[I,cl,cb]),cr=(0,e.useCallback)(async()=>{await I("codex")&&(cb("codex-cli"),cp())},[I,cp,cb]),cs=(0,e.useCallback)(async a=>{if("connected"!==bO||!k)return;let b="codex"===a.provider?"codex-cli":"claude-code";if(await I(a.provider)){if(cb(b),aA.default.getState().setSessionView(k,"check"),"codex"===a.provider){let b;try{b=await (0,aO.fetchCodexLaunchCommand)(ab,a.sessionId)}catch{at.toast.error(g("codexLaunchFailed"));return}co(k,{resetAgentSession:!1}),b_(`${b}\r`);return}b_(`${ck(a.sessionId)}\r`)}},[k,ck,I,cb,ab,co,b_,bO,g]),ct=(0,e.useCallback)(async()=>{let a;if("connected"===bO&&k&&await I("codex")){try{a=await cn()}catch{at.toast.error(g("codexLaunchFailed"));return}co(k,{resetAgentSession:!0}),aA.default.getState().setSessionView(k,"check"),b_(`${a}\r`)}},[bO,b_,k,cn,I,co,g]);(0,e.useEffect)(()=>{az.current=ct},[ct]);let cu=(0,e.useCallback)(async()=>{let a;if("connected"===bO&&k&&await I("codex")){try{a=await cn()}catch{at.toast.error(g("codexLaunchFailed"));return}aW.current=a,co(k,{resetAgentSession:!0}),aA.default.getState().setSessionView(k,"check"),(0,aP.sendCodexQuitCommand)(b_)}},[bO,b_,k,cn,I,co,g]);(0,e.useEffect)(()=>{let b=b=>{let c=b.detail;if(c?.paneId!==a||c.tabId!==k||"claude"!==c.provider&&"codex"!==c.provider)return;let d=c.provider;(async()=>{if(!await I(d))return;let a="codex"===d?"codex-cli":"claude-code";if(aA.default.getState().setDetectedAgent(k,{running:!0,checkedAt:Date.now(),providerId:d,panelType:a}),cb(a),"codex"===d)return cp();cl()})()};return window.addEventListener("purplemux-start-agent",b),()=>window.removeEventListener("purplemux-start-agent",b)},[k,I,cl,cp,cb,a]);let cv=(0,e.useCallback)(async()=>{if(!k||!a5||a5.tabId!==k||(a6(null),cb(a5.panelType),"connected"!==bO))return;let a=a5.resumable?a5.sessionId:null;if("codex-cli"===a5.panelType){let b;if(!await I("codex"))return;try{b=await (0,aO.fetchCodexLaunchCommand)(ab,a)}catch{at.toast.error(g("codexLaunchFailed"));return}aW.current=b,co(k,{resetAgentSession:!a}),aA.default.getState().setSessionView(k,"check"),(0,aP.sendCodexQuitCommand)(b_);return}await I("claude")&&(aW.current=ck(a),aA.default.getState().setSessionView(k,"check"),b_("\x03"),setTimeout(()=>b_("\x03"),300))},[k,a5,bO,I,cb,ab,co,b_,g,ck]);(0,e.useEffect)(()=>{if(!aW.current||!0===aZ||"connected"!==bO||!(0,bQ.isShellProcess)(aX.current))return;let a=aW.current;aW.current=null;let b=ai.current;b&&co(b),b_(`${a}\r`)},[aZ,bO,b_,co]);let cw=(0,e.useRef)(null),[cx,cy]=(0,e.useState)(!1),cz=(0,e.useRef)(!1),cA=(0,e.useCallback)(()=>{if(!cw.current)return;Y(!0);let b=!cx,c=A?.terminalRatio??30;cy(b),cz.current=!0,cw.current.setLayout(b?{timeline:100,"terminal-area":0}:{timeline:100-c,"terminal-area":c}),F&&k&&x(a,k,{terminalCollapsed:b}),setTimeout(()=>{if(Y(!1),cz.current=!1,!bK||"connected"!==bO)return;let{cols:a,rows:b}=bI();ad.current.sendResize(a,b)},150)},[cx,bK,bO,bI,F,k,a,A?.terminalRatio,x]);(0,e.useEffect)(()=>{if(!cw.current)return;if(cz.current=!0,F){let a=A?.terminalRatio??30;cy(N),cw.current.setLayout(N?{timeline:100,"terminal-area":0}:{timeline:100-a,"terminal-area":a}),al()}else cw.current.setLayout({timeline:0,"terminal-area":100});let a=setTimeout(()=>{if(Y(!1),cz.current=!1,!bK||"connected"!==bO)return;let{cols:a,rows:b}=bI();ad.current.sendResize(a,b),l&&(F?a_&&a0(()=>ao.current?.()):bJ())},150);return()=>clearTimeout(a)},[F,k]),(0,e.useEffect)(()=>{l&&F&&a_&&a0(()=>ao.current?.())},[a_]);let cB=0===j.length,cC=bK&&("connected"===bO||O)&&!cB&&!Q,cD=!cB&&(!bK||!O);return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full flex-col overflow-hidden",m>1&&"border",m>1&&l?"border-focus-indicator":"border-transparent"),style:{opacity:V?void 0:0,transition:"opacity 200ms ease-out, border-color 150ms"},role:"region","aria-label":`Pane ${b}`,"aria-current":l?"true":void 0,onClick:ca,onPointerDown:a1,onPointerUp:a2,children:[(0,d.jsx)(bP,{paneId:a,tabs:j,activeTabId:k,tabTitles:$,tabProcesses:_,isLoading:!1,error:null,isCreating:T,paneCount:m,isSplitting:n,onSwitchTab:b2,onCreateTab:b3,onDeleteTab:b4,onRenameTab:b7,onSwitchPanelType:cb,onReorderTabs:b8,onClosePane:()=>r(a),onMoveTab:b9,onFocusPane:ca,onRetry:()=>{}}),(0,d.jsxs)("div",{role:"tabpanel",className:"relative min-h-0 flex-1 flex flex-col",style:G||H||E?void 0:{backgroundColor:K.colors.background},onDragOver:G||H||E?void 0:cg,onDrop:G||H||E?void 0:ch,children:[G&&k&&(0,d.jsx)(bj.default,{tabId:k,initialUrl:A?.webUrl,onUrlChange:cd},k),H&&A&&(0,d.jsx)(bk.default,{sessionName:A.sessionName,onSendToAgent:cc,settings:y,onSettingsChange:z},A.sessionName),E&&A&&!cD&&(0,d.jsx)(bf.default,{sessionName:A.sessionName,cwd:aa||A.cwd,onSelectSession:cs,onNewClaudeSession:cq,onNewCodexSession:cr},A.sessionName),(0,d.jsxs)(an,{groupRef:cw,orientation:"vertical",defaultLayout:F?(c=A?.terminalRatio??30,N?{timeline:100,"terminal-area":0}:{timeline:100-c,"terminal-area":c}):{timeline:0,"terminal-area":100},onLayoutChanged:b=>{if(cz.current||!F||!k)return;let c=b["terminal-area"];if(void 0===c)return;let d=c<=0,e={};if(d!==N&&(e.terminalCollapsed=d,cy(d)),!d){let a=Math.round(c);a!==(A?.terminalRatio??30)&&(e.terminalRatio=a)}(void 0!==e.terminalRatio||void 0!==e.terminalCollapsed)&&x(a,k,e)},className:(0,av.cn)("min-h-0 flex-1",(G||H||E)&&"invisible absolute inset-0 pointer-events-none",X&&"[&>[data-panel]]:[transition:flex-grow_150ms_ease-out]"),children:[(0,d.jsx)(ap,{id:"timeline",minSize:0,collapsible:!0,collapsedSize:0,disabled:!F,children:(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full flex-col bg-card",cx&&"pb-3"),onDragOver:F?bA:void 0,onDrop:F?bB:void 0,children:[C&&A&&!cD&&k&&(0,d.jsx)(a8,{tabId:k,sessionName:A.sessionName,claudeSessionId:a$,cwd:aa||A.cwd,onClose:()=>cb("terminal"),onNewSession:cl,scrollToBottomRef:aS,addPendingMessageRef:aT,removePendingMessageRef:aU,trustPrompt:a9,onTrustResponse:bb},A.sessionName),D&&A&&!cD&&k&&(0,d.jsx)(be,{tabId:k,sessionName:A.sessionName,cwd:aa||A.cwd,onClose:()=>cb("terminal"),onNewSession:cp,onRestart:cu,updatePrompt:bc,onUpdatePromptResponse:bl,trustPrompt:a9,onTrustResponse:bb,scrollToBottomRef:aS,addPendingMessageRef:aT,removePendingMessageRef:aU},A.sessionName),F&&!cD&&a_&&(0,d.jsx)(bg.default,{tabId:k??void 0,wsId:ab??void 0,sessionName:A?.sessionName,agentSessionId:a$,provider:D?"codex":"claude",cliState:aY,sendStdin:b0,terminalWsConnected:"connected"===bO,visible:!0,focusTerminal:bJ,focusInputRef:ao,setInputValueRef:aq,onRestartSession:D?cu:cm,onSend:bo,onOptimisticSend:bx,onAddPendingMessage:by,onRemovePendingMessage:bz,attachFilesRef:aV},k),F&&!cD&&a_&&k&&(0,d.jsx)(bh.default,{prompts:a3,visible:!0,onSelect:bC})]})}),(0,d.jsx)(ar,{className:(0,av.cn)("group flex items-center justify-center overflow-hidden bg-card",F&&!cx?"h-3":"h-0"),disabled:!F||cx,children:(0,d.jsx)("div",{className:"h-px w-16 rounded-full bg-border transition-colors group-hover:bg-muted-foreground group-data-[resize-handle-active]:bg-muted-foreground"})}),F&&(0,d.jsxs)("button",{className:"flex h-6 w-full shrink-0 cursor-pointer items-center gap-1.5 border-t border-border bg-black/3 px-2 text-muted-foreground transition-colors hover:bg-black/5 dark:bg-white/3 dark:hover:bg-white/5",onClick:cA,children:[(0,d.jsx)(aI.TerminalSquare,{className:"h-3 w-3"}),(0,d.jsx)("span",{className:"text-[11px] font-medium",children:"Terminal"}),aa&&(0,d.jsx)("span",{className:"min-w-0 truncate text-[11px] opacity-60",children:aa.replace(/^\/Users\/[^/]+/,"~")}),(0,d.jsx)("span",{className:"ml-auto flex h-4 w-4 shrink-0 items-center justify-center",children:cx?(0,d.jsx)(aH.default,{className:"h-3 w-3"}):(0,d.jsx)(aG.ChevronDown,{className:"h-3 w-3"})})]}),(0,d.jsx)(ap,{id:"terminal-area",minSize:0,collapsible:!0,collapsedSize:0,children:(0,d.jsx)("div",{className:"flex h-full flex-col",onMouseDown:()=>{aB.current=!0},children:(0,d.jsx)(aQ.default,{ref:bE,minHeight:F?256:void 0,className:(0,av.cn)("min-h-0 flex-1",cC?"opacity-100":"opacity-0",F&&"py-0 pl-2 pr-0.5")})})})]}),cB&&(0,d.jsx)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:(0,d.jsxs)(au.Button,{className:"gap-1.5",onClick:()=>b3(),disabled:T,children:[T?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(i.Plus,{className:"h-3.5 w-3.5"}),g("openNewTab")]})}),!cB&&"terminal"===B&&"disconnected"===bO&&"session-not-found"===bY&&k&&(0,d.jsx)(bm,{cwd:A?.cwd,lastCommand:A?.lastCommand,onRestartWithCommand:a=>b5(k,a),onRestartNew:()=>b5(k)}),a5&&a5.tabId===k&&"terminal"===B&&(0,d.jsx)(bn.default,{modeName:a5.displayName,onSwitch:cv,onDismiss:()=>a6(null)}),ce&&(0,d.jsx)(bp,{hint:cf,onSubmit:ci,onDismiss:cj}),!cB&&!G&&!H&&(0,d.jsx)(bi.default,{status:bO,retryCount:bX,disconnectReason:bY,onReconnect:b$}),J]})]})});bX.displayName="PaneContainer";let bY=a=>"pane"===a.type?`pane:${a.id}`:["split",a.orientation,a.ratio,bY(a.children[0]),bY(a.children[1])].join("|"),bZ=(0,e.memo)(a=>{let{root:b,onUpdateRatio:c,onEqualizeRatios:f,equalizeRef:g}=a,h=(0,e.useRef)(null),i=(0,e.useRef)(new Map),j=(0,e.useRef)(""),k=(0,e.useRef)(new Map),l=(0,e.useCallback)(()=>{let a=(0,ax.equalizeNode)(b),c=(a,b)=>{if("pane"===a.type)return;let d=b.join("-")||"root",e=k.current.get(d);e?.current&&e.current.setLayout({left:a.ratio,right:100-a.ratio}),c(a.children[0],[...b,0]),c(a.children[1],[...b,1])};c(a,[]),f()},[b,f]);(0,e.useEffect)(()=>{g&&(g.current=l)});let m=(0,ax.collectPanes)(b),n=new Map;m.forEach((a,b)=>{n.set(a.id,b+1)});let o=a=>{let b=i.current.get(a);return b||((b=document.createElement("div")).style.height="100%",b.style.width="100%",i.current.set(a,b)),b},p=(a,b)=>{let e;if("pane"===a.type)return(0,d.jsx)("div",{"data-pane-slot":a.id,style:{height:"100%",width:"100%"}},`slot-${a.id}`);let f=(0,ax.getFirstPaneId)(a.children[0]),g=(0,ax.getFirstPaneId)(a.children[1]),h="horizontal"===a.orientation,i=b.join("-")||"root";return(0,d.jsxs)(an,{groupRef:((e=k.current.get(i))||(e={current:null},k.current.set(i,e)),e),orientation:a.orientation,defaultLayout:{left:a.ratio,right:100-a.ratio},onLayoutChanged:d=>{let e=d.left;void 0!==e&&Math.abs(e-a.ratio)>.1&&c(b,Math.round(100*e)/100)},children:[(0,d.jsx)(ap,{id:"left",minSize:h?200:120,defaultSize:`${a.ratio}%`,children:p(a.children[0],[...b,0])}),(0,d.jsx)(ar,{className:"relative flex shrink-0 items-center justify-center bg-border transition-colors duration-100 hover:bg-muted-foreground/50 active:bg-muted-foreground",style:{width:h?"1px":void 0,height:h?void 0:"1px"}}),(0,d.jsx)(ap,{id:"right",minSize:h?200:120,defaultSize:`${100-a.ratio}%`,children:p(a.children[1],[...b,1])})]},`group-${f}-${g}`)};return(0,e.useLayoutEffect)(()=>{if(!h.current)return;let a=new Set(m.map(a=>a.id));for(let[b,c]of i.current)a.has(b)||(c.remove(),i.current.delete(b));m.forEach(a=>{let b=h.current.querySelector(`[data-pane-slot="${a.id}"]`),c=o(a.id);b&&c.parentElement!==b&&b.appendChild(c)})},[m.map(a=>a.id).join(",")]),(0,e.useLayoutEffect)(()=>{let a=m.map(a=>a.id).join(",");if(j.current&&j.current!==a){let a=(b,c)=>{if("pane"===b.type)return;let d=c.join("-")||"root",e=k.current.get(d);e?.current?.setLayout({left:b.ratio,right:100-b.ratio}),a(b.children[0],[...c,0]),a(b.children[1],[...c,1])};a(b,[])}j.current=a},[m.map(a=>a.id).join(",")]),(0,d.jsxs)("div",{ref:h,className:"h-full w-full bg-terminal-bg",children:[p(b,[]),m.map(a=>(0,aF.createPortal)((0,d.jsx)(bX,{paneId:a.id,paneNumber:n.get(a.id)??1}),o(a.id)))]})},(a,b)=>bY(a.root)===bY(b.root)&&a.onUpdateRatio===b.onUpdateRatio&&a.onEqualizeRatios===b.onEqualizeRatios&&a.equalizeRef===b.equalizeRef);var b$=a.i(75747),b_=a.i(604544),b0=a.i(708711);let b1=()=>{let a=((a=3e3)=>{let[b,c]=(0,e.useState)(null);return(0,e.useEffect)(()=>{let b=bt.default?window.electronAPI:null;if(!b)return;let d=!0,e=async()=>{try{let[a,e]=await Promise.all([b.getSystemResources(),fetch("/api/system/tmux-sessions").then(a=>a.json())]);d&&c({cpu:a.cpu,memory:a.memory,tmuxSessions:e.count})}catch{}};e();let f=setInterval(e,a);return()=>{d=!1,clearInterval(f)}},[a]),b})();return(0,aL.default)(a=>a.systemResourcesEnabled)&&a?(0,d.jsxs)("div",{className:"flex items-center gap-2 text-[9px] text-muted-foreground/60",children:[(0,d.jsxs)("span",{className:"tabular-nums",children:["CPU ",a.cpu.toFixed(1),"%"]}),(0,d.jsxs)("span",{className:"tabular-nums",children:["MEM ",Math.round(a.memory.used/1048576),"MB"]}),(0,d.jsxs)("span",{className:"tabular-nums",children:["TMUX ",a.tmuxSessions]})]}):null};var b2=a.i(365092),b3=a.i(895159),b4=a.i(357785);let b5=({className:a})=>(0,d.jsxs)("svg",{className:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"8",y1:"4",x2:"8",y2:"20"}),(0,d.jsx)("line",{x1:"16",y1:"4",x2:"16",y2:"20"})]}),b6=({className:a})=>(0,d.jsxs)("svg",{className:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"12",y1:"3",x2:"12",y2:"21"})]}),b7=({className:a})=>(0,d.jsxs)("svg",{className:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"3",y1:"12",x2:"21",y2:"12"})]}),b8={dirty:"text-muted-foreground/75",sync:"text-muted-foreground/75",stash:"text-muted-foreground/65"},b9=({activePaneId:a,root:b,paneCount:c,canSplit:g,isSplitting:h,onSplitPane:i,onEqualizeRatios:j,isGitPanelOpen:k,onToggleGitPanel:l})=>{let m=(0,f.useTranslations)("terminal"),n=(0,bJ.default)()?"⌘":"Ctrl+",o=(0,b_.default)(),p=(0,ax.collectPanes)(b),q=p.find(b=>b.id===a)??p[0],r=q?.tabs.find(a=>a.id===q.activeTabId),s=(0,aD.default)(a=>r?.id?a.metadata[r.id]?.cwd:void 0),t=(0,b4.default)(a=>a.phase),u=(0,b4.default)(a=>a.status),v=(0,b4.default)(a=>a.branch),w=(0,b4.default)(a=>a.resetForTarget),x=(0,b4.default)(a=>a.fetchForTarget),y=s||r?.cwd||r?.sessionName||null,z=r?.sessionName??null,A=`${n}⇧F`,B=(0,b4.getGitStatusIndicators)(u),C=`${(0,b4.formatGitStatusSummary)(t,v,u,"Git panel")} (${A})`,D=B.length>0||"error"===t;(0,e.useEffect)(()=>{let a={cwdKey:y,tmuxSession:z};if(w(a),x(a),!y||!z)return;let b=window.setInterval(()=>{x(a)},15e3);return()=>window.clearInterval(b)},[x,y,z,w]);let E=(0,aL.default)(a=>a.editorUrl),F=(0,aL.default)(a=>a.editorPreset),G=(0,e.useMemo)(()=>(0,b2.buildEditorUrl)(F,E,s||"/"),[F,E,s]),H=!!G&&(0,b2.isSafeEditorTarget)(G),I=!!G&&(0,b2.isWebEditorUrl)(G),J=H&&!I&&!0,K=J?m("editorRemoteNotSupported"):m("openEditor"),L=q?.id;return(0,d.jsx)("div",{className:"shrink-0 bg-background",children:(0,d.jsxs)("div",{className:"relative z-40 flex h-12 shrink-0 items-center border-b border-border px-3",...bt.default?{style:{WebkitAppRegion:"drag"}}:{},children:[(0,d.jsx)("div",{className:"mr-auto",...bt.default?{style:{WebkitAppRegion:"no-drag"}}:{},children:(0,d.jsx)(b1,{})}),(0,d.jsx)(bz.TooltipProvider,{children:(0,d.jsxs)("div",{className:"flex items-center gap-1",...bt.default?{style:{WebkitAppRegion:"no-drag"}}:{},children:["off"!==F&&(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsx)(bz.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",J?"cursor-not-allowed opacity-30":"hover:text-foreground"),"aria-disabled":J||void 0,onClick:()=>{if(J)return;if(!G)return void at.toast.info(m("editorUrlNotSet"));if(!H)return void at.toast.error(m("editorUrlNotSet"));if(I)return void window.open(G,"_blank","noopener,noreferrer");let a=window.electronAPI;if(a?.openExternal)return void a.openExternal(G);let b=document.createElement("iframe");b.style.display="none",b.src=G,document.body.appendChild(b),setTimeout(()=>b.remove(),1e3)},"aria-label":m("openEditor"),children:G?(0,d.jsx)(b3.EditorIcon,{preset:F,className:"h-3.5 w-3.5"}):(0,d.jsx)(b$.FolderCode,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:K})]}),"off"!==F&&(0,d.jsx)("div",{className:"h-5 w-px bg-border"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsx)(bz.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",g?"hover:text-foreground":"cursor-not-allowed opacity-30"),onClick:g&&L?()=>i(L,"horizontal"):void 0,disabled:!g,"aria-label":m("splitVertical"),children:h?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(b6,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:m("splitVerticalShortcut",{shortcut:`${n}D`})})]}),(0,d.jsx)(b0.default,{mac:"⌘D",other:"^D",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o?"opacity-100":"opacity-0")})]}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsx)(bz.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",g?"hover:text-foreground":"cursor-not-allowed opacity-30"),onClick:g&&L?()=>i(L,"vertical"):void 0,disabled:!g,"aria-label":m("splitHorizontal"),children:h?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(b7,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:m("splitHorizontalShortcut",{shortcut:`${n}⇧D`})})]}),(0,d.jsx)(b0.default,{mac:"⌘⇧D",other:"^⇧D",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o?"opacity-100":"opacity-0")})]}),c>=2&&(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsx)(bz.TooltipTrigger,{className:"flex h-7 w-7 items-center justify-center text-muted-foreground hover:text-foreground",onClick:j,"aria-label":m("equalSplit"),children:(0,d.jsx)(b5,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:m("equalSplit")})]}),(0,d.jsx)(b0.default,{mac:"⌘⌥=",other:"^⌥=",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o?"opacity-100":"opacity-0")})]}),(0,d.jsx)("div",{className:"mx-1 h-5 w-px bg-border"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bz.Tooltip,{children:[(0,d.jsxs)(bz.TooltipTrigger,{className:(0,av.cn)("flex h-7 min-w-7 items-center justify-center rounded text-muted-foreground transition-colors",D&&"gap-1 px-1.5",k?"bg-accent text-foreground":"hover:bg-accent hover:text-foreground"),onClick:l,"aria-pressed":k,"aria-label":"Toggle Git panel",children:[(0,d.jsx)(bB.GitCompareArrows,{className:"h-3.5 w-3.5"}),"error"===t&&(0,d.jsx)("span",{className:"text-[10px] font-semibold leading-none text-negative/70","aria-hidden":"true",children:"!"}),B.map(a=>(0,d.jsx)("span",{className:(0,av.cn)("flex h-4 min-w-0 items-center justify-center text-[10px] font-medium leading-none",b8[a.tone]),"aria-hidden":"true",children:a.label},a.key))]}),(0,d.jsx)(bz.TooltipContent,{side:"bottom",children:C})]}),(0,d.jsx)(b0.default,{mac:"⌘⇧F",other:"^⇧F",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o&&!k?"opacity-100":"opacity-0")})]})]})})]})})},ca=({sessionName:a,onClose:b,onSendToAgent:c,settings:e,onSettingsChange:f})=>(0,d.jsx)("aside",{className:"flex h-full min-w-0 flex-col bg-card",children:(0,d.jsx)("div",{className:"min-h-0 flex-1",children:a?(0,d.jsx)(bk.default,{sessionName:a,onSendToAgent:c,onClose:b,settings:e,onSettingsChange:f}):(0,d.jsx)("div",{className:"flex h-full items-center justify-center px-6 text-center text-sm text-muted-foreground",children:"Open a terminal or agent tab first."})})});var cb=a.i(501130),cc=a.i(493621);let cd=()=>!1,ce=()=>(Number.isFinite(36),36);a.s(["default",0,()=>{let a=(0,f.useTranslations)("terminal"),b=(0,ay.default)(a=>a.isLoading),c=(0,ay.default)(a=>a.error),j=(0,ay.default)(a=>a.activeWorkspaceId),k=(0,ay.default)(a=>a.workspaces.length),l=(0,e.useRef)(null),m=(0,e.useRef)(null),n=(0,e.useRef)(null),o=(0,e.useRef)(null),[p,q]=(0,e.useState)(cd),[r,s]=(0,e.useState)(ce),[t,u]=(0,e.useState)(null),v=(0,e.useCallback)(()=>{let b=l.current;b&&(ay.default.getState().switchWorkspace(b),at.toast.error(a("cannotSwitch")))},[a]),w=(0,aw.default)({workspaceId:j,onFetchError:v}),x=!!(w.layout&&!w.isLoading&&(0,ax.collectPanes)(w.layout.root).every(a=>0===a.tabs.length)),y=!!(w.layout&&!w.isLoading&&!x),z=(0,e.useMemo)(()=>w.layout?.activePaneId?(0,ax.collectPanes)(w.layout.root).find(a=>a.id===w.layout?.activePaneId)??null:null,[w.layout]),A=(0,e.useMemo)(()=>z?.activeTabId?z.tabs.find(a=>a.id===z.activeTabId)??null:null,[z]),B=(0,aD.default)(a=>A?.id?a.metadata[A.id]?.cwd:void 0),C=(0,e.useMemo)(()=>w.layout?new Set((0,ax.collectPanes)(w.layout.root).flatMap(a=>a.tabs.map(a=>a.sessionName))):new Set,[w.layout]);(0,e.useEffect)(()=>{if(w.layout){let a;q(w.layout.diffSettings?.panelOpen??!1),s(Number.isFinite(a=Number(w.layout.diffSettings?.panelSize))?Math.min(60,Math.max(20,a)):36)}},[j,w.layout]);let D=(0,e.useCallback)(a=>{q(a),w.updateDiffSettings({panelOpen:a})},[w]),E=(0,e.useCallback)(a=>{s(a),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{w.updateDiffSettings({panelSize:a}),o.current=null},200)},[w]);(0,e.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]),(0,e.useEffect)(()=>{o.current&&(clearTimeout(o.current),o.current=null)},[j]);let F=(0,e.useCallback)((a,b)=>{z?.id&&window.dispatchEvent(new CustomEvent("purplemux-send-to-agent",{detail:{paneId:z.id,text:a,provider:b}}))},[z?.id]);(0,e.useEffect)(()=>{let a=()=>D(!p);return window.addEventListener("purplemux-toggle-git-panel",a),()=>window.removeEventListener("purplemux-toggle-git-panel",a)},[p,D]),(0,e.useEffect)(()=>{let a=A?.sessionName;if(!a)return;let b=B||A.cwd||a;u(c=>c?.cwdKey===b&&C.has(c.sessionName)?c:{sessionName:a,cwdKey:b})},[C,A?.sessionName,A?.cwd,B]),(0,e.useEffect)(()=>{y&&n.current?.setLayout(p?{main:100-r,git:r}:{main:100,git:0})},[j,p,r,y]);let G=w.layout?.updatedAt,H=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!w.layout||!G||H.current===G)return;H.current=G;let a={};for(let b of(0,ax.collectPanes)(w.layout.root))for(let c of b.tabs)"agent-sessions"!==c.panelType&&(c.title||c.cwd)&&(a[c.id]={title:c.title,cwd:c.cwd});aD.default.getState().hydrate(a),(0,aE.requestSync)()},[G]),(0,e.useEffect)(()=>{if(!w.layout)return;let a=new Set((0,ax.collectPanes)(w.layout.root).flatMap(a=>a.tabs.map(a=>a.id)));aD.default.getState().retainOnly(a)},[w.layout]),(0,cc.useAutoDeleteEmptyWorkspace)(x,w.clearLayout);let I=(0,e.useCallback)(a=>{let{activeWorkspaceId:b}=ay.default.getState();a!==b&&(l.current=b,aD.default.getState().reset(),w.clearLayout(),ay.default.getState().switchWorkspace(a))},[w]);if((0,e.useEffect)(()=>(cb.default.getState().register(I),()=>cb.default.getState().unregister()),[I]),(({layout:a})=>{let b=(0,e.useRef)(a),c=(0,ay.default)(a=>a.isSettingsDialogOpen),d=(0,ay.default)(a=>a.isCheatSheetOpen),f=!c&&!d;(0,e.useEffect)(()=>{b.current=a},[a]),(0,az.default)("pane.split_right",()=>{let a=b.current;a.layout?.activePaneId&&a.canSplit&&a.splitPane(a.layout.activePaneId,"horizontal")},f),(0,az.default)("pane.split_down",()=>{let a=b.current;a.layout?.activePaneId&&a.canSplit&&a.splitPane(a.layout.activePaneId,"vertical")},f);let g=(0,e.useCallback)(a=>{let c=b.current;if(!c.layout?.activePaneId)return;let d=(0,ax.findAdjacentPaneInDirection)(c.layout.root,c.layout.activePaneId,a);d&&c.focusPane(d)},[]);(0,az.default)("pane.focus_left",()=>g("left"),f),(0,az.default)("pane.focus_right",()=>g("right"),f),(0,az.default)("pane.focus_up",()=>g("up"),f),(0,az.default)("pane.focus_down",()=>g("down"),f);let h=(0,e.useCallback)(a=>{let c=b.current;if(!c.layout?.activePaneId)return;let d=(0,ax.findResizeTarget)(c.layout.root,c.layout.activePaneId,a);if(!d)return;let e=d.increase?5:-5,f=Math.min(95,Math.max(5,d.currentRatio+e));f!==d.currentRatio&&aw.useLayoutStore.getState().updateRatio(d.path,f)},[]);(0,az.default)("pane.resize_left",()=>h("left"),f),(0,az.default)("pane.resize_right",()=>h("right"),f),(0,az.default)("pane.resize_up",()=>h("up"),f),(0,az.default)("pane.resize_down",()=>h("down"),f),(0,az.default)("pane.equalize",()=>aw.useLayoutStore.getState().equalizeRatios(),f),(0,az.default)("tab.new",()=>{let a=b.current;a.layout?.activePaneId&&window.dispatchEvent(new CustomEvent("open-new-tab-menu",{detail:{paneId:a.layout.activePaneId}}))},f),(0,az.default)("tab.close",()=>{let a=b.current;if(!a.layout?.activePaneId)return;let c=aC(a.layout);c?.activeTabId&&(1===c.tabs.length&&a.paneCount>1?a.closePane(c.id):a.deleteTabInPane(c.id,c.activeTabId))},f),(0,az.default)("tab.prev",()=>aw.useLayoutStore.getState().focusPrevTab(),f),(0,az.default)("tab.next",()=>aw.useLayoutStore.getState().focusNextTab(),f),(0,az.default)("pane.clear_screen",()=>{},f),(0,az.default)("tab.goto",a=>{let b=parseInt(a.code.replace("Digit",""),10);isNaN(b)||b<1||b>9||aw.useLayoutStore.getState().focusTabByIndex(9===b?1/0:b-1)},f);let i=(0,e.useCallback)(a=>{let c=aC(b.current.layout);if(!c?.activeTabId)return;let d=c.tabs.find(a=>a.id===c.activeTabId);if(!d)return;let e=d.panelType??"terminal";if(e===a)return;let f=aA.default.getState().tabs[c.activeTabId];(0,aB.tryAgentSwitch)({current:e,target:a,cliState:f?.cliState,agentProcess:f?.agentProcess,runningAgentPanelType:(0,aB.getAgentPanelTypeFromProvider)(f?.agentProviderId)})&&aw.useLayoutStore.getState().updateTabPanelType(c.id,c.activeTabId,a)},[]);(0,az.default)("view.mode_terminal",()=>i("terminal"),f),(0,az.default)("view.mode_claude",()=>i("claude-code"),f),(0,az.default)("view.mode_codex",()=>i("codex-cli"),f),(0,az.default)("view.mode_diff",()=>{window.dispatchEvent(new CustomEvent("purplemux-toggle-git-panel"))},f)})({layout:w}),b)return(0,d.jsxs)("div",{className:"flex h-full w-full flex-col overflow-hidden bg-background animate-delayed-fade-in",children:[(0,d.jsx)("div",{className:"flex h-12 shrink-0 items-center gap-1.5 border-b border-border bg-background px-2",children:[1,2,3].map(a=>(0,d.jsx)("div",{className:"h-4 w-16 animate-pulse rounded bg-muted"},a))}),(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:a("connecting")})]})})]});if(c&&!k)return(0,d.jsxs)("div",{className:"flex h-full w-full flex-col items-center justify-center gap-3 overflow-hidden bg-background",children:[(0,d.jsx)(g.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:c}),(0,d.jsxs)(au.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:ay.default.getState().fetchWorkspaces,children:[(0,d.jsx)(h.RefreshCw,{className:"h-3.5 w-3.5"}),a("retryAction")]})]});let J=!w.layout&&w.isLoading&&j;return(0,d.jsxs)("div",{className:"relative flex h-full w-full flex-col overflow-hidden bg-background",children:[w.layout&&!w.isLoading&&!x&&(0,d.jsx)(b9,{activePaneId:w.layout.activePaneId,root:w.layout.root,paneCount:w.paneCount,canSplit:w.canSplit,isSplitting:w.isSplitting,onSplitPane:w.splitPane,onEqualizeRatios:()=>m.current?.(),isGitPanelOpen:p,onToggleGitPanel:()=>D(!p)}),(0,d.jsxs)("div",{className:"relative min-h-0 flex-1",children:[J&&(0,d.jsx)("div",{className:"absolute inset-0 z-30 flex items-center justify-center bg-background animate-delayed-fade-in",children:(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"})}),w.error&&!w.isLoading&&(0,d.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[(0,d.jsx)(g.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:w.error}),(0,d.jsxs)(au.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:()=>w.fetchLayout(),children:[(0,d.jsx)(h.RefreshCw,{className:"h-3.5 w-3.5"}),a("retryAction")]})]}),w.layout&&!w.isLoading&&!x&&(0,d.jsx)("div",{className:"h-full",children:(0,d.jsxs)(an,{groupRef:n,className:"h-full w-full min-w-0",orientation:"horizontal",resizeTargetMinimumSize:{fine:8,coarse:32},defaultLayout:p?{main:100-r,git:r}:{main:100,git:0},onLayoutChanged:a=>{if(!p)return;let b=a.git;if(void 0===b||b<=1)return;let c=Math.min(60,Math.max(20,Math.round(b)));c!==r&&E(c)},children:[(0,d.jsx)(ap,{id:"main",minSize:"320px",className:"h-full min-w-0",children:(0,d.jsx)(bZ,{root:w.layout.root,onUpdateRatio:w.updateRatio,onEqualizeRatios:w.equalizeRatios,equalizeRef:m})}),(0,d.jsx)(ar,{disabled:!p,className:(0,av.cn)("shrink-0 cursor-col-resize bg-border transition-colors duration-100 hover:bg-muted-foreground/50 data-[resize-handle-active]:bg-muted-foreground",p?"w-px":"w-0")}),(0,d.jsx)(ap,{id:"git",collapsible:!0,collapsedSize:"0px",minSize:"320px",maxSize:"760px",groupResizeBehavior:"preserve-pixel-size",className:"h-full min-w-0 overflow-hidden",children:p&&(0,d.jsx)(ca,{sessionName:t?.sessionName,onClose:()=>D(!1),onSendToAgent:F,settings:w.layout.diffSettings,onSettingsChange:w.updateDiffSettings})})]})},j),!j&&!b&&!c&&(0,d.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,d.jsxs)(au.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:async()=>{let a=await ay.default.getState().createWorkspace("");a&&ay.default.getState().switchWorkspace(a.id)},children:[(0,d.jsx)(i.Plus,{className:"h-3.5 w-3.5"}),a("newWorkspace")]})})]})]})}],51395)},821662,a=>{a.n(a.i(51395))}];
|
|
1
|
+
module.exports=[51395,a=>{"use strict";let b,c;var d=a.i(508171),e=a.i(127669),f=a.i(113952),g=a.i(317118),h=a.i(313355),i=a.i(753221);function j({groupSize:a,panelElement:b,styleProp:c}){let d,[e,f]=function(a){switch(typeof a){case"number":return[a,"px"];case"string":{let b=parseFloat(a);return a.endsWith("%")?[b,"%"]:a.endsWith("px")?[b,"px"]:a.endsWith("rem")?[b,"rem"]:a.endsWith("em")?[b,"em"]:a.endsWith("vh")?[b,"vh"]:a.endsWith("vw")?[b,"vw"]:[b,"%"]}}}(c);switch(f){case"%":d=e/100*a;break;case"px":d=e;break;case"rem":d=e*parseFloat(getComputedStyle(b.ownerDocument.body).fontSize);break;case"em":d=e*parseFloat(getComputedStyle(b).fontSize);break;case"vh":d=e/100*window.innerHeight;break;case"vw":d=e/100*window.innerWidth}return d}function k(a){return parseFloat(a.toFixed(3))}function l({group:a}){let{orientation:b,panels:c}=a;return c.reduce((a,c)=>a+="horizontal"===b?c.element.offsetWidth:c.element.offsetHeight,0)}function m(a){let{panels:b}=a,c=l({group:a});return 0===c?b.map(a=>({groupResizeBehavior:a.panelConstraints.groupResizeBehavior,collapsedSize:0,collapsible:!0===a.panelConstraints.collapsible,defaultSize:void 0,disabled:a.panelConstraints.disabled,minSize:0,maxSize:100,panelId:a.id})):b.map(a=>{let b,{element:d,panelConstraints:e}=a,f=0;void 0!==e.collapsedSize&&(f=k(j({groupSize:c,panelElement:d,styleProp:e.collapsedSize})/c*100)),void 0!==e.defaultSize&&(b=k(j({groupSize:c,panelElement:d,styleProp:e.defaultSize})/c*100));let g=0;void 0!==e.minSize&&(g=k(j({groupSize:c,panelElement:d,styleProp:e.minSize})/c*100));let h=100;return void 0!==e.maxSize&&(h=k(j({groupSize:c,panelElement:d,styleProp:e.maxSize})/c*100)),{groupResizeBehavior:e.groupResizeBehavior,collapsedSize:f,collapsible:!0===e.collapsible,defaultSize:b,disabled:e.disabled,minSize:g,maxSize:h,panelId:a.id}})}function n(a,b="Assertion error"){if(!a)throw Error(b)}function o(a,b){return Array.from(b).sort("horizontal"===a?p:q)}function p(a,b){let c=a.element.offsetLeft-b.element.offsetLeft;return 0!==c?c:a.element.offsetWidth-b.element.offsetWidth}function q(a,b){let c=a.element.offsetTop-b.element.offsetTop;return 0!==c?c:a.element.offsetHeight-b.element.offsetHeight}function r(a){return null!==a&&"object"==typeof a&&"nodeType"in a&&a.nodeType===Node.ELEMENT_NODE}function s(a,b){return{x:a.x>=b.left&&a.x<=b.right?0:Math.min(Math.abs(a.x-b.left),Math.abs(a.x-b.right)),y:a.y>=b.top&&a.y<=b.bottom?0:Math.min(Math.abs(a.y-b.top),Math.abs(a.y-b.bottom))}}function t(a){let{element:c,orientation:d,panels:e,separators:f}=a,g=o(d,Array.from(c.children).filter(r).map(a=>({element:a}))).map(({element:a})=>a),h=[],i=!1,j=!1,k=-1,m=-1,p=0,q,t=[];{let a=-1;for(let b of g)b.hasAttribute("data-panel")&&(a++,b.hasAttribute("data-disabled")||(p++,-1===k&&(k=a),m=a))}if(p>1){let c=-1;for(let o of g)if(o.hasAttribute("data-panel")){c++;let f=e.find(a=>a.element===o);if(f){if(q){let e,g=q.element.getBoundingClientRect(),p=o.getBoundingClientRect();if(j){let a="horizontal"===d?new DOMRect(g.right,g.top,0,g.height):new DOMRect(g.left,g.bottom,g.width,0),b="horizontal"===d?new DOMRect(p.left,p.top,0,p.height):new DOMRect(p.left,p.top,p.width,0);switch(t.length){case 0:e=[a,b];break;case 1:{let c=t[0],f=function({orientation:a,rects:b,targetRect:c}){let d={x:c.x+c.width/2,y:c.y+c.height/2},e,f=Number.MAX_VALUE;for(let c of b){let{x:b,y:g}=s(d,c),h="horizontal"===a?b:g;h<f&&(f=h,e=c)}return n(e,"No rect found"),e}({orientation:d,rects:[g,p],targetRect:c.element.getBoundingClientRect()});e=[c,f===g?b:a];break}default:e=t}}else e=t.length?t:["horizontal"===d?new DOMRect(g.right,p.top,p.left-g.right,p.height):new DOMRect(p.left,g.bottom,p.width,p.top-g.bottom)];for(let d of e){let e="width"in d?d:d.element.getBoundingClientRect(),g=(void 0===b&&(b="function"==typeof matchMedia&&!!matchMedia("(pointer:coarse)").matches),b)?a.resizeTargetMinimumSize.coarse:a.resizeTargetMinimumSize.fine;if(e.width<g){let a=g-e.width;e=new DOMRect(e.x-a/2,e.y,e.width+a,e.height)}if(e.height<g){let a=g-e.height;e=new DOMRect(e.x,e.y-a/2,e.width,e.height+a)}let j=c<=k||c>m;i||j||h.push({group:a,groupSize:l({group:a}),panels:[q,f],separator:"width"in d?void 0:d,rect:e}),i=!1}}j=!1,q=f,t=[]}}else if(o.hasAttribute("data-separator")){null!==o.ariaDisabled&&(i=!0);let a=f.find(a=>a.element===o);a?t.push(a):(q=void 0,t=[])}else j=!0}return h}class u{#a={};addListener(a,b){let c=this.#a[a];return void 0===c?this.#a[a]=[b]:c.includes(b)||c.push(b),()=>{this.removeListener(a,b)}}emit(a,b){let c=this.#a[a];if(void 0!==c)if(1===c.length)c[0].call(null,b);else{let a=!1,d=null,e=Array.from(c);for(let c=0;c<e.length;c++){let f=e[c];try{f.call(null,b)}catch(b){null===d&&(a=!0,d=b)}}if(a)throw d}}removeAllListeners(){this.#a={}}removeListener(a,b){let c=this.#a[a];if(void 0!==c){let a=c.indexOf(b);a>=0&&c.splice(a,1)}}}let v=new Map,w=new u;function x(a,b){for(let[b]of v)if(b.id===a)return b}function y(a,b){for(let[b,c]of v)if(b.id===a)return c;if(b)throw Error(`Could not find data for Group with id ${a}`)}function z(a,b){return w.addListener("groupChange",c=>{c.group.id===a&&b(c)})}function A(a,b){let c=v.get(a);(v=new Map(v)).set(a,b),w.emit("groupChange",{group:a,prev:c,next:b})}let B=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function C(a){let b=a.length;for(;b--;){let c=a[b];if(n(c,"Missing node"),function(a){let b,c=getComputedStyle(a);return!!("fixed"===c.position||"auto"!==c.zIndex&&("static"!==c.position||"flex"===(b=getComputedStyle(F(a)??a).display)||"inline-flex"===b)||1>+c.opacity||"transform"in c&&"none"!==c.transform||"webkitTransform"in c&&"none"!==c.webkitTransform||"mixBlendMode"in c&&"normal"!==c.mixBlendMode||"filter"in c&&"none"!==c.filter||"webkitFilter"in c&&"none"!==c.webkitFilter||"isolation"in c&&"isolate"===c.isolation||B.test(c.willChange)||"touch"===c.webkitOverflowScrolling)}(c))return c}return null}function D(a){return a&&Number(getComputedStyle(a).zIndex)||0}function E(a){let b=[];for(;a;)b.push(a),a=F(a);return b}function F(a){let{parentNode:b}=a;return null!==b&&"object"==typeof b&&"nodeType"in b&&b.nodeType===Node.DOCUMENT_FRAGMENT_NODE?b.host:b}function G(a,b){let c=[];return b.forEach((b,d)=>{if(d.disabled)return;let e=t(d),f=function(a,b,c){let d,e={x:1/0,y:1/0};for(let f of b){let b=s(c,f.rect);switch(a){case"horizontal":b.x<=e.x&&(d=f,e=b);break;case"vertical":b.y<=e.y&&(d=f,e=b)}}return d?{distance:e,hitRegion:d}:void 0}(d.orientation,e,{x:a.clientX,y:a.clientY});f&&f.distance.x<=0&&f.distance.y<=0&&function({groupElement:a,hitRegion:b,pointerEventTarget:c}){if(!r(c)||c.contains(a)||a.contains(c))return!0;if(function(a,b){let c;if(a===b)throw Error("Cannot compare node with itself");let d={a:E(a),b:E(b)};for(;d.a.at(-1)===d.b.at(-1);)c=d.a.pop(),d.b.pop();n(c,"Stacking order can only be calculated for elements with a common ancestor");let e={a:D(C(d.a)),b:D(C(d.b))};if(e.a===e.b){let a=c.childNodes,b={a:d.a.at(-1),b:d.b.at(-1)},e=a.length;for(;e--;){let c=a[e];if(c===b.a)return 1;if(c===b.b)return -1}}return Math.sign(e.a-e.b)}(c,a)>0){let e=c;for(;e;){var d;if(e.contains(a))break;if(d=e.getBoundingClientRect(),d.x<b.x+b.width&&d.x+d.width>b.x&&d.y<b.y+b.height&&d.y+d.height>b.y)return!1;e=e.parentElement}}return!0}({groupElement:d.element,hitRegion:f.hitRegion.rect,pointerEventTarget:a.target})&&c.push(f.hitRegion)}),c}function H(a,b,c=0){return Math.abs(k(a)-k(b))<=c}function I(a,b){return H(a,b)?0:a>b?1:-1}function J({overrideDisabledPanels:a,panelConstraints:b,prevSize:c,size:d}){let{collapsedSize:e=0,collapsible:f,disabled:g,maxSize:h=100,minSize:i=0}=b;return g&&!a?c:(0>I(d,i)&&(d=f&&0>I(d,(e+i)/2)?e:i),k(d=Math.min(h,d)))}function K({delta:a,initialLayout:b,panelConstraints:c,pivotIndices:d,prevLayout:e,trigger:f}){if(H(a,0))return b;let g="imperative-api"===f,h=Object.values(b),i=Object.values(e),j=[...h],[k,l]=d;n(null!=k,"Invalid first pivot index"),n(null!=l,"Invalid second pivot index");let m=0;if("keyboard"===f){{let b=a<0?l:k,d=c[b];n(d,`Panel constraints not found for index ${b}`);let{collapsedSize:e=0,collapsible:f,minSize:g=0}=d;if(f){let c=h[b];if(n(null!=c,`Previous layout not found for panel index ${b}`),H(c,e)){let b=g-c;I(b,Math.abs(a))>0&&(a=a<0?0-b:b)}}}{let b=a<0?k:l,d=c[b];n(d,`No panel constraints found for index ${b}`);let{collapsedSize:e=0,collapsible:f,minSize:g=0}=d;if(f){let c=h[b];if(n(null!=c,`Previous layout not found for panel index ${b}`),H(c,g)){let b=c-e;I(b,Math.abs(a))>0&&(a=a<0?0-b:b)}}}}else{let b=a<0?l:k,d=c[b];n(d,`Panel constraints not found for index ${b}`);let e=h[b],{collapsible:f,collapsedSize:g,minSize:i}=d;if(f&&0>I(e,i))if(a>0){let b=i-g;0>I(e+a,i)&&(a=0>=I(a,b/2)?0:b)}else{let b=i-g;0>I(e-a,i)&&(a=I(100+a,100-b/2)>0?0:-b)}}{let b=a<0?1:-1,d=a<0?l:k,e=0;for(;;){let a=h[d];if(n(null!=a,`Previous layout not found for panel index ${d}`),e+=J({overrideDisabledPanels:g,panelConstraints:c[d],prevSize:a,size:100})-a,(d+=b)<0||d>=c.length)break}let f=Math.min(Math.abs(a),Math.abs(e));a=a<0?0-f:f}{let b=a<0?k:l;for(;b>=0&&b<c.length;){let d=Math.abs(a)-Math.abs(m),e=h[b];n(null!=e,`Previous layout not found for panel index ${b}`);let f=e-d,i=J({overrideDisabledPanels:g,panelConstraints:c[b],prevSize:e,size:f});if(!H(e,i)&&(m+=e-i,j[b]=i,m.toFixed(3).localeCompare(Math.abs(a).toFixed(3),void 0,{numeric:!0})>=0))break;a<0?b--:b++}}if(function(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!=b[c])return!1;return!0}(i,j))return e;{let b=a<0?l:k,d=h[b];n(null!=d,`Previous layout not found for panel index ${b}`);let e=d+m,f=J({overrideDisabledPanels:g,panelConstraints:c[b],prevSize:d,size:e});if(j[b]=f,!H(f,e)){let b=e-f,d=a<0?l:k;for(;d>=0&&d<c.length;){let e=j[d];n(null!=e,`Previous layout not found for panel index ${d}`);let f=e+b,h=J({overrideDisabledPanels:g,panelConstraints:c[d],prevSize:e,size:f});if(H(e,h)||(b-=h-e,j[d]=h),H(b,0))break;a>0?d--:d++}}}if(!H(Object.values(j).reduce((a,b)=>b+a,0),100,.1))return e;let o=Object.keys(e);return j.reduce((a,b,c)=>(a[o[c]]=b,a),{})}function L(a,b){if(Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(void 0===b[c]||0!==I(a[c],b[c]))return!1;return!0}function M({layout:a,panelConstraints:b}){let c=Object.values(a),d=[...c],e=d.reduce((a,b)=>a+b,0);if(d.length!==b.length)throw Error(`Invalid ${b.length} panel layout: ${d.map(a=>`${a}%`).join(", ")}`);if(!H(e,100)&&d.length>0)for(let a=0;a<b.length;a++){let b=d[a];n(null!=b,`No layout data found for index ${a}`);let c=100/e*b;d[a]=c}let f=0;for(let a=0;a<b.length;a++){let e=c[a];n(null!=e,`No layout data found for index ${a}`);let g=d[a];n(null!=g,`No layout data found for index ${a}`);let h=J({overrideDisabledPanels:!0,panelConstraints:b[a],prevSize:e,size:g});g!=h&&(f+=g-h,d[a]=h)}if(!H(f,0))for(let a=0;a<b.length;a++){let c=d[a];n(null!=c,`No layout data found for index ${a}`);let e=c+f,g=J({overrideDisabledPanels:!0,panelConstraints:b[a],prevSize:c,size:e});if(c!==g&&(f-=g-c,d[a]=g,H(f,0)))break}let g=Object.keys(a);return d.reduce((a,b,c)=>(a[g[c]]=b,a),{})}function N({groupId:a,panelId:b}){let c=()=>{for(let[b,{defaultLayoutDeferred:c,derivedPanelConstraints:d,layout:e,groupSize:f,separatorToPanels:g}]of v)if(b.id===a)return{defaultLayoutDeferred:c,derivedPanelConstraints:d,group:b,groupSize:f,layout:e,separatorToPanels:g};throw Error(`Group ${a} not found`)},d=()=>{let a=c().derivedPanelConstraints.find(a=>a.panelId===b);if(void 0!==a)return a;throw Error(`Panel constraints not found for Panel ${b}`)},e=()=>{let a=c().group.panels.find(a=>a.id===b);if(void 0!==a)return a;throw Error(`Layout not found for Panel ${b}`)},f=()=>{let a=c().layout[b];if(void 0!==a)return a;throw Error(`Layout not found for Panel ${b}`)},g=a=>{let d=f();if(a===d)return;let{defaultLayoutDeferred:e,derivedPanelConstraints:g,group:h,groupSize:i,layout:j,separatorToPanels:k}=c(),l=h.panels.findIndex(a=>a.id===b),m=l===h.panels.length-1,n=M({layout:K({delta:m?d-a:a-d,initialLayout:j,panelConstraints:g,pivotIndices:m?[l-1,l]:[l,l+1],prevLayout:j,trigger:"imperative-api"}),panelConstraints:g});L(j,n)||A(h,{defaultLayoutDeferred:e,derivedPanelConstraints:g,groupSize:i,layout:n,separatorToPanels:k})};return{collapse:()=>{let{collapsible:a,collapsedSize:b}=d(),{mutableValues:c}=e(),h=f();a&&h!==b&&(c.expandToSize=h,g(b))},expand:()=>{let{collapsible:a,collapsedSize:b,minSize:c}=d(),{mutableValues:h}=e(),i=f();if(a&&i===b){let a=h.expandToSize??c;0===a&&(a=1),g(a)}},getSize:()=>{let{group:a}=c(),b=f(),{element:d}=e();return{asPercentage:b,inPixels:"horizontal"===a.orientation?d.offsetWidth:d.offsetHeight}},isCollapsed:()=>{let{collapsible:a,collapsedSize:b}=d(),c=f();return a&&H(b,c)},resize:a=>{let{group:b}=c(),{element:d}=e(),f=l({group:b});g(k(j({groupSize:f,panelElement:d,styleProp:a})/f*100))}}}function O(a){a.defaultPrevented||G(a,v).forEach(b=>{if(b.separator&&!b.separator.disableDoubleClick){let c=b.panels.find(a=>void 0!==a.panelConstraints.defaultSize);if(c){let d=c.panelConstraints.defaultSize,e=N({groupId:b.group.id,panelId:c.id});e&&void 0!==d&&(e.resize(d),a.preventDefault())}}})}function P(a){for(let[b]of v)if(b.separators.some(b=>b.element===a))return b;throw Error("Could not find parent Group for separator element")}function Q({groupId:a}){let b=()=>{for(let[b,c]of v)if(b.id===a)return{group:b,...c};throw Error(`Could not find Group with id "${a}"`)};return{getLayout(){let{defaultLayoutDeferred:a,layout:c}=b();return a?{}:c},setLayout(a){let{defaultLayoutDeferred:c,derivedPanelConstraints:d,group:e,groupSize:f,layout:g,separatorToPanels:h}=b(),i=M({layout:a,panelConstraints:d});return c?g:(L(g,i)||A(e,{defaultLayoutDeferred:c,derivedPanelConstraints:d,groupSize:f,layout:i,separatorToPanels:h}),i)}}}function R(a,b){let c=P(a),d=y(c.id,!0),e=c.separators.find(b=>b.element===a);n(e,"Matching separator not found");let f=d.separatorToPanels.get(e);n(f,"Matching panels not found");let g=f.map(a=>c.panels.indexOf(a)),h=Q({groupId:c.id}).getLayout(),i=M({layout:K({delta:b,initialLayout:h,panelConstraints:d.derivedPanelConstraints,pivotIndices:g,prevLayout:h,trigger:"keyboard"}),panelConstraints:d.derivedPanelConstraints});L(h,i)||A(c,{defaultLayoutDeferred:d.defaultLayoutDeferred,derivedPanelConstraints:d.derivedPanelConstraints,groupSize:d.groupSize,layout:i,separatorToPanels:d.separatorToPanels})}function S(a){if(a.defaultPrevented)return;let b=a.currentTarget,c=P(b);if(!c.disabled)switch(a.key){case"ArrowDown":a.preventDefault(),"vertical"===c.orientation&&R(b,5);break;case"ArrowLeft":a.preventDefault(),"horizontal"===c.orientation&&R(b,-5);break;case"ArrowRight":a.preventDefault(),"horizontal"===c.orientation&&R(b,5);break;case"ArrowUp":a.preventDefault(),"vertical"===c.orientation&&R(b,-5);break;case"End":a.preventDefault(),R(b,100);break;case"Enter":{a.preventDefault();let c=P(b),{derivedPanelConstraints:d,layout:e,separatorToPanels:f}=y(c.id,!0),g=c.separators.find(a=>a.element===b);n(g,"Matching separator not found");let h=f.get(g);n(h,"Matching panels not found");let i=h[0],j=d.find(a=>a.panelId===i.id);if(n(j,"Panel metadata not found"),j.collapsible){let a=e[i.id];R(b,(j.collapsedSize===a?c.mutableState.expandedPanelSizes[i.id]??j.minSize:j.collapsedSize)-a)}break}case"F6":{a.preventDefault();let c=P(b).separators.map(a=>a.element),d=Array.from(c).findIndex(b=>b===a.currentTarget);n(null!==d,"Index not found");let e=a.shiftKey?d>0?d-1:c.length-1:d+1<c.length?d+1:0;c[e].focus({preventScroll:!0});break}case"Home":a.preventDefault(),R(b,-100)}}let T={cursorFlags:0,state:"inactive"},U=new u;function V(a){let b=T;T=a,U.emit("change",{prev:b,next:a})}function W(a){if(a.defaultPrevented||"mouse"===a.pointerType&&a.button>0)return;let b=v,c=G(a,b),d=new Map,e=!1;c.forEach(a=>{a.separator&&(e||(e=!0,a.separator.element.focus({preventScroll:!0})));let c=b.get(a.group);c&&d.set(a.group,c.layout)}),V({cursorFlags:0,hitRegions:c,initialLayoutMap:d,pointerDownAtPoint:{x:a.clientX,y:a.clientY},state:"active"}),c.length&&a.preventDefault()}let X=a=>a,Y=()=>{};function Z(){return void 0===c&&(c=!1),c}let $=new WeakMap;function _(a){if(null===a.defaultView||void 0===a.defaultView)return;let{prevStyle:b,styleSheet:c}=$.get(a)??{};void 0===c&&(c=new a.defaultView.CSSStyleSheet,a.adoptedStyleSheets&&a.adoptedStyleSheets.push(c));let d=T;switch(d.state){case"active":case"hover":{let a=function({cursorFlags:a,groups:b,state:c}){let d=0,e=0;switch(c){case"active":case"hover":b.forEach(a=>{if(!a.mutableState.disableCursor)switch(a.orientation){case"horizontal":d++;break;case"vertical":e++}})}if(0!==d||0!==e){if("active"===c&&a&&Z()){let b=(4&a)!=0,c=(8&a)!=0;if((1&a)!=0)return b?"se-resize":c?"ne-resize":"e-resize";if((2&a)!=0)return b?"sw-resize":c?"nw-resize":"w-resize";if(b)return"s-resize";if(c)return"n-resize"}return Z()?d>0&&e>0?"move":d>0?"ew-resize":"ns-resize":d>0&&e>0?"grab":d>0?"col-resize":"row-resize"}}({cursorFlags:d.cursorFlags,groups:d.hitRegions.map(a=>a.group),state:d.state}),e=`*, *:hover {cursor: ${a} !important; }`;if(b===e)return;b=e,a?0===c.cssRules.length?c.insertRule(e):c.replaceSync(e):1===c.cssRules.length&&c.deleteRule(0);break}case"inactive":b=void 0,1===c.cssRules.length&&c.deleteRule(0)}$.set(a,{prevStyle:b,styleSheet:c})}function aa({document:a,event:b,hitRegions:c,initialLayoutMap:d,mountedGroups:e,pointerDownAtPoint:f,prevCursorFlags:g}){var h;let i,j,k=0;c.forEach(a=>{let{group:c,groupSize:g}=a,{orientation:h,panels:i}=c,{disableCursor:j}=c.mutableState,l=0;l=f?"horizontal"===h?(b.clientX-f.x)/g*100:(b.clientY-f.y)/g*100:"horizontal"===h?b.clientX<0?-100:100:b.clientY<0?-100:100;let m=d.get(c),n=e.get(c);if(!m||!n)return;let{defaultLayoutDeferred:o,derivedPanelConstraints:p,groupSize:q,layout:r,separatorToPanels:s}=n;if(p&&r&&s){let b=K({delta:l,initialLayout:m,panelConstraints:p,pivotIndices:a.panels.map(a=>i.indexOf(a)),prevLayout:r,trigger:"mouse-or-touch"});if(L(b,r)){if(0!==l&&!j)switch(h){case"horizontal":k|=l<0?1:2;break;case"vertical":k|=l<0?4:8}}else A(a.group,{defaultLayoutDeferred:o,derivedPanelConstraints:p,groupSize:q,layout:b,separatorToPanels:s})}});let l=0;0===b.movementX?l|=3&g:l|=3&k,0===b.movementY?l|=12&g:l|=12&k,h=l,i=T,(j={...T}).cursorFlags=h,T=j,U.emit("change",{prev:i,next:j}),_(a)}function ab(a){let b=v,c=T;"active"===c.state&&aa({document:a.currentTarget,event:a,hitRegions:c.hitRegions,initialLayoutMap:c.initialLayoutMap,mountedGroups:b,prevCursorFlags:c.cursorFlags})}function ac(a){if(a.defaultPrevented)return;let b=T,c=v;if("active"===b.state){if(0===a.buttons){V({cursorFlags:0,state:"inactive"}),b.hitRegions.forEach(a=>{let b=y(a.group.id,!0);A(a.group,b)});return}for(let c of b.hitRegions)if(c.separator){let{element:b}=c.separator;b.hasPointerCapture?.(a.pointerId)||b.setPointerCapture?.(a.pointerId)}aa({document:a.currentTarget,event:a,hitRegions:b.hitRegions,initialLayoutMap:b.initialLayoutMap,mountedGroups:c,pointerDownAtPoint:b.pointerDownAtPoint,prevCursorFlags:b.cursorFlags})}else{let d=G(a,c);0===d.length?"inactive"!==b.state&&V({cursorFlags:0,state:"inactive"}):V({cursorFlags:0,hitRegions:d,state:"hover"}),_(a.currentTarget)}}function ad(a){a.relatedTarget instanceof HTMLIFrameElement&&"hover"===T.state&&V({cursorFlags:0,state:"inactive"})}function ae(a){if(a.defaultPrevented||"mouse"===a.pointerType&&a.button>0)return;let b=T;"active"===b.state&&(V({cursorFlags:0,state:"inactive"}),b.hitRegions.length>0&&(_(a.currentTarget),b.hitRegions.forEach(a=>{let b=y(a.group.id,!0);A(a.group,b)}),a.preventDefault()))}function af(a){let b=0,c=0,d={};for(let e of a)if(void 0!==e.defaultSize){b++;let a=k(e.defaultSize);c+=a,d[e.panelId]=a}else d[e.panelId]=void 0;let e=a.length-b;if(0!==e){let b=k((100-c)/e);for(let c of a)void 0===c.defaultSize&&(d[c.panelId]=b)}return d}let ag=new Map;function ah(a){let b=(0,e.useId)();return`${a??b}`}let ai=e.useEffect;function aj(a){let b=(0,e.useRef)(a);return ai(()=>{b.current=a},[a]),(0,e.useCallback)((...a)=>b.current?.(...a),[b])}function ak(...a){return aj(b=>{a.forEach(a=>{if(a)switch(typeof a){case"function":a(b);break;case"object":a.current=b}})})}function al(a){let b=(0,e.useRef)({...a});return ai(()=>{for(let c in a)b.current[c]=a[c]},[a]),b.current}let am=(0,e.createContext)(null);function an({children:a,className:b,defaultLayout:c,disableCursor:f,disabled:g,elementRef:h,groupRef:i,id:j,onLayoutChange:p,onLayoutChanged:q,orientation:r="horizontal",resizeTargetMinimumSize:s={coarse:20,fine:10},style:u,...w}){let B,C=(0,e.useRef)({onLayoutChange:{},onLayoutChanged:{}}),D=aj(a=>{L(C.current.onLayoutChange,a)||(C.current.onLayoutChange=a,p?.(a))}),E=aj(a=>{L(C.current.onLayoutChanged,a)||(C.current.onLayoutChanged=a,q?.(a))}),F=ah(j),G=(0,e.useRef)(null),[I,J]=function(){let[a,b]=(0,e.useState)({});return[a,(0,e.useCallback)(()=>b({}),[])]}(),K=(0,e.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:s,separators:[]}),N=ak(G,h);B=(0,e.useRef)({getLayout:()=>({}),setLayout:X}),(0,e.useImperativeHandle)(i,()=>B.current,[]),ai(()=>{Object.assign(B.current,Q({groupId:F}))});let P=aj((a,b)=>{let d=T,e=x(a),f=y(a);if(f){let a=!1;return"active"===d.state&&(a=d.hitRegions.some(a=>a.group===e)),{flexGrow:f.layout[b]??1,pointerEvents:a?"none":void 0}}if(c?.[b])return{flexGrow:c?.[b]}}),R=al({defaultLayout:c,disableCursor:f}),U=(0,e.useMemo)(()=>({get disableCursor(){return!!R.disableCursor},getPanelStyles:P,id:F,orientation:r,registerPanel:a=>{let b=K.current;return b.panels=o(r,[...b.panels,a]),J(),()=>{b.panels=b.panels.filter(b=>b!==a),J()}},registerSeparator:a=>{let b=K.current;return b.separators=o(r,[...b.separators,a]),J(),()=>{b.separators=b.separators.filter(b=>b!==a),J()}},updatePanelProps:(a,{disabled:b})=>{let c=K.current.panels.find(b=>b.id===a);c&&(c.panelConstraints.disabled=b);let d=x(F),e=y(F);d&&e&&A(d,{...e,derivedPanelConstraints:m(d)})},updateSeparatorProps:(a,{disabled:b,disableDoubleClick:c})=>{let d=K.current.separators.find(b=>b.id===a);d&&(d.disabled=b,d.disableDoubleClick=c)}}),[P,F,J,r,R]),V=(0,e.useRef)(null);return ai(()=>{let a,b,c,d,e,f,h,i,j,o,p,q,s,u=G.current;if(null===u)return;let w=K.current;if(void 0!==R.defaultLayout&&Object.keys(R.defaultLayout).length===w.panels.length)for(let b of(a={},w.panels)){let c=R.defaultLayout[b.id];void 0!==c&&(a[b.id]=c)}let x={disabled:!!g,element:u,id:F,mutableState:{defaultLayout:a,disableCursor:!!R.disableCursor,expandedPanelSizes:K.current.lastExpandedPanelSizes,layouts:K.current.layouts},orientation:r,panels:w.panels,resizeTargetMinimumSize:w.resizeTargetMinimumSize,separators:w.separators};V.current=x;let B=(b=!0,n(x.element.ownerDocument.defaultView,"Cannot register an unmounted Group"),c=x.element.ownerDocument.defaultView.ResizeObserver,d=new Set,e=new Set,(f=new c(a=>{for(let c of a){let{borderBoxSize:a,target:d}=c;if(d===x.element){if(b){let a=l({group:x});if(0===a)return;let b=y(x.id);if(!b)return;let c=m(x),d=b.defaultLayoutDeferred?af(c):b.layout,e=M({layout:function({group:a,nextGroupSize:b,prevGroupSize:c,prevLayout:d}){if(c<=0||b<=0||c===b)return d;let e=0,f=0,g=!1,h=new Map,i=[];for(let j of a.panels){let a=d[j.id]??0;if("preserve-pixel-size"===j.panelConstraints.groupResizeBehavior){g=!0;let d=k(a/100*c/b*100);h.set(j.id,d),e+=d}else i.push(j.id),f+=a}if(!g||0===i.length)return d;let j=100-e,l={...d};if(h.forEach((a,b)=>{l[b]=a}),f>0)for(let a of i){let b=d[a]??0;l[a]=k(b/f*j)}else{let a=k(j/i.length);for(let b of i)l[b]=a}return l}({group:x,nextGroupSize:a,prevGroupSize:b.groupSize,prevLayout:d}),panelConstraints:c});if(!b.defaultLayoutDeferred&&L(b.layout,e)&&function(a,b){if(Object.keys(a).length!==Object.keys(b).length)return!1;for(let c in a)if(a[c]!==b[c])return!1;return!0}(b.derivedPanelConstraints,c)&&b.groupSize===a)return;A(x,{defaultLayoutDeferred:!1,derivedPanelConstraints:c,groupSize:a,layout:e,separatorToPanels:b.separatorToPanels})}}else!function(a,b,c){if(!c[0])return;let d=a.panels.find(a=>a.element===b);if(!d||!d.onResize)return;let e=l({group:a}),f="horizontal"===a.orientation?d.element.offsetWidth:d.element.offsetHeight,g=d.mutableValues.prevSize,h={asPercentage:k(f/e*100),inPixels:f};d.mutableValues.prevSize=h,d.onResize(h,d.id,g)}(x,d,a)}})).observe(x.element),x.panels.forEach(a=>{n(!d.has(a.id),`Panel ids must be unique; id "${a.id}" was used more than once`),d.add(a.id),a.onResize&&f.observe(a.element)}),h=l({group:x}),i=m(x),j=x.panels.map(({id:a})=>a).join(","),(o=x.mutableState.defaultLayout)&&(function(a,b){let c=a.map(a=>a.id),d=Object.keys(b);if(c.length!==d.length)return!1;for(let a of c)if(!d.includes(a))return!1;return!0}(x.panels,o)||(o=void 0)),p=M({layout:x.mutableState.layouts[j]??o??af(i),panelConstraints:i}),q=x.element.ownerDocument,ag.set(q,(ag.get(q)??0)+1),s=new Map,t(x).forEach(a=>{a.separator&&s.set(a.separator,a.panels)}),A(x,{defaultLayoutDeferred:0===h,derivedPanelConstraints:i,groupSize:h,layout:p,separatorToPanels:s}),x.separators.forEach(a=>{n(!e.has(a.id),`Separator ids must be unique; id "${a.id}" was used more than once`),e.add(a.id),a.element.addEventListener("keydown",S)}),1===ag.get(q)&&(q.addEventListener("dblclick",O,!0),q.addEventListener("pointerdown",W,!0),q.addEventListener("pointerleave",ab),q.addEventListener("pointermove",ac),q.addEventListener("pointerout",ad),q.addEventListener("pointerup",ae,!0)),function(){b=!1,ag.set(q,Math.max(0,(ag.get(q)??0)-1)),(v=new Map(v)).delete(x),x.separators.forEach(a=>{a.element.removeEventListener("keydown",S)}),ag.get(q)||(q.removeEventListener("dblclick",O,!0),q.removeEventListener("pointerdown",W,!0),q.removeEventListener("pointerleave",ab),q.removeEventListener("pointermove",ac),q.removeEventListener("pointerout",ad),q.removeEventListener("pointerup",ae,!0)),f.disconnect()}),{defaultLayoutDeferred:C,derivedPanelConstraints:I,layout:J}=y(x.id,!0);!C&&I.length>0&&(D(J),E(J));let N=z(F,a=>{let{defaultLayoutDeferred:b,derivedPanelConstraints:c,layout:d}=a.next;if(b||0===c.length)return;let e=x.panels.map(({id:a})=>a).join(",");x.mutableState.layouts[e]=d,c.forEach(b=>{if(b.collapsible){let{layout:c}=a.prev??{};if(c){let a=H(b.collapsedSize,d[b.panelId]),e=H(b.collapsedSize,c[b.panelId]);a&&!e&&(x.mutableState.expandedPanelSizes[b.panelId]=c[b.panelId])}}});let f="active"!==T.state;D(d),f&&E(d)});return()=>{V.current=null,B(),N()}},[g,F,E,D,r,I,R]),(0,e.useEffect)(()=>{let a=V.current;a&&(a.mutableState.defaultLayout=c,a.mutableState.disableCursor=!!f)}),(0,d.jsx)(am.Provider,{value:U,children:(0,d.jsx)("div",{...w,className:b,"data-group":!0,"data-testid":F,id:F,ref:N,style:{height:"100%",width:"100%",overflow:"hidden",...u,display:"flex",flexDirection:"horizontal"===r?"row":"column",flexWrap:"nowrap",touchAction:"horizontal"===r?"pan-y":"pan-x"},children:a})})}function ao(){let a=(0,e.useContext)(am);return n(a,"Group Context not found; did you render a Panel or Separator outside of a Group?"),a}function ap({children:a,className:b,collapsedSize:c="0%",collapsible:f=!1,defaultSize:g,disabled:h,elementRef:i,groupResizeBehavior:j="preserve-relative-size",id:k,maxSize:l="100%",minSize:m="0%",onResize:n,panelRef:o,style:p,...q}){let r,s=!!k,t=ah(k),u=al({disabled:h}),v=(0,e.useRef)(null),w=ak(v,i),{getPanelStyles:x,id:y,orientation:A,registerPanel:B,updatePanelProps:C}=ao(),D=null!==n,E=aj((a,b,c)=>{n?.(a,k,c)});ai(()=>{let a=v.current;if(null!==a)return B({element:a,id:t,idIsStable:s,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:D?E:void 0,panelConstraints:{groupResizeBehavior:j,collapsedSize:c,collapsible:f,defaultSize:g,disabled:u.disabled,maxSize:l,minSize:m}})},[j,c,f,g,D,t,s,l,m,E,B,u]),(0,e.useEffect)(()=>{C(t,{disabled:h})},[h,t,C]),function(a,b){let{id:c}=ao(),d=(0,e.useRef)({collapse:Y,expand:Y,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:Y});(0,e.useImperativeHandle)(b,()=>d.current,[]),ai(()=>{Object.assign(d.current,N({groupId:c,panelId:a}))})}(t,o);let F=()=>{let a=x(y,t);if(a)return JSON.stringify(a)},G=(0,e.useSyncExternalStore)(a=>z(y,a),F,F);return r=G?JSON.parse(G):g?{flexGrow:void 0,flexShrink:void 0,flexBasis:g}:{flexGrow:1},(0,d.jsx)("div",{...q,"data-disabled":h||void 0,"data-panel":!0,"data-testid":t,id:t,ref:w,style:{...aq,display:"flex",flexBasis:0,flexShrink:1,overflow:"visible",...r},children:(0,d.jsx)("div",{className:b,style:{maxHeight:"100%",maxWidth:"100%",flexGrow:1,overflow:"auto",...p,touchAction:"horizontal"===A?"pan-y":"pan-x"},children:a})})}an.displayName="Group",ap.displayName="Panel";let aq={minHeight:0,maxHeight:"100%",height:"auto",minWidth:0,maxWidth:"100%",width:"auto",border:"none",borderWidth:0,padding:0,margin:0};function ar({children:a,className:b,disabled:c,disableDoubleClick:f,elementRef:g,id:h,style:i,...j}){let k,l,m=ah(h),n=al({disabled:c,disableDoubleClick:f}),[o,p]=(0,e.useState)({}),[q,r]=(0,e.useState)("inactive"),[s,t]=(0,e.useState)(!1),u=(0,e.useRef)(null),v=ak(u,g),{disableCursor:w,id:x,orientation:y,registerSeparator:A,updateSeparatorProps:B}=ao();return ai(()=>{let a=u.current;if(null!==a){var b;let c={disabled:n.disabled,disableDoubleClick:n.disableDoubleClick,element:a,id:m},d=A(c),e=(b=a=>{r("inactive"!==a.next.state&&a.next.hitRegions.some(a=>a.separator===c)?a.next.state:"inactive")},U.addListener("change",b)),f=z(x,a=>{let{derivedPanelConstraints:b,layout:d,separatorToPanels:e}=a.next,f=e.get(c);if(f){let a=f[0],c=f.indexOf(a);p(function({layout:a,panelConstraints:b,panelId:c,panelIndex:d}){let e,f,g=a[c],h=b.find(a=>a.panelId===c);if(h){let i=h.maxSize,j=h.collapsible?h.collapsedSize:h.minSize,k=[d,d+1];f=M({layout:K({delta:j-g,initialLayout:a,panelConstraints:b,pivotIndices:k,prevLayout:a}),panelConstraints:b})[c],e=M({layout:K({delta:i-g,initialLayout:a,panelConstraints:b,pivotIndices:k,prevLayout:a}),panelConstraints:b})[c]}return{valueControls:c,valueMax:e,valueMin:f,valueNow:g}}({layout:d,panelConstraints:b,panelId:a.id,panelIndex:c}))}});return()=>{e(),f(),d()}}},[x,m,A,n]),(0,e.useEffect)(()=>{B(m,{disabled:c,disableDoubleClick:f})},[c,f,m,B]),c&&!w&&(k="not-allowed"),l=c?"disabled":"active"===q?"active":s?"focus":q,(0,d.jsx)("div",{...j,"aria-controls":o.valueControls,"aria-disabled":c||void 0,"aria-orientation":"horizontal"===y?"vertical":"horizontal","aria-valuemax":o.valueMax,"aria-valuemin":o.valueMin,"aria-valuenow":o.valueNow,children:a,className:b,"data-separator":l,"data-testid":m,id:m,onBlur:()=>t(!1),onFocus:()=>t(!0),ref:v,role:"separator",style:{flexBasis:"auto",cursor:k,...i,flexGrow:0,flexShrink:0,touchAction:"none"},tabIndex:c?void 0:0})}ar.displayName="Separator";var as=a.i(581228),at=a.i(510414),au=a.i(396465),av=a.i(799856),aw=a.i(626605),ax=a.i(144784),ay=a.i(912251),az=a.i(380132),aA=a.i(760644),aB=a.i(259982);let aC=a=>a?.activePaneId?(0,ax.collectPanes)(a.root).find(b=>b.id===a.activePaneId)??null:null;var aD=a.i(199462),aE=a.i(552591),aF=a.i(456195),aG=a.i(997594),aH=a.i(484951),aH=aH,aI=a.i(768975),aJ=a.i(514385),aK=a.i(693567),aL=a.i(678240),aM=a.i(115523),aN=a.i(873594),aO=a.i(521440);let aP={fontFamily:"MesloLGLDZ, monospace"},aQ=({sendStdin:a,ctrlActive:b,shiftActive:c,setCtrlActive:e,setShiftActive:f})=>(0,d.jsx)("div",{className:"flex shrink-0 items-center gap-1 overflow-x-auto border-t border-border bg-background px-3 py-2",style:{scrollbarWidth:"none",WebkitOverflowScrolling:"touch"},children:aO.TERMINAL_KEYS.map(g=>(0,d.jsx)("button",{onPointerDown:a=>a.preventDefault(),onClick:()=>{g.value===aO.CTRL_TOGGLE?e(!b):g.value===aO.SHIFT_TOGGLE?f(!c):(a(g.value),b&&e(!1),c&&f(!1))},className:(0,av.cn)("shrink-0 rounded-md border px-2.5 py-1 text-xs font-medium transition-colors",g.value===aO.CTRL_TOGGLE&&b||g.value===aO.SHIFT_TOGGLE&&c?"border-claude-active bg-claude-active/20 text-claude-active":"border-border bg-muted/50 text-muted-foreground active:bg-muted"),children:(0,d.jsx)("span",{className:(0,av.cn)("inline-block",g.rotate&&"rotate-90"),style:g.nerd?aP:void 0,children:g.label})},g.label))});var aR=a.i(484682),aS=a.i(864232),aT=a.i(478163),aU=a.i(59443),aV=a.i(356474),aW=a.i(671015),aX=a.i(850120),aY=a.i(747868),aZ=a.i(576949),a$=a.i(291677),a_=a.i(505947),a0=a.i(443821),a1=a.i(795541),a2=a.i(164405),a3=a.i(166528),a4=a.i(417533),a5=a.i(340001),a6=a.i(378836),a7=a.i(838997),a8=a.i(619923),a9=a.i(47691),ba=a.i(106816);let bb=()=>(0,d.jsx)("div",{className:"shrink-0 border-b",children:(0,d.jsx)("div",{className:"flex items-center px-4 py-1.5",children:(0,d.jsxs)("div",{className:"flex h-5 items-center gap-3",children:[(0,d.jsx)(a5.Skeleton,{className:"h-3 w-40"}),(0,d.jsx)(a5.Skeleton,{className:"h-3 w-20"})]})})}),bc=({meta:a,sessionName:b,sessionId:c,jsonlPath:f})=>{let[g,h]=(0,e.useState)(!1),i=(0,e.useCallback)(()=>h(a=>!a),[]),j=(0,e.useCallback)(()=>h(!1),[]),k=(0,ba.default)(f,g),{branch:l,isLoading:m}=(0,a7.default)(b),{status:n}=(0,a8.default)(b,g),o=(0,a9.default)(b,g),p=(0,e.useRef)(null),[,q]=(0,e.useState)(0);return(0,e.useEffect)(()=>{let a=setInterval(()=>q(a=>a+1),6e4);return()=>clearInterval(a)},[]),(0,e.useEffect)(()=>{if(!g)return;let a=a=>{p.current&&!p.current.contains(a.target)&&j()},b=a=>{"Escape"===a.key&&j()};return document.addEventListener("mousedown",a),document.addEventListener("keydown",b),()=>{document.removeEventListener("mousedown",a),document.removeEventListener("keydown",b)}},[g,j]),(0,d.jsxs)("div",{ref:p,className:"relative shrink-0 border-b",children:[(0,d.jsxs)("div",{className:"flex cursor-pointer items-center justify-between px-4 py-1.5 hover:bg-muted/30",role:"button",tabIndex:0,onClick:i,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),i())},children:[(0,d.jsx)(a6.MetaCompact,{title:a.title,totalCost:a.totalCost,branch:l,usedPercentage:a.usedPercentage,currentContextTokens:a.currentContextTokens,contextWindowSize:a.contextWindowSize}),(0,d.jsx)(aG.ChevronDown,{size:14,className:(0,av.cn)("shrink-0 text-muted-foreground transition-transform duration-150",g&&"rotate-180")})]}),(0,d.jsx)("div",{className:(0,av.cn)("absolute inset-x-0 top-full z-10 origin-top border-b bg-background shadow-sm transition-all duration-150 ease-out",g?"scale-y-100 opacity-100":"pointer-events-none scale-y-95 opacity-0"),children:(0,d.jsx)("div",{className:"px-4 py-3",children:(0,d.jsx)(a6.MetaDetail,{title:a.title,sessionId:c,createdAt:a.createdAt,updatedAt:a.updatedAt,fileSize:a.fileSize,userCount:k?.userCount??a.userCount,assistantCount:k?.assistantCount??a.assistantCount,toolCount:k?.toolCount??null,toolBreakdown:k?.toolBreakdown??null,inputTokens:a.inputTokens,cachedInputTokens:a.cachedInputTokens,outputTokens:a.outputTokens,reasoningOutputTokens:a.reasoningOutputTokens,totalCost:a.totalCost,currentContextTokens:a.currentContextTokens,contextWindowSize:a.contextWindowSize,usedPercentage:a.usedPercentage,model:a.model,branch:l,isBranchLoading:m,gitStatus:n,tmuxInfo:o})})})]})},bd=({tabId:a,sessionName:b,claudeSessionId:c,cwd:g,className:h,onClose:i,onNewSession:j,scrollToBottomRef:k,addPendingMessageRef:l,removePendingMessageRef:m,trustPrompt:n,onTrustResponse:o})=>{let p=(0,f.useTranslations)("terminal"),[q,r]=(0,e.useState)(null),s=(0,aA.default)(b=>b.tabs[a]?.agentProcess??null),t=(0,aA.default)(b=>b.tabs[a]?.agentInstalled??!0),u=(0,aA.default)(b=>b.tabs[a]?.cliState??"inactive"),v=(0,aA.default)(b=>b.tabs[a]?.compactingSince??null),w=(0,aA.default)(b=>(0,aA.selectSessionView)(b.tabs,a)),x=(0,aA.default)(b=>b.tabs[a]?.sessionMetaCache??null),y=(0,aA.default)(b=>b.tabs[a]?.agentSummary??null),z=(0,aA.default)(b=>b.tabs[a]?.lastUserMessage??null),A=(0,e.useCallback)(()=>{r(null)},[]),B=(0,e.useCallback)(a=>{r(null),at.toast.warning(p("resumeBlocked"),{description:a.processName?p("resumeBlockedProcess",{name:a.processName}):void 0})},[p]),C=(0,e.useCallback)(()=>{r(null),at.toast.error(p("resumeFailed"))},[p]),{entries:D,tasks:E,sessionId:F,jsonlPath:G,sessionSummary:H,initMeta:I,sessionStats:J,agentProcess:K,wsStatus:L,isLoading:M,error:N,loadMore:O,hasMore:P,retrySession:Q,sendResume:R,addPendingUserMessage:S,removePendingUserMessage:T}=(0,aW.default)({sessionName:b,claudeSessionId:c,enabled:!!b,resumeCallbacks:{onResumeStarted:A,onResumeBlocked:B,onResumeError:C},onSync:b=>{let c=Date.now();null!==b.agentProcess&&aA.default.getState().setAgentProcess(a,b.agentProcess,c),b.agentInstalled||aA.default.getState().setAgentInstalled(a,!1),aA.default.getState().setTimelineLoading(a,b.isLoading)},getCliState:()=>aA.default.getState().tabs[a]?.cliState}),{sessions:U,hasMore:V,isLoading:W,isLoadingMore:X,error:Y,refetch:Z,loadMore:$}=(0,aX.default)({tmuxSession:b,enabled:!!b&&!0!==s,cwd:g});(0,e.useEffect)(()=>(l&&(l.current=S),m&&(m.current=T),()=>{l&&(l.current=void 0),m&&(m.current=void 0)}),[l,m,S,T]);let _=(0,e.useRef)(s);(0,e.useEffect)(()=>{let a=_.current;_.current=s,!0!==a&&!0===s&&!0!==K&&Q()},[s,K,Q]),(0,e.useEffect)(()=>{if("unknown"!==u)return;let b=new AbortController;return fetch("/api/tmux/recover-unknown",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:a}),signal:b.signal}).catch(()=>{}),()=>b.abort()},[a,u]);let aa=(0,aY.default)("check"===w,b),ab=null===s||0===D.length&&M,ac=(0,aZ.useSessionMetaCompute)(D,H,I,J,y,z);(0,e.useEffect)(()=>{ab||aA.default.getState().setSessionMetaCache(a,{meta:ac,sessionId:F,jsonlPath:G})},[ab,ac,F,G,a]);let ad=(0,e.useCallback)(a=>{q||(r(a),R(a,b))},[q,R,b]);if(!t)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center gap-3 text-muted-foreground",h),children:[(0,d.jsx)("span",{className:"text-sm font-medium",children:p("installClaude")}),(0,d.jsx)("span",{className:"text-xs",children:p("installClaudeHint")})]});if(n&&o)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",h),children:[(0,d.jsx)(a2.default,{folderPath:n.folderPath,agent:n.agent,onRespond:o}),(0,d.jsx)("button",{className:"mt-3 text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:i,children:p("checkTerminal")})]});if("check"===w)return aa?(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",h),children:aa.isBypassPrompt&&aa.options.length>0?(0,d.jsx)(a1.default,{sessionName:b,options:aa.options,fallback:(0,d.jsx)("button",{className:"text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:i,children:p("checkTerminal")})}):(0,d.jsx)("button",{className:"mt-3 text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:i,children:p("checkTerminal")})}):(0,d.jsx)(a0.default,{icon:(0,d.jsx)(a4.default,{className:"h-8 w-8 text-foreground motion-safe:animate-spin motion-reduce:opacity-70 [animation-duration:1.5s]"}),main:c||F?p("claudeBootResuming"):p("claudeBootMain"),almostReady:p("claudeBootAlmostReady"),subtitle:p("claudeBootSubtitle"),className:(0,av.cn)("animate-delayed-fade-in",h)});if("session-list"===w)return null===s||W&&0===U.length?(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",h),children:(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"})}):0!==U.length||Y?(0,d.jsx)("div",{className:(0,av.cn)("h-full w-full",h),children:(0,d.jsx)(a$.default,{sessions:U,isLoading:W,isLoadingMore:X,hasMore:V,error:Y,resumingSessionId:q,onSelectSession:ad,onRefresh:Z,onLoadMore:$,onNewSession:j})}):(0,d.jsx)("div",{className:(0,av.cn)("h-full w-full",h),children:(0,d.jsx)(a_.default,{onClose:i,onNewSession:j})});let ae=ab?x:{meta:ac,sessionId:F,jsonlPath:G};return(0,d.jsxs)("div",{className:(0,av.cn)("flex min-h-0 w-full flex-1 flex-col",h),children:[ae?(0,d.jsx)(bc,{meta:ae.meta,sessionName:b,sessionId:ae.sessionId,jsonlPath:ae.jsonlPath}):(0,d.jsx)(bb,{}),(0,d.jsx)("div",{className:"min-h-0 flex-1",children:(0,d.jsx)(a3.default,{entries:D,tasks:E,sessionId:F,sessionName:b,tabId:a,initMeta:I,sessionStats:J,cliState:u,compactingSince:v,wsStatus:L,isLoading:M,error:N,onRetry:Q,onLoadMore:O,hasMore:P,scrollToBottomRef:k})})]})};var be=a.i(430409),bf=a.i(555416),bg=a.i(155116),bh=a.i(7137),bi=a.i(80723);let bj=({tabId:a,sessionName:b,cwd:c,className:g,onClose:h,onNewSession:j,onRestart:k,updatePrompt:l,onUpdatePromptResponse:m,trustPrompt:n,onTrustResponse:o,scrollToBottomRef:p,addPendingMessageRef:q,removePendingMessageRef:r})=>{let s=(0,f.useTranslations)("terminal"),[t,u]=(0,e.useState)(null),v=(0,aA.default)(b=>b.tabs[a]?.agentProcess??null),w=(0,aA.default)(b=>b.tabs[a]?.agentInstalled??!0),x=(0,aA.default)(b=>b.tabs[a]?.cliState??"inactive"),y=(0,aA.default)(b=>b.tabs[a]?.compactingSince??null),z=(0,aA.default)(b=>(0,aA.selectSessionView)(b.tabs,a)),A=(0,aA.default)(b=>b.tabs[a]?.agentSessionId??null),B=(0,aA.default)(b=>b.tabs[a]?.sessionMetaCache??null),C=(0,aA.default)(b=>b.tabs[a]?.agentSummary??null),D=(0,aA.default)(b=>b.tabs[a]?.lastUserMessage??null),E=(0,e.useCallback)(()=>{j?.()},[j]),F=(0,e.useCallback)(()=>{u(null)},[]),G=(0,e.useCallback)(a=>{u(null),at.toast.warning(s("resumeBlocked"),{description:a.processName?s("resumeBlockedProcess",{name:a.processName}):void 0})},[s]),H=(0,e.useCallback)(()=>{u(null),at.toast.error(s("codexResumeFailed"))},[s]),{entries:I,tasks:J,sessionId:K,jsonlPath:L,sessionSummary:M,initMeta:N,sessionStats:O,agentProcess:P,wsStatus:Q,isLoading:R,error:S,loadMore:T,hasMore:U,retrySession:V,sendResume:W,addPendingUserMessage:X,removePendingUserMessage:Y}=(0,aW.default)({sessionName:b,agentSessionId:A,panelType:"codex-cli",enabled:!!b,resumeCallbacks:{onResumeStarted:F,onResumeBlocked:G,onResumeError:H},onSync:b=>{let c=Date.now();null!==b.agentProcess&&aA.default.getState().setAgentProcess(a,b.agentProcess,c),b.agentInstalled||aA.default.getState().setAgentInstalled(a,!1),aA.default.getState().setTimelineLoading(a,b.isLoading)},getCliState:()=>aA.default.getState().tabs[a]?.cliState}),{sessions:Z,isLoading:$,error:_,refresh:aa}=(0,bf.useCodexSessions)(c,!!c&&"session-list"===z&&!0!==v);(0,e.useEffect)(()=>(q&&(q.current=X),r&&(r.current=Y),()=>{q&&(q.current=void 0),r&&(r.current=void 0)}),[q,r,X,Y]);let ab=(0,e.useRef)(v);(0,e.useEffect)(()=>{let a=ab.current;ab.current=v,!0!==a&&!0===v&&!0!==P&&V()},[v,P,V]),(0,e.useEffect)(()=>{if("unknown"!==x)return;let b=new AbortController;return fetch("/api/tmux/recover-unknown",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:a}),signal:b.signal}).catch(()=>{}),()=>b.abort()},[a,x]),(0,e.useEffect)(()=>{if("check"!==z)return;if("inactive"!==x&&"unknown"!==x&&"cancelled"!==x)return void aA.default.getState().setSessionView(a,"timeline");if(!0===v||!0===P)return void aA.default.getState().setAgentProcess(a,!0,Date.now());let c=!1,d=async()=>{try{let d=await fetch(`/api/check-agent?session=${b}`);if(!d.ok)return;let e=await d.json();if(c||!0!==e.running||"codex-cli"!==e.providerPanelType)return;aA.default.getState().setAgentProcess(a,!0,"number"==typeof e.checkedAt?e.checkedAt:Date.now())}catch{}};d();let e=window.setInterval(d,800);return()=>{c=!0,window.clearInterval(e)}},[v,P,x,b,a,z]);let ac=null===v||0===I.length&&R,ad=(0,aZ.useSessionMetaCompute)(I,M,N,O,C,D);(0,e.useEffect)(()=>{ac||aA.default.getState().setSessionMetaCache(a,{meta:ad,sessionId:K,jsonlPath:L})},[ac,ad,K,L,a]);let ae=(0,e.useCallback)(a=>{t||(u(a.sessionId),W(a.sessionId,b))},[t,W,b]);if(!w)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center gap-3 px-6 text-center text-muted-foreground",g),role:"status",children:[(0,d.jsx)(be.default,{size:32,className:"text-muted-foreground/60"}),(0,d.jsx)("span",{className:"text-sm font-medium text-foreground",children:s("codexNotInstalled")})]});if(l&&m)return(0,d.jsx)("div",{className:(0,av.cn)("animate-delayed-fade-in flex h-full w-full flex-col items-center justify-center gap-3 px-6",g),children:(0,d.jsx)(bh.default,{prompt:l,onRespond:m})});if(n&&o)return(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",g),children:(0,d.jsx)(a2.default,{folderPath:n.folderPath,agent:n.agent,onRespond:o})});if("check"===z)return(0,d.jsx)("div",{className:(0,av.cn)("animate-delayed-fade-in flex h-full w-full flex-col items-center justify-center gap-3 px-6",g),children:(0,d.jsx)(bg.default,{onRestart:k})});if("session-list"===z)return null!==v&&c?(0,d.jsx)("div",{className:(0,av.cn)("h-full w-full",g),children:(0,d.jsx)(bi.default,{sessions:Z,isLoading:$,error:_?s("codexSessionsLoadFailed"):null,resumingSessionId:t,onSelectSession:ae,onRefresh:aa,onNewSession:j})}):(0,d.jsx)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",g),children:(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"})});if("inactive"===x&&!1===v&&!A&&!R)return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center",g),role:"status",children:[(0,d.jsx)(be.default,{size:32,className:"text-muted-foreground/60"}),(0,d.jsx)("p",{className:"text-sm font-medium text-foreground",children:s("codexInactiveMessage")}),j&&(0,d.jsxs)(au.Button,{size:"sm",onClick:E,children:[(0,d.jsx)(i.Plus,{className:"size-3.5"}),s("codexStartSession")]})]});let af=ac?B:{meta:ad,sessionId:K,jsonlPath:L};return(0,d.jsxs)("div",{className:(0,av.cn)("flex min-h-0 w-full flex-1 flex-col",g),children:[af?(0,d.jsx)(bc,{meta:af.meta,sessionName:b,sessionId:af.sessionId,jsonlPath:af.jsonlPath}):(0,d.jsx)(bb,{}),(0,d.jsx)("div",{className:"min-h-0 flex-1",children:(0,d.jsx)(a3.default,{entries:I,tasks:J,sessionId:K,sessionName:b,tabId:a,initMeta:N,sessionStats:O,cliState:x,compactingSince:y,wsStatus:Q,isLoading:R,error:S,onRetry:V,onLoadMore:T,hasMore:U,scrollToBottomRef:p})})]})};var bk=a.i(265725),bl=a.i(219379),bm=a.i(741798),bn=a.i(660558),bo=a.i(665315),bp=a.i(775495),bq=a.i(949259);let br=({cwd:a,lastCommand:b,onRestartWithCommand:c,onRestartNew:e})=>{let g=(0,f.useTranslations)("terminal");return(0,d.jsxs)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:[(0,d.jsx)(bq.WifiOff,{className:"h-5 w-5 text-muted-foreground"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:g("disconnectedSessionNotFound")}),(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[a&&(0,d.jsx)("span",{className:"max-w-72 truncate text-xs text-muted-foreground/60",children:a.replace(/^\/Users\/[^/]+/,"~")}),b&&(0,d.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,d.jsx)("code",{className:"max-w-64 truncate rounded bg-muted px-2 py-1 text-xs",children:b}),(0,d.jsx)(au.Button,{variant:"outline",size:"sm",onClick:()=>c(b),children:g("restartWithCommand")})]}),b&&(0,d.jsxs)("div",{className:"flex w-40 items-center gap-2 text-muted-foreground/40",children:[(0,d.jsx)("div",{className:"h-px flex-1 bg-current"}),(0,d.jsx)("span",{className:"text-[11px]",children:g("or")}),(0,d.jsx)("div",{className:"h-px flex-1 bg-current"})]}),(0,d.jsx)(au.Button,{variant:"outline",size:"sm",onClick:e,children:g("restartNewTerminal")})]})]})};var bs=a.i(630560),bt=a.i(146014);let bu=({hint:a,onSubmit:b,onDismiss:c})=>{let g=(0,f.useTranslations)("terminal"),h=(0,f.useTranslations)("common"),i=(0,e.useRef)(null);return(0,e.useEffect)(()=>{i.current?.focus()},[]),(0,d.jsxs)("div",{className:"absolute bottom-3 left-3 right-3 z-30 rounded-lg border border-border bg-card shadow-lg animate-[fadeIn_150ms_ease-out]",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 px-3 pt-2.5",children:[(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:g("dragDropNotSupported")}),(0,d.jsx)("button",{className:"ml-auto flex h-5 w-5 shrink-0 items-center justify-center rounded text-muted-foreground hover:text-foreground",onClick:c,"aria-label":h("close"),children:(0,d.jsx)(bt.X,{className:"h-3.5 w-3.5"})})]}),(0,d.jsx)("div",{className:"px-3 pt-1 pb-2.5",children:(0,d.jsxs)("div",{className:"flex items-center gap-2 rounded border border-border bg-background px-2 py-1.5",children:[(0,d.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground/60",children:a}),(0,d.jsx)("input",{ref:i,className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground/40",placeholder:g("fullPathPlaceholder"),onKeyDown:a=>{"Enter"===a.key?b(a.currentTarget.value):"Escape"===a.key&&c()}})]})})]})};var bv=a.i(354447),bw=a.i(19267),bx=a.i(545375),by=a.i(721043),bz=a.i(165402);let bA=a=>a.replace(/[ \t\\'"(){}[\]!#$&;`|*?<>~^%]/g,"\\$&");var bB=a.i(734163);let bC=(0,a.i(305162).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var bD=a.i(648779),bE=a.i(767810),bF=a.i(561049),bG=a.i(69400),bH=a.i(897651),bI=a.i(231473),bJ=a.i(448557),bK=a.i(203725);let bL=({tab:a,isActive:b,isDragging:c,dropSide:g,displayTitle:h,currentProcess:i,modeSwitcher:j,onSwitch:k,onDelete:l,onRename:m,onFocusPane:n,onDragStart:o,onDragEnd:p,onDragOver:q,onDragLeave:r})=>{let s=(0,f.useTranslations)("terminal"),[t,u]=(0,e.useState)(!1),[v,w]=(0,e.useState)(""),x=(0,e.useRef)(null);(0,e.useEffect)(()=>{t&&requestAnimationFrame(()=>x.current?.select())},[t]);let y=()=>{let b=v.trim();u(!1),b!==a.name&&m(b)},z="agent-sessions"===a.panelType?s("sessionList"):"",A=a.name||z||h||"";return(0,d.jsxs)("div",{"data-tab-id":a.id,role:"tab","aria-selected":b,tabIndex:b?0:-1,className:(0,av.cn)("group relative flex min-w-[104px] max-w-[170px] cursor-pointer items-center gap-1 border-b-2 px-2 text-xs select-none",b&&j&&"min-w-[136px] max-w-[210px] pr-1",b?"border-b-accent-color bg-secondary text-foreground":"border-b-transparent text-muted-foreground hover:bg-accent hover:text-foreground",c&&"opacity-30"),onClick:()=>{t||b||k(),n()},onDoubleClick:()=>{u(!0),w(a.name)},draggable:!t,onDragStart:o,onDragEnd:p,onDragOver:q,onDragLeave:r,children:["left"===g&&(0,d.jsx)("div",{className:"absolute top-1 bottom-1 left-0 w-0.5 bg-ui-blue"}),t?(0,d.jsx)("input",{ref:x,className:"w-full min-w-0 border-b border-accent-color bg-transparent text-xs text-foreground outline-none",value:v,onChange:a=>w(a.target.value),onKeyDown:a=>{"Enter"===a.key&&y(),"Escape"===a.key&&u(!1)},onBlur:y,onClick:a=>a.stopPropagation()}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(bK.default,{tabId:a.id,panelType:a.panelType}),"claude-code"===a.panelType?(0,d.jsx)(bI.default,{className:"mx-0.5 h-3 w-3 shrink-0"}):"codex-cli"===a.panelType?(0,d.jsx)(be.default,{className:"mx-0.5 h-3 w-3 shrink-0 text-foreground","aria-label":"Codex"}):"web-browser"===a.panelType?(0,d.jsx)(bF.Globe,{className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}):"diff"===a.panelType?(0,d.jsx)(bG.GitCompareArrows,{className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}):"agent-sessions"===a.panelType?(0,d.jsx)(bH.History,{className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}):(0,d.jsx)(bJ.default,{process:i??h,className:"mx-0.5 h-3 w-3 shrink-0 text-muted-foreground"}),(0,d.jsx)("span",{className:(0,av.cn)("mr-1 min-w-0 truncate",A?"opacity-100":"opacity-0"),children:A}),b&&j]}),(0,d.jsx)("button",{className:(0,av.cn)("-mr-0.5 flex h-6 w-6 shrink-0 items-center justify-center text-muted-foreground hover:text-foreground",b?"visible":"invisible group-hover:visible"),onClick:a=>{a.stopPropagation(),l()},"aria-label":s("closeTabLabel"),children:(0,d.jsx)(bt.X,{className:"h-3 w-3"})}),"right"===g&&(0,d.jsx)("div",{className:"absolute top-1 right-0 bottom-1 w-0.5 bg-ui-blue"})]})};var bM=a.i(158799),bN=a.i(96968),bO=a.i(345283);a.i(466180);let bP=({paneId:a,isCreating:b,activePanelType:c,onCreateTab:g})=>{let h,j=(0,f.useTranslations)("terminal"),k=(0,bO.default)(),[l,m]=(0,e.useState)(!1),n=(0,bN.default)(),o=(0,aw.useLayoutStore)(a=>a.workspaceId),p={notInstalled:(h=(0,f.useTranslations)("terminal"))("codexNotInstalled"),copyCommand:h("codexCopyCommand"),copied:h("codexCopied"),copyConfigPath:h("codexCopyConfigPath"),configParseFailed:h("codexConfigParseFailed"),launchFailed:h("codexLaunchFailed"),resumeFailed:h("codexResumeFailed"),approvalSendFailed:h("codexApprovalSendFailed"),approvalNotApplied:h("codexApprovalNotApplied"),retry:h("codexRetry")},{ensureAgentInstalled:q,installDialogs:r}=(0,bB.useAgentInstallCheck)(),s=(0,e.useMemo)(()=>{let a=[{key:"claude",type:"claude-code",icon:(0,d.jsx)(bI.default,{className:"h-3.5 w-3.5"}),label:j("claudeNewConversation"),startAgent:"claude"},{key:"codex",type:"codex-cli",icon:(0,d.jsx)(be.default,{className:"h-3.5 w-3.5"}),label:j("codexNewConversation"),startAgent:"codex"},{key:"agent-sessions",type:"agent-sessions",icon:(0,d.jsx)(bH.History,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:j("sessionList")},{key:"terminal",type:"terminal",icon:(0,d.jsx)(bJ.default,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Terminal"},{key:"web-browser",type:"web-browser",icon:(0,d.jsx)(bF.Globe,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Web Browser"}];return n?a.filter(a=>"web-browser"!==a.key):a},[n,j]),[t,u]=(0,e.useState)(0),v=(0,e.useRef)([]),w=(0,e.useCallback)(()=>{let a=(a=>{switch(a){case"terminal":return"terminal";case"web-browser":return"web-browser";case"codex-cli":return"codex";case"agent-sessions":return"agent-sessions";default:return"claude"}})(c),b=s.findIndex(b=>b.key===a);u(b>=0?b:0),m(!0)},[c,s]);(0,e.useEffect)(()=>{let b=b=>{let c=b.detail;c?.paneId===a&&w()};return window.addEventListener("open-new-tab-menu",b),()=>window.removeEventListener("open-new-tab-menu",b)},[a,w]),(0,e.useEffect)(()=>{l&&v.current[t]?.focus()},[l,t]);let x=(0,e.useCallback)(async()=>{if(await q("codex"))try{let a=await (0,aT.fetchCodexLaunchCommand)(o);g("codex-cli",{command:a})}catch{at.toast.error(p.launchFailed,{id:"codex-launch-failed",duration:6e3,action:void 0})}},[p,q,g,o]),y=(0,e.useCallback)(async a=>{if(m(!1),"claude"===a){if(!await q("claude"))return;g("claude-code",{command:(0,aS.buildClaudeLaunchCommand)({workspaceId:o,dangerouslySkipPermissions:aL.default.getState().dangerouslySkipPermissions})});return}x()},[q,x,g,o]),z=a=>{"startAgent"in a&&a.startAgent?y(a.startAgent):(m(!1),g(a.type))};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"flex items-center border-l border-r border-border px-0.5",children:(0,d.jsxs)(bM.Popover,{open:l,onOpenChange:a=>{a?w():m(!1)},children:[(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsx)(bE.TooltipTrigger,{render:(0,d.jsx)(bM.PopoverTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground hover:text-foreground",b&&"pointer-events-none opacity-50"),disabled:b,"aria-label":j("openNewTab")}),children:b?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(i.Plus,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:j("newTabTooltip",{shortcut:`${k?"⌘":"Ctrl+"}T`})})]}),(0,d.jsx)(bM.PopoverContent,{side:"bottom",align:"start",className:"w-max min-w-52 max-w-[calc(100vw-1rem)] gap-0 p-0.5",onKeyDown:a=>{if("ArrowDown"===a.key)a.preventDefault(),u(a=>(a+1)%s.length);else if("ArrowUp"===a.key)a.preventDefault(),u(a=>(a-1+s.length)%s.length);else if("Enter"===a.key){a.preventDefault();let b=s[t];b&&z(b)}},children:s.map((a,b)=>(0,d.jsx)("div",{className:(0,av.cn)("flex rounded-sm",t===b&&"bg-accent"),onMouseEnter:()=>u(b),children:(0,d.jsxs)("button",{ref:a=>{v.current[b]=a},className:"flex min-w-0 flex-1 items-center gap-2 rounded-sm px-2.5 py-2 text-xs text-foreground hover:bg-accent focus:outline-none",onClick:()=>void z(a),children:[a.icon,(0,d.jsx)("span",{className:"min-w-0 flex-1 truncate text-left",children:a.label})]})},a.key))})]})}),r]})};var bQ=a.i(103222);let bR=a=>a.startAction?`Start ${a.label}`:a.label,bS=a=>"claude-code"===a||"codex-cli"===a?"Chat":"Terminal",bT=({tabId:a,paneId:b,sessionName:c,panelType:f,onSwitchPanelType:g})=>{let[h,i]=(0,e.useState)(!1),j=(0,aA.default)(b=>b.tabs[a]),k=(0,aB.getAgentPanelTypeFromProvider)(j?.agentProviderId),l=!!k&&(j?.agentProcess===!0||(0,aB.isAgentRunning)(j?.cliState)||((a,b)=>{if(!b)return!1;let c=b.toLowerCase();return"claude-code"===a?"claude"===c:"codex-cli"===a&&"codex"===c})(k,j?.currentProcess)),m=(0,aB.isAgentPanel)(f)?f:l?k:void 0,n="claude-code"===f||"codex-cli"===f?{type:f,label:bS(f)}:{type:"terminal",label:"Terminal"},o=[{type:"terminal",label:"Terminal"},...m?[{type:m,label:bS(m)}]:[{type:"claude-code",label:"Claude",startAction:!0},{type:"codex-cli",label:"Codex",startAction:!0}]],p=async()=>{try{let b=await fetch(`/api/check-agent?session=${encodeURIComponent(c)}`);if(!b.ok)return;let d=await b.json();(0,bQ.applyAgentCheckResult)(a,d)}catch{}};return(0,d.jsxs)(bM.Popover,{open:h,onOpenChange:a=>{a?p().finally(()=>i(!0)):i(!1)},children:[(0,d.jsx)(bM.PopoverTrigger,{className:"flex h-5 shrink-0 items-center rounded border border-border/70 bg-background/70 px-1.5 text-[10px] leading-none text-foreground hover:bg-accent focus:outline-none focus:ring-1 focus:ring-ring","aria-label":"Select tab mode",title:"Select tab mode",onClick:a=>a.stopPropagation(),children:(0,d.jsx)("span",{children:n.label})}),(0,d.jsx)(bM.PopoverContent,{side:"bottom",align:"end",className:"w-max min-w-[var(--anchor-width)] max-w-[calc(100vw-1rem)] gap-0 p-0.5",onClick:a=>a.stopPropagation(),children:o.map(c=>{let e=f===c.type;return(0,d.jsx)("button",{type:"button",className:(0,av.cn)("flex w-full items-center rounded-sm px-2 py-1 text-left text-[11px] leading-4 text-foreground whitespace-nowrap hover:bg-accent",e&&"bg-accent font-medium"),"aria-pressed":e,"aria-label":bR(c),onClick:d=>{d.stopPropagation(),(c=>{if(f===c.type)return i(!1);if((0,aB.tryAgentSwitch)({current:f,target:c.type,cliState:j?.cliState,agentProcess:j?.agentProcess,runningAgentPanelType:k})){if(i(!1),"terminal"===c.type&&(0,aB.isAgentPanel)(f)&&aA.default.getState().setDetectedAgent(a,{running:!0,providerId:"claude-code"===f?"claude":"codex-cli"===f?"codex":void 0,panelType:f}),c.startAction&&("claude-code"===c.type||"codex-cli"===c.type))return window.dispatchEvent(new CustomEvent("purplemux-start-agent",{detail:{paneId:b,tabId:a,provider:"codex-cli"===c.type?"codex":"claude"}}));g(c.type)}})(c)},children:(0,d.jsx)("span",{children:bR(c)})},c.type)})})]})},bU=({paneId:a,tabs:b,activeTabId:c,tabTitles:h,tabProcesses:i,isLoading:j,error:k,isCreating:l,paneCount:m,isSplitting:n,onSwitchTab:o,onCreateTab:p,onDeleteTab:q,onRenameTab:r,onSwitchPanelType:s,onReorderTabs:t,onClosePane:u,onMoveTab:v,onFocusPane:w,onRetry:x})=>{let y=(0,f.useTranslations)("terminal"),z=(0,f.useTranslations)("common"),A=(0,e.useRef)(null),B=(0,e.useMemo)(()=>[...b].sort((a,b)=>a.order-b.order),[b]),{draggedTabId:C,dropTarget:D,isDragOverFromOther:E,handleDragOver:F,handleDrop:G,handleTabBarDragEnter:H,handleTabBarDragLeave:I,startDrag:J,endDrag:K,clearDropTarget:L}=(({paneId:a,sortedTabs:b,onReorderTabs:c,onMoveTab:d})=>{let[f,g]=(0,e.useState)(null),[h,i]=(0,e.useState)(null),[j,k]=(0,e.useState)(!1),l=(0,e.useRef)(0),m=(0,e.useCallback)((a,b)=>{a.preventDefault(),a.dataTransfer.dropEffect="move";let c=a.currentTarget.getBoundingClientRect();i({id:b,side:a.clientX<c.left+c.width/2?"left":"right"})},[]),n=(0,e.useCallback)(e=>{e.preventDefault(),l.current=0,k(!1);let f=e.dataTransfer.getData("text/tab-id"),j=e.dataTransfer.getData("text/pane-id");if(!f){g(null),i(null);return}if(j&&j!==a){let a;d(f,j,h?(a=b.findIndex(a=>a.id===h.id),"right"===h.side?a+1:a):b.length),g(null),i(null);return}if(!h||f===h.id){g(null),i(null);return}let m=b.filter(a=>a.id!==f),n=m.findIndex(a=>a.id===h.id),o="right"===h.side?n+1:n,p=b.find(a=>a.id===f);p&&m.splice(o,0,p),c(m.map(a=>a.id)),g(null),i(null)},[a,b,h,d,c]),o=(0,e.useCallback)(b=>{b.preventDefault(),l.current++;let c=Array.from(b.dataTransfer.types).find(a=>a.startsWith("application/x-pane/")),d=c?.replace("application/x-pane/","")??null;null!==d&&d!==a&&k(!0)},[a]),p=(0,e.useCallback)(()=>{l.current--,l.current<=0&&(l.current=0,k(!1),i(null))},[]),q=(0,e.useCallback)((b,c)=>{b.dataTransfer.effectAllowed="move",b.dataTransfer.setData("text/tab-id",c),b.dataTransfer.setData("text/pane-id",a),b.dataTransfer.setData(`application/x-pane/${a}`,"");let d=b.currentTarget.cloneNode(!0);d.querySelector('[aria-label="탭 닫기"]')?.remove(),d.querySelectorAll(".sr-only").forEach(a=>a.remove()),d.style.cssText="position:fixed;left:-9999px;display:flex;align-items:center;gap:6px;padding:4px 12px;background:var(--card);color:var(--foreground);border:none;border-radius:4px;font-size:12px;opacity:0.6;transform:scale(0.9);white-space:nowrap;",document.body.appendChild(d),b.dataTransfer.setDragImage(d,0,0),requestAnimationFrame(()=>d.remove()),g(c)},[a]);return{draggedTabId:f,dropTarget:h,isDragOverFromOther:j,handleDragOver:m,handleDrop:n,handleTabBarDragEnter:o,handleTabBarDragLeave:p,startDrag:q,endDrag:(0,e.useCallback)(()=>{g(null),i(null)},[]),clearDropTarget:(0,e.useCallback)(()=>{i(null)},[])}})({paneId:a,sortedTabs:B,onReorderTabs:t,onMoveTab:v}),[M,N]=(0,e.useState)(!1),[O,P]=(0,e.useState)(!1),Q=M||O,R=(0,e.useCallback)(()=>{let a=A.current;a&&(N(a.scrollLeft>0),P(a.scrollLeft+a.clientWidth<a.scrollWidth-1))},[]);(0,e.useEffect)(()=>{R();let a=A.current;if(!a)return;let b=new ResizeObserver(R);return b.observe(a),()=>b.disconnect()},[R,b]),(0,e.useEffect)(()=>{if(!c||!A.current)return;let a=A.current.querySelector(`[data-tab-id="${c}"]`);a?.scrollIntoView({behavior:"instant",inline:"nearest",block:"nearest"})},[c]),(0,e.useEffect)(()=>{let a=A.current;if(!a)return;let b=b=>{let c=b.deltaX+b.deltaY;0!==c&&(b.preventDefault(),a.scrollLeft+=c,R())};return a.addEventListener("wheel",b,{passive:!1}),()=>a.removeEventListener("wheel",b)},[R]);let S=a=>{let b=A.current;b&&b.scrollBy({left:a,behavior:"smooth"})};return k?(0,d.jsxs)("div",{className:"flex h-[36px] shrink-0 items-center gap-2 bg-background px-3",children:[(0,d.jsx)(g.AlertTriangle,{className:"h-3.5 w-3.5 text-ui-amber"}),(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:k}),(0,d.jsx)(au.Button,{variant:"ghost",size:"xs",className:"h-5 px-2 text-xs text-foreground hover:text-foreground",onClick:x,children:z("retry")})]}):j?(0,d.jsx)("div",{className:"flex h-[36px] shrink-0 items-center gap-1.5 bg-background px-2",children:[1,2,3].map(a=>(0,d.jsx)("div",{className:"h-4 w-16 animate-pulse rounded bg-muted"},a))}):(0,d.jsxs)("div",{className:(0,av.cn)("flex h-[36px] shrink-0 items-stretch border-b border-border transition-colors",E?"bg-accent-color/10":"bg-background"),onDragEnter:H,onDragLeave:I,onDragOver:a=>a.preventDefault(),onDrop:G,children:[Q&&(0,d.jsx)("button",{className:(0,av.cn)("flex w-5 shrink-0 items-center justify-center text-muted-foreground transition-opacity hover:text-foreground",M?"opacity-100":"pointer-events-none opacity-0"),onClick:()=>S(-200),tabIndex:M?0:-1,children:(0,d.jsx)(bC,{className:"h-3.5 w-3.5"})}),(0,d.jsx)("div",{ref:A,role:"tablist",className:"flex flex-1 items-stretch overflow-x-auto",style:{scrollbarWidth:"none"},onScroll:R,children:B.map(b=>{let e;return(0,d.jsx)(bL,{tab:b,isActive:b.id===c,isDragging:b.id===C,dropSide:D?.id===b.id?D.side:null,displayTitle:h?.[b.id],currentProcess:i?.[b.id],modeSwitcher:b.id!==c||(e=b.panelType)&&"terminal"!==e&&"claude-code"!==e&&"codex-cli"!==e?void 0:(0,d.jsx)(bT,{tabId:b.id,paneId:a,sessionName:b.sessionName,panelType:b.panelType??"terminal",onSwitchPanelType:s}),onSwitch:()=>o(b.id),onDelete:()=>q(b.id),onRename:a=>{r(b.id,a)},onFocusPane:w,onDragStart:a=>J(a,b.id),onDragEnd:K,onDragOver:a=>F(a,b.id),onDragLeave:L},b.id)})}),Q&&(0,d.jsx)("button",{className:(0,av.cn)("flex w-5 shrink-0 items-center justify-center text-muted-foreground transition-opacity hover:text-foreground",O?"opacity-100":"pointer-events-none opacity-0"),onClick:()=>S(200),tabIndex:O?0:-1,children:(0,d.jsx)(bD.ChevronRight,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipProvider,{children:(0,d.jsxs)("div",{className:"flex shrink-0 items-stretch",children:[(0,d.jsx)(bP,{paneId:a,isCreating:l,activePanelType:B.find(a=>a.id===c)?.panelType,onCreateTab:p}),m>=2&&(0,d.jsx)("div",{className:"flex items-center px-0.5",children:(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsx)(bE.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",n?"pointer-events-none opacity-30":"hover:text-foreground"),disabled:n,onClick:a=>{a.stopPropagation(),u()},"aria-label":y("closeAllTabs"),children:(0,d.jsx)(bt.X,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:y("closeAllTabs")})]})})]})})]})};var bV=a.i(206456),bW=a.i(188289),bX=a.i(480824);let bY={write:()=>{},reset:()=>{},fit:()=>({cols:80,rows:24}),focus:()=>{},getBufferText:()=>""},bZ={sendStdin:()=>{},sendResize:()=>{}},b$={normal:{normal:12,claudeCode:10},large:{normal:14,claudeCode:12},"x-large":{normal:16,claudeCode:14}},b_=[],b0=(0,e.memo)(({paneId:a,paneNumber:b})=>{let c,g=(0,f.useTranslations)("terminal"),h=(0,aw.useLayoutStore)(b=>b.layout?(0,ax.findPane)(b.layout.root,a):null),j=h?.tabs??b_,k=h?.activeTabId??null,l=(0,aw.useLayoutStore)(b=>b.layout?.activePaneId===a),m=(0,aw.useLayoutStore)(a=>a.paneCount),n=(0,aw.useLayoutStore)(a=>a.isSplitting),o=(0,aw.useLayoutStore)(a=>a.switchTabInPane),p=(0,aw.useLayoutStore)(a=>a.createTabInPane),q=(0,aw.useLayoutStore)(a=>a.deleteTabInPane),r=(0,aw.useLayoutStore)(a=>a.closePane),s=(0,aw.useLayoutStore)(a=>a.focusPane),t=(0,aw.useLayoutStore)(a=>a.moveTab),u=(0,aw.useLayoutStore)(a=>a.renameTabInPane),v=(0,aw.useLayoutStore)(a=>a.reorderTabsInPane),w=(0,aw.useLayoutStore)(a=>a.updateTabPanelType),x=(0,aw.useLayoutStore)(a=>a.updateTabTerminalLayout),y=(0,aw.useLayoutStore)(a=>a.layout?.diffSettings),z=(0,aw.useLayoutStore)(a=>a.updateDiffSettings),A=j.find(a=>a.id===k),B=A?.panelType??"terminal",C="claude-code"===B,D="codex-cli"===B,E="agent-sessions"===B,F=C||D,G="web-browser"===B,H="diff"===B,{ensureAgentInstalled:I,installDialogs:J}=(0,bB.useAgentInstallCheck)(),{theme:K}=(0,bX.default)(),L=(0,aL.default)(a=>a.fontSize),M=(0,aL.default)(a=>a.lineHeight),N=(0,aL.default)(a=>a.lineHeightCustom),O=(0,aL.default)(a=>a.terminalKeyBar),P=(0,aM.default)(),Q=(0,aL.default)(a=>a.claudeShowTerminal),[R,S]=(0,e.useState)(!1),[T,U]=(0,e.useState)(!1),V=(0,e.useRef)(!1),W=(0,e.useRef)(!1);(0,e.useEffect)(()=>{V.current=R},[R]),(0,e.useEffect)(()=>{W.current=T},[T]);let X=(0,e.useCallback)(a=>1!==a.length?a:V.current?(S(!1),(0,aO.toCtrlChar)(a)??a):W.current?(U(!1),a.toUpperCase()):a,[]),Y=A?.terminalCollapsed??!Q,[Z,$]=(0,e.useState)(Y),[_,aa]=(0,e.useState)(!1),[ab,ac]=(0,e.useState)(!1),ad=(0,e.useRef)(0),[ae,af]=(0,e.useState)(!1),[ag,ah]=(0,e.useState)(!1),[ai,aj]=(0,e.useState)(!1),ak=(0,e.useMemo)(()=>j.map(a=>a.id),[j]),al=(0,aD.default)((0,aR.useShallow)(a=>{let b={};for(let c of j){if("agent-sessions"===c.panelType)continue;let d=a.metadata[c.id]?.title;d&&(b[c.id]=d)}return b})),am=(0,aA.default)((0,aR.useShallow)(a=>{let b={};for(let c of ak){let d=a.tabs[c]?.currentProcess;d&&(b[c]=d)}return b})),ao=(0,aD.default)(a=>k?a.metadata[k]?.cwd:void 0),aq=(0,aw.useLayoutStore)(a=>a.workspaceId);(0,e.useEffect)(()=>{let a=requestAnimationFrame(()=>ah(!0));return()=>{cancelAnimationFrame(a)}},[]);let ay=(0,e.useRef)(bY),az=(0,e.useRef)(bZ),aB=(0,e.useRef)(null),aC=(0,e.useRef)(null),aF=(0,e.useRef)(null),aP=(0,e.useRef)(null),aW=(0,e.useRef)(j),aX=(0,e.useRef)(k),aY=(0,e.useRef)(m),aZ=(0,e.useRef)(l);(0,e.useEffect)(()=>{aW.current=j,aX.current=k,aY.current=m,aZ.current=l});let a$=(0,e.useCallback)(async()=>{let a=aX.current,b=a?aW.current.find(b=>b.id===a):null;if(b)try{let a=await fetch(`/api/layout/cwd?session=${b.sessionName}`);if(!a.ok)return;let{cwd:c,lastCommand:d}=await a.json();c&&aD.default.getState().setCwd(b.id,c),aD.default.getState().setLastCommand(b.id,d??null)}catch{}},[]),a_=(0,e.useRef)(()=>{}),a0=(0,e.useRef)(void 0),a1=(0,e.useRef)(void 0),a2=(0,e.useRef)(null),a3=(0,e.useRef)(()=>{}),a4=(0,e.useRef)(!1),a5=(0,e.useRef)(null),a6=(0,e.useRef)(null),a7=(0,e.useRef)(!1),a8=(0,e.useRef)(void 0),a9=(0,e.useRef)(void 0),ba=(0,e.useRef)(void 0),bb=(0,e.useRef)(void 0),bc=(0,e.useRef)(null),be=(0,e.useRef)(""),bf=(0,aA.default)(a=>k?a.tabs[k]?.cliState??"inactive":"inactive"),bg=(0,aA.default)(a=>k?a.tabs[k]?.agentProcess??null:null),bh=(0,aA.default)(a=>k?a.tabs[k]?.agentSessionId??null:null),bi="timeline"===(0,aA.default)(a=>k?(0,aA.selectSessionView)(a.tabs,k):"session-list"),bq=(0,e.useCallback)(a=>{a7.current||(a5.current?a6.current=a:a())},[]),bt=(0,e.useCallback)(a=>{a5.current={x:a.clientX,y:a.clientY},a6.current=null,a7.current=!1},[]),bC=(0,e.useCallback)(a=>{let b=a5.current;a5.current=null;let c=!!b&&(a.clientX-b.x)**2+(a.clientY-b.y)**2>=25;c&&(a7.current=!0,requestAnimationFrame(()=>{a7.current=!1})),a6.current&&!c&&a6.current(),a6.current=null},[]),{prompts:bD}=(0,bx.default)(),bE=(0,e.useRef)(new Set),[bF,bG]=(0,e.useState)(null),bH=(0,e.useCallback)((a,b)=>{if(!0!==b.running||!(0,bQ.isAgentPanelType)(b.providerPanelType))return void bG(b=>b?.tabId===a?null:b);let c="string"==typeof b.providerId&&b.providerId?b.providerId:b.providerPanelType,d=`${a}:${c}`;if(bE.current.has(d))return;bE.current.add(d);let e="string"==typeof b.providerDisplayName&&b.providerDisplayName?b.providerDisplayName:c;bG({tabId:a,providerId:c,displayName:e,panelType:b.providerPanelType,sessionId:"string"==typeof b.sessionId&&b.sessionId?b.sessionId:null,resumable:!0===b.resumable})},[]),{trustPrompt:bI,onTerminalData:bJ,onTrustResponse:bK}=(0,bv.default)({enabled:(C||D)&&"inactive"===bf,getBufferText:()=>ay.current.getBufferText(),sendStdin:a=>az.current.sendStdin(a)}),{updatePrompt:bL,onTerminalData:bM,onRespond:bN}=(0,bw.default)({enabled:D&&"inactive"===bf,scopeKey:k,getBufferText:()=>ay.current.getBufferText(),sendStdin:a=>az.current.sendStdin(a),onUpdated:()=>{a3.current()}});(0,e.useEffect)(()=>{k&&C&&l&&(0,aA.isCliIdle)(bf)&&(0,aE.dismissTab)(k)},[k,bf,C,l]),(0,e.useEffect)(()=>{k&&l&&(0,aE.dismissTab)(k)},[k,l]);let bO=(0,e.useCallback)(()=>{"idle"===bf&&a8.current?.()},[bf]),bP=(0,e.useCallback)(a=>{a9.current?.(a)},[]),bR=(0,e.useCallback)((a,b)=>a9.current?.(a,b)??"",[]),bS=(0,e.useCallback)(a=>{ba.current?.(a)},[]),bT=(0,e.useCallback)(a=>{a.dataTransfer.types.includes("Files")&&(a.preventDefault(),a.stopPropagation(),a.dataTransfer.dropEffect="copy")},[]),b0=(0,e.useCallback)(a=>{!a.dataTransfer.files||0===a.dataTransfer.files.length||bb.current&&(a.preventDefault(),a.stopPropagation(),bb.current(Array.from(a.dataTransfer.files)))},[]),b1=(0,e.useCallback)(a=>{a1.current?.(a),a0.current?.()},[]),b2=(0,e.useCallback)(a=>(0,bW.isAppShortcut)(a)?(a.preventDefault(),(0,bW.isClearShortcut)(a)&&a_.current(),(0,bW.isFocusInputShortcut)(a)&&a0.current?.(),!1):!(0,bW.isShiftEnter)(a)||(a.preventDefault(),az.current.sendStdin("\n"),!1),[]),b3=(0,e.useCallback)((a,b,c=Z)=>F?c?{cols:a,rows:Math.max(b,aB.current?.rows??0,40)}:(aB.current={cols:a,rows:b},{cols:a,rows:b}):{cols:a,rows:b},[F,Z]),b4=(0,e.useCallback)((a,b,c)=>{let d=b3(a,b,c);az.current.sendResize(d.cols,d.rows)},[b3]),{terminalRef:b5,write:b6,clear:b7,reset:b8,fit:b9,focus:ca,isReady:cb,getBufferText:cc}=(0,aJ.default)({theme:K.colors,fontSize:(b$[L]??b$.normal)[F?"claudeCode":"normal"],lineHeight:(0,aN.resolveLineHeight)(M,N),onInput:a=>{az.current.sendStdin(X(a))},onResize:b4,onTitleChange:a=>{let b=aX.current;if(!b)return;let c=aW.current.find(a=>a.id===b);if(!c||c?.panelType==="web-browser"||c?.panelType==="agent-sessions"||a===be.current)return;be.current=a;let d=(0,bV.formatTabTitle)(a,c?.panelType),e=(0,bV.parseCurrentCommand)(a);if(aD.default.getState().setTitle(b,d),aA.default.getState().setCurrentProcess(b,e),(0,bV.isShellProcess)(a)&&bc.current){let a=bc.current;bc.current=null,az.current.sendStdin(`${a}\r`)}let f=aW.current.find(a=>a.id===b);if(f){let a=aA.default.getState().tabs[b]?.agentProcessCheckedAt??0;fetch(`/api/check-agent?session=${f.sessionName}`).then(a=>a.json()).then(d=>{c?.panelType==="terminal"&&bH(b,d);let{running:e}=!0===d.running&&(0,bQ.isAgentPanelType)(d.providerPanelType)?{running:!0}:{running:!1},g=aA.default.getState().tabs[b];if(g&&g.agentProcessCheckedAt!==a){g.agentProcess!==e&&setTimeout(()=>{fetch(`/api/check-agent?session=${f.sessionName}`).then(a=>a.json()).then(a=>{c?.panelType==="terminal"&&bH(b,a),(0,bQ.applyAgentCheckResult)(b,a)}).catch(()=>{})},500);return}(0,bQ.applyAgentCheckResult)(b,d)}).catch(()=>{})}a$()},customKeyEventHandler:b2});(0,e.useEffect)(()=>{a_.current=b7}),(0,e.useEffect)(()=>{let a=a=>{(0,bW.isFocusInputShortcut)(a)&&l&&(a.preventDefault(),a0.current?.())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[l]);let cd=(0,e.useCallback)(async()=>{if(aP.current)return;let b=aW.current,c=aX.current,d=aY.current;if(!c)return;if(1===b.length&&d>1)return void r(a);let e=[...b].sort((a,b)=>a.order-b.order),f=e.findIndex(a=>a.id===c),g=e[f+1]||e[f-1];g&&o(a,g.id),aP.current=c;try{await q(a,c)}finally{aP.current=null}},[a,o,q,r]),{status:ce,retryCount:cf,disconnectReason:cg,connect:ch,reconnect:ci,sendStdin:cj,sendWebStdin:ck,sendResize:cl}=(0,aK.default)({onData:a=>{ay.current.write(a),bJ(),bM()},onConnected:()=>{aa(!0),aF.current=aX.current;let a=aX.current;a&&aA.default.getState().setTerminalConnected(a,!0);let{cols:b,rows:c}=ay.current.fit();b4(b,c),aZ.current&&ay.current.focus(),a$(),clearTimeout(ad.current),ad.current=window.setTimeout(()=>ac(!1),50)},onSessionEnded:cd});(0,e.useEffect)(()=>{ay.current={write:b6,reset:b8,fit:b9,focus:ca,getBufferText:cc},az.current={sendStdin:cj,sendResize:cl}}),(0,e.useEffect)(()=>{cb||(aC.current=null)},[cb]),(0,e.useEffect)(()=>{if(!cb||!k)return;let a=j.find(a=>a.id===k);if(!a)return;if("web-browser"===a.panelType){be.current="";return}if(aC.current===a.sessionName)return;null!==aC.current&&(ac(!0),b8(),be.current="");let b=aA.default.getState(),c=b.tabs[k];b.initTab(k,{terminalConnected:!1,panelType:a.panelType,...!c?(0,aA.getInitialTabStateFromLayoutTab)(a):{}}),aC.current=a.sessionName;let{cols:d,rows:e}=b9(),f=b3(d,e,("claude-code"===a.panelType||"codex-cli"===a.panelType)&&(a.terminalCollapsed??!Q));ch(a.sessionName,f.cols,f.rows)},[cb,k]),(0,e.useEffect)(()=>{let a=aX.current;a&&aA.default.getState().setTerminalConnected(a,"connected"===ce)},[ce]),(0,e.useEffect)(()=>{"disconnected"===ce&&_&&aF.current&&aF.current!==k&&j.some(a=>a.id===aF.current)&&(aC.current=null,o(a,aF.current))},[ce]),(0,e.useEffect)(()=>{if(!cb||"connected"!==ce)return;let a=setTimeout(()=>{let{cols:a,rows:b}=b9();b4(a,b)},150);return()=>clearTimeout(a)},[m]),(0,e.useEffect)(()=>{if(!cb||"connected"!==ce)return;let a=setTimeout(()=>{let{cols:a,rows:b}=b9();b4(a,b)},300);return()=>clearTimeout(a)},[ce]),(0,e.useEffect)(()=>{if(l&&cb&&"connected"===ce){let{cols:a,rows:b}=b9();b4(a,b);let c=a4.current;a4.current=!1,!c&&F&&bi?bq(()=>a0.current?.()):ca()}},[l]);let cm=(0,e.useCallback)(b=>{b!==k&&((0,aE.dismissTab)(b),o(a,b))},[a,k,o]),cn=(0,e.useCallback)(async(b,c)=>{af(!0);let d=await p(a,b,c?.command,c?.resumeSessionId);if(d){aA.default.getState().initTab(d.id,{panelType:b,workspaceId:aq??""}),(c?.command||c?.resumeSessionId)&&aA.default.getState().setSessionView(d.id,"check");let a=aX.current,e=a?aD.default.getState().metadata[a]?.title:null;e&&"web-browser"!==b&&"agent-sessions"!==b&&aD.default.getState().setTitle(d.id,e)}af(!1)},[a,p,aq]),co=(0,e.useCallback)(async b=>{if(!aP.current){if(1===j.length&&m>1)return void r(a);aP.current=b;try{await q(a,b)}finally{aP.current=null}}},[a,j,m,q,r]),cp=(0,e.useCallback)(async(b,c)=>{await aw.useLayoutStore.getState().restartTabInPane(a,b,c)&&ci()},[a,ci]),cq=(0,e.useRef)(new Set);(0,e.useEffect)(()=>{"disconnected"!==ce||"session-not-found"!==cg||!k||!A||"terminal"!==(A.panelType??"terminal")||A.lastCommand||cq.current.has(k)||(cq.current.add(k),cp(k))},[ce,cg,k,A,cp]);let cr=(0,e.useCallback)((b,c)=>{u(a,b,c)},[a,u]),cs=(0,e.useCallback)(b=>{v(a,b)},[a,v]),ct=(0,e.useCallback)((b,c,d)=>{t(b,c,a,d)},[a,t]),cu=(0,e.useCallback)(()=>{s(a)},[a,s]),cv=(0,e.useCallback)(b=>{k&&(aj(!0),w(a,k,b))},[a,k,w]),cw=(0,e.useCallback)(async(a,b)=>{await I(b)&&(a2.current={text:a,provider:b},cv("codex"===b?"codex-cli":"claude-code"))},[I,cv]);(0,e.useEffect)(()=>{let b=b=>{let c=b.detail;c?.paneId===a&&c.text&&c.provider&&cw(c.text,c.provider)};return window.addEventListener("purplemux-send-to-agent",b),()=>window.removeEventListener("purplemux-send-to-agent",b)},[a,cw]),(0,e.useEffect)(()=>{let a=a2.current;if(!a||B!==("codex"===a.provider?"codex-cli":"claude-code"))return;a2.current=null;let b=window.setTimeout(()=>{a1.current?.(a.text),a0.current?.()},100);return()=>window.clearTimeout(b)},[B]);let cx=(0,e.useCallback)(b=>{k&&aq&&fetch(`/api/layout/pane/${a}/tabs/${k}?workspace=${aq}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({webUrl:b})}).catch(()=>{})},[k,a,aq]);(0,e.useEffect)(()=>{if(!k||!0!==bg||"terminal"!==B)return void bG(null);if(bF?.tabId!==k)return},[k,bg,B,bF]),(0,e.useEffect)(()=>{if(!k||!0!==bg||"terminal"!==B||bF?.tabId===k)return;let a=A?.sessionName;if(!a)return;let b=!1;return fetch(`/api/check-agent?session=${a}`).then(a=>a.json()).then(a=>{b||bH(k,a)}).catch(()=>{}),()=>{b=!0}},[k,B,A?.sessionName,bg,bF?.tabId,bH]);let{showPathInput:cy,droppedFileHint:cz,handleDragOver:cA,handleDrop:cB,handlePathInputSubmit:cC,handlePathInputDismiss:cD}=(({sendStdin:a,focus:b,wsId:c,tabId:d})=>{let[f,g]=(0,e.useState)(!1),[h,i]=(0,e.useState)(""),j=(0,e.useCallback)(a=>{a.dataTransfer.types.includes("Files")&&(a.preventDefault(),a.dataTransfer.dropEffect="copy")},[]),k=(0,e.useCallback)(c=>{0!==c.length&&(a(`\x1b[200~${c.join(" ")}\x1b[201~`),b())},[a,b]),l=(0,e.useCallback)(async a=>{let b=a.filter(bz.isImageFile);if(0===b.length)return!1;try{let a=await Promise.all(b.map(a=>(0,bz.uploadImage)(a,{wsId:c,tabId:d})));return k(a.map(a=>bA(a.path))),!0}catch(a){return at.toast.error(a instanceof Error?a.message:"Upload failed"),!0}},[c,d,k]),m=(0,e.useCallback)(a=>{a.preventDefault();let{files:b}=a.dataTransfer;if(0===b.length)return;let c=by.default?window.electronAPI:null,d=[],e=Array.from(b);for(let a of e){let b=c?.getPathForFile(a);b&&d.push(bA(b))}d.length>0?k(d):e.some(bz.isImageFile)?l(e):(i(e.map(a=>a.name).join(", ")),g(!0))},[k,l]);return{showPathInput:f,droppedFileHint:h,handleDragOver:j,handleDrop:m,handlePathInputSubmit:(0,e.useCallback)(c=>{if(g(!1),i(""),c.trim()){let d=bA(c.trim());a(`\x1b[200~${d}\x1b[201~`),b()}},[a,b]),handlePathInputDismiss:(0,e.useCallback)(()=>{g(!1),i(""),b()},[b])}})({sendStdin:a=>az.current.sendStdin(a),focus:ca,wsId:aq??void 0,tabId:k??void 0}),cE=(0,e.useCallback)(a=>(0,aS.buildClaudeLaunchCommand)({workspaceId:aq,dangerouslySkipPermissions:aL.default.getState().dangerouslySkipPermissions,resumeSessionId:a}),[aq]),cF=(0,e.useCallback)(async()=>{"connected"!==ce||!k||await I("claude")&&(aA.default.getState().setSessionView(k,"check"),cj(`${cE(null)}\r`))},[ce,cj,k,cE,I]),cG=(0,e.useCallback)(async()=>{"connected"!==ce||!k||await I("claude")&&(bc.current=cE(null),aA.default.getState().setSessionView(k,"check"),cj("/exit\r"))},[ce,cj,k,cE,I]),cH=(0,e.useCallback)(()=>(0,aT.fetchCodexLaunchCommand)(aq),[aq]),cI=(0,e.useCallback)((a,b)=>{fetch("/api/status/agent-launch",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:a,resetAgentSession:b?.resetAgentSession===!0})}).catch(()=>{})},[]),cJ=(0,e.useCallback)(async()=>{let a;if("connected"===ce&&k&&await I("codex")){try{a=await cH()}catch{at.toast.error(g("codexLaunchFailed"));return}cI(k,{resetAgentSession:!0}),aA.default.getState().setSessionView(k,"check"),cj(`${a}\r`)}},[ce,cj,k,cH,I,cI,g]),cK=(0,e.useCallback)(async()=>{await I("claude")&&(cv("claude-code"),cF())},[I,cF,cv]),cL=(0,e.useCallback)(async()=>{await I("codex")&&(cv("codex-cli"),cJ())},[I,cJ,cv]),cM=(0,e.useCallback)(async a=>{if("connected"!==ce||!k)return;let b="codex"===a.provider?"codex-cli":"claude-code";if(await I(a.provider)){if(cv(b),aA.default.getState().setSessionView(k,"check"),"codex"===a.provider){let b;try{b=await (0,aT.fetchCodexLaunchCommand)(aq,a.sessionId)}catch{at.toast.error(g("codexLaunchFailed"));return}cI(k,{resetAgentSession:!1}),cj(`${b}\r`);return}cj(`${cE(a.sessionId)}\r`)}},[k,cE,I,cv,aq,cI,cj,ce,g]),cN=(0,e.useCallback)(async()=>{let a;if("connected"===ce&&k&&await I("codex")){try{a=await cH()}catch{at.toast.error(g("codexLaunchFailed"));return}cI(k,{resetAgentSession:!0}),aA.default.getState().setSessionView(k,"check"),cj(`${a}\r`)}},[ce,cj,k,cH,I,cI,g]);(0,e.useEffect)(()=>{a3.current=cN},[cN]);let cO=(0,e.useCallback)(async()=>{let a;if("connected"===ce&&k&&await I("codex")){try{a=await cH()}catch{at.toast.error(g("codexLaunchFailed"));return}bc.current=a,cI(k,{resetAgentSession:!0}),aA.default.getState().setSessionView(k,"check"),(0,aU.sendCodexQuitCommand)(cj)}},[ce,cj,k,cH,I,cI,g]);(0,e.useEffect)(()=>{let b=b=>{let c=b.detail;if(c?.paneId!==a||c.tabId!==k||"claude"!==c.provider&&"codex"!==c.provider)return;let d=c.provider;(async()=>{if(!await I(d))return;let a="codex"===d?"codex-cli":"claude-code";if(aA.default.getState().setDetectedAgent(k,{running:!0,checkedAt:Date.now(),providerId:d,panelType:a}),cv(a),"codex"===d)return cJ();cF()})()};return window.addEventListener("purplemux-start-agent",b),()=>window.removeEventListener("purplemux-start-agent",b)},[k,I,cF,cJ,cv,a]);let cP=(0,e.useCallback)(async()=>{if(!k||!bF||bF.tabId!==k||(bG(null),cv(bF.panelType),"connected"!==ce))return;let a=bF.resumable?bF.sessionId:null;if("codex-cli"===bF.panelType){let b;if(!await I("codex"))return;try{b=await (0,aT.fetchCodexLaunchCommand)(aq,a)}catch{at.toast.error(g("codexLaunchFailed"));return}bc.current=b,cI(k,{resetAgentSession:!a}),aA.default.getState().setSessionView(k,"check"),(0,aU.sendCodexQuitCommand)(cj);return}await I("claude")&&(bc.current=cE(a),aA.default.getState().setSessionView(k,"check"),cj("\x03"),setTimeout(()=>cj("\x03"),300))},[k,bF,ce,I,cv,aq,cI,cj,g,cE]);(0,e.useEffect)(()=>{if(!bc.current||!0===bg||"connected"!==ce||!(0,bV.isShellProcess)(be.current))return;let a=bc.current;bc.current=null;let b=aX.current;b&&cI(b),cj(`${a}\r`)},[bg,ce,cj,cI]);let cQ=(0,e.useRef)(null),cR=(0,e.useRef)(!1),cS=(0,e.useCallback)(()=>{if(!cQ.current)return;aj(!0);let b=!Z,c=A?.terminalRatio??30;$(b),cR.current=!0,cQ.current.setLayout(b?{timeline:100,"terminal-area":0}:{timeline:100-c,"terminal-area":c}),F&&k&&x(a,k,{terminalCollapsed:b}),setTimeout(()=>{if(aj(!1),cR.current=!1,!cb||"connected"!==ce)return;let{cols:a,rows:c}=b9();b4(a,c,b)},150)},[Z,cb,ce,b9,F,k,a,A?.terminalRatio,x,b4]);(0,e.useEffect)(()=>{if(!cQ.current)return;if(cR.current=!0,F){let a=A?.terminalRatio??30;$(Y),cQ.current.setLayout(Y?{timeline:100,"terminal-area":0}:{timeline:100-a,"terminal-area":a}),a$()}else cQ.current.setLayout({timeline:0,"terminal-area":100});let a=setTimeout(()=>{if(aj(!1),cR.current=!1,!cb||"connected"!==ce)return;let{cols:a,rows:b}=b9();b4(a,b,!!F&&Y),l&&(F?bi&&bq(()=>a0.current?.()):ca())},150);return()=>clearTimeout(a)},[F,k]),(0,e.useEffect)(()=>{l&&F&&bi&&bq(()=>a0.current?.())},[bi]);let cT=0===j.length,cU=cb&&("connected"===ce||_)&&!cT&&!ab,cV=!cT&&(!cb||!_),cW="terminal"===B&&!cT&&("always"===O||"auto"===O&&P);return(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full flex-col overflow-hidden",m>1&&"border",m>1&&l?"border-focus-indicator":"border-transparent"),style:{opacity:ag?void 0:0,transition:"opacity 200ms ease-out, border-color 150ms"},role:"region","aria-label":`Pane ${b}`,"aria-current":l?"true":void 0,onClick:cu,onPointerDown:bt,onPointerUp:bC,children:[(0,d.jsx)(bU,{paneId:a,tabs:j,activeTabId:k,tabTitles:al,tabProcesses:am,isLoading:!1,error:null,isCreating:ae,paneCount:m,isSplitting:n,onSwitchTab:cm,onCreateTab:cn,onDeleteTab:co,onRenameTab:cr,onSwitchPanelType:cv,onReorderTabs:cs,onClosePane:()=>r(a),onMoveTab:ct,onFocusPane:cu,onRetry:()=>{}}),(0,d.jsxs)("div",{role:"tabpanel",className:"relative min-h-0 flex-1 flex flex-col",style:G||H||E?void 0:{backgroundColor:K.colors.background},onDragOver:G||H||E?void 0:cA,onDrop:G||H||E?void 0:cB,children:[G&&k&&(0,d.jsx)(bo.default,{tabId:k,initialUrl:A?.webUrl,onUrlChange:cx},k),H&&A&&(0,d.jsx)(bp.default,{sessionName:A.sessionName,onSendToAgent:cw,settings:y,onSettingsChange:z},A.sessionName),E&&A&&!cV&&(0,d.jsx)(bk.default,{sessionName:A.sessionName,cwd:ao||A.cwd,onSelectSession:cM,onNewClaudeSession:cK,onNewCodexSession:cL},A.sessionName),(0,d.jsxs)(an,{groupRef:cQ,orientation:"vertical",defaultLayout:F?(c=A?.terminalRatio??30,Y?{timeline:100,"terminal-area":0}:{timeline:100-c,"terminal-area":c}):{timeline:0,"terminal-area":100},onLayoutChanged:b=>{if(cR.current||!F||!k)return;let c=b["terminal-area"];if(void 0===c)return;let d=c<=0,e={};if(d!==Y&&(e.terminalCollapsed=d,$(d)),!d){let a=Math.round(c);a!==(A?.terminalRatio??30)&&(e.terminalRatio=a)}(void 0!==e.terminalRatio||void 0!==e.terminalCollapsed)&&x(a,k,e)},className:(0,av.cn)("min-h-0 flex-1",(G||H||E)&&"invisible absolute inset-0 pointer-events-none",ai&&"[&>[data-panel]]:[transition:flex-grow_150ms_ease-out]"),children:[(0,d.jsx)(ap,{id:"timeline",minSize:0,collapsible:!0,collapsedSize:0,disabled:!F,children:(0,d.jsxs)("div",{className:(0,av.cn)("flex h-full flex-col bg-card",Z&&"pb-3"),onDragOver:F?bT:void 0,onDrop:F?b0:void 0,children:[C&&A&&!cV&&k&&(0,d.jsx)(bd,{tabId:k,sessionName:A.sessionName,claudeSessionId:bh,cwd:ao||A.cwd,onClose:()=>cv("terminal"),onNewSession:cF,scrollToBottomRef:a8,addPendingMessageRef:a9,removePendingMessageRef:ba,trustPrompt:bI,onTrustResponse:bK},A.sessionName),D&&A&&!cV&&k&&(0,d.jsx)(bj,{tabId:k,sessionName:A.sessionName,cwd:ao||A.cwd,onClose:()=>cv("terminal"),onNewSession:cJ,onRestart:cO,updatePrompt:bL,onUpdatePromptResponse:bN,trustPrompt:bI,onTrustResponse:bK,scrollToBottomRef:a8,addPendingMessageRef:a9,removePendingMessageRef:ba},A.sessionName),F&&!cV&&bi&&(0,d.jsx)(bl.default,{tabId:k??void 0,wsId:aq??void 0,sessionName:A?.sessionName,agentSessionId:bh,provider:D?"codex":"claude",cliState:bf,sendStdin:ck,terminalWsConnected:"connected"===ce,visible:!0,focusTerminal:ca,focusInputRef:a0,setInputValueRef:a1,onRestartSession:D?cO:cG,onSend:bO,onOptimisticSend:bP,onAddPendingMessage:bR,onRemovePendingMessage:bS,attachFilesRef:bb},k),F&&!cV&&bi&&k&&(0,d.jsx)(bm.default,{prompts:bD,visible:!0,onSelect:b1})]})}),(0,d.jsx)(ar,{className:(0,av.cn)("group flex items-center justify-center overflow-hidden bg-card",F&&!Z?"h-3":"h-0"),disabled:!F||Z,children:(0,d.jsx)("div",{className:"h-px w-16 rounded-full bg-border transition-colors group-hover:bg-muted-foreground group-data-[resize-handle-active]:bg-muted-foreground"})}),F&&(0,d.jsxs)("button",{className:"flex h-6 w-full shrink-0 cursor-pointer items-center gap-1.5 border-t border-border bg-black/3 px-2 text-muted-foreground transition-colors hover:bg-black/5 dark:bg-white/3 dark:hover:bg-white/5",onClick:cS,children:[(0,d.jsx)(aI.TerminalSquare,{className:"h-3 w-3"}),(0,d.jsx)("span",{className:"text-[11px] font-medium",children:"Terminal"}),ao&&(0,d.jsx)("span",{className:"min-w-0 truncate text-[11px] opacity-60",children:ao.replace(/^\/Users\/[^/]+/,"~")}),(0,d.jsx)("span",{className:"ml-auto flex h-4 w-4 shrink-0 items-center justify-center",children:Z?(0,d.jsx)(aH.default,{className:"h-3 w-3"}):(0,d.jsx)(aG.ChevronDown,{className:"h-3 w-3"})})]}),(0,d.jsx)(ap,{id:"terminal-area",minSize:0,collapsible:!0,collapsedSize:0,children:(0,d.jsxs)("div",{className:"flex h-full flex-col",onMouseDown:()=>{a4.current=!0},children:[(0,d.jsx)(aV.default,{ref:b5,minHeight:F?256:void 0,className:(0,av.cn)("min-h-0 flex-1",cU?"opacity-100":"opacity-0",F&&"py-0 pl-2 pr-0.5")}),cW&&(0,d.jsx)(aQ,{sendStdin:cj,ctrlActive:R,shiftActive:T,setCtrlActive:S,setShiftActive:U})]})})]}),cT&&(0,d.jsx)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:(0,d.jsxs)(au.Button,{className:"gap-1.5",onClick:()=>cn(),disabled:ae,children:[ae?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(i.Plus,{className:"h-3.5 w-3.5"}),g("openNewTab")]})}),!cT&&"terminal"===B&&"disconnected"===ce&&"session-not-found"===cg&&k&&(0,d.jsx)(br,{cwd:A?.cwd,lastCommand:A?.lastCommand,onRestartWithCommand:a=>cp(k,a),onRestartNew:()=>cp(k)}),bF&&bF.tabId===k&&"terminal"===B&&(0,d.jsx)(bs.default,{modeName:bF.displayName,onSwitch:cP,onDismiss:()=>bG(null)}),cy&&(0,d.jsx)(bu,{hint:cz,onSubmit:cC,onDismiss:cD}),!cT&&!G&&!H&&(0,d.jsx)(bn.default,{status:ce,retryCount:cf,disconnectReason:cg,onReconnect:ci}),J]})]})});b0.displayName="PaneContainer";let b1=a=>"pane"===a.type?`pane:${a.id}`:["split",a.orientation,a.ratio,b1(a.children[0]),b1(a.children[1])].join("|"),b2=(0,e.memo)(a=>{let{root:b,onUpdateRatio:c,onEqualizeRatios:f,equalizeRef:g}=a,h=(0,e.useRef)(null),i=(0,e.useRef)(new Map),j=(0,e.useRef)(""),k=(0,e.useRef)(new Map),l=(0,e.useCallback)(()=>{let a=(0,ax.equalizeNode)(b),c=(a,b)=>{if("pane"===a.type)return;let d=b.join("-")||"root",e=k.current.get(d);e?.current&&e.current.setLayout({left:a.ratio,right:100-a.ratio}),c(a.children[0],[...b,0]),c(a.children[1],[...b,1])};c(a,[]),f()},[b,f]);(0,e.useEffect)(()=>{g&&(g.current=l)});let m=(0,ax.collectPanes)(b),n=new Map;m.forEach((a,b)=>{n.set(a.id,b+1)});let o=a=>{let b=i.current.get(a);return b||((b=document.createElement("div")).style.height="100%",b.style.width="100%",i.current.set(a,b)),b},p=(a,b)=>{let e;if("pane"===a.type)return(0,d.jsx)("div",{"data-pane-slot":a.id,style:{height:"100%",width:"100%"}},`slot-${a.id}`);let f=(0,ax.getFirstPaneId)(a.children[0]),g=(0,ax.getFirstPaneId)(a.children[1]),h="horizontal"===a.orientation,i=b.join("-")||"root";return(0,d.jsxs)(an,{groupRef:((e=k.current.get(i))||(e={current:null},k.current.set(i,e)),e),orientation:a.orientation,defaultLayout:{left:a.ratio,right:100-a.ratio},onLayoutChanged:d=>{let e=d.left;void 0!==e&&Math.abs(e-a.ratio)>.1&&c(b,Math.round(100*e)/100)},children:[(0,d.jsx)(ap,{id:"left",minSize:h?200:120,defaultSize:`${a.ratio}%`,children:p(a.children[0],[...b,0])}),(0,d.jsx)(ar,{className:"relative flex shrink-0 items-center justify-center bg-border transition-colors duration-100 hover:bg-muted-foreground/50 active:bg-muted-foreground",style:{width:h?"1px":void 0,height:h?void 0:"1px"}}),(0,d.jsx)(ap,{id:"right",minSize:h?200:120,defaultSize:`${100-a.ratio}%`,children:p(a.children[1],[...b,1])})]},`group-${f}-${g}`)};return(0,e.useLayoutEffect)(()=>{if(!h.current)return;let a=new Set(m.map(a=>a.id));for(let[b,c]of i.current)a.has(b)||(c.remove(),i.current.delete(b));m.forEach(a=>{let b=h.current.querySelector(`[data-pane-slot="${a.id}"]`),c=o(a.id);b&&c.parentElement!==b&&b.appendChild(c)})},[m.map(a=>a.id).join(",")]),(0,e.useLayoutEffect)(()=>{let a=m.map(a=>a.id).join(",");if(j.current&&j.current!==a){let a=(b,c)=>{if("pane"===b.type)return;let d=c.join("-")||"root",e=k.current.get(d);e?.current?.setLayout({left:b.ratio,right:100-b.ratio}),a(b.children[0],[...c,0]),a(b.children[1],[...c,1])};a(b,[])}j.current=a},[m.map(a=>a.id).join(",")]),(0,d.jsxs)("div",{ref:h,className:"h-full w-full bg-terminal-bg",children:[p(b,[]),m.map(a=>(0,aF.createPortal)((0,d.jsx)(b0,{paneId:a.id,paneNumber:n.get(a.id)??1}),o(a.id)))]})},(a,b)=>b1(a.root)===b1(b.root)&&a.onUpdateRatio===b.onUpdateRatio&&a.onEqualizeRatios===b.onEqualizeRatios&&a.equalizeRef===b.equalizeRef);var b3=a.i(676233),b4=a.i(604544),b5=a.i(708711);let b6=()=>{let a=((a=3e3)=>{let[b,c]=(0,e.useState)(null);return(0,e.useEffect)(()=>{let b=by.default?window.electronAPI:null;if(!b)return;let d=!0,e=async()=>{try{let[a,e]=await Promise.all([b.getSystemResources(),fetch("/api/system/tmux-sessions").then(a=>a.json())]);d&&c({cpu:a.cpu,memory:a.memory,tmuxSessions:e.count})}catch{}};e();let f=setInterval(e,a);return()=>{d=!1,clearInterval(f)}},[a]),b})();return(0,aL.default)(a=>a.systemResourcesEnabled)&&a?(0,d.jsxs)("div",{className:"flex items-center gap-2 text-[9px] text-muted-foreground/60",children:[(0,d.jsxs)("span",{className:"tabular-nums",children:["CPU ",a.cpu.toFixed(1),"%"]}),(0,d.jsxs)("span",{className:"tabular-nums",children:["MEM ",Math.round(a.memory.used/1048576),"MB"]}),(0,d.jsxs)("span",{className:"tabular-nums",children:["TMUX ",a.tmuxSessions]})]}):null};var b7=a.i(365092),b8=a.i(895159),b9=a.i(357785);let ca=({className:a})=>(0,d.jsxs)("svg",{className:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("line",{x1:"8",y1:"4",x2:"8",y2:"20"}),(0,d.jsx)("line",{x1:"16",y1:"4",x2:"16",y2:"20"})]}),cb=({className:a})=>(0,d.jsxs)("svg",{className:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"12",y1:"3",x2:"12",y2:"21"})]}),cc=({className:a})=>(0,d.jsxs)("svg",{className:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,d.jsx)("line",{x1:"3",y1:"12",x2:"21",y2:"12"})]}),cd={dirty:"text-muted-foreground/75",sync:"text-muted-foreground/75",stash:"text-muted-foreground/65"},ce=({activePaneId:a,root:b,paneCount:c,canSplit:g,isSplitting:h,onSplitPane:i,onEqualizeRatios:j,isGitPanelOpen:k,onToggleGitPanel:l})=>{let m=(0,f.useTranslations)("terminal"),n=(0,bO.default)()?"⌘":"Ctrl+",o=(0,b4.default)(),p=(0,ax.collectPanes)(b),q=p.find(b=>b.id===a)??p[0],r=q?.tabs.find(a=>a.id===q.activeTabId),s=(0,aD.default)(a=>r?.id?a.metadata[r.id]?.cwd:void 0),t=(0,b9.default)(a=>a.phase),u=(0,b9.default)(a=>a.status),v=(0,b9.default)(a=>a.branch),w=(0,b9.default)(a=>a.resetForTarget),x=(0,b9.default)(a=>a.fetchForTarget),y=s||r?.cwd||r?.sessionName||null,z=r?.sessionName??null,A=`${n}⇧F`,B=(0,b9.getGitStatusIndicators)(u),C=`${(0,b9.formatGitStatusSummary)(t,v,u,"Git panel")} (${A})`,D=B.length>0||"error"===t;(0,e.useEffect)(()=>{let a={cwdKey:y,tmuxSession:z};if(w(a),x(a),!y||!z)return;let b=window.setInterval(()=>{x(a)},15e3);return()=>window.clearInterval(b)},[x,y,z,w]);let E=(0,aL.default)(a=>a.editorUrl),F=(0,aL.default)(a=>a.editorPreset),G=(0,e.useMemo)(()=>(0,b7.buildEditorUrl)(F,E,s||"/"),[F,E,s]),H=!!G&&(0,b7.isSafeEditorTarget)(G),I=!!G&&(0,b7.isWebEditorUrl)(G),J=H&&!I&&!0,K=J?m("editorRemoteNotSupported"):m("openEditor"),L=q?.id;return(0,d.jsx)("div",{className:"shrink-0 bg-background",children:(0,d.jsxs)("div",{className:"relative z-40 flex h-12 shrink-0 items-center border-b border-border px-3",...by.default?{style:{WebkitAppRegion:"drag"}}:{},children:[(0,d.jsx)("div",{className:"mr-auto",...by.default?{style:{WebkitAppRegion:"no-drag"}}:{},children:(0,d.jsx)(b6,{})}),(0,d.jsx)(bE.TooltipProvider,{children:(0,d.jsxs)("div",{className:"flex items-center gap-1",...by.default?{style:{WebkitAppRegion:"no-drag"}}:{},children:["off"!==F&&(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsx)(bE.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",J?"cursor-not-allowed opacity-30":"hover:text-foreground"),"aria-disabled":J||void 0,onClick:()=>{if(J)return;if(!G)return void at.toast.info(m("editorUrlNotSet"));if(!H)return void at.toast.error(m("editorUrlNotSet"));if(I)return void window.open(G,"_blank","noopener,noreferrer");let a=window.electronAPI;if(a?.openExternal)return void a.openExternal(G);let b=document.createElement("iframe");b.style.display="none",b.src=G,document.body.appendChild(b),setTimeout(()=>b.remove(),1e3)},"aria-label":m("openEditor"),children:G?(0,d.jsx)(b8.EditorIcon,{preset:F,className:"h-3.5 w-3.5"}):(0,d.jsx)(b3.FolderCode,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:K})]}),"off"!==F&&(0,d.jsx)("div",{className:"h-5 w-px bg-border"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsx)(bE.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",g?"hover:text-foreground":"cursor-not-allowed opacity-30"),onClick:g&&L?()=>i(L,"horizontal"):void 0,disabled:!g,"aria-label":m("splitVertical"),children:h?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(cb,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:m("splitVerticalShortcut",{shortcut:`${n}D`})})]}),(0,d.jsx)(b5.default,{mac:"⌘D",other:"^D",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o?"opacity-100":"opacity-0")})]}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsx)(bE.TooltipTrigger,{className:(0,av.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",g?"hover:text-foreground":"cursor-not-allowed opacity-30"),onClick:g&&L?()=>i(L,"vertical"):void 0,disabled:!g,"aria-label":m("splitHorizontal"),children:h?(0,d.jsx)(as.default,{className:"h-3 w-3"}):(0,d.jsx)(cc,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:m("splitHorizontalShortcut",{shortcut:`${n}⇧D`})})]}),(0,d.jsx)(b5.default,{mac:"⌘⇧D",other:"^⇧D",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o?"opacity-100":"opacity-0")})]}),c>=2&&(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsx)(bE.TooltipTrigger,{className:"flex h-7 w-7 items-center justify-center text-muted-foreground hover:text-foreground",onClick:j,"aria-label":m("equalSplit"),children:(0,d.jsx)(ca,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:m("equalSplit")})]}),(0,d.jsx)(b5.default,{mac:"⌘⌥=",other:"^⌥=",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o?"opacity-100":"opacity-0")})]}),(0,d.jsx)("div",{className:"mx-1 h-5 w-px bg-border"}),(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsxs)(bE.Tooltip,{children:[(0,d.jsxs)(bE.TooltipTrigger,{className:(0,av.cn)("flex h-7 min-w-7 items-center justify-center rounded text-muted-foreground transition-colors",D&&"gap-1 px-1.5",k?"bg-accent text-foreground":"hover:bg-accent hover:text-foreground"),onClick:l,"aria-pressed":k,"aria-label":"Toggle Git panel",children:[(0,d.jsx)(bG.GitCompareArrows,{className:"h-3.5 w-3.5"}),"error"===t&&(0,d.jsx)("span",{className:"text-[10px] font-semibold leading-none text-negative/70","aria-hidden":"true",children:"!"}),B.map(a=>(0,d.jsx)("span",{className:(0,av.cn)("flex h-4 min-w-0 items-center justify-center text-[10px] font-medium leading-none",cd[a.tone]),"aria-hidden":"true",children:a.label},a.key))]}),(0,d.jsx)(bE.TooltipContent,{side:"bottom",children:C})]}),(0,d.jsx)(b5.default,{mac:"⌘⇧F",other:"^⇧F",className:(0,av.cn)("absolute -right-0.5 -top-1.5 rounded bg-muted px-1 py-0.5 text-[10px] font-medium leading-none text-muted-foreground transition-opacity duration-200 pointer-events-none",o&&!k?"opacity-100":"opacity-0")})]})]})})]})})},cf=({sessionName:a,onClose:b,onSendToAgent:c,settings:e,onSettingsChange:f})=>(0,d.jsx)("aside",{className:"flex h-full min-w-0 flex-col bg-card",children:(0,d.jsx)("div",{className:"min-h-0 flex-1",children:a?(0,d.jsx)(bp.default,{sessionName:a,onSendToAgent:c,onClose:b,settings:e,onSettingsChange:f}):(0,d.jsx)("div",{className:"flex h-full items-center justify-center px-6 text-center text-sm text-muted-foreground",children:"Open a terminal or agent tab first."})})});var cg=a.i(501130),ch=a.i(493621);let ci=()=>!1,cj=()=>(Number.isFinite(36),36);a.s(["default",0,()=>{let a=(0,f.useTranslations)("terminal"),b=(0,ay.default)(a=>a.isLoading),c=(0,ay.default)(a=>a.error),j=(0,ay.default)(a=>a.activeWorkspaceId),k=(0,ay.default)(a=>a.workspaces.length),l=(0,e.useRef)(null),m=(0,e.useRef)(null),n=(0,e.useRef)(null),o=(0,e.useRef)(null),[p,q]=(0,e.useState)(ci),[r,s]=(0,e.useState)(cj),[t,u]=(0,e.useState)(null),v=(0,e.useCallback)(()=>{let b=l.current;b&&(ay.default.getState().switchWorkspace(b),at.toast.error(a("cannotSwitch")))},[a]),w=(0,aw.default)({workspaceId:j,onFetchError:v}),x=!!(w.layout&&!w.isLoading&&(0,ax.collectPanes)(w.layout.root).every(a=>0===a.tabs.length)),y=!!(w.layout&&!w.isLoading&&!x),z=(0,e.useMemo)(()=>w.layout?.activePaneId?(0,ax.collectPanes)(w.layout.root).find(a=>a.id===w.layout?.activePaneId)??null:null,[w.layout]),A=(0,e.useMemo)(()=>z?.activeTabId?z.tabs.find(a=>a.id===z.activeTabId)??null:null,[z]),B=(0,aD.default)(a=>A?.id?a.metadata[A.id]?.cwd:void 0),C=(0,e.useMemo)(()=>w.layout?new Set((0,ax.collectPanes)(w.layout.root).flatMap(a=>a.tabs.map(a=>a.sessionName))):new Set,[w.layout]);(0,e.useEffect)(()=>{if(w.layout){let a;q(w.layout.diffSettings?.panelOpen??!1),s(Number.isFinite(a=Number(w.layout.diffSettings?.panelSize))?Math.min(60,Math.max(20,a)):36)}},[j,w.layout]);let D=(0,e.useCallback)(a=>{q(a),w.updateDiffSettings({panelOpen:a})},[w]),E=(0,e.useCallback)(a=>{s(a),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{w.updateDiffSettings({panelSize:a}),o.current=null},200)},[w]);(0,e.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]),(0,e.useEffect)(()=>{o.current&&(clearTimeout(o.current),o.current=null)},[j]);let F=(0,e.useCallback)((a,b)=>{z?.id&&window.dispatchEvent(new CustomEvent("purplemux-send-to-agent",{detail:{paneId:z.id,text:a,provider:b}}))},[z?.id]);(0,e.useEffect)(()=>{let a=()=>D(!p);return window.addEventListener("purplemux-toggle-git-panel",a),()=>window.removeEventListener("purplemux-toggle-git-panel",a)},[p,D]),(0,e.useEffect)(()=>{let a=A?.sessionName;if(!a)return;let b=B||A.cwd||a;u(c=>c?.cwdKey===b&&C.has(c.sessionName)?c:{sessionName:a,cwdKey:b})},[C,A?.sessionName,A?.cwd,B]),(0,e.useEffect)(()=>{y&&n.current?.setLayout(p?{main:100-r,git:r}:{main:100,git:0})},[j,p,r,y]);let G=w.layout?.updatedAt,H=(0,e.useRef)(null);(0,e.useEffect)(()=>{if(!w.layout||!G||H.current===G)return;H.current=G;let a={};for(let b of(0,ax.collectPanes)(w.layout.root))for(let c of b.tabs)"agent-sessions"!==c.panelType&&(c.title||c.cwd)&&(a[c.id]={title:c.title,cwd:c.cwd});aD.default.getState().hydrate(a),(0,aE.requestSync)()},[G]),(0,e.useEffect)(()=>{if(!w.layout)return;let a=new Set((0,ax.collectPanes)(w.layout.root).flatMap(a=>a.tabs.map(a=>a.id)));aD.default.getState().retainOnly(a)},[w.layout]),(0,ch.useAutoDeleteEmptyWorkspace)(x,w.clearLayout);let I=(0,e.useCallback)(a=>{let{activeWorkspaceId:b}=ay.default.getState();a!==b&&(l.current=b,aD.default.getState().reset(),w.clearLayout(),ay.default.getState().switchWorkspace(a))},[w]);if((0,e.useEffect)(()=>(cg.default.getState().register(I),()=>cg.default.getState().unregister()),[I]),(({layout:a})=>{let b=(0,e.useRef)(a),c=(0,ay.default)(a=>a.isSettingsDialogOpen),d=(0,ay.default)(a=>a.isCheatSheetOpen),f=!c&&!d;(0,e.useEffect)(()=>{b.current=a},[a]),(0,az.default)("pane.split_right",()=>{let a=b.current;a.layout?.activePaneId&&a.canSplit&&a.splitPane(a.layout.activePaneId,"horizontal")},f),(0,az.default)("pane.split_down",()=>{let a=b.current;a.layout?.activePaneId&&a.canSplit&&a.splitPane(a.layout.activePaneId,"vertical")},f);let g=(0,e.useCallback)(a=>{let c=b.current;if(!c.layout?.activePaneId)return;let d=(0,ax.findAdjacentPaneInDirection)(c.layout.root,c.layout.activePaneId,a);d&&c.focusPane(d)},[]);(0,az.default)("pane.focus_left",()=>g("left"),f),(0,az.default)("pane.focus_right",()=>g("right"),f),(0,az.default)("pane.focus_up",()=>g("up"),f),(0,az.default)("pane.focus_down",()=>g("down"),f);let h=(0,e.useCallback)(a=>{let c=b.current;if(!c.layout?.activePaneId)return;let d=(0,ax.findResizeTarget)(c.layout.root,c.layout.activePaneId,a);if(!d)return;let e=d.increase?5:-5,f=Math.min(95,Math.max(5,d.currentRatio+e));f!==d.currentRatio&&aw.useLayoutStore.getState().updateRatio(d.path,f)},[]);(0,az.default)("pane.resize_left",()=>h("left"),f),(0,az.default)("pane.resize_right",()=>h("right"),f),(0,az.default)("pane.resize_up",()=>h("up"),f),(0,az.default)("pane.resize_down",()=>h("down"),f),(0,az.default)("pane.equalize",()=>aw.useLayoutStore.getState().equalizeRatios(),f),(0,az.default)("tab.new",()=>{let a=b.current;a.layout?.activePaneId&&window.dispatchEvent(new CustomEvent("open-new-tab-menu",{detail:{paneId:a.layout.activePaneId}}))},f),(0,az.default)("tab.close",()=>{let a=b.current;if(!a.layout?.activePaneId)return;let c=aC(a.layout);c?.activeTabId&&(1===c.tabs.length&&a.paneCount>1?a.closePane(c.id):a.deleteTabInPane(c.id,c.activeTabId))},f),(0,az.default)("tab.prev",()=>aw.useLayoutStore.getState().focusPrevTab(),f),(0,az.default)("tab.next",()=>aw.useLayoutStore.getState().focusNextTab(),f),(0,az.default)("pane.clear_screen",()=>{},f),(0,az.default)("tab.goto",a=>{let b=parseInt(a.code.replace("Digit",""),10);isNaN(b)||b<1||b>9||aw.useLayoutStore.getState().focusTabByIndex(9===b?1/0:b-1)},f);let i=(0,e.useCallback)(a=>{let c=aC(b.current.layout);if(!c?.activeTabId)return;let d=c.tabs.find(a=>a.id===c.activeTabId);if(!d)return;let e=d.panelType??"terminal";if(e===a)return;let f=aA.default.getState().tabs[c.activeTabId];(0,aB.tryAgentSwitch)({current:e,target:a,cliState:f?.cliState,agentProcess:f?.agentProcess,runningAgentPanelType:(0,aB.getAgentPanelTypeFromProvider)(f?.agentProviderId)})&&aw.useLayoutStore.getState().updateTabPanelType(c.id,c.activeTabId,a)},[]);(0,az.default)("view.mode_terminal",()=>i("terminal"),f),(0,az.default)("view.mode_claude",()=>i("claude-code"),f),(0,az.default)("view.mode_codex",()=>i("codex-cli"),f),(0,az.default)("view.mode_diff",()=>{window.dispatchEvent(new CustomEvent("purplemux-toggle-git-panel"))},f)})({layout:w}),b)return(0,d.jsxs)("div",{className:"flex h-full w-full flex-col overflow-hidden bg-background animate-delayed-fade-in",children:[(0,d.jsx)("div",{className:"flex h-12 shrink-0 items-center gap-1.5 border-b border-border bg-background px-2",children:[1,2,3].map(a=>(0,d.jsx)("div",{className:"h-4 w-16 animate-pulse rounded bg-muted"},a))}),(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:a("connecting")})]})})]});if(c&&!k)return(0,d.jsxs)("div",{className:"flex h-full w-full flex-col items-center justify-center gap-3 overflow-hidden bg-background",children:[(0,d.jsx)(g.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:c}),(0,d.jsxs)(au.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:ay.default.getState().fetchWorkspaces,children:[(0,d.jsx)(h.RefreshCw,{className:"h-3.5 w-3.5"}),a("retryAction")]})]});let J=!w.layout&&w.isLoading&&j;return(0,d.jsxs)("div",{className:"relative flex h-full w-full flex-col overflow-hidden bg-background",children:[w.layout&&!w.isLoading&&!x&&(0,d.jsx)(ce,{activePaneId:w.layout.activePaneId,root:w.layout.root,paneCount:w.paneCount,canSplit:w.canSplit,isSplitting:w.isSplitting,onSplitPane:w.splitPane,onEqualizeRatios:()=>m.current?.(),isGitPanelOpen:p,onToggleGitPanel:()=>D(!p)}),(0,d.jsxs)("div",{className:"relative min-h-0 flex-1",children:[J&&(0,d.jsx)("div",{className:"absolute inset-0 z-30 flex items-center justify-center bg-background animate-delayed-fade-in",children:(0,d.jsx)(as.default,{className:"h-4 w-4 text-muted-foreground"})}),w.error&&!w.isLoading&&(0,d.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[(0,d.jsx)(g.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,d.jsx)("span",{className:"text-sm text-muted-foreground",children:w.error}),(0,d.jsxs)(au.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:()=>w.fetchLayout(),children:[(0,d.jsx)(h.RefreshCw,{className:"h-3.5 w-3.5"}),a("retryAction")]})]}),w.layout&&!w.isLoading&&!x&&(0,d.jsx)("div",{className:"h-full",children:(0,d.jsxs)(an,{groupRef:n,className:"h-full w-full min-w-0",orientation:"horizontal",resizeTargetMinimumSize:{fine:8,coarse:32},defaultLayout:p?{main:100-r,git:r}:{main:100,git:0},onLayoutChanged:a=>{if(!p)return;let b=a.git;if(void 0===b||b<=1)return;let c=Math.min(60,Math.max(20,Math.round(b)));c!==r&&E(c)},children:[(0,d.jsx)(ap,{id:"main",minSize:"320px",className:"h-full min-w-0",children:(0,d.jsx)(b2,{root:w.layout.root,onUpdateRatio:w.updateRatio,onEqualizeRatios:w.equalizeRatios,equalizeRef:m})}),(0,d.jsx)(ar,{disabled:!p,className:(0,av.cn)("shrink-0 cursor-col-resize bg-border transition-colors duration-100 hover:bg-muted-foreground/50 data-[resize-handle-active]:bg-muted-foreground",p?"w-px":"w-0")}),(0,d.jsx)(ap,{id:"git",collapsible:!0,collapsedSize:"0px",minSize:"320px",maxSize:"760px",groupResizeBehavior:"preserve-pixel-size",className:"h-full min-w-0 overflow-hidden",children:p&&(0,d.jsx)(cf,{sessionName:t?.sessionName,onClose:()=>D(!1),onSendToAgent:F,settings:w.layout.diffSettings,onSettingsChange:w.updateDiffSettings})})]})},j),!j&&!b&&!c&&(0,d.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,d.jsxs)(au.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:async()=>{let a=await ay.default.getState().createWorkspace("");a&&ay.default.getState().switchWorkspace(a.id)},children:[(0,d.jsx)(i.Plus,{className:"h-3.5 w-3.5"}),a("newWorkspace")]})})]})]})}],51395)},821662,a=>{a.n(a.i(51395))}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js.map
|