32 lines
3.5 KiB
JavaScript
32 lines
3.5 KiB
JavaScript
import{d as D,R as y,_ as N}from"../index.D-NvtsOM.js";import{l as T}from"./neInfo.DNMxf4Rh.js";import{g as I,r as x,bE as C,W as R,k as b,D as E,l as G,bF as k}from"./vendor/index.CRpmXtWV.js";import{g as A}from"./topology.MJW1k77f.js";import{e as L,n as P}from"./registerNode.C2fezJFu.js";import{n as f,b as c,e as g,a as B}from"./useTopology.BsBJQHWe.js";const z=I({__name:"index",setup(M){const{t:s}=D(),m=x(void 0),w=new C({offsetX:20,offsetY:20,getContent(a){if(!a)return s("views.monitor.topologyBuild.graphNotInfo");const{id:n,label:t,neState:e}=a.item?.getModel();return f.includes(n)?`<div><span>${t||n}</span></div>`:e?`
|
||
<div
|
||
style="
|
||
display: flex;
|
||
flex-direction: column;
|
||
width: 200px;
|
||
"
|
||
>
|
||
<div><strong>${s("views.monitor.topology.state")}:</strong><span>
|
||
${e.online?s("views.monitor.topology.normalcy"):s("views.monitor.topology.exceptions")}
|
||
</span></div>
|
||
<div><strong>${s("views.monitor.topology.refreshTime")}:</strong><span>
|
||
${e.refreshTime??"--"}
|
||
</span></div>
|
||
<div>========================</div>
|
||
<div><strong>ID:</strong><span>${e.neId}</span></div>
|
||
<div><strong>${s("views.monitor.topology.name")}:</strong><span>
|
||
${e.neName??"--"}
|
||
</span></div>
|
||
<div><strong>IP:</strong><span>${e.neIP}</span></div>
|
||
<div><strong>${s("views.monitor.topology.version")}:</strong><span>
|
||
${e.version??"--"}
|
||
</span></div>
|
||
<div><strong>${s("views.monitor.topology.serialNum")}:</strong><span>
|
||
${e.sn??"--"}
|
||
</span></div>
|
||
<div><strong>${s("views.monitor.topology.expiryDate")}:</strong><span>
|
||
${e.expire??"--"}
|
||
</span></div>
|
||
</div>
|
||
`:`<div><span>${t||n}</span></div>`},itemTypes:["node"]});function _(a){a.on("node:click",n=>{const t=n.item?.getModel();t&&t.id&&!f.includes(t.id)&&(B.value=t.id)})}function $(a,n){if(!a)return;const{clientHeight:t,clientWidth:e}=a;L(),P();const d=new k({container:a,width:e,height:t-36,fitCenter:!0,fitView:!0,fitViewPadding:[20],autoPaint:!0,modes:{default:["drag-canvas","zoom-canvas"]},groupByTypes:!1,nodeStateStyles:{selected:{fill:"transparent"}},plugins:[w],animate:!0,animateCfg:{duration:500,easing:"linearEasing"}});d.data(n),d.render(),_(d),g.value=d;var l=new ResizeObserver(function(u){u.forEach(function(o){g.value&&(g.value.changeSize(o.contentRect.width,o.contentRect.height-30),g.value.fitCenter())})});return l.observe(a),d}function S(a=!1){Promise.all([A(c.group),T({bandStatus:!1})]).then(n=>{const t=n[0],e=n[1];if(t.code===y&&Array.isArray(t.data.nodes)&&t.data.nodes.length>0&&e.code===y&&Array.isArray(e.data)&&e.data.length>0)return{graphData:t.data,neList:e.data};G.message.warning({content:s("views.monitor.topology.noData"),duration:5})}).then(n=>{if(!n)return;const{combos:t,edges:e,nodes:d}=n.graphData,l=d.filter(o=>{Reflect.set(o,"neState",{online:!1});const r=o.id;return!!(n.neList.some(i=>(Reflect.set(o,"neInfo",i.neType===r?i:{}),i.neType===r))||f.includes(r))}),u=e.filter(o=>{const r=o.source,p=o.target,i=l.some(v=>v.id===r),h=l.some(v=>v.id===p);return!!(i&&h||i&&f.includes(p)||h&&f.includes(r))});t.forEach(o=>{const r=o.children;return o.children=r.filter(p=>l.some(i=>i.id===p.id)),o}),c.data={combos:t,edges:u,nodes:l}}).finally(()=>{c.data.length<0||(a?g.value.read(c.data):$(m.value,c.data))})}return R(()=>{S(!1)}),(a,n)=>(b(),E("div",{ref_key:"graphG6Dom",ref:m,class:"chart"},null,512))}}),X=N(z,[["__scopeId","data-v-3ecd5a9d"]]);export{X as default};
|