internal/dashboard/frontend/dist/assets/useChartData-Bg6PjNwS.js

import{Nt as e,Pt as t,Wt as n,sn as r,tn as i,vt as a}from"./_plugin-vue_export-helper-Df8BHgqR.js";import{A as o,O as s,T as c,_ as l,i as u,x as d}from"./index-BanWZHpm.js";function f(f){let p=d(),m=a(()=>r(f.filters)||p.state),h=a(()=>r(f.enabled)??!0),g=a(()=>l(m.value)),_=i(!0),v=i([]),y=i(null);async function b(){if(h.value){_.value=!0,y.value=null;try{let e=await fetch(`${c()}/api/events?${g.value}`);if(!e.ok)throw Error(`HTTP error! status: ${e.status}`);v.value=((await e.json()).events??[]).filter(e=>e.remote_addr).map(o).sort((e,t)=>e.time.getTime()-t.time.getTime()),f.onLoaded?.()}catch(e){y.value=e instanceof Error?e:Error(String(e)),v.value=[]}finally{_.value=!1}}}let{connect:x,disconnect:S,connectionStatus:C}=u(e=>{if(!h.value)return;let t=s(e,m.value);if(t.length===0)return;let n=t.filter(e=>e.remote_addr).map(o).sort((e,t)=>e.time.getTime()-t.time.getTime());v.value.push(...n),f.onLoaded?.()});return t(()=>{h.value&&b()}),e(()=>{v.value=[]}),n(()=>[g.value,h.value],([e,t],[n,r])=>{t&&(e!==n||!r)&&b()}),{loading:_,chartData:v,error:y,fetchData:b,queryString:g,connectionStatus:C,connect:x,disconnect:S}}export{f as t};