@kingsoftcloud/ksadk-web 0.2.8 → 0.2.10
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/CHANGELOG.md +23 -0
- package/dist-ksadk/assets/{ArtifactsPanel-Z9gYhqIC.js → ArtifactsPanel-DWKSsYb9.js} +1 -1
- package/dist-ksadk/assets/{CodeBlock-BK8ioKOV.js → CodeBlock-CTxzE2VS.js} +1 -1
- package/dist-ksadk/assets/{MathMessageMarkdown-D1NgYJhw.js → MathMessageMarkdown-BQEjyzo5.js} +1 -1
- package/dist-ksadk/assets/{MermaidBlock-Cgzb0dEp.js → MermaidBlock-CDmk7TDv.js} +6 -6
- package/dist-ksadk/assets/NativeTerminalPanel-DEfOlZBW.js +1 -0
- package/dist-ksadk/assets/{arc-B8XCYxQr.js → arc-DsDFn-pM.js} +1 -1
- package/dist-ksadk/assets/architecture-7EHR7CIX-DXMaR0JR.js +1 -0
- package/dist-ksadk/assets/{architectureDiagram-3BPJPVTR-BGRXkycc.js → architectureDiagram-3BPJPVTR-CXQLDPo9.js} +1 -1
- package/dist-ksadk/assets/{blockDiagram-GPEHLZMM-ivIHWi2C.js → blockDiagram-GPEHLZMM-ByJsJcrt.js} +1 -1
- package/dist-ksadk/assets/{c4Diagram-AAUBKEIU-WIhL3FVN.js → c4Diagram-AAUBKEIU-D5eKWwvF.js} +1 -1
- package/dist-ksadk/assets/channel-Be4GcfhN.js +1 -0
- package/dist-ksadk/assets/{chunk-2J33WTMH-CY-mD8DJ.js → chunk-2J33WTMH-CmLQ3DD9.js} +1 -1
- package/dist-ksadk/assets/{chunk-4BX2VUAB-Cy9gwj_G.js → chunk-4BX2VUAB-BhRYlJwh.js} +1 -1
- package/dist-ksadk/assets/{chunk-55IACEB6-kLgiYAgg.js → chunk-55IACEB6-B60wcTiu.js} +1 -1
- package/dist-ksadk/assets/{chunk-727SXJPM-DPKu7-e-.js → chunk-727SXJPM-BGlb7ll1.js} +1 -1
- package/dist-ksadk/assets/{chunk-AQP2D5EJ-HIdrXcue.js → chunk-AQP2D5EJ-C5QUv7XG.js} +1 -1
- package/dist-ksadk/assets/{chunk-FMBD7UC4-9_-0Mwod.js → chunk-FMBD7UC4-Du4tdup0.js} +1 -1
- package/dist-ksadk/assets/{chunk-ND2GUHAM-rQfUwpN0.js → chunk-ND2GUHAM-BsLG8760.js} +1 -1
- package/dist-ksadk/assets/chunk-QZHKN3VN-D07X2ALj.js +1 -0
- package/dist-ksadk/assets/classDiagram-4FO5ZUOK-CcD88kyq.js +1 -0
- package/dist-ksadk/assets/classDiagram-v2-Q7XG4LA2-CcD88kyq.js +1 -0
- package/dist-ksadk/assets/{cose-bilkent-S5V4N54A-bNtnGuJb.js → cose-bilkent-S5V4N54A-JMKU0kQi.js} +1 -1
- package/dist-ksadk/assets/{dagre-BM42HDAG-DZY9agUg.js → dagre-BM42HDAG-P3phXbyY.js} +1 -1
- package/dist-ksadk/assets/{diagram-2AECGRRQ-BcCcFBXZ.js → diagram-2AECGRRQ-C6ifXc81.js} +1 -1
- package/dist-ksadk/assets/{diagram-5GNKFQAL-91Ll9YWG.js → diagram-5GNKFQAL-BLkF21oh.js} +1 -1
- package/dist-ksadk/assets/{diagram-KO2AKTUF-BBIIxvwB.js → diagram-KO2AKTUF-A9gkeGco.js} +1 -1
- package/dist-ksadk/assets/{diagram-LMA3HP47-DxWrcR2m.js → diagram-LMA3HP47-Bqa8UV5s.js} +1 -1
- package/dist-ksadk/assets/{diagram-OG6HWLK6-D0HI_jcf.js → diagram-OG6HWLK6-GRe4pokR.js} +1 -1
- package/dist-ksadk/assets/{dist-qU1gRG7_.js → dist-4wlqrTld.js} +1 -1
- package/dist-ksadk/assets/{dist-B8czu-Qc.js → dist-BVtcRB6j.js} +1 -1
- package/dist-ksadk/assets/{dist-BBayeLLe.js → dist-Bb2GBx-1.js} +1 -1
- package/dist-ksadk/assets/{dist-CA8U0v5G.js → dist-Bg1jewnS.js} +1 -1
- package/dist-ksadk/assets/{dist-BAQH6Sdn.js → dist-BicfrzOs.js} +1 -1
- package/dist-ksadk/assets/{dist-7Jji4hMv.js → dist-CIwg1HaJ.js} +1 -1
- package/dist-ksadk/assets/{dist-Z8OZFHSc.js → dist-CJmGJ-_Y.js} +1 -1
- package/dist-ksadk/assets/{dist-B9a_6axG.js → dist-CNP2pf7G.js} +1 -1
- package/dist-ksadk/assets/{dist-DJeSTOZu.js → dist-CQy3m9R-.js} +1 -1
- package/dist-ksadk/assets/{dist-DgPAQK3Q.js → dist-CTVErq35.js} +1 -1
- package/dist-ksadk/assets/{dist-C--QxXYi.js → dist-CejVKm1n.js} +1 -1
- package/dist-ksadk/assets/{dist-uPv3jeT5.js → dist-Cy6uew5t.js} +1 -1
- package/dist-ksadk/assets/{dist-UxQaQA4j.js → dist-Cybdu3nb.js} +1 -1
- package/dist-ksadk/assets/{dist-DeIyG_Yw.js → dist-D2JPG7pC.js} +1 -1
- package/dist-ksadk/assets/{dist-BXA3YG1m.js → dist-DBDWFC2P.js} +1 -1
- package/dist-ksadk/assets/{dist-J2Ks-ZqQ.js → dist-DELPkMrm.js} +1 -1
- package/dist-ksadk/assets/{dist-DpPvxuVN.js → dist-DIe_LuNr.js} +1 -1
- package/dist-ksadk/assets/{dist-jY01heep.js → dist-DjQKJaGi.js} +1 -1
- package/dist-ksadk/assets/{dist-D0cssRbL.js → dist-DpijsPsZ.js} +1 -1
- package/dist-ksadk/assets/{dist-Dv3mIdmJ.js → dist-DqTi4q3N.js} +1 -1
- package/dist-ksadk/assets/{dist-CsFBiJzz.js → dist-Q6a4_tgv.js} +1 -1
- package/dist-ksadk/assets/{dist-Cu40b2RQ.js → dist-f5z7EOt1.js} +1 -1
- package/dist-ksadk/assets/{erDiagram-TEJ5UH35-DgCMVp9E.js → erDiagram-TEJ5UH35-B8oH_MaS.js} +1 -1
- package/dist-ksadk/assets/eventmodeling-FCH6USID-Dl1-sbst.js +1 -0
- package/dist-ksadk/assets/{flowDiagram-I6XJVG4X-DN-muBt0.js → flowDiagram-I6XJVG4X-BhXAWO91.js} +1 -1
- package/dist-ksadk/assets/{ganttDiagram-6RSMTGT7-H5vifLHR.js → ganttDiagram-6RSMTGT7-BHNcInuv.js} +1 -1
- package/dist-ksadk/assets/gitGraph-WXDBUCRP-BH52bHVm.js +1 -0
- package/dist-ksadk/assets/{gitGraphDiagram-PVQCEYII-Dl4neKoT.js → gitGraphDiagram-PVQCEYII-B82aMrtH.js} +1 -1
- package/dist-ksadk/assets/{index-CAl5bzeo.css → index-DAURbCsP.css} +1 -1
- package/dist-ksadk/assets/index-DZFhFnmx.js +165 -0
- package/dist-ksadk/assets/info-J43DQDTF-DpbRzclW.js +1 -0
- package/dist-ksadk/assets/{infoDiagram-5YYISTIA-eO_oIRLZ.js → infoDiagram-5YYISTIA-b_Hi36OA.js} +1 -1
- package/dist-ksadk/assets/{ishikawaDiagram-YF4QCWOH-CJSADXug.js → ishikawaDiagram-YF4QCWOH-CpiHSyNA.js} +1 -1
- package/dist-ksadk/assets/{journeyDiagram-JHISSGLW-DnORHBWj.js → journeyDiagram-JHISSGLW-BHxHdRl7.js} +1 -1
- package/dist-ksadk/assets/{kanban-definition-UN3LZRKU-DOrZlejw.js → kanban-definition-UN3LZRKU-kTk8cylz.js} +1 -1
- package/dist-ksadk/assets/{katex-Bak1iKwY.js → katex-D_Tkj1sg.js} +1 -1
- package/dist-ksadk/assets/{linear-DkEeqtZQ.js → linear-Dc1T6HuL.js} +1 -1
- package/dist-ksadk/assets/{mermaid-parser.core-Pkp3v6Nd.js → mermaid-parser.core-Cfv6TRDT.js} +2 -2
- package/dist-ksadk/assets/{mindmap-definition-RKZ34NQL-Dh20TZFT.js → mindmap-definition-RKZ34NQL-BsWFIVwR.js} +1 -1
- package/dist-ksadk/assets/packet-YPE3B663-DCpFrt65.js +1 -0
- package/dist-ksadk/assets/pie-LRSECV5Y-BcSHuNj-.js +1 -0
- package/dist-ksadk/assets/{pieDiagram-4H26LBE5-CYMD4pWv.js → pieDiagram-4H26LBE5-CAMt3yXs.js} +1 -1
- package/dist-ksadk/assets/{quadrantDiagram-W4KKPZXB-Ck4oAyPK.js → quadrantDiagram-W4KKPZXB-D-fXOUis.js} +1 -1
- package/dist-ksadk/assets/radar-GUYGQ44K-DR1bSSMx.js +1 -0
- package/dist-ksadk/assets/{requirementDiagram-4Y6WPE33-BdIO_5Zu.js → requirementDiagram-4Y6WPE33-on5TsZ__.js} +1 -1
- package/dist-ksadk/assets/{sankeyDiagram-5OEKKPKP-C_wJgAIG.js → sankeyDiagram-5OEKKPKP-DJVzeVPc.js} +1 -1
- package/dist-ksadk/assets/{sequenceDiagram-3UESZ5HK-s-Vxixrb.js → sequenceDiagram-3UESZ5HK-DHLjjUuy.js} +1 -1
- package/dist-ksadk/assets/{stateDiagram-AJRCARHV-DKP5_2dP.js → stateDiagram-AJRCARHV-CS1svOV-.js} +1 -1
- package/dist-ksadk/assets/stateDiagram-v2-BHNVJYJU-BXQTiPGY.js +1 -0
- package/dist-ksadk/assets/{timeline-definition-PNZ67QCA-SkcJBZyI.js → timeline-definition-PNZ67QCA-CzEM0jEl.js} +1 -1
- package/dist-ksadk/assets/treeView-BLDUP644-94CTmjJu.js +1 -0
- package/dist-ksadk/assets/treemap-LRROVOQU-Cjv6ruUS.js +1 -0
- package/dist-ksadk/assets/{vennDiagram-CIIHVFJN-C7xBs0Ud.js → vennDiagram-CIIHVFJN-CX4PRvMt.js} +1 -1
- package/dist-ksadk/assets/wardley-L42UT6IY-B-RIUQEs.js +1 -0
- package/dist-ksadk/assets/{wardleyDiagram-YWT4CUSO-D3oLVyk-.js → wardleyDiagram-YWT4CUSO-C_uFCiox.js} +1 -1
- package/dist-ksadk/assets/{xychartDiagram-2RQKCTM6-BG-2oHar.js → xychartDiagram-2RQKCTM6-C0jIrQJj.js} +1 -1
- package/dist-ksadk/index.html +2 -2
- package/dist-lib/App.d.ts +3 -1
- package/dist-lib/App.d.ts.map +1 -1
- package/dist-lib/{ArtifactsPanel-DFx9Y2xE.js → ArtifactsPanel-Bwj57S63.js} +4 -4
- package/dist-lib/{CodeBlock-liGJ8t29.js → CodeBlock-CqZR-NBE.js} +1 -1
- package/dist-lib/{MathMessageMarkdown-hWMdpCVN.js → MathMessageMarkdown-D-CXaxIx.js} +2 -2
- package/dist-lib/{NativeTerminalPanel-q4ECX8EX.js → NativeTerminalPanel-DASBHcE0.js} +77 -68
- package/dist-lib/{WorkspacePanelContainer-26j9UzyY.js → WorkspacePanelContainer-DLWLtZRG.js} +927 -832
- package/dist-lib/api/events.d.ts +12 -1
- package/dist-lib/api/events.d.ts.map +1 -1
- package/dist-lib/api/session.d.ts +11 -2
- package/dist-lib/api/session.d.ts.map +1 -1
- package/dist-lib/components/chat/ChatMessageList.d.ts.map +1 -1
- package/dist-lib/components/chat/ChatSidebar.d.ts +6 -1
- package/dist-lib/components/chat/ChatSidebar.d.ts.map +1 -1
- package/dist-lib/components/chat/ConnectedMessageList.d.ts +2 -1
- package/dist-lib/components/chat/ConnectedMessageList.d.ts.map +1 -1
- package/dist-lib/components/chat/ConnectedSidebar.d.ts +2 -1
- package/dist-lib/components/chat/ConnectedSidebar.d.ts.map +1 -1
- package/dist-lib/components/native/NativeTerminalPanel.d.ts +2 -1
- package/dist-lib/components/native/NativeTerminalPanel.d.ts.map +1 -1
- package/dist-lib/components.js +3 -3
- package/dist-lib/core/api/facade.d.ts +13 -4
- package/dist-lib/core/api/facade.d.ts.map +1 -1
- package/dist-lib/core/api/types.d.ts +13 -1
- package/dist-lib/core/api/types.d.ts.map +1 -1
- package/dist-lib/hooks/useSessionLifecycle.d.ts +2 -0
- package/dist-lib/hooks/useSessionLifecycle.d.ts.map +1 -1
- package/dist-lib/runtime.js +1107 -817
- package/dist-lib/stores/checkpoint.d.ts.map +1 -1
- package/dist-lib/stores/session.d.ts +35 -1
- package/dist-lib/stores/session.d.ts.map +1 -1
- package/dist-lib/styles.css +1 -1
- package/dist-lib/utils/message-virtualization.d.ts +21 -0
- package/dist-lib/utils/message-virtualization.d.ts.map +1 -0
- package/dist-lib/utils/session-list.d.ts.map +1 -1
- package/dist-lib/utils/session-pagination.d.ts +20 -0
- package/dist-lib/utils/session-pagination.d.ts.map +1 -0
- package/dist-lib/utils/tool-display.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist-ksadk/assets/NativeTerminalPanel-Cyqpkjbr.js +0 -1
- package/dist-ksadk/assets/architecture-7EHR7CIX-C-uhPv8O.js +0 -1
- package/dist-ksadk/assets/channel-Ci9yKHuZ.js +0 -1
- package/dist-ksadk/assets/chunk-QZHKN3VN-DBcvEZ0d.js +0 -1
- package/dist-ksadk/assets/classDiagram-4FO5ZUOK-D6n5-2lp.js +0 -1
- package/dist-ksadk/assets/classDiagram-v2-Q7XG4LA2-D6n5-2lp.js +0 -1
- package/dist-ksadk/assets/eventmodeling-FCH6USID-B_sBONqE.js +0 -1
- package/dist-ksadk/assets/gitGraph-WXDBUCRP-DXIxi1x7.js +0 -1
- package/dist-ksadk/assets/index-D5_6kUT7.js +0 -165
- package/dist-ksadk/assets/info-J43DQDTF-D4tIflDz.js +0 -1
- package/dist-ksadk/assets/packet-YPE3B663-D_sVaF4e.js +0 -1
- package/dist-ksadk/assets/pie-LRSECV5Y-BBQErvVp.js +0 -1
- package/dist-ksadk/assets/radar-GUYGQ44K-C_YJqhWD.js +0 -1
- package/dist-ksadk/assets/stateDiagram-v2-BHNVJYJU-ccBp8leq.js +0 -1
- package/dist-ksadk/assets/treeView-BLDUP644-BszQ3ftU.js +0 -1
- package/dist-ksadk/assets/treemap-LRROVOQU-DJwCPK-A.js +0 -1
- package/dist-ksadk/assets/wardley-L42UT6IY-BSARP5Ll.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{W as e,ct as t,dt as n,ft as r,lt as i,mt as a,pt as o,ut as s,wt as c,xt as l,yt as u}from"./index-DZFhFnmx.js";var d=u(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),f=u(`plug-zap`,[[`path`,{d:`M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z`,key:`goz73y`}],[`path`,{d:`m2 22 3-3`,key:`19mgm9`}],[`path`,{d:`M7.5 13.5 10 11`,key:`7xgeeb`}],[`path`,{d:`M10.5 16.5 13 14`,key:`10btkg`}],[`path`,{d:`m18 3-4 4h6l-4 4`,key:`16psg9`}]]),p=c(l(),1),m=`/_ksadk/terminal/sessions`,h=/\x1b\](?:10|11|12);(?:rgb:)?[0-9a-fA-F]{1,4}\/[0-9a-fA-F]{1,4}\/[0-9a-fA-F]{1,4}(?:\x07|\x1b\\)/g,g=/\]1[012];(?:rgb:)?[0-9a-fA-F]{1,4}\/[0-9a-fA-F]{1,4}\/[0-9a-fA-F]{1,4}/g;function _(e,t){let n=Number(e);return Number.isFinite(n)&&n>0?Math.floor(n):t}function v(e){let t=Date.parse(String(e?.updated_at||e?.UpdatedAt||``));return Number.isNaN(t)?0:t}function y(e={}){let t={mode:String(e.mode||`tui`).trim()||`tui`,cols:_(e.cols,80),rows:_(e.rows,24)},n=String(e.sessionId||e.session_id||``).trim();n&&(t.session_id=n);let r=String(e.cwd||``).trim();return r&&(t.cwd=r),e.options&&typeof e.options==`object`&&(t.options=e.options),t}function b(e){return(Array.isArray(e?.sessions)?e.sessions:Array.isArray(e?.Sessions)?e.Sessions:[]).map(e=>({terminal_session_id:String(e?.terminal_session_id||e?.TerminalSessionId||``).trim(),mode:String(e?.mode||e?.Mode||`tui`).trim()||`tui`,status:String(e?.status||e?.Status||`closed`).trim()||`closed`,cols:_(e?.cols??e?.Cols,80),rows:_(e?.rows??e?.Rows,24),session_id:String(e?.session_id||e?.SessionId||``).trim(),cwd:String(e?.cwd||e?.Cwd||``).trim(),created_at:e?.created_at||e?.CreatedAt||``,updated_at:e?.updated_at||e?.UpdatedAt||``,exit_code:e?.exit_code??e?.ExitCode??null})).filter(e=>e.terminal_session_id).filter(e=>e.status!==`closed`&&e.status!==`deleted`).sort((e,t)=>{let n=+(e.status===`running`),r=+(t.status===`running`);return n===r?v(t)-v(e):r-n})}function x(e=`/_ksadk/terminal/ws`,t,n){let r=n||(typeof window<`u`?window.location:{href:`http://localhost/`,protocol:`http:`}),i=new URL(e||`/_ksadk/terminal/ws`,r.href||`http://localhost/`);i.protocol=i.protocol===`https:`?`wss:`:`ws:`;let a=String(t||``).trim();return a&&i.searchParams.set(`terminal_session_id`,a),i.toString()}function S(e){return String(e||``).replace(h,``).replace(g,``)}var C=t(),w=2e4;function T(e){return typeof e==`string`?Promise.resolve(e):e instanceof Blob?e.text():Promise.resolve(new TextDecoder().decode(e))}async function E(e){let t=await e.text();if(!t)return{};try{return JSON.parse(t)}catch{return{}}}function D({capability:t,open:c,onClose:l,autoCreateWhenEmpty:u=!0}){let[h,g]=(0,p.useState)(`idle`),[_,v]=(0,p.useState)([]),[D,O]=(0,p.useState)(null),[k,A]=(0,p.useState)(!1),j=(0,p.useRef)(null),M=(0,p.useRef)(null),N=(0,p.useRef)(null),P=(0,p.useRef)(null),F=(0,p.useRef)([]),I=(0,p.useRef)(null),L=(0,p.useRef)(!1),R=(0,p.useMemo)(()=>_.find(e=>e.terminal_session_id===D)||null,[D,_]),z=(0,p.useCallback)(async()=>{L.current=!0,g(`connecting`);let e=await fetch(m,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(y({mode:t.Mode||`tui`}))});if(!e.ok){g(`error`);return}let n=(await E(e))?.session;if(!n?.terminal_session_id){g(`error`);return}await I.current?.(),O(n.terminal_session_id)},[t.Mode]),B=(0,p.useCallback)(async()=>{A(!0);try{let e=await fetch(m);if(!e.ok)throw Error(`HTTP ${e.status}`);let n=b(await E(e));v(n),O(e=>e&&n.some(t=>t.terminal_session_id===e)?e:n[0]?.terminal_session_id||null),c&&t.Enabled&&u&&n.length===0&&!L.current&&(L.current=!0,await z())}catch{g(`error`)}finally{A(!1)}},[u,t.Enabled,z,c]);(0,p.useEffect)(()=>{F.current=_},[_]),(0,p.useEffect)(()=>{I.current=B},[B]),(0,p.useEffect)(()=>{(!c||!t.Enabled)&&(L.current=!1)},[t.Enabled,c]);let V=(0,p.useCallback)(async n=>{if(!j.current)return()=>{};g(`connecting`);let r=!1,i=null,a=null,o=null,s=null,c=null,l=null,u=null,d=null;return M.current?.close(1e3,`switch terminal session`),M.current=null,N.current?.dispose(),N.current=null,P.current=null,j.current.innerHTML=``,Promise.all([e(()=>import(`./xterm-DooSxjI5.js`),[],import.meta.url),e(()=>import(`./addon-fit-DthTIhi3.js`),[],import.meta.url)]).then(([e,f])=>{if(r||!j.current)return;let{Terminal:p}=e,{FitAddon:m}=f;i=new p({cursorBlink:!0,convertEol:!0,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace`,fontSize:14,lineHeight:1.2,scrollback:6e3,allowProposedApi:!0,theme:{background:`#020617`,foreground:`#e5edf5`,cursor:`#34d399`,cursorAccent:`#020617`,selectionBackground:`#1e40af66`,black:`#020617`,red:`#fb7185`,green:`#34d399`,yellow:`#fbbf24`,blue:`#60a5fa`,magenta:`#c084fc`,cyan:`#22d3ee`,white:`#e5edf5`,brightBlack:`#64748b`,brightRed:`#fda4af`,brightGreen:`#86efac`,brightYellow:`#fde68a`,brightBlue:`#93c5fd`,brightMagenta:`#d8b4fe`,brightCyan:`#67e8f9`,brightWhite:`#ffffff`}}),a=new m,i.loadAddon(a),i.open(j.current),N.current=i,P.current=a;let h=()=>{try{a?.fit()}catch{}},_=()=>{c?.readyState!==WebSocket.OPEN||!i||c.send(JSON.stringify({type:`resize`,cols:i.cols||n.cols||80,rows:i.rows||n.rows||24}))},v=()=>{h(),_()},y=()=>{window.requestAnimationFrame(()=>{r||(v(),window.requestAnimationFrame(()=>{r||v()}))})};window.setTimeout(y,0),c=new WebSocket(x(t.Path||`/_ksadk/terminal/ws`,n.terminal_session_id),t.Protocol||`ks-terminal.v1`),M.current=c,c.addEventListener(`open`,()=>{h(),c?.send(JSON.stringify({type:`attach`,terminal_session_id:n.terminal_session_id,cols:i?.cols||n.cols||80,rows:i?.rows||n.rows||24})),y(),g(`connected`),i?.focus()}),c.addEventListener(`message`,e=>{if(typeof e.data==`string`)try{let t=JSON.parse(e.data);if(t?.type===`ready`){g(`connected`);return}if(t?.type===`pong`)return;if(t?.type===`exit`){g(`closed`);return}if(t?.type===`error`){g(`error`),i?.writeln(`\r\n${t.message||`Terminal error`}`);return}}catch{}T(e.data).then(e=>{e&&i?.write(e)})}),c.addEventListener(`close`,()=>{g(e=>e===`error`?e:`closed`),M.current=null}),c.addEventListener(`error`,()=>{g(`error`)});let b=e=>{let t=S(e);t&&c?.readyState===WebSocket.OPEN&&c.send(new TextEncoder().encode(t))};o=i.onData(e=>{b(e)}),s=i.onBinary(e=>{b(e)}),d=window.setInterval(()=>{c?.readyState===WebSocket.OPEN&&c.send(JSON.stringify({type:`ping`}))},w),l=()=>{v()},window.addEventListener(`resize`,l),u=new ResizeObserver(()=>{y()}),u.observe(j.current)}),()=>{r=!0,o?.dispose(),s?.dispose(),l&&window.removeEventListener(`resize`,l),d!==null&&window.clearInterval(d),u?.disconnect(),c&&(c.readyState===WebSocket.OPEN||c.readyState===WebSocket.CONNECTING)&&c.close(1e3,`panel closed`),M.current===c&&(M.current=null),i?.dispose(),N.current=null,P.current=null}},[t.Path,t.Protocol]);(0,p.useEffect)(()=>{!c||!t.Enabled||B()},[t.Enabled,c,B]),(0,p.useEffect)(()=>{let e=F.current.find(e=>e.terminal_session_id===D)||null;if(!c||!e)return;let t=()=>{},n=!1;return V(e).then(e=>{t=e,n&&t()}),()=>{n=!0,t()}},[D,V,c]);let H=async e=>{let t=_.filter(t=>t.terminal_session_id!==e);v(t),D===e&&(O(t[0]?.terminal_session_id||null),t.length===0&&g(`idle`),M.current?.close(1e3,`terminal session deleted`),M.current=null,N.current?.dispose(),N.current=null,P.current=null,j.current&&(j.current.innerHTML=``));let n=await fetch(`${m}/${e}`,{method:`DELETE`});!n.ok&&n.status!==404&&g(`error`),await B()};return c?(0,C.jsxs)(`div`,{className:`fixed inset-0 z-50 overflow-hidden border border-slate-800 bg-slate-950 text-slate-100 shadow-2xl shadow-slate-950/40 sm:inset-3 sm:rounded-3xl`,children:[(0,C.jsxs)(`div`,{className:`flex items-center justify-between border-b border-slate-800 bg-slate-900 px-4 py-3`,children:[(0,C.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,C.jsx)(`div`,{className:`flex h-9 w-9 items-center justify-center rounded-2xl bg-emerald-500/15 text-emerald-300`,children:(0,C.jsx)(r,{className:`h-4 w-4`})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`div`,{className:`truncate text-sm font-semibold`,children:`Native TUI`}),(0,C.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs text-slate-400`,children:[(0,C.jsx)(f,{className:`h-3 w-3`}),h]})]})]}),(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,C.jsx)(`button`,{type:`button`,onClick:()=>void B(),className:`rounded-xl p-2 text-slate-400 transition hover:bg-slate-800 hover:text-slate-100`,"aria-label":`刷新会话列表`,children:(0,C.jsx)(o,{className:i(`h-4 w-4`,k&&`animate-spin`)})}),(0,C.jsx)(`button`,{type:`button`,onClick:()=>void z(),className:`rounded-xl p-2 text-slate-400 transition hover:bg-slate-800 hover:text-slate-100`,"aria-label":`新建终端会话`,children:(0,C.jsx)(a,{className:`h-4 w-4`})}),(0,C.jsx)(`button`,{type:`button`,onClick:l,className:`rounded-xl p-2 text-slate-400 transition hover:bg-slate-800 hover:text-slate-100`,"aria-label":`关闭 TUI`,children:(0,C.jsx)(s,{className:`h-4 w-4`})})]})]}),(0,C.jsxs)(`div`,{className:`grid h-[calc(100%-4rem)] min-h-0 grid-cols-[18rem_minmax(0,1fr)] bg-slate-950`,children:[(0,C.jsxs)(`aside`,{className:`flex min-h-0 flex-col border-r border-slate-800 bg-slate-950`,children:[(0,C.jsx)(`div`,{className:`border-b border-slate-800 px-4 py-3 text-xs font-medium uppercase tracking-[0.12em] text-slate-500`,children:`会话`}),(0,C.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto p-2`,children:[_.length===0?(0,C.jsxs)(`button`,{type:`button`,onClick:()=>void z(),className:`flex w-full items-center justify-center gap-2 rounded-2xl border border-dashed border-slate-700 px-3 py-5 text-sm text-slate-400 transition hover:bg-slate-900`,children:[(0,C.jsx)(a,{className:`h-4 w-4`}),`新建终端会话`]}):null,_.map(e=>(0,C.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:()=>O(e.terminal_session_id),onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),O(e.terminal_session_id))},className:i(`group mb-2 rounded-2xl border px-3 py-3 text-left transition`,D===e.terminal_session_id?`border-emerald-400/50 bg-emerald-500/10`:`border-slate-800 bg-slate-900/60 hover:bg-slate-900`),children:[(0,C.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`div`,{className:`truncate text-sm font-medium text-slate-100`,children:e.terminal_session_id}),(0,C.jsx)(`div`,{className:`mt-1 text-[11px] text-slate-400`,children:e.session_id||`未绑定会话`})]}),(0,C.jsxs)(`div`,{className:`flex items-center gap-1`,children:[e.status===`running`?(0,C.jsx)(d,{className:`h-3.5 w-3.5 text-emerald-400`}):null,(0,C.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),H(e.terminal_session_id)},className:`rounded-lg p-1.5 text-slate-500 opacity-0 transition hover:bg-slate-800 hover:text-rose-300 group-hover:opacity-100`,title:`关闭会话`,children:(0,C.jsx)(n,{className:`h-3.5 w-3.5`})})]})]}),(0,C.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 text-[11px] text-slate-500`,children:[(0,C.jsx)(`span`,{className:`rounded-full border border-slate-700 px-2 py-0.5`,children:e.mode}),(0,C.jsxs)(`span`,{className:`rounded-full border border-slate-700 px-2 py-0.5`,children:[e.cols,`x`,e.rows]}),(0,C.jsx)(`span`,{className:`rounded-full border border-slate-700 px-2 py-0.5`,children:e.status})]})]},e.terminal_session_id))]})]}),(0,C.jsx)(`section`,{className:`min-h-0 bg-slate-950 p-2`,children:(0,C.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col overflow-hidden rounded-2xl border border-slate-800 bg-slate-950`,children:[(0,C.jsxs)(`div`,{className:`flex items-center justify-between border-b border-slate-800 bg-slate-900/80 px-4 py-2 text-xs text-slate-400`,children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,C.jsx)(`span`,{className:`rounded-full border border-slate-700 px-2 py-0.5`,children:R?.terminal_session_id||`no session`}),(0,C.jsx)(`span`,{children:R?.status||`idle`})]}),(0,C.jsx)(`div`,{className:`text-slate-500`,children:R?.cwd||R?.session_id||`attach to a terminal session`})]}),(0,C.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[h===`connecting`?(0,C.jsx)(`div`,{className:`absolute left-5 top-5 z-10 rounded-full bg-slate-900/90 px-3 py-1 text-xs text-slate-400`,children:`正在连接原生 TUI...`}):null,(0,C.jsx)(`div`,{ref:j,className:`h-full w-full overflow-hidden bg-slate-950`})]})]})})]})]}):null}export{D as NativeTerminalPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{At as e,Ct as t,Dt as n,Et as r,Mt as i,Ot as a,St as o,Tt as s,bt as c,jt as l,kt as u,vt as d,xt as f,yt as p}from"./MermaidBlock-
|
|
1
|
+
import{At as e,Ct as t,Dt as n,Et as r,Mt as i,Ot as a,St as o,Tt as s,bt as c,jt as l,kt as u,vt as d,xt as f,yt as p}from"./MermaidBlock-CDmk7TDv.js";function m(e){return e.innerRadius}function h(e){return e.outerRadius}function g(e){return e.startAngle}function _(e){return e.endAngle}function v(e){return e&&e.padAngle}function y(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function b(t,n,i,a,o,s,c){var l=t-i,u=n-a,d=(c?s:-s)/e(l*l+u*u),f=d*u,p=-d*l,m=t+f,h=n+p,g=i+f,_=a+p,v=(m+g)/2,y=(h+_)/2,b=g-m,x=_-h,S=b*b+x*x,C=o-s,w=m*_-g*h,T=(x<0?-1:1)*e(r(0,C*C*S-w*w)),E=(w*x-b*T)/S,D=(-w*b-x*T)/S,O=(w*x+b*T)/S,k=(-w*b+x*T)/S,A=E-v,j=D-y,M=O-v,N=k-y;return A*A+j*j>M*M+N*N&&(E=O,D=k),{cx:E,cy:D,x01:-f,y01:-p,x11:E*(o/C-1),y11:D*(o/C-1)}}function x(){var r=m,x=h,S=i(0),C=null,w=g,T=_,E=v,D=null,O=d(k);function k(){var i,d,m=+r.apply(this,arguments),h=+x.apply(this,arguments),g=w.apply(this,arguments)-s,_=T.apply(this,arguments)-s,v=p(_-g),k=_>g;if(D||=i=O(),h<m&&(d=h,h=m,m=d),!(h>1e-12))D.moveTo(0,0);else if(v>l-1e-12)D.moveTo(h*t(g),h*u(g)),D.arc(0,0,h,g,_,!k),m>1e-12&&(D.moveTo(m*t(_),m*u(_)),D.arc(0,0,m,_,g,k));else{var A=g,j=_,M=g,N=_,P=v,F=v,I=E.apply(this,arguments)/2,L=I>1e-12&&(C?+C.apply(this,arguments):e(m*m+h*h)),R=n(p(h-m)/2,+S.apply(this,arguments)),z=R,B=R,V,H;if(L>1e-12){var U=f(L/m*u(I)),W=f(L/h*u(I));(P-=U*2)>1e-12?(U*=k?1:-1,M+=U,N-=U):(P=0,M=N=(g+_)/2),(F-=W*2)>1e-12?(W*=k?1:-1,A+=W,j-=W):(F=0,A=j=(g+_)/2)}var G=h*t(A),K=h*u(A),q=m*t(N),J=m*u(N);if(R>1e-12){var Y=h*t(j),X=h*u(j),Z=m*t(M),Q=m*u(M),$;if(v<a)if($=y(G,K,Z,Q,Y,X,q,J)){var ee=G-$[0],te=K-$[1],ne=Y-$[0],re=X-$[1],ie=1/u(c((ee*ne+te*re)/(e(ee*ee+te*te)*e(ne*ne+re*re)))/2),ae=e($[0]*$[0]+$[1]*$[1]);z=n(R,(m-ae)/(ie-1)),B=n(R,(h-ae)/(ie+1))}else z=B=0}F>1e-12?B>1e-12?(V=b(Z,Q,G,K,h,B,k),H=b(Y,X,q,J,h,B,k),D.moveTo(V.cx+V.x01,V.cy+V.y01),B<R?D.arc(V.cx,V.cy,B,o(V.y01,V.x01),o(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,B,o(V.y01,V.x01),o(V.y11,V.x11),!k),D.arc(0,0,h,o(V.cy+V.y11,V.cx+V.x11),o(H.cy+H.y11,H.cx+H.x11),!k),D.arc(H.cx,H.cy,B,o(H.y11,H.x11),o(H.y01,H.x01),!k))):(D.moveTo(G,K),D.arc(0,0,h,A,j,!k)):D.moveTo(G,K),!(m>1e-12)||!(P>1e-12)?D.lineTo(q,J):z>1e-12?(V=b(q,J,Y,X,m,-z,k),H=b(G,K,Z,Q,m,-z,k),D.lineTo(V.cx+V.x01,V.cy+V.y01),z<R?D.arc(V.cx,V.cy,z,o(V.y01,V.x01),o(H.y01,H.x01),!k):(D.arc(V.cx,V.cy,z,o(V.y01,V.x01),o(V.y11,V.x11),!k),D.arc(0,0,m,o(V.cy+V.y11,V.cx+V.x11),o(H.cy+H.y11,H.cx+H.x11),k),D.arc(H.cx,H.cy,z,o(H.y11,H.x11),o(H.y01,H.x01),!k))):D.arc(0,0,m,N,M,k)}if(D.closePath(),i)return D=null,i+``||null}return k.centroid=function(){var e=(+r.apply(this,arguments)+ +x.apply(this,arguments))/2,n=(+w.apply(this,arguments)+ +T.apply(this,arguments))/2-a/2;return[t(n)*e,u(n)*e]},k.innerRadius=function(e){return arguments.length?(r=typeof e==`function`?e:i(+e),k):r},k.outerRadius=function(e){return arguments.length?(x=typeof e==`function`?e:i(+e),k):x},k.cornerRadius=function(e){return arguments.length?(S=typeof e==`function`?e:i(+e),k):S},k.padRadius=function(e){return arguments.length?(C=e==null?null:typeof e==`function`?e:i(+e),k):C},k.startAngle=function(e){return arguments.length?(w=typeof e==`function`?e:i(+e),k):w},k.endAngle=function(e){return arguments.length?(T=typeof e==`function`?e:i(+e),k):T},k.padAngle=function(e){return arguments.length?(E=typeof e==`function`?e:i(+e),k):E},k.context=function(e){return arguments.length?(D=e??null,k):D},k}export{x as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{x as e}from"./mermaid-parser.core-Cfv6TRDT.js";export{e as createArchitectureServices};
|