1import{d as qt,a5 as xs,ar as ps,b as d,G as ms,c as D,w as bs,L as vs,a2 as fs,aK as hs,f as n,p as g,j as r,l as m,i as e,x as c,t as a,m as x,h as w,F as b,a8 as ee,n as v,_ as S,g as ue,O as ze,P as we,Q as xe,ac as ke,af as Pe,N as T,ab as _s,a as $,v as o,aA as A,R as He}from"./index.16ba4ea0.js";import{_ as Ee}from"./Pagination.vue_vue_type_script_setup_true_lang.8b7ec3c5.js";import"./vendor-highcharts.9b480a8e.js";import"https://cdn.jsdelivr.net/npm/[email protected]/dist/buttplug-wasm.mjs";const gs={class:"space-y-6 lg:space-y-7 pb-2"},ys={key:0,class:"absolute inset-0 bg-zinc-900/40 flex items-center justify-center z-10 backdrop-blur-[1px]"},zs={key:1,class:"flex flex-col sm:flex-row sm:items-center gap-4 w-full"},ws={class:"flex items-center gap-4"},ks={class:"font-bold text-white capitalize leading-tight text-lg"},Ps={class:"text-xs text-zinc-400 mt-0.5"},Hs={class:"sm:ml-auto flex items-center gap-6 border-t sm:border-t-0 border-zinc-700/50 pt-4 sm:pt-0"},Ds={class:"flex flex-col sm:items-end"},Ss={class:"text-white text-2xl leading-none mt-1 tabular-nums font-medium"},Fs={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-5 gap-4 md:gap-5"},Ts={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},Cs={key:0,class:"flex justify-center"},Ls={class:"space-y-4"},Ms={class:"flex justify-between items-end mb-1.5"},Ns={class:"h-1.5 bg-zinc-900/50 rounded-full overflow-hidden border border-zinc-700/50"},$s={class:"flex justify-between items-end mb-1.5"},js={class:"h-1.5 bg-zinc-900/50 rounded-full overflow-hidden border border-zinc-700/50"},Bs={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},As={key:0,class:"flex justify-center"},Rs={class:"text-white text-3xl font-bold mt-2 tabular-nums"},Vs={class:"mt-4 h-1.5 bg-zinc-900/50 rounded-full overflow-hidden border border-zinc-700/50"},Us={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},Os={key:0,class:"flex justify-center"},Is={class:"text-white text-3xl font-bold mt-2 tabular-nums"},Es={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},qs={key:0,class:"flex justify-center"},Gs={class:"text-white text-3xl font-bold mt-2 tabular-nums"},Ks={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden sm:col-span-2 lg:col-span-3 xl:col-span-1"},Xs={key:0,class:"flex justify-center"},Ws={class:"space-y-2.5"},Qs={class:"flex justify-between items-center text-xs"},Ys={class:"flex justify-between items-center text-xs"},Js={class:"flex justify-between items-center text-xs border-t border-zinc-700/50 pt-2 mt-2"},Zs={class:"text-white tabular-nums font-bold"},el={class:"space-y-5"},tl={class:"flex flex-col sm:flex-row sm:items-center justify-between gap-4"},sl={class:"flex items-center gap-3"},ll={class:"p-2 bg-blue-500/10 rounded-lg border border-blue-500/20"},al={class:"flex flex-wrap items-center gap-3 text-xs"},ol={key:0,class:"w-full sm:w-auto grid grid-cols-1 sm:grid-cols-[1fr_auto_1fr_auto_auto] gap-2 items-end bg-zinc-800/50 border border-zinc-700/50 rounded-lg p-2 animate-in fade-in slide-in-from-right-2 duration-300"},nl={class:"text-xs text-zinc-400 font-medium"},il={class:"text-xs text-zinc-400 font-medium"},rl={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 md:gap-5"},dl={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},cl={key:0,class:"flex justify-center items-center h-full"},ul={class:"flex items-baseline gap-2 mt-2"},xl={class:"text-white text-3xl font-bold tabular-nums"},pl={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},ml={key:0,class:"flex justify-center items-center h-full"},bl={class:"text-white text-3xl font-bold mt-2 tabular-nums"},vl={class:"rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-blue-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden"},fl={key:0,class:"flex justify-center items-center h-full"},hl={class:"flex justify-between items-start"},_l={class:"text-xs text-green-500 font-bold bg-green-500/10 px-2 py-0.5 rounded-lg border border-green-500/20 shadow-sm"},gl={class:"text-white text-3xl font-bold mt-2 tabular-nums"},yl={class:"mt-4 h-1.5 bg-zinc-900/50 rounded-full overflow-hidden border border-zinc-700/50"},zl={key:0,class:"flex justify-center items-center h-full"},wl={class:"flex justify-between items-start mb-2"},kl={class:"flex items-center gap-1.5"},Pl={class:"text-xs text-red-500 font-bold bg-red-500/10 px-2 py-0.5 rounded-lg border border-red-500/20 shadow-sm"},Hl={class:"text-white text-3xl font-bold mt-1 tabular-nums"},Dl={class:"mt-4 grid grid-cols-2 gap-3 border-t border-zinc-700/50 pt-4"},Sl={class:"flex flex-col"},Fl={class:"text-white text-sm font-bold tabular-nums"},Tl={class:"flex flex-col items-end border-l border-zinc-700/30 pl-3"},Cl={class:"text-white text-sm font-bold tabular-nums"},Ll={class:"mt-3 h-2 flex rounded-full overflow-hidden bg-zinc-900/50 border border-zinc-700/30"},Ml={class:"grid grid-cols-1 lg:grid-cols-2 gap-5"},Nl={class:"rounded-xl p-4 md:p-5 bg-zinc-800/95 border border-zinc-700/50 shadow-sm relative min-h-[300px]"},$l={key:0,class:"absolute inset-0 bg-zinc-800/60 flex items-center justify-center z-10 flex-col gap-2 rounded-xl"},jl={class:"rounded-xl p-4 md:p-5 bg-zinc-800/95 border border-zinc-700/50 shadow-sm relative min-h-[300px]"},Bl={key:0,class:"absolute inset-0 bg-zinc-800/60 flex items-center justify-center z-10 flex-col gap-2 rounded-xl"},Al={class:"rounded-xl bg-zinc-800/95 border border-zinc-700 shadow-sm overflow-hidden"},Rl={class:"px-5 md:px-6 py-3.5 border-b border-zinc-700"},Vl={class:"flex flex-col sm:flex-row sm:items-center justify-between gap-3"},Ul={class:"flex items-center gap-2"},Ol={class:"grid grid-cols-2 xl:grid-cols-4 gap-px bg-zinc-700/50 border-b border-zinc-700/50"},Il={class:"bg-zinc-900/30 px-5 py-4"},El={class:"mt-2 text-2xl font-bold text-zinc-100 tabular-nums"},ql={class:"mt-1 text-xs text-zinc-500"},Gl={class:"bg-zinc-900/30 px-5 py-4"},Kl={class:"mt-2 text-2xl font-bold text-zinc-100 tabular-nums"},Xl={class:"bg-zinc-900/30 px-5 py-4"},Wl={class:"mt-2 text-2xl font-bold text-zinc-100 tabular-nums"},Ql={class:"bg-zinc-900/30 px-5 py-4"},Yl={class:"mt-2 text-2xl font-bold text-zinc-100 tabular-nums"},Jl={class:"overflow-x-auto"},Zl={class:"w-full text-left text-xs border-collapse"},ea={class:"divide-y divide-zinc-700/50"},ta={key:0},sa={colspan:"6",class:"px-4 md:px-6 py-12 text-center text-zinc-500 italic"},la={class:"flex flex-col items-center gap-2"},aa={key:1},oa={class:"px-4 md:px-6 py-4"},na={class:"text-zinc-200 font-semibold"},ia={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},ra={class:"px-4 md:px-6 py-4 text-center"},da=["onMouseenter","onFocus"],ca={class:"mt-2 text-[11px] tabular-nums text-zinc-400"},ua={class:"px-4 md:px-6 py-4 hidden lg:table-cell"},xa={class:"text-zinc-200 font-semibold tabular-nums"},pa={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},ma={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},ba={class:"px-4 md:px-6 py-4 text-right tabular-nums align-top"},va={class:"font-semibold text-zinc-200"},fa={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},ha={class:"px-4 md:px-6 py-4 hidden xl:table-cell tabular-nums text-zinc-400 align-top"},_a={class:"mt-1"},ga={class:"mt-1"},ya={class:"px-4 md:px-6 py-4 max-w-xs hidden xl:table-cell"},za={class:"text-zinc-400 break-words"},wa={key:0,class:"space-y-2"},ka={class:"font-bold uppercase tracking-widest text-blue-300"},Pa={class:"leading-relaxed text-zinc-300"},Ha={key:0,class:"text-zinc-400"},Da={class:"font-semibold text-zinc-200"},Sa={class:"rounded-xl bg-zinc-800/95 border border-zinc-700 shadow-sm overflow-hidden mt-5"},Fa={class:"px-5 md:px-6 py-3.5 border-b border-zinc-700"},Ta={class:"flex flex-col gap-3"}
1,Ca={class:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4"},La={key:0,class:"flex items-center gap-2 text-xs text-zinc-500 uppercase font-bold"},Ma={class:"flex flex-col lg:flex-row lg:items-center gap-3"},Na={class:"flex flex-wrap items-center gap-2"},$a={key:0,class:"grid grid-cols-1 sm:grid-cols-[1fr_auto_1fr_auto_auto] gap-2 items-end bg-zinc-900/40 border border-zinc-700/50 rounded-lg p-2"},ja={class:"text-xs text-zinc-400 font-medium"},Ba={class:"text-xs text-zinc-400 font-medium"},Aa={class:"overflow-x-auto"},Ra={class:"w-full text-left text-xs border-collapse"},Va={class:"divide-y divide-zinc-700/50"},Ua={key:0},Oa={class:"px-4 md:px-6 py-4 text-zinc-200 font-semibold whitespace-nowrap tabular-nums"},Ia={class:"px-4 md:px-6 py-4"},Ea={class:"text-zinc-200 font-semibold"},qa={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},Ga={class:"px-4 md:px-6 py-4 text-center"},Ka={class:"text-green-400 font-semibold tabular-nums"},Xa={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},Wa={class:"px-4 md:px-6 py-4 hidden md:table-cell"},Qa={class:"text-zinc-200 font-semibold"},Ya={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},Ja={class:"px-4 md:px-6 py-4 text-right tabular-nums"},Za={class:"text-zinc-200 font-semibold"},eo={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},to={class:"px-4 md:px-6 py-4 hidden lg:table-cell text-right tabular-nums"},so={class:"text-zinc-200 font-semibold"},lo={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},ao={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},oo={class:"px-4 md:px-6 py-4 hidden xl:table-cell max-w-xs"},no={class:"text-zinc-300"},io={class:"text-[10px] uppercase tracking-widest text-zinc-500 mt-1"},ro={class:"px-5 md:px-6 py-3.5 border-t border-zinc-700 bg-zinc-900/30"},co={class:"rounded-xl bg-zinc-800/95 border border-zinc-700 shadow-sm overflow-hidden"},uo={class:"px-5 md:px-6 py-3.5 border-b border-zinc-700 flex items-center justify-between"},xo={key:0,class:"flex items-center gap-2 text-xs text-zinc-500 uppercase font-bold"},po={class:"overflow-x-auto"},mo={class:"w-full text-left text-xs border-collapse"},bo={class:"divide-y divide-zinc-700/50"},vo={key:0},fo={colspan:"8",class:"px-4 md:px-6 py-12 text-center text-zinc-500 italic"},ho={class:"flex flex-col items-center gap-2"},_o={class:"px-4 md:px-6 py-4"},go={class:"text-zinc-200 font-semibold"},yo={class:"mt-2 md:hidden"},zo={class:"mt-2 space-y-1 text-xs text-zinc-400"},wo={class:"text-zinc-200 tabular-nums"},ko={class:"text-zinc-200"},Po={class:"text-zinc-200"},Ho={class:"text-zinc-200 break-words"},Do={class:"px-4 md:px-6 py-4 text-center"},So={class:"px-4 md:px-6 py-4 text-center hidden md:table-cell"},Fo={key:0,class:"text-green-500"},To={key:1,class:"text-red-500"},Co={class:"px-4 md:px-6 py-4 text-center hidden md:table-cell"},Lo={key:0,class:"text-green-500"},Mo={key:1,class:"text-red-500"},No={class:"px-4 md:px-6 py-4 text-center hidden md:table-cell"},$o={class:"px-4 md:px-6 py-4 text-zinc-400 text-xs tabular-nums"},jo={class:"px-4 md:px-6 py-4"},Bo={key:0,class:"text-red-400 text-xs tabular-nums"},Ao={key:1,class:"text-zinc-600"},Ro={class:"px-4 md:px-6 py-4 max-w-xs text-zinc-500 italic hidden md:table-cell"},Vo={class:"group/details"},Uo={class:"mt-2 whitespace-normal break-words text-xs text-zinc-300"},Oo={class:"rounded-xl bg-zinc-800/95 border border-zinc-700 shadow-sm overflow-hidden"},Io={class:"px-5 md:px-6 py-3.5 border-b border-zinc-700 flex items-center justify-between"},Eo={key:0,class:"flex items-center gap-2 text-xs text-zinc-500 uppercase font-bold"},qo={class:"overflow-x-auto"},Go={class:"w-full text-left text-xs border-collapse"},Ko={class:"divide-y divide-zinc-700/50"},Xo={key:0},Wo={colspan:"8",class:"px-4 md:px-6 py-12 text-center text-zinc-500 italic"},Qo={class:"flex flex-col items-center gap-2"},Yo={key:1},Jo={class:"px-4 md:px-6 py-4"},Zo={class:"text-zinc-200 font-semibold"},en={class:"mt-2 md:hidden"},tn={class:"mt-2 space-y-1 text-xs text-zinc-400"},sn={class:"text-zinc-200 tabular-nums"},ln={class:"text-zinc-200"},an={class:"text-zinc-200"},on={class:"text-zinc-200 break-words"},nn={class:"px-4 md:px-6 py-4 text-center"},rn={class:"px-4 md:px-6 py-4 text-center hidden md:table-cell"},dn={key:0,class:"text-green-500"},cn={key:1,class:"text-red-500"},un={class:"px-4 md:px-6 py-4 text-center hidden md:table-cell"},xn={key:0,class:"text-green-500"}
1,pn={key:1,class:"text-red-500"},mn={class:"px-4 md:px-6 py-4 text-center hidden md:table-cell"},bn={class:"px-4 md:px-6 py-4 text-zinc-400 text-xs tabular-nums"},vn={class:"px-4 md:px-6 py-4"},fn={key:0,class:"text-red-400 text-xs tabular-nums"},hn={key:1,class:"text-zinc-600"},_n={class:"px-4 md:px-6 py-4 max-w-xs text-zinc-500 italic hidden md:table-cell"},gn={class:"mt-2 whitespace-normal break-words text-xs text-zinc-300"},yn={class:"rounded-xl bg-zinc-800/95 border border-zinc-700 shadow-sm overflow-hidden"},zn={class:"overflow-x-auto"},wn={class:"w-full text-left text-xs border-collapse"},kn={class:"divide-y divide-zinc-700/50"},Pn={key:0},Hn={colspan:"9",class:"px-4 md:px-6 py-12 text-center text-zinc-500 italic"},Dn={class:"flex flex-col items-center gap-2"},Sn={key:1},Fn={class:"px-4 md:px-6 py-4 text-zinc-200 font-semibold whitespace-nowrap tabular-nums"},Tn={class:"px-4 md:px-6 py-4 text-center"},Cn={class:"px-4 md:px-6 py-4 text-right tabular-nums"},Ln={class:"px-4 md:px-6 py-4 text-right font-medium tabular-nums"},Mn={class:"px-4 md:px-6 py-4 text-right font-medium tabular-nums"},Nn={class:"px-4 md:px-6 py-4 text-right tabular-nums"},$n={class:"px-4 md:px-6 py-4 text-right md:table-cell tabular-nums"},jn={class:"px-4 md:px-6 py-4 text-right md:table-cell tabular-nums"},Bn={class:"px-4 md:px-6 py-4 text-right md:table-cell tabular-nums"},An={class:"px-5 md:px-6 py-3.5 border-t border-zinc-700 bg-zinc-900/30"},Rn={class:"rounded-xl bg-zinc-800/95 border border-zinc-700 shadow-sm overflow-hidden mt-5"},Vn={class:"overflow-x-auto"},Un={class:"w-full text-left text-xs border-collapse"},On={class:"divide-y divide-zinc-700/50"},In={key:0},En={colspan:"7",class:"px-4 md:px-6 py-12 text-center text-zinc-500 italic"},qn={class:"flex flex-col items-center gap-2"},Gn={key:1},Kn={class:"px-4 md:px-6 py-4 text-zinc-200 font-semibold whitespace-nowrap tabular-nums"},Xn={class:"px-4 md:px-6 py-4 text-right tabular-nums"},Wn={class:"px-4 md:px-6 py-4 text-right tabular-nums"},Qn={class:"px-4 md:px-6 py-4 text-right text-green-500 font-bold tabular-nums"},Yn={class:"px-4 md:px-6 py-4 text-right font-bold tabular-nums"},Jn={class:"px-4 md:px-6 py-4 text-right text-red-400 tabular-nums"},Zn={class:"px-4 md:px-6 py-4 text-right text-red-600 tabular-nums"},ei={class:"px-5 md:px-6 py-3.5 border-t border-zinc-700 bg-zinc-900/30"},ni=qt({__name:"Monitoring",setup(ti){const qe=qt({props:{ok:{type:Boolean,default:!1}},setup(s){return()=>xs("span",{class:(s.ok?"bg-green-600/20 text-green-500 border-green-500/30":"bg-red-600/20 text-red-500 border-red-500/30")+" px-2 py-0.5 rounded text-[10px] font-bold border"},s.ok?"OK":"DOWN")}});ps("Monitoring \u2014 FapTap");const Ge=d(new Date),H=d(null),y=d(null),De=d([]),Se=d(0),Fe=d(1),Te=d(10),Ce=d(!1),k=d("all"),pe=d(""),me=d(""),be=d(""),ve=d(""),te=d([]),Le=d(0),Me=d(1),Ne=d(10),$e=d(!1),C=d(!1),G=d(!1),R=d(!1),se=d(!1),fe=d(!1),le=d(!1),je=d([]),K=d([]),Be=d([]),Ae=d(0),L=d(1),Re=d(20),V=d(""),U=d(""),F=d("all"),j=d(""),B=d(""),X=d(!1),W=d(!1),Q=d(!1),Ke=d(null),Xe=d(null),We=d(null),he=d(!1),Qe=d(null),Y=d(null),{isMobile:_e}=ms(),ae=d(!1),Ye=d(null),Je={all:"Lifetime","3h":"Last 3 Hours","24h":"Last 24 Hours","7d":"Last 7 Days",custom:"Custom Range"},p=d(null),J=d(!1),Ze={"":"All Lanes",meta:"Meta",stream:"Stream"},et={all:"Lifetime","24h":"Last 24 Hours","7d":"Last 7 Days",custom:"Custom Range"},tt=D(()=>{const s={"":"All Providers"},t=new Set;for(const i of K.value){const u=String((i==null?void 0:i.provider)||"").trim();!u||t.has(u)||(t.add(u),s[u]=I(u))}return s}),Gt=D(()=>{var s;return(s=tt.value[V.value])!=null?s:"All Providers"}),Kt=D(()=>{var s;return(s=Ze[U.value])!=null?s:"All Lanes"}),Xt=D(()=>{var s;return(s=et[F.value])!=null?s:"Lifetime"}),O=D(()=>{var q;const s=new Set;let t=0,i=0,u=0,P=0,E=0;for(const z of K.value)switch(s.add(String((z==null?void 0:z.provider_id)||"")),t+=Number((q=z==null?void 0:z.proxy_count)!=null?q:0),z==null?void 0:z.status){case"healthy":i++;break;case"hot":u++;break;case"disabled":E++;break;default:P++;break}return{trackedLanes:K.value.length,uniqueProviders:s.size,totalProxies:t,healthyLanes:i,hotLanes:u,degradedLanes:P,disabledLanes:E}}),I=s=>s.replace(/^www\./,""),Wt=s=>(s!=null?s:0)/1024/1024/1024,st=s=>`${((s!=null?s:0)*100).toFixed(1)}%`,Qt=s=>!s||s<=0?"No throughput sample":`${s.toFixed(s>=10?0:1)} Mbps`,lt=s=>{const t=Wt(s);return t>=10?t.toFixed(1):t>=1?t.toFixed(2):t.toFixed(3)},Yt=s=>{var i;const t=Number((i=s==null?void 0:s.bandwidth_limit_gb)!=null?i:0);return t>0?`${lt(s==null?void 0:s.bytes_transferred)}
1 GB / ${t.toLocaleString(void 0,{maximumFractionDigits:2})} GB`:`${lt(s==null?void 0:s.bytes_transferred)} GB`},Jt=s=>{var i,u;return Number((i=s==null?void 0:s.bandwidth_limit_gb)!=null?i:0)>0?`${Math.round(((u=s==null?void 0:s.usage_ratio)!=null?u:0)*100)}% used`:"No bandwidth limit"},at=s=>s==="healthy"?"bg-green-600/20 text-green-400 border-green-500/30":s==="disabled"?"bg-zinc-600/20 text-zinc-400 border-zinc-500/30":s==="hot"?"bg-yellow-600/20 text-yellow-300 border-yellow-500/30":"bg-red-600/20 text-red-400 border-red-500/30",Zt=s=>{switch(s==null?void 0:s.status){case"hot":return"This proxy is still usable, but recent checks found partial failures, slow responses, low throughput, or usage near its configured limit.";case"degraded":return"This proxy still has some successful checks, but the recent failure rate is high enough that rotation will rank it lower.";case"disabled":return"This proxy is not being selected because checks had no successful responses or the configured limit was reached.";default:return"This proxy is healthy and eligible for normal rotation."}},ot=(s,t)=>{!t||t.status==="healthy"||(Qe.value=s.currentTarget,Y.value=t,he.value=!0)},nt=()=>{he.value=!1},it=(s,t)=>{const i=I(s.provider).toLowerCase(),u=I(t.provider).toLowerCase();return i<u?-1:i>u?1:0},rt=D(()=>[...je.value].filter(s=>!s.used_ytdlp).sort(it)),Ve=D(()=>[...je.value].filter(s=>s.used_ytdlp).sort(it)),dt=D(()=>!y.value||y.value.playback_success_rate_ft===void 0?"\u2014":(y.value.playback_success_rate_ft*100).toFixed(1)+"%"),ct=D(()=>!y.value||y.value.playback_success_rate_ext===void 0?"\u2014":(y.value.playback_success_rate_ext*100).toFixed(1)+"%"),ut=D(()=>y.value?(y.value.cache_hit_ratio*100).toFixed(1)+"%":"\u2014"),es=D(()=>{var P;if(!y.value)return"\u2014";const s=(P=y.value.uptime)!=null?P:0,t=Math.floor(s/86400),i=Math.floor(s%86400/3600),u=Math.floor(s%3600/60);return t>0?`${t}d ${i}h ${u}m`:`${i}h ${u}m`});let Ue=null;const ts=async()=>(Ue||(Ue=_s(()=>import("./vendor-highcharts.9b480a8e.js").then(s=>s.h),[],import.meta.url).then(s=>{var t;return(t=s==null?void 0:s.default)!=null?t:s})),Ue);let f=null,h=null;const xt={chart:{backgroundColor:"transparent",animation:!1,style:{fontFamily:"Inter, sans-serif"}},credits:{enabled:!1},legend:{itemStyle:{color:"#71717a",fontWeight:"bold",fontSize:"10px"}},tooltip:{backgroundColor:"#18181b",borderColor:"#3f3f46",borderRadius:8,style:{color:"#fff"}},time:{useUTC:!1},xAxis:{type:"datetime",labels:{style:{color:"#71717a"}},lineColor:"#3f3f46",tickColor:"#3f3f46"},yAxis:{gridLineColor:"#27272a",title:{text:""},labels:{style:{color:"#71717a"}}},title:{text:""}};async function ge(){C.value=!0;try{const[s,t]=await Promise.all([$.monitoring.getHealth(),$.monitoring.getStats()]);if(H.value=s,y.value=t,Ge.value=new Date,oe(),mt(),M(),f&&h){const i=Date.now();f.series[0].addPoint([i,t.avg_db_query_latency_ms],!1,f.series[0].data.length>50),f.series[1].addPoint([i,t.avg_proxy_latency_ms],!1,f.series[1].data.length>50),f.series[2].addPoint([i,t.avg_proxy_connect_latency_ms],!0,f.series[2].data.length>50),h.series[0].addPoint([i,Math.round(t.playback_success_rate_ft*100)],!1,h.series[0].data.length>50),h.series[1].addPoint([i,Math.round(t.playback_success_rate_ext*100)],!1,h.series[1].data.length>50),h.series[2].addPoint([i,s.memory_usage_bytes/1024/1024],!0,h.series[2].data.length>50)}}catch(s){console.error("Failed to refresh health",s)}finally{C.value=!1}}async function pt(){R.value=!0;try{const s=await $.monitoring.getScraperHealth({page:1,limit:100});je.value=s.data}catch(s){console.error("Failed to fetch scraper health",s)}finally{R.value=!1}}async function mt(){se.value=!0;try{const s=await $.monitoring.getProxyProviders();K.value=s.data}catch(s){console.error("Failed to fetch proxy providers",s)}finally{se.value=!1}}async function M(){fe.value=!0;try{const s={page:L.value,limit:Re.value};if(V.value&&(s.provider=V.value),U.value&&(s.lane=U.value),F.value==="24h"){const i=new Date;i.setHours(i.getHours()-24),s.from=i.toISOString(),s.to=new Date().toISOString()}else if(F.value==="7d"){const i=new Date;i.setDate(i.getDate()-7),s.from=i.toISOString(),s.to=new Date().toISOString()}else if(F.value==="custom"){if(j.value){const i=new Date(j.value);Number.isNaN(i.getTime())||(s.from=i.toISOString())}if(B.value){const i=new Date(B.value);Number.isNaN(i.getTime())||(s.to=i.toISOString())}}const t=await $.monitoring.getProxyProvidersHistory({...s});Be.value=t.data,Ae.value=t.total}catch(s){console.error("Failed to fetch proxy provider history",s)}finally{fe.value=!1}}function ss(s){V.value=s,X.value=!1,L.value=1,M()}function ls(s){U.value=s,W.value=!1,L.value=1,M()}function as(s){if(F.value=s,Q.value=!1,L.value=1,s==="custom"&&!j.value&&!B.value){const t=new Date,i=new Date;i.setHours(i.getHours()-24),j.value=bt(i),B.value=bt(t)}if(s!=="custom"){M();return}M()}function os(){L.value=1,M()}function ns(){j.value="",B.value="",F.value="all",L.value=1,M()}function is(){V.value="",U.value="",F.value="all",j.value="",B.value="",X.value=!1,W.value=!1,Q.value=!1,L.value=1,M()}function bt(s){const t=z=>String(z).padStart(2,"0"),i=s.getFullYear(),u=t(s.getMonth()+1),P=t(s.getDate()),E=t(s.getHours()),q=t(s.getMinutes());return`${i}-${u}-${P}T${E}:${q}`}async function rs(){le.value=!0;try{await $.monitoring.checkProxyProviders(),await ge()}catch(s){console.error("Failed to run proxy provider check",s)}finally{le.value=!1}}async function oe(){J.value=!0;try{let s={};const t=new Date;let i=new Date(0);k.value==="3h"?(i=new Date,i.setHours(t.getHours()-3)):k.value==="24h"?(i=new Date,i.setHours(t.getHours()-24)):k.value==="7d"?(i=new Date,i.setDate(t.getDate()-7)):k.value==="custom"&&(pe.value&&(i=new Date(pe.value)),me.value&&(s.to=Math.floor(new Date(me.value).getTime()/1e3))),s.to===void 0&&(s.to=Math.floor(t.getTime()/1e3)),s.from=Math.floor(i.getTime()/1e3),p.value=await $.monitoring.getVideoProcessingMetrics(s)}catch(s){console.error("Failed to fetch video metrics",s)}finally{J.value=!1}}async function vt(){Ce.value=!0;try{let s={page:Fe.value,limit:Te.value};const t=await $.monitoring.getVideoProcessingMetricsHistory(s);De.value=t.data,Se.value=t.total}catch(s){console.error("Failed to fetch AI history",s)}finally{Ce.value=!1}}bs(k,()=>oe());function ds(){pe.value=be.value,me.value=ve.value,k.value==="custom"&&oe()}function cs(){be.value="",ve.value="",pe.value="",me.value="",k.value==="custom"&&oe()}async function ft(){$e.value=!0;try{let s={page:Me.value,limit:Ne.value};const t=await $.monitoring.getMetricsHistory(s);te.value=t.data,Le.value=t.total}catch(s){console.error("Failed to fetch history",s)}finally{$e.value=!1}}
1function Oe(s){return new Date(s).toLocaleString("en-GB",{day:"2-digit",month:"2-digit",year:"2-digit",hour:"2-digit",minute:"2-digit"}).replace(",","")}function ye(s,t=.95){return s===void 0?"text-zinc-500":s>=t?"text-green-500":s>=t-.05?"text-yellow-500":"text-red-500"}function ht(s,t=.95){return s===void 0?"bg-zinc-700":s>=t?"bg-green-500":s>=t-.05?"bg-yellow-500":"bg-red-500"}function us(s){return typeof s!="number"||Number.isNaN(s)?"0.00":s.toFixed(2)}let Ie=null;return vs(async()=>{G.value=!0,await Promise.all([ge(),ft(),pt(),oe(),vt()]),G.value=!1,await fs();const s=await ts();if(f=s.chart("latency-chart",{...xt,series:[{name:"DB ms",type:"area",color:"#3b82f6",fillOpacity:.1,data:[]},{name:"Proxy Resp ms",type:"line",color:"#f59e0b",data:[]},{name:"Proxy Conn ms",type:"line",color:"#ec4899",data:[]}]}),h=s.chart("performance-chart",{...xt,series:[{name:"FT Success %",type:"line",color:"#3b82f6",data:[]},{name:"EXT Success %",type:"line",color:"#22c55e",data:[]},{name:"Memory MB",type:"area",color:"#a855f7",fillOpacity:.1,yAxis:1,data:[]}],yAxis:[{gridLineColor:"#27272a",title:{text:""},labels:{style:{color:"#71717a"}},min:0,max:100},{title:{text:""},labels:{style:{color:"#71717a"}},opposite:!0}]}),te.value.length>0){const i=[...te.value].slice(0,50).reverse().sort((u,P)=>new Date(u.recorded_at).getTime()-new Date(P.recorded_at).getTime());f==null||f.series[0].setData(i.map(u=>[new Date(u.recorded_at).getTime(),u.avg_db_query_latency_ms]),!1),f==null||f.series[1].setData(i.map(u=>[new Date(u.recorded_at).getTime(),u.avg_proxy_latency_ms]),!1),f==null||f.series[2].setData(i.map(u=>[new Date(u.recorded_at).getTime(),u.avg_proxy_connect_latency_ms]),!0),h==null||h.series[0].setData(i.map(u=>[new Date(u.recorded_at).getTime(),Math.round(u.playback_success_rate_ft*100)]),!1),h==null||h.series[1].setData(i.map(u=>[new Date(u.recorded_at).getTime(),Math.round(u.playback_success_rate_ext*100)]),!1),h==null||h.series[2].setData(i.map(u=>[new Date(u.recorded_at).getTime(),u.memory_usage_mb]),!0)}Ie=setInterval(()=>{ge(),pt()},3e4)}),hs(()=>{Ie&&clearInterval(Ie)}),(s,t)=>{var i,u,P,E,q,z,_t,gt,yt,zt,wt,kt,Pt,Ht,Dt,St,Ft,Tt,Ct,Lt,Mt,Nt,$t,jt,Bt,At,Rt,Vt,Ut,Ot,It,Et;return o(),n("div",gs,[H.value?(o(),n("div",{key:0,class:g(["rounded-2xl p-4 md:p-6 flex flex-col sm:flex-row sm:items-center gap-4 md:gap-8 border relative overflow-hidden transition-all duration-500 shadow-lg shadow-zinc-950/20",H.value.status==="healthy"?"bg-green-900/10 border-green-500/20":"bg-red-900/20 border-red-500/20"])},[C.value?(o(),n("div",ys,[r(c,{name:"loading-animated",class:"h-6 w-6 text-zinc-400"})])):m("",!0),C.value?m("",!0):(o(),n("div",zs,[e("div",ws,[e("div",{class:g(["p-3 rounded-xl shadow-inner",H.value.status==="healthy"?"bg-green-500/10 border border-green-500/20":"bg-red-500/10 border border-red-500/20"])},[r(c,{name:H.value.status==="healthy"?"check":"alert-circle",class:g(["h-6 w-6",H.value.status==="healthy"?"text-green-500":"text-red-500"])},null,8,["name","class"])],2),e("div",null,[e("p",ks,a(H.value.status),1),e("p",Ps,[x("Refreshed "+a(w(A)(Ge.value))+" ago ",1),e("button",{onClick:ge,class:"ml-1 underline text-zinc-500 hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500/60 rounded transition-colors"},"Refresh")])])]),e("div",Hs,[e("div",Ds,[t[16]||(t[16]=e("span",{class:"text-xs text-green-500/70 uppercase font-bold tracking-widest"},"Uptime",-1)),e("span",Ss,a(es.value),1)])])]))],2)):m("",!0),e("div",Fs,[e("div",Ts,[C.value?(o(),n("div",Cs,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[19]||(t[19]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest mb-3"},"Playback Success",-1)),e("div",Ls,[e("div",null,[e("div",Ms,[t[17]||(t[17]=e("span",{class:"text-xs text-zinc-400 font-medium tracking-tight"},"FT Internal",-1)),e("span",{class:g(["text-white text-xs font-bold tabular-nums",ye((i=y.value)==null?void 0:i.playback_success_rate_ft,.75)])},a(dt.value),3)]),e("div",Ns,[e("div",{class:g(["h-full transition-all duration-700 ease-out",ht((u=y.value)==null?void 0:u.playback_success_rate_ft,.75)]),style:ee({width:dt.value})},null,6)])]),e("div",null,[e("div",$s,[t[18]||(t[18]=e("span",{class:"text-xs text-zinc-400 font-medium tracking-tight"},"EXT Bunny",-1)),e("span",{class:g(["text-white text-xs font-bold tabular-nums",ye((P=y.value)==null?void 0:P.playback_success_rate_ext,.95)])},a(ct.value),3)]),e("div",js,[e("div",{class:g(["h-full transition-all duration-700 ease-out",ht((E=y.value)==null?void 0:E.playback_success_rate_ext,.95)]),style:ee({width:ct.value})},null,6)])])])],64))]),e("div",Bs,[C.value?(o(),n("div",As,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[20]||(t[20]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Cache Hit Ratio",-1)),e("h2",Rs,a(ut.value),1),e("div",Vs,[e("div",{class:"h-full bg-blue-500 transition-all duration-700 ease-out",style:ee({width:ut.value})},null,4)])],64))]),e("div",Us,[C.value?(o(),n("div",Os,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[21]||(t[21]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Memory Usage",-1)),e("h2",Is,a((((q=H.value)==null?void 0:q.memory_usage_b
1ytes)/1024/1024).toFixed(0))+" MB",1),t[22]||(t[22]=e("p",{class:"text-xs text-zinc-500 mt-2 uppercase tracking-widest font-medium"},"Allocated heap",-1))],64))]),e("div",Es,[C.value?(o(),n("div",qs,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[23]||(t[23]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Proxy Connect",-1)),e("h2",Gs,a((_t=(z=y.value)==null?void 0:z.avg_proxy_connect_latency_ms)!=null?_t:0)+" ms ",1),t[24]||(t[24]=e("p",{class:"text-xs text-zinc-500 mt-2 uppercase tracking-widest font-medium"},"Avg connect time",-1))],64))]),e("div",Ks,[C.value?(o(),n("div",Xs,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[28]||(t[28]=e("h3",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest mb-4"},"Service Status",-1)),e("div",Ws,[e("div",Qs,[t[25]||(t[25]=e("span",{class:"text-zinc-400 font-medium"},"Database",-1)),r(w(qe),{ok:(gt=H.value)==null?void 0:gt.db_connected},null,8,["ok"])]),e("div",Ys,[t[26]||(t[26]=e("span",{class:"text-zinc-400 font-medium"},"Cache",-1)),r(w(qe),{ok:(yt=H.value)==null?void 0:yt.cache_healthy},null,8,["ok"])]),e("div",Js,[t[27]||(t[27]=e("span",{class:"text-zinc-400 font-medium"},"Proxies",-1)),e("span",Zs,a((wt=(zt=H.value)==null?void 0:zt.proxies_available)!=null?wt:0)+" OK",1)])])],64))])]),e("div",el,[e("div",tl,[e("div",sl,[e("div",ll,[r(c,{name:"brain",class:"h-5 w-5 text-blue-400"})]),t[29]||(t[29]=e("h3",{class:"text-sm font-bold text-white uppercase tracking-widest"},"FapAI Engine Performance",-1))]),e("div",al,[r(S,{ref_key:"aiRangeBtn",ref:Ye,onClick:t[0]||(t[0]=l=>ae.value=!ae.value),class:"flex items-center gap-2 focus-visible:ring-2 focus-visible:ring-blue-500/60",theme:k.value!=="all"?"blue":void 0},{default:v(()=>[r(c,{name:"calendar",class:"h-4 w-4"}),x(" "+a(Je[k.value]),1)]),_:1},8,["theme"]),(o(),ue(ze(w(_e)?we:xe),{modelValue:ae.value,"onUpdate:modelValue":t[1]||(t[1]=l=>ae.value=l),placement:"bottom",target:(kt=Ye.value)==null?void 0:kt.$el,class:"text-white text-sm py-1 w-48",offset:8},{default:v(()=>[(o(),n(b,null,T(Je,(l,_)=>r(He,{active:_===k.value,onClick:N=>(k.value=_,ae.value=!1)},{default:v(()=>[x(a(l),1)]),_:2},1032,["active","onClick"])),64))]),_:1},8,["modelValue","target"])),k.value==="custom"?(o(),n("div",ol,[e("label",nl,[t[30]||(t[30]=x(" From ",-1)),ke(e("input",{type:"datetime-local","onUpdate:modelValue":t[2]||(t[2]=l=>be.value=l),class:"mt-1 w-full bg-zinc-900/60 border border-zinc-700 rounded px-2 h-8 text-zinc-200 outline-none focus:border-blue-500"},null,512),[[Pe,be.value]])]),t[34]||(t[34]=e("span",{class:"hidden sm:block text-zinc-600 font-bold pb-2"},"\u2192",-1)),e("label",il,[t[31]||(t[31]=x(" To ",-1)),ke(e("input",{type:"datetime-local","onUpdate:modelValue":t[3]||(t[3]=l=>ve.value=l),class:"mt-1 w-full bg-zinc-900/60 border border-zinc-700 rounded px-2 h-8 text-zinc-200 outline-none focus:border-blue-500"},null,512),[[Pe,ve.value]])]),r(S,{class:"h-8",theme:"blue",onClick:ds},{default:v(()=>[...t[32]||(t[32]=[x("Apply",-1)])]),_:1}),r(S,{class:"h-8",onClick:cs},{default:v(()=>[...t[33]||(t[33]=[x("Reset",-1)])]),_:1})])):m("",!0)])]),e("div",rl,[e("div",dl,[J.value?(o(),n("div",cl,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[36]||(t[36]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Avg Process Time",-1)),e("div",ul,[e("h2",xl,a(us((Pt=p.value)==null?void 0:Pt.avg_processing_time_min)),1),t[35]||(t[35]=e("span",{class:"text-xs text-zinc-500 font-bold uppercase tracking-tight"},"min",-1))]),t[37]||(t[37]=e("p",{class:"text-xs text-zinc-500 mt-2 uppercase tracking-widest font-medium"},[x("Efficiency target: "),e("span",{class:"text-zinc-400"},"< 10.0m")],-1))],64))]),e("div",pl,[J.value?(o(),n("div",ml,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[t[38]||(t[38]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Total Analysis",-1)),e("h2",bl,a((Dt=(Ht=p.value)==null?void 0:Ht.total_processed)!=null?Dt:0),1),t[39]||(t[39]=e("p",{class:"text-xs text-zinc-500 mt-2 uppercase tracking-widest font-medium"},"Lifetime Video Queue",-1))],64))]),e("div",vl,[J.value?(o(),n("div",fl,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[e("div",hl,[t[40]||(t[40]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Success Count",-1)),e("span",_l,a((St=p.value)!=null&&St.total_processed?Math.round(p.value.success_count/p.value.total_processed*100):0)+"% ",1)]),e("h2",gl,a((Tt=(Ft=p.value)==null?void 0:Ft.success_count)!=null?Tt:0),1),e("div",yl,[e("div",{class:"h-full bg-green-500 transition-all duration-700 ease-out",style:ee({width:(Ct=p.value)!=null&&Ct.total_processed?p.value.success_count/p.value.total_processed*100+"%":"0%"})},null,4)])],64))]),e("div",{class:g(["rounded-2xl px-5 py-4 bg-zinc-800/95 border border-zinc-700 shadow-sm relative flex flex-col justify-center min-h-[100px] hover:border-red-500/40 hover:-translate-y-0.5 transition-all duration-300 group overflow-hidden",{"border-red-500/30 bg-red-500/5":((Lt=p.value)==null?void 0:Lt.failure_count)>0}])},[J.value?(o(),n("div",zl,[r(c,{name:"loading",class:"h-6 w-6"})])):(o(),n(b,{key:1},[e("div",wl,[e("div",kl,[r(c,{name:"alert-circle",class:"h-3.5 w-3.5 text-red-500"}),t[41]||(t[41]=e("span",{class:"text-xs text-blue-400 font-bold uppercase tracking-widest"},"Failures",-1))]),e("span",Pl,a((Mt=p.value)!=null&&Mt.total_processed?Math.round(p.value.failure_count/p.value.total_processed*100):0)+"% ",1)]),e("h2",Hl,a(($t=(Nt=p.value)==null?void 0:Nt.failure_count)!=null?$t:0),1),e("div",Dl,[e("div",Sl,[t[42]||(t[42]=e("span",{class:"text-xs text-zinc-500 uppercase font-bold tracking-widest mb-0.5"},"Download",-1)),e("span",Fl,a((Bt=(jt=p.value)==null?void 0:jt.download_fail_count)!=null?Bt:0),1)]),e("div",Tl,[t[43]||(t[43]=e("span",{class:"text-xs text-zinc-500 uppercase font-bold tracking-widest mb-0.5"},"Analysis",-1)),e("span",Cl,a((Rt=(At=p.value)==null?void 0:At.analysis_fail_count)!=null?Rt:0),1)])]),e("div",Ll,[e("div",{class:"h-full bg-red-400 transition-all duration-1000 ease-in-out",style:ee({width:(Vt=p.value)!=null&&Vt.failure_count?p.value.download_fail_count/p.value.failure_count*100+"%":"0%"}),title:"Download Fails"},null,4),e("div",{class:"h-full bg-red-600 transition-all duration-1000 ease-in-out shadow-[inset_0_0_8px_rgba(0,0,0,0.3)]",style:ee({width:(Ut=p.value)!=null&&Ut.failure_count?p.value.analysis_fail_count/p.value.failure_count*100+"%":"0%"}),title:"Analysis Fails"}
1,null,4)])],64))],2)])]),e("div",Ml,[e("div",Nl,[G.value?(o(),n("div",$l,[r(c,{name:"loading-animated",class:"h-10 w-10 text-blue-500"}),t[44]||(t[44]=e("span",{class:"text-xs text-zinc-500 uppercase font-bold tracking-widest"},"Loading Analytics...",-1))])):m("",!0),G.value?m("",!0):(o(),n(b,{key:1},[t[45]||(t[45]=e("h2",{class:"text-sm font-bold text-blue-400 mb-4 uppercase tracking-widest"},"Latency (Last 24h)",-1)),t[46]||(t[46]=e("div",{id:"latency-chart",style:{height:"250px"}},null,-1))],64))]),e("div",jl,[G.value?(o(),n("div",Bl,[r(c,{name:"loading-animated",class:"h-10 w-10 text-purple-500"}),t[47]||(t[47]=e("span",{class:"text-xs text-zinc-500 uppercase font-bold tracking-widest"},"Computing Performance...",-1))])):m("",!0),G.value?m("",!0):(o(),n(b,{key:1},[t[48]||(t[48]=e("h2",{class:"text-sm font-bold text-blue-400 mb-4 uppercase tracking-widest"},"Memory & Performance",-1)),t[49]||(t[49]=e("div",{id:"performance-chart",style:{height:"250px"}},null,-1))],64))])]),e("div",Al,[e("div",Rl,[e("div",Vl,[t[51]||(t[51]=e("h2",{class:"text-sm font-bold uppercase tracking-widest text-blue-400"},"Proxy Provider Health",-1)),e("div",Ul,[r(S,{class:"!p-0 !h-8 !w-8 !inline-flex !items-center !justify-center",onClick:mt,disabled:se.value||le.value},{default:v(()=>[r(c,{name:"refresh",class:"h-4 w-4"})]),_:1},8,["disabled"]),r(S,{class:"h-8 inline-flex items-center justify-center gap-2 px-3 whitespace-nowrap",theme:"blue",onClick:rs,disabled:se.value||le.value},{default:v(()=>[r(c,{name:le.value?"loading-animated":"check",class:"h-4 w-4 shrink-0"},null,8,["name"]),t[50]||(t[50]=e("span",null,"Check now",-1))]),_:1},8,["disabled"])])])]),e("div",Ol,[e("div",Il,[t[52]||(t[52]=e("div",{class:"text-[10px] uppercase tracking-[0.2em] text-zinc-500 font-bold"},"Tracked Lanes",-1)),e("div",El,a(O.value.trackedLanes),1),e("div",ql,a(O.value.uniqueProviders)+" providers",1)]),e("div",Gl,[t[53]||(t[53]=e("div",{class:"text-[10px] uppercase tracking-[0.2em] text-zinc-500 font-bold"},"Proxy Pool",-1)),e("div",Kl,a(O.value.totalProxies),1),t[54]||(t[54]=e("div",{class:"mt-1 text-xs text-zinc-500"},"Non-sensitive proxy count only",-1))]),e("div",Xl,[t[55]||(t[55]=e("div",{class:"text-[10px] uppercase tracking-[0.2em] text-zinc-500 font-bold"},"Healthy / Hot",-1)),e("div",Wl,a(O.value.healthyLanes)+" / "+a(O.value.hotLanes),1),t[56]||(t[56]=e("div",{class:"mt-1 text-xs text-zinc-500"},"Usable lanes first",-1))]),e("div",Ql,[t[57]||(t[57]=e("div",{class:"text-[10px] uppercase tracking-[0.2em] text-zinc-500 font-bold"},"Degraded / Disabled",-1)),e("div",Yl,a(O.value.degradedLanes)+" / "+a(O.value.disabledLanes),1),t[58]||(t[58]=e("div",{class:"mt-1 text-xs text-zinc-500"},"Needs attention",-1))])]),e("div",Jl,[e("table",Zl,[t[61]||(t[61]=e("thead",null,[e("tr",{class:"bg-zinc-900/50 text-zinc-500 uppercase tracking-widest font-bold text-xs"},[e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700"},"Provider"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 text-center"},"Status"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 hidden lg:table-cell"},"Performance"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 text-right"},"Usage"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 hidden xl:table-cell"},"Activity"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 hidden xl:table-cell"},"Reason")])],-1)),e("tbody",ea,[se.value?(o(),n("tr",ta,[e("td",sa,[e("div",la,[r(c,{name:"loading-animated",class:"h-8 w-8 text-blue-500"}),t[59]||(t[59]=e("span",null,"Loading proxy providers...",-1))])])])):K.value.length===0?(o(),n("tr",aa,[...t[60]||(t[60]=[e("td",{colspan:"6",class:"px-4 md:px-6 py-8 text-center text-zinc-500 italic"},"No proxy provider data found.",-1)])])):m("",!0),(o(!0),n(b,null,T(K.value,l=>{var _,N,ne,ie,re,de,ce;return o(),n("tr",{key:`${l.provider_id}-${l.lane}`,class:"hover:bg-zinc-700/30 transition-colors group text-zinc-400"},[e("td",oa,[e("div",na,a(I(l.provider_id)),1),e("div",ia,a(l.lane)+" \xB7 "+a(l.type||"unknown")+" \xB7 "+a((_=l.proxy_count)!=null?_:0)+" proxies",1)]),e("td",ra,[e("span",{class:g([at(l.status),"font-bold uppercase text-xs border rounded px-2 py-1 inline-flex items-center gap-1"]),tabindex:"0",onMouseenter:Z=>ot(Z,l),onMouseleave:nt,onFocus:Z=>ot(Z,l),onBlur:nt},[r(c,{name:l.status==="healthy"?"check":"alert-circle",class:"h-3.5 w-3.5"},null,8,["name"]),x(" "+a(l.status),1)],42,da),e("div",ca,a(st(l.success_rate))+" success",1)]),e("td",ua,[e("div",xa,a((N=l.avg_latency_ms)!=null?N:0)+" ms",1),e("div",pa,a((ne=l.avg_connect_ms)!=null?ne:0)+" ms connect \xB7 slot "+a(((ie=l.active_proxy_index)!=null?ie:0)+1),1
1),e("div",ma,a((re=l.request_count)!=null?re:0)+" req \xB7 "+a((de=l.health_check_count)!=null?de:0)+" checks ",1)]),e("td",ba,[e("div",va,a(Yt(l)),1),e("div",fa,a(Jt(l)),1)]),e("td",ha,[e("div",null,a((ce=l.active_sessions)!=null?ce:0)+" sessions",1),e("div",_a,"Success "+a(l.last_success_at?w(A)(new Date(l.last_success_at))+" ago":"Never"),1),e("div",ga,"Failure "+a(l.last_failure_at?w(A)(new Date(l.last_failure_at))+" ago":"Never"),1)]),e("td",ya,[e("span",za,a(l.last_failure_reason||"\u2014"),1)])])}),128))])])]),r(xe,{modelValue:he.value,"onUpdate:modelValue":t[4]||(t[4]=l=>he.value=l),target:Qe.value,placement:"top",class:"w-72 p-3 text-xs text-zinc-200",offset:8},{default:v(()=>[Y.value?(o(),n("div",wa,[e("div",ka,a(Y.value.status),1),e("p",Pa,a(Zt(Y.value)),1),Y.value.last_failure_reason?(o(),n("p",Ha,[t[62]||(t[62]=x(" Reason: ",-1)),e("span",Da,a(Y.value.last_failure_reason),1)])):m("",!0)])):m("",!0)]),_:1},8,["modelValue","target"])]),e("div",Sa,[e("div",Fa,[e("div",Ta,[e("div",Ca,[t[64]||(t[64]=e("h2",{class:"text-sm font-bold uppercase tracking-widest text-blue-400"},"Proxy Provider History",-1)),fe.value?(o(),n("div",La,[r(c,{name:"loading-animated",class:"h-3 w-3"}),t[63]||(t[63]=x(" Loading history... ",-1))])):m("",!0)]),e("div",Ma,[e("div",Na,[r(S,{ref_key:"providerHistoryProviderBtn",ref:Ke,onClick:t[5]||(t[5]=l=>X.value=!X.value),class:"h-8 flex items-center gap-2 focus-visible:ring-2 focus-visible:ring-blue-500/60",theme:V.value!==""?"blue":void 0},{default:v(()=>[r(c,{name:"filter",class:"h-4 w-4"}),e("span",null,a(Gt.value),1)]),_:1},8,["theme"]),r(S,{ref_key:"providerHistoryLaneBtn",ref:Xe,onClick:t[6]||(t[6]=l=>W.value=!W.value),class:"h-8 flex items-center gap-2 focus-visible:ring-2 focus-visible:ring-blue-500/60",theme:U.value!==""?"blue":void 0},{default:v(()=>[r(c,{name:"layers",class:"h-4 w-4"}),e("span",null,a(Kt.value),1)]),_:1},8,["theme"]),r(S,{ref_key:"providerHistoryRangeBtn",ref:We,onClick:t[7]||(t[7]=l=>Q.value=!Q.value),class:"h-8 flex items-center gap-2 focus-visible:ring-2 focus-visible:ring-blue-500/60",theme:F.value!=="all"?"blue":void 0},{default:v(()=>[r(c,{name:"calendar",class:"h-4 w-4"}),e("span",null,a(Xt.value),1)]),_:1},8,["theme"]),r(S,{class:"h-8",onClick:is},{default:v(()=>[r(c,{name:"refresh",class:"h-4 w-4"})]),_:1})]),F.value==="custom"?(o(),n("div",$a,[e("label",ja,[t[65]||(t[65]=x(" From ",-1)),ke(e("input",{type:"datetime-local","onUpdate:modelValue":t[8]||(t[8]=l=>j.value=l),class:"mt-1 w-full bg-zinc-900/60 border border-zinc-700 rounded px-2 h-8 text-zinc-200 outline-none focus:border-blue-500"},null,512),[[Pe,j.value]])]),t[69]||(t[69]=e("span",{class:"hidden sm:block text-zinc-600 font-bold pb-2"},"\u2192",-1)),e("label",Ba,[t[66]||(t[66]=x(" To ",-1)),ke(e("input",{type:"datetime-local","onUpdate:modelValue":t[9]||(t[9]=l=>B.value=l),class:"mt-1 w-full bg-zinc-900/60 border border-zinc-700 rounded px-2 h-8 text-zinc-200 outline-none focus:border-blue-500"},null,512),[[Pe,B.value]])]),r(S,{class:"h-8",theme:"blue",onClick:os},{default:v(()=>[...t[67]||(t[67]=[x("Apply",-1)])]),_:1}),r(S,{class:"h-8",onClick:ns},{default:v(()=>[...t[68]||(t[68]=[x("Clear",-1)])]),_:1})])):m("",!0)])])]),(o(),ue(ze(w(_e)?we:xe),{modelValue:X.value,"onUpdate:modelValue":t[10]||(t[10]=l=>X.value=l),placement:"bottom",target:(Ot=Ke.value)==null?void 0:Ot.$el,class:"text-white text-sm py-1 w-44",offset:8},{default:v(()=>[(o(!0),n(b,null,T(tt.value,(l,_)=>(o(),ue(He,{active:_===V.value,onClick:N=>ss(_)},{default:v(()=>[x(a(l),1)]),_:2},1032,["active","onClick"]))),256))]),_:1},8,["modelValue","target"])),(o(),ue(ze(w(_e)?we:xe),{modelValue:W.value,"onUpdate:modelValue":t[11]||(t[11]=l=>W.value=l),placement:"bottom",target:(It=Xe.value)==null?void 0:It.$el,class:"text-white text-sm py-1 w-44",offset:8},{default:v(()=>[(o(),n(b,null,T(Ze,(l,_)=>r(He,{active:_===U.value,onClick:N=>ls(_)},{default:v(()=>[x(a(l),1)]),_:2},1032,["active","onClick"])),64))]),_:1},8,["modelValue","target"])),(o(),ue(ze(w(_e)?we:xe),{modelValue:Q.value,"onUpdate:modelValue":t[12]||(t[12]=l=>Q.value=l),placement:"bottom",target:(Et=We.value)==null?void 0:Et.$el,class:"text-white text-sm py-1 w-48",offset:8},{default:v(()=>[(o(),n(b,null,T(et,(l,_)=>r(He,{active:_===F.value,onClick:N=>as(_)},{default:v(()=>[x(a(l),1)]),_:2},1032,["active","onClick"])),64))]),_:1},8,["modelValue","target"])),e("div",Aa,[e("table",Ra,[t[71]||(t[71]=e("thead",null,[e("tr",{class:"bg-zinc-900/50 text-zinc-500 uppercase tracking-widest font-bold text-xs"},[e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700"},"Recorded At"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700"},"Provider"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 text-center"},"Outcome"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 hidden md:table-cell"},"Sweep"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 text-right"},"Usage"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 hidden lg:table-cell text-right"},"Performance"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 hidden xl:table-cell"},"Notes")])],-1)),e("tbody",Va,[!fe.value&&Be.value.length===0?(o(),n("tr",Ua,[...t[70]||(t[70]=[e("td",{colspan:"6",class:"px-4 md:px-6 py-8 text-center text-zinc-500 italic"},"No proxy provider history yet.",-1)])])):m("",!0),(o(!0),n(b,null,T(Be.value,l=>{var _,N,ne,ie,re,de,ce,Z;return o(),n("tr",{key:`${l.recorded_at}-${l.provider_id}-${l.lane}`,class:"hover:bg-zinc-700/30 transition-colors group text-zinc-400"},[e("td",Oa,a(Oe(l.recorded_at)),1),e("td",Ia,[e("div",Ea,a(I(l.provider_id)),1),e("div",qa,a(l.lane),1)]),e("td",Ga,[e("span",{class:g([at(l.status),"font-bold uppercase text-xs border rounded px-2 py-1 inline-flex items-center gap-1"])},[r(c,{name:l.status==="healthy"?"check":"alert-circle",class:"h-3.5 w-3.5"},null,8,["name"]),x(" "+a(l.status),1)],2),e("div",Ka,a(st(l.success_rate)),1),e("div",Xa,a((_=l.success_count)!=null?_:0)+"/"+a((N=l.request_count)!=null?N:0),1)]),e("td",Wa,[e("div",Qa,a((ne=l.target_count)!=null?ne:0)+" targets",1),e("div",Ya,"rank "+a(((ie=l.rank_index)!=null?ie:0)+1)+" \xB7 "+a(l.proxy_count_label||"snapshot"),1)]),e("td",Ja,[e("div",Za,a((re=l.failure_count)!=null?re:0)+" fails",1),e("div",eo,a(Math.round(((de=l.usage_ratio)!=null?de:0)*100))+"% used",1)]),e("td",to,[e("div",so,a((ce=l.avg_latency_ms)!=null?ce:0)+" ms",1),e("div",lo,a((Z=l.avg_connect_ms)!=null?Z:0)+" ms connect",1),e("div",ao,a(Qt(l.throughput_mbps)),1)]),e("td",oo,[e("div",no,a(l.last_failure_reason||"No failure reason"),1),e("div",io,a(l.last_success_at?w(A)(new Date(l.last_success_at))+" ago success":"no success"),1)])])}),128))])])]),e("div",ro,[r(Ee,{total:Ae.value,currentPage:L.value,"onUpdate:currentPage":[t[13]||(t[13]=l=>L.value=l),M],limit:Re.value,show:Ae.value>Re.value,queryParam:"providerHistoryPage"},null,8,["total","currentPage","limit","show"])])]),e("div",co,[e("div",uo,[t[73]||(t[73]=e("h2",{class:"text-sm font-bold uppercase tracking-widest text-blue-400"},"Native Scraper Status",-1)),R.value?(o(),n("div",xo,[r(c,{name:"loading-animated",class:"h-3 w-3"}),t[72]||(t[72]=x(" Checking scrapers... ",-1))])):m("",!0)]),e("div",po,[e("table",mo,[t[81]||(t[81]=e("thead",null,[e("tr",{class:"bg-zinc-900/50 text-zinc-500 uppercase tracking-widest font-bold text-xs"},[e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700"},"Provider"),e("th",{class:"px-4 md:px-6 py-3.5 border-b border-zinc-700 text-center"},"Status"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center hidden md:table-cell"},"Meta"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center hidden md:table-cell"},"Src"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center hidden md:table-cell"},"Tries"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Last Successful"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Downtime"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 hidden md:table-cell"},"Error Message")])],-1)),e("tbody",bo,[R.value&&!rt.value.length?(o(),n("tr",vo,[e("td",fo,[e("div",ho,[r(c,{name:"loading-animated",class:"h-8 w-8 text-blue-500"}),t[74]||(t[74]=e("span",null,"Syncing scraper health...",-1))])])])):m("",!0),(o(!0),n(b,null,T(rt.value,l=>(o(),n("tr",{key:l.provider,class:"hover:bg-zinc-700/30 transition-colors group"},[e("td",_o,[e("span",go,a(I(l.provider)),1),e("details",yo,[t[79]||(t[79]=e("summary",{class:"cursor-pointer list-none text-xs text-zinc-400 hover:text-zinc-200"},"Details",-1)),e("div",zo,[e("div",null,[t[75]||(t[75]=x("Tries: ",-1)),e("span",wo,a(l.attempts||1),1)]),e("div",null,[t[76]||
1(t[76]=x("Meta: ",-1)),e("span",ko,a(l.meta_status?"OK":"Fail"),1)]),e("div",null,[t[77]||(t[77]=x("Source: ",-1)),e("span",Po,a(l.source_status?"OK":"Fail"),1)]),e("div",null,[t[78]||(t[78]=x("Error: ",-1)),e("span",Ho,a(l.error_message||"None"),1)])])])]),e("td",Do,[e("span",{class:g([l.status==="healthy"?"bg-green-600/20 text-green-400 border-green-500/30":"bg-red-600/20 text-red-400 border-red-500/30","font-bold uppercase text-xs border rounded px-2 py-1 inline-flex items-center gap-1"])},[r(c,{name:l.status==="healthy"?"check":"alert-circle",class:"h-3.5 w-3.5"},null,8,["name"]),x(" "+a(l.status==="healthy"?"Healthy":"Unhealthy"),1)],2)]),e("td",So,[l.meta_status?(o(),n("span",Fo,[r(c,{name:"check",class:"h-4 w-4 mx-auto"})])):(o(),n("span",To,[r(c,{name:"close",class:"h-4 w-4 mx-auto"})]))]),e("td",Co,[l.source_status?(o(),n("span",Lo,[r(c,{name:"check",class:"h-4 w-4 mx-auto"})])):(o(),n("span",Mo,[r(c,{name:"close",class:"h-4 w-4 mx-auto"})]))]),e("td",No,[e("span",{class:g(["text-xs font-bold tabular-nums",l.attempts>1?"text-yellow-500":"text-zinc-500"])},a(l.attempts||1),3)]),e("td",$o,a(l.last_successful&&l.last_successful!=="not found"?w(A)(new Date(l.last_successful))+" ago":"Never"),1),e("td",jo,[l.status==="unhealthy"?(o(),n("span",Bo,a(l.last_successful&&l.last_successful!=="not found"?w(A)(new Date(l.last_successful)):"N/A"),1)):(o(),n("span",Ao,"\u2014"))]),e("td",Ro,[e("details",Vo,[t[80]||(t[80]=e("summary",{class:"cursor-pointer list-none text-zinc-400 hover:text-zinc-200"},"View error",-1)),e("p",Uo,a(l.error_message||"None"),1)])])]))),128))])])])]),e("div",Oo,[e("div",Io,[t[83]||(t[83]=e("h2",{class:"text-sm font-bold uppercase tracking-widest text-purple-400"},"yt-dlp Provider Status",-1)),R.value?(o(),n("div",Eo,[r(c,{name:"loading-animated",class:"h-3 w-3"}),t[82]||(t[82]=x(" Checking providers... ",-1))])):m("",!0)]),e("div",qo,[e("table",Go,[t[92]||(t[92]=e("thead",null,[e("tr",{class:"bg-zinc-900/50 text-zinc-500 uppercase tracking-widest font-bold text-xs"},[e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Provider"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center"},"Status"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center hidden md:table-cell"},"Meta"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center hidden md:table-cell"},"Src"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center hidden md:table-cell"},"Tries"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Last Successful"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Downtime"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 hidden md:table-cell"},"Error Message")])],-1)),e("tbody",Ko,[R.value&&!Ve.value.length?(o(),n("tr",Xo,[e("td",Wo,[e("div",Qo,[r(c,{name:"loading-animated",class:"h-8 w-8 text-purple-500"}),t[84]||(t[84]=e("span",null,"Syncing yt-dlp provider health...",-1))])])])):m("",!0),!R.value&&!Ve.value.length?(o(),n("tr",Yo,[...t[85]||(t[85]=[e("td",{colspan:"8",class:"px-4 md:px-6 py-8 text-center text-zinc-500 italic"},"No yt-dlp providers found.",-1)])])):m("",!0),(o(!0),n(b,null,T(Ve.value,l=>(o(),n("tr",{key:l.provider,class:"hover:bg-zinc-700/30 transition-colors group"},[e("td",Jo,[e("span",Zo,a(I(l.provider)),1),e("details",en,[t[90]||(t[90]=e("summary",{class:"cursor-pointer list-none text-xs text-zinc-400 hover:text-zinc-200"},"Details",-1)),e("div",tn,[e("div",null,[t[86]||(t[86]=x("Tries: ",-1)),e("span",sn,a(l.attempts||1),1)]),e("div",null,[t[87]||(t[87]=x("Meta: ",-1)),e("span",ln,a(l.meta_status?"OK":"Fail"),1)]),e("div",null,[t[88]||(t[88]=x("Source: ",-1)),e("span",an,a(l.source_status?"OK":"Fail"),1)]),e("div",null,[t[89]||(t[89]=x("Error: ",-1)),e("span",on,a(l.error_message||"None"),1)])])])]),e("td",nn,[e("span",{class:g([l.status==="healthy"?"bg-green-600/20 text-green-400 border-green-500/30":"bg-red-600/20 text-red-400 border-red-500/30","font-bold uppercase text-xs border rounded px-2 py-1 inline-flex items-center gap-1"])},[r(c,{name:l.status==="healthy"?"check":"alert-circle",class:"h-3.5 w-3.5"},null,8,["name"]),x(" "+a(l.status==="healthy"?"Healthy":"Unhealthy"),1)],2)]),e("td",rn,[l.meta_status?(o(),n("span",dn,[r(c,{name:"check",class:"h-4 w-4 mx-auto"})])):(o(),n("span",cn,[r(c,{name:"close",class:"h-4 w-4 mx-auto"})]))]),e("td",un,[l.source_status?(o(),n("span",xn,[r(c,{name:"check",class:"h-4 w-4 mx-auto"})])):(o(),n("span",pn,[r(c,{name:"close",class:"h-4 w-4 mx-auto"})]))]),e("td",mn,[e("span",{class:g(["text-xs font-bold tabular-nums",l.attempts>1?"text-yellow-500":"text-zinc-500"])},a(l.attempts||1),3)]),e("td",bn,a(l.last_successful&&l.last_successful!=="not found"?w(A)(new Date(l.last_successful))+" ago":"Never"),1),e("td",vn,[l.status==="unhealthy"?(o(),n("span",fn,a(l.last_successful&&l.last_successful!=="not found"?w(A)(new Date(l.last_successful)):"N/A"),1)):(o(),n("span",hn,"\u2014"))]),e("td",_n,[e("details",null,[t[91]||(t[91]=e("summary",{class:"cursor-pointer list-none text-zinc-400 hover:text-zinc-200"}
1,"View error",-1)),e("p",gn,a(l.error_message||"None"),1)])])]))),128))])])])]),e("div",yn,[t[96]||(t[96]=e("div",{class:"px-5 md:px-6 py-3.5 border-b border-zinc-700"},[e("div",{class:"flex flex-col md:flex-row md:items-center justify-between gap-4"},[e("h2",{class:"text-sm font-bold text-blue-400 uppercase tracking-widest"},"Historical Snapshots")])],-1)),e("div",zn,[e("table",wn,[t[95]||(t[95]=e("thead",null,[e("tr",{class:"bg-zinc-900/50 text-zinc-500 uppercase tracking-widest font-bold text-xs"},[e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Recorded At"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-center"},"Status"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Memory"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Playback (FT)"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Playback (EXT)"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Cache %"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right md:table-cell"},"DB Latency "),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right md:table-cell"},"Proxy Resp ms"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right md:table-cell"},"Proxy Conn ms")])],-1)),e("tbody",kn,[$e.value?(o(),n("tr",Pn,[e("td",Hn,[e("div",Dn,[r(c,{name:"loading-animated",class:"h-8 w-8 text-blue-500"}),t[93]||(t[93]=e("span",null,"Fetching history...",-1))])])])):te.value.length===0?(o(),n("tr",Sn,[...t[94]||(t[94]=[e("td",{colspan:"9",class:"px-4 md:px-6 py-8 text-center text-zinc-500 italic"},"No historical data found for the selected range.",-1)])])):m("",!0),(o(!0),n(b,null,T(te.value,l=>(o(),n("tr",{key:l.recorded_at,class:"hover:bg-zinc-700/30 transition-colors group text-zinc-400"},[e("td",Fn,a(Oe(l.recorded_at)),1),e("td",Tn,[e("span",{class:g([l.status==="healthy"?"bg-green-600/20 text-green-400 border-green-500/30":"bg-red-600/20 text-red-400 border-red-500/30","font-bold uppercase text-xs border rounded px-2 py-1 inline-flex items-center gap-1"])},[r(c,{name:l.status==="healthy"?"check":"alert-circle",class:"h-3.5 w-3.5"},null,8,["name"]),x(" "+a(l.status==="healthy"?"Healthy":"Unhealthy"),1)],2)]),e("td",Cn,a(l.memory_usage_mb)+" MB",1),e("td",Ln,[e("span",{class:g(ye(l.playback_success_rate_ft,.75))},a((l.playback_success_rate_ft*100).toFixed(1))+"%",3)]),e("td",Mn,[e("span",{class:g(ye(l.playback_success_rate_ext,.95))},a((l.playback_success_rate_ext*100).toFixed(1))+"%",3)]),e("td",Nn,a((l.cache_hit_ratio*100).toFixed(1))+"% ",1),e("td",$n,a(l.avg_db_query_latency_ms)+" ms",1),e("td",jn,a(l.avg_proxy_latency_ms)+" ms",1),e("td",Bn,a(l.avg_proxy_connect_latency_ms)+" ms",1)]))),128))])])]),e("div",An,[r(Ee,{total:Le.value,currentPage:Me.value,"onUpdate:currentPage":[t[14]||(t[14]=l=>Me.value=l),ft],limit:Ne.value,show:Le.value>Ne.value,queryParam:"historyPage"},null,8,["total","currentPage","limit","show"])])]),e("div",Rn,[t[100]||(t[100]=e("div",{class:"px-5 md:px-6 py-3.5 border-b border-zinc-700"},[e("div",{class:"flex flex-col md:flex-row md:items-center justify-between gap-4"},[e("h2",{class:"text-sm font-bold text-blue-400 uppercase tracking-widest"},"Historical AI Engine Performance (3-Hour Windows)")])],-1)),e("div",Vn,[e("table",Un,[t[99]||(t[99]=e("thead",null,[e("tr",{class:"bg-zinc-900/50 text-zinc-500 uppercase tracking-widest font-bold text-xs"},[e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700"},"Recorded At"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Avg Process Time"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Total Processed"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Success Count"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right"},"Total Fails"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right text-red-400"},"Download Fails"),e("th",{class:"px-4 md:px-6 py-4 border-b border-zinc-700 text-right text-red-500"},"Analysis Fails")])],-1)),e("tbody",On,[Ce.value?(o(),n("tr",In,[e("td",En,[e("div",qn,[r(c,{name:"loading-animated",class:"h-8 w-8 text-blue-500"}),t[97]||(t[97]=e("span",null,"Fetching AI history...",-1))])])])):De.value.length===0?(o(),n("tr",Gn,[...t[98]||(t[98]=[e("td",{colspan:"7",class:"px-4 md:px-6 py-8 text-center text-zinc-500 italic"},"No historical AI data found.",-1)])])):m("",!0),(o(!0),n(b,null,T(De.value,l=>(o(),n("tr",{key:l.recorded_at,class:"hover:bg-zinc-700/30 transition-colors group text-zinc-400"},[e("td",Kn,a(Oe(l.recorded_at)),1),e("td",Xn,a(l.avg_processing_time_min.toFixed(2))+" min",1),e("td",Wn,a(l.total_processed),1),e("td",Qn,a(l.success_count),1),e("td",Yn,a(l.failure_count),1),e("td",Jn,a(l.download_fail_count),1),e("td",Zn,a(l.analysis_fail_count),1)]))),128))])])]),e("div",ei,[r(Ee,{total:Se.value,currentPage:Fe.value,"onUpdate:currentPage":[t[15]||(t[15]=l=>Fe.value=l),vt],limit:Te.value,show:Se.value>Te.value,queryParam:"aiHistoryPage"},null,8,["total","currentPage","limit","show"])])])])}}});
1export{ni 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.