Files
yakpanel-core/YakPanel/static/vite/js/terminal-CFfBeKvv.js

3 lines
6.2 KiB
JavaScript
Raw Normal View History

2026-04-07 02:04:22 +05:30
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["js/form-C_8yDwjk.js?v=1773287522785","js/index.vue_vue_type_script_setup_true_lang-D8O2mMsP.js?v=1773287522785","js/vue-core-DJjvd5ZC.js?v=1773287522785","js/prismjs-BZPoR7_J.js?v=1773287522785","css/prismjs-D-3FhBe_.css?v=1773287522785","js/naive-ui--dJnpVcV.js?v=1773287522785","js/index-BTglIPU2.js?v=1773287522785","css/index-DEM1fxGq.css?v=1773287522785","js/useLoading-CZ2gSAW7.js?v=1773287522785","js/xterm-dpUsuiNl.js?v=1773287522785","css/xterm-Vgv5f8wO.css?v=1773287522785","js/useSocket-DTHwGZgK.js?v=1773287522785","js/data-BVsViUMm.js?v=1773287522785","js/xterm-addon-canvas-DELv9KNm.js?v=1773287522785"])))=>i.map(i=>d[i]);
import{x as W,a as X,b as Y,c as y}from"./xterm-dpUsuiNl.js?v=1773287522785";import{a4 as ee,r,a3 as te,k as se,R as oe,O as ne,a6 as ae,w as S,o as re,b as ie,$ as ce,Z as de,n as z}from"./vue-core-DJjvd5ZC.js?v=1773287522785";import{as as i,a3 as B,p as le,P as ue,n as me,bq as fe,b1 as pe,c as ve}from"./index-BTglIPU2.js?v=1773287522785";import{u as _e}from"./useSocket-DTHwGZgK.js?v=1773287522785";import{x as he}from"./xterm-addon-canvas-DELv9KNm.js?v=1773287522785";import{u as xe}from"./useLoading-CZ2gSAW7.js?v=1773287522785";const ge=ee("terminal",()=>{const e=r(!0),c=r(!1),m=r(!1),d=u=>{m.value=u},g=r(),s=r(""),f=r(!0);return{isShow:e,isFull:c,isRefresh:m,server:g,command:s,isRunCmd:f,setRefresh:d,setCommand:(u,C=!0)=>{s.value=u,f.value=C}}}),{t:x}=B.global,Ae=()=>i.post("/xterm?action=get_host_list"),Ie=e=>i.post("/xterm?action=create_host",e,{requestOptions:{loading:x("Security.Api.Index_4"),successMessage:!0}}),qe=e=>i.post("/xterm?action=get_host_find",e),De=e=>i.post("/xterm?action=remove_host",e,{requestOptions:{loading:x("Security.Api.Index_3"),successMessage:!0}}),Fe=()=>i.post("/xterm?action=get_command_list"),Pe=e=>i.post("/xterm?action=create_command",e,{requestOptions:{loading:x("Security.Api.Index_4"),successMessage:!0}}),ze=e=>i.post("/xterm?action=modify_command",e,{requestOptions:{loading:x("Crontab.Api.index_5"),successMessage:!0}}),Be=e=>i.post("/xterm?action=remove_command",e,{requestOptions:{loading:x("Security.Api.Index_3"),successMessage:!0}}),$e=e=>i.post("/xterm?action=test_ssh_connect",e,{requestOptions:{loading:x("Login.index_22"),successMessage:!0}}),{t:$}=B.global,Te=e=>{le({title:e.title,width:600,footer:!0,data:e.data,component:te(()=>ue(()=>import("./form-C_8yDwjk.js?v=1773287522785"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13])))})},{loading:He}=xe(),H=r([]),Se=async()=>{const{message:e}=await Ae();me(e)&&(H.value=e)},E=r("aaaaaaaaa"),w=r([{id:"aaaaaaaaa",host:"127.0.0.1",port:22,ps:$("Database.form.index_12"),state:!1}]),N=e=>{E.value=e},we=e=>{const c=fe(9,"letter");w.value.push({id:c,host:e.host,port:e.port,ps:e.ps,state:!1}),setTimeout(()=>{N(c)},20)},Ce=(e,c)=>{const m=w.value.find(d=>d.id===e);m&&(m.state=c)},be=()=>{w.value=[{id:"aaaaaaaaa",host:"127.0.0.1",port:22,ps:$("Database.form.index_12"),state:!1}],E.value="aaaaaaaaa"},Ne=()=>({activeTerminalId:E,terminals:w,setActiveTerminal:N,onServerList:we,onUpdateState:Ce,resetTerminals:be}),ke=se({__name:"terminal",props:{data:{},active:{type:Boolean}},emits:["updateState","connectSuccess"],setup(e,{expose:c,emit:m}){const{t:d}=oe(),g=e,{data:s}=g,{active:f}=ne(g),l=m,u=ge(),{isFull:C}=ae(u),{ws:A,status:R,send:p,open:L,close:M}=_e("/webssh",{get verifyData(){return{host:s.host,port:s.port,id:s.id,ps:s.ps,sort:0}},onMessage:(t,n)=>{const a=n.data;if(a.indexOf("Authentication timeout.")>-1)b.value=!0;else if((a.indexOf("127.0.0.1:")!==-1||a.indexOf("localhost:")!==-1)&&(a.indexOf("Password or private key cannot both be empty")!==-1||a.indexOf("Account or Password incorrect: Authentication failed")!==-1)){l("updateState",s.id,!1),M(),I(),U();return}else if(a=="\\r\\nlogout\\r\\n"||a=="logout\\r\\n"||a=="\r\nlogout\r\n"||a=="logout\r\n"||a.search(/logout[\r\n]+$/)>-1){l("updateState",s.id,!1),o.write("\r"+d("Component.Terminal.index_1")+"\r"),I(),M();return}l("connectSuccess",a)}}),U=()=>{Te({title:d("Term.index_22"),data:{isEdit:!0,tips:!0,localhost:!0,onRefresh:()=>{s.host.includes("127.0.0.1")&&!s.host.includes("_22")&&(s.host=s.host.replace("127.0.0.1","127.0.0.1_22")),O()}}})};let o,v;const b=r(!1),_=r(null),V=()=>{o=new W.Terminal({cursorBlink:!0,fontSize:14,fontFamily:"Monaco, Menlo, Consolas, 'Courier New', monospace",theme:{background:"#333",foreground:"#ececec"}}),v=new X.FitAddon,Z(),j(),D(),F()};let h=null;const Z=()=>{const t=A.value;t&&(o.loadAddon(v),o.loadAddon(new he.CanvasAddon),o.loadAddon(new Y.WebLinksAddon),h=new y.AttachAddon(t),o.loadAddon(h),setTimeout(()=>{v.fit();const n=_.value;n&&(q.value="".concat(n.clientHeight,"px"))},100))};S([A,R],([t,n])=>{if(n==="CLOSED"&&t){l("updateState",s.id,!1),o.write