PageSourceSearch

https://fraudspy.com.bd/build/assets/Index-CBkOHhkv.js

js fraudspy.com.bd collected 2026-10-01 12:14:27 UTC 25,160 bytes, 3 lines download raw bytes

1import{d as H,r as d,s as U,w as J,e as a,b as o,k as E,l as F,m as K,p as W,g as e,f as u,h as c,t as l,v as _,x as B,G as Y,z as g,F as v,y as w,c as X,D as Z,E as R,q as I}from"./app-D0fs7bu7.js";import{_ as ee}from"./AppLayout.vue_vue_type_script_setup_true_lang-CLnk0tKS.js";import{l as te}from"./lodash-B9V3dPe8.js";/* empty css            */import"./Primitive-B-7kMMzx.js";import"./VisuallyHidden-OUinVFht.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./createLucideIcon-CAMkqPlT.js";const se={class:"min-h-screen bg-[#0f172a] p-4 text-slate-200 sm:p-6 lg:p-8 font-sans"},le={key:0,class:"mb-6 rounded-2xl border border-rose-500/30 bg-rose-500/5 p-4 shadow-xl backdrop-blur-xl flex items-start gap-3"},oe={class:"mb-8 flex flex-col gap-6 lg:flex-row lg:items-end lg:justify-between"},ae={class:"grid grid-cols-2 gap-3 sm:grid-cols-3 lg:grid-cols-6 w-full lg:w-auto"},ne={class:"rounded-xl border border-slate-700 bg-slate-800/50 p-3 backdrop-blur-md min-w-[110px]"},re={class:"text-lg font-bold text-white"},ie={class:"rounded-xl border border-slate-700 bg-slate-800/50 p-3 backdrop-blur-md min-w-[110px]"},de={class:"text-lg font-bold text-amber-400 flex items-center gap-1.5"},ue={key:0,class:"flex h-2 w-2 rounded-full bg-amber-400 animate-ping"},ce={class:"rounded-xl border border-slate-700 bg-slate-800/50 p-3 backdrop-blur-md min-w-[110px]"},xe={class:"text-lg font-bold text-cyan-400"},be={class:"rounded-xl border border-slate-700 bg-slate-800/50 p-3 backdrop-blur-md min-w-[110px]"},pe={class:"text-lg font-bold text-emerald-400"},fe={class:"rounded-xl border border-slate-700 bg-slate-800/50 p-3 backdrop-blur-md min-w-[110px]"},ge={class:"text-lg font-bold text-rose-500"},ve={class:"rounded-xl border border-slate-700 bg-slate-800/50 p-3 backdrop-blur-md min-w-[110px]"},me={class:"text-lg font-bold text-violet-400"},he={class:"sticky top-4 z-20 mb-6 rounded-2xl border border-slate-700 bg-slate-800/80 p-4 shadow-2xl backdrop-blur-xl"},ye={class:"grid gap-4 md:grid-cols-2 lg:grid-cols-6"},_e={class:"relative col-span-1 md:col-span-2 lg:col-span-2"},we={class:"overflow-hidden rounded-2xl border border-slate-700 bg-slate-800/30 shadow-xl"},ke={class:"overflow-x-auto"},De={class:"w-full text-left text-sm text-slate-400"},Se={class:"bg-slate-900/50 text-xs uppercase text-slate-500 font-bold tracking-wider"},Ce={class:"divide-y divide-slate-700/50"},je={class:"px-6 py-4"},qe={class:"font-mono font-semibold text-white break-all max-w-[200px]"},Be={class:"text-[10px] text-slate-500"},Le={class:"px-6 py-4"},Te={class:"font-medium text-slate-300"},$e={class:"text-xs font-mono text-slate-500"},Ne={class:"px-6 py-4"},Ae={key:0,class:"font-medium text-cyan-400"},Me={key:1,class:"text-slate-600 italic"},Ue={class:"font-mono text-xs text-slate-500"},Ee={class:"px-6 py-4 text-center"},Fe={class:"font-bold text-slate-200"},Re={class:"text-[10px] text-slate-500"},Ie={class:"px-6 py-4 text-center"},ze={key:0,class:"flex flex-col items-center gap-1"},Pe={class:"text-[10px] font-semibold text-cyan-300"},Ve={key:1,class:"flex flex-col items-center gap-1"},Qe={key:2,class:"flex justify-center"},Oe={key:3,class:"flex justify-center"},Ge={key:4,class:"flex justify-center"},He={class:"inline-flex items-center rounded-full bg-slate-700 px-2 py-0.5 text-xs font-bold text-slate-300 uppercase"},Je={class:"px-6 py-4 text-xs font-mono text-slate-300"},Ke={class:"px-6 py-4 text-center"},We={class:"text-sm font-semibold text-slate-200"},Ye={key:0,class:"text-[9px] text-slate-600 font-mono leading-tight"},Xe={class:"px-6 py-4 text-right font-mono text-xs"},Ze={class:"flex flex-col gap-1.5 items-end"},et={class:"flex flex-wrap gap-1.5 justify-end"},tt=["onClick"],st=["onClick"],lt={key:0,class:"text-[9px] text-slate-500 break-all max-w-[150px] ml-auto"},ot={key:1,class:"text-[9px] text-slate-600 italic"},at={key:0},nt={key:0,class:"border-t border-slate-700 bg-slate-800/50 p-4"},rt={class:"flex flex-col sm:flex-row items-center justify-between gap-4"},it={class:"text-xs text-slate-500"},dt={class:"flex flex-wrap gap-1"},ut={class:"w-full max-w-5xl overflow-hidden rounded-2xl border border-slate-700 bg-slate-900 shadow-2xl animate-in zoom-in-95 flex flex-col max-h-[85vh]"},ct={class:"flex items-center justify-between border-b border-slate-800 bg-slate-900/50 px-6 py-4"},xt={class:"text-lg font-bold text-white flex items-center gap-2"},bt={class:"text-cyan-400 font-mono"},pt={class:"p-6 overflow-y-auto flex-1 bg-[#0b0f19]"},ft={key:0,class:"flex flex-col items-center justify-center py-16 text-slate-400"},gt={key:1},vt={key:0,class:"space-y-6"},mt={key:0,class:"rounded-xl border border-rose-500/20 bg-rose-500/[0.03] p-3 text-xs text-rose-300 flex items-center gap-2"},ht={key:1,class:"grid gap-3 grid-cols-2 lg:grid-cols-4"},yt={class:"flex justify-between items-center mb-2"},_t={class:"text-xs font-bold uppercase tracking-wider text-slate-400"},wt={class:"text-[10px] text-slate-500 font-mono"},kt={class:"space-y-2"},Dt={class:"flex justify-between items-baseline"},St={class:"text-base font-black font-mono text-cyan-400"},Ct={class:"flex justify-between text-xs mb-1"},jt={class:"font-bold text-emerald-400"},qt={class:"w-full bg-slate-800 rounded-full h-1.5 overflow-hidden"},Bt={class:"flex justify-between text-xs mb-1"},Lt={class:"font-bold text-violet-400"},Tt={class:"w-full bg-slate-800 rounded-full h-1.5 overflow-hidden"},$t={class:"flex items-center justify-between border-b border-slate-800/80 pb-2 pt-2"},Nt={class:"text-xs text-slate-500"},At={class:"flex flex-col sm:flex-row justify-between items-start sm:items-center gap-2 mb-3 pb-3 border-b border-slate-800/80"},Mt={class:"flex items-center gap-2.5"},Ut={class:"text-lg font-bold text-white font-mono flex items-center gap-1.5"},Et={class:"text-xs text-slate-500"},Ft={class:"flex flex-wrap gap-3 text-xs"},Rt={class:"font-mono text-cyan-400 font-bold"},It={class:"font-bold text-emerald-400"},zt={class:"font-bold text-rose-400"},Pt={class:"grid gap-3 sm:grid-cols-2 lg:grid-cols-4"},Vt={class:"flex justify-between items-center mb-2"},Qt={class:"font-bold uppercase tracking-wider text-slate-200"},Ot={class:"space-y-1.5 text-slate-400 font-mono text-[11px] mb-2"},Gt={class:"flex justify-between"},Ht={class:"text-slate-200 capitalize font-semibold"},Jt={class:"flex justify-between"},Kt={class:"text-slate-200"},Wt={key:0,class:"flex justify-between"},Yt={class:"text-emerald-400 font-bold"},Xt={key:0,class:"mt-1 pt-1.5 border-t border-rose-500/10 flex flex-col gap-1.5"},Zt={class:"text-rose-400 line-clamp-2 leading-snug break-words"},es=["onClick"],ts={key:1,class:"py-16 text-center text-slate-500"},ss={class:"border-t border-slate-800 bg-slate-900/50 px-6 py-4 text-right"},ls={class:"w-full max-w-3xl overflow-hidden rounded-2xl border border-indigo-500/30 bg-[#121214] shadow-2xl animate-in zoom-in-95 flex flex-col max-h-[80vh]"},os={class:"flex items-center justify-between border-b border-white/10 bg-white/5 px-6 py-4"},as={class:"text-lg font-bold text-white flex items-center gap-2"},ns={class:"text-indigo-400 uppercase font-mono"},rs={class:"p-6 overflow-y-auto flex-1 bg-black/40"},is={class:"grid grid-cols-2 gap-4 mb-4 text-xs font-mono"},ds={class:"rounded border border-white/5 bg-white/[0.02] p-2.5"},us={class:"text-rose-400 font-bold"},cs={class:"rounded border border-white/5 bg-white/[0.02] p-2.5"},xs={class:"mb-4"},bs={class:"rounded-lg border border-rose-500/20 bg-rose-950/20 p-4 font-mono text-xs text-rose-300 leading-relaxed break-words"}
1,ps={key:0,class:"mb-4"},fs={class:"w-full overflow-x-auto rounded-lg border border-slate-800 bg-black p-4 text-xs font-mono text-green-400 leading-relaxed shadow-inner break-all whitespace-pre-wrap"},gs={key:1,class:"mb-4"},vs={class:"w-full overflow-x-auto rounded-lg border border-slate-800 bg-black p-4 text-xs font-mono text-rose-400 leading-relaxed shadow-inner break-all whitespace-pre-wrap"},ms={class:"bg-white/5 px-6 py-4 text-right"},js=H({__name:"Index",props:{queues:{},filters:{},stats:{},subprocess_enabled:{type:Boolean}},setup(i){const b=i,k=d(b.filters.search||""),D=d(b.filters.status||""),S=d(b.filters.min_numbers||""),C=d(b.filters.date_from||""),j=d(b.filters.date_to||""),f=d(b.filters.sort||"id"),p=d(b.filters.direction||"desc"),z=te.debounce(()=>{U.get("/superadmin/bulk-queues",{search:k.value,status:D.value,min_numbers:S.value,date_from:C.value,date_to:j.value,sort:f.value,direction:p.value},{preserveState:!0,preserveScroll:!0})},400);J([k,D,S,C,j,f,p],()=>{z()});const L=r=>{f.value===r?p.value=p.value==="desc"?"asc":"desc":(f.value=r,p.value="desc")},N=r=>r?new Date(r).toLocaleString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"}):"-",P=(r,t)=>{if(!r||!t)return"-";const s=new Date(t).getTime()-new Date(r).getTime();if(s<0)return"-";const n=Math.floor(s/1e3);if(n<60)return`${n}s`;const M=Math.floor(n/60),G=n%60;return`${M}m ${G}s`},V=(r,t)=>{confirm(`Are you sure you want to cancel bulk search batch #${t}? This will stop any ongoing progress.`)&&U.post(`/superadmin/bulk-queues/${r}/cancel`,{},{preserveScroll:!0})},m=d(!1),A=d(""),T=d(!1),h=d([]),q=d([]),$=d(!0),Q=async r=>{A.value=r,m.value=!0,T.value=!0,h.value=[],q.value=[],$.value=!0;try{const s=await(await fetch(`/superadmin/bulk-queues/${r}/details`)).json();h.value=s.searches||[],q.value=s.courier_stats||[],$.value=s.subprocess_enabled!==!1}catch(t){console.error("Failed to load batch details",t)}finally{T.value=!1}},y=d(!1),x=d(null),O=r=>{x.value=r,y.value=!0};return(r,t)=>(o(),a(v,null,[E(F(K),{title:"Bulk Search Queue Logs"}),E(ee,null,{default:W(()=>[e("div",se,[b.subprocess_enabled?u("",!0):(o(),a("div",le,[...t[14]||(t[14]=[e("div",{class:"flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-rose-500/10 text-rose-400 border border-rose-500/20"},[e("i",{class:"fa-solid fa-triangle-exclamation text-lg"})],-1),e("div",null,[e("h4",{class:"text-sm font-bold text-rose-300"},"Artisan Subprocess execution is disabled or unavailable"),e("p",{class:"text-xs text-slate-400 mt-0.5 leading-relaxed font-sans"},[c(" The server's "),e("code",null,"proc_open"),c(" function is disabled or unavailable. As a fallback, bulk searches will execute inline sequentially. This is significantly slower and may cause execution timeouts or server sluggishness during large bulk search operations. ")])],-1)])])),e("div",oe,[t[21]||(t[21]=e("div",null,[e("h1",{class:"text-3xl font-black tracking-tighter text-transparent bg-clip-text bg-gradient-to-r from-cyan-400 to-indigo-500 flex items-center gap-2"},[e("i",{class:"fa-solid fa-boxes-stacked mr-1"}),c("Bulk Search Monitor ")]),e("p",{class:"text-slate-400 mt-1 text-sm"},"Monitor bulk search queue runs, statuses, and analyze client activity.")],-1)),e("div",ae,[e("div",ne,[t[15]||(t[15]=e("div",{class:"text-[10px] uppercase tracking-wider text-slate-500"},"Total Batches",-1)),e("div",re,l(i.stats.total_batches.toLocaleString()),1)]),e("div",ie,[t[16]||(t[16]=e("div",{class:"text-[10px] uppercase tracking-wider text-slate-500"},"Running",-1)),e("div",de,[i.stats.running_batches>0?(o(),a("span",ue)):u("",!0),c(" "+l(i.stats.running_batches),1)])]),e("div",ce,[t[17]||(t[17]=e("div",{class:"text-[10px] uppercase tracking-wider text-slate-500"},"Queued",-1)),e("div",xe,l(i.stats.pending_batches),1)]),e("div",be,[t[18]||(t[18]=e("div",{class:"text-[10px] uppercase tracking-wider text-slate-500"},"Completed",-1)),e("div",pe,l(i.stats.completed_batches),1)]),e("div",fe,[t[19]||(t[19]=e("div",{class:"text-[10px] uppercase tracking-wider text-slate-500"},"Failed",-1)),e("div",ge,l(i.stats.failed_batches),1)]),e("div",ve,[t[20]||(t[20]=e("div",{class:"text-[10px] uppercase tracking-wider text-slate-500"},"Total Phones",-1)),e("div",me,l(i.stats.total_phones_scanned.toLocaleStr
1ing()),1)])])]),e("div",he,[e("div",ye,[e("div",_e,[_(e("input",{"onUpdate:modelValue":t[0]||(t[0]=s=>k.value=s),type:"text",placeholder:"Search User, Business Name/UID or Code...",class:"w-full rounded-lg border-slate-600 bg-slate-900/50 py-2 pl-9 pr-3 text-sm text-white placeholder-slate-500 focus:border-cyan-500 focus:ring-1 focus:ring-cyan-500"},null,512),[[B,k.value]]),t[22]||(t[22]=e("i",{class:"fa-solid fa-search absolute left-3 top-3 text-slate-500 text-xs"},null,-1))]),e("div",null,[_(e("select",{"onUpdate:modelValue":t[1]||(t[1]=s=>D.value=s),class:"w-full rounded-lg border-slate-600 bg-slate-900/50 py-2 text-sm text-white focus:border-cyan-500 focus:ring-1 focus:ring-cyan-500"},[...t[23]||(t[23]=[e("option",{value:""},"All Statuses",-1),e("option",{value:"pending"},"Pending / Queued",-1),e("option",{value:"running"},"Running",-1),e("option",{value:"done"},"Completed",-1),e("option",{value:"failed"},"Failed",-1)])],512),[[Y,D.value]])]),e("div",null,[_(e("input",{"onUpdate:modelValue":t[2]||(t[2]=s=>S.value=s),type:"number",placeholder:"Min Phones Count...",class:"w-full rounded-lg border-slate-600 bg-slate-900/50 py-2 px-3 text-sm text-white placeholder-slate-500 focus:border-cyan-500 focus:ring-1 focus:ring-cyan-500"},null,512),[[B,S.value]])]),e("div",null,[_(e("input",{"onUpdate:modelValue":t[3]||(t[3]=s=>C.value=s),type:"date",class:"w-full rounded-lg border-slate-600 bg-slate-900/50 py-2 px-3 text-sm text-white focus:border-cyan-500 focus:ring-1 focus:ring-cyan-500",title:"Queued Date From"},null,512),[[B,C.value]])]),e("div",null,[_(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>j.value=s),type:"date",class:"w-full rounded-lg border-slate-600 bg-slate-900/50 py-2 px-3 text-sm text-white focus:border-cyan-500 focus:ring-1 focus:ring-cyan-500",title:"Queued Date To"},null,512),[[B,j.value]])])])]),e("div",we,[e("div",ke,[e("table",De,[e("thead",Se,[e("tr",null,[e("th",{class:"px-6 py-4 cursor-pointer hover:text-white transition-colors",onClick:t[5]||(t[5]=s=>L("id"))},[t[24]||(t[24]=c(" Batch Code ",-1)),e("i",{class:g(["fa-solid",f.value==="id"?p.value==="asc"?"fa-sort-up":"fa-sort-down":"fa-sort"])},null,2)]),t[27]||(t[27]=e("th",{class:"px-6 py-4"},"User Details",-1)),t[28]||(t[28]=e("th",{class:"px-6 py-4"},"Business Info",-1)),e("th",{class:"px-6 py-4 text-center cursor-pointer hover:text-white transition-colors",onClick:t[6]||(t[6]=s=>L("numbers"))},[t[25]||(t[25]=c(" Phones ",-1)),e("i",{class:g(["fa-solid",f.value==="numbers"?p.value==="asc"?"fa-sort-up":"fa-sort-down":"fa-sort"])},null,2)]),t[29]||(t[29]=e("th",{class:"px-6 py-4 text-center"},"Status / Position",-1)),e("th",{class:"px-6 py-4 cursor-pointer hover:text-white transition-colors",onClick:t[7]||(t[7]=s=>L("queued_at"))},[t[26]||(t[26]=c(" Queued At ",-1)),e("i",{class:g(["fa-solid",f.value==="queued_at"?p.value==="asc"?"fa-sort-up":"fa-sort-down":"fa-sort"])},null,2)]),t[30]||(t[30]=e("th",{class:"px-6 py-4 text-center"},"Duration",-1)),t[31]||(t[31]=e("th",{class:"px-6 py-4 text-right"},"Actions / Job Batch",-1))])]),e("tbody",Ce,[(o(!0),a(v,null,w(i.queues.data,s=>(o(),a("tr",{key:s.id,class:"group transition-colors hover:bg-slate-700/30"},[e("td",je,[e("div",qe,l(s.code),1),e("div",Be,"ID: #"+l(s.id),1)]),e("td",Le,[e("div",Te,l(s.user_name||"N/A"),1),e("div",$e,l(s.user_email||"-"),1)]),e("td",Ne,[s.business_name?(o(),a("div",Ae,l(s.business_name),1)):(o(),a("div",Me,"No Business")),e("div",Ue,l(s.business_uid||"-"),1)]),e("td",Ee,[e("div",Fe,l(s.numbers),1),e("div",Re,"chunk size: "+l(s.chunk_size),1)]),e("td",Ie,[s.status==="pending"?(o(),a("div",ze,[t[32]||(t[32]=e("span",{class:"inline-flex items-center rounded-full bg-cyan-500/10 px-2.5 py-0.5 text-xs font-bold text-cyan-400 border border-cyan-500/30"}," QUEUED ",-1)),e("span",Pe," Queue Position: #"+l(s.queue_position),1)])):s.status==="running"?(o(),a("div",Ve,[...t[33]||(t[33]=[e("span",{class:"inline-flex items-center rounded-full bg-amber-500/10 px-2.5 py-0.5 text-xs font-bold text-amber-400 border border-amber-500/30 animate-pulse"}," RUNNING ",-1),e("span",{class:"text-[9px] text-amber-500 font-mono tracking-widest uppercase"},"Processing",-1)])])):s.status==="done"?(o(),a("div",Qe,[...t[34]||(t[34]=[e("span",{class:"inline-flex items-center rounded-full bg-emerald-500/10 px-2.5 py-0.5 text-xs font-bold text-emerald-400 border border-emerald-500/30"}," COMPLETED ",-1)])])):s.status==="failed"?(o(),a("div",Oe,[...t[35]||(t[35]=[e("span",{class:"inline-flex items-center rounded-full bg-rose-500/10 px-2.5 py-0.5 text-xs font-bold text-rose-400 border border-rose-500/30"}," FAILED ",-1)])])):(o(),a("div",Ge,[e("span",He,l(s.status),1)]))]),e("td",Je,l(N(s.queued_at)),1),e("td",Ke,[e("div",We,l(P(s.started_at,s.finished_at)),1),s.started_at?(o(),a("div",Ye,l(N(s.started_at)),1)):u("",!0)]),e("td",Xe,[e("div",Ze,[e("div",et,[e("button",{onClick:n=>
1Q(s.code),class:"inline-flex items-center rounded-lg bg-indigo-500/20 px-2.5 py-1 text-xs font-semibold text-indigo-300 transition-all hover:bg-indigo-600 hover:text-white"},[...t[36]||(t[36]=[e("i",{class:"fa-solid fa-bug mr-1"},null,-1),c(" Inspect ",-1)])],8,tt),s.status==="pending"||s.status==="running"?(o(),a("button",{key:0,onClick:n=>V(s.id,s.code),class:"inline-flex items-center rounded-lg bg-rose-500/20 px-2.5 py-1 text-xs font-semibold text-rose-300 transition-all hover:bg-rose-600 hover:text-white"},[...t[37]||(t[37]=[e("i",{class:"fa-solid fa-ban mr-1"},null,-1),c(" Cancel ",-1)])],8,st)):u("",!0)]),s.job_batch_id?(o(),a("div",lt," Batch: "+l(s.job_batch_id),1)):(o(),a("div",ot,"No Batch ID"))])])]))),128)),i.queues.data.length===0?(o(),a("tr",at,[...t[38]||(t[38]=[e("td",{colspan:"8",class:"py-16 text-center text-slate-500"},[e("i",{class:"fa-solid fa-boxes-packing text-5xl mb-4 opacity-20 block"}),e("p",{class:"text-base font-semibold"},"No bulk search queue entries found."),e("p",{class:"text-sm mt-1"},"Try relaxing your filter criteria or check if users have initiated bulk searches.")],-1)])])):u("",!0)])])]),i.queues.data.length>0?(o(),a("div",nt,[e("div",rt,[e("div",it," Showing "+l(i.queues.from)+" to "+l(i.queues.to)+" of "+l(i.queues.total)+" entries ",1),e("div",dt,[(o(!0),a(v,null,w(i.queues.links,(s,n)=>(o(),X(F(Z),{key:n,href:s.url||"#",class:g(["rounded px-3 py-1.5 text-xs transition-colors",[s.active?"bg-cyan-500 text-white font-bold":"text-slate-400 hover:bg-slate-700",s.url?"":"opacity-50 cursor-not-allowed pointer-events-none"]]),innerHTML:s.label},null,8,["href","class","innerHTML"]))),128))])])])):u("",!0)])]),m.value?(o(),a("div",{key:0,class:"fixed inset-0 z-40 flex items-center justify-center bg-black/80 backdrop-blur-sm p-4",onClick:t[10]||(t[10]=R(s=>m.value=!1,["self"]))},[e("div",ut,[e("div",ct,[e("h3",xt,[t[40]||(t[40]=e("i",{class:"fa-solid fa-boxes-stacked text-cyan-400"},null,-1)),e("span",null,[t[39]||(t[39]=c("Batch Logs: ",-1)),e("span",bt,l(A.value),1)])]),e("button",{onClick:t[8]||(t[8]=s=>m.value=!1),class:"text-slate-400 hover:text-white transition-colors"},[...t[41]||(t[41]=[e("i",{class:"fa-solid fa-xmark text-xl"},null,-1)])])]),e("div",pt,[T.value?(o(),a("div",ft,[...t[42]||(t[42]=[e("i",{class:"fa-solid fa-spinner animate-spin text-4xl mb-4 text-cyan-400"},null,-1),e("p",{class:"text-sm font-semibold"},"Loading batch search logs...",-1)])])):(o(),a("div",gt,[h.value.length>0?(o(),a("div",vt,[$.value?u("",!0):(o(),a("div",mt,[...t[43]||(t[43]=[e("i",{class:"fa-solid fa-triangle-exclamation text-rose-400"},null,-1),e("span",null,[e("strong",null,"Warning:"),c(" Artisan Subprocess is disabled. Bulk searches are executing inline sequentially (slower).")],-1)])])),q.value.length>0?(o(),a("div",ht,[(o(!0),a(v,null,w(q.value,s=>(o(),a("div",{key:s.courier,class:"rounded-xl border border-slate-800/85 bg-slate-900/60 p-4 shadow-sm relative overflow-hidden group hover:border-slate-700/80 transition-all"},[t[47]||(t[47]=e("div",{class:"absolute inset-x-0 top-0 h-[2px] bg-gradient-to-r from-cyan-500 to-indigo-500 opacity-60"},null,-1)),e("div",yt,[e("span",_t,l(s.courier),1),e("span",wt,l(s.total_requests)+" queries",1)]),e("div",kt,[e("div",Dt,[t[44]||(t[44]=e("span",{class:"text-xs text-slate-500"},"Avg Latency:",-1)),e("span",St,l(s.avg_latency)+"ms",1)]),e("div",null,[e("div",Ct,[t[45]||(t[45]=e("span",{class:"text-slate-500"},"Success Rate:",-1)),e("span",jt,l(s.success_rate)+"%",1)]),e("div",qt,[e("div",{class:"bg-emerald-500 h-1.5 rounded-full transition-all",style:I({width:s.success_rate+"%"})},null,4)])]),e("div",null,[e("div",Bt,[t[46]||(t[46]=e("span",{class:"text-slate-500"},"DB Fallback:",-1)),e("span",Lt,l(s.db_fallback_rate)+"%",1)]),e("div",Tt,[e("div",{class:"bg-violet-500 h-1.5 rounded-full transition-all",style:I({width:s.db_fallback_rate+"%"})},null,4)])])])]))),128))])):u("",!0),e("div",$t,[t[48]||(t[48]=e("h4",{class:"text-xs font-bold text-slate-500 uppercase tracking-wider"},"Number-Level Diagnostic Breakdown",-1)),e("span",Nt,"Total phones: "+l(h.value.length),1)]),(o(!0),a(v,null,w(h.value,s=>(o(),a("div",{key:s.id,class:"border border-slate-800/80 rounded-xl bg-slate-900/40 p-4 shadow-sm"},[e("div",At,[e("div",Mt,[e("span",Ut,[t[49]||(t[49]=e("i",{class:"fa-solid fa-phone text-slate-500 text-sm"},null,-1)),c(" "+l(s.phone),1)]),e("span",Et,"Search ID: #"+l(s.id),1)]),e("div",Ft,[e("div",null,[t[50]||
1(t[50]=e("span",{class:"text-slate-500"},"Latency: ",-1)),e("span",Rt,l(s.server_ms)+"ms",1)]),e("div",null,[t[51]||(t[51]=e("span",{class:"text-slate-500"},"Stats: ",-1)),e("span",It,l(s.overall_successful)+" S",1),t[52]||(t[52]=e("span",{class:"text-slate-600 mx-0.5"},"/",-1)),e("span",zt,l(s.overall_returned)+" R",1)])])]),e("div",Pt,[(o(!0),a(v,null,w(s.items,n=>(o(),a("div",{key:n.courier,class:g(["rounded-lg p-3 border text-xs flex flex-col justify-between",n.ok?"border-emerald-500/20 bg-emerald-500/[0.02]":"border-rose-500/20 bg-rose-500/[0.02]"])},[e("div",Vt,[e("span",Qt,l(n.courier),1),e("span",{class:g(["rounded px-1.5 py-0.5 text-[9px] font-bold uppercase tracking-wide",n.ok?"bg-emerald-500/10 text-emerald-400 border border-emerald-500/20":"bg-rose-500/10 text-rose-400 border border-rose-500/20"])},l(n.ok?"OK":"FAILED"),3)]),e("div",Ot,[e("div",Gt,[t[53]||(t[53]=e("span",null,"Source:",-1)),e("span",Ht,l(n.path==="db_fallback"?"DB Fallback":"Real-time API"),1)]),e("div",Jt,[t[54]||(t[54]=e("span",null,"Latency:",-1)),e("span",Kt,l(n.ms)+"ms",1)]),n.ok?(o(),a("div",Wt,[t[55]||(t[55]=e("span",null,"Delivery:",-1)),e("span",Yt,l(n.successful)+"/"+l(n.total),1)])):u("",!0)]),n.ok?u("",!0):(o(),a("div",Xt,[e("div",Zt,l(n.extra?.error||"Unknown error"),1),n.extra?(o(),a("button",{key:0,onClick:M=>O(n),class:"mt-1 w-full text-center rounded bg-rose-500/10 hover:bg-rose-500/20 text-rose-300 font-semibold py-1 transition-colors text-[10px]"},[...t[56]||(t[56]=[e("i",{class:"fa-solid fa-bug mr-1"},null,-1),c(" Inspect cURL Log ",-1)])],8,es)):u("",!0)]))],2))),128))])]))),128))])):(o(),a("div",ts,[...t[57]||(t[57]=[e("i",{class:"fa-solid fa-inbox text-5xl mb-3 opacity-20"},null,-1),e("p",{class:"text-base font-semibold"},"No number-level logs recorded yet for this batch.",-1),e("p",{class:"text-sm mt-1"},"This can happen if the batch is still pending in queue and hasn't started searching numbers.",-1)])]))]))]),e("div",ss,[e("button",{onClick:t[9]||(t[9]=s=>m.value=!1),class:"rounded-lg bg-slate-700 px-4 py-2 text-sm text-white hover:bg-slate-600 transition-colors"}," Close Logs ")])])])):u("",!0),y.value?(o(),a("div",{key:1,class:"fixed inset-0 z-50 flex items-center justify-center bg-black/95 backdrop-blur-md p-4",onClick:t[13]||(t[13]=R(s=>y.value=!1,["self"]))},[e("div",ls,[e("div",os,[e("h3",as,[t[59]||(t[59]=e("i",{class:"fa-solid fa-code text-indigo-400"},null,-1)),e("span",null,[t[58]||(t[58]=c("cURL Debugger: ",-1)),e("span",ns,l(x.value?.courier),1)])]),e("button",{onClick:t[11]||(t[11]=s=>y.value=!1),class:"text-slate-400 hover:text-white transition-colors"},[...t[60]||(t[60]=[e("i",{class:"fa-solid fa-xmark text-xl"},null,-1)])])]),e("div",rs,[e("div",is,[e("div",ds,[t[61]||(t[61]=e("span",{class:"text-slate-500 block uppercase mb-1"},"Status Code",-1)),e("span",us,l(x.value?.extra?.status||"N/A"),1)]),e("div",cs,[t[62]||(t[62]=e("span",{class:"text-slate-500 block uppercase mb-1"},"Rate Limited",-1)),e("span",{class:g(x.value?.extra?.rate_limited?"text-amber-400 font-bold":"text-slate-400")},l(x.value?.extra?.rate_limited?"YES":"NO"),3)])]),e("div",xs,[t[63]||(t[63]=e("span",{class:"text-xs font-bold uppercase text-slate-500 block mb-1.5"},"Error Message",-1)),e("div",bs,l(x.value?.extra?.error||"N/A"),1)]),x.value?.extra?.out_snip?(o(),a("div",ps,[t[64]||(t[64]=e("span",{class:"text-xs font-bold uppercase text-slate-500 block mb-1.5"},"Artisan Output Snippet (STDOUT)",-1)),e("pre",fs,"              "+l(x.value.extra.out_snip)+`
2            `,1)])):u("",!0),x.value?.extra?.err_snip?(o(),a("div",gs,[t[65]||(t[65]=e("span",{class:"text-xs font-bold uppercase text-slate-500 block mb-1.5"},"Artisan Error Output (STDERR)",-1)),e("pre",vs,"              "+l(x.value.extra.err_snip)+`
3            `,1)])):u("",!0)]),e("div",ms,[e("button",{onClick:t[12]||(t[12]=s=>y.value=!1),class:"rounded-lg bg-slate-700 px-4 py-2 text-sm text-white hover:bg-slate-600 transition-colors"}," Close Debugger ")])])])):u("",!0)]),_:1})],64))}});export{js 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.