daimon 0.4.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/CHANGELOG.md +231 -0
  2. package/dist/cli.js +71 -58
  3. package/dist/dashboard/3rdpartylicenses.txt +461 -0
  4. package/dist/dashboard/browser/chunk-4VNZXWQZ.js +3 -0
  5. package/dist/dashboard/browser/chunk-4ZR4NTJW.js +1 -0
  6. package/dist/dashboard/browser/chunk-7L4DWDGL.js +4 -0
  7. package/dist/dashboard/browser/chunk-BLNPJ4WD.js +4 -0
  8. package/dist/dashboard/browser/chunk-E3HUMJ6S.js +6 -0
  9. package/dist/dashboard/browser/chunk-EBOHC6KX.js +1 -0
  10. package/dist/dashboard/browser/chunk-ESDYJ3BP.js +1 -0
  11. package/dist/dashboard/browser/chunk-JUZHAE4L.js +2 -0
  12. package/dist/dashboard/browser/chunk-K43KW4K2.js +4 -0
  13. package/dist/dashboard/browser/chunk-K46KCL6L.js +1 -0
  14. package/dist/dashboard/browser/chunk-KDCKLTCZ.js +1 -0
  15. package/dist/dashboard/browser/chunk-L63FHXGH.js +4 -0
  16. package/dist/dashboard/browser/chunk-LBRCWYRN.js +3 -0
  17. package/dist/dashboard/browser/chunk-MHOSWLRR.js +3 -0
  18. package/dist/dashboard/browser/chunk-N5GRSTMJ.js +6 -0
  19. package/dist/dashboard/browser/chunk-NDSAQ2HK.js +1 -0
  20. package/dist/dashboard/browser/chunk-NN2YNLGP.js +3 -0
  21. package/dist/dashboard/browser/chunk-PJPGLT4T.js +1 -0
  22. package/dist/dashboard/browser/chunk-R6J2WYUD.js +1 -0
  23. package/dist/dashboard/browser/chunk-T2YKGOEM.js +3 -0
  24. package/dist/dashboard/browser/chunk-U6AY7XZK.js +5 -0
  25. package/dist/dashboard/browser/chunk-UC3XMN2Y.js +1 -0
  26. package/dist/dashboard/browser/chunk-UNT27XFJ.js +2 -0
  27. package/dist/dashboard/browser/chunk-V2CQL6W5.js +1 -0
  28. package/dist/dashboard/browser/chunk-VZ6E4VQY.js +2 -0
  29. package/dist/dashboard/browser/chunk-WAN7TQQW.js +1 -0
  30. package/dist/dashboard/browser/chunk-WJUGRIIZ.js +1 -0
  31. package/dist/dashboard/browser/chunk-WRBP4DQN.js +4 -0
  32. package/dist/dashboard/browser/chunk-XUU4AY4M.js +2 -0
  33. package/dist/dashboard/browser/chunk-XYVF5I5T.js +1 -0
  34. package/dist/dashboard/browser/chunk-Y6B6X4Y6.js +2 -0
  35. package/dist/dashboard/browser/chunk-YNQPX5G6.js +1 -0
  36. package/dist/dashboard/browser/chunk-YYAZGY5M.js +1 -0
  37. package/dist/dashboard/browser/index.html +15 -0
  38. package/dist/dashboard/browser/main-ZADV4SOC.js +1 -0
  39. package/dist/dashboard/browser/styles-SIPYJLMG.css +1 -0
  40. package/dist/dashboard/prerendered-routes.json +3 -0
  41. package/dist/main.js +52 -43
  42. package/dist/mcp.js +3 -2
  43. package/package.json +6 -5
  44. package/src/templates/claude/skill.md.tmpl +23 -31
  45. package/src/dashboard.html +0 -451
  46. package/src/templates/claude/commands/doctor.md.tmpl +0 -10
  47. package/src/templates/claude/commands/errors.md.tmpl +0 -10
  48. package/src/templates/claude/commands/logs.md.tmpl +0 -10
  49. package/src/templates/claude/commands/restart.md.tmpl +0 -10
  50. package/src/templates/claude/commands/start.md.tmpl +0 -12
  51. package/src/templates/claude/commands/status.md.tmpl +0 -10
  52. package/src/templates/claude/commands/stop.md.tmpl +0 -10
  53. package/src/templates/claude/commands/up.md.tmpl +0 -10
  54. package/src/templates/claude/commands/wait.md.tmpl +0 -10
  55. package/src/templates/claude/commands/why.md.tmpl +0 -10
@@ -0,0 +1,5 @@
1
+ import{P as Le,a as te,b as Lt,c as kt,i as fe,j as pe,k as xt}from"./chunk-Y6B6X4Y6.js";import{$ as m,$a as Q,C as et,Ca as ut,Db as bt,E as tt,Ea as ht,F as nt,Fa as Ne,Ga as ft,Gc as Ot,Ha as he,Hc as Pt,I as rt,Ja as Oe,K as de,Ka as Pe,La as $,Ma as V,Na as pt,Oa as mt,Pa as gt,Q as ot,Qa as yt,Ra as vt,Sa as Et,Ta as _t,U as st,Ua as M,X as ue,Xb as Mt,Y as w,Yb as St,a as D,aa as q,ab as wt,b as Ae,bb as Tt,ca as T,d as Ze,da as u,ea as g,eb as z,f as Ce,fa as De,ga as it,gc as At,ha as at,hb as Rt,hc as Ct,ia as ct,o as L,oa as E,p as qe,pa as lt,pb as It,qa as U,qb as ee,s as _,t as S,ta as H,wa as dt,xc as Dt,z as Qe,zc as Nt}from"./chunk-K43KW4K2.js";var ne=class{_doc;constructor(n){this._doc=n}manager},me=(()=>{class r extends ne{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,o,s){return e.addEventListener(t,o,s),()=>this.removeEventListener(e,t,o,s)}removeEventListener(e,t,o,s){return e.removeEventListener(t,o,s)}static \u0275fac=function(t){return new(t||r)(u(E))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),ye=new T(""),je=(()=>{class r{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,t){this._zone=t,e.forEach(i=>{i.manager=this});let o=e.filter(i=>!(i instanceof me));this._plugins=o.slice().reverse();let s=e.find(i=>i instanceof me);s&&this._plugins.push(s)}addEventListener(e,t,o,s){return this._findPluginFor(t).addEventListener(e,t,o,s)}getZone(){return this._zone}_findPluginFor(e){let t=this._eventNameToPlugin.get(e);if(t)return t;if(t=this._plugins.find(s=>s.supports(e)),!t)throw new w(5101,!1);return this._eventNameToPlugin.set(e,t),t}static \u0275fac=function(t){return new(t||r)(u(ye),u(z))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),ke="ng-app-id";function Ft(r){for(let n of r)n.remove()}function Ut(r,n){let e=n.createElement("style");return e.textContent=r,e}function fn(r,n,e,t){let o=r.head?.querySelectorAll(`style[${ke}="${n}"],link[${ke}="${n}"]`);if(o)for(let s of o)s.removeAttribute(ke),s instanceof HTMLLinkElement?t.set(s.href.slice(s.href.lastIndexOf("/")+1),{usage:0,elements:[s]}):s.textContent&&e.set(s.textContent,{usage:0,elements:[s]})}function Fe(r,n){let e=n.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",r),e}var Be=(()=>{class r{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(e,t,o,s={}){this.doc=e,this.appId=t,this.nonce=o,fn(e,t,this.inline,this.external),this.hosts.add(e.head)}addStyles(e,t){for(let o of e)this.addUsage(o,this.inline,Ut);t?.forEach(o=>this.addUsage(o,this.external,Fe))}removeStyles(e,t){for(let o of e)this.removeUsage(o,this.inline);t?.forEach(o=>this.removeUsage(o,this.external))}addUsage(e,t,o){let s=t.get(e);s?s.usage++:t.set(e,{usage:1,elements:[...this.hosts].map(i=>this.addElement(i,o(e,this.doc)))})}removeUsage(e,t){let o=t.get(e);o&&(o.usage--,o.usage<=0&&(Ft(o.elements),t.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])Ft(e);this.hosts.clear()}addHost(e){this.hosts.add(e);for(let[t,{elements:o}]of this.inline)o.push(this.addElement(e,Ut(t,this.doc)));for(let[t,{elements:o}]of this.external)o.push(this.addElement(e,Fe(t,this.doc)))}removeHost(e){this.hosts.delete(e)}addElement(e,t){return this.nonce&&t.setAttribute("nonce",this.nonce),e.appendChild(t)}static \u0275fac=function(t){return new(t||r)(u(E),u(Ne),u(Oe,8),u(he))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),xe={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},ze=/%COMP%/g;var Bt="%COMP%",pn=`_nghost-${Bt}`,mn=`_ngcontent-${Bt}`,gn=!0,yn=new T("",{providedIn:"root",factory:()=>gn});function vn(r){return mn.replace(ze,r)}function En(r){return pn.replace(ze,r)}function zt(r,n){return n.map(e=>e.replace(ze,r))}var He=(()=>{class r{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;platformIsServer;constructor(e,t,o,s,i,a,c=null,l=null){this.eventManager=e,this.sharedStylesHost=t,this.appId=o,this.removeStylesOnCompDestroy=s,this.doc=i,this.ngZone=a,this.nonce=c,this.tracingService=l,this.platformIsServer=!1,this.defaultRenderer=new re(e,i,a,this.platformIsServer,this.tracingService)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;let o=this.getOrCreateRenderer(e,t);return o instanceof ge?o.applyToHost(e):o instanceof oe&&o.applyStyles(),o}getOrCreateRenderer(e,t){let o=this.rendererByCompId,s=o.get(t.id);if(!s){let i=this.doc,a=this.ngZone,c=this.eventManager,l=this.sharedStylesHost,d=this.removeStylesOnCompDestroy,p=this.platformIsServer,y=this.tracingService;switch(t.encapsulation){case Pe.Emulated:s=new ge(c,l,t,this.appId,d,i,a,p,y);break;case Pe.ShadowDom:return new Ue(c,l,e,t,i,a,this.nonce,p,y);default:s=new oe(c,l,t,d,i,a,p,y);break}o.set(t.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(e){this.rendererByCompId.delete(e)}static \u0275fac=function(t){return new(t||r)(u(je),u(Be),u(Ne),u(yn),u(E),u(z),u(Oe),u(Tt,8))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),re=class{eventManager;doc;ngZone;platformIsServer;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(n,e,t,o,s){this.eventManager=n,this.doc=e,this.ngZone=t,this.platformIsServer=o,this.tracingService=s}destroy(){}destroyNode=null;createElement(n,e){return e?this.doc.createElementNS(xe[e]||e,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,e){(jt(n)?n.content:n).appendChild(e)}insertBefore(n,e,t){n&&(jt(n)?n.content:n).insertBefore(e,t)}removeChild(n,e){e.remove()}selectRootElement(n,e){let t=typeof n=="string"?this.doc.querySelector(n):n;if(!t)throw new w(-5104,!1);return e||(t.textContent=""),t}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,e,t,o){if(o){e=o+":"+e;let s=xe[o];s?n.setAttributeNS(s,e,t):n.setAttribute(e,t)}else n.setAttribute(e,t)}removeAttribute(n,e,t){if(t){let o=xe[t];o?n.removeAttributeNS(o,e):n.removeAttribute(`${t}:${e}`)}else n.removeAttribute(e)}addClass(n,e){n.classList.add(e)}removeClass(n,e){n.classList.remove(e)}setStyle(n,e,t,o){o&(Q.DashCase|Q.Important)?n.style.setProperty(e,t,o&Q.Important?"important":""):n.style[e]=t}removeStyle(n,e,t){t&Q.DashCase?n.style.removeProperty(e):n.style[e]=""}setProperty(n,e,t){n!=null&&(n[e]=t)}setValue(n,e){n.nodeValue=e}listen(n,e,t,o){if(typeof n=="string"&&(n=te().getGlobalEventTarget(this.doc,n),!n))throw new w(5102,!1);let s=this.decoratePreventDefault(t);return this.tracingService?.wrapEventListener&&(s=this.tracingService.wrapEventListener(n,e,s)),this.eventManager.addEventListener(n,e,s,o)}decoratePreventDefault(n){return e=>{if(e==="__ngUnwrap__")return n;n(e)===!1&&e.preventDefault()}}};function jt(r){return r.tagName==="TEMPLATE"&&r.content!==void 0}var Ue=class extends re{sharedStylesHost;hostEl;shadowRoot;constructor(n,e,t,o,s,i,a,c,l){super(n,s,i,c,l),this.sharedStylesHost=e,this.hostEl=t,this.shadowRoot=t.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let d=o.styles;d=zt(o.id,d);for(let y of d){let I=document.createElement("style");a&&I.setAttribute("nonce",a),I.textContent=y,this.shadowRoot.appendChild(I)}let p=o.getExternalStyles?.();if(p)for(let y of p){let I=Fe(y,s);a&&I.setAttribute("nonce",a),this.shadowRoot.appendChild(I)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,e){return super.appendChild(this.nodeOrShadowRoot(n),e)}insertBefore(n,e,t){return super.insertBefore(this.nodeOrShadowRoot(n),e,t)}removeChild(n,e){return super.removeChild(null,e)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},oe=class extends re{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(n,e,t,o,s,i,a,c,l){super(n,s,i,a,c),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=o;let d=t.styles;this.styles=l?zt(l,d):d,this.styleUrls=t.getExternalStyles?.(l)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&wt.size===0&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},ge=class extends oe{contentAttr;hostAttr;constructor(n,e,t,o,s,i,a,c,l){let d=o+"-"+t.id;super(n,e,t,s,i,a,c,l,d),this.contentAttr=vn(d),this.hostAttr=En(d)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,e){let t=super.createElement(n,e);return super.setAttribute(t,this.contentAttr,""),t}};var ve=class r extends kt{supportsDOMEvents=!0;static makeCurrent(){Lt(new r)}onAndCancel(n,e,t,o){return n.addEventListener(e,t,o),()=>{n.removeEventListener(e,t,o)}}dispatchEvent(n,e){n.dispatchEvent(e)}remove(n){n.remove()}createElement(n,e){return e=e||this.getDefaultDocument(),e.createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,e){return e==="window"?window:e==="document"?n:e==="body"?n.body:null}getBaseHref(n){let e=wn();return e==null?null:Tn(e)}resetBaseElement(){se=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return fe(document.cookie,n)}},se=null;function wn(){return se=se||document.head.querySelector("base"),se?se.getAttribute("href"):null}function Tn(r){return new URL(r,document.baseURI).pathname}var Rn=(()=>{class r{build(){return new XMLHttpRequest}static \u0275fac=function(t){return new(t||r)};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),Ht=["alt","control","meta","shift"],In={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},bn={alt:r=>r.altKey,control:r=>r.ctrlKey,meta:r=>r.metaKey,shift:r=>r.shiftKey},$t=(()=>{class r extends ne{constructor(e){super(e)}supports(e){return r.parseEventName(e)!=null}addEventListener(e,t,o,s){let i=r.parseEventName(t),a=r.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>te().onAndCancel(e,i.domEventName,a,s))}static parseEventName(e){let t=e.toLowerCase().split("."),o=t.shift();if(t.length===0||!(o==="keydown"||o==="keyup"))return null;let s=r._normalizeKey(t.pop()),i="",a=t.indexOf("code");if(a>-1&&(t.splice(a,1),i="code."),Ht.forEach(l=>{let d=t.indexOf(l);d>-1&&(t.splice(d,1),i+=l+".")}),i+=s,t.length!=0||s.length===0)return null;let c={};return c.domEventName=o,c.fullKey=i,c}static matchEventFullKeyCode(e,t){let o=In[e.key]||e.key,s="";return t.indexOf("code.")>-1&&(o=e.code,s="code."),o==null||!o?!1:(o=o.toLowerCase(),o===" "?o="space":o==="."&&(o="dot"),Ht.forEach(i=>{if(i!==o){let a=bn[i];a(e)&&(s+=i+".")}}),s+=o,s===t)}static eventCallback(e,t,o){return s=>{r.matchEventFullKeyCode(s,e)&&o.runGuarded(()=>t(s))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(t){return new(t||r)(u(E))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})();function Mn(r,n,e){let t=D({rootComponent:r,platformRef:e?.platformRef},Sn(n));return Ot(t)}function Sn(r){return{appProviders:[...On,...r?.providers??[]],platformProviders:Nn}}function An(){ve.makeCurrent()}function Cn(){return new U}function Dn(){return ht(document),document}var Nn=[{provide:he,useValue:xt},{provide:ft,useValue:An,multi:!0},{provide:E,useFactory:Dn}];var On=[{provide:it,useValue:"root"},{provide:U,useFactory:Cn},{provide:ye,useClass:me,multi:!0,deps:[E]},{provide:ye,useClass:$t,multi:!0,deps:[E]},He,Be,je,{provide:Rt,useExisting:He},{provide:pe,useClass:Rn},[]];var J=class{},W=class{},O=class r{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(n){n?typeof n=="string"?this.lazyInit=()=>{this.headers=new Map,n.split(`
2
+ `).forEach(e=>{let t=e.indexOf(":");if(t>0){let o=e.slice(0,t),s=e.slice(t+1).trim();this.addHeaderEntry(o,s)}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((e,t)=>{this.addHeaderEntry(t,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([e,t])=>{this.setHeaderEntries(e,t)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();let e=this.headers.get(n.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,e){return this.clone({name:n,value:e,op:"a"})}set(n,e){return this.clone({name:n,value:e,op:"s"})}delete(n,e){return this.clone({name:n,value:e,op:"d"})}maybeSetNormalizedName(n,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,n)}init(){this.lazyInit&&(this.lazyInit instanceof r?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(e=>{this.headers.set(e,n.headers.get(e)),this.normalizedNames.set(e,n.normalizedNames.get(e))})}clone(n){let e=new r;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof r?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([n]),e}applyUpdate(n){let e=n.name.toLowerCase();switch(n.op){case"a":case"s":let t=n.value;if(typeof t=="string"&&(t=[t]),t.length===0)return;this.maybeSetNormalizedName(n.name,e);let o=(n.op==="a"?this.headers.get(e):void 0)||[];o.push(...t),this.headers.set(e,o);break;case"d":let s=n.value;if(!s)this.headers.delete(e),this.normalizedNames.delete(e);else{let i=this.headers.get(e);if(!i)return;i=i.filter(a=>s.indexOf(a)===-1),i.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,i)}break}}addHeaderEntry(n,e){let t=n.toLowerCase();this.maybeSetNormalizedName(n,t),this.headers.has(t)?this.headers.get(t).push(e):this.headers.set(t,[e])}setHeaderEntries(n,e){let t=(Array.isArray(e)?e:[e]).map(s=>s.toString()),o=n.toLowerCase();this.headers.set(o,t),this.maybeSetNormalizedName(n,o)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>n(this.normalizedNames.get(e),this.headers.get(e)))}};var we=class{encodeKey(n){return Vt(n)}encodeValue(n){return Vt(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}};function Ln(r,n){let e=new Map;return r.length>0&&r.replace(/^\?/,"").split("&").forEach(o=>{let s=o.indexOf("="),[i,a]=s==-1?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,s)),n.decodeValue(o.slice(s+1))],c=e.get(i)||[];c.push(a),e.set(i,c)}),e}var kn=/%(\d[a-f0-9])/gi,xn={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function Vt(r){return encodeURIComponent(r).replace(kn,(n,e)=>xn[e]??n)}function Ee(r){return`${r}`}var k=class r{map;encoder;updates=null;cloneFrom=null;constructor(n={}){if(this.encoder=n.encoder||new we,n.fromString){if(n.fromObject)throw new w(2805,!1);this.map=Ln(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(e=>{let t=n.fromObject[e],o=Array.isArray(t)?t.map(Ee):[Ee(t)];this.map.set(e,o)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();let e=this.map.get(n);return e?e[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,e){return this.clone({param:n,value:e,op:"a"})}appendAll(n){let e=[];return Object.keys(n).forEach(t=>{let o=n[t];Array.isArray(o)?o.forEach(s=>{e.push({param:t,value:s,op:"a"})}):e.push({param:t,value:o,op:"a"})}),this.clone(e)}set(n,e){return this.clone({param:n,value:e,op:"s"})}delete(n,e){return this.clone({param:n,value:e,op:"d"})}toString(){return this.init(),this.keys().map(n=>{let e=this.encoder.encodeKey(n);return this.map.get(n).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(n=>n!=="").join("&")}clone(n){let e=new r({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(n),e}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(n=>this.map.set(n,this.cloneFrom.map.get(n))),this.updates.forEach(n=>{switch(n.op){case"a":case"s":let e=(n.op==="a"?this.map.get(n.param):void 0)||[];e.push(Ee(n.value)),this.map.set(n.param,e);break;case"d":if(n.value!==void 0){let t=this.map.get(n.param)||[],o=t.indexOf(Ee(n.value));o!==-1&&t.splice(o,1),t.length>0?this.map.set(n.param,t):this.map.delete(n.param)}else{this.map.delete(n.param);break}}}),this.cloneFrom=this.updates=null)}};var Te=class{map=new Map;set(n,e){return this.map.set(n,e),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}};function Fn(r){switch(r){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function Gt(r){return typeof ArrayBuffer<"u"&&r instanceof ArrayBuffer}function Xt(r){return typeof Blob<"u"&&r instanceof Blob}function Jt(r){return typeof FormData<"u"&&r instanceof FormData}function Un(r){return typeof URLSearchParams<"u"&&r instanceof URLSearchParams}var ie="Content-Type",Re="Accept",Je="X-Request-URL",Yt="text/plain",Kt="application/json",Zt=`${Kt}, ${Yt}, */*`,X=class r{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;credentials;keepalive=!1;cache;priority;mode;redirect;referrer;integrity;responseType="json";method;params;urlWithParams;transferCache;timeout;constructor(n,e,t,o){this.url=e,this.method=n.toUpperCase();let s;if(Fn(this.method)||o?(this.body=t!==void 0?t:null,s=o):s=t,s){if(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,this.keepalive=!!s.keepalive,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.context&&(this.context=s.context),s.params&&(this.params=s.params),s.priority&&(this.priority=s.priority),s.cache&&(this.cache=s.cache),s.credentials&&(this.credentials=s.credentials),typeof s.timeout=="number"){if(s.timeout<1||!Number.isInteger(s.timeout))throw new w(2822,"");this.timeout=s.timeout}s.mode&&(this.mode=s.mode),s.redirect&&(this.redirect=s.redirect),s.integrity&&(this.integrity=s.integrity),s.referrer&&(this.referrer=s.referrer),this.transferCache=s.transferCache}if(this.headers??=new O,this.context??=new Te,!this.params)this.params=new k,this.urlWithParams=e;else{let i=this.params.toString();if(i.length===0)this.urlWithParams=e;else{let a=e.indexOf("?"),c=a===-1?"?":a<e.length-1?"&":"";this.urlWithParams=e+c+i}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||Gt(this.body)||Xt(this.body)||Jt(this.body)||Un(this.body)?this.body:this.body instanceof k?this.body.toString():typeof this.body=="object"||typeof this.body=="boolean"||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return this.body===null||Jt(this.body)?null:Xt(this.body)?this.body.type||null:Gt(this.body)?null:typeof this.body=="string"?Yt:this.body instanceof k?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?Kt:null}clone(n={}){let e=n.method||this.method,t=n.url||this.url,o=n.responseType||this.responseType,s=n.keepalive??this.keepalive,i=n.priority||this.priority,a=n.cache||this.cache,c=n.mode||this.mode,l=n.redirect||this.redirect,d=n.credentials||this.credentials,p=n.referrer||this.referrer,y=n.integrity||this.integrity,I=n.transferCache??this.transferCache,R=n.timeout??this.timeout,j=n.body!==void 0?n.body:this.body,h=n.withCredentials??this.withCredentials,f=n.reportProgress??this.reportProgress,b=n.headers||this.headers,A=n.params||this.params,v=n.context??this.context;return n.setHeaders!==void 0&&(b=Object.keys(n.setHeaders).reduce((C,P)=>C.set(P,n.setHeaders[P]),b)),n.setParams&&(A=Object.keys(n.setParams).reduce((C,P)=>C.set(P,n.setParams[P]),A)),new r(e,t,j,{params:A,headers:b,context:v,reportProgress:f,responseType:o,withCredentials:h,transferCache:I,keepalive:s,cache:a,priority:i,timeout:R,mode:c,redirect:l,credentials:d,referrer:p,integrity:y})}},x=(function(r){return r[r.Sent=0]="Sent",r[r.UploadProgress=1]="UploadProgress",r[r.ResponseHeader=2]="ResponseHeader",r[r.DownloadProgress=3]="DownloadProgress",r[r.Response=4]="Response",r[r.User=5]="User",r})(x||{}),Y=class{headers;status;statusText;url;ok;type;redirected;constructor(n,e=200,t="OK"){this.headers=n.headers||new O,this.status=n.status!==void 0?n.status:e,this.statusText=n.statusText||t,this.url=n.url||null,this.redirected=n.redirected,this.ok=this.status>=200&&this.status<300}},ae=class r extends Y{constructor(n={}){super(n)}type=x.ResponseHeader;clone(n={}){return new r({headers:n.headers||this.headers,status:n.status!==void 0?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}},K=class r extends Y{body;constructor(n={}){super(n),this.body=n.body!==void 0?n.body:null}type=x.Response;clone(n={}){return new r({body:n.body!==void 0?n.body:this.body,headers:n.headers||this.headers,status:n.status!==void 0?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0,redirected:n.redirected??this.redirected})}},N=class extends Y{name="HttpErrorResponse";message;error;ok=!1;constructor(n){super(n,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${n.url||"(unknown url)"}`:this.message=`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}},qt=200,jn=204;function $e(r,n){return{body:n,headers:r.headers,context:r.context,observe:r.observe,params:r.params,reportProgress:r.reportProgress,responseType:r.responseType,withCredentials:r.withCredentials,credentials:r.credentials,transferCache:r.transferCache,timeout:r.timeout,keepalive:r.keepalive,priority:r.priority,cache:r.cache,mode:r.mode,redirect:r.redirect,integrity:r.integrity,referrer:r.referrer}}var Z=(()=>{class r{handler;constructor(e){this.handler=e}request(e,t,o={}){let s;if(e instanceof X)s=e;else{let c;o.headers instanceof O?c=o.headers:c=new O(o.headers);let l;o.params&&(o.params instanceof k?l=o.params:l=new k({fromObject:o.params})),s=new X(e,t,o.body!==void 0?o.body:null,{headers:c,context:o.context,params:l,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache,keepalive:o.keepalive,priority:o.priority,cache:o.cache,mode:o.mode,redirect:o.redirect,credentials:o.credentials,referrer:o.referrer,integrity:o.integrity,timeout:o.timeout})}let i=L(s).pipe(nt(c=>this.handler.handle(c)));if(e instanceof X||o.observe==="events")return i;let a=i.pipe(et(c=>c instanceof K));switch(o.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return a.pipe(S(c=>{if(c.body!==null&&!(c.body instanceof ArrayBuffer))throw new w(2806,!1);return c.body}));case"blob":return a.pipe(S(c=>{if(c.body!==null&&!(c.body instanceof Blob))throw new w(2807,!1);return c.body}));case"text":return a.pipe(S(c=>{if(c.body!==null&&typeof c.body!="string")throw new w(2808,!1);return c.body}));default:return a.pipe(S(c=>c.body))}case"response":return a;default:throw new w(2809,!1)}}delete(e,t={}){return this.request("DELETE",e,t)}get(e,t={}){return this.request("GET",e,t)}head(e,t={}){return this.request("HEAD",e,t)}jsonp(e,t){return this.request("JSONP",e,{params:new k().append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,t={}){return this.request("OPTIONS",e,t)}patch(e,t,o={}){return this.request("PATCH",e,$e(o,t))}post(e,t,o={}){return this.request("POST",e,$e(o,t))}put(e,t,o={}){return this.request("PUT",e,$e(o,t))}static \u0275fac=function(t){return new(t||r)(u(J))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),Bn=/^\)\]\}',?\n/;function Wt(r){if(r.url)return r.url;let n=Je.toLocaleLowerCase();return r.headers.get(n)}var Qt=new T(""),_e=(()=>{class r{fetchImpl=g(Ve,{optional:!0})?.fetch??((...e)=>globalThis.fetch(...e));ngZone=g(z);destroyRef=g(lt);handle(e){return new Ce(t=>{let o=new AbortController;this.doRequest(e,o.signal,t).then(Ge,i=>t.error(new N({error:i})));let s;return e.timeout&&(s=this.ngZone.runOutsideAngular(()=>setTimeout(()=>{o.signal.aborted||o.abort(new DOMException("signal timed out","TimeoutError"))},e.timeout))),()=>{s!==void 0&&clearTimeout(s),o.abort()}})}async doRequest(e,t,o){let s=this.createRequestInit(e),i;try{let R=this.ngZone.runOutsideAngular(()=>this.fetchImpl(e.urlWithParams,D({signal:t},s)));zn(R),o.next({type:x.Sent}),i=await R}catch(R){o.error(new N({error:R,status:R.status??0,statusText:R.statusText,url:e.urlWithParams,headers:R.headers}));return}let a=new O(i.headers),c=i.statusText,l=Wt(i)??e.urlWithParams,d=i.status,p=null;if(e.reportProgress&&o.next(new ae({headers:a,status:d,statusText:c,url:l})),i.body){let R=i.headers.get("content-length"),j=[],h=i.body.getReader(),f=0,b,A,v=typeof Zone<"u"&&Zone.current,C=!1;if(await this.ngZone.runOutsideAngular(async()=>{for(;;){if(this.destroyRef.destroyed){await h.cancel(),C=!0;break}let{done:B,value:Se}=await h.read();if(B)break;if(j.push(Se),f+=Se.length,e.reportProgress){A=e.responseType==="text"?(A??"")+(b??=new TextDecoder).decode(Se,{stream:!0}):void 0;let Ke=()=>o.next({type:x.DownloadProgress,total:R?+R:void 0,loaded:f,partialText:A});v?v.run(Ke):Ke()}}}),C){o.complete();return}let P=this.concatChunks(j,f);try{let B=i.headers.get(ie)??"";p=this.parseBody(e,P,B,d)}catch(B){o.error(new N({error:B,headers:new O(i.headers),status:i.status,statusText:i.statusText,url:Wt(i)??e.urlWithParams}));return}}d===0&&(d=p?qt:0);let y=d>=200&&d<300,I=i.redirected;y?(o.next(new K({body:p,headers:a,status:d,statusText:c,url:l,redirected:I})),o.complete()):o.error(new N({error:p,headers:a,status:d,statusText:c,url:l,redirected:I}))}parseBody(e,t,o,s){switch(e.responseType){case"json":let i=new TextDecoder().decode(t).replace(Bn,"");if(i==="")return null;try{return JSON.parse(i)}catch(a){if(s<200||s>=300)return i;throw a}case"text":return new TextDecoder().decode(t);case"blob":return new Blob([t],{type:o});case"arraybuffer":return t.buffer}}createRequestInit(e){let t={},o;if(o=e.credentials,e.withCredentials&&(o="include"),e.headers.forEach((s,i)=>t[s]=i.join(",")),e.headers.has(Re)||(t[Re]=Zt),!e.headers.has(ie)){let s=e.detectContentTypeHeader();s!==null&&(t[ie]=s)}return{body:e.serializeBody(),method:e.method,headers:t,credentials:o,keepalive:e.keepalive,cache:e.cache,priority:e.priority,mode:e.mode,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity}}concatChunks(e,t){let o=new Uint8Array(t),s=0;for(let i of e)o.set(i,s),s+=i.length;return o}static \u0275fac=function(t){return new(t||r)};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),Ve=class{};function Ge(){}function zn(r){r.then(Ge,Ge)}function Hn(r,n){return n(r)}function $n(r,n,e){return(t,o)=>ct(e,()=>n(t,s=>r(s,o)))}var en=new T(""),tn=new T(""),nn=new T("",{providedIn:"root",factory:()=>!0});var Ie=(()=>{class r extends J{backend;injector;chain=null;pendingTasks=g(dt);contributeToStability=g(nn);constructor(e,t){super(),this.backend=e,this.injector=t}handle(e){if(this.chain===null){let t=Array.from(new Set([...this.injector.get(en),...this.injector.get(tn,[])]));this.chain=t.reduceRight((o,s)=>$n(o,s,this.injector),Hn)}if(this.contributeToStability){let t=this.pendingTasks.add();return this.chain(e,o=>this.backend.handle(o)).pipe(de(t))}else return this.chain(e,t=>this.backend.handle(t))}static \u0275fac=function(t){return new(t||r)(u(W),u(at))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})();var Vn=/^\)\]\}',?\n/,Gn=RegExp(`^${Je}:`,"m");function Xn(r){return"responseURL"in r&&r.responseURL?r.responseURL:Gn.test(r.getAllResponseHeaders())?r.getResponseHeader(Je):null}var Xe=(()=>{class r{xhrFactory;constructor(e){this.xhrFactory=e}handle(e){if(e.method==="JSONP")throw new w(-2800,!1);let t=this.xhrFactory;return L(null).pipe(st(()=>new Ce(s=>{let i=t.build();if(i.open(e.method,e.urlWithParams),e.withCredentials&&(i.withCredentials=!0),e.headers.forEach((h,f)=>i.setRequestHeader(h,f.join(","))),e.headers.has(Re)||i.setRequestHeader(Re,Zt),!e.headers.has(ie)){let h=e.detectContentTypeHeader();h!==null&&i.setRequestHeader(ie,h)}if(e.timeout&&(i.timeout=e.timeout),e.responseType){let h=e.responseType.toLowerCase();i.responseType=h!=="json"?h:"text"}let a=e.serializeBody(),c=null,l=()=>{if(c!==null)return c;let h=i.statusText||"OK",f=new O(i.getAllResponseHeaders()),b=Xn(i)||e.url;return c=new ae({headers:f,status:i.status,statusText:h,url:b}),c},d=()=>{let{headers:h,status:f,statusText:b,url:A}=l(),v=null;f!==jn&&(v=typeof i.response>"u"?i.responseText:i.response),f===0&&(f=v?qt:0);let C=f>=200&&f<300;if(e.responseType==="json"&&typeof v=="string"){let P=v;v=v.replace(Vn,"");try{v=v!==""?JSON.parse(v):null}catch(B){v=P,C&&(C=!1,v={error:B,text:v})}}C?(s.next(new K({body:v,headers:h,status:f,statusText:b,url:A||void 0})),s.complete()):s.error(new N({error:v,headers:h,status:f,statusText:b,url:A||void 0}))},p=h=>{let{url:f}=l(),b=new N({error:h,status:i.status||0,statusText:i.statusText||"Unknown Error",url:f||void 0});s.error(b)},y=p;e.timeout&&(y=h=>{let{url:f}=l(),b=new N({error:new DOMException("Request timed out","TimeoutError"),status:i.status||0,statusText:i.statusText||"Request timeout",url:f||void 0});s.error(b)});let I=!1,R=h=>{I||(s.next(l()),I=!0);let f={type:x.DownloadProgress,loaded:h.loaded};h.lengthComputable&&(f.total=h.total),e.responseType==="text"&&i.responseText&&(f.partialText=i.responseText),s.next(f)},j=h=>{let f={type:x.UploadProgress,loaded:h.loaded};h.lengthComputable&&(f.total=h.total),s.next(f)};return i.addEventListener("load",d),i.addEventListener("error",p),i.addEventListener("timeout",y),i.addEventListener("abort",p),e.reportProgress&&(i.addEventListener("progress",R),a!==null&&i.upload&&i.upload.addEventListener("progress",j)),i.send(a),s.next({type:x.Sent}),()=>{i.removeEventListener("error",p),i.removeEventListener("abort",p),i.removeEventListener("load",d),i.removeEventListener("timeout",y),e.reportProgress&&(i.removeEventListener("progress",R),a!==null&&i.upload&&i.upload.removeEventListener("progress",j)),i.readyState!==i.DONE&&i.abort()}})))}static \u0275fac=function(t){return new(t||r)(u(pe))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),rn=new T(""),Jn="XSRF-TOKEN",Wn=new T("",{providedIn:"root",factory:()=>Jn}),Yn="X-XSRF-TOKEN",Kn=new T("",{providedIn:"root",factory:()=>Yn}),ce=class{},Zn=(()=>{class r{doc;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(e,t){this.doc=e,this.cookieName=t}getToken(){let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=fe(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(t){return new(t||r)(u(E),u(Wn))};static \u0275prov=m({token:r,factory:r.\u0275fac})}return r})(),qn=/^(?:https?:)?\/\//i;function Qn(r,n){if(!g(rn)||r.method==="GET"||r.method==="HEAD"||qn.test(r.url))return n(r);let e=g(ce).getToken(),t=g(Kn);return e!=null&&!r.headers.has(t)&&(r=r.clone({headers:r.headers.set(t,e)})),n(r)}var We=(function(r){return r[r.Interceptors=0]="Interceptors",r[r.LegacyInterceptors=1]="LegacyInterceptors",r[r.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",r[r.NoXsrfProtection=3]="NoXsrfProtection",r[r.JsonpSupport=4]="JsonpSupport",r[r.RequestsMadeViaParent=5]="RequestsMadeViaParent",r[r.Fetch=6]="Fetch",r})(We||{});function er(r,n){return{\u0275kind:r,\u0275providers:n}}function tr(...r){let n=[Z,Xe,Ie,{provide:J,useExisting:Ie},{provide:W,useFactory:()=>g(Qt,{optional:!0})??g(Xe)},{provide:en,useValue:Qn,multi:!0},{provide:rn,useValue:!0},{provide:ce,useClass:Zn}];for(let e of r)n.push(...e.\u0275providers);return De(n)}function nr(){return er(We.Fetch,[_e,{provide:Qt,useExisting:_e},{provide:W,useExisting:_e}])}var zo=(()=>{class r{_doc;constructor(e){this._doc=e}getTitle(){return this._doc.title}setTitle(e){this._doc.title=e||""}static \u0275fac=function(t){return new(t||r)(u(E))};static \u0275prov=m({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();var Ye=(()=>{class r{static \u0275fac=function(t){return new(t||r)};static \u0275prov=m({token:r,factory:function(t){let o=null;return t?o=new(t||r):o=u(ir),o},providedIn:"root"})}return r})(),ir=(()=>{class r extends Ye{_doc;constructor(e){super(),this._doc=e}sanitize(e,t){if(t==null)return null;switch(e){case M.NONE:return t;case M.HTML:return V(t,"HTML")?$(t):_t(this._doc,String(t)).toString();case M.STYLE:return V(t,"Style")?$(t):t;case M.SCRIPT:if(V(t,"Script"))return $(t);throw new w(5200,!1);case M.URL:return V(t,"URL")?$(t):Et(String(t));case M.RESOURCE_URL:if(V(t,"ResourceURL"))return $(t);throw new w(5201,!1);default:throw new w(5202,!1)}}bypassSecurityTrustHtml(e){return pt(e)}bypassSecurityTrustStyle(e){return mt(e)}bypassSecurityTrustScript(e){return gt(e)}bypassSecurityTrustUrl(e){return yt(e)}bypassSecurityTrustResourceUrl(e){return vt(e)}static \u0275fac=function(t){return new(t||r)(u(E))};static \u0275prov=m({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();var be;function cr(){if(be===void 0&&(be=null,typeof window<"u")){let r=window;r.trustedTypes!==void 0&&(be=r.trustedTypes.createPolicy("angular#components",{createHTML:n=>n}))}return be}function le(r){return cr()?.createHTML(r)||r}function on(r){return Error(`Unable to find icon with the name "${r}"`)}function lr(){return Error("Could not find HttpClient for use with Angular Material icons. Please add provideHttpClient() to your providers.")}function sn(r){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${r}".`)}function an(r){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${r}".`)}var F=class{url;svgText;options;svgElement;constructor(n,e,t){this.url=n,this.svgText=e,this.options=t}},ln=(()=>{class r{_httpClient;_sanitizer;_errorHandler;_document;_svgIconConfigs=new Map;_iconSetConfigs=new Map;_cachedIconsByUrl=new Map;_inProgressUrlFetches=new Map;_fontCssClassesByAlias=new Map;_resolvers=[];_defaultFontSetClass=["material-icons","mat-ligature-font"];constructor(e,t,o,s){this._httpClient=e,this._sanitizer=t,this._errorHandler=s,this._document=o}addSvgIcon(e,t,o){return this.addSvgIconInNamespace("",e,t,o)}addSvgIconLiteral(e,t,o){return this.addSvgIconLiteralInNamespace("",e,t,o)}addSvgIconInNamespace(e,t,o,s){return this._addSvgIconConfig(e,t,new F(o,null,s))}addSvgIconResolver(e){return this._resolvers.push(e),this}addSvgIconLiteralInNamespace(e,t,o,s){let i=this._sanitizer.sanitize(M.HTML,o);if(!i)throw an(o);let a=le(i);return this._addSvgIconConfig(e,t,new F("",a,s))}addSvgIconSet(e,t){return this.addSvgIconSetInNamespace("",e,t)}addSvgIconSetLiteral(e,t){return this.addSvgIconSetLiteralInNamespace("",e,t)}addSvgIconSetInNamespace(e,t,o){return this._addSvgIconSetConfig(e,new F(t,null,o))}addSvgIconSetLiteralInNamespace(e,t,o){let s=this._sanitizer.sanitize(M.HTML,t);if(!s)throw an(t);let i=le(s);return this._addSvgIconSetConfig(e,new F("",i,o))}registerFontClassAlias(e,t=e){return this._fontCssClassesByAlias.set(e,t),this}classNameForFontAlias(e){return this._fontCssClassesByAlias.get(e)||e}setDefaultFontSetClass(...e){return this._defaultFontSetClass=e,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(e){let t=this._sanitizer.sanitize(M.RESOURCE_URL,e);if(!t)throw sn(e);let o=this._cachedIconsByUrl.get(t);return o?L(Me(o)):this._loadSvgIconFromConfig(new F(e,null)).pipe(ue(s=>this._cachedIconsByUrl.set(t,s)),S(s=>Me(s)))}getNamedSvgIcon(e,t=""){let o=cn(t,e),s=this._svgIconConfigs.get(o);if(s)return this._getSvgFromConfig(s);if(s=this._getIconConfigFromResolvers(t,e),s)return this._svgIconConfigs.set(o,s),this._getSvgFromConfig(s);let i=this._iconSetConfigs.get(t);return i?this._getSvgFromIconSetConfigs(e,i):qe(on(o))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(e){return e.svgText?L(Me(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(S(t=>Me(t)))}_getSvgFromIconSetConfigs(e,t){let o=this._extractIconWithNameFromAnySet(e,t);if(o)return L(o);let s=t.filter(i=>!i.svgText).map(i=>this._loadSvgIconSetFromConfig(i).pipe(tt(a=>{let l=`Loading icon set URL: ${this._sanitizer.sanitize(M.RESOURCE_URL,i.url)} failed: ${a.message}`;return this._errorHandler.handleError(new Error(l)),L(null)})));return Qe(s).pipe(S(()=>{let i=this._extractIconWithNameFromAnySet(e,t);if(!i)throw on(e);return i}))}_extractIconWithNameFromAnySet(e,t){for(let o=t.length-1;o>=0;o--){let s=t[o];if(s.svgText&&s.svgText.toString().indexOf(e)>-1){let i=this._svgElementFromConfig(s),a=this._extractSvgIconFromSet(i,e,s.options);if(a)return a}}return null}_loadSvgIconFromConfig(e){return this._fetchIcon(e).pipe(ue(t=>e.svgText=t),S(()=>this._svgElementFromConfig(e)))}_loadSvgIconSetFromConfig(e){return e.svgText?L(null):this._fetchIcon(e).pipe(ue(t=>e.svgText=t))}_extractSvgIconFromSet(e,t,o){let s=e.querySelector(`[id="${t}"]`);if(!s)return null;let i=s.cloneNode(!0);if(i.removeAttribute("id"),i.nodeName.toLowerCase()==="svg")return this._setSvgAttributes(i,o);if(i.nodeName.toLowerCase()==="symbol")return this._setSvgAttributes(this._toSvgElement(i),o);let a=this._svgElementFromString(le("<svg></svg>"));return a.appendChild(i),this._setSvgAttributes(a,o)}_svgElementFromString(e){let t=this._document.createElement("DIV");t.innerHTML=e;let o=t.querySelector("svg");if(!o)throw Error("<svg> tag not found");return o}_toSvgElement(e){let t=this._svgElementFromString(le("<svg></svg>")),o=e.attributes;for(let s=0;s<o.length;s++){let{name:i,value:a}=o[s];i!=="id"&&t.setAttribute(i,a)}for(let s=0;s<e.childNodes.length;s++)e.childNodes[s].nodeType===this._document.ELEMENT_NODE&&t.appendChild(e.childNodes[s].cloneNode(!0));return t}_setSvgAttributes(e,t){return e.setAttribute("fit",""),e.setAttribute("height","100%"),e.setAttribute("width","100%"),e.setAttribute("preserveAspectRatio","xMidYMid meet"),e.setAttribute("focusable","false"),t&&t.viewBox&&e.setAttribute("viewBox",t.viewBox),e}_fetchIcon(e){let{url:t,options:o}=e,s=o?.withCredentials??!1;if(!this._httpClient)throw lr();if(t==null)throw Error(`Cannot fetch icon from URL "${t}".`);let i=this._sanitizer.sanitize(M.RESOURCE_URL,t);if(!i)throw sn(t);let a=this._inProgressUrlFetches.get(i);if(a)return a;let c=this._httpClient.get(i,{responseType:"text",withCredentials:s}).pipe(S(l=>le(l)),de(()=>this._inProgressUrlFetches.delete(i)),ot());return this._inProgressUrlFetches.set(i,c),c}_addSvgIconConfig(e,t,o){return this._svgIconConfigs.set(cn(e,t),o),this}_addSvgIconSetConfig(e,t){let o=this._iconSetConfigs.get(e);return o?o.push(t):this._iconSetConfigs.set(e,[t]),this}_svgElementFromConfig(e){if(!e.svgElement){let t=this._svgElementFromString(e.svgText);this._setSvgAttributes(t,e.options),e.svgElement=t}return e.svgElement}_getIconConfigFromResolvers(e,t){for(let o=0;o<this._resolvers.length;o++){let s=this._resolvers[o](t,e);if(s)return dr(s)?new F(s.url,null,s.options):new F(s,null)}}static \u0275fac=function(t){return new(t||r)(u(Z,8),u(Ye),u(E,8),u(U))};static \u0275prov=m({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();function Me(r){return r.cloneNode(!0)}function cn(r,n){return r+":"+n}function dr(r){return!!(r.url&&r.options)}var ur=["*"],hr=new T("MAT_ICON_DEFAULT_OPTIONS"),fr=new T("mat-icon-location",{providedIn:"root",factory:pr});function pr(){let r=g(E),n=r?r.location:null;return{getPathname:()=>n?n.pathname+n.search:""}}var dn=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],mr=dn.map(r=>`[${r}]`).join(", "),gr=/^url\(['"]?#(.*?)['"]?\)$/,is=(()=>{class r{_elementRef=g(ut);_iconRegistry=g(ln);_location=g(fr);_errorHandler=g(U);_defaultColor;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;inline=!1;get svgIcon(){return this._svgIcon}set svgIcon(e){e!==this._svgIcon&&(e?this._updateSvgIcon(e):this._svgIcon&&this._clearSvgElement(),this._svgIcon=e)}_svgIcon;get fontSet(){return this._fontSet}set fontSet(e){let t=this._cleanupFontValue(e);t!==this._fontSet&&(this._fontSet=t,this._updateFontIconClasses())}_fontSet;get fontIcon(){return this._fontIcon}set fontIcon(e){let t=this._cleanupFontValue(e);t!==this._fontIcon&&(this._fontIcon=t,this._updateFontIconClasses())}_fontIcon;_previousFontSetClass=[];_previousFontIconClass;_svgName;_svgNamespace;_previousPath;_elementsWithExternalReferences;_currentIconFetch=Ze.EMPTY;constructor(){let e=g(new Nt("aria-hidden"),{optional:!0}),t=g(hr,{optional:!0});t&&(t.color&&(this.color=this._defaultColor=t.color),t.fontSet&&(this.fontSet=t.fontSet)),e||this._elementRef.nativeElement.setAttribute("aria-hidden","true")}_splitIconName(e){if(!e)return["",""];let t=e.split(":");switch(t.length){case 1:return["",t[0]];case 2:return t;default:throw Error(`Invalid icon name: "${e}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){let e=this._elementsWithExternalReferences;if(e&&e.size){let t=this._location.getPathname();t!==this._previousPath&&(this._previousPath=t,this._prependPathToReferences(t))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(e){this._clearSvgElement();let t=this._location.getPathname();this._previousPath=t,this._cacheChildrenWithExternalReferences(e),this._prependPathToReferences(t),this._elementRef.nativeElement.appendChild(e)}_clearSvgElement(){let e=this._elementRef.nativeElement,t=e.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();t--;){let o=e.childNodes[t];(o.nodeType!==1||o.nodeName.toLowerCase()==="svg")&&o.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;let e=this._elementRef.nativeElement,t=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(o=>o.length>0);this._previousFontSetClass.forEach(o=>e.classList.remove(o)),t.forEach(o=>e.classList.add(o)),this._previousFontSetClass=t,this.fontIcon!==this._previousFontIconClass&&!t.includes("mat-ligature-font")&&(this._previousFontIconClass&&e.classList.remove(this._previousFontIconClass),this.fontIcon&&e.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(e){return typeof e=="string"?e.trim().split(" ")[0]:e}_prependPathToReferences(e){let t=this._elementsWithExternalReferences;t&&t.forEach((o,s)=>{o.forEach(i=>{s.setAttribute(i.name,`url('${e}#${i.value}')`)})})}_cacheChildrenWithExternalReferences(e){let t=e.querySelectorAll(mr),o=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let s=0;s<t.length;s++)dn.forEach(i=>{let a=t[s],c=a.getAttribute(i),l=c?c.match(gr):null;if(l){let d=o.get(a);d||(d=[],o.set(a,d)),d.push({name:i,value:l[1]})}})}_updateSvgIcon(e){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),e){let[t,o]=this._splitIconName(e);t&&(this._svgNamespace=t),o&&(this._svgName=o),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(o,t).pipe(rt(1)).subscribe(s=>this._setSvgElement(s),s=>{let i=`Error retrieving icon ${t}:${o}! ${s.message}`;this._errorHandler.handleError(new Error(i))})}}static \u0275fac=function(t){return new(t||r)};static \u0275cmp=It({type:r,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(t,o){t&2&&(bt("data-mat-icon-type",o._usingFontIcon()?"font":"svg")("data-mat-icon-name",o._svgName||o.fontIcon)("data-mat-icon-namespace",o._svgNamespace||o.fontSet)("fontIcon",o._usingFontIcon()?o.fontIcon:null),Ct(o.color?"mat-"+o.color:""),At("mat-icon-inline",o.inline)("mat-icon-no-color",o.color!=="primary"&&o.color!=="accent"&&o.color!=="warn"))},inputs:{color:"color",inline:[2,"inline","inline",Pt],svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],ngContentSelectors:ur,decls:1,vars:0,template:function(t,o){t&1&&(Mt(),St(0))},styles:[`mat-icon,mat-icon.mat-primary,mat-icon.mat-accent,mat-icon.mat-warn{color:var(--mat-icon-color, inherit)}.mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px;overflow:hidden}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.mat-icon.mat-ligature-font[fontIcon]::before{content:attr(fontIcon)}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}
3
+ `],encapsulation:2,changeDetection:0})}return r})(),as=(()=>{class r{static \u0275fac=function(t){return new(t||r)};static \u0275mod=ee({type:r});static \u0275inj=q({imports:[Le,Le]})}return r})();var un=200,yr=5e3,hn=class r{http=g(Z);apps=H([]);overview=H(null);events=H([]);connected=H(!1);ready=H(!1);workspaces=Dt(()=>{let n=new Set;for(let e of this.apps())e.workspaceLabel&&n.add(e.workspaceLabel);return Array.from(n).sort()});byName(n){return this.apps().find(e=>e.name===n)}streamStop;pollTimer;start(){this.streamStop||(this.refresh(),this.streamStop=this.openEventStream(),this.pollTimer=setInterval(()=>{this.refresh()},yr))}stop(){this.streamStop?.(),this.streamStop=void 0,this.pollTimer&&clearInterval(this.pollTimer),this.pollTimer=void 0}async refresh(){try{let[n,e]=await Promise.all([_(this.http.get("/api/apps?format=full")),_(this.http.get("/api/overview"))]);this.apps.set(Array.isArray(n)?n:[]),this.overview.set(e??null),this.connected.set(!0),this.ready.set(!0)}catch{this.connected.set(!1)}}async appDetail(n){try{return await _(this.http.get(`/api/apps/${encodeURIComponent(n)}?format=full`))}catch{return null}}async appErrors(n){try{let e=await _(this.http.get(`/api/apps/${encodeURIComponent(n)}/errors?format=full`));return Array.isArray(e)?e:[]}catch{return[]}}async startApp(n){this.patch(n,{status:"starting"}),await _(this.http.post(`/api/apps/${encodeURIComponent(n)}/start`,{})),await this.refresh()}async stopApp(n){this.patch(n,{status:"stopped"}),await _(this.http.post(`/api/apps/${encodeURIComponent(n)}/stop`,{})),await this.refresh()}async restartApp(n){this.patch(n,{status:"starting"}),await _(this.http.post(`/api/apps/${encodeURIComponent(n)}/restart`,{})),await this.refresh()}async ensureApp(n,e="healthy",t=18e4){return _(this.http.post(`/api/apps/${encodeURIComponent(n)}/ensure?until=${e}&timeoutMs=${t}`,{}))}async ensureUp(n,e="healthy",t=3e5){return _(this.http.post(`/api/profiles/${encodeURIComponent(n)}/ensure-up?until=${e}&timeoutMs=${t}`,{}))}async discoveryExplain(){try{return await _(this.http.get("/api/discovery/explain"))}catch{return null}}async getConfig(){try{return await _(this.http.get("/api/config"))}catch{return null}}async patchConfig(n,e){return _(this.http.patch("/api/config",e,{headers:{"if-match":n}}))}async reloadConfig(){return _(this.http.post("/api/config/reload",{}))}async runAutoFix(n={}){return _(this.http.post("/api/doctor/auto-fix",n))}async getCompileTimes(n,e=100){try{let t=await _(this.http.get(`/api/history/compile-times?app=${encodeURIComponent(n)}&limit=${e}`));return Array.isArray(t)?t:[]}catch{return[]}}async getHistoryWhy(n){try{return await _(this.http.get(`/api/history/why/${encodeURIComponent(n)}`))}catch{return null}}openLogStream(n,e){let t=new AbortController;return(async()=>{try{let s=(await fetch(`/api/apps/${encodeURIComponent(n)}/logs/stream`,{signal:t.signal})).body?.getReader();if(!s)return;let i=new TextDecoder,a="";for(;;){let{done:c,value:l}=await s.read();if(c)break;a+=i.decode(l,{stream:!0});let d=a.split(`
4
+ `);a=d.pop()??"";for(let p of d){let y=p.startsWith("data: ")?p.slice(6):p;if(y.trim())try{e(JSON.parse(y))}catch{}}}}catch{}})(),()=>t.abort()}patch(n,e){this.apps.update(t=>t.map(o=>o.name===n?D(D({},o),e):o))}appendEvent(n){this.events.update(e=>{let t=e.concat(n);return t.length>un?t.slice(t.length-un):t})}applyEvent(n){this.appendEvent(n),n.app&&(n.type==="status"&&n.to?this.patch(n.app,{status:n.to,lastChangeMs:0}):n.type==="health"&&n.to?this.patch(n.app,{health:n.to}):n.type==="error"&&this.apps.update(e=>e.map(t=>t.name===n.app?Ae(D({},t),{errorCount:(t.errorCount??0)+1}):t)))}openEventStream(){let n=new AbortController;return(async()=>{try{let e=await fetch("/api/events?stream=ndjson",{signal:n.signal});this.connected.set(!0);let t=e.body?.getReader();if(!t)return;let o=new TextDecoder,s="";for(;;){let{done:i,value:a}=await t.read();if(i)break;s+=o.decode(a,{stream:!0});let c=s.split(`
5
+ `);s=c.pop()??"";for(let l of c)if(l.trim())try{this.applyEvent(JSON.parse(l))}catch{}}}catch{this.connected.set(!1)}})(),()=>n.abort()}static \u0275fac=function(e){return new(e||r)};static \u0275prov=m({token:r,factory:r.\u0275fac,providedIn:"root"})};function fs(r){switch(r.status){case"serving":return{color:"var(--mat-sys-primary)",label:r.health==="healthy"?"healthy":"serving",kind:"serving"};case"compiling":return{color:"var(--mat-sys-tertiary)",label:"compiling",kind:"compiling"};case"starting":return{color:"var(--mat-sys-secondary)",label:"starting",kind:"starting"};case"error":return{color:"var(--mat-sys-error)",label:"error",kind:"error"};default:return{color:"var(--mat-sys-outline)",label:"stopped",kind:"stopped"}}}export{He as a,Mn as b,Z as c,tr as d,nr as e,zo as f,hr as g,is as h,as as i,hn as j,fs as k};
@@ -0,0 +1 @@
1
+ import{$ as Tt,Y as E,a as me,c as Et}from"./chunk-K43KW4K2.js";var _=(function(n){return n[n.State=0]="State",n[n.Transition=1]="Transition",n[n.Sequence=2]="Sequence",n[n.Group=3]="Group",n[n.Animate=4]="Animate",n[n.Keyframes=5]="Keyframes",n[n.Style=6]="Style",n[n.Trigger=7]="Trigger",n[n.Reference=8]="Reference",n[n.AnimateChild=9]="AnimateChild",n[n.AnimateRef=10]="AnimateRef",n[n.Query=11]="Query",n[n.Stagger=12]="Stagger",n})(_||{}),z="*";function vt(n,e=null){return{type:_.Sequence,steps:n,options:e}}function Le(n){return{type:_.Style,styles:n,offset:null}}var $=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(e=0,t=0){this.totalTime=e+t}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(e=>e()),this._onDoneFns=[])}onStart(e){this._originalOnStartFns.push(e),this._onStartFns.push(e)}onDone(e){this._originalOnDoneFns.push(e),this._onDoneFns.push(e)}onDestroy(e){this._onDestroyFns.push(e)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(e=>e()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(e=>e()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(e){this._position=this.totalTime?e*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(e){let t=e=="start"?this._onStartFns:this._onDoneFns;t.forEach(s=>s()),t.length=0}},ee=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(e){this.players=e;let t=0,s=0,i=0,r=this.players.length;r==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(a=>{a.onDone(()=>{++t==r&&this._onFinish()}),a.onDestroy(()=>{++s==r&&this._onDestroy()}),a.onStart(()=>{++i==r&&this._onStart()})}),this.totalTime=this.players.reduce((a,o)=>Math.max(a,o.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(e=>e()),this._onDoneFns=[])}init(){this.players.forEach(e=>e.init())}onStart(e){this._onStartFns.push(e)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(e=>e()),this._onStartFns=[])}onDone(e){this._onDoneFns.push(e)}onDestroy(e){this._onDestroyFns.push(e)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(e=>e.play())}pause(){this.players.forEach(e=>e.pause())}restart(){this.players.forEach(e=>e.restart())}finish(){this._onFinish(),this.players.forEach(e=>e.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(e=>e.destroy()),this._onDestroyFns.forEach(e=>e()),this._onDestroyFns=[])}reset(){this.players.forEach(e=>e.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(e){let t=e*this.totalTime;this.players.forEach(s=>{let i=s.totalTime?Math.min(1,t/s.totalTime):1;s.setPosition(i)})}getPosition(){let e=this.players.reduce((t,s)=>t===null||s.totalTime>t.totalTime?s:t,null);return e!=null?e.getPosition():0}beforeDestroy(){this.players.forEach(e=>{e.beforeDestroy&&e.beforeDestroy()})}triggerCallback(e){let t=e=="start"?this._onStartFns:this._onDoneFns;t.forEach(s=>s()),t.length=0}},re="!";function bt(n){return new E(3e3,!1)}function bs(){return new E(3100,!1)}function ws(){return new E(3101,!1)}function Ps(n){return new E(3001,!1)}function As(n){return new E(3003,!1)}function Ns(n){return new E(3004,!1)}function Pt(n,e){return new E(3005,!1)}function At(){return new E(3006,!1)}function Nt(){return new E(3007,!1)}function Ct(n,e){return new E(3008,!1)}function Dt(n){return new E(3002,!1)}function Mt(n,e,t,s,i){return new E(3010,!1)}function kt(){return new E(3011,!1)}function Ft(){return new E(3012,!1)}function Rt(){return new E(3200,!1)}function Ot(){return new E(3202,!1)}function Lt(){return new E(3013,!1)}function It(n){return new E(3014,!1)}function zt(n){return new E(3015,!1)}function Kt(n){return new E(3016,!1)}function qt(n){return new E(3500,!1)}function Bt(n){return new E(3501,!1)}function Qt(n,e){return new E(3404,!1)}function Cs(n){return new E(3502,!1)}function Vt(n){return new E(3503,!1)}function $t(){return new E(3300,!1)}function Ut(n){return new E(3504,!1)}function Gt(n){return new E(3301,!1)}function jt(n,e){return new E(3302,!1)}function Wt(n){return new E(3303,!1)}function Ht(n,e){return new E(3400,!1)}function Yt(n){return new E(3401,!1)}function Xt(n){return new E(3402,!1)}function xt(n,e){return new E(3505,!1)}var Ds=new Set(["-moz-outline-radius","-moz-outline-radius-bottomleft","-moz-outline-radius-bottomright","-moz-outline-radius-topleft","-moz-outline-radius-topright","-ms-grid-columns","-ms-grid-rows","-webkit-line-clamp","-webkit-text-fill-color","-webkit-text-stroke","-webkit-text-stroke-color","accent-color","all","backdrop-filter","background","background-color","background-position","background-size","block-size","border","border-block-end","border-block-end-color","border-block-end-width","border-block-start","border-block-start-color","border-block-start-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-width","border-color","border-end-end-radius","border-end-start-radius","border-image-outset","border-image-slice","border-image-width","border-inline-end","border-inline-end-color","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-width","border-left","border-left-color","border-left-width","border-radius","border-right","border-right-color","border-right-width","border-start-end-radius","border-start-start-radius","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-width","border-width","bottom","box-shadow","caret-color","clip","clip-path","color","column-count","column-gap","column-rule","column-rule-color","column-rule-width","column-width","columns","filter","flex","flex-basis","flex-grow","flex-shrink","font","font-size","font-size-adjust","font-stretch","font-variation-settings","font-weight","gap","grid-column-gap","grid-gap","grid-row-gap","grid-template-columns","grid-template-rows","height","inline-size","input-security","inset","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","left","letter-spacing","line-clamp","line-height","margin","margin-block-end","margin-block-start","margin-bottom","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","mask","mask-border","mask-position","mask-size","max-block-size","max-height","max-inline-size","max-lines","max-width","min-block-size","min-height","min-inline-size","min-width","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","outline","outline-color","outline-offset","outline-width","padding","padding-block-end","padding-block-start","padding-bottom","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","perspective","perspective-origin","right","rotate","row-gap","scale","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-coordinate","scroll-snap-destination","scrollbar-color","shape-image-threshold","shape-margin","shape-outside","tab-size","text-decoration","text-decoration-color","text-decoration-thickness","text-emphasis","text-emphasis-color","text-indent","text-shadow","text-underline-offset","top","transform","transform-origin","translate","vertical-align","visibility","width","word-spacing","z-index","zoom"]);function U(n){switch(n.length){case 0:return new $;case 1:return n[0];default:return new ee(n)}}function qe(n,e,t=new Map,s=new Map){let i=[],r=[],a=-1,o=null;if(e.forEach(l=>{let u=l.get("offset"),c=u==a,h=c&&o||new Map;l.forEach((S,y)=>{let d=y,g=S;if(y!=="offset")switch(d=n.normalizePropertyName(d,i),g){case re:g=t.get(y);break;case z:g=s.get(y);break;default:g=n.normalizeStyleValue(y,d,g,i);break}h.set(d,g)}),c||r.push(h),o=h,a=u}),i.length)throw Cs(i);return r}function pe(n,e,t,s){switch(e){case"start":n.onStart(()=>s(t&&Ie(t,"start",n)));break;case"done":n.onDone(()=>s(t&&Ie(t,"done",n)));break;case"destroy":n.onDestroy(()=>s(t&&Ie(t,"destroy",n)));break}}function Ie(n,e,t){let s=t.totalTime,i=!!t.disabled,r=ge(n.element,n.triggerName,n.fromState,n.toState,e||n.phaseName,s??n.totalTime,i),a=n._data;return a!=null&&(r._data=a),r}function ge(n,e,t,s,i="",r=0,a){return{element:n,triggerName:e,fromState:t,toState:s,phaseName:i,totalTime:r,disabled:!!a}}function F(n,e,t){let s=n.get(e);return s||n.set(e,s=t),s}function Be(n){let e=n.indexOf(":"),t=n.substring(1,e),s=n.slice(e+1);return[t,s]}var Ms=typeof document>"u"?null:document.documentElement;function ye(n){let e=n.parentNode||n.host||null;return e===Ms?null:e}function ks(n){return n.substring(1,6)=="ebkit"}var X=null,wt=!1;function Jt(n){X||(X=Rs()||{},wt=X.style?"WebkitAppearance"in X.style:!1);let e=!0;return X.style&&!ks(n)&&(e=n in X.style,!e&&wt&&(e="Webkit"+n.charAt(0).toUpperCase()+n.slice(1)in X.style)),e}function Fs(n){return Ds.has(n)}function Rs(){return typeof document<"u"?document.body:null}function Qe(n,e){for(;e;){if(e===n)return!0;e=ye(e)}return!1}function Ve(n,e,t){if(t)return Array.from(n.querySelectorAll(e));let s=n.querySelector(e);return s?[s]:[]}var Os=1e3,$e="{{",Ls="}}",_e="ng-enter",ae="ng-leave",oe="ng-trigger",le=".ng-trigger",Ue="ng-animating",Se=".ng-animating";function V(n){if(typeof n=="number")return n;let e=n.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:ze(parseFloat(e[1]),e[2])}function ze(n,e){return e==="s"?n*Os:n}function ue(n,e,t){return n.hasOwnProperty("duration")?n:zs(n,e,t)}var Is=/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i;function zs(n,e,t){let s,i=0,r="";if(typeof n=="string"){let a=n.match(Is);if(a===null)return e.push(bt(n)),{duration:0,delay:0,easing:""};s=ze(parseFloat(a[1]),a[2]);let o=a[3];o!=null&&(i=ze(parseFloat(o),a[4]));let l=a[5];l&&(r=l)}else s=n;if(!t){let a=!1,o=e.length;s<0&&(e.push(bs()),a=!0),i<0&&(e.push(ws()),a=!0),a&&e.splice(o,0,bt(n))}return{duration:s,delay:i,easing:r}}function Zt(n){return n.length?n[0]instanceof Map?n:n.map(e=>new Map(Object.entries(e))):[]}function Ge(n){return Array.isArray(n)?new Map(...n):new Map(n)}function K(n,e,t){e.forEach((s,i)=>{let r=Ee(i);t&&!t.has(i)&&t.set(i,n.style[r]),n.style[r]=s})}function j(n,e){e.forEach((t,s)=>{let i=Ee(s);n.style[i]=""})}function te(n){return Array.isArray(n)?n.length==1?n[0]:vt(n):n}function es(n,e,t){let s=e.params||{},i=je(n);i.length&&i.forEach(r=>{s.hasOwnProperty(r)||t.push(Ps(r))})}var Ke=new RegExp(`${$e}\\s*(.+?)\\s*${Ls}`,"g");function je(n){let e=[];if(typeof n=="string"){let t;for(;t=Ke.exec(n);)e.push(t[1]);Ke.lastIndex=0}return e}function se(n,e,t){let s=`${n}`,i=s.replace(Ke,(r,a)=>{let o=e[a];return o==null&&(t.push(As(a)),o=""),o.toString()});return i==s?n:i}var Ks=/-+([a-z0-9])/g;function Ee(n){return n.replace(Ks,(...e)=>e[1].toUpperCase())}function qs(n){return n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ts(n,e){return n===0||e===0}function ss(n,e,t){if(t.size&&e.length){let s=e[0],i=[];if(t.forEach((r,a)=>{s.has(a)||i.push(a),s.set(a,r)}),i.length)for(let r=1;r<e.length;r++){let a=e[r];i.forEach(o=>a.set(o,Te(n,o)))}}return e}function R(n,e,t){switch(e.type){case _.Trigger:return n.visitTrigger(e,t);case _.State:return n.visitState(e,t);case _.Transition:return n.visitTransition(e,t);case _.Sequence:return n.visitSequence(e,t);case _.Group:return n.visitGroup(e,t);case _.Animate:return n.visitAnimate(e,t);case _.Keyframes:return n.visitKeyframes(e,t);case _.Style:return n.visitStyle(e,t);case _.Reference:return n.visitReference(e,t);case _.AnimateChild:return n.visitAnimateChild(e,t);case _.AnimateRef:return n.visitAnimateRef(e,t);case _.Query:return n.visitQuery(e,t);case _.Stagger:return n.visitStagger(e,t);default:throw Ns(e.type)}}function Te(n,e){return window.getComputedStyle(n)[e]}var gs=(()=>{class n{validateStyleProperty(t){return Jt(t)}containsElement(t,s){return Qe(t,s)}getParentElement(t){return ye(t)}query(t,s,i){return Ve(t,s,i)}computeStyle(t,s,i){return i||""}animate(t,s,i,r,a,o=[],l){return new $(i,r)}static \u0275fac=function(s){return new(s||n)};static \u0275prov=Tt({token:n,factory:n.\u0275fac})}return n})(),is=class{static NOOP=new gs},Je=class{},Ze=class{normalizePropertyName(e,t){return e}normalizeStyleValue(e,t,s,i){return s}},Bs=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]),et=class extends Je{normalizePropertyName(e,t){return Ee(e)}normalizeStyleValue(e,t,s,i){let r="",a=s.toString().trim();if(Bs.has(t)&&s!==0&&s!=="0")if(typeof s=="number")r="px";else{let o=s.match(/^[+-]?[\d\.]+([a-z]*)$/);o&&o[1].length==0&&i.push(Pt(e,s))}return a+r}};var Ae="*";function Qs(n,e){let t=[];return typeof n=="string"?n.split(/\s*,\s*/).forEach(s=>Vs(s,t,e)):t.push(n),t}function Vs(n,e,t){if(n[0]==":"){let l=$s(n,t);if(typeof l=="function"){e.push(l);return}n=l}let s=n.match(/^(\*|[-\w]+)\s*(<?[=-]>)\s*(\*|[-\w]+)$/);if(s==null||s.length<4)return t.push(zt(n)),e;let i=s[1],r=s[2],a=s[3];e.push(ns(i,a));let o=i==Ae&&a==Ae;r[0]=="<"&&!o&&e.push(ns(a,i))}function $s(n,e){switch(n){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,s)=>parseFloat(s)>parseFloat(t);case":decrement":return(t,s)=>parseFloat(s)<parseFloat(t);default:return e.push(Kt(n)),"* => *"}}var ve=new Set(["true","1"]),be=new Set(["false","0"]);function ns(n,e){let t=ve.has(n)||be.has(n),s=ve.has(e)||be.has(e);return(i,r)=>{let a=n==Ae||n==i,o=e==Ae||e==r;return!a&&t&&typeof i=="boolean"&&(a=i?ve.has(n):be.has(n)),!o&&s&&typeof r=="boolean"&&(o=r?ve.has(e):be.has(e)),a&&o}}var ys=":self",Us=new RegExp(`s*${ys}s*,?`,"g");function dt(n,e,t,s){return new tt(n).build(e,t,s)}var rs="",tt=class{_driver;constructor(e){this._driver=e}build(e,t,s){let i=new st(t);return this._resetContextStyleTimingState(i),R(this,te(e),i)}_resetContextStyleTimingState(e){e.currentQuerySelector=rs,e.collectedStyles=new Map,e.collectedStyles.set(rs,new Map),e.currentTime=0}visitTrigger(e,t){let s=t.queryCount=0,i=t.depCount=0,r=[],a=[];return e.name.charAt(0)=="@"&&t.errors.push(At()),e.definitions.forEach(o=>{if(this._resetContextStyleTimingState(t),o.type==_.State){let l=o,u=l.name;u.toString().split(/\s*,\s*/).forEach(c=>{l.name=c,r.push(this.visitState(l,t))}),l.name=u}else if(o.type==_.Transition){let l=this.visitTransition(o,t);s+=l.queryCount,i+=l.depCount,a.push(l)}else t.errors.push(Nt())}),{type:_.Trigger,name:e.name,states:r,transitions:a,queryCount:s,depCount:i,options:null}}visitState(e,t){let s=this.visitStyle(e.styles,t),i=e.options&&e.options.params||null;if(s.containsDynamicStyles){let r=new Set,a=i||{};s.styles.forEach(o=>{o instanceof Map&&o.forEach(l=>{je(l).forEach(u=>{a.hasOwnProperty(u)||r.add(u)})})}),r.size&&t.errors.push(Ct(e.name,[...r.values()]))}return{type:_.State,name:e.name,style:s,options:i?{params:i}:null}}visitTransition(e,t){t.queryCount=0,t.depCount=0;let s=R(this,te(e.animation),t),i=Qs(e.expr,t.errors);return{type:_.Transition,matchers:i,animation:s,queryCount:t.queryCount,depCount:t.depCount,options:x(e.options)}}visitSequence(e,t){return{type:_.Sequence,steps:e.steps.map(s=>R(this,s,t)),options:x(e.options)}}visitGroup(e,t){let s=t.currentTime,i=0,r=e.steps.map(a=>{t.currentTime=s;let o=R(this,a,t);return i=Math.max(i,t.currentTime),o});return t.currentTime=i,{type:_.Group,steps:r,options:x(e.options)}}visitAnimate(e,t){let s=Hs(e.timings,t.errors);t.currentAnimateTimings=s;let i,r=e.styles?e.styles:Le({});if(r.type==_.Keyframes)i=this.visitKeyframes(r,t);else{let a=e.styles,o=!1;if(!a){o=!0;let u={};s.easing&&(u.easing=s.easing),a=Le(u)}t.currentTime+=s.duration+s.delay;let l=this.visitStyle(a,t);l.isEmptyStep=o,i=l}return t.currentAnimateTimings=null,{type:_.Animate,timings:s,style:i,options:null}}visitStyle(e,t){let s=this._makeStyleAst(e,t);return this._validateStyleAst(s,t),s}_makeStyleAst(e,t){let s=[],i=Array.isArray(e.styles)?e.styles:[e.styles];for(let o of i)typeof o=="string"?o===z?s.push(o):t.errors.push(Dt(o)):s.push(new Map(Object.entries(o)));let r=!1,a=null;return s.forEach(o=>{if(o instanceof Map&&(o.has("easing")&&(a=o.get("easing"),o.delete("easing")),!r)){for(let l of o.values())if(l.toString().indexOf($e)>=0){r=!0;break}}}),{type:_.Style,styles:s,easing:a,offset:e.offset,containsDynamicStyles:r,options:null}}_validateStyleAst(e,t){let s=t.currentAnimateTimings,i=t.currentTime,r=t.currentTime;s&&r>0&&(r-=s.duration+s.delay),e.styles.forEach(a=>{typeof a!="string"&&a.forEach((o,l)=>{let u=t.collectedStyles.get(t.currentQuerySelector),c=u.get(l),h=!0;c&&(r!=i&&r>=c.startTime&&i<=c.endTime&&(t.errors.push(Mt(l,c.startTime,c.endTime,r,i)),h=!1),r=c.startTime),h&&u.set(l,{startTime:r,endTime:i}),t.options&&es(o,t.options,t.errors)})})}visitKeyframes(e,t){let s={type:_.Keyframes,styles:[],options:null};if(!t.currentAnimateTimings)return t.errors.push(kt()),s;let i=1,r=0,a=[],o=!1,l=!1,u=0,c=e.steps.map(w=>{let P=this._makeStyleAst(w,t),D=P.offset!=null?P.offset:Ws(P.styles),N=0;return D!=null&&(r++,N=P.offset=D),l=l||N<0||N>1,o=o||N<u,u=N,a.push(N),P});l&&t.errors.push(Ft()),o&&t.errors.push(Rt());let h=e.steps.length,S=0;r>0&&r<h?t.errors.push(Ot()):r==0&&(S=i/(h-1));let y=h-1,d=t.currentTime,g=t.currentAnimateTimings,v=g.duration;return c.forEach((w,P)=>{let D=S>0?P==y?1:S*P:a[P],N=D*v;t.currentTime=d+g.delay+N,g.duration=N,this._validateStyleAst(w,t),w.offset=D,s.styles.push(w)}),s}visitReference(e,t){return{type:_.Reference,animation:R(this,te(e.animation),t),options:x(e.options)}}visitAnimateChild(e,t){return t.depCount++,{type:_.AnimateChild,options:x(e.options)}}visitAnimateRef(e,t){return{type:_.AnimateRef,animation:this.visitReference(e.animation,t),options:x(e.options)}}visitQuery(e,t){let s=t.currentQuerySelector,i=e.options||{};t.queryCount++,t.currentQuery=e;let[r,a]=Gs(e.selector);t.currentQuerySelector=s.length?s+" "+r:r,F(t.collectedStyles,t.currentQuerySelector,new Map);let o=R(this,te(e.animation),t);return t.currentQuery=null,t.currentQuerySelector=s,{type:_.Query,selector:r,limit:i.limit||0,optional:!!i.optional,includeSelf:a,animation:o,originalSelector:e.selector,options:x(e.options)}}visitStagger(e,t){t.currentQuery||t.errors.push(Lt());let s=e.timings==="full"?{duration:0,delay:0,easing:"full"}:ue(e.timings,t.errors,!0);return{type:_.Stagger,animation:R(this,te(e.animation),t),timings:s,options:null}}};function Gs(n){let e=!!n.split(/\s*,\s*/).find(t=>t==ys);return e&&(n=n.replace(Us,"")),n=n.replace(/@\*/g,le).replace(/@\w+/g,t=>le+"-"+t.slice(1)).replace(/:animating/g,Se),[n,e]}function js(n){return n?me({},n):null}var st=class{errors;queryCount=0;depCount=0;currentTransition=null;currentQuery=null;currentQuerySelector=null;currentAnimateTimings=null;currentTime=0;collectedStyles=new Map;options=null;unsupportedCSSPropertiesFound=new Set;constructor(e){this.errors=e}};function Ws(n){if(typeof n=="string")return null;let e=null;if(Array.isArray(n))n.forEach(t=>{if(t instanceof Map&&t.has("offset")){let s=t;e=parseFloat(s.get("offset")),s.delete("offset")}});else if(n instanceof Map&&n.has("offset")){let t=n;e=parseFloat(t.get("offset")),t.delete("offset")}return e}function Hs(n,e){if(n.hasOwnProperty("duration"))return n;if(typeof n=="number"){let r=ue(n,e).duration;return We(r,0,"")}let t=n;if(t.split(/\s+/).some(r=>r.charAt(0)=="{"&&r.charAt(1)=="{")){let r=We(0,0,"");return r.dynamic=!0,r.strValue=t,r}let i=ue(t,e);return We(i.duration,i.delay,i.easing)}function x(n){return n?(n=me({},n),n.params&&(n.params=js(n.params))):n={},n}function We(n,e,t){return{duration:n,delay:e,easing:t}}function mt(n,e,t,s,i,r,a=null,o=!1){return{type:1,element:n,keyframes:e,preStyleProps:t,postStyleProps:s,duration:i,delay:r,totalTime:i+r,easing:a,subTimeline:o}}var ne=class{_map=new Map;get(e){return this._map.get(e)||[]}append(e,t){let s=this._map.get(e);s||this._map.set(e,s=[]),s.push(...t)}has(e){return this._map.has(e)}clear(){this._map.clear()}},Ys=1,Xs=":enter",xs=new RegExp(Xs,"g"),Js=":leave",Zs=new RegExp(Js,"g");function pt(n,e,t,s,i,r=new Map,a=new Map,o,l,u=[]){return new it().buildKeyframes(n,e,t,s,i,r,a,o,l,u)}var it=class{buildKeyframes(e,t,s,i,r,a,o,l,u,c=[]){u=u||new ne;let h=new nt(e,t,u,i,r,c,[]);h.options=l;let S=l.delay?V(l.delay):0;h.currentTimeline.delayNextStep(S),h.currentTimeline.setStyles([a],null,h.errors,l),R(this,s,h);let y=h.timelines.filter(d=>d.containsAnimation());if(y.length&&o.size){let d;for(let g=y.length-1;g>=0;g--){let v=y[g];if(v.element===t){d=v;break}}d&&!d.allowOnlyTimelineStyles()&&d.setStyles([o],null,h.errors,l)}return y.length?y.map(d=>d.buildKeyframes()):[mt(t,[],[],[],0,S,"",!1)]}visitTrigger(e,t){}visitState(e,t){}visitTransition(e,t){}visitAnimateChild(e,t){let s=t.subInstructions.get(t.element);if(s){let i=t.createSubContext(e.options),r=t.currentTimeline.currentTime,a=this._visitSubInstructions(s,i,i.options);r!=a&&t.transformIntoNewTimeline(a)}t.previousNode=e}visitAnimateRef(e,t){let s=t.createSubContext(e.options);s.transformIntoNewTimeline(),this._applyAnimationRefDelays([e.options,e.animation.options],t,s),this.visitReference(e.animation,s),t.transformIntoNewTimeline(s.currentTimeline.currentTime),t.previousNode=e}_applyAnimationRefDelays(e,t,s){for(let i of e){let r=i?.delay;if(r){let a=typeof r=="number"?r:V(se(r,i?.params??{},t.errors));s.delayNextStep(a)}}}_visitSubInstructions(e,t,s){let r=t.currentTimeline.currentTime,a=s.duration!=null?V(s.duration):null,o=s.delay!=null?V(s.delay):null;return a!==0&&e.forEach(l=>{let u=t.appendInstructionToTimeline(l,a,o);r=Math.max(r,u.duration+u.delay)}),r}visitReference(e,t){t.updateOptions(e.options,!0),R(this,e.animation,t),t.previousNode=e}visitSequence(e,t){let s=t.subContextCount,i=t,r=e.options;if(r&&(r.params||r.delay)&&(i=t.createSubContext(r),i.transformIntoNewTimeline(),r.delay!=null)){i.previousNode.type==_.Style&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=Ne);let a=V(r.delay);i.delayNextStep(a)}e.steps.length&&(e.steps.forEach(a=>R(this,a,i)),i.currentTimeline.applyStylesToKeyframe(),i.subContextCount>s&&i.transformIntoNewTimeline()),t.previousNode=e}visitGroup(e,t){let s=[],i=t.currentTimeline.currentTime,r=e.options&&e.options.delay?V(e.options.delay):0;e.steps.forEach(a=>{let o=t.createSubContext(e.options);r&&o.delayNextStep(r),R(this,a,o),i=Math.max(i,o.currentTimeline.currentTime),s.push(o.currentTimeline)}),s.forEach(a=>t.currentTimeline.mergeTimelineCollectedStyles(a)),t.transformIntoNewTimeline(i),t.previousNode=e}_visitTiming(e,t){if(e.dynamic){let s=e.strValue,i=t.params?se(s,t.params,t.errors):s;return ue(i,t.errors)}else return{duration:e.duration,delay:e.delay,easing:e.easing}}visitAnimate(e,t){let s=t.currentAnimateTimings=this._visitTiming(e.timings,t),i=t.currentTimeline;s.delay&&(t.incrementTime(s.delay),i.snapshotCurrentStyles());let r=e.style;r.type==_.Keyframes?this.visitKeyframes(r,t):(t.incrementTime(s.duration),this.visitStyle(r,t),i.applyStylesToKeyframe()),t.currentAnimateTimings=null,t.previousNode=e}visitStyle(e,t){let s=t.currentTimeline,i=t.currentAnimateTimings;!i&&s.hasCurrentStyleProperties()&&s.forwardFrame();let r=i&&i.easing||e.easing;e.isEmptyStep?s.applyEmptyStep(r):s.setStyles(e.styles,r,t.errors,t.options),t.previousNode=e}visitKeyframes(e,t){let s=t.currentAnimateTimings,i=t.currentTimeline.duration,r=s.duration,o=t.createSubContext().currentTimeline;o.easing=s.easing,e.styles.forEach(l=>{let u=l.offset||0;o.forwardTime(u*r),o.setStyles(l.styles,l.easing,t.errors,t.options),o.applyStylesToKeyframe()}),t.currentTimeline.mergeTimelineCollectedStyles(o),t.transformIntoNewTimeline(i+r),t.previousNode=e}visitQuery(e,t){let s=t.currentTimeline.currentTime,i=e.options||{},r=i.delay?V(i.delay):0;r&&(t.previousNode.type===_.Style||s==0&&t.currentTimeline.hasCurrentStyleProperties())&&(t.currentTimeline.snapshotCurrentStyles(),t.previousNode=Ne);let a=s,o=t.invokeQuery(e.selector,e.originalSelector,e.limit,e.includeSelf,!!i.optional,t.errors);t.currentQueryTotal=o.length;let l=null;o.forEach((u,c)=>{t.currentQueryIndex=c;let h=t.createSubContext(e.options,u);r&&h.delayNextStep(r),u===t.element&&(l=h.currentTimeline),R(this,e.animation,h),h.currentTimeline.applyStylesToKeyframe();let S=h.currentTimeline.currentTime;a=Math.max(a,S)}),t.currentQueryIndex=0,t.currentQueryTotal=0,t.transformIntoNewTimeline(a),l&&(t.currentTimeline.mergeTimelineCollectedStyles(l),t.currentTimeline.snapshotCurrentStyles()),t.previousNode=e}visitStagger(e,t){let s=t.parentContext,i=t.currentTimeline,r=e.timings,a=Math.abs(r.duration),o=a*(t.currentQueryTotal-1),l=a*t.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":l=o-l;break;case"full":l=s.currentStaggerTime;break}let c=t.currentTimeline;l&&c.delayNextStep(l);let h=c.currentTime;R(this,e.animation,t),t.previousNode=e,s.currentStaggerTime=i.currentTime-h+(i.startTime-s.currentTimeline.startTime)}},Ne={},nt=class n{_driver;element;subInstructions;_enterClassName;_leaveClassName;errors;timelines;parentContext=null;currentTimeline;currentAnimateTimings=null;previousNode=Ne;subContextCount=0;options={};currentQueryIndex=0;currentQueryTotal=0;currentStaggerTime=0;constructor(e,t,s,i,r,a,o,l){this._driver=e,this.element=t,this.subInstructions=s,this._enterClassName=i,this._leaveClassName=r,this.errors=a,this.timelines=o,this.currentTimeline=l||new Ce(this._driver,t,0),o.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(e,t){if(!e)return;let s=e,i=this.options;s.duration!=null&&(i.duration=V(s.duration)),s.delay!=null&&(i.delay=V(s.delay));let r=s.params;if(r){let a=i.params;a||(a=this.options.params={}),Object.keys(r).forEach(o=>{(!t||!a.hasOwnProperty(o))&&(a[o]=se(r[o],a,this.errors))})}}_copyOptions(){let e={};if(this.options){let t=this.options.params;if(t){let s=e.params={};Object.keys(t).forEach(i=>{s[i]=t[i]})}}return e}createSubContext(e=null,t,s){let i=t||this.element,r=new n(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,s||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(e),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(e){return this.previousNode=Ne,this.currentTimeline=this.currentTimeline.fork(this.element,e),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(e,t,s){let i={duration:t??e.duration,delay:this.currentTimeline.currentTime+(s??0)+e.delay,easing:""},r=new rt(this._driver,e.element,e.keyframes,e.preStyleProps,e.postStyleProps,i,e.stretchStartingKeyframe);return this.timelines.push(r),i}incrementTime(e){this.currentTimeline.forwardTime(this.currentTimeline.duration+e)}delayNextStep(e){e>0&&this.currentTimeline.delayNextStep(e)}invokeQuery(e,t,s,i,r,a){let o=[];if(i&&o.push(this.element),e.length>0){e=e.replace(xs,"."+this._enterClassName),e=e.replace(Zs,"."+this._leaveClassName);let l=s!=1,u=this._driver.query(this.element,e,l);s!==0&&(u=s<0?u.slice(u.length+s,u.length):u.slice(0,s)),o.push(...u)}return!r&&o.length==0&&a.push(It(t)),o}},Ce=class n{_driver;element;startTime;_elementTimelineStylesLookup;duration=0;easing=null;_previousKeyframe=new Map;_currentKeyframe=new Map;_keyframes=new Map;_styleSummary=new Map;_localTimelineStyles=new Map;_globalTimelineStyles;_pendingStyles=new Map;_backFill=new Map;_currentEmptyStepKeyframe=null;constructor(e,t,s,i){this._driver=e,this.element=t,this.startTime=s,this._elementTimelineStylesLookup=i,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(t),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(t,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(e){let t=this._keyframes.size===1&&this._pendingStyles.size;this.duration||t?(this.forwardTime(this.currentTime+e),t&&this.snapshotCurrentStyles()):this.startTime+=e}fork(e,t){return this.applyStylesToKeyframe(),new n(this._driver,e,t||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=Ys,this._loadKeyframe()}forwardTime(e){this.applyStylesToKeyframe(),this.duration=e,this._loadKeyframe()}_updateStyle(e,t){this._localTimelineStyles.set(e,t),this._globalTimelineStyles.set(e,t),this._styleSummary.set(e,{time:this.currentTime,value:t})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(e){e&&this._previousKeyframe.set("easing",e);for(let[t,s]of this._globalTimelineStyles)this._backFill.set(t,s||z),this._currentKeyframe.set(t,z);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(e,t,s,i){t&&this._previousKeyframe.set("easing",t);let r=i&&i.params||{},a=ei(e,this._globalTimelineStyles);for(let[o,l]of a){let u=se(l,r,s);this._pendingStyles.set(o,u),this._localTimelineStyles.has(o)||this._backFill.set(o,this._globalTimelineStyles.get(o)??z),this._updateStyle(o,u)}}applyStylesToKeyframe(){this._pendingStyles.size!=0&&(this._pendingStyles.forEach((e,t)=>{this._currentKeyframe.set(t,e)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((e,t)=>{this._currentKeyframe.has(t)||this._currentKeyframe.set(t,e)}))}snapshotCurrentStyles(){for(let[e,t]of this._localTimelineStyles)this._pendingStyles.set(e,t),this._updateStyle(e,t)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){let e=[];for(let t in this._currentKeyframe)e.push(t);return e}mergeTimelineCollectedStyles(e){e._styleSummary.forEach((t,s)=>{let i=this._styleSummary.get(s);(!i||t.time>i.time)&&this._updateStyle(s,t.value)})}buildKeyframes(){this.applyStylesToKeyframe();let e=new Set,t=new Set,s=this._keyframes.size===1&&this.duration===0,i=[];this._keyframes.forEach((o,l)=>{let u=new Map([...this._backFill,...o]);u.forEach((c,h)=>{c===re?e.add(h):c===z&&t.add(h)}),s||u.set("offset",l/this.duration),i.push(u)});let r=[...e.values()],a=[...t.values()];if(s){let o=i[0],l=new Map(o);o.set("offset",0),l.set("offset",1),i=[o,l]}return mt(this.element,i,r,a,this.duration,this.startTime,this.easing,!1)}},rt=class extends Ce{keyframes;preStyleProps;postStyleProps;_stretchStartingKeyframe;timings;constructor(e,t,s,i,r,a,o=!1){super(e,t,a.delay),this.keyframes=s,this.preStyleProps=i,this.postStyleProps=r,this._stretchStartingKeyframe=o,this.timings={duration:a.duration,delay:a.delay,easing:a.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let e=this.keyframes,{delay:t,duration:s,easing:i}=this.timings;if(this._stretchStartingKeyframe&&t){let r=[],a=s+t,o=t/a,l=new Map(e[0]);l.set("offset",0),r.push(l);let u=new Map(e[0]);u.set("offset",as(o)),r.push(u);let c=e.length-1;for(let h=1;h<=c;h++){let S=new Map(e[h]),y=S.get("offset"),d=t+y*s;S.set("offset",as(d/a)),r.push(S)}s=a,t=0,i="",e=r}return mt(this.element,e,this.preStyleProps,this.postStyleProps,s,t,i,!0)}};function as(n,e=3){let t=Math.pow(10,e-1);return Math.round(n*t)/t}function ei(n,e){let t=new Map,s;return n.forEach(i=>{if(i==="*"){s??=e.keys();for(let r of s)t.set(r,z)}else for(let[r,a]of i)t.set(r,a)}),t}function os(n,e,t,s,i,r,a,o,l,u,c,h,S){return{type:0,element:n,triggerName:e,isRemovalTransition:i,fromState:t,fromStyles:r,toState:s,toStyles:a,timelines:o,queriedElements:l,preStyleProps:u,postStyleProps:c,totalTime:h,errors:S}}var He={},De=class{_triggerName;ast;_stateStyles;constructor(e,t,s){this._triggerName=e,this.ast=t,this._stateStyles=s}match(e,t,s,i){return ti(this.ast.matchers,e,t,s,i)}buildStyles(e,t,s){let i=this._stateStyles.get("*");return e!==void 0&&(i=this._stateStyles.get(e?.toString())||i),i?i.buildStyles(t,s):new Map}build(e,t,s,i,r,a,o,l,u,c){let h=[],S=this.ast.options&&this.ast.options.params||He,y=o&&o.params||He,d=this.buildStyles(s,y,h),g=l&&l.params||He,v=this.buildStyles(i,g,h),w=new Set,P=new Map,D=new Map,N=i==="void",J={params:_s(g,S),delay:this.ast.options?.delay},B=c?[]:pt(e,t,this.ast.animation,r,a,d,v,J,u,h),M=0;return B.forEach(k=>{M=Math.max(k.duration+k.delay,M)}),h.length?os(t,this._triggerName,s,i,N,d,v,[],[],P,D,M,h):(B.forEach(k=>{let W=k.element,Z=F(P,W,new Set);k.preStyleProps.forEach(H=>Z.add(H));let gt=F(D,W,new Set);k.postStyleProps.forEach(H=>gt.add(H)),W!==t&&w.add(W)}),os(t,this._triggerName,s,i,N,d,v,B,[...w.values()],P,D,M))}};function ti(n,e,t,s,i){return n.some(r=>r(e,t,s,i))}function _s(n,e){let t=me({},e);return Object.entries(n).forEach(([s,i])=>{i!=null&&(t[s]=i)}),t}var at=class{styles;defaultParams;normalizer;constructor(e,t,s){this.styles=e,this.defaultParams=t,this.normalizer=s}buildStyles(e,t){let s=new Map,i=_s(e,this.defaultParams);return this.styles.styles.forEach(r=>{typeof r!="string"&&r.forEach((a,o)=>{a&&(a=se(a,i,t));let l=this.normalizer.normalizePropertyName(o,t);a=this.normalizer.normalizeStyleValue(o,l,a,t),s.set(o,a)})}),s}};function si(n,e,t){return new ot(n,e,t)}var ot=class{name;ast;_normalizer;transitionFactories=[];fallbackTransition;states=new Map;constructor(e,t,s){this.name=e,this.ast=t,this._normalizer=s,t.states.forEach(i=>{let r=i.options&&i.options.params||{};this.states.set(i.name,new at(i.style,r,s))}),ls(this.states,"true","1"),ls(this.states,"false","0"),t.transitions.forEach(i=>{this.transitionFactories.push(new De(e,i,this.states))}),this.fallbackTransition=ii(e,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(e,t,s,i){return this.transitionFactories.find(a=>a.match(e,t,s,i))||null}matchStyles(e,t,s){return this.fallbackTransition.buildStyles(e,t,s)}};function ii(n,e,t){let s=[(a,o)=>!0],i={type:_.Sequence,steps:[],options:null},r={type:_.Transition,animation:i,matchers:s,options:null,queryCount:0,depCount:0};return new De(n,r,e)}function ls(n,e,t){n.has(e)?n.has(t)||n.set(t,n.get(e)):n.has(t)&&n.set(e,n.get(t))}var ni=new ne,lt=class{bodyNode;_driver;_normalizer;_animations=new Map;_playersById=new Map;players=[];constructor(e,t,s){this.bodyNode=e,this._driver=t,this._normalizer=s}register(e,t){let s=[],i=[],r=dt(this._driver,t,s,i);if(s.length)throw Vt(s);this._animations.set(e,r)}_buildPlayer(e,t,s){let i=e.element,r=qe(this._normalizer,e.keyframes,t,s);return this._driver.animate(i,r,e.duration,e.delay,e.easing,[],!0)}create(e,t,s={}){let i=[],r=this._animations.get(e),a,o=new Map;if(r?(a=pt(this._driver,t,r,_e,ae,new Map,new Map,s,ni,i),a.forEach(c=>{let h=F(o,c.element,new Map);c.postStyleProps.forEach(S=>h.set(S,null))})):(i.push($t()),a=[]),i.length)throw Ut(i);o.forEach((c,h)=>{c.forEach((S,y)=>{c.set(y,this._driver.computeStyle(h,y,z))})});let l=a.map(c=>{let h=o.get(c.element);return this._buildPlayer(c,new Map,h)}),u=U(l);return this._playersById.set(e,u),u.onDestroy(()=>this.destroy(e)),this.players.push(u),u}destroy(e){let t=this._getPlayer(e);t.destroy(),this._playersById.delete(e);let s=this.players.indexOf(t);s>=0&&this.players.splice(s,1)}_getPlayer(e){let t=this._playersById.get(e);if(!t)throw Gt(e);return t}listen(e,t,s,i){let r=ge(t,"","","");return pe(this._getPlayer(e),s,r,i),()=>{}}command(e,t,s,i){if(s=="register"){this.register(e,i[0]);return}if(s=="create"){let a=i[0]||{};this.create(e,t,a);return}let r=this._getPlayer(e);switch(s){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(e);break}}},us="ng-animate-queued",ri=".ng-animate-queued",Ye="ng-animate-disabled",ai=".ng-animate-disabled",oi="ng-star-inserted",li=".ng-star-inserted",ui=[],Ss={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},hi={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},q="__ng_removed",ce=class{namespaceId;value;options;get params(){return this.options.params}constructor(e,t=""){this.namespaceId=t;let s=e&&e.hasOwnProperty("value"),i=s?e.value:e;if(this.value=fi(i),s){let r=e,{value:a}=r,o=Et(r,["value"]);this.options=o}else this.options={};this.options.params||(this.options.params={})}absorbOptions(e){let t=e.params;if(t){let s=this.options.params;Object.keys(t).forEach(i=>{s[i]==null&&(s[i]=t[i])})}}},he="void",Xe=new ce(he),ut=class{id;hostElement;_engine;players=[];_triggers=new Map;_queue=[];_elementListeners=new Map;_hostClassName;constructor(e,t,s){this.id=e,this.hostElement=t,this._engine=s,this._hostClassName="ng-tns-"+e,I(t,this._hostClassName)}listen(e,t,s,i){if(!this._triggers.has(t))throw jt(s,t);if(s==null||s.length==0)throw Wt(t);if(!di(s))throw Ht(s,t);let r=F(this._elementListeners,e,[]),a={name:t,phase:s,callback:i};r.push(a);let o=F(this._engine.statesByElement,e,new Map);return o.has(t)||(I(e,oe),I(e,oe+"-"+t),o.set(t,Xe)),()=>{this._engine.afterFlush(()=>{let l=r.indexOf(a);l>=0&&r.splice(l,1),this._triggers.has(t)||o.delete(t)})}}register(e,t){return this._triggers.has(e)?!1:(this._triggers.set(e,t),!0)}_getTrigger(e){let t=this._triggers.get(e);if(!t)throw Yt(e);return t}trigger(e,t,s,i=!0){let r=this._getTrigger(t),a=new fe(this.id,t,e),o=this._engine.statesByElement.get(e);o||(I(e,oe),I(e,oe+"-"+t),this._engine.statesByElement.set(e,o=new Map));let l=o.get(t),u=new ce(s,this.id);if(!(s&&s.hasOwnProperty("value"))&&l&&u.absorbOptions(l.options),o.set(t,u),l||(l=Xe),!(u.value===he)&&l.value===u.value){if(!gi(l.params,u.params)){let g=[],v=r.matchStyles(l.value,l.params,g),w=r.matchStyles(u.value,u.params,g);g.length?this._engine.reportError(g):this._engine.afterFlush(()=>{j(e,v),K(e,w)})}return}let S=F(this._engine.playersByElement,e,[]);S.forEach(g=>{g.namespaceId==this.id&&g.triggerName==t&&g.queued&&g.destroy()});let y=r.matchTransition(l.value,u.value,e,u.params),d=!1;if(!y){if(!i)return;y=r.fallbackTransition,d=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:t,transition:y,fromState:l,toState:u,player:a,isFallbackTransition:d}),d||(I(e,us),a.onStart(()=>{ie(e,us)})),a.onDone(()=>{let g=this.players.indexOf(a);g>=0&&this.players.splice(g,1);let v=this._engine.playersByElement.get(e);if(v){let w=v.indexOf(a);w>=0&&v.splice(w,1)}}),this.players.push(a),S.push(a),a}deregister(e){this._triggers.delete(e),this._engine.statesByElement.forEach(t=>t.delete(e)),this._elementListeners.forEach((t,s)=>{this._elementListeners.set(s,t.filter(i=>i.name!=e))})}clearElementCache(e){this._engine.statesByElement.delete(e),this._elementListeners.delete(e);let t=this._engine.playersByElement.get(e);t&&(t.forEach(s=>s.destroy()),this._engine.playersByElement.delete(e))}_signalRemovalForInnerTriggers(e,t){let s=this._engine.driver.query(e,le,!0);s.forEach(i=>{if(i[q])return;let r=this._engine.fetchNamespacesByElement(i);r.size?r.forEach(a=>a.triggerLeaveAnimation(i,t,!1,!0)):this.clearElementCache(i)}),this._engine.afterFlushAnimationsDone(()=>s.forEach(i=>this.clearElementCache(i)))}triggerLeaveAnimation(e,t,s,i){let r=this._engine.statesByElement.get(e),a=new Map;if(r){let o=[];if(r.forEach((l,u)=>{if(a.set(u,l.value),this._triggers.has(u)){let c=this.trigger(e,u,he,i);c&&o.push(c)}}),o.length)return this._engine.markElementAsRemoved(this.id,e,!0,t,a),s&&U(o).onDone(()=>this._engine.processLeaveNode(e)),!0}return!1}prepareLeaveAnimationListeners(e){let t=this._elementListeners.get(e),s=this._engine.statesByElement.get(e);if(t&&s){let i=new Set;t.forEach(r=>{let a=r.name;if(i.has(a))return;i.add(a);let l=this._triggers.get(a).fallbackTransition,u=s.get(a)||Xe,c=new ce(he),h=new fe(this.id,a,e);this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:a,transition:l,fromState:u,toState:c,player:h,isFallbackTransition:!0})})}}removeNode(e,t){let s=this._engine;if(e.childElementCount&&this._signalRemovalForInnerTriggers(e,t),this.triggerLeaveAnimation(e,t,!0))return;let i=!1;if(s.totalAnimations){let r=s.players.length?s.playersByQueriedElement.get(e):[];if(r&&r.length)i=!0;else{let a=e;for(;a=a.parentNode;)if(s.statesByElement.get(a)){i=!0;break}}}if(this.prepareLeaveAnimationListeners(e),i)s.markElementAsRemoved(this.id,e,!1,t);else{let r=e[q];(!r||r===Ss)&&(s.afterFlush(()=>this.clearElementCache(e)),s.destroyInnerAnimations(e),s._onRemovalComplete(e,t))}}insertNode(e,t){I(e,this._hostClassName)}drainQueuedTransitions(e){let t=[];return this._queue.forEach(s=>{let i=s.player;if(i.destroyed)return;let r=s.element,a=this._elementListeners.get(r);a&&a.forEach(o=>{if(o.name==s.triggerName){let l=ge(r,s.triggerName,s.fromState.value,s.toState.value);l._data=e,pe(s.player,o.phase,l,o.callback)}}),i.markedForDestroy?this._engine.afterFlush(()=>{i.destroy()}):t.push(s)}),this._queue=[],t.sort((s,i)=>{let r=s.transition.ast.depCount,a=i.transition.ast.depCount;return r==0||a==0?r-a:this._engine.driver.containsElement(s.element,i.element)?1:-1})}destroy(e){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,e)}},ht=class{bodyNode;driver;_normalizer;players=[];newHostElements=new Map;playersByElement=new Map;playersByQueriedElement=new Map;statesByElement=new Map;disabledNodes=new Set;totalAnimations=0;totalQueuedPlayers=0;_namespaceLookup={};_namespaceList=[];_flushFns=[];_whenQuietFns=[];namespacesByHostElement=new Map;collectedEnterElements=[];collectedLeaveElements=[];onRemovalComplete=(e,t)=>{};_onRemovalComplete(e,t){this.onRemovalComplete(e,t)}constructor(e,t,s){this.bodyNode=e,this.driver=t,this._normalizer=s}get queuedPlayers(){let e=[];return this._namespaceList.forEach(t=>{t.players.forEach(s=>{s.queued&&e.push(s)})}),e}createNamespace(e,t){let s=new ut(e,t,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,t)?this._balanceNamespaceList(s,t):(this.newHostElements.set(t,s),this.collectEnterElement(t)),this._namespaceLookup[e]=s}_balanceNamespaceList(e,t){let s=this._namespaceList,i=this.namespacesByHostElement;if(s.length-1>=0){let a=!1,o=this.driver.getParentElement(t);for(;o;){let l=i.get(o);if(l){let u=s.indexOf(l);s.splice(u+1,0,e),a=!0;break}o=this.driver.getParentElement(o)}a||s.unshift(e)}else s.push(e);return i.set(t,e),e}register(e,t){let s=this._namespaceLookup[e];return s||(s=this.createNamespace(e,t)),s}registerTrigger(e,t,s){let i=this._namespaceLookup[e];i&&i.register(t,s)&&this.totalAnimations++}destroy(e,t){e&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{let s=this._fetchNamespace(e);this.namespacesByHostElement.delete(s.hostElement);let i=this._namespaceList.indexOf(s);i>=0&&this._namespaceList.splice(i,1),s.destroy(t),delete this._namespaceLookup[e]}))}_fetchNamespace(e){return this._namespaceLookup[e]}fetchNamespacesByElement(e){let t=new Set,s=this.statesByElement.get(e);if(s){for(let i of s.values())if(i.namespaceId){let r=this._fetchNamespace(i.namespaceId);r&&t.add(r)}}return t}trigger(e,t,s,i){if(we(t)){let r=this._fetchNamespace(e);if(r)return r.trigger(t,s,i),!0}return!1}insertNode(e,t,s,i){if(!we(t))return;let r=t[q];if(r&&r.setForRemoval){r.setForRemoval=!1,r.setForMove=!0;let a=this.collectedLeaveElements.indexOf(t);a>=0&&this.collectedLeaveElements.splice(a,1)}if(e){let a=this._fetchNamespace(e);a&&a.insertNode(t,s)}i&&this.collectEnterElement(t)}collectEnterElement(e){this.collectedEnterElements.push(e)}markElementAsDisabled(e,t){t?this.disabledNodes.has(e)||(this.disabledNodes.add(e),I(e,Ye)):this.disabledNodes.has(e)&&(this.disabledNodes.delete(e),ie(e,Ye))}removeNode(e,t,s){if(we(t)){let i=e?this._fetchNamespace(e):null;i?i.removeNode(t,s):this.markElementAsRemoved(e,t,!1,s);let r=this.namespacesByHostElement.get(t);r&&r.id!==e&&r.removeNode(t,s)}else this._onRemovalComplete(t,s)}markElementAsRemoved(e,t,s,i,r){this.collectedLeaveElements.push(t),t[q]={namespaceId:e,setForRemoval:i,hasAnimation:s,removedBeforeQueried:!1,previousTriggersValues:r}}listen(e,t,s,i,r){return we(t)?this._fetchNamespace(e).listen(t,s,i,r):()=>{}}_buildInstruction(e,t,s,i,r){return e.transition.build(this.driver,e.element,e.fromState.value,e.toState.value,s,i,e.fromState.options,e.toState.options,t,r)}destroyInnerAnimations(e){let t=this.driver.query(e,le,!0);t.forEach(s=>this.destroyActiveAnimationsForElement(s)),this.playersByQueriedElement.size!=0&&(t=this.driver.query(e,Se,!0),t.forEach(s=>this.finishActiveQueriedAnimationOnElement(s)))}destroyActiveAnimationsForElement(e){let t=this.playersByElement.get(e);t&&t.forEach(s=>{s.queued?s.markedForDestroy=!0:s.destroy()})}finishActiveQueriedAnimationOnElement(e){let t=this.playersByQueriedElement.get(e);t&&t.forEach(s=>s.finish())}whenRenderingDone(){return new Promise(e=>{if(this.players.length)return U(this.players).onDone(()=>e());e()})}processLeaveNode(e){let t=e[q];if(t&&t.setForRemoval){if(e[q]=Ss,t.namespaceId){this.destroyInnerAnimations(e);let s=this._fetchNamespace(t.namespaceId);s&&s.clearElementCache(e)}this._onRemovalComplete(e,t.setForRemoval)}e.classList?.contains(Ye)&&this.markElementAsDisabled(e,!1),this.driver.query(e,ai,!0).forEach(s=>{this.markElementAsDisabled(s,!1)})}flush(e=-1){let t=[];if(this.newHostElements.size&&(this.newHostElements.forEach((s,i)=>this._balanceNamespaceList(s,i)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let s=0;s<this.collectedEnterElements.length;s++){let i=this.collectedEnterElements[s];I(i,oi)}if(this._namespaceList.length&&(this.totalQueuedPlayers||this.collectedLeaveElements.length)){let s=[];try{t=this._flushAnimations(s,e)}finally{for(let i=0;i<s.length;i++)s[i]()}}else for(let s=0;s<this.collectedLeaveElements.length;s++){let i=this.collectedLeaveElements[s];this.processLeaveNode(i)}if(this.totalQueuedPlayers=0,this.collectedEnterElements.length=0,this.collectedLeaveElements.length=0,this._flushFns.forEach(s=>s()),this._flushFns=[],this._whenQuietFns.length){let s=this._whenQuietFns;this._whenQuietFns=[],t.length?U(t).onDone(()=>{s.forEach(i=>i())}):s.forEach(i=>i())}}reportError(e){throw Xt(e)}_flushAnimations(e,t){let s=new ne,i=[],r=new Map,a=[],o=new Map,l=new Map,u=new Map,c=new Set;this.disabledNodes.forEach(f=>{c.add(f);let m=this.driver.query(f,ri,!0);for(let p=0;p<m.length;p++)c.add(m[p])});let h=this.bodyNode,S=Array.from(this.statesByElement.keys()),y=fs(S,this.collectedEnterElements),d=new Map,g=0;y.forEach((f,m)=>{let p=_e+g++;d.set(m,p),f.forEach(T=>I(T,p))});let v=[],w=new Set,P=new Set;for(let f=0;f<this.collectedLeaveElements.length;f++){let m=this.collectedLeaveElements[f],p=m[q];p&&p.setForRemoval&&(v.push(m),w.add(m),p.hasAnimation?this.driver.query(m,li,!0).forEach(T=>w.add(T)):P.add(m))}let D=new Map,N=fs(S,Array.from(w));N.forEach((f,m)=>{let p=ae+g++;D.set(m,p),f.forEach(T=>I(T,p))}),e.push(()=>{y.forEach((f,m)=>{let p=d.get(m);f.forEach(T=>ie(T,p))}),N.forEach((f,m)=>{let p=D.get(m);f.forEach(T=>ie(T,p))}),v.forEach(f=>{this.processLeaveNode(f)})});let J=[],B=[];for(let f=this._namespaceList.length-1;f>=0;f--)this._namespaceList[f].drainQueuedTransitions(t).forEach(p=>{let T=p.player,A=p.element;if(J.push(T),this.collectedEnterElements.length){let C=A[q];if(C&&C.setForMove){if(C.previousTriggersValues&&C.previousTriggersValues.has(p.triggerName)){let Y=C.previousTriggersValues.get(p.triggerName),L=this.statesByElement.get(p.element);if(L&&L.has(p.triggerName)){let de=L.get(p.triggerName);de.value=Y,L.set(p.triggerName,de)}}T.destroy();return}}let Q=!h||!this.driver.containsElement(h,A),O=D.get(A),G=d.get(A),b=this._buildInstruction(p,s,G,O,Q);if(b.errors&&b.errors.length){B.push(b);return}if(Q){T.onStart(()=>j(A,b.fromStyles)),T.onDestroy(()=>K(A,b.toStyles)),i.push(T);return}if(p.isFallbackTransition){T.onStart(()=>j(A,b.fromStyles)),T.onDestroy(()=>K(A,b.toStyles)),i.push(T);return}let St=[];b.timelines.forEach(C=>{C.stretchStartingKeyframe=!0,this.disabledNodes.has(C.element)||St.push(C)}),b.timelines=St,s.append(A,b.timelines);let vs={instruction:b,player:T,element:A};a.push(vs),b.queriedElements.forEach(C=>F(o,C,[]).push(T)),b.preStyleProps.forEach((C,Y)=>{if(C.size){let L=l.get(Y);L||l.set(Y,L=new Set),C.forEach((de,Oe)=>L.add(Oe))}}),b.postStyleProps.forEach((C,Y)=>{let L=u.get(Y);L||u.set(Y,L=new Set),C.forEach((de,Oe)=>L.add(Oe))})});if(B.length){let f=[];B.forEach(m=>{f.push(xt(m.triggerName,m.errors))}),J.forEach(m=>m.destroy()),this.reportError(f)}let M=new Map,k=new Map;a.forEach(f=>{let m=f.element;s.has(m)&&(k.set(m,m),this._beforeAnimationBuild(f.player.namespaceId,f.instruction,M))}),i.forEach(f=>{let m=f.element;this._getPreviousPlayers(m,!1,f.namespaceId,f.triggerName,null).forEach(T=>{F(M,m,[]).push(T),T.destroy()})});let W=v.filter(f=>ds(f,l,u)),Z=new Map;cs(Z,this.driver,P,u,z).forEach(f=>{ds(f,l,u)&&W.push(f)});let H=new Map;y.forEach((f,m)=>{cs(H,this.driver,new Set(f),l,re)}),W.forEach(f=>{let m=Z.get(f),p=H.get(f);Z.set(f,new Map([...m?.entries()??[],...p?.entries()??[]]))});let Re=[],yt=[],_t={};a.forEach(f=>{let{element:m,player:p,instruction:T}=f;if(s.has(m)){if(c.has(m)){p.onDestroy(()=>K(m,T.toStyles)),p.disabled=!0,p.overrideTotalTime(T.totalTime),i.push(p);return}let A=_t;if(k.size>1){let O=m,G=[];for(;O=O.parentNode;){let b=k.get(O);if(b){A=b;break}G.push(O)}G.forEach(b=>k.set(b,A))}let Q=this._buildAnimation(p.namespaceId,T,M,r,H,Z);if(p.setRealPlayer(Q),A===_t)Re.push(p);else{let O=this.playersByElement.get(A);O&&O.length&&(p.parentPlayer=U(O)),i.push(p)}}else j(m,T.fromStyles),p.onDestroy(()=>K(m,T.toStyles)),yt.push(p),c.has(m)&&i.push(p)}),yt.forEach(f=>{let m=r.get(f.element);if(m&&m.length){let p=U(m);f.setRealPlayer(p)}}),i.forEach(f=>{f.parentPlayer?f.syncPlayerEvents(f.parentPlayer):f.destroy()});for(let f=0;f<v.length;f++){let m=v[f],p=m[q];if(ie(m,ae),p&&p.hasAnimation)continue;let T=[];if(o.size){let Q=o.get(m);Q&&Q.length&&T.push(...Q);let O=this.driver.query(m,Se,!0);for(let G=0;G<O.length;G++){let b=o.get(O[G]);b&&b.length&&T.push(...b)}}let A=T.filter(Q=>!Q.destroyed);A.length?mi(this,m,A):this.processLeaveNode(m)}return v.length=0,Re.forEach(f=>{this.players.push(f),f.onDone(()=>{f.destroy();let m=this.players.indexOf(f);this.players.splice(m,1)}),f.play()}),Re}afterFlush(e){this._flushFns.push(e)}afterFlushAnimationsDone(e){this._whenQuietFns.push(e)}_getPreviousPlayers(e,t,s,i,r){let a=[];if(t){let o=this.playersByQueriedElement.get(e);o&&(a=o)}else{let o=this.playersByElement.get(e);if(o){let l=!r||r==he;o.forEach(u=>{u.queued||!l&&u.triggerName!=i||a.push(u)})}}return(s||i)&&(a=a.filter(o=>!(s&&s!=o.namespaceId||i&&i!=o.triggerName))),a}_beforeAnimationBuild(e,t,s){let i=t.triggerName,r=t.element,a=t.isRemovalTransition?void 0:e,o=t.isRemovalTransition?void 0:i;for(let l of t.timelines){let u=l.element,c=u!==r,h=F(s,u,[]);this._getPreviousPlayers(u,c,a,o,t.toState).forEach(y=>{let d=y.getRealPlayer();d.beforeDestroy&&d.beforeDestroy(),y.destroy(),h.push(y)})}j(r,t.fromStyles)}_buildAnimation(e,t,s,i,r,a){let o=t.triggerName,l=t.element,u=[],c=new Set,h=new Set,S=t.timelines.map(d=>{let g=d.element;c.add(g);let v=g[q];if(v&&v.removedBeforeQueried)return new $(d.duration,d.delay);let w=g!==l,P=pi((s.get(g)||ui).map(M=>M.getRealPlayer())).filter(M=>{let k=M;return k.element?k.element===g:!1}),D=r.get(g),N=a.get(g),J=qe(this._normalizer,d.keyframes,D,N),B=this._buildPlayer(d,J,P);if(d.subTimeline&&i&&h.add(g),w){let M=new fe(e,o,g);M.setRealPlayer(B),u.push(M)}return B});u.forEach(d=>{F(this.playersByQueriedElement,d.element,[]).push(d),d.onDone(()=>ci(this.playersByQueriedElement,d.element,d))}),c.forEach(d=>I(d,Ue));let y=U(S);return y.onDestroy(()=>{c.forEach(d=>ie(d,Ue)),K(l,t.toStyles)}),h.forEach(d=>{F(i,d,[]).push(y)}),y}_buildPlayer(e,t,s){return t.length>0?this.driver.animate(e.element,t,e.duration,e.delay,e.easing,s):new $(e.duration,e.delay)}},fe=class{namespaceId;triggerName;element;_player=new $;_containsRealPlayer=!1;_queuedCallbacks=new Map;destroyed=!1;parentPlayer=null;markedForDestroy=!1;disabled=!1;queued=!0;totalTime=0;constructor(e,t,s){this.namespaceId=e,this.triggerName=t,this.element=s}setRealPlayer(e){this._containsRealPlayer||(this._player=e,this._queuedCallbacks.forEach((t,s)=>{t.forEach(i=>pe(e,s,void 0,i))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(e.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(e){this.totalTime=e}syncPlayerEvents(e){let t=this._player;t.triggerCallback&&e.onStart(()=>t.triggerCallback("start")),e.onDone(()=>this.finish()),e.onDestroy(()=>this.destroy())}_queueEvent(e,t){F(this._queuedCallbacks,e,[]).push(t)}onDone(e){this.queued&&this._queueEvent("done",e),this._player.onDone(e)}onStart(e){this.queued&&this._queueEvent("start",e),this._player.onStart(e)}onDestroy(e){this.queued&&this._queueEvent("destroy",e),this._player.onDestroy(e)}init(){this._player.init()}hasStarted(){return this.queued?!1:this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(e){this.queued||this._player.setPosition(e)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(e){let t=this._player;t.triggerCallback&&t.triggerCallback(e)}};function ci(n,e,t){let s=n.get(e);if(s){if(s.length){let i=s.indexOf(t);s.splice(i,1)}s.length==0&&n.delete(e)}return s}function fi(n){return n??null}function we(n){return n&&n.nodeType===1}function di(n){return n=="start"||n=="done"}function hs(n,e){let t=n.style.display;return n.style.display=e??"none",t}function cs(n,e,t,s,i){let r=[];t.forEach(l=>r.push(hs(l)));let a=[];s.forEach((l,u)=>{let c=new Map;l.forEach(h=>{let S=e.computeStyle(u,h,i);c.set(h,S),(!S||S.length==0)&&(u[q]=hi,a.push(u))}),n.set(u,c)});let o=0;return t.forEach(l=>hs(l,r[o++])),a}function fs(n,e){let t=new Map;if(n.forEach(o=>t.set(o,[])),e.length==0)return t;let s=1,i=new Set(e),r=new Map;function a(o){if(!o)return s;let l=r.get(o);if(l)return l;let u=o.parentNode;return t.has(u)?l=u:i.has(u)?l=s:l=a(u),r.set(o,l),l}return e.forEach(o=>{let l=a(o);l!==s&&t.get(l).push(o)}),t}function I(n,e){n.classList?.add(e)}function ie(n,e){n.classList?.remove(e)}function mi(n,e,t){U(t).onDone(()=>n.processLeaveNode(e))}function pi(n){let e=[];return Es(n,e),e}function Es(n,e){for(let t=0;t<n.length;t++){let s=n[t];s instanceof ee?Es(s.players,e):e.push(s)}}function gi(n,e){let t=Object.keys(n),s=Object.keys(e);if(t.length!=s.length)return!1;for(let i=0;i<t.length;i++){let r=t[i];if(!e.hasOwnProperty(r)||n[r]!==e[r])return!1}return!0}function ds(n,e,t){let s=t.get(n);if(!s)return!1;let i=e.get(n);return i?s.forEach(r=>i.add(r)):e.set(n,s),t.delete(n),!0}var Me=class{_driver;_normalizer;_transitionEngine;_timelineEngine;_triggerCache={};onRemovalComplete=(e,t)=>{};constructor(e,t,s){this._driver=t,this._normalizer=s,this._transitionEngine=new ht(e.body,t,s),this._timelineEngine=new lt(e.body,t,s),this._transitionEngine.onRemovalComplete=(i,r)=>this.onRemovalComplete(i,r)}registerTrigger(e,t,s,i,r){let a=e+"-"+i,o=this._triggerCache[a];if(!o){let l=[],u=[],c=dt(this._driver,r,l,u);if(l.length)throw Qt(i,l);o=si(i,c,this._normalizer),this._triggerCache[a]=o}this._transitionEngine.registerTrigger(t,i,o)}register(e,t){this._transitionEngine.register(e,t)}destroy(e,t){this._transitionEngine.destroy(e,t)}onInsert(e,t,s,i){this._transitionEngine.insertNode(e,t,s,i)}onRemove(e,t,s){this._transitionEngine.removeNode(e,t,s)}disableAnimations(e,t){this._transitionEngine.markElementAsDisabled(e,t)}process(e,t,s,i){if(s.charAt(0)=="@"){let[r,a]=Be(s),o=i;this._timelineEngine.command(r,t,a,o)}else this._transitionEngine.trigger(e,t,s,i)}listen(e,t,s,i,r){if(s.charAt(0)=="@"){let[a,o]=Be(s);return this._timelineEngine.listen(a,t,o,r)}return this._transitionEngine.listen(e,t,s,i,r)}flush(e=-1){this._transitionEngine.flush(e)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(e){this._transitionEngine.afterFlushAnimationsDone(e)}};function yi(n,e){let t=null,s=null;return Array.isArray(e)&&e.length?(t=xe(e[0]),e.length>1&&(s=xe(e[e.length-1]))):e instanceof Map&&(t=xe(e)),t||s?new _i(n,t,s):null}var _i=(()=>{class n{_element;_startStyles;_endStyles;static initialStylesByElement=new WeakMap;_state=0;_initialStyles;constructor(t,s,i){this._element=t,this._startStyles=s,this._endStyles=i;let r=n.initialStylesByElement.get(t);r||n.initialStylesByElement.set(t,r=new Map),this._initialStyles=r}start(){this._state<1&&(this._startStyles&&K(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(K(this._element,this._initialStyles),this._endStyles&&(K(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(n.initialStylesByElement.delete(this._element),this._startStyles&&(j(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(j(this._element,this._endStyles),this._endStyles=null),K(this._element,this._initialStyles),this._state=3)}}return n})();function xe(n){let e=null;return n.forEach((t,s)=>{Si(s)&&(e=e||new Map,e.set(s,t))}),e}function Si(n){return n==="display"||n==="position"}var ke=class{element;keyframes;options;_specialStyles;_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_duration;_delay;_initialized=!1;_finished=!1;_started=!1;_destroyed=!1;_finalKeyframe;_originalOnDoneFns=[];_originalOnStartFns=[];domPlayer=null;time=0;parentPlayer=null;currentSnapshot=new Map;constructor(e,t,s,i){this.element=e,this.keyframes=t,this.options=s,this._specialStyles=i,this._duration=s.duration,this._delay=s.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(e=>e()),this._onDoneFns=[])}init(){this._buildPlayer()&&this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return this.domPlayer;this._initialized=!0;let e=this.keyframes,t=this._triggerWebAnimation(this.element,e,this.options);if(!t)return this._onFinish(),null;this.domPlayer=t,this._finalKeyframe=e.length?e[e.length-1]:new Map;let s=()=>this._onFinish();return t.addEventListener("finish",s),this.onDestroy(()=>{t.removeEventListener("finish",s)}),t}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer?.pause()}_convertKeyframesToObject(e){let t=[];return e.forEach(s=>{t.push(Object.fromEntries(s))}),t}_triggerWebAnimation(e,t,s){let i=this._convertKeyframesToObject(t);try{return e.animate(i,s)}catch{return null}}onStart(e){this._originalOnStartFns.push(e),this._onStartFns.push(e)}onDone(e){this._originalOnDoneFns.push(e),this._onDoneFns.push(e)}onDestroy(e){this._onDestroyFns.push(e)}play(){let e=this._buildPlayer();e&&(this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),e.play())}pause(){this.init(),this.domPlayer?.pause()}finish(){this.init(),this.domPlayer&&(this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish())}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer?.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(e=>e()),this._onDestroyFns=[])}setPosition(e){this.domPlayer||this.init(),this.domPlayer&&(this.domPlayer.currentTime=e*this.time)}getPosition(){return this.domPlayer?+(this.domPlayer.currentTime??0)/this.time:this._initialized?1:0}get totalTime(){return this._delay+this._duration}beforeDestroy(){let e=new Map;this.hasStarted()&&this._finalKeyframe.forEach((s,i)=>{i!=="offset"&&e.set(i,this._finished?s:Te(this.element,i))}),this.currentSnapshot=e}triggerCallback(e){let t=e==="start"?this._onStartFns:this._onDoneFns;t.forEach(s=>s()),t.length=0}},ct=class{validateStyleProperty(e){return!0}validateAnimatableStyleProperty(e){return!0}containsElement(e,t){return Qe(e,t)}getParentElement(e){return ye(e)}query(e,t,s){return Ve(e,t,s)}computeStyle(e,t,s){return Te(e,t)}animate(e,t,s,i,r,a=[]){let o=i==0?"both":"forwards",l={duration:s,delay:i,fill:o};r&&(l.easing=r);let u=new Map,c=a.filter(y=>y instanceof ke);ts(s,i)&&c.forEach(y=>{y.currentSnapshot.forEach((d,g)=>u.set(g,d))});let h=Zt(t).map(y=>new Map(y));h=ss(e,h,u);let S=yi(e,h);return new ke(e,h,l,S)}};function Di(n,e){return n==="noop"?new Me(e,new gs,new Ze):new Me(e,new ct,new et)}var ms=class{_driver;_animationAst;constructor(e,t){this._driver=e;let s=[],r=dt(e,t,s,[]);if(s.length)throw qt(s);this._animationAst=r}buildTimelines(e,t,s,i,r){let a=Array.isArray(t)?Ge(t):t,o=Array.isArray(s)?Ge(s):s,l=[];r=r||new ne;let u=pt(this._driver,e,this._animationAst,_e,ae,a,o,i,r,l);if(l.length)throw Bt(l);return u}},Pe="@",Ts="@.disabled",Fe=class{namespaceId;delegate;engine;_onDestroy;\u0275type=0;constructor(e,t,s,i){this.namespaceId=e,this.delegate=t,this.engine=s,this._onDestroy=i}get data(){return this.delegate.data}destroyNode(e){this.delegate.destroyNode?.(e)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(e,t){return this.delegate.createElement(e,t)}createComment(e){return this.delegate.createComment(e)}createText(e){return this.delegate.createText(e)}appendChild(e,t){this.delegate.appendChild(e,t),this.engine.onInsert(this.namespaceId,t,e,!1)}insertBefore(e,t,s,i=!0){this.delegate.insertBefore(e,t,s),this.engine.onInsert(this.namespaceId,t,e,i)}removeChild(e,t,s,i){if(i){this.delegate.removeChild(e,t,s,i);return}this.parentNode(t)&&this.engine.onRemove(this.namespaceId,t,this.delegate)}selectRootElement(e,t){return this.delegate.selectRootElement(e,t)}parentNode(e){return this.delegate.parentNode(e)}nextSibling(e){return this.delegate.nextSibling(e)}setAttribute(e,t,s,i){this.delegate.setAttribute(e,t,s,i)}removeAttribute(e,t,s){this.delegate.removeAttribute(e,t,s)}addClass(e,t){this.delegate.addClass(e,t)}removeClass(e,t){this.delegate.removeClass(e,t)}setStyle(e,t,s,i){this.delegate.setStyle(e,t,s,i)}removeStyle(e,t,s){this.delegate.removeStyle(e,t,s)}setProperty(e,t,s){t.charAt(0)==Pe&&t==Ts?this.disableAnimations(e,!!s):this.delegate.setProperty(e,t,s)}setValue(e,t){this.delegate.setValue(e,t)}listen(e,t,s,i){return this.delegate.listen(e,t,s,i)}disableAnimations(e,t){this.engine.disableAnimations(e,t)}},ft=class extends Fe{factory;constructor(e,t,s,i,r){super(t,s,i,r),this.factory=e,this.namespaceId=t}setProperty(e,t,s){t.charAt(0)==Pe?t.charAt(1)=="."&&t==Ts?(s=s===void 0?!0:!!s,this.disableAnimations(e,s)):this.engine.process(this.namespaceId,e,t.slice(1),s):this.delegate.setProperty(e,t,s)}listen(e,t,s,i){if(t.charAt(0)==Pe){let r=Ei(e),a=t.slice(1),o="";return a.charAt(0)!=Pe&&([a,o]=Ti(a)),this.engine.listen(this.namespaceId,r,a,o,l=>{let u=l._data||-1;this.factory.scheduleListenerCallback(u,s,l)})}return this.delegate.listen(e,t,s,i)}};function Ei(n){switch(n){case"body":return document.body;case"document":return document;case"window":return window;default:return n}}function Ti(n){let e=n.indexOf("."),t=n.substring(0,e),s=n.slice(e+1);return[t,s]}var ps=class{delegate;engine;_zone;_currentId=0;_microtaskId=1;_animationCallbacksBuffer=[];_rendererCache=new Map;_cdRecurDepth=0;constructor(e,t,s){this.delegate=e,this.engine=t,this._zone=s,t.onRemovalComplete=(i,r)=>{r?.removeChild(null,i)}}createRenderer(e,t){let i=this.delegate.createRenderer(e,t);if(!e||!t?.data?.animation){let u=this._rendererCache,c=u.get(i);if(!c){let h=()=>u.delete(i);c=new Fe("",i,this.engine,h),u.set(i,c)}return c}let r=t.id,a=t.id+"-"+this._currentId;this._currentId++,this.engine.register(a,e);let o=u=>{Array.isArray(u)?u.forEach(o):this.engine.registerTrigger(r,a,e,u.name,u)};return t.data.animation.forEach(o),new ft(this,a,i,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(e,t,s){if(e>=0&&e<this._microtaskId){this._zone.run(()=>t(s));return}let i=this._animationCallbacksBuffer;i.length==0&&queueMicrotask(()=>{this._zone.run(()=>{i.forEach(r=>{let[a,o]=r;a(o)}),this._animationCallbacksBuffer=[]})}),i.push([t,s])}end(){this._cdRecurDepth--,this._cdRecurDepth==0&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}componentReplaced(e){this.engine.flush(),this.delegate.componentReplaced?.(e)}};export{is as AnimationDriver,gs as NoopAnimationDriver,ms as \u0275Animation,Me as \u0275AnimationEngine,ft as \u0275AnimationRenderer,ps as \u0275AnimationRendererFactory,Je as \u0275AnimationStyleNormalizer,Fe as \u0275BaseAnimationRenderer,_e as \u0275ENTER_CLASSNAME,ae as \u0275LEAVE_CLASSNAME,Ze as \u0275NoopAnimationStyleNormalizer,fe as \u0275TransitionAnimationPlayer,ct as \u0275WebAnimationsDriver,ke as \u0275WebAnimationsPlayer,et as \u0275WebAnimationsStyleNormalizer,ts as \u0275allowPreviousPlayerStylesMerge,qs as \u0275camelCaseToDashCase,Qe as \u0275containsElement,Di as \u0275createEngine,ye as \u0275getParentElement,Ve as \u0275invokeQuery,Zt as \u0275normalizeKeyframes,Jt as \u0275validateStyleProperty,Fs as \u0275validateWebAnimatableStyleProperty};
@@ -0,0 +1,2 @@
1
+ import{B as O}from"./chunk-MHOSWLRR.js";import{P as A,g as W}from"./chunk-Y6B6X4Y6.js";import{$b as M,Ca as y,Db as o,Ic as p,Kb as m,Lb as n,Mb as c,Nb as u,Rb as d,Wb as S,_a as a,_b as C,aa as h,ac as x,ca as f,ea as g,ec as T,fc as l,gc as E,hc as P,la as _,ma as v,pb as k,qb as b,tc as R,ub as w}from"./chunk-K43KW4K2.js";var I=["determinateSpinner"];function B(t,L){if(t&1&&(_(),n(0,"svg",11),u(1,"circle",12),c()),t&2){let e=S();o("viewBox",e._viewBox()),a(),l("stroke-dasharray",e._strokeCircumference(),"px")("stroke-dashoffset",e._strokeCircumference()/2,"px")("stroke-width",e._circleStrokeWidth(),"%"),o("r",e._circleRadius())}}var N=new f("mat-progress-spinner-default-options",{providedIn:"root",factory:z});function z(){return{diameter:D}}var D=100,F=10,J=(()=>{class t{_elementRef=g(y);_noopAnimations;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;_defaultColor="primary";_determinateCircle;constructor(){let e=g(N),i=O(),r=this._elementRef.nativeElement;this._noopAnimations=i==="di-disabled"&&!!e&&!e._forceAnimations,this.mode=r.nodeName.toLowerCase()==="mat-spinner"?"indeterminate":"determinate",!this._noopAnimations&&i==="reduced-motion"&&r.classList.add("mat-progress-spinner-reduced-motion"),e&&(e.color&&(this.color=this._defaultColor=e.color),e.diameter&&(this.diameter=e.diameter),e.strokeWidth&&(this.strokeWidth=e.strokeWidth))}mode;get value(){return this.mode==="determinate"?this._value:0}set value(e){this._value=Math.max(0,Math.min(100,e||0))}_value=0;get diameter(){return this._diameter}set diameter(e){this._diameter=e||0}_diameter=D;get strokeWidth(){return this._strokeWidth??this.diameter/10}set strokeWidth(e){this._strokeWidth=e||0}_strokeWidth;_circleRadius(){return(this.diameter-F)/2}_viewBox(){let e=this._circleRadius()*2+this.strokeWidth;return`0 0 ${e} ${e}`}_strokeCircumference(){return 2*Math.PI*this._circleRadius()}_strokeDashOffset(){return this.mode==="determinate"?this._strokeCircumference()*(100-this._value)/100:null}_circleStrokeWidth(){return this.strokeWidth/this.diameter*100}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=k({type:t,selectors:[["mat-progress-spinner"],["mat-spinner"]],viewQuery:function(i,r){if(i&1&&C(I,5),i&2){let s;M(s=x())&&(r._determinateCircle=s.first)}},hostAttrs:["role","progressbar","tabindex","-1",1,"mat-mdc-progress-spinner","mdc-circular-progress"],hostVars:18,hostBindings:function(i,r){i&2&&(o("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow",r.mode==="determinate"?r.value:null)("mode",r.mode),P("mat-"+r.color),l("width",r.diameter,"px")("height",r.diameter,"px")("--mat-progress-spinner-size",r.diameter+"px")("--mat-progress-spinner-active-indicator-width",r.diameter+"px"),E("_mat-animation-noopable",r._noopAnimations)("mdc-circular-progress--indeterminate",r.mode==="indeterminate"))},inputs:{color:"color",mode:"mode",value:[2,"value","value",p],diameter:[2,"diameter","diameter",p],strokeWidth:[2,"strokeWidth","strokeWidth",p]},exportAs:["matProgressSpinner"],decls:14,vars:11,consts:[["circle",""],["determinateSpinner",""],["aria-hidden","true",1,"mdc-circular-progress__determinate-container"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__determinate-circle-graphic"],["cx","50%","cy","50%",1,"mdc-circular-progress__determinate-circle"],["aria-hidden","true",1,"mdc-circular-progress__indeterminate-container"],[1,"mdc-circular-progress__spinner-layer"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-left"],[3,"ngTemplateOutlet"],[1,"mdc-circular-progress__gap-patch"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-right"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__indeterminate-circle-graphic"],["cx","50%","cy","50%"]],template:function(i,r){if(i&1&&(w(0,B,2,8,"ng-template",null,0,R),n(2,"div",2,1),_(),n(4,"svg",3),u(5,"circle",4),c()(),v(),n(6,"div",5)(7,"div",6)(8,"div",7),d(9,8),c(),n(10,"div",9),d(11,8),c(),n(12,"div",10),d(13,8),c()()()),i&2){let s=T(1);a(4),o("viewBox",r._viewBox()),a(),l("stroke-dasharray",r._strokeCircumference(),"px")("stroke-dashoffset",r._strokeDashOffset(),"px")("stroke-width",r._circleStrokeWidth(),"%"),o("r",r._circleRadius()),a(4),m("ngTemplateOutlet",s),a(2),m("ngTemplateOutlet",s),a(2),m("ngTemplateOutlet",s)}},dependencies:[W],styles:[`.mat-mdc-progress-spinner{--mat-progress-spinner-animation-multiplier: 1;display:block;overflow:hidden;line-height:0;position:relative;direction:ltr;transition:opacity 250ms cubic-bezier(0.4, 0, 0.6, 1)}.mat-mdc-progress-spinner circle{stroke-width:var(--mat-progress-spinner-active-indicator-width, 4px)}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}}.mat-progress-spinner-reduced-motion{--mat-progress-spinner-animation-multiplier: 1.25}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1;animation:mdc-circular-progress-container-rotate calc(1568.2352941176ms*var(--mat-progress-spinner-animation-multiplier)) linear infinite}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:rgba(0,0,0,0)}.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--mat-progress-spinner-active-indicator-color, var(--mat-sys-primary))}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:CanvasText}}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate calc(5332ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}}
2
+ `],encapsulation:2,changeDetection:0})}return t})();var X=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=b({type:t});static \u0275inj=h({imports:[A]})}return t})();export{J as a,X as b};
@@ -0,0 +1 @@
1
+ import{a as A,b as $,c as j,e as L,f as z}from"./chunk-L63FHXGH.js";import{a as I}from"./chunk-7L4DWDGL.js";import{f as D,g as T}from"./chunk-N5GRSTMJ.js";import{c as N,e as R}from"./chunk-VZ6E4VQY.js";import"./chunk-YNQPX5G6.js";import"./chunk-MHOSWLRR.js";import{c as k,h as E,i as w}from"./chunk-U6AY7XZK.js";import"./chunk-Y6B6X4Y6.js";import{Eb as m,Fb as l,Kb as y,Lb as t,Mb as e,Nb as g,Sb as S,Ub as b,Wb as c,_a as r,ea as C,gc as M,ic as i,ja as _,jc as f,ka as h,kc as v,lc as P,pb as x,s as u,ta as d,xc as O}from"./chunk-K43KW4K2.js";function V(a,o){a&1&&g(0,"dm-skeleton",2)}function F(a,o){if(a&1&&(t(0,"span"),i(1),e()),a&2){let n=c();r(),v("Recording in progress \xB7 ",n.elapsedLabel())}}function H(a,o){a&1&&(t(0,"span"),i(1,"Not recording"),e())}function J(a,o){a&1&&(t(0,"div",3),g(1,"dm-skeleton",4)(2,"dm-skeleton",4)(3,"dm-skeleton",4),e())}function W(a,o){a&1&&(g(0,"span",20),t(1,"span",21),i(2,"REC"),e())}function q(a,o){a&1&&(t(0,"span",8),i(1,"Idle"),e())}function G(a,o){if(a&1&&(t(0,"div",22)(1,"span",23),i(2,"Path"),e(),t(3,"dm-mono")(4,"span",25),i(5),e()()()),a&2){let n=c(3);r(5),f(n.path())}}function K(a,o){if(a&1&&(t(0,"div",10)(1,"div",22)(2,"span",23),i(3,"Elapsed"),e(),t(4,"dm-mono")(5,"span",24),i(6),e()()(),m(7,G,6,1,"div",22),e()),a&2){let n=c(2);r(6),f(n.elapsedLabel()),r(),l(n.path()?7:-1)}}function Q(a,o){if(a&1){let n=S();t(0,"mat-card",5)(1,"mat-card-content")(2,"div",6)(3,"div",7),m(4,W,3,0)(5,q,2,0,"span",8),e(),t(6,"button",9),b("click",function(){_(n);let p=c();return h(p.toggle())}),t(7,"mat-icon"),i(8),e(),i(9),e()(),m(10,K,8,2,"div",10),e()(),t(11,"div",11)(12,"mat-card",12)(13,"mat-card-header")(14,"mat-card-title"),i(15,"What gets recorded"),e()(),t(16,"mat-card-content")(17,"ul",13)(18,"li"),i(19,"App lifecycle events (start, stop, restart)"),e(),t(20,"li"),i(21,"Task invocations"),e(),t(22,"li"),i(23,"Config changes"),e()(),t(24,"div",14)(25,"span",15),i(26,"Saved as"),e(),t(27,"dm-mono")(28,"span",16),i(29,"~/.daimon/sessions/session-<timestamp>.jsonl"),e()()(),t(30,"div",14)(31,"span",15),i(32,"Replay"),e(),t(33,"dm-mono")(34,"span",16),i(35,"daimon replay session.jsonl --speed 1"),e()()(),t(36,"div",17),i(37," Each JSONL line is "),t(38,"dm-mono")(39,"span",16),i(40),e()(),i(41,". "),e()()(),t(42,"mat-card",12)(43,"mat-card-header")(44,"mat-card-title"),i(45,"Replay primer"),e()(),t(46,"mat-card-content")(47,"div",18)(48,"dm-mono")(49,"span",16),i(50,"daimon replay <file.jsonl>"),e()(),t(51,"span",19),i(52,"play at default speed"),e()(),t(53,"div",18)(54,"dm-mono")(55,"span",16),i(56,"daimon replay <file.jsonl> --speed 2"),e()(),t(57,"span",19),i(58,"2x faster"),e()(),t(59,"div",17),i(60," Replay runs from the CLI. The dashboard doesn't trigger replays. "),e()()()()}if(a&2){let n=c();r(3),M("dm-state-rec",n.recording()),r(),l(n.recording()?4:5),r(2),y("disabled",n.busy()),r(2),f(n.recording()?"stop_circle":"radio_button_checked"),r(),v(" ",n.recording()?"Stop recording":"Start recording"," "),r(),l(n.recording()?10:-1),r(30),P("","{"," ts, kind, app?, task?, args? ","}")}}function U(a){let o=Math.max(0,Math.floor(a/1e3)),n=Math.floor(o/3600),s=Math.floor(o%3600/60),p=o%60;return n>0?`${n}h ${s}m ${p}s`:s>0?`${s}m ${p}s`:`${p}s`}var B=class a{http=C(k);snack=C(I);loading=d(!0);recording=d(!1);path=d(void 0);busy=d(!1);startedAt=d(null);tick=d(0);elapsedLabel=O(()=>{this.tick();let o=this.startedAt();return o?U(Date.now()-o):"0s"});tickTimer;ngOnInit(){this.loadStatus(),this.tickTimer=setInterval(()=>{this.recording()&&this.tick.update(o=>o+1)},1e3)}ngOnDestroy(){this.tickTimer&&clearInterval(this.tickTimer)}async loadStatus(){this.loading.set(!0);try{let o=await u(this.http.get("/api/session/status"));this.recording.set(!!o?.recording),this.path.set(o?.path),o?.recording?this.startedAt.set(Date.now()):this.startedAt.set(null)}catch{this.recording.set(!1),this.startedAt.set(null)}finally{this.loading.set(!1)}}async toggle(){if(this.busy())return;this.busy.set(!0);let o=this.recording();try{let n=await u(this.http.post("/api/session/record?action=toggle",{})),s=!!n?.recording;this.recording.set(s),this.path.set(n?.path),s&&!o?(this.startedAt.set(Date.now()),this.snack.open(n?.path?`Started session at ${n.path}`:"Started session","",{duration:2500})):!s&&o&&(this.startedAt.set(null),this.snack.open("Stopped session","",{duration:2500}))}catch(n){this.snack.open(`Session toggle failed: ${n?.message??"error"}`,"Dismiss",{duration:4e3,panelClass:"dm-snack-error"})}finally{this.busy.set(!1)}}static \u0275fac=function(n){return new(n||a)};static \u0275cmp=x({type:a,selectors:[["dm-sessions-page"]],decls:10,vars:2,consts:[[1,"dm-page-header"],[1,"dm-page-sub"],["width","12rem","height","1rem"],[1,"dm-skel-grid"],["height","9rem"],[1,"dm-status-card"],[1,"dm-status-row"],[1,"dm-state"],[1,"dm-idle-label"],["mat-flat-button","","color","primary",1,"dm-toggle-btn",3,"click","disabled"],[1,"dm-rec-meta"],[1,"dm-info-grid"],[1,"dm-info-card"],[1,"dm-info-list"],[1,"dm-info-row"],[1,"dm-info-label"],[1,"dm-info-mono"],[1,"dm-info-hint"],[1,"dm-replay-row"],[1,"dm-replay-desc"],[1,"dm-rec-dot"],[1,"dm-rec-label"],[1,"dm-meta-row"],[1,"dm-meta-label"],[1,"dm-meta-value"],[1,"dm-meta-value","dm-path"]],template:function(n,s){n&1&&(t(0,"div",0)(1,"div")(2,"h1"),i(3,"Sessions"),e(),t(4,"div",1),m(5,V,1,0,"dm-skeleton",2)(6,F,2,1,"span")(7,H,2,0,"span"),e()()(),m(8,J,4,0,"div",3)(9,Q,61,9)),n&2&&(r(5),l(s.loading()?5:s.recording()?6:7),r(3),l(s.loading()?8:9))},dependencies:[z,A,j,L,$,T,D,w,E,N,R],styles:["[_nghost-%COMP%]{display:block}.dm-page-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0}.dm-page-sub[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);margin-top:.25rem;font-size:.875rem}.dm-skel-grid[_ngcontent-%COMP%]{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr))}.dm-status-card[_ngcontent-%COMP%]{margin-bottom:1rem;border:1px solid var(--mat-sys-outline-variant)}.dm-status-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.dm-state[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.65rem;font:500 1.5rem/2rem Roboto;color:var(--mat-sys-on-surface-variant)}.dm-state-rec[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.dm-rec-dot[_ngcontent-%COMP%]{width:14px;height:14px;border-radius:999px;background:var(--mat-sys-error);box-shadow:0 0 0 4px color-mix(in oklch,var(--mat-sys-error) 22%,transparent);animation:_ngcontent-%COMP%_dm-pulse 1.4s ease-in-out infinite}@keyframes _ngcontent-%COMP%_dm-pulse{0%,to{opacity:1}50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.dm-rec-dot[_ngcontent-%COMP%]{animation:none}}.dm-rec-label[_ngcontent-%COMP%]{letter-spacing:.05rem}.dm-idle-label[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant)}.dm-toggle-btn[_ngcontent-%COMP%]{min-height:48px;padding:0 1.25rem;font-size:1rem}.dm-rec-meta[_ngcontent-%COMP%]{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--mat-sys-outline-variant);display:flex;flex-direction:column;gap:.5rem}.dm-meta-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:.75rem}.dm-meta-label[_ngcontent-%COMP%]{font:500 .6875rem/1rem Roboto;text-transform:uppercase;letter-spacing:.04rem;color:var(--mat-sys-on-surface-variant);min-width:4.5rem}.dm-meta-value[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.dm-path[_ngcontent-%COMP%]{word-break:break-all}.dm-info-grid[_ngcontent-%COMP%]{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr))}.dm-info-card[_ngcontent-%COMP%]{border:1px solid var(--mat-sys-outline-variant)}.dm-info-list[_ngcontent-%COMP%]{margin:0 0 1rem;padding-left:1.25rem;color:var(--mat-sys-on-surface);font-size:.875rem}.dm-info-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-bottom:.25rem}.dm-info-row[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.65rem}.dm-info-label[_ngcontent-%COMP%]{font:500 .6875rem/1rem Roboto;text-transform:uppercase;letter-spacing:.04rem;color:var(--mat-sys-on-surface-variant)}.dm-info-mono[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);word-break:break-all}.dm-info-hint[_ngcontent-%COMP%]{margin-top:.5rem;font-size:.8125rem;color:var(--mat-sys-on-surface-variant)}.dm-replay-row[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.65rem}.dm-replay-desc[_ngcontent-%COMP%]{font-size:.8125rem;color:var(--mat-sys-on-surface-variant)}"],changeDetection:0})};export{B as SessionsPageComponent};
@@ -0,0 +1,2 @@
1
+ import{k as v}from"./chunk-U6AY7XZK.js";import{Db as h,Eb as l,Fb as d,Ob as a,Pb as s,Qb as p,Wb as u,Xb as f,Yb as g,_a as i,fc as y,ic as c,jc as m,pb as r}from"./chunk-K43KW4K2.js";var M=["*"];function _(e,o){if(e&1&&(a(0,"span",1),c(1),s()),e&2){let t=u();i(),m(t.icon)}}function E(e,o){if(e&1&&(a(0,"p",3),c(1),s()),e&2){let t=u();i(),m(t.hint)}}var b=class e{status="stopped";health="unknown";badge=()=>v({status:this.status,health:this.health});kind=()=>this.badge().kind;static \u0275fac=function(t){return new(t||e)};static \u0275cmp=r({type:e,selectors:[["dm-status-pill"]],inputs:{status:"status",health:"health"},decls:4,vars:4,consts:[[1,"dm-pill"],[1,"dm-dot"]],template:function(t,n){t&1&&(a(0,"span",0),p(1,"span",1),a(2,"span"),c(3),s()()),t&2&&(h("data-kind",n.kind()),i(),y("background",n.badge().color),i(2),m(n.badge().label))},styles:["[_nghost-%COMP%]{display:inline-flex}.dm-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.4rem;padding:2px 10px;border-radius:999px;border:1px solid var(--mat-sys-outline-variant);background:var(--mat-sys-surface-container);color:var(--mat-sys-on-surface);font:500 .75rem/1rem Roboto;letter-spacing:.025rem}.dm-pill[data-kind=serving][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-primary) 12%,transparent);border-color:color-mix(in oklch,var(--mat-sys-primary) 28%,transparent)}.dm-pill[data-kind=compiling][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-tertiary) 14%,transparent);border-color:color-mix(in oklch,var(--mat-sys-tertiary) 28%,transparent)}.dm-pill[data-kind=starting][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-secondary) 14%,transparent);border-color:color-mix(in oklch,var(--mat-sys-secondary) 28%,transparent)}.dm-pill[data-kind=error][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-error) 14%,transparent);border-color:color-mix(in oklch,var(--mat-sys-error) 30%,transparent);color:var(--mat-sys-error)}.dm-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:999px;box-shadow:0 0 0 2px color-mix(in oklch,currentColor 18%,transparent)}"],changeDetection:0})},C=class e{width="100%";height="1em";static \u0275fac=function(t){return new(t||e)};static \u0275cmp=r({type:e,selectors:[["dm-skeleton"]],inputs:{width:"width",height:"height"},decls:1,vars:4,consts:[[1,"dm-sk"]],template:function(t,n){t&1&&p(0,"span",0),t&2&&y("width",n.width)("height",n.height)},styles:[".dm-sk[_ngcontent-%COMP%]{display:inline-block;border-radius:6px;background:linear-gradient(90deg,var(--mat-sys-surface-container) 0%,var(--mat-sys-surface-container-high) 50%,var(--mat-sys-surface-container) 100%);background-size:200% 100%;animation:_ngcontent-%COMP%_dm-shimmer 1.4s linear infinite}@keyframes _ngcontent-%COMP%_dm-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.dm-sk[_ngcontent-%COMP%]{animation:none}}"],changeDetection:0})},x=class e{icon="";title="";hint="";static \u0275fac=function(t){return new(t||e)};static \u0275cmp=r({type:e,selectors:[["dm-empty"]],inputs:{icon:"icon",title:"title",hint:"hint"},ngContentSelectors:M,decls:6,vars:3,consts:[[1,"dm-empty"],[1,"material-symbols-outlined","dm-empty-icon"],[1,"dm-empty-title"],[1,"dm-empty-hint"]],template:function(t,n){t&1&&(f(),a(0,"div",0),l(1,_,2,1,"span",1),a(2,"h3",2),c(3),s(),l(4,E,2,1,"p",3),g(5),s()),t&2&&(i(),d(n.icon?1:-1),i(2),m(n.title),i(),d(n.hint?4:-1))},styles:[".dm-empty[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:3rem 1rem;text-align:center;color:var(--mat-sys-on-surface-variant)}.dm-empty-icon[_ngcontent-%COMP%]{font-size:48px;opacity:.55}.dm-empty-title[_ngcontent-%COMP%]{font:500 1.125rem/1.5rem Roboto;color:var(--mat-sys-on-surface);margin:0}.dm-empty-hint[_ngcontent-%COMP%]{font:400 .875rem/1.25rem Roboto;max-width:36rem;margin:0}"],changeDetection:0})},k=class e{static \u0275fac=function(t){return new(t||e)};static \u0275cmp=r({type:e,selectors:[["dm-mono"]],ngContentSelectors:M,decls:2,vars:0,consts:[[1,"dm-mono"]],template:function(t,n){t&1&&(f(),a(0,"span",0),g(1),s())},styles:[".dm-mono[_ngcontent-%COMP%]{font-family:Roboto Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;letter-spacing:0}"],changeDetection:0})};var T=(()=>{class e{static \u0275fac=function(n){return new(n||e)};static \u0275cmp=r({type:e,selectors:[["structural-styles"]],decls:0,vars:0,template:function(n,P){},styles:[`.mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus::before{content:""}@media(forced-colors: active){html{--mat-focus-indicator-display: block}}
2
+ `],encapsulation:2,changeDetection:0})}return e})();export{T as a,b,C as c,x as d,k as e};
@@ -0,0 +1 @@
1
+ function t(n){let r=2166136261;for(let e=0;e<n.length;e++)r^=n.charCodeAt(e),r=Math.imul(r,16777619);return r>>>0}function u(n){return n?`oklch(0.94 0.05 ${t(n)%360})`:"var(--mat-sys-surface-container)"}export{u as a};
@@ -0,0 +1 @@
1
+ import{a as X,b as Y,c as Z,d as ee,e as te,f as ne}from"./chunk-L63FHXGH.js";import{a as V,b as K}from"./chunk-UNT27XFJ.js";import{a as Q,b as W}from"./chunk-7L4DWDGL.js";import{d as L,f as q,g as H}from"./chunk-N5GRSTMJ.js";import{c as U,d as G,e as J}from"./chunk-VZ6E4VQY.js";import"./chunk-YNQPX5G6.js";import"./chunk-MHOSWLRR.js";import{c as $}from"./chunk-ESDYJ3BP.js";import{c as N,h as j,i as B,j as z}from"./chunk-U6AY7XZK.js";import{P as A}from"./chunk-Y6B6X4Y6.js";import{Db as k,Eb as v,Fb as _,Hb as E,Ib as h,Jb as b,Kb as y,Lb as a,Mb as o,Nb as x,Sb as R,Ub as C,Wb as p,_a as d,aa as F,ea as M,ic as r,ja as D,jc as u,ka as O,kc as P,pb as S,qb as I,s as T,ta as g,xc as w}from"./chunk-K43KW4K2.js";var ie=(()=>{class n{static \u0275fac=function(i){return new(i||n)};static \u0275mod=I({type:n});static \u0275inj=F({imports:[A,A]})}return n})();var de=(n,e)=>e.name,se=(n,e)=>e.reason;function le(n,e){n&1&&(a(0,"div",7),x(1,"dm-skeleton",23)(2,"dm-skeleton",24)(3,"dm-skeleton",25),o())}function me(n,e){if(n&1&&(a(0,"div",26)(1,"span",27),r(2,"Connection"),o(),a(3,"span",28)(4,"span",29),x(5,"span",30),r(6),o()()(),a(7,"div",26)(8,"span",27),r(9,"Version"),o(),a(10,"span",28)(11,"dm-mono"),r(12),o()()(),a(13,"div",26)(14,"span",27),r(15,"API port"),o(),a(16,"span",28)(17,"dm-mono"),r(18),o()()(),a(19,"div",26)(20,"span",27),r(21,"Apps tracked"),o(),a(22,"span",28)(23,"dm-mono"),r(24),o()()()),n&2){let t=p();d(4),k("data-kind",t.api.connected()?"ok":"err"),d(2),P("",t.api.connected()?"connected":"disconnected"," "),d(6),u(t.daemonVersion()||"unknown"),d(6),u(t.daemonPort()||"-"),d(6),u(t.api.apps().length)}}function ce(n,e){n&1&&(a(0,"div",7),x(1,"dm-skeleton",31)(2,"dm-skeleton",25)(3,"dm-skeleton",32),o())}function pe(n,e){if(n&1&&(a(0,"dm-empty",8)(1,"dm-mono"),r(2,"daimon init --auto"),o()()),n&2){let t=p();y("title","No apps discovered")("hint",t.discovery().suggestion||"Run daimon init --auto in your workspace")}}function ue(n,e){if(n&1&&(a(0,"li")(1,"dm-mono"),r(2),o()()),n&2){let t=e.$implicit;d(2),u(t)}}function ge(n,e){if(n&1&&(a(0,"tr")(1,"td")(2,"dm-mono"),r(3),o()(),a(4,"td",37)(5,"dm-mono"),r(6),o()()()),n&2){let t=e.$implicit;d(3),u(t.reason),d(3),u(t.count)}}function fe(n,e){if(n&1&&(a(0,"div",33)(1,"div",27),r(2,"Rejected"),o(),a(3,"table",36)(4,"tbody"),h(5,ge,7,2,"tr",null,se),o()()()),n&2){let t=p(2);d(5),b(t.rejectedRows())}}function ve(n,e){if(n&1&&(a(0,"li")(1,"dm-mono"),r(2),o()()),n&2){let t=e.$implicit;d(2),u(t)}}function _e(n,e){if(n&1&&(a(0,"div",33)(1,"div",27),r(2,"Warnings"),o(),a(3,"ul",38),h(4,ve,3,1,"li",null,E),o()()),n&2){let t=p(2);d(4),b(t.discovery().warnings)}}function xe(n,e){if(n&1&&(a(0,"div",35),r(1),o()),n&2){let t=p(2);d(),u(t.discovery().suggestion)}}function ye(n,e){if(n&1&&(a(0,"div",26)(1,"span",27),r(2,"Apps found"),o(),a(3,"span",28)(4,"dm-mono"),r(5),o()()(),a(6,"div",26)(7,"span",27),r(8,"Scanned"),o(),a(9,"span",28)(10,"dm-mono"),r(11),o()()(),a(12,"div",33)(13,"div",27),r(14,"Search roots"),o(),a(15,"ul",34),h(16,ue,3,1,"li",null,E),o()(),v(18,fe,7,0,"div",33),v(19,_e,6,0,"div",33),v(20,xe,2,1,"div",35)),n&2){let t=p();d(5),u(t.discovery().appsFound),d(6),u(t.discovery().scanned),d(5),b(t.discovery().searchRoots),d(2),_(t.rejectedRows().length?18:-1),d(),_(t.discovery().warnings.length?19:-1),d(),_(t.discovery().suggestion?20:-1)}}function Ce(n,e){n&1&&(a(0,"div",9),r(1,"Discovery info unavailable."),o())}function he(n,e){n&1&&x(0,"mat-spinner",14)}function be(n,e){n&1&&(a(0,"mat-icon"),r(1,"play_arrow"),o())}function Me(n,e){n&1&&x(0,"mat-spinner",14)}function ke(n,e){n&1&&(a(0,"mat-icon"),r(1,"build"),o())}function Pe(n,e){if(n&1&&(a(0,"dm-mono"),r(1),o()),n&2){let t=p(2).$implicit,i=p();d(),u(i.state(t.name).detail)}}function we(n,e){if(n&1&&(a(0,"span"),r(1),o()),n&2){let t=p(2).$implicit,i=p();d(),u(i.state(t.name).detail)}}function De(n,e){if(n&1&&(a(0,"div",41),v(1,Pe,2,1,"dm-mono")(2,we,2,1,"span"),o()),n&2){let t=p().$implicit,i=p();d(),_(i.state(t.name).isPath?1:2)}}function Oe(n,e){n&1&&x(0,"mat-spinner",14)}function Se(n,e){n&1&&(a(0,"mat-icon"),r(1,"search"),o())}function Ee(n,e){n&1&&x(0,"mat-spinner",14)}function Ae(n,e){n&1&&(a(0,"mat-icon"),r(1,"build"),o())}function Te(n,e){if(n&1){let t=R();a(0,"mat-card",6)(1,"mat-card-header")(2,"mat-card-title"),r(3),o()(),a(4,"mat-card-content")(5,"div",39)(6,"div",40),r(7),o(),a(8,"span",29),x(9,"span",30),r(10),o()(),v(11,De,3,1,"div",41),o(),a(12,"mat-card-actions",42)(13,"button",13),C("click",function(){let s=D(t).$implicit,m=p();return O(m.runOne(s.name,!0))}),v(14,Oe,1,0,"mat-spinner",14)(15,Se,2,0,"mat-icon"),r(16," Dry-run "),o(),a(17,"button",43),C("click",function(){let s=D(t).$implicit,m=p();return O(m.runOne(s.name,!1))}),v(18,Ee,1,0,"mat-spinner",14)(19,Ae,2,0,"mat-icon"),r(20," Fix "),o()()()}if(n&2){let t=e.$implicit,i=p();d(3),u(t.title),d(4),u(t.description),d(),k("data-kind",i.state(t.name).status),d(2),P("",i.state(t.name).status," "),d(),_(i.state(t.name).detail?11:-1),d(2),y("disabled",i.busy(t.name)||i.busyAll()),d(),_(i.busy(t.name)==="dry"?14:15),d(3),y("disabled",i.busy(t.name)||i.busyAll()),d(),_(i.busy(t.name)==="fix"?18:19)}}function Fe(n,e){n&1&&x(0,"mat-spinner",14)}function Ie(n,e){n&1&&(a(0,"mat-icon"),r(1,"refresh"),o())}var Re=[{name:"orphan-daemon",title:"Orphan daemon",description:"Daemon may be running from the wrong cwd, ignoring your local daimon.config.json"},{name:"stale-lock",title:"Stale lock",description:"Lock file exists but the daemon process is dead"},{name:"missing-search-root",title:"Missing search root",description:"Current cwd has an nx/angular/vite project but isn\u2019t configured"},{name:"corrupt-history-db",title:"Corrupt history DB",description:"History SQLite DB failed quickCheck()"}],oe=class n{api=M(z);http=M(N);snack=M(Q);routines=Re;results=g(new Map);results_lastIntent=g(new Map);errored=g(new Set);loading=g(!0);discovery=g(null);daemonVersion=g("");daemonPort=g(null);configLoaded=g(!1);overview=g(null);busyMap=g(new Map);busyAll=g(!1);busyAllKind=g(null);reloading=g(!1);rejectedRows=w(()=>{let e=this.discovery();return e?Object.entries(e.rejected||{}).map(([t,i])=>({reason:t,count:i})).sort((t,i)=>i.count-t.count):[]});subtitle=w(()=>{let e=this.results(),t=0;for(let i of e.values())i.detected&&t++;return this.loading()&&e.size===0?"Checking system health\u2026":e.size===0?"Run diagnostics to see if any routines need fixing.":t===0?"All checked routines look clean.":`${t} routine${t===1?"":"s"} need${t===1?"s":""} fixing`});tokenEstimate=w(()=>120+this.api.apps().length*34);async ngOnInit(){await this.refreshAll()}async refreshAll(){this.loading.set(!0);try{let[e,t,i]=await Promise.all([this.api.getConfig().catch(()=>null),this.api.discoveryExplain().catch(()=>null),T(this.http.get("/api/overview")).catch(()=>null)]);e&&e.config&&(this.configLoaded.set(!0),this.daemonPort.set(e.config.apiPort??e.config.api?.port??null)),this.discovery.set(t),this.overview.set(i),i?.version&&this.daemonVersion.set(i.version),this.api.apps().length||await this.api.refresh()}finally{this.loading.set(!1)}}state(e){let t=this.results().get(e),i=this.results_lastIntent().get(e),s=this.errored().has(e);if(!t)return{status:"unknown",detail:"",isPath:!1};let m;s?m="error":i==="fix"?m=t.detected?"fixed":"clean":m=t.detected?"detected":"clean";let f=t.description||"",c=/[\\/]/.test(f)||f.includes(":\\")||f.startsWith("/");return{status:m,detail:f,isPath:c}}busy(e){return this.busyMap().get(e)}async runOne(e,t){if(!t&&!window.confirm(`Run fix for "${e}"? This will modify daemon state.`))return;let i=t?"dry":"fix";this.setBusy(e,i);try{let s=await this.api.runAutoFix({dryRun:t,permitted:[e]});this.ingestResults(s,i);let m=this.results().get(e);m?this.snack.open(t?m.detected?`${e}: issue detected`:`${e}: clean`:m.detected?`${e}: fix applied`:`${e}: no action needed`,"OK",{duration:3500}):this.snack.open(`${e}: no result returned`,"OK",{duration:3e3})}catch(s){this.markError(e,s?.message||String(s)),this.snack.open(`${e} failed: ${s?.message||s}`,"Dismiss",{duration:5e3})}finally{this.setBusy(e,null)}}async runAllDry(){this.busyAll.set(!0),this.busyAllKind.set("dry");try{let e=await this.api.runAutoFix({dryRun:!0});this.ingestResults(e,"dry"),this.snack.open("Dry-run complete","OK",{duration:2500})}catch(e){this.snack.open(`Dry-run failed: ${e?.message||e}`,"Dismiss",{duration:5e3})}finally{this.busyAll.set(!1),this.busyAllKind.set(null)}}async fixAll(){if(window.confirm("Run every fix routine without dry-run? This will modify daemon state.")){this.busyAll.set(!0),this.busyAllKind.set("fix");try{let t=await this.api.runAutoFix({dryRun:!1});this.ingestResults(t,"fix"),this.snack.open("Fix-all complete","OK",{duration:2500})}catch(t){this.snack.open(`Fix-all failed: ${t?.message||t}`,"Dismiss",{duration:5e3})}finally{this.busyAll.set(!1),this.busyAllKind.set(null)}}}async reloadConfig(){this.reloading.set(!0);try{await this.api.reloadConfig(),this.snack.open("Config reloaded","OK",{duration:2500}),await this.refreshAll()}catch(e){this.snack.open(`Reload failed: ${e?.message||e}`,"Dismiss",{duration:5e3})}finally{this.reloading.set(!1)}}setBusy(e,t){this.busyMap.update(i=>{let s=new Map(i);return t===null?s.delete(e):s.set(e,t),s})}ingestResults(e,t){let i=Array.isArray(e?.ran)?e.ran:[],s=Array.isArray(e?.skipped)?e.skipped:[],m=Array.isArray(e?.errors)?e.errors:[];if(this.results.update(f=>{let c=new Map(f);for(let l of i)c.set(l.name,l);for(let l of s)c.set(l.name,l);for(let l of m){let ae=c.get(l.name);c.set(l.name,{name:l.name,detected:ae?.detected??!1,description:l.error||"error"})}return c}),this.errored.update(f=>{let c=new Set(f);for(let l of i)c.delete(l.name);for(let l of s)c.delete(l.name);for(let l of m)c.add(l.name);return c}),this.results_lastIntent.update(f=>{let c=new Map(f);for(let l of i)c.set(l.name,t);for(let l of s)c.set(l.name,t);for(let l of m)c.set(l.name,"fix");return c}),m.length)for(let f of m)this.markError(f.name,f.error)}markError(e,t){this.results.update(i=>{let s=new Map(i);return s.set(e,{name:e,detected:!1,description:t||"error"}),s}),this.results_lastIntent.update(i=>{let s=new Map(i);return s.set(e,"fix"),s}),this.errored.update(i=>{let s=new Set(i);return s.add(e),s})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=S({type:n,selectors:[["dm-doctor-page"]],decls:74,vars:11,consts:[[1,"dm-page-header"],[1,"dm-page-sub"],["mat-icon-button","","aria-label","Refresh",3,"click","disabled"],[1,"dm-section"],[1,"dm-section-title"],[1,"dm-grid-2"],[1,"dm-card"],[1,"dm-stack"],["icon","search_off",3,"title","hint"],[1,"dm-muted"],[1,"dm-banner"],[1,"dm-banner-text"],[1,"dm-banner-actions"],["mat-stroked-button","",3,"click","disabled"],["diameter","16"],["mat-flat-button","","color","warn",3,"click","disabled"],[1,"dm-quick"],["mat-stroked-button","","routerLink","/config"],["mat-stroked-button","","routerLink","/events"],[1,"dm-stat"],[1,"dm-stat-icon"],[1,"dm-stat-label"],[1,"dm-stat-value"],["height","1.25rem","width","60%"],["height","1rem","width","40%"],["height","1rem","width","50%"],[1,"dm-kv"],[1,"dm-k"],[1,"dm-v"],[1,"dm-pill"],[1,"dm-dot"],["height","1rem","width","70%"],["height","1rem","width","80%"],[1,"dm-block"],[1,"dm-list"],[1,"dm-callout"],[1,"dm-table"],[1,"dm-num"],[1,"dm-list","dm-warn"],[1,"dm-row-between"],[1,"dm-routine-desc"],[1,"dm-detail"],["align","end"],["mat-flat-button","","color","primary",3,"click","disabled"]],template:function(t,i){t&1&&(a(0,"div",0)(1,"div")(2,"h1"),r(3,"Doctor"),o(),a(4,"div",1),r(5),o()(),a(6,"button",2),C("click",function(){return i.refreshAll()}),a(7,"mat-icon"),r(8,"refresh"),o()()(),a(9,"section",3)(10,"h2",4),r(11,"System overview"),o(),a(12,"div",5)(13,"mat-card",6)(14,"mat-card-header")(15,"mat-card-title"),r(16,"Daemon"),o()(),a(17,"mat-card-content"),v(18,le,4,0,"div",7)(19,me,25,5),o()(),a(20,"mat-card",6)(21,"mat-card-header")(22,"mat-card-title"),r(23,"Discovery"),o()(),a(24,"mat-card-content"),v(25,ce,4,0,"div",7)(26,pe,3,2,"dm-empty",8)(27,ye,21,5)(28,Ce,2,0,"div",9),o()()()(),a(29,"section",3)(30,"h2",4),r(31,"Auto-fix routines"),o(),a(32,"div",10)(33,"div",11),r(34,"Run diagnostics across every routine, or attempt all fixes in one go."),o(),a(35,"div",12)(36,"button",13),C("click",function(){return i.runAllDry()}),v(37,he,1,0,"mat-spinner",14)(38,be,2,0,"mat-icon"),r(39," Run all dry-run "),o(),a(40,"button",15),C("click",function(){return i.fixAll()}),v(41,Me,1,0,"mat-spinner",14)(42,ke,2,0,"mat-icon"),r(43," Fix everything (be careful) "),o()()(),a(44,"div",5),h(45,Te,21,9,"mat-card",6,de),o()(),a(47,"section",3)(48,"h2",4),r(49,"Quick links"),o(),a(50,"div",16)(51,"button",17)(52,"mat-icon"),r(53,"tune"),o(),r(54," Open Config editor "),o(),a(55,"button",18)(56,"mat-icon"),r(57,"timeline"),o(),r(58," View Events "),o(),a(59,"button",13),C("click",function(){return i.reloadConfig()}),v(60,Fe,1,0,"mat-spinner",14)(61,Ie,2,0,"mat-icon"),r(62," Reload config "),o(),a(63,"div",19)(64,"div",20)(65,"mat-icon"),r(66,"token"),o()(),a(67,"div")(68,"div",21),r(69,"API token footprint"),o(),a(70,"div",22)(71,"dm-mono"),r(72),o(),r(73," per Claude session"),o()()()()()),t&2&&(d(5),u(i.subtitle()),d(),y("disabled",i.loading()),d(12),_(i.loading()&&!i.configLoaded()?18:19),d(7),_(i.loading()&&!i.discovery()?25:i.discovery()&&i.discovery().appsFound===0?26:i.discovery()?27:28),d(11),y("disabled",i.busyAll()),d(),_(i.busyAll()&&i.busyAllKind()==="dry"?37:38),d(3),y("disabled",i.busyAll()),d(),_(i.busyAll()&&i.busyAllKind()==="fix"?41:42),d(4),b(i.routines),d(14),y("disabled",i.reloading()),d(),_(i.reloading()?60:61),d(12),P("~ ",i.tokenEstimate()," tokens"))},dependencies:[$,ne,X,ee,Z,te,Y,H,q,L,B,j,K,V,W,ie,U,G,J],styles:["[_nghost-%COMP%]{display:block;max-width:1200px;margin:0 auto}.dm-section[_ngcontent-%COMP%]{margin-bottom:1.25rem}.dm-section-title[_ngcontent-%COMP%]{margin:0 0 .5rem;font:500 .6875rem/1rem Roboto;color:var(--mat-sys-on-surface-variant);letter-spacing:.06em;text-transform:uppercase}.dm-grid-2[_ngcontent-%COMP%]{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:800px){.dm-grid-2[_ngcontent-%COMP%]{grid-template-columns:1fr}}.dm-card[_ngcontent-%COMP%]{background:var(--mat-sys-surface-container-low)}.dm-stack[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.dm-kv[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--mat-sys-outline-variant)}.dm-kv[_ngcontent-%COMP%]:last-child{border-bottom:0}.dm-k[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:.8125rem}.dm-v[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.dm-block[_ngcontent-%COMP%]{margin-top:.75rem}.dm-block[_ngcontent-%COMP%] .dm-k[_ngcontent-%COMP%]{display:block;margin-bottom:.35rem}.dm-list[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.dm-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{padding:.25rem .5rem;background:var(--mat-sys-surface-container);border-radius:6px;overflow-wrap:anywhere}.dm-warn[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.dm-table[_ngcontent-%COMP%]{width:100%;border-collapse:collapse;font-size:.8125rem}.dm-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:.25rem .5rem;border-bottom:1px solid var(--mat-sys-outline-variant)}.dm-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td[_ngcontent-%COMP%]{border-bottom:0}.dm-num[_ngcontent-%COMP%]{text-align:right;color:var(--mat-sys-on-surface-variant)}.dm-callout[_ngcontent-%COMP%]{margin-top:.75rem;padding:.65rem .85rem;border-radius:10px;background:color-mix(in oklch,var(--mat-sys-tertiary) 12%,transparent);border:1px solid color-mix(in oklch,var(--mat-sys-tertiary) 28%,transparent);color:var(--mat-sys-on-surface);font-size:.875rem}.dm-muted[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:.875rem}.dm-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:.4rem;padding:2px 10px;border-radius:999px;border:1px solid var(--mat-sys-outline-variant);background:var(--mat-sys-surface-container);color:var(--mat-sys-on-surface);font:500 .75rem/1rem Roboto;letter-spacing:.025rem}.dm-pill[_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:999px;background:var(--mat-sys-outline)}.dm-pill[data-kind=ok][_ngcontent-%COMP%], .dm-pill[data-kind=clean][_ngcontent-%COMP%], .dm-pill[data-kind=fixed][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-primary) 12%,transparent);border-color:color-mix(in oklch,var(--mat-sys-primary) 28%,transparent)}.dm-pill[data-kind=ok][_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%], .dm-pill[data-kind=clean][_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%], .dm-pill[data-kind=fixed][_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%]{background:var(--mat-sys-primary)}.dm-pill[data-kind=detected][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-tertiary) 14%,transparent);border-color:color-mix(in oklch,var(--mat-sys-tertiary) 28%,transparent)}.dm-pill[data-kind=detected][_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%]{background:var(--mat-sys-tertiary)}.dm-pill[data-kind=err][_ngcontent-%COMP%], .dm-pill[data-kind=error][_ngcontent-%COMP%]{background:color-mix(in oklch,var(--mat-sys-error) 14%,transparent);border-color:color-mix(in oklch,var(--mat-sys-error) 30%,transparent);color:var(--mat-sys-error)}.dm-pill[data-kind=err][_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%], .dm-pill[data-kind=error][_ngcontent-%COMP%] .dm-dot[_ngcontent-%COMP%]{background:var(--mat-sys-error)}.dm-banner[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .85rem;margin-bottom:.75rem;background:var(--mat-sys-surface-container);border:1px solid var(--mat-sys-outline-variant);border-radius:10px}.dm-banner-text[_ngcontent-%COMP%]{font-size:.875rem;color:var(--mat-sys-on-surface-variant)}.dm-banner-actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}@media(max-width:700px){.dm-banner[_ngcontent-%COMP%]{flex-direction:column;align-items:stretch}.dm-banner-actions[_ngcontent-%COMP%]{flex-wrap:wrap}}.dm-row-between[_ngcontent-%COMP%]{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.dm-routine-desc[_ngcontent-%COMP%]{font-size:.875rem;color:var(--mat-sys-on-surface-variant);flex:1}.dm-detail[_ngcontent-%COMP%]{margin-top:.75rem;padding:.5rem .65rem;background:var(--mat-sys-surface-container);border-radius:8px;font-size:.8125rem;overflow-wrap:anywhere}.dm-quick[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.dm-quick[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{justify-content:flex-start;padding:.5rem .75rem;height:auto;min-height:40px}.dm-stat[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border:1px solid var(--mat-sys-outline-variant);border-radius:10px;background:var(--mat-sys-surface-container-low)}.dm-stat-icon[_ngcontent-%COMP%]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:color-mix(in oklch,var(--mat-sys-primary) 14%,transparent);color:var(--mat-sys-primary)}.dm-stat-icon[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}.dm-stat-label[_ngcontent-%COMP%]{font-size:.75rem;color:var(--mat-sys-on-surface-variant);text-transform:uppercase;letter-spacing:.025rem}.dm-stat-value[_ngcontent-%COMP%]{font-size:.875rem;color:var(--mat-sys-on-surface)}mat-spinner[_ngcontent-%COMP%]{display:inline-block;margin-right:.35rem}"],changeDetection:0})};export{oe as DoctorPageComponent};