import{a as m}from"./chunk-IWMMFNSQ.js";import{b as N}from"./chunk-F7TB6D2I.js";import{C as o,D as h,Kc as u,N as d,R as l,X as r,l as c,ta as s,v as f,y as p}from"./chunk-5ONOZUNN.js";var v=class n{#e=r(N);#n=r(m);serverState=u(()=>{let t=this.#n.serverState();return t?.LastNotificationUpdateID&&this.updateLastNotificationEventId(t?.LastNotificationUpdateID),t});#o=s(-1);#s=s(!1);#t=s([]);#i=s([]);notifications=this.#t.asReadonly();init(){this.notifications().length===0&&this.getNotifications()}updateLastNotificationEventId(t){this.#o()!==t&&(this.#o.set(t),this.getNotifications())}getNotifications(){this.#s.set(!0),this.#e.getApiV1Notifications().pipe(o(1),d(t=>this.#t.set(t)),h(()=>this.#s.set(!1))).subscribe()}getNofication(t){this.#e.getApiV1NotificationById({id:t}).pipe(o(1)).subscribe()}deleteNotification(t){let i=this.#t(),e=i[t];this.#i.set(i),i.splice(t,1),this.#t.set(i),this.#e.deleteApiV1NotificationById({id:e.ID}).pipe(o(1)).subscribe({error:()=>{this.#t.set(this.#i()),this.#i.set([])}})}deleteAllNotifications(){let t=this.#t();this.#i.set(t),this.#t.set([]);let i=t.map(e=>this.#e.deleteApiV1NotificationById({id:e.ID}).pipe(p(()=>c(e))));f(i).pipe(o(1)).subscribe({next:e=>{let b=e.filter(a=>a!=null&&"ID"in a);this.#t.set(b),this.#i.set([])},error:()=>{this.#t.set(this.#i()),this.#i.set([])}})}static \u0275fac=function(i){return new(i||n)};static \u0275prov=l({token:n,factory:n.\u0275fac,providedIn:"root"})};export{v as a};
