|
|
|
import{r as M,K as de,D as H,o as ue,H as q,x as ne,q as N,c as v,f as r,a as e,b as d,u as D,d as S,t as x,g as Q,_ as Y,h as K,F,i as ee,n as L,z as j,G as E,W as ce,M as ve,N as be,O as V,w as J,k as ae,e as T,j as C,P as R,T as oe,Q as I,J as he,m as me,y as _e,L as ye,v as Pe,S as $e}from"./index-B-jc5mKC.js";import{_ as we}from"./protocolBadge-B1YhumvL.js";import{L as O}from"./localeText-DmTH4uVF.js";import{C as Se,L as xe,B as Ce,a as ke,b as Oe,c as Me,p as De,d as Ae,e as Le,f as Re,P as Ie,h as Ee,g as re}from"./index-CRUwyRn4.js";import{d as Te}from"./dayjs.min-CrcZDfUc.js";const Be={class:"row gx-2 gy-2 mb-3"},Ne={class:"col-12"},Je={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Fe={class:"card-header bg-transparent border-0"},je={class:"text-muted"},Ve={class:"card-body pt-1"},Ue={class:"col-sm col-lg-6"},Ge={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Qe={class:"card-header bg-transparent border-0 d-flex align-items-center"},ze={class:"text-muted"},We={key:0,class:"text-primary fw-bold ms-auto"},qe={class:"card-body pt-1"},Ke={class:"col-sm col-lg-6"},He={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Ye={class:"card-header bg-transparent border-0 d-flex align-items-center"},Ze={class:"text-muted"},Xe={key:0,class:"text-success fw-bold ms-auto"},et={class:"card-body pt-1"},tt={__name:"peerDataUsageCharts",props:{configurationPeers:Array,configurationInfo:Object},setup(o){Se.register(xe,Ce,ke,Oe,Me,De,Ae,Le,Re,Ie);const t=o,l=M({timestamp:[],data:[]}),i=M({timestamp:[],data:[]}),P=de(),y=H(),u=M(void 0),m=async()=>{await Q("/api/getWireguardConfigurationRealtimeTraffic",{configurationName:P.params.id},_=>{let b=Te().format("hh:mm:ss A");(_.data.sent!==0&&_.data.recv!==0||l.value.data.length>0&&i.value.data.length>0)&&(l.value.timestamp.push(b),l.value.data.push(_.data.sent),i.value.timestamp.push(b),i.value.data.push(_.data.recv))})},n=()=>{clearInterval(u.value),u.value=void 0,t.configurationInfo.Status&&(u.value=setInterval(()=>{m()},parseInt(y.Configuration.Server.dashboard_refresh_interval)))};ue(()=>{n()}),q(()=>t.configurationInfo.Status,()=>{n()}),q(()=>y.Configuration.Server.dashboard_refresh_interval,()=>{n()}),ne(()=>{clearInterval(u.value),u.value=void 0});const f=N(()=>{let _=t.configurationPeers.filter(b=>b.cumu_data+b.total_data>0);return{labels:_.map(b=>b.name?b.name:`Untitled Peer - ${b.id}`),datasets:[{label:"Total Data Usage",data:_.map(b=>b.cumu_data+b.total_data),backgroundColor:_.map(b=>"#ffc107"),tooltip:{callbacks:{label:b=>`${b.formattedValue} GB`}}}]}}),g=N(()=>({labels:[...l.value.timestamp],datasets:[{label:"Data Sent",data:[...l.value.data],fill:!1,borderColor:"#198754",backgroundColor:"#198754",tension:0}]})),A=N(()=>({labels:[...i.value.timestamp],datasets:[{label:"Data Received",data:[...i.value.data],fill:!1,borderColor:"#0d6efd",backgroundColor:"#0d6efd",tension:0}]})),h=N(()=>({responsive:!0,plugins:{legend:{display:!1}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(_,b)=>`${Math.round((_+Number.EPSILON)*1e3)/1e3} GB`},grid:{display:!1}}}})),$=N(()=>({responsive:!0,plugins:{legend:{display:!1},tooltip:{callbacks:{label:_=>`${_.formattedValue} MB/s`}}},scales:{x:{ticks:{display:!1},grid:{display:!0}},y:{ticks:{callback:(_,b)=>`${Math.round((_+Number.EPSILON)*1e3)/1e3} MB/s`},grid:{display:!0}}}}));return(_,b)=>(r(),v("div",Be,[e("div",Ne,[e("div",Je,[e("div",Fe,[e("small",je,[d(O,{t:"Peers Data Usage"})])]),e("div",Ve,[d(D(Ee),{data:f.value,options:h.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["data","options"])])])]),e("div",Ue,[e("div",Ge,[e("div",Qe,[e("small",ze,[d(O,{t:"Real Time Received Data Usage"})]),i.value.data.length>0?(r(),v("small",We,x(i.value.data[i.value.data.length-1])+" MB/s ",1)):S("",!0)]),e("div",qe,[d(D(re),{options:$.value,data:A.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"])])])]),e("div",Ke,[e("div",He,[e("div",Ye,[e("small",Ze,[d(O,{t:"Real Time Sent Data Usage"})]),l.value.data.length>0?(r(),v("small",Xe,x
|