filecat 6.43.6 → 6.45.0

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 (46) hide show
  1. package/build/dist/{1448.c9f76a52d88a488d6da2.js → 1448.9d36cf216585774aa090.js} +1 -1
  2. package/build/dist/{1472.1a9c627133a364ceeb61.js → 1472.1d82f53e309eceea3e9a.js} +1 -1
  3. package/build/dist/{1595.5f5ec6122acae3a9cd0b.js → 1595.2c366cdfe302dc5a5050.js} +1 -1
  4. package/build/dist/{1636.64b2c5dd5956d512a0fc.js → 1636.723781f88d68ed3657cb.js} +1 -1
  5. package/build/dist/{1832.a01933ba5df99576ecc2.js → 1832.99a4c37ffea35d9b9cb3.js} +1 -1
  6. package/build/dist/{2502.754728f7e85723b16fc3.js → 2502.cd914e22b13cdaaf78bc.js} +1 -1
  7. package/build/dist/{2542.26cb302b60de23166227.js → 2542.58c52e3d0bd7af6d9a62.js} +1 -1
  8. package/build/dist/2674.c58839496f66c6512ae5.js +1 -0
  9. package/build/dist/{2851.b4b84820b81113718235.js → 2851.a7ecf5bca38c79677f03.js} +1 -1
  10. package/build/dist/{3402.5d4caccb2e21dbeb3398.js → 3402.62335cc49fe962eaf134.js} +1 -1
  11. package/build/dist/{3659.f32a94d104cc1353e384.js → 3659.55a733505528331021e0.js} +1 -1
  12. package/build/dist/{4273.2f3c957012fa1d0c4747.js → 4273.19b11dd57545851ebc50.js} +1 -1
  13. package/build/dist/{4903.69328b798fc5c52d6069.js → 4903.f8714937dbb91b37c119.js} +1 -1
  14. package/build/dist/{5516.f442aef7efd919af92cd.js → 5516.e3b6d2b2c1439d8e4cf6.js} +1 -1
  15. package/build/dist/{5761.0afce3c97ce69979e9ee.js → 5761.2631a6de5c30fbfb66da.js} +1 -1
  16. package/build/dist/{5937.820d7e5fcf608c346964.js → 5937.9e77a5b78996adbdbe1b.js} +1 -1
  17. package/build/dist/{6247.cbbbe80520d738798cca.js → 6247.077a555b26c06aa2e96b.js} +1 -1
  18. package/build/dist/6505.bacc9c5cdd2094604a00.js +1 -0
  19. package/build/dist/678.f0aed27a613d4dd41080.js +1 -0
  20. package/build/dist/{6892.fac5b622852f0aad613d.js → 6892.4db4a81a58e94e4356cc.js} +1 -1
  21. package/build/dist/{7133.cf2a4a51286b78a653af.js → 7133.ae2c0ab24c0d2a3a5a1c.js} +1 -1
  22. package/build/dist/{7180.e79b454cc9ea523bfebc.js → 7180.32c831dec9865cde8006.js} +1 -1
  23. package/build/dist/{7181.9f22415130200367cfda.js → 7181.4a60db9c9a2603feeff8.js} +1 -1
  24. package/build/dist/{7209.de0fc874821ef1cb0684.js → 7209.f4ad503eb484aa601281.js} +1 -1
  25. package/build/dist/{7759.8041fbbd5fcb8366c098.js → 7759.b58c5676b606e60d7aac.js} +1 -1
  26. package/build/dist/8090.90cb45de35e21b9cfcb0.js +2 -0
  27. package/build/dist/{8603.8b4a272c8bbe4d5fd4c4.js → 8603.557bbe67c1b08a3627d6.js} +1 -1
  28. package/build/dist/{8714.a9a6d15b8cc47c1ae191.js → 8714.3360add5f45201f4c8da.js} +1 -1
  29. package/build/dist/{8765.32baeac654f4d839c1d0.js → 8765.35d24edc172c477ba795.js} +1 -1
  30. package/build/dist/8947.f2b4fad4c25fb147ea42.js +2 -0
  31. package/build/dist/index.html +1 -1
  32. package/build/dist/{main.427adb2d4ce72b3d6bc1.js → main.151df5e8840564caf370.js} +2 -2
  33. package/build/main.js +1 -1
  34. package/build/main.js.LICENSE.txt +1 -1
  35. package/build/threads.work.filecat.js +1 -1
  36. package/package.json +2 -2
  37. package/shell/config/base.webpack.config.js +1 -1
  38. package/shell/config/webpack.npm.config.js +2 -1
  39. package/build/dist/2674.570467c7d8e3378316cc.js +0 -1
  40. package/build/dist/6505.f730960378f6e4b7bc24.js +0 -1
  41. package/build/dist/678.3cd977536dffed60a0e4.js +0 -1
  42. package/build/dist/8090.c4e60cb0780036d49258.js +0 -2
  43. package/build/dist/9572.304acc81bcceeb2ade2a.js +0 -2
  44. /package/build/dist/{8090.c4e60cb0780036d49258.js.LICENSE.txt → 8090.90cb45de35e21b9cfcb0.js.LICENSE.txt} +0 -0
  45. /package/build/dist/{9572.304acc81bcceeb2ade2a.js.LICENSE.txt → 8947.f2b4fad4c25fb147ea42.js.LICENSE.txt} +0 -0
  46. /package/build/dist/{main.427adb2d4ce72b3d6bc1.js.LICENSE.txt → main.151df5e8840564caf370.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7180],{75007(e,t,s){s.d(t,{h:()=>o});s(96540);var n=s(85997),c=s(74848);function o(e){return(0,c.jsxs)("h2",{className:"message",children:[(0,c.jsx)(n.In,{icon:"sentiment_dissatisfied"}),(0,c.jsx)("span",{children:e.context})]})}},22081(e,t,s){var n=s(96540),c=s(16349),o=s(74848);const i=({percentage:e})=>{const t=(0,n.useRef)(null),[s,i]=(0,n.useState)(null);return(0,n.useEffect)(()=>{const s=t.current.getContext("2d"),n=new c.Ay(s,{type:"doughnut",data:{labels:["use","left"],datasets:[{data:[e,100-e],backgroundColor:["#007bff","#f0f0f0"],borderWidth:0}]},options:{plugins:{legend:{display:!1},tooltip:{enabled:!1}},elements:{arc:{borderWidth:0}}}});return i(n),()=>{n.destroy()}},[]),(0,n.useEffect)(()=>{s&&(s.data.datasets[0].data=[e,100-e],s.update())},[e]),(0,o.jsx)("div",{style:{width:"8rem",overflow:"hidden"},children:(0,o.jsx)("canvas",{ref:t})})};s.d(t,["A",0,i])},77481(e,t,s){s.d(t,{S:()=>i,X:()=>o});var n=s(96540),c=s(74848);function o(e){const[t,s]=n.useState([]);return(0,n.useEffect)(()=>{e.children?s(Array.isArray(e.children)?e.children:[e.children]):s(e.rows)},[e.rows,e.children]),(0,c.jsxs)("table",{children:[(0,c.jsx)("thead",{children:(0,c.jsx)("tr",{children:e.headers?.map((e,t)=>(0,c.jsx)("th",{children:e},t))})}),(0,c.jsx)("tbody",{children:t.map((t,s)=>(0,c.jsx)("tr",{onContextMenu:()=>{e.handleContextMenu&&e.handleContextMenu(t)},children:t.map((s,n)=>(0,c.jsx)("td",{style:{width:e.width??"auto"},className:n===t.length-1?"small":"",children:s},n))},s))})]})}function i(e){return(0,c.jsx)("div",{style:{display:e.isFlex?"flex":"block"},children:e.columns.map((e,t)=>(0,c.jsx)("div",{children:e},t))})}},88062(e,t,s){s(96540),s(47022);var n=s(74848);function c(e){return(0,n.jsx)("div",{className:"black-tip",onClick:()=>{e.click&&e.click(e)},onContextMenu:t=>{t.stopPropagation(),t.nativeEvent.stopImmediatePropagation(),e.onContextMenu&&e.onContextMenu(t,e)},children:e.name})}const o=e=>(0,n.jsxs)("li",{children:[e.click?(0,n.jsx)(c,{...e.node,name:e.render?e.render(e.node):e.node.name,click:e.click,onContextMenu:e.onContextMenu}):(0,n.jsx)("div",{children:e.render?e.render(e.node):e.node.name}),e.node.children&&e.node.children.length>0&&(0,n.jsx)("ul",{children:e.node.children.map((t,s)=>(0,n.jsx)(o,{node:t,click:e.click,onContextMenu:e.onContextMenu,render:e.render},s))})]}),i=e=>(0,n.jsx)("div",{className:"card-tree-view",children:(0,n.jsx)("ul",{children:e.list&&e.list.map((t,s)=>(0,n.jsx)(o,{node:t,click:e.click,onContextMenu:e.onContextMenu,render:e.render},s))})});s.d(t,["A",0,i])},57180(e,t,s){s.r(t),s.d(t,{default:()=>Q});var n=s(96540),c=s(75725),o=s(70447),i=s(22081),r=s(92275),l=s(14944),a=s(14284),d=s(57952),h=s(85997),x=s(77481),u=s(53459),p=s(22022),j=s(34843),f=s(82893),m=s(74777),_=s(62042),w=s(61443),g=s(74848);function y(e){const{t}=(0,p.Bd)(),[s,i]=(0,j.fp)(f.AG.disk),[r,l]=(0,n.useState)({}),[m,_]=(0,n.useState)([]),w=[t("名字"),t("当前值"),t("历史最低"),t("临界值")];return(0,n.useEffect)(()=>{(async()=>{const s=await a.Yu.post("sys/disk/info",{name:e.name});if(s.code===u.m.Success){const e=[];for(const n of s.data.ata_smart_attributes??[]){let s;n[1]>=n[2]?s="var(--icon-green)":n[1]<=n[3]&&(s="var(--icon-red)"),n[0]=(0,g.jsx)("span",{style:{color:s},children:t(n[0])}),e.push(n)}_(s.data.ata_smart_attributes),l(s.data)}})()},[]),(0,g.jsxs)("div",{children:[(0,g.jsx)(d.A,{children:(0,g.jsx)(h.rA,{icon:"close",title:t("关闭"),onClick:()=>{i({})}})}),(0,g.jsx)(c.jW,{isFull:!0,more:!0,children:(0,g.jsx)(c.NN,{children:(0,g.jsxs)(c.fI,{children:[(0,g.jsxs)(c.VP,{widthPer:30,children:[(0,g.jsx)(c.xh,{children:(0,g.jsxs)(o.Zp,{title:t("基本信息"),children:[(0,g.jsx)(c.Yh,{left:t("名字"),right:e.name}),(0,g.jsx)(c.Yh,{left:t("厂商名称"),right:e.typeName}),(0,g.jsx)(c.Yh,{left:t("类型"),right:e.type}),(0,g.jsx)(c.Yh,{left:t("容量"),right:e.total})]})}),(0,g.jsx)(c.xh,{children:(0,g.jsxs)(o.Zp,{title:t("物理信息"),children:[(0,g.jsx)(c.Yh,{left:t("是否健康"),right:!0===r.smart_status?"是":"否"}),(0,g.jsx)(c.Yh,{left:t("设备型号"),right:r.model_name}),(0,g.jsx)(c.Yh,{left:t("序列号"),right:r.serial_number}),(0,g.jsx)(c.Yh,{left:t("固件版本"),right:r.firmware_version}),(0,g.jsx)(c.Yh,{left:t("转速(每分钟)"),right:r.rotation_rate}),(0,g.jsx)(c.Yh,{left:t("通电时长(小时)"),right:r.power_on_time_hours}),(0,g.jsx)(c.Yh,{left:t("通电次数"),right:r.power_cycle_count}),(0,g.jsx)(c.Yh,{left:t("温度(°C)"),right:r.temperature}),(0,g.jsx)(c.Yh,{left:t("通信协议"),right:r.device_protocol})]})})]}),(0,g.jsx)(c.VP,{widthPer:50,children:(0,g.jsxs)(c.xh,{children:[m?.length?(0,g.jsx)(o.uF,{title:t("ATA/SATA详细信息"),children:(0,g.jsx)(x.X,{headers:w,rows:m,width:"10rem"})}):(0,g.jsx)(g.Fragment,{}),r.nvme_smart?(0,g.jsxs)(o.Zp,{title:t("NVME详细信息"),children:[(0,g.jsx)(c.Yh,{left:t("NVMe 可用备用块(%)"),right:r.nvme_smart.available_spare}),(0,g.jsx)(c.Yh,{left:t("NVMe 已使用寿命(%)"),right:r.nvme_smart.percentage_used}),(0,g.jsx)(c.Yh,{left:t("NVMe 读取量"),right:r.nvme_smart.data_units_read}),(0,g.jsx)(c.Yh,{left:t("NVMe 写入量"),right:r.nvme_smart.data_units_written}),(0,g.jsx)(c.Yh,{left:t("NVMe 通电次数"),right:r.nvme_smart.power_cycles}),(0,g.jsx)(c.Yh,{left:t("NVMe 通电时长(小时)"),right:r.nvme_smart.power_on_hours}),(0,g.jsx)(c.Yh,{left:t("NVMe 非正常关机"),right:r.nvme_smart.unsafe_shutdowns}),(0,g.jsx)(c.Yh,{left:t("NVMe 媒体错误"),right:r.nvme_smart.media_errors}),(0,g.jsx)(c.Yh,{left:t("NVMe 错误日志数"),right:r.nvme_smart.num_err_log_entries})]}):(0,g.jsx)(g.Fragment,{})]})})]})})})]})}let k=function(e){return e[e.mount=0]="mount",e}({});var v=s(88062),S=s(78247),A=s(23430);const C=e=>(0,g.jsxs)("div",{style:{border:"2px solid black",padding:"10px",width:"300px",height:"300px",position:"relative"},children:[e.name,e.lvms.map((e,t)=>(0,g.jsx)("div",{style:{margin:"5px",height:"40px",display:"flex",alignItems:"center",justifyContent:"center",border:"1px solid "},children:e.name},t))]});function b(){return(0,g.jsx)("div",{style:{position:"relative",height:"300px",margin:"10px",width:"30px",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,g.jsx)("div",{style:{width:0,height:0,borderTop:"10px solid transparent",borderBottom:"10px solid transparent",borderLeft:"10px solid black"}})})}function P(){const{t:e}=(0,p.Bd)(),[t,s]=(0,j.fp)(f.AG.disk),[i,r]=(0,n.useState)({}),[l,m]=(0,n.useState)([]),[w,y]=(0,n.useState)([]),[P,V]=(0,j.fp)(f.AG.showPrompt),{check_user_auth:Y}=(0,S.MH)(),[F,M]=(0,n.useState)([]),{click_file:$}=(0,S.kZ)(),[I,K]=(0,j.fp)(f.AG.prompt_card),E=[e("挂载点"),"uuid",e("类型"),e("文件系统类型"),e("文件系统容量"),e("卷容量"),e("设备路径"),e("分区表类型")],N=async()=>{const e=await a.Yu.get("disk/blk");return e.code===u.m.Success&&m(e.data),e.code};(0,n.useEffect)(()=>{(async()=>{N()})()},[]);const H=[(0,g.jsx)(h.rA,{icon:"info",title:e("提示"),onClick:async()=>{K({open:!0,title:"信息",context_div:(0,g.jsx)("div",{children:(0,g.jsxs)("ul",{children:[(0,g.jsxs)("li",{children:["通用格式:","<文件系统> <挂载点> <类型> <挂载选项> <dump> <fsck> "]}),(0,g.jsxs)("li",{children:["文件系统,有多种格式",(0,g.jsxs)("ul",{children:[(0,g.jsx)("li",{children:"1(usb口默认名称)./dev/sda1"}),(0,g.jsx)("li",{children:"2(唯一Id).UUID=123e4567-e89b-12d3-a456-426614174000"}),(0,g.jsx)("li",{children:"3.LABEL=DATA"})]})]}),(0,g.jsx)("li",{children:"挂载点,就是文件路径,例如 /mnt/data ,这个目录要提前创建,且为空"}),(0,g.jsx)("li",{children:"类型,就是文件系统类型,对于系统不支持的类型,例如ntfs需要额外前提安装ntfs-3g(linux 5.15内核以后自带 ntfs)"}),(0,g.jsxs)("li",{children:['挂载选项的值只能是以下这些,可以用 "," 同时使用多个选项',(0,g.jsxs)("ul",{children:[(0,g.jsx)("li",{children:"defaults:使用默认挂载选项"}),(0,g.jsx)("li",{children:"noatime:不更新访问时间,提高性能"}),(0,g.jsx)("li",{children:"auto:系统启动时自动挂载"}),(0,g.jsx)("li",{children:"rw:以读写方式挂载"}),(0,g.jsx)("li",{children:"nofail:防止启动阻塞,挂载失败系统继续执行"}),(0,g.jsx)("li",{children:"...等"})]})]}),(0,g.jsx)("li",{children:"dump 0是需要备份 1是不需要备份"}),(0,g.jsx)("li",{children:"Fsck 整数值0是不检查,文件系统检查顺序越小越先检查"}),(0,g.jsx)("li",{children:"提示:只有含有文件系统的逻辑卷,或者分区才可以进行挂载。"})]})})})}}),(0,g.jsx)(h.rA,{icon:"update",title:e("更新挂载"),onClick:async()=>{(await a.Yu.post("cmd/exe",{type:k.mount})).code===u.m.Success&&(0,_.SK)("挂载文件已生效")}},1)],G=async()=>(await a.Yu.get("get_fstab")).data,Z=async e=>{await a.Yu.post("save_fstab",{content:e})};return(0,g.jsxs)("div",{children:[(0,g.jsx)(d.A,{children:(0,g.jsx)(h.rA,{icon:"close",title:e("关闭"),onClick:()=>{s({})}})}),(0,g.jsx)(c.jW,{isFull:!0,more:!0,children:(0,g.jsx)(c.NN,{children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{widthPer:40,children:(0,g.jsxs)(o.Zp,{title:e("物理块(硬盘)设备、逻辑卷、物理卷"),titleCom:(0,g.jsxs)("div",{children:[Y(A.oV.sys_disk_mount)&&(0,g.jsx)(h.rA,{icon:"file_open",title:e("打开挂载文件"),onClick:async()=>{$({name:"fstab(谨慎修改,内容错误会导致系统无法启动)",model:"text",get_file_fun:G,save_file_fun:Z,menu_list:H})}}),(0,g.jsx)(h.rA,{icon:"update",title:e("刷新"),onClick:async()=>{await N()===u.m.Success&&(0,_.SK)("刷新成功")}})]}),children:[(0,g.jsx)(x.X,{headers:E,rows:w,width:"10rem"}),(0,g.jsx)(v.A,{list:l,render:e=>{let t=e.name;return e.label&&(t+=`(${e.label})`),e.mountpoint?(0,g.jsxs)("span",{children:[t,(0,g.jsx)("span",{style:{color:"green"},children:"(已挂载)"})]}):t},onContextMenu:(e,t)=>{e.preventDefault()},click:t=>{let s="";if(t.mountpoint)for(let e=0;e<t.mountpoints.length;e++)s+=t.mountpoints[e]+";";y([[(0,g.jsx)(o.xP,{children:s}),(0,g.jsx)(o.xP,{children:t.uuid}),e(t.type),e(t.fstype),t.fssize,t.size,(0,g.jsx)(o.xP,{children:t.path}),t.pttype]])}})]})}),(0,g.jsx)(c.VP,{widthPer:60,children:F.map((t,s)=>{const n=[];for(const e of t.pv_list)n.push({name:`${e.name}---(${e.size})---(${e.free_size})`});const i=[];for(const e of t.lv_list)i.push({name:`${e.name}---(${e.size})`});return(0,g.jsx)(o.Zp,{children:(0,g.jsxs)(c.n5,{children:[(0,g.jsx)(C,{name:e("物理卷"),lvms:n}),(0,g.jsx)(b,{}),(0,g.jsx)(C,{name:`${e("逻辑卷")}---(${t.name})---size(${t.size})`,lvms:[]}),(0,g.jsx)(b,{}),(0,g.jsx)(C,{name:e("逻辑卷"),lvms:i})]})},s)})})]})})})]})}var V=s(88815);let Y=!0;function F(e){const{t}=(0,p.Bd)(),s=[t("名字"),t("厂商名称"),t("类型"),t("容量")],w=[t("名字"),t("物理硬盘"),t("文件系统类型"),t("挂载位置"),t("总容量"),t("剩余容量")],[k,v]=(0,j.fp)(f.AG.user_base_info),[S,C]=(0,n.useState)(0),[b,F]=(0,n.useState)(0),[M,$]=(0,n.useState)(0),[I,K]=(0,n.useState)(0),[E,N]=(0,n.useState)(0),[H,G]=(0,n.useState)({}),[Z,B]=(0,n.useState)(!1),[z,X]=(0,n.useState)(!1),[W,L]=(0,n.useState)(!1),[T,q]=(0,n.useState)(Y),[D,U]=(0,n.useState)(null),[O,J]=(0,n.useState)([]),[R,Q]=(0,n.useState)([]),[ee,te]=(0,j.fp)(f.AG.user_base_info),[se,ne]=(0,j.fp)(f.AG.disk),ce=async()=>{if(!Y)return;const e=new r.hf(r.HK.sys_get);await l.ws.send(e),l.ws.addMsg(r.HK.sys_getting,e=>{K(e.context?.cpu_currentLoad);const t=e.context?.memLeft,s=e.context?.memTotal;F(t),$(s),C((s-t)/s*100),U(e.context?.node_memory_usage),N(e.context?.node_cpu_usage)})};return(0,n.useEffect)(()=>((async()=>{await ce()})(),()=>{l.ws.sendData(r.HK.sys_cancel,{})}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{children:[k.sys===A.XM.linux&&(0,g.jsx)(h.rA,{icon:"sd_card",title:"硬盘挂载",onClick:()=>{ne({type:"mount"})}}),(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("基本信息"),clickFun:e=>{B(e),e&&(async()=>{const e=await a.Yu.get("base");if(e.code===u.m.Success){const t=e.data;G(t)}})()}}),(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("物理硬盘"),clickFun:e=>{X(e),e&&(async()=>{const e=await a.Yu.get("disk");if(e.code===u.m.Success){const s=e.data,n=[];let c=!0;ee.sysSoftWare&&ee.sysSoftWare[m.jk.smartmontools]&&ee.sysSoftWare[m.jk.smartmontools].installed||(c=!1);for(const e of s??[])n.push([(0,g.jsx)(o.xP,{context:e.name}),e.typeName,e.type,e.total,(0,g.jsx)(h.rA,{icon:"health_and_safety",title:t("查看健康信息"),onClick:()=>{c?ne({type:"check",data:e}):(0,_.zN)("没有安装smartmontools")}})]);J(n)}})()}}),(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("文件硬盘"),clickFun:e=>{L(e),e&&(async()=>{const e=await a.Yu.get("filedisk");if(e.code===u.m.Success){const t=e.data,s=[];for(const e of t??[])s.push([(0,g.jsx)(o.xP,{context:e.name}),(0,g.jsx)(o.xP,{context:e.device_name}),e.fsType,(0,g.jsx)(o.xP,{context:e.mount}),e.total,e.available]);Q(s)}})()}}),(0,g.jsx)(h.Z$,{defaultStatus:T,text:t("实时信息"),clickFun:e=>{q(e),Y=e,ce()}})]}),(0,g.jsxs)(c.xh,{children:[T&&(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{widthPer:33,children:(0,g.jsx)(o.Zp,{title:"Sys "+t("内存"),children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{children:(0,g.jsx)(i.A,{percentage:S})}),(0,g.jsx)(c.VP,{children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{widthPer:100,children:(0,g.jsx)("div",{children:(0,g.jsx)(c.Yh,{left:t("总容量"),center:`${M}G`})})}),(0,g.jsx)(c.VP,{widthPer:100,children:(0,g.jsx)(c.Yh,{left:t("剩余"),center:`${b}G`})})]})})]})})}),(0,g.jsx)(c.VP,{widthPer:33,children:(0,g.jsx)(o.Zp,{title:"Sys cpu",children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{children:(0,g.jsx)(i.A,{percentage:I})}),(0,g.jsx)(c.VP,{children:(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.Yh,{left:t("使用率"),center:I})})})]})})}),(0,g.jsx)(c.VP,{widthPer:33,children:(0,g.jsx)(o.Zp,{title:"FileCat",children:(0,g.jsxs)(c.fI,{children:[(0,g.jsxs)(c.VP,{children:[(0,g.jsx)(c.qV,{content:t("内存")}),(0,g.jsx)(c.qV,{content:"total: "+(0,V.v7)(D?.rss)}),(0,g.jsx)(c.qV,{content:"object: "+(0,V.v7)(D?.heapTotal)}),(0,g.jsx)(c.qV,{content:"obj-use: "+(0,V.v7)(D?.heapUsed)}),(0,g.jsx)(c.qV,{content:"external: "+(0,V.v7)(D?.external)}),(0,g.jsx)(c.qV,{content:"buffer: "+(0,V.v7)(D?.arrayBuffers)})]}),(0,g.jsx)(c.VP,{children:(0,g.jsx)(c.qV,{content:"cpu growth rate: "+E})})]})})})]}),(0,g.jsxs)(c.fI,{children:[Z&&(0,g.jsx)(c.VP,{children:(0,g.jsxs)(o.Zp,{title:t("基本信息"),children:[(0,g.jsx)(c.Yh,{left:t("总内存"),right:H.mem_total}),(0,g.jsx)(c.Yh,{left:`cpu ${t("制造商")}`,right:H.cpu_manufacturer}),(0,g.jsx)(c.Yh,{left:`cpu ${t("品牌")}`,right:H.cpu_brand}),(0,g.jsx)(c.Yh,{left:`cpu ${t("逻辑核心")}`,right:H.cpu_core_num}),(0,g.jsx)(c.Yh,{left:`cpu ${t("物理核心")}`,right:H.cpu_phy_core_num}),(0,g.jsx)(c.Yh,{left:`cpu ${t("最大")}hz`,right:H.cpu_speed_hz}),(0,g.jsx)(c.Yh,{left:`${t("当前系统")}:pid;ppid`,right:H.pid_ppid}),(0,g.jsx)(c.Yh,{left:t("运行用户"),right:H.user})]})}),z&&(0,g.jsx)(c.VP,{children:(0,g.jsx)(o.uF,{title:t("物理硬盘"),children:(0,g.jsx)(x.X,{headers:s,rows:O,width:"10rem"})})}),W&&(0,g.jsx)(c.VP,{children:(0,g.jsx)(o.uF,{title:t("文件硬盘"),children:(0,g.jsx)(x.X,{headers:w,rows:R,width:"10rem"})})})]})]}),se&&"check"===se.type&&(0,g.jsx)(y,{...se.data}),se&&"mount"===se.type&&(0,g.jsx)(P,{})]})}var M=s(75007),$=s(97856),I=s(64405);const K=n.lazy(()=>Promise.all([s.e(2543),s.e(5614)]).then(s.bind(s,85614)));function E(e){const[t,s]=(0,n.useState)(null),[c,o]=(0,j.fp)(f.AG.dockerShellShow),[i,a]=(0,j.fp)(f.AG.user_base_info),d=i.user_data.theme?.includes("dark")?"#FFFFFF":"#000000",h=()=>{(async()=>{t&&(t.writeln("close! "),t.dispose(),s(null))})()};(0,n.useEffect)(()=>{c.show?(async()=>{const e=new $.Terminal({fontFamily:"Monaco, Menlo, Consolas, 'Courier New', monospace",theme:{background:"#FFFFFF",foreground:d,cursor:d,selectionBackground:"#a6d2ff"},cursorBlink:!0,cursorStyle:"bar",scrollback:1e3,scrollSensitivity:1,tabStopWidth:4,convertEol:!0});let t;l.ws.subscribeUnconnect(h);const n=t=>{e.write(t)};t=s=>{e.clear(),e.write(s),t=n},l.ws.addMsg("logs"===c.type?r.HK.docker_shell_logs_getting:r.HK.docker_shell_exec_getting,e=>{"error"===e.context&&h(),t(e.context)}),"exec"===c.type&&e.onData(async e=>{const t=new r.hf(r.HK.docker_shell_exec);t.context=e,await l.ws.send(t)}),s(e)})():h()},[c]),(0,n.useEffect)(()=>()=>{h()},[]);return(0,g.jsx)(K,{show:c.show,terminal:t,init:(e,s)=>{t.writeln("connect... ");const n=new I.n;let o;n.rows=e,n.cols=s,n.dockerId=c.dockerId,o="logs"===c.type?new r.hf(r.HK.docker_shell_logs):new r.hf(r.HK.docker_shell_exec_open),o.context=n,l.ws.send(o)}})}var N=s(27690);let H="",G=[],Z=!1;function B(e){const{t}=(0,p.Bd)(),[s,i]=(0,n.useState)({}),[m,y]=(0,n.useState)([]),[k,v]=(0,n.useState)([]),{check_user_auth:C}=(0,S.MH)(),[b,P]=(0,j.fp)(f.AG.dockerShellShow),[V,Y]=(0,j.fp)(f.AG.showPrompt),[F,$]=(0,j.fp)(f.AG.confirm),[I,K]=(0,n.useState)(H),[B,z]=(0,n.useState)(["id",t("名字"),t("镜像"),t("命令"),t("状态"),t("内存"),"cpu%",t("选择")]),[X,W]=(0,n.useState)([]),[L,T]=(0,n.useState)(void 0),[q,D]=(0,n.useState)(!1),U=["id",t("name"),t("create时间"),t("大小"),(0,g.jsxs)("span",{children:["选中",(0,g.jsx)(h.rA,{icon:"check_box",title:"全选",onClick:()=>{Z=!Z;const e={};for(let t=0;t<k.length&&Z;t++)e[k[t][0].props.context]=1;i(e)}})]})],O=async()=>{y([]),W([]);const e=new r.hf(r.HK.docker_get);await l.ws.send(e),l.ws.addMsg(r.HK.docker_getting,e=>{const t=[];if(H){for(const s of e.context)for(const e of s)if(`${e}`.includes(H)){t.push(s);break}}else t.push(...e.context);y(t.map(e=>{const t=e.map(e=>(0,g.jsx)(o.xP,{context:e}));return t.push((0,g.jsx)(h.rA,{icon:"place",title:"选中",onClick:()=>{W(t)}})),t}))})};(0,n.useEffect)(()=>(K(H),O(),()=>{(async()=>{P({show:!1,type:"",dockerId:""})})()}),[]),(0,n.useEffect)(()=>{H=I},[I]);const J=()=>{const e=new r.hf("logs"===b.type?r.HK.docker_shell_logs_cancel:r.HK.docker_shell_exec_cancel);e.context="",l.ws.send(e)},R=e=>{const t=new r.hf(r.HK.docker_switch);t.context={type:e,dockerId:X[0].props.context},W([]),l.ws.send(t)},Q=async()=>{const e=await a.Yu.get("docker/images");if(e.code===u.m.Success){const t=e.data??[],s=[];for(let e=0;e<t.length;e++){const n=t[e],c=[(0,g.jsx)(o.xP,{context:n[0]}),(0,g.jsx)(o.xP,{context:n[1]}),n[2],n[3],""];s.push(c)}G=s,v(s)}};return(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{left_children:(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("docker镜像"),clickFun:e=>{D(e),e?(Q(),W([])):(O(),v([]),i({}))}}),children:[Object.keys(s).length>0&&(0,g.jsx)(h.rA,{icon:"delete",title:t("删除镜像"),onClick:async()=>{$({open:!0,title:t("确定删除选中的镜像吗"),handle:async()=>{const e=Object.keys(s),t=await a.Yu.post("docker/check/delete",{ids:e});if(t.code===u.m.Success)if(0===t.data.length){(await a.Yu.post("docker/delete",{ids:e})).code===u.m.Success&&((0,_.SK)("删除完成"),Q(),$({open:!1,handle:null}))}else(0,_.N9)(`有镜像正在运行${JSON.stringify(t.data)}`)}})}}),X.length>0&&(0,g.jsx)("div",{children:X[1].props.context}),X.length>0&&(0,g.jsxs)("div",{children:[C(A.oV.docker_container_update)&&(0,g.jsx)(h.rA,{icon:"delete",title:t("删除容器"),onClick:()=>{Y({show:!0,overlay:!0,type:N.PromptEnum.DockerDel,data:{dockerId:X[0].props.context,name:X[1].props.context}})}}),(0,g.jsx)(h.rA,{icon:"print",title:t("打印日志"),onClick:()=>{b.show?(P({show:!1,type:"",dockerId:""}),J()):P({show:!0,dockerId:X[0].props.context,type:"logs"})}}),C(A.oV.docker_container_update)&&(0,g.jsx)(h.rA,{icon:"personal_video",title:t("执行命令"),onClick:()=>{b.show?(P({show:!1,type:"",dockerId:""}),J()):P({show:!0,dockerId:X[0].props.context,type:"exec"})}}),C(A.oV.docker_container_update)&&X[4].props.context.includes("Up")&&(0,g.jsx)(h.rA,{icon:"stop",title:t("停止"),onClick:()=>R("stop")}),C(A.oV.docker_container_update)&&!X[4].props.context.includes("Up")&&(0,g.jsx)(h.rA,{icon:"play_arrow",title:t("开启"),onClick:()=>{R("start")}})]}),(0!==m.length||I)&&!q&&(0,g.jsx)(h.rA,{icon:"refresh",title:t("列表更新"),onClick:async()=>{const e=new r.hf(r.HK.docker_get);await l.ws.send(e)}})]}),(0,g.jsxs)(c.xh,{children:[q&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`${t("镜像")} (${k.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:t("过滤镜像"),value:L,handleInputChange:e=>{T(e)},handlerEnter:()=>{const e=[];if(L){for(const t of k)(t[0].props.context.includes(L)||t[1].props.context.includes(L))&&e.push(t);v(e)}else v(G)}}),children:(0,g.jsx)(x.X,{headers:U,rows:k.map((e,n)=>(e[4]=(0,g.jsx)(w.GL,{context:t(""),selected:s[e[0].props.context],onchange:()=>{(e=>{const t={};Object.assign(t,s),t[e]?delete t[e]:t[e]=1,i(t)})(e[0].props.context)}}),e)),width:"10rem"})})})}),0===m.length&&!I&&!q&&(0,g.jsx)(M.h,{context:t("检测不到docker,主机可能没有安装docker or 容器为空")}),(0!==m.length||I)&&!q&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`${t("容器")} (${m.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:t("过滤"),value:I,handleInputChange:e=>{K(e)}}),children:(0,g.jsx)(x.X,{headers:B,rows:m,width:"10rem"})})})})]}),(0,g.jsx)(E,{})]})}var z=s(64694);let X="",W=!1,L=!1;function T(e){const{t}=(0,p.Bd)(),[s,i]=(0,n.useState)([]),[a,u]=(0,n.useState)([]),[j,f]=(0,n.useState)(0),[m,_]=(0,n.useState)(""),[y,k]=(0,n.useState)(["pid",t("名字"),t("创建用户"),(0,g.jsxs)("span",{children:[t("内存"),(0,g.jsx)(h.rA,{icon:"sort",title:t("升序"),onClick:()=>{W=!W}})]}),(0,g.jsxs)("span",{children:["cpu%",(0,g.jsx)(h.rA,{icon:"sort",title:t("升序"),onClick:()=>{L=!L}})]}),t("选择")]),{check_user_auth:v}=(0,S.MH)();(0,n.useEffect)(()=>{_(X),(async()=>{i([]),f(0),u([]);const e=new r.hf(r.HK.process_get);await l.ws.send(e),l.ws.addMsg(r.HK.process_getting,e=>{const s=[];if(X){for(const t of e.context)for(const e of t)if(`${e}`.includes(X)){s.push(t);break}}else s.push(...e.context);W&&(0,z.di)(s,e=>e[3],!1),L&&(0,z.di)(s,e=>e[4],!1);const n=s.map(e=>{const s=e.map((e,t)=>(0,g.jsx)(o.xP,{context:3===t?(0,V.v7)(e):e}));return s.push((0,g.jsx)(h.rA,{icon:"place",title:t("选中"),onClick:()=>{u(s)}})),s});f(s.length),i(n)})})()},[]),(0,n.useEffect)(()=>{X=m},[m]);return(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{children:[a.length>0&&(0,g.jsx)("div",{children:a[1].props.context}),a.length>0&&v(A.oV.sys_process_close)&&(0,g.jsx)("div",{children:(0,g.jsx)(h.rA,{icon:"stop",title:t("停止"),onClick:()=>{const e=new r.hf(r.HK.process_close);e.context={pid:a[0].props.context},u([]),l.ws.send(e)}})})]}),(0,g.jsx)(c.xh,{children:0!==s.length||X?(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`${t("进程")} (${j})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:t("过滤"),value:m,handleInputChange:e=>{_(e)}}),children:(0,g.jsx)(x.X,{headers:y,rows:s,width:"10rem"})})})}):(0,g.jsx)(M.h,{context:t("加载中请等待...")})})]})}const q=n.lazy(()=>Promise.all([s.e(2543),s.e(5614)]).then(s.bind(s,85614)));function D(e){const[t,s]=(0,n.useState)(null),[c,o]=(0,j.fp)(f.AG.systemd_shell_show),[i,a]=(0,j.fp)(f.AG.user_base_info),d=i.user_data.theme?.includes("dark")?"#FFFFFF":"#000000",h=()=>{(async()=>{t&&(t.writeln("close! "),t.dispose(),s(null))})()};(0,n.useEffect)(()=>{if(!c.show)return void h();(async()=>{const e=new $.Terminal({fontFamily:"Monaco, Menlo, Consolas, 'Courier New', monospace",theme:{background:"#FFFFFF",foreground:d,cursor:d,selectionBackground:"#a6d2ff"},cursorBlink:!0,cursorStyle:"bar",scrollback:1e3,scrollSensitivity:1,tabStopWidth:4,convertEol:!0});l.ws.subscribeUnconnect(h),l.ws.addMsg(r.HK.systemd_logs_getting,t=>{"error"===t.context&&h(),e.write(t.context)}),s(e)})();const e=e=>{};return document.addEventListener("cancel_systemd_logs",e),()=>{document.removeEventListener("cancel_systemd_logs",e)}},[c]),(0,n.useEffect)(()=>()=>{h()},[]);return(0,g.jsx)(q,{show:c.show,terminal:t,init:(e,s)=>{t.writeln("connect... ");const n={unit_name:c.unit_name},o=new r.hf(r.HK.systemd_logs_get);o.context=n,l.ws.send(o)}})}let U,O="";function J(e){const{t}=(0,p.Bd)(),{check_user_auth:s}=(0,S.MH)(),[i,m]=(0,j.fp)(f.AG.systemd_shell_show),[y,k]=(0,j.fp)(f.AG.confirm),[v,C]=(0,n.useState)(["pid","name","process",t("创建用户"),t("内存"),t("cpu%"),t("active状态"),t("选择")]),[b,P]=(0,n.useState)(["单元名字","加载状态",t("active(sub)状态"),t("描述"),t("选择")]),[Y,F]=(0,n.useState)([]),[$,I]=(0,n.useState)([]),[K,E]=(0,n.useState)([]),[N,H]=(0,n.useState)(!1),[G,Z]=(0,n.useState)([]),[B,z]=(0,n.useState)(""),[X,W]=(0,n.useState)(""),[L,T]=(0,n.useState)(new Set),[q,J]=(0,j.fp)(f.AG.editorSetting);(0,n.useEffect)(()=>{W(O),(async()=>{F([]),E([]);const e=new r.hf(r.HK.systemd_inside_get);await l.ws.send(e),l.ws.addMsg(r.HK.systemd_inside_getting,e=>{const t=[];if(O){for(const s of e.context)for(const e of s)if(`${e}`.includes(O)){t.push(s);break}}else t.push(...e.context);F(t.map(e=>{const t=e.map((e,t)=>(0,g.jsx)(o.xP,{context:4===t?(0,V.v7)(e):e}));return t.push((0,g.jsx)(h.rA,{icon:"place",title:"选中",onClick:()=>{E(t)}})),t}))})})()},[]),(0,n.useEffect)(()=>{O=X},[X]);const R=e=>{if(i.show){m({show:!1,unit_name:""});const e=new CustomEvent("cancel_systemd_logs",{detail:{}});document.dispatchEvent(e)}else m({show:!0,unit_name:e})};return(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{left_children:(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("系统systemd单元"),clickFun:e=>{H(e),e?((async()=>{I([]),Z([]);const e=await a.Yu.get("systemd/inside/all");if(e.code!==u.m.Success)return;T(new Set(e.data));const t=await a.Yu.get("systemd/allget");if(t.code===u.m.Success){const e=t.data,s=[];for(const t of e??[]){const e=[(0,g.jsx)(o.xP,{context:t.unit}),t.load,`${t.active}(${t.sub})`,(0,g.jsx)(o.xP,{context:t.description})];s.push([...e,(0,g.jsx)(h.rA,{icon:"place",title:"添加",onClick:()=>{Z([...e])}})])}U=s,I(s)}})(),E([])):Z([])}}),children:[K.length>0&&(0,g.jsx)("div",{children:K[1].props.context}),G.length>0&&(0,g.jsx)("div",{children:G[0].props.context}),K.length>0&&(0,g.jsxs)("div",{children:[s(A.oV.systemd_update)&&(0,g.jsx)(h.rA,{icon:"delete",title:"从实时监控删除",onClick:()=>{(async e=>{k({open:!0,handle:async()=>{(await a.Yu.post("systemd/delete",{unit_name:e})).code===u.m.Success&&((0,_.SK)("删除成功"),k({open:!1,handle:null}))}})})(K[1].props.context)}}),(0,g.jsx)(h.rA,{icon:"print",title:"打印日志",onClick:()=>{R(K[1].props.context)}})]}),G.length>0&&(0,g.jsxs)("div",{children:[s(A.oV.systemd_update)&&(0,g.jsx)(h.rA,{icon:"delete",title:"删除系统上的sytemd",onClick:()=>{(async e=>{k({open:!0,handle:async()=>{(await a.Yu.post("systemd/sys/delete",{unit_name:e})).code===u.m.Success&&((0,_.SK)("删除成功"),k({open:!1,handle:null}))}})})(G[0].props.context)}}),(0,g.jsx)(h.rA,{icon:"print",title:"打印日志",onClick:()=>{R(G[0].props.context)}}),s(A.oV.systemd_update)&&(0,g.jsx)(h.rA,{icon:"text_fields",title:"sytemd文件内容",onClick:()=>{(async t=>{const s=await a.Yu.post("systemd/get/context",{unit_name:t});s.code===u.m.Success&&(J({model:"text",open:!0,fileName:e.name,save:async e=>{const t={context:e};"/"===s.data.path[0]&&(s.data.path=s.data.path.slice(1)),(await a.$M.post(`save/${s.data.path}`,t)).code===u.m.Success&&(S.xK.set_value_temp(""),J({open:!1,model:"",fileName:"",save:null}))}}),S.xK.set_value_temp(s.data.context))})(G[0].props.context)}}),s(A.oV.systemd_update)&&!L.has(G[0].props.context)&&(0,g.jsx)(h.rA,{icon:"plus_one",title:"添加到管理",onClick:()=>(async e=>{const t=await a.Yu.post("systemd/add",{unit_name:e});t.code===u.m.Success&&(T(new Set(t.data)),(0,_.SK)("添加成功"))})(G[0].props.context)})]})]}),(0,g.jsxs)(c.xh,{children:[N&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`systemd系统单元(${$.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:"过滤单元",value:B,handleInputChange:e=>{z(e)},handlerEnter:()=>{const e=[];if(B){for(const t of U)(t[0].props.context.includes(B)||t[3].props.context.includes(B))&&e.push(t);I(e)}else I(U)}}),children:(0,g.jsx)(x.X,{headers:b,rows:$,width:"10rem"})})})}),0===Y.length&&!N&&(0,g.jsx)(M.h,{context:"没有管理的单元 or 加载中请等待..."}),0!==Y.length&&!N&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`filecat监控单元(${Y.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:"过滤单元",value:X,handleInputChange:e=>{W(e)}}),children:(0,g.jsx)(x.X,{headers:v,rows:Y,width:"10rem"})})})})]}),(0,g.jsx)(D,{})]})}var R=s(87361);function Q(e){const{t}=(0,p.Bd)(),[s,n]=(0,j.fp)(f.AG.user_base_info),o=[{index:1,name:t("系统性能"),rto:"sys/",component:(0,g.jsx)(F,{})},{index:2,name:t("系统进程"),rto:"process/",component:(0,g.jsx)(T,{})},{index:3,name:t("docker容器"),rto:"docker/",component:(0,g.jsx)(B,{})}];return s.sys===A.XM.linux&&o.push({index:4,name:t("systemd"),rto:"systemd/",component:(0,g.jsx)(J,{})}),(0,g.jsx)(c.W1,{optionList:o,father_route:R.o.info})}}}]);
1
+ "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7180],{75007(e,t,s){s.d(t,{h:()=>o});s(96540);var n=s(85997),c=s(74848);function o(e){return(0,c.jsxs)("h2",{className:"message",children:[(0,c.jsx)(n.In,{icon:"sentiment_dissatisfied"}),(0,c.jsx)("span",{children:e.context})]})}},22081(e,t,s){var n=s(96540),c=s(16349),o=s(74848);const i=({percentage:e})=>{const t=(0,n.useRef)(null),[s,i]=(0,n.useState)(null);return(0,n.useEffect)(()=>{const s=t.current.getContext("2d"),n=new c.Ay(s,{type:"doughnut",data:{labels:["use","left"],datasets:[{data:[e,100-e],backgroundColor:["#007bff","#f0f0f0"],borderWidth:0}]},options:{plugins:{legend:{display:!1},tooltip:{enabled:!1}},elements:{arc:{borderWidth:0}}}});return i(n),()=>{n.destroy()}},[]),(0,n.useEffect)(()=>{s&&(s.data.datasets[0].data=[e,100-e],s.update())},[e]),(0,o.jsx)("div",{style:{width:"8rem",overflow:"hidden"},children:(0,o.jsx)("canvas",{ref:t})})};s.d(t,["A",0,i])},77481(e,t,s){s.d(t,{S:()=>i,X:()=>o});var n=s(96540),c=s(74848);function o(e){const[t,s]=n.useState([]);return(0,n.useEffect)(()=>{e.children?s(Array.isArray(e.children)?e.children:[e.children]):s(e.rows)},[e.rows,e.children]),(0,c.jsxs)("table",{children:[(0,c.jsx)("thead",{children:(0,c.jsx)("tr",{children:e.headers?.map((e,t)=>(0,c.jsx)("th",{children:e},t))})}),(0,c.jsx)("tbody",{children:t.map((t,s)=>(0,c.jsx)("tr",{onContextMenu:()=>{e.handleContextMenu&&e.handleContextMenu(t)},children:t.map((s,n)=>(0,c.jsx)("td",{style:{width:e.width??"auto"},className:n===t.length-1?"small":"",children:s},n))},s))})]})}function i(e){return(0,c.jsx)("div",{style:{display:e.isFlex?"flex":"block"},children:e.columns.map((e,t)=>(0,c.jsx)("div",{children:e},t))})}},88062(e,t,s){s(96540),s(47022);var n=s(74848);function c(e){return(0,n.jsx)("div",{className:"black-tip",onClick:()=>{e.click&&e.click(e)},onContextMenu:t=>{t.stopPropagation(),t.nativeEvent.stopImmediatePropagation(),e.onContextMenu&&e.onContextMenu(t,e)},children:e.name})}const o=e=>(0,n.jsxs)("li",{children:[e.click?(0,n.jsx)(c,{...e.node,name:e.render?e.render(e.node):e.node.name,click:e.click,onContextMenu:e.onContextMenu}):(0,n.jsx)("div",{children:e.render?e.render(e.node):e.node.name}),e.node.children&&e.node.children.length>0&&(0,n.jsx)("ul",{children:e.node.children.map((t,s)=>(0,n.jsx)(o,{node:t,click:e.click,onContextMenu:e.onContextMenu,render:e.render},s))})]}),i=e=>(0,n.jsx)("div",{className:"card-tree-view",children:(0,n.jsx)("ul",{children:e.list&&e.list.map((t,s)=>(0,n.jsx)(o,{node:t,click:e.click,onContextMenu:e.onContextMenu,render:e.render},s))})});s.d(t,["A",0,i])},57180(e,t,s){s.r(t),s.d(t,{default:()=>Q});var n=s(96540),c=s(75725),o=s(70447),i=s(22081),r=s(92275),l=s(14944),a=s(14284),d=s(57952),h=s(85997),x=s(77481),u=s(53459),p=s(34899),j=s(34843),f=s(82893),m=s(74777),_=s(62042),w=s(61443),g=s(74848);function y(e){const{t}=(0,p.Bd)(),[s,i]=(0,j.fp)(f.AG.disk),[r,l]=(0,n.useState)({}),[m,_]=(0,n.useState)([]),w=[t("名字"),t("当前值"),t("历史最低"),t("临界值")];return(0,n.useEffect)(()=>{(async()=>{const s=await a.Yu.post("sys/disk/info",{name:e.name});if(s.code===u.m.Success){const e=[];for(const n of s.data.ata_smart_attributes??[]){let s;n[1]>=n[2]?s="var(--icon-green)":n[1]<=n[3]&&(s="var(--icon-red)"),n[0]=(0,g.jsx)("span",{style:{color:s},children:t(n[0])}),e.push(n)}_(s.data.ata_smart_attributes),l(s.data)}})()},[]),(0,g.jsxs)("div",{children:[(0,g.jsx)(d.A,{children:(0,g.jsx)(h.rA,{icon:"close",title:t("关闭"),onClick:()=>{i({})}})}),(0,g.jsx)(c.jW,{isFull:!0,more:!0,children:(0,g.jsx)(c.NN,{children:(0,g.jsxs)(c.fI,{children:[(0,g.jsxs)(c.VP,{widthPer:30,children:[(0,g.jsx)(c.xh,{children:(0,g.jsxs)(o.Zp,{title:t("基本信息"),children:[(0,g.jsx)(c.Yh,{left:t("名字"),right:e.name}),(0,g.jsx)(c.Yh,{left:t("厂商名称"),right:e.typeName}),(0,g.jsx)(c.Yh,{left:t("类型"),right:e.type}),(0,g.jsx)(c.Yh,{left:t("容量"),right:e.total})]})}),(0,g.jsx)(c.xh,{children:(0,g.jsxs)(o.Zp,{title:t("物理信息"),children:[(0,g.jsx)(c.Yh,{left:t("是否健康"),right:!0===r.smart_status?"是":"否"}),(0,g.jsx)(c.Yh,{left:t("设备型号"),right:r.model_name}),(0,g.jsx)(c.Yh,{left:t("序列号"),right:r.serial_number}),(0,g.jsx)(c.Yh,{left:t("固件版本"),right:r.firmware_version}),(0,g.jsx)(c.Yh,{left:t("转速(每分钟)"),right:r.rotation_rate}),(0,g.jsx)(c.Yh,{left:t("通电时长(小时)"),right:r.power_on_time_hours}),(0,g.jsx)(c.Yh,{left:t("通电次数"),right:r.power_cycle_count}),(0,g.jsx)(c.Yh,{left:t("温度(°C)"),right:r.temperature}),(0,g.jsx)(c.Yh,{left:t("通信协议"),right:r.device_protocol})]})})]}),(0,g.jsx)(c.VP,{widthPer:50,children:(0,g.jsxs)(c.xh,{children:[m?.length?(0,g.jsx)(o.uF,{title:t("ATA/SATA详细信息"),children:(0,g.jsx)(x.X,{headers:w,rows:m,width:"10rem"})}):(0,g.jsx)(g.Fragment,{}),r.nvme_smart?(0,g.jsxs)(o.Zp,{title:t("NVME详细信息"),children:[(0,g.jsx)(c.Yh,{left:t("NVMe 可用备用块(%)"),right:r.nvme_smart.available_spare}),(0,g.jsx)(c.Yh,{left:t("NVMe 已使用寿命(%)"),right:r.nvme_smart.percentage_used}),(0,g.jsx)(c.Yh,{left:t("NVMe 读取量"),right:r.nvme_smart.data_units_read}),(0,g.jsx)(c.Yh,{left:t("NVMe 写入量"),right:r.nvme_smart.data_units_written}),(0,g.jsx)(c.Yh,{left:t("NVMe 通电次数"),right:r.nvme_smart.power_cycles}),(0,g.jsx)(c.Yh,{left:t("NVMe 通电时长(小时)"),right:r.nvme_smart.power_on_hours}),(0,g.jsx)(c.Yh,{left:t("NVMe 非正常关机"),right:r.nvme_smart.unsafe_shutdowns}),(0,g.jsx)(c.Yh,{left:t("NVMe 媒体错误"),right:r.nvme_smart.media_errors}),(0,g.jsx)(c.Yh,{left:t("NVMe 错误日志数"),right:r.nvme_smart.num_err_log_entries})]}):(0,g.jsx)(g.Fragment,{})]})})]})})})]})}let k=function(e){return e[e.mount=0]="mount",e}({});var v=s(88062),S=s(78247),A=s(23430);const C=e=>(0,g.jsxs)("div",{style:{border:"2px solid black",padding:"10px",width:"300px",height:"300px",position:"relative"},children:[e.name,e.lvms.map((e,t)=>(0,g.jsx)("div",{style:{margin:"5px",height:"40px",display:"flex",alignItems:"center",justifyContent:"center",border:"1px solid "},children:e.name},t))]});function b(){return(0,g.jsx)("div",{style:{position:"relative",height:"300px",margin:"10px",width:"30px",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,g.jsx)("div",{style:{width:0,height:0,borderTop:"10px solid transparent",borderBottom:"10px solid transparent",borderLeft:"10px solid black"}})})}function P(){const{t:e}=(0,p.Bd)(),[t,s]=(0,j.fp)(f.AG.disk),[i,r]=(0,n.useState)({}),[l,m]=(0,n.useState)([]),[w,y]=(0,n.useState)([]),[P,V]=(0,j.fp)(f.AG.showPrompt),{check_user_auth:Y}=(0,S.MH)(),[F,M]=(0,n.useState)([]),{click_file:$}=(0,S.kZ)(),[I,K]=(0,j.fp)(f.AG.prompt_card),E=[e("挂载点"),"uuid",e("类型"),e("文件系统类型"),e("文件系统容量"),e("卷容量"),e("设备路径"),e("分区表类型")],N=async()=>{const e=await a.Yu.get("disk/blk");return e.code===u.m.Success&&m(e.data),e.code};(0,n.useEffect)(()=>{(async()=>{N()})()},[]);const H=[(0,g.jsx)(h.rA,{icon:"info",title:e("提示"),onClick:async()=>{K({open:!0,title:"信息",context_div:(0,g.jsx)("div",{children:(0,g.jsxs)("ul",{children:[(0,g.jsxs)("li",{children:["通用格式:","<文件系统> <挂载点> <类型> <挂载选项> <dump> <fsck> "]}),(0,g.jsxs)("li",{children:["文件系统,有多种格式",(0,g.jsxs)("ul",{children:[(0,g.jsx)("li",{children:"1(usb口默认名称)./dev/sda1"}),(0,g.jsx)("li",{children:"2(唯一Id).UUID=123e4567-e89b-12d3-a456-426614174000"}),(0,g.jsx)("li",{children:"3.LABEL=DATA"})]})]}),(0,g.jsx)("li",{children:"挂载点,就是文件路径,例如 /mnt/data ,这个目录要提前创建,且为空"}),(0,g.jsx)("li",{children:"类型,就是文件系统类型,对于系统不支持的类型,例如ntfs需要额外前提安装ntfs-3g(linux 5.15内核以后自带 ntfs)"}),(0,g.jsxs)("li",{children:['挂载选项的值只能是以下这些,可以用 "," 同时使用多个选项',(0,g.jsxs)("ul",{children:[(0,g.jsx)("li",{children:"defaults:使用默认挂载选项"}),(0,g.jsx)("li",{children:"noatime:不更新访问时间,提高性能"}),(0,g.jsx)("li",{children:"auto:系统启动时自动挂载"}),(0,g.jsx)("li",{children:"rw:以读写方式挂载"}),(0,g.jsx)("li",{children:"nofail:防止启动阻塞,挂载失败系统继续执行"}),(0,g.jsx)("li",{children:"...等"})]})]}),(0,g.jsx)("li",{children:"dump 0是需要备份 1是不需要备份"}),(0,g.jsx)("li",{children:"Fsck 整数值0是不检查,文件系统检查顺序越小越先检查"}),(0,g.jsx)("li",{children:"提示:只有含有文件系统的逻辑卷,或者分区才可以进行挂载。"})]})})})}}),(0,g.jsx)(h.rA,{icon:"update",title:e("更新挂载"),onClick:async()=>{(await a.Yu.post("cmd/exe",{type:k.mount})).code===u.m.Success&&(0,_.SK)("挂载文件已生效")}},1)],G=async()=>(await a.Yu.get("get_fstab")).data,Z=async e=>{await a.Yu.post("save_fstab",{content:e})};return(0,g.jsxs)("div",{children:[(0,g.jsx)(d.A,{children:(0,g.jsx)(h.rA,{icon:"close",title:e("关闭"),onClick:()=>{s({})}})}),(0,g.jsx)(c.jW,{isFull:!0,more:!0,children:(0,g.jsx)(c.NN,{children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{widthPer:40,children:(0,g.jsxs)(o.Zp,{title:e("物理块(硬盘)设备、逻辑卷、物理卷"),titleCom:(0,g.jsxs)("div",{children:[Y(A.oV.sys_disk_mount)&&(0,g.jsx)(h.rA,{icon:"file_open",title:e("打开挂载文件"),onClick:async()=>{$({name:"fstab(谨慎修改,内容错误会导致系统无法启动)",model:"text",get_file_fun:G,save_file_fun:Z,menu_list:H})}}),(0,g.jsx)(h.rA,{icon:"update",title:e("刷新"),onClick:async()=>{await N()===u.m.Success&&(0,_.SK)("刷新成功")}})]}),children:[(0,g.jsx)(x.X,{headers:E,rows:w,width:"10rem"}),(0,g.jsx)(v.A,{list:l,render:e=>{let t=e.name;return e.label&&(t+=`(${e.label})`),e.mountpoint?(0,g.jsxs)("span",{children:[t,(0,g.jsx)("span",{style:{color:"green"},children:"(已挂载)"})]}):t},onContextMenu:(e,t)=>{e.preventDefault()},click:t=>{let s="";if(t.mountpoint)for(let e=0;e<t.mountpoints.length;e++)s+=t.mountpoints[e]+";";y([[(0,g.jsx)(o.xP,{children:s}),(0,g.jsx)(o.xP,{children:t.uuid}),e(t.type),e(t.fstype),t.fssize,t.size,(0,g.jsx)(o.xP,{children:t.path}),t.pttype]])}})]})}),(0,g.jsx)(c.VP,{widthPer:60,children:F.map((t,s)=>{const n=[];for(const e of t.pv_list)n.push({name:`${e.name}---(${e.size})---(${e.free_size})`});const i=[];for(const e of t.lv_list)i.push({name:`${e.name}---(${e.size})`});return(0,g.jsx)(o.Zp,{children:(0,g.jsxs)(c.n5,{children:[(0,g.jsx)(C,{name:e("物理卷"),lvms:n}),(0,g.jsx)(b,{}),(0,g.jsx)(C,{name:`${e("逻辑卷")}---(${t.name})---size(${t.size})`,lvms:[]}),(0,g.jsx)(b,{}),(0,g.jsx)(C,{name:e("逻辑卷"),lvms:i})]})},s)})})]})})})]})}var V=s(88815);let Y=!0;function F(e){const{t}=(0,p.Bd)(),s=[t("名字"),t("厂商名称"),t("类型"),t("容量")],w=[t("名字"),t("物理硬盘"),t("文件系统类型"),t("挂载位置"),t("总容量"),t("剩余容量")],[k,v]=(0,j.fp)(f.AG.user_base_info),[S,C]=(0,n.useState)(0),[b,F]=(0,n.useState)(0),[M,$]=(0,n.useState)(0),[I,K]=(0,n.useState)(0),[E,N]=(0,n.useState)(0),[H,G]=(0,n.useState)({}),[Z,B]=(0,n.useState)(!1),[z,X]=(0,n.useState)(!1),[W,L]=(0,n.useState)(!1),[T,q]=(0,n.useState)(Y),[D,U]=(0,n.useState)(null),[O,J]=(0,n.useState)([]),[R,Q]=(0,n.useState)([]),[ee,te]=(0,j.fp)(f.AG.user_base_info),[se,ne]=(0,j.fp)(f.AG.disk),ce=async()=>{if(!Y)return;const e=new r.hf(r.HK.sys_get);await l.ws.send(e),l.ws.addMsg(r.HK.sys_getting,e=>{K(e.context?.cpu_currentLoad);const t=e.context?.memLeft,s=e.context?.memTotal;F(t),$(s),C((s-t)/s*100),U(e.context?.node_memory_usage),N(e.context?.node_cpu_usage)})};return(0,n.useEffect)(()=>((async()=>{await ce()})(),()=>{l.ws.sendData(r.HK.sys_cancel,{})}),[]),(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{children:[k.sys===A.XM.linux&&(0,g.jsx)(h.rA,{icon:"sd_card",title:"硬盘挂载",onClick:()=>{ne({type:"mount"})}}),(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("基本信息"),clickFun:e=>{B(e),e&&(async()=>{const e=await a.Yu.get("base");if(e.code===u.m.Success){const t=e.data;G(t)}})()}}),(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("物理硬盘"),clickFun:e=>{X(e),e&&(async()=>{const e=await a.Yu.get("disk");if(e.code===u.m.Success){const s=e.data,n=[];let c=!0;ee.sysSoftWare&&ee.sysSoftWare[m.jk.smartmontools]&&ee.sysSoftWare[m.jk.smartmontools].installed||(c=!1);for(const e of s??[])n.push([(0,g.jsx)(o.xP,{context:e.name}),e.typeName,e.type,e.total,(0,g.jsx)(h.rA,{icon:"health_and_safety",title:t("查看健康信息"),onClick:()=>{c?ne({type:"check",data:e}):(0,_.zN)("没有安装smartmontools")}})]);J(n)}})()}}),(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("文件硬盘"),clickFun:e=>{L(e),e&&(async()=>{const e=await a.Yu.get("filedisk");if(e.code===u.m.Success){const t=e.data,s=[];for(const e of t??[])s.push([(0,g.jsx)(o.xP,{context:e.name}),(0,g.jsx)(o.xP,{context:e.device_name}),e.fsType,(0,g.jsx)(o.xP,{context:e.mount}),e.total,e.available]);Q(s)}})()}}),(0,g.jsx)(h.Z$,{defaultStatus:T,text:t("实时信息"),clickFun:e=>{q(e),Y=e,ce()}})]}),(0,g.jsxs)(c.xh,{children:[T&&(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{widthPer:33,children:(0,g.jsx)(o.Zp,{title:"Sys "+t("内存"),children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{children:(0,g.jsx)(i.A,{percentage:S})}),(0,g.jsx)(c.VP,{children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{widthPer:100,children:(0,g.jsx)("div",{children:(0,g.jsx)(c.Yh,{left:t("总容量"),center:`${M}G`})})}),(0,g.jsx)(c.VP,{widthPer:100,children:(0,g.jsx)(c.Yh,{left:t("剩余"),center:`${b}G`})})]})})]})})}),(0,g.jsx)(c.VP,{widthPer:33,children:(0,g.jsx)(o.Zp,{title:"Sys cpu",children:(0,g.jsxs)(c.fI,{children:[(0,g.jsx)(c.VP,{children:(0,g.jsx)(i.A,{percentage:I})}),(0,g.jsx)(c.VP,{children:(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.Yh,{left:t("使用率"),center:I})})})]})})}),(0,g.jsx)(c.VP,{widthPer:33,children:(0,g.jsx)(o.Zp,{title:"FileCat",children:(0,g.jsxs)(c.fI,{children:[(0,g.jsxs)(c.VP,{children:[(0,g.jsx)(c.qV,{content:t("内存")}),(0,g.jsx)(c.qV,{content:"total: "+(0,V.v7)(D?.rss)}),(0,g.jsx)(c.qV,{content:"object: "+(0,V.v7)(D?.heapTotal)}),(0,g.jsx)(c.qV,{content:"obj-use: "+(0,V.v7)(D?.heapUsed)}),(0,g.jsx)(c.qV,{content:"external: "+(0,V.v7)(D?.external)}),(0,g.jsx)(c.qV,{content:"buffer: "+(0,V.v7)(D?.arrayBuffers)})]}),(0,g.jsx)(c.VP,{children:(0,g.jsx)(c.qV,{content:"cpu growth rate: "+E})})]})})})]}),(0,g.jsxs)(c.fI,{children:[Z&&(0,g.jsx)(c.VP,{children:(0,g.jsxs)(o.Zp,{title:t("基本信息"),children:[(0,g.jsx)(c.Yh,{left:t("总内存"),right:H.mem_total}),(0,g.jsx)(c.Yh,{left:`cpu ${t("制造商")}`,right:H.cpu_manufacturer}),(0,g.jsx)(c.Yh,{left:`cpu ${t("品牌")}`,right:H.cpu_brand}),(0,g.jsx)(c.Yh,{left:`cpu ${t("逻辑核心")}`,right:H.cpu_core_num}),(0,g.jsx)(c.Yh,{left:`cpu ${t("物理核心")}`,right:H.cpu_phy_core_num}),(0,g.jsx)(c.Yh,{left:`cpu ${t("最大")}hz`,right:H.cpu_speed_hz}),(0,g.jsx)(c.Yh,{left:`${t("当前系统")}:pid;ppid`,right:H.pid_ppid}),(0,g.jsx)(c.Yh,{left:t("运行用户"),right:H.user})]})}),z&&(0,g.jsx)(c.VP,{children:(0,g.jsx)(o.uF,{title:t("物理硬盘"),children:(0,g.jsx)(x.X,{headers:s,rows:O,width:"10rem"})})}),W&&(0,g.jsx)(c.VP,{children:(0,g.jsx)(o.uF,{title:t("文件硬盘"),children:(0,g.jsx)(x.X,{headers:w,rows:R,width:"10rem"})})})]})]}),se&&"check"===se.type&&(0,g.jsx)(y,{...se.data}),se&&"mount"===se.type&&(0,g.jsx)(P,{})]})}var M=s(75007),$=s(97856),I=s(64405);const K=n.lazy(()=>Promise.all([s.e(2543),s.e(5614)]).then(s.bind(s,85614)));function E(e){const[t,s]=(0,n.useState)(null),[c,o]=(0,j.fp)(f.AG.dockerShellShow),[i,a]=(0,j.fp)(f.AG.user_base_info),d=i.user_data.theme?.includes("dark")?"#FFFFFF":"#000000",h=()=>{(async()=>{t&&(t.writeln("close! "),t.dispose(),s(null))})()};(0,n.useEffect)(()=>{c.show?(async()=>{const e=new $.Terminal({fontFamily:"Monaco, Menlo, Consolas, 'Courier New', monospace",theme:{background:"#FFFFFF",foreground:d,cursor:d,selectionBackground:"#a6d2ff"},cursorBlink:!0,cursorStyle:"bar",scrollback:1e3,scrollSensitivity:1,tabStopWidth:4,convertEol:!0});let t;l.ws.subscribeUnconnect(h);const n=t=>{e.write(t)};t=s=>{e.clear(),e.write(s),t=n},l.ws.addMsg("logs"===c.type?r.HK.docker_shell_logs_getting:r.HK.docker_shell_exec_getting,e=>{"error"===e.context&&h(),t(e.context)}),"exec"===c.type&&e.onData(async e=>{const t=new r.hf(r.HK.docker_shell_exec);t.context=e,await l.ws.send(t)}),s(e)})():h()},[c]),(0,n.useEffect)(()=>()=>{h()},[]);return(0,g.jsx)(K,{show:c.show,terminal:t,init:(e,s)=>{t.writeln("connect... ");const n=new I.n;let o;n.rows=e,n.cols=s,n.dockerId=c.dockerId,o="logs"===c.type?new r.hf(r.HK.docker_shell_logs):new r.hf(r.HK.docker_shell_exec_open),o.context=n,l.ws.send(o)}})}var N=s(27690);let H="",G=[],Z=!1;function B(e){const{t}=(0,p.Bd)(),[s,i]=(0,n.useState)({}),[m,y]=(0,n.useState)([]),[k,v]=(0,n.useState)([]),{check_user_auth:C}=(0,S.MH)(),[b,P]=(0,j.fp)(f.AG.dockerShellShow),[V,Y]=(0,j.fp)(f.AG.showPrompt),[F,$]=(0,j.fp)(f.AG.confirm),[I,K]=(0,n.useState)(H),[B,z]=(0,n.useState)(["id",t("名字"),t("镜像"),t("命令"),t("状态"),t("内存"),"cpu%",t("选择")]),[X,W]=(0,n.useState)([]),[L,T]=(0,n.useState)(void 0),[q,D]=(0,n.useState)(!1),U=["id",t("name"),t("create时间"),t("大小"),(0,g.jsxs)("span",{children:["选中",(0,g.jsx)(h.rA,{icon:"check_box",title:"全选",onClick:()=>{Z=!Z;const e={};for(let t=0;t<k.length&&Z;t++)e[k[t][0].props.context]=1;i(e)}})]})],O=async()=>{y([]),W([]);const e=new r.hf(r.HK.docker_get);await l.ws.send(e),l.ws.addMsg(r.HK.docker_getting,e=>{const t=[];if(H){for(const s of e.context)for(const e of s)if(`${e}`.includes(H)){t.push(s);break}}else t.push(...e.context);y(t.map(e=>{const t=e.map(e=>(0,g.jsx)(o.xP,{context:e}));return t.push((0,g.jsx)(h.rA,{icon:"place",title:"选中",onClick:()=>{W(t)}})),t}))})};(0,n.useEffect)(()=>(K(H),O(),()=>{(async()=>{P({show:!1,type:"",dockerId:""})})()}),[]),(0,n.useEffect)(()=>{H=I},[I]);const J=()=>{const e=new r.hf("logs"===b.type?r.HK.docker_shell_logs_cancel:r.HK.docker_shell_exec_cancel);e.context="",l.ws.send(e)},R=e=>{const t=new r.hf(r.HK.docker_switch);t.context={type:e,dockerId:X[0].props.context},W([]),l.ws.send(t)},Q=async()=>{const e=await a.Yu.get("docker/images");if(e.code===u.m.Success){const t=e.data??[],s=[];for(let e=0;e<t.length;e++){const n=t[e],c=[(0,g.jsx)(o.xP,{context:n[0]}),(0,g.jsx)(o.xP,{context:n[1]}),n[2],n[3],""];s.push(c)}G=s,v(s)}};return(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{left_children:(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("docker镜像"),clickFun:e=>{D(e),e?(Q(),W([])):(O(),v([]),i({}))}}),children:[Object.keys(s).length>0&&(0,g.jsx)(h.rA,{icon:"delete",title:t("删除镜像"),onClick:async()=>{$({open:!0,title:t("确定删除选中的镜像吗"),handle:async()=>{const e=Object.keys(s),t=await a.Yu.post("docker/check/delete",{ids:e});if(t.code===u.m.Success)if(0===t.data.length){(await a.Yu.post("docker/delete",{ids:e})).code===u.m.Success&&((0,_.SK)("删除完成"),Q(),$({open:!1,handle:null}))}else(0,_.N9)(`有镜像正在运行${JSON.stringify(t.data)}`)}})}}),X.length>0&&(0,g.jsx)("div",{children:X[1].props.context}),X.length>0&&(0,g.jsxs)("div",{children:[C(A.oV.docker_container_update)&&(0,g.jsx)(h.rA,{icon:"delete",title:t("删除容器"),onClick:()=>{Y({show:!0,overlay:!0,type:N.PromptEnum.DockerDel,data:{dockerId:X[0].props.context,name:X[1].props.context}})}}),(0,g.jsx)(h.rA,{icon:"print",title:t("打印日志"),onClick:()=>{b.show?(P({show:!1,type:"",dockerId:""}),J()):P({show:!0,dockerId:X[0].props.context,type:"logs"})}}),C(A.oV.docker_container_update)&&(0,g.jsx)(h.rA,{icon:"personal_video",title:t("执行命令"),onClick:()=>{b.show?(P({show:!1,type:"",dockerId:""}),J()):P({show:!0,dockerId:X[0].props.context,type:"exec"})}}),C(A.oV.docker_container_update)&&X[4].props.context.includes("Up")&&(0,g.jsx)(h.rA,{icon:"stop",title:t("停止"),onClick:()=>R("stop")}),C(A.oV.docker_container_update)&&!X[4].props.context.includes("Up")&&(0,g.jsx)(h.rA,{icon:"play_arrow",title:t("开启"),onClick:()=>{R("start")}})]}),(0!==m.length||I)&&!q&&(0,g.jsx)(h.rA,{icon:"refresh",title:t("列表更新"),onClick:async()=>{const e=new r.hf(r.HK.docker_get);await l.ws.send(e)}})]}),(0,g.jsxs)(c.xh,{children:[q&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`${t("镜像")} (${k.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:t("过滤镜像"),value:L,handleInputChange:e=>{T(e)},handlerEnter:()=>{const e=[];if(L){for(const t of k)(t[0].props.context.includes(L)||t[1].props.context.includes(L))&&e.push(t);v(e)}else v(G)}}),children:(0,g.jsx)(x.X,{headers:U,rows:k.map((e,n)=>(e[4]=(0,g.jsx)(w.GL,{context:t(""),selected:s[e[0].props.context],onchange:()=>{(e=>{const t={};Object.assign(t,s),t[e]?delete t[e]:t[e]=1,i(t)})(e[0].props.context)}}),e)),width:"10rem"})})})}),0===m.length&&!I&&!q&&(0,g.jsx)(M.h,{context:t("检测不到docker,主机可能没有安装docker or 容器为空")}),(0!==m.length||I)&&!q&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`${t("容器")} (${m.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:t("过滤"),value:I,handleInputChange:e=>{K(e)}}),children:(0,g.jsx)(x.X,{headers:B,rows:m,width:"10rem"})})})})]}),(0,g.jsx)(E,{})]})}var z=s(64694);let X="",W=!1,L=!1;function T(e){const{t}=(0,p.Bd)(),[s,i]=(0,n.useState)([]),[a,u]=(0,n.useState)([]),[j,f]=(0,n.useState)(0),[m,_]=(0,n.useState)(""),[y,k]=(0,n.useState)(["pid",t("名字"),t("创建用户"),(0,g.jsxs)("span",{children:[t("内存"),(0,g.jsx)(h.rA,{icon:"sort",title:t("升序"),onClick:()=>{W=!W}})]}),(0,g.jsxs)("span",{children:["cpu%",(0,g.jsx)(h.rA,{icon:"sort",title:t("升序"),onClick:()=>{L=!L}})]}),t("选择")]),{check_user_auth:v}=(0,S.MH)();(0,n.useEffect)(()=>{_(X),(async()=>{i([]),f(0),u([]);const e=new r.hf(r.HK.process_get);await l.ws.send(e),l.ws.addMsg(r.HK.process_getting,e=>{const s=[];if(X){for(const t of e.context)for(const e of t)if(`${e}`.includes(X)){s.push(t);break}}else s.push(...e.context);W&&(0,z.di)(s,e=>e[3],!1),L&&(0,z.di)(s,e=>e[4],!1);const n=s.map(e=>{const s=e.map((e,t)=>(0,g.jsx)(o.xP,{context:3===t?(0,V.v7)(e):e}));return s.push((0,g.jsx)(h.rA,{icon:"place",title:t("选中"),onClick:()=>{u(s)}})),s});f(s.length),i(n)})})()},[]),(0,n.useEffect)(()=>{X=m},[m]);return(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{children:[a.length>0&&(0,g.jsx)("div",{children:a[1].props.context}),a.length>0&&v(A.oV.sys_process_close)&&(0,g.jsx)("div",{children:(0,g.jsx)(h.rA,{icon:"stop",title:t("停止"),onClick:()=>{const e=new r.hf(r.HK.process_close);e.context={pid:a[0].props.context},u([]),l.ws.send(e)}})})]}),(0,g.jsx)(c.xh,{children:0!==s.length||X?(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`${t("进程")} (${j})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:t("过滤"),value:m,handleInputChange:e=>{_(e)}}),children:(0,g.jsx)(x.X,{headers:y,rows:s,width:"10rem"})})})}):(0,g.jsx)(M.h,{context:t("加载中请等待...")})})]})}const q=n.lazy(()=>Promise.all([s.e(2543),s.e(5614)]).then(s.bind(s,85614)));function D(e){const[t,s]=(0,n.useState)(null),[c,o]=(0,j.fp)(f.AG.systemd_shell_show),[i,a]=(0,j.fp)(f.AG.user_base_info),d=i.user_data.theme?.includes("dark")?"#FFFFFF":"#000000",h=()=>{(async()=>{t&&(t.writeln("close! "),t.dispose(),s(null))})()};(0,n.useEffect)(()=>{if(!c.show)return void h();(async()=>{const e=new $.Terminal({fontFamily:"Monaco, Menlo, Consolas, 'Courier New', monospace",theme:{background:"#FFFFFF",foreground:d,cursor:d,selectionBackground:"#a6d2ff"},cursorBlink:!0,cursorStyle:"bar",scrollback:1e3,scrollSensitivity:1,tabStopWidth:4,convertEol:!0});l.ws.subscribeUnconnect(h),l.ws.addMsg(r.HK.systemd_logs_getting,t=>{"error"===t.context&&h(),e.write(t.context)}),s(e)})();const e=e=>{};return document.addEventListener("cancel_systemd_logs",e),()=>{document.removeEventListener("cancel_systemd_logs",e)}},[c]),(0,n.useEffect)(()=>()=>{h()},[]);return(0,g.jsx)(q,{show:c.show,terminal:t,init:(e,s)=>{t.writeln("connect... ");const n={unit_name:c.unit_name},o=new r.hf(r.HK.systemd_logs_get);o.context=n,l.ws.send(o)}})}let U,O="";function J(e){const{t}=(0,p.Bd)(),{check_user_auth:s}=(0,S.MH)(),[i,m]=(0,j.fp)(f.AG.systemd_shell_show),[y,k]=(0,j.fp)(f.AG.confirm),[v,C]=(0,n.useState)(["pid","name","process",t("创建用户"),t("内存"),t("cpu%"),t("active状态"),t("选择")]),[b,P]=(0,n.useState)(["单元名字","加载状态",t("active(sub)状态"),t("描述"),t("选择")]),[Y,F]=(0,n.useState)([]),[$,I]=(0,n.useState)([]),[K,E]=(0,n.useState)([]),[N,H]=(0,n.useState)(!1),[G,Z]=(0,n.useState)([]),[B,z]=(0,n.useState)(""),[X,W]=(0,n.useState)(""),[L,T]=(0,n.useState)(new Set),[q,J]=(0,j.fp)(f.AG.editorSetting);(0,n.useEffect)(()=>{W(O),(async()=>{F([]),E([]);const e=new r.hf(r.HK.systemd_inside_get);await l.ws.send(e),l.ws.addMsg(r.HK.systemd_inside_getting,e=>{const t=[];if(O){for(const s of e.context)for(const e of s)if(`${e}`.includes(O)){t.push(s);break}}else t.push(...e.context);F(t.map(e=>{const t=e.map((e,t)=>(0,g.jsx)(o.xP,{context:4===t?(0,V.v7)(e):e}));return t.push((0,g.jsx)(h.rA,{icon:"place",title:"选中",onClick:()=>{E(t)}})),t}))})})()},[]),(0,n.useEffect)(()=>{O=X},[X]);const R=e=>{if(i.show){m({show:!1,unit_name:""});const e=new CustomEvent("cancel_systemd_logs",{detail:{}});document.dispatchEvent(e)}else m({show:!0,unit_name:e})};return(0,g.jsxs)("div",{children:[(0,g.jsxs)(d.A,{left_children:(0,g.jsx)(h.Z$,{defaultStatus:!1,text:t("系统systemd单元"),clickFun:e=>{H(e),e?((async()=>{I([]),Z([]);const e=await a.Yu.get("systemd/inside/all");if(e.code!==u.m.Success)return;T(new Set(e.data));const t=await a.Yu.get("systemd/allget");if(t.code===u.m.Success){const e=t.data,s=[];for(const t of e??[]){const e=[(0,g.jsx)(o.xP,{context:t.unit}),t.load,`${t.active}(${t.sub})`,(0,g.jsx)(o.xP,{context:t.description})];s.push([...e,(0,g.jsx)(h.rA,{icon:"place",title:"添加",onClick:()=>{Z([...e])}})])}U=s,I(s)}})(),E([])):Z([])}}),children:[K.length>0&&(0,g.jsx)("div",{children:K[1].props.context}),G.length>0&&(0,g.jsx)("div",{children:G[0].props.context}),K.length>0&&(0,g.jsxs)("div",{children:[s(A.oV.systemd_update)&&(0,g.jsx)(h.rA,{icon:"delete",title:"从实时监控删除",onClick:()=>{(async e=>{k({open:!0,handle:async()=>{(await a.Yu.post("systemd/delete",{unit_name:e})).code===u.m.Success&&((0,_.SK)("删除成功"),k({open:!1,handle:null}))}})})(K[1].props.context)}}),(0,g.jsx)(h.rA,{icon:"print",title:"打印日志",onClick:()=>{R(K[1].props.context)}})]}),G.length>0&&(0,g.jsxs)("div",{children:[s(A.oV.systemd_update)&&(0,g.jsx)(h.rA,{icon:"delete",title:"删除系统上的sytemd",onClick:()=>{(async e=>{k({open:!0,handle:async()=>{(await a.Yu.post("systemd/sys/delete",{unit_name:e})).code===u.m.Success&&((0,_.SK)("删除成功"),k({open:!1,handle:null}))}})})(G[0].props.context)}}),(0,g.jsx)(h.rA,{icon:"print",title:"打印日志",onClick:()=>{R(G[0].props.context)}}),s(A.oV.systemd_update)&&(0,g.jsx)(h.rA,{icon:"text_fields",title:"sytemd文件内容",onClick:()=>{(async t=>{const s=await a.Yu.post("systemd/get/context",{unit_name:t});s.code===u.m.Success&&(J({model:"text",open:!0,fileName:e.name,save:async e=>{const t={context:e};"/"===s.data.path[0]&&(s.data.path=s.data.path.slice(1)),(await a.$M.post(`save/${s.data.path}`,t)).code===u.m.Success&&(S.xK.set_value_temp(""),J({open:!1,model:"",fileName:"",save:null}))}}),S.xK.set_value_temp(s.data.context))})(G[0].props.context)}}),s(A.oV.systemd_update)&&!L.has(G[0].props.context)&&(0,g.jsx)(h.rA,{icon:"plus_one",title:"添加到管理",onClick:()=>(async e=>{const t=await a.Yu.post("systemd/add",{unit_name:e});t.code===u.m.Success&&(T(new Set(t.data)),(0,_.SK)("添加成功"))})(G[0].props.context)})]})]}),(0,g.jsxs)(c.xh,{children:[N&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`systemd系统单元(${$.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:"过滤单元",value:B,handleInputChange:e=>{z(e)},handlerEnter:()=>{const e=[];if(B){for(const t of U)(t[0].props.context.includes(B)||t[3].props.context.includes(B))&&e.push(t);I(e)}else I(U)}}),children:(0,g.jsx)(x.X,{headers:b,rows:$,width:"10rem"})})})}),0===Y.length&&!N&&(0,g.jsx)(M.h,{context:"没有管理的单元 or 加载中请等待..."}),0!==Y.length&&!N&&(0,g.jsx)(c.fI,{children:(0,g.jsx)(c.VP,{widthPer:80,children:(0,g.jsx)(o.uF,{title:`filecat监控单元(${Y.length})`,titleCom:(0,g.jsx)(w.Sm,{placeholder:"过滤单元",value:X,handleInputChange:e=>{W(e)}}),children:(0,g.jsx)(x.X,{headers:v,rows:Y,width:"10rem"})})})})]}),(0,g.jsx)(D,{})]})}var R=s(87361);function Q(e){const{t}=(0,p.Bd)(),[s,n]=(0,j.fp)(f.AG.user_base_info),o=[{index:1,name:t("系统性能"),rto:"sys/",component:(0,g.jsx)(F,{})},{index:2,name:t("系统进程"),rto:"process/",component:(0,g.jsx)(T,{})},{index:3,name:t("docker容器"),rto:"docker/",component:(0,g.jsx)(B,{})}];return s.sys===A.XM.linux&&o.push({index:4,name:t("systemd"),rto:"systemd/",component:(0,g.jsx)(J,{})}),(0,g.jsx)(c.W1,{optionList:o,father_route:R.o.info})}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[4091,7181],{84091(e,t,n){n.r(t),n.d(t,{default:()=>d});var i=n(96540),o=n(80952),s=(n(82327),n(1766),n(24854),n(90008),n(90846),n(40975),n(44286),n(30766),n(1234),n(47507),n(87268),n(24522)),c=n(34843),r=n(82893),l=n(78247),a=n(74848);function d(e){const t=(0,i.useRef)(null),[n,d]=(0,c.fp)(r.AG.user_base_info),f=n.user_data.theme?.includes("dark")?"cloud_editor_dark":"cloud9_day";return(0,i.useEffect)(()=>{const n=o.edit(t.current,{value:l.xK.get_value_temp(e.editor_id),showPrintMargin:!1,theme:`ace/theme/${f}`,mode:e.model??s.getModeForPath(e.name??"").mode,wrap:!1,highlightActiveLine:!1,fontSize:14,...e.options});return n.setOptions({}),n.container.addEventListener("wheel",function(e){e.preventDefault()}),n.focus(),n.on("change",function(t){e.on_change&&e.on_change()}),t.current=n,n.formatCode=()=>{const e=o.require("ace/ext/beautify"),n=t.current;n&&e.beautify(n.session)},l.xK.set_editor_temp(n,e.editor_id),()=>{l.xK.delete_editor_temp(e.editor_id),n.destroy()}},[]),(0,a.jsx)("div",{ref:t,style:{height:"100%",width:"100%"}})}o.config.set("basePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("modePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("themePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("workerPath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("basePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`)},57181(e,t,n){n.r(t),n.d(t,{default:()=>h});var i=n(96540),o=n(85997),s=n(57952),c=n(34843),r=n(82893),l=n(78247),a=(n(62042),n(84091)),d=n(34289),f=n(34251),u=n(74848);function h(){const[e,t]=(0,c.fp)(r.AG.editorSetting),[n,h]=(0,i.useState)(!1),[m,_]=(0,c.fp)(r.AG.fileShellShow),[v,p]=(0,c.fp)(r.AG.file_shell_hidden);async function g(){e.save&&n&&(await e.save(l.xK.get_editor_value()),l.xK.set_value_temp(""),h(!1))}const x=t=>{t.ctrlKey&&"s"===t.key&&(t.preventDefault(),e.save&&n&&g())};return(0,i.useEffect)(()=>()=>{h(!1)},[e]),(0,i.useEffect)(()=>(document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}),[n,e]),e.open&&(0,u.jsxs)("div",{id:"editor-container",children:[(0,u.jsxs)(s.A,{ignore_tags:!0,left_children:[(0,u.jsx)(o.rA,{title:"取消",icon:"close",onClick:function(){l.xK.set_value_temp(""),t({open:!1,model:"",fileName:"",save:null}),e?.close?.()}},1),(0,u.jsx)("div",{children:e.fileName},2)],children:[e.menu_list&&e.menu_list,(e.can_format||(0,f.zr)(e.fileName))&&(0,u.jsx)(o.rA,{title:"格式化",icon:"data_object",onClick:function(){l.xK.get_editor()?.formatCode()}}),e.opt_shell&&(0,u.jsx)(o.rA,{icon:"terminal",title:"shell",onClick:function(){m.show?p(!v):_({show:!0,path:(0,d.GG)("file",(0,d.vX)())})}}),n&&(0,u.jsx)(o.rA,{title:"保存",icon:"save",onClick:g}),(0,u.jsx)("title",{children:e.fileName},2)]}),(0,u.jsx)(a.default,{name:e.fileName,model:e.model,on_change:function(){n||h(!0)}})]})}}}]);
1
+ "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[4091,7181],{84091(e,t,n){n.r(t),n.d(t,{default:()=>d});var i=n(96540),o=n(80952),s=(n(82327),n(1766),n(24854),n(90008),n(90846),n(40975),n(44286),n(30766),n(1234),n(47507),n(87268),n(24522)),c=n(34843),r=n(82893),l=n(78247),a=n(74848);function d(e){const t=(0,i.useRef)(null),[n,d]=(0,c.fp)(r.AG.user_base_info),f=n.user_data.theme?.includes("dark")?"cloud_editor_dark":"cloud9_day";return(0,i.useEffect)(()=>{const n=o.edit(t.current,{value:l.xK.get_value_temp(e.editor_id),showPrintMargin:!1,theme:`ace/theme/${f}`,mode:e.model??s.getModeForPath(e.name??"").mode,wrap:!1,highlightActiveLine:!1,fontSize:14,...e.options});return n.setOptions({}),n.container.addEventListener("wheel",function(e){e.preventDefault()}),n.focus(),n.on("change",function(t){e.on_change&&e.on_change()}),t.current=n,n.formatCode=()=>{const e=o.require("ace/ext/beautify"),n=t.current;n&&e.beautify(n.session)},l.xK.set_editor_temp(n,e.editor_id),()=>{l.xK.delete_editor_temp(e.editor_id),n.destroy()}},[]),(0,a.jsx)("div",{ref:t,style:{height:"100%",width:"100%"}})}o.config.set("basePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("modePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("themePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("workerPath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`),o.config.set("basePath",`https://gcore.jsdelivr.net/npm/ace-builds@${o.version}/src-min-noconflict/`)},57181(e,t,n){n.r(t),n.d(t,{default:()=>h});var i=n(96540),o=n(85997),s=n(57952),c=n(34843),r=n(82893),l=n(78247),a=(n(62042),n(84091)),d=n(34289),f=n(34251),u=n(74848);function h(){const[e,t]=(0,c.fp)(r.AG.editorSetting),[n,h]=(0,i.useState)(!1),[m,_]=(0,c.fp)(r.AG.fileShellShow),[v,p]=(0,c.fp)(r.AG.file_shell_hidden);async function g(){e.save&&n&&(await e.save(l.xK.get_editor_value()),l.xK.set_value_temp(""),h(!1))}const x=t=>{t.ctrlKey&&"s"===t.key&&(t.preventDefault(),e.save&&n&&g())};return(0,i.useEffect)(()=>()=>{h(!1)},[e]),(0,i.useEffect)(()=>(document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}),[n,e]),e.open&&(0,u.jsxs)("div",{id:"editor-container",children:[(0,u.jsxs)(s.A,{ignore_tags:!0,left_children:[(0,u.jsx)(o.rA,{title:"取消",icon:"close",onClick:function(){l.xK.set_value_temp(""),t({open:!1,model:"",fileName:"",save:null}),e?.close?.()}},1),(0,u.jsx)("div",{children:e.fileName},2)],children:[e.menu_list&&e.menu_list,(e.can_format||(0,f.zr)(e.fileName))&&(0,u.jsx)(o.rA,{title:"格式化",icon:"data_object",onClick:function(){l.xK.get_editor()?.formatCode()}}),e.opt_shell&&(0,u.jsx)(o.rA,{icon:"terminal",title:"shell",onClick:function(){m.show?p(!v):_({show:!0,path:(0,d.GG)("file",(0,d.vX)())})}}),n&&(0,u.jsx)(o.rA,{title:"保存",icon:"save",onClick:g}),(0,u.jsx)("title",{children:e.fileName})]}),(0,u.jsx)(a.default,{name:e.fileName,model:e.model,on_change:function(){n||h(!0)}})]})}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7209],{77481(e,t,n){n.d(t,{S:()=>l,X:()=>i});var a=n(96540),s=n(74848);function i(e){const[t,n]=a.useState([]);return(0,a.useEffect)(()=>{e.children?n(Array.isArray(e.children)?e.children:[e.children]):n(e.rows)},[e.rows,e.children]),(0,s.jsxs)("table",{children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:e.headers?.map((e,t)=>(0,s.jsx)("th",{children:e},t))})}),(0,s.jsx)("tbody",{children:t.map((t,n)=>(0,s.jsx)("tr",{onContextMenu:()=>{e.handleContextMenu&&e.handleContextMenu(t)},children:t.map((n,a)=>(0,s.jsx)("td",{style:{width:e.width??"auto"},className:a===t.length-1?"small":"",children:n},a))},n))})]})}function l(e){return(0,s.jsx)("div",{style:{display:e.isFlex?"flex":"block"},children:e.columns.map((e,t)=>(0,s.jsx)("div",{children:e},t))})}},83029(e,t,n){n.d(t,{N:()=>f});var a=n(96540),s=n(34843),i=n(82893),l=n(74848);function c(e){const[t,n]=(0,s.fp)(i.AG.user_base_info);return(0,l.jsx)("div",{children:e.div?(0,l.jsx)("div",{className:"nav_list_a",style:{background:e.color},children:e.name}):e.clickItem||"dir"===e._type?(0,l.jsx)("div",{className:"nav_list_a",style:{background:e.color},onClick:()=>{"dir"!==e._type?e.clickItem&&e.clickItem(e):e.click_dir(e.item)},children:e.name}):(0,l.jsx)("a",{href:e.url,target:e.target,className:"nav_list_a",style:{background:e.color},children:e.name})})}var o=n(64694),r=n(61443),d=n(85997),u=n(61973),h=n(22022);const m=["#ffffff","#fefff8","#fcfdf1","#d3d2dc","#f8f9fd","#ebf4fe","#ebebeb","#e8f7eb","#eaf2f9"];let p,x,_=[];const v=[];function f(e){const[t,n]=(0,a.useState)([]),[f,j]=(0,a.useState)(-1),g=(0,u.zy)(),[y,k]=(0,a.useState)(!1),[C,S]=(0,a.useState)(!1),{t:b}=(0,h.Bd)(),[w,I]=(0,a.useState)([]),[N,A]=(0,s.fp)(i.AG.nav_index_add_item_by_now_list),D=e=>{-1!==f?v[f]._children=e:_=e};(0,a.useEffect)(()=>{(async()=>{if(!e.getItems)return;const t=await e.getItems();_=t,n(_)})()},[g]);(0,a.useEffect)(()=>{if(N){const e=[...t,{name:"",color:(0,o.Lr)(m),...N}];D(e),n(e),k(!0),A(void 0)}},[N]);const F=e=>{j(f+1),n(e._children),v.push(e)};return(0,l.jsxs)("div",{className:"nav_list_div scroll-div-y",children:[-1!==f&&(0,l.jsx)(d.rA,{title:"返回",icon:"arrow_back",onClick:()=>{n(0===f?_:v[f-1]._children),j(f-1),v.pop()}}),t.map((s,i)=>(0,l.jsxs)("div",{draggable:!0,onDragOver:e=>{e.preventDefault()},onDragStart:e=>((e,t)=>{p=t})(0,i),onDrop:e=>((e,a)=>{e.preventDefault();const s=t[p],i=t[a];if(i&&"dir"===i._type){const e=[...t];return e.splice(p,1),i._children||(i._children=[]),i._children.push(s),D(e),void n(e)}const l=[...t],c=l[p];l.splice(p,1),l.splice(a,0,c),D(l),n(l)})(e,i),style:{cursor:y?"move":"pointer"},children:[(0,l.jsx)(c,{name:s.name,item:s,...s,div:y,target:"_blank",click_dir:F,clickItem:e.clickItem}),y&&(void 0!==w.find(e=>e===i)||C)&&(0,l.jsxs)("div",{className:C?"":" site_edit ",children:["dir"===s._type?(0,l.jsxs)(a.Fragment,{children:[(0,l.jsx)(r.Sm,{value:s.name,handleInputChange:e=>{s.name=e},placeholder:b("输入类目名"),no_border:!0}),(0,l.jsx)(r.Sm,{value:s.color,handleInputChange:e=>{s.color=e},placeholder:"color",no_border:!0})]}):e.items.map((e,t)=>(0,l.jsx)("div",{children:(0,l.jsx)(r.Sm,{value:s[e.key],handleInputChange:t=>{s[e.key]=t},placeholder:e.preName,no_border:!0})},t)),!C&&(0,l.jsx)(d.C3,{text:b("折叠"),clickFun:()=>{I((0,o.P1)(w,i))}})]}),y&&(0,l.jsx)("div",{style:{display:"block"},children:(0,l.jsxs)("span",{className:"div-row ",children:[(0,l.jsx)(d.C3,{text:b("删除"),clickFun:()=>{(e=>{const a=[...t];a.splice(e,1),D(a),n(a)})(i)}}),(0,l.jsx)(d.C3,{text:b("编辑"),clickFun:()=>{void 0===w.find(e=>e===i)&&I([...w,i])}})]})})]},i)),y&&(0,l.jsxs)("div",{style:{display:"block"},children:[(0,l.jsx)(d.rA,{title:b("取消"),icon:"cancel",onClick:()=>{I([]),k(!1),x&&(n(x),D(x)),S(!1)}}),(0,l.jsx)(d.rA,{title:b("添加"),icon:"add",onClick:async()=>{const a=[...t,{name:"",color:(0,o.Lr)(m),...e.get_pre_add_item&&await e.get_pre_add_item()}];D(a),n(a)}}),(0,l.jsx)(d.rA,{title:b("添加类目"),icon:"add_box",onClick:()=>{const e=[...t,{name:"",_type:"dir",_children:[],color:"#c1edfb"}];D(e),n(e)}}),(0,l.jsx)(d.rA,{title:b("全部编辑"),icon:C?"unfold_less":"unfold_more",onClick:()=>{S(!C)}})]}),(void 0===e.have_auth_edit||!0===e.have_auth_edit)&&(0,l.jsx)(d.rA,{icon:y?"save":"edit",title:b(y?"保存":"编辑"),onClick:async()=>{y?e.save&&await e.save(_):x=t,k(!y)}})]})}},87209(e,t,n){n.r(t),n.d(t,{default:()=>I});var a=n(96540),s=n(75725),i=n(61443),l=n(70447),c=n(85997),o=n(34289),r=n(22022),d=n(62042),u=n(14284),h=n(53459),m=n(74848);function p(e){const{t}=(0,r.Bd)(),[n,p]=(0,a.useState)(t("毫秒")),[x,_]=(0,a.useState)(""),[v,f]=(0,a.useState)(""),[j,g]=(0,a.useState)(null),[y,k]=(0,a.useState)(null),[C,S]=(0,a.useState)(Date.now());return(0,a.useEffect)(()=>{(async()=>{const e=await u.Yu.get("sys_time/get");if(e.code===h.m.Success){const t=await e.data;g(t.timestamp),k(t.timezone),S(t.timestamp)}})();const e=setInterval(()=>{S(e=>e+1e3)},1e3);return()=>clearInterval(e)},[]),(0,m.jsxs)(s.fI,{children:[(0,m.jsx)(s.VP,{children:(0,m.jsxs)(l.Zp,{title:t("时间转换器"),rightBottomCom:(0,m.jsx)(c.C3,{text:t("确定"),clickFun:function(){if(!x&&!v)return void(0,d.zN)("不能都为空");let e=0;const t=""!==x&&0!==x;if(t){if(!(0,o.kf)(x))return void(0,d.zN)("must be number !");e=parseInt(x),"分秒"===n&&(e*=1e3)}const a=new Date(t?e:v),s=new Intl.DateTimeFormat("zh-CN",{year:"numeric",month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1}).format(a);if(f(s),!x){const e=a.getTime();_("毫秒"===n?e:e/1e3)}}}),children:[(0,m.jsx)(i.l6,{value:n,options:[{title:t("毫秒"),value:"毫秒"},{title:t("分秒"),value:"分秒"}],onChange:function(e){p(e)}}),(0,m.jsx)(i.Sm,{placeholder:n,value:x,handleInputChange:e=>{_(e)}}),(0,m.jsx)(i.Sm,{placeholder:t("格式化时间"),value:v,handleInputChange:e=>{f(e)}})]})}),(0,m.jsx)(s.VP,{children:null!==j&&null!==y&&(0,m.jsxs)(l.Zp,{title:t("服务器时间"),children:[(0,m.jsxs)("h1",{children:[t("时区"),": ",y]}),(0,m.jsxs)("h1",{children:[t("时间"),": ",new Date(C).toLocaleString(navigator.language,{timeZone:y})]})]})})]})}var x=n(57952),_=n(83029),v=n(78247),f=n(23430);function j(e){const{t}=(0,r.Bd)(),{check_user_auth:n}=(0,v.MH)(),[s,l]=(0,a.useState)(""),o=async e=>{const t=e||s;if(!t)return void(0,d.zN)("mac地址不能为空");(await u._U.post("wol/exec",{mac:t})).code===h.m.Success&&(0,d.SK)("发送唤醒命令成功")};return(0,m.jsxs)("div",{children:[(0,m.jsxs)(x.A,{children:[(0,m.jsx)(c.rA,{icon:"play_arrow",title:t("发送"),onClick:()=>{o()}}),(0,m.jsx)(i.$Z,{placeholder:t("目标设备mac地址"),icon:"laptop_mac",value:s,handleInputChange:e=>l(e)})]}),(0,m.jsx)(_.N,{have_auth_edit:n(f.oV.wol_proxy_tag_update),getItems:async()=>{const e=await u._U.get("wol/tag");return e.code===h.m.Success?e.data:[]},save:async e=>{(await u._U.post("wol/tag/save",e)).code!==h.m.Success&&(0,d.zN)("网络错误")},clickItem:async e=>{l(e.mac),o(e.mac)},items:[{key:"name",preName:t("名字")},{key:"mac",preName:"mac"+t("地址")},{key:"color",preName:"color"}]})]})}var g=n(77481),y=n(34843),k=n(82893),C=n(40505);let S;function b(){const[e,t]=(0,a.useState)("rsa"),[n,o]=(0,a.useState)("pem"),{t:p,i18n:_}=(0,r.Bd)(),[v,f]=(0,y.fp)(k.AG.confirm),[j,b]=(0,a.useState)(""),[w,I]=(0,a.useState)(""),N=async t=>{if(!w||!j)return void(0,d.zN)("密钥不能为空");let n="id_"+e;"pub"===t&&(n+=".pub"),f({open:!0,title:p("将覆盖密钥文件"),sub_title:`之前的密钥将作废。 将会作为 ${n} 文件保存到系统上的"${S}"目录下,此目录会作为openssh(git)所使用的默认目录。`,handle:async()=>{(await u.cD.post("save_openssh",{name:n,context:"pub"===t?j:w})).code===h.m.Success&&((0,d.SK)("完成"),f({open:!1,handle:null}))}})};return(0,m.jsxs)(a.Fragment,{children:[(0,m.jsx)(x.A,{children:(0,m.jsx)(g.S,{isFlex:!0,columns:[(0,m.jsx)(i.l6,{tip:p("加密算法"),value:e,width:"auto",onChange:e=>{t(e)},options:[{title:p("RSA"),value:"rsa"},{title:p("DSA"),value:"dsa"},{title:p("ECDSA"),value:"ecdsa"}]}),(0,m.jsx)(i.l6,{tip:p("输出格式"),value:n,width:"auto",onChange:e=>{o(e)},options:[{title:p("普通PEM"),value:"pem"},{title:p("opensshPEM"),value:"openssh_pem"}]}),(0,m.jsx)(c.rA,{icon:"play_arrow",title:p("生成"),onClick:()=>{(async()=>{const t=await u.cD.post("generate",{type:e,form:n});t.code===h.m.Success&&(b(t.data.public_key),I(t.data.private_key),S=t.data.home_path)})()}})]})}),(0,m.jsx)(s.xh,{children:(0,m.jsxs)(s.fI,{children:[(0,m.jsx)(s.VP,{children:(0,m.jsx)(l.Zp,{title:p("公钥"),titleCom:(0,m.jsx)(c.rA,{title:p("复制"),icon:"copy_all",onClick:()=>{j&&((0,C.lW)(j),(0,d.SK)("完成"))}}),rightBottomCom:"openssh_pem"===n&&(0,m.jsx)(c.C3,{text:p("保存到.ssh目录"),clickFun:()=>{N("pub")}}),children:(0,m.jsx)("textarea",{className:"input--textarea input--no_border",style:{width:"100%",height:"270px"},onChange:e=>{b(e.target.value)},value:j})})}),(0,m.jsx)(s.VP,{children:(0,m.jsx)(l.Zp,{title:p("私钥"),titleCom:(0,m.jsx)(c.rA,{title:p("复制"),icon:"copy_all",onClick:()=>{w&&((0,C.lW)(w),(0,d.SK)("成功"))}}),rightBottomCom:"openssh_pem"===n&&(0,m.jsx)(c.C3,{text:p("保存到.ssh目录"),clickFun:()=>{N("pri")}}),children:(0,m.jsx)("textarea",{className:"input--textarea input--no_border",style:{width:"100%",height:"270px"},value:w,onChange:e=>{I(e.target.value)}})})})]})})]})}var w=n(87361);function I(e){const{t}=(0,r.Bd)(),{check_user_auth:n}=(0,v.MH)(),a=[];return a.push({index:1,name:t("时间工具"),rto:"timeutil/",component:(0,m.jsx)(p,{})},{index:1,name:t("非对称密钥"),rto:"crypto/",component:(0,m.jsx)(b,{})}),n(f.oV.wol_proxy)&&a.push({index:1,name:t("网络唤醒"),rto:"netwol/",component:(0,m.jsx)(j,{})}),(0,m.jsx)(s.W1,{optionList:a,father_route:w.o.toolbox})}}}]);
1
+ "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7209],{77481(e,t,n){n.d(t,{S:()=>l,X:()=>i});var a=n(96540),s=n(74848);function i(e){const[t,n]=a.useState([]);return(0,a.useEffect)(()=>{e.children?n(Array.isArray(e.children)?e.children:[e.children]):n(e.rows)},[e.rows,e.children]),(0,s.jsxs)("table",{children:[(0,s.jsx)("thead",{children:(0,s.jsx)("tr",{children:e.headers?.map((e,t)=>(0,s.jsx)("th",{children:e},t))})}),(0,s.jsx)("tbody",{children:t.map((t,n)=>(0,s.jsx)("tr",{onContextMenu:()=>{e.handleContextMenu&&e.handleContextMenu(t)},children:t.map((n,a)=>(0,s.jsx)("td",{style:{width:e.width??"auto"},className:a===t.length-1?"small":"",children:n},a))},n))})]})}function l(e){return(0,s.jsx)("div",{style:{display:e.isFlex?"flex":"block"},children:e.columns.map((e,t)=>(0,s.jsx)("div",{children:e},t))})}},83029(e,t,n){n.d(t,{N:()=>f});var a=n(96540),s=n(34843),i=n(82893),l=n(74848);function c(e){const[t,n]=(0,s.fp)(i.AG.user_base_info);return(0,l.jsx)("div",{children:e.div?(0,l.jsx)("div",{className:"nav_list_a",style:{background:e.color},children:e.name}):e.clickItem||"dir"===e._type?(0,l.jsx)("div",{className:"nav_list_a",style:{background:e.color},onClick:()=>{"dir"!==e._type?e.clickItem&&e.clickItem(e):e.click_dir(e.item)},children:e.name}):(0,l.jsx)("a",{href:e.url,target:e.target,className:"nav_list_a",style:{background:e.color},children:e.name})})}var o=n(64694),r=n(61443),d=n(85997),u=n(61973),h=n(34899);const m=["#ffffff","#fefff8","#fcfdf1","#d3d2dc","#f8f9fd","#ebf4fe","#ebebeb","#e8f7eb","#eaf2f9"];let p,x,_=[];const v=[];function f(e){const[t,n]=(0,a.useState)([]),[f,j]=(0,a.useState)(-1),g=(0,u.zy)(),[y,k]=(0,a.useState)(!1),[C,S]=(0,a.useState)(!1),{t:b}=(0,h.Bd)(),[w,I]=(0,a.useState)([]),[N,A]=(0,s.fp)(i.AG.nav_index_add_item_by_now_list),D=e=>{-1!==f?v[f]._children=e:_=e};(0,a.useEffect)(()=>{(async()=>{if(!e.getItems)return;const t=await e.getItems();_=t,n(_)})()},[g]);(0,a.useEffect)(()=>{if(N){const e=[...t,{name:"",color:(0,o.Lr)(m),...N}];D(e),n(e),k(!0),A(void 0)}},[N]);const F=e=>{j(f+1),n(e._children),v.push(e)};return(0,l.jsxs)("div",{className:"nav_list_div scroll-div-y",children:[-1!==f&&(0,l.jsx)(d.rA,{title:"返回",icon:"arrow_back",onClick:()=>{n(0===f?_:v[f-1]._children),j(f-1),v.pop()}}),t.map((s,i)=>(0,l.jsxs)("div",{draggable:!0,onDragOver:e=>{e.preventDefault()},onDragStart:e=>((e,t)=>{p=t})(0,i),onDrop:e=>((e,a)=>{e.preventDefault();const s=t[p],i=t[a];if(i&&"dir"===i._type){const e=[...t];return e.splice(p,1),i._children||(i._children=[]),i._children.push(s),D(e),void n(e)}const l=[...t],c=l[p];l.splice(p,1),l.splice(a,0,c),D(l),n(l)})(e,i),style:{cursor:y?"move":"pointer"},children:[(0,l.jsx)(c,{name:s.name,item:s,...s,div:y,target:"_blank",click_dir:F,clickItem:e.clickItem}),y&&(void 0!==w.find(e=>e===i)||C)&&(0,l.jsxs)("div",{className:C?"":" site_edit ",children:["dir"===s._type?(0,l.jsxs)(a.Fragment,{children:[(0,l.jsx)(r.Sm,{value:s.name,handleInputChange:e=>{s.name=e},placeholder:b("输入类目名"),no_border:!0}),(0,l.jsx)(r.Sm,{value:s.color,handleInputChange:e=>{s.color=e},placeholder:"color",no_border:!0})]}):e.items.map((e,t)=>(0,l.jsx)("div",{children:(0,l.jsx)(r.Sm,{value:s[e.key],handleInputChange:t=>{s[e.key]=t},placeholder:e.preName,no_border:!0})},t)),!C&&(0,l.jsx)(d.C3,{text:b("折叠"),clickFun:()=>{I((0,o.P1)(w,i))}})]}),y&&(0,l.jsx)("div",{style:{display:"block"},children:(0,l.jsxs)("span",{className:"div-row ",children:[(0,l.jsx)(d.C3,{text:b("删除"),clickFun:()=>{(e=>{const a=[...t];a.splice(e,1),D(a),n(a)})(i)}}),(0,l.jsx)(d.C3,{text:b("编辑"),clickFun:()=>{void 0===w.find(e=>e===i)&&I([...w,i])}})]})})]},i)),y&&(0,l.jsxs)("div",{style:{display:"block"},children:[(0,l.jsx)(d.rA,{title:b("取消"),icon:"cancel",onClick:()=>{I([]),k(!1),x&&(n(x),D(x)),S(!1)}}),(0,l.jsx)(d.rA,{title:b("添加"),icon:"add",onClick:async()=>{const a=[...t,{name:"",color:(0,o.Lr)(m),...e.get_pre_add_item&&await e.get_pre_add_item()}];D(a),n(a)}}),(0,l.jsx)(d.rA,{title:b("添加类目"),icon:"add_box",onClick:()=>{const e=[...t,{name:"",_type:"dir",_children:[],color:"#c1edfb"}];D(e),n(e)}}),(0,l.jsx)(d.rA,{title:b("全部编辑"),icon:C?"unfold_less":"unfold_more",onClick:()=>{S(!C)}})]}),(void 0===e.have_auth_edit||!0===e.have_auth_edit)&&(0,l.jsx)(d.rA,{icon:y?"save":"edit",title:b(y?"保存":"编辑"),onClick:async()=>{y?e.save&&await e.save(_):x=t,k(!y)}})]})}},87209(e,t,n){n.r(t),n.d(t,{default:()=>I});var a=n(96540),s=n(75725),i=n(61443),l=n(70447),c=n(85997),o=n(34289),r=n(34899),d=n(62042),u=n(14284),h=n(53459),m=n(74848);function p(e){const{t}=(0,r.Bd)(),[n,p]=(0,a.useState)(t("毫秒")),[x,_]=(0,a.useState)(""),[v,f]=(0,a.useState)(""),[j,g]=(0,a.useState)(null),[y,k]=(0,a.useState)(null),[C,S]=(0,a.useState)(Date.now());return(0,a.useEffect)(()=>{(async()=>{const e=await u.Yu.get("sys_time/get");if(e.code===h.m.Success){const t=await e.data;g(t.timestamp),k(t.timezone),S(t.timestamp)}})();const e=setInterval(()=>{S(e=>e+1e3)},1e3);return()=>clearInterval(e)},[]),(0,m.jsxs)(s.fI,{children:[(0,m.jsx)(s.VP,{children:(0,m.jsxs)(l.Zp,{title:t("时间转换器"),rightBottomCom:(0,m.jsx)(c.C3,{text:t("确定"),clickFun:function(){if(!x&&!v)return void(0,d.zN)("不能都为空");let e=0;const t=""!==x&&0!==x;if(t){if(!(0,o.kf)(x))return void(0,d.zN)("must be number !");e=parseInt(x),"分秒"===n&&(e*=1e3)}const a=new Date(t?e:v),s=new Intl.DateTimeFormat("zh-CN",{year:"numeric",month:"short",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1}).format(a);if(f(s),!x){const e=a.getTime();_("毫秒"===n?e:e/1e3)}}}),children:[(0,m.jsx)(i.l6,{value:n,options:[{title:t("毫秒"),value:"毫秒"},{title:t("分秒"),value:"分秒"}],onChange:function(e){p(e)}}),(0,m.jsx)(i.Sm,{placeholder:n,value:x,handleInputChange:e=>{_(e)}}),(0,m.jsx)(i.Sm,{placeholder:t("格式化时间"),value:v,handleInputChange:e=>{f(e)}})]})}),(0,m.jsx)(s.VP,{children:null!==j&&null!==y&&(0,m.jsxs)(l.Zp,{title:t("服务器时间"),children:[(0,m.jsxs)("h1",{children:[t("时区"),": ",y]}),(0,m.jsxs)("h1",{children:[t("时间"),": ",new Date(C).toLocaleString(navigator.language,{timeZone:y})]})]})})]})}var x=n(57952),_=n(83029),v=n(78247),f=n(23430);function j(e){const{t}=(0,r.Bd)(),{check_user_auth:n}=(0,v.MH)(),[s,l]=(0,a.useState)(""),o=async e=>{const t=e||s;if(!t)return void(0,d.zN)("mac地址不能为空");(await u._U.post("wol/exec",{mac:t})).code===h.m.Success&&(0,d.SK)("发送唤醒命令成功")};return(0,m.jsxs)("div",{children:[(0,m.jsxs)(x.A,{children:[(0,m.jsx)(c.rA,{icon:"play_arrow",title:t("发送"),onClick:()=>{o()}}),(0,m.jsx)(i.$Z,{placeholder:t("目标设备mac地址"),icon:"laptop_mac",value:s,handleInputChange:e=>l(e)})]}),(0,m.jsx)(_.N,{have_auth_edit:n(f.oV.wol_proxy_tag_update),getItems:async()=>{const e=await u._U.get("wol/tag");return e.code===h.m.Success?e.data:[]},save:async e=>{(await u._U.post("wol/tag/save",e)).code!==h.m.Success&&(0,d.zN)("网络错误")},clickItem:async e=>{l(e.mac),o(e.mac)},items:[{key:"name",preName:t("名字")},{key:"mac",preName:"mac"+t("地址")},{key:"color",preName:"color"}]})]})}var g=n(77481),y=n(34843),k=n(82893),C=n(40505);let S;function b(){const[e,t]=(0,a.useState)("rsa"),[n,o]=(0,a.useState)("pem"),{t:p,i18n:_}=(0,r.Bd)(),[v,f]=(0,y.fp)(k.AG.confirm),[j,b]=(0,a.useState)(""),[w,I]=(0,a.useState)(""),N=async t=>{if(!w||!j)return void(0,d.zN)("密钥不能为空");let n="id_"+e;"pub"===t&&(n+=".pub"),f({open:!0,title:p("将覆盖密钥文件"),sub_title:`之前的密钥将作废。 将会作为 ${n} 文件保存到系统上的"${S}"目录下,此目录会作为openssh(git)所使用的默认目录。`,handle:async()=>{(await u.cD.post("save_openssh",{name:n,context:"pub"===t?j:w})).code===h.m.Success&&((0,d.SK)("完成"),f({open:!1,handle:null}))}})};return(0,m.jsxs)(a.Fragment,{children:[(0,m.jsx)(x.A,{children:(0,m.jsx)(g.S,{isFlex:!0,columns:[(0,m.jsx)(i.l6,{tip:p("加密算法"),value:e,width:"auto",onChange:e=>{t(e)},options:[{title:p("RSA"),value:"rsa"},{title:p("DSA"),value:"dsa"},{title:p("ECDSA"),value:"ecdsa"}]}),(0,m.jsx)(i.l6,{tip:p("输出格式"),value:n,width:"auto",onChange:e=>{o(e)},options:[{title:p("普通PEM"),value:"pem"},{title:p("opensshPEM"),value:"openssh_pem"}]}),(0,m.jsx)(c.rA,{icon:"play_arrow",title:p("生成"),onClick:()=>{(async()=>{const t=await u.cD.post("generate",{type:e,form:n});t.code===h.m.Success&&(b(t.data.public_key),I(t.data.private_key),S=t.data.home_path)})()}})]})}),(0,m.jsx)(s.xh,{children:(0,m.jsxs)(s.fI,{children:[(0,m.jsx)(s.VP,{children:(0,m.jsx)(l.Zp,{title:p("公钥"),titleCom:(0,m.jsx)(c.rA,{title:p("复制"),icon:"copy_all",onClick:()=>{j&&((0,C.lW)(j),(0,d.SK)("完成"))}}),rightBottomCom:"openssh_pem"===n&&(0,m.jsx)(c.C3,{text:p("保存到.ssh目录"),clickFun:()=>{N("pub")}}),children:(0,m.jsx)("textarea",{className:"input--textarea input--no_border",style:{width:"100%",height:"270px"},onChange:e=>{b(e.target.value)},value:j})})}),(0,m.jsx)(s.VP,{children:(0,m.jsx)(l.Zp,{title:p("私钥"),titleCom:(0,m.jsx)(c.rA,{title:p("复制"),icon:"copy_all",onClick:()=>{w&&((0,C.lW)(w),(0,d.SK)("成功"))}}),rightBottomCom:"openssh_pem"===n&&(0,m.jsx)(c.C3,{text:p("保存到.ssh目录"),clickFun:()=>{N("pri")}}),children:(0,m.jsx)("textarea",{className:"input--textarea input--no_border",style:{width:"100%",height:"270px"},value:w,onChange:e=>{I(e.target.value)}})})})]})})]})}var w=n(87361);function I(e){const{t}=(0,r.Bd)(),{check_user_auth:n}=(0,v.MH)(),a=[];return a.push({index:1,name:t("时间工具"),rto:"timeutil/",component:(0,m.jsx)(p,{})},{index:1,name:t("非对称密钥"),rto:"crypto/",component:(0,m.jsx)(b,{})}),n(f.oV.wol_proxy)&&a.push({index:1,name:t("网络唤醒"),rto:"netwol/",component:(0,m.jsx)(j,{})}),(0,m.jsx)(s.W1,{optionList:a,father_route:w.o.toolbox})}}}]);
@@ -1 +1 @@
1
- (self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7759],{45601(A,e,s){"use strict";s.r(e),s.d(e,{default:()=>G});var a=s(96540),t=s(22022),c=s(34843),d=s(82893),l=s(14944),r=s(92275),o=s(14284),Y=s(53459),i=s(61443),n=s(85997),p=s(83029),B=s(57952),j=(s(82341),s(91568)),h=s(18257),S=s.n(h),u=s(76559),f=s(62042),m=s(74777),x=s(78247),y=s(23430),z=s(74848);let N;function G(){const{t:A}=(0,t.Bd)(),[e,s]=(0,a.useState)(void 0),[h,G]=(0,a.useState)(!1),[P,k]=(0,c.fp)(d.AG.user_base_info),{check_user_auth:H}=(0,x.MH)(),g=(0,a.useRef)(null),w=(0,a.useRef)(null);(0,a.useEffect)(()=>()=>{N&&(N.pause(),N.unload(),N.detachMediaElement(),N.destroy(),N=null),w.current&&w.current.dispose()},[]);const L=s=>{G(!0),(async e=>{P.sysSoftWare&&P.sysSoftWare[m.jk.ffmpeg]&&P.sysSoftWare[m.jk.ffmpeg].installed?(w.current=(0,j.default)(g.current,{controls:!0,width:640,height:360}),S().isSupported()?(N=S().createPlayer({type:"flv",url:u.I.getOtherWebSocketUrl(r.HK.rtsp_get,{url:e}),isLive:!0}),N.attachMediaElement(g.current),N.load(),N.load()):(0,f.zN)("FLV.js is not supported in this browser.")):(0,f.zN)(A("找不到ffmpeg"))})(s.address?s.address:e)};return(0,z.jsxs)("div",{children:[(0,z.jsxs)(B.A,{children:[(0,z.jsx)(i.$Z,{max_width:"40rem",placeholder:A(" rtsp://username:password@ip:port/path"),icon:"link",value:e,handleInputChange:A=>s(A)}),!h&&(0,z.jsx)(n.rA,{icon:"play_arrow",title:A("连接"),onClick:L}),h&&(0,z.jsx)(n.rA,{icon:"close",title:A("关闭"),onClick:async()=>{await l.ws.sendData(r.HK.rdp_disconnect,""),G(!1)}})]}),!h&&(0,z.jsx)(p.N,{have_auth_edit:H(y.oV.rtsp_proxy_tag_update),getItems:async()=>{const A=await o.K4.get("tag");return A.code===Y.m.Success?A.data:[]},save:async A=>{(await o.K4.post("tag/save",A)).code!==Y.m.Success&&(0,f.zN)("网络错误")},clickItem:async A=>{s(A.address),L(A)},items:[{key:"name",preName:A("名字")},{key:"address",preName:A("地址")},{key:"color",preName:"color"}]}),(0,z.jsx)("canvas",{id:"rdpwebview",style:{display:"none"}}),(0,z.jsx)("div",{style:{display:h?"block":"none"},children:(0,z.jsx)("video",{ref:g,className:"video-js vjs-default-skin"})})]})}},17422(A){"use strict";A.exports="data:application/font-woff;charset=utf-8;base64,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"},80542(){}}]);
1
+ (self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7759],{45601(A,e,s){"use strict";s.r(e),s.d(e,{default:()=>G});var a=s(96540),t=s(34899),c=s(34843),d=s(82893),l=s(14944),r=s(92275),o=s(14284),Y=s(53459),i=s(61443),n=s(85997),p=s(83029),B=s(57952),j=(s(82341),s(91568)),h=s(18257),S=s.n(h),u=s(76559),f=s(62042),m=s(74777),x=s(78247),y=s(23430),z=s(74848);let N;function G(){const{t:A}=(0,t.Bd)(),[e,s]=(0,a.useState)(void 0),[h,G]=(0,a.useState)(!1),[P,k]=(0,c.fp)(d.AG.user_base_info),{check_user_auth:H}=(0,x.MH)(),g=(0,a.useRef)(null),w=(0,a.useRef)(null);(0,a.useEffect)(()=>()=>{N&&(N.pause(),N.unload(),N.detachMediaElement(),N.destroy(),N=null),w.current&&w.current.dispose()},[]);const L=s=>{G(!0),(async e=>{P.sysSoftWare&&P.sysSoftWare[m.jk.ffmpeg]&&P.sysSoftWare[m.jk.ffmpeg].installed?(w.current=(0,j.default)(g.current,{controls:!0,width:640,height:360}),S().isSupported()?(N=S().createPlayer({type:"flv",url:u.I.getOtherWebSocketUrl(r.HK.rtsp_get,{url:e}),isLive:!0}),N.attachMediaElement(g.current),N.load(),N.load()):(0,f.zN)("FLV.js is not supported in this browser.")):(0,f.zN)(A("找不到ffmpeg"))})(s.address?s.address:e)};return(0,z.jsxs)("div",{children:[(0,z.jsxs)(B.A,{children:[(0,z.jsx)(i.$Z,{max_width:"40rem",placeholder:A(" rtsp://username:password@ip:port/path"),icon:"link",value:e,handleInputChange:A=>s(A)}),!h&&(0,z.jsx)(n.rA,{icon:"play_arrow",title:A("连接"),onClick:L}),h&&(0,z.jsx)(n.rA,{icon:"close",title:A("关闭"),onClick:async()=>{await l.ws.sendData(r.HK.rdp_disconnect,""),G(!1)}})]}),!h&&(0,z.jsx)(p.N,{have_auth_edit:H(y.oV.rtsp_proxy_tag_update),getItems:async()=>{const A=await o.K4.get("tag");return A.code===Y.m.Success?A.data:[]},save:async A=>{(await o.K4.post("tag/save",A)).code!==Y.m.Success&&(0,f.zN)("网络错误")},clickItem:async A=>{s(A.address),L(A)},items:[{key:"name",preName:A("名字")},{key:"address",preName:A("地址")},{key:"color",preName:"color"}]}),(0,z.jsx)("canvas",{id:"rdpwebview",style:{display:"none"}}),(0,z.jsx)("div",{style:{display:h?"block":"none"},children:(0,z.jsx)("video",{ref:g,className:"video-js vjs-default-skin"})})]})}},17422(A){"use strict";A.exports="data:application/font-woff;charset=utf-8;base64,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"},80542(){}}]);