purplemux 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +21 -21
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/routes-manifest.json +7 -7
  6. package/.next/standalone/.next/server/chunks/[root-of-the-server]__045vzzi._.js +1 -1
  7. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0auutl5._.js +2 -2
  8. package/.next/standalone/.next/server/chunks/[root-of-the-server]__11j9~6h._.js +1 -1
  9. package/.next/standalone/.next/server/chunks/{_05otee~._.js → _04dq3gt._.js} +1 -1
  10. package/.next/standalone/.next/server/chunks/{_0uxocm.._.js → _09vws3v._.js} +1 -1
  11. package/.next/standalone/.next/server/chunks/{_0d415er._.js → _0ap4fy.._.js} +1 -1
  12. package/.next/standalone/.next/server/chunks/_0e8e4zn._.js +1 -1
  13. package/.next/standalone/.next/server/chunks/_0isokfh._.js +1 -1
  14. package/.next/standalone/.next/server/chunks/{_0_1vqqb._.js → _0su2osz._.js} +1 -1
  15. package/.next/standalone/.next/server/chunks/{_0xmsr59._.js → _0uo_gs5._.js} +1 -1
  16. package/.next/standalone/.next/server/chunks/{_06vitke._.js → _134uyu_._.js} +1 -1
  17. package/.next/standalone/.next/server/chunks/{src_lib_136edwc._.js → src_lib_0vs5asg._.js} +1 -1
  18. package/.next/standalone/.next/server/chunks/src_lib_session-parser_ts_0~rhicw._.js +3 -3
  19. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0glt298._.js +3 -0
  20. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0au.ssp._.js → [root-of-the-server]__0nkl4wz._.js} +2 -2
  21. package/.next/standalone/.next/server/chunks/ssr/_06yggfn._.js +1 -1
  22. package/.next/standalone/.next/server/chunks/ssr/_0al4.z9._.js +1 -1
  23. package/.next/standalone/.next/server/chunks/ssr/_0b~zgl1._.js +1 -1
  24. package/.next/standalone/.next/server/chunks/ssr/_0f8k39w._.js +14 -0
  25. package/.next/standalone/.next/server/chunks/ssr/{_0_owbnq._.js → _0h4kenr._.js} +2 -2
  26. package/.next/standalone/.next/server/chunks/ssr/{_0z61aq-._.js → _0ihbr8k._.js} +2 -2
  27. package/.next/standalone/.next/server/chunks/ssr/_0js4l3t._.js +1 -1
  28. package/.next/standalone/.next/server/chunks/ssr/_0nkeoiw._.js +1 -1
  29. package/.next/standalone/.next/server/chunks/ssr/_0rxhzwm._.js +1 -1
  30. package/.next/standalone/.next/server/chunks/ssr/_0y31tie._.js +14 -0
  31. package/.next/standalone/.next/server/chunks/ssr/messages_de_session_json_[json]_cjs_0b-1vpl._.js +1 -1
  32. package/.next/standalone/.next/server/chunks/ssr/messages_en_session_json_[json]_cjs_0jaymfk._.js +1 -1
  33. package/.next/standalone/.next/server/chunks/ssr/messages_es_session_json_[json]_cjs_0jy1144._.js +1 -1
  34. package/.next/standalone/.next/server/chunks/ssr/messages_fr_session_json_[json]_cjs_0rz0g.c._.js +1 -1
  35. package/.next/standalone/.next/server/chunks/ssr/messages_ja_session_json_[json]_cjs_0cos-uy._.js +1 -1
  36. package/.next/standalone/.next/server/chunks/ssr/messages_ko_session_json_[json]_cjs_0x4saic._.js +1 -1
  37. package/.next/standalone/.next/server/chunks/ssr/messages_pt-BR_session_json_[json]_cjs_0-x8ftl._.js +1 -1
  38. package/.next/standalone/.next/server/chunks/ssr/messages_ru_session_json_[json]_cjs_0~2-kve._.js +1 -1
  39. package/.next/standalone/.next/server/chunks/ssr/messages_tr_session_json_[json]_cjs_0zsvt_4._.js +1 -1
  40. package/.next/standalone/.next/server/chunks/ssr/messages_zh-CN_session_json_[json]_cjs_134xza~._.js +1 -1
  41. package/.next/standalone/.next/server/chunks/ssr/messages_zh-TW_session_json_[json]_cjs_0mv_~-8._.js +1 -1
  42. package/.next/standalone/.next/server/chunks/ssr/src_components_features_mobile_mobile-terminal-page_tsx_02chzch._.js +1 -1
  43. package/.next/standalone/.next/server/chunks/ssr/src_components_features_workspace_terminal-page_tsx_0wuq-jl._.js +1 -1
  44. package/.next/standalone/.next/server/middleware-build-manifest.js +21 -21
  45. package/.next/standalone/.next/server/pages/_app/build-manifest.json +5 -5
  46. package/.next/standalone/.next/server/pages/_app/client-build-manifest.json +1 -1
  47. package/.next/standalone/.next/server/pages/_app.js +2 -2
  48. package/.next/standalone/.next/server/pages/_app.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/pages/_error.js +2 -2
  50. package/.next/standalone/.next/server/pages/_error.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js +1 -1
  52. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs/[tabId].js.nft.json +1 -1
  53. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js +1 -1
  54. package/.next/standalone/.next/server/pages/api/layout/pane/[paneId]/tabs.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/pages/api/status/hook.js +1 -1
  56. package/.next/standalone/.next/server/pages/api/status/hook.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/pages/api/status/statusline.js +1 -1
  58. package/.next/standalone/.next/server/pages/api/status/statusline.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js +1 -1
  60. package/.next/standalone/.next/server/pages/api/tmux/recover-unknown.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/pages/api/tmux/reset.js +1 -1
  62. package/.next/standalone/.next/server/pages/api/tmux/reset.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/pages/api/workspace.js +1 -1
  64. package/.next/standalone/.next/server/pages/api/workspace.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/pages/de/404.html +1 -1
  66. package/.next/standalone/.next/server/pages/de/500.html +1 -1
  67. package/.next/standalone/.next/server/pages/en/404.html +1 -1
  68. package/.next/standalone/.next/server/pages/en/500.html +1 -1
  69. package/.next/standalone/.next/server/pages/es/404.html +1 -1
  70. package/.next/standalone/.next/server/pages/es/500.html +1 -1
  71. package/.next/standalone/.next/server/pages/fr/404.html +1 -1
  72. package/.next/standalone/.next/server/pages/fr/500.html +1 -1
  73. package/.next/standalone/.next/server/pages/index/build-manifest.json +4 -4
  74. package/.next/standalone/.next/server/pages/index/client-build-manifest.json +1 -1
  75. package/.next/standalone/.next/server/pages/index/react-loadable-manifest.json +8 -10
  76. package/.next/standalone/.next/server/pages/index.js +2 -2
  77. package/.next/standalone/.next/server/pages/index.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/pages/ja/404.html +1 -1
  79. package/.next/standalone/.next/server/pages/ja/500.html +1 -1
  80. package/.next/standalone/.next/server/pages/ko/404.html +1 -1
  81. package/.next/standalone/.next/server/pages/ko/500.html +1 -1
  82. package/.next/standalone/.next/server/pages/login.js +2 -2
  83. package/.next/standalone/.next/server/pages/login.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/pages/pt-BR/404.html +1 -1
  85. package/.next/standalone/.next/server/pages/pt-BR/500.html +1 -1
  86. package/.next/standalone/.next/server/pages/reports/build-manifest.json +3 -3
  87. package/.next/standalone/.next/server/pages/reports/client-build-manifest.json +1 -1
  88. package/.next/standalone/.next/server/pages/reports.js +2 -2
  89. package/.next/standalone/.next/server/pages/reports.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/pages/reset.js +2 -2
  91. package/.next/standalone/.next/server/pages/reset.js.nft.json +1 -1
  92. package/.next/standalone/.next/server/pages/ru/404.html +1 -1
  93. package/.next/standalone/.next/server/pages/ru/500.html +1 -1
  94. package/.next/standalone/.next/server/pages/stats/build-manifest.json +3 -3
  95. package/.next/standalone/.next/server/pages/stats/client-build-manifest.json +1 -1
  96. package/.next/standalone/.next/server/pages/stats.js +2 -2
  97. package/.next/standalone/.next/server/pages/stats.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/pages/tools-required.js +2 -2
  99. package/.next/standalone/.next/server/pages/tools-required.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/pages/tr/404.html +1 -1
  101. package/.next/standalone/.next/server/pages/tr/500.html +1 -1
  102. package/.next/standalone/.next/server/pages/webview/build-manifest.json +3 -3
  103. package/.next/standalone/.next/server/pages/webview/client-build-manifest.json +1 -1
  104. package/.next/standalone/.next/server/pages/webview.js +2 -2
  105. package/.next/standalone/.next/server/pages/webview.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/pages/zh-CN/404.html +1 -1
  107. package/.next/standalone/.next/server/pages/zh-CN/500.html +1 -1
  108. package/.next/standalone/.next/server/pages/zh-TW/404.html +1 -1
  109. package/.next/standalone/.next/server/pages/zh-TW/500.html +1 -1
  110. package/.next/standalone/.next/static/{WXAyTQ0PHZnxXXCwEZpit → 5mb_D_gy6E3wsT_BhuXDS}/_buildManifest.js +4 -4
  111. package/.next/standalone/.next/static/chunks/0-ku865ak6iur.js +1 -0
  112. package/.next/standalone/.next/static/chunks/{17deooyefr~9o.js → 04.g49tb8txni.js} +1 -1
  113. package/.next/standalone/.next/static/chunks/05_e09pgcymkh.js +1 -0
  114. package/.next/standalone/.next/static/chunks/{0w9~wt6~_cxhf.js → 05o-f2v7xe3_~.js} +1 -1
  115. package/.next/standalone/.next/static/chunks/06zq-2isv5vn6.js +1 -0
  116. package/.next/standalone/.next/static/chunks/{11ess6mn2988z.js → 08zfbuugw_i52.js} +3 -3
  117. package/.next/standalone/.next/static/chunks/{0lz-p_awksh5e.js → 0biwudo-tl.dw.js} +1 -1
  118. package/.next/standalone/.next/static/chunks/0dh2cf_c4gz65.js +1 -0
  119. package/.next/standalone/.next/static/chunks/0fwnzw~qq_abm.js +1 -0
  120. package/.next/standalone/.next/static/chunks/{00ziyk306y55s.js → 0g2qc5wv7c9.a.js} +1 -1
  121. package/.next/standalone/.next/static/chunks/0gjtphww9wtey.js +12 -0
  122. package/.next/standalone/.next/static/chunks/0om8~g_7-c-x5.js +12 -0
  123. package/.next/standalone/.next/static/chunks/{17et6y09q052u.js → 0qc36tzow-sbz.js} +1 -1
  124. package/.next/standalone/.next/static/chunks/{0if5fmp94~nc2.js → 0qr~rkd5sq-yp.js} +5 -5
  125. package/.next/standalone/.next/static/chunks/{0y3fmkya..f_6.js → 0qwvk-uq944-d.js} +3 -3
  126. package/.next/standalone/.next/static/chunks/{095e2xf3z6x3g.js → 0r_ynb..7ongv.js} +4 -4
  127. package/.next/standalone/.next/static/chunks/{010m3dplwy4n6.js → 0ryghnq7iy47v.js} +3 -3
  128. package/.next/standalone/.next/static/chunks/0se1ra8f1bor~.js +1 -0
  129. package/.next/standalone/.next/static/chunks/{0pw-284q1gfk3.js → 0szz-2.f~11pz.js} +1 -1
  130. package/.next/standalone/.next/static/chunks/{0u-1zto-umjh9.js → 0t2val7bf4~s7.js} +1 -1
  131. package/.next/standalone/.next/static/chunks/{08xz_z9u4ex9t.js → 0tgkw7pjpp21_.js} +1 -1
  132. package/.next/standalone/.next/static/chunks/{04uzwc8c9u49~.js → 0u9dn7tzog.gz.js} +1 -1
  133. package/.next/standalone/.next/static/chunks/{0jxk8j~j30thp.js → 0u9yrtrs1bktp.js} +1 -1
  134. package/.next/standalone/.next/static/chunks/{0f81tdf_8utww.js → 0wdd71tayg8y1.js} +1 -1
  135. package/.next/standalone/.next/static/chunks/{0h~_fdj60t_~l.js → 0~vm4d30sl9ii.js} +1 -1
  136. package/.next/standalone/.next/static/chunks/107edt81z_gzy.css +3 -0
  137. package/.next/standalone/.next/static/chunks/{0t0-4sn-nqqld.js → 128d.rbx4e4rt.js} +1 -1
  138. package/.next/standalone/.next/static/chunks/132lgf3mld2ax.js +1 -0
  139. package/.next/standalone/.next/static/chunks/{07v3udp2qhc02.js → 17jdo1q-xb24-.js} +1 -1
  140. package/.next/standalone/.next/static/chunks/184~yri~m3wao.css +1 -0
  141. package/.next/standalone/.next/static/chunks/{turbopack-0.28.d-q12n3p.js → turbopack-066o21-32lo7n.js} +1 -1
  142. package/.next/standalone/.next/static/chunks/{turbopack-0-itu0o9y_vq8.js → turbopack-0abq2d._xmt7y.js} +1 -1
  143. package/.next/standalone/.next/static/chunks/{turbopack-0h0~tr4tgq3aa.js → turbopack-0sisjg~-koq5w.js} +1 -1
  144. package/.next/standalone/.next/static/chunks/{turbopack-0qmx66h203l93.js → turbopack-11tk4snp~dxd4.js} +1 -1
  145. package/.next/standalone/.next/static/chunks/{turbopack-0g80nrinbfgtk.js → turbopack-17.piokhhz77b.js} +1 -1
  146. package/.next/standalone/messages/de/session.json +3 -1
  147. package/.next/standalone/messages/en/session.json +3 -1
  148. package/.next/standalone/messages/es/session.json +3 -1
  149. package/.next/standalone/messages/fr/session.json +3 -1
  150. package/.next/standalone/messages/ja/session.json +3 -1
  151. package/.next/standalone/messages/ko/session.json +3 -1
  152. package/.next/standalone/messages/pt-BR/session.json +3 -1
  153. package/.next/standalone/messages/ru/session.json +3 -1
  154. package/.next/standalone/messages/tr/session.json +3 -1
  155. package/.next/standalone/messages/zh-CN/session.json +3 -1
  156. package/.next/standalone/messages/zh-TW/session.json +3 -1
  157. package/.next/standalone/package.json +4 -3
  158. package/.next/standalone/server.js +1 -1
  159. package/dist/server.js +268 -6
  160. package/package.json +4 -3
  161. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07i-oza._.js +0 -3
  162. package/.next/standalone/.next/server/chunks/ssr/_0iy5a-w._.js +0 -7
  163. package/.next/standalone/.next/server/chunks/ssr/_0qbbxeq._.js +0 -7
  164. package/.next/standalone/.next/server/chunks/ssr/node_modules_0kc8lix._.js +0 -3
  165. package/.next/standalone/.next/server/chunks/ssr/node_modules_highlight_js_lib_core_0h1yngz.js +0 -3
  166. package/.next/standalone/.next/static/chunks/0-xrsiia9hc.c.js +0 -1
  167. package/.next/standalone/.next/static/chunks/04bbxzycy0y90.js +0 -1
  168. package/.next/standalone/.next/static/chunks/05oh32ya2uzfq.js +0 -1
  169. package/.next/standalone/.next/static/chunks/06e51nokt~dtt.js +0 -1
  170. package/.next/standalone/.next/static/chunks/06ypydsl._u~2.js +0 -5
  171. package/.next/standalone/.next/static/chunks/071neb1eikeoh.js +0 -1
  172. package/.next/standalone/.next/static/chunks/09tinkgkd8br_.js +0 -1
  173. package/.next/standalone/.next/static/chunks/0m_amua611xl0.js +0 -5
  174. package/.next/standalone/.next/static/chunks/0o6esya.vhm1..js +0 -1
  175. package/.next/standalone/.next/static/chunks/0z3gpm0o.mwwy.css +0 -3
  176. package/.next/standalone/.next/static/chunks/0~ei.a78nuwqe.js +0 -1
  177. package/.next/standalone/.next/static/chunks/10r8rypk5fanv.js +0 -1
  178. package/.next/standalone/.next/static/chunks/13zzmkwag6vsm.css +0 -1
  179. /package/.next/standalone/.next/static/{WXAyTQ0PHZnxXXCwEZpit → 5mb_D_gy6E3wsT_BhuXDS}/_clientMiddlewareManifest.js +0 -0
  180. /package/.next/standalone/.next/static/{WXAyTQ0PHZnxXXCwEZpit → 5mb_D_gy6E3wsT_BhuXDS}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,51372,e=>{"use strict";let t,n;var a=e.i(391398),r=e.i(191788),l=e.i(352819),i=e.i(432237),o=e.i(398957),s=e.i(972733),u=e.i(199648),d=e.i(679935),c=e.i(939310),f=e.i(335288),p=e.i(806185),m=e.i(490034),h=e.i(407506);let g=e=>e?.activePaneId?(0,p.collectPanes)(e.root).find(t=>t.id===e.activePaneId)??null:null;var x=e.i(453783),b=e.i(982960),v=e.i(730943);function y({groupSize:e,panelElement:t,styleProp:n}){let a,[r,l]=function(e){switch(typeof e){case"number":return[e,"px"];case"string":{let t=parseFloat(e);return e.endsWith("%")?[t,"%"]:e.endsWith("px")?[t,"px"]:e.endsWith("rem")?[t,"rem"]:e.endsWith("em")?[t,"em"]:e.endsWith("vh")?[t,"vh"]:e.endsWith("vw")?[t,"vw"]:[t,"%"]}}}(n);switch(l){case"%":a=r/100*e;break;case"px":a=r;break;case"rem":a=r*parseFloat(getComputedStyle(t.ownerDocument.body).fontSize);break;case"em":a=r*parseFloat(getComputedStyle(t).fontSize);break;case"vh":a=r/100*window.innerHeight;break;case"vw":a=r/100*window.innerWidth}return a}function w(e){return parseFloat(e.toFixed(3))}function S({group:e}){let{orientation:t,panels:n}=e;return n.reduce((e,n)=>e+="horizontal"===t?n.element.offsetWidth:n.element.offsetHeight,0)}function C(e){let{panels:t}=e,n=S({group:e});return 0===n?t.map(e=>({groupResizeBehavior:e.panelConstraints.groupResizeBehavior,collapsedSize:0,collapsible:!0===e.panelConstraints.collapsible,defaultSize:void 0,disabled:e.panelConstraints.disabled,minSize:0,maxSize:100,panelId:e.id})):t.map(e=>{let t,{element:a,panelConstraints:r}=e,l=0;void 0!==r.collapsedSize&&(l=w(y({groupSize:n,panelElement:a,styleProp:r.collapsedSize})/n*100)),void 0!==r.defaultSize&&(t=w(y({groupSize:n,panelElement:a,styleProp:r.defaultSize})/n*100));let i=0;void 0!==r.minSize&&(i=w(y({groupSize:n,panelElement:a,styleProp:r.minSize})/n*100));let o=100;return void 0!==r.maxSize&&(o=w(y({groupSize:n,panelElement:a,styleProp:r.maxSize})/n*100)),{groupResizeBehavior:r.groupResizeBehavior,collapsedSize:l,collapsible:!0===r.collapsible,defaultSize:t,disabled:r.disabled,minSize:i,maxSize:o,panelId:e.id}})}function j(e,t="Assertion error"){if(!e)throw Error(t)}function k(e,t){return Array.from(t).sort("horizontal"===e?N:z)}function N(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return 0!==n?n:e.element.offsetWidth-t.element.offsetWidth}function z(e,t){let n=e.element.offsetTop-t.element.offsetTop;return 0!==n?n:e.element.offsetHeight-t.element.offsetHeight}function T(e){return null!==e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function P(e,t){return{x:e.x>=t.left&&e.x<=t.right?0:Math.min(Math.abs(e.x-t.left),Math.abs(e.x-t.right)),y:e.y>=t.top&&e.y<=t.bottom?0:Math.min(Math.abs(e.y-t.top),Math.abs(e.y-t.bottom))}}function R(e){let{element:n,orientation:a,panels:r,separators:l}=e,i=k(a,Array.from(n.children).filter(T).map(e=>({element:e}))).map(({element:e})=>e),o=[],s=!1,u=!1,d=-1,c=-1,f=0,p,m=[];{let e=-1;for(let t of i)t.hasAttribute("data-panel")&&(e++,t.hasAttribute("data-disabled")||(f++,-1===d&&(d=e),c=e))}if(f>1){let n=-1;for(let f of i)if(f.hasAttribute("data-panel")){n++;let l=r.find(e=>e.element===f);if(l){if(p){let r,i=p.element.getBoundingClientRect(),h=f.getBoundingClientRect();if(u){let e="horizontal"===a?new DOMRect(i.right,i.top,0,i.height):new DOMRect(i.left,i.bottom,i.width,0),t="horizontal"===a?new DOMRect(h.left,h.top,0,h.height):new DOMRect(h.left,h.top,h.width,0);switch(m.length){case 0:r=[e,t];break;case 1:{let n=m[0],l=function({orientation:e,rects:t,targetRect:n}){let a={x:n.x+n.width/2,y:n.y+n.height/2},r,l=Number.MAX_VALUE;for(let n of t){let{x:t,y:i}=P(a,n),o="horizontal"===e?t:i;o<l&&(l=o,r=n)}return j(r,"No rect found"),r}({orientation:a,rects:[i,h],targetRect:n.element.getBoundingClientRect()});r=[n,l===i?t:e];break}default:r=m}}else r=m.length?m:["horizontal"===a?new DOMRect(i.right,h.top,h.left-i.right,h.height):new DOMRect(h.left,i.bottom,h.width,h.top-i.bottom)];for(let a of r){let r="width"in a?a:a.element.getBoundingClientRect(),i=(void 0===t&&(t="function"==typeof matchMedia&&!!matchMedia("(pointer:coarse)").matches),t)?e.resizeTargetMinimumSize.coarse:e.resizeTargetMinimumSize.fine;if(r.width<i){let e=i-r.width;r=new DOMRect(r.x-e/2,r.y,r.width+e,r.height)}if(r.height<i){let e=i-r.height;r=new DOMRect(r.x,r.y-e/2,r.width,r.height+e)}let u=n<=d||n>c;s||u||o.push({group:e,groupSize:S({group:e}),panels:[p,l],separator:"width"in a?void 0:a,rect:r}),s=!1}}u=!1,p=l,m=[]}}else if(f.hasAttribute("data-separator")){null!==f.ariaDisabled&&(s=!0);let e=l.find(e=>e.element===f);e?m.push(e):(p=void 0,m=[])}else u=!0}return o}class L{#e={};addListener(e,t){let n=this.#e[e];return void 0===n?this.#e[e]=[t]:n.includes(t)||n.push(t),()=>{this.removeListener(e,t)}}emit(e,t){let n=this.#e[e];if(void 0!==n)if(1===n.length)n[0].call(null,t);else{let e=!1,a=null,r=Array.from(n);for(let n=0;n<r.length;n++){let l=r[n];try{l.call(null,t)}catch(t){null===a&&(e=!0,a=t)}}if(e)throw a}}removeAllListeners(){this.#e={}}removeListener(e,t){let n=this.#e[e];if(void 0!==n){let e=n.indexOf(t);e>=0&&n.splice(e,1)}}}let E=new Map,I=new L;function D(e,t){for(let[t]of E)if(t.id===e)return t}function M(e,t){for(let[t,n]of E)if(t.id===e)return n;if(t)throw Error(`Could not find data for Group with id ${e}`)}function A(e,t){return I.addListener("groupChange",n=>{n.group.id===e&&t(n)})}function $(e,t){let n=E.get(e);(E=new Map(E)).set(e,t),I.emit("groupChange",{group:e,prev:n,next:t})}let F=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function O(e){let t=e.length;for(;t--;){let n=e[t];if(j(n,"Missing node"),function(e){let t,n=getComputedStyle(e);return!!("fixed"===n.position||"auto"!==n.zIndex&&("static"!==n.position||"flex"===(t=getComputedStyle(G(e)??e).display)||"inline-flex"===t)||1>+n.opacity||"transform"in n&&"none"!==n.transform||"webkitTransform"in n&&"none"!==n.webkitTransform||"mixBlendMode"in n&&"normal"!==n.mixBlendMode||"filter"in n&&"none"!==n.filter||"webkitFilter"in n&&"none"!==n.webkitFilter||"isolation"in n&&"isolate"===n.isolation||F.test(n.willChange)||"touch"===n.webkitOverflowScrolling)}(n))return n}return null}function B(e){return e&&Number(getComputedStyle(e).zIndex)||0}function W(e){let t=[];for(;e;)t.push(e),e=G(e);return t}function G(e){let{parentNode:t}=e;return null!==t&&"object"==typeof t&&"nodeType"in t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE?t.host:t}function _(e,t){let n=[];return t.forEach((t,a)=>{if(a.disabled)return;let r=R(a),l=function(e,t,n){let a,r={x:1/0,y:1/0};for(let l of t){let t=P(n,l.rect);switch(e){case"horizontal":t.x<=r.x&&(a=l,r=t);break;case"vertical":t.y<=r.y&&(a=l,r=t)}}return a?{distance:r,hitRegion:a}:void 0}(a.orientation,r,{x:e.clientX,y:e.clientY});l&&l.distance.x<=0&&l.distance.y<=0&&function({groupElement:e,hitRegion:t,pointerEventTarget:n}){if(!T(n)||n.contains(e)||e.contains(n))return!0;if(function(e,t){let n;if(e===t)throw Error("Cannot compare node with itself");let a={a:W(e),b:W(t)};for(;a.a.at(-1)===a.b.at(-1);)n=a.a.pop(),a.b.pop();j(n,"Stacking order can only be calculated for elements with a common ancestor");let r={a:B(O(a.a)),b:B(O(a.b))};if(r.a===r.b){let e=n.childNodes,t={a:a.a.at(-1),b:a.b.at(-1)},r=e.length;for(;r--;){let n=e[r];if(n===t.a)return 1;if(n===t.b)return -1}}return Math.sign(r.a-r.b)}(n,e)>0){let r=n;for(;r;){var a;if(r.contains(e))break;if(a=r.getBoundingClientRect(),a.x<t.x+t.width&&a.x+a.width>t.x&&a.y<t.y+t.height&&a.y+a.height>t.y)return!1;r=r.parentElement}}return!0}({groupElement:a.element,hitRegion:l.hitRegion.rect,pointerEventTarget:e.target})&&n.push(l.hitRegion)}),n}function U(e,t,n=0){return Math.abs(w(e)-w(t))<=n}function q(e,t){return U(e,t)?0:e>t?1:-1}function V({overrideDisabledPanels:e,panelConstraints:t,prevSize:n,size:a}){let{collapsedSize:r=0,collapsible:l,disabled:i,maxSize:o=100,minSize:s=0}=t;return i&&!e?n:(0>q(a,s)&&(a=l&&0>q(a,(r+s)/2)?r:s),w(a=Math.min(o,a)))}function H({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:a,prevLayout:r,trigger:l}){if(U(e,0))return t;let i="imperative-api"===l,o=Object.values(t),s=Object.values(r),u=[...o],[d,c]=a;j(null!=d,"Invalid first pivot index"),j(null!=c,"Invalid second pivot index");let f=0;if("keyboard"===l){{let t=e<0?c:d,a=n[t];j(a,`Panel constraints not found for index ${t}`);let{collapsedSize:r=0,collapsible:l,minSize:i=0}=a;if(l){let n=o[t];if(j(null!=n,`Previous layout not found for panel index ${t}`),U(n,r)){let t=i-n;q(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let t=e<0?d:c,a=n[t];j(a,`No panel constraints found for index ${t}`);let{collapsedSize:r=0,collapsible:l,minSize:i=0}=a;if(l){let n=o[t];if(j(null!=n,`Previous layout not found for panel index ${t}`),U(n,i)){let t=n-r;q(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}else{let t=e<0?c:d,a=n[t];j(a,`Panel constraints not found for index ${t}`);let r=o[t],{collapsible:l,collapsedSize:i,minSize:s}=a;if(l&&0>q(r,s))if(e>0){let t=s-i;0>q(r+e,s)&&(e=0>=q(e,t/2)?0:t)}else{let t=s-i;0>q(r-e,s)&&(e=q(100+e,100-t/2)>0?0:-t)}}{let t=e<0?1:-1,a=e<0?c:d,r=0;for(;;){let e=o[a];if(j(null!=e,`Previous layout not found for panel index ${a}`),r+=V({overrideDisabledPanels:i,panelConstraints:n[a],prevSize:e,size:100})-e,(a+=t)<0||a>=n.length)break}let l=Math.min(Math.abs(e),Math.abs(r));e=e<0?0-l:l}{let t=e<0?d:c;for(;t>=0&&t<n.length;){let a=Math.abs(e)-Math.abs(f),r=o[t];j(null!=r,`Previous layout not found for panel index ${t}`);let l=r-a,s=V({overrideDisabledPanels:i,panelConstraints:n[t],prevSize:r,size:l});if(!U(r,s)&&(f+=r-s,u[t]=s,f.toFixed(3).localeCompare(Math.abs(e).toFixed(3),void 0,{numeric:!0})>=0))break;e<0?t--:t++}}if(function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}(s,u))return r;{let t=e<0?c:d,a=o[t];j(null!=a,`Previous layout not found for panel index ${t}`);let r=a+f,l=V({overrideDisabledPanels:i,panelConstraints:n[t],prevSize:a,size:r});if(u[t]=l,!U(l,r)){let t=r-l,a=e<0?c:d;for(;a>=0&&a<n.length;){let r=u[a];j(null!=r,`Previous layout not found for panel index ${a}`);let l=r+t,o=V({overrideDisabledPanels:i,panelConstraints:n[a],prevSize:r,size:l});if(U(r,o)||(t-=o-r,u[a]=o),U(t,0))break;e>0?a--:a++}}}if(!U(Object.values(u).reduce((e,t)=>t+e,0),100,.1))return r;let p=Object.keys(r);return u.reduce((e,t,n)=>(e[p[n]]=t,e),{})}function X(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(void 0===t[n]||0!==q(e[n],t[n]))return!1;return!0}function K({layout:e,panelConstraints:t}){let n=Object.values(e),a=[...n],r=a.reduce((e,t)=>e+t,0);if(a.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${a.map(e=>`${e}%`).join(", ")}`);if(!U(r,100)&&a.length>0)for(let e=0;e<t.length;e++){let t=a[e];j(null!=t,`No layout data found for index ${e}`);let n=100/r*t;a[e]=n}let l=0;for(let e=0;e<t.length;e++){let r=n[e];j(null!=r,`No layout data found for index ${e}`);let i=a[e];j(null!=i,`No layout data found for index ${e}`);let o=V({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:r,size:i});i!=o&&(l+=i-o,a[e]=o)}if(!U(l,0))for(let e=0;e<t.length;e++){let n=a[e];j(null!=n,`No layout data found for index ${e}`);let r=n+l,i=V({overrideDisabledPanels:!0,panelConstraints:t[e],prevSize:n,size:r});if(n!==i&&(l-=i-n,a[e]=i,U(l,0)))break}let i=Object.keys(e);return a.reduce((e,t,n)=>(e[i[n]]=t,e),{})}function Y({groupId:e,panelId:t}){let n=()=>{for(let[t,{defaultLayoutDeferred:n,derivedPanelConstraints:a,layout:r,groupSize:l,separatorToPanels:i}]of E)if(t.id===e)return{defaultLayoutDeferred:n,derivedPanelConstraints:a,group:t,groupSize:l,layout:r,separatorToPanels:i};throw Error(`Group ${e} not found`)},a=()=>{let e=n().derivedPanelConstraints.find(e=>e.panelId===t);if(void 0!==e)return e;throw Error(`Panel constraints not found for Panel ${t}`)},r=()=>{let e=n().group.panels.find(e=>e.id===t);if(void 0!==e)return e;throw Error(`Layout not found for Panel ${t}`)},l=()=>{let e=n().layout[t];if(void 0!==e)return e;throw Error(`Layout not found for Panel ${t}`)},i=e=>{let a=l();if(e===a)return;let{defaultLayoutDeferred:r,derivedPanelConstraints:i,group:o,groupSize:s,layout:u,separatorToPanels:d}=n(),c=o.panels.findIndex(e=>e.id===t),f=c===o.panels.length-1,p=K({layout:H({delta:f?a-e:e-a,initialLayout:u,panelConstraints:i,pivotIndices:f?[c-1,c]:[c,c+1],prevLayout:u,trigger:"imperative-api"}),panelConstraints:i});X(u,p)||$(o,{defaultLayoutDeferred:r,derivedPanelConstraints:i,groupSize:s,layout:p,separatorToPanels:d})};return{collapse:()=>{let{collapsible:e,collapsedSize:t}=a(),{mutableValues:n}=r(),o=l();e&&o!==t&&(n.expandToSize=o,i(t))},expand:()=>{let{collapsible:e,collapsedSize:t,minSize:n}=a(),{mutableValues:o}=r(),s=l();if(e&&s===t){let e=o.expandToSize??n;0===e&&(e=1),i(e)}},getSize:()=>{let{group:e}=n(),t=l(),{element:a}=r();return{asPercentage:t,inPixels:"horizontal"===e.orientation?a.offsetWidth:a.offsetHeight}},isCollapsed:()=>{let{collapsible:e,collapsedSize:t}=a(),n=l();return e&&U(t,n)},resize:e=>{let{group:t}=n(),{element:a}=r(),l=S({group:t});i(w(y({groupSize:l,panelElement:a,styleProp:e})/l*100))}}}function J(e){e.defaultPrevented||_(e,E).forEach(t=>{if(t.separator&&!t.separator.disableDoubleClick){let n=t.panels.find(e=>void 0!==e.panelConstraints.defaultSize);if(n){let a=n.panelConstraints.defaultSize,r=Y({groupId:t.group.id,panelId:n.id});r&&void 0!==a&&(r.resize(a),e.preventDefault())}}})}function Q(e){for(let[t]of E)if(t.separators.some(t=>t.element===e))return t;throw Error("Could not find parent Group for separator element")}function Z({groupId:e}){let t=()=>{for(let[t,n]of E)if(t.id===e)return{group:t,...n};throw Error(`Could not find Group with id "${e}"`)};return{getLayout(){let{defaultLayoutDeferred:e,layout:n}=t();return e?{}:n},setLayout(e){let{defaultLayoutDeferred:n,derivedPanelConstraints:a,group:r,groupSize:l,layout:i,separatorToPanels:o}=t(),s=K({layout:e,panelConstraints:a});return n?i:(X(i,s)||$(r,{defaultLayoutDeferred:n,derivedPanelConstraints:a,groupSize:l,layout:s,separatorToPanels:o}),s)}}}function ee(e,t){let n=Q(e),a=M(n.id,!0),r=n.separators.find(t=>t.element===e);j(r,"Matching separator not found");let l=a.separatorToPanels.get(r);j(l,"Matching panels not found");let i=l.map(e=>n.panels.indexOf(e)),o=Z({groupId:n.id}).getLayout(),s=K({layout:H({delta:t,initialLayout:o,panelConstraints:a.derivedPanelConstraints,pivotIndices:i,prevLayout:o,trigger:"keyboard"}),panelConstraints:a.derivedPanelConstraints});X(o,s)||$(n,{defaultLayoutDeferred:a.defaultLayoutDeferred,derivedPanelConstraints:a.derivedPanelConstraints,groupSize:a.groupSize,layout:s,separatorToPanels:a.separatorToPanels})}function et(e){if(e.defaultPrevented)return;let t=e.currentTarget,n=Q(t);if(!n.disabled)switch(e.key){case"ArrowDown":e.preventDefault(),"vertical"===n.orientation&&ee(t,5);break;case"ArrowLeft":e.preventDefault(),"horizontal"===n.orientation&&ee(t,-5);break;case"ArrowRight":e.preventDefault(),"horizontal"===n.orientation&&ee(t,5);break;case"ArrowUp":e.preventDefault(),"vertical"===n.orientation&&ee(t,-5);break;case"End":e.preventDefault(),ee(t,100);break;case"Enter":{e.preventDefault();let n=Q(t),{derivedPanelConstraints:a,layout:r,separatorToPanels:l}=M(n.id,!0),i=n.separators.find(e=>e.element===t);j(i,"Matching separator not found");let o=l.get(i);j(o,"Matching panels not found");let s=o[0],u=a.find(e=>e.panelId===s.id);if(j(u,"Panel metadata not found"),u.collapsible){let e=r[s.id];ee(t,(u.collapsedSize===e?n.mutableState.expandedPanelSizes[s.id]??u.minSize:u.collapsedSize)-e)}break}case"F6":{e.preventDefault();let n=Q(t).separators.map(e=>e.element),a=Array.from(n).findIndex(t=>t===e.currentTarget);j(null!==a,"Index not found");let r=e.shiftKey?a>0?a-1:n.length-1:a+1<n.length?a+1:0;n[r].focus({preventScroll:!0});break}case"Home":e.preventDefault(),ee(t,-100)}}let en={cursorFlags:0,state:"inactive"},ea=new L;function er(e){let t=en;en=e,ea.emit("change",{prev:t,next:e})}function el(e){if(e.defaultPrevented||"mouse"===e.pointerType&&e.button>0)return;let t=E,n=_(e,t),a=new Map,r=!1;n.forEach(e=>{e.separator&&(r||(r=!0,e.separator.element.focus({preventScroll:!0})));let n=t.get(e.group);n&&a.set(e.group,n.layout)}),er({cursorFlags:0,hitRegions:n,initialLayoutMap:a,pointerDownAtPoint:{x:e.clientX,y:e.clientY},state:"active"}),n.length&&e.preventDefault()}let ei=e=>e,eo=()=>{};function es(){return void 0===n&&(n=!1,"u">typeof window&&(window.navigator.userAgent.includes("Chrome")||window.navigator.userAgent.includes("Firefox"))&&(n=!0)),n}let eu=new WeakMap;function ed(e){if(null===e.defaultView||void 0===e.defaultView)return;let{prevStyle:t,styleSheet:n}=eu.get(e)??{};void 0===n&&(n=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets&&e.adoptedStyleSheets.push(n));let a=en;switch(a.state){case"active":case"hover":{let e=function({cursorFlags:e,groups:t,state:n}){let a=0,r=0;switch(n){case"active":case"hover":t.forEach(e=>{if(!e.mutableState.disableCursor)switch(e.orientation){case"horizontal":a++;break;case"vertical":r++}})}if(0!==a||0!==r){if("active"===n&&e&&es()){let t=(4&e)!=0,n=(8&e)!=0;if((1&e)!=0)return t?"se-resize":n?"ne-resize":"e-resize";if((2&e)!=0)return t?"sw-resize":n?"nw-resize":"w-resize";if(t)return"s-resize";if(n)return"n-resize"}return es()?a>0&&r>0?"move":a>0?"ew-resize":"ns-resize":a>0&&r>0?"grab":a>0?"col-resize":"row-resize"}}({cursorFlags:a.cursorFlags,groups:a.hitRegions.map(e=>e.group),state:a.state}),r=`*, *:hover {cursor: ${e} !important; }`;if(t===r)return;t=r,e?0===n.cssRules.length?n.insertRule(r):n.replaceSync(r):1===n.cssRules.length&&n.deleteRule(0);break}case"inactive":t=void 0,1===n.cssRules.length&&n.deleteRule(0)}eu.set(e,{prevStyle:t,styleSheet:n})}function ec({document:e,event:t,hitRegions:n,initialLayoutMap:a,mountedGroups:r,pointerDownAtPoint:l,prevCursorFlags:i}){var o;let s,u,d=0;n.forEach(e=>{let{group:n,groupSize:i}=e,{orientation:o,panels:s}=n,{disableCursor:u}=n.mutableState,c=0;c=l?"horizontal"===o?(t.clientX-l.x)/i*100:(t.clientY-l.y)/i*100:"horizontal"===o?t.clientX<0?-100:100:t.clientY<0?-100:100;let f=a.get(n),p=r.get(n);if(!f||!p)return;let{defaultLayoutDeferred:m,derivedPanelConstraints:h,groupSize:g,layout:x,separatorToPanels:b}=p;if(h&&x&&b){let t=H({delta:c,initialLayout:f,panelConstraints:h,pivotIndices:e.panels.map(e=>s.indexOf(e)),prevLayout:x,trigger:"mouse-or-touch"});if(X(t,x)){if(0!==c&&!u)switch(o){case"horizontal":d|=c<0?1:2;break;case"vertical":d|=c<0?4:8}}else $(e.group,{defaultLayoutDeferred:m,derivedPanelConstraints:h,groupSize:g,layout:t,separatorToPanels:b})}});let c=0;0===t.movementX?c|=3&i:c|=3&d,0===t.movementY?c|=12&i:c|=12&d,o=c,s=en,(u={...en}).cursorFlags=o,en=u,ea.emit("change",{prev:s,next:u}),ed(e)}function ef(e){let t=E,n=en;"active"===n.state&&ec({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t,prevCursorFlags:n.cursorFlags})}function ep(e){if(e.defaultPrevented)return;let t=en,n=E;if("active"===t.state){if(0===e.buttons){er({cursorFlags:0,state:"inactive"}),t.hitRegions.forEach(e=>{let t=M(e.group.id,!0);$(e.group,t)});return}for(let n of t.hitRegions)if(n.separator){let{element:t}=n.separator;t.hasPointerCapture?.(e.pointerId)||t.setPointerCapture?.(e.pointerId)}ec({document:e.currentTarget,event:e,hitRegions:t.hitRegions,initialLayoutMap:t.initialLayoutMap,mountedGroups:n,pointerDownAtPoint:t.pointerDownAtPoint,prevCursorFlags:t.cursorFlags})}else{let a=_(e,n);0===a.length?"inactive"!==t.state&&er({cursorFlags:0,state:"inactive"}):er({cursorFlags:0,hitRegions:a,state:"hover"}),ed(e.currentTarget)}}function em(e){e.relatedTarget instanceof HTMLIFrameElement&&"hover"===en.state&&er({cursorFlags:0,state:"inactive"})}function eh(e){if(e.defaultPrevented||"mouse"===e.pointerType&&e.button>0)return;let t=en;"active"===t.state&&(er({cursorFlags:0,state:"inactive"}),t.hitRegions.length>0&&(ed(e.currentTarget),t.hitRegions.forEach(e=>{let t=M(e.group.id,!0);$(e.group,t)}),e.preventDefault()))}function eg(e){let t=0,n=0,a={};for(let r of e)if(void 0!==r.defaultSize){t++;let e=w(r.defaultSize);n+=e,a[r.panelId]=e}else a[r.panelId]=void 0;let r=e.length-t;if(0!==r){let t=w((100-n)/r);for(let n of e)void 0===n.defaultSize&&(a[n.panelId]=t)}return a}let ex=new Map;function eb(e){let t=(0,r.useId)();return`${e??t}`}let ev="u">typeof window?r.useLayoutEffect:r.useEffect;function ey(e){let t=(0,r.useRef)(e);return ev(()=>{t.current=e},[e]),(0,r.useCallback)((...e)=>t.current?.(...e),[t])}function ew(...e){return ey(t=>{e.forEach(e=>{if(e)switch(typeof e){case"function":e(t);break;case"object":e.current=t}})})}function eS(e){let t=(0,r.useRef)({...e});return ev(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}let eC=(0,r.createContext)(null);function ej({children:e,className:t,defaultLayout:n,disableCursor:l,disabled:i,elementRef:o,groupRef:s,id:u,onLayoutChange:d,onLayoutChanged:c,orientation:f="horizontal",resizeTargetMinimumSize:p={coarse:20,fine:10},style:m,...h}){let g,x=(0,r.useRef)({onLayoutChange:{},onLayoutChanged:{}}),b=ey(e=>{X(x.current.onLayoutChange,e)||(x.current.onLayoutChange=e,d?.(e))}),v=ey(e=>{X(x.current.onLayoutChanged,e)||(x.current.onLayoutChanged=e,c?.(e))}),y=eb(u),N=(0,r.useRef)(null),[z,T]=function(){let[e,t]=(0,r.useState)({});return[e,(0,r.useCallback)(()=>t({}),[])]}(),P=(0,r.useRef)({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:p,separators:[]}),L=ew(N,o);g=(0,r.useRef)({getLayout:()=>({}),setLayout:ei}),(0,r.useImperativeHandle)(s,()=>g.current,[]),ev(()=>{Object.assign(g.current,Z({groupId:y}))});let I=ey((e,t)=>{let a=en,r=D(e),l=M(e);if(l){let e=!1;return"active"===a.state&&(e=a.hitRegions.some(e=>e.group===r)),{flexGrow:l.layout[t]??1,pointerEvents:e?"none":void 0}}if(n?.[t])return{flexGrow:n?.[t]}}),F=eS({defaultLayout:n,disableCursor:l}),O=(0,r.useMemo)(()=>({get disableCursor(){return!!F.disableCursor},getPanelStyles:I,id:y,orientation:f,registerPanel:e=>{let t=P.current;return t.panels=k(f,[...t.panels,e]),T(),()=>{t.panels=t.panels.filter(t=>t!==e),T()}},registerSeparator:e=>{let t=P.current;return t.separators=k(f,[...t.separators,e]),T(),()=>{t.separators=t.separators.filter(t=>t!==e),T()}},updatePanelProps:(e,{disabled:t})=>{let n=P.current.panels.find(t=>t.id===e);n&&(n.panelConstraints.disabled=t);let a=D(y),r=M(y);a&&r&&$(a,{...r,derivedPanelConstraints:C(a)})},updateSeparatorProps:(e,{disabled:t,disableDoubleClick:n})=>{let a=P.current.separators.find(t=>t.id===e);a&&(a.disabled=t,a.disableDoubleClick=n)}}),[I,y,T,f,F]),B=(0,r.useRef)(null);return ev(()=>{let e,t,n,a,r,l,o,s,u,d,c,p,m,h=N.current;if(null===h)return;let g=P.current;if(void 0!==F.defaultLayout&&Object.keys(F.defaultLayout).length===g.panels.length)for(let t of(e={},g.panels)){let n=F.defaultLayout[t.id];void 0!==n&&(e[t.id]=n)}let x={disabled:!!i,element:h,id:y,mutableState:{defaultLayout:e,disableCursor:!!F.disableCursor,expandedPanelSizes:P.current.lastExpandedPanelSizes,layouts:P.current.layouts},orientation:f,panels:g.panels,resizeTargetMinimumSize:g.resizeTargetMinimumSize,separators:g.separators};B.current=x;let k=(t=!0,j(x.element.ownerDocument.defaultView,"Cannot register an unmounted Group"),n=x.element.ownerDocument.defaultView.ResizeObserver,a=new Set,r=new Set,(l=new n(e=>{for(let n of e){let{borderBoxSize:e,target:a}=n;if(a===x.element){if(t){let e=S({group:x});if(0===e)return;let t=M(x.id);if(!t)return;let n=C(x),a=t.defaultLayoutDeferred?eg(n):t.layout,r=K({layout:function({group:e,nextGroupSize:t,prevGroupSize:n,prevLayout:a}){if(n<=0||t<=0||n===t)return a;let r=0,l=0,i=!1,o=new Map,s=[];for(let u of e.panels){let e=a[u.id]??0;if("preserve-pixel-size"===u.panelConstraints.groupResizeBehavior){i=!0;let a=w(e/100*n/t*100);o.set(u.id,a),r+=a}else s.push(u.id),l+=e}if(!i||0===s.length)return a;let u=100-r,d={...a};if(o.forEach((e,t)=>{d[t]=e}),l>0)for(let e of s){let t=a[e]??0;d[e]=w(t/l*u)}else{let e=w(u/s.length);for(let t of s)d[t]=e}return d}({group:x,nextGroupSize:e,prevGroupSize:t.groupSize,prevLayout:a}),panelConstraints:n});if(!t.defaultLayoutDeferred&&X(t.layout,r)&&function(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}(t.derivedPanelConstraints,n)&&t.groupSize===e)return;$(x,{defaultLayoutDeferred:!1,derivedPanelConstraints:n,groupSize:e,layout:r,separatorToPanels:t.separatorToPanels})}}else!function(e,t,n){if(!n[0])return;let a=e.panels.find(e=>e.element===t);if(!a||!a.onResize)return;let r=S({group:e}),l="horizontal"===e.orientation?a.element.offsetWidth:a.element.offsetHeight,i=a.mutableValues.prevSize,o={asPercentage:w(l/r*100),inPixels:l};a.mutableValues.prevSize=o,a.onResize(o,a.id,i)}(x,a,e)}})).observe(x.element),x.panels.forEach(e=>{j(!a.has(e.id),`Panel ids must be unique; id "${e.id}" was used more than once`),a.add(e.id),e.onResize&&l.observe(e.element)}),o=S({group:x}),s=C(x),u=x.panels.map(({id:e})=>e).join(","),(d=x.mutableState.defaultLayout)&&(function(e,t){let n=e.map(e=>e.id),a=Object.keys(t);if(n.length!==a.length)return!1;for(let e of n)if(!a.includes(e))return!1;return!0}(x.panels,d)||(d=void 0)),c=K({layout:x.mutableState.layouts[u]??d??eg(s),panelConstraints:s}),p=x.element.ownerDocument,ex.set(p,(ex.get(p)??0)+1),m=new Map,R(x).forEach(e=>{e.separator&&m.set(e.separator,e.panels)}),$(x,{defaultLayoutDeferred:0===o,derivedPanelConstraints:s,groupSize:o,layout:c,separatorToPanels:m}),x.separators.forEach(e=>{j(!r.has(e.id),`Separator ids must be unique; id "${e.id}" was used more than once`),r.add(e.id),e.element.addEventListener("keydown",et)}),1===ex.get(p)&&(p.addEventListener("dblclick",J,!0),p.addEventListener("pointerdown",el,!0),p.addEventListener("pointerleave",ef),p.addEventListener("pointermove",ep),p.addEventListener("pointerout",em),p.addEventListener("pointerup",eh,!0)),function(){t=!1,ex.set(p,Math.max(0,(ex.get(p)??0)-1)),(E=new Map(E)).delete(x),x.separators.forEach(e=>{e.element.removeEventListener("keydown",et)}),ex.get(p)||(p.removeEventListener("dblclick",J,!0),p.removeEventListener("pointerdown",el,!0),p.removeEventListener("pointerleave",ef),p.removeEventListener("pointermove",ep),p.removeEventListener("pointerout",em),p.removeEventListener("pointerup",eh,!0)),l.disconnect()}),{defaultLayoutDeferred:z,derivedPanelConstraints:T,layout:L}=M(x.id,!0);!z&&T.length>0&&(b(L),v(L));let I=A(y,e=>{let{defaultLayoutDeferred:t,derivedPanelConstraints:n,layout:a}=e.next;if(t||0===n.length)return;let r=x.panels.map(({id:e})=>e).join(",");x.mutableState.layouts[r]=a,n.forEach(t=>{if(t.collapsible){let{layout:n}=e.prev??{};if(n){let e=U(t.collapsedSize,a[t.panelId]),r=U(t.collapsedSize,n[t.panelId]);e&&!r&&(x.mutableState.expandedPanelSizes[t.panelId]=n[t.panelId])}}});let l="active"!==en.state;b(a),l&&v(a)});return()=>{B.current=null,k(),I()}},[i,y,v,b,f,z,F]),(0,r.useEffect)(()=>{let e=B.current;e&&(e.mutableState.defaultLayout=n,e.mutableState.disableCursor=!!l)}),(0,a.jsx)(eC.Provider,{value:O,children:(0,a.jsx)("div",{...h,className:t,"data-group":!0,"data-testid":y,id:y,ref:L,style:{height:"100%",width:"100%",overflow:"hidden",...m,display:"flex",flexDirection:"horizontal"===f?"row":"column",flexWrap:"nowrap",touchAction:"horizontal"===f?"pan-y":"pan-x"},children:e})})}function ek(){let e=(0,r.useContext)(eC);return j(e,"Group Context not found; did you render a Panel or Separator outside of a Group?"),e}function eN({children:e,className:t,collapsedSize:n="0%",collapsible:l=!1,defaultSize:i,disabled:o,elementRef:s,groupResizeBehavior:u="preserve-relative-size",id:d,maxSize:c="100%",minSize:f="0%",onResize:p,panelRef:m,style:h,...g}){let x,b=!!d,v=eb(d),y=eS({disabled:o}),w=(0,r.useRef)(null),S=ew(w,s),{getPanelStyles:C,id:j,orientation:k,registerPanel:N,updatePanelProps:z}=ek(),T=null!==p,P=ey((e,t,n)=>{p?.(e,d,n)});ev(()=>{let e=w.current;if(null!==e)return N({element:e,id:v,idIsStable:b,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:T?P:void 0,panelConstraints:{groupResizeBehavior:u,collapsedSize:n,collapsible:l,defaultSize:i,disabled:y.disabled,maxSize:c,minSize:f}})},[u,n,l,i,T,v,b,c,f,P,N,y]),(0,r.useEffect)(()=>{z(v,{disabled:o})},[o,v,z]),function(e,t){let{id:n}=ek(),a=(0,r.useRef)({collapse:eo,expand:eo,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:eo});(0,r.useImperativeHandle)(t,()=>a.current,[]),ev(()=>{Object.assign(a.current,Y({groupId:n,panelId:e}))})}(v,m);let R=()=>{let e=C(j,v);if(e)return JSON.stringify(e)},L=(0,r.useSyncExternalStore)(e=>A(j,e),R,R);return x=L?JSON.parse(L):i?{flexGrow:void 0,flexShrink:void 0,flexBasis:i}:{flexGrow:1},(0,a.jsx)("div",{...g,"data-disabled":o||void 0,"data-panel":!0,"data-testid":v,id:v,ref:S,style:{...ez,display:"flex",flexBasis:0,flexShrink:1,overflow:"visible",...x},children:(0,a.jsx)("div",{className:t,style:{maxHeight:"100%",maxWidth:"100%",flexGrow:1,overflow:"auto",...h,touchAction:"horizontal"===k?"pan-y":"pan-x"},children:e})})}ej.displayName="Group",eN.displayName="Panel";let ez={minHeight:0,maxHeight:"100%",height:"auto",minWidth:0,maxWidth:"100%",width:"auto",border:"none",borderWidth:0,padding:0,margin:0};function eT({children:e,className:t,disabled:n,disableDoubleClick:l,elementRef:i,id:o,style:s,...u}){let d,c,f=eb(o),p=eS({disabled:n,disableDoubleClick:l}),[m,h]=(0,r.useState)({}),[g,x]=(0,r.useState)("inactive"),[b,v]=(0,r.useState)(!1),y=(0,r.useRef)(null),w=ew(y,i),{disableCursor:S,id:C,orientation:j,registerSeparator:k,updateSeparatorProps:N}=ek();return ev(()=>{let e=y.current;if(null!==e){var t;let n={disabled:p.disabled,disableDoubleClick:p.disableDoubleClick,element:e,id:f},a=k(n),r=(t=e=>{x("inactive"!==e.next.state&&e.next.hitRegions.some(e=>e.separator===n)?e.next.state:"inactive")},ea.addListener("change",t)),l=A(C,e=>{let{derivedPanelConstraints:t,layout:a,separatorToPanels:r}=e.next,l=r.get(n);if(l){let e=l[0],n=l.indexOf(e);h(function({layout:e,panelConstraints:t,panelId:n,panelIndex:a}){let r,l,i=e[n],o=t.find(e=>e.panelId===n);if(o){let s=o.maxSize,u=o.collapsible?o.collapsedSize:o.minSize,d=[a,a+1];l=K({layout:H({delta:u-i,initialLayout:e,panelConstraints:t,pivotIndices:d,prevLayout:e}),panelConstraints:t})[n],r=K({layout:H({delta:s-i,initialLayout:e,panelConstraints:t,pivotIndices:d,prevLayout:e}),panelConstraints:t})[n]}return{valueControls:n,valueMax:r,valueMin:l,valueNow:i}}({layout:a,panelConstraints:t,panelId:e.id,panelIndex:n}))}});return()=>{r(),l(),a()}}},[C,f,k,p]),(0,r.useEffect)(()=>{N(f,{disabled:n,disableDoubleClick:l})},[n,l,f,N]),n&&!S&&(d="not-allowed"),c=n?"disabled":"active"===g?"active":b?"focus":g,(0,a.jsx)("div",{...u,"aria-controls":m.valueControls,"aria-disabled":n||void 0,"aria-orientation":"horizontal"===j?"vertical":"horizontal","aria-valuemax":m.valueMax,"aria-valuemin":m.valueMin,"aria-valuenow":m.valueNow,children:e,className:t,"data-separator":c,"data-testid":f,id:f,onBlur:()=>v(!1),onFocus:()=>v(!0),ref:w,role:"separator",style:{flexBasis:"auto",cursor:d,...s,flexGrow:0,flexShrink:0,touchAction:"none"},tabIndex:n?void 0:0})}eT.displayName="Separator";var eP=e.i(918324),eR=e.i(369547);let eL=(0,eR.default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);var eE=e.i(462376),eI=e.i(353533),eD=e.i(244046),eM=e.i(355327),eA=e.i(31050),e$=e.i(117653),eF=e.i(756494),eO=e.i(231382),eB=e.i(418760),eW=e.i(377181),eG=e.i(399267),e_=e.i(441693),eU=e.i(17122),eq=e.i(273062),eV=e.i(87093),eH=e.i(706140),eX=e.i(815435),eK=e.i(967086),eY=e.i(541301),eJ=e.i(767708),eQ=e.i(650001);let eZ=({entries:e,sessionName:t,sessionId:n,jsonlPath:l,sessionSummary:i,initMeta:o,sessionStats:s})=>{let{meta:u,isExpanded:d,toggleExpanded:c,collapse:f}=(0,eX.default)(e,i,o,s),p=(0,eQ.default)(l,d),{branch:m,isLoading:h}=(0,eK.default)(t),{status:g}=(0,eY.default)(t,d),x=(0,eJ.default)(t,d),b=(0,r.useRef)(null),[,v]=(0,r.useState)(0);return(0,r.useEffect)(()=>{let e=setInterval(()=>v(e=>e+1),6e4);return()=>clearInterval(e)},[]),(0,r.useEffect)(()=>{if(!d)return;let e=e=>{b.current&&!b.current.contains(e.target)&&f()},t=e=>{"Escape"===e.key&&f()};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[d,f]),(0,a.jsxs)("div",{ref:b,className:"relative shrink-0 border-b",children:[(0,a.jsxs)("div",{className:"flex cursor-pointer items-center justify-between px-4 py-1.5 hover:bg-muted/30",role:"button",tabIndex:0,onClick:c,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),c())},children:[(0,a.jsx)(eH.MetaCompact,{title:u.title,totalCost:u.totalCost,branch:m,usedPercentage:u.usedPercentage,currentContextTokens:u.currentContextTokens,contextWindowSize:u.contextWindowSize}),(0,a.jsx)(eP.ChevronDown,{size:14,className:(0,eI.cn)("shrink-0 text-muted-foreground transition-transform duration-150",d&&"rotate-180")})]}),(0,a.jsx)("div",{className:(0,eI.cn)("absolute inset-x-0 top-full z-10 origin-top border-b bg-background shadow-sm transition-all duration-150 ease-out",d?"scale-y-100 opacity-100":"pointer-events-none scale-y-95 opacity-0"),children:(0,a.jsx)("div",{className:"px-4 py-3",children:(0,a.jsx)(eH.MetaDetail,{title:u.title,sessionId:n,createdAt:u.createdAt,updatedAt:u.updatedAt,fileSize:u.fileSize,userCount:p?.userCount??u.userCount,assistantCount:p?.assistantCount??u.assistantCount,toolCount:p?.toolCount??null,toolBreakdown:p?.toolBreakdown??null,inputTokens:u.inputTokens,outputTokens:u.outputTokens,totalCost:u.totalCost,currentContextTokens:u.currentContextTokens,contextWindowSize:u.contextWindowSize,usedPercentage:u.usedPercentage,model:u.model,branch:m,isBranchLoading:h,gitStatus:g,tmuxInfo:x})})})]})},e0=({tabId:e,sessionName:t,claudeSessionId:n,cwd:i,className:o,onClose:s,onNewSession:c,scrollToBottomRef:f,addPendingMessageRef:p,removePendingMessageRef:m})=>{let h=(0,l.useTranslations)("terminal"),[g,x]=(0,r.useState)(null),b=(0,eG.default)(t=>t.tabs[e]?.claudeProcess??null),v=(0,eG.default)(t=>t.tabs[e]?.claudeInstalled??!0),y=(0,eG.default)(t=>t.tabs[e]?.cliState??"inactive"),w=(0,eG.default)(t=>t.tabs[e]?.compactingSince??null),S=(0,eG.default)(t=>(0,eG.selectSessionView)(t.tabs,e)),C=(0,r.useCallback)(()=>{x(null)},[]),j=(0,r.useCallback)(e=>{x(null),d.toast.warning(h("resumeBlocked"),{description:e.processName?h("resumeBlockedProcess",{name:e.processName}):void 0})},[h]),k=(0,r.useCallback)(()=>{x(null),d.toast.error(h("resumeFailed"))},[h]),{entries:N,tasks:z,sessionId:T,jsonlPath:P,sessionSummary:R,initMeta:L,sessionStats:E,claudeProcess:I,wsStatus:D,isLoading:M,error:A,loadMore:$,hasMore:F,retrySession:O,sendResume:B,addPendingUserMessage:W,removePendingUserMessage:G}=(0,eO.default)({sessionName:t,claudeSessionId:n,enabled:!!t,resumeCallbacks:{onResumeStarted:C,onResumeBlocked:j,onResumeError:k},onSync:t=>{let n=Date.now();null!==t.claudeProcess&&eG.default.getState().setClaudeProcess(e,t.claudeProcess,n),t.claudeInstalled||eG.default.getState().setClaudeInstalled(e,!1),eG.default.getState().setTimelineLoading(e,t.isLoading)},getCliState:()=>eG.default.getState().tabs[e]?.cliState}),{sessions:_,hasMore:U,isLoading:q,isLoadingMore:V,error:H,refetch:X,loadMore:K}=(0,eB.default)({tmuxSession:t,enabled:!!t&&!0!==b,cwd:i});(0,r.useEffect)(()=>(p&&(p.current=W),m&&(m.current=G),()=>{p&&(p.current=void 0),m&&(m.current=void 0)}),[p,m,W,G]);let Y=(0,r.useRef)(b);(0,r.useEffect)(()=>{let e=Y.current;Y.current=b,!0!==e&&!0===b&&!0!==I&&O()},[b,I,O]),(0,r.useEffect)(()=>{if("unknown"!==y)return;let t=new AbortController;return fetch("/api/tmux/recover-unknown",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tabId:e}),signal:t.signal}).catch(()=>{}),()=>t.abort()},[e,y]);let J=(0,eW.default)("check"===S,t),Q=(0,r.useCallback)(e=>{g||(x(e),B(e,t))},[g,B,t]);return v?null===b&&"check"!==S?(0,a.jsx)("div",{className:(0,eI.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",o),children:(0,a.jsx)(u.default,{className:"h-4 w-4 text-muted-foreground"})}):"check"===S?(0,a.jsxs)("div",{className:(0,eI.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",o),children:[(0,a.jsx)(u.default,{className:"h-4 w-4 text-muted-foreground"}),(0,a.jsx)("span",{className:"mt-2 text-sm text-muted-foreground",children:n||T?h("resumingSession"):h("creatingConversation")}),J&&(J.isBypassPrompt&&J.options.length>0?(0,a.jsx)(eq.default,{sessionName:t,options:J.options,fallback:(0,a.jsx)("button",{className:"text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:s,children:h("checkTerminal")})}):(0,a.jsx)("button",{className:"mt-3 text-xs text-muted-foreground underline underline-offset-2 hover:text-foreground",onClick:s,children:h("checkTerminal")}))]}):"session-list"===S?q&&0===_.length?(0,a.jsx)("div",{className:(0,eI.cn)("flex h-full w-full flex-col items-center justify-center animate-delayed-fade-in",o),children:(0,a.jsx)(u.default,{className:"h-4 w-4 text-muted-foreground"})}):0!==_.length||H?(0,a.jsx)("div",{className:(0,eI.cn)("h-full w-full",o),children:(0,a.jsx)(e_.default,{sessions:_,isLoading:q,isLoadingMore:V,hasMore:U,error:H,resumingSessionId:g,onSelectSession:Q,onRefresh:X,onLoadMore:K,onNewSession:c})}):(0,a.jsx)("div",{className:(0,eI.cn)("h-full w-full",o),children:(0,a.jsx)(eU.default,{onClose:s,onNewSession:c})}):(0,a.jsxs)("div",{className:(0,eI.cn)("flex min-h-0 w-full flex-1 flex-col",o),children:[(0,a.jsx)(eZ,{entries:N,sessionName:t,sessionId:T,jsonlPath:P,sessionSummary:R,initMeta:L,sessionStats:E}),(0,a.jsx)("div",{className:"min-h-0 flex-1",children:(0,a.jsx)(eV.default,{entries:N,tasks:z,sessionId:T,sessionName:t,tabId:e,initMeta:L,sessionStats:E,cliState:y,compactingSince:w,wsStatus:D,isLoading:M,error:A,onRetry:O,onLoadMore:$,hasMore:F,scrollToBottomRef:f})})]}):(0,a.jsxs)("div",{className:(0,eI.cn)("flex h-full w-full flex-col items-center justify-center gap-3 text-muted-foreground",o),children:[(0,a.jsx)("span",{className:"text-sm font-medium",children:h("installClaude")}),(0,a.jsx)("span",{className:"text-xs",children:h("installClaudeHint")})]})};var e1=e.i(148141),e3=e.i(624306),e5=e.i(391046),e2=e.i(40830),e4=e.i(236495),e6=e.i(125687);let e7=({cwd:e,lastCommand:t,onRestartWithCommand:n,onRestartNew:r})=>{let i=(0,l.useTranslations)("terminal");return(0,a.jsxs)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:[(0,a.jsx)(e6.WifiOff,{className:"h-5 w-5 text-muted-foreground"}),(0,a.jsx)("span",{className:"text-sm text-muted-foreground",children:i("disconnectedSessionNotFound")}),(0,a.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[e&&(0,a.jsx)("span",{className:"max-w-72 truncate text-xs text-muted-foreground/60",children:e.replace(/^\/Users\/[^/]+/,"~")}),t&&(0,a.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,a.jsx)("code",{className:"max-w-64 truncate rounded bg-muted px-2 py-1 text-xs",children:t}),(0,a.jsx)(c.Button,{variant:"outline",size:"sm",onClick:()=>n(t),children:i("restartWithCommand")})]}),t&&(0,a.jsxs)("div",{className:"flex w-40 items-center gap-2 text-muted-foreground/40",children:[(0,a.jsx)("div",{className:"h-px flex-1 bg-current"}),(0,a.jsx)("span",{className:"text-[11px]",children:i("or")}),(0,a.jsx)("div",{className:"h-px flex-1 bg-current"})]}),(0,a.jsx)(c.Button,{variant:"outline",size:"sm",onClick:r,children:i("restartNewTerminal")})]})]})};var e8=e.i(868462);let e9=({onSwitch:e,onDismiss:t})=>{let n=(0,l.useTranslations)("terminal"),r=(0,l.useTranslations)("common");return(0,a.jsxs)("div",{className:"absolute right-3 bottom-3 z-20 flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-2 shadow-lg animate-[fadeIn_200ms_ease-out]",children:[(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:n("switchToClaudeMode")}),(0,a.jsx)(c.Button,{variant:"default",size:"sm",className:"h-6 px-2 text-[11px]",onClick:e,children:n("switchMode")}),(0,a.jsx)("button",{className:"flex h-5 w-5 items-center justify-center rounded text-muted-foreground hover:text-foreground",onClick:t,"aria-label":r("close"),children:(0,a.jsx)(e8.X,{className:"h-3.5 w-3.5"})})]})},te=({hint:e,onSubmit:t,onDismiss:n})=>{let i=(0,l.useTranslations)("terminal"),o=(0,l.useTranslations)("common"),s=(0,r.useRef)(null);return(0,r.useEffect)(()=>{s.current?.focus()},[]),(0,a.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,a.jsxs)("div",{className:"flex items-center gap-2 px-3 pt-2.5",children:[(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:i("dragDropNotSupported")}),(0,a.jsx)("button",{className:"ml-auto flex h-5 w-5 shrink-0 items-center justify-center rounded text-muted-foreground hover:text-foreground",onClick:n,"aria-label":o("close"),children:(0,a.jsx)(e8.X,{className:"h-3.5 w-3.5"})})]}),(0,a.jsx)("div",{className:"px-3 pt-1 pb-2.5",children:(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded border border-border bg-background px-2 py-1.5",children:[(0,a.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground/60",children:e}),(0,a.jsx)("input",{ref:s,className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground/40",placeholder:i("fullPathPlaceholder"),onKeyDown:e=>{"Enter"===e.key?t(e.currentTarget.value):"Escape"===e.key&&n()}})]})})]})};var tt=e.i(639530),tn=e.i(29803),ta=e.i(483241);let tr=e=>e.replace(/[ \t\\'"(){}[\]!#$&;`|*?<>~^%]/g,"\\$&"),tl=(0,eR.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var ti=e.i(721614),to=e.i(569479),ts=e.i(240614),tu=e.i(570513),td=e.i(714233),tc=e.i(320183),tf=e.i(883590);let tp=({tab:e,isActive:t,isDragging:n,dropSide:i,displayTitle:o,currentProcess:s,onSwitch:u,onDelete:d,onRename:c,onFocusPane:f,onDragStart:p,onDragEnd:m,onDragOver:h,onDragLeave:g})=>{let x=(0,l.useTranslations)("terminal"),[b,v]=(0,r.useState)(!1),[y,w]=(0,r.useState)(""),S=(0,r.useRef)(null);(0,r.useEffect)(()=>{b&&requestAnimationFrame(()=>S.current?.select())},[b]);let C=()=>{let t=y.trim();v(!1),t!==e.name&&c(t)},j=e.name||o||"";return(0,a.jsxs)("div",{"data-tab-id":e.id,role:"tab","aria-selected":t,tabIndex:t?0:-1,className:(0,eI.cn)("group relative flex min-w-[120px] max-w-[180px] cursor-pointer items-center gap-1.5 border-b-2 px-3 text-xs select-none",t?"border-b-accent-color bg-secondary text-foreground":"border-b-transparent text-muted-foreground hover:bg-accent hover:text-foreground",n&&"opacity-30"),onClick:()=>{b||t||u(),f()},onDoubleClick:()=>{v(!0),w(e.name)},draggable:!b,onDragStart:p,onDragEnd:m,onDragOver:h,onDragLeave:g,children:["left"===i&&(0,a.jsx)("div",{className:"absolute top-1 bottom-1 left-0 w-0.5 bg-ui-blue"}),b?(0,a.jsx)("input",{ref:S,className:"w-full min-w-0 border-b border-accent-color bg-transparent text-xs text-foreground outline-none",value:y,onChange:e=>w(e.target.value),onKeyDown:e=>{"Enter"===e.key&&C(),"Escape"===e.key&&v(!1)},onBlur:C,onClick:e=>e.stopPropagation()}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(tf.default,{tabId:e.id,panelType:e.panelType}),"claude-code"===e.panelType?(0,a.jsx)(td.default,{className:"h-3.5 w-3.5"}):"web-browser"===e.panelType?(0,a.jsx)(ts.Globe,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}):"diff"===e.panelType?(0,a.jsx)(tu.GitCompareArrows,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}):(0,a.jsx)(tc.default,{process:s??o,className:"h-3 w-3 shrink-0 text-muted-foreground"}),(0,a.jsx)("span",{className:(0,eI.cn)("truncate",j?"opacity-100":"opacity-0"),children:j})]}),(0,a.jsx)("button",{className:(0,eI.cn)("ml-auto -mr-1.5 flex h-7 w-7 shrink-0 items-center justify-center text-muted-foreground hover:text-foreground",t?"visible":"invisible group-hover:visible"),onClick:e=>{e.stopPropagation(),d()},"aria-label":x("closeTabLabel"),children:(0,a.jsx)(e8.X,{className:"h-3 w-3"})}),"right"===i&&(0,a.jsx)("div",{className:"absolute top-1 right-0 bottom-1 w-0.5 bg-ui-blue"})]})};var tm=e.i(875284),th=e.i(348370),tg=e.i(266231),tx=e.i(924233);let tb=({paneId:e,isCreating:t,activePanelType:n,onCreateTab:i})=>{let o=(0,l.useTranslations)("terminal"),d=(0,tx.default)(),[c,p]=(0,r.useState)(!1),m=(0,tg.default)(),h=(0,f.useLayoutStore)(e=>e.workspaceId),g=(0,r.useMemo)(()=>{let e=[{key:"claude-new",type:"claude-code",icon:(0,a.jsx)(td.default,{className:"h-3.5 w-3.5"}),label:o("claudeNewConversation"),startClaude:!0},{key:"claude",type:"claude-code",icon:(0,a.jsx)(td.default,{className:"h-3.5 w-3.5"}),label:o("claudeSessionList")},{key:"terminal",type:"terminal",icon:(0,a.jsx)(tm.Terminal,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Terminal"},{key:"diff",type:"diff",icon:(0,a.jsx)(tu.GitCompareArrows,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Diff"},{key:"web-browser",type:"web-browser",icon:(0,a.jsx)(ts.Globe,{className:"h-3.5 w-3.5 text-muted-foreground"}),label:"Web Browser"}];return m?e.filter(e=>"web-browser"!==e.key):e},[m,o]),[x,b]=(0,r.useState)(0),v=(0,r.useRef)([]),y=(0,r.useCallback)(()=>{let e=(e=>{switch(e){case"terminal":return"terminal";case"web-browser":return"web-browser";default:return"claude-new"}})(n),t=g.findIndex(t=>t.key===e);b(t>=0?t:0),p(!0)},[n,g]);(0,r.useEffect)(()=>{let t=t=>{let n=t.detail;n?.paneId===e&&y()};return window.addEventListener("open-new-tab-menu",t),()=>window.removeEventListener("open-new-tab-menu",t)},[e,y]),(0,r.useEffect)(()=>{c&&v.current[x]?.focus()},[c,x]);let w=e=>{if(p(!1),"startClaude"in e&&e.startClaude){let t=eA.default.getState().dangerouslySkipPermissions,n=["--settings ~/.purplemux/hooks.json",h?`--append-system-prompt-file ~/.purplemux/workspaces/${h}/claude-prompt.md`:""].filter(Boolean).join(" "),a=t?`claude ${n} --dangerously-skip-permissions`:`claude ${n}`;i(e.type,{command:a})}else i(e.type)};return(0,a.jsx)("div",{className:"flex items-center border-l border-r border-border px-0.5",children:(0,a.jsxs)(th.Popover,{open:c,onOpenChange:e=>{e?y():p(!1)},children:[(0,a.jsxs)(to.Tooltip,{children:[(0,a.jsx)(to.TooltipTrigger,{render:(0,a.jsx)(th.PopoverTrigger,{className:(0,eI.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground hover:text-foreground",t&&"pointer-events-none opacity-50"),disabled:t,"aria-label":o("openNewTab")}),children:t?(0,a.jsx)(u.default,{className:"h-3 w-3"}):(0,a.jsx)(s.Plus,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipContent,{side:"bottom",children:o("newTabTooltip",{shortcut:`${d?"⌘":"Ctrl+"}T`})})]}),(0,a.jsx)(th.PopoverContent,{side:"bottom",align:"start",className:"w-44 gap-0 p-0.5",onKeyDown:e=>{if("ArrowDown"===e.key)e.preventDefault(),b(e=>(e+1)%g.length);else if("ArrowUp"===e.key)e.preventDefault(),b(e=>(e-1+g.length)%g.length);else if("Enter"===e.key){e.preventDefault();let t=g[x];t&&w(t)}},children:g.map((e,t)=>(0,a.jsxs)("button",{ref:e=>{v.current[t]=e},className:(0,eI.cn)("flex w-full items-center gap-2 rounded-sm px-2.5 py-2 text-xs text-foreground hover:bg-accent focus:outline-none",x===t&&"bg-accent"),onMouseEnter:()=>b(t),onClick:()=>w(e),children:[e.icon,e.label]},e.key))})]})})},tv=({paneId:e,tabs:t,activeTabId:n,tabTitles:o,tabProcesses:s,isLoading:u,error:d,isCreating:f,paneCount:p,isSplitting:m,onSwitchTab:h,onCreateTab:g,onDeleteTab:x,onRenameTab:b,onReorderTabs:v,onClosePane:y,onMoveTab:w,onFocusPane:S,onRetry:C})=>{let j=(0,l.useTranslations)("terminal"),k=(0,l.useTranslations)("common"),N=(0,r.useRef)(null),z=(0,r.useMemo)(()=>[...t].sort((e,t)=>e.order-t.order),[t]),{draggedTabId:T,dropTarget:P,isDragOverFromOther:R,handleDragOver:L,handleDrop:E,handleTabBarDragEnter:I,handleTabBarDragLeave:D,startDrag:M,endDrag:A,clearDropTarget:$}=(({paneId:e,sortedTabs:t,onReorderTabs:n,onMoveTab:a})=>{let[l,i]=(0,r.useState)(null),[o,s]=(0,r.useState)(null),[u,d]=(0,r.useState)(!1),c=(0,r.useRef)(0),f=(0,r.useCallback)((e,t)=>{e.preventDefault(),e.dataTransfer.dropEffect="move";let n=e.currentTarget.getBoundingClientRect();s({id:t,side:e.clientX<n.left+n.width/2?"left":"right"})},[]),p=(0,r.useCallback)(r=>{r.preventDefault(),c.current=0,d(!1);let l=r.dataTransfer.getData("text/tab-id"),u=r.dataTransfer.getData("text/pane-id");if(!l){i(null),s(null);return}if(u&&u!==e){let e;a(l,u,o?(e=t.findIndex(e=>e.id===o.id),"right"===o.side?e+1:e):t.length),i(null),s(null);return}if(!o||l===o.id){i(null),s(null);return}let f=t.filter(e=>e.id!==l),p=f.findIndex(e=>e.id===o.id),m="right"===o.side?p+1:p,h=t.find(e=>e.id===l);h&&f.splice(m,0,h),n(f.map(e=>e.id)),i(null),s(null)},[e,t,o,a,n]),m=(0,r.useCallback)(t=>{t.preventDefault(),c.current++;let n=Array.from(t.dataTransfer.types).find(e=>e.startsWith("application/x-pane/")),a=n?.replace("application/x-pane/","")??null;null!==a&&a!==e&&d(!0)},[e]),h=(0,r.useCallback)(()=>{c.current--,c.current<=0&&(c.current=0,d(!1),s(null))},[]),g=(0,r.useCallback)((t,n)=>{t.dataTransfer.effectAllowed="move",t.dataTransfer.setData("text/tab-id",n),t.dataTransfer.setData("text/pane-id",e),t.dataTransfer.setData(`application/x-pane/${e}`,"");let a=t.currentTarget.cloneNode(!0);a.querySelector('[aria-label="탭 닫기"]')?.remove(),a.querySelectorAll(".sr-only").forEach(e=>e.remove()),a.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(a),t.dataTransfer.setDragImage(a,0,0),requestAnimationFrame(()=>a.remove()),i(n)},[e]);return{draggedTabId:l,dropTarget:o,isDragOverFromOther:u,handleDragOver:f,handleDrop:p,handleTabBarDragEnter:m,handleTabBarDragLeave:h,startDrag:g,endDrag:(0,r.useCallback)(()=>{i(null),s(null)},[]),clearDropTarget:(0,r.useCallback)(()=>{s(null)},[])}})({paneId:e,sortedTabs:z,onReorderTabs:v,onMoveTab:w}),[F,O]=(0,r.useState)(!1),[B,W]=(0,r.useState)(!1),G=F||B,_=(0,r.useCallback)(()=>{let e=N.current;e&&(O(e.scrollLeft>0),W(e.scrollLeft+e.clientWidth<e.scrollWidth-1))},[]);(0,r.useEffect)(()=>{_();let e=N.current;if(!e)return;let t=new ResizeObserver(_);return t.observe(e),()=>t.disconnect()},[_,t]),(0,r.useEffect)(()=>{if(!n||!N.current)return;let e=N.current.querySelector(`[data-tab-id="${n}"]`);e?.scrollIntoView({behavior:"instant",inline:"nearest",block:"nearest"})},[n]),(0,r.useEffect)(()=>{let e=N.current;if(!e)return;let t=t=>{let n=t.deltaX+t.deltaY;0!==n&&(t.preventDefault(),e.scrollLeft+=n,_())};return e.addEventListener("wheel",t,{passive:!1}),()=>e.removeEventListener("wheel",t)},[_]);let U=e=>{let t=N.current;t&&t.scrollBy({left:e,behavior:"smooth"})};return d?(0,a.jsxs)("div",{className:"flex h-[36px] shrink-0 items-center gap-2 bg-background px-3",children:[(0,a.jsx)(i.AlertTriangle,{className:"h-3.5 w-3.5 text-ui-amber"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:d}),(0,a.jsx)(c.Button,{variant:"ghost",size:"xs",className:"h-5 px-2 text-xs text-foreground hover:text-foreground",onClick:C,children:k("retry")})]}):u?(0,a.jsx)("div",{className:"flex h-[36px] shrink-0 items-center gap-1.5 bg-background px-2",children:[1,2,3].map(e=>(0,a.jsx)("div",{className:"h-4 w-16 animate-pulse rounded bg-muted"},e))}):(0,a.jsxs)("div",{className:(0,eI.cn)("flex h-[36px] shrink-0 items-stretch border-b border-border transition-colors",R?"bg-accent-color/10":"bg-background"),onDragEnter:I,onDragLeave:D,onDragOver:e=>e.preventDefault(),onDrop:E,children:[G&&(0,a.jsx)("button",{className:(0,eI.cn)("flex w-5 shrink-0 items-center justify-center text-muted-foreground transition-opacity hover:text-foreground",F?"opacity-100":"pointer-events-none opacity-0"),onClick:()=>U(-200),tabIndex:F?0:-1,children:(0,a.jsx)(tl,{className:"h-3.5 w-3.5"})}),(0,a.jsx)("div",{ref:N,role:"tablist",className:"flex flex-1 items-stretch overflow-x-auto",style:{scrollbarWidth:"none"},onScroll:_,children:z.map(e=>(0,a.jsx)(tp,{tab:e,isActive:e.id===n,isDragging:e.id===T,dropSide:P?.id===e.id?P.side:null,displayTitle:o?.[e.id],currentProcess:s?.[e.id],onSwitch:()=>h(e.id),onDelete:()=>x(e.id),onRename:t=>{b(e.id,t)},onFocusPane:S,onDragStart:t=>M(t,e.id),onDragEnd:A,onDragOver:t=>L(t,e.id),onDragLeave:$},e.id))}),G&&(0,a.jsx)("button",{className:(0,eI.cn)("flex w-5 shrink-0 items-center justify-center text-muted-foreground transition-opacity hover:text-foreground",B?"opacity-100":"pointer-events-none opacity-0"),onClick:()=>U(200),tabIndex:B?0:-1,children:(0,a.jsx)(ti.ChevronRight,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipProvider,{children:(0,a.jsxs)("div",{className:"flex shrink-0 items-stretch",children:[(0,a.jsx)(tb,{paneId:e,isCreating:f,activePanelType:z.find(e=>e.id===n)?.panelType,onCreateTab:g}),p>=2&&(0,a.jsx)("div",{className:"flex items-center px-0.5",children:(0,a.jsxs)(to.Tooltip,{children:[(0,a.jsx)(to.TooltipTrigger,{className:(0,eI.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",m?"pointer-events-none opacity-30":"hover:text-foreground"),disabled:m,onClick:e=>{e.stopPropagation(),y()},"aria-label":j("closeAllTabs"),children:(0,a.jsx)(e8.X,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipContent,{side:"bottom",children:j("closeAllTabs")})]})})]})})]})};var ty=e.i(251748),tw=e.i(610782),tS=e.i(117369);let tC={write:()=>{},reset:()=>{},fit:()=>({cols:80,rows:24}),focus:()=>{}},tj={sendStdin:()=>{},sendResize:()=>{}},tk={normal:{normal:12,claudeCode:10},large:{normal:14,claudeCode:12},"x-large":{normal:16,claudeCode:14}},tN=[],tz=(0,r.memo)(({paneId:e,paneNumber:t})=>{let n=(0,l.useTranslations)("terminal"),i=(0,f.useLayoutStore)(t=>t.layout?(0,p.findPane)(t.layout.root,e):null),o=i?.tabs??tN,m=i?.activeTabId??null,h=(0,f.useLayoutStore)(t=>t.layout?.activePaneId===e),g=(0,f.useLayoutStore)(e=>e.paneCount),v=(0,f.useLayoutStore)(e=>e.isSplitting),y=(0,f.useLayoutStore)(e=>e.switchTabInPane),w=(0,f.useLayoutStore)(e=>e.createTabInPane),S=(0,f.useLayoutStore)(e=>e.deleteTabInPane),C=(0,f.useLayoutStore)(e=>e.closePane),j=(0,f.useLayoutStore)(e=>e.focusPane),k=(0,f.useLayoutStore)(e=>e.moveTab),N=(0,f.useLayoutStore)(e=>e.renameTabInPane),z=(0,f.useLayoutStore)(e=>e.reorderTabsInPane),T=(0,f.useLayoutStore)(e=>e.updateTabPanelType),P=o.find(e=>e.id===m),R=P?.panelType??"terminal",L="claude-code"===R,E="web-browser"===R,I="diff"===R,{theme:D}=(0,tS.default)(),M=(0,eA.default)(e=>e.fontSize),[A,$]=(0,r.useState)(!1),[F,O]=(0,r.useState)(!1),B=(0,r.useRef)(0),[W,G]=(0,r.useState)(!1),[_,U]=(0,r.useState)(!1),[q,V]=(0,r.useState)(!1),H=(0,r.useMemo)(()=>o.map(e=>e.id),[o]),X=(0,x.default)((0,e$.useShallow)(e=>{let t={};for(let n of H){let a=e.metadata[n]?.title;a&&(t[n]=a)}return t})),K=(0,eG.default)((0,e$.useShallow)(e=>{let t={};for(let n of H){let a=e.tabs[n]?.currentProcess;a&&(t[n]=a)}return t})),Y=(0,x.default)(e=>m?e.metadata[m]?.cwd:void 0),J=(0,f.useLayoutStore)(e=>e.workspaceId);(0,r.useEffect)(()=>{let e=requestAnimationFrame(()=>U(!0));return()=>{cancelAnimationFrame(e)}},[]);let Q=(0,r.useRef)(tC),Z=(0,r.useRef)(tj),ee=(0,r.useRef)(null),et=(0,r.useRef)(null),en=(0,r.useRef)(null),ea=(0,r.useRef)(o),er=(0,r.useRef)(m),el=(0,r.useRef)(g),ei=(0,r.useRef)(h);(0,r.useEffect)(()=>{ea.current=o,er.current=m,el.current=g,ei.current=h});let eo=(0,r.useCallback)(async()=>{let e=er.current,t=e?ea.current.find(t=>t.id===e):null;if(t)try{let e=await fetch(`/api/layout/cwd?session=${t.sessionName}`);if(!e.ok)return;let{cwd:n,lastCommand:a}=await e.json();n&&x.default.getState().setCwd(t.id,n),x.default.getState().setLastCommand(t.id,a??null)}catch{}},[]),es=(0,r.useRef)(()=>{}),eu=(0,r.useRef)(void 0),ed=(0,r.useRef)(void 0),ec=(0,r.useRef)(!1),ef=(0,r.useRef)(null),ep=(0,r.useRef)(null),em=(0,r.useRef)(!1),eh=(0,r.useRef)(void 0),eg=(0,r.useRef)(void 0),ex=(0,r.useRef)(void 0),eb=(0,r.useRef)(void 0),ev=(0,r.useRef)(null),ey=(0,r.useRef)(""),ew=(0,eG.default)(e=>m?e.tabs[m]?.cliState??"inactive":"inactive"),eS=(0,eG.default)(e=>m?e.tabs[m]?.claudeProcess??null:null),eC=(0,eG.default)(e=>m?e.tabs[m]?.claudeSessionId??null:null),ek="timeline"===(0,eG.default)(e=>m?(0,eG.selectSessionView)(e.tabs,m):"session-list"),ez=(0,r.useCallback)(e=>{em.current||(ef.current?ep.current=e:e())},[]),eR=(0,r.useCallback)(e=>{ef.current={x:e.clientX,y:e.clientY},ep.current=null,em.current=!1},[]),eO=(0,r.useCallback)(e=>{let t=ef.current;ef.current=null;let n=!!t&&(e.clientX-t.x)**2+(e.clientY-t.y)**2>=25;n&&(em.current=!0,requestAnimationFrame(()=>{em.current=!1})),ep.current&&!n&&ep.current(),ep.current=null},[]),{prompts:eB}=(0,tt.default)(),eW=(0,r.useRef)(new Set),[e_,eU]=(0,r.useState)(!1);(0,r.useEffect)(()=>{m&&L&&h&&(0,eG.isCliIdle)(ew)&&(0,b.dismissTab)(m)},[m,ew,L,h]),(0,r.useEffect)(()=>{m&&h&&(0,b.dismissTab)(m)},[m,h]);let eq=(0,r.useCallback)(()=>{eh.current?.()},[]),eV=(0,r.useCallback)(e=>{eg.current?.(e)},[]),eH=(0,r.useCallback)((e,t)=>eg.current?.(e,t)??"",[]),eX=(0,r.useCallback)(e=>{ex.current?.(e)},[]),eK=(0,r.useCallback)(e=>{e.dataTransfer.types.includes("Files")&&(e.preventDefault(),e.stopPropagation(),e.dataTransfer.dropEffect="copy")},[]),eY=(0,r.useCallback)(e=>{!e.dataTransfer.files||0===e.dataTransfer.files.length||eb.current&&(e.preventDefault(),e.stopPropagation(),eb.current(Array.from(e.dataTransfer.files)))},[]),eJ=(0,r.useCallback)(e=>{ed.current?.(e),eu.current?.()},[]),eQ=(0,r.useCallback)(e=>(0,tw.isAppShortcut)(e)?(e.preventDefault(),(0,tw.isClearShortcut)(e)&&es.current(),(0,tw.isFocusInputShortcut)(e)&&eu.current?.(),!1):!(0,tw.isShiftEnter)(e)||(e.preventDefault(),Z.current.sendStdin("\n"),!1),[]),{terminalRef:eZ,write:e6,clear:e8,reset:tl,fit:ti,focus:to,isReady:ts}=(0,eD.default)({theme:D.colors,fontSize:(tk[M]??tk.normal)[L?"claudeCode":"normal"],onInput:e=>{Z.current.sendStdin(e)},onResize:(e,t)=>Z.current.sendResize(e,t),onTitleChange:e=>{let t=er.current;if(!t)return;let n=ea.current.find(e=>e.id===t);if(n?.panelType==="web-browser"||e===ey.current)return;ey.current=e;let a=(0,ty.formatTabTitle)(e),r=(0,ty.parseCurrentCommand)(e);if(x.default.getState().setTitle(t,a),eG.default.getState().setCurrentProcess(t,r),(0,ty.isShellProcess)(e)&&ev.current){let e=ev.current;ev.current=null,Z.current.sendStdin(`${e}\r`)}let l=ea.current.find(e=>e.id===t);if(l){let e=eG.default.getState().tabs[t]?.claudeProcessCheckedAt??0;fetch(`/api/check-claude?session=${l.sessionName}`).then(e=>e.json()).then(({running:n,checkedAt:a})=>{let r=eG.default.getState().tabs[t];if(r&&r.claudeProcessCheckedAt!==e){r.claudeProcess!==n&&setTimeout(()=>{fetch(`/api/check-claude?session=${l.sessionName}`).then(e=>e.json()).then(({running:e,checkedAt:n})=>{eG.default.getState().setClaudeProcess(t,e,n)}).catch(()=>{})},500);return}eG.default.getState().setClaudeProcess(t,n,a)}).catch(()=>{})}eo()},customKeyEventHandler:eQ});(0,r.useEffect)(()=>{es.current=e8}),(0,r.useEffect)(()=>{let e=e=>{(0,tw.isFocusInputShortcut)(e)&&h&&(e.preventDefault(),eu.current?.())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[h]);let tu=(0,r.useCallback)(async()=>{if(en.current)return;let t=ea.current,n=er.current,a=el.current;if(!n)return;if(1===t.length&&a>1)return void C(e);let r=[...t].sort((e,t)=>e.order-t.order),l=r.findIndex(e=>e.id===n),i=r[l+1]||r[l-1];i&&y(e,i.id),en.current=n;try{await S(e,n)}finally{en.current=null}},[e,y,S,C]),{status:td,retryCount:tc,disconnectReason:tf,connect:tp,reconnect:tm,sendStdin:th,sendWebStdin:tg,sendResize:tx}=(0,eM.default)({onData:e=>Q.current.write(e),onConnected:()=>{$(!0),et.current=er.current;let e=er.current;e&&eG.default.getState().setTerminalConnected(e,!0);let{cols:t,rows:n}=Q.current.fit();Z.current.sendResize(t,n),ei.current&&Q.current.focus(),eo(),clearTimeout(B.current),B.current=window.setTimeout(()=>O(!1),50)},onSessionEnded:tu});(0,r.useEffect)(()=>{Q.current={write:e6,reset:tl,fit:ti,focus:to},Z.current={sendStdin:th,sendResize:tx}}),(0,r.useEffect)(()=>{ts||(ee.current=null)},[ts]),(0,r.useEffect)(()=>{if(!ts||!m)return;let e=o.find(e=>e.id===m);if(!e)return;if("web-browser"===e.panelType){ey.current="";return}if(ee.current===e.sessionName)return;null!==ee.current&&(O(!0),tl(),ey.current=""),eG.default.getState().initTab(m,{terminalConnected:!1,panelType:e.panelType}),ee.current=e.sessionName;let{cols:t,rows:n}=ti();tp(e.sessionName,t,n)},[ts,m]),(0,r.useEffect)(()=>{let e=er.current;e&&eG.default.getState().setTerminalConnected(e,"connected"===td)},[td]),(0,r.useEffect)(()=>{"disconnected"===td&&A&&et.current&&et.current!==m&&o.some(e=>e.id===et.current)&&(ee.current=null,y(e,et.current))},[td]),(0,r.useEffect)(()=>{if(!ts||"connected"!==td)return;let e=setTimeout(()=>{let{cols:e,rows:t}=ti();Z.current.sendResize(e,t)},150);return()=>clearTimeout(e)},[g]),(0,r.useEffect)(()=>{if(!ts||"connected"!==td)return;let e=setTimeout(()=>{let{cols:e,rows:t}=ti();Z.current.sendResize(e,t)},300);return()=>clearTimeout(e)},[td]),(0,r.useEffect)(()=>{if(h&&ts&&"connected"===td){let{cols:e,rows:t}=ti();Z.current.sendResize(e,t);let n=ec.current;ec.current=!1,!n&&L&&ek?ez(()=>eu.current?.()):to()}},[h]);let tb=(0,r.useCallback)(t=>{t!==m&&((0,b.dismissTab)(t),y(e,t))},[e,m,y]),tz=(0,r.useCallback)(async(t,n)=>{G(!0);let a=await w(e,t,n?.command);if(a){eG.default.getState().initTab(a.id,{panelType:t,workspaceId:J??""}),n?.command&&eG.default.getState().setSessionView(a.id,"check");let e=er.current,r=e?x.default.getState().metadata[e]?.title:null;r&&"web-browser"!==t&&x.default.getState().setTitle(a.id,r)}G(!1)},[e,w,J]),tT=(0,r.useCallback)(async t=>{if(!en.current){if(1===o.length&&g>1)return void C(e);en.current=t;try{await S(e,t)}finally{en.current=null}}},[e,o,g,S,C]),tP=(0,r.useCallback)(async(t,n)=>{await f.useLayoutStore.getState().restartTabInPane(e,t,n)&&tm()},[e,tm]),tR=(0,r.useRef)(new Set);(0,r.useEffect)(()=>{"disconnected"!==td||"session-not-found"!==tf||!m||!P||"terminal"!==(P.panelType??"terminal")||P.lastCommand||tR.current.has(m)||(tR.current.add(m),tP(m))},[td,tf,m,P,tP]);let tL=(0,r.useCallback)((t,n)=>{N(e,t,n)},[e,N]),tE=(0,r.useCallback)(t=>{z(e,t)},[e,z]),tI=(0,r.useCallback)((t,n,a)=>{k(t,n,e,a)},[e,k]),tD=(0,r.useCallback)(()=>{j(e)},[e,j]),tM=(0,r.useCallback)(t=>{m&&(V(!0),T(e,m,t))},[e,m,T]),tA=(0,r.useCallback)(t=>{m&&J&&fetch(`/api/layout/pane/${e}/tabs/${m}?workspace=${J}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({webUrl:t})}).catch(()=>{})},[m,e,J]);(0,r.useEffect)(()=>{m&&!0===eS&&"terminal"===R?eW.current.has(m)||(eW.current.add(m),eU(!0)):eU(!1)},[m,eS,R]);let{showPathInput:t$,droppedFileHint:tF,handleDragOver:tO,handleDrop:tB,handlePathInputSubmit:tW,handlePathInputDismiss:tG}=(({sendStdin:e,focus:t,wsId:n,tabId:a})=>{let[l,i]=(0,r.useState)(!1),[o,s]=(0,r.useState)(""),u=(0,r.useCallback)(e=>{e.dataTransfer.types.includes("Files")&&(e.preventDefault(),e.dataTransfer.dropEffect="copy")},[]),c=(0,r.useCallback)(n=>{0!==n.length&&(e(`\x1b[200~${n.join(" ")}\x1b[201~`),t())},[e,t]),f=(0,r.useCallback)(async e=>{let t=e.filter(ta.isImageFile);if(0===t.length)return!1;try{let e=await Promise.all(t.map(e=>(0,ta.uploadImage)(e,{wsId:n,tabId:a})));return c(e.map(e=>tr(e.path))),!0}catch(e){return d.toast.error(e instanceof Error?e.message:"Upload failed"),!0}},[n,a,c]),p=(0,r.useCallback)(e=>{e.preventDefault();let{files:t}=e.dataTransfer;if(0===t.length)return;let n=tn.default?window.electronAPI:null,a=[],r=Array.from(t);for(let e of r){let t=n?.getPathForFile(e);t&&a.push(tr(t))}a.length>0?c(a):r.some(ta.isImageFile)?f(r):(s(r.map(e=>e.name).join(", ")),i(!0))},[c,f]);return{showPathInput:l,droppedFileHint:o,handleDragOver:u,handleDrop:p,handlePathInputSubmit:(0,r.useCallback)(n=>{if(i(!1),s(""),n.trim()){let a=tr(n.trim());e(`\x1b[200~${a}\x1b[201~`),t()}},[e,t]),handlePathInputDismiss:(0,r.useCallback)(()=>{i(!1),s(""),t()},[t])}})({sendStdin:e=>Z.current.sendStdin(e),focus:to,wsId:J??void 0,tabId:m??void 0}),t_=(0,r.useCallback)(e=>{let t=eA.default.getState().dangerouslySkipPermissions,n=["--settings ~/.purplemux/hooks.json",J?`--append-system-prompt-file ~/.purplemux/workspaces/${J}/claude-prompt.md`:""].filter(Boolean).join(" "),a=e?`claude --resume ${e} ${n}`:`claude ${n}`;return t?`${a} --dangerously-skip-permissions`:a},[J]),tU=(0,r.useCallback)(()=>{"connected"===td&&m&&(eG.default.getState().setSessionView(m,"check"),th(`${t_(null)}\r`))},[td,th,m,t_]),tq=(0,r.useCallback)(()=>{"connected"===td&&m&&(ev.current=t_(null),eG.default.getState().setSessionView(m,"check"),th("/exit\r"))},[td,th,m,t_]),tV=(0,r.useCallback)(async()=>{if(!m||(eU(!1),tM("claude-code"),"connected"!==td))return;let e=eC;if(!e){let t=ea.current.find(e=>e.id===m);if(t)try{let n=await fetch(`/api/check-claude?session=${t.sessionName}`),a=await n.json();e="string"==typeof a.sessionId&&a.resumable?a.sessionId:null}catch{}}ev.current=t_(e),eG.default.getState().setSessionView(m,"check"),th("\x03"),setTimeout(()=>th("\x03"),300)},[m,td,th,eC,t_,tM]);(0,r.useEffect)(()=>{if(!ev.current||!0===eS||"connected"!==td||!(0,ty.isShellProcess)(ey.current))return;let e=ev.current;ev.current=null,th(`${e}\r`)},[eS,td,th]);let tH=(0,r.useRef)(null),[tX,tK]=(0,r.useState)(!1),tY=(0,r.useCallback)(()=>{if(!tH.current)return;V(!0);let e=!tX;tK(e),tH.current.setLayout(e?{timeline:100,"terminal-area":0}:{timeline:70,"terminal-area":30}),setTimeout(()=>{if(V(!1),!ts||"connected"!==td)return;let{cols:e,rows:t}=ti();Z.current.sendResize(e,t)},150)},[tX,ts,td,ti]);(0,r.useEffect)(()=>{if(!tH.current)return;L?(tK(!1),tH.current.setLayout({timeline:70,"terminal-area":30}),eo()):tH.current.setLayout({timeline:0,"terminal-area":100});let e=setTimeout(()=>{if(V(!1),!ts||"connected"!==td)return;let{cols:e,rows:t}=ti();Z.current.sendResize(e,t),h&&(L?ek&&ez(()=>eu.current?.()):to())},150);return()=>clearTimeout(e)},[L]),(0,r.useEffect)(()=>{h&&L&&ek&&ez(()=>eu.current?.())},[ek]);let tJ=0===o.length,tQ=ts&&("connected"===td||A)&&!tJ&&!F,tZ=!tJ&&(!ts||!A);return(0,a.jsxs)("div",{className:(0,eI.cn)("flex h-full flex-col overflow-hidden",g>1&&"border",g>1&&h?"border-focus-indicator":"border-transparent"),style:{opacity:_?void 0:0,transition:"opacity 200ms ease-out, border-color 150ms"},role:"region","aria-label":`Pane ${t}`,"aria-current":h?"true":void 0,onClick:tD,onPointerDown:eR,onPointerUp:eO,children:[(0,a.jsx)(tv,{paneId:e,tabs:o,activeTabId:m,tabTitles:X,tabProcesses:K,isLoading:!1,error:null,isCreating:W,paneCount:g,isSplitting:v,onSwitchTab:tb,onCreateTab:tz,onDeleteTab:tT,onRenameTab:tL,onReorderTabs:tE,onClosePane:()=>C(e),onMoveTab:tI,onFocusPane:tD,onRetry:()=>{}}),(0,a.jsxs)("div",{role:"tabpanel",className:"relative min-h-0 flex-1 flex flex-col",style:E||I?void 0:{backgroundColor:D.colors.background},onDragOver:E||I?void 0:tO,onDrop:E||I?void 0:tB,children:[E&&m&&(0,a.jsx)(e2.default,{initialUrl:P?.webUrl,onUrlChange:tA},m),I&&P&&(0,a.jsx)(e4.default,{sessionName:P.sessionName},P.sessionName),(0,a.jsxs)(ej,{groupRef:tH,orientation:"vertical",defaultLayout:L?{timeline:70,"terminal-area":30}:{timeline:0,"terminal-area":100},className:(0,eI.cn)("min-h-0 flex-1",(E||I)&&"invisible absolute inset-0 pointer-events-none",q&&"[&>[data-panel]]:[transition:flex-grow_150ms_ease-out]"),children:[(0,a.jsx)(eN,{id:"timeline",minSize:0,collapsible:!0,collapsedSize:0,disabled:!L,children:(0,a.jsxs)("div",{className:(0,eI.cn)("flex h-full flex-col bg-card",tX&&"pb-3"),onDragOver:L?eK:void 0,onDrop:L?eY:void 0,children:[L&&P&&!tZ&&m&&(0,a.jsx)(e0,{tabId:m,sessionName:P.sessionName,claudeSessionId:P.claudeSessionId,cwd:Y||P.cwd,onClose:()=>tM("terminal"),onNewSession:tU,scrollToBottomRef:eh,addPendingMessageRef:eg,removePendingMessageRef:ex},P.sessionName),L&&!tZ&&ek&&(0,a.jsx)(e1.default,{tabId:m??void 0,wsId:J??void 0,sessionName:P?.sessionName,claudeSessionId:P?.claudeSessionId,cliState:ew,sendStdin:tg,terminalWsConnected:"connected"===td,visible:!0,focusTerminal:to,focusInputRef:eu,setInputValueRef:ed,onRestartSession:tq,onSend:eq,onOptimisticSend:eV,onAddPendingMessage:eH,onRemovePendingMessage:eX,attachFilesRef:eb},m),L&&!tZ&&ek&&m&&(0,a.jsx)(e3.default,{prompts:eB,visible:!0,onSelect:eJ})]})}),(0,a.jsx)(eT,{className:(0,eI.cn)("group flex items-center justify-center overflow-hidden bg-card",L&&!tX?"h-3":"h-0"),disabled:!L||tX,children:(0,a.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"})}),L&&(0,a.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:tY,children:[(0,a.jsx)(eE.TerminalSquare,{className:"h-3 w-3"}),(0,a.jsx)("span",{className:"text-[11px] font-medium",children:"Terminal"}),Y&&(0,a.jsx)("span",{className:"min-w-0 truncate text-[11px] opacity-60",children:Y.replace(/^\/Users\/[^/]+/,"~")}),(0,a.jsx)("span",{className:"ml-auto flex h-4 w-4 shrink-0 items-center justify-center",children:tX?(0,a.jsx)(eL,{className:"h-3 w-3"}):(0,a.jsx)(eP.ChevronDown,{className:"h-3 w-3"})})]}),(0,a.jsx)(eN,{id:"terminal-area",minSize:0,collapsible:!0,collapsedSize:0,children:(0,a.jsx)("div",{className:"flex h-full flex-col",onMouseDown:()=>{ec.current=!0},children:(0,a.jsx)(eF.default,{ref:eZ,minHeight:L?256:void 0,className:(0,eI.cn)("min-h-0 flex-1",tQ?"opacity-100":"opacity-0",L&&"py-0 pl-2 pr-0.5")})})})]}),tJ&&(0,a.jsx)("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3",children:(0,a.jsxs)(c.Button,{className:"gap-1.5",onClick:()=>tz(),disabled:W,children:[W?(0,a.jsx)(u.default,{className:"h-3 w-3"}):(0,a.jsx)(s.Plus,{className:"h-3.5 w-3.5"}),n("openNewTab")]})}),!tJ&&"terminal"===R&&"disconnected"===td&&"session-not-found"===tf&&m&&(0,a.jsx)(e7,{cwd:P?.cwd,lastCommand:P?.lastCommand,onRestartWithCommand:e=>tP(m,e),onRestartNew:()=>tP(m)}),e_&&(0,a.jsx)(e9,{onSwitch:tV,onDismiss:()=>eU(!1)}),t$&&(0,a.jsx)(te,{hint:tF,onSubmit:tW,onDismiss:tG}),!tJ&&!E&&!I&&(0,a.jsx)(e5.default,{status:td,retryCount:tc,disconnectReason:tf,onReconnect:tm})]})]})});tz.displayName="PaneContainer";let tT=e=>{let{root:t,onUpdateRatio:n,onEqualizeRatios:l,equalizeRef:i}=e,o=(0,r.useRef)(null),s=(0,r.useRef)(new Map),u=(0,r.useRef)(""),d=(0,r.useRef)(new Map),c=(0,r.useCallback)(()=>{let e=(0,p.equalizeNode)(t),n=(e,t)=>{if("pane"===e.type)return;let a=t.join("-")||"root",r=d.current.get(a);r?.current&&r.current.setLayout({left:e.ratio,right:100-e.ratio}),n(e.children[0],[...t,0]),n(e.children[1],[...t,1])};n(e,[]),l()},[t,l]);(0,r.useEffect)(()=>{i&&(i.current=c)});let f=(0,p.collectPanes)(t),m=new Map;f.forEach((e,t)=>{m.set(e.id,t+1)});let h=e=>{let t=s.current.get(e);return t||((t=document.createElement("div")).style.height="100%",t.style.width="100%",s.current.set(e,t)),t},g=(e,t)=>{let r;if("pane"===e.type)return(0,a.jsx)("div",{"data-pane-slot":e.id,style:{height:"100%",width:"100%"}},`slot-${e.id}`);let l=(0,p.getFirstPaneId)(e.children[0]),i=(0,p.getFirstPaneId)(e.children[1]),o="horizontal"===e.orientation,s=t.join("-")||"root";return(0,a.jsxs)(ej,{groupRef:((r=d.current.get(s))||(r={current:null},d.current.set(s,r)),r),orientation:e.orientation,defaultLayout:{left:e.ratio,right:100-e.ratio},onLayoutChanged:a=>{let r=a.left;void 0!==r&&Math.abs(r-e.ratio)>.1&&n(t,Math.round(100*r)/100)},children:[(0,a.jsx)(eN,{id:"left",minSize:o?200:120,defaultSize:`${e.ratio}%`,children:g(e.children[0],[...t,0])}),(0,a.jsx)(eT,{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:o?"1px":void 0,height:o?void 0:"1px"}}),(0,a.jsx)(eN,{id:"right",minSize:o?200:120,defaultSize:`${100-e.ratio}%`,children:g(e.children[1],[...t,1])})]},`group-${l}-${i}`)};return(0,r.useLayoutEffect)(()=>{if(!o.current)return;let e=new Set(f.map(e=>e.id));for(let[t,n]of s.current)e.has(t)||(n.remove(),s.current.delete(t));f.forEach(e=>{let t=o.current.querySelector(`[data-pane-slot="${e.id}"]`),n=h(e.id);t&&n.parentElement!==t&&t.appendChild(n)})},[f.map(e=>e.id).join(",")]),(0,r.useLayoutEffect)(()=>{let e=f.map(e=>e.id).join(",");if(u.current&&u.current!==e){let e=(t,n)=>{if("pane"===t.type)return;let a=n.join("-")||"root",r=d.current.get(a);r?.current?.setLayout({left:t.ratio,right:100-t.ratio}),e(t.children[0],[...n,0]),e(t.children[1],[...n,1])};e(t,[])}u.current=e},[f.map(e=>e.id).join(",")]),(0,a.jsxs)("div",{ref:o,className:"h-full w-full bg-terminal-bg",children:[g(t,[]),f.map(e=>(0,v.createPortal)((0,a.jsx)(tz,{paneId:e.id,paneNumber:m.get(e.id)??1}),h(e.id)))]})};var tP=e.i(660255),tR=e.i(615627),tL=e.i(69948);let tE=()=>{let e=((e=3e3)=>{let[t,n]=(0,r.useState)(null);return(0,r.useEffect)(()=>{let t=tn.default?window.electronAPI:null;if(!t)return;let a=!0,r=async()=>{try{let[e,r]=await Promise.all([t.getSystemResources(),fetch("/api/system/tmux-sessions").then(e=>e.json())]);a&&n({cpu:e.cpu,memory:e.memory,tmuxSessions:r.count})}catch{}};r();let l=setInterval(r,e);return()=>{a=!1,clearInterval(l)}},[e]),t})();return(0,eA.default)(e=>e.systemResourcesEnabled)&&e?(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[9px] text-muted-foreground/60",children:[(0,a.jsxs)("span",{className:"tabular-nums",children:["CPU ",e.cpu.toFixed(1),"%"]}),(0,a.jsxs)("span",{className:"tabular-nums",children:["MEM ",Math.round(e.memory.used/1048576),"MB"]}),(0,a.jsxs)("span",{className:"tabular-nums",children:["TMUX ",e.tmuxSessions]})]}):null};var tI=e.i(998234),tD=e.i(700599);let tM=new Set(["localhost","127.0.0.1","::1"]).has(window.location.hostname),tA=({className:e})=>(0,a.jsxs)("svg",{className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("line",{x1:"8",y1:"4",x2:"8",y2:"20"}),(0,a.jsx)("line",{x1:"16",y1:"4",x2:"16",y2:"20"})]}),t$=({className:e})=>(0,a.jsxs)("svg",{className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,a.jsx)("line",{x1:"12",y1:"3",x2:"12",y2:"21"})]}),tF=({className:e})=>(0,a.jsxs)("svg",{className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),(0,a.jsx)("line",{x1:"3",y1:"12",x2:"21",y2:"12"})]}),tO=({activePaneId:e,root:t,paneCount:n,canSplit:i,isSplitting:o,onSplitPane:s,onEqualizeRatios:c,onUpdateTabPanelType:f})=>{let m=(0,l.useTranslations)("terminal"),h=(0,tx.default)()?"⌘":"Ctrl+",g=(0,tR.default)(),[b,v]=(0,r.useState)(!1),y=(0,p.collectPanes)(t),w=y.find(t=>t.id===e)??y[0],S=w?.tabs.find(e=>e.id===w.activeTabId),C=S?.panelType??"terminal",j=(0,x.default)(e=>S?.id?e.metadata[S.id]?.cwd:void 0),k=(0,eA.default)(e=>e.editorUrl),N=(0,eA.default)(e=>e.editorPreset),z=(0,r.useMemo)(()=>(0,tI.buildEditorUrl)(N,k,j||"/"),[N,k,j]),T=!!z&&(0,tI.isSafeEditorTarget)(z),P=!!z&&(0,tI.isWebEditorUrl)(z),R=T&&!P&&!tM,L=R?m("editorRemoteNotSupported"):m("openEditor"),E=w?.id;return(0,a.jsx)("div",{className:"shrink-0 bg-background",children:(0,a.jsxs)("div",{className:"relative z-40 flex h-12 shrink-0 items-center border-b border-border px-3",...tn.default?{style:{WebkitAppRegion:"drag"}}:{},children:[(0,a.jsx)("div",{className:"mr-auto",...tn.default?{style:{WebkitAppRegion:"no-drag"}}:{},children:(0,a.jsx)(tE,{})}),(0,a.jsx)(to.TooltipProvider,{children:(0,a.jsxs)("div",{className:"flex items-center gap-1",...tn.default?{style:{WebkitAppRegion:"no-drag"}}:{},children:[(0,a.jsx)("div",{className:(0,eI.cn)("flex items-center gap-px border-r border-border pr-2",b&&"pointer-events-none opacity-80"),children:[{value:"terminal",label:"TERMINAL",mac:"⌘⇧T",other:"^⇧T"},{value:"claude-code",label:"CLAUDE",mac:"⌘⇧C",other:"^⇧C"},{value:"diff",label:"DIFF",mac:"⌘⇧F",other:"^⇧F"}].map(e=>(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)("button",{className:(0,eI.cn)("rounded px-1.5 py-0.5 text-[10px] font-medium tracking-wide transition-colors",C===e.value?"bg-accent text-foreground":"text-muted-foreground/60 hover:text-muted-foreground"),onClick:()=>{var t;return t=e.value,void(b||!w||!S||t!==C&&(v(!0),f(w.id,S.id,t),setTimeout(()=>v(!1),150)))},children:e.label}),C!==e.value&&(0,a.jsx)(tL.default,{mac:e.mac,other:e.other,className:(0,eI.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",g?"opacity-100":"opacity-0")})]},e.value))}),"off"!==N&&(0,a.jsxs)(to.Tooltip,{children:[(0,a.jsx)(to.TooltipTrigger,{className:(0,eI.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",R?"cursor-not-allowed opacity-30":"hover:text-foreground"),"aria-disabled":R||void 0,onClick:()=>{if(R)return;if(!z)return void d.toast.info(m("editorUrlNotSet"));if(!T)return void d.toast.error(m("editorUrlNotSet"));if(P)return void window.open(z,"_blank","noopener,noreferrer");let e=window.electronAPI;if(e?.openExternal)return void e.openExternal(z);let t=document.createElement("iframe");t.style.display="none",t.src=z,document.body.appendChild(t),setTimeout(()=>t.remove(),1e3)},"aria-label":m("openEditor"),children:z?(0,a.jsx)(tD.EditorIcon,{preset:N,className:"h-3.5 w-3.5"}):(0,a.jsx)(tP.FolderCode,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipContent,{side:"bottom",children:L})]}),"off"!==N&&(0,a.jsx)("div",{className:"h-5 w-px bg-border"}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsxs)(to.Tooltip,{children:[(0,a.jsx)(to.TooltipTrigger,{className:(0,eI.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",i?"hover:text-foreground":"cursor-not-allowed opacity-30"),onClick:i&&E?()=>s(E,"horizontal"):void 0,disabled:!i,"aria-label":m("splitVertical"),children:o?(0,a.jsx)(u.default,{className:"h-3 w-3"}):(0,a.jsx)(t$,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipContent,{side:"bottom",children:m("splitVerticalShortcut",{shortcut:`${h}D`})})]}),(0,a.jsx)(tL.default,{mac:"⌘D",other:"^D",className:(0,eI.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",g?"opacity-100":"opacity-0")})]}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsxs)(to.Tooltip,{children:[(0,a.jsx)(to.TooltipTrigger,{className:(0,eI.cn)("flex h-7 w-7 items-center justify-center text-muted-foreground",i?"hover:text-foreground":"cursor-not-allowed opacity-30"),onClick:i&&E?()=>s(E,"vertical"):void 0,disabled:!i,"aria-label":m("splitHorizontal"),children:o?(0,a.jsx)(u.default,{className:"h-3 w-3"}):(0,a.jsx)(tF,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipContent,{side:"bottom",children:m("splitHorizontalShortcut",{shortcut:`${h}⇧D`})})]}),(0,a.jsx)(tL.default,{mac:"⌘⇧D",other:"^⇧D",className:(0,eI.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",g?"opacity-100":"opacity-0")})]}),n>=2&&(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsxs)(to.Tooltip,{children:[(0,a.jsx)(to.TooltipTrigger,{className:"flex h-7 w-7 items-center justify-center text-muted-foreground hover:text-foreground",onClick:c,"aria-label":m("equalSplit"),children:(0,a.jsx)(tA,{className:"h-3.5 w-3.5"})}),(0,a.jsx)(to.TooltipContent,{side:"bottom",children:m("equalSplit")})]}),(0,a.jsx)(tL.default,{mac:"⌘⌥=",other:"^⌥=",className:(0,eI.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",g?"opacity-100":"opacity-0")})]})]})})]})})};var tB=e.i(199685),tW=e.i(566736);e.s(["default",0,()=>{let e=(0,l.useTranslations)("terminal"),t=(0,m.default)(e=>e.isLoading),n=(0,m.default)(e=>e.error),v=(0,m.default)(e=>e.activeWorkspaceId),y=(0,m.default)(e=>e.workspaces.length),w=(0,r.useRef)(null),S=(0,r.useRef)(null),C=(0,r.useCallback)(()=>{let t=w.current;t&&(m.default.getState().switchWorkspace(t),d.toast.error(e("cannotSwitch")))},[e]),j=(0,f.default)({workspaceId:v,onFetchError:C}),k=!!(j.layout&&!j.isLoading&&(0,p.collectPanes)(j.layout.root).every(e=>0===e.tabs.length)),N=j.layout?.updatedAt,z=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(!j.layout||!N||z.current===N)return;z.current=N;let e={};for(let t of(0,p.collectPanes)(j.layout.root))for(let n of t.tabs)(n.title||n.cwd)&&(e[n.id]={title:n.title,cwd:n.cwd});x.default.getState().hydrate(e),(0,b.requestSync)()},[N]),(0,r.useEffect)(()=>{if(!j.layout)return;let e=new Set((0,p.collectPanes)(j.layout.root).flatMap(e=>e.tabs.map(e=>e.id)));x.default.getState().retainOnly(e)},[j.layout]),(0,tW.useAutoDeleteEmptyWorkspace)(k,j.clearLayout);let T=(0,r.useCallback)(e=>{let{activeWorkspaceId:t}=m.default.getState();e!==t&&(w.current=t,x.default.getState().reset(),j.clearLayout(),m.default.getState().switchWorkspace(e))},[j]);if((0,r.useEffect)(()=>(tB.default.getState().register(T),()=>tB.default.getState().unregister()),[T]),(({layout:e})=>{let t=(0,r.useRef)(e),n=(0,m.default)(e=>e.isSettingsDialogOpen),a=(0,m.default)(e=>e.isCheatSheetOpen),l=!n&&!a;(0,r.useEffect)(()=>{t.current=e},[e]),(0,h.default)("pane.split_right",()=>{let e=t.current;e.layout?.activePaneId&&e.canSplit&&e.splitPane(e.layout.activePaneId,"horizontal")},l),(0,h.default)("pane.split_down",()=>{let e=t.current;e.layout?.activePaneId&&e.canSplit&&e.splitPane(e.layout.activePaneId,"vertical")},l);let i=(0,r.useCallback)(e=>{let n=t.current;if(!n.layout?.activePaneId)return;let a=(0,p.findAdjacentPaneInDirection)(n.layout.root,n.layout.activePaneId,e);a&&n.focusPane(a)},[]);(0,h.default)("pane.focus_left",()=>i("left"),l),(0,h.default)("pane.focus_right",()=>i("right"),l),(0,h.default)("pane.focus_up",()=>i("up"),l),(0,h.default)("pane.focus_down",()=>i("down"),l);let o=(0,r.useCallback)(e=>{let n=t.current;if(!n.layout?.activePaneId)return;let a=(0,p.findResizeTarget)(n.layout.root,n.layout.activePaneId,e);if(!a)return;let r=a.increase?5:-5,l=Math.min(95,Math.max(5,a.currentRatio+r));l!==a.currentRatio&&f.useLayoutStore.getState().updateRatio(a.path,l)},[]);(0,h.default)("pane.resize_left",()=>o("left"),l),(0,h.default)("pane.resize_right",()=>o("right"),l),(0,h.default)("pane.resize_up",()=>o("up"),l),(0,h.default)("pane.resize_down",()=>o("down"),l),(0,h.default)("pane.equalize",()=>f.useLayoutStore.getState().equalizeRatios(),l),(0,h.default)("tab.new",()=>{let e=t.current;e.layout?.activePaneId&&window.dispatchEvent(new CustomEvent("open-new-tab-menu",{detail:{paneId:e.layout.activePaneId}}))},l),(0,h.default)("tab.close",()=>{let e=t.current;if(!e.layout?.activePaneId)return;let n=g(e.layout);n?.activeTabId&&(1===n.tabs.length&&e.paneCount>1?e.closePane(n.id):e.deleteTabInPane(n.id,n.activeTabId))},l),(0,h.default)("tab.prev",()=>f.useLayoutStore.getState().focusPrevTab(),l),(0,h.default)("tab.next",()=>f.useLayoutStore.getState().focusNextTab(),l),(0,h.default)("pane.clear_screen",()=>{},l),(0,h.default)("tab.goto",e=>{let t=parseInt(e.code.replace("Digit",""),10);isNaN(t)||t<1||t>9||f.useLayoutStore.getState().focusTabByIndex(9===t?1/0:t-1)},l);let s=(0,r.useCallback)(e=>{let n=g(t.current.layout);if(!n?.activeTabId)return;let a=n.tabs.find(e=>e.id===n.activeTabId);a&&(a.panelType??"terminal")!==e&&f.useLayoutStore.getState().updateTabPanelType(n.id,n.activeTabId,e)},[]);(0,h.default)("view.mode_terminal",()=>s("terminal"),l),(0,h.default)("view.mode_claude",()=>s("claude-code"),l),(0,h.default)("view.mode_diff",()=>s("diff"),l)})({layout:j}),t)return(0,a.jsxs)("div",{className:"flex h-full w-full flex-col overflow-hidden bg-background animate-delayed-fade-in",children:[(0,a.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(e=>(0,a.jsx)("div",{className:"h-4 w-16 animate-pulse rounded bg-muted"},e))}),(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,a.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,a.jsx)(u.default,{className:"h-4 w-4 text-muted-foreground"}),(0,a.jsx)("span",{className:"text-sm text-muted-foreground",children:e("connecting")})]})})]});if(n&&!y)return(0,a.jsxs)("div",{className:"flex h-full w-full flex-col items-center justify-center gap-3 overflow-hidden bg-background",children:[(0,a.jsx)(i.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,a.jsx)("span",{className:"text-sm text-muted-foreground",children:n}),(0,a.jsxs)(c.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:m.default.getState().fetchWorkspaces,children:[(0,a.jsx)(o.RefreshCw,{className:"h-3.5 w-3.5"}),e("retryAction")]})]});let P=!j.layout&&j.isLoading&&v;return(0,a.jsxs)("div",{className:"relative flex h-full w-full flex-col overflow-hidden bg-background",children:[j.layout&&!j.isLoading&&!k&&(0,a.jsx)(tO,{activePaneId:j.layout.activePaneId,root:j.layout.root,paneCount:j.paneCount,canSplit:j.canSplit,isSplitting:j.isSplitting,onSplitPane:j.splitPane,onEqualizeRatios:()=>S.current?.(),onUpdateTabPanelType:j.updateTabPanelType}),(0,a.jsxs)("div",{className:"relative min-h-0 flex-1",children:[P&&(0,a.jsx)("div",{className:"absolute inset-0 z-30 flex items-center justify-center bg-background animate-delayed-fade-in",children:(0,a.jsx)(u.default,{className:"h-4 w-4 text-muted-foreground"})}),j.error&&!j.isLoading&&(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[(0,a.jsx)(i.AlertTriangle,{className:"h-5 w-5 text-ui-amber"}),(0,a.jsx)("span",{className:"text-sm text-muted-foreground",children:j.error}),(0,a.jsxs)(c.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:()=>j.fetchLayout(),children:[(0,a.jsx)(o.RefreshCw,{className:"h-3.5 w-3.5"}),e("retryAction")]})]}),j.layout&&!j.isLoading&&!k&&(0,a.jsx)("div",{className:"h-full",children:(0,a.jsx)(tT,{root:j.layout.root,onUpdateRatio:j.updateRatio,onEqualizeRatios:j.equalizeRatios,equalizeRef:S})},v),!v&&!t&&!n&&(0,a.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,a.jsxs)(c.Button,{variant:"outline",size:"sm",className:"gap-1.5",onClick:async()=>{let e=await m.default.getState().createWorkspace("");e&&m.default.getState().switchWorkspace(e.id)},children:[(0,a.jsx)(s.Plus,{className:"h-3.5 w-3.5"}),e("newWorkspace")]})})]})]})}],51372)},277184,e=>{e.n(e.i(51372))}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,225522,(o,s,t)=>{s.exports={noMessage:"(메시지 없음)",newSessionTitle:"(새 세션)",sessionLabel:"세션: {message}",turnCount:"{count}턴",justNow:"방금 전",minutesAgo:"{count}분 전",hoursAgo:"{count}시간 전",yesterday:"어제",daysAgo:"{count}일 전",weeksAgo:"{count}주 전",monthsAgo:"{count}개월 전",yearsAgo:"{count}년 전",empty:{closeLabel:"닫기",noSession:"세션 없음",startNewSession:"터미널에서 claude를 실행하여{br}새 세션을 시작하세요",newConversation:"새 대화",close:"닫기"},meta:{message:"메시지",userAssistant:"사용자 {userCount} / 응답 {assistantCount}",toolsCount:"도구 {count}",tokens:"토큰",inputOutput:"입력 {input} / 출력 {output}",context:"컨텍스트",model:"모델",cost:"비용",created:"생성",updated:"수정",path:"경로",process:"프로세스",size:"크기",session:"세션"}}}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,225522,(t,o,e)=>{o.exports={noMessage:"(메시지 없음)",newSessionTitle:"(새 세션)",sessionLabel:"세션: {message}",turnCount:"{count}턴",justNow:"방금 전",minutesAgo:"{count}분 전",hoursAgo:"{count}시간 전",yesterday:"어제",daysAgo:"{count}일 전",weeksAgo:"{count}주 전",monthsAgo:"{count}개월 전",yearsAgo:"{count}년 전",empty:{closeLabel:"닫기",noSession:"세션 없음",startNewSession:"터미널에서 claude를 실행하여{br}새 세션을 시작하세요",newConversation:"새 대화",close:"닫기"},meta:{message:"메시지",userAssistant:"사용자 {userCount} / 응답 {assistantCount}",toolsCount:"도구 {count}",tokens:"토큰",inputOutput:"입력 {input} / 출력 {output}",context:"컨텍스트",model:"모델",cost:"비용",created:"생성",updated:"수정",path:"경로",process:"프로세스",size:"크기",session:"세션",contextHintAmber:"컨텍스트가 절반을 넘었습니다",contextHintRed:"한도에 가까워졌습니다 — 압축하거나 새 세션을 시작하세요"}}}]);