@jingyi0605/codingns 0.5.0 → 0.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/public/assets/AdaptiveButlerPage-CUyNL98E.js +3 -0
- package/dist/public/assets/App-BFP7LCSC.js +30 -0
- package/dist/public/assets/{BootstrapPage-Vu5oEJ8z.js → BootstrapPage-G74dX2Us.js} +1 -1
- package/dist/public/assets/ConversationPage-Bz0_tvvM.js +2 -0
- package/dist/public/assets/{DesktopDetachPreviewPage-BgeEqbc5.js → DesktopDetachPreviewPage-IV7oEdOX.js} +1 -1
- package/dist/public/assets/DesktopWindowPage-BBmHyRg5.js +2 -0
- package/dist/public/assets/FileContextPanel--FVTxDrq.js +1 -0
- package/dist/public/assets/GitSidebar-DAiSi9oc.js +6 -0
- package/dist/public/assets/{MobileCreateSessionSheet-DLq5qPkx.js → MobileCreateSessionSheet-DqVwz_Hp.js} +1 -1
- package/dist/public/assets/MobileSheet-D1lMrcvD.js +1 -0
- package/dist/public/assets/{MobileTopHeaderFrame-DArgZI7L.js → MobileTopHeaderFrame-COTc7cRr.js} +1 -1
- package/dist/public/assets/{MobileWorkspaceSwitcherHeader-0ywJKfBQ.js → MobileWorkspaceSwitcherHeader-DJPV9ym2.js} +1 -1
- package/dist/public/assets/RelayConnectEntryPage-dSwU8VzK.js +1 -0
- package/dist/public/assets/{ServerSettingsModal-izoYMx9U.js → ServerSettingsModal-B34ms3ze.js} +1 -1
- package/dist/public/assets/{SessionIndexPage-C5aG8FIv.js → SessionIndexPage-D3tG1gmM.js} +1 -1
- package/dist/public/assets/SettingsPage-B3-6-5GL.js +1 -0
- package/dist/public/assets/TerminalManagerPanel-DhuTEdzV.js +1 -0
- package/dist/public/assets/{TerminalPage-CtKXIU0h.js → TerminalPage-DpsvQQVR.js} +19 -19
- package/dist/public/assets/{TerminalRuntimeFallbackModal-CRhOQOsT.js → TerminalRuntimeFallbackModal-CNzOt5v5.js} +1 -1
- package/dist/public/assets/{ToolFilesPage-DcYPsS-e.js → ToolFilesPage-BX9QDi9Y.js} +1 -1
- package/dist/public/assets/{ToolGitPage-CsPl89ty.js → ToolGitPage-4VtFox3p.js} +1 -1
- package/dist/public/assets/{ToolProcessesPage-D0dvR8xK.js → ToolProcessesPage-DZJC6Qnt.js} +1 -1
- package/dist/public/assets/{ToolsHomePage-4fP-KRiv.js → ToolsHomePage-D7JbrAWv.js} +1 -1
- package/dist/public/assets/{WorkbenchLandingPage-kvlfyxRo.js → WorkbenchLandingPage-C0yqnzqh.js} +1 -1
- package/dist/public/assets/WorkbenchLayout-Brlj8K3i.js +3 -0
- package/dist/public/assets/{WorkbenchModal-Ctob14VR.js → WorkbenchModal-CbDxaCOR.js} +1 -1
- package/dist/public/assets/WorkbenchShellRoute-BMcnFadA.css +1 -0
- package/dist/public/assets/WorkbenchShellRoute-puGpdDFY.js +1 -0
- package/dist/public/assets/{WorkspaceDebugDetailPage-Com5kEXJ.js → WorkspaceDebugDetailPage-fTGweC9N.js} +1 -1
- package/dist/public/assets/WorkspaceDetailPage-BtaIzSDB.js +1 -0
- package/dist/public/assets/WorkspaceHomePage-CUmmYDrM.js +1 -0
- package/dist/public/assets/client-runtime-manager-RHFa_iWo.js +1 -0
- package/dist/public/assets/{default-session-permission-mode-CcGwR4Kk.js → default-session-permission-mode-Cu5SreTG.js} +1 -1
- package/dist/public/assets/file-tree-icon-BMKuc5pw.js +31 -0
- package/dist/public/assets/index-Cq3ue0za.css +1 -0
- package/dist/public/assets/index-DEbFT-Aq.js +42 -0
- package/dist/public/assets/{preferences-service-KIYeE2gk.js → preferences-service-gv_9vGKz.js} +1 -1
- package/dist/public/assets/session-runtime-machine-Bfnxkk9B.js +17 -0
- package/dist/public/assets/{terminal-runtime-meta-AWXJpN4r.js → terminal-runtime-meta-B9xJGY__.js} +1 -1
- package/dist/public/assets/{useRegisteredDebugTemplates-DBDRdptr.js → useRegisteredDebugTemplates-CDfl54Wt.js} +1 -1
- package/dist/public/index.html +2 -2
- package/dist/server/config/env.d.ts +1 -0
- package/dist/server/config/env.js +36 -0
- package/dist/server/config/env.js.map +1 -1
- package/dist/server/modules/client/client-controller.js +1 -1
- package/dist/server/modules/client/client-controller.js.map +1 -1
- package/dist/server/modules/client/client-service.d.ts +16 -2
- package/dist/server/modules/client/client-service.js +21 -3
- package/dist/server/modules/client/client-service.js.map +1 -1
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.d.ts +16 -1
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.js.map +1 -1
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.d.ts +2 -1
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.js +18 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.js.map +1 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-client-context.d.ts +13 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-client-context.js +2 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-client-context.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.d.ts +6 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js +110 -10
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js.map +1 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.d.ts +16 -4
- package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.js +216 -101
- package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.js.map +1 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.d.ts +6 -2
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js +457 -40
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js.map +1 -1
- package/dist/server/modules/sessions/session-activity-inspector.js +6 -8
- package/dist/server/modules/sessions/session-activity-inspector.js.map +1 -1
- package/dist/server/modules/sessions/session-history-service.d.ts +1 -0
- package/dist/server/modules/sessions/session-history-service.js +62 -7
- package/dist/server/modules/sessions/session-history-service.js.map +1 -1
- package/dist/server/modules/workbench/snapshot-revision.d.ts +4 -0
- package/dist/server/modules/workbench/snapshot-revision.js +13 -0
- package/dist/server/modules/workbench/snapshot-revision.js.map +1 -0
- package/dist/server/modules/workbench/workbench-service.d.ts +33 -2
- package/dist/server/modules/workbench/workbench-service.js +39 -4
- package/dist/server/modules/workbench/workbench-service.js.map +1 -1
- package/dist/server/modules/workbench/workspace-panel-snapshot-service.d.ts +6 -1
- package/dist/server/modules/workbench/workspace-panel-snapshot-service.js +10 -8
- package/dist/server/modules/workbench/workspace-panel-snapshot-service.js.map +1 -1
- package/dist/server/server/create-server.js +11 -6
- package/dist/server/server/create-server.js.map +1 -1
- package/dist/server/types/domain.d.ts +9 -0
- package/dist/server/ws/workbench-ws-hub.js +295 -43
- package/dist/server/ws/workbench-ws-hub.js.map +1 -1
- package/dist/server/ws/ws-server.js +141 -8
- package/dist/server/ws/ws-server.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +33 -6
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +78 -36
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -1
- package/package.json +1 -1
- package/dist/public/assets/AdaptiveButlerPage-R-XZw7pd.js +0 -3
- package/dist/public/assets/App-DkvE5EyM.js +0 -30
- package/dist/public/assets/ConversationPage-Cjpg6g0J.js +0 -2
- package/dist/public/assets/DesktopWindowPage-1WelvxdH.js +0 -2
- package/dist/public/assets/FileContextPanel-D_ghXJuW.js +0 -1
- package/dist/public/assets/GitSidebar-D9f9Jxwr.js +0 -6
- package/dist/public/assets/MobileSheet-DLg-gX1t.js +0 -1
- package/dist/public/assets/SettingsPage-HJIC-P-4.js +0 -1
- package/dist/public/assets/TerminalManagerPanel-DpyUTo9k.js +0 -1
- package/dist/public/assets/WorkbenchLayout-ByFw4eeu.js +0 -3
- package/dist/public/assets/WorkbenchShellRoute-BUITtdAg.css +0 -1
- package/dist/public/assets/WorkbenchShellRoute-Kw7JEZI3.js +0 -1
- package/dist/public/assets/WorkspaceDetailPage-D0Lrx4Uz.js +0 -1
- package/dist/public/assets/WorkspaceHomePage-wR8d3aP9.js +0 -1
- package/dist/public/assets/file-tree-icon-UFVoVzhM.js +0 -31
- package/dist/public/assets/index-Byp9hJ0c.js +0 -42
- package/dist/public/assets/index-_52jxu4a.css +0 -1
- package/dist/public/assets/session-runtime-machine-0KNSSPp5.js +0 -17
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as s,j as e,t as n,O as Ve}from"./index-Byp9hJ0c.js";import{D as we}from"./WorkbenchModal-Ctob14VR.js";import{M as Le,v as ze}from"./MobileSheet-DLg-gX1t.js";import{u as Xe,X as K,r as ve,w as Ke,aP as Oe}from"./WorkbenchLayout-ByFw4eeu.js";import{u as Je,d as Qe,e as Ye}from"./App-DkvE5EyM.js";import{b as Ze,g as ye,r as Ne,s as ea,u as aa,k as na,m as ra}from"./terminal-runtime-meta-AWXJpN4r.js";import{T as la,i as ta}from"./TerminalRuntimeFallbackModal-CRhOQOsT.js";import"./window-BWqRixxq.js";import"./event-DvH9tcej.js";const O={mode:"command",name:"",cwd:"",target:"",args:"",port:"",proxyEnabled:!1},Te=60*1e3;function ia(l){return l?new Date(l).toLocaleString():n("common.unknown")}function sa(l){return l.split(" ").map(t=>t.trim()).filter(Boolean)}function oa(l){var t,c,u;return((t=l.find(p=>p.id==="cmd"&&p.available))==null?void 0:t.id)??((c=l.find(p=>p.available))==null?void 0:c.id)??((u=l[0])==null?void 0:u.id)??""}function ca(l){const t=l.name.trim();if(t)return t;const c=l.target.trim(),u=l.args.trim();return c?u?`${c} ${u}`:c:l.mode==="script"?n("terminalManager.defaultScriptName"):n("terminalManager.defaultCommandName")}function ma(l){const t=l.args.join(" ");return t?`${l.command} ${t}`:l.command}function da(l){return{mode:Pe(l),name:l.name,cwd:l.cwd,target:l.command,args:l.args.join(" "),port:l.port===null?"":String(l.port),proxyEnabled:l.proxyEnabled}}function ua(l){return Ve(`/proxy/${encodeURIComponent(l)}`)}function Pe(l){const t=l.command.toLowerCase();return t.endsWith(".ps1")||t.endsWith(".bat")||t.endsWith(".cmd")||t.endsWith(".sh")?"script":"command"}function ga(l){const t=l.trim();if(!t)return null;const c=Number(t);return Number.isInteger(c)?c:Number.NaN}function ke(l,t){return l.get(t)??null}function pa(l,t){return l.port===null?{tone:"untracked",title:n("terminalManager.portUnset"),summary:n("terminalManager.portUnsetDescription"),badgeLabel:n("terminalManager.portUnset")}:t!=null&&t.occupied?{tone:"running",title:n("terminalManager.portOccupied"),summary:t.processName||n("terminalManager.processCommandFallback"),badgeLabel:t.processId?`PID ${t.processId}`:n("terminalManager.statusRunning"),badgeTone:"success"}:{tone:"idle",title:n("terminalManager.portAvailable"),summary:n("terminalManager.portAvailableDescription"),badgeLabel:n("terminalManager.statusStopped")}}function ha(l){return l!=null&&l.terminationScope?l.terminationScope==="process_group"?n("terminalManager.terminationScopeProcessGroup"):n("terminalManager.terminationScopeProcess"):null}function xa({open:l,mobile:t=!1,title:c,description:u,onClose:p,children:N,className:m}){return t?e.jsx(Le,{open:l,title:c,description:u,kind:"form",height:"three-quarter",className:m,bodyClassName:"terminal-manager-modal-body",showHandle:!0,onClose:p,children:N}):e.jsx(we,{open:l,title:c,description:u,size:"regular",layout:"form",className:["terminal-manager-modal-card",m].filter(Boolean).join(" "),bodyClassName:"terminal-manager-modal-body",onClose:p,children:N})}function ba({open:l,mobile:t=!1,busy:c,title:u,description:p,confirmLabel:N,onClose:m,onConfirm:h,className:T}){const R=e.jsxs(ze,{className:"terminal-manager-confirm-actions",children:[e.jsx("button",{type:"button",className:"secondary-button",disabled:c,onClick:m,children:n("common.cancel")}),e.jsx("button",{type:"button",className:"secondary-button workbench-danger-button",disabled:c,onClick:()=>{h()},children:c?n("terminalManager.templateRemoving"):N})]});return t?e.jsx(Le,{open:l,title:u,description:p,kind:"action",height:"auto",dismissible:!c,showHandle:!0,showCancelButton:!1,className:T,bodyClassName:"terminal-manager-confirm-body",footer:R,onClose:m,children:null}):e.jsx(we,{open:l,title:u,description:p,size:"compact",layout:"confirm",dismissible:!c,className:["terminal-manager-confirm-modal",T].filter(Boolean).join(" "),bodyClassName:"terminal-manager-confirm-body",footer:R,onClose:m,children:null})}function Ce({label:l,value:t,options:c,open:u,onToggle:p,onChange:N}){const m=c.find(h=>h.value===t)??c[0]??null;return e.jsxs("div",{className:"field-group terminal-manager-mobile-picker",children:[e.jsx("span",{children:l}),e.jsxs("button",{type:"button",className:"terminal-manager-mobile-picker-trigger","aria-label":`${l} ${(m==null?void 0:m.label)??""}`.trim(),"aria-expanded":u?"true":"false",onClick:p,children:[e.jsxs("span",{className:"terminal-manager-mobile-picker-copy",children:[e.jsx("strong",{children:(m==null?void 0:m.label)??n("common.unknown")}),m!=null&&m.description?e.jsx("span",{children:m.description}):null]}),e.jsx(fa,{expanded:u})]}),u?e.jsx("div",{className:"terminal-manager-mobile-picker-list",role:"listbox","aria-label":l,children:c.map(h=>{const T=h.value===t;return e.jsxs("button",{type:"button",role:"option",className:"terminal-manager-mobile-picker-option","aria-selected":T,disabled:h.disabled,onClick:()=>{N(h.value)},children:[e.jsxs("span",{className:"terminal-manager-mobile-picker-option-copy",children:[e.jsx("strong",{children:h.label}),h.description?e.jsx("span",{children:h.description}):null]}),e.jsx("span",{className:"terminal-manager-mobile-picker-option-indicator","aria-hidden":"true",children:T?e.jsx(Ma,{}):e.jsx(ja,{})})]},h.value||"__empty__")})}):null]})}function fa({expanded:l}){return e.jsx("svg",{viewBox:"0 0 16 16","aria-hidden":"true",className:"terminal-manager-mobile-picker-chevron","data-expanded":l?"true":"false",children:e.jsx("path",{d:"M4 6.5L8 10l4-3.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.7"})})}function ja(){return e.jsx("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:e.jsx("path",{d:"M6 3.5L10.5 8 6 12.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.6"})})}function Ma(){return e.jsx("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:e.jsx("path",{d:"M3.5 8.5L6.5 11.5L12.5 5.5",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.8"})})}function Sa({className:l,currentWorkspaceId:t,navigationGroups:c,externalWindowMode:u=!1,workbenchShellOverrides:p}){var be,fe,je,Me;const N=Je(),m=Qe(),h=Xe(),{subscribeTerminalManagerSnapshot:T,requestTerminalManagerRefresh:R,addTerminalManagerSnapshotListener:re}={...h,...p},i=(t==null?void 0:t.trim())||null,[J,G]=s.useState([]),[f,P]=s.useState([]),[S,D]=s.useState([]),[x,Q]=s.useState([]),[W,Y]=s.useState(""),[A,E]=s.useState(""),[d,j]=s.useState(O),[_,q]=s.useState(null),[I,H]=s.useState(null),[Se,le]=s.useState([]),[te,V]=s.useState(!1),[Z,ie]=s.useState(!1),[se,oe]=s.useState(null),[ce,me]=s.useState(null),[k,de]=s.useState(null),[M,U]=s.useState(null),[z,ee]=s.useState(null),[ue,ge]=s.useState(!1),[pe,C]=s.useState(null),{showToast:b}=Ye(),B=(l==null?void 0:l.includes("mobile-tool-process-panel"))??!1,$=_!==null,he=_==="edit"?f.find(a=>a.id===I)??null:null,w=_==="edit";s.useEffect(()=>{K("terminal_manager.props",{currentWorkspaceId:t,workspaceCount:c.length,externalWindowMode:u})},[t,u,c.length]);const g=s.useMemo(()=>x.find(a=>a.id===W)??null,[W,x]),F=s.useMemo(()=>Ze(m.ui.osFamily),[m.ui.osFamily]),xe=s.useMemo(()=>new Map(S.map(a=>[a.templateId,a])),[S]),Ee=s.useMemo(()=>S.filter(a=>a.occupied).length,[S]),Ie=s.useMemo(()=>f.filter(a=>a.port!==null).length,[f]),Fe=(g==null?void 0:g.available)===!1&&x.length>0;s.useEffect(()=>{Y(a=>x.length?a&&x.some(r=>r.id===a)?a:oa(x):"")},[x]),s.useEffect(()=>{!$||!i||x.length>0||y(i)},[i,x.length,$]),s.useEffect(()=>{$||C(null)},[$]),s.useEffect(()=>{_==="edit"&&I&&!he&&(q(null),H(null),j(O),E(""),C(null))},[he,I,_]),s.useEffect(()=>{!M||k===M.templateId||f.some(a=>a.id===M.templateId)||U(null)},[M,k,f]),s.useEffect(()=>{if(!i){G([]),P([]),D([]),V(!1);return}const a=ve(ne(i),Te);K("terminal_manager.snapshot",{workspaceId:i,cached:!!a,cachedTemplateCount:(a==null?void 0:a.templates.length)??0,cachedStatusCount:(a==null?void 0:a.templateStatuses.length)??0}),a?(G(a.terminals),P(a.templates),D(a.templateStatuses),Q(a.shellOptions??[]),V(!1)):(G([]),P([]),D([]),Q([]),V(!0))},[i]),s.useEffect(()=>{if(i)return re(a=>{a.workspaceId===i&&(K("terminal_manager.snapshot_received",{workspaceId:a.workspaceId,terminalCount:a.terminals.length,templateCount:a.templates.length,statusCount:a.templateStatuses.length}),Re(a),V(!1))})},[i,re]),s.useEffect(()=>{if(!i)return;const a=ve(ne(i),Te)!==null;if(T(i),a){const r=window.setTimeout(()=>{y(i)},1500);return()=>{window.clearTimeout(r)}}y(i)},[i,R,T]),s.useEffect(()=>{i&&Ke(ne(i),{terminals:J,templates:f,templateStatuses:S,shellOptions:x})},[i,x,S,f,J]);function Re(a){G(a.terminals),P(a.templates),D(a.templateStatuses),Q(a.shellOptions??[])}function y(a){K("terminal_manager.refresh_requested",{workspaceId:a}),R(a)}function X(){q(null),H(null),j(O),E(""),C(null)}function De(){H(null),j(O),E(""),q("create")}function Ae(a){H(a.id),j(da(a)),E(a.runtimeType??""),q("edit")}async function _e(a){if(i){me(a);try{await ea(a),y(i),b({title:n("terminalManager.stopProcessSuccess"),tone:"success"})}catch(r){b({title:r instanceof Error?r.message:n("terminalManager.stopProcessFailed"),tone:"error"})}finally{me(null)}}}async function Ue(){if(!i||!d.target.trim())return;const a=ga(d.port);if(Number.isNaN(a)){b({title:n("terminalManager.invalidPort"),tone:"error"});return}if(d.proxyEnabled&&a===null){b({title:n("terminalManager.proxyPortRequired"),tone:"error"});return}ie(!0);try{const r={workspaceId:i,name:ca(d),cwd:d.cwd.trim()||void 0,command:d.target.trim(),args:sa(d.args),port:a,proxyEnabled:d.proxyEnabled,runtimeType:A||null};if(w&&I){const o=await aa(I,r);P(v=>v.map(L=>L.id===o.id?o:L))}else await na(r);X(),y(i),b({title:w?n("terminalManager.templateUpdateSuccess"):n("terminalManager.templateSaveSuccess"),tone:"success"})}catch(r){b({title:r instanceof Error?r.message:w?n("terminalManager.templateUpdateFailed"):n("terminalManager.templateSaveFailed"),tone:"error"})}finally{ie(!1)}}async function Be(a){const r=await m.bridge.openExternal(a);r.ok||b({title:r.detail||n("terminalManager.openProxyUrlFailed"),tone:"error"})}async function $e(a,r){if(i){de(a.id);try{await ra(a.id),P(o=>o.filter(v=>v.id!==a.id)),D(o=>o.filter(v=>v.templateId!==a.id)),le(o=>o.filter(v=>v!==a.id)),U(o=>(o==null?void 0:o.templateId)===a.id?null:o),I===a.id&&X(),y(i),b({title:n("terminalManager.templateDeleteSuccess"),tone:"success"})}catch(o){b({title:o instanceof Error?o.message:n("terminalManager.templateDeleteFailed"),tone:"error"})}finally{de(null)}}}async function Ge(a){if(!i)return;const r=g!=null&&g.available?g.shell:void 0;oe(a);try{await Ne(a,{shell:r}),y(i),b({title:n("terminalManager.templateRunSuccess"),tone:"success"})}catch(o){if(ta(o)){ee({templateId:a,shell:r});return}b({title:o instanceof Error?o.message:n("terminalManager.templateRunFailed"),tone:"error"})}finally{oe(null)}}async function We(){if(!(!i||!z)){ge(!0);try{await Ne(z.templateId,{shell:z.shell,runtimeType:"embedded-pty"}),ee(null),y(i),b({title:n("terminalManager.templateRunSuccess"),tone:"success"})}catch(a){b({title:a instanceof Error?a.message:n("terminalManager.templateRunFailed"),tone:"error"})}finally{ge(!1)}}}function qe(a){le(r=>r.includes(a)?r.filter(o=>o!==a):[...r,a])}return c.length?i?e.jsxs("section",{className:["conversation-panel","surface-card","terminal-manager-panel",l].filter(Boolean).join(" "),children:[e.jsx(la,{open:z!==null,busy:ue,onClose:()=>{ue||ee(null)},onConfirmFallback:()=>{We()}}),e.jsxs("div",{className:"terminal-manager-header terminal-manager-desktop-header",children:[e.jsx("div",{className:"terminal-manager-panel-heading",children:e.jsxs("div",{children:[e.jsx("h2",{children:n("terminalManager.templateSectionTitle")}),e.jsx("p",{className:"status-text",children:n("terminalManager.desktopPanelDescription")})]})}),e.jsxs("div",{className:"terminal-manager-overview",children:[e.jsxs("article",{className:"terminal-manager-overview-card",children:[e.jsx("span",{children:n("terminalManager.runningCountLabel")}),e.jsx("strong",{children:Ee})]}),e.jsxs("article",{className:"terminal-manager-overview-card",children:[e.jsx("span",{children:n("terminalManager.portWatchCountLabel")}),e.jsx("strong",{children:Ie})]}),e.jsxs("article",{className:"terminal-manager-overview-card",children:[e.jsx("span",{children:n("terminalManager.terminalCountLabel")}),e.jsx("strong",{children:J.length})]})]}),e.jsxs("div",{className:"terminal-manager-toolbar terminal-manager-toolbar-header",children:[e.jsx("button",{className:"secondary-button",type:"button",disabled:!i,onClick:()=>{i&&N(Oe(i))},children:n("terminalManager.openWorkspaceDebugAction")}),e.jsx("button",{className:"ghost-button",type:"button",disabled:!i||te,onClick:()=>{i&&y(i)},children:n("terminalManager.refresh")}),e.jsx("button",{className:"primary-button",type:"button",disabled:!i,onClick:()=>{De()},children:n("terminalManager.openCreateModalAction")})]})]}),e.jsxs("section",{className:"terminal-manager-section",children:[e.jsxs("div",{className:"terminal-manager-section-header",children:[e.jsxs("div",{children:[e.jsx("h3",{children:n("terminalManager.templateSectionTitle")}),e.jsx("p",{className:"status-text",children:n("terminalManager.templateSectionDescription")})]}),e.jsx("span",{className:"workbench-section-counter",children:f.length})]}),te&&!f.length?e.jsx("p",{className:"status-text",children:n("common.loading")}):null,f.length?e.jsx("div",{className:"terminal-manager-list",children:f.map(a=>{const r=ke(xe,a.id),o=pa(a,r),v=ha(r),L=Se.includes(a.id),He=L?n("terminalManager.hideDetailsAction"):n("terminalManager.showDetailsAction"),ae=a.proxyEnabled&&a.proxySlug?ua(a.proxySlug):null;return e.jsxs("article",{className:"terminal-manager-card terminal-manager-desktop-card","data-tone":o.tone,"data-expanded":L?"true":"false",children:[e.jsxs("div",{className:"terminal-manager-card-header",children:[e.jsxs("div",{className:"terminal-manager-card-title",children:[e.jsx("span",{className:"terminal-manager-card-indicator","aria-hidden":"true"}),e.jsx("strong",{children:a.name})]}),e.jsxs("div",{className:"terminal-manager-card-tools",children:[e.jsx("span",{className:"badge terminal-runtime-badge",children:ye(a.runtimeType,m.ui.osFamily)}),e.jsx("span",{className:"badge",children:Pe(a)==="script"?n("terminalManager.scriptMode"):n("terminalManager.commandMode")}),e.jsx("button",{className:"terminal-manager-detail-toggle",type:"button","aria-label":He,"aria-expanded":L,onClick:()=>{qe(a.id)},children:"i"})]})]}),e.jsxs("div",{className:"terminal-manager-status-panel",children:[e.jsxs("div",{className:"terminal-manager-status-copy",children:[e.jsx("p",{className:"terminal-manager-status-title",children:o.title}),e.jsx("p",{className:"status-text",children:o.summary})]}),e.jsxs("div",{className:"terminal-manager-status-badges",children:[e.jsx("span",{className:"terminal-manager-stat-pill",children:a.port===null?n("terminalManager.portUnset"):`${n("terminalManager.portLabel")} ${a.port}`}),e.jsx("span",{className:"badge","data-tone":o.badgeTone,children:o.badgeLabel}),r!=null&&r.occupied&&r.processGroupId?e.jsx("span",{className:"badge",children:`PGID ${r.processGroupId}`}):null,a.proxyEnabled?e.jsx("span",{className:"badge",children:n("terminalManager.proxyEnabled")}):null]})]}),e.jsxs("div",{className:"terminal-manager-actions",children:[r!=null&&r.occupied?e.jsx("button",{className:"secondary-button",type:"button",disabled:ce===a.id,onClick:()=>{_e(a.id)},children:ce===a.id?n("terminalManager.stoppingProcess"):n("terminalManager.stopProcessAction")}):null,e.jsx("button",{className:"secondary-button",type:"button",disabled:se===a.id||Fe,onClick:()=>{Ge(a.id)},children:se===a.id?n("terminalManager.runningTemplate"):n("terminalManager.runTemplateAction")})]}),L?e.jsxs("section",{className:"terminal-manager-details","aria-label":n("terminalManager.detailsSectionTitle"),children:[e.jsxs("div",{className:"terminal-manager-detail-grid",children:[e.jsxs("div",{className:"terminal-manager-detail-item terminal-manager-detail-item-wide",children:[e.jsx("span",{children:n("terminalManager.commandPreviewLabel")}),e.jsx("strong",{children:ma(a)})]}),e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.cwdLabel")}),e.jsx("strong",{children:a.cwd})]}),e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminal.runtimeField")}),e.jsx("strong",{children:ye(a.runtimeType,m.ui.osFamily)})]}),e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.updatedAt")}),e.jsx("strong",{children:ia(a.updatedAt)})]}),e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.portLabel")}),e.jsx("strong",{children:a.port===null?n("terminalManager.portUnset"):a.port})]}),e.jsxs("div",{className:"terminal-manager-detail-item terminal-manager-detail-item-wide",children:[e.jsx("span",{children:n("terminalManager.proxyField")}),e.jsx("strong",{children:ae??n("terminalManager.proxyDisabledDescription")})]}),r!=null&&r.processId?e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.processIdLabel")}),e.jsx("strong",{children:r.processId})]}):null,r!=null&&r.processGroupId?e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.processGroupIdLabel")}),e.jsx("strong",{children:r.processGroupId})]}):null,v?e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.terminationScopeLabel")}),e.jsx("strong",{children:v})]}):null,r!=null&&r.parentProcessId?e.jsxs("div",{className:"terminal-manager-detail-item",children:[e.jsx("span",{children:n("terminalManager.parentProcessIdLabel")}),e.jsx("strong",{children:r.parentProcessId})]}):null,r!=null&&r.processCommandLine?e.jsxs("div",{className:"terminal-manager-detail-item terminal-manager-detail-item-wide",children:[e.jsx("span",{children:n("terminalManager.processCommandLabel")}),e.jsx("strong",{children:r.processCommandLine})]}):null,r!=null&&r.parentProcessCommandLine?e.jsxs("div",{className:"terminal-manager-detail-item terminal-manager-detail-item-wide",children:[e.jsx("span",{children:n("terminalManager.parentProcessCommandLabel")}),e.jsx("strong",{children:r.parentProcessCommandLine})]}):null]}),e.jsxs("div",{className:"terminal-manager-actions terminal-manager-detail-actions",children:[ae?e.jsx("button",{className:"secondary-button",type:"button",onClick:()=>{Be(ae)},children:n("terminalManager.openProxyUrlAction")}):null,e.jsx("button",{className:"secondary-button",type:"button",disabled:Z||k===a.id,onClick:()=>{Ae(a)},children:n("terminalManager.editAction")}),e.jsx("button",{className:"secondary-button workbench-danger-button",type:"button",disabled:k===a.id,onClick:()=>{U({templateId:a.id,name:a.name,occupied:!!(r!=null&&r.occupied)})},children:k===a.id?n("terminalManager.templateRemoving"):n("terminalManager.removeAction")})]})]}):null]},a.id)})}):e.jsx("section",{className:"workbench-empty-state minimal",children:e.jsx("p",{children:n("terminalManager.emptyTemplateBody")})})]}),e.jsx(xa,{open:$,mobile:B,title:w?n("terminalManager.editModalTitle"):n("terminalManager.createModalTitle"),description:w?n("terminalManager.editModalDescription"):n("terminalManager.createModalDescription"),className:B?"terminal-manager-mobile-modal":void 0,onClose:X,children:e.jsxs("section",{className:"terminal-manager-modal-form",children:[B?e.jsxs(e.Fragment,{children:[e.jsx(Ce,{label:n("terminalManager.shellField"),value:W,open:pe==="shell",options:x.map(a=>({value:a.id,label:a.label,description:a.available?null:a.unavailableReason??n("terminalManager.shellUnavailable"),disabled:!a.available})),onToggle:()=>{C(a=>a==="shell"?null:"shell")},onChange:a=>{Y(a),C(null)}}),(g==null?void 0:g.available)===!1&&g.unavailableReason?e.jsx("p",{className:"status-text",children:g.unavailableReason}):null,e.jsx(Ce,{label:n("terminal.runtimeField"),value:A,open:pe==="runtime",options:F.map(a=>({value:a.value,label:a.label,description:a.description})),onToggle:()=>{C(a=>a==="runtime"?null:"runtime")},onChange:a=>{E(a),C(null)}}),e.jsx("p",{className:"status-text",children:((be=F.find(a=>a.value===A))==null?void 0:be.description)??((fe=F[0])==null?void 0:fe.description)})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:n("terminalManager.shellField")}),e.jsx("select",{value:W,onChange:a=>{Y(a.target.value)},children:x.map(a=>e.jsx("option",{value:a.id,disabled:!a.available,children:a.available?a.label:`${a.label} - ${n("terminalManager.shellUnavailable")}`},a.id))}),(g==null?void 0:g.available)===!1&&g.unavailableReason?e.jsx("p",{className:"status-text",children:g.unavailableReason}):null]}),e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:n("terminal.runtimeField")}),e.jsx("select",{value:A,onChange:a=>{E(a.target.value)},children:F.map(a=>e.jsx("option",{value:a.value,children:a.label},a.value||"auto"))}),e.jsx("p",{className:"status-text",children:((je=F.find(a=>a.value===A))==null?void 0:je.description)??((Me=F[0])==null?void 0:Me.description)})]})]}),e.jsxs("div",{className:"terminal-manager-mode-row",role:"tablist","aria-label":n("terminalManager.modeField"),children:[e.jsx("button",{type:"button",className:d.mode==="command"?"workbench-info-tab active":"workbench-info-tab",onClick:()=>{j(a=>({...a,mode:"command"}))},children:n("terminalManager.commandMode")}),e.jsx("button",{type:"button",className:d.mode==="script"?"workbench-info-tab active":"workbench-info-tab",onClick:()=>{j(a=>({...a,mode:"script"}))},children:n("terminalManager.scriptMode")})]}),e.jsxs("div",{className:"terminal-manager-grid",children:[e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:n("terminalManager.templateNameField")}),e.jsx("input",{value:d.name,placeholder:n("terminalManager.templateNamePlaceholder"),onChange:a=>{j(r=>({...r,name:a.target.value}))}})]}),e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:n("terminalManager.cwdField")}),e.jsx("input",{value:d.cwd,placeholder:n("terminalManager.cwdPlaceholder"),onChange:a=>{j(r=>({...r,cwd:a.target.value}))}})]})]}),e.jsxs("div",{className:"terminal-manager-grid",children:[e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:d.mode==="script"?n("terminalManager.scriptPathField"):n("terminalManager.commandField")}),e.jsx("input",{value:d.target,placeholder:d.mode==="script"?n("terminalManager.scriptPathPlaceholder"):n("terminalManager.commandPlaceholder"),onChange:a=>{j(r=>({...r,target:a.target.value}))}})]}),e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:n("terminalManager.argsField")}),e.jsx("input",{value:d.args,placeholder:n("terminalManager.argsPlaceholder"),onChange:a=>{j(r=>({...r,args:a.target.value}))}})]})]}),e.jsxs("div",{className:"terminal-manager-grid",children:[e.jsxs("div",{className:"field-group",children:[e.jsx("span",{children:n("terminalManager.portField")}),e.jsx("input",{value:d.port,placeholder:n("terminalManager.portPlaceholder"),onChange:a=>{j(r=>({...r,port:a.target.value}))}})]}),e.jsxs("div",{className:"field-group terminal-manager-proxy-field",children:[e.jsx("span",{children:n("terminalManager.proxyField")}),e.jsxs("div",{className:"terminal-manager-proxy-control",children:[e.jsx("span",{children:n("terminalManager.proxyToggleLabel")}),e.jsxs("label",{className:"terminal-manager-proxy-switch",children:[e.jsx("input",{type:"checkbox",role:"switch","aria-label":n("terminalManager.proxyField"),checked:d.proxyEnabled,onChange:a=>{j(r=>({...r,proxyEnabled:a.target.checked}))}}),e.jsx("span",{className:"terminal-manager-proxy-track","aria-hidden":"true",children:e.jsx("span",{className:"terminal-manager-proxy-thumb"})})]})]})]})]}),e.jsxs("div",{className:"terminal-manager-actions",children:[e.jsx("button",{className:"secondary-button",type:"button",onClick:X,children:n("common.close")}),e.jsx("button",{className:"primary-button",type:"button",disabled:!i||Z||!d.target.trim(),onClick:()=>{Ue()},children:Z?w?n("terminalManager.templateUpdating"):n("terminalManager.templateSaving"):w?n("terminalManager.saveTemplateChangesAction"):n("terminalManager.saveLaunchAction")})]})]})}),e.jsx(ba,{open:M!==null,mobile:B,busy:M!==null&&k===M.templateId,title:n("terminalManager.removeConfirmTitle"),description:M?n(M.occupied?"terminalManager.removeRunningConfirmTarget":"terminalManager.removeConfirmTarget",{name:M.name}):"",confirmLabel:n("terminalManager.removeConfirmAction"),className:B?"terminal-manager-mobile-modal":"terminal-manager-confirm-modal",onClose:()=>{k||U(null)},onConfirm:()=>{if(!M)return;const a=f.find(r=>r.id===M.templateId);if(!a){U(null);return}ke(xe,a.id),$e(a)}})]}):e.jsx("section",{className:"workbench-empty-state minimal",children:e.jsx("p",{children:n("terminalManager.noCurrentWorkspaceBody")})}):e.jsx("section",{className:"workbench-empty-state minimal",children:e.jsx("p",{children:n("terminalManager.emptyWorkspaceBody")})})}function ne(l){return`terminal-manager.snapshot.${l}`}export{Sa as TerminalManagerPanel};
|