daimon 0.6.0 → 0.7.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 (54) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/README.md +43 -29
  3. package/dist/cli.js +78 -69
  4. package/dist/dashboard/browser/{chunk-7L4DWDGL.js → chunk-25VLDASM.js} +1 -1
  5. package/dist/dashboard/browser/{chunk-ESDYJ3BP.js → chunk-5PAHWCG5.js} +1 -1
  6. package/dist/dashboard/browser/chunk-6BDWIJ3G.js +3 -0
  7. package/dist/dashboard/browser/chunk-6C6GHU3A.js +1 -0
  8. package/dist/dashboard/browser/{chunk-L63FHXGH.js → chunk-7NRE3SNA.js} +3 -3
  9. package/dist/dashboard/browser/chunk-BDYOKQF3.js +1 -0
  10. package/dist/dashboard/browser/{chunk-UNT27XFJ.js → chunk-CILFSVSP.js} +1 -1
  11. package/dist/dashboard/browser/{chunk-4ZR4NTJW.js → chunk-GDJOSLWM.js} +1 -1
  12. package/dist/dashboard/browser/chunk-HYGMRGYR.js +4 -0
  13. package/dist/dashboard/browser/chunk-HYIZMKSF.js +1 -0
  14. package/dist/dashboard/browser/chunk-IQZZO5IM.js +3 -0
  15. package/dist/dashboard/browser/chunk-J5UK77OJ.js +1 -0
  16. package/dist/dashboard/browser/chunk-JI63U3KC.js +2 -0
  17. package/dist/dashboard/browser/chunk-KLH6B22T.js +1 -0
  18. package/dist/dashboard/browser/chunk-L2PHC6DL.js +1 -0
  19. package/dist/dashboard/browser/chunk-MHYQENOC.js +1 -0
  20. package/dist/dashboard/browser/chunk-OHX55ZU4.js +2 -0
  21. package/dist/dashboard/browser/chunk-OUXULJ3Z.js +3 -0
  22. package/dist/dashboard/browser/chunk-P5IU57TV.js +2 -0
  23. package/dist/dashboard/browser/{chunk-U6AY7XZK.js → chunk-Q3N4MMWW.js} +3 -3
  24. package/dist/dashboard/browser/chunk-RIDV4B55.js +5 -0
  25. package/dist/dashboard/browser/{chunk-VZ6E4VQY.js → chunk-SR5JAOLW.js} +1 -1
  26. package/dist/dashboard/browser/chunk-UU5K6ZPO.js +1 -0
  27. package/dist/dashboard/browser/chunk-XXIJQBCQ.js +2 -0
  28. package/dist/dashboard/browser/chunk-YA4AZONZ.js +5 -0
  29. package/dist/dashboard/browser/{chunk-NN2YNLGP.js → chunk-YNCTXEXX.js} +1 -1
  30. package/dist/dashboard/browser/chunk-ZDNBWNU5.js +1 -0
  31. package/dist/dashboard/browser/chunk-ZEO5YLWG.js +3 -0
  32. package/dist/dashboard/browser/chunk-ZVUH3ISD.js +2 -0
  33. package/dist/dashboard/browser/index.html +1 -1
  34. package/dist/dashboard/browser/main-IDF27PFI.js +1 -0
  35. package/dist/main.js +58 -49
  36. package/dist/mcp.js +3 -3
  37. package/package.json +2 -2
  38. package/dist/dashboard/browser/chunk-4VNZXWQZ.js +0 -3
  39. package/dist/dashboard/browser/chunk-BLNPJ4WD.js +0 -4
  40. package/dist/dashboard/browser/chunk-E3HUMJ6S.js +0 -6
  41. package/dist/dashboard/browser/chunk-EBOHC6KX.js +0 -1
  42. package/dist/dashboard/browser/chunk-JUZHAE4L.js +0 -2
  43. package/dist/dashboard/browser/chunk-K46KCL6L.js +0 -1
  44. package/dist/dashboard/browser/chunk-KDCKLTCZ.js +0 -1
  45. package/dist/dashboard/browser/chunk-MHOSWLRR.js +0 -3
  46. package/dist/dashboard/browser/chunk-N5GRSTMJ.js +0 -6
  47. package/dist/dashboard/browser/chunk-R6J2WYUD.js +0 -1
  48. package/dist/dashboard/browser/chunk-T2YKGOEM.js +0 -3
  49. package/dist/dashboard/browser/chunk-V2CQL6W5.js +0 -1
  50. package/dist/dashboard/browser/chunk-WJUGRIIZ.js +0 -1
  51. package/dist/dashboard/browser/chunk-WRBP4DQN.js +0 -4
  52. package/dist/dashboard/browser/chunk-XUU4AY4M.js +0 -2
  53. package/dist/dashboard/browser/chunk-XYVF5I5T.js +0 -1
  54. package/dist/dashboard/browser/main-ZADV4SOC.js +0 -1
@@ -1,5 +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(`
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 It,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 _,p as qe,pa as lt,pb as bt,qa as U,qb as ee,s as E,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(_))};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(_),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(_),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 b=document.createElement("style");a&&b.setAttribute("nonce",a),b.textContent=y,this.shadowRoot.appendChild(b)}let p=o.getExternalStyles?.();if(p)for(let y of p){let b=Fe(y,s);a&&b.setAttribute("nonce",a),this.shadowRoot.appendChild(b)}}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"],bn={"\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"},In={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=bn[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=In[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(_))};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:_,useFactory:Dn}];var On=[{provide:it,useValue:"root"},{provide:U,useFactory:Cn},{provide:ye,useClass:me,multi:!0,deps:[_]},{provide:ye,useClass:$t,multi:!0,deps:[_]},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,b=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,I=n.headers||this.headers,A=n.params||this.params,v=n.context??this.context;return n.setHeaders!==void 0&&(I=Object.keys(n.setHeaders).reduce((C,P)=>C.set(P,n.setHeaders[P]),I)),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:I,context:v,reportProgress:f,responseType:o,withCredentials:h,transferCache:b,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,I,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??"")+(I??=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,b=i.redirected;y?(o.next(new K({body:p,headers:a,status:d,statusText:c,url:l,redirected:b})),o.complete()):o.error(new N({error:p,headers:a,status:d,statusText:c,url:l,redirected:b}))}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 be=(()=>{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()),I=Xn(i)||e.url;return c=new ae({headers:f,status:i.status,statusText:h,url:I}),c},d=()=>{let{headers:h,status:f,statusText:I,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:I,url:A||void 0})),s.complete()):s.error(new N({error:v,headers:h,status:f,statusText:I,url:A||void 0}))},p=h=>{let{url:f}=l(),I=new N({error:h,status:i.status||0,statusText:i.statusText||"Unknown Error",url:f||void 0});s.error(I)},y=p;e.timeout&&(y=h=>{let{url:f}=l(),I=new N({error:new DOMException("Request timed out","TimeoutError"),status:i.status||0,statusText:i.statusText||"Request timeout",url:f||void 0});s.error(I)});let b=!1,R=h=>{b||(s.next(l()),b=!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(_),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,be,{provide:J,useExisting:be},{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(_))};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(_))};static \u0275prov=m({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();var Ie;function cr(){if(Ie===void 0&&(Ie=null,typeof window<"u")){let r=window;r.trustedTypes!==void 0&&(Ie=r.trustedTypes.createPolicy("angular#components",{createHTML:n=>n}))}return Ie}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(_,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(_),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=bt({type:r,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(t,o){t&2&&(It("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([E(this.http.get("/api/apps?format=full")),E(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 E(this.http.get(`/api/apps/${encodeURIComponent(n)}?format=full`))}catch{return null}}async appErrors(n){try{let e=await E(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 E(this.http.post(`/api/apps/${encodeURIComponent(n)}/start`,{})),await this.refresh()}async stopApp(n){this.patch(n,{status:"stopped"}),await E(this.http.post(`/api/apps/${encodeURIComponent(n)}/stop`,{})),await this.refresh()}async restartApp(n){this.patch(n,{status:"starting"}),await E(this.http.post(`/api/apps/${encodeURIComponent(n)}/restart`,{})),await this.refresh()}async ensureApp(n,e="healthy",t=18e4){return E(this.http.post(`/api/apps/${encodeURIComponent(n)}/ensure?until=${e}&timeoutMs=${t}`,{}))}async ensureUp(n,e="healthy",t=3e5){return E(this.http.post(`/api/profiles/${encodeURIComponent(n)}/ensure-up?until=${e}&timeoutMs=${t}`,{}))}async discoveryExplain(){try{return await E(this.http.get("/api/discovery/explain"))}catch{return null}}async getConfig(){try{return await E(this.http.get("/api/config"))}catch{return null}}async patchConfig(n,e){return E(this.http.patch("/api/config",e,{headers:{"if-match":n}}))}async reloadConfig(){return E(this.http.post("/api/config/reload",{}))}async runAutoFix(n={}){return E(this.http.post("/api/doctor/auto-fix",n))}async getCompileTimes(n,e=100){try{let t=await E(this.http.get(`/api/history/compile-times?app=${encodeURIComponent(n)}&limit=${e}`));return Array.isArray(t)?t:[]}catch{return[]}}async getTrends(n){try{let e=new URLSearchParams;return n.app&&e.set("app",n.app),e.set("metric",n.metric),e.set("since",n.since),await E(this.http.get(`/api/history/trends?${e.toString()}`))}catch{return null}}async getBundles(n,e=100){try{let t=await E(this.http.get(`/api/history/bundles?app=${encodeURIComponent(n)}&limit=${e}`));return Array.isArray(t)?t:[]}catch{return[]}}async getHistoryWhy(n){try{return await E(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
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
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,5 @@
1
+ import{a as g,b as V,c as Y,e as H}from"./chunk-OHX55ZU4.js";import{a as G}from"./chunk-SR5JAOLW.js";import{m as u}from"./chunk-KLH6B22T.js";import{P as h,o as N,p as L,t as U,v as Z}from"./chunk-Y6B6X4Y6.js";import{$ as z,Ca as I,Db as T,Hc as m,Ic as S,Ob as j,Pb as P,Qb as r,Xb as l,Yb as i,aa as A,ca as D,ea as n,eb as s,gc as b,hb as R,hc as O,ib as B,na as M,oa as E,pb as c,qb as F,rb as C,sb as d}from"./chunk-K43KW4K2.js";var X={capture:!0},tt=["focus","mousedown","mouseenter","touchstart"],y="mat-ripple-loader-uninitialized",x="mat-ripple-loader-class-name",$="mat-ripple-loader-centered",p="mat-ripple-loader-disabled",J=(()=>{class e{_document=n(E);_animationsDisabled=u();_globalRippleOptions=n(Y,{optional:!0});_platform=n(L);_ngZone=n(s);_injector=n(M);_eventCleanups;_hosts=new Map;constructor(){let t=n(R).createRenderer(null,null);this._eventCleanups=this._ngZone.runOutsideAngular(()=>tt.map(a=>t.listen(this._document,a,this._onInteraction,X)))}ngOnDestroy(){let t=this._hosts.keys();for(let a of t)this.destroyRipple(a);this._eventCleanups.forEach(a=>a())}configureRipple(t,a){t.setAttribute(y,this._globalRippleOptions?.namespace??""),(a.className||!t.hasAttribute(x))&&t.setAttribute(x,a.className||""),a.centered&&t.setAttribute($,""),a.disabled&&t.setAttribute(p,"")}setDisabled(t,a){let o=this._hosts.get(t);o?(o.target.rippleDisabled=a,!a&&!o.hasSetUpEvents&&(o.hasSetUpEvents=!0,o.renderer.setupTriggerEvents(t))):a?t.setAttribute(p,""):t.removeAttribute(p)}_onInteraction=t=>{let a=N(t);if(a instanceof HTMLElement){let o=a.closest(`[${y}="${this._globalRippleOptions?.namespace??""}"]`);o&&this._createRipple(o)}};_createRipple(t){if(!this._document||this._hosts.has(t))return;t.querySelector(".mat-ripple")?.remove();let a=this._document.createElement("span");a.classList.add("mat-ripple",t.getAttribute(x)),t.append(a);let o=this._globalRippleOptions,f=this._animationsDisabled?0:o?.animation?.enterDuration??g.enterDuration,W=this._animationsDisabled?0:o?.animation?.exitDuration??g.exitDuration,v={rippleDisabled:this._animationsDisabled||o?.disabled||t.hasAttribute(p),rippleConfig:{centered:t.hasAttribute($),terminateOnPointerUp:o?.terminateOnPointerUp,animation:{enterDuration:f,exitDuration:W}}},w=new V(v,this._ngZone,a,this._platform,this._injector),k=!v.rippleDisabled;k&&w.setupTriggerEvents(t),this._hosts.set(t,{target:v,renderer:w,hasSetUpEvents:k}),t.removeAttribute(y)}destroyRipple(t){let a=this._hosts.get(t);a&&(a.renderer._removeTriggerEvents(),this._hosts.delete(t))}static \u0275fac=function(a){return new(a||e)};static \u0275prov=z({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var at=["mat-icon-button",""],et=["*"],ot=new D("MAT_BUTTON_CONFIG");function K(e){return e==null?void 0:S(e)}var _=(()=>{class e{_elementRef=n(I);_ngZone=n(s);_animationsDisabled=u();_config=n(ot,{optional:!0});_focusMonitor=n(U);_cleanupClick;_renderer=n(B);_rippleLoader=n(J);_isAnchor;_isFab=!1;color;get disableRipple(){return this._disableRipple}set disableRipple(t){this._disableRipple=t,this._updateRippleDisabled()}_disableRipple=!1;get disabled(){return this._disabled}set disabled(t){this._disabled=t,this._updateRippleDisabled()}_disabled=!1;ariaDisabled;disabledInteractive;tabIndex;set _tabindex(t){this.tabIndex=t}constructor(){n(Z).load(G);let t=this._elementRef.nativeElement;this._isAnchor=t.tagName==="A",this.disabledInteractive=this._config?.disabledInteractive??!1,this.color=this._config?.color??null,this._rippleLoader?.configureRipple(t,{className:"mat-mdc-button-ripple"})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0),this._isAnchor&&this._setupAsAnchor()}ngOnDestroy(){this._cleanupClick?.(),this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement)}focus(t="program",a){t?this._focusMonitor.focusVia(this._elementRef.nativeElement,t,a):this._elementRef.nativeElement.focus(a)}_getAriaDisabled(){return this.ariaDisabled!=null?this.ariaDisabled:this._isAnchor?this.disabled||null:this.disabled&&this.disabledInteractive?!0:null}_getDisabledAttribute(){return this.disabledInteractive||!this.disabled?null:!0}_updateRippleDisabled(){this._rippleLoader?.setDisabled(this._elementRef.nativeElement,this.disableRipple||this.disabled)}_getTabIndex(){return this._isAnchor?this.disabled&&!this.disabledInteractive?-1:this.tabIndex:this.tabIndex}_setupAsAnchor(){this._cleanupClick=this._ngZone.runOutsideAngular(()=>this._renderer.listen(this._elementRef.nativeElement,"click",t=>{this.disabled&&(t.preventDefault(),t.stopImmediatePropagation())}))}static \u0275fac=function(a){return new(a||e)};static \u0275dir=C({type:e,hostAttrs:[1,"mat-mdc-button-base"],hostVars:13,hostBindings:function(a,o){a&2&&(T("disabled",o._getDisabledAttribute())("aria-disabled",o._getAriaDisabled())("tabindex",o._getTabIndex()),O(o.color?"mat-"+o.color:""),b("mat-mdc-button-disabled",o.disabled)("mat-mdc-button-disabled-interactive",o.disabledInteractive)("mat-unthemed",!o.color)("_mat-animation-noopable",o._animationsDisabled))},inputs:{color:"color",disableRipple:[2,"disableRipple","disableRipple",m],disabled:[2,"disabled","disabled",m],ariaDisabled:[2,"aria-disabled","ariaDisabled",m],disabledInteractive:[2,"disabledInteractive","disabledInteractive",m],tabIndex:[2,"tabIndex","tabIndex",K],_tabindex:[2,"tabindex","_tabindex",K]}})}return e})(),nt=(()=>{class e extends _{constructor(){super(),this._rippleLoader.configureRipple(this._elementRef.nativeElement,{centered:!0})}static \u0275fac=function(a){return new(a||e)};static \u0275cmp=c({type:e,selectors:[["button","mat-icon-button",""],["a","mat-icon-button",""],["button","matIconButton",""],["a","matIconButton",""]],hostAttrs:[1,"mdc-icon-button","mat-mdc-icon-button"],exportAs:["matButton","matAnchor"],features:[d],attrs:at,ngContentSelectors:et,decls:4,vars:0,consts:[[1,"mat-mdc-button-persistent-ripple","mdc-icon-button__ripple"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(a,o){a&1&&(l(),r(0,"span",0),i(1),r(2,"span",1)(3,"span",2))},styles:[`.mat-mdc-icon-button{-webkit-user-select:none;user-select:none;display:inline-block;position:relative;box-sizing:border-box;border:none;outline:none;background-color:rgba(0,0,0,0);fill:currentColor;text-decoration:none;cursor:pointer;z-index:0;overflow:visible;border-radius:var(--mat-icon-button-container-shape, var(--mat-sys-corner-full, 50%));flex-shrink:0;text-align:center;width:var(--mat-icon-button-state-layer-size, 40px);height:var(--mat-icon-button-state-layer-size, 40px);padding:calc(calc(var(--mat-icon-button-state-layer-size, 40px) - var(--mat-icon-button-icon-size, 24px)) / 2);font-size:var(--mat-icon-button-icon-size, 24px);color:var(--mat-icon-button-icon-color, var(--mat-sys-on-surface-variant));-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-icon-button .mat-mdc-button-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-icon-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-icon-button .mdc-button__label,.mat-mdc-icon-button .mat-icon{z-index:1;position:relative}.mat-mdc-icon-button .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit}.mat-mdc-icon-button:focus>.mat-focus-indicator::before{content:"";border-radius:inherit}.mat-mdc-icon-button .mat-ripple-element{background-color:var(--mat-icon-button-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface-variant) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-icon-button-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-icon-button-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-icon-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-icon-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-icon-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-icon-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-icon-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-icon-button-touch-target-size, 48px);display:var(--mat-icon-button-touch-target-display, block);left:50%;width:var(--mat-icon-button-touch-target-size, 48px);transform:translate(-50%, -50%)}.mat-mdc-icon-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-icon-button[disabled],.mat-mdc-icon-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-icon-button-disabled-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-icon-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-icon-button img,.mat-mdc-icon-button svg{width:var(--mat-icon-button-icon-size, 24px);height:var(--mat-icon-button-icon-size, 24px);vertical-align:baseline}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:var(--mat-icon-button-container-shape, var(--mat-sys-corner-full, 50%))}.mat-mdc-icon-button[hidden]{display:none}.mat-mdc-icon-button.mat-unthemed:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-primary:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-accent:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-warn:not(.mdc-ripple-upgraded):focus::before{background:rgba(0,0,0,0);opacity:1}
2
+ `,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}}
3
+ `],encapsulation:2,changeDetection:0})}return e})();var rt=["matButton",""],it=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],mt=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"];var Q=new Map([["text",["mat-mdc-button"]],["filled",["mdc-button--unelevated","mat-mdc-unelevated-button"]],["elevated",["mdc-button--raised","mat-mdc-raised-button"]],["outlined",["mdc-button--outlined","mat-mdc-outlined-button"]],["tonal",["mat-tonal-button"]]]),Rt=(()=>{class e extends _{get appearance(){return this._appearance}set appearance(t){this.setAppearance(t||this._config?.defaultAppearance||"text")}_appearance=null;constructor(){super();let t=st(this._elementRef.nativeElement);t&&this.setAppearance(t)}setAppearance(t){if(t===this._appearance)return;let a=this._elementRef.nativeElement.classList,o=this._appearance?Q.get(this._appearance):null,f=Q.get(t);o&&a.remove(...o),a.add(...f),this._appearance=t}static \u0275fac=function(a){return new(a||e)};static \u0275cmp=c({type:e,selectors:[["button","matButton",""],["a","matButton",""],["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""],["a","mat-button",""],["a","mat-raised-button",""],["a","mat-flat-button",""],["a","mat-stroked-button",""]],hostAttrs:[1,"mdc-button"],inputs:{appearance:[0,"matButton","appearance"]},exportAs:["matButton","matAnchor"],features:[d],attrs:rt,ngContentSelectors:mt,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(a,o){a&1&&(l(it),r(0,"span",0),i(1),j(2,"span",1),i(3,1),P(),i(4,2),r(5,"span",2)(6,"span",3)),a&2&&b("mdc-button__ripple",!o._isFab)("mdc-fab__ripple",o._isFab)},styles:[`.mat-mdc-button-base{text-decoration:none}.mat-mdc-button-base .mat-icon{min-height:fit-content;flex-shrink:0}.mdc-button{-webkit-user-select:none;user-select:none;position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0);padding:0 8px}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__label{position:relative}.mat-mdc-button{padding:0 var(--mat-button-text-horizontal-padding, 12px);height:var(--mat-button-text-container-height, 40px);font-family:var(--mat-button-text-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-text-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-text-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-text-label-text-transform);font-weight:var(--mat-button-text-label-text-weight, var(--mat-sys-label-large-weight))}.mat-mdc-button,.mat-mdc-button .mdc-button__ripple{border-radius:var(--mat-button-text-container-shape, var(--mat-sys-corner-full))}.mat-mdc-button:not(:disabled){color:var(--mat-button-text-label-text-color, var(--mat-sys-primary))}.mat-mdc-button[disabled],.mat-mdc-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-text-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-button:has(.material-icons,mat-icon,[matButtonIcon]){padding:0 var(--mat-button-text-with-icon-horizontal-padding, 16px)}.mat-mdc-button>.mat-icon{margin-right:var(--mat-button-text-icon-spacing, 8px);margin-left:var(--mat-button-text-icon-offset, -4px)}[dir=rtl] .mat-mdc-button>.mat-icon{margin-right:var(--mat-button-text-icon-offset, -4px);margin-left:var(--mat-button-text-icon-spacing, 8px)}.mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-text-icon-offset, -4px);margin-left:var(--mat-button-text-icon-spacing, 8px)}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-text-icon-spacing, 8px);margin-left:var(--mat-button-text-icon-offset, -4px)}.mat-mdc-button .mat-ripple-element{background-color:var(--mat-button-text-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-text-state-layer-color, var(--mat-sys-primary))}.mat-mdc-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-text-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-text-touch-target-size, 48px);display:var(--mat-button-text-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-unelevated-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-filled-container-height, 40px);font-family:var(--mat-button-filled-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-filled-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-filled-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-filled-label-text-transform);font-weight:var(--mat-button-filled-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-filled-horizontal-padding, 24px)}.mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-button-filled-icon-spacing, 8px);margin-left:var(--mat-button-filled-icon-offset, -8px)}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-button-filled-icon-offset, -8px);margin-left:var(--mat-button-filled-icon-spacing, 8px)}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-filled-icon-offset, -8px);margin-left:var(--mat-button-filled-icon-spacing, 8px)}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-filled-icon-spacing, 8px);margin-left:var(--mat-button-filled-icon-offset, -8px)}.mat-mdc-unelevated-button .mat-ripple-element{background-color:var(--mat-button-filled-ripple-color, color-mix(in srgb, var(--mat-sys-on-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-filled-state-layer-color, var(--mat-sys-on-primary))}.mat-mdc-unelevated-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-filled-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-unelevated-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-unelevated-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-unelevated-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-unelevated-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-filled-touch-target-size, 48px);display:var(--mat-button-filled-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-unelevated-button:not(:disabled){color:var(--mat-button-filled-label-text-color, var(--mat-sys-on-primary));background-color:var(--mat-button-filled-container-color, var(--mat-sys-primary))}.mat-mdc-unelevated-button,.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mat-button-filled-container-shape, var(--mat-sys-corner-full))}.mat-mdc-unelevated-button[disabled],.mat-mdc-unelevated-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-filled-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-filled-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-raised-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);box-shadow:var(--mat-button-protected-container-elevation-shadow, var(--mat-sys-level1));height:var(--mat-button-protected-container-height, 40px);font-family:var(--mat-button-protected-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-protected-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-protected-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-protected-label-text-transform);font-weight:var(--mat-button-protected-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-protected-horizontal-padding, 24px)}.mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-button-protected-icon-spacing, 8px);margin-left:var(--mat-button-protected-icon-offset, -8px)}[dir=rtl] .mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-button-protected-icon-offset, -8px);margin-left:var(--mat-button-protected-icon-spacing, 8px)}.mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-protected-icon-offset, -8px);margin-left:var(--mat-button-protected-icon-spacing, 8px)}[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-protected-icon-spacing, 8px);margin-left:var(--mat-button-protected-icon-offset, -8px)}.mat-mdc-raised-button .mat-ripple-element{background-color:var(--mat-button-protected-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-protected-state-layer-color, var(--mat-sys-primary))}.mat-mdc-raised-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-protected-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-raised-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-raised-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-raised-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-raised-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-protected-touch-target-size, 48px);display:var(--mat-button-protected-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-raised-button:not(:disabled){color:var(--mat-button-protected-label-text-color, var(--mat-sys-primary));background-color:var(--mat-button-protected-container-color, var(--mat-sys-surface))}.mat-mdc-raised-button,.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mat-button-protected-container-shape, var(--mat-sys-corner-full))}.mat-mdc-raised-button:hover{box-shadow:var(--mat-button-protected-hover-container-elevation-shadow, var(--mat-sys-level2))}.mat-mdc-raised-button:focus{box-shadow:var(--mat-button-protected-focus-container-elevation-shadow, var(--mat-sys-level1))}.mat-mdc-raised-button:active,.mat-mdc-raised-button:focus:active{box-shadow:var(--mat-button-protected-pressed-container-elevation-shadow, var(--mat-sys-level1))}.mat-mdc-raised-button[disabled],.mat-mdc-raised-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-protected-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-protected-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-raised-button[disabled].mat-mdc-button-disabled,.mat-mdc-raised-button.mat-mdc-button-disabled.mat-mdc-button-disabled{box-shadow:var(--mat-button-protected-disabled-container-elevation-shadow, var(--mat-sys-level0))}.mat-mdc-raised-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-outlined-container-height, 40px);font-family:var(--mat-button-outlined-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-outlined-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-outlined-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-outlined-label-text-transform);font-weight:var(--mat-button-outlined-label-text-weight, var(--mat-sys-label-large-weight));border-radius:var(--mat-button-outlined-container-shape, var(--mat-sys-corner-full));border-width:var(--mat-button-outlined-outline-width, 1px);padding:0 var(--mat-button-outlined-horizontal-padding, 24px)}.mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-button-outlined-icon-spacing, 8px);margin-left:var(--mat-button-outlined-icon-offset, -8px)}[dir=rtl] .mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-button-outlined-icon-offset, -8px);margin-left:var(--mat-button-outlined-icon-spacing, 8px)}.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-outlined-icon-offset, -8px);margin-left:var(--mat-button-outlined-icon-spacing, 8px)}[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-outlined-icon-spacing, 8px);margin-left:var(--mat-button-outlined-icon-offset, -8px)}.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-button-outlined-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-outlined-state-layer-color, var(--mat-sys-primary))}.mat-mdc-outlined-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-outlined-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-outlined-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-outlined-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-outlined-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-outlined-touch-target-size, 48px);display:var(--mat-button-outlined-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-outlined-button:not(:disabled){color:var(--mat-button-outlined-label-text-color, var(--mat-sys-primary));border-color:var(--mat-button-outlined-outline-color, var(--mat-sys-outline))}.mat-mdc-outlined-button[disabled],.mat-mdc-outlined-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-outlined-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:var(--mat-button-outlined-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-tonal-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-tonal-container-height, 40px);font-family:var(--mat-button-tonal-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-tonal-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-tonal-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-tonal-label-text-transform);font-weight:var(--mat-button-tonal-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-tonal-horizontal-padding, 24px)}.mat-tonal-button:not(:disabled){color:var(--mat-button-tonal-label-text-color, var(--mat-sys-on-secondary-container));background-color:var(--mat-button-tonal-container-color, var(--mat-sys-secondary-container))}.mat-tonal-button,.mat-tonal-button .mdc-button__ripple{border-radius:var(--mat-button-tonal-container-shape, var(--mat-sys-corner-full))}.mat-tonal-button[disabled],.mat-tonal-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-tonal-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-tonal-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-tonal-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-tonal-button>.mat-icon{margin-right:var(--mat-button-tonal-icon-spacing, 8px);margin-left:var(--mat-button-tonal-icon-offset, -8px)}[dir=rtl] .mat-tonal-button>.mat-icon{margin-right:var(--mat-button-tonal-icon-offset, -8px);margin-left:var(--mat-button-tonal-icon-spacing, 8px)}.mat-tonal-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-tonal-icon-offset, -8px);margin-left:var(--mat-button-tonal-icon-spacing, 8px)}[dir=rtl] .mat-tonal-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-tonal-icon-spacing, 8px);margin-left:var(--mat-button-tonal-icon-offset, -8px)}.mat-tonal-button .mat-ripple-element{background-color:var(--mat-button-tonal-ripple-color, color-mix(in srgb, var(--mat-sys-on-secondary-container) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-tonal-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-tonal-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-tonal-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-tonal-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-tonal-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-tonal-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-tonal-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-tonal-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-tonal-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-tonal-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-tonal-touch-target-size, 48px);display:var(--mat-button-tonal-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button,.mat-tonal-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before,.mat-tonal-button .mat-mdc-button-ripple,.mat-tonal-button .mat-mdc-button-persistent-ripple,.mat-tonal-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-tonal-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before,.mat-tonal-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-button .mdc-button__label,.mat-mdc-button .mat-icon,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-unelevated-button .mat-icon,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-raised-button .mat-icon,.mat-mdc-outlined-button .mdc-button__label,.mat-mdc-outlined-button .mat-icon,.mat-tonal-button .mdc-button__label,.mat-tonal-button .mat-icon{z-index:1;position:relative}.mat-mdc-button .mat-focus-indicator,.mat-mdc-unelevated-button .mat-focus-indicator,.mat-mdc-raised-button .mat-focus-indicator,.mat-mdc-outlined-button .mat-focus-indicator,.mat-tonal-button .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit}.mat-mdc-button:focus>.mat-focus-indicator::before,.mat-mdc-unelevated-button:focus>.mat-focus-indicator::before,.mat-mdc-raised-button:focus>.mat-focus-indicator::before,.mat-mdc-outlined-button:focus>.mat-focus-indicator::before,.mat-tonal-button:focus>.mat-focus-indicator::before{content:"";border-radius:inherit}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable,.mat-tonal-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon,.mat-tonal-button>.mat-icon{display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px}.mat-mdc-unelevated-button .mat-focus-indicator::before,.mat-tonal-button .mat-focus-indicator::before,.mat-mdc-raised-button .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-outlined-button .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px)*-1)}
4
+ `,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}}
5
+ `],encapsulation:2,changeDetection:0})}return e})();function st(e){return e.hasAttribute("mat-raised-button")?"elevated":e.hasAttribute("mat-stroked-button")?"outlined":e.hasAttribute("mat-flat-button")?"filled":e.hasAttribute("mat-button")?"text":null}var Bt=(()=>{class e{static \u0275fac=function(a){return new(a||e)};static \u0275mod=F({type:e});static \u0275inj=A({imports:[h,H,h]})}return e})();export{J as a,nt as b,Rt as c,Bt as d};
@@ -1,2 +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}}
1
+ import{k as v}from"./chunk-Q3N4MMWW.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
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
+ import{a as A,b as $,c as j,f as L,g as z}from"./chunk-7NRE3SNA.js";import{a as I}from"./chunk-25VLDASM.js";import{c as D,d as T}from"./chunk-RIDV4B55.js";import"./chunk-OHX55ZU4.js";import{c as N,e as R}from"./chunk-SR5JAOLW.js";import"./chunk-YNQPX5G6.js";import"./chunk-IQZZO5IM.js";import"./chunk-KLH6B22T.js";import{c as k,h as E,i as w}from"./chunk-Q3N4MMWW.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{b as tt,g as et,i as it,p as b,t as ot,v as st,y as nt}from"./chunk-IQZZO5IM.js";import{b as T,m as w}from"./chunk-KLH6B22T.js";import{F as W,H as q,M as K,N as J,P as v,f as B,p as $,q as Z,r as y,t as Q}from"./chunk-Y6B6X4Y6.js";import{$b as G,Ca as d,Ec as U,Kb as k,Lb as f,Mb as V,Sb as F,Ub as u,V as a,_a as L,_b as H,a as h,aa as P,ac as z,ca as _,ea as r,eb as M,fb as m,gc as g,i as c,ic as X,ja as R,jc as j,ka as A,lb as S,na as p,oa as E,pb as x,qb as N,rb as Y}from"./chunk-K43KW4K2.js";var ft=["tooltip"],O=20;var C=new _("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let n=r(p);return()=>b(n,{scrollThrottle:O})}});function lt(n){let ct=r(p);return()=>b(ct,{scrollThrottle:O})}var I={provide:C,deps:[],useFactory:lt};function ht(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}var pt=new _("mat-tooltip-default-options",{providedIn:"root",factory:ht});var rt="tooltip-panel",at=Z({passive:!0}),ut=8,gt=8,yt=24,vt=200,Tt=(()=>{class n{_elementRef=r(d);_ngZone=r(M);_platform=r($);_ariaDescriber=r(K);_focusMonitor=r(Q);_dir=r(J);_injector=r(p);_viewContainerRef=r(S);_animationsDisabled=w();_defaultOptions=r(pt,{optional:!0});_overlayRef;_tooltipInstance;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=dt;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending;_dirSubscribed=!1;get position(){return this._position}set position(t){t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(t){this._positionAtOrigin=T(t),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(t){let e=T(t);this._disabled!==e&&(this._disabled=e,e?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(t){this._showDelay=y(t)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(t){this._hideDelay=y(t),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(t){let e=this._message;this._message=t!=null?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(e)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_passiveListeners=[];_touchstartTimeout=null;_destroyed=new c;_isDestroyed=!1;constructor(){let t=this._defaultOptions;t&&(this._showDelay=t.showDelay,this._hideDelay=t.hideDelay,t.position&&(this.position=t.position),t.positionAtOrigin&&(this.positionAtOrigin=t.positionAtOrigin),t.touchGestures&&(this.touchGestures=t.touchGestures),t.tooltipClass&&(this.tooltipClass=t.tooltipClass)),this._viewportMargin=ut}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(a(this._destroyed)).subscribe(t=>{t?t==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let t=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([e,i])=>{t.removeEventListener(e,i,at)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay,e){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let i=this._createOverlay(e);this._detach(),this._portal=this._portal||new it(this._tooltipComponent,this._viewContainerRef);let o=this._tooltipInstance=i.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(a(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(t)}hide(t=this.hideDelay){let e=this._tooltipInstance;e&&(e.isVisible()?e.hide(t):(e._cancelPendingAnimations(),this._detach()))}toggle(t){this._isTooltipVisible()?this.hide():this.show(void 0,t)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(t){if(this._overlayRef){let s=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!t)&&s._origin instanceof d)return this._overlayRef;this._detach()}let e=this._injector.get(tt).getAncestorScrollContainers(this._elementRef),i=`${this._cssClassPrefix}-${rt}`,o=ot(this._injector,this.positionAtOrigin?t||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(e);return o.positionChanges.pipe(a(this._destroyed)).subscribe(s=>{this._updateCurrentPositionClass(s.connectionPair),this._tooltipInstance&&s.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=st(this._injector,{direction:this._dir,positionStrategy:o,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,i]:i,scrollStrategy:this._injector.get(C)(),disableAnimations:this._animationsDisabled}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(a(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(a(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(a(this._destroyed)).subscribe(s=>{this._isTooltipVisible()&&s.keyCode===27&&!q(s)&&(s.preventDefault(),s.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._dirSubscribed||(this._dirSubscribed=!0,this._dir.change.pipe(a(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){let e=t.getConfig().positionStrategy,i=this._getOrigin(),o=this._getOverlayPosition();e.withPositions([this._addOffset(h(h({},i.main),o.main)),this._addOffset(h(h({},i.fallback),o.fallback))])}_addOffset(t){let e=gt,i=!this._dir||this._dir.value=="ltr";return t.originY==="top"?t.offsetY=-e:t.originY==="bottom"?t.offsetY=e:t.originX==="start"?t.offsetX=i?-e:e:t.originX==="end"&&(t.offsetX=i?e:-e),t}_getOrigin(){let t=!this._dir||this._dir.value=="ltr",e=this.position,i;e=="above"||e=="below"?i={originX:"center",originY:e=="above"?"top":"bottom"}:e=="before"||e=="left"&&t||e=="right"&&!t?i={originX:"start",originY:"center"}:(e=="after"||e=="right"&&t||e=="left"&&!t)&&(i={originX:"end",originY:"center"});let{x:o,y:s}=this._invertPosition(i.originX,i.originY);return{main:i,fallback:{originX:o,originY:s}}}_getOverlayPosition(){let t=!this._dir||this._dir.value=="ltr",e=this.position,i;e=="above"?i={overlayX:"center",overlayY:"bottom"}:e=="below"?i={overlayX:"center",overlayY:"top"}:e=="before"||e=="left"&&t||e=="right"&&!t?i={overlayX:"end",overlayY:"center"}:(e=="after"||e=="right"&&t||e=="left"&&!t)&&(i={overlayX:"start",overlayY:"center"});let{x:o,y:s}=this._invertPosition(i.overlayX,i.overlayY);return{main:i,fallback:{overlayX:o,overlayY:s}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),m(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return this.position==="above"||this.position==="below"?e==="top"?e="bottom":e==="bottom"&&(e="top"):t==="end"?t="start":t==="start"&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){let{overlayY:e,originX:i,originY:o}=t,s;if(e==="center"?this._dir&&this._dir.value==="rtl"?s=i==="end"?"left":"right":s=i==="start"?"left":"right":s=e==="bottom"&&o==="top"?"above":"below",s!==this._currentPosition){let l=this._overlayRef;if(l){let D=`${this._cssClassPrefix}-${rt}-`;l.removePanelClass(D+this._currentPosition),l.addPanelClass(D+s)}this._currentPosition=s}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",t=>{this._setupPointerExitEventsIfNeeded();let e;t.x!==void 0&&t.y!==void 0&&(e=t),this.show(void 0,e)}]):this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",t=>{let e=t.targetTouches?.[0],i=e?{x:e.clientX,y:e.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let o=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,i)},this._defaultOptions?.touchLongPressShowDelay??o)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;let t=[];if(this._platformSupportsMouseEvents())t.push(["mouseleave",e=>{let i=e.relatedTarget;(!i||!this._overlayRef?.overlayElement.contains(i))&&this.hide()}],["wheel",e=>this._wheelListener(e)]);else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let e=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};t.push(["touchend",e],["touchcancel",e])}this._addListeners(t),this._passiveListeners.push(...t)}_addListeners(t){t.forEach(([e,i])=>{this._elementRef.nativeElement.addEventListener(e,i,at)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(t){if(this._isTooltipVisible()){let e=this._injector.get(E).elementFromPoint(t.clientX,t.clientY),i=this._elementRef.nativeElement;e!==i&&!i.contains(e)&&this.hide()}}_disableNativeGesturesIfNecessary(){let t=this.touchGestures;if(t!=="off"){let e=this._elementRef.nativeElement,i=e.style;(t==="on"||e.nodeName!=="INPUT"&&e.nodeName!=="TEXTAREA")&&(i.userSelect=i.msUserSelect=i.webkitUserSelect=i.MozUserSelect="none"),(t==="on"||!e.draggable)&&(i.webkitUserDrag="none"),i.touchAction="none",i.webkitTapHighlightColor="transparent"}}_syncAriaDescription(t){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,t,"tooltip"),this._isDestroyed||m({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}static \u0275fac=function(e){return new(e||n)};static \u0275dir=Y({type:n,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(e,i){e&2&&g("mat-mdc-tooltip-disabled",i.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"]})}return n})(),dt=(()=>{class n{_changeDetectorRef=r(U);_elementRef=r(d);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=w();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new c;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";constructor(){}show(t){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},t)}hide(t){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},t)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:t}){(!t||!this._triggerElement.contains(t))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let t=this._elementRef.nativeElement.getBoundingClientRect();return t.height>yt&&t.width>=vt}_handleAnimationEnd({animationName:t}){(t===this._showAnimation||t===this._hideAnimation)&&this._finalizeAnimation(t===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(t){t?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(t){let e=this._tooltip.nativeElement,i=this._showAnimation,o=this._hideAnimation;if(e.classList.remove(t?o:i),e.classList.add(t?i:o),this._isVisible!==t&&(this._isVisible=t,this._changeDetectorRef.markForCheck()),t&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let s=getComputedStyle(e);(s.getPropertyValue("animation-duration")==="0s"||s.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}t&&this._onShow(),this._animationsDisabled&&(e.classList.add("_mat-animation-noopable"),this._finalizeAnimation(t))}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=x({type:n,selectors:[["mat-tooltip-component"]],viewQuery:function(e,i){if(e&1&&H(ft,7),e&2){let o;G(o=z())&&(i._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(e,i){e&1&&u("mouseleave",function(s){return i._handleMouseLeave(s)})},decls:4,vars:4,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend","ngClass"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(e,i){if(e&1){let o=F();f(0,"div",1,0),u("animationend",function(l){return R(o),A(i._handleAnimationEnd(l))}),f(2,"div",2),X(3),V()()}e&2&&(g("mdc-tooltip--multiline",i._isMultiline),k("ngClass",i.tooltipClass),L(3),j(i.message))},dependencies:[B],styles:[`.mat-mdc-tooltip{position:relative;transform:scale(0);display:inline-flex}.mat-mdc-tooltip::before{content:"";top:0;right:0;bottom:0;left:0;z-index:-1;position:absolute}.mat-mdc-tooltip-panel-below .mat-mdc-tooltip::before{top:-8px}.mat-mdc-tooltip-panel-above .mat-mdc-tooltip::before{bottom:-8px}.mat-mdc-tooltip-panel-right .mat-mdc-tooltip::before{left:-8px}.mat-mdc-tooltip-panel-left .mat-mdc-tooltip::before{right:-8px}.mat-mdc-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.mat-mdc-tooltip-surface{word-break:normal;overflow-wrap:anywhere;padding:4px 8px;min-width:40px;max-width:200px;min-height:24px;max-height:40vh;box-sizing:border-box;overflow:hidden;text-align:center;will-change:transform,opacity;background-color:var(--mat-tooltip-container-color, var(--mat-sys-inverse-surface));color:var(--mat-tooltip-supporting-text-color, var(--mat-sys-inverse-on-surface));border-radius:var(--mat-tooltip-container-shape, var(--mat-sys-corner-extra-small));font-family:var(--mat-tooltip-supporting-text-font, var(--mat-sys-body-small-font));font-size:var(--mat-tooltip-supporting-text-size, var(--mat-sys-body-small-size));font-weight:var(--mat-tooltip-supporting-text-weight, var(--mat-sys-body-small-weight));line-height:var(--mat-tooltip-supporting-text-line-height, var(--mat-sys-body-small-line-height));letter-spacing:var(--mat-tooltip-supporting-text-tracking, var(--mat-sys-body-small-tracking))}.mat-mdc-tooltip-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:left}[dir=rtl] .mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:right}.mat-mdc-tooltip-panel{line-height:normal}.mat-mdc-tooltip-panel.mat-mdc-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-mdc-tooltip-show{0%{opacity:0;transform:scale(0.8)}100%{opacity:1;transform:scale(1)}}@keyframes mat-mdc-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(0.8)}}.mat-mdc-tooltip-show{animation:mat-mdc-tooltip-show 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-mdc-tooltip-hide{animation:mat-mdc-tooltip-hide 75ms cubic-bezier(0.4, 0, 1, 1) forwards}
2
+ `],encapsulation:2,changeDetection:0})}return n})();var bt=(()=>{class n{static \u0275fac=function(e){return new(e||n)};static \u0275mod=N({type:n});static \u0275inj=P({providers:[I],imports:[W,nt,v,v,et]})}return n})();export{Tt as a,bt as b};