0b2d7ac50d
脚本 exec 立即返回 running 并在后台跑批次;/ws/alerts 推送 script_progress/complete; 新增 ScriptRunsPage、Telegram 汇总通知与可配置的浏览器完成提示音。 Co-authored-by: Cursor <cursoragent@cursor.com>
1 line
2.9 KiB
JavaScript
1 line
2.9 KiB
JavaScript
import{Er as e,N as t,Nr as n,P as r,R as i,Ur as a,Vr as o,Z as s,Zn as c,_r as l,er as u,gr as d,or as f,rr as p,sr as m,tr as h,yr as g}from"./index-CITYCKPt.js";import{n as _,t as v}from"./VRow-BPsTMp9y.js";import{n as y}from"./paginatedFetch-BacsHlzX.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=n([]),t=n(!1),r=n(1),i=n(20),a=n(0),o=n(``),s=n(``),c=n([]);async function l(){t.value=!0;try{let t=await y(`/servers/`,{search:o.value||void 0,category:s.value||void 0,...S(c.value)},r.value,i.value);e.value=t.items,a.value=t.total,i.value===-1&&(r.value=1)}catch(t){throw e.value=[],a.value=0,t}finally{t.value=!1}}let u;d(()=>clearTimeout(u));function f(){clearTimeout(u),u=setTimeout(()=>{r.value=1,l()},300)}function p(e){r.value=e,l()}function m(e){i.value=e,r.value=1,l()}function h(e){s.value=e,r.value=1,l()}function g(e){c.value=e,r.value=1,l()}async function _(){return(await y(`/servers/`,{search:o.value||void 0,category:s.value||void 0,...S(c.value)},1,-1)).items}return{servers:e,loading:t,page:r,itemsPerPage:i,total:a,search:o,categoryFilter:s,sortBy:c,loadServers:l,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(m({__name:`StatCardsRow`,props:{items:{}},setup(n){return(d,m)=>(l(),h(v,null,{default:e(()=>[(l(!0),p(c,null,g(n.items,(n,c)=>(l(),h(_,{key:c,cols:`6`,sm:`3`},{default:e(()=>[f(t,{elevation:`0`,rounded:`xl`,border:``,class:`stat-card`},{default:e(()=>[f(r,{class:`pa-4 d-flex align-center justify-space-between`},{default:e(()=>[u(`div`,null,[u(`div`,D,a(n.subtitle),1),u(`div`,{class:o([`font-weight-bold`,`text-`+n.color]),style:{"font-size":`36px`,"line-height":`1.1`}},a(n.title),3)]),f(i,{color:n.color,size:`48`,rounded:`lg`,class:`stat-icon`},{default:e(()=>[f(s,{icon:n.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}; |