Files
Nexus/web/app/assets/StatCardsRow-BgN54P9h.js
T
2026-06-08 07:30:31 +08:00

1 line
2.9 KiB
JavaScript

import{n as e,t}from"./VRow-B_1khu0W.js";import{$r as n,Dr as r,Er as i,Ir as a,R as o,U as s,Ur as c,Zr as l,_r as u,dr as d,gr as f,kr as p,pr as m,sr as h,ur as g,ut as _,z as v}from"./index-DC1GUjcg.js";import{n as y}from"./paginatedFetch-B8YFwkmU.js";import{t as b}from"./_plugin-vue_export-helper-BDNMzG2s.js";var x={status:`status`,name:`name`,domain:`domain`,address:`domain`,category:`category`,target_path:`target_path`,agent_version:`agent_version`,agent:`agent_version`,last_heartbeat:`heartbeat`,heartbeat:`heartbeat`};function S(e){if(!e.length)return{};let t=x[e[0].key];return t?{sort_by:t,sort_order:e[0].order}:{}}function C(){let e=c([]),t=c(!1),n=c(1),r=c(20),a=c(0),o=c(``),s=c(``),l=c([]);async function u(i){i?.silent||(t.value=!0);try{let t=await y(`/servers/`,{search:o.value||void 0,category:s.value||void 0,...S(l.value)},n.value,r.value);e.value=t.items,a.value=t.total,r.value===-1&&(n.value=1)}catch(t){throw e.value=[],a.value=0,t}finally{i?.silent||(t.value=!1)}}let d;i(()=>clearTimeout(d));function f(){clearTimeout(d),d=setTimeout(()=>{n.value=1,u()},300)}function p(e){n.value=e,u()}function m(e){r.value=e,n.value=1,u()}function h(e){s.value=e,n.value=1,u()}function g(e){l.value=e,n.value=1,u()}async function _(){return(await y(`/servers/`,{search:o.value||void 0,category:s.value||void 0,...S(l.value)},1,-1)).items}return{servers:e,loading:t,page:n,itemsPerPage:r,total:a,search:o,categoryFilter:s,sortBy:l,loadServers:u,onSearch:f,onPageChange:p,onItemsPerPageChange:m,onCategoryChange:h,onSortByChange:g,loadAllServers:_}}function w(e){switch(e){case`online`:return`success`;case`offline`:return`error`;default:return`warning`}}function T(e){switch(e){case`online`:return`在线`;case`offline`:return`离线`;default:return`未知`}}function E(e){if(!e)return`—`;let t=new Date(e);if(isNaN(t.getTime()))return`—`;let n=Date.now()-t.getTime();return n<6e4?`刚刚`:n<36e5?`${Math.floor(n/6e4)} 分钟前`:n<864e5?`${Math.floor(n/36e5)} 小时前`:`${Math.floor(n/864e5)} 天前`}var D={class:`text-caption text-medium-emphasis mb-1`,style:{"font-size":`14px`,"letter-spacing":`0.5px`,"text-transform":`uppercase`}},O=b(u({__name:`StatCardsRow`,props:{items:{}},setup(i){return(c,u)=>(r(),d(t,null,{default:a(()=>[(r(!0),m(h,null,p(i.items,(t,i)=>(r(),d(e,{key:i,cols:`6`,sm:`3`},{default:a(()=>[f(o,{elevation:`0`,rounded:`xl`,border:``,class:`stat-card`},{default:a(()=>[f(v,{class:`pa-4 d-flex align-center justify-space-between`},{default:a(()=>[g(`div`,null,[g(`div`,D,n(t.subtitle),1),g(`div`,{class:l([`font-weight-bold`,`text-`+t.color]),style:{"font-size":`36px`,"line-height":`1.1`}},n(t.title),3)]),f(s,{color:t.color,size:`48`,rounded:`lg`,class:`stat-icon`},{default:a(()=>[f(_,{icon:t.icon,size:`24`,color:`white`},null,8,[`icon`])]),_:2},1032,[`color`])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1}))}}),[[`__scopeId`,`data-v-68b984da`]]);export{C as a,T as i,E as n,w as r,O as t};