1import{u as Se}from"./AdminShell-HOlnSu-i.js";import{A as I}from"./AdminButton-Bm40WIj1.js";import{f as Be,g as Ae,u as Oe,h as Y,i as ue,av as Ve,aw as Ne}from"./index-DESokjJk.js";import{q as se,w as te,j as ie,ax as we,G as d,A as p,B as e,K as E,C as c,D as l,U,E as C,H as K,F as M,V as X,L as ne,N as ae,u as i,r as N,f as W,y as Le}from"./vendor-icons-Bxvif_pP.js";import{u as Ue}from"./useLiveRefresh-Cj_ImZNT.js";import{T as De}from"./ThemedSelect-BVPgBJ6P.js";import Fe from"./SystemPushPreferences-PEC6_Yuz.js";/* empty css */function F(R,u=""){return typeof R=="number"&&Number.isFinite(R)?`${R}${u}`:"ææ æ°æ®"}function le(R){return typeof R!="number"||!Number.isFinite(R)||R<0?"ææ æ°æ®":R>=1024**3?`${(R/1024**3).toFixed(2)} GiB`:`${(R/1024**2).toFixed(1)} MiB`}const Re={class:"operations-records","aria-label":"ææ¯é¢è¦è®°å½"},je={key:0,role:"alert"},Ie={key:1,role:"status"},Je={key:2},Te={key:0},Ge={key:1},Pe=["disabled"],Ee={key:0},Me=["onClick"],ze=se({__name:"AdminOperationsAlerts",setup(R){const u=Be(),D=Ae(),m=Oe(),S=N([]),r=N(null),x=N(null),k=N(!1),w=N(!1),q=N(""),g=N(""),_=[{value:"active",label:"ææ å¼å¸¸"},{value:"recovered",label:"å·²æ¢å¤å¾
ç»é¡¹"},{value:"closed",label:"å·²ç»é¡¹"},{value:"all",label:"å
¨é¨è®°å½"}],f=W({get:()=>_.some(v=>v.value===u.query.alertState)?String(u.query.alertState):"active",set:v=>{D.push({query:{...u.query,alertState:v,alertBefore:void 0,alert:void 0},hash:"#system"})}}),y=W(()=>Number(u.query.alertBefore)>0?Number(u.query.alertBefore):void 0),t=W(()=>Number(u.query.alert)>0?Number(u.query.alert):void 0);let $=0,B;function A(v){return v?new Date(v).toLocaleString("zh-CN",{hour12:!1}):"â"}function O(v){var n,s,a;return v===null?"æ°æ®ä¸å¯ç¨":((n=r.value)==null?void 0:n.rule)==="memory"?`${(v/1024**3).toFixed(2)} GiB`:((s=r.value)==null?void 0:s.rule)==="connections"?`${v} æ¡`:((a=r.value)==null?void 0:a.rule)==="telemetry"?v?"æ æ³æ ¸å®":"éæ ·å·²æ ¸å®":`${v.toFixed(1)}%`}const z={triggered:"æç»å¼å¸¸æç«",acknowledge:"管çå确认å¤ç",recovered:"ææ æç»æ¢å¤",close:"å·²ç»é¡¹"};async function T(){var n;const v=++$;if(B==null||B.abort(),B=new AbortController,q.value="",k.value=!0,t.value||(r.value=null),((n=m.user)==null?void 0:n.role)!=="admin"){k.value=!1;return}try{const{data:s}=await Y.get("admin/system/alerts",{params:{state:f.value==="all"?void 0:f.value,before_id:y.value,limit:20},signal:B.signal,timeout:8e3});if(v!==$)return;if(S.value=s.items,x.value=s.next_before_id,t.value){const a=await Y.get(`admin/system/alerts/${t.value}`,{signal:B.signal,timeout:8e3});v===$&&(r.value=a.data)}}catch{v===$&&(q.value="é¢è¦è®°å½è·å失败ï¼è¯·éè¯ã")}finally{v===$&&(k.value=!1)}}function H(v){g.value="",D.push({query:{...u.query,alert:v},hash:"#system"})}async function Q(v){var s;if(!r.value||!g.value.trim()||w.value)return;const n=$;w.value=!0,q.value="";try{const{data:a}=await Y.patch(`admin/system/alerts/${r.value.id}`,{action:v,expected_revision:r.value.revision,admin_note:g.value.trim()},{timeout:8e3,signal:B==null?void 0:B.signal});n===$&&(r.value=a,g.value="")}catch(a){n===$&&(q.value=((s=a.response)==null?void 0:s.status)===409?"è®°å½å·²ååæå°æªæ¢å¤ã请éè¯è¯»åç¶æï¼å¤æ³¨ä»ä¿çã":"å¤çç»æå°æªç¡®è®¤ï¼è¯·éè¯è¯»åç¶æï¼é¿å
é夿ä½ã")}finally{n===$&&(w.value=!1)}}return te([f,y,t,()=>{var v;return(v=m.user)==null?void 0:v.id},()=>{var v;return(v=m.user)==null?void 0:v.role}],()=>{T()},{immediate:!0}),ie(()=>{$++,B==null||B.abort()}
1),Ue(T,{events:["loverhub:admin-updated"],accept:v=>v.topic.startsWith("admin.operations."),blocked:()=>k.value||w.value||!!g.value.trim(),enabled:()=>{var v;return((v=m.user)==null?void 0:v.role)==="admin"},failed:()=>!!q.value}),(v,n)=>{const s=we("RouterLink");return d(),p("section",Re,[e("header",null,[E(De,{modelValue:f.value,"onUpdate:modelValue":n[0]||(n[0]=a=>f.value=a),options:_,"aria-label":"é¢è¦ç¶æ"},null,8,["modelValue"])]),n[27]||(n[27]=e("p",null,"ç¡®è®¤è¡¨ç¤ºå·²æ¥æï¼ææ æ¢å¤åæå¯ç»é¡¹ãéç¥å·²è¯»ä¸ä¼æ¹åé¢è¦ç¶æã",-1)),q.value?(d(),p("p",je,[c(l(q.value)+" ",1),E(I,{disabled:k.value||w.value,onClick:T},{default:U(()=>[...n[8]||(n[8]=[c("éè¯",-1)])]),_:1},8,["disabled"])])):C("",!0),k.value?(d(),p("p",Ie,"æ£å¨å è½½â¦")):C("",!0),r.value?(d(),p("article",Je,[e("header",null,[e("strong",null,l(r.value.title),1),E(I,{onClick:n[1]||(n[1]=a=>H())},{default:U(()=>[...n[9]||(n[9]=[c("è¿åå表",-1)])]),_:1})]),e("dl",null,[e("div",null,[n[10]||(n[10]=e("dt",null,"å½åç¶æ",-1)),e("dd",null,l(r.value.state==="active"?"ææ å¼å¸¸":r.value.state==="recovered"?"å·²æ¢å¤å¾
ç»é¡¹":"å·²ç»é¡¹"),1)]),e("div",null,[n[11]||(n[11]=e("dt",null,"èªå¨å¨ä½",-1)),e("dd",null,l(r.value.protects?"å¼å¸¸æé´éå¶æ°è¿æ¥ä¸åå²è¯»å":"æéæ ¸æ¥ï¼ä¿çç°æä¸å¡"),1)]),e("div",null,[n[12]||(n[12]=e("dt",null,"馿¬¡åç",-1)),e("dd",null,l(A(r.value.opened_at)),1)]),e("div",null,[n[13]||(n[13]=e("dt",null,"确认å¤ç",-1)),e("dd",null,l(A(r.value.acknowledged_at)),1)]),e("div",null,[n[14]||(n[14]=e("dt",null,"ææ æ¢å¤",-1)),e("dd",null,l(A(r.value.recovered_at)),1)]),e("div",null,[n[15]||(n[15]=e("dt",null,"触åé
ç½®çæ¬",-1)),e("dd",null,l(r.value.policy_revision),1)]),e("div",null,[n[16]||(n[16]=e("dt",null,"æè¿è®°å½å¼",-1)),e("dd",null,l(O(r.value.value)),1)]),e("div",null,[n[17]||(n[17]=e("dt",null,"触åéå¼",-1)),e("dd",null,l(O(r.value.threshold)),1)]),e("div",null,[e("dt",null,l(r.value.rule==="memory"?"æä½å¯ç¨å
å":"æé«è®°å½å¼"),1),e("dd",null,l(O(r.value.peak)),1)]),e("div",null,[n[18]||(n[18]=e("dt",null,"æè¿è®°å½æ¶é´",-1)),e("dd",null,l(A(r.value.last_seen_at)),1)]),e("div",null,[n[19]||(n[19]=e("dt",null,"å¤ç人",-1)),e("dd",null,l(r.value.acknowledged_by?`管çå ${r.value.acknowledged_by}`:"å°æªæ¥æ"),1)])]),E(s,{to:r.value.target},{default:U(()=>[...n[20]||(n[20]=[c("æ¥çå½åè¿è¡ææ ",-1)])]),_:1},8,["to"]),r.value.previous_id?(d(),K(I,{key:0,tone:"text",onClick:n[2]||(n[2]=a=>H(r.value.previous_id))},{default:U(()=>[...n[21]||(n[21]=[c("æ¥çä¸ä¸å¼å¸¸å¨æ",-1)])]),_:1})):C("",!0),e("ol",null,[(d(!0),p(M,null,X(r.value.timeline,(a,V)=>(d(),p("li",{key:V},[c(l(A(a.at))+" · "+l(z[a.action]||a.action),1),a.note?(d(),p("p",Te,l(a.note),1)):C("",!0)]))),128))]),r.value.state!=="closed"?(d(),p("label",Ge,[n[22]||(n[22]=c("å¤ç夿³¨",-1)),ne(e("textarea",{"onUpdate:modelValue":n[3]||(n[3]=a=>g.value=a),maxlength:"2000",rows:"2",disabled:w.value},null,8,Pe),[[ae,g.value]])])):C("",!0),e("footer",null,[!r.value.acknowledged_at&&r.value.state!=="closed"?(d(),K(I,{key:0,disabled:w.value||!g.value.trim(),onClick:n[4]||(n[4]=a=>Q("acknowledge"))},{default:U(()=>[...n[23]||(n[23]=[c("确认å¤ç",-1)])]),_:1},8,["disabled"])):C("",!0),r.value.state==="recovered"?(d(),K(I,{key:1,disabled:w.value||!g.value.trim(),onClick:n[5]||(n[5]=a=>Q("close"))},{default:U(()=>[...n[24]||(n[24]=[c("è®°å½ç»é¡¹",-1)])]),_:1},8,["disabled"])):C("",!0)])])):k.value?C("",!0):(d(),p(M,{key:3},[!S.value.length&&!q.value?(d(),p("p",Ee,"æ¤èå´ææ é¢è¦è®°å½ã")):C("",!0),(d(!0),p(M,null,X(S.value,a=>(d(),p("button",{key:a.id,type:"button",class:"alert-row",onClick:V=>H(a.id)},[e("strong",null,l(a.title),1),e("span",null,l(a.state==="active"?a.acknowledged_at?"å·²æ¥æ · ä»å¼å¸¸":"å¾
确认 · ææ å¼å¸¸":a.state==="recovered"?"å·²æ¢å¤å¾
ç»é¡¹":"å·²ç»é¡¹"),1),e("time",null,l(A(a.opened_at)),1)],8,Me))),128)),e("footer",null,[y.value?(d(),K(I,{key:0,onClick:n[6]||(n[6]=a=>i(D).push({query:{...i(u).query,alertBefore:void 0},hash:"#system"}))},{default:U(()=>[...n[25]||(n[25]=[c("è¿åææ°",-1)])]),_:1})):C("",!0),E(I,{disabled:!x.value,onClick:n[7]||(n[7]=a=>i(D).push({query:{...i(u).query,alertBefore:x.value},hash:"#system"}))},{default:U(()=>[...n[26]||(n[26]=[c("æ´æ©è®°å½",-1)])]),_:1},8,["disabled"])])],64))])}}}),He=ue(ze,[["__scopeId","data-v-32d6c7e7"]]),Ke={class:"protection-settings","aria-label":"è¿è¡ä¿æ¤è®¾ç½®"},We={key:0,role:"alert"},Qe={key:1,role:"status"},Xe={key:2,role:"status"},Ye={key:3,role:"alert"},Ze={class:"protection-fields"},he=["onUpdate:modelValue","min","max","disabled"],el={key:0},ll=["disabled"],tl={key:1,class:"protection-review"},nl=se({__name:"AdminOperationsSettings",setup(R){const u=Oe(),D=Se(),m=N(null),S=N(null),r=N(0),x=N(""),k=N(""),w=N(""),q=N(!1),g=N(!1),_=N(!1),f=N(null),y=N(!1),t=N(!1),$=N(""),B=[{key:"connection_limit",label:"å
¨æºéç¥è¿æ¥é¢ç®",min:4,max:200},{key:"public_limit",label:"å
¬å¼ç®å½åé¢ç®",min:0,max:40},{key:"subject_limit",label:"åä¸ç»å½ä¸»ä½ä¸é",min:1,max:4},{key:"connection_warning",label:"è¿æ¥é¢è¦éå¼",min:1,max:200},{key:"connection_recovery",label:"è¿æ¥æ¢å¤éå¼",min:0,max:199}];let A=0,O,z=null;const T=W(()=>m.value&&B.every(s=>Number.isInteger(m.value[s.key])&&m.value[s.key]>=s.min&&m.value[s.key]<=s.max)&&m.value.public_limit<=m.value.connection_limit&&m.value.connection_recovery<m.value.connection_warning&&m.value.connection_warning<=m.value.connection_limit),H=W(()=>JSON.stringify(m.value)!==JSON.stringify(S.value));async function Q(s=!1){var V,G;if(g.value)return;const a=++A;if(O==null||O.abort(),O=new AbortController,q.value=!0,k.value="",t.value=!1,y.value=!1,((V=u.user)==null?void 0:V.role)!=="admin"){m.value=null,q.value=!1;return}try{const{data:J}=await Y.get("admin/settings",{params:{group:"operations"},signal:O.signal,timeout:8e3});if(a!==A)return;const L=J.items.find(b=>b.key==="operations.policy"),P=JSON.parse(L.value);if(r.value=P.revision,S.value=P.values,t.value=!0,(!m.value||s)&&(m.value={...P.values},_.value=!1,f.value=null),f.value){const b=(G=P.receipts)==null?void 0:G.find(j=>j.request_key===f.value.request_key);b?(f.value=null,_.value=!1,w.value=`å·²æ ¸å®ä¿åæåï¼çæ¬ ${b.revision}ï¼ï¼å½åä¿åçæ¬ ${P.revision}ã`):y.value=!0}}catch{a===A&&(k.value="ä¿æ¤è®¾ç½®è¯»å失败ï¼è稿ä¿çï¼è¯·éè¯ã")}finally{a===A&&(q.value=!1)}}function v(){t.value&&!q.value&&T.value&&x.value.trim()&&H.value&&(_.value=!0,k.value="",w.value="")}async function n(){var a,V,G;if(((a=u.user)==null?void 0:a.role)!=="admin"||z!==u.user.id||!m.value||!T.value||!t.value||g.value||q.value||!_.value||f.value&&!y.value)return;if(f.value??(f.value={value:JSON.stringify(m.value),expected_revision:r.value,request_key:crypto.randomUUID(),admin_note:x.value.trim()}),!Ne(Number((V=u.user)==null?void 0:V.id),{draft:m.value,saved:S.value,revision:r.value,note:x.value,pending:f.value,reviewing:_.value})){$.value="æä½ç¼å·æ æ³ä¿å卿¬æºï¼å°æªæäº¤ã请æ¢å¤æµè§å¨åå¨åéè¯ã";return}y.value=!1;const s=A;g.value=!0,k.value="";try{const{data:J}=await Y.put("admin/settings/operations.policy",f.value,{timeout:8e3,signal:O==null?void 0:O.signal});if(s!==A)return;const L=JSON.parse(J.value);S.value=L.values,r.value=L.revision,f.value=null,_.value=!1,x.value="",w.value=`é
置已ä¿åä¸ºçæ¬ ${J.revision}ï¼ä¸æ¹è¿è¡éæ ·ä¼æ¾ç¤ºå®é
çæç¶æã`,D.refresh()}catch(J){if(s!==A)return;const L=(G=J.response)==null?void 0:G.status;L&&L<500?(f.value=null,_.value=!1,L===409&&(t.value=!1),k.value=L===409?"çæ¬å²çªï¼è稿已ä¿çãè¯·è¯»åææ°ä¿åå¼ï¼æ ¸å¯¹å·®å¼åéæ°æäº¤ã":"é
ç½®æªä¿åï¼è¯·æ ¸å¯¹å®å
¨èå´åä¿®æ¹åå ã"):k.value="ä¿åç»ææä¸ç¡®å®ã请å
æ¥è¯¢ç»æï¼æä½ç¼å·åè稿已ä¿çã"}finally{s===A&&(g.value=!1)}}return te([()=>{var s;return(s=u.user)==null?void 0:s.id},()=>{var s;return(s=u.user)==null?void 0:s.role}],()=>{var a,V;z=null,k.value="",w.value="",$.value="";const s=((a=u.user)==null?void 0:a.role)==="admin"?Ve(u.user.id):null;m.value=(s==null?void 0:s.draft)||null,S.value=(s==null?void 0:s.saved)||null,x.value=typeof(s==null?void 0:s.note)=="str
1ing"?s.note.slice(0,2e3):"",f.value=(s==null?void 0:s.pending)||null,_.value=!!(s!=null&&s.reviewing),y.value=!1,g.value=!1,z=((V=u.user)==null?void 0:V.role)==="admin"?u.user.id:null,Q()},{immediate:!0,flush:"sync"}),te([m,S,r,x,f,_],()=>{var s;((s=u.user)==null?void 0:s.role)!=="admin"||z!==u.user.id||!m.value||($.value=Ne(u.user.id,{draft:m.value,saved:S.value,revision:r.value,note:x.value,pending:f.value,reviewing:_.value})?"":"è稿æä¸è½ä¿åå°æ¬æºï¼ç¦»å¼æå·æ°å请ä¿çä¿®æ¹å
容ã")},{deep:!0}),ie(()=>{A++,O==null||O.abort()}),(s,a)=>{var G,J,L,P;const V=we("RouterLink");return d(),p("section",Ke,[e("header",null,[a[3]||(a[3]=e("strong",null,"è¿è¡ä¿æ¤è®¾ç½®",-1)),E(I,{disabled:q.value||g.value,onClick:a[0]||(a[0]=b=>Q())},{default:U(()=>[c(l(f.value?"æ¥è¯¢ä¿åç»æ":"è¯»åææ°ä¿åå¼"),1)]),_:1},8,["disabled"])]),a[11]||(a[11]=e("p",null,"è¿æ¥é¢ç®ç±å
¨æºå
±ç¨ï¼å
¬å¼ç®å½å
å«å¨æ»é¢ç®å
ãéä½é¢ç®æ¶é»æ¢æ°å¢ï¼å·²æè¿æ¥èªç¶åæ¶ãé¢ç®ä¸æ¯åæ¶èå¤©äººæ°æå®æµå®¹éã",-1)),k.value?(d(),p("p",We,l(k.value),1)):C("",!0),w.value?(d(),p("p",Qe,l(w.value),1)):C("",!0),q.value?(d(),p("p",Xe,"æ£å¨è¯»åâ¦")):C("",!0),$.value?(d(),p("p",Ye,l($.value),1)):C("",!0),m.value?(d(),p(M,{key:4},[e("p",null,"å½åä¿åçæ¬ "+l(t.value?r.value:"å°æªæ ¸å®")+" · éæ ·è¯»åçæ¬ "+l((J=(G=i(D).operations)==null?void 0:G.configuration)!=null&&J.available?i(D).operations.configuration.revision:"å°æªæ ¸å®"),1),e("p",null,"å
¨æºå®é
ä¿æ¤çæ¬ "+l((P=(L=i(D).operations)==null?void 0:L.protection)!=null&&P.available?i(D).operations.protection.revision:"å°æªæ ¸å®")+"ï¼éæ ·ä¸å¯ç¨æ¶éå¶æ°å¢ï¼ä¸èªå¨æ¾å®½é¢ç®ã",1),e("div",Ze,[(d(),p(M,null,X(B,b=>{var j;return e("label",{key:b.key},[c(l(b.label),1),ne(e("input",{"onUpdate:modelValue":Z=>m.value[b.key]=Z,type:"number",min:b.min,max:b.max,step:"1",disabled:g.value||!!f.value||_.value},null,8,he),[[ae,m.value[b.key],void 0,{number:!0}]]),e("small",null,"å®å
¨èå´ "+l(b.min)+"â"+l(b.max)+" · å·²ä¿å "+l(t.value?(j=S.value)==null?void 0:j[b.key]:"å°æªæ ¸å®"),1)])}),64))]),T.value?C("",!0):(d(),p("p",el,"请满足ï¼å
¬å¼åé¢ç®ä¸è¶
è¿æ»é¢ç®ï¼æ¢å¤éå¼å°äºé¢è¦éå¼ï¼é¢è¦éå¼ä¸è¶
è¿æ»é¢ç®ã")),e("label",null,[a[4]||(a[4]=c("ä¿®æ¹åå ",-1)),ne(e("textarea",{"onUpdate:modelValue":a[1]||(a[1]=b=>x.value=b),maxlength:"2000",rows:"2",disabled:g.value||!!f.value||_.value},null,8,ll),[[ae,x.value]])]),_.value?(d(),p("div",tl,[a[5]||(a[5]=e("strong",null,"è¯·æ ¸å¯¹æ¬æ¬¡ä¿®æ¹",-1)),(d(!0),p(M,null,X(B.filter(b=>{var j;return m.value[b.key]!==((j=S.value)==null?void 0:j[b.key])}),b=>{var j;return d(),p("p",{key:b.key},l(b.label)+"ï¼"+l((j=S.value)==null?void 0:j[b.key])+" â "+l(m.value[b.key]),1)}),128)),e("p",null,"åå ï¼"+l(x.value),1)])):C("",!0),e("footer",null,[_.value&&!f.value?(d(),K(I,{key:0,disabled:g.value,onClick:a[2]||(a[2]=b=>_.value=!1)},{default:U(()=>[...a[6]||(a[6]=[c("è¿åä¿®æ¹",-1)])]),_:1},8,["disabled"])):C("",!0),_.value?(d(),K(I,{key:2,disabled:!t.value||q.value||g.value||!!f.value&&!y.value,onClick:n},{default:U(()=>[c(l(g.value?"æ£å¨ä¿å":f.value?"éè¯åæä½":"确认ä¿åé
ç½®"),1)]),_:1},8,["disabled"])):(d(),K(I,{key:1,disabled:!t.value||!T.value||!H.value||!x.value.trim()||q.value,onClick:v},{default:U(()=>[...a[7]||(a[7]=[c("æ ¸å¯¹ä¿®æ¹",-1)])]),_:1},8,["disabled"]))]),a[9]||(a[9]=e("p",null,"å¤çå¨ â¥85% æç»60ç§ãå¯ç¨å
å â¤1 GiB æç»30ç§ãæä»¶å¥æ â¥75% æç»30ç§è§¦åä¿æ¤ï¼ç¸å
³ææ æç»å¥åº·60ç§åæ¢å¤ãç£çé¢è¦ä¸æ§è¡æä»¶æè天æ¸
çã",-1)),a[10]||(a[10]=e("p",null,"æé«å
¨æº200æ¡ç¡¬ä¸éãè°æ´ç³»ç»å¥ææä»£çè¿æ¥æ°é¡»æå·¥åå¸ãä¿å页é¢é
ç½®ä¸ä¼ä¿®æ¹æå¡å¨ç³»ç»é
ç½®ã",-1)),E(V,{to:"/admin?section=history&domain=operations#system"},{default:U(()=>[...a[8]||(a[8]=[c("æ¥çè¿è¡ä¿æ¤åæ´è®°å½",-1)])]),_:1})],64)):C("",!0)])}}}),al=ue(nl,[["__scopeId","data-v-cca15930"]]),ul={class:"operations-panel","aria-label":"ç³»ç»è¿è¡æ¦è§"},sl={class:"operations-toolbar operations-tabs","aria-label":"ç³»ç»è¿è¡ååº"},il={class:"operations-toolbar"},ol={role:"status"},rl={key:0,class:"operations-error",role:"alert"},dl={key:1,class:"operations-note"},vl={class:"operations-strip"},pl={class:"operations-summary"},ml={class:"operations-processes"},fl={key:0},yl={key:0,class:"operations-note"},bl=se({__name:"AdminOperationsPanel",emits:["redis","disk","assets"],setup(R){const u=Se(),D=Be(),m=Ae(),S=W(()=>["alerts","protection"].includes(String(D.query.operations))?String(D.query.operations):"overview");function r(y){m.push({query:{...D.query,operations:y,alert:void 0},hash:"#system"})}let x;Le(()=>{x=u.acquire()}),ie(()=>x==null?void 0:x());const k=W(()=>{var y;return(y=u.operations)==null?void 0:y.host}),w={cpu:"å¤ç卿ç»ç¹å¿",memory:"å¯ç¨å
åä¸è¶³",fd:"æä»¶å¥æå ç¨è¾é«",connections:"éç¥è¿æ¥æ¥è¿é¢ç®",disk:"ç£çå ç¨è¾é«",telemetry:"è¿è¡éæ ·æ æ³æ ¸å®"},q=W(()=>{var y,t;return Object.entries(((t=(y=u.operations)==null?void 0:y.protection)==null?void 0:t.rules)||{}).filter(([,$])=>$.active)}),g=W(()=>{var t;const y=(t=u.operations)==null?void 0:t.sampled_at;
1return y?new Date(y).toLocaleString("zh-CN",{hour12:!1}):"çå¾
馿¬¡éæ ·"});function _(y,t){return({primary:"æå¡ A",blue:"æå¡ B",local:"æ¬å°æå¡"}[y.slot]??"æå¡è¿ç¨")+` · ${t+1}`}function f(y){const t=y.rolling.metrics.stream_live_dispatch_ms;return!t||t.samples<20?"æ ·æ¬ä¸è¶³":t.p95_overflow?"> 60 ç§":F(t.p95_upper_ms," ms å
")}return(y,t)=>{var $,B,A,O,z,T,H,Q,v,n,s,a,V,G,J,L,P,b,j,Z,oe,re,de,ve,pe,me,fe,ye;return d(),p("section",ul,[e("nav",sl,[(d(),p(M,null,X([{key:"overview",label:"è¿è¡æ¦è§"},{key:"alerts",label:"é¢è¦è®°å½"},{key:"protection",label:"ä¿æ¤è®¾ç½®"}],o=>E(I,{key:o.key,tone:S.value===o.key?"primary":"secondary","aria-current":S.value===o.key?"page":void 0,onClick:h=>r(o.key)},{default:U(()=>[c(l(o.label),1)]),_:2},1032,["tone","aria-current","onClick"])),64))]),S.value==="alerts"?(d(),K(He,{key:0})):S.value==="protection"?(d(),K(al,{key:1})):(d(),p(M,{key:2},[e("header",il,[e("div",null,[t[6]||(t[6]=e("strong",null,"è¿è¡æ¦è§",-1)),e("span",ol,l(i(u).label),1)])]),i(u).error?(d(),p("p",rl,[c(l(i(u).error)+" ",1),E(I,{disabled:i(u).loading,onClick:t[0]||(t[0]=o=>i(u).refresh())},{default:U(()=>[...t[7]||(t[7]=[c("éè¯",-1)])]),_:1},8,["disabled"])])):i(u).stale||(($=i(u).operations)==null?void 0:$.state)==="unavailable"?(d(),p("p",dl,"é¨åéæ ·ä¸å¯ç¨æå·²è¿æï¼æä¸è½æ®æ¤å¤ææ´ä½æ£å¸¸ã")):C("",!0),e("div",vl,[e("div",null,[t[8]||(t[8]=e("span",null,"å
¨æºéç¥è¿æ¥",-1)),e("strong",null,l(i(F)((A=(B=i(u).operations)==null?void 0:B.admission)!=null&&A.available?i(u).operations.admission.active:null))+" / "+l(i(F)((z=(O=i(u).operations)==null?void 0:O.protection)!=null&&z.available?(T=i(u).operations.protection.policy)==null?void 0:T.connection_limit:null)),1),e("small",null,"éè¿ä¿ç "+l(i(F)((Q=(H=i(u).operations)==null?void 0:H.admission)!=null&&Q.available?i(u).operations.admission.reserved:null))+" · å½åç»å½ä¸»ä½ "+l(i(F)((n=(v=i(u).operations)==null?void 0:v.admission)!=null&&n.available?i(u).operations.admission.subjects:null)),1)]),e("div",null,[t[9]||(t[9]=e("span",null,"å¤çå¨ä½¿ç¨",-1)),e("strong",null,l(i(F)((s=k.value)==null?void 0:s.cpu_percent,"%")),1),e("small",null,l(i(F)((a=k.value)==null?void 0:a.cpu_count," 个é»è¾æ ¸å¿")),1)]),e("div",null,[t[10]||(t[10]=e("span",null,"å¯ç¨å
å",-1)),e("strong",null,l(i(le)((V=k.value)==null?void 0:V.memory_available_bytes)),1),e("small",null,"æ»è®¡ "+l(i(le)((G=k.value)==null?void 0:G.memory_total_bytes)),1)]),e("div",null,[t[11]||(t[11]=e("span",null,"ç£ç使ç¨",-1)),e("strong",null,l(i(F)((J=k.value)==null?void 0:J.disk_percent,"%")),1),e("button",{type:"button",onClick:t[1]||(t[1]=o=>y.$emit("disk"))},"æ¥çæä»¶å ç¨")])]),(d(!0),p(M,null,X(q.value,([o,h])=>(d(),p("p",{key:o,class:"operations-note",role:"status"},[c(l(w[o]||o)+"ï¼"+l(h.protects?"å·²éå¶æ°å¢è¿æ¥ååå²è¯»åï¼ç°æäºå¡ç»§ç»å®æã":"请æ¥çå¯¹åºææ åé¢è¦è®°å½ã")+" ",1),e("button",{type:"button",onClick:t[2]||(t[2]=ee=>r("alerts"))},"æ¥çå¤çè®°å½")]))),128)),e("div",pl,[e("span",null,"æ´æ°äº "+l(g.value),1),e("span",null,l((P=(L=i(u).operations)==null?void 0:L.protection)!=null&&P.enabled?"ä¿æ¤çç¥å·²å¯ç¨":"èªå¨ä¿æ¤å°æªå¯ç¨"),1),e("button",{type:"button",onClick:t[3]||(t[3]=o=>r("alerts"))},"å¾
å¤çé¢è¦ "+l(i(F)((j=(b=i(u).operations)==null?void 0:b.configuration)!=null&&j.available?i(u).operations.configuration.pending_alerts:null)),1),e("span",null,"å¾
æéç³»ç»æé "+l(i(F)((oe=(Z=i(u).operations)==null?void 0:Z.configuration)!=null&&oe.available?(re=i(u).operations.configuration.push)==null?void 0:re.pending:null))+l((pe=(ve=(de=i(u).operations)==null?void 0:de.configuration)==null?void 0:ve.push)!=null&&pe.capped?"+":""),1),e("button",{type:"button",onClick:t[4]||(t[4]=o=>y.$emit("redis"))},"æ¥çç¼åä¸å®æ¶è¯¦æ
"),e("button",{type:"button",onClick:t[5]||(t[5]=o=>y.$emit("assets"))},"è¿å
¥ç´ æç®¡ç")]),e("div",ml,[(d(!0),p(M,null,X(((me=i(u).operations)==null?void 0:me.processes)??[],(o,h)=>{var ee,be,ke,ge,ce,_e,$e,Ce,xe,qe;return d(),p("article",{key:o.instance_id,class:"operations-process"},[e("header",null,[e("strong",null,l(_(o,h)),1),e("span",null,l(o.realtime.running?"éç¥ååè¿è¡ä¸":"éç¥ååæªè¿è¡"),1)]),e("dl",null,[e("div",null,[t[12]||(t[12]=e("dt",null,"æ¬è¿ç¨è¿æ¥ï¼è®¡å
¥å
¨æºé¢ç®ï¼",-1)),e("dd",null,l(o.realtime.connections),1)]),e("div",null,[t[13]||(t[13]=e("dt",null,"æ¬è¿ç¨ç»å½ä¸»ä½",-1)),e("dd",null,l(o.realtime.authenticated_subjects),1)]),e("div",null,[t[14]||(t[14]=e("dt",null,"æä»¶å¥æä½¿ç¨",-1)),e("dd",null,l(i(
1F)(o.fd_used))+" / "+l(i(F)(o.fd_limit)),1)]),e("div",null,[t[15]||(t[15]=e("dt",null,"è¿ç¨å
å",-1)),e("dd",null,l(i(le)(o.process_memory_bytes)),1)]),e("div",null,[t[16]||(t[16]=e("dt",null,"æ°æ®åºè¿æ¥å ç¨",-1)),e("dd",null,l(i(F)(o.db_checked_out))+" / "+l(i(F)(o.db_capacity)),1)]),e("div",null,[t[17]||(t[17]=e("dt",null,"çå¾
è¡¥åçè¿æ¥",-1)),e("dd",null,l(o.realtime.slow_clients),1)]),o.chat_requests?(d(),p("div",fl,[t[18]||(t[18]=e("dt",null,"èå¤©è¯·æ± / å½å读åä¸é",-1)),e("dd",null,l(o.chat_requests.active)+" / "+l(o.chat_requests.limit)+" · 读åæå¤"+l(o.chat_requests.read_limit),1)])):C("",!0),e("div",null,[e("dt",null,"ååèæ¶ p95 · è¿ "+l(o.rolling.window_minutes)+" åé",1),e("dd",null,l(f(o)),1)]),e("div",null,[t[19]||(t[19]=e("dt",null,"æµè§å¨æ¨é",-1)),e("dd",null,l(((ee=o.push)==null?void 0:ee.configuration)==="disabled"?"æªå¯ç¨":((be=o.push)==null?void 0:be.configuration)!=="ready"?"é
ç½®æªå°±ç»ª":(ke=o.push)!=null&&ke.running&&o.push.fresh?"æéæ£æ¥æ£å¸¸":"æéç¶æå¾
æ ¸å®"),1)]),e("div",null,[e("dt",null,"åéæå / 失败 · è¿ "+l(o.rolling.window_minutes)+" åé",1),e("dd",null,l(((ge=o.rolling.metrics.chat_send_ok)==null?void 0:ge.count)||0)+" / "+l(((ce=o.rolling.metrics.chat_send_failed)==null?void 0:ce.count)||0),1)]),e("div",null,[e("dt",null,"æç»æ°è¿æ¥ / æ
¢å®¢æ·ç«¯ · è¿ "+l(o.rolling.window_minutes)+" åé",1),e("dd",null,l(((_e=o.rolling.metrics.connection_rejected)==null?void 0:_e.count)||0)+" / "+l((($e=o.rolling.metrics.slow_client)==null?void 0:$e.count)||0),1)]),e("div",null,[e("dt",null,"æ¨éæ¥å / 失败 / è¿æ · è¿ "+l(o.rolling.window_minutes)+" åé",1),e("dd",null,l(((Ce=o.rolling.metrics.push_ok)==null?void 0:Ce.count)||0)+" / "+l(((xe=o.rolling.metrics.push_failed)==null?void 0:xe.count)||0)+" / "+l(((qe=o.rolling.metrics.push_expired)==null?void 0:qe.count)||0),1)])])])}),128)),(ye=(fe=i(u).operations)==null?void 0:fe.processes)!=null&&ye.length?C("",!0):(d(),p("p",yl,"æ£å¨çå¾
è¿è¡éæ ·ã"))]),t[20]||(t[20]=e("p",{class:"operations-note"},"ååèæ¶ç»è®¡æå¡åå¾å®æ¶äºä»¶åå°ååºåçæ¶é´ï¼åå²è¡¥åå¦è®¡ï¼ä¸è¡¨ç¤ºå¯¹æ¹å·²ç»æ¶å°æå·²è¯»ã",-1)),t[21]||(t[21]=e("p",{class:"operations-note"},"æ¨éæ¥åä»
表示æµè§å¨çæ¨éæå¡æ¥å请æ±ï¼ä¸çäºè®¾å¤å·²æ¾ç¤ºã积ååªä¿çæ¯å°è®¾å¤ææ°çéç¨æéï¼æå¤éè¯3次ãçå¾
5åéï¼æ¶æ¯åé¢è¦åè®°å½ä»å¯æ¥çã",-1)),E(Fe)],64))])}}}),Nl=ue(bl,[["__scopeId","data-v-12ddd726"]]);export{Nl as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.