aiservermanager 0.2.0 → 0.3.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.
- package/backend/dist/di/container.js +3 -2
- package/backend/dist/di/container.js.map +1 -1
- package/backend/dist/di/types.js +2 -1
- package/backend/dist/di/types.js.map +1 -1
- package/backend/dist/routes/gpuRoutes.js +13 -0
- package/backend/dist/routes/gpuRoutes.js.map +1 -1
- package/backend/dist/services/detectors/amdLinuxDetector.js +1 -3
- package/backend/dist/services/detectors/amdLinuxDetector.js.map +1 -1
- package/backend/dist/services/detectors/nvidiaSmiDetector.js +1 -3
- package/backend/dist/services/detectors/nvidiaSmiDetector.js.map +1 -1
- package/backend/dist/services/detectors/wmiDetector.js +1 -3
- package/backend/dist/services/detectors/wmiDetector.js.map +1 -1
- package/backend/dist/services/gpuLabelManager.js +112 -0
- package/backend/dist/services/gpuLabelManager.js.map +1 -0
- package/backend/dist/services/gpuService.js +29 -6
- package/backend/dist/services/gpuService.js.map +1 -1
- package/backend/dist/services/helpers/gpuDedup.js +0 -2
- package/backend/dist/services/helpers/gpuDedup.js.map +1 -1
- package/backend/dist/services/llamaAutocompleteService.js +7 -8
- package/backend/dist/services/llamaAutocompleteService.js.map +1 -1
- package/backend/public/browser/chunk-M2HJXJRB.js +4 -0
- package/backend/public/browser/{chunk-34LU6STA.js → chunk-URN45YIO.js} +1 -1
- package/backend/public/browser/index.html +1 -1
- package/backend/public/browser/{main-OTFURQ4F.js → main-AHJOEU5J.js} +36 -36
- package/package.json +1 -1
- package/backend/dist/services/enrichers/vulkanEnricher.js +0 -57
- package/backend/dist/services/enrichers/vulkanEnricher.js.map +0 -1
- package/backend/dist/services/helpers/gpuEngineNames.js +0 -22
- package/backend/dist/services/helpers/gpuEngineNames.js.map +0 -1
- package/backend/public/browser/chunk-JGNPKRLU.js +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{$ as De,$a as Na,$b as Fs,A as mi,Aa as Bn,Ab as Ke,Ac as id,B as Tc,Ba as Vn,Bb as at,Bc as To,C as Qt,Ca as zc,Cb as Mt,Cc as za,D as ot,Da as jc,Db as Ze,E as Rc,Ea as Hc,Eb as I,Ec as nd,F as Fi,Fa as Uc,Fb as Ba,G as Ta,Ga as Gc,Gb as C,Gc as ja,H as Ds,Ha as $c,Hb as le,I as Oc,Ia as Wc,Ib as H,Ic as od,J as ks,Ja as gt,Jb as tt,K as Ra,Ka as Ms,Kb as Ce,L as Ie,La as zn,Lb as T,M as $e,Ma as qc,Mb as R,N as ne,Na as As,Nb as Yc,Nc as ad,O as Fc,Oa as Fa,Ob as Xc,P as Jt,Pa as Fe,Pb as Os,Q as oe,Qa as d,Qb as Ye,R as lt,Ra as We,Rb as Ne,S as ae,Sa as et,Sb as f,T as V,Ta as ue,Tb as Qe,U as b,Ua as D,Ub as u,V as ee,Va as k,Vb as Z,W as s,Wa as So,Wb as be,X as ko,Xa as ce,Xb as mn,Y as Pc,Ya as Pa,Yb as te,Z as ei,Za as qe,Zb as Eo,_ as Nc,_a as Is,_b as Mo,a as B,aa as ke,ab as A,ac as Ps,b as Me,ba as ui,bb as z,bc as K,c as ve,ca as Ss,cb as x,cc as mt,d as _e,da as q,db as Ts,dc as hi,e as ft,ea as G,eb as Rs,ec as Zc,f as Mc,fa as ti,fb as Kc,fc as jn,g as M,ga as $,gb as X,gc as Ao,h as Fn,ha as j,hb as Re,hc as Qc,i as Sa,ia as cn,ib as La,ic as Io,j as Cs,ja as N,jb as Li,jc as ie,k as xs,ka as dn,kb as Y,kc as Jc,l as Ea,la as Lc,lb as S,lc as ed,m as Ac,ma as Nn,mb as E,mc as F,n as ge,na as xi,nb as wi,nc as _t,o as Ma,oa as Ln,ob as Le,oc as td,p as ws,pa as Bc,pb as Be,pc as Va,q as ze,qa as Et,qb as w,r as Ae,ra as Pi,rb as l,s as Pn,sa as Es,sb as c,t as Ic,ta as ye,tb as v,u as Oi,ua as fe,ub as Se,v as Aa,va as W,vb as Pe,w as Ia,wa as O,wb as ct,x as je,xa as Ni,xb as Nt,y as pe,ya as Vc,yb as Lt,z as Do,za as Oa,zb as Bt}from"./chunk-JGNPKRLU.js";var rd=null;function Vt(){return rd}function Ns(i){rd??=i}var Ro=class{},Hn=(()=>{class i{historyGo(e){throw new Error("")}static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:()=>s(sd),providedIn:"platform"})}return i})();var sd=(()=>{class i extends Hn{_location;_history;_doc=s(G);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Vt().getBaseHref(this._doc)}onPopState(e){let t=Vt().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",e,!1),()=>t.removeEventListener("popstate",e)}onHashChange(e){let t=Vt().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",e,!1),()=>t.removeEventListener("hashchange",e)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(e){this._location.pathname=e}pushState(e,t,n){this._history.pushState(e,t,n)}replaceState(e,t,n){this._history.replaceState(e,t,n)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:()=>new i,providedIn:"platform"})}return i})();function dd(i,o){return i?o?i.endsWith("/")?o.startsWith("/")?i+o.slice(1):i+o:o.startsWith("/")?i+o:`${i}/${o}`:i:o}function ld(i){let o=i.search(/#|\?|$/);return i[o-1]==="/"?i.slice(0,o-1)+i.slice(o):i}function Bi(i){return i&&i[0]!=="?"?`?${i}`:i}var Ha=(()=>{class i{historyGo(e){throw new Error("")}static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:()=>s(vp),providedIn:"root"})}return i})(),bp=new b(""),vp=(()=>{class i extends Ha{_platformLocation;_baseHref;_removeListenerFns=[];constructor(e,t){super(),this._platformLocation=e,this._baseHref=t??this._platformLocation.getBaseHrefFromDOM()??s(G).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return dd(this._baseHref,e)}path(e=!1){let t=this._platformLocation.pathname+Bi(this._platformLocation.search),n=this._platformLocation.hash;return n&&e?`${t}${n}`:t}pushState(e,t,n,a){let r=this.prepareExternalUrl(n+Bi(a));this._platformLocation.pushState(e,t,r)}replaceState(e,t,n,a){let r=this.prepareExternalUrl(n+Bi(a));this._platformLocation.replaceState(e,t,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static \u0275fac=function(t){return new(t||i)(ee(Hn),ee(bp,8))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Ua=(()=>{class i{_subject=new M;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(e){this._locationStrategy=e;let t=this._locationStrategy.getBaseHref();this._basePath=xp(ld(cd(t))),this._locationStrategy.onPopState(n=>{this._subject.next({url:this.path(!0),pop:!0,state:n.state,type:n.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,t=""){return this.path()==this.normalize(e+Bi(t))}normalize(e){return i.stripTrailingSlash(Cp(this._basePath,cd(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,t="",n=null){this._locationStrategy.pushState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Bi(t)),n)}replaceState(e,t="",n=null){this._locationStrategy.replaceState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Bi(t)),n)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}),()=>{let t=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(t,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",t){this._urlChangeListeners.forEach(n=>n(e,t))}subscribe(e,t,n){return this._subject.subscribe({next:e,error:t??void 0,complete:n??void 0})}static normalizeQueryParams=Bi;static joinWithSlash=dd;static stripTrailingSlash=ld;static \u0275fac=function(t){return new(t||i)(ee(Ha))};static \u0275prov=ae({token:i,factory:()=>yp(),providedIn:"root"})}return i})();function yp(){return new Ua(ee(Ha))}function Cp(i,o){if(!i||!o.startsWith(i))return o;let e=o.substring(i.length);return e===""||["/",";","?","#"].includes(e[0])?e:o}function cd(i){return i.replace(/\/index\.html$/,"")}function xp(i){if(new RegExp("^(https?:)?//").test(i)){let[,e]=i.split(/\/\/[^\/]+/);return e}return i}var Us=(function(i){return i[i.Decimal=0]="Decimal",i[i.Percent=1]="Percent",i[i.Currency=2]="Currency",i[i.Scientific=3]="Scientific",i})(Us||{});var ut=(function(i){return i[i.Format=0]="Format",i[i.Standalone=1]="Standalone",i})(ut||{}),Ee=(function(i){return i[i.Narrow=0]="Narrow",i[i.Abbreviated=1]="Abbreviated",i[i.Wide=2]="Wide",i[i.Short=3]="Short",i})(Ee||{}),xt=(function(i){return i[i.Short=0]="Short",i[i.Medium=1]="Medium",i[i.Long=2]="Long",i[i.Full=3]="Full",i})(xt||{}),wt={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function fd(i){return Mt(i)[Ze.LocaleId]}function gd(i,o,e){let t=Mt(i),n=[t[Ze.DayPeriodsFormat],t[Ze.DayPeriodsStandalone]],a=zt(n,o);return zt(a,e)}function _d(i,o,e){let t=Mt(i),n=[t[Ze.DaysFormat],t[Ze.DaysStandalone]],a=zt(n,o);return zt(a,e)}function bd(i,o,e){let t=Mt(i),n=[t[Ze.MonthsFormat],t[Ze.MonthsStandalone]],a=zt(n,o);return zt(a,e)}function vd(i,o){let t=Mt(i)[Ze.Eras];return zt(t,o)}function Oo(i,o){let e=Mt(i);return zt(e[Ze.DateFormat],o)}function Fo(i,o){let e=Mt(i);return zt(e[Ze.TimeFormat],o)}function Po(i,o){let t=Mt(i)[Ze.DateTimeFormat];return zt(t,o)}function pi(i,o){let e=Mt(i),t=e[Ze.NumberSymbols][o];if(typeof t>"u"){if(o===wt.CurrencyDecimal)return e[Ze.NumberSymbols][wt.Decimal];if(o===wt.CurrencyGroup)return e[Ze.NumberSymbols][wt.Group]}return t}function yd(i,o){return Mt(i)[Ze.NumberFormats][o]}function Cd(i){if(!i[Ze.ExtraData])throw new oe(2303,!1)}function xd(i){let o=Mt(i);return Cd(o),(o[Ze.ExtraData][2]||[]).map(t=>typeof t=="string"?Ls(t):[Ls(t[0]),Ls(t[1])])}function wd(i,o,e){let t=Mt(i);Cd(t);let n=[t[Ze.ExtraData][0],t[Ze.ExtraData][1]],a=zt(n,o)||[];return zt(a,e)||[]}function zt(i,o){for(let e=o;e>-1;e--)if(typeof i[e]<"u")return i[e];throw new oe(2304,!1)}function Ls(i){let[o,e]=i.split(":");return{hours:+o,minutes:+e}}var wp=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,Ga={},Dp=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,kp=256;function Dd(i,o,e,t){let n=Pp(i);Sp(o),o=Di(e,o)||o;let r=[],m;for(;o;)if(m=Dp.exec(o),m){r=r.concat(m.slice(1));let _=r.pop();if(!_)break;o=_}else{r.push(o);break}let h=n.getTimezoneOffset();t&&(h=Sd(t,h),n=Fp(n,t));let g="";return r.forEach(_=>{let y=Rp(_);g+=y?y(n,e,h):_==="''"?"'":_.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),g}function Sp(i){if(i.length>kp)throw new oe(2300,!1)}function Ya(i,o,e){let t=new Date(0);return t.setFullYear(i,o,e),t.setHours(0,0,0),t}function Di(i,o){let e=fd(i);if(Ga[e]??={},Ga[e][o])return Ga[e][o];let t="";switch(o){case"shortDate":t=Oo(i,xt.Short);break;case"mediumDate":t=Oo(i,xt.Medium);break;case"longDate":t=Oo(i,xt.Long);break;case"fullDate":t=Oo(i,xt.Full);break;case"shortTime":t=Fo(i,xt.Short);break;case"mediumTime":t=Fo(i,xt.Medium);break;case"longTime":t=Fo(i,xt.Long);break;case"fullTime":t=Fo(i,xt.Full);break;case"short":let n=Di(i,"shortTime"),a=Di(i,"shortDate");t=$a(Po(i,xt.Short),[n,a]);break;case"medium":let r=Di(i,"mediumTime"),m=Di(i,"mediumDate");t=$a(Po(i,xt.Medium),[r,m]);break;case"long":let h=Di(i,"longTime"),g=Di(i,"longDate");t=$a(Po(i,xt.Long),[h,g]);break;case"full":let _=Di(i,"fullTime"),y=Di(i,"fullDate");t=$a(Po(i,xt.Full),[_,y]);break}return t&&(Ga[e][o]=t),t}function $a(i,o){return o&&(i=i.replace(/\{([^}]+)}/g,function(e,t){return Object.hasOwn(o,t)?o[t]:e})),i}function ii(i,o,e="-",t,n){let a="";(i<0||n&&i<=0)&&(n?i=-i+1:(i=-i,a=e));let r=String(i);for(;r.length<o;)r="0"+r;return t&&(r=r.slice(r.length-o)),a+r}function Ep(i,o){return ii(i,3).substring(0,o)}function Je(i,o,e=0,t=!1,n=!1){return function(a,r){let m=Mp(i,a);if((e>0||m>-e)&&(m+=e),i===3)m===0&&e===-12&&(m=12);else if(i===6)return Ep(m,o);let h=pi(r,wt.MinusSign);return ii(m,o,h,t,n)}}function Mp(i,o){switch(i){case 0:return o.getFullYear();case 1:return o.getMonth();case 2:return o.getDate();case 3:return o.getHours();case 4:return o.getMinutes();case 5:return o.getSeconds();case 6:return o.getMilliseconds();case 7:return o.getDay();default:throw new oe(2301,!1)}}function Oe(i,o,e=ut.Format,t=!1){return function(n,a){return Ap(n,a,i,o,e,t)}}function Ap(i,o,e,t,n,a){switch(e){case 2:return bd(o,n,t)[i.getMonth()];case 1:return _d(o,n,t)[i.getDay()];case 0:let r=i.getHours(),m=i.getMinutes();if(a){let g=xd(o),_=wd(o,n,t),y=g.findIndex(L=>{if(Array.isArray(L)){let[U,J]=L,me=r>=U.hours&&m>=U.minutes,re=r<J.hours||r===J.hours&&m<J.minutes;if(U.hours<J.hours){if(me&&re)return!0}else if(me||re)return!0}else if(L.hours===r&&L.minutes===m)return!0;return!1});if(y!==-1)return _[y]}return gd(o,n,t)[r<12?0:1];case 3:return vd(o,t)[i.getFullYear()<=0?0:1];default:let h=e;throw new oe(2302,!1)}}function Wa(i){return function(o,e,t){let n=-1*t,a=pi(e,wt.MinusSign),r=n>0?Math.floor(n/60):Math.ceil(n/60);switch(i){case 0:return(n>=0?"+":"")+ii(r,2,a)+ii(Math.abs(n%60),2,a);case 1:return"GMT"+(n>=0?"+":"")+ii(r,1,a);case 2:return"GMT"+(n>=0?"+":"")+ii(r,2,a)+":"+ii(Math.abs(n%60),2,a);case 3:return t===0?"Z":(n>=0?"+":"")+ii(r,2,a)+":"+ii(Math.abs(n%60),2,a);default:throw new oe(2310,!1)}}}var Ip=0,Ka=4;function Tp(i){let o=Ya(i,Ip,1).getDay();return Ya(i,0,1+(o<=Ka?Ka:Ka+7)-o)}function kd(i){let o=i.getDay(),e=o===0?-3:Ka-o;return Ya(i.getFullYear(),i.getMonth(),i.getDate()+e)}function Bs(i,o=!1){return function(e,t){let n;if(o){let a=new Date(e.getFullYear(),e.getMonth(),1).getDay()-1,r=e.getDate();n=1+Math.floor((r+a)/7)}else{let a=kd(e),r=Tp(a.getFullYear()),m=a.getTime()-r.getTime();n=1+Math.round(m/6048e5)}return ii(n,i,pi(t,wt.MinusSign))}}function qa(i,o=!1){return function(e,t){let a=kd(e).getFullYear();return ii(a,i,pi(t,wt.MinusSign),o)}}var Vs={};function Rp(i){if(Vs[i])return Vs[i];let o;switch(i){case"G":case"GG":case"GGG":o=Oe(3,Ee.Abbreviated);break;case"GGGG":o=Oe(3,Ee.Wide);break;case"GGGGG":o=Oe(3,Ee.Narrow);break;case"y":o=Je(0,1,0,!1,!0);break;case"yy":o=Je(0,2,0,!0,!0);break;case"yyy":o=Je(0,3,0,!1,!0);break;case"yyyy":o=Je(0,4,0,!1,!0);break;case"Y":o=qa(1);break;case"YY":o=qa(2,!0);break;case"YYY":o=qa(3);break;case"YYYY":o=qa(4);break;case"M":case"L":o=Je(1,1,1);break;case"MM":case"LL":o=Je(1,2,1);break;case"MMM":o=Oe(2,Ee.Abbreviated);break;case"MMMM":o=Oe(2,Ee.Wide);break;case"MMMMM":o=Oe(2,Ee.Narrow);break;case"LLL":o=Oe(2,Ee.Abbreviated,ut.Standalone);break;case"LLLL":o=Oe(2,Ee.Wide,ut.Standalone);break;case"LLLLL":o=Oe(2,Ee.Narrow,ut.Standalone);break;case"w":o=Bs(1);break;case"ww":o=Bs(2);break;case"W":o=Bs(1,!0);break;case"d":o=Je(2,1);break;case"dd":o=Je(2,2);break;case"c":case"cc":o=Je(7,1);break;case"ccc":o=Oe(1,Ee.Abbreviated,ut.Standalone);break;case"cccc":o=Oe(1,Ee.Wide,ut.Standalone);break;case"ccccc":o=Oe(1,Ee.Narrow,ut.Standalone);break;case"cccccc":o=Oe(1,Ee.Short,ut.Standalone);break;case"E":case"EE":case"EEE":o=Oe(1,Ee.Abbreviated);break;case"EEEE":o=Oe(1,Ee.Wide);break;case"EEEEE":o=Oe(1,Ee.Narrow);break;case"EEEEEE":o=Oe(1,Ee.Short);break;case"a":case"aa":case"aaa":o=Oe(0,Ee.Abbreviated);break;case"aaaa":o=Oe(0,Ee.Wide);break;case"aaaaa":o=Oe(0,Ee.Narrow);break;case"b":case"bb":case"bbb":o=Oe(0,Ee.Abbreviated,ut.Standalone,!0);break;case"bbbb":o=Oe(0,Ee.Wide,ut.Standalone,!0);break;case"bbbbb":o=Oe(0,Ee.Narrow,ut.Standalone,!0);break;case"B":case"BB":case"BBB":o=Oe(0,Ee.Abbreviated,ut.Format,!0);break;case"BBBB":o=Oe(0,Ee.Wide,ut.Format,!0);break;case"BBBBB":o=Oe(0,Ee.Narrow,ut.Format,!0);break;case"h":o=Je(3,1,-12);break;case"hh":o=Je(3,2,-12);break;case"H":o=Je(3,1);break;case"HH":o=Je(3,2);break;case"m":o=Je(4,1);break;case"mm":o=Je(4,2);break;case"s":o=Je(5,1);break;case"ss":o=Je(5,2);break;case"S":o=Je(6,1);break;case"SS":o=Je(6,2);break;case"SSS":o=Je(6,3);break;case"Z":case"ZZ":case"ZZZ":o=Wa(0);break;case"ZZZZZ":o=Wa(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":o=Wa(1);break;case"OOOO":case"ZZZZ":case"zzzz":o=Wa(2);break;default:return null}return Vs[i]=o,o}function Sd(i,o){i=i.replace(/:/g,"");let e=Date.parse("Jan 01, 1970 00:00:00 "+i)/6e4;return isNaN(e)?o:e}function Op(i,o){return i=new Date(i.getTime()),i.setMinutes(i.getMinutes()+o),i}function Fp(i,o,e){let n=i.getTimezoneOffset(),a=Sd(o,n);return Op(i,-1*(a-n))}function Pp(i){if(md(i))return i;if(typeof i=="number"&&!isNaN(i))return new Date(i);if(typeof i=="string"){if(i=i.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(i)){let[n,a=1,r=1]=i.split("-").map(m=>+m);return Ya(n,a-1,r)}let e=parseFloat(i);if(!isNaN(i-e))return new Date(e);let t;if(t=i.match(wp))return Np(t)}let o=new Date(i);if(!md(o))throw new oe(2311,!1);return o}function Np(i){let o=new Date(0),e=0,t=0,n=i[8]?o.setUTCFullYear:o.setFullYear,a=i[8]?o.setUTCHours:o.setHours;i[9]&&(e=Number(i[9]+i[10]),t=Number(i[9]+i[11])),n.call(o,Number(i[1]),Number(i[2])-1,Number(i[3]));let r=Number(i[4]||0)-e,m=Number(i[5]||0)-t,h=Number(i[6]||0),g=Math.floor(parseFloat("0."+(i[7]||0))*1e3);return a.call(o,r,m,h,g),o}function md(i){return i instanceof Date&&!isNaN(i.valueOf())}var Lp=/^(\d+)?\.((\d+)(-(\d+))?)?$/,ud=22,Xa=".",No="0",Bp=";",Vp=",",zs="#";function zp(i,o,e,t,n,a,r=!1){let m="",h=!1;if(!isFinite(i))m=pi(e,wt.Infinity);else{let g=Up(i);r&&(g=Hp(g));let _=o.minInt,y=o.minFrac,L=o.maxFrac;if(a){let nt=a.match(Lp);if(nt===null)throw new oe(2306,!1);let Xt=nt[1],di=nt[3],Ri=nt[5];Xt!=null&&(_=js(Xt)),di!=null&&(y=js(di)),Ri!=null?L=js(Ri):di!=null&&y>L&&(L=y);let Zt=100;if(_>Zt||y>Zt||L>Zt)throw new oe(2306,!1)}Gp(g,y,L);let U=g.digits,J=g.integerLen,me=g.exponent,re=[];for(h=U.every(nt=>!nt);J<_;J++)U.unshift(0);for(;J<0;J++)U.unshift(0);J>0?re=U.splice(J,U.length):(re=U,U=[0]);let we=[];for(U.length>=o.lgSize&&we.unshift(U.splice(-o.lgSize,U.length).join(""));U.length>o.gSize;)we.unshift(U.splice(-o.gSize,U.length).join(""));U.length&&we.unshift(U.join("")),m=we.join(pi(e,t)),re.length&&(m+=pi(e,n)+re.join("")),me&&(m+=pi(e,wt.Exponential)+"+"+me)}return i<0&&!h?m=o.negPre+m+o.negSuf:m=o.posPre+m+o.posSuf,m}function Ed(i,o,e){let t=yd(o,Us.Decimal),n=jp(t,pi(o,wt.MinusSign));return zp(i,n,o,wt.Group,wt.Decimal,e)}function jp(i,o="-"){let e={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},t=i.split(Bp),n=t[0],a=t[1],r=n.indexOf(Xa)!==-1?n.split(Xa):[n.substring(0,n.lastIndexOf(No)+1),n.substring(n.lastIndexOf(No)+1)],m=r[0],h=r[1]||"";e.posPre=m.substring(0,m.indexOf(zs));for(let _=0;_<h.length;_++){let y=h.charAt(_);y===No?e.minFrac=e.maxFrac=_+1:y===zs?e.maxFrac=_+1:e.posSuf+=y}let g=m.split(Vp);if(e.gSize=g[1]?g[1].length:0,e.lgSize=g[2]||g[1]?(g[2]||g[1]).length:0,a){let _=n.length-e.posPre.length-e.posSuf.length,y=a.indexOf(zs);e.negPre=a.substring(0,y).replace(/'/g,""),e.negSuf=a.slice(y+_).replace(/'/g,"")}else e.negPre=o+e.posPre,e.negSuf=e.posSuf;return e}function Hp(i){if(i.digits[0]===0)return i;let o=i.digits.length-i.integerLen;return i.exponent?i.exponent+=2:(o===0?i.digits.push(0,0):o===1&&i.digits.push(0),i.integerLen+=2),i}function Up(i){let o=Math.abs(i)+"",e=0,t,n,a,r,m;for((n=o.indexOf(Xa))>-1&&(o=o.replace(Xa,"")),(a=o.search(/e/i))>0?(n<0&&(n=a),n+=+o.slice(a+1),o=o.substring(0,a)):n<0&&(n=o.length),a=0;o.charAt(a)===No;a++);if(a===(m=o.length))t=[0],n=1;else{for(m--;o.charAt(m)===No;)m--;for(n-=a,t=[],r=0;a<=m;a++,r++)t[r]=Number(o.charAt(a))}return n>ud&&(t=t.splice(0,ud-1),e=n-1,n=1),{digits:t,exponent:e,integerLen:n}}function Gp(i,o,e){if(o>e)throw new oe(2307,!1);let t=i.digits,n=t.length-i.integerLen,a=Math.min(Math.max(o,n),e),r=a+i.integerLen,m=t[r];if(r>0){t.splice(Math.max(i.integerLen,r));for(let y=r;y<t.length;y++)t[y]=0}else{n=Math.max(0,n),i.integerLen=1,t.length=Math.max(1,r=a+1),t[0]=0;for(let y=1;y<r;y++)t[y]=0}if(m>=5)if(r-1<0){for(let y=0;y>r;y--)t.unshift(0),i.integerLen++;t.unshift(1),i.integerLen++}else t[r-1]++;for(;n<Math.max(0,a);n++)t.push(0);let h=a!==0,g=o+i.integerLen,_=t.reduceRight(function(y,L,U,J){return L=L+y,J[U]=L<10?L:L-10,h&&(J[U]===0&&U>=g?J.pop():h=!1),L>=10?1:0},0);_&&(t.unshift(_),i.integerLen++)}function js(i){let o=parseInt(i);if(isNaN(o))throw new oe(2305,!1);return o}var Hs=/\s+/,hd=[],Gs=(()=>{class i{_ngEl;_renderer;initialClasses=hd;rawClass;stateMap=new Map;constructor(e,t){this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(Hs):hd}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Hs):e}ngDoCheck(){for(let t of this.initialClasses)this._updateState(t,!0);let e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(let t of e)this._updateState(t,!0);else if(e!=null)for(let t of Object.keys(e))this._updateState(t,!!e[t]);this._applyStateDiff()}_updateState(e,t){let n=this.stateMap.get(e);n!==void 0?(n.enabled!==t&&(n.changed=!0,n.enabled=t),n.touched=!0):this.stateMap.set(e,{enabled:t,changed:!0,touched:!0})}_applyStateDiff(){for(let e of this.stateMap){let t=e[0],n=e[1];n.changed?(this._toggleClass(t,n.enabled),n.changed=!1):n.touched||(n.enabled&&this._toggleClass(t,!1),this.stateMap.delete(t)),n.touched=!1}}_toggleClass(e,t){e=e.trim(),e.length>0&&e.split(Hs).forEach(n=>{t?this._renderer.addClass(this._ngEl.nativeElement,n):this._renderer.removeClass(this._ngEl.nativeElement,n)})}static \u0275fac=function(t){return new(t||i)(ce(O),ce(ue))};static \u0275dir=x({type:i,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return i})();var $s=(()=>{class i{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;injector=s(q);constructor(e){this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){let t=this._viewContainerRef;if(this._viewRef&&t.remove(t.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let n=this._createContextForwardProxy();this._viewRef=t.createEmbeddedView(this.ngTemplateOutlet,n,{injector:this._getInjector()})}}_getInjector(){return this.ngTemplateOutletInjector==="outlet"?this.injector:this.ngTemplateOutletInjector??void 0}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,t,n)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,t,n):!1,get:(e,t,n)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,t,n)}})}static \u0275fac=function(t){return new(t||i)(ce(qe))};static \u0275dir=x({type:i,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[ye]})}return i})();function Md(i,o){return new oe(2100,!1)}var $p="mediumDate",Ad=new b(""),Id=new b(""),Ws=(()=>{class i{locale;defaultTimezone;defaultOptions;constructor(e,t,n){this.locale=e,this.defaultTimezone=t,this.defaultOptions=n}transform(e,t,n,a){if(e==null||e===""||e!==e)return null;try{let r=t??this.defaultOptions?.dateFormat??$p,m=n??this.defaultOptions?.timezone??this.defaultTimezone??void 0;return Dd(e,r,a||this.locale,m)}catch(r){throw Md(i,r.message)}}static \u0275fac=function(t){return new(t||i)(ce(Ps,16),ce(Ad,24),ce(Id,24))};static \u0275pipe=Ts({name:"date",type:i,pure:!0})}return i})();var qs=(()=>{class i{_locale;constructor(e){this._locale=e}transform(e,t,n){if(!Wp(e))return null;n||=this._locale;try{let a=qp(e);return Ed(a,n,t)}catch(a){throw Md(i,a.message)}}static \u0275fac=function(t){return new(t||i)(ce(Ps,16))};static \u0275pipe=Ts({name:"number",type:i,pure:!0})}return i})();function Wp(i){return!(i==null||i===""||i!==i)}function qp(i){if(typeof i=="string"&&!isNaN(Number(i)-parseFloat(i)))return Number(i);if(typeof i!="number")throw new oe(2309,!1);return i}var Ge=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function Lo(i,o){o=encodeURIComponent(o);for(let e of i.split(";")){let t=e.indexOf("="),[n,a]=t==-1?[e,""]:[e.slice(0,t),e.slice(t+1)];if(n.trim()===o)return decodeURIComponent(a)}return null}var Ks="browser";function Td(i){return i===Ks}var Bo=class{_doc;constructor(o){this._doc=o}manager},Za=(()=>{class i extends Bo{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n,a){return e.addEventListener(t,n,a),()=>this.removeEventListener(e,t,n,a)}removeEventListener(e,t,n,a){return e.removeEventListener(t,n,a)}static \u0275fac=function(t){return new(t||i)(ee(G))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),er=new b(""),Qs=(()=>{class i{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,t){this._zone=t,e.forEach(r=>{r.manager=this});let n=e.filter(r=>!(r instanceof Za));this._plugins=n.slice().reverse();let a=e.find(r=>r instanceof Za);a&&this._plugins.push(a)}addEventListener(e,t,n,a){return this._findPluginFor(t).addEventListener(e,t,n,a)}getZone(){return this._zone}_findPluginFor(e){let t=this._eventNameToPlugin.get(e);if(t)return t;if(t=this._plugins.find(a=>a.supports(e)),!t)throw new oe(-5101,!1);return this._eventNameToPlugin.set(e,t),t}static \u0275fac=function(t){return new(t||i)(ee(er),ee(j))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),Ys="ng-app-id";function Od(i){for(let o of i)o.remove()}function Fd(i,o){let e=o.createElement("style");return e.textContent=i,e}function Xp(i,o,e,t){let n=i.head?.querySelectorAll(`style[${Ys}="${o}"],link[${Ys}="${o}"]`);if(!n||n.length===0)return!1;for(let a of n)a.removeAttribute(Ys),a instanceof HTMLLinkElement?t.set(a.href.slice(a.href.lastIndexOf("/")+1),{usage:0,elements:[a]}):a.textContent&&e.set(a.textContent,{usage:0,elements:[a]});return!0}function Zs(i,o){let e=o.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",i),e}var Js=(()=>{class i{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(e,t,n,a={}){this.doc=e,this.appId=t,this.nonce=n,Xp(e,t,this.inline,this.external)&&this.hosts.add(e.head)}addStyles(e,t){for(let n of e)this.addUsage(n,this.inline,Fd);t?.forEach(n=>this.addUsage(n,this.external,Zs))}removeStyles(e,t){for(let n of e)this.removeUsage(n,this.inline);t?.forEach(n=>this.removeUsage(n,this.external))}addUsage(e,t,n){let a=t.get(e);a?a.usage++:t.set(e,{usage:1,elements:[...this.hosts].map(r=>this.addElement(r,n(e,this.doc)))})}removeUsage(e,t){let n=t.get(e);n&&(n.usage--,n.usage<=0&&(Od(n.elements),t.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])Od(e);this.hosts.clear()}addHost(e){if(!this.hosts.has(e)){this.hosts.add(e);for(let[t,{elements:n}]of this.inline)n.push(this.addElement(e,Fd(t,this.doc)));for(let[t,{elements:n}]of this.external)n.push(this.addElement(e,Zs(t,this.doc)))}}removeHost(e){this.hosts.delete(e);for(let t of[...this.inline.values(),...this.external.values()]){let n=[];for(let a of t.elements)a.parentNode===e?a.remove():n.push(a);t.elements=n}}addElement(e,t){return this.nonce&&t.setAttribute("nonce",this.nonce),e.appendChild(t)}static \u0275fac=function(t){return new(t||i)(ee(G),ee(dn),ee(Ln,8),ee(Nn))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),Xs={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"},el=/%COMP%/g;var Nd="%COMP%",Zp=`_nghost-${Nd}`,Qp=`_ngcontent-${Nd}`,Jp=!0,ef=new b("",{factory:()=>Jp});function tf(i){return Qp.replace(el,i)}function nf(i){return Zp.replace(el,i)}function Ld(i,o){return o.map(e=>e.replace(el,i))}var un=(()=>{class i{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;constructor(e,t,n,a,r,m,h=null,g=null){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.removeStylesOnCompDestroy=a,this.doc=r,this.ngZone=m,this.nonce=h,this.tracingService=g,this.defaultRenderer=new Vo(e,r,m,this.tracingService)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;let n=this.getOrCreateRenderer(e,t);return n instanceof Ja?n.applyToHost(e):n instanceof zo&&n.applyStyles(),n}getOrCreateRenderer(e,t){let n=this.rendererByCompId,a=n.get(t.id);if(!a){let r=this.doc,m=this.ngZone,h=this.eventManager,g=this.sharedStylesHost,_=this.removeStylesOnCompDestroy,y=this.tracingService;switch(t.encapsulation){case Oa.Emulated:a=new Ja(h,g,t,this.appId,_,r,m,y);break;case Oa.ShadowDom:return new Qa(h,e,t,r,m,this.nonce,y,g);case Oa.ExperimentalIsolatedShadowDom:return new Qa(h,e,t,r,m,this.nonce,y);default:a=new zo(h,g,t,_,r,m,y);break}n.set(t.id,a)}return a}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(e){this.rendererByCompId.delete(e)}static \u0275fac=function(t){return new(t||i)(ee(Qs),ee(So),ee(dn),ee(ef),ee(G),ee(j),ee(Ln),ee(As,8))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),Vo=class{eventManager;doc;ngZone;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(o,e,t,n){this.eventManager=o,this.doc=e,this.ngZone=t,this.tracingService=n}destroy(){}destroyNode=null;createElement(o,e){return e?this.doc.createElementNS(Xs[e]||e,o):this.doc.createElement(o)}createComment(o){return this.doc.createComment(o)}createText(o){return this.doc.createTextNode(o)}appendChild(o,e){(Pd(o)?o.content:o).appendChild(e)}insertBefore(o,e,t){o&&(Pd(o)?o.content:o).insertBefore(e,t)}removeChild(o,e){e.remove()}selectRootElement(o,e){let t=typeof o=="string"?this.doc.querySelector(o):o;if(!t)throw new oe(-5104,!1);return e||(t.textContent=""),t}parentNode(o){return o.parentNode}nextSibling(o){return o.nextSibling}setAttribute(o,e,t,n){if(n){e=n+":"+e;let a=Xs[n];a?o.setAttributeNS(a,e,t):o.setAttribute(e,t)}else o.setAttribute(e,t)}removeAttribute(o,e,t){if(t){let n=Xs[t];n?o.removeAttributeNS(n,e):o.removeAttribute(`${t}:${e}`)}else o.removeAttribute(e)}addClass(o,e){o.classList.add(e)}removeClass(o,e){o.classList.remove(e)}setStyle(o,e,t,n){n&(zn.DashCase|zn.Important)?o.style.setProperty(e,t,n&zn.Important?"important":""):o.style[e]=t}removeStyle(o,e,t){t&zn.DashCase?o.style.removeProperty(e):o.style[e]=""}setProperty(o,e,t){o!=null&&(o[e]=t)}setValue(o,e){o.nodeValue=e}listen(o,e,t,n){if(typeof o=="string"&&(o=Vt().getGlobalEventTarget(this.doc,o),!o))throw new oe(-5102,!1);let a=this.decoratePreventDefault(t);return this.tracingService?.wrapEventListener&&(a=this.tracingService.wrapEventListener(o,e,a)),this.eventManager.addEventListener(o,e,a,n)}decoratePreventDefault(o){return e=>{if(e==="__ngUnwrap__")return o;o(e)===!1&&e.preventDefault()}}};function Pd(i){return i.tagName==="TEMPLATE"&&i.content!==void 0}var Qa=class extends Vo{hostEl;sharedStylesHost;shadowRoot;constructor(o,e,t,n,a,r,m,h){super(o,n,a,m),this.hostEl=e,this.sharedStylesHost=h,this.shadowRoot=e.attachShadow({mode:"open"}),this.sharedStylesHost&&this.sharedStylesHost.addHost(this.shadowRoot);let g=t.styles;g=Ld(t.id,g);for(let y of g){let L=document.createElement("style");r&&L.setAttribute("nonce",r),L.textContent=y,this.shadowRoot.appendChild(L)}let _=t.getExternalStyles?.();if(_)for(let y of _){let L=Zs(y,n);r&&L.setAttribute("nonce",r),this.shadowRoot.appendChild(L)}}nodeOrShadowRoot(o){return o===this.hostEl?this.shadowRoot:o}appendChild(o,e){return super.appendChild(this.nodeOrShadowRoot(o),e)}insertBefore(o,e,t){return super.insertBefore(this.nodeOrShadowRoot(o),e,t)}removeChild(o,e){return super.removeChild(null,e)}parentNode(o){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(o)))}destroy(){this.sharedStylesHost&&this.sharedStylesHost.removeHost(this.shadowRoot)}},zo=class extends Vo{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(o,e,t,n,a,r,m,h){super(o,a,r,m),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=n;let g=t.styles;this.styles=h?Ld(h,g):g,this.styleUrls=t.getExternalStyles?.(h)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&qc.size===0&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},Ja=class extends zo{contentAttr;hostAttr;constructor(o,e,t,n,a,r,m,h){let g=n+"-"+t.id;super(o,e,t,a,r,m,h,g),this.contentAttr=tf(g),this.hostAttr=nf(g)}applyToHost(o){this.applyStyles(),this.setAttribute(o,this.hostAttr,"")}createElement(o,e){let t=super.createElement(o,e);return super.setAttribute(t,this.contentAttr,""),t}};var tr=class i extends Ro{supportsDOMEvents=!0;static makeCurrent(){Ns(new i)}onAndCancel(o,e,t,n){return o.addEventListener(e,t,n),()=>{o.removeEventListener(e,t,n)}}dispatchEvent(o,e){o.dispatchEvent(e)}remove(o){o.remove()}createElement(o,e){return e=e||this.getDefaultDocument(),e.createElement(o)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(o){return o.nodeType===Node.ELEMENT_NODE}isShadowRoot(o){return o instanceof DocumentFragment}getGlobalEventTarget(o,e){return e==="window"?window:e==="document"?o:e==="body"?o.body:null}getBaseHref(o){let e=af();return e==null?null:rf(e)}resetBaseElement(){jo=null}getUserAgent(){return window.navigator.userAgent}getCookie(o){return Lo(document.cookie,o)}},jo=null;function af(){return jo=jo||document.head.querySelector("base"),jo?jo.getAttribute("href"):null}function rf(i){return new URL(i,document.baseURI).pathname}var Bd=["alt","control","meta","shift"],sf={"\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"},lf={alt:i=>i.altKey,control:i=>i.ctrlKey,meta:i=>i.metaKey,shift:i=>i.shiftKey},Vd=(()=>{class i extends Bo{constructor(e){super(e)}supports(e){return i.parseEventName(e)!=null}addEventListener(e,t,n,a){let r=i.parseEventName(t),m=i.eventCallback(r.fullKey,n,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Vt().onAndCancel(e,r.domEventName,m,a))}static parseEventName(e){let t=e.toLowerCase().split("."),n=t.shift();if(t.length===0||!(n==="keydown"||n==="keyup"))return null;let a=i._normalizeKey(t.pop()),r="",m=t.indexOf("code");if(m>-1&&(t.splice(m,1),r="code."),Bd.forEach(g=>{let _=t.indexOf(g);_>-1&&(t.splice(_,1),r+=g+".")}),r+=a,t.length!=0||a.length===0)return null;let h={};return h.domEventName=n,h.fullKey=r,h}static matchEventFullKeyCode(e,t){let n=sf[e.key]||e.key,a="";return t.indexOf("code.")>-1&&(n=e.code,a="code."),n==null||!n?!1:(n=n.toLowerCase(),n===" "?n="space":n==="."&&(n="dot"),Bd.forEach(r=>{if(r!==n){let m=lf[r];m(e)&&(a+=r+".")}}),a+=n,a===t)}static eventCallback(e,t,n){return a=>{i.matchEventFullKeyCode(a,e)&&n.runGuarded(()=>t(a))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(t){return new(t||i)(ee(G))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})();function tl(i,o,e){return ve(this,null,function*(){let t=B({rootComponent:i},cf(o,e));return ed(t)})}function cf(i,o){return{platformRef:o?.platformRef,appProviders:[...pf,...i?.providers??[]],platformProviders:hf}}function df(){tr.makeCurrent()}function mf(){return new cn}function uf(){return Vc(document),document}var hf=[{provide:Nn,useValue:Ks},{provide:Lc,useValue:df,multi:!0},{provide:G,useFactory:uf}];var pf=[{provide:Pc,useValue:"root"},{provide:cn,useFactory:mf},{provide:er,useClass:Za,multi:!0},{provide:er,useClass:Vd,multi:!0},un,{provide:So,useClass:Js},{provide:Js,useExisting:So},Qs,{provide:et,useExisting:un},[]];var Si=class i{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(o){o?typeof o=="string"?this.lazyInit=()=>{this.headers=new Map,o.split(`
|
|
2
|
-
`).forEach(e=>{let t=e.indexOf(":");if(t>0){let n=e.slice(0,t),a=e.slice(t+1).trim();this.addHeaderEntry(n,a)}})}:typeof Headers<"u"&&o instanceof Headers?(this.headers=new Map,o.forEach((e,t)=>{this.addHeaderEntry(t,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(o).forEach(([e,t])=>{this.setHeaderEntries(e,t)})}:this.headers=new Map}has(o){return this.init(),this.headers.has(o.toLowerCase())}get(o){this.init();let e=this.headers.get(o.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(o){return this.init(),this.headers.get(o.toLowerCase())||null}append(o,e){return this.clone({name:o,value:e,op:"a"})}set(o,e){return this.clone({name:o,value:e,op:"s"})}delete(o,e){return this.clone({name:o,value:e,op:"d"})}maybeSetNormalizedName(o,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,o)}init(){this.lazyInit&&(this.lazyInit instanceof i?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(o=>this.applyUpdate(o)),this.lazyUpdate=null))}copyFrom(o){o.init(),Array.from(o.headers.keys()).forEach(e=>{this.headers.set(e,o.headers.get(e)),this.normalizedNames.set(e,o.normalizedNames.get(e))})}clone(o){let e=new i;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof i?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([o]),e}applyUpdate(o){let e=o.name.toLowerCase();switch(o.op){case"a":case"s":let t=o.value;if(typeof t=="string"&&(t=[t]),t.length===0)return;this.maybeSetNormalizedName(o.name,e);let n=(o.op==="a"?this.headers.get(e):void 0)||[];n.push(...t),this.headers.set(e,n);break;case"d":let a=o.value;if(!a)this.headers.delete(e),this.normalizedNames.delete(e);else{let r=this.headers.get(e);if(!r)return;r=r.filter(m=>a.indexOf(m)===-1),r.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,r)}break}}addHeaderEntry(o,e){let t=o.toLowerCase();this.maybeSetNormalizedName(o,t),this.headers.has(t)?this.headers.get(t).push(e):this.headers.set(t,[e])}setHeaderEntries(o,e){let t=(Array.isArray(e)?e:[e]).map(a=>a.toString()),n=o.toLowerCase();this.headers.set(n,t),this.maybeSetNormalizedName(o,n)}forEach(o){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>o(this.normalizedNames.get(e),this.headers.get(e)))}};var nr=class{map=new Map;set(o,e){return this.map.set(o,e),this}get(o){return this.map.has(o)||this.map.set(o,o.defaultValue()),this.map.get(o)}delete(o){return this.map.delete(o),this}has(o){return this.map.has(o)}keys(){return this.map.keys()}},or=class{encodeKey(o){return zd(o)}encodeValue(o){return zd(o)}decodeKey(o){return decodeURIComponent(o)}decodeValue(o){return decodeURIComponent(o)}};function ff(i,o){let e=new Map;return i.length>0&&i.replace(/^\?/,"").split("&").forEach(n=>{let a=n.indexOf("="),[r,m]=a==-1?[o.decodeKey(n),""]:[o.decodeKey(n.slice(0,a)),o.decodeValue(n.slice(a+1))],h=e.get(r)||[];h.push(m),e.set(r,h)}),e}var gf=/%(\d[a-f0-9])/gi,_f={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function zd(i){return encodeURIComponent(i).replace(gf,(o,e)=>_f[e]??o)}function ir(i){return`${i}`}var ki=class i{map;encoder;updates=null;cloneFrom=null;constructor(o={}){if(this.encoder=o.encoder||new or,o.fromString){if(o.fromObject)throw new oe(2805,!1);this.map=ff(o.fromString,this.encoder)}else o.fromObject?(this.map=new Map,Object.keys(o.fromObject).forEach(e=>{let t=o.fromObject[e],n=Array.isArray(t)?t.map(ir):[ir(t)];this.map.set(e,n)})):this.map=null}has(o){return this.init(),this.map.has(o)}get(o){this.init();let e=this.map.get(o);return e?e[0]:null}getAll(o){return this.init(),this.map.get(o)||null}keys(){return this.init(),Array.from(this.map.keys())}append(o,e){return this.clone({param:o,value:e,op:"a"})}appendAll(o){let e=[];return Object.keys(o).forEach(t=>{let n=o[t];Array.isArray(n)?n.forEach(a=>{e.push({param:t,value:a,op:"a"})}):e.push({param:t,value:n,op:"a"})}),this.clone(e)}set(o,e){return this.clone({param:o,value:e,op:"s"})}delete(o,e){return this.clone({param:o,value:e,op:"d"})}toString(){return this.init(),this.keys().map(o=>{let e=this.encoder.encodeKey(o);return this.map.get(o).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(o=>o!=="").join("&")}clone(o){let e=new i({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(o),e}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(o=>this.map.set(o,this.cloneFrom.map.get(o))),this.updates.forEach(o=>{switch(o.op){case"a":case"s":let e=(o.op==="a"?this.map.get(o.param):void 0)||[];e.push(ir(o.value)),this.map.set(o.param,e);break;case"d":if(o.value!==void 0){let t=this.map.get(o.param)||[],n=t.indexOf(ir(o.value));n!==-1&&t.splice(n,1),t.length>0?this.map.set(o.param,t):this.map.delete(o.param)}else{this.map.delete(o.param);break}}}),this.cloneFrom=this.updates=null)}};function bf(i){switch(i){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function jd(i){return typeof ArrayBuffer<"u"&&i instanceof ArrayBuffer}function Hd(i){return typeof Blob<"u"&&i instanceof Blob}function Ud(i){return typeof FormData<"u"&&i instanceof FormData}function vf(i){return typeof URLSearchParams<"u"&&i instanceof URLSearchParams}var il="Content-Type",Gd="Accept",Wd="text/plain",qd="application/json",yf=`${qd}, ${Wd}, */*`,Un=class i{url;body=null;headers;context;reportProgress=!1;reportUploadProgress=!1;reportDownloadProgress=!1;withCredentials=!1;credentials;keepalive=!1;cache;priority;mode;redirect;referrer;integrity;referrerPolicy;responseType="json";method;params;urlWithParams;transferCache;timeout;constructor(o,e,t,n){this.url=e,this.method=o.toUpperCase();let a;if(bf(this.method)||n?(this.body=t!==void 0?t:null,a=n):a=t,a){if(this.reportProgress=!!a.reportProgress,this.reportUploadProgress=!!a.reportUploadProgress,this.reportDownloadProgress=!!a.reportDownloadProgress,this.withCredentials=!!a.withCredentials,this.keepalive=!!a.keepalive,a.responseType&&(this.responseType=a.responseType),a.headers&&(this.headers=a.headers),a.context&&(this.context=a.context),a.params&&(this.params=a.params),a.priority&&(this.priority=a.priority),a.cache&&(this.cache=a.cache),a.credentials&&(this.credentials=a.credentials),typeof a.timeout=="number"){if(a.timeout<1||!Number.isInteger(a.timeout))throw new oe(2822,"");this.timeout=a.timeout}a.mode&&(this.mode=a.mode),a.redirect&&(this.redirect=a.redirect),a.integrity&&(this.integrity=a.integrity),a.referrer!==void 0&&(this.referrer=a.referrer),a.referrerPolicy&&(this.referrerPolicy=a.referrerPolicy),this.transferCache=a.transferCache}if(this.headers??=new Si,this.context??=new nr,!this.params)this.params=new ki,this.urlWithParams=e;else{let r=this.params.toString();if(r.length===0)this.urlWithParams=e;else{let m=e,h="",g=e.indexOf("#");g!==-1&&(h=e.substring(g),m=e.substring(0,g));let _=m.indexOf("?"),y=_===-1?"?":_<m.length-1?"&":"";this.urlWithParams=m+y+r+h}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||jd(this.body)||Hd(this.body)||Ud(this.body)||vf(this.body)?this.body:this.body instanceof ki?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||Ud(this.body)?null:Hd(this.body)?this.body.type||null:jd(this.body)?null:typeof this.body=="string"?Wd:this.body instanceof ki?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?qd:null}clone(o={}){let e=o.method||this.method,t=o.url||this.url,n=o.responseType||this.responseType,a=o.keepalive??this.keepalive,r=o.priority||this.priority,m=o.cache||this.cache,h=o.mode||this.mode,g=o.redirect||this.redirect,_=o.credentials||this.credentials,y=o.referrer??this.referrer,L=o.integrity||this.integrity,U=o.referrerPolicy||this.referrerPolicy,J=o.transferCache??this.transferCache,me=o.timeout??this.timeout,re=o.body!==void 0?o.body:this.body,we=o.withCredentials??this.withCredentials,nt=o.reportProgress??this.reportProgress,Xt=o.reportUploadProgress??this.reportUploadProgress,di=o.reportDownloadProgress??this.reportDownloadProgress,Ri=o.headers||this.headers,Zt=o.params||this.params,ka=o.context??this.context;return o.setHeaders!==void 0&&(Ri=Object.keys(o.setHeaders).reduce((On,ln)=>On.set(ln,o.setHeaders[ln]),Ri)),o.setParams&&(Zt=Object.keys(o.setParams).reduce((On,ln)=>On.set(ln,o.setParams[ln]),Zt)),new i(e,t,re,{params:Zt,headers:Ri,context:ka,reportProgress:nt,reportUploadProgress:Xt,reportDownloadProgress:di,responseType:n,withCredentials:we,transferCache:J,keepalive:a,cache:m,priority:r,timeout:me,mode:h,redirect:g,credentials:_,referrer:y,integrity:L,referrerPolicy:U})}},Gn=(function(i){return i[i.Sent=0]="Sent",i[i.UploadProgress=1]="UploadProgress",i[i.ResponseHeader=2]="ResponseHeader",i[i.DownloadProgress=3]="DownloadProgress",i[i.Response=4]="Response",i[i.User=5]="User",i})(Gn||{}),$n=class{headers;status;statusText;url;ok;type;redirected;responseType;constructor(o,e=200,t="OK"){this.headers=o.headers||new Si,this.status=o.status!==void 0?o.status:e,this.statusText=o.statusText||t,this.url=o.url||null,this.redirected=o.redirected,this.responseType=o.responseType,this.ok=this.status>=200&&this.status<300}},ar=class i extends $n{constructor(o={}){super(o)}type=Gn.ResponseHeader;clone(o={}){return new i({headers:o.headers||this.headers,status:o.status!==void 0?o.status:this.status,statusText:o.statusText||this.statusText,url:o.url||this.url||void 0})}},Ho=class i extends $n{body;constructor(o={}){super(o),this.body=o.body!==void 0?o.body:null}type=Gn.Response;clone(o={}){return new i({body:o.body!==void 0?o.body:this.body,headers:o.headers||this.headers,status:o.status!==void 0?o.status:this.status,statusText:o.statusText||this.statusText,url:o.url||this.url||void 0,redirected:o.redirected??this.redirected,responseType:o.responseType??this.responseType})}},hn=class extends $n{name="HttpErrorResponse";message;error;ok=!1;constructor(o){super(o,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${o.url||"(unknown url)"}`:this.message=`Http failure response for ${o.url||"(unknown url)"}: ${o.status} ${o.statusText}`,this.error=o.error||null}},Cf=200;var xf=/^\)\]\}',?\n/,tw=1024*1024,Kd=new b("",{factory:()=>null}),rr=(()=>{class i{fetchImpl=s(ol,{optional:!0})?.fetch??((...e)=>globalThis.fetch(...e));ngZone=s(j);destroyRef=s(ti);maxResponseSize=s(Kd);handle(e){return new ft(t=>{let n=new AbortController;this.doRequest(e,n.signal,t).then(al,r=>t.error(new hn({error:r})));let a;return e.timeout&&(a=this.ngZone.runOutsideAngular(()=>setTimeout(()=>{n.signal.aborted||n.abort(new DOMException("signal timed out","TimeoutError"))},e.timeout))),()=>{a!==void 0&&clearTimeout(a),n.abort()}})}doRequest(e,t,n){return ve(this,null,function*(){let a=this.createRequestInit(e),r;try{let re=this.ngZone.runOutsideAngular(()=>this.fetchImpl(e.urlWithParams,B({signal:t},a)));wf(re),n.next({type:Gn.Sent}),r=yield re}catch(re){n.error(new hn({error:re,status:re.status??0,statusText:re.statusText,url:e.urlWithParams,headers:re.headers}));return}let m=new Si(r.headers),h=r.statusText,g=r.url||e.urlWithParams,_=r.status,y=null,L=e.reportProgress||e.reportDownloadProgress;if(L&&n.next(new ar({headers:m,status:_,statusText:h,url:g})),r.body){let re=r.headers.get("content-length"),we=re!==null?Number(re):NaN;this.maxResponseSize!==null&&Number.isFinite(we)&&we>this.maxResponseSize&&$d(this.maxResponseSize);let nt=[],Xt=r.body.getReader(),di=0,Ri,Zt,ka=typeof Zone<"u"&&Zone.current,On=!1;if(yield this.ngZone.runOutsideAngular(()=>ve(this,null,function*(){for(;;){if(this.destroyRef.destroyed){yield Xt.cancel(),On=!0;break}let{done:wo,value:ys}=yield Xt.read();if(wo)break;if(nt.push(ys),di+=ys.length,this.maxResponseSize!==null&&di>this.maxResponseSize&&(yield Xt.cancel(),$d(this.maxResponseSize)),L){Zt=e.responseType==="text"?(Zt??"")+(Ri??=new TextDecoder).decode(ys,{stream:!0}):void 0;let Ec=()=>n.next({type:Gn.DownloadProgress,total:Number.isFinite(we)?we:void 0,loaded:di,partialText:Zt});ka?ka.run(Ec):Ec()}}})),On){n.complete();return}let ln=this.concatChunks(nt,di);try{let wo=r.headers.get(il)??"";y=this.parseBody(e,ln,wo,_)}catch(wo){n.error(new hn({error:wo,headers:new Si(r.headers),status:r.status,statusText:r.statusText,url:r.url||e.urlWithParams}));return}}_===0&&(_=y?Cf:0);let U=_>=200&&_<300,J=r.redirected,me=r.type;U?(n.next(new Ho({body:y,headers:m,status:_,statusText:h,url:g,redirected:J,responseType:me})),n.complete()):n.error(new hn({error:y,headers:m,status:_,statusText:h,url:g,redirected:J,responseType:me}))})}parseBody(e,t,n,a){switch(e.responseType){case"json":let r=new TextDecoder().decode(t).replace(xf,"");if(r==="")return null;try{return JSON.parse(r)}catch(m){if(a<200||a>=300)return r;throw m}case"text":return new TextDecoder().decode(t);case"blob":return new Blob([t],{type:n});case"arraybuffer":return t.buffer}}createRequestInit(e){if(e.reportUploadProgress)throw new oe(2824,!1);let t={},n;if(n=e.credentials,e.withCredentials&&(n="include"),e.headers.forEach((a,r)=>t[a]=r.join(",")),e.headers.has(Gd)||(t[Gd]=yf),!e.headers.has(il)){let a=e.detectContentTypeHeader();a!==null&&(t[il]=a)}return{body:e.serializeBody(),method:e.method,headers:t,credentials:n,keepalive:e.keepalive,cache:e.cache,priority:e.priority,mode:e.mode,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity,referrerPolicy:e.referrerPolicy}}concatChunks(e,t){let n=new Uint8Array(t),a=0;for(let r of e)n.set(r,a),a+=r.length;return n}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),ol=class{};function al(){}function wf(i){i.then(al,al)}function $d(i){throw new oe(-2825,!1)}function Df(i,o){return o(i)}function kf(i,o,e){return(t,n)=>Nc(e,()=>o(t,a=>i(a,n)))}var rl=new b("",{factory:()=>[]}),Yd=new b(""),Xd=new b("",{factory:()=>!0});var sl=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(rr),n},providedIn:"root"})}return i})();var sr=(()=>{class i{backend;injector;chain=null;pendingTasks=s(Es);contributeToStability=s(Xd);constructor(e,t){this.backend=e,this.injector=t}handle(e){if(this.chain===null){let t=Array.from(new Set([...this.injector.get(rl),...this.injector.get(Yd,[])]));this.chain=t.reduceRight((n,a)=>kf(n,a,this.injector),Df)}if(this.contributeToStability){let t=this.pendingTasks.add();return this.chain(e,n=>this.backend.handle(n)).pipe(Ta(t))}else return this.chain(e,t=>this.backend.handle(t))}static \u0275fac=function(t){return new(t||i)(ee(sl),ee(ei))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),ll=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(sr),n},providedIn:"root"})}return i})();function nl(i,o){return B({body:o},i)}var jt=(()=>{class i{handler;constructor(e){this.handler=e}request(e,t,n={}){let a;if(e instanceof Un)a=e;else{let h;n.headers instanceof Si?h=n.headers:h=new Si(n.headers);let g;n.params&&(n.params instanceof ki?g=n.params:g=new ki({fromObject:n.params})),a=new Un(e,t,n.body!==void 0?n.body:null,{headers:h,context:n.context,params:g,reportProgress:n.reportProgress,reportUploadProgress:n.reportUploadProgress,reportDownloadProgress:n.reportDownloadProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials,transferCache:n.transferCache,keepalive:n.keepalive,priority:n.priority,cache:n.cache,mode:n.mode,redirect:n.redirect,credentials:n.credentials,referrer:n.referrer,referrerPolicy:n.referrerPolicy,integrity:n.integrity,timeout:n.timeout})}let r=ge(a).pipe(Tc(h=>this.handler.handle(h)));if(e instanceof Un||n.observe==="events")return r;let m=r.pipe(pe(h=>h instanceof Ho));switch(n.observe||"body"){case"body":switch(a.responseType){case"arraybuffer":return m.pipe(Ae(h=>{if(h.body!==null&&!(h.body instanceof ArrayBuffer))throw new oe(2806,!1);return h.body}));case"blob":return m.pipe(Ae(h=>{if(h.body!==null&&!(h.body instanceof Blob))throw new oe(2807,!1);return h.body}));case"text":return m.pipe(Ae(h=>{if(h.body!==null&&typeof h.body!="string")throw new oe(2808,!1);return h.body}));default:return m.pipe(Ae(h=>h.body))}case"response":return m;default:throw new oe(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 ki().append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,t={}){return this.request("OPTIONS",e,t)}patch(e,t,n={}){return this.request("PATCH",e,nl(n,t))}post(e,t,n={}){return this.request("POST",e,nl(n,t))}put(e,t,n={}){return this.request("PUT",e,nl(n,t))}static \u0275fac=function(t){return new(t||i)(ee(ll))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Sf=new b("",{factory:()=>!0}),Ef="XSRF-TOKEN",Mf=new b("",{factory:()=>Ef}),Af="X-XSRF-TOKEN",If=new b("",{factory:()=>Af}),Tf=(()=>{class i{cookieName=s(Mf);doc=s(G);lastCookieString="";lastToken=null;parseCount=0;getToken(){let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Lo(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Zd=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(Tf),n},providedIn:"root"})}return i})();function Rf(i,o){if(!s(Sf)||i.method==="GET"||i.method==="HEAD")return o(i);try{let n=s(Hn).href,{origin:a}=new URL(n),{origin:r}=new URL(i.url,a);if(a!==r)return o(i)}catch(n){return o(i)}let e=s(Zd).getToken(),t=s(If);return e!=null&&!i.headers.has(t)&&(i=i.clone({headers:i.headers.set(t,e)})),o(i)}var cl=(function(i){return i[i.Interceptors=0]="Interceptors",i[i.LegacyInterceptors=1]="LegacyInterceptors",i[i.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",i[i.NoXsrfProtection=3]="NoXsrfProtection",i[i.JsonpSupport=4]="JsonpSupport",i[i.RequestsMadeViaParent=5]="RequestsMadeViaParent",i[i.Fetch=6]="Fetch",i[i.Xhr=7]="Xhr",i})(cl||{});function Of(i,o){return{\u0275kind:i,\u0275providers:o}}function dl(...i){let o=[jt,rr,sr,{provide:ll,useExisting:sr},{provide:sl,useFactory:()=>s(rr)},{provide:rl,useValue:Rf,multi:!0}];for(let e of i)o.push(...e.\u0275providers);return ko(o)}function ml(i){return Of(cl.Interceptors,i.map(o=>({provide:rl,useValue:o,multi:!0})))}var Uo=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(Nf),n},providedIn:"root"})}return i})(),Nf=(()=>{class i extends Uo{_doc=s(G);sanitize(e,t){if(t==null)return null;switch(e){case gt.NONE:return t;case gt.HTML:return Vn(t,"HTML")?Bn(t):Wc(this._doc,String(t)).toString();case gt.STYLE:return Vn(t,"Style")?Bn(t):t;case gt.SCRIPT:if(Vn(t,"Script"))return Bn(t);throw new oe(5200,!1);case gt.URL:return Vn(t,"URL")?Bn(t):$c(String(t));case gt.RESOURCE_URL:if(Vn(t,"ResourceURL"))return Bn(t);throw new oe(5201,!1);default:throw new oe(5202,!1)}}bypassSecurityTrustHtml(e){return zc(e)}bypassSecurityTrustStyle(e){return jc(e)}bypassSecurityTrustScript(e){return Hc(e)}bypassSecurityTrustUrl(e){return Uc(e)}bypassSecurityTrustResourceUrl(e){return Gc(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Bf=(()=>{class i extends ja{constructor(e,t,n){super(e,t,n)}ngOnDestroy(){this.flush()}static \u0275fac=function(t){return new(t||i)(ee(G),ee(To),ee(za))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})();function Vf(){return new nd}function zf(){return new ad(s(un),s(ja),s(j))}var Qd=[{provide:za,useFactory:Vf},{provide:ja,useClass:Bf},{provide:et,useFactory:zf}],tD=[{provide:To,useClass:id},{provide:xi,useValue:"NoopAnimations"},...Qd],jf=[{provide:To,useFactory:()=>new od},{provide:xi,useFactory:()=>"BrowserAnimations"},...Qd];function Jd(){return Fa("NgEagerAnimations"),[...jf]}var Hf="@",Uf=(()=>{class i{doc;delegate;zone;animationType;moduleImpl;_rendererFactoryPromise=null;scheduler=null;injector=s(q);loadingSchedulerFn=s(Gf,{optional:!0});_engine;constructor(e,t,n,a,r){this.doc=e,this.delegate=t,this.zone=n,this.animationType=a,this.moduleImpl=r}ngOnDestroy(){this._engine?.flush()}loadImpl(){let e=()=>this.moduleImpl??import("./chunk-34LU6STA.js").then(n=>n),t;return this.loadingSchedulerFn?t=this.loadingSchedulerFn(e):t=e(),t.catch(n=>{throw new oe(5300,!1)}).then(({\u0275createEngine:n,\u0275AnimationRendererFactory:a})=>{this._engine=n(this.animationType,this.doc);let r=new a(this.delegate,this._engine,this.zone);return this.delegate=r,r})}createRenderer(e,t){let n=this.delegate.createRenderer(e,t);if(n.\u0275type===0)return n;typeof n.throwOnSyntheticProps=="boolean"&&(n.throwOnSyntheticProps=!1);let a=new ul(n);return t?.data?.animation&&!this._rendererFactoryPromise&&(this._rendererFactoryPromise=this.loadImpl()),this._rendererFactoryPromise?.then(r=>{let m=r.createRenderer(e,t);a.use(m),this.scheduler??=this.injector.get(Bc,null,{optional:!0}),this.scheduler?.notify(10)}).catch(r=>{a.use(n)}),a}begin(){this.delegate.begin?.()}end(){this.delegate.end?.()}whenRenderingDone(){return this.delegate.whenRenderingDone?.()??Promise.resolve()}componentReplaced(e){this._engine?.flush(),this.delegate.componentReplaced?.(e)}static \u0275fac=function(t){Pa()};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),ul=class{delegate;replay=[];\u0275type=1;constructor(o){this.delegate=o}use(o){if(this.delegate=o,this.replay!==null){for(let e of this.replay)e(o);this.replay=null}}get data(){return this.delegate.data}destroy(){this.replay=null,this.delegate.destroy()}createElement(o,e){return this.delegate.createElement(o,e)}createComment(o){return this.delegate.createComment(o)}createText(o){return this.delegate.createText(o)}get destroyNode(){return this.delegate.destroyNode}appendChild(o,e){this.delegate.appendChild(o,e)}insertBefore(o,e,t,n){this.delegate.insertBefore(o,e,t,n)}removeChild(o,e,t,n){this.delegate.removeChild(o,e,t,n)}selectRootElement(o,e){return this.delegate.selectRootElement(o,e)}parentNode(o){return this.delegate.parentNode(o)}nextSibling(o){return this.delegate.nextSibling(o)}setAttribute(o,e,t,n){this.delegate.setAttribute(o,e,t,n)}removeAttribute(o,e,t){this.delegate.removeAttribute(o,e,t)}addClass(o,e){this.delegate.addClass(o,e)}removeClass(o,e){this.delegate.removeClass(o,e)}setStyle(o,e,t,n){this.delegate.setStyle(o,e,t,n)}removeStyle(o,e,t){this.delegate.removeStyle(o,e,t)}setProperty(o,e,t){this.shouldReplay(e)&&this.replay.push(n=>n.setProperty(o,e,t)),this.delegate.setProperty(o,e,t)}setValue(o,e){this.delegate.setValue(o,e)}listen(o,e,t,n){return this.shouldReplay(e)&&this.replay.push(a=>a.listen(o,e,t,n)),this.delegate.listen(o,e,t,n)}shouldReplay(o){return this.replay!==null&&o.startsWith(Hf)}},Gf=new b("");function em(i="animations"){return Fa("NgAsyncAnimations"),ko([{provide:et,useFactory:()=>new Uf(s(G),s(un),s(j),i)},{provide:xi,useValue:i==="noop"?"NoopAnimations":"BrowserAnimations"}])}var lr="asm_token",cr=(()=>{class i{constructor(){this.http=s(jt),this.authState=new Fn(this.hasToken())}login(e){return ve(this,null,function*(){try{let t=yield ze(this.http.post("/api/auth/login",{password:e}));return localStorage.setItem(lr,t.token),this.authState.next(!0),!0}catch(t){return!1}})}logout(){localStorage.removeItem(lr),this.authState.next(!1)}getToken(){return localStorage.getItem(lr)}isAuthenticated(){return this.hasToken()}hasToken(){return!!localStorage.getItem(lr)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var tm=(i,o)=>{let e=s(cr),t=e.getToken(),n=i.url.includes("/api/auth/login"),a=t&&!n?i.clone({setHeaders:{Authorization:`Bearer ${t}`}}):i;return o(a).pipe(mi(r=>(r.status===401&&!n&&e.logout(),Ma(()=>r))))};var im={providers:[Jc({eventCoalescing:!0}),dl(ml([tm])),Jd(),em()]};var hl;try{hl=typeof Intl<"u"&&Intl.v8BreakIterator}catch(i){hl=!1}var se=(()=>{class i{_platformId=s(Nn);isBrowser=this._platformId?Td(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||hl)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function Ei(i){return Array.isArray(i)?i:[i]}var nm=new Set,pn,Wn=(()=>{class i{_platform=s(se);_nonce=s(Ln,{optional:!0});_matchMedia;constructor(){this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):Wf}matchMedia(e){return(this._platform.WEBKIT||this._platform.BLINK)&&$f(e,this._nonce),this._matchMedia(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function $f(i,o){if(!nm.has(i))try{pn||(pn=document.createElement("style"),o&&pn.setAttribute("nonce",o),pn.setAttribute("type","text/css"),document.head.appendChild(pn)),pn.sheet&&(pn.sheet.insertRule(`@media ${i.replace(/[{}]/g,"")} {body{ }}`,0),nm.add(i))}catch(e){console.error(e)}}function Wf(i){return{matches:i==="all"||i==="",media:i,addListener:()=>{},removeListener:()=>{}}}var fn=(()=>{class i{_mediaMatcher=s(Wn);_zone=s(j);_queries=new Map;_destroySubject=new M;ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(e){return om(Ei(e)).some(n=>this._registerQuery(n).mql.matches)}observe(e){let n=om(Ei(e)).map(r=>this._registerQuery(r).observable),a=Pn(n);return a=Ic(a.pipe(ot(1)),a.pipe(Ra(1),Qt(0))),a.pipe(Ae(r=>{let m={matches:!1,breakpoints:{}};return r.forEach(({matches:h,query:g})=>{m.matches=m.matches||h,m.breakpoints[g]=h}),m}))}_registerQuery(e){if(this._queries.has(e))return this._queries.get(e);let t=this._mediaMatcher.matchMedia(e),a={observable:new ft(r=>{let m=h=>this._zone.run(()=>r.next(h));return t.addListener(m),()=>{t.removeListener(m)}}).pipe(Ie(t),Ae(({matches:r})=>({query:e,matches:r})),ne(this._destroySubject)),mql:t};return this._queries.set(e,a),a}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function om(i){return i.map(o=>o.split(",")).reduce((o,e)=>o.concat(e)).map(o=>o.trim())}var dr={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"};var qf=new b("MATERIAL_ANIMATIONS"),am=null;function pl(){return s(qf,{optional:!0})?.animationsDisabled||s(xi,{optional:!0})==="NoopAnimations"?"di-disabled":(am??=s(Wn).matchMedia("(prefers-reduced-motion)").matches,am?"reduced-motion":"enabled")}function de(){return pl()!=="enabled"}var Kf=new b("cdk-dir-doc",{providedIn:"root",factory:()=>s(G)}),Yf=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function rm(i){let o=i?.toLowerCase()||"";return o==="auto"&&typeof navigator<"u"&&navigator?.language?Yf.test(navigator.language)?"rtl":"ltr":o==="rtl"?"rtl":"ltr"}var He=(()=>{class i{get value(){return this.valueSignal()}valueSignal=N("ltr");change=new $;constructor(){let e=s(Kf,{optional:!0});if(e){let t=e.body?e.body.dir:null,n=e.documentElement?e.documentElement.dir:null;this.valueSignal.set(rm(t||n||"ltr"))}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Q=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function Xf(i,o){i&1&&ct(0,"div",2)}var Zf=new b("MAT_PROGRESS_BAR_DEFAULT_OPTIONS");var qn=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_changeDetectorRef=s(ie);_renderer=s(ue);_cleanupTransitionEnd;constructor(){let e=pl(),t=s(Zf,{optional:!0});this._isNoopAnimation=e==="di-disabled",e==="reduced-motion"&&this._elementRef.nativeElement.classList.add("mat-progress-bar-reduced-motion"),t&&(t.color&&(this.color=this._defaultColor=t.color),this.mode=t.mode||this.mode)}_isNoopAnimation;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;_defaultColor="primary";get value(){return this._value}set value(e){this._value=sm(e||0),this._changeDetectorRef.markForCheck()}_value=0;get bufferValue(){return this._bufferValue||0}set bufferValue(e){this._bufferValue=sm(e||0),this._changeDetectorRef.markForCheck()}_bufferValue=0;animationEnd=new $;get mode(){return this._mode}set mode(e){this._mode=e,this._changeDetectorRef.markForCheck()}_mode="determinate";ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{this._cleanupTransitionEnd=this._renderer.listen(this._elementRef.nativeElement,"transitionend",this._transitionendHandler)})}ngOnDestroy(){this._cleanupTransitionEnd?.()}_getPrimaryBarTransform(){return`scaleX(${this._isIndeterminate()?1:this.value/100})`}_getBufferBarFlexBasis(){return`${this.mode==="buffer"?this.bufferValue:100}%`}_isIndeterminate(){return this.mode==="indeterminate"||this.mode==="query"}_transitionendHandler=e=>{this.animationEnd.observers.length===0||!e.target||!e.target.classList.contains("mdc-linear-progress__primary-bar")||(this.mode==="determinate"||this.mode==="buffer")&&this._ngZone.run(()=>this.animationEnd.next({value:this.value}))};static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-progress-bar"]],hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-mdc-progress-bar","mdc-linear-progress"],hostVars:10,hostBindings:function(t,n){t&2&&(Y("aria-valuenow",n._isIndeterminate()?null:n.value)("mode",n.mode),Qe("mat-"+n.color),f("_mat-animation-noopable",n._isNoopAnimation)("mdc-linear-progress--animation-ready",!n._isNoopAnimation)("mdc-linear-progress--indeterminate",n._isIndeterminate()))},inputs:{color:"color",value:[2,"value","value",_t],bufferValue:[2,"bufferValue","bufferValue",_t],mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],decls:7,vars:5,consts:[["aria-hidden","true",1,"mdc-linear-progress__buffer"],[1,"mdc-linear-progress__buffer-bar"],[1,"mdc-linear-progress__buffer-dots"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__primary-bar"],[1,"mdc-linear-progress__bar-inner"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__secondary-bar"]],template:function(t,n){t&1&&(Se(0,"div",0),ct(1,"div",1),S(2,Xf,1,0,"div",2),Pe(),Se(3,"div",3),ct(4,"span",4),Pe(),Se(5,"div",5),ct(6,"span",4),Pe()),t&2&&(d(),Ne("flex-basis",n._getBufferBarFlexBasis()),d(),E(n.mode==="buffer"?2:-1),d(),Ne("transform",n._getPrimaryBarTransform()))},styles:[`.mat-mdc-progress-bar {
|
|
1
|
+
import{$ as pe,$a as Na,$b as Fs,A as hi,Aa as Bn,Ab as Ve,B as Tc,Ba as Vn,Bb as at,Bc as nd,C as ei,Ca as zc,Cb as It,Cc as Ro,D as ot,Da as jc,Db as Ze,Dc as za,E as Rc,Ea as Hc,Eb as I,F as Fi,Fa as Uc,Fb as Ba,Fc as od,G as Ta,Ga as Gc,Gb as C,H as Ds,Ha as $c,Hb as le,Hc as ja,I as Oc,Ia as Wc,Ib as H,J as ks,Ja as gt,Jb as tt,Jc as ad,K as Ra,Ka as Ms,Kb as we,L as Ie,La as zn,Lb as T,M as We,Ma as qc,Mb as R,N as ne,Na as As,Nb as Yc,O as Fc,Oa as Fa,Ob as Xc,Oc as rd,P as ti,Pa as Fe,Pb as Os,Q as oe,Qa as d,Qb as Ye,R as lt,Ra as qe,Rb as Ne,S as ae,Sa as et,Sb as f,T as V,Ta as ue,Tb as Qe,U as b,Ua as D,Ub as u,V as ee,Va as k,Vb as Z,W as s,Wa as Eo,Wb as ye,X as So,Xa as ce,Xb as mn,Y as Pc,Ya as Pa,Yb as te,Z as ii,Za as Ke,Zb as Mo,_ as Nc,_a as Is,_b as Ao,a as L,aa as fe,ab as A,ac as Ps,b as Se,ba as pi,bb as z,bc as K,c as Ce,ca as Ss,cb as x,cc as mt,d as ve,da as q,db as Ts,dc as fi,e as ft,ea as G,eb as Rs,ec as Zc,f as Mc,fa as ni,fb as Kc,fc as Qc,g as M,ga as $,gb as X,gc as jn,h as Fn,ha as j,hb as Re,hc as Io,i as Sa,ia as cn,ib as La,ic as Jc,j as Cs,ja as N,jb as Li,jc as To,k as xs,ka as dn,kb as Y,kc as ie,l as Ea,la as Lc,lb as S,lc as ed,m as Ac,ma as Nn,mb as E,mc as td,n as be,na as xi,nb as wi,nc as F,o as Ma,oa as Ln,ob as Le,oc as _t,p as ws,pa as Bc,pb as Be,pc as id,q as je,qa as At,qb as w,qc as Va,r as Ae,ra as Pi,rb as l,s as Pn,sa as Es,sb as c,t as Ic,ta as xe,tb as v,u as Oi,ua as _e,ub as Ee,v as Aa,va as W,vb as Pe,w as Ia,wa as O,wb as ct,x as He,xa as Ni,xb as Nt,y as ge,ya as Vc,yb as Lt,z as ko,za as Oa,zb as Bt}from"./chunk-M2HJXJRB.js";var sd=null;function Vt(){return sd}function Ns(i){sd??=i}var Oo=class{},Hn=(()=>{class i{historyGo(e){throw new Error("")}static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:()=>s(ld),providedIn:"platform"})}return i})();var ld=(()=>{class i extends Hn{_location;_history;_doc=s(G);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Vt().getBaseHref(this._doc)}onPopState(e){let t=Vt().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",e,!1),()=>t.removeEventListener("popstate",e)}onHashChange(e){let t=Vt().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",e,!1),()=>t.removeEventListener("hashchange",e)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(e){this._location.pathname=e}pushState(e,t,n){this._history.pushState(e,t,n)}replaceState(e,t,n){this._history.replaceState(e,t,n)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:()=>new i,providedIn:"platform"})}return i})();function md(i,o){return i?o?i.endsWith("/")?o.startsWith("/")?i+o.slice(1):i+o:o.startsWith("/")?i+o:`${i}/${o}`:i:o}function cd(i){let o=i.search(/#|\?|$/);return i[o-1]==="/"?i.slice(0,o-1)+i.slice(o):i}function Bi(i){return i&&i[0]!=="?"?`?${i}`:i}var Ha=(()=>{class i{historyGo(e){throw new Error("")}static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:()=>s(yp),providedIn:"root"})}return i})(),vp=new b(""),yp=(()=>{class i extends Ha{_platformLocation;_baseHref;_removeListenerFns=[];constructor(e,t){super(),this._platformLocation=e,this._baseHref=t??this._platformLocation.getBaseHrefFromDOM()??s(G).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return md(this._baseHref,e)}path(e=!1){let t=this._platformLocation.pathname+Bi(this._platformLocation.search),n=this._platformLocation.hash;return n&&e?`${t}${n}`:t}pushState(e,t,n,a){let r=this.prepareExternalUrl(n+Bi(a));this._platformLocation.pushState(e,t,r)}replaceState(e,t,n,a){let r=this.prepareExternalUrl(n+Bi(a));this._platformLocation.replaceState(e,t,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static \u0275fac=function(t){return new(t||i)(ee(Hn),ee(vp,8))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Ua=(()=>{class i{_subject=new M;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(e){this._locationStrategy=e;let t=this._locationStrategy.getBaseHref();this._basePath=wp(cd(dd(t))),this._locationStrategy.onPopState(n=>{this._subject.next({url:this.path(!0),pop:!0,state:n.state,type:n.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,t=""){return this.path()==this.normalize(e+Bi(t))}normalize(e){return i.stripTrailingSlash(xp(this._basePath,dd(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,t="",n=null){this._locationStrategy.pushState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Bi(t)),n)}replaceState(e,t="",n=null){this._locationStrategy.replaceState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Bi(t)),n)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}),()=>{let t=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(t,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",t){this._urlChangeListeners.forEach(n=>n(e,t))}subscribe(e,t,n){return this._subject.subscribe({next:e,error:t??void 0,complete:n??void 0})}static normalizeQueryParams=Bi;static joinWithSlash=md;static stripTrailingSlash=cd;static \u0275fac=function(t){return new(t||i)(ee(Ha))};static \u0275prov=ae({token:i,factory:()=>Cp(),providedIn:"root"})}return i})();function Cp(){return new Ua(ee(Ha))}function xp(i,o){if(!i||!o.startsWith(i))return o;let e=o.substring(i.length);return e===""||["/",";","?","#"].includes(e[0])?e:o}function dd(i){return i.replace(/\/index\.html$/,"")}function wp(i){if(new RegExp("^(https?:)?//").test(i)){let[,e]=i.split(/\/\/[^\/]+/);return e}return i}var Us=(function(i){return i[i.Decimal=0]="Decimal",i[i.Percent=1]="Percent",i[i.Currency=2]="Currency",i[i.Scientific=3]="Scientific",i})(Us||{});var ut=(function(i){return i[i.Format=0]="Format",i[i.Standalone=1]="Standalone",i})(ut||{}),Me=(function(i){return i[i.Narrow=0]="Narrow",i[i.Abbreviated=1]="Abbreviated",i[i.Wide=2]="Wide",i[i.Short=3]="Short",i})(Me||{}),Dt=(function(i){return i[i.Short=0]="Short",i[i.Medium=1]="Medium",i[i.Long=2]="Long",i[i.Full=3]="Full",i})(Dt||{}),kt={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function gd(i){return It(i)[Ze.LocaleId]}function _d(i,o,e){let t=It(i),n=[t[Ze.DayPeriodsFormat],t[Ze.DayPeriodsStandalone]],a=zt(n,o);return zt(a,e)}function bd(i,o,e){let t=It(i),n=[t[Ze.DaysFormat],t[Ze.DaysStandalone]],a=zt(n,o);return zt(a,e)}function vd(i,o,e){let t=It(i),n=[t[Ze.MonthsFormat],t[Ze.MonthsStandalone]],a=zt(n,o);return zt(a,e)}function yd(i,o){let t=It(i)[Ze.Eras];return zt(t,o)}function Fo(i,o){let e=It(i);return zt(e[Ze.DateFormat],o)}function Po(i,o){let e=It(i);return zt(e[Ze.TimeFormat],o)}function No(i,o){let t=It(i)[Ze.DateTimeFormat];return zt(t,o)}function gi(i,o){let e=It(i),t=e[Ze.NumberSymbols][o];if(typeof t>"u"){if(o===kt.CurrencyDecimal)return e[Ze.NumberSymbols][kt.Decimal];if(o===kt.CurrencyGroup)return e[Ze.NumberSymbols][kt.Group]}return t}function Cd(i,o){return It(i)[Ze.NumberFormats][o]}function xd(i){if(!i[Ze.ExtraData])throw new oe(2303,!1)}function wd(i){let o=It(i);return xd(o),(o[Ze.ExtraData][2]||[]).map(t=>typeof t=="string"?Ls(t):[Ls(t[0]),Ls(t[1])])}function Dd(i,o,e){let t=It(i);xd(t);let n=[t[Ze.ExtraData][0],t[Ze.ExtraData][1]],a=zt(n,o)||[];return zt(a,e)||[]}function zt(i,o){for(let e=o;e>-1;e--)if(typeof i[e]<"u")return i[e];throw new oe(2304,!1)}function Ls(i){let[o,e]=i.split(":");return{hours:+o,minutes:+e}}var Dp=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,Ga={},kp=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,Sp=256;function kd(i,o,e,t){let n=Np(i);Ep(o),o=Di(e,o)||o;let r=[],m;for(;o;)if(m=kp.exec(o),m){r=r.concat(m.slice(1));let _=r.pop();if(!_)break;o=_}else{r.push(o);break}let h=n.getTimezoneOffset();t&&(h=Ed(t,h),n=Pp(n,t));let g="";return r.forEach(_=>{let y=Op(_);g+=y?y(n,e,h):_==="''"?"'":_.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),g}function Ep(i){if(i.length>Sp)throw new oe(2300,!1)}function Ya(i,o,e){let t=new Date(0);return t.setFullYear(i,o,e),t.setHours(0,0,0),t}function Di(i,o){let e=gd(i);if(Ga[e]??={},Ga[e][o])return Ga[e][o];let t="";switch(o){case"shortDate":t=Fo(i,Dt.Short);break;case"mediumDate":t=Fo(i,Dt.Medium);break;case"longDate":t=Fo(i,Dt.Long);break;case"fullDate":t=Fo(i,Dt.Full);break;case"shortTime":t=Po(i,Dt.Short);break;case"mediumTime":t=Po(i,Dt.Medium);break;case"longTime":t=Po(i,Dt.Long);break;case"fullTime":t=Po(i,Dt.Full);break;case"short":let n=Di(i,"shortTime"),a=Di(i,"shortDate");t=$a(No(i,Dt.Short),[n,a]);break;case"medium":let r=Di(i,"mediumTime"),m=Di(i,"mediumDate");t=$a(No(i,Dt.Medium),[r,m]);break;case"long":let h=Di(i,"longTime"),g=Di(i,"longDate");t=$a(No(i,Dt.Long),[h,g]);break;case"full":let _=Di(i,"fullTime"),y=Di(i,"fullDate");t=$a(No(i,Dt.Full),[_,y]);break}return t&&(Ga[e][o]=t),t}function $a(i,o){return o&&(i=i.replace(/\{([^}]+)}/g,function(e,t){return Object.hasOwn(o,t)?o[t]:e})),i}function oi(i,o,e="-",t,n){let a="";(i<0||n&&i<=0)&&(n?i=-i+1:(i=-i,a=e));let r=String(i);for(;r.length<o;)r="0"+r;return t&&(r=r.slice(r.length-o)),a+r}function Mp(i,o){return oi(i,3).substring(0,o)}function Je(i,o,e=0,t=!1,n=!1){return function(a,r){let m=Ap(i,a);if((e>0||m>-e)&&(m+=e),i===3)m===0&&e===-12&&(m=12);else if(i===6)return Mp(m,o);let h=gi(r,kt.MinusSign);return oi(m,o,h,t,n)}}function Ap(i,o){switch(i){case 0:return o.getFullYear();case 1:return o.getMonth();case 2:return o.getDate();case 3:return o.getHours();case 4:return o.getMinutes();case 5:return o.getSeconds();case 6:return o.getMilliseconds();case 7:return o.getDay();default:throw new oe(2301,!1)}}function Oe(i,o,e=ut.Format,t=!1){return function(n,a){return Ip(n,a,i,o,e,t)}}function Ip(i,o,e,t,n,a){switch(e){case 2:return vd(o,n,t)[i.getMonth()];case 1:return bd(o,n,t)[i.getDay()];case 0:let r=i.getHours(),m=i.getMinutes();if(a){let g=wd(o),_=Dd(o,n,t),y=g.findIndex(B=>{if(Array.isArray(B)){let[U,J]=B,me=r>=U.hours&&m>=U.minutes,re=r<J.hours||r===J.hours&&m<J.minutes;if(U.hours<J.hours){if(me&&re)return!0}else if(me||re)return!0}else if(B.hours===r&&B.minutes===m)return!0;return!1});if(y!==-1)return _[y]}return _d(o,n,t)[r<12?0:1];case 3:return yd(o,t)[i.getFullYear()<=0?0:1];default:let h=e;throw new oe(2302,!1)}}function Wa(i){return function(o,e,t){let n=-1*t,a=gi(e,kt.MinusSign),r=n>0?Math.floor(n/60):Math.ceil(n/60);switch(i){case 0:return(n>=0?"+":"")+oi(r,2,a)+oi(Math.abs(n%60),2,a);case 1:return"GMT"+(n>=0?"+":"")+oi(r,1,a);case 2:return"GMT"+(n>=0?"+":"")+oi(r,2,a)+":"+oi(Math.abs(n%60),2,a);case 3:return t===0?"Z":(n>=0?"+":"")+oi(r,2,a)+":"+oi(Math.abs(n%60),2,a);default:throw new oe(2310,!1)}}}var Tp=0,Ka=4;function Rp(i){let o=Ya(i,Tp,1).getDay();return Ya(i,0,1+(o<=Ka?Ka:Ka+7)-o)}function Sd(i){let o=i.getDay(),e=o===0?-3:Ka-o;return Ya(i.getFullYear(),i.getMonth(),i.getDate()+e)}function Bs(i,o=!1){return function(e,t){let n;if(o){let a=new Date(e.getFullYear(),e.getMonth(),1).getDay()-1,r=e.getDate();n=1+Math.floor((r+a)/7)}else{let a=Sd(e),r=Rp(a.getFullYear()),m=a.getTime()-r.getTime();n=1+Math.round(m/6048e5)}return oi(n,i,gi(t,kt.MinusSign))}}function qa(i,o=!1){return function(e,t){let a=Sd(e).getFullYear();return oi(a,i,gi(t,kt.MinusSign),o)}}var Vs={};function Op(i){if(Vs[i])return Vs[i];let o;switch(i){case"G":case"GG":case"GGG":o=Oe(3,Me.Abbreviated);break;case"GGGG":o=Oe(3,Me.Wide);break;case"GGGGG":o=Oe(3,Me.Narrow);break;case"y":o=Je(0,1,0,!1,!0);break;case"yy":o=Je(0,2,0,!0,!0);break;case"yyy":o=Je(0,3,0,!1,!0);break;case"yyyy":o=Je(0,4,0,!1,!0);break;case"Y":o=qa(1);break;case"YY":o=qa(2,!0);break;case"YYY":o=qa(3);break;case"YYYY":o=qa(4);break;case"M":case"L":o=Je(1,1,1);break;case"MM":case"LL":o=Je(1,2,1);break;case"MMM":o=Oe(2,Me.Abbreviated);break;case"MMMM":o=Oe(2,Me.Wide);break;case"MMMMM":o=Oe(2,Me.Narrow);break;case"LLL":o=Oe(2,Me.Abbreviated,ut.Standalone);break;case"LLLL":o=Oe(2,Me.Wide,ut.Standalone);break;case"LLLLL":o=Oe(2,Me.Narrow,ut.Standalone);break;case"w":o=Bs(1);break;case"ww":o=Bs(2);break;case"W":o=Bs(1,!0);break;case"d":o=Je(2,1);break;case"dd":o=Je(2,2);break;case"c":case"cc":o=Je(7,1);break;case"ccc":o=Oe(1,Me.Abbreviated,ut.Standalone);break;case"cccc":o=Oe(1,Me.Wide,ut.Standalone);break;case"ccccc":o=Oe(1,Me.Narrow,ut.Standalone);break;case"cccccc":o=Oe(1,Me.Short,ut.Standalone);break;case"E":case"EE":case"EEE":o=Oe(1,Me.Abbreviated);break;case"EEEE":o=Oe(1,Me.Wide);break;case"EEEEE":o=Oe(1,Me.Narrow);break;case"EEEEEE":o=Oe(1,Me.Short);break;case"a":case"aa":case"aaa":o=Oe(0,Me.Abbreviated);break;case"aaaa":o=Oe(0,Me.Wide);break;case"aaaaa":o=Oe(0,Me.Narrow);break;case"b":case"bb":case"bbb":o=Oe(0,Me.Abbreviated,ut.Standalone,!0);break;case"bbbb":o=Oe(0,Me.Wide,ut.Standalone,!0);break;case"bbbbb":o=Oe(0,Me.Narrow,ut.Standalone,!0);break;case"B":case"BB":case"BBB":o=Oe(0,Me.Abbreviated,ut.Format,!0);break;case"BBBB":o=Oe(0,Me.Wide,ut.Format,!0);break;case"BBBBB":o=Oe(0,Me.Narrow,ut.Format,!0);break;case"h":o=Je(3,1,-12);break;case"hh":o=Je(3,2,-12);break;case"H":o=Je(3,1);break;case"HH":o=Je(3,2);break;case"m":o=Je(4,1);break;case"mm":o=Je(4,2);break;case"s":o=Je(5,1);break;case"ss":o=Je(5,2);break;case"S":o=Je(6,1);break;case"SS":o=Je(6,2);break;case"SSS":o=Je(6,3);break;case"Z":case"ZZ":case"ZZZ":o=Wa(0);break;case"ZZZZZ":o=Wa(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":o=Wa(1);break;case"OOOO":case"ZZZZ":case"zzzz":o=Wa(2);break;default:return null}return Vs[i]=o,o}function Ed(i,o){i=i.replace(/:/g,"");let e=Date.parse("Jan 01, 1970 00:00:00 "+i)/6e4;return isNaN(e)?o:e}function Fp(i,o){return i=new Date(i.getTime()),i.setMinutes(i.getMinutes()+o),i}function Pp(i,o,e){let n=i.getTimezoneOffset(),a=Ed(o,n);return Fp(i,-1*(a-n))}function Np(i){if(ud(i))return i;if(typeof i=="number"&&!isNaN(i))return new Date(i);if(typeof i=="string"){if(i=i.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(i)){let[n,a=1,r=1]=i.split("-").map(m=>+m);return Ya(n,a-1,r)}let e=parseFloat(i);if(!isNaN(i-e))return new Date(e);let t;if(t=i.match(Dp))return Lp(t)}let o=new Date(i);if(!ud(o))throw new oe(2311,!1);return o}function Lp(i){let o=new Date(0),e=0,t=0,n=i[8]?o.setUTCFullYear:o.setFullYear,a=i[8]?o.setUTCHours:o.setHours;i[9]&&(e=Number(i[9]+i[10]),t=Number(i[9]+i[11])),n.call(o,Number(i[1]),Number(i[2])-1,Number(i[3]));let r=Number(i[4]||0)-e,m=Number(i[5]||0)-t,h=Number(i[6]||0),g=Math.floor(parseFloat("0."+(i[7]||0))*1e3);return a.call(o,r,m,h,g),o}function ud(i){return i instanceof Date&&!isNaN(i.valueOf())}var Bp=/^(\d+)?\.((\d+)(-(\d+))?)?$/,hd=22,Xa=".",Lo="0",Vp=";",zp=",",zs="#";function jp(i,o,e,t,n,a,r=!1){let m="",h=!1;if(!isFinite(i))m=gi(e,kt.Infinity);else{let g=Gp(i);r&&(g=Up(g));let _=o.minInt,y=o.minFrac,B=o.maxFrac;if(a){let nt=a.match(Bp);if(nt===null)throw new oe(2306,!1);let Qt=nt[1],ui=nt[3],Ri=nt[5];Qt!=null&&(_=js(Qt)),ui!=null&&(y=js(ui)),Ri!=null?B=js(Ri):ui!=null&&y>B&&(B=y);let Jt=100;if(_>Jt||y>Jt||B>Jt)throw new oe(2306,!1)}$p(g,y,B);let U=g.digits,J=g.integerLen,me=g.exponent,re=[];for(h=U.every(nt=>!nt);J<_;J++)U.unshift(0);for(;J<0;J++)U.unshift(0);J>0?re=U.splice(J,U.length):(re=U,U=[0]);let ke=[];for(U.length>=o.lgSize&&ke.unshift(U.splice(-o.lgSize,U.length).join(""));U.length>o.gSize;)ke.unshift(U.splice(-o.gSize,U.length).join(""));U.length&&ke.unshift(U.join("")),m=ke.join(gi(e,t)),re.length&&(m+=gi(e,n)+re.join("")),me&&(m+=gi(e,kt.Exponential)+"+"+me)}return i<0&&!h?m=o.negPre+m+o.negSuf:m=o.posPre+m+o.posSuf,m}function Md(i,o,e){let t=Cd(o,Us.Decimal),n=Hp(t,gi(o,kt.MinusSign));return jp(i,n,o,kt.Group,kt.Decimal,e)}function Hp(i,o="-"){let e={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},t=i.split(Vp),n=t[0],a=t[1],r=n.indexOf(Xa)!==-1?n.split(Xa):[n.substring(0,n.lastIndexOf(Lo)+1),n.substring(n.lastIndexOf(Lo)+1)],m=r[0],h=r[1]||"";e.posPre=m.substring(0,m.indexOf(zs));for(let _=0;_<h.length;_++){let y=h.charAt(_);y===Lo?e.minFrac=e.maxFrac=_+1:y===zs?e.maxFrac=_+1:e.posSuf+=y}let g=m.split(zp);if(e.gSize=g[1]?g[1].length:0,e.lgSize=g[2]||g[1]?(g[2]||g[1]).length:0,a){let _=n.length-e.posPre.length-e.posSuf.length,y=a.indexOf(zs);e.negPre=a.substring(0,y).replace(/'/g,""),e.negSuf=a.slice(y+_).replace(/'/g,"")}else e.negPre=o+e.posPre,e.negSuf=e.posSuf;return e}function Up(i){if(i.digits[0]===0)return i;let o=i.digits.length-i.integerLen;return i.exponent?i.exponent+=2:(o===0?i.digits.push(0,0):o===1&&i.digits.push(0),i.integerLen+=2),i}function Gp(i){let o=Math.abs(i)+"",e=0,t,n,a,r,m;for((n=o.indexOf(Xa))>-1&&(o=o.replace(Xa,"")),(a=o.search(/e/i))>0?(n<0&&(n=a),n+=+o.slice(a+1),o=o.substring(0,a)):n<0&&(n=o.length),a=0;o.charAt(a)===Lo;a++);if(a===(m=o.length))t=[0],n=1;else{for(m--;o.charAt(m)===Lo;)m--;for(n-=a,t=[],r=0;a<=m;a++,r++)t[r]=Number(o.charAt(a))}return n>hd&&(t=t.splice(0,hd-1),e=n-1,n=1),{digits:t,exponent:e,integerLen:n}}function $p(i,o,e){if(o>e)throw new oe(2307,!1);let t=i.digits,n=t.length-i.integerLen,a=Math.min(Math.max(o,n),e),r=a+i.integerLen,m=t[r];if(r>0){t.splice(Math.max(i.integerLen,r));for(let y=r;y<t.length;y++)t[y]=0}else{n=Math.max(0,n),i.integerLen=1,t.length=Math.max(1,r=a+1),t[0]=0;for(let y=1;y<r;y++)t[y]=0}if(m>=5)if(r-1<0){for(let y=0;y>r;y--)t.unshift(0),i.integerLen++;t.unshift(1),i.integerLen++}else t[r-1]++;for(;n<Math.max(0,a);n++)t.push(0);let h=a!==0,g=o+i.integerLen,_=t.reduceRight(function(y,B,U,J){return B=B+y,J[U]=B<10?B:B-10,h&&(J[U]===0&&U>=g?J.pop():h=!1),B>=10?1:0},0);_&&(t.unshift(_),i.integerLen++)}function js(i){let o=parseInt(i);if(isNaN(o))throw new oe(2305,!1);return o}var Hs=/\s+/,pd=[],Gs=(()=>{class i{_ngEl;_renderer;initialClasses=pd;rawClass;stateMap=new Map;constructor(e,t){this._ngEl=e,this._renderer=t}set klass(e){this.initialClasses=e!=null?e.trim().split(Hs):pd}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Hs):e}ngDoCheck(){for(let t of this.initialClasses)this._updateState(t,!0);let e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(let t of e)this._updateState(t,!0);else if(e!=null)for(let t of Object.keys(e))this._updateState(t,!!e[t]);this._applyStateDiff()}_updateState(e,t){let n=this.stateMap.get(e);n!==void 0?(n.enabled!==t&&(n.changed=!0,n.enabled=t),n.touched=!0):this.stateMap.set(e,{enabled:t,changed:!0,touched:!0})}_applyStateDiff(){for(let e of this.stateMap){let t=e[0],n=e[1];n.changed?(this._toggleClass(t,n.enabled),n.changed=!1):n.touched||(n.enabled&&this._toggleClass(t,!1),this.stateMap.delete(t)),n.touched=!1}}_toggleClass(e,t){e=e.trim(),e.length>0&&e.split(Hs).forEach(n=>{t?this._renderer.addClass(this._ngEl.nativeElement,n):this._renderer.removeClass(this._ngEl.nativeElement,n)})}static \u0275fac=function(t){return new(t||i)(ce(O),ce(ue))};static \u0275dir=x({type:i,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return i})();var $s=(()=>{class i{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;injector=s(q);constructor(e){this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){let t=this._viewContainerRef;if(this._viewRef&&t.remove(t.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let n=this._createContextForwardProxy();this._viewRef=t.createEmbeddedView(this.ngTemplateOutlet,n,{injector:this._getInjector()})}}_getInjector(){return this.ngTemplateOutletInjector==="outlet"?this.injector:this.ngTemplateOutletInjector??void 0}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,t,n)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,t,n):!1,get:(e,t,n)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,t,n)}})}static \u0275fac=function(t){return new(t||i)(ce(Ke))};static \u0275dir=x({type:i,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[xe]})}return i})();function Ad(i,o){return new oe(2100,!1)}var Wp="mediumDate",Id=new b(""),Td=new b(""),Ws=(()=>{class i{locale;defaultTimezone;defaultOptions;constructor(e,t,n){this.locale=e,this.defaultTimezone=t,this.defaultOptions=n}transform(e,t,n,a){if(e==null||e===""||e!==e)return null;try{let r=t??this.defaultOptions?.dateFormat??Wp,m=n??this.defaultOptions?.timezone??this.defaultTimezone??void 0;return kd(e,r,a||this.locale,m)}catch(r){throw Ad(i,r.message)}}static \u0275fac=function(t){return new(t||i)(ce(Ps,16),ce(Id,24),ce(Td,24))};static \u0275pipe=Ts({name:"date",type:i,pure:!0})}return i})();var qs=(()=>{class i{_locale;constructor(e){this._locale=e}transform(e,t,n){if(!qp(e))return null;n||=this._locale;try{let a=Kp(e);return Md(a,n,t)}catch(a){throw Ad(i,a.message)}}static \u0275fac=function(t){return new(t||i)(ce(Ps,16))};static \u0275pipe=Ts({name:"number",type:i,pure:!0})}return i})();function qp(i){return!(i==null||i===""||i!==i)}function Kp(i){if(typeof i=="string"&&!isNaN(Number(i)-parseFloat(i)))return Number(i);if(typeof i!="number")throw new oe(2309,!1);return i}var $e=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function Bo(i,o){o=encodeURIComponent(o);for(let e of i.split(";")){let t=e.indexOf("="),[n,a]=t==-1?[e,""]:[e.slice(0,t),e.slice(t+1)];if(n.trim()===o)return decodeURIComponent(a)}return null}var Ks="browser";function Rd(i){return i===Ks}var Vo=class{_doc;constructor(o){this._doc=o}manager},Za=(()=>{class i extends Vo{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n,a){return e.addEventListener(t,n,a),()=>this.removeEventListener(e,t,n,a)}removeEventListener(e,t,n,a){return e.removeEventListener(t,n,a)}static \u0275fac=function(t){return new(t||i)(ee(G))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),er=new b(""),Qs=(()=>{class i{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,t){this._zone=t,e.forEach(r=>{r.manager=this});let n=e.filter(r=>!(r instanceof Za));this._plugins=n.slice().reverse();let a=e.find(r=>r instanceof Za);a&&this._plugins.push(a)}addEventListener(e,t,n,a){return this._findPluginFor(t).addEventListener(e,t,n,a)}getZone(){return this._zone}_findPluginFor(e){let t=this._eventNameToPlugin.get(e);if(t)return t;if(t=this._plugins.find(a=>a.supports(e)),!t)throw new oe(-5101,!1);return this._eventNameToPlugin.set(e,t),t}static \u0275fac=function(t){return new(t||i)(ee(er),ee(j))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),Ys="ng-app-id";function Fd(i){for(let o of i)o.remove()}function Pd(i,o){let e=o.createElement("style");return e.textContent=i,e}function Zp(i,o,e,t){let n=i.head?.querySelectorAll(`style[${Ys}="${o}"],link[${Ys}="${o}"]`);if(!n||n.length===0)return!1;for(let a of n)a.removeAttribute(Ys),a instanceof HTMLLinkElement?t.set(a.href.slice(a.href.lastIndexOf("/")+1),{usage:0,elements:[a]}):a.textContent&&e.set(a.textContent,{usage:0,elements:[a]});return!0}function Zs(i,o){let e=o.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",i),e}var Js=(()=>{class i{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(e,t,n,a={}){this.doc=e,this.appId=t,this.nonce=n,Zp(e,t,this.inline,this.external)&&this.hosts.add(e.head)}addStyles(e,t){for(let n of e)this.addUsage(n,this.inline,Pd);t?.forEach(n=>this.addUsage(n,this.external,Zs))}removeStyles(e,t){for(let n of e)this.removeUsage(n,this.inline);t?.forEach(n=>this.removeUsage(n,this.external))}addUsage(e,t,n){let a=t.get(e);a?a.usage++:t.set(e,{usage:1,elements:[...this.hosts].map(r=>this.addElement(r,n(e,this.doc)))})}removeUsage(e,t){let n=t.get(e);n&&(n.usage--,n.usage<=0&&(Fd(n.elements),t.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])Fd(e);this.hosts.clear()}addHost(e){if(!this.hosts.has(e)){this.hosts.add(e);for(let[t,{elements:n}]of this.inline)n.push(this.addElement(e,Pd(t,this.doc)));for(let[t,{elements:n}]of this.external)n.push(this.addElement(e,Zs(t,this.doc)))}}removeHost(e){this.hosts.delete(e);for(let t of[...this.inline.values(),...this.external.values()]){let n=[];for(let a of t.elements)a.parentNode===e?a.remove():n.push(a);t.elements=n}}addElement(e,t){return this.nonce&&t.setAttribute("nonce",this.nonce),e.appendChild(t)}static \u0275fac=function(t){return new(t||i)(ee(G),ee(dn),ee(Ln,8),ee(Nn))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),Xs={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"},el=/%COMP%/g;var Ld="%COMP%",Qp=`_nghost-${Ld}`,Jp=`_ngcontent-${Ld}`,ef=!0,tf=new b("",{factory:()=>ef});function nf(i){return Jp.replace(el,i)}function of(i){return Qp.replace(el,i)}function Bd(i,o){return o.map(e=>e.replace(el,i))}var un=(()=>{class i{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;constructor(e,t,n,a,r,m,h=null,g=null){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.removeStylesOnCompDestroy=a,this.doc=r,this.ngZone=m,this.nonce=h,this.tracingService=g,this.defaultRenderer=new zo(e,r,m,this.tracingService)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;let n=this.getOrCreateRenderer(e,t);return n instanceof Ja?n.applyToHost(e):n instanceof jo&&n.applyStyles(),n}getOrCreateRenderer(e,t){let n=this.rendererByCompId,a=n.get(t.id);if(!a){let r=this.doc,m=this.ngZone,h=this.eventManager,g=this.sharedStylesHost,_=this.removeStylesOnCompDestroy,y=this.tracingService;switch(t.encapsulation){case Oa.Emulated:a=new Ja(h,g,t,this.appId,_,r,m,y);break;case Oa.ShadowDom:return new Qa(h,e,t,r,m,this.nonce,y,g);case Oa.ExperimentalIsolatedShadowDom:return new Qa(h,e,t,r,m,this.nonce,y);default:a=new jo(h,g,t,_,r,m,y);break}n.set(t.id,a)}return a}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(e){this.rendererByCompId.delete(e)}static \u0275fac=function(t){return new(t||i)(ee(Qs),ee(Eo),ee(dn),ee(tf),ee(G),ee(j),ee(Ln),ee(As,8))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),zo=class{eventManager;doc;ngZone;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(o,e,t,n){this.eventManager=o,this.doc=e,this.ngZone=t,this.tracingService=n}destroy(){}destroyNode=null;createElement(o,e){return e?this.doc.createElementNS(Xs[e]||e,o):this.doc.createElement(o)}createComment(o){return this.doc.createComment(o)}createText(o){return this.doc.createTextNode(o)}appendChild(o,e){(Nd(o)?o.content:o).appendChild(e)}insertBefore(o,e,t){o&&(Nd(o)?o.content:o).insertBefore(e,t)}removeChild(o,e){e.remove()}selectRootElement(o,e){let t=typeof o=="string"?this.doc.querySelector(o):o;if(!t)throw new oe(-5104,!1);return e||(t.textContent=""),t}parentNode(o){return o.parentNode}nextSibling(o){return o.nextSibling}setAttribute(o,e,t,n){if(n){e=n+":"+e;let a=Xs[n];a?o.setAttributeNS(a,e,t):o.setAttribute(e,t)}else o.setAttribute(e,t)}removeAttribute(o,e,t){if(t){let n=Xs[t];n?o.removeAttributeNS(n,e):o.removeAttribute(`${t}:${e}`)}else o.removeAttribute(e)}addClass(o,e){o.classList.add(e)}removeClass(o,e){o.classList.remove(e)}setStyle(o,e,t,n){n&(zn.DashCase|zn.Important)?o.style.setProperty(e,t,n&zn.Important?"important":""):o.style[e]=t}removeStyle(o,e,t){t&zn.DashCase?o.style.removeProperty(e):o.style[e]=""}setProperty(o,e,t){o!=null&&(o[e]=t)}setValue(o,e){o.nodeValue=e}listen(o,e,t,n){if(typeof o=="string"&&(o=Vt().getGlobalEventTarget(this.doc,o),!o))throw new oe(-5102,!1);let a=this.decoratePreventDefault(t);return this.tracingService?.wrapEventListener&&(a=this.tracingService.wrapEventListener(o,e,a)),this.eventManager.addEventListener(o,e,a,n)}decoratePreventDefault(o){return e=>{if(e==="__ngUnwrap__")return o;o(e)===!1&&e.preventDefault()}}};function Nd(i){return i.tagName==="TEMPLATE"&&i.content!==void 0}var Qa=class extends zo{hostEl;sharedStylesHost;shadowRoot;constructor(o,e,t,n,a,r,m,h){super(o,n,a,m),this.hostEl=e,this.sharedStylesHost=h,this.shadowRoot=e.attachShadow({mode:"open"}),this.sharedStylesHost&&this.sharedStylesHost.addHost(this.shadowRoot);let g=t.styles;g=Bd(t.id,g);for(let y of g){let B=document.createElement("style");r&&B.setAttribute("nonce",r),B.textContent=y,this.shadowRoot.appendChild(B)}let _=t.getExternalStyles?.();if(_)for(let y of _){let B=Zs(y,n);r&&B.setAttribute("nonce",r),this.shadowRoot.appendChild(B)}}nodeOrShadowRoot(o){return o===this.hostEl?this.shadowRoot:o}appendChild(o,e){return super.appendChild(this.nodeOrShadowRoot(o),e)}insertBefore(o,e,t){return super.insertBefore(this.nodeOrShadowRoot(o),e,t)}removeChild(o,e){return super.removeChild(null,e)}parentNode(o){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(o)))}destroy(){this.sharedStylesHost&&this.sharedStylesHost.removeHost(this.shadowRoot)}},jo=class extends zo{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(o,e,t,n,a,r,m,h){super(o,a,r,m),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=n;let g=t.styles;this.styles=h?Bd(h,g):g,this.styleUrls=t.getExternalStyles?.(h)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&qc.size===0&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},Ja=class extends jo{contentAttr;hostAttr;constructor(o,e,t,n,a,r,m,h){let g=n+"-"+t.id;super(o,e,t,a,r,m,h,g),this.contentAttr=nf(g),this.hostAttr=of(g)}applyToHost(o){this.applyStyles(),this.setAttribute(o,this.hostAttr,"")}createElement(o,e){let t=super.createElement(o,e);return super.setAttribute(t,this.contentAttr,""),t}};var tr=class i extends Oo{supportsDOMEvents=!0;static makeCurrent(){Ns(new i)}onAndCancel(o,e,t,n){return o.addEventListener(e,t,n),()=>{o.removeEventListener(e,t,n)}}dispatchEvent(o,e){o.dispatchEvent(e)}remove(o){o.remove()}createElement(o,e){return e=e||this.getDefaultDocument(),e.createElement(o)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(o){return o.nodeType===Node.ELEMENT_NODE}isShadowRoot(o){return o instanceof DocumentFragment}getGlobalEventTarget(o,e){return e==="window"?window:e==="document"?o:e==="body"?o.body:null}getBaseHref(o){let e=rf();return e==null?null:sf(e)}resetBaseElement(){Ho=null}getUserAgent(){return window.navigator.userAgent}getCookie(o){return Bo(document.cookie,o)}},Ho=null;function rf(){return Ho=Ho||document.head.querySelector("base"),Ho?Ho.getAttribute("href"):null}function sf(i){return new URL(i,document.baseURI).pathname}var Vd=["alt","control","meta","shift"],lf={"\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"},cf={alt:i=>i.altKey,control:i=>i.ctrlKey,meta:i=>i.metaKey,shift:i=>i.shiftKey},zd=(()=>{class i extends Vo{constructor(e){super(e)}supports(e){return i.parseEventName(e)!=null}addEventListener(e,t,n,a){let r=i.parseEventName(t),m=i.eventCallback(r.fullKey,n,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Vt().onAndCancel(e,r.domEventName,m,a))}static parseEventName(e){let t=e.toLowerCase().split("."),n=t.shift();if(t.length===0||!(n==="keydown"||n==="keyup"))return null;let a=i._normalizeKey(t.pop()),r="",m=t.indexOf("code");if(m>-1&&(t.splice(m,1),r="code."),Vd.forEach(g=>{let _=t.indexOf(g);_>-1&&(t.splice(_,1),r+=g+".")}),r+=a,t.length!=0||a.length===0)return null;let h={};return h.domEventName=n,h.fullKey=r,h}static matchEventFullKeyCode(e,t){let n=lf[e.key]||e.key,a="";return t.indexOf("code.")>-1&&(n=e.code,a="code."),n==null||!n?!1:(n=n.toLowerCase(),n===" "?n="space":n==="."&&(n="dot"),Vd.forEach(r=>{if(r!==n){let m=cf[r];m(e)&&(a+=r+".")}}),a+=n,a===t)}static eventCallback(e,t,n){return a=>{i.matchEventFullKeyCode(a,e)&&n.runGuarded(()=>t(a))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(t){return new(t||i)(ee(G))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})();function tl(i,o,e){return Ce(this,null,function*(){let t=L({rootComponent:i},df(o,e));return td(t)})}function df(i,o){return{platformRef:o?.platformRef,appProviders:[...ff,...i?.providers??[]],platformProviders:pf}}function mf(){tr.makeCurrent()}function uf(){return new cn}function hf(){return Vc(document),document}var pf=[{provide:Nn,useValue:Ks},{provide:Lc,useValue:mf,multi:!0},{provide:G,useFactory:hf}];var ff=[{provide:Pc,useValue:"root"},{provide:cn,useFactory:uf},{provide:er,useClass:Za,multi:!0},{provide:er,useClass:zd,multi:!0},un,{provide:Eo,useClass:Js},{provide:Js,useExisting:Eo},Qs,{provide:et,useExisting:un},[]];var Si=class i{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(o){o?typeof o=="string"?this.lazyInit=()=>{this.headers=new Map,o.split(`
|
|
2
|
+
`).forEach(e=>{let t=e.indexOf(":");if(t>0){let n=e.slice(0,t),a=e.slice(t+1).trim();this.addHeaderEntry(n,a)}})}:typeof Headers<"u"&&o instanceof Headers?(this.headers=new Map,o.forEach((e,t)=>{this.addHeaderEntry(t,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(o).forEach(([e,t])=>{this.setHeaderEntries(e,t)})}:this.headers=new Map}has(o){return this.init(),this.headers.has(o.toLowerCase())}get(o){this.init();let e=this.headers.get(o.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(o){return this.init(),this.headers.get(o.toLowerCase())||null}append(o,e){return this.clone({name:o,value:e,op:"a"})}set(o,e){return this.clone({name:o,value:e,op:"s"})}delete(o,e){return this.clone({name:o,value:e,op:"d"})}maybeSetNormalizedName(o,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,o)}init(){this.lazyInit&&(this.lazyInit instanceof i?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(o=>this.applyUpdate(o)),this.lazyUpdate=null))}copyFrom(o){o.init(),Array.from(o.headers.keys()).forEach(e=>{this.headers.set(e,o.headers.get(e)),this.normalizedNames.set(e,o.normalizedNames.get(e))})}clone(o){let e=new i;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof i?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([o]),e}applyUpdate(o){let e=o.name.toLowerCase();switch(o.op){case"a":case"s":let t=o.value;if(typeof t=="string"&&(t=[t]),t.length===0)return;this.maybeSetNormalizedName(o.name,e);let n=(o.op==="a"?this.headers.get(e):void 0)||[];n.push(...t),this.headers.set(e,n);break;case"d":let a=o.value;if(!a)this.headers.delete(e),this.normalizedNames.delete(e);else{let r=this.headers.get(e);if(!r)return;r=r.filter(m=>a.indexOf(m)===-1),r.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,r)}break}}addHeaderEntry(o,e){let t=o.toLowerCase();this.maybeSetNormalizedName(o,t),this.headers.has(t)?this.headers.get(t).push(e):this.headers.set(t,[e])}setHeaderEntries(o,e){let t=(Array.isArray(e)?e:[e]).map(a=>a.toString()),n=o.toLowerCase();this.headers.set(n,t),this.maybeSetNormalizedName(o,n)}forEach(o){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>o(this.normalizedNames.get(e),this.headers.get(e)))}};var nr=class{map=new Map;set(o,e){return this.map.set(o,e),this}get(o){return this.map.has(o)||this.map.set(o,o.defaultValue()),this.map.get(o)}delete(o){return this.map.delete(o),this}has(o){return this.map.has(o)}keys(){return this.map.keys()}},or=class{encodeKey(o){return jd(o)}encodeValue(o){return jd(o)}decodeKey(o){return decodeURIComponent(o)}decodeValue(o){return decodeURIComponent(o)}};function gf(i,o){let e=new Map;return i.length>0&&i.replace(/^\?/,"").split("&").forEach(n=>{let a=n.indexOf("="),[r,m]=a==-1?[o.decodeKey(n),""]:[o.decodeKey(n.slice(0,a)),o.decodeValue(n.slice(a+1))],h=e.get(r)||[];h.push(m),e.set(r,h)}),e}var _f=/%(\d[a-f0-9])/gi,bf={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function jd(i){return encodeURIComponent(i).replace(_f,(o,e)=>bf[e]??o)}function ir(i){return`${i}`}var ki=class i{map;encoder;updates=null;cloneFrom=null;constructor(o={}){if(this.encoder=o.encoder||new or,o.fromString){if(o.fromObject)throw new oe(2805,!1);this.map=gf(o.fromString,this.encoder)}else o.fromObject?(this.map=new Map,Object.keys(o.fromObject).forEach(e=>{let t=o.fromObject[e],n=Array.isArray(t)?t.map(ir):[ir(t)];this.map.set(e,n)})):this.map=null}has(o){return this.init(),this.map.has(o)}get(o){this.init();let e=this.map.get(o);return e?e[0]:null}getAll(o){return this.init(),this.map.get(o)||null}keys(){return this.init(),Array.from(this.map.keys())}append(o,e){return this.clone({param:o,value:e,op:"a"})}appendAll(o){let e=[];return Object.keys(o).forEach(t=>{let n=o[t];Array.isArray(n)?n.forEach(a=>{e.push({param:t,value:a,op:"a"})}):e.push({param:t,value:n,op:"a"})}),this.clone(e)}set(o,e){return this.clone({param:o,value:e,op:"s"})}delete(o,e){return this.clone({param:o,value:e,op:"d"})}toString(){return this.init(),this.keys().map(o=>{let e=this.encoder.encodeKey(o);return this.map.get(o).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(o=>o!=="").join("&")}clone(o){let e=new i({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(o),e}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(o=>this.map.set(o,this.cloneFrom.map.get(o))),this.updates.forEach(o=>{switch(o.op){case"a":case"s":let e=(o.op==="a"?this.map.get(o.param):void 0)||[];e.push(ir(o.value)),this.map.set(o.param,e);break;case"d":if(o.value!==void 0){let t=this.map.get(o.param)||[],n=t.indexOf(ir(o.value));n!==-1&&t.splice(n,1),t.length>0?this.map.set(o.param,t):this.map.delete(o.param)}else{this.map.delete(o.param);break}}}),this.cloneFrom=this.updates=null)}};function vf(i){switch(i){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function Hd(i){return typeof ArrayBuffer<"u"&&i instanceof ArrayBuffer}function Ud(i){return typeof Blob<"u"&&i instanceof Blob}function Gd(i){return typeof FormData<"u"&&i instanceof FormData}function yf(i){return typeof URLSearchParams<"u"&&i instanceof URLSearchParams}var il="Content-Type",$d="Accept",qd="text/plain",Kd="application/json",Cf=`${Kd}, ${qd}, */*`,Un=class i{url;body=null;headers;context;reportProgress=!1;reportUploadProgress=!1;reportDownloadProgress=!1;withCredentials=!1;credentials;keepalive=!1;cache;priority;mode;redirect;referrer;integrity;referrerPolicy;responseType="json";method;params;urlWithParams;transferCache;timeout;constructor(o,e,t,n){this.url=e,this.method=o.toUpperCase();let a;if(vf(this.method)||n?(this.body=t!==void 0?t:null,a=n):a=t,a){if(this.reportProgress=!!a.reportProgress,this.reportUploadProgress=!!a.reportUploadProgress,this.reportDownloadProgress=!!a.reportDownloadProgress,this.withCredentials=!!a.withCredentials,this.keepalive=!!a.keepalive,a.responseType&&(this.responseType=a.responseType),a.headers&&(this.headers=a.headers),a.context&&(this.context=a.context),a.params&&(this.params=a.params),a.priority&&(this.priority=a.priority),a.cache&&(this.cache=a.cache),a.credentials&&(this.credentials=a.credentials),typeof a.timeout=="number"){if(a.timeout<1||!Number.isInteger(a.timeout))throw new oe(2822,"");this.timeout=a.timeout}a.mode&&(this.mode=a.mode),a.redirect&&(this.redirect=a.redirect),a.integrity&&(this.integrity=a.integrity),a.referrer!==void 0&&(this.referrer=a.referrer),a.referrerPolicy&&(this.referrerPolicy=a.referrerPolicy),this.transferCache=a.transferCache}if(this.headers??=new Si,this.context??=new nr,!this.params)this.params=new ki,this.urlWithParams=e;else{let r=this.params.toString();if(r.length===0)this.urlWithParams=e;else{let m=e,h="",g=e.indexOf("#");g!==-1&&(h=e.substring(g),m=e.substring(0,g));let _=m.indexOf("?"),y=_===-1?"?":_<m.length-1?"&":"";this.urlWithParams=m+y+r+h}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||Hd(this.body)||Ud(this.body)||Gd(this.body)||yf(this.body)?this.body:this.body instanceof ki?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||Gd(this.body)?null:Ud(this.body)?this.body.type||null:Hd(this.body)?null:typeof this.body=="string"?qd:this.body instanceof ki?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?Kd:null}clone(o={}){let e=o.method||this.method,t=o.url||this.url,n=o.responseType||this.responseType,a=o.keepalive??this.keepalive,r=o.priority||this.priority,m=o.cache||this.cache,h=o.mode||this.mode,g=o.redirect||this.redirect,_=o.credentials||this.credentials,y=o.referrer??this.referrer,B=o.integrity||this.integrity,U=o.referrerPolicy||this.referrerPolicy,J=o.transferCache??this.transferCache,me=o.timeout??this.timeout,re=o.body!==void 0?o.body:this.body,ke=o.withCredentials??this.withCredentials,nt=o.reportProgress??this.reportProgress,Qt=o.reportUploadProgress??this.reportUploadProgress,ui=o.reportDownloadProgress??this.reportDownloadProgress,Ri=o.headers||this.headers,Jt=o.params||this.params,ka=o.context??this.context;return o.setHeaders!==void 0&&(Ri=Object.keys(o.setHeaders).reduce((On,ln)=>On.set(ln,o.setHeaders[ln]),Ri)),o.setParams&&(Jt=Object.keys(o.setParams).reduce((On,ln)=>On.set(ln,o.setParams[ln]),Jt)),new i(e,t,re,{params:Jt,headers:Ri,context:ka,reportProgress:nt,reportUploadProgress:Qt,reportDownloadProgress:ui,responseType:n,withCredentials:ke,transferCache:J,keepalive:a,cache:m,priority:r,timeout:me,mode:h,redirect:g,credentials:_,referrer:y,integrity:B,referrerPolicy:U})}},Gn=(function(i){return i[i.Sent=0]="Sent",i[i.UploadProgress=1]="UploadProgress",i[i.ResponseHeader=2]="ResponseHeader",i[i.DownloadProgress=3]="DownloadProgress",i[i.Response=4]="Response",i[i.User=5]="User",i})(Gn||{}),$n=class{headers;status;statusText;url;ok;type;redirected;responseType;constructor(o,e=200,t="OK"){this.headers=o.headers||new Si,this.status=o.status!==void 0?o.status:e,this.statusText=o.statusText||t,this.url=o.url||null,this.redirected=o.redirected,this.responseType=o.responseType,this.ok=this.status>=200&&this.status<300}},ar=class i extends $n{constructor(o={}){super(o)}type=Gn.ResponseHeader;clone(o={}){return new i({headers:o.headers||this.headers,status:o.status!==void 0?o.status:this.status,statusText:o.statusText||this.statusText,url:o.url||this.url||void 0})}},Uo=class i extends $n{body;constructor(o={}){super(o),this.body=o.body!==void 0?o.body:null}type=Gn.Response;clone(o={}){return new i({body:o.body!==void 0?o.body:this.body,headers:o.headers||this.headers,status:o.status!==void 0?o.status:this.status,statusText:o.statusText||this.statusText,url:o.url||this.url||void 0,redirected:o.redirected??this.redirected,responseType:o.responseType??this.responseType})}},hn=class extends $n{name="HttpErrorResponse";message;error;ok=!1;constructor(o){super(o,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${o.url||"(unknown url)"}`:this.message=`Http failure response for ${o.url||"(unknown url)"}: ${o.status} ${o.statusText}`,this.error=o.error||null}},xf=200;var wf=/^\)\]\}',?\n/,iw=1024*1024,Yd=new b("",{factory:()=>null}),rr=(()=>{class i{fetchImpl=s(ol,{optional:!0})?.fetch??((...e)=>globalThis.fetch(...e));ngZone=s(j);destroyRef=s(ni);maxResponseSize=s(Yd);handle(e){return new ft(t=>{let n=new AbortController;this.doRequest(e,n.signal,t).then(al,r=>t.error(new hn({error:r})));let a;return e.timeout&&(a=this.ngZone.runOutsideAngular(()=>setTimeout(()=>{n.signal.aborted||n.abort(new DOMException("signal timed out","TimeoutError"))},e.timeout))),()=>{a!==void 0&&clearTimeout(a),n.abort()}})}doRequest(e,t,n){return Ce(this,null,function*(){let a=this.createRequestInit(e),r;try{let re=this.ngZone.runOutsideAngular(()=>this.fetchImpl(e.urlWithParams,L({signal:t},a)));Df(re),n.next({type:Gn.Sent}),r=yield re}catch(re){n.error(new hn({error:re,status:re.status??0,statusText:re.statusText,url:e.urlWithParams,headers:re.headers}));return}let m=new Si(r.headers),h=r.statusText,g=r.url||e.urlWithParams,_=r.status,y=null,B=e.reportProgress||e.reportDownloadProgress;if(B&&n.next(new ar({headers:m,status:_,statusText:h,url:g})),r.body){let re=r.headers.get("content-length"),ke=re!==null?Number(re):NaN;this.maxResponseSize!==null&&Number.isFinite(ke)&&ke>this.maxResponseSize&&Wd(this.maxResponseSize);let nt=[],Qt=r.body.getReader(),ui=0,Ri,Jt,ka=typeof Zone<"u"&&Zone.current,On=!1;if(yield this.ngZone.runOutsideAngular(()=>Ce(this,null,function*(){for(;;){if(this.destroyRef.destroyed){yield Qt.cancel(),On=!0;break}let{done:Do,value:ys}=yield Qt.read();if(Do)break;if(nt.push(ys),ui+=ys.length,this.maxResponseSize!==null&&ui>this.maxResponseSize&&(yield Qt.cancel(),Wd(this.maxResponseSize)),B){Jt=e.responseType==="text"?(Jt??"")+(Ri??=new TextDecoder).decode(ys,{stream:!0}):void 0;let Ec=()=>n.next({type:Gn.DownloadProgress,total:Number.isFinite(ke)?ke:void 0,loaded:ui,partialText:Jt});ka?ka.run(Ec):Ec()}}})),On){n.complete();return}let ln=this.concatChunks(nt,ui);try{let Do=r.headers.get(il)??"";y=this.parseBody(e,ln,Do,_)}catch(Do){n.error(new hn({error:Do,headers:new Si(r.headers),status:r.status,statusText:r.statusText,url:r.url||e.urlWithParams}));return}}_===0&&(_=y?xf:0);let U=_>=200&&_<300,J=r.redirected,me=r.type;U?(n.next(new Uo({body:y,headers:m,status:_,statusText:h,url:g,redirected:J,responseType:me})),n.complete()):n.error(new hn({error:y,headers:m,status:_,statusText:h,url:g,redirected:J,responseType:me}))})}parseBody(e,t,n,a){switch(e.responseType){case"json":let r=new TextDecoder().decode(t).replace(wf,"");if(r==="")return null;try{return JSON.parse(r)}catch(m){if(a<200||a>=300)return r;throw m}case"text":return new TextDecoder().decode(t);case"blob":return new Blob([t],{type:n});case"arraybuffer":return t.buffer}}createRequestInit(e){if(e.reportUploadProgress)throw new oe(2824,!1);let t={},n;if(n=e.credentials,e.withCredentials&&(n="include"),e.headers.forEach((a,r)=>t[a]=r.join(",")),e.headers.has($d)||(t[$d]=Cf),!e.headers.has(il)){let a=e.detectContentTypeHeader();a!==null&&(t[il]=a)}return{body:e.serializeBody(),method:e.method,headers:t,credentials:n,keepalive:e.keepalive,cache:e.cache,priority:e.priority,mode:e.mode,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity,referrerPolicy:e.referrerPolicy}}concatChunks(e,t){let n=new Uint8Array(t),a=0;for(let r of e)n.set(r,a),a+=r.length;return n}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),ol=class{};function al(){}function Df(i){i.then(al,al)}function Wd(i){throw new oe(-2825,!1)}function kf(i,o){return o(i)}function Sf(i,o,e){return(t,n)=>Nc(e,()=>o(t,a=>i(a,n)))}var rl=new b("",{factory:()=>[]}),Xd=new b(""),Zd=new b("",{factory:()=>!0});var sl=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(rr),n},providedIn:"root"})}return i})();var sr=(()=>{class i{backend;injector;chain=null;pendingTasks=s(Es);contributeToStability=s(Zd);constructor(e,t){this.backend=e,this.injector=t}handle(e){if(this.chain===null){let t=Array.from(new Set([...this.injector.get(rl),...this.injector.get(Xd,[])]));this.chain=t.reduceRight((n,a)=>Sf(n,a,this.injector),kf)}if(this.contributeToStability){let t=this.pendingTasks.add();return this.chain(e,n=>this.backend.handle(n)).pipe(Ta(t))}else return this.chain(e,t=>this.backend.handle(t))}static \u0275fac=function(t){return new(t||i)(ee(sl),ee(ii))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),ll=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(sr),n},providedIn:"root"})}return i})();function nl(i,o){return L({body:o},i)}var jt=(()=>{class i{handler;constructor(e){this.handler=e}request(e,t,n={}){let a;if(e instanceof Un)a=e;else{let h;n.headers instanceof Si?h=n.headers:h=new Si(n.headers);let g;n.params&&(n.params instanceof ki?g=n.params:g=new ki({fromObject:n.params})),a=new Un(e,t,n.body!==void 0?n.body:null,{headers:h,context:n.context,params:g,reportProgress:n.reportProgress,reportUploadProgress:n.reportUploadProgress,reportDownloadProgress:n.reportDownloadProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials,transferCache:n.transferCache,keepalive:n.keepalive,priority:n.priority,cache:n.cache,mode:n.mode,redirect:n.redirect,credentials:n.credentials,referrer:n.referrer,referrerPolicy:n.referrerPolicy,integrity:n.integrity,timeout:n.timeout})}let r=be(a).pipe(Tc(h=>this.handler.handle(h)));if(e instanceof Un||n.observe==="events")return r;let m=r.pipe(ge(h=>h instanceof Uo));switch(n.observe||"body"){case"body":switch(a.responseType){case"arraybuffer":return m.pipe(Ae(h=>{if(h.body!==null&&!(h.body instanceof ArrayBuffer))throw new oe(2806,!1);return h.body}));case"blob":return m.pipe(Ae(h=>{if(h.body!==null&&!(h.body instanceof Blob))throw new oe(2807,!1);return h.body}));case"text":return m.pipe(Ae(h=>{if(h.body!==null&&typeof h.body!="string")throw new oe(2808,!1);return h.body}));default:return m.pipe(Ae(h=>h.body))}case"response":return m;default:throw new oe(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 ki().append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,t={}){return this.request("OPTIONS",e,t)}patch(e,t,n={}){return this.request("PATCH",e,nl(n,t))}post(e,t,n={}){return this.request("POST",e,nl(n,t))}put(e,t,n={}){return this.request("PUT",e,nl(n,t))}static \u0275fac=function(t){return new(t||i)(ee(ll))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Ef=new b("",{factory:()=>!0}),Mf="XSRF-TOKEN",Af=new b("",{factory:()=>Mf}),If="X-XSRF-TOKEN",Tf=new b("",{factory:()=>If}),Rf=(()=>{class i{cookieName=s(Af);doc=s(G);lastCookieString="";lastToken=null;parseCount=0;getToken(){let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Bo(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Qd=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(Rf),n},providedIn:"root"})}return i})();function Of(i,o){if(!s(Ef)||i.method==="GET"||i.method==="HEAD")return o(i);try{let n=s(Hn).href,{origin:a}=new URL(n),{origin:r}=new URL(i.url,a);if(a!==r)return o(i)}catch(n){return o(i)}let e=s(Qd).getToken(),t=s(Tf);return e!=null&&!i.headers.has(t)&&(i=i.clone({headers:i.headers.set(t,e)})),o(i)}var cl=(function(i){return i[i.Interceptors=0]="Interceptors",i[i.LegacyInterceptors=1]="LegacyInterceptors",i[i.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",i[i.NoXsrfProtection=3]="NoXsrfProtection",i[i.JsonpSupport=4]="JsonpSupport",i[i.RequestsMadeViaParent=5]="RequestsMadeViaParent",i[i.Fetch=6]="Fetch",i[i.Xhr=7]="Xhr",i})(cl||{});function Ff(i,o){return{\u0275kind:i,\u0275providers:o}}function dl(...i){let o=[jt,rr,sr,{provide:ll,useExisting:sr},{provide:sl,useFactory:()=>s(rr)},{provide:rl,useValue:Of,multi:!0}];for(let e of i)o.push(...e.\u0275providers);return So(o)}function ml(i){return Ff(cl.Interceptors,i.map(o=>({provide:rl,useValue:o,multi:!0})))}var Go=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=ae({token:i,factory:function(t){let n=null;return t?n=new(t||i):n=ee(Lf),n},providedIn:"root"})}return i})(),Lf=(()=>{class i extends Go{_doc=s(G);sanitize(e,t){if(t==null)return null;switch(e){case gt.NONE:return t;case gt.HTML:return Vn(t,"HTML")?Bn(t):Wc(this._doc,String(t)).toString();case gt.STYLE:return Vn(t,"Style")?Bn(t):t;case gt.SCRIPT:if(Vn(t,"Script"))return Bn(t);throw new oe(5200,!1);case gt.URL:return Vn(t,"URL")?Bn(t):$c(String(t));case gt.RESOURCE_URL:if(Vn(t,"ResourceURL"))return Bn(t);throw new oe(5201,!1);default:throw new oe(5202,!1)}}bypassSecurityTrustHtml(e){return zc(e)}bypassSecurityTrustStyle(e){return jc(e)}bypassSecurityTrustScript(e){return Hc(e)}bypassSecurityTrustUrl(e){return Uc(e)}bypassSecurityTrustResourceUrl(e){return Gc(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Vf=(()=>{class i extends ja{constructor(e,t,n){super(e,t,n)}ngOnDestroy(){this.flush()}static \u0275fac=function(t){return new(t||i)(ee(G),ee(Ro),ee(za))};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})();function zf(){return new od}function jf(){return new rd(s(un),s(ja),s(j))}var Jd=[{provide:za,useFactory:zf},{provide:ja,useClass:Vf},{provide:et,useFactory:jf}],iD=[{provide:Ro,useClass:nd},{provide:xi,useValue:"NoopAnimations"},...Jd],Hf=[{provide:Ro,useFactory:()=>new ad},{provide:xi,useFactory:()=>"BrowserAnimations"},...Jd];function em(){return Fa("NgEagerAnimations"),[...Hf]}var Uf="@",Gf=(()=>{class i{doc;delegate;zone;animationType;moduleImpl;_rendererFactoryPromise=null;scheduler=null;injector=s(q);loadingSchedulerFn=s($f,{optional:!0});_engine;constructor(e,t,n,a,r){this.doc=e,this.delegate=t,this.zone=n,this.animationType=a,this.moduleImpl=r}ngOnDestroy(){this._engine?.flush()}loadImpl(){let e=()=>this.moduleImpl??import("./chunk-URN45YIO.js").then(n=>n),t;return this.loadingSchedulerFn?t=this.loadingSchedulerFn(e):t=e(),t.catch(n=>{throw new oe(5300,!1)}).then(({\u0275createEngine:n,\u0275AnimationRendererFactory:a})=>{this._engine=n(this.animationType,this.doc);let r=new a(this.delegate,this._engine,this.zone);return this.delegate=r,r})}createRenderer(e,t){let n=this.delegate.createRenderer(e,t);if(n.\u0275type===0)return n;typeof n.throwOnSyntheticProps=="boolean"&&(n.throwOnSyntheticProps=!1);let a=new ul(n);return t?.data?.animation&&!this._rendererFactoryPromise&&(this._rendererFactoryPromise=this.loadImpl()),this._rendererFactoryPromise?.then(r=>{let m=r.createRenderer(e,t);a.use(m),this.scheduler??=this.injector.get(Bc,null,{optional:!0}),this.scheduler?.notify(10)}).catch(r=>{a.use(n)}),a}begin(){this.delegate.begin?.()}end(){this.delegate.end?.()}whenRenderingDone(){return this.delegate.whenRenderingDone?.()??Promise.resolve()}componentReplaced(e){this._engine?.flush(),this.delegate.componentReplaced?.(e)}static \u0275fac=function(t){Pa()};static \u0275prov=ae({token:i,factory:i.\u0275fac})}return i})(),ul=class{delegate;replay=[];\u0275type=1;constructor(o){this.delegate=o}use(o){if(this.delegate=o,this.replay!==null){for(let e of this.replay)e(o);this.replay=null}}get data(){return this.delegate.data}destroy(){this.replay=null,this.delegate.destroy()}createElement(o,e){return this.delegate.createElement(o,e)}createComment(o){return this.delegate.createComment(o)}createText(o){return this.delegate.createText(o)}get destroyNode(){return this.delegate.destroyNode}appendChild(o,e){this.delegate.appendChild(o,e)}insertBefore(o,e,t,n){this.delegate.insertBefore(o,e,t,n)}removeChild(o,e,t,n){this.delegate.removeChild(o,e,t,n)}selectRootElement(o,e){return this.delegate.selectRootElement(o,e)}parentNode(o){return this.delegate.parentNode(o)}nextSibling(o){return this.delegate.nextSibling(o)}setAttribute(o,e,t,n){this.delegate.setAttribute(o,e,t,n)}removeAttribute(o,e,t){this.delegate.removeAttribute(o,e,t)}addClass(o,e){this.delegate.addClass(o,e)}removeClass(o,e){this.delegate.removeClass(o,e)}setStyle(o,e,t,n){this.delegate.setStyle(o,e,t,n)}removeStyle(o,e,t){this.delegate.removeStyle(o,e,t)}setProperty(o,e,t){this.shouldReplay(e)&&this.replay.push(n=>n.setProperty(o,e,t)),this.delegate.setProperty(o,e,t)}setValue(o,e){this.delegate.setValue(o,e)}listen(o,e,t,n){return this.shouldReplay(e)&&this.replay.push(a=>a.listen(o,e,t,n)),this.delegate.listen(o,e,t,n)}shouldReplay(o){return this.replay!==null&&o.startsWith(Uf)}},$f=new b("");function tm(i="animations"){return Fa("NgAsyncAnimations"),So([{provide:et,useFactory:()=>new Gf(s(G),s(un),s(j),i)},{provide:xi,useValue:i==="noop"?"NoopAnimations":"BrowserAnimations"}])}var lr="asm_token",cr=(()=>{class i{constructor(){this.http=s(jt),this.authState=new Fn(this.hasToken())}login(e){return Ce(this,null,function*(){try{let t=yield je(this.http.post("/api/auth/login",{password:e}));return localStorage.setItem(lr,t.token),this.authState.next(!0),!0}catch(t){return!1}})}logout(){localStorage.removeItem(lr),this.authState.next(!1)}getToken(){return localStorage.getItem(lr)}isAuthenticated(){return this.hasToken()}hasToken(){return!!localStorage.getItem(lr)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var im=(i,o)=>{let e=s(cr),t=e.getToken(),n=i.url.includes("/api/auth/login"),a=t&&!n?i.clone({setHeaders:{Authorization:`Bearer ${t}`}}):i;return o(a).pipe(hi(r=>(r.status===401&&!n&&e.logout(),Ma(()=>r))))};var nm={providers:[ed({eventCoalescing:!0}),dl(ml([im])),em(),tm()]};var hl;try{hl=typeof Intl<"u"&&Intl.v8BreakIterator}catch(i){hl=!1}var se=(()=>{class i{_platformId=s(Nn);isBrowser=this._platformId?Rd(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||hl)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function Ei(i){return Array.isArray(i)?i:[i]}var om=new Set,pn,Wn=(()=>{class i{_platform=s(se);_nonce=s(Ln,{optional:!0});_matchMedia;constructor(){this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):qf}matchMedia(e){return(this._platform.WEBKIT||this._platform.BLINK)&&Wf(e,this._nonce),this._matchMedia(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function Wf(i,o){if(!om.has(i))try{pn||(pn=document.createElement("style"),o&&pn.setAttribute("nonce",o),pn.setAttribute("type","text/css"),document.head.appendChild(pn)),pn.sheet&&(pn.sheet.insertRule(`@media ${i.replace(/[{}]/g,"")} {body{ }}`,0),om.add(i))}catch(e){console.error(e)}}function qf(i){return{matches:i==="all"||i==="",media:i,addListener:()=>{},removeListener:()=>{}}}var fn=(()=>{class i{_mediaMatcher=s(Wn);_zone=s(j);_queries=new Map;_destroySubject=new M;ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(e){return am(Ei(e)).some(n=>this._registerQuery(n).mql.matches)}observe(e){let n=am(Ei(e)).map(r=>this._registerQuery(r).observable),a=Pn(n);return a=Ic(a.pipe(ot(1)),a.pipe(Ra(1),ei(0))),a.pipe(Ae(r=>{let m={matches:!1,breakpoints:{}};return r.forEach(({matches:h,query:g})=>{m.matches=m.matches||h,m.breakpoints[g]=h}),m}))}_registerQuery(e){if(this._queries.has(e))return this._queries.get(e);let t=this._mediaMatcher.matchMedia(e),a={observable:new ft(r=>{let m=h=>this._zone.run(()=>r.next(h));return t.addListener(m),()=>{t.removeListener(m)}}).pipe(Ie(t),Ae(({matches:r})=>({query:e,matches:r})),ne(this._destroySubject)),mql:t};return this._queries.set(e,a),a}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function am(i){return i.map(o=>o.split(",")).reduce((o,e)=>o.concat(e)).map(o=>o.trim())}var dr={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"};var Kf=new b("MATERIAL_ANIMATIONS"),rm=null;function pl(){return s(Kf,{optional:!0})?.animationsDisabled||s(xi,{optional:!0})==="NoopAnimations"?"di-disabled":(rm??=s(Wn).matchMedia("(prefers-reduced-motion)").matches,rm?"reduced-motion":"enabled")}function de(){return pl()!=="enabled"}var Yf=new b("cdk-dir-doc",{providedIn:"root",factory:()=>s(G)}),Xf=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function sm(i){let o=i?.toLowerCase()||"";return o==="auto"&&typeof navigator<"u"&&navigator?.language?Xf.test(navigator.language)?"rtl":"ltr":o==="rtl"?"rtl":"ltr"}var Ue=(()=>{class i{get value(){return this.valueSignal()}valueSignal=N("ltr");change=new $;constructor(){let e=s(Yf,{optional:!0});if(e){let t=e.body?e.body.dir:null,n=e.documentElement?e.documentElement.dir:null;this.valueSignal.set(sm(t||n||"ltr"))}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Q=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function Zf(i,o){i&1&&ct(0,"div",2)}var Qf=new b("MAT_PROGRESS_BAR_DEFAULT_OPTIONS");var qn=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_changeDetectorRef=s(ie);_renderer=s(ue);_cleanupTransitionEnd;constructor(){let e=pl(),t=s(Qf,{optional:!0});this._isNoopAnimation=e==="di-disabled",e==="reduced-motion"&&this._elementRef.nativeElement.classList.add("mat-progress-bar-reduced-motion"),t&&(t.color&&(this.color=this._defaultColor=t.color),this.mode=t.mode||this.mode)}_isNoopAnimation;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;_defaultColor="primary";get value(){return this._value}set value(e){this._value=lm(e||0),this._changeDetectorRef.markForCheck()}_value=0;get bufferValue(){return this._bufferValue||0}set bufferValue(e){this._bufferValue=lm(e||0),this._changeDetectorRef.markForCheck()}_bufferValue=0;animationEnd=new $;get mode(){return this._mode}set mode(e){this._mode=e,this._changeDetectorRef.markForCheck()}_mode="determinate";ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{this._cleanupTransitionEnd=this._renderer.listen(this._elementRef.nativeElement,"transitionend",this._transitionendHandler)})}ngOnDestroy(){this._cleanupTransitionEnd?.()}_getPrimaryBarTransform(){return`scaleX(${this._isIndeterminate()?1:this.value/100})`}_getBufferBarFlexBasis(){return`${this.mode==="buffer"?this.bufferValue:100}%`}_isIndeterminate(){return this.mode==="indeterminate"||this.mode==="query"}_transitionendHandler=e=>{this.animationEnd.observers.length===0||!e.target||!e.target.classList.contains("mdc-linear-progress__primary-bar")||(this.mode==="determinate"||this.mode==="buffer")&&this._ngZone.run(()=>this.animationEnd.next({value:this.value}))};static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-progress-bar"]],hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-mdc-progress-bar","mdc-linear-progress"],hostVars:10,hostBindings:function(t,n){t&2&&(Y("aria-valuenow",n._isIndeterminate()?null:n.value)("mode",n.mode),Qe("mat-"+n.color),f("_mat-animation-noopable",n._isNoopAnimation)("mdc-linear-progress--animation-ready",!n._isNoopAnimation)("mdc-linear-progress--indeterminate",n._isIndeterminate()))},inputs:{color:"color",value:[2,"value","value",_t],bufferValue:[2,"bufferValue","bufferValue",_t],mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],decls:7,vars:5,consts:[["aria-hidden","true",1,"mdc-linear-progress__buffer"],[1,"mdc-linear-progress__buffer-bar"],[1,"mdc-linear-progress__buffer-dots"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__primary-bar"],[1,"mdc-linear-progress__bar-inner"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__secondary-bar"]],template:function(t,n){t&1&&(Ee(0,"div",0),ct(1,"div",1),S(2,Zf,1,0,"div",2),Pe(),Ee(3,"div",3),ct(4,"span",4),Pe(),Ee(5,"div",5),ct(6,"span",4),Pe()),t&2&&(d(),Ne("flex-basis",n._getBufferBarFlexBasis()),d(),E(n.mode==="buffer"?2:-1),d(),Ne("transform",n._getPrimaryBarTransform()))},styles:[`.mat-mdc-progress-bar {
|
|
3
3
|
--mat-progress-bar-animation-multiplier: 1;
|
|
4
4
|
display: block;
|
|
5
5
|
text-align: start;
|
|
@@ -253,7 +253,7 @@ import{$ as De,$a as Na,$b as Fs,A as mi,Aa as Bn,Ab as Ke,Ac as id,B as Tc,Ba a
|
|
|
253
253
|
transform: translateX(-10px);
|
|
254
254
|
}
|
|
255
255
|
}
|
|
256
|
-
`],encapsulation:2})}return i})();function
|
|
256
|
+
`],encapsulation:2})}return i})();function lm(i,o=0,e=100){return Math.max(o,Math.min(e,i))}var Vi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var Jf=["*"];var eg=new b("MAT_CARD_CONFIG"),zi=(()=>{class i{appearance;constructor(){let e=s(eg,{optional:!0});this.appearance=e?.appearance||"raised"}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:8,hostBindings:function(t,n){t&2&&f("mat-mdc-card-outlined",n.appearance==="outlined")("mdc-card--outlined",n.appearance==="outlined")("mat-mdc-card-filled",n.appearance==="filled")("mdc-card--filled",n.appearance==="filled")},inputs:{appearance:"appearance"},exportAs:["matCard"],ngContentSelectors:Jf,decls:1,vars:0,template:function(t,n){t&1&&(le(),H(0))},styles:[`.mat-mdc-card {
|
|
257
257
|
display: flex;
|
|
258
258
|
flex-direction: column;
|
|
259
259
|
box-sizing: border-box;
|
|
@@ -423,7 +423,7 @@ import{$ as De,$a as Na,$b as Fs,A as mi,Aa as Bn,Ab as Ke,Ac as id,B as Tc,Ba a
|
|
|
423
423
|
.mat-mdc-card-actions-align-end {
|
|
424
424
|
justify-content: flex-end;
|
|
425
425
|
}
|
|
426
|
-
`],encapsulation:2})}return i})();var ji=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-card-content"]],hostAttrs:[1,"mat-mdc-card-content"]})}return i})();var Hi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();function
|
|
426
|
+
`],encapsulation:2})}return i})();var ji=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-card-content"]],hostAttrs:[1,"mat-mdc-card-content"]})}return i})();var Hi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();function Tt(i,o=0){return cm(i)?Number(i):arguments.length===2?o:0}function cm(i){return!isNaN(parseFloat(i))&&!isNaN(Number(i))}function bt(i){return i instanceof O?i.nativeElement:i}function Xe(i){return i==null?"":typeof i=="string"?i:`${i}px`}function rt(i){return i!=null&&`${i}`!="false"}var ai=(function(i){return i[i.NORMAL=0]="NORMAL",i[i.NEGATED=1]="NEGATED",i[i.INVERTED=2]="INVERTED",i})(ai||{}),ur,gn;function hr(){if(gn==null){if(typeof document!="object"||!document||typeof Element!="function"||!Element)return gn=!1,gn;if(document.documentElement?.style&&"scrollBehavior"in document.documentElement.style)gn=!0;else{let i=Element.prototype.scrollTo;i?gn=!/\{\s*\[native code\]\s*\}/.test(i.toString()):gn=!1}}return gn}function Kn(){if(typeof document!="object"||!document)return ai.NORMAL;if(ur==null){let i=document.createElement("div"),o=i.style;i.dir="rtl",o.width="1px",o.overflow="auto",o.visibility="hidden",o.pointerEvents="none",o.position="absolute";let e=document.createElement("div"),t=e.style;t.width="2px",t.height="1px",i.appendChild(e),document.body.appendChild(i),ur=ai.NORMAL,i.scrollLeft===0&&(i.scrollLeft=1,ur=i.scrollLeft===0?ai.NEGATED:ai.INVERTED),i.remove()}return ur}var gl;function dm(){if(gl==null){let i=typeof document<"u"?document.head:null;gl=!!(i&&(i.createShadowRoot||i.attachShadow))}return gl}function _l(i){if(dm()){let o=i.getRootNode?i.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&o instanceof ShadowRoot)return o}return null}function Ui(){let i=typeof document<"u"&&document?document.activeElement:null;for(;i&&i.shadowRoot;){let o=i.shadowRoot.activeElement;if(o===i)break;i=o}return i}function it(i){if(i.composedPath)try{return i.composedPath()[0]}catch(o){}return i.target}function bl(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}var $o;function mm(){if($o==null&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>$o=!0}))}finally{$o=$o||!1}return $o}function Yn(i){return mm()?i:!!i.capture}var Xn,um=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function vl(){if(Xn)return Xn;if(typeof document!="object"||!document)return Xn=new Set(um),Xn;let i=document.createElement("input");return Xn=new Set(um.filter(o=>(i.setAttribute("type",o),i.type===o))),Xn}var pr=new WeakMap,Te=(()=>{class i{_appRef;_injector=s(q);_environmentInjector=s(ii);load(e){let t=this._appRef=this._appRef||this._injector.get(Li),n=pr.get(t);n||(n={loaders:new Set,refs:[]},pr.set(t,n),t.onDestroy(()=>{pr.get(t)?.refs.forEach(a=>a.destroy()),pr.delete(t)})),n.loaders.has(e)||(n.loaders.add(e),n.refs.push(Va(e,{environmentInjector:this._environmentInjector})))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var tg=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["ng-component"]],hostAttrs:["cdk-text-field-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`textarea.cdk-textarea-autosize {
|
|
427
427
|
resize: none;
|
|
428
428
|
}
|
|
429
429
|
|
|
@@ -449,7 +449,7 @@ textarea.cdk-textarea-autosize-measuring-firefox {
|
|
|
449
449
|
.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {
|
|
450
450
|
animation: cdk-text-field-autofill-end 0s 1ms;
|
|
451
451
|
}
|
|
452
|
-
`],encapsulation:2})}return i})(),
|
|
452
|
+
`],encapsulation:2})}return i})(),ig={passive:!0},hm=(()=>{class i{_platform=s(se);_ngZone=s(j);_renderer=s(et).createRenderer(null,null);_styleLoader=s(Te);_monitoredElements=new Map;monitor(e){if(!this._platform.isBrowser)return Ea;this._styleLoader.load(tg);let t=bt(e),n=this._monitoredElements.get(t);if(n)return n.subject;let a=new M,r="cdk-text-field-autofilled",m=g=>{g.animationName==="cdk-text-field-autofill-start"&&!t.classList.contains(r)?(t.classList.add(r),this._ngZone.run(()=>a.next({target:g.target,isAutofilled:!0}))):g.animationName==="cdk-text-field-autofill-end"&&t.classList.contains(r)&&(t.classList.remove(r),this._ngZone.run(()=>a.next({target:g.target,isAutofilled:!1})))},h=this._ngZone.runOutsideAngular(()=>(t.classList.add("cdk-text-field-autofill-monitored"),this._renderer.listen(t,"animationstart",m,ig)));return this._monitoredElements.set(t,{subject:a,unlisten:h}),a}stopMonitoring(e){let t=bt(e),n=this._monitoredElements.get(t);n&&(n.unlisten(),n.subject.complete(),t.classList.remove("cdk-text-field-autofill-monitored"),t.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(t))}ngOnDestroy(){this._monitoredElements.forEach((e,t)=>this.stopMonitoring(t))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var pm=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function _n(i){return i.buttons===0||i.detail===0}function bn(i){let o=i.touches&&i.touches[0]||i.changedTouches&&i.changedTouches[0];return!!o&&o.identifier===-1&&(o.radiusX==null||o.radiusX===1)&&(o.radiusY==null||o.radiusY===1)}var fm=new b("cdk-input-modality-detector-options"),gm={ignoreKeys:[18,17,224,91,16]},_m=650,yl={passive:!0,capture:!0},bm=(()=>{class i{_platform=s(se);_listenerCleanups;modalityDetected;modalityChanged;get mostRecentModality(){return this._modality.value}_mostRecentTarget=null;_modality=new Fn(null);_options;_lastTouchMs=0;_onKeydown=e=>{this._options?.ignoreKeys?.some(t=>t===e.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=it(e))};_onMousedown=e=>{Date.now()-this._lastTouchMs<_m||(this._modality.next(_n(e)?"keyboard":"mouse"),this._mostRecentTarget=it(e))};_onTouchstart=e=>{if(bn(e)){this._modality.next("keyboard");return}this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=it(e)};constructor(){let e=s(j),t=s(G),n=s(fm,{optional:!0});if(this._options=L(L({},gm),n),this.modalityDetected=this._modality.pipe(Ra(1)),this.modalityChanged=this.modalityDetected.pipe(Fi()),this._platform.isBrowser){let a=s(et).createRenderer(null,null);this._listenerCleanups=e.runOutsideAngular(()=>[a.listen(t,"keydown",this._onKeydown,yl),a.listen(t,"mousedown",this._onMousedown,yl),a.listen(t,"touchstart",this._onTouchstart,yl)])}}ngOnDestroy(){this._modality.complete(),this._listenerCleanups?.forEach(e=>e())}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Wo=(function(i){return i[i.IMMEDIATE=0]="IMMEDIATE",i[i.EVENTUAL=1]="EVENTUAL",i})(Wo||{}),vm=new b("cdk-focus-monitor-default-options"),fr=Yn({passive:!0,capture:!0}),St=(()=>{class i{_ngZone=s(j);_platform=s(se);_inputModalityDetector=s(bm);_origin=null;_lastFocusOrigin=null;_windowFocused=!1;_windowFocusTimeoutId;_originTimeoutId;_originFromTouchInteraction=!1;_elementInfo=new Map;_monitoredElementCount=0;_rootNodeFocusListenerCount=new Map;_detectionMode;_windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)};_document=s(G);_stopInputModalityDetector=new M;constructor(){let e=s(vm,{optional:!0});this._detectionMode=e?.detectionMode||Wo.IMMEDIATE}_rootNodeFocusAndBlurListener=e=>{let t=it(e);for(let n=t;n;n=n.parentElement)e.type==="focus"?this._onFocus(e,n):this._onBlur(e,n)};monitor(e,t=!1){let n=bt(e);if(!this._platform.isBrowser||n.nodeType!==1)return be();let a=_l(n)||this._document,r=this._elementInfo.get(n);if(r)return t&&(r.checkChildren=!0),r.subject;let m={checkChildren:t,subject:new M,rootNode:a};return this._elementInfo.set(n,m),this._registerGlobalListeners(m),m.subject}stopMonitoring(e){let t=bt(e),n=this._elementInfo.get(t);n&&(n.subject.complete(),this._setClasses(t),this._elementInfo.delete(t),this._removeGlobalListeners(n))}focusVia(e,t,n){let a=bt(e),r=this._document.activeElement;a===r?this._getClosestElementsInfo(a).forEach(([m,h])=>this._originChanged(m,t,h)):(this._setOrigin(t),typeof a.focus=="function"&&a.focus(n))}ngOnDestroy(){this._elementInfo.forEach((e,t)=>this.stopMonitoring(t))}_getWindow(){return this._document.defaultView||window}_getFocusOrigin(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:e&&this._isLastInteractionFromInputLabel(e)?"mouse":"program"}_shouldBeAttributedToTouch(e){return this._detectionMode===Wo.EVENTUAL||!!e?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(e,t){e.classList.toggle("cdk-focused",!!t),e.classList.toggle("cdk-touch-focused",t==="touch"),e.classList.toggle("cdk-keyboard-focused",t==="keyboard"),e.classList.toggle("cdk-mouse-focused",t==="mouse"),e.classList.toggle("cdk-program-focused",t==="program")}_setOrigin(e,t=!1){this._ngZone.runOutsideAngular(()=>{if(this._origin=e,this._originFromTouchInteraction=e==="touch"&&t,this._detectionMode===Wo.IMMEDIATE){clearTimeout(this._originTimeoutId);let n=this._originFromTouchInteraction?_m:1;this._originTimeoutId=setTimeout(()=>this._origin=null,n)}})}_onFocus(e,t){let n=this._elementInfo.get(t),a=it(e);!n||!n.checkChildren&&t!==a||this._originChanged(t,this._getFocusOrigin(a),n)}_onBlur(e,t){let n=this._elementInfo.get(t);!n||n.checkChildren&&e.relatedTarget instanceof Node&&t.contains(e.relatedTarget)||(this._setClasses(t),this._emitOrigin(n,null))}_emitOrigin(e,t){e.subject.observers.length&&this._ngZone.run(()=>e.subject.next(t))}_registerGlobalListeners(e){if(!this._platform.isBrowser)return;let t=e.rootNode,n=this._rootNodeFocusListenerCount.get(t)||0;n||this._ngZone.runOutsideAngular(()=>{t.addEventListener("focus",this._rootNodeFocusAndBlurListener,fr),t.addEventListener("blur",this._rootNodeFocusAndBlurListener,fr)}),this._rootNodeFocusListenerCount.set(t,n+1),++this._monitoredElementCount===1&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(ne(this._stopInputModalityDetector)).subscribe(a=>{this._setOrigin(a,!0)}))}_removeGlobalListeners(e){let t=e.rootNode;if(this._rootNodeFocusListenerCount.has(t)){let n=this._rootNodeFocusListenerCount.get(t);n>1?this._rootNodeFocusListenerCount.set(t,n-1):(t.removeEventListener("focus",this._rootNodeFocusAndBlurListener,fr),t.removeEventListener("blur",this._rootNodeFocusAndBlurListener,fr),this._rootNodeFocusListenerCount.delete(t))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(e,t,n){this._setClasses(e,t),this._emitOrigin(n,t),this._lastFocusOrigin=t}_getClosestElementsInfo(e){let t=[];return this._elementInfo.forEach((n,a)=>{(a===e||n.checkChildren&&a.contains(e))&&t.push([a,n])}),t}_isLastInteractionFromInputLabel(e){let{_mostRecentTarget:t,mostRecentModality:n}=this._inputModalityDetector;if(n!=="mouse"||!t||t===e||e.nodeName!=="INPUT"&&e.nodeName!=="TEXTAREA"||e.disabled)return!1;let a=e.labels;if(a){for(let r=0;r<a.length;r++)if(a[r].contains(t))return!0}return!1}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Gi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["ng-component"]],exportAs:["cdkVisuallyHidden"],decls:0,vars:0,template:function(t,n){},styles:[`.cdk-visually-hidden {
|
|
453
453
|
border: 0;
|
|
454
454
|
clip: rect(0 0 0 0);
|
|
455
455
|
height: 1px;
|
|
@@ -468,7 +468,7 @@ textarea.cdk-textarea-autosize-measuring-firefox {
|
|
|
468
468
|
left: auto;
|
|
469
469
|
right: 0;
|
|
470
470
|
}
|
|
471
|
-
`],encapsulation:2})}return i})(),gr;function ig(){if(gr===void 0&&(gr=null,typeof window<"u")){let i=window;i.trustedTypes!==void 0&&(gr=i.trustedTypes.createPolicy("angular#components",{createHTML:o=>o}))}return gr}function vn(i){return ig()?.createHTML(i)||i}function vm(i,o,e){let t=e.sanitize(gt.HTML,o);i.innerHTML=vn(t||"")}function ng(i){if(i.type==="characterData"&&i.target instanceof Comment)return!0;if(i.type==="childList"){for(let o=0;o<i.addedNodes.length;o++)if(!(i.addedNodes[o]instanceof Comment))return!1;for(let o=0;o<i.removedNodes.length;o++)if(!(i.removedNodes[o]instanceof Comment))return!1;return!0}return!1}var ym=(()=>{class i{create(e){return typeof MutationObserver>"u"?null:new MutationObserver(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Cm=(()=>{class i{_mutationObserverFactory=s(ym);_observedElements=new Map;_ngZone=s(j);ngOnDestroy(){this._observedElements.forEach((e,t)=>this._cleanupObserver(t))}observe(e){let t=bt(e);return new ft(n=>{let r=this._observeElement(t).pipe(Ae(m=>m.filter(h=>!ng(h))),pe(m=>!!m.length)).subscribe(m=>{this._ngZone.run(()=>{n.next(m)})});return()=>{r.unsubscribe(),this._unobserveElement(t)}})}_observeElement(e){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(e))this._observedElements.get(e).count++;else{let t=new M,n=this._mutationObserverFactory.create(a=>t.next(a));n&&n.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:n,stream:t,count:1})}return this._observedElements.get(e).stream})}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){let{observer:t,stream:n}=this._observedElements.get(e);t&&t.disconnect(),n.complete(),this._observedElements.delete(e)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),xm=(()=>{class i{_contentObserver=s(Cm);_elementRef=s(O);event=new $;get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._disabled?this._unsubscribe():this._subscribe()}_disabled=!1;get debounce(){return this._debounce}set debounce(e){this._debounce=At(e),this._subscribe()}_debounce;_currentSubscription=null;ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();let e=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?e.pipe(Qt(this.debounce)):e).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",F],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return i})(),Zn=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[ym]})}return i})();var wl=(()=>{class i{_platform=s(se);isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return ag(e)&&getComputedStyle(e).visibility==="visible"}isTabbable(e){if(!this._platform.isBrowser)return!1;let t=og(hg(e));if(t&&(wm(t)===-1||!this.isVisible(t)))return!1;let n=e.nodeName.toLowerCase(),a=wm(e);return e.hasAttribute("contenteditable")?a!==-1:n==="iframe"||n==="object"||this._platform.WEBKIT&&this._platform.IOS&&!mg(e)?!1:n==="audio"?e.hasAttribute("controls")?a!==-1:!1:n==="video"?a===-1?!1:a!==null?!0:this._platform.FIREFOX||e.hasAttribute("controls"):e.tabIndex>=0}isFocusable(e,t){return ug(e)&&!this.isDisabled(e)&&(t?.ignoreVisibility||this.isVisible(e))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function og(i){try{return i.frameElement}catch(o){return null}}function ag(i){return!!(i.offsetWidth||i.offsetHeight||typeof i.getClientRects=="function"&&i.getClientRects().length)}function rg(i){let o=i.nodeName.toLowerCase();return o==="input"||o==="select"||o==="button"||o==="textarea"}function sg(i){return cg(i)&&i.type=="hidden"}function lg(i){return dg(i)&&i.hasAttribute("href")}function cg(i){return i.nodeName.toLowerCase()=="input"}function dg(i){return i.nodeName.toLowerCase()=="a"}function Sm(i){if(!i.hasAttribute("tabindex")||i.tabIndex===void 0)return!1;let o=i.getAttribute("tabindex");return!!(o&&!isNaN(parseInt(o,10)))}function wm(i){if(!Sm(i))return null;let o=parseInt(i.getAttribute("tabindex")||"",10);return isNaN(o)?-1:o}function mg(i){let o=i.nodeName.toLowerCase(),e=o==="input"&&i.type;return e==="text"||e==="password"||o==="select"||o==="textarea"}function ug(i){return sg(i)?!1:rg(i)||lg(i)||i.hasAttribute("contenteditable")||Sm(i)}function hg(i){return i.ownerDocument&&i.ownerDocument.defaultView||window}var xl=class{_element;_checker;_ngZone;_document;_injector;_startAnchor=null;_endAnchor=null;_hasAttached=!1;startAnchorListener=()=>this.focusLastTabbableElement();endAnchorListener=()=>this.focusFirstTabbableElement();get enabled(){return this._enabled}set enabled(o){this._enabled=o,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(o,this._startAnchor),this._toggleAnchorTabIndex(o,this._endAnchor))}_enabled=!0;constructor(o,e,t,n,a=!1,r){this._element=o,this._checker=e,this._ngZone=t,this._document=n,this._injector=r,a||this.attachAnchors()}destroy(){let o=this._startAnchor,e=this._endAnchor;o&&(o.removeEventListener("focus",this.startAnchorListener),o.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(o){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(o)))})}focusFirstTabbableElementWhenReady(o){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(o)))})}focusLastTabbableElementWhenReady(o){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(o)))})}_getRegionBoundary(o){let e=this._element.querySelectorAll(`[cdk-focus-region-${o}], [cdkFocusRegion${o}], [cdk-focus-${o}]`);return o=="start"?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(o){let e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){let t=this._getFirstTabbableElement(e);return t?.focus(o),!!t}return e.focus(o),!0}return this.focusFirstTabbableElement(o)}focusFirstTabbableElement(o){let e=this._getRegionBoundary("start");return e&&e.focus(o),!!e}focusLastTabbableElement(o){let e=this._getRegionBoundary("end");return e&&e.focus(o),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(o){if(this._checker.isFocusable(o)&&this._checker.isTabbable(o))return o;let e=o.children;for(let t=0;t<e.length;t++){let n=e[t].nodeType===this._document.ELEMENT_NODE?this._getFirstTabbableElement(e[t]):null;if(n)return n}return null}_getLastTabbableElement(o){if(this._checker.isFocusable(o)&&this._checker.isTabbable(o))return o;let e=o.children;for(let t=e.length-1;t>=0;t--){let n=e[t].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[t]):null;if(n)return n}return null}_createAnchor(){let o=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,o),o.classList.add("cdk-visually-hidden"),o.classList.add("cdk-focus-trap-anchor"),o.setAttribute("aria-hidden","true"),o}_toggleAnchorTabIndex(o,e){o?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(o){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(o,this._startAnchor),this._toggleAnchorTabIndex(o,this._endAnchor))}_executeOnStable(o){Fe(o,{injector:this._injector})}},Dl=(()=>{class i{_checker=s(wl);_ngZone=s(j);_document=s(G);_injector=s(q);constructor(){s(Te).load(Gi)}create(e,t=!1){return new xl(e,this._checker,this._ngZone,this._document,t,this._injector)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Em=new b("liveAnnouncerElement",{providedIn:"root",factory:()=>null}),Mm=new b("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),pg=0,Wo=(()=>{class i{_ngZone=s(j);_defaultOptions=s(Mm,{optional:!0});_liveElement;_document=s(G);_sanitizer=s(Uo);_previousTimeout;_currentPromise;_currentResolve;constructor(){let e=s(Em,{optional:!0});this._liveElement=e||this._createLiveElement()}announce(e,...t){let n=this._defaultOptions,a,r;return t.length===1&&typeof t[0]=="number"?r=t[0]:[a,r]=t,this.clear(),clearTimeout(this._previousTimeout),a||(a=n&&n.politeness?n.politeness:"polite"),r==null&&n&&(r=n.duration),this._liveElement.setAttribute("aria-live",a),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(m=>this._currentResolve=m)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{!e||typeof e=="string"?this._liveElement.textContent=e:vm(this._liveElement,e,this._sanitizer),typeof r=="number"&&(this._previousTimeout=setTimeout(()=>this.clear(),r)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){let e="cdk-live-announcer-element",t=this._document.getElementsByClassName(e),n=this._document.createElement("div");for(let a=0;a<t.length;a++)t[a].remove();return n.classList.add(e),n.classList.add("cdk-visually-hidden"),n.setAttribute("aria-atomic","true"),n.setAttribute("aria-live","polite"),n.id=`cdk-live-announcer-${pg++}`,this._document.body.appendChild(n),n}_exposeAnnouncerToModals(e){let t=this._document.querySelectorAll('body > .cdk-overlay-container [aria-modal="true"]');for(let n=0;n<t.length;n++){let a=t[n],r=a.getAttribute("aria-owns");r?r.indexOf(e)===-1&&a.setAttribute("aria-owns",r+" "+e):a.setAttribute("aria-owns",e)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var $i=(function(i){return i[i.NONE=0]="NONE",i[i.BLACK_ON_WHITE=1]="BLACK_ON_WHITE",i[i.WHITE_ON_BLACK=2]="WHITE_ON_BLACK",i})($i||{}),Dm="cdk-high-contrast-black-on-white",km="cdk-high-contrast-white-on-black",Cl="cdk-high-contrast-active",Am=(()=>{class i{_platform=s(se);_hasCheckedHighContrastMode=!1;_document=s(G);_breakpointSubscription;constructor(){this._breakpointSubscription=s(fn).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return $i.NONE;let e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);let t=this._document.defaultView||window,n=t&&t.getComputedStyle?t.getComputedStyle(e):null,a=(n&&n.backgroundColor||"").replace(/ /g,"");switch(e.remove(),a){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return $i.WHITE_ON_BLACK;case"rgb(255,255,255)":case"rgb(255,250,239)":return $i.BLACK_ON_WHITE}return $i.NONE}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){let e=this._document.body.classList;e.remove(Cl,Dm,km),this._hasCheckedHighContrastMode=!0;let t=this.getHighContrastMode();t===$i.BLACK_ON_WHITE?e.add(Cl,Dm):t===$i.WHITE_ON_BLACK&&e.add(Cl,km)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),qo=(()=>{class i{constructor(){s(Am)._applyBodyHighContrastModeCssClasses()}static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Zn]})}return i})();var fg=200,_r=class{_letterKeyStream=new M;_items=[];_selectedItemIndex=-1;_pressedLetters=[];_skipPredicateFn;_selectedItem=new M;selectedItem=this._selectedItem;constructor(o,e){let t=typeof e?.debounceInterval=="number"?e.debounceInterval:fg;e?.skipPredicate&&(this._skipPredicateFn=e.skipPredicate),this.setItems(o),this._setupKeyHandler(t)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(o){this._selectedItemIndex=o}setItems(o){this._items=o}handleKey(o){let e=o.keyCode;o.key&&o.key.length===1?this._letterKeyStream.next(o.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(o){this._letterKeyStream.pipe(Jt(e=>this._pressedLetters.push(e)),Qt(o),pe(()=>this._pressedLetters.length>0),Ae(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(e=>{for(let t=1;t<this._items.length+1;t++){let n=(this._selectedItemIndex+t)%this._items.length,a=this._items[n];if(!this._skipPredicateFn?.(a)&&a.getLabel?.().toLocaleUpperCase().trim().indexOf(e)===0){this._selectedItem.next(a);break}}this._pressedLetters=[]})}};function Ve(i,...o){return o.length?o.some(e=>i[e]):i.altKey||i.shiftKey||i.ctrlKey||i.metaKey}var Qn=class{_items;_activeItemIndex=N(-1);_activeItem=N(null);_wrap=!1;_typeaheadSubscription=_e.EMPTY;_itemChangesSubscription;_vertical=!0;_horizontal=null;_allowedModifierKeys=[];_homeAndEnd=!1;_pageUpAndDown={enabled:!1,delta:10};_effectRef;_typeahead;_skipPredicateFn=o=>o.disabled;constructor(o,e){this._items=o,o instanceof Ni?this._itemChangesSubscription=o.changes.subscribe(t=>this._itemsChanged(t.toArray())):Pi(o)&&(this._effectRef=Et(()=>this._itemsChanged(o()),{injector:e}))}tabOut=new M;change=new M;skipPredicate(o){return this._skipPredicateFn=o,this}withWrap(o=!0){return this._wrap=o,this}withVerticalOrientation(o=!0){return this._vertical=o,this}withHorizontalOrientation(o){return this._horizontal=o,this}withAllowedModifierKeys(o){return this._allowedModifierKeys=o,this}withTypeAhead(o=200){this._typeaheadSubscription.unsubscribe();let e=this._getItemsArray();return this._typeahead=new _r(e,{debounceInterval:typeof o=="number"?o:void 0,skipPredicate:t=>this._skipPredicateFn(t)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(t=>{this.setActiveItem(t)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(o=!0){return this._homeAndEnd=o,this}withPageUpDown(o=!0,e=10){return this._pageUpAndDown={enabled:o,delta:e},this}setActiveItem(o){let e=this._activeItem();this.updateActiveItem(o),this._activeItem()!==e&&this.change.next(this._activeItemIndex())}onKeydown(o){let e=o.keyCode,n=["altKey","ctrlKey","metaKey","shiftKey"].every(a=>!o[a]||this._allowedModifierKeys.indexOf(a)>-1);switch(e){case 9:this.tabOut.next();return;case 40:if(this._vertical&&n){this.setNextItemActive();break}else return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}else return;case 39:if(this._horizontal&&n){this._horizontal==="rtl"?this.setPreviousItemActive():this.setNextItemActive();break}else return;case 37:if(this._horizontal&&n){this._horizontal==="rtl"?this.setNextItemActive():this.setPreviousItemActive();break}else return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}else return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}else return;case 33:if(this._pageUpAndDown.enabled&&n){let a=this._activeItemIndex()-this._pageUpAndDown.delta;this._setActiveItemByIndex(a>0?a:0,1);break}else return;case 34:if(this._pageUpAndDown.enabled&&n){let a=this._activeItemIndex()+this._pageUpAndDown.delta,r=this._getItemsArray().length;this._setActiveItemByIndex(a<r?a:r-1,-1);break}else return;default:(n||Ve(o,"shiftKey"))&&this._typeahead?.handleKey(o);return}this._typeahead?.reset(),o.preventDefault()}get activeItemIndex(){return this._activeItemIndex()}get activeItem(){return this._activeItem()}isTyping(){return!!this._typeahead&&this._typeahead.isTyping()}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._getItemsArray().length-1,-1)}setNextItemActive(){this._activeItemIndex()<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex()<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(o){let e=this._getItemsArray(),t=typeof o=="number"?o:e.indexOf(o),n=e[t];this._activeItem.set(n??null),this._activeItemIndex.set(t),this._typeahead?.setCurrentSelectedItemIndex(t)}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._effectRef?.destroy(),this._typeahead?.destroy(),this.tabOut.complete(),this.change.complete()}_setActiveItemByDelta(o){this._wrap?this._setActiveInWrapMode(o):this._setActiveInDefaultMode(o)}_setActiveInWrapMode(o){let e=this._getItemsArray();for(let t=1;t<=e.length;t++){let n=(this._activeItemIndex()+o*t+e.length)%e.length,a=e[n];if(!this._skipPredicateFn(a)){this.setActiveItem(n);return}}}_setActiveInDefaultMode(o){this._setActiveItemByIndex(this._activeItemIndex()+o,o)}_setActiveItemByIndex(o,e){let t=this._getItemsArray();if(t[o]){for(;this._skipPredicateFn(t[o]);)if(o+=e,!t[o])return;this.setActiveItem(o)}}_getItemsArray(){return Pi(this._items)?this._items():this._items instanceof Ni?this._items.toArray():this._items}_itemsChanged(o){this._typeahead?.setItems(o);let e=this._activeItem();if(e){let t=o.indexOf(e);t>-1&&t!==this._activeItemIndex()&&(this._activeItemIndex.set(t),this._typeahead?.setCurrentSelectedItemIndex(t))}}};var Cn=class extends Qn{setActiveItem(o){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(o),this.activeItem&&this.activeItem.setActiveStyles()}};var qi=class extends Qn{_origin="program";setFocusOrigin(o){return this._origin=o,this}setActiveItem(o){super.setActiveItem(o),this.activeItem&&this.activeItem.focus(this._origin)}};var Rm=new Map,he=class i{_appId=s(dn);static _infix=`a${Math.floor(Math.random()*1e5).toString()}`;getId(o,e=!1){this._appId!=="ng"&&(o+=this._appId);let t=Rm.get(o);return t===void 0?t=0:t++,Rm.set(o,t),`${o}${e?i._infix+"-":""}${t}`}static \u0275fac=function(e){return new(e||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})};var Fm=" ";function gg(i,o,e){let t=vr(i,o);e=e.trim(),!t.some(n=>n.trim()===e)&&(t.push(e),i.setAttribute(o,t.join(Fm)))}function _g(i,o,e){let t=vr(i,o);e=e.trim();let n=t.filter(a=>a!==e);n.length?i.setAttribute(o,n.join(Fm)):i.removeAttribute(o)}function vr(i,o){return i.getAttribute(o)?.match(/\S+/g)??[]}var Pm="cdk-describedby-message",br="cdk-describedby-host",Sl=0,Nm=(()=>{class i{_platform=s(se);_document=s(G);_messageRegistry=new Map;_messagesContainer=null;_id=`${Sl++}`;constructor(){s(Te).load(Gi),this._id=s(dn)+"-"+Sl++}describe(e,t,n){if(!this._canBeDescribed(e,t))return;let a=kl(t,n);typeof t!="string"?(Om(t,this._id),this._messageRegistry.set(a,{messageElement:t,referenceCount:0})):this._messageRegistry.has(a)||this._createMessageElement(t,n),this._isElementDescribedByMessage(e,a)||this._addMessageReference(e,a)}removeDescription(e,t,n){if(!t||!this._isElementNode(e))return;let a=kl(t,n);if(this._isElementDescribedByMessage(e,a)&&this._removeMessageReference(e,a),typeof t=="string"){let r=this._messageRegistry.get(a);r&&r.referenceCount===0&&this._deleteMessageElement(a)}this._messagesContainer?.childNodes.length===0&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){let e=this._document.querySelectorAll(`[${br}="${this._id}"]`);for(let t=0;t<e.length;t++)this._removeCdkDescribedByReferenceIds(e[t]),e[t].removeAttribute(br);this._messagesContainer?.remove(),this._messagesContainer=null,this._messageRegistry.clear()}_createMessageElement(e,t){let n=this._document.createElement("div");Om(n,this._id),n.textContent=e,t&&n.setAttribute("role",t),this._createMessagesContainer(),this._messagesContainer.appendChild(n),this._messageRegistry.set(kl(e,t),{messageElement:n,referenceCount:0})}_deleteMessageElement(e){this._messageRegistry.get(e)?.messageElement?.remove(),this._messageRegistry.delete(e)}_createMessagesContainer(){if(this._messagesContainer)return;let e="cdk-describedby-message-container",t=this._document.querySelectorAll(`.${e}[platform="server"]`);for(let a=0;a<t.length;a++)t[a].remove();let n=this._document.createElement("div");n.style.visibility="hidden",n.classList.add(e),n.classList.add("cdk-visually-hidden"),this._platform.isBrowser||n.setAttribute("platform","server"),this._document.body.appendChild(n),this._messagesContainer=n}_removeCdkDescribedByReferenceIds(e){let t=vr(e,"aria-describedby").filter(n=>n.indexOf(Pm)!=0);e.setAttribute("aria-describedby",t.join(" "))}_addMessageReference(e,t){let n=this._messageRegistry.get(t);gg(e,"aria-describedby",n.messageElement.id),e.setAttribute(br,this._id),n.referenceCount++}_removeMessageReference(e,t){let n=this._messageRegistry.get(t);n.referenceCount--,_g(e,"aria-describedby",n.messageElement.id),e.removeAttribute(br)}_isElementDescribedByMessage(e,t){let n=vr(e,"aria-describedby"),a=this._messageRegistry.get(t),r=a&&a.messageElement.id;return!!r&&n.indexOf(r)!=-1}_canBeDescribed(e,t){if(!this._isElementNode(e))return!1;if(t&&typeof t=="object")return!0;let n=t==null?"":`${t}`.trim(),a=e.getAttribute("aria-label");return n?!a||a.trim()!==n:!1}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function kl(i,o){return typeof i=="string"?`${o||""}/${i}`:i}function Om(i,o){i.id||(i.id=`${Pm}-${o}-${Sl++}`)}var $m=(()=>{class i{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,t){this._renderer=e,this._elementRef=t}setProperty(e,t){this._renderer.setProperty(this._elementRef.nativeElement,e,t)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(t){return new(t||i)(ce(ue),ce(O))};static \u0275dir=x({type:i})}return i})(),Wm=(()=>{class i extends $m{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,features:[X]})}return i})(),fi=new b("");var bg={provide:fi,useExisting:lt(()=>Yi),multi:!0};function vg(){let i=Vt()?Vt().getUserAgent():"";return/android (\d+)/.test(i.toLowerCase())}var yg=new b(""),Yi=(()=>{class i extends $m{_compositionMode;_composing=!1;constructor(e,t,n){super(e,t),this._compositionMode=n,this._compositionMode==null&&(this._compositionMode=!vg())}writeValue(e){let t=e??"";this.setProperty("value",t)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(t){return new(t||i)(ce(ue),ce(O),ce(yg,8))};static \u0275dir=x({type:i,selectors:[["input","formControlName","",3,"type","checkbox",3,"ngNoCva",""],["textarea","formControlName","",3,"ngNoCva",""],["input","formControl","",3,"type","checkbox",3,"ngNoCva",""],["textarea","formControl","",3,"ngNoCva",""],["input","ngModel","",3,"type","checkbox",3,"ngNoCva",""],["textarea","ngModel","",3,"ngNoCva",""],["","ngDefaultControl",""]],hostBindings:function(t,n){t&1&&I("input",function(r){return n._handleInput(r.target.value)})("blur",function(){return n.onTouched()})("compositionstart",function(){return n._compositionStart()})("compositionend",function(r){return n._compositionEnd(r.target.value)})},standalone:!1,features:[te([bg]),X]})}return i})();function Rl(i){return i==null||Ol(i)===0}function Ol(i){return i==null?null:Array.isArray(i)||typeof i=="string"?i.length:i instanceof Set?i.size:null}var wn=new b(""),Ar=new b(""),Cg=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,vt=class{static min(o){return xg(o)}static max(o){return wg(o)}static required(o){return qm(o)}static requiredTrue(o){return Dg(o)}static email(o){return kg(o)}static minLength(o){return Sg(o)}static maxLength(o){return Eg(o)}static pattern(o){return Mg(o)}static nullValidator(o){return Cr()}static compose(o){return Jm(o)}static composeAsync(o){return eu(o)}};function xg(i){return o=>{if(o.value==null||i==null)return null;let e=parseFloat(o.value);return!isNaN(e)&&e<i?{min:{min:i,actual:o.value}}:null}}function wg(i){return o=>{if(o.value==null||i==null)return null;let e=parseFloat(o.value);return!isNaN(e)&&e>i?{max:{max:i,actual:o.value}}:null}}function qm(i){return Rl(i.value)?{required:!0}:null}function Dg(i){return i.value===!0?null:{required:!0}}function kg(i){return Rl(i.value)||Cg.test(i.value)?null:{email:!0}}function Sg(i){return o=>{let e=o.value?.length??Ol(o.value);return e===null||e===0?null:e<i?{minlength:{requiredLength:i,actualLength:e}}:null}}function Eg(i){return o=>{let e=o.value?.length??Ol(o.value);return e!==null&&e>i?{maxlength:{requiredLength:i,actualLength:e}}:null}}function Mg(i){if(!i)return Cr;let o,e;return typeof i=="string"?(e="",i.charAt(0)!=="^"&&(e+="^"),e+=i,i.charAt(i.length-1)!=="$"&&(e+="$"),o=new RegExp(e)):(e=i.toString(),o=i),t=>{if(Rl(t.value))return null;let n=t.value;return o.test(n)?null:{pattern:{requiredPattern:e,actualValue:n}}}}function Cr(i){return null}function Km(i){return i!=null}function Ym(i){return Is(i)?Ac(i):i}function Xm(i){let o={};return i.forEach(e=>{o=e!=null?B(B({},o),e):o}),Object.keys(o).length===0?null:o}function Zm(i,o){return o.map(e=>e(i))}function Ag(i){return!i.validate}function Qm(i){return i.map(o=>Ag(o)?o:e=>o.validate(e))}function Jm(i){if(!i)return null;let o=i.filter(Km);return o.length==0?null:function(e){return Xm(Zm(e,o))}}function Fl(i){return i!=null?Jm(Qm(i)):null}function eu(i){if(!i)return null;let o=i.filter(Km);return o.length==0?null:function(e){let t=Zm(e,o).map(Ym);return Aa(t).pipe(Ae(Xm))}}function Pl(i){return i!=null?eu(Qm(i)):null}function Lm(i,o){return i===null?[o]:Array.isArray(i)?[...i,o]:[i,o]}function tu(i){return i._rawValidators}function iu(i){return i._rawAsyncValidators}function El(i){return i?Array.isArray(i)?i:[i]:[]}function xr(i,o){return Array.isArray(i)?i.includes(o):i===o}function Bm(i,o){let e=El(o);return El(i).forEach(n=>{xr(e,n)||e.push(n)}),e}function Vm(i,o){return El(o).filter(e=>!xr(i,e))}var wr=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(o){this._rawValidators=o||[],this._composedValidatorFn=Fl(this._rawValidators)}_setAsyncValidators(o){this._rawAsyncValidators=o||[],this._composedAsyncValidatorFn=Pl(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(o){this._onDestroyCallbacks.push(o)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(o=>o()),this._onDestroyCallbacks=[]}reset(o=void 0){this.control?.reset(o)}hasError(o,e){return this.control?this.control.hasError(o,e):!1}getError(o,e){return this.control?this.control.getError(o,e):null}},Mi=class extends wr{name;get formDirective(){return null}get path(){return null}};var Xo="VALID",yr="INVALID",Jn="PENDING",Zo="DISABLED",Ki=class{},Dr=class extends Ki{value;source;constructor(o,e){super(),this.value=o,this.source=e}},Jo=class extends Ki{pristine;source;constructor(o,e){super(),this.pristine=o,this.source=e}},ea=class extends Ki{touched;source;constructor(o,e){super(),this.touched=o,this.source=e}},eo=class extends Ki{status;source;constructor(o,e){super(),this.status=o,this.source=e}},kr=class extends Ki{source;constructor(o){super(),this.source=o}},xn=class extends Ki{source;constructor(o){super(),this.source=o}};function Nl(i){return(Ir(i)?i.validators:i)||null}function Ig(i){return Array.isArray(i)?Fl(i):i||null}function Ll(i,o){return(Ir(o)?o.asyncValidators:i)||null}function Tg(i){return Array.isArray(i)?Pl(i):i||null}function Ir(i){return i!=null&&!Array.isArray(i)&&typeof i=="object"}function nu(i,o,e){let t=i.controls;if(!(o?Object.keys(t):t).length)throw new oe(1e3,"");if(!au(t,e))throw new oe(1001,"")}function ou(i,o,e){i._forEachChild((t,n)=>{if(e[n]===void 0)throw new oe(-1002,"")})}var to=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_hasRequired=N(!1);_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(o,e){this._assignValidators(o),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(o){this._rawValidators=this._composedValidatorFn=o,this._updateHasRequiredValidator()}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(o){this._rawAsyncValidators=this._composedAsyncValidatorFn=o}get parent(){return this._parent}get status(){return mt(this.statusReactive)}set status(o){mt(()=>this.statusReactive.set(o))}_status=K(()=>this.statusReactive());statusReactive=N(void 0);get valid(){return this.status===Xo}get invalid(){return this.status===yr}get pending(){return this.status===Jn}get disabled(){return this.status===Zo}get enabled(){return this.status!==Zo}errors;get pristine(){return mt(this.pristineReactive)}set pristine(o){mt(()=>this.pristineReactive.set(o))}_pristine=K(()=>this.pristineReactive());pristineReactive=N(!0);get dirty(){return!this.pristine}get touched(){return mt(this.touchedReactive)}set touched(o){mt(()=>this.touchedReactive.set(o))}_touched=K(()=>this.touchedReactive());touchedReactive=N(!1);get untouched(){return!this.touched}_events=new M;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(o){this._assignValidators(o)}setAsyncValidators(o){this._assignAsyncValidators(o)}addValidators(o){this.setValidators(Bm(o,this._rawValidators))}addAsyncValidators(o){this.setAsyncValidators(Bm(o,this._rawAsyncValidators))}removeValidators(o){this.setValidators(Vm(o,this._rawValidators))}removeAsyncValidators(o){this.setAsyncValidators(Vm(o,this._rawAsyncValidators))}hasValidator(o){return xr(this._rawValidators,o)}hasAsyncValidator(o){return xr(this._rawAsyncValidators,o)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(o={}){let e=this.touched===!1;this.touched=!0;let t=o.sourceControl??this;o.onlySelf||this._parent?.markAsTouched(Me(B({},o),{sourceControl:t})),e&&o.emitEvent!==!1&&this._events.next(new ea(!0,t))}markAllAsDirty(o={}){this.markAsDirty({onlySelf:!0,emitEvent:o.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsDirty(o))}markAllAsTouched(o={}){this.markAsTouched({onlySelf:!0,emitEvent:o.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(o))}markAsUntouched(o={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let t=o.sourceControl??this;this._forEachChild(n=>{n.markAsUntouched({onlySelf:!0,emitEvent:o.emitEvent,sourceControl:t})}),o.onlySelf||this._parent?._updateTouched(o,t),e&&o.emitEvent!==!1&&this._events.next(new ea(!1,t))}markAsDirty(o={}){let e=this.pristine===!0;this.pristine=!1;let t=o.sourceControl??this;o.onlySelf||this._parent?.markAsDirty(Me(B({},o),{sourceControl:t})),e&&o.emitEvent!==!1&&this._events.next(new Jo(!1,t))}markAsPristine(o={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let t=o.sourceControl??this;this._forEachChild(n=>{n.markAsPristine({onlySelf:!0,emitEvent:o.emitEvent})}),o.onlySelf||this._parent?._updatePristine(o,t),e&&o.emitEvent!==!1&&this._events.next(new Jo(!0,t))}markAsPending(o={}){this.status=Jn;let e=o.sourceControl??this;o.emitEvent!==!1&&(this._events.next(new eo(this.status,e)),this.statusChanges.emit(this.status)),o.onlySelf||this._parent?.markAsPending(Me(B({},o),{sourceControl:e}))}disable(o={}){let e=this._parentMarkedDirty(o.onlySelf);this.status=Zo,this.errors=null,this._forEachChild(n=>{n.disable(Me(B({},o),{onlySelf:!0}))}),this._updateValue();let t=o.sourceControl??this;o.emitEvent!==!1&&(this._events.next(new Dr(this.value,t)),this._events.next(new eo(this.status,t)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Me(B({},o),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(n=>n(!0))}enable(o={}){let e=this._parentMarkedDirty(o.onlySelf);this.status=Xo,this._forEachChild(t=>{t.enable(Me(B({},o),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:o.emitEvent}),this._updateAncestors(Me(B({},o),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(o,e){o.onlySelf||(this._parent?.updateValueAndValidity(o),o.skipPristineCheck||this._parent?._updatePristine({},e),this._parent?._updateTouched({},e))}setParent(o){this._parent=o}getRawValue(){return this.value}updateValueAndValidity(o={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let t=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Xo||this.status===Jn)&&this._runAsyncValidator(t,o.emitEvent)}let e=o.sourceControl??this;o.emitEvent!==!1&&(this._events.next(new Dr(this.value,e)),this._events.next(new eo(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),o.onlySelf||this._parent?.updateValueAndValidity(Me(B({},o),{sourceControl:e}))}_updateTreeValidity(o={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(o)),this.updateValueAndValidity({onlySelf:!0,emitEvent:o.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Zo:Xo}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(o,e){if(this.asyncValidator){this.status=Jn,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1,shouldHaveEmitted:o!==!1};let t=Ym(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(n=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(n,{emitEvent:e,shouldHaveEmitted:o})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let o=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,o}return!1}setErrors(o,e={}){this.errors=o,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(o){let e=o;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((t,n)=>t&&t._find(n),this)}getError(o,e){let t=e?this.get(e):this;return t?.errors?t.errors[o]:null}hasError(o,e){return!!this.getError(o,e)}get root(){let o=this;for(;o._parent;)o=o._parent;return o}_updateControlsErrors(o,e,t){this.status=this._calculateStatus(),o&&this.statusChanges.emit(this.status),(o||t)&&this._events.next(new eo(this.status,e)),this._parent&&this._parent._updateControlsErrors(o,e,t)}_initObservables(){this.valueChanges=new $,this.statusChanges=new $}_calculateStatus(){return this._allControlsDisabled()?Zo:this.errors?yr:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Jn)?Jn:this._anyControlsHaveStatus(yr)?yr:Xo}_anyControlsHaveStatus(o){return this._anyControls(e=>e.status===o)}_anyControlsDirty(){return this._anyControls(o=>o.dirty)}_anyControlsTouched(){return this._anyControls(o=>o.touched)}_updatePristine(o,e){let t=!this._anyControlsDirty(),n=this.pristine!==t;this.pristine=t,o.onlySelf||this._parent?._updatePristine(o,e),n&&this._events.next(new Jo(this.pristine,e))}_updateTouched(o={},e){this.touched=this._anyControlsTouched(),this._events.next(new ea(this.touched,e)),o.onlySelf||this._parent?._updateTouched(o,e)}_onDisabledChange=[];_registerOnCollectionChange(o){this._onCollectionChange=o}_setUpdateStrategy(o){Ir(o)&&o.updateOn!=null&&(this._updateOn=o.updateOn)}_parentMarkedDirty(o){return!o&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(o){return null}_assignValidators(o){this._rawValidators=Array.isArray(o)?o.slice():o,this._composedValidatorFn=Ig(this._rawValidators),this._updateHasRequiredValidator()}_assignAsyncValidators(o){this._rawAsyncValidators=Array.isArray(o)?o.slice():o,this._composedAsyncValidatorFn=Tg(this._rawAsyncValidators)}_updateHasRequiredValidator(){mt(()=>this._hasRequired.set(this.hasValidator(vt.required)))}};function au(i,o){return Object.hasOwn(i,o)}function Rg(i){return i.tagName==="INPUT"||i.tagName==="SELECT"||i.tagName==="TEXTAREA"}function Og(i,o,e,t){switch(e){case"name":i.setAttribute(o,e,t);break;case"disabled":case"readonly":case"required":t?i.setAttribute(o,e,""):i.removeAttribute(o,e);break;case"max":case"min":case"minLength":case"maxLength":t!==void 0?i.setAttribute(o,e,t.toString()):i.removeAttribute(o,e);break}}var Ml=class{kind;context;control;message;constructor({kind:o,context:e,control:t}){this.kind=o,this.context=e,this.control=t}};var Fg=(()=>{class i{_validator=Cr;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let t=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(t),this._validator=this._enabled?this.createValidator(t):Cr,this._onChange?.()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,features:[ye]})}return i})();var Pg={provide:wn,useExisting:lt(()=>Tr),multi:!0};var Tr=(()=>{class i extends Fg{required;inputName="required";normalizeInput=F;createValidator=e=>qm;enabled(e){return e}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(t,n){t&2&&Y("required",n._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[te([Pg]),X]})}return i})();var Ng=new b(""),ia=new b("",{factory:()=>Rr}),Rr="always";function ru(i,o){return[...o.path,i]}function Al(i,o,e=Rr){Bl(i,o),o.valueAccessor.writeValue(i.value),(i.disabled||e==="always")&&o.valueAccessor.setDisabledState?.(i.disabled),Bg(i,o),zg(i,o),Vg(i,o),Lg(i,o)}function zm(i,o,e=!0){let t=()=>{};o?.valueAccessor?.registerOnChange(t),o?.valueAccessor?.registerOnTouched(t),Er(i,o),i&&(o._invokeOnDestroyCallbacks(),i._registerOnCollectionChange(()=>{}))}function Sr(i,o){i.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(o)})}function Lg(i,o){if(o.valueAccessor.setDisabledState){let e=t=>{o.valueAccessor.setDisabledState(t)};i.registerOnDisabledChange(e),o._registerOnDestroy(()=>{i._unregisterOnDisabledChange(e)})}}function Bl(i,o){let e=tu(i);o.validator!==null?i.setValidators(Lm(e,o.validator)):typeof e=="function"&&i.setValidators([e]);let t=iu(i);o.asyncValidator!==null?i.setAsyncValidators(Lm(t,o.asyncValidator)):typeof t=="function"&&i.setAsyncValidators([t]);let n=()=>i.updateValueAndValidity();Sr(o._rawValidators,n),Sr(o._rawAsyncValidators,n)}function Er(i,o){let e=!1;if(i!==null){if(o.validator!==null){let n=tu(i);if(Array.isArray(n)&&n.length>0){let a=n.filter(r=>r!==o.validator);a.length!==n.length&&(e=!0,i.setValidators(a))}}if(o.asyncValidator!==null){let n=iu(i);if(Array.isArray(n)&&n.length>0){let a=n.filter(r=>r!==o.asyncValidator);a.length!==n.length&&(e=!0,i.setAsyncValidators(a))}}}let t=()=>{};return Sr(o._rawValidators,t),Sr(o._rawAsyncValidators,t),e}function Bg(i,o){o.valueAccessor.registerOnChange(e=>{i._pendingValue=e,i._pendingChange=!0,i._pendingDirty=!0,i.updateOn==="change"&&su(i,o)})}function Vg(i,o){o.valueAccessor.registerOnTouched(()=>{i._pendingTouched=!0,i.updateOn==="blur"&&i._pendingChange&&su(i,o),i.updateOn!=="submit"&&i.markAsTouched()})}function su(i,o){i._pendingDirty&&i.markAsDirty(),i.setValue(i._pendingValue,{emitModelToViewChange:!1}),o.viewToModelUpdate(i._pendingValue),i._pendingChange=!1}function zg(i,o){let e=(t,n)=>{o.valueAccessor.writeValue(t),n&&o.viewToModelUpdate(t)};i.registerOnChange(e),o._registerOnDestroy(()=>{i._unregisterOnChange(e)})}function lu(i,o){i==null,Bl(i,o)}function jg(i,o){return Er(i,o)}function cu(i,o){if(!i.hasOwnProperty("model"))return!1;let e=i.model;return e.isFirstChange()?!0:!Object.is(o,e.currentValue)}function Hg(i){return Object.getPrototypeOf(i.constructor)===Wm}function du(i,o){i._syncPendingControls(),o.forEach(e=>{let t=e.control;t.updateOn==="submit"&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})}function Ug(i,o){if(!o)return null;Array.isArray(o);let e,t,n;return o.forEach(a=>{a.constructor===Yi?e=a:Hg(a)?t=a:n=a}),n||t||e||null}function Gg(i,o){let e=i.indexOf(o);e>-1&&i.splice(e,1)}var mu={provide:Ng,useFactory:()=>{let i=s(Ht,{self:!0});return{setParseErrors:o=>{i.setParseErrorSource(o)},set onReset(o){i.onReset=o}}}},Ht=class extends wr{_parent=null;name=null;valueAccessor=null;isCustomControlBased=!1;userOnReset;resetSubscription;set onReset(o){this.userOnReset=o,this.resetSubscription?.unsubscribe(),this.resetSubscription=void 0,this.control&&(this.resetSubscription=this.control.events.subscribe(e=>{e instanceof xn&&this.control&&this.userOnReset?.(this.control.value)}),this.subscription?.add(this.resetSubscription))}isNativeFormElement=!1;rawValueAccessors;_selectedValueAccessor=null;get selectedValueAccessor(){return this._selectedValueAccessor??=Ug(this,this.rawValueAccessors)}parseErrorsValidator=null;renderer;injector;requiredValidatorViaDi;subscription;customControlBindings=null;constructor(o,e,t){super(),this.injector=o,this.renderer=e,this.rawValueAccessors=t,this.injector?.get(ti)?.onDestroy(()=>{this.removeParseErrorsValidator(this.control),this.subscription?.unsubscribe()})}setupCustomControl(){this.subscription?.unsubscribe();let o=this.injector?.get(ie);if(!this.control||!o)return;let e=o.markForCheck.bind(o);this.subscription=new _e,this.subscription.add(this.control.valueChanges.subscribe(e)),this.subscription.add(this.control.statusChanges.subscribe(e)),this.resetSubscription?.unsubscribe(),this.resetSubscription=void 0,this.userOnReset&&(this.resetSubscription=this.control.events.subscribe(t=>{t instanceof xn&&this.control&&this.userOnReset?.(this.control.value)}),this.subscription.add(this.resetSubscription)),this.parseErrorsValidator&&this.control.addValidators(this.parseErrorsValidator)}ngControlCreate(o){!o.nativeElement.hasAttribute?.("ngNoCva")&&(this.rawValueAccessors&&this.rawValueAccessors.length>0||this.valueAccessor!==null)||!o.customControl||(this.isCustomControlBased=!0,o.listenToCustomControlModel(n=>{this.control?.setValue(n,{emitModelToViewChange:!1}),this.control?.markAsDirty(),this.viewToModelUpdate(n)}),o.listenToCustomControlOutput("touch",()=>{this.control?.markAsTouched()}),this.customControlBindings={},this.isNativeFormElement=Rg(o.nativeElement),this.requiredValidatorViaDi=this._rawValidators.find(n=>n instanceof Tr))}ngControlUpdate(o,e){if(!this.isCustomControlBased)return;let t=this.control,n=this.customControlBindings;Object.is(n.value,t.value)||(n.value=t.value,o.setCustomControlModelInput(t.value)),this.bindControlProperty(o,n,"touched",t.touched),this.bindControlProperty(o,n,"dirty",t.dirty),this.bindControlProperty(o,n,"valid",t.valid),this.bindControlProperty(o,n,"invalid",t.invalid),this.bindControlProperty(o,n,"pending",t.pending),this.bindControlProperty(o,n,"disabled",t.disabled),this.shouldBindRequired&&this.bindControlProperty(o,n,"required",this.isRequired);let a=t.errors;if(n.errors!==a){n.errors=a;let r=this._convertErrors(a);o.setInputOnDirectives("errors",r)}}get isRequired(){return(this.requiredValidatorViaDi?._enabled||this.control?._hasRequired())??!1}get shouldBindRequired(){return!0}bindControlProperty(o,e,t,n){if(e[t]===n)return;e[t]=n;let a=o.setInputOnDirectives(t,n);this.isNativeFormElement&&!a&&(t==="disabled"||t==="required")&&this.renderer&&Og(this.renderer,o.nativeElement,t,n)}_convertErrors(o){if(o===null)return[];let e=this.control;return Object.entries(o).map(([t,n])=>new Ml({context:n,kind:t,control:e}))}setParseErrorSource(o){if(o===void 0)return;let e=null,t=K(()=>{let n=o();return n.length===0?null:n.reduce((a,r)=>(a[r.kind]=r,a),{})});this.parseErrorsValidator=(()=>e).bind(this),Et(()=>{e=t(),this.control?.updateValueAndValidity({emitEvent:!1})},{injector:this.injector})}removeParseErrorsValidator(o){this.parseErrorsValidator&&(o?.removeValidators(this.parseErrorsValidator),o?.updateValueAndValidity({emitEvent:!1}))}},Mr=class{_cd;constructor(o){this._cd=o}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var Xi=(()=>{class i extends Mr{constructor(e){super(e)}static \u0275fac=function(t){return new(t||i)(ce(Ht,2))};static \u0275dir=x({type:i,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,n){t&2&&f("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)},standalone:!1,features:[X]})}return i})(),no=(()=>{class i extends Mr{constructor(e){super(e)}static \u0275fac=function(t){return new(t||i)(ce(Mi,10))};static \u0275dir=x({type:i,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["","formArray",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,n){t&2&&f("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)("ng-submitted",n.isSubmitted)},standalone:!1,features:[X]})}return i})(),io=class extends to{constructor(o,e,t){super(Nl(e),Ll(t,e)),this.controls=o,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(o,e){let t=this._find(o);return t||(this.controls[o]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(o,e,t={}){this.registerControl(o,e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}removeControl(o,e={}){let t=this._find(o);t&&t._registerOnCollectionChange(()=>{}),delete this.controls[o],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(o,e,t={}){let n=this._find(o);n&&n._registerOnCollectionChange(()=>{}),delete this.controls[o],e&&this.registerControl(o,e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}contains(o){return this._find(o)?.enabled===!0}setValue(o,e={}){mt(()=>{ou(this,!0,o),Object.keys(o).forEach(t=>{nu(this,!0,t),this.controls[t].setValue(o[t],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)})}patchValue(o,e={}){o!=null&&(Object.keys(o).forEach(t=>{let n=this._find(t);n&&n.patchValue(o[t],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(o={},e={}){this._forEachChild((t,n)=>{t.reset(o?o[n]:null,Me(B({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new xn(this))}getRawValue(){return this._reduceChildren({},(o,e,t)=>(o[t]=e.getRawValue(),o))}_syncPendingControls(){let o=this._reduceChildren(!1,(e,t)=>t._syncPendingControls()?!0:e);return o&&this.updateValueAndValidity({onlySelf:!0}),o}_forEachChild(o){Object.keys(this.controls).forEach(e=>{let t=this.controls[e];t&&o(t,e)})}_setUpControls(){this._forEachChild(o=>{o.setParent(this),o._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(o){for(let[e,t]of Object.entries(this.controls))if(this.contains(e)&&o(t))return!0;return!1}_reduceValue(){let o={};return this._reduceChildren(o,(e,t,n)=>((t.enabled||this.disabled)&&(e[n]=t.value),e))}_reduceChildren(o,e){let t=o;return this._forEachChild((n,a)=>{t=e(t,n,a)}),t}_allControlsDisabled(){for(let o of Object.keys(this.controls))if(this.controls[o].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(o){return au(this.controls,o)?this.controls[o]:null}};var Il=class extends io{};var $g={provide:Mi,useExisting:lt(()=>na)},Qo=Promise.resolve(),na=(()=>{class i extends Mi{callSetDisabledState;get submitted(){return mt(this.submittedReactive)}_submitted=K(()=>this.submittedReactive());submittedReactive=N(!1);_directives=new Set;form;ngSubmit=new $;options;constructor(e,t,n){super(),this.callSetDisabledState=n,this.form=new io({},Fl(e),Pl(t))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){Qo.then(()=>{let t=this._findContainer(e.path);e.control=t.registerControl(e.name,e.control),e._setupWithForm(this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){Qo.then(()=>{this._findContainer(e.path)?.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){Qo.then(()=>{let t=this._findContainer(e.path),n=new io({});lu(n,e),t.registerControl(e.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){Qo.then(()=>{this._findContainer(e.path)?.removeControl?.(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,t){Qo.then(()=>{this.form.get(e.path).setValue(t)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),du(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new kr(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(t){return new(t||i)(ce(wn,10),ce(Ar,10),ce(ia,8))};static \u0275dir=x({type:i,selectors:[["form",3,"ngNoForm","",3,"formGroup","",3,"formArray",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,n){t&1&&I("submit",function(r){return n.onSubmit(r)})("reset",function(){return n.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[te([$g]),X]})}return i})();function jm(i,o){let e=i.indexOf(o);e>-1&&i.splice(e,1)}function Hm(i){return typeof i=="object"&&i!==null&&Object.keys(i).length===2&&"value"in i&&"disabled"in i}var ta=class extends to{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(o=null,e,t){super(Nl(e),Ll(t,e)),this._applyFormState(o),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Ir(e)&&(e.nonNullable||e.initialValueIsDefault)&&(Hm(o)?this.defaultValue=o.value:this.defaultValue=o)}setValue(o,e={}){mt(()=>{this.value=this._pendingValue=o,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(t=>t(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)})}patchValue(o,e={}){this.setValue(o,e)}reset(o=this.defaultValue,e={}){this._applyFormState(o),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),e.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,e?.emitEvent!==!1&&this._events.next(new xn(this))}_updateValue(){}_anyControls(o){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(o){this._onChange.push(o)}_unregisterOnChange(o){jm(this._onChange,o)}registerOnDisabledChange(o){this._onDisabledChange.push(o)}_unregisterOnDisabledChange(o){jm(this._onDisabledChange,o)}_forEachChild(o){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(o){Hm(o)?(this.value=this._pendingValue=o.value,o.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=o}};var Wg=i=>i instanceof ta;var qg={provide:Ht,useExisting:lt(()=>Vl)},Um=Promise.resolve(),Vl=(()=>{class i extends Ht{_changeDetectorRef;callSetDisabledState;control=new ta;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new $;constructor(e,t,n,a,r,m,h,g){super(h,g,a),this._changeDetectorRef=r,this.callSetDisabledState=m,this._parent=e,this._setValidators(t),this._setAsyncValidators(n)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let t=e.name.previousValue;this.formDirective.removeControl({name:t,path:this._getPath(t)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),cu(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}\u0275ngControlCreate(e){super.ngControlCreate(e)}\u0275ngControlUpdate(e){super.ngControlUpdate(e,!1)}get shouldBindRequired(){return!1}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,Al(this.control,this,this.callSetDisabledState)),this.control.updateValueAndValidity({emitEvent:!1})}_setupWithForm(e){this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,Al(this.control,this,e))}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){Um.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let t=e.isDisabled.currentValue,n=t!==0&&F(t);Um.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?ru(e,this._parent):[e]}static \u0275fac=function(t){return new(t||i)(ce(Mi,9),ce(wn,10),ce(Ar,10),ce(fi,10),ce(ie,8),ce(ia,8),ce(q,8),ce(ue,8))};static \u0275dir=x({type:i,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[te([qg,mu]),X,ye,Rs(null)]})}return i})();var Or=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return i})(),Kg={provide:fi,useExisting:lt(()=>zl),multi:!0},zl=(()=>{class i extends Wm{writeValue(e){let t=e??"";this.setProperty("value",t)}registerOnChange(e){this.onChange=t=>{e(t==""?null:parseFloat(t))}}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["input","type","number","formControlName","",3,"ngNoCva",""],["input","type","number","formControl","",3,"ngNoCva",""],["input","type","number","ngModel","",3,"ngNoCva",""]],hostBindings:function(t,n){t&1&&I("input",function(r){return n.onChange(r.target.value)})("blur",function(){return n.onTouched()})},standalone:!1,features:[te([Kg]),X]})}return i})();var Tl=class extends to{constructor(o,e,t){super(Nl(e),Ll(t,e)),this.controls=o,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(o){return this.controls[this._adjustIndex(o)]}push(o,e={}){Array.isArray(o)?o.forEach(t=>{this.controls.push(t),this._registerControl(t)}):(this.controls.push(o),this._registerControl(o)),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(o,e,t={}){this.controls.splice(o,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:t.emitEvent})}removeAt(o,e={}){let t=this._adjustIndex(o);t<0&&(t=0),this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(o,e,t={}){let n=this._adjustIndex(o);n<0&&(n=0),this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),e&&(this.controls.splice(n,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(o,e={}){mt(()=>{ou(this,!1,o),o.forEach((t,n)=>{nu(this,!1,n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)})}patchValue(o,e={}){o!=null&&(o.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(o=[],e={}){this._forEachChild((t,n)=>{t.reset(o[n],Me(B({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new xn(this))}getRawValue(){return this.controls.map(o=>o.getRawValue())}clear(o={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:o.emitEvent}))}_adjustIndex(o){return o<0?o+this.length:o}_syncPendingControls(){let o=this.controls.reduce((e,t)=>t._syncPendingControls()?!0:e,!1);return o&&this.updateValueAndValidity({onlySelf:!0}),o}_forEachChild(o){this.controls.forEach((e,t)=>{o(e,t)})}_updateValue(){this.value=this.controls.filter(o=>o.enabled||this.disabled).map(o=>o.value)}_anyControls(o){return this.controls.some(e=>e.enabled&&o(e))}_setUpControls(){this._forEachChild(o=>this._registerControl(o))}_allControlsDisabled(){for(let o of this.controls)if(o.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(o){o.setParent(this),o._registerOnCollectionChange(this._onCollectionChange)}_find(o){return this.at(o)??null}};var Yg=(()=>{class i extends Mi{callSetDisabledState;get submitted(){return mt(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=K(()=>this._submittedReactive());_submittedReactive=N(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];constructor(e,t,n){super(),this.callSetDisabledState=n,this._setValidators(e),this._setAsyncValidators(t)}ngOnChanges(e){this.onChanges(e)}ngOnDestroy(){this.onDestroy()}onChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}onDestroy(){this.form&&(Er(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get path(){return[]}addControl(e){let t=this.form.get(e.path);return e._setupWithForm(t,this.callSetDisabledState),t.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),t}getControl(e){return this.form.get(e.path)}removeControl(e){zm(e.control||null,e,!1),Gg(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}getFormArray(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}updateModel(e,t){this.form.get(e.path).setValue(t)}onReset(){this.resetForm()}resetForm(e=void 0,t={}){this.form.reset(e,t),this._submittedReactive.set(!1)}onSubmit(e){return this.submitted=!0,du(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new kr(this.control)),e?.target?.method==="dialog"}_updateDomValue(){this.directives.forEach(e=>{let t=e.control,n=this.form.get(e.path);t!==n&&(zm(t||null,e),Wg(n)&&e._setupWithForm(n,this.callSetDisabledState))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let t=this.form.get(e.path);lu(t,e),t.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){let t=this.form?.get(e.path);t&&jg(t,e)&&t.updateValueAndValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm?._registerOnCollectionChange(()=>{})}_updateValidators(){Bl(this.form,this),this._oldForm&&Er(this._oldForm,this)}_checkFormPresent(){this.form}static \u0275fac=function(t){return new(t||i)(ce(wn,10),ce(Ar,10),ce(ia,8))};static \u0275dir=x({type:i,features:[X,ye]})}return i})();var uu=new b("");var Xg={provide:Ht,useExisting:lt(()=>Dn)},Dn=(()=>{class i extends Ht{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new $;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,t,n,a,r,m,h){super(h,m,a),this._ngModelWarningConfig=r,this._parent=e,this._setValidators(t),this._setAsyncValidators(n)}_setupWithForm(e,t){this.control=e,this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,Al(e,this,t))}ngOnChanges(e){this._added||this._setUpControl(),cu(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective?.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return ru(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}\u0275ngControlCreate(e){super.ngControlCreate(e)}\u0275ngControlUpdate(e){this.isCustomControlBased&&(this._added||this._setUpControl(),super.ngControlUpdate(e,!0))}static \u0275fac=function(t){return new(t||i)(ce(Mi,13),ce(wn,10),ce(Ar,10),ce(fi,10),ce(uu,8),ce(ue,8),ce(q,8))};static \u0275dir=x({type:i,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[te([Xg,mu]),X,ye,Rs(null)]})}return i})();var Zg={provide:Mi,useExisting:lt(()=>oi)},oi=(()=>{class i extends Yg{form=null;ngSubmit=new $;get control(){return this.form}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","formGroup",""]],hostBindings:function(t,n){t&1&&I("submit",function(r){return n.onSubmit(r)})("reset",function(){return n.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[te([Zg]),X]})}return i})();var hu=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function Gm(i){return!!i&&(i.asyncValidators!==void 0||i.validators!==void 0||i.updateOn!==void 0)}var oo=(()=>{class i{useNonNullable=!1;get nonNullable(){let e=new i;return e.useNonNullable=!0,e}group(e,t=null){let n=this._reduceControls(e),a={};return Gm(t)?a=t:t!==null&&(a.validators=t.validator,a.asyncValidators=t.asyncValidator),new io(n,a)}record(e,t=null){let n=this._reduceControls(e);return new Il(n,t)}control(e,t,n){let a={};return this.useNonNullable?(Gm(t)?a=t:(a.validators=t,a.asyncValidators=n),new ta(e,Me(B({},a),{nonNullable:!0}))):new ta(e,t,n)}array(e,t,n){let a=e.map(r=>this._createControl(r));return new Tl(a,t,n)}_reduceControls(e){let t={};return Object.keys(e).forEach(n=>{t[n]=this._createControl(e[n])}),t}_createControl(e){if(e instanceof ta)return e;if(e instanceof to)return e;if(Array.isArray(e)){let t=e[0],n=e.length>1?e[1]:null,a=e.length>2?e[2]:null;return this.control(t,n,a)}else return this.control(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var ao=(()=>{class i{static withConfig(e){return{ngModule:i,providers:[{provide:ia,useValue:e.callSetDisabledState??Rr}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[hu]})}return i})(),ro=(()=>{class i{static withConfig(e){return{ngModule:i,providers:[{provide:uu,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:ia,useValue:e.callSetDisabledState??Rr}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[hu]})}return i})();var pu=new b("MAT_INPUT_VALUE_ACCESSOR");var jl=class{_box;_destroyed=new M;_resizeSubject=new M;_resizeObserver;_elementObservables=new Map;constructor(o){this._box=o,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(e=>this._resizeSubject.next(e)))}observe(o){return this._elementObservables.has(o)||this._elementObservables.set(o,new ft(e=>{let t=this._resizeSubject.subscribe(e);return this._resizeObserver?.observe(o,{box:this._box}),()=>{this._resizeObserver?.unobserve(o),t.unsubscribe(),this._elementObservables.delete(o)}}).pipe(pe(e=>e.some(t=>t.target===o)),ks({bufferSize:1,refCount:!0}),ne(this._destroyed))),this._elementObservables.get(o)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}},fu=(()=>{class i{_cleanupErrorListener;_observers=new Map;_ngZone=s(j);constructor(){typeof ResizeObserver<"u"}ngOnDestroy(){for(let[,e]of this._observers)e.destroy();this._observers.clear(),this._cleanupErrorListener?.()}observe(e,t){let n=t?.box||"content-box";return this._observers.has(n)||this._observers.set(n,new jl(n)),this._observers.get(n).observe(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Qg=["notch"],Jg=["*"],gu=["iconPrefixContainer"],_u=["textPrefixContainer"],bu=["iconSuffixContainer"],vu=["textSuffixContainer"],e_=["textField"],t_=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],i_=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function n_(i,o){i&1&&v(0,"span",21)}function o_(i,o){if(i&1&&(l(0,"label",20),H(1,1),S(2,n_,1,0,"span",21),c()),i&2){let e=C(2);w("floating",e._shouldLabelFloat())("monitorResize",e._hasOutline())("id",e._labelId),Y("for",e._control.disableAutomaticLabeling?null:e._control.id),d(2),E(!e.hideRequiredMarker&&e._control.required?2:-1)}}function a_(i,o){if(i&1&&S(0,o_,3,5,"label",20),i&2){let e=C();E(e._hasFloatingLabel()?0:-1)}}function r_(i,o){i&1&&v(0,"div",7)}function s_(i,o){}function l_(i,o){if(i&1&&Re(0,s_,0,0,"ng-template",13),i&2){C(2);let e=Ye(1);w("ngTemplateOutlet",e)}}function c_(i,o){if(i&1&&(l(0,"div",9),S(1,l_,1,1,null,13),c()),i&2){let e=C();w("matFormFieldNotchedOutlineOpen",e._shouldLabelFloat()),d(),E(e._forceDisplayInfixLabel()?-1:1)}}function d_(i,o){i&1&&(l(0,"div",10,2),H(2,2),c())}function m_(i,o){i&1&&(l(0,"div",11,3),H(2,3),c())}function u_(i,o){}function h_(i,o){if(i&1&&Re(0,u_,0,0,"ng-template",13),i&2){C();let e=Ye(1);w("ngTemplateOutlet",e)}}function p_(i,o){i&1&&(l(0,"div",14,4),H(2,4),c())}function f_(i,o){i&1&&(l(0,"div",15,5),H(2,5),c())}function g_(i,o){i&1&&v(0,"div",16)}function __(i,o){i&1&&(l(0,"div",18),H(1,6),c())}function b_(i,o){if(i&1&&(l(0,"mat-hint",22),u(1),c()),i&2){let e=C(2);w("id",e._hintLabelId),d(),Z(e.hintLabel)}}function v_(i,o){if(i&1&&(l(0,"div",19),S(1,b_,2,2,"mat-hint",22),H(2,7),v(3,"div",23),H(4,8),c()),i&2){let e=C();d(),E(e.hintLabel?1:-1)}}var Ut=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-label"]]})}return i})(),Su=new b("MatError"),so=(()=>{class i{id=s(he).getId("mat-mdc-error-");static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-error"],["","matError",""]],hostAttrs:[1,"mat-mdc-form-field-error","mat-mdc-form-field-bottom-align"],hostVars:1,hostBindings:function(t,n){t&2&&at("id",n.id)},inputs:{id:"id"},features:[te([{provide:Su,useExisting:i}])]})}return i})(),Nr=(()=>{class i{align="start";id=s(he).getId("mat-mdc-hint-");static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(t,n){t&2&&(at("id",n.id),Y("align",null),f("mat-mdc-form-field-hint-end",n.align==="end"))},inputs:{align:"align",id:"id"}})}return i})(),y_=new b("MatPrefix");var C_=new b("MatSuffix");var Eu=new b("FloatingLabelParent"),yu=(()=>{class i{_elementRef=s(O);get floating(){return this._floating}set floating(e){this._floating=e,this.monitorResize&&this._handleResize()}_floating=!1;get monitorResize(){return this._monitorResize}set monitorResize(e){this._monitorResize=e,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}_monitorResize=!1;_resizeObserver=s(fu);_ngZone=s(j);_parent=s(Eu);_resizeSubscription=new _e;ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return x_(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(t,n){t&2&&f("mdc-floating-label--float-above",n.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"}})}return i})();function x_(i){let o=i;if(o.offsetParent!==null)return o.scrollWidth;let e=o.cloneNode(!0);e.style.setProperty("position","absolute"),e.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(e);let t=e.scrollWidth;return e.remove(),t}var Cu="mdc-line-ripple--active",Pr="mdc-line-ripple--deactivating",xu=(()=>{class i{_elementRef=s(O);_cleanupTransitionEnd;constructor(){let e=s(j),t=s(ue);e.runOutsideAngular(()=>{this._cleanupTransitionEnd=t.listen(this._elementRef.nativeElement,"transitionend",this._handleTransitionEnd)})}activate(){let e=this._elementRef.nativeElement.classList;e.remove(Pr),e.add(Cu)}deactivate(){this._elementRef.nativeElement.classList.add(Pr)}_handleTransitionEnd=e=>{let t=this._elementRef.nativeElement.classList,n=t.contains(Pr);e.propertyName==="opacity"&&n&&t.remove(Cu,Pr)};ngOnDestroy(){this._cleanupTransitionEnd()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"]})}return i})(),wu=(()=>{class i{_elementRef=s(O);_ngZone=s(j);open=!1;_notch;ngAfterViewInit(){let e=this._elementRef.nativeElement,t=e.querySelector(".mdc-floating-label");t?(e.classList.add("mdc-notched-outline--upgraded"),typeof requestAnimationFrame=="function"&&(t.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>t.style.transitionDuration="")}))):e.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(e){let t=this._notch.nativeElement;!this.open||!e?t.style.width="":t.style.width=`calc(${e}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`}_setMaxWidth(e){this._notch.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${e}px)`)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(t,n){if(t&1&&Ce(Qg,5),t&2){let a;T(a=R())&&(n._notch=a.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(t,n){t&2&&f("mdc-notched-outline--notched",n.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},ngContentSelectors:Jg,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(t,n){t&1&&(le(),ct(0,"div",1),Se(1,"div",2,0),H(3),Pe(),ct(4,"div",3))},encapsulation:2})}return i})(),oa=(()=>{class i{value=null;stateChanges;id;placeholder;ngControl=null;focused=!1;empty=!1;shouldLabelFloat=!1;required=!1;disabled=!1;errorState=!1;controlType;autofilled;userAriaDescribedBy;disableAutomaticLabeling;describedByIds;static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i})}return i})();var kn=new b("MatFormField"),w_=new b("MAT_FORM_FIELD_DEFAULT_OPTIONS"),Du="fill",D_="auto",ku="fixed",k_="translateY(-50%)",It=(()=>{class i{_elementRef=s(O);_changeDetectorRef=s(ie);_platform=s(se);_idGenerator=s(he);_ngZone=s(j);_defaults=s(w_,{optional:!0});_currentDirection;_textField;_iconPrefixContainer;_textPrefixContainer;_iconSuffixContainer;_textSuffixContainer;_floatingLabel;_notchedOutline;_lineRipple;_iconPrefixContainerSignal=Ao("iconPrefixContainer");_textPrefixContainerSignal=Ao("textPrefixContainer");_iconSuffixContainerSignal=Ao("iconSuffixContainer");_textSuffixContainerSignal=Ao("textSuffixContainer");_prefixSuffixContainers=K(()=>[this._iconPrefixContainerSignal(),this._textPrefixContainerSignal(),this._iconSuffixContainerSignal(),this._textSuffixContainerSignal()].map(e=>e?.nativeElement).filter(e=>e!==void 0));_formFieldControl;_prefixChildren;_suffixChildren;_errorChildren;_hintChildren;_labelChild=Qc(Ut);get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=rt(e)}_hideRequiredMarker=!1;color="primary";get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||D_}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e,this._changeDetectorRef.markForCheck())}_floatLabel;get appearance(){return this._appearanceSignal()}set appearance(e){let t=e||this._defaults?.appearance||Du;this._appearanceSignal.set(t)}_appearanceSignal=N(Du);get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||ku}set subscriptSizing(e){this._subscriptSizing=e||this._defaults?.subscriptSizing||ku}_subscriptSizing=null;get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}_hintLabel="";_hasIconPrefix=!1;_hasTextPrefix=!1;_hasIconSuffix=!1;_hasTextSuffix=!1;_labelId=this._idGenerator.getId("mat-mdc-form-field-label-");_hintLabelId=this._idGenerator.getId("mat-mdc-hint-");_describedByIds;get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(e){this._explicitFormFieldControl=e}_destroyed=new M;_isFocused=null;_explicitFormFieldControl;_previousControl=null;_previousControlValidatorFn=null;_stateChanges;_valueChanges;_describedByChanges;_outlineLabelOffsetResizeObserver=null;_animationsDisabled=de();constructor(){let e=this._defaults,t=s(He);e&&(e.appearance&&(this.appearance=e.appearance),this._hideRequiredMarker=!!e?.hideRequiredMarker,e.color&&(this.color=e.color)),Et(()=>this._currentDirection=t.valueSignal()),this._syncOutlineLabelOffset()}ngAfterViewInit(){this._updateFocusState(),this._animationsDisabled||this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-form-field-animations-enabled")},300)}),this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._control.ngControl&&this._control.ngControl.control&&(this._previousControlValidatorFn=this._control.ngControl.control.validator),this._previousControl=this._control),this._control.ngControl&&this._control.ngControl.control&&this._control.ngControl.control.validator!==this._previousControlValidatorFn&&this._changeDetectorRef.markForCheck()}ngOnDestroy(){this._outlineLabelOffsetResizeObserver?.disconnect(),this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._describedByChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getLabelId=K(()=>this._hasFloatingLabel()?this._labelId:null);getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(e){let t=this._control,n="mat-mdc-form-field-type-";e&&this._elementRef.nativeElement.classList.remove(n+e.controlType),t.controlType&&this._elementRef.nativeElement.classList.add(n+t.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=t.stateChanges.subscribe(()=>{this._updateFocusState(),this._changeDetectorRef.markForCheck()}),this._describedByChanges?.unsubscribe(),this._describedByChanges=t.stateChanges.pipe(Ie([void 0,void 0]),Ae(()=>[t.errorState,t.userAriaDescribedBy]),Ds(),pe(([[a,r],[m,h]])=>a!==m||r!==h)).subscribe(()=>this._syncDescribedByIds()),this._valueChanges?.unsubscribe(),t.ngControl&&t.ngControl.valueChanges&&(this._valueChanges=t.ngControl.valueChanges.pipe(ne(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(e=>!e._isText),this._hasTextPrefix=!!this._prefixChildren.find(e=>e._isText),this._hasIconSuffix=!!this._suffixChildren.find(e=>!e._isText),this._hasTextSuffix=!!this._suffixChildren.find(e=>e._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),je(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){this._control}_updateFocusState(){let e=this._control.focused;e&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!e&&(this._isFocused||this._isFocused===null)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._elementRef.nativeElement.classList.toggle("mat-focused",e),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",e)}_syncOutlineLabelOffset(){td({earlyRead:()=>{if(this._appearanceSignal()!=="outline")return this._outlineLabelOffsetResizeObserver?.disconnect(),null;if(globalThis.ResizeObserver){this._outlineLabelOffsetResizeObserver||=new globalThis.ResizeObserver(()=>{this._writeOutlinedLabelStyles(this._getOutlinedLabelOffset())});for(let e of this._prefixSuffixContainers())this._outlineLabelOffsetResizeObserver.observe(e,{box:"border-box"})}return this._getOutlinedLabelOffset()},write:e=>this._writeOutlinedLabelStyles(e())})}_shouldAlwaysFloat(){return this.floatLabel==="always"}_hasOutline(){return this.appearance==="outline"}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_hasFloatingLabel=K(()=>!!this._labelChild());_shouldLabelFloat(){return this._hasFloatingLabel()?this._control.shouldLabelFloat||this._shouldAlwaysFloat():!1}_shouldForward(e){let t=this._control?this._control.ngControl:null;return t&&t[e]}_getSubscriptMessageType(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){!this._hasOutline()||!this._floatingLabel||!this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(0):this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth())}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){this._hintChildren}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&typeof this._control.userAriaDescribedBy=="string"&&e.push(...this._control.userAriaDescribedBy.split(" ")),this._getSubscriptMessageType()==="hint"){let a=this._hintChildren?this._hintChildren.find(m=>m.align==="start"):null,r=this._hintChildren?this._hintChildren.find(m=>m.align==="end"):null;a?e.push(a.id):this._hintLabel&&e.push(this._hintLabelId),r&&e.push(r.id)}else this._errorChildren&&e.push(...this._errorChildren.map(a=>a.id));let t=this._control.describedByIds,n;if(t){let a=this._describedByIds||e;n=e.concat(t.filter(r=>r&&!a.includes(r)))}else n=e;this._control.setDescribedByIds(n),this._describedByIds=e}}_getOutlinedLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return null;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return["",null];if(!this._isAttachedToDom())return null;let e=this._iconPrefixContainer?.nativeElement,t=this._textPrefixContainer?.nativeElement,n=this._iconSuffixContainer?.nativeElement,a=this._textSuffixContainer?.nativeElement,r=e?.getBoundingClientRect().width??0,m=t?.getBoundingClientRect().width??0,h=n?.getBoundingClientRect().width??0,g=a?.getBoundingClientRect().width??0,_=this._currentDirection==="rtl"?"-1":"1",y=`${r+m}px`,U=`calc(${_} * (${y} + var(--mat-mdc-form-field-label-offset-x, 0px)))`,J=`var(--mat-mdc-form-field-label-transform, ${k_} translateX(${U}))`,me=r+m+h+g;return[J,me]}_writeOutlinedLabelStyles(e){if(e!==null){let[t,n]=e;this._floatingLabel&&(this._floatingLabel.element.style.transform=t),n!==null&&this._notchedOutline?._setMaxWidth(n)}}_isAttachedToDom(){let e=this._elementRef.nativeElement;if(e.getRootNode){let t=e.getRootNode();return t&&t!==e}return document.documentElement.contains(e)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-form-field"]],contentQueries:function(t,n,a){if(t&1&&(Yc(a,n._labelChild,Ut,5),tt(a,oa,5)(a,y_,5)(a,C_,5)(a,Su,5)(a,Nr,5)),t&2){Os();let r;T(r=R())&&(n._formFieldControl=r.first),T(r=R())&&(n._prefixChildren=r),T(r=R())&&(n._suffixChildren=r),T(r=R())&&(n._errorChildren=r),T(r=R())&&(n._hintChildren=r)}},viewQuery:function(t,n){if(t&1&&(Xc(n._iconPrefixContainerSignal,gu,5)(n._textPrefixContainerSignal,_u,5)(n._iconSuffixContainerSignal,bu,5)(n._textSuffixContainerSignal,vu,5),Ce(e_,5)(gu,5)(_u,5)(bu,5)(vu,5)(yu,5)(wu,5)(xu,5)),t&2){Os(4);let a;T(a=R())&&(n._textField=a.first),T(a=R())&&(n._iconPrefixContainer=a.first),T(a=R())&&(n._textPrefixContainer=a.first),T(a=R())&&(n._iconSuffixContainer=a.first),T(a=R())&&(n._textSuffixContainer=a.first),T(a=R())&&(n._floatingLabel=a.first),T(a=R())&&(n._notchedOutline=a.first),T(a=R())&&(n._lineRipple=a.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:38,hostBindings:function(t,n){t&2&&f("mat-mdc-form-field-label-always-float",n._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",n._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",n._hasIconSuffix)("mat-form-field-invalid",n._control.errorState)("mat-form-field-disabled",n._control.disabled)("mat-form-field-autofilled",n._control.autofilled)("mat-form-field-appearance-fill",n.appearance=="fill")("mat-form-field-appearance-outline",n.appearance=="outline")("mat-form-field-hide-placeholder",n._hasFloatingLabel()&&!n._shouldLabelFloat())("mat-primary",n.color!=="accent"&&n.color!=="warn")("mat-accent",n.color==="accent")("mat-warn",n.color==="warn")("ng-untouched",n._shouldForward("untouched"))("ng-touched",n._shouldForward("touched"))("ng-pristine",n._shouldForward("pristine"))("ng-dirty",n._shouldForward("dirty"))("ng-valid",n._shouldForward("valid"))("ng-invalid",n._shouldForward("invalid"))("ng-pending",n._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],features:[te([{provide:kn,useExisting:i},{provide:Eu,useExisting:i}])],ngContentSelectors:i_,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],["aria-atomic","true","aria-live","polite",1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(t,n){if(t&1&&(le(t_),Re(0,a_,1,1,"ng-template",null,0,Fs),l(2,"div",6,1),I("click",function(r){return n._control.onContainerClick(r)}),S(4,r_,1,0,"div",7),l(5,"div",8),S(6,c_,2,2,"div",9),S(7,d_,3,0,"div",10),S(8,m_,3,0,"div",11),l(9,"div",12),S(10,h_,1,1,null,13),H(11),c(),S(12,p_,3,0,"div",14),S(13,f_,3,0,"div",15),c(),S(14,g_,1,0,"div",16),c(),l(15,"div",17),S(16,__,2,0,"div",18)(17,v_,5,1,"div",19),c()),t&2){let a;d(2),f("mdc-text-field--filled",!n._hasOutline())("mdc-text-field--outlined",n._hasOutline())("mdc-text-field--no-label",!n._hasFloatingLabel())("mdc-text-field--disabled",n._control.disabled)("mdc-text-field--invalid",n._control.errorState),d(2),E(!n._hasOutline()&&!n._control.disabled?4:-1),d(2),E(n._hasOutline()?6:-1),d(),E(n._hasIconPrefix?7:-1),d(),E(n._hasTextPrefix?8:-1),d(2),E(!n._hasOutline()||n._forceDisplayInfixLabel()?10:-1),d(2),E(n._hasTextSuffix?12:-1),d(),E(n._hasIconSuffix?13:-1),d(),E(n._hasOutline()?-1:14),d(),f("mat-mdc-form-field-subscript-dynamic-size",n.subscriptSizing==="dynamic");let r=n._getSubscriptMessageType();d(),E((a=r)==="error"?16:a==="hint"?17:-1)}},dependencies:[yu,wu,$s,xu,Nr],styles:[`.mdc-text-field {
|
|
471
|
+
`],encapsulation:2})}return i})(),gr;function ng(){if(gr===void 0&&(gr=null,typeof window<"u")){let i=window;i.trustedTypes!==void 0&&(gr=i.trustedTypes.createPolicy("angular#components",{createHTML:o=>o}))}return gr}function vn(i){return ng()?.createHTML(i)||i}function ym(i,o,e){let t=e.sanitize(gt.HTML,o);i.innerHTML=vn(t||"")}function og(i){if(i.type==="characterData"&&i.target instanceof Comment)return!0;if(i.type==="childList"){for(let o=0;o<i.addedNodes.length;o++)if(!(i.addedNodes[o]instanceof Comment))return!1;for(let o=0;o<i.removedNodes.length;o++)if(!(i.removedNodes[o]instanceof Comment))return!1;return!0}return!1}var Cm=(()=>{class i{create(e){return typeof MutationObserver>"u"?null:new MutationObserver(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),xm=(()=>{class i{_mutationObserverFactory=s(Cm);_observedElements=new Map;_ngZone=s(j);ngOnDestroy(){this._observedElements.forEach((e,t)=>this._cleanupObserver(t))}observe(e){let t=bt(e);return new ft(n=>{let r=this._observeElement(t).pipe(Ae(m=>m.filter(h=>!og(h))),ge(m=>!!m.length)).subscribe(m=>{this._ngZone.run(()=>{n.next(m)})});return()=>{r.unsubscribe(),this._unobserveElement(t)}})}_observeElement(e){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(e))this._observedElements.get(e).count++;else{let t=new M,n=this._mutationObserverFactory.create(a=>t.next(a));n&&n.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:n,stream:t,count:1})}return this._observedElements.get(e).stream})}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){let{observer:t,stream:n}=this._observedElements.get(e);t&&t.disconnect(),n.complete(),this._observedElements.delete(e)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),wm=(()=>{class i{_contentObserver=s(xm);_elementRef=s(O);event=new $;get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._disabled?this._unsubscribe():this._subscribe()}_disabled=!1;get debounce(){return this._debounce}set debounce(e){this._debounce=Tt(e),this._subscribe()}_debounce;_currentSubscription=null;ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();let e=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?e.pipe(ei(this.debounce)):e).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",F],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return i})(),Zn=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[Cm]})}return i})();var wl=(()=>{class i{_platform=s(se);isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return rg(e)&&getComputedStyle(e).visibility==="visible"}isTabbable(e){if(!this._platform.isBrowser)return!1;let t=ag(pg(e));if(t&&(Dm(t)===-1||!this.isVisible(t)))return!1;let n=e.nodeName.toLowerCase(),a=Dm(e);return e.hasAttribute("contenteditable")?a!==-1:n==="iframe"||n==="object"||this._platform.WEBKIT&&this._platform.IOS&&!ug(e)?!1:n==="audio"?e.hasAttribute("controls")?a!==-1:!1:n==="video"?a===-1?!1:a!==null?!0:this._platform.FIREFOX||e.hasAttribute("controls"):e.tabIndex>=0}isFocusable(e,t){return hg(e)&&!this.isDisabled(e)&&(t?.ignoreVisibility||this.isVisible(e))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function ag(i){try{return i.frameElement}catch(o){return null}}function rg(i){return!!(i.offsetWidth||i.offsetHeight||typeof i.getClientRects=="function"&&i.getClientRects().length)}function sg(i){let o=i.nodeName.toLowerCase();return o==="input"||o==="select"||o==="button"||o==="textarea"}function lg(i){return dg(i)&&i.type=="hidden"}function cg(i){return mg(i)&&i.hasAttribute("href")}function dg(i){return i.nodeName.toLowerCase()=="input"}function mg(i){return i.nodeName.toLowerCase()=="a"}function Em(i){if(!i.hasAttribute("tabindex")||i.tabIndex===void 0)return!1;let o=i.getAttribute("tabindex");return!!(o&&!isNaN(parseInt(o,10)))}function Dm(i){if(!Em(i))return null;let o=parseInt(i.getAttribute("tabindex")||"",10);return isNaN(o)?-1:o}function ug(i){let o=i.nodeName.toLowerCase(),e=o==="input"&&i.type;return e==="text"||e==="password"||o==="select"||o==="textarea"}function hg(i){return lg(i)?!1:sg(i)||cg(i)||i.hasAttribute("contenteditable")||Em(i)}function pg(i){return i.ownerDocument&&i.ownerDocument.defaultView||window}var xl=class{_element;_checker;_ngZone;_document;_injector;_startAnchor=null;_endAnchor=null;_hasAttached=!1;startAnchorListener=()=>this.focusLastTabbableElement();endAnchorListener=()=>this.focusFirstTabbableElement();get enabled(){return this._enabled}set enabled(o){this._enabled=o,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(o,this._startAnchor),this._toggleAnchorTabIndex(o,this._endAnchor))}_enabled=!0;constructor(o,e,t,n,a=!1,r){this._element=o,this._checker=e,this._ngZone=t,this._document=n,this._injector=r,a||this.attachAnchors()}destroy(){let o=this._startAnchor,e=this._endAnchor;o&&(o.removeEventListener("focus",this.startAnchorListener),o.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(o){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(o)))})}focusFirstTabbableElementWhenReady(o){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(o)))})}focusLastTabbableElementWhenReady(o){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(o)))})}_getRegionBoundary(o){let e=this._element.querySelectorAll(`[cdk-focus-region-${o}], [cdkFocusRegion${o}], [cdk-focus-${o}]`);return o=="start"?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(o){let e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){let t=this._getFirstTabbableElement(e);return t?.focus(o),!!t}return e.focus(o),!0}return this.focusFirstTabbableElement(o)}focusFirstTabbableElement(o){let e=this._getRegionBoundary("start");return e&&e.focus(o),!!e}focusLastTabbableElement(o){let e=this._getRegionBoundary("end");return e&&e.focus(o),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(o){if(this._checker.isFocusable(o)&&this._checker.isTabbable(o))return o;let e=o.children;for(let t=0;t<e.length;t++){let n=e[t].nodeType===this._document.ELEMENT_NODE?this._getFirstTabbableElement(e[t]):null;if(n)return n}return null}_getLastTabbableElement(o){if(this._checker.isFocusable(o)&&this._checker.isTabbable(o))return o;let e=o.children;for(let t=e.length-1;t>=0;t--){let n=e[t].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[t]):null;if(n)return n}return null}_createAnchor(){let o=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,o),o.classList.add("cdk-visually-hidden"),o.classList.add("cdk-focus-trap-anchor"),o.setAttribute("aria-hidden","true"),o}_toggleAnchorTabIndex(o,e){o?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(o){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(o,this._startAnchor),this._toggleAnchorTabIndex(o,this._endAnchor))}_executeOnStable(o){Fe(o,{injector:this._injector})}},Dl=(()=>{class i{_checker=s(wl);_ngZone=s(j);_document=s(G);_injector=s(q);constructor(){s(Te).load(Gi)}create(e,t=!1){return new xl(e,this._checker,this._ngZone,this._document,t,this._injector)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Mm=new b("liveAnnouncerElement",{providedIn:"root",factory:()=>null}),Am=new b("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),fg=0,qo=(()=>{class i{_ngZone=s(j);_defaultOptions=s(Am,{optional:!0});_liveElement;_document=s(G);_sanitizer=s(Go);_previousTimeout;_currentPromise;_currentResolve;constructor(){let e=s(Mm,{optional:!0});this._liveElement=e||this._createLiveElement()}announce(e,...t){let n=this._defaultOptions,a,r;return t.length===1&&typeof t[0]=="number"?r=t[0]:[a,r]=t,this.clear(),clearTimeout(this._previousTimeout),a||(a=n&&n.politeness?n.politeness:"polite"),r==null&&n&&(r=n.duration),this._liveElement.setAttribute("aria-live",a),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(m=>this._currentResolve=m)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{!e||typeof e=="string"?this._liveElement.textContent=e:ym(this._liveElement,e,this._sanitizer),typeof r=="number"&&(this._previousTimeout=setTimeout(()=>this.clear(),r)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){let e="cdk-live-announcer-element",t=this._document.getElementsByClassName(e),n=this._document.createElement("div");for(let a=0;a<t.length;a++)t[a].remove();return n.classList.add(e),n.classList.add("cdk-visually-hidden"),n.setAttribute("aria-atomic","true"),n.setAttribute("aria-live","polite"),n.id=`cdk-live-announcer-${fg++}`,this._document.body.appendChild(n),n}_exposeAnnouncerToModals(e){let t=this._document.querySelectorAll('body > .cdk-overlay-container [aria-modal="true"]');for(let n=0;n<t.length;n++){let a=t[n],r=a.getAttribute("aria-owns");r?r.indexOf(e)===-1&&a.setAttribute("aria-owns",r+" "+e):a.setAttribute("aria-owns",e)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var $i=(function(i){return i[i.NONE=0]="NONE",i[i.BLACK_ON_WHITE=1]="BLACK_ON_WHITE",i[i.WHITE_ON_BLACK=2]="WHITE_ON_BLACK",i})($i||{}),km="cdk-high-contrast-black-on-white",Sm="cdk-high-contrast-white-on-black",Cl="cdk-high-contrast-active",Im=(()=>{class i{_platform=s(se);_hasCheckedHighContrastMode=!1;_document=s(G);_breakpointSubscription;constructor(){this._breakpointSubscription=s(fn).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return $i.NONE;let e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);let t=this._document.defaultView||window,n=t&&t.getComputedStyle?t.getComputedStyle(e):null,a=(n&&n.backgroundColor||"").replace(/ /g,"");switch(e.remove(),a){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return $i.WHITE_ON_BLACK;case"rgb(255,255,255)":case"rgb(255,250,239)":return $i.BLACK_ON_WHITE}return $i.NONE}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){let e=this._document.body.classList;e.remove(Cl,km,Sm),this._hasCheckedHighContrastMode=!0;let t=this.getHighContrastMode();t===$i.BLACK_ON_WHITE?e.add(Cl,km):t===$i.WHITE_ON_BLACK&&e.add(Cl,Sm)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Ko=(()=>{class i{constructor(){s(Im)._applyBodyHighContrastModeCssClasses()}static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Zn]})}return i})();var gg=200,_r=class{_letterKeyStream=new M;_items=[];_selectedItemIndex=-1;_pressedLetters=[];_skipPredicateFn;_selectedItem=new M;selectedItem=this._selectedItem;constructor(o,e){let t=typeof e?.debounceInterval=="number"?e.debounceInterval:gg;e?.skipPredicate&&(this._skipPredicateFn=e.skipPredicate),this.setItems(o),this._setupKeyHandler(t)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(o){this._selectedItemIndex=o}setItems(o){this._items=o}handleKey(o){let e=o.keyCode;o.key&&o.key.length===1?this._letterKeyStream.next(o.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(o){this._letterKeyStream.pipe(ti(e=>this._pressedLetters.push(e)),ei(o),ge(()=>this._pressedLetters.length>0),Ae(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(e=>{for(let t=1;t<this._items.length+1;t++){let n=(this._selectedItemIndex+t)%this._items.length,a=this._items[n];if(!this._skipPredicateFn?.(a)&&a.getLabel?.().toLocaleUpperCase().trim().indexOf(e)===0){this._selectedItem.next(a);break}}this._pressedLetters=[]})}};function ze(i,...o){return o.length?o.some(e=>i[e]):i.altKey||i.shiftKey||i.ctrlKey||i.metaKey}var Qn=class{_items;_activeItemIndex=N(-1);_activeItem=N(null);_wrap=!1;_typeaheadSubscription=ve.EMPTY;_itemChangesSubscription;_vertical=!0;_horizontal=null;_allowedModifierKeys=[];_homeAndEnd=!1;_pageUpAndDown={enabled:!1,delta:10};_effectRef;_typeahead;_skipPredicateFn=o=>o.disabled;constructor(o,e){this._items=o,o instanceof Ni?this._itemChangesSubscription=o.changes.subscribe(t=>this._itemsChanged(t.toArray())):Pi(o)&&(this._effectRef=At(()=>this._itemsChanged(o()),{injector:e}))}tabOut=new M;change=new M;skipPredicate(o){return this._skipPredicateFn=o,this}withWrap(o=!0){return this._wrap=o,this}withVerticalOrientation(o=!0){return this._vertical=o,this}withHorizontalOrientation(o){return this._horizontal=o,this}withAllowedModifierKeys(o){return this._allowedModifierKeys=o,this}withTypeAhead(o=200){this._typeaheadSubscription.unsubscribe();let e=this._getItemsArray();return this._typeahead=new _r(e,{debounceInterval:typeof o=="number"?o:void 0,skipPredicate:t=>this._skipPredicateFn(t)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(t=>{this.setActiveItem(t)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(o=!0){return this._homeAndEnd=o,this}withPageUpDown(o=!0,e=10){return this._pageUpAndDown={enabled:o,delta:e},this}setActiveItem(o){let e=this._activeItem();this.updateActiveItem(o),this._activeItem()!==e&&this.change.next(this._activeItemIndex())}onKeydown(o){let e=o.keyCode,n=["altKey","ctrlKey","metaKey","shiftKey"].every(a=>!o[a]||this._allowedModifierKeys.indexOf(a)>-1);switch(e){case 9:this.tabOut.next();return;case 40:if(this._vertical&&n){this.setNextItemActive();break}else return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}else return;case 39:if(this._horizontal&&n){this._horizontal==="rtl"?this.setPreviousItemActive():this.setNextItemActive();break}else return;case 37:if(this._horizontal&&n){this._horizontal==="rtl"?this.setNextItemActive():this.setPreviousItemActive();break}else return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}else return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}else return;case 33:if(this._pageUpAndDown.enabled&&n){let a=this._activeItemIndex()-this._pageUpAndDown.delta;this._setActiveItemByIndex(a>0?a:0,1);break}else return;case 34:if(this._pageUpAndDown.enabled&&n){let a=this._activeItemIndex()+this._pageUpAndDown.delta,r=this._getItemsArray().length;this._setActiveItemByIndex(a<r?a:r-1,-1);break}else return;default:(n||ze(o,"shiftKey"))&&this._typeahead?.handleKey(o);return}this._typeahead?.reset(),o.preventDefault()}get activeItemIndex(){return this._activeItemIndex()}get activeItem(){return this._activeItem()}isTyping(){return!!this._typeahead&&this._typeahead.isTyping()}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._getItemsArray().length-1,-1)}setNextItemActive(){this._activeItemIndex()<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex()<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(o){let e=this._getItemsArray(),t=typeof o=="number"?o:e.indexOf(o),n=e[t];this._activeItem.set(n??null),this._activeItemIndex.set(t),this._typeahead?.setCurrentSelectedItemIndex(t)}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._effectRef?.destroy(),this._typeahead?.destroy(),this.tabOut.complete(),this.change.complete()}_setActiveItemByDelta(o){this._wrap?this._setActiveInWrapMode(o):this._setActiveInDefaultMode(o)}_setActiveInWrapMode(o){let e=this._getItemsArray();for(let t=1;t<=e.length;t++){let n=(this._activeItemIndex()+o*t+e.length)%e.length,a=e[n];if(!this._skipPredicateFn(a)){this.setActiveItem(n);return}}}_setActiveInDefaultMode(o){this._setActiveItemByIndex(this._activeItemIndex()+o,o)}_setActiveItemByIndex(o,e){let t=this._getItemsArray();if(t[o]){for(;this._skipPredicateFn(t[o]);)if(o+=e,!t[o])return;this.setActiveItem(o)}}_getItemsArray(){return Pi(this._items)?this._items():this._items instanceof Ni?this._items.toArray():this._items}_itemsChanged(o){this._typeahead?.setItems(o);let e=this._activeItem();if(e){let t=o.indexOf(e);t>-1&&t!==this._activeItemIndex()&&(this._activeItemIndex.set(t),this._typeahead?.setCurrentSelectedItemIndex(t))}}};var Cn=class extends Qn{setActiveItem(o){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(o),this.activeItem&&this.activeItem.setActiveStyles()}};var qi=class extends Qn{_origin="program";setFocusOrigin(o){return this._origin=o,this}setActiveItem(o){super.setActiveItem(o),this.activeItem&&this.activeItem.focus(this._origin)}};var Om=new Map,he=class i{_appId=s(dn);static _infix=`a${Math.floor(Math.random()*1e5).toString()}`;getId(o,e=!1){this._appId!=="ng"&&(o+=this._appId);let t=Om.get(o);return t===void 0?t=0:t++,Om.set(o,t),`${o}${e?i._infix+"-":""}${t}`}static \u0275fac=function(e){return new(e||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})};var Pm=" ";function _g(i,o,e){let t=vr(i,o);e=e.trim(),!t.some(n=>n.trim()===e)&&(t.push(e),i.setAttribute(o,t.join(Pm)))}function bg(i,o,e){let t=vr(i,o);e=e.trim();let n=t.filter(a=>a!==e);n.length?i.setAttribute(o,n.join(Pm)):i.removeAttribute(o)}function vr(i,o){return i.getAttribute(o)?.match(/\S+/g)??[]}var Nm="cdk-describedby-message",br="cdk-describedby-host",Sl=0,Lm=(()=>{class i{_platform=s(se);_document=s(G);_messageRegistry=new Map;_messagesContainer=null;_id=`${Sl++}`;constructor(){s(Te).load(Gi),this._id=s(dn)+"-"+Sl++}describe(e,t,n){if(!this._canBeDescribed(e,t))return;let a=kl(t,n);typeof t!="string"?(Fm(t,this._id),this._messageRegistry.set(a,{messageElement:t,referenceCount:0})):this._messageRegistry.has(a)||this._createMessageElement(t,n),this._isElementDescribedByMessage(e,a)||this._addMessageReference(e,a)}removeDescription(e,t,n){if(!t||!this._isElementNode(e))return;let a=kl(t,n);if(this._isElementDescribedByMessage(e,a)&&this._removeMessageReference(e,a),typeof t=="string"){let r=this._messageRegistry.get(a);r&&r.referenceCount===0&&this._deleteMessageElement(a)}this._messagesContainer?.childNodes.length===0&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){let e=this._document.querySelectorAll(`[${br}="${this._id}"]`);for(let t=0;t<e.length;t++)this._removeCdkDescribedByReferenceIds(e[t]),e[t].removeAttribute(br);this._messagesContainer?.remove(),this._messagesContainer=null,this._messageRegistry.clear()}_createMessageElement(e,t){let n=this._document.createElement("div");Fm(n,this._id),n.textContent=e,t&&n.setAttribute("role",t),this._createMessagesContainer(),this._messagesContainer.appendChild(n),this._messageRegistry.set(kl(e,t),{messageElement:n,referenceCount:0})}_deleteMessageElement(e){this._messageRegistry.get(e)?.messageElement?.remove(),this._messageRegistry.delete(e)}_createMessagesContainer(){if(this._messagesContainer)return;let e="cdk-describedby-message-container",t=this._document.querySelectorAll(`.${e}[platform="server"]`);for(let a=0;a<t.length;a++)t[a].remove();let n=this._document.createElement("div");n.style.visibility="hidden",n.classList.add(e),n.classList.add("cdk-visually-hidden"),this._platform.isBrowser||n.setAttribute("platform","server"),this._document.body.appendChild(n),this._messagesContainer=n}_removeCdkDescribedByReferenceIds(e){let t=vr(e,"aria-describedby").filter(n=>n.indexOf(Nm)!=0);e.setAttribute("aria-describedby",t.join(" "))}_addMessageReference(e,t){let n=this._messageRegistry.get(t);_g(e,"aria-describedby",n.messageElement.id),e.setAttribute(br,this._id),n.referenceCount++}_removeMessageReference(e,t){let n=this._messageRegistry.get(t);n.referenceCount--,bg(e,"aria-describedby",n.messageElement.id),e.removeAttribute(br)}_isElementDescribedByMessage(e,t){let n=vr(e,"aria-describedby"),a=this._messageRegistry.get(t),r=a&&a.messageElement.id;return!!r&&n.indexOf(r)!=-1}_canBeDescribed(e,t){if(!this._isElementNode(e))return!1;if(t&&typeof t=="object")return!0;let n=t==null?"":`${t}`.trim(),a=e.getAttribute("aria-label");return n?!a||a.trim()!==n:!1}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function kl(i,o){return typeof i=="string"?`${o||""}/${i}`:i}function Fm(i,o){i.id||(i.id=`${Nm}-${o}-${Sl++}`)}var Wm=(()=>{class i{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,t){this._renderer=e,this._elementRef=t}setProperty(e,t){this._renderer.setProperty(this._elementRef.nativeElement,e,t)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(t){return new(t||i)(ce(ue),ce(O))};static \u0275dir=x({type:i})}return i})(),qm=(()=>{class i extends Wm{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,features:[X]})}return i})(),_i=new b("");var vg={provide:_i,useExisting:lt(()=>Yi),multi:!0};function yg(){let i=Vt()?Vt().getUserAgent():"";return/android (\d+)/.test(i.toLowerCase())}var Cg=new b(""),Yi=(()=>{class i extends Wm{_compositionMode;_composing=!1;constructor(e,t,n){super(e,t),this._compositionMode=n,this._compositionMode==null&&(this._compositionMode=!yg())}writeValue(e){let t=e??"";this.setProperty("value",t)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(t){return new(t||i)(ce(ue),ce(O),ce(Cg,8))};static \u0275dir=x({type:i,selectors:[["input","formControlName","",3,"type","checkbox",3,"ngNoCva",""],["textarea","formControlName","",3,"ngNoCva",""],["input","formControl","",3,"type","checkbox",3,"ngNoCva",""],["textarea","formControl","",3,"ngNoCva",""],["input","ngModel","",3,"type","checkbox",3,"ngNoCva",""],["textarea","ngModel","",3,"ngNoCva",""],["","ngDefaultControl",""]],hostBindings:function(t,n){t&1&&I("input",function(r){return n._handleInput(r.target.value)})("blur",function(){return n.onTouched()})("compositionstart",function(){return n._compositionStart()})("compositionend",function(r){return n._compositionEnd(r.target.value)})},standalone:!1,features:[te([vg]),X]})}return i})();function Rl(i){return i==null||Ol(i)===0}function Ol(i){return i==null?null:Array.isArray(i)||typeof i=="string"?i.length:i instanceof Set?i.size:null}var wn=new b(""),Ar=new b(""),xg=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,vt=class{static min(o){return wg(o)}static max(o){return Dg(o)}static required(o){return Km(o)}static requiredTrue(o){return kg(o)}static email(o){return Sg(o)}static minLength(o){return Eg(o)}static maxLength(o){return Mg(o)}static pattern(o){return Ag(o)}static nullValidator(o){return Cr()}static compose(o){return eu(o)}static composeAsync(o){return tu(o)}};function wg(i){return o=>{if(o.value==null||i==null)return null;let e=parseFloat(o.value);return!isNaN(e)&&e<i?{min:{min:i,actual:o.value}}:null}}function Dg(i){return o=>{if(o.value==null||i==null)return null;let e=parseFloat(o.value);return!isNaN(e)&&e>i?{max:{max:i,actual:o.value}}:null}}function Km(i){return Rl(i.value)?{required:!0}:null}function kg(i){return i.value===!0?null:{required:!0}}function Sg(i){return Rl(i.value)||xg.test(i.value)?null:{email:!0}}function Eg(i){return o=>{let e=o.value?.length??Ol(o.value);return e===null||e===0?null:e<i?{minlength:{requiredLength:i,actualLength:e}}:null}}function Mg(i){return o=>{let e=o.value?.length??Ol(o.value);return e!==null&&e>i?{maxlength:{requiredLength:i,actualLength:e}}:null}}function Ag(i){if(!i)return Cr;let o,e;return typeof i=="string"?(e="",i.charAt(0)!=="^"&&(e+="^"),e+=i,i.charAt(i.length-1)!=="$"&&(e+="$"),o=new RegExp(e)):(e=i.toString(),o=i),t=>{if(Rl(t.value))return null;let n=t.value;return o.test(n)?null:{pattern:{requiredPattern:e,actualValue:n}}}}function Cr(i){return null}function Ym(i){return i!=null}function Xm(i){return Is(i)?Ac(i):i}function Zm(i){let o={};return i.forEach(e=>{o=e!=null?L(L({},o),e):o}),Object.keys(o).length===0?null:o}function Qm(i,o){return o.map(e=>e(i))}function Ig(i){return!i.validate}function Jm(i){return i.map(o=>Ig(o)?o:e=>o.validate(e))}function eu(i){if(!i)return null;let o=i.filter(Ym);return o.length==0?null:function(e){return Zm(Qm(e,o))}}function Fl(i){return i!=null?eu(Jm(i)):null}function tu(i){if(!i)return null;let o=i.filter(Ym);return o.length==0?null:function(e){let t=Qm(e,o).map(Xm);return Aa(t).pipe(Ae(Zm))}}function Pl(i){return i!=null?tu(Jm(i)):null}function Bm(i,o){return i===null?[o]:Array.isArray(i)?[...i,o]:[i,o]}function iu(i){return i._rawValidators}function nu(i){return i._rawAsyncValidators}function El(i){return i?Array.isArray(i)?i:[i]:[]}function xr(i,o){return Array.isArray(i)?i.includes(o):i===o}function Vm(i,o){let e=El(o);return El(i).forEach(n=>{xr(e,n)||e.push(n)}),e}function zm(i,o){return El(o).filter(e=>!xr(i,e))}var wr=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(o){this._rawValidators=o||[],this._composedValidatorFn=Fl(this._rawValidators)}_setAsyncValidators(o){this._rawAsyncValidators=o||[],this._composedAsyncValidatorFn=Pl(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(o){this._onDestroyCallbacks.push(o)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(o=>o()),this._onDestroyCallbacks=[]}reset(o=void 0){this.control?.reset(o)}hasError(o,e){return this.control?this.control.hasError(o,e):!1}getError(o,e){return this.control?this.control.getError(o,e):null}},Mi=class extends wr{name;get formDirective(){return null}get path(){return null}};var Zo="VALID",yr="INVALID",Jn="PENDING",Qo="DISABLED",Ki=class{},Dr=class extends Ki{value;source;constructor(o,e){super(),this.value=o,this.source=e}},ea=class extends Ki{pristine;source;constructor(o,e){super(),this.pristine=o,this.source=e}},ta=class extends Ki{touched;source;constructor(o,e){super(),this.touched=o,this.source=e}},eo=class extends Ki{status;source;constructor(o,e){super(),this.status=o,this.source=e}},kr=class extends Ki{source;constructor(o){super(),this.source=o}},xn=class extends Ki{source;constructor(o){super(),this.source=o}};function Nl(i){return(Ir(i)?i.validators:i)||null}function Tg(i){return Array.isArray(i)?Fl(i):i||null}function Ll(i,o){return(Ir(o)?o.asyncValidators:i)||null}function Rg(i){return Array.isArray(i)?Pl(i):i||null}function Ir(i){return i!=null&&!Array.isArray(i)&&typeof i=="object"}function ou(i,o,e){let t=i.controls;if(!(o?Object.keys(t):t).length)throw new oe(1e3,"");if(!ru(t,e))throw new oe(1001,"")}function au(i,o,e){i._forEachChild((t,n)=>{if(e[n]===void 0)throw new oe(-1002,"")})}var to=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_hasRequired=N(!1);_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(o,e){this._assignValidators(o),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(o){this._rawValidators=this._composedValidatorFn=o,this._updateHasRequiredValidator()}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(o){this._rawAsyncValidators=this._composedAsyncValidatorFn=o}get parent(){return this._parent}get status(){return mt(this.statusReactive)}set status(o){mt(()=>this.statusReactive.set(o))}_status=K(()=>this.statusReactive());statusReactive=N(void 0);get valid(){return this.status===Zo}get invalid(){return this.status===yr}get pending(){return this.status===Jn}get disabled(){return this.status===Qo}get enabled(){return this.status!==Qo}errors;get pristine(){return mt(this.pristineReactive)}set pristine(o){mt(()=>this.pristineReactive.set(o))}_pristine=K(()=>this.pristineReactive());pristineReactive=N(!0);get dirty(){return!this.pristine}get touched(){return mt(this.touchedReactive)}set touched(o){mt(()=>this.touchedReactive.set(o))}_touched=K(()=>this.touchedReactive());touchedReactive=N(!1);get untouched(){return!this.touched}_events=new M;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(o){this._assignValidators(o)}setAsyncValidators(o){this._assignAsyncValidators(o)}addValidators(o){this.setValidators(Vm(o,this._rawValidators))}addAsyncValidators(o){this.setAsyncValidators(Vm(o,this._rawAsyncValidators))}removeValidators(o){this.setValidators(zm(o,this._rawValidators))}removeAsyncValidators(o){this.setAsyncValidators(zm(o,this._rawAsyncValidators))}hasValidator(o){return xr(this._rawValidators,o)}hasAsyncValidator(o){return xr(this._rawAsyncValidators,o)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(o={}){let e=this.touched===!1;this.touched=!0;let t=o.sourceControl??this;o.onlySelf||this._parent?.markAsTouched(Se(L({},o),{sourceControl:t})),e&&o.emitEvent!==!1&&this._events.next(new ta(!0,t))}markAllAsDirty(o={}){this.markAsDirty({onlySelf:!0,emitEvent:o.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsDirty(o))}markAllAsTouched(o={}){this.markAsTouched({onlySelf:!0,emitEvent:o.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(o))}markAsUntouched(o={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let t=o.sourceControl??this;this._forEachChild(n=>{n.markAsUntouched({onlySelf:!0,emitEvent:o.emitEvent,sourceControl:t})}),o.onlySelf||this._parent?._updateTouched(o,t),e&&o.emitEvent!==!1&&this._events.next(new ta(!1,t))}markAsDirty(o={}){let e=this.pristine===!0;this.pristine=!1;let t=o.sourceControl??this;o.onlySelf||this._parent?.markAsDirty(Se(L({},o),{sourceControl:t})),e&&o.emitEvent!==!1&&this._events.next(new ea(!1,t))}markAsPristine(o={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let t=o.sourceControl??this;this._forEachChild(n=>{n.markAsPristine({onlySelf:!0,emitEvent:o.emitEvent})}),o.onlySelf||this._parent?._updatePristine(o,t),e&&o.emitEvent!==!1&&this._events.next(new ea(!0,t))}markAsPending(o={}){this.status=Jn;let e=o.sourceControl??this;o.emitEvent!==!1&&(this._events.next(new eo(this.status,e)),this.statusChanges.emit(this.status)),o.onlySelf||this._parent?.markAsPending(Se(L({},o),{sourceControl:e}))}disable(o={}){let e=this._parentMarkedDirty(o.onlySelf);this.status=Qo,this.errors=null,this._forEachChild(n=>{n.disable(Se(L({},o),{onlySelf:!0}))}),this._updateValue();let t=o.sourceControl??this;o.emitEvent!==!1&&(this._events.next(new Dr(this.value,t)),this._events.next(new eo(this.status,t)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Se(L({},o),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(n=>n(!0))}enable(o={}){let e=this._parentMarkedDirty(o.onlySelf);this.status=Zo,this._forEachChild(t=>{t.enable(Se(L({},o),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:o.emitEvent}),this._updateAncestors(Se(L({},o),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(o,e){o.onlySelf||(this._parent?.updateValueAndValidity(o),o.skipPristineCheck||this._parent?._updatePristine({},e),this._parent?._updateTouched({},e))}setParent(o){this._parent=o}getRawValue(){return this.value}updateValueAndValidity(o={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let t=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Zo||this.status===Jn)&&this._runAsyncValidator(t,o.emitEvent)}let e=o.sourceControl??this;o.emitEvent!==!1&&(this._events.next(new Dr(this.value,e)),this._events.next(new eo(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),o.onlySelf||this._parent?.updateValueAndValidity(Se(L({},o),{sourceControl:e}))}_updateTreeValidity(o={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(o)),this.updateValueAndValidity({onlySelf:!0,emitEvent:o.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Qo:Zo}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(o,e){if(this.asyncValidator){this.status=Jn,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1,shouldHaveEmitted:o!==!1};let t=Xm(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(n=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(n,{emitEvent:e,shouldHaveEmitted:o})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let o=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,o}return!1}setErrors(o,e={}){this.errors=o,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(o){let e=o;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((t,n)=>t&&t._find(n),this)}getError(o,e){let t=e?this.get(e):this;return t?.errors?t.errors[o]:null}hasError(o,e){return!!this.getError(o,e)}get root(){let o=this;for(;o._parent;)o=o._parent;return o}_updateControlsErrors(o,e,t){this.status=this._calculateStatus(),o&&this.statusChanges.emit(this.status),(o||t)&&this._events.next(new eo(this.status,e)),this._parent&&this._parent._updateControlsErrors(o,e,t)}_initObservables(){this.valueChanges=new $,this.statusChanges=new $}_calculateStatus(){return this._allControlsDisabled()?Qo:this.errors?yr:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Jn)?Jn:this._anyControlsHaveStatus(yr)?yr:Zo}_anyControlsHaveStatus(o){return this._anyControls(e=>e.status===o)}_anyControlsDirty(){return this._anyControls(o=>o.dirty)}_anyControlsTouched(){return this._anyControls(o=>o.touched)}_updatePristine(o,e){let t=!this._anyControlsDirty(),n=this.pristine!==t;this.pristine=t,o.onlySelf||this._parent?._updatePristine(o,e),n&&this._events.next(new ea(this.pristine,e))}_updateTouched(o={},e){this.touched=this._anyControlsTouched(),this._events.next(new ta(this.touched,e)),o.onlySelf||this._parent?._updateTouched(o,e)}_onDisabledChange=[];_registerOnCollectionChange(o){this._onCollectionChange=o}_setUpdateStrategy(o){Ir(o)&&o.updateOn!=null&&(this._updateOn=o.updateOn)}_parentMarkedDirty(o){return!o&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(o){return null}_assignValidators(o){this._rawValidators=Array.isArray(o)?o.slice():o,this._composedValidatorFn=Tg(this._rawValidators),this._updateHasRequiredValidator()}_assignAsyncValidators(o){this._rawAsyncValidators=Array.isArray(o)?o.slice():o,this._composedAsyncValidatorFn=Rg(this._rawAsyncValidators)}_updateHasRequiredValidator(){mt(()=>this._hasRequired.set(this.hasValidator(vt.required)))}};function ru(i,o){return Object.hasOwn(i,o)}function Og(i){return i.tagName==="INPUT"||i.tagName==="SELECT"||i.tagName==="TEXTAREA"}function Fg(i,o,e,t){switch(e){case"name":i.setAttribute(o,e,t);break;case"disabled":case"readonly":case"required":t?i.setAttribute(o,e,""):i.removeAttribute(o,e);break;case"max":case"min":case"minLength":case"maxLength":t!==void 0?i.setAttribute(o,e,t.toString()):i.removeAttribute(o,e);break}}var Ml=class{kind;context;control;message;constructor({kind:o,context:e,control:t}){this.kind=o,this.context=e,this.control=t}};var Pg=(()=>{class i{_validator=Cr;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let t=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(t),this._validator=this._enabled?this.createValidator(t):Cr,this._onChange?.()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,features:[xe]})}return i})();var Ng={provide:wn,useExisting:lt(()=>Tr),multi:!0};var Tr=(()=>{class i extends Pg{required;inputName="required";normalizeInput=F;createValidator=e=>Km;enabled(e){return e}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(t,n){t&2&&Y("required",n._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[te([Ng]),X]})}return i})();var Lg=new b(""),na=new b("",{factory:()=>Rr}),Rr="always";function su(i,o){return[...o.path,i]}function Al(i,o,e=Rr){Bl(i,o),o.valueAccessor.writeValue(i.value),(i.disabled||e==="always")&&o.valueAccessor.setDisabledState?.(i.disabled),Vg(i,o),jg(i,o),zg(i,o),Bg(i,o)}function jm(i,o,e=!0){let t=()=>{};o?.valueAccessor?.registerOnChange(t),o?.valueAccessor?.registerOnTouched(t),Er(i,o),i&&(o._invokeOnDestroyCallbacks(),i._registerOnCollectionChange(()=>{}))}function Sr(i,o){i.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(o)})}function Bg(i,o){if(o.valueAccessor.setDisabledState){let e=t=>{o.valueAccessor.setDisabledState(t)};i.registerOnDisabledChange(e),o._registerOnDestroy(()=>{i._unregisterOnDisabledChange(e)})}}function Bl(i,o){let e=iu(i);o.validator!==null?i.setValidators(Bm(e,o.validator)):typeof e=="function"&&i.setValidators([e]);let t=nu(i);o.asyncValidator!==null?i.setAsyncValidators(Bm(t,o.asyncValidator)):typeof t=="function"&&i.setAsyncValidators([t]);let n=()=>i.updateValueAndValidity();Sr(o._rawValidators,n),Sr(o._rawAsyncValidators,n)}function Er(i,o){let e=!1;if(i!==null){if(o.validator!==null){let n=iu(i);if(Array.isArray(n)&&n.length>0){let a=n.filter(r=>r!==o.validator);a.length!==n.length&&(e=!0,i.setValidators(a))}}if(o.asyncValidator!==null){let n=nu(i);if(Array.isArray(n)&&n.length>0){let a=n.filter(r=>r!==o.asyncValidator);a.length!==n.length&&(e=!0,i.setAsyncValidators(a))}}}let t=()=>{};return Sr(o._rawValidators,t),Sr(o._rawAsyncValidators,t),e}function Vg(i,o){o.valueAccessor.registerOnChange(e=>{i._pendingValue=e,i._pendingChange=!0,i._pendingDirty=!0,i.updateOn==="change"&&lu(i,o)})}function zg(i,o){o.valueAccessor.registerOnTouched(()=>{i._pendingTouched=!0,i.updateOn==="blur"&&i._pendingChange&&lu(i,o),i.updateOn!=="submit"&&i.markAsTouched()})}function lu(i,o){i._pendingDirty&&i.markAsDirty(),i.setValue(i._pendingValue,{emitModelToViewChange:!1}),o.viewToModelUpdate(i._pendingValue),i._pendingChange=!1}function jg(i,o){let e=(t,n)=>{o.valueAccessor.writeValue(t),n&&o.viewToModelUpdate(t)};i.registerOnChange(e),o._registerOnDestroy(()=>{i._unregisterOnChange(e)})}function cu(i,o){i==null,Bl(i,o)}function Hg(i,o){return Er(i,o)}function du(i,o){if(!i.hasOwnProperty("model"))return!1;let e=i.model;return e.isFirstChange()?!0:!Object.is(o,e.currentValue)}function Ug(i){return Object.getPrototypeOf(i.constructor)===qm}function mu(i,o){i._syncPendingControls(),o.forEach(e=>{let t=e.control;t.updateOn==="submit"&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})}function Gg(i,o){if(!o)return null;Array.isArray(o);let e,t,n;return o.forEach(a=>{a.constructor===Yi?e=a:Ug(a)?t=a:n=a}),n||t||e||null}function $g(i,o){let e=i.indexOf(o);e>-1&&i.splice(e,1)}var uu={provide:Lg,useFactory:()=>{let i=s(Ht,{self:!0});return{setParseErrors:o=>{i.setParseErrorSource(o)},set onReset(o){i.onReset=o}}}},Ht=class extends wr{_parent=null;name=null;valueAccessor=null;isCustomControlBased=!1;userOnReset;resetSubscription;set onReset(o){this.userOnReset=o,this.resetSubscription?.unsubscribe(),this.resetSubscription=void 0,this.control&&(this.resetSubscription=this.control.events.subscribe(e=>{e instanceof xn&&this.control&&this.userOnReset?.(this.control.value)}),this.subscription?.add(this.resetSubscription))}isNativeFormElement=!1;rawValueAccessors;_selectedValueAccessor=null;get selectedValueAccessor(){return this._selectedValueAccessor??=Gg(this,this.rawValueAccessors)}parseErrorsValidator=null;renderer;injector;requiredValidatorViaDi;subscription;customControlBindings=null;constructor(o,e,t){super(),this.injector=o,this.renderer=e,this.rawValueAccessors=t,this.injector?.get(ni)?.onDestroy(()=>{this.removeParseErrorsValidator(this.control),this.subscription?.unsubscribe()})}setupCustomControl(){this.subscription?.unsubscribe();let o=this.injector?.get(ie);if(!this.control||!o)return;let e=o.markForCheck.bind(o);this.subscription=new ve,this.subscription.add(this.control.valueChanges.subscribe(e)),this.subscription.add(this.control.statusChanges.subscribe(e)),this.resetSubscription?.unsubscribe(),this.resetSubscription=void 0,this.userOnReset&&(this.resetSubscription=this.control.events.subscribe(t=>{t instanceof xn&&this.control&&this.userOnReset?.(this.control.value)}),this.subscription.add(this.resetSubscription)),this.parseErrorsValidator&&this.control.addValidators(this.parseErrorsValidator)}ngControlCreate(o){!o.nativeElement.hasAttribute?.("ngNoCva")&&(this.rawValueAccessors&&this.rawValueAccessors.length>0||this.valueAccessor!==null)||!o.customControl||(this.isCustomControlBased=!0,o.listenToCustomControlModel(n=>{this.control?.setValue(n,{emitModelToViewChange:!1}),this.control?.markAsDirty(),this.viewToModelUpdate(n)}),o.listenToCustomControlOutput("touch",()=>{this.control?.markAsTouched()}),this.customControlBindings={},this.isNativeFormElement=Og(o.nativeElement),this.requiredValidatorViaDi=this._rawValidators.find(n=>n instanceof Tr))}ngControlUpdate(o,e){if(!this.isCustomControlBased)return;let t=this.control,n=this.customControlBindings;Object.is(n.value,t.value)||(n.value=t.value,o.setCustomControlModelInput(t.value)),this.bindControlProperty(o,n,"touched",t.touched),this.bindControlProperty(o,n,"dirty",t.dirty),this.bindControlProperty(o,n,"valid",t.valid),this.bindControlProperty(o,n,"invalid",t.invalid),this.bindControlProperty(o,n,"pending",t.pending),this.bindControlProperty(o,n,"disabled",t.disabled),this.shouldBindRequired&&this.bindControlProperty(o,n,"required",this.isRequired);let a=t.errors;if(n.errors!==a){n.errors=a;let r=this._convertErrors(a);o.setInputOnDirectives("errors",r)}}get isRequired(){return(this.requiredValidatorViaDi?._enabled||this.control?._hasRequired())??!1}get shouldBindRequired(){return!0}bindControlProperty(o,e,t,n){if(e[t]===n)return;e[t]=n;let a=o.setInputOnDirectives(t,n);this.isNativeFormElement&&!a&&(t==="disabled"||t==="required")&&this.renderer&&Fg(this.renderer,o.nativeElement,t,n)}_convertErrors(o){if(o===null)return[];let e=this.control;return Object.entries(o).map(([t,n])=>new Ml({context:n,kind:t,control:e}))}setParseErrorSource(o){if(o===void 0)return;let e=null,t=K(()=>{let n=o();return n.length===0?null:n.reduce((a,r)=>(a[r.kind]=r,a),{})});this.parseErrorsValidator=(()=>e).bind(this),At(()=>{e=t(),this.control?.updateValueAndValidity({emitEvent:!1})},{injector:this.injector})}removeParseErrorsValidator(o){this.parseErrorsValidator&&(o?.removeValidators(this.parseErrorsValidator),o?.updateValueAndValidity({emitEvent:!1}))}},Mr=class{_cd;constructor(o){this._cd=o}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var Xi=(()=>{class i extends Mr{constructor(e){super(e)}static \u0275fac=function(t){return new(t||i)(ce(Ht,2))};static \u0275dir=x({type:i,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,n){t&2&&f("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)},standalone:!1,features:[X]})}return i})(),no=(()=>{class i extends Mr{constructor(e){super(e)}static \u0275fac=function(t){return new(t||i)(ce(Mi,10))};static \u0275dir=x({type:i,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["","formArray",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,n){t&2&&f("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)("ng-submitted",n.isSubmitted)},standalone:!1,features:[X]})}return i})(),io=class extends to{constructor(o,e,t){super(Nl(e),Ll(t,e)),this.controls=o,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(o,e){let t=this._find(o);return t||(this.controls[o]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(o,e,t={}){this.registerControl(o,e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}removeControl(o,e={}){let t=this._find(o);t&&t._registerOnCollectionChange(()=>{}),delete this.controls[o],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(o,e,t={}){let n=this._find(o);n&&n._registerOnCollectionChange(()=>{}),delete this.controls[o],e&&this.registerControl(o,e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}contains(o){return this._find(o)?.enabled===!0}setValue(o,e={}){mt(()=>{au(this,!0,o),Object.keys(o).forEach(t=>{ou(this,!0,t),this.controls[t].setValue(o[t],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)})}patchValue(o,e={}){o!=null&&(Object.keys(o).forEach(t=>{let n=this._find(t);n&&n.patchValue(o[t],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(o={},e={}){this._forEachChild((t,n)=>{t.reset(o?o[n]:null,Se(L({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new xn(this))}getRawValue(){return this._reduceChildren({},(o,e,t)=>(o[t]=e.getRawValue(),o))}_syncPendingControls(){let o=this._reduceChildren(!1,(e,t)=>t._syncPendingControls()?!0:e);return o&&this.updateValueAndValidity({onlySelf:!0}),o}_forEachChild(o){Object.keys(this.controls).forEach(e=>{let t=this.controls[e];t&&o(t,e)})}_setUpControls(){this._forEachChild(o=>{o.setParent(this),o._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(o){for(let[e,t]of Object.entries(this.controls))if(this.contains(e)&&o(t))return!0;return!1}_reduceValue(){let o={};return this._reduceChildren(o,(e,t,n)=>((t.enabled||this.disabled)&&(e[n]=t.value),e))}_reduceChildren(o,e){let t=o;return this._forEachChild((n,a)=>{t=e(t,n,a)}),t}_allControlsDisabled(){for(let o of Object.keys(this.controls))if(this.controls[o].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(o){return ru(this.controls,o)?this.controls[o]:null}};var Il=class extends io{};var Wg={provide:Mi,useExisting:lt(()=>oa)},Jo=Promise.resolve(),oa=(()=>{class i extends Mi{callSetDisabledState;get submitted(){return mt(this.submittedReactive)}_submitted=K(()=>this.submittedReactive());submittedReactive=N(!1);_directives=new Set;form;ngSubmit=new $;options;constructor(e,t,n){super(),this.callSetDisabledState=n,this.form=new io({},Fl(e),Pl(t))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){Jo.then(()=>{let t=this._findContainer(e.path);e.control=t.registerControl(e.name,e.control),e._setupWithForm(this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){Jo.then(()=>{this._findContainer(e.path)?.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){Jo.then(()=>{let t=this._findContainer(e.path),n=new io({});cu(n,e),t.registerControl(e.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){Jo.then(()=>{this._findContainer(e.path)?.removeControl?.(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,t){Jo.then(()=>{this.form.get(e.path).setValue(t)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),mu(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new kr(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(t){return new(t||i)(ce(wn,10),ce(Ar,10),ce(na,8))};static \u0275dir=x({type:i,selectors:[["form",3,"ngNoForm","",3,"formGroup","",3,"formArray",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,n){t&1&&I("submit",function(r){return n.onSubmit(r)})("reset",function(){return n.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[te([Wg]),X]})}return i})();function Hm(i,o){let e=i.indexOf(o);e>-1&&i.splice(e,1)}function Um(i){return typeof i=="object"&&i!==null&&Object.keys(i).length===2&&"value"in i&&"disabled"in i}var ia=class extends to{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(o=null,e,t){super(Nl(e),Ll(t,e)),this._applyFormState(o),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Ir(e)&&(e.nonNullable||e.initialValueIsDefault)&&(Um(o)?this.defaultValue=o.value:this.defaultValue=o)}setValue(o,e={}){mt(()=>{this.value=this._pendingValue=o,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(t=>t(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)})}patchValue(o,e={}){this.setValue(o,e)}reset(o=this.defaultValue,e={}){this._applyFormState(o),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),e.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,e?.emitEvent!==!1&&this._events.next(new xn(this))}_updateValue(){}_anyControls(o){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(o){this._onChange.push(o)}_unregisterOnChange(o){Hm(this._onChange,o)}registerOnDisabledChange(o){this._onDisabledChange.push(o)}_unregisterOnDisabledChange(o){Hm(this._onDisabledChange,o)}_forEachChild(o){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(o){Um(o)?(this.value=this._pendingValue=o.value,o.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=o}};var qg=i=>i instanceof ia;var Kg={provide:Ht,useExisting:lt(()=>Vl)},Gm=Promise.resolve(),Vl=(()=>{class i extends Ht{_changeDetectorRef;callSetDisabledState;control=new ia;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new $;constructor(e,t,n,a,r,m,h,g){super(h,g,a),this._changeDetectorRef=r,this.callSetDisabledState=m,this._parent=e,this._setValidators(t),this._setAsyncValidators(n)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let t=e.name.previousValue;this.formDirective.removeControl({name:t,path:this._getPath(t)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),du(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}\u0275ngControlCreate(e){super.ngControlCreate(e)}\u0275ngControlUpdate(e){super.ngControlUpdate(e,!1)}get shouldBindRequired(){return!1}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,Al(this.control,this,this.callSetDisabledState)),this.control.updateValueAndValidity({emitEvent:!1})}_setupWithForm(e){this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,Al(this.control,this,e))}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){Gm.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let t=e.isDisabled.currentValue,n=t!==0&&F(t);Gm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?su(e,this._parent):[e]}static \u0275fac=function(t){return new(t||i)(ce(Mi,9),ce(wn,10),ce(Ar,10),ce(_i,10),ce(ie,8),ce(na,8),ce(q,8),ce(ue,8))};static \u0275dir=x({type:i,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[te([Kg,uu]),X,xe,Rs(null)]})}return i})();var Or=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return i})(),Yg={provide:_i,useExisting:lt(()=>zl),multi:!0},zl=(()=>{class i extends qm{writeValue(e){let t=e??"";this.setProperty("value",t)}registerOnChange(e){this.onChange=t=>{e(t==""?null:parseFloat(t))}}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["input","type","number","formControlName","",3,"ngNoCva",""],["input","type","number","formControl","",3,"ngNoCva",""],["input","type","number","ngModel","",3,"ngNoCva",""]],hostBindings:function(t,n){t&1&&I("input",function(r){return n.onChange(r.target.value)})("blur",function(){return n.onTouched()})},standalone:!1,features:[te([Yg]),X]})}return i})();var Tl=class extends to{constructor(o,e,t){super(Nl(e),Ll(t,e)),this.controls=o,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(o){return this.controls[this._adjustIndex(o)]}push(o,e={}){Array.isArray(o)?o.forEach(t=>{this.controls.push(t),this._registerControl(t)}):(this.controls.push(o),this._registerControl(o)),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(o,e,t={}){this.controls.splice(o,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:t.emitEvent})}removeAt(o,e={}){let t=this._adjustIndex(o);t<0&&(t=0),this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(o,e,t={}){let n=this._adjustIndex(o);n<0&&(n=0),this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),e&&(this.controls.splice(n,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(o,e={}){mt(()=>{au(this,!1,o),o.forEach((t,n)=>{ou(this,!1,n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)})}patchValue(o,e={}){o!=null&&(o.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(o=[],e={}){this._forEachChild((t,n)=>{t.reset(o[n],Se(L({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new xn(this))}getRawValue(){return this.controls.map(o=>o.getRawValue())}clear(o={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:o.emitEvent}))}_adjustIndex(o){return o<0?o+this.length:o}_syncPendingControls(){let o=this.controls.reduce((e,t)=>t._syncPendingControls()?!0:e,!1);return o&&this.updateValueAndValidity({onlySelf:!0}),o}_forEachChild(o){this.controls.forEach((e,t)=>{o(e,t)})}_updateValue(){this.value=this.controls.filter(o=>o.enabled||this.disabled).map(o=>o.value)}_anyControls(o){return this.controls.some(e=>e.enabled&&o(e))}_setUpControls(){this._forEachChild(o=>this._registerControl(o))}_allControlsDisabled(){for(let o of this.controls)if(o.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(o){o.setParent(this),o._registerOnCollectionChange(this._onCollectionChange)}_find(o){return this.at(o)??null}};var Xg=(()=>{class i extends Mi{callSetDisabledState;get submitted(){return mt(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=K(()=>this._submittedReactive());_submittedReactive=N(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];constructor(e,t,n){super(),this.callSetDisabledState=n,this._setValidators(e),this._setAsyncValidators(t)}ngOnChanges(e){this.onChanges(e)}ngOnDestroy(){this.onDestroy()}onChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}onDestroy(){this.form&&(Er(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get path(){return[]}addControl(e){let t=this.form.get(e.path);return e._setupWithForm(t,this.callSetDisabledState),t.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),t}getControl(e){return this.form.get(e.path)}removeControl(e){jm(e.control||null,e,!1),$g(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}getFormArray(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}updateModel(e,t){this.form.get(e.path).setValue(t)}onReset(){this.resetForm()}resetForm(e=void 0,t={}){this.form.reset(e,t),this._submittedReactive.set(!1)}onSubmit(e){return this.submitted=!0,mu(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new kr(this.control)),e?.target?.method==="dialog"}_updateDomValue(){this.directives.forEach(e=>{let t=e.control,n=this.form.get(e.path);t!==n&&(jm(t||null,e),qg(n)&&e._setupWithForm(n,this.callSetDisabledState))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let t=this.form.get(e.path);cu(t,e),t.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){let t=this.form?.get(e.path);t&&Hg(t,e)&&t.updateValueAndValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm?._registerOnCollectionChange(()=>{})}_updateValidators(){Bl(this.form,this),this._oldForm&&Er(this._oldForm,this)}_checkFormPresent(){this.form}static \u0275fac=function(t){return new(t||i)(ce(wn,10),ce(Ar,10),ce(na,8))};static \u0275dir=x({type:i,features:[X,xe]})}return i})();var hu=new b("");var Zg={provide:Ht,useExisting:lt(()=>Dn)},Dn=(()=>{class i extends Ht{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new $;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,t,n,a,r,m,h){super(h,m,a),this._ngModelWarningConfig=r,this._parent=e,this._setValidators(t),this._setAsyncValidators(n)}_setupWithForm(e,t){this.control=e,this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,Al(e,this,t))}ngOnChanges(e){this._added||this._setUpControl(),du(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective?.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return su(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}\u0275ngControlCreate(e){super.ngControlCreate(e)}\u0275ngControlUpdate(e){this.isCustomControlBased&&(this._added||this._setUpControl(),super.ngControlUpdate(e,!0))}static \u0275fac=function(t){return new(t||i)(ce(Mi,13),ce(wn,10),ce(Ar,10),ce(_i,10),ce(hu,8),ce(ue,8),ce(q,8))};static \u0275dir=x({type:i,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[te([Zg,uu]),X,xe,Rs(null)]})}return i})();var Qg={provide:Mi,useExisting:lt(()=>ri)},ri=(()=>{class i extends Xg{form=null;ngSubmit=new $;get control(){return this.form}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","formGroup",""]],hostBindings:function(t,n){t&1&&I("submit",function(r){return n.onSubmit(r)})("reset",function(){return n.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[te([Qg]),X]})}return i})();var pu=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();function $m(i){return!!i&&(i.asyncValidators!==void 0||i.validators!==void 0||i.updateOn!==void 0)}var oo=(()=>{class i{useNonNullable=!1;get nonNullable(){let e=new i;return e.useNonNullable=!0,e}group(e,t=null){let n=this._reduceControls(e),a={};return $m(t)?a=t:t!==null&&(a.validators=t.validator,a.asyncValidators=t.asyncValidator),new io(n,a)}record(e,t=null){let n=this._reduceControls(e);return new Il(n,t)}control(e,t,n){let a={};return this.useNonNullable?($m(t)?a=t:(a.validators=t,a.asyncValidators=n),new ia(e,Se(L({},a),{nonNullable:!0}))):new ia(e,t,n)}array(e,t,n){let a=e.map(r=>this._createControl(r));return new Tl(a,t,n)}_reduceControls(e){let t={};return Object.keys(e).forEach(n=>{t[n]=this._createControl(e[n])}),t}_createControl(e){if(e instanceof ia)return e;if(e instanceof to)return e;if(Array.isArray(e)){let t=e[0],n=e.length>1?e[1]:null,a=e.length>2?e[2]:null;return this.control(t,n,a)}else return this.control(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var ao=(()=>{class i{static withConfig(e){return{ngModule:i,providers:[{provide:na,useValue:e.callSetDisabledState??Rr}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[pu]})}return i})(),ro=(()=>{class i{static withConfig(e){return{ngModule:i,providers:[{provide:hu,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:na,useValue:e.callSetDisabledState??Rr}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[pu]})}return i})();var fu=new b("MAT_INPUT_VALUE_ACCESSOR");var jl=class{_box;_destroyed=new M;_resizeSubject=new M;_resizeObserver;_elementObservables=new Map;constructor(o){this._box=o,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(e=>this._resizeSubject.next(e)))}observe(o){return this._elementObservables.has(o)||this._elementObservables.set(o,new ft(e=>{let t=this._resizeSubject.subscribe(e);return this._resizeObserver?.observe(o,{box:this._box}),()=>{this._resizeObserver?.unobserve(o),t.unsubscribe(),this._elementObservables.delete(o)}}).pipe(ge(e=>e.some(t=>t.target===o)),ks({bufferSize:1,refCount:!0}),ne(this._destroyed))),this._elementObservables.get(o)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}},gu=(()=>{class i{_cleanupErrorListener;_observers=new Map;_ngZone=s(j);constructor(){typeof ResizeObserver<"u"}ngOnDestroy(){for(let[,e]of this._observers)e.destroy();this._observers.clear(),this._cleanupErrorListener?.()}observe(e,t){let n=t?.box||"content-box";return this._observers.has(n)||this._observers.set(n,new jl(n)),this._observers.get(n).observe(e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Jg=["notch"],e_=["*"],_u=["iconPrefixContainer"],bu=["textPrefixContainer"],vu=["iconSuffixContainer"],yu=["textSuffixContainer"],t_=["textField"],i_=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],n_=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function o_(i,o){i&1&&v(0,"span",21)}function a_(i,o){if(i&1&&(l(0,"label",20),H(1,1),S(2,o_,1,0,"span",21),c()),i&2){let e=C(2);w("floating",e._shouldLabelFloat())("monitorResize",e._hasOutline())("id",e._labelId),Y("for",e._control.disableAutomaticLabeling?null:e._control.id),d(2),E(!e.hideRequiredMarker&&e._control.required?2:-1)}}function r_(i,o){if(i&1&&S(0,a_,3,5,"label",20),i&2){let e=C();E(e._hasFloatingLabel()?0:-1)}}function s_(i,o){i&1&&v(0,"div",7)}function l_(i,o){}function c_(i,o){if(i&1&&Re(0,l_,0,0,"ng-template",13),i&2){C(2);let e=Ye(1);w("ngTemplateOutlet",e)}}function d_(i,o){if(i&1&&(l(0,"div",9),S(1,c_,1,1,null,13),c()),i&2){let e=C();w("matFormFieldNotchedOutlineOpen",e._shouldLabelFloat()),d(),E(e._forceDisplayInfixLabel()?-1:1)}}function m_(i,o){i&1&&(l(0,"div",10,2),H(2,2),c())}function u_(i,o){i&1&&(l(0,"div",11,3),H(2,3),c())}function h_(i,o){}function p_(i,o){if(i&1&&Re(0,h_,0,0,"ng-template",13),i&2){C();let e=Ye(1);w("ngTemplateOutlet",e)}}function f_(i,o){i&1&&(l(0,"div",14,4),H(2,4),c())}function g_(i,o){i&1&&(l(0,"div",15,5),H(2,5),c())}function __(i,o){i&1&&v(0,"div",16)}function b_(i,o){i&1&&(l(0,"div",18),H(1,6),c())}function v_(i,o){if(i&1&&(l(0,"mat-hint",22),u(1),c()),i&2){let e=C(2);w("id",e._hintLabelId),d(),Z(e.hintLabel)}}function y_(i,o){if(i&1&&(l(0,"div",19),S(1,v_,2,2,"mat-hint",22),H(2,7),v(3,"div",23),H(4,8),c()),i&2){let e=C();d(),E(e.hintLabel?1:-1)}}var Ut=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-label"]]})}return i})(),Eu=new b("MatError"),so=(()=>{class i{id=s(he).getId("mat-mdc-error-");static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-error"],["","matError",""]],hostAttrs:[1,"mat-mdc-form-field-error","mat-mdc-form-field-bottom-align"],hostVars:1,hostBindings:function(t,n){t&2&&at("id",n.id)},inputs:{id:"id"},features:[te([{provide:Eu,useExisting:i}])]})}return i})(),Nr=(()=>{class i{align="start";id=s(he).getId("mat-mdc-hint-");static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(t,n){t&2&&(at("id",n.id),Y("align",null),f("mat-mdc-form-field-hint-end",n.align==="end"))},inputs:{align:"align",id:"id"}})}return i})(),C_=new b("MatPrefix");var x_=new b("MatSuffix");var Mu=new b("FloatingLabelParent"),Cu=(()=>{class i{_elementRef=s(O);get floating(){return this._floating}set floating(e){this._floating=e,this.monitorResize&&this._handleResize()}_floating=!1;get monitorResize(){return this._monitorResize}set monitorResize(e){this._monitorResize=e,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}_monitorResize=!1;_resizeObserver=s(gu);_ngZone=s(j);_parent=s(Mu);_resizeSubscription=new ve;ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return w_(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(t,n){t&2&&f("mdc-floating-label--float-above",n.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"}})}return i})();function w_(i){let o=i;if(o.offsetParent!==null)return o.scrollWidth;let e=o.cloneNode(!0);e.style.setProperty("position","absolute"),e.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(e);let t=e.scrollWidth;return e.remove(),t}var xu="mdc-line-ripple--active",Pr="mdc-line-ripple--deactivating",wu=(()=>{class i{_elementRef=s(O);_cleanupTransitionEnd;constructor(){let e=s(j),t=s(ue);e.runOutsideAngular(()=>{this._cleanupTransitionEnd=t.listen(this._elementRef.nativeElement,"transitionend",this._handleTransitionEnd)})}activate(){let e=this._elementRef.nativeElement.classList;e.remove(Pr),e.add(xu)}deactivate(){this._elementRef.nativeElement.classList.add(Pr)}_handleTransitionEnd=e=>{let t=this._elementRef.nativeElement.classList,n=t.contains(Pr);e.propertyName==="opacity"&&n&&t.remove(xu,Pr)};ngOnDestroy(){this._cleanupTransitionEnd()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"]})}return i})(),Du=(()=>{class i{_elementRef=s(O);_ngZone=s(j);open=!1;_notch;ngAfterViewInit(){let e=this._elementRef.nativeElement,t=e.querySelector(".mdc-floating-label");t?(e.classList.add("mdc-notched-outline--upgraded"),typeof requestAnimationFrame=="function"&&(t.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>t.style.transitionDuration="")}))):e.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(e){let t=this._notch.nativeElement;!this.open||!e?t.style.width="":t.style.width=`calc(${e}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`}_setMaxWidth(e){this._notch.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${e}px)`)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(t,n){if(t&1&&we(Jg,5),t&2){let a;T(a=R())&&(n._notch=a.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(t,n){t&2&&f("mdc-notched-outline--notched",n.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},ngContentSelectors:e_,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(t,n){t&1&&(le(),ct(0,"div",1),Ee(1,"div",2,0),H(3),Pe(),ct(4,"div",3))},encapsulation:2})}return i})(),aa=(()=>{class i{value=null;stateChanges;id;placeholder;ngControl=null;focused=!1;empty=!1;shouldLabelFloat=!1;required=!1;disabled=!1;errorState=!1;controlType;autofilled;userAriaDescribedBy;disableAutomaticLabeling;describedByIds;static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i})}return i})();var kn=new b("MatFormField"),D_=new b("MAT_FORM_FIELD_DEFAULT_OPTIONS"),ku="fill",k_="auto",Su="fixed",S_="translateY(-50%)",yt=(()=>{class i{_elementRef=s(O);_changeDetectorRef=s(ie);_platform=s(se);_idGenerator=s(he);_ngZone=s(j);_defaults=s(D_,{optional:!0});_currentDirection;_textField;_iconPrefixContainer;_textPrefixContainer;_iconSuffixContainer;_textSuffixContainer;_floatingLabel;_notchedOutline;_lineRipple;_iconPrefixContainerSignal=Io("iconPrefixContainer");_textPrefixContainerSignal=Io("textPrefixContainer");_iconSuffixContainerSignal=Io("iconSuffixContainer");_textSuffixContainerSignal=Io("textSuffixContainer");_prefixSuffixContainers=K(()=>[this._iconPrefixContainerSignal(),this._textPrefixContainerSignal(),this._iconSuffixContainerSignal(),this._textSuffixContainerSignal()].map(e=>e?.nativeElement).filter(e=>e!==void 0));_formFieldControl;_prefixChildren;_suffixChildren;_errorChildren;_hintChildren;_labelChild=Jc(Ut);get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=rt(e)}_hideRequiredMarker=!1;color="primary";get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||k_}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e,this._changeDetectorRef.markForCheck())}_floatLabel;get appearance(){return this._appearanceSignal()}set appearance(e){let t=e||this._defaults?.appearance||ku;this._appearanceSignal.set(t)}_appearanceSignal=N(ku);get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||Su}set subscriptSizing(e){this._subscriptSizing=e||this._defaults?.subscriptSizing||Su}_subscriptSizing=null;get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}_hintLabel="";_hasIconPrefix=!1;_hasTextPrefix=!1;_hasIconSuffix=!1;_hasTextSuffix=!1;_labelId=this._idGenerator.getId("mat-mdc-form-field-label-");_hintLabelId=this._idGenerator.getId("mat-mdc-hint-");_describedByIds;get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(e){this._explicitFormFieldControl=e}_destroyed=new M;_isFocused=null;_explicitFormFieldControl;_previousControl=null;_previousControlValidatorFn=null;_stateChanges;_valueChanges;_describedByChanges;_outlineLabelOffsetResizeObserver=null;_animationsDisabled=de();constructor(){let e=this._defaults,t=s(Ue);e&&(e.appearance&&(this.appearance=e.appearance),this._hideRequiredMarker=!!e?.hideRequiredMarker,e.color&&(this.color=e.color)),At(()=>this._currentDirection=t.valueSignal()),this._syncOutlineLabelOffset()}ngAfterViewInit(){this._updateFocusState(),this._animationsDisabled||this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-form-field-animations-enabled")},300)}),this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._control.ngControl&&this._control.ngControl.control&&(this._previousControlValidatorFn=this._control.ngControl.control.validator),this._previousControl=this._control),this._control.ngControl&&this._control.ngControl.control&&this._control.ngControl.control.validator!==this._previousControlValidatorFn&&this._changeDetectorRef.markForCheck()}ngOnDestroy(){this._outlineLabelOffsetResizeObserver?.disconnect(),this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._describedByChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getLabelId=K(()=>this._hasFloatingLabel()?this._labelId:null);getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(e){let t=this._control,n="mat-mdc-form-field-type-";e&&this._elementRef.nativeElement.classList.remove(n+e.controlType),t.controlType&&this._elementRef.nativeElement.classList.add(n+t.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=t.stateChanges.subscribe(()=>{this._updateFocusState(),this._changeDetectorRef.markForCheck()}),this._describedByChanges?.unsubscribe(),this._describedByChanges=t.stateChanges.pipe(Ie([void 0,void 0]),Ae(()=>[t.errorState,t.userAriaDescribedBy]),Ds(),ge(([[a,r],[m,h]])=>a!==m||r!==h)).subscribe(()=>this._syncDescribedByIds()),this._valueChanges?.unsubscribe(),t.ngControl&&t.ngControl.valueChanges&&(this._valueChanges=t.ngControl.valueChanges.pipe(ne(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(e=>!e._isText),this._hasTextPrefix=!!this._prefixChildren.find(e=>e._isText),this._hasIconSuffix=!!this._suffixChildren.find(e=>!e._isText),this._hasTextSuffix=!!this._suffixChildren.find(e=>e._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),He(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){this._control}_updateFocusState(){let e=this._control.focused;e&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!e&&(this._isFocused||this._isFocused===null)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._elementRef.nativeElement.classList.toggle("mat-focused",e),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",e)}_syncOutlineLabelOffset(){id({earlyRead:()=>{if(this._appearanceSignal()!=="outline")return this._outlineLabelOffsetResizeObserver?.disconnect(),null;if(globalThis.ResizeObserver){this._outlineLabelOffsetResizeObserver||=new globalThis.ResizeObserver(()=>{this._writeOutlinedLabelStyles(this._getOutlinedLabelOffset())});for(let e of this._prefixSuffixContainers())this._outlineLabelOffsetResizeObserver.observe(e,{box:"border-box"})}return this._getOutlinedLabelOffset()},write:e=>this._writeOutlinedLabelStyles(e())})}_shouldAlwaysFloat(){return this.floatLabel==="always"}_hasOutline(){return this.appearance==="outline"}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_hasFloatingLabel=K(()=>!!this._labelChild());_shouldLabelFloat(){return this._hasFloatingLabel()?this._control.shouldLabelFloat||this._shouldAlwaysFloat():!1}_shouldForward(e){let t=this._control?this._control.ngControl:null;return t&&t[e]}_getSubscriptMessageType(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){!this._hasOutline()||!this._floatingLabel||!this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(0):this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth())}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){this._hintChildren}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&typeof this._control.userAriaDescribedBy=="string"&&e.push(...this._control.userAriaDescribedBy.split(" ")),this._getSubscriptMessageType()==="hint"){let a=this._hintChildren?this._hintChildren.find(m=>m.align==="start"):null,r=this._hintChildren?this._hintChildren.find(m=>m.align==="end"):null;a?e.push(a.id):this._hintLabel&&e.push(this._hintLabelId),r&&e.push(r.id)}else this._errorChildren&&e.push(...this._errorChildren.map(a=>a.id));let t=this._control.describedByIds,n;if(t){let a=this._describedByIds||e;n=e.concat(t.filter(r=>r&&!a.includes(r)))}else n=e;this._control.setDescribedByIds(n),this._describedByIds=e}}_getOutlinedLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return null;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return["",null];if(!this._isAttachedToDom())return null;let e=this._iconPrefixContainer?.nativeElement,t=this._textPrefixContainer?.nativeElement,n=this._iconSuffixContainer?.nativeElement,a=this._textSuffixContainer?.nativeElement,r=e?.getBoundingClientRect().width??0,m=t?.getBoundingClientRect().width??0,h=n?.getBoundingClientRect().width??0,g=a?.getBoundingClientRect().width??0,_=this._currentDirection==="rtl"?"-1":"1",y=`${r+m}px`,U=`calc(${_} * (${y} + var(--mat-mdc-form-field-label-offset-x, 0px)))`,J=`var(--mat-mdc-form-field-label-transform, ${S_} translateX(${U}))`,me=r+m+h+g;return[J,me]}_writeOutlinedLabelStyles(e){if(e!==null){let[t,n]=e;this._floatingLabel&&(this._floatingLabel.element.style.transform=t),n!==null&&this._notchedOutline?._setMaxWidth(n)}}_isAttachedToDom(){let e=this._elementRef.nativeElement;if(e.getRootNode){let t=e.getRootNode();return t&&t!==e}return document.documentElement.contains(e)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-form-field"]],contentQueries:function(t,n,a){if(t&1&&(Yc(a,n._labelChild,Ut,5),tt(a,aa,5)(a,C_,5)(a,x_,5)(a,Eu,5)(a,Nr,5)),t&2){Os();let r;T(r=R())&&(n._formFieldControl=r.first),T(r=R())&&(n._prefixChildren=r),T(r=R())&&(n._suffixChildren=r),T(r=R())&&(n._errorChildren=r),T(r=R())&&(n._hintChildren=r)}},viewQuery:function(t,n){if(t&1&&(Xc(n._iconPrefixContainerSignal,_u,5)(n._textPrefixContainerSignal,bu,5)(n._iconSuffixContainerSignal,vu,5)(n._textSuffixContainerSignal,yu,5),we(t_,5)(_u,5)(bu,5)(vu,5)(yu,5)(Cu,5)(Du,5)(wu,5)),t&2){Os(4);let a;T(a=R())&&(n._textField=a.first),T(a=R())&&(n._iconPrefixContainer=a.first),T(a=R())&&(n._textPrefixContainer=a.first),T(a=R())&&(n._iconSuffixContainer=a.first),T(a=R())&&(n._textSuffixContainer=a.first),T(a=R())&&(n._floatingLabel=a.first),T(a=R())&&(n._notchedOutline=a.first),T(a=R())&&(n._lineRipple=a.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:38,hostBindings:function(t,n){t&2&&f("mat-mdc-form-field-label-always-float",n._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",n._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",n._hasIconSuffix)("mat-form-field-invalid",n._control.errorState)("mat-form-field-disabled",n._control.disabled)("mat-form-field-autofilled",n._control.autofilled)("mat-form-field-appearance-fill",n.appearance=="fill")("mat-form-field-appearance-outline",n.appearance=="outline")("mat-form-field-hide-placeholder",n._hasFloatingLabel()&&!n._shouldLabelFloat())("mat-primary",n.color!=="accent"&&n.color!=="warn")("mat-accent",n.color==="accent")("mat-warn",n.color==="warn")("ng-untouched",n._shouldForward("untouched"))("ng-touched",n._shouldForward("touched"))("ng-pristine",n._shouldForward("pristine"))("ng-dirty",n._shouldForward("dirty"))("ng-valid",n._shouldForward("valid"))("ng-invalid",n._shouldForward("invalid"))("ng-pending",n._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],features:[te([{provide:kn,useExisting:i},{provide:Mu,useExisting:i}])],ngContentSelectors:n_,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],["aria-atomic","true","aria-live","polite",1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(t,n){if(t&1&&(le(i_),Re(0,r_,1,1,"ng-template",null,0,Fs),l(2,"div",6,1),I("click",function(r){return n._control.onContainerClick(r)}),S(4,s_,1,0,"div",7),l(5,"div",8),S(6,d_,2,2,"div",9),S(7,m_,3,0,"div",10),S(8,u_,3,0,"div",11),l(9,"div",12),S(10,p_,1,1,null,13),H(11),c(),S(12,f_,3,0,"div",14),S(13,g_,3,0,"div",15),c(),S(14,__,1,0,"div",16),c(),l(15,"div",17),S(16,b_,2,0,"div",18)(17,y_,5,1,"div",19),c()),t&2){let a;d(2),f("mdc-text-field--filled",!n._hasOutline())("mdc-text-field--outlined",n._hasOutline())("mdc-text-field--no-label",!n._hasFloatingLabel())("mdc-text-field--disabled",n._control.disabled)("mdc-text-field--invalid",n._control.errorState),d(2),E(!n._hasOutline()&&!n._control.disabled?4:-1),d(2),E(n._hasOutline()?6:-1),d(),E(n._hasIconPrefix?7:-1),d(),E(n._hasTextPrefix?8:-1),d(2),E(!n._hasOutline()||n._forceDisplayInfixLabel()?10:-1),d(2),E(n._hasTextSuffix?12:-1),d(),E(n._hasIconSuffix?13:-1),d(),E(n._hasOutline()?-1:14),d(),f("mat-mdc-form-field-subscript-dynamic-size",n.subscriptSizing==="dynamic");let r=n._getSubscriptMessageType();d(),E((a=r)==="error"?16:a==="hint"?17:-1)}},dependencies:[Cu,Du,$s,wu,Nr],styles:[`.mdc-text-field {
|
|
472
472
|
display: inline-flex;
|
|
473
473
|
align-items: baseline;
|
|
474
474
|
padding: 0 16px;
|
|
@@ -1417,7 +1417,7 @@ select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) optio
|
|
|
1417
1417
|
.mdc-notched-outline--upgraded .mdc-floating-label--float-above {
|
|
1418
1418
|
max-width: calc(133.3333333333% + 1px);
|
|
1419
1419
|
}
|
|
1420
|
-
`],encapsulation:2})}return i})();var lo=(()=>{class i{isErrorState(e,t){return!!(e&&e.invalid&&(e.touched||t&&t.submitted))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var co=class{_defaultMatcher;ngControl;_parentFormGroup;_parentForm;_stateChanges;errorState=!1;matcher;constructor(o,e,t,n,a){this._defaultMatcher=o,this.ngControl=e,this._parentFormGroup=t,this._parentForm=n,this._stateChanges=a}updateErrorState(){let o=this.errorState,e=this._parentFormGroup||this._parentForm,t=this.matcher||this._defaultMatcher,n=this.ngControl?this.ngControl.control:null,a=t?.isErrorState(n,e)??!1;a!==o&&(this.errorState=a,this._stateChanges.next())}};var
|
|
1420
|
+
`],encapsulation:2})}return i})();var lo=(()=>{class i{isErrorState(e,t){return!!(e&&e.invalid&&(e.touched||t&&t.submitted))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var co=class{_defaultMatcher;ngControl;_parentFormGroup;_parentForm;_stateChanges;errorState=!1;matcher;constructor(o,e,t,n,a){this._defaultMatcher=o,this.ngControl=e,this._parentFormGroup=t,this._parentForm=n,this._stateChanges=a}updateErrorState(){let o=this.errorState,e=this._parentFormGroup||this._parentForm,t=this.matcher||this._defaultMatcher,n=this.ngControl?this.ngControl.control:null,a=t?.isErrorState(n,e)??!1;a!==o&&(this.errorState=a,this._stateChanges.next())}};var Ct=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Zn,yt,Q]})}return i})();var A_=["button","checkbox","file","hidden","image","radio","range","reset","submit"],I_=new b("MAT_INPUT_CONFIG"),Gt=(()=>{class i{_elementRef=s(O);_platform=s(se);ngControl=s(Ht,{optional:!0,self:!0});_autofillMonitor=s(hm);_ngZone=s(j);_formField=s(kn,{optional:!0});_renderer=s(ue);_uid=s(he).getId("mat-input-");_previousNativeValue;_inputValueAccessor;_signalBasedValueAccessor;_previousPlaceholder=null;_errorStateTracker;_config=s(I_,{optional:!0});_cleanupIosKeyup;_cleanupWebkitWheel;_isServer=!1;_isNativeSelect=!1;_isTextarea=!1;_isInFormField=!1;focused=!1;stateChanges=new M;controlType="mat-input";autofilled=!1;get disabled(){return this._disabled}set disabled(e){this._disabled=rt(e),this.focused&&(this.focused=!1,this.stateChanges.next())}_disabled=!1;get id(){return this._id}set id(e){this._id=e||this._uid}_id;placeholder;name;get required(){return this._required??this.ngControl?.control?.hasValidator(vt.required)??!1}set required(e){this._required=rt(e)}_required;get type(){return this._type}set type(e){this._type=e||"text",this._validateType(),!this._isTextarea&&vl().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}_type="text";get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}userAriaDescribedBy;get value(){return this._signalBasedValueAccessor?this._signalBasedValueAccessor.value():this._inputValueAccessor.value}set value(e){e!==this.value&&(this._signalBasedValueAccessor?this._signalBasedValueAccessor.value.set(e):this._inputValueAccessor.value=e,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(e){this._readonly=rt(e)}_readonly=!1;disabledInteractive;get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}_neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(e=>vl().has(e));constructor(){let e=s(oa,{optional:!0}),t=s(ri,{optional:!0}),n=s(lo),a=s(fu,{optional:!0,self:!0}),r=this._elementRef.nativeElement,m=r.nodeName.toLowerCase();a?Pi(a.value)?this._signalBasedValueAccessor=a:this._inputValueAccessor=a:this._inputValueAccessor=r,this._previousNativeValue=this.value,this.id=this.id,this._platform.IOS&&this._ngZone.runOutsideAngular(()=>{this._cleanupIosKeyup=this._renderer.listen(r,"keyup",this._iOSKeyupListener)}),this._errorStateTracker=new co(n,this.ngControl,t,e,this.stateChanges),this._isServer=!this._platform.isBrowser,this._isNativeSelect=m==="select",this._isTextarea=m==="textarea",this._isInFormField=!!this._formField,this.disabledInteractive=this._config?.disabledInteractive||!1,this._isNativeSelect&&(this.controlType=r.multiple?"mat-native-select-multiple":"mat-native-select"),this._signalBasedValueAccessor&&At(()=>{this._signalBasedValueAccessor.value(),this.stateChanges.next()})}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(e=>{this.autofilled=e.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._cleanupIosKeyup?.(),this._cleanupWebkitWheel?.()}ngDoCheck(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==null&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(e){this._elementRef.nativeElement.focus(e)}updateErrorState(){this._errorStateTracker.updateErrorState()}_focusChanged(e){if(e!==this.focused){if(!this._isNativeSelect&&e&&this.disabled&&this.disabledInteractive){let t=this._elementRef.nativeElement;t.type==="number"?(t.type="text",t.setSelectionRange(0,0),t.type="number"):t.setSelectionRange(0,0)}this.focused=e,this.stateChanges.next()}}_onInput(){}_dirtyCheckNativeValue(){let e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}_dirtyCheckPlaceholder(){let e=this._getPlaceholder();if(e!==this._previousPlaceholder){let t=this._elementRef.nativeElement;this._previousPlaceholder=e,e?t.setAttribute("placeholder",e):t.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){A_.indexOf(this._type)>-1}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let e=this._elementRef.nativeElement.validity;return e&&e.badInput}get empty(){return!this._isNeverEmpty()&&!this._elementRef.nativeElement.value&&!this._isBadInput()&&!this.autofilled}get shouldLabelFloat(){if(this._isNativeSelect){let e=this._elementRef.nativeElement,t=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&t&&t.label)}else return this.focused&&!this.disabled||!this.empty}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(e){let t=this._elementRef.nativeElement;e.length?t.setAttribute("aria-describedby",e.join(" ")):t.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){let e=this._elementRef.nativeElement;return this._isNativeSelect&&(e.multiple||e.size>1)}_iOSKeyupListener=e=>{let t=e.target;!t.value&&t.selectionStart===0&&t.selectionEnd===0&&(t.setSelectionRange(1,1),t.setSelectionRange(0,0))};_getReadonlyAttribute(){return this._isNativeSelect?null:this.readonly||this.disabled&&this.disabledInteractive?"true":null}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:21,hostBindings:function(t,n){t&1&&I("focus",function(){return n._focusChanged(!0)})("blur",function(){return n._focusChanged(!1)})("input",function(){return n._onInput()}),t&2&&(at("id",n.id)("disabled",n.disabled&&!n.disabledInteractive)("required",n.required),Y("name",n.name||null)("readonly",n._getReadonlyAttribute())("aria-disabled",n.disabled&&n.disabledInteractive?"true":null)("aria-invalid",n.empty&&n.required?null:n.errorState)("aria-required",n.required)("id",n.id),f("mat-input-server",n._isServer)("mat-mdc-form-field-textarea-control",n._isInFormField&&n._isTextarea)("mat-mdc-form-field-input-control",n._isInFormField)("mat-mdc-input-disabled-interactive",n.disabledInteractive)("mdc-text-field__input",n._isInFormField)("mat-mdc-native-select-inline",n._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly",disabledInteractive:[2,"disabledInteractive","disabledInteractive",F]},exportAs:["matInput"],features:[te([{provide:aa,useExisting:i}]),xe]})}return i})(),$t=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Ct,Ct,pm,Q]})}return i})();var Wt=(function(i){return i[i.FADING_IN=0]="FADING_IN",i[i.VISIBLE=1]="VISIBLE",i[i.FADING_OUT=2]="FADING_OUT",i[i.HIDDEN=3]="HIDDEN",i})(Wt||{}),Hl=class{_renderer;element;config;_animationForciblyDisabledThroughCss;state=Wt.HIDDEN;constructor(o,e,t,n=!1){this._renderer=o,this.element=e,this.config=t,this._animationForciblyDisabledThroughCss=n}fadeOut(){this._renderer.fadeOutRipple(this)}},Au=Yn({passive:!0,capture:!0}),Ul=class{_events=new Map;addHandler(o,e,t,n){let a=this._events.get(e);if(a){let r=a.get(t);r?r.add(n):a.set(t,new Set([n]))}else this._events.set(e,new Map([[t,new Set([n])]])),o.runOutsideAngular(()=>{document.addEventListener(e,this._delegateEventHandler,Au)})}removeHandler(o,e,t){let n=this._events.get(o);if(!n)return;let a=n.get(e);a&&(a.delete(t),a.size===0&&n.delete(e),n.size===0&&(this._events.delete(o),document.removeEventListener(o,this._delegateEventHandler,Au)))}_delegateEventHandler=o=>{let e=it(o);e&&this._events.get(o.type)?.forEach((t,n)=>{(n===e||n.contains(e))&&t.forEach(a=>a.handleEvent(o))})}},ra={enterDuration:225,exitDuration:150},T_=800,Iu=Yn({passive:!0,capture:!0}),Tu=["mousedown","touchstart"],Ru=["mouseup","mouseleave","touchend","touchcancel"],R_=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["ng-component"]],hostAttrs:["mat-ripple-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`.mat-ripple {
|
|
1421
1421
|
overflow: hidden;
|
|
1422
1422
|
position: relative;
|
|
1423
1423
|
}
|
|
@@ -1445,7 +1445,7 @@ select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) optio
|
|
|
1445
1445
|
.cdk-drag-preview .mat-ripple-element, .cdk-drag-placeholder .mat-ripple-element {
|
|
1446
1446
|
display: none;
|
|
1447
1447
|
}
|
|
1448
|
-
`],encapsulation:2})}return i})(),Sn=class i{_target;_ngZone;_platform;_containerElement;_triggerElement=null;_isPointerDown=!1;_activeRipples=new Map;_mostRecentTransientRipple=null;_lastTouchStartEvent;_pointerUpEventsRegistered=!1;_containerRect=null;static _eventManager=new Ul;constructor(o,e,t,n,a){this._target=o,this._ngZone=e,this._platform=n,n.isBrowser&&(this._containerElement=bt(t)),a&&a.get(Te).load(
|
|
1448
|
+
`],encapsulation:2})}return i})(),Sn=class i{_target;_ngZone;_platform;_containerElement;_triggerElement=null;_isPointerDown=!1;_activeRipples=new Map;_mostRecentTransientRipple=null;_lastTouchStartEvent;_pointerUpEventsRegistered=!1;_containerRect=null;static _eventManager=new Ul;constructor(o,e,t,n,a){this._target=o,this._ngZone=e,this._platform=n,n.isBrowser&&(this._containerElement=bt(t)),a&&a.get(Te).load(R_)}fadeInRipple(o,e,t={}){let n=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),a=L(L({},ra),t.animation);t.centered&&(o=n.left+n.width/2,e=n.top+n.height/2);let r=t.radius||O_(o,e,n),m=o-n.left,h=e-n.top,g=a.enterDuration,_=document.createElement("div");_.classList.add("mat-ripple-element"),_.style.left=`${m-r}px`,_.style.top=`${h-r}px`,_.style.height=`${r*2}px`,_.style.width=`${r*2}px`,t.color!=null&&(_.style.backgroundColor=t.color),_.style.transitionDuration=`${g}ms`,this._containerElement.appendChild(_);let y=window.getComputedStyle(_),B=y.transitionProperty,U=y.transitionDuration,J=B==="none"||U==="0s"||U==="0s, 0s"||n.width===0&&n.height===0,me=new Hl(this,_,t,J);_.style.transform="scale3d(1, 1, 1)",me.state=Wt.FADING_IN,t.persistent||(this._mostRecentTransientRipple=me);let re=null;return!J&&(g||a.exitDuration)&&this._ngZone.runOutsideAngular(()=>{let ke=()=>{re&&(re.fallbackTimer=null),clearTimeout(Qt),this._finishRippleTransition(me)},nt=()=>this._destroyRipple(me),Qt=setTimeout(nt,g+100);_.addEventListener("transitionend",ke),_.addEventListener("transitioncancel",nt),re={onTransitionEnd:ke,onTransitionCancel:nt,fallbackTimer:Qt}}),this._activeRipples.set(me,re),(J||!g)&&this._finishRippleTransition(me),me}fadeOutRipple(o){if(o.state===Wt.FADING_OUT||o.state===Wt.HIDDEN)return;let e=o.element,t=L(L({},ra),o.config.animation);e.style.transitionDuration=`${t.exitDuration}ms`,e.style.opacity="0",o.state=Wt.FADING_OUT,(o._animationForciblyDisabledThroughCss||!t.exitDuration)&&this._finishRippleTransition(o)}fadeOutAll(){this._getActiveRipples().forEach(o=>o.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(o=>{o.config.persistent||o.fadeOut()})}setupTriggerEvents(o){let e=bt(o);!this._platform.isBrowser||!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,Tu.forEach(t=>{i._eventManager.addHandler(this._ngZone,t,e,this)}))}handleEvent(o){o.type==="mousedown"?this._onMousedown(o):o.type==="touchstart"?this._onTouchStart(o):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{Ru.forEach(e=>{this._triggerElement.addEventListener(e,this,Iu)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(o){o.state===Wt.FADING_IN?this._startFadeOutTransition(o):o.state===Wt.FADING_OUT&&this._destroyRipple(o)}_startFadeOutTransition(o){let e=o===this._mostRecentTransientRipple,{persistent:t}=o.config;o.state=Wt.VISIBLE,!t&&(!e||!this._isPointerDown)&&o.fadeOut()}_destroyRipple(o){let e=this._activeRipples.get(o)??null;this._activeRipples.delete(o),this._activeRipples.size||(this._containerRect=null),o===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),o.state=Wt.HIDDEN,e!==null&&(o.element.removeEventListener("transitionend",e.onTransitionEnd),o.element.removeEventListener("transitioncancel",e.onTransitionCancel),e.fallbackTimer!==null&&clearTimeout(e.fallbackTimer)),o.element.remove()}_onMousedown(o){let e=_n(o),t=this._lastTouchStartEvent&&Date.now()<this._lastTouchStartEvent+T_;!this._target.rippleDisabled&&!e&&!t&&(this._isPointerDown=!0,this.fadeInRipple(o.clientX,o.clientY,this._target.rippleConfig))}_onTouchStart(o){if(!this._target.rippleDisabled&&!bn(o)){this._lastTouchStartEvent=Date.now(),this._isPointerDown=!0;let e=o.changedTouches;if(e)for(let t=0;t<e.length;t++)this.fadeInRipple(e[t].clientX,e[t].clientY,this._target.rippleConfig)}}_onPointerUp(){this._isPointerDown&&(this._isPointerDown=!1,this._getActiveRipples().forEach(o=>{let e=o.state===Wt.VISIBLE||o.config.terminateOnPointerUp&&o.state===Wt.FADING_IN;!o.config.persistent&&e&&o.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){let o=this._triggerElement;o&&(Tu.forEach(e=>i._eventManager.removeHandler(e,o,this)),this._pointerUpEventsRegistered&&(Ru.forEach(e=>o.removeEventListener(e,this,Iu)),this._pointerUpEventsRegistered=!1))}};function O_(i,o,e){let t=Math.max(Math.abs(i-e.left),Math.abs(i-e.right)),n=Math.max(Math.abs(o-e.top),Math.abs(o-e.bottom));return Math.sqrt(t*t+n*n)}var En=new b("mat-ripple-global-options"),uo=(()=>{class i{_elementRef=s(O);_animationsDisabled=de();color;unbounded=!1;centered=!1;radius=0;animation;get disabled(){return this._disabled}set disabled(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}_disabled=!1;get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}_trigger;_rippleRenderer;_globalOptions;_isInitialized=!1;constructor(){let e=s(j),t=s(se),n=s(En,{optional:!0}),a=s(q);this._globalOptions=n||{},this._rippleRenderer=new Sn(this,e,this._elementRef,t,a)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:L(L(L({},this._globalOptions.animation),this._animationsDisabled?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(e,t=0,n){return typeof e=="number"?this._rippleRenderer.fadeInRipple(e,t,L(L({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,L(L({},this.rippleConfig),e))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,n){t&2&&f("mat-ripple-unbounded",n.unbounded)},inputs:{color:[0,"matRippleColor","color"],unbounded:[0,"matRippleUnbounded","unbounded"],centered:[0,"matRippleCentered","centered"],radius:[0,"matRippleRadius","radius"],animation:[0,"matRippleAnimation","animation"],disabled:[0,"matRippleDisabled","disabled"],trigger:[0,"matRippleTrigger","trigger"]},exportAs:["matRipple"]})}return i})();var F_={capture:!0},P_=["focus","mousedown","mouseenter","touchstart"],Gl="mat-ripple-loader-uninitialized",$l="mat-ripple-loader-class-name",Ou="mat-ripple-loader-centered",Lr="mat-ripple-loader-disabled",Br=(()=>{class i{_document=s(G);_animationsDisabled=de();_globalRippleOptions=s(En,{optional:!0});_platform=s(se);_ngZone=s(j);_injector=s(q);_eventCleanups;_hosts=new Map;constructor(){let e=s(et).createRenderer(null,null);this._eventCleanups=this._ngZone.runOutsideAngular(()=>P_.map(t=>e.listen(this._document,t,this._onInteraction,F_)))}ngOnDestroy(){let e=this._hosts.keys();for(let t of e)this.destroyRipple(t);this._eventCleanups.forEach(t=>t())}configureRipple(e,t){e.setAttribute(Gl,this._globalRippleOptions?.namespace??""),(t.className||!e.hasAttribute($l))&&e.setAttribute($l,t.className||""),t.centered&&e.setAttribute(Ou,""),t.disabled&&e.setAttribute(Lr,"")}setDisabled(e,t){let n=this._hosts.get(e);n?(n.target.rippleDisabled=t,!t&&!n.hasSetUpEvents&&(n.hasSetUpEvents=!0,n.renderer.setupTriggerEvents(e))):t?e.setAttribute(Lr,""):e.removeAttribute(Lr)}_onInteraction=e=>{let t=it(e);if(t instanceof HTMLElement){let n=t.closest(`[${Gl}="${this._globalRippleOptions?.namespace??""}"]`);n&&this._createRipple(n)}};_createRipple(e){if(!this._document||this._hosts.has(e))return;e.querySelector(".mat-ripple")?.remove();let t=this._document.createElement("span");t.classList.add("mat-ripple",e.getAttribute($l)),e.append(t);let n=this._globalRippleOptions,a=this._animationsDisabled?0:n?.animation?.enterDuration??ra.enterDuration,r=this._animationsDisabled?0:n?.animation?.exitDuration??ra.exitDuration,m={rippleDisabled:this._animationsDisabled||n?.disabled||e.hasAttribute(Lr),rippleConfig:{centered:e.hasAttribute(Ou),terminateOnPointerUp:n?.terminateOnPointerUp,animation:{enterDuration:a,exitDuration:r}}},h=new Sn(m,this._ngZone,t,this._platform,this._injector),g=!m.rippleDisabled;g&&h.setupTriggerEvents(e),this._hosts.set(e,{target:m,renderer:h,hasSetUpEvents:g}),e.removeAttribute(Gl)}destroyRipple(e){let t=this._hosts.get(e);t&&(t.renderer._removeTriggerEvents(),this._hosts.delete(e))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var xt=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["structural-styles"]],decls:0,vars:0,template:function(t,n){},styles:[`.mat-focus-indicator {
|
|
1449
1449
|
position: relative;
|
|
1450
1450
|
}
|
|
1451
1451
|
.mat-focus-indicator::before {
|
|
@@ -1471,7 +1471,7 @@ select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) optio
|
|
|
1471
1471
|
--mat-focus-indicator-display: block;
|
|
1472
1472
|
}
|
|
1473
1473
|
}
|
|
1474
|
-
`],encapsulation:2})}return i})();var
|
|
1474
|
+
`],encapsulation:2})}return i})();var N_=["*",[["","progressIndicator",""]]],L_=["*","[progressIndicator]"];function B_(i,o){i&1&&(Ee(0,"div",1),H(1,1),Pe())}var V_=new b("MAT_BUTTON_CONFIG");function Fu(i){return i==null?void 0:_t(i)}var Wl=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_animationsDisabled=de();_config=s(V_,{optional:!0});_focusMonitor=s(St);_cleanupClick;_renderer=s(ue);_rippleLoader=s(Br);_isAnchor;_isFab=!1;color;get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=e,this._updateRippleDisabled()}_disableRipple=!1;get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._updateRippleDisabled()}_disabled=!1;ariaDisabled;disabledInteractive;tabIndex;set _tabindex(e){this.tabIndex=e}showProgress=jn(!1,{transform:F});constructor(){s(Te).load(xt);let e=this._elementRef.nativeElement;this._isAnchor=e.tagName==="A",this.disabledInteractive=this._config?.disabledInteractive??!1,this.color=this._config?.color??null,this._rippleLoader?.configureRipple(e,{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(e="program",t){e?this._focusMonitor.focusVia(this._elementRef.nativeElement,e,t):this._elementRef.nativeElement.focus(t)}_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",e=>{this.disabled&&(e.preventDefault(),e.stopImmediatePropagation())}))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,hostAttrs:[1,"mat-mdc-button-base"],hostVars:15,hostBindings:function(t,n){t&2&&(Y("disabled",n._getDisabledAttribute())("aria-disabled",n._getAriaDisabled())("tabindex",n._getTabIndex()),Qe(n.color?"mat-"+n.color:""),f("mat-mdc-button-progress-indicator-shown",n.showProgress())("mat-mdc-button-disabled",n.disabled)("mat-mdc-button-disabled-interactive",n.disabledInteractive)("mat-unthemed",!n.color)("_mat-animation-noopable",n._animationsDisabled))},inputs:{color:"color",disableRipple:[2,"disableRipple","disableRipple",F],disabled:[2,"disabled","disabled",F],ariaDisabled:[2,"aria-disabled","ariaDisabled",F],disabledInteractive:[2,"disabledInteractive","disabledInteractive",F],tabIndex:[2,"tabIndex","tabIndex",Fu],_tabindex:[2,"tabindex","_tabindex",Fu],showProgress:[1,"showProgress"]}})}return i})(),Mn=(()=>{class i extends Wl{constructor(){super(),this._rippleLoader.configureRipple(this._elementRef.nativeElement,{centered:!0})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,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:[X],ngContentSelectors:L_,decls:5,vars:1,consts:[[1,"mat-mdc-button-persistent-ripple","mdc-icon-button__ripple"],[1,"mat-mdc-button-progress-indicator-container"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(t,n){t&1&&(le(N_),ct(0,"span",0),H(1),S(2,B_,2,0,"div",1),ct(3,"span",2)(4,"span",3)),t&2&&(d(2),E(n.showProgress()?2:-1))},styles:[`.mat-mdc-icon-button {
|
|
1475
1475
|
-webkit-user-select: none;
|
|
1476
1476
|
user-select: none;
|
|
1477
1477
|
display: inline-block;
|
|
@@ -1619,7 +1619,7 @@ select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) optio
|
|
|
1619
1619
|
outline: solid 1px;
|
|
1620
1620
|
}
|
|
1621
1621
|
}
|
|
1622
|
-
`],encapsulation:2})}return i})();var bi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var
|
|
1622
|
+
`],encapsulation:2})}return i})();var bi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var z_=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]],[["","progressIndicator",""]]],j_=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]","[progressIndicator]"];function H_(i,o){i&1&&(Ee(0,"div",2),H(1,3),Pe())}var Pu=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"]]]),ht=(()=>{class i extends Wl{get appearance(){return this._appearance}set appearance(e){this.setAppearance(e||this._config?.defaultAppearance||"text")}_appearance=null;constructor(){super();let e=U_(this._elementRef.nativeElement);e&&this.setAppearance(e)}setAppearance(e){if(e===this._appearance)return;let t=this._elementRef.nativeElement.classList,n=this._appearance?Pu.get(this._appearance):null,a=Pu.get(e);n&&t.remove(...n),t.add(...a),this._appearance=e}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,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:[X],ngContentSelectors:j_,decls:8,vars:5,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-mdc-button-progress-indicator-container"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(t,n){t&1&&(le(z_),ct(0,"span",0),H(1),Ee(2,"span",1),H(3,1),Pe(),H(4,2),S(5,H_,2,0,"div",2),ct(6,"span",3)(7,"span",4)),t&2&&(f("mdc-button__ripple",!n._isFab)("mdc-fab__ripple",n._isFab),d(5),E(n.showProgress()?5:-1))},styles:[`.mat-mdc-button-base {
|
|
1623
1623
|
text-decoration: none;
|
|
1624
1624
|
}
|
|
1625
1625
|
.mat-mdc-button-base .mat-icon {
|
|
@@ -2184,7 +2184,7 @@ select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) optio
|
|
|
2184
2184
|
outline: solid 1px;
|
|
2185
2185
|
}
|
|
2186
2186
|
}
|
|
2187
|
-
`],encapsulation:2})}return i})();function H_(i){return i.hasAttribute("mat-raised-button")?"elevated":i.hasAttribute("mat-stroked-button")?"outlined":i.hasAttribute("mat-flat-button")?"filled":i.hasAttribute("mat-button")?"text":null}var dt=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[bi,Q]})}return i})();function Pu(i){return Error(`Unable to find icon with the name "${i}"`)}function U_(){return Error("Could not find HttpClient for use with Angular Material icons. Please add provideHttpClient() to your providers.")}function Nu(i){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${i}".`)}function Lu(i){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${i}".`)}var Ai=class{url;svgText;options;svgElement=null;constructor(o,e,t){this.url=o,this.svgText=e,this.options=t}},Vu=(()=>{class i{_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,n,a){this._httpClient=e,this._sanitizer=t,this._errorHandler=a,this._document=n}addSvgIcon(e,t,n){return this.addSvgIconInNamespace("",e,t,n)}addSvgIconLiteral(e,t,n){return this.addSvgIconLiteralInNamespace("",e,t,n)}addSvgIconInNamespace(e,t,n,a){return this._addSvgIconConfig(e,t,new Ai(n,null,a))}addSvgIconResolver(e){return this._resolvers.push(e),this}addSvgIconLiteralInNamespace(e,t,n,a){let r=this._sanitizer.sanitize(gt.HTML,n);if(!r)throw Lu(n);let m=vn(r);return this._addSvgIconConfig(e,t,new Ai("",m,a))}addSvgIconSet(e,t){return this.addSvgIconSetInNamespace("",e,t)}addSvgIconSetLiteral(e,t){return this.addSvgIconSetLiteralInNamespace("",e,t)}addSvgIconSetInNamespace(e,t,n){return this._addSvgIconSetConfig(e,new Ai(t,null,n))}addSvgIconSetLiteralInNamespace(e,t,n){let a=this._sanitizer.sanitize(gt.HTML,t);if(!a)throw Lu(t);let r=vn(a);return this._addSvgIconSetConfig(e,new Ai("",r,n))}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(gt.RESOURCE_URL,e);if(!t)throw Nu(e);let n=this._cachedIconsByUrl.get(t);return n?ge(Vr(n)):this._loadSvgIconFromConfig(new Ai(e,null)).pipe(Jt(a=>this._cachedIconsByUrl.set(t,a)),Ae(a=>Vr(a)))}getNamedSvgIcon(e,t=""){let n=Bu(t,e),a=this._svgIconConfigs.get(n);if(a)return this._getSvgFromConfig(a);if(a=this._getIconConfigFromResolvers(t,e),a)return this._svgIconConfigs.set(n,a),this._getSvgFromConfig(a);let r=this._iconSetConfigs.get(t);return r?this._getSvgFromIconSetConfigs(e,r):Ma(Pu(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(e){return e.svgText?ge(Vr(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(Ae(t=>Vr(t)))}_getSvgFromIconSetConfigs(e,t){let n=this._extractIconWithNameFromAnySet(e,t);if(n)return ge(n);let a=t.filter(r=>!r.svgText).map(r=>this._loadSvgIconSetFromConfig(r).pipe(mi(m=>{let g=`Loading icon set URL: ${this._sanitizer.sanitize(gt.RESOURCE_URL,r.url)} failed: ${m.message}`;return this._errorHandler.handleError(new Error(g)),ge(null)})));return Aa(a).pipe(Ae(()=>{let r=this._extractIconWithNameFromAnySet(e,t);if(!r)throw Pu(e);return r}))}_extractIconWithNameFromAnySet(e,t){for(let n=t.length-1;n>=0;n--){let a=t[n];if(a.svgText&&a.svgText.toString().indexOf(e)>-1){let r=this._svgElementFromConfig(a),m=this._extractSvgIconFromSet(r,e,a.options);if(m)return m}}return null}_loadSvgIconFromConfig(e){return this._fetchIcon(e).pipe(Jt(t=>e.svgText=t),Ae(()=>this._svgElementFromConfig(e)))}_loadSvgIconSetFromConfig(e){return e.svgText?ge(null):this._fetchIcon(e).pipe(Jt(t=>e.svgText=t))}_extractSvgIconFromSet(e,t,n){let a=e.querySelector(`[id="${t}"]`);if(!a)return null;let r=a.cloneNode(!0);if(r.removeAttribute("id"),r.nodeName.toLowerCase()==="svg")return this._setSvgAttributes(r,n);if(r.nodeName.toLowerCase()==="symbol")return this._setSvgAttributes(this._toSvgElement(r),n);let m=this._svgElementFromString(vn("<svg></svg>"));return m.appendChild(r),this._setSvgAttributes(m,n)}_svgElementFromString(e){let t=this._document.createElement("DIV");t.innerHTML=e;let n=t.querySelector("svg");if(!n)throw Error("<svg> tag not found");return n}_toSvgElement(e){let t=this._svgElementFromString(vn("<svg></svg>")),n=e.attributes;for(let a=0;a<n.length;a++){let{name:r,value:m}=n[a];r!=="id"&&t.setAttribute(r,m)}for(let a=0;a<e.childNodes.length;a++)e.childNodes[a].nodeType===this._document.ELEMENT_NODE&&t.appendChild(e.childNodes[a].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:n}=e,a=n?.withCredentials??!1;if(!this._httpClient)throw U_();if(t==null)throw Error(`Cannot fetch icon from URL "${t}".`);let r=this._sanitizer.sanitize(gt.RESOURCE_URL,t);if(!r)throw Nu(t);let m=this._inProgressUrlFetches.get(r);if(m)return m;let h=this._httpClient.get(r,{responseType:"text",withCredentials:a}).pipe(Ae(g=>vn(g)),Ta(()=>this._inProgressUrlFetches.delete(r)),Oc());return this._inProgressUrlFetches.set(r,h),h}_addSvgIconConfig(e,t,n){return this._svgIconConfigs.set(Bu(e,t),n),this}_addSvgIconSetConfig(e,t){let n=this._iconSetConfigs.get(e);return n?n.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 n=0;n<this._resolvers.length;n++){let a=this._resolvers[n](t,e);if(a)return G_(a)?new Ai(a.url,null,a.options):new Ai(a,null)}}static \u0275fac=function(t){return new(t||i)(ee(jt,8),ee(Uo),ee(G,8),ee(cn))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function Vr(i){return i.cloneNode(!0)}function Bu(i,o){return i+":"+o}function G_(i){return!!(i.url&&i.options)}var $_=["*"],W_=new b("MAT_ICON_DEFAULT_OPTIONS"),q_=new b("mat-icon-location",{providedIn:"root",factory:()=>{let i=s(G),o=i?i.location:null;return{getPathname:()=>o?o.pathname+o.search:""}}}),zu=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],K_=zu.map(i=>`[${i}]`).join(", "),Y_=/^url\(['"]?#(.*?)['"]?\)$/,$t=(()=>{class i{_elementRef=s(O);_iconRegistry=s(Vu);_location=s(q_);_errorHandler=s(cn);_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=null;_svgNamespace=null;_previousPath;_elementsWithExternalReferences;_currentIconFetch=_e.EMPTY;constructor(){let e=s(new hi("aria-hidden"),{optional:!0}),t=s(W_,{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 n=e.childNodes[t];(n.nodeType!==1||n.nodeName.toLowerCase()==="svg")&&n.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;let e=this._elementRef.nativeElement,t=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(n=>n.length>0);this._previousFontSetClass.forEach(n=>e.classList.remove(n)),t.forEach(n=>e.classList.add(n)),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((n,a)=>{n.forEach(r=>{a.setAttribute(r.name,`url('${e}#${r.value}')`)})})}_cacheChildrenWithExternalReferences(e){let t=e.querySelectorAll(K_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let a=0;a<t.length;a++)zu.forEach(r=>{let m=t[a],h=m.getAttribute(r),g=h?h.match(Y_):null;if(g){let _=n.get(m);_||(_=[],n.set(m,_)),_.push({name:r,value:g[1]})}})}_updateSvgIcon(e){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),e){let[t,n]=this._splitIconName(e);t&&(this._svgNamespace=t),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,t).pipe(ot(1)).subscribe(a=>this._setSvgElement(a),a=>{let r=`Error retrieving icon ${t}:${n}! ${a.message}`;this._errorHandler.handleError(new Error(r))})}}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(t,n){t&2&&(Y("data-mat-icon-type",n._usingFontIcon()?"font":"svg")("data-mat-icon-name",n._svgName||n.fontIcon)("data-mat-icon-namespace",n._svgNamespace||n.fontSet)("fontIcon",n._usingFontIcon()?n.fontIcon:null),Qe(n.color?"mat-"+n.color:""),f("mat-icon-inline",n.inline)("mat-icon-no-color",n.color!=="primary"&&n.color!=="accent"&&n.color!=="warn"))},inputs:{color:"color",inline:[2,"inline","inline",F],svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],ngContentSelectors:$_,decls:1,vars:0,template:function(t,n){t&1&&(le(),H(0))},styles:[`mat-icon, mat-icon.mat-primary, mat-icon.mat-accent, mat-icon.mat-warn {
|
|
2187
|
+
`],encapsulation:2})}return i})();function U_(i){return i.hasAttribute("mat-raised-button")?"elevated":i.hasAttribute("mat-stroked-button")?"outlined":i.hasAttribute("mat-flat-button")?"filled":i.hasAttribute("mat-button")?"text":null}var dt=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[bi,Q]})}return i})();function Nu(i){return Error(`Unable to find icon with the name "${i}"`)}function G_(){return Error("Could not find HttpClient for use with Angular Material icons. Please add provideHttpClient() to your providers.")}function Lu(i){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${i}".`)}function Bu(i){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${i}".`)}var Ai=class{url;svgText;options;svgElement=null;constructor(o,e,t){this.url=o,this.svgText=e,this.options=t}},zu=(()=>{class i{_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,n,a){this._httpClient=e,this._sanitizer=t,this._errorHandler=a,this._document=n}addSvgIcon(e,t,n){return this.addSvgIconInNamespace("",e,t,n)}addSvgIconLiteral(e,t,n){return this.addSvgIconLiteralInNamespace("",e,t,n)}addSvgIconInNamespace(e,t,n,a){return this._addSvgIconConfig(e,t,new Ai(n,null,a))}addSvgIconResolver(e){return this._resolvers.push(e),this}addSvgIconLiteralInNamespace(e,t,n,a){let r=this._sanitizer.sanitize(gt.HTML,n);if(!r)throw Bu(n);let m=vn(r);return this._addSvgIconConfig(e,t,new Ai("",m,a))}addSvgIconSet(e,t){return this.addSvgIconSetInNamespace("",e,t)}addSvgIconSetLiteral(e,t){return this.addSvgIconSetLiteralInNamespace("",e,t)}addSvgIconSetInNamespace(e,t,n){return this._addSvgIconSetConfig(e,new Ai(t,null,n))}addSvgIconSetLiteralInNamespace(e,t,n){let a=this._sanitizer.sanitize(gt.HTML,t);if(!a)throw Bu(t);let r=vn(a);return this._addSvgIconSetConfig(e,new Ai("",r,n))}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(gt.RESOURCE_URL,e);if(!t)throw Lu(e);let n=this._cachedIconsByUrl.get(t);return n?be(Vr(n)):this._loadSvgIconFromConfig(new Ai(e,null)).pipe(ti(a=>this._cachedIconsByUrl.set(t,a)),Ae(a=>Vr(a)))}getNamedSvgIcon(e,t=""){let n=Vu(t,e),a=this._svgIconConfigs.get(n);if(a)return this._getSvgFromConfig(a);if(a=this._getIconConfigFromResolvers(t,e),a)return this._svgIconConfigs.set(n,a),this._getSvgFromConfig(a);let r=this._iconSetConfigs.get(t);return r?this._getSvgFromIconSetConfigs(e,r):Ma(Nu(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(e){return e.svgText?be(Vr(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(Ae(t=>Vr(t)))}_getSvgFromIconSetConfigs(e,t){let n=this._extractIconWithNameFromAnySet(e,t);if(n)return be(n);let a=t.filter(r=>!r.svgText).map(r=>this._loadSvgIconSetFromConfig(r).pipe(hi(m=>{let g=`Loading icon set URL: ${this._sanitizer.sanitize(gt.RESOURCE_URL,r.url)} failed: ${m.message}`;return this._errorHandler.handleError(new Error(g)),be(null)})));return Aa(a).pipe(Ae(()=>{let r=this._extractIconWithNameFromAnySet(e,t);if(!r)throw Nu(e);return r}))}_extractIconWithNameFromAnySet(e,t){for(let n=t.length-1;n>=0;n--){let a=t[n];if(a.svgText&&a.svgText.toString().indexOf(e)>-1){let r=this._svgElementFromConfig(a),m=this._extractSvgIconFromSet(r,e,a.options);if(m)return m}}return null}_loadSvgIconFromConfig(e){return this._fetchIcon(e).pipe(ti(t=>e.svgText=t),Ae(()=>this._svgElementFromConfig(e)))}_loadSvgIconSetFromConfig(e){return e.svgText?be(null):this._fetchIcon(e).pipe(ti(t=>e.svgText=t))}_extractSvgIconFromSet(e,t,n){let a=e.querySelector(`[id="${t}"]`);if(!a)return null;let r=a.cloneNode(!0);if(r.removeAttribute("id"),r.nodeName.toLowerCase()==="svg")return this._setSvgAttributes(r,n);if(r.nodeName.toLowerCase()==="symbol")return this._setSvgAttributes(this._toSvgElement(r),n);let m=this._svgElementFromString(vn("<svg></svg>"));return m.appendChild(r),this._setSvgAttributes(m,n)}_svgElementFromString(e){let t=this._document.createElement("DIV");t.innerHTML=e;let n=t.querySelector("svg");if(!n)throw Error("<svg> tag not found");return n}_toSvgElement(e){let t=this._svgElementFromString(vn("<svg></svg>")),n=e.attributes;for(let a=0;a<n.length;a++){let{name:r,value:m}=n[a];r!=="id"&&t.setAttribute(r,m)}for(let a=0;a<e.childNodes.length;a++)e.childNodes[a].nodeType===this._document.ELEMENT_NODE&&t.appendChild(e.childNodes[a].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:n}=e,a=n?.withCredentials??!1;if(!this._httpClient)throw G_();if(t==null)throw Error(`Cannot fetch icon from URL "${t}".`);let r=this._sanitizer.sanitize(gt.RESOURCE_URL,t);if(!r)throw Lu(t);let m=this._inProgressUrlFetches.get(r);if(m)return m;let h=this._httpClient.get(r,{responseType:"text",withCredentials:a}).pipe(Ae(g=>vn(g)),Ta(()=>this._inProgressUrlFetches.delete(r)),Oc());return this._inProgressUrlFetches.set(r,h),h}_addSvgIconConfig(e,t,n){return this._svgIconConfigs.set(Vu(e,t),n),this}_addSvgIconSetConfig(e,t){let n=this._iconSetConfigs.get(e);return n?n.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 n=0;n<this._resolvers.length;n++){let a=this._resolvers[n](t,e);if(a)return $_(a)?new Ai(a.url,null,a.options):new Ai(a,null)}}static \u0275fac=function(t){return new(t||i)(ee(jt,8),ee(Go),ee(G,8),ee(cn))};static \u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function Vr(i){return i.cloneNode(!0)}function Vu(i,o){return i+":"+o}function $_(i){return!!(i.url&&i.options)}var W_=["*"],q_=new b("MAT_ICON_DEFAULT_OPTIONS"),K_=new b("mat-icon-location",{providedIn:"root",factory:()=>{let i=s(G),o=i?i.location:null;return{getPathname:()=>o?o.pathname+o.search:""}}}),ju=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],Y_=ju.map(i=>`[${i}]`).join(", "),X_=/^url\(['"]?#(.*?)['"]?\)$/,qt=(()=>{class i{_elementRef=s(O);_iconRegistry=s(zu);_location=s(K_);_errorHandler=s(cn);_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=null;_svgNamespace=null;_previousPath;_elementsWithExternalReferences;_currentIconFetch=ve.EMPTY;constructor(){let e=s(new fi("aria-hidden"),{optional:!0}),t=s(q_,{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 n=e.childNodes[t];(n.nodeType!==1||n.nodeName.toLowerCase()==="svg")&&n.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;let e=this._elementRef.nativeElement,t=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(n=>n.length>0);this._previousFontSetClass.forEach(n=>e.classList.remove(n)),t.forEach(n=>e.classList.add(n)),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((n,a)=>{n.forEach(r=>{a.setAttribute(r.name,`url('${e}#${r.value}')`)})})}_cacheChildrenWithExternalReferences(e){let t=e.querySelectorAll(Y_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let a=0;a<t.length;a++)ju.forEach(r=>{let m=t[a],h=m.getAttribute(r),g=h?h.match(X_):null;if(g){let _=n.get(m);_||(_=[],n.set(m,_)),_.push({name:r,value:g[1]})}})}_updateSvgIcon(e){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),e){let[t,n]=this._splitIconName(e);t&&(this._svgNamespace=t),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,t).pipe(ot(1)).subscribe(a=>this._setSvgElement(a),a=>{let r=`Error retrieving icon ${t}:${n}! ${a.message}`;this._errorHandler.handleError(new Error(r))})}}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(t,n){t&2&&(Y("data-mat-icon-type",n._usingFontIcon()?"font":"svg")("data-mat-icon-name",n._svgName||n.fontIcon)("data-mat-icon-namespace",n._svgNamespace||n.fontSet)("fontIcon",n._usingFontIcon()?n.fontIcon:null),Qe(n.color?"mat-"+n.color:""),f("mat-icon-inline",n.inline)("mat-icon-no-color",n.color!=="primary"&&n.color!=="accent"&&n.color!=="warn"))},inputs:{color:"color",inline:[2,"inline","inline",F],svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],ngContentSelectors:W_,decls:1,vars:0,template:function(t,n){t&1&&(le(),H(0))},styles:[`mat-icon, mat-icon.mat-primary, mat-icon.mat-accent, mat-icon.mat-warn {
|
|
2188
2188
|
color: var(--mat-icon-color, inherit);
|
|
2189
2189
|
}
|
|
2190
2190
|
|
|
@@ -2220,10 +2220,10 @@ select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) optio
|
|
|
2220
2220
|
.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon {
|
|
2221
2221
|
margin: auto;
|
|
2222
2222
|
}
|
|
2223
|
-
`],encapsulation:2})}return i})(),Wt=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var ju=(()=>{class i{constructor(){this.http=s(jt),this.staticUrl="/api/gpus",this.usageUrl="/api/gpus/usage"}fetchGpus(){return this.http.get(this.staticUrl).pipe(Jt({error:e=>console.error("[GpuService] static fetch error:",e)}))}fetchStatus(){return this.http.get(this.usageUrl).pipe(Jt({error:e=>console.error("[GpuService] status fetch error:",e)}))}watchStatus(e=3e3){return Ia(0,e).pipe($e(()=>this.fetchStatus()))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();function zr(i){return i&&typeof i.connect=="function"&&!(i instanceof Mc)}var ai=(function(i){return i[i.REPLACED=0]="REPLACED",i[i.INSERTED=1]="INSERTED",i[i.MOVED=2]="MOVED",i[i.REMOVED=3]="REMOVED",i})(ai||{}),jr=class{viewCacheSize=20;_viewCache=[];applyChanges(o,e,t,n,a){o.forEachOperation((r,m,h)=>{let g,_;if(r.previousIndex==null){let y=()=>t(r,m,h);g=this._insertView(y,h,e,n(r)),_=g?ai.INSERTED:ai.REPLACED}else h==null?(this._detachAndCacheView(m,e),_=ai.REMOVED):(g=this._moveView(m,h,e,n(r)),_=ai.MOVED);a&&a({context:g?.context,operation:_,record:r})})}detach(){for(let o of this._viewCache)o.destroy();this._viewCache=[]}_insertView(o,e,t,n){let a=this._insertViewFromCache(e,t);if(a){a.context.$implicit=n;return}let r=o();return t.createEmbeddedView(r.templateRef,r.context,r.index)}_detachAndCacheView(o,e){let t=e.detach(o);this._maybeCacheView(t,e)}_moveView(o,e,t,n){let a=t.get(o);return t.move(a,e),a.context.$implicit=n,a}_maybeCacheView(o,e){if(this._viewCache.length<this.viewCacheSize)this._viewCache.push(o);else{let t=e.indexOf(o);t===-1?o.destroy():e.remove(t)}}_insertViewFromCache(o,e){let t=this._viewCache.pop();return t&&e.insert(t,o),t||null}};var X_=20,Qi=(()=>{class i{_ngZone=s(j);_platform=s(se);_renderer=s(et).createRenderer(null,null);_cleanupGlobalListener;_scrolled=new M;_scrolledCount=0;scrollContainers=new Map;register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){let t=this.scrollContainers.get(e);t&&(t.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=X_){return this._platform.isBrowser?new ft(t=>{this._cleanupGlobalListener||(this._cleanupGlobalListener=this._ngZone.runOutsideAngular(()=>this._renderer.listen("document","scroll",()=>this._scrolled.next())));let n=e>0?this._scrolled.pipe(Do(e)).subscribe(t):this._scrolled.subscribe(t);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||(this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0)}}):ge()}ngOnDestroy(){this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0,this.scrollContainers.forEach((e,t)=>this.deregister(t)),this._scrolled.complete()}ancestorScrolled(e,t){let n=this.getAncestorScrollContainers(e);return this.scrolled(t).pipe(pe(a=>!a||n.indexOf(a)>-1))}getAncestorScrollContainers(e){let t=[];return this.scrollContainers.forEach((n,a)=>{this._targetContainsElement(a,e)&&t.push(a)}),t}_targetContainsElement(e,t){let n=bt(t),a=e.getElementRef().nativeElement;do if(n==a)return!0;while(n=n.parentElement);return!1}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),ql=(()=>{class i{elementRef=s(O);scrollDispatcher=s(Qi);ngZone=s(j);dir=s(He,{optional:!0});_scrollElement=this.elementRef.nativeElement;_destroyed=new M;_renderer=s(ue);_cleanupScroll;_elementScrolled=new M;ngOnInit(){this._cleanupScroll=this.ngZone.runOutsideAngular(()=>this._renderer.listen(this._scrollElement,"scroll",e=>this._elementScrolled.next(e))),this.scrollDispatcher.register(this)}ngOnDestroy(){this._cleanupScroll?.(),this._elementScrolled.complete(),this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){let t=this.elementRef.nativeElement,n=this.dir&&this.dir.value=="rtl";e.left==null&&(e.left=n?e.end:e.start),e.right==null&&(e.right=n?e.start:e.end),e.bottom!=null&&(e.top=t.scrollHeight-t.clientHeight-e.bottom),n&&Kn()!=ni.NORMAL?(e.left!=null&&(e.right=t.scrollWidth-t.clientWidth-e.left),Kn()==ni.INVERTED?e.left=e.right:Kn()==ni.NEGATED&&(e.left=e.right?-e.right:e.right)):e.right!=null&&(e.left=t.scrollWidth-t.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){let t=this.elementRef.nativeElement;hr()?t.scrollTo(e):(e.top!=null&&(t.scrollTop=e.top),e.left!=null&&(t.scrollLeft=e.left))}measureScrollOffset(e){let t="left",n="right",a=this.elementRef.nativeElement;if(e=="top")return a.scrollTop;if(e=="bottom")return a.scrollHeight-a.clientHeight-a.scrollTop;let r=this.dir&&this.dir.value=="rtl";return e=="start"?e=r?n:t:e=="end"&&(e=r?t:n),r&&Kn()==ni.INVERTED?e==t?a.scrollWidth-a.clientWidth-a.scrollLeft:a.scrollLeft:r&&Kn()==ni.NEGATED?e==t?a.scrollLeft+a.scrollWidth-a.clientWidth:-a.scrollLeft:e==t?a.scrollLeft:a.scrollWidth-a.clientWidth-a.scrollLeft}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]})}return i})(),Z_=20,Rt=(()=>{class i{_platform=s(se);_listeners;_viewportSize=null;_change=new M;_document=s(G);constructor(){let e=s(j),t=s(et).createRenderer(null,null);e.runOutsideAngular(()=>{if(this._platform.isBrowser){let n=a=>this._change.next(a);this._listeners=[t.listen("window","resize",n),t.listen("window","orientationchange",n)]}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){this._listeners?.forEach(e=>e()),this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();let e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){let e=this.getViewportScrollPosition(),{width:t,height:n}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+n,right:e.left+t,height:n,width:t}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};let e=this._document,t=this._getWindow(),n=e.documentElement,a=n.getBoundingClientRect(),r=-a.top||e.body?.scrollTop||t.scrollY||n.scrollTop||0,m=-a.left||e.body?.scrollLeft||t.scrollX||n.scrollLeft||0;return{top:r,left:m}}change(e=Z_){return e>0?this._change.pipe(Do(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){let e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Hu=new b("CDK_VIRTUAL_SCROLL_VIEWPORT");var ri=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})(),sa=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q,ri,Q,ri]})}return i})();var Hr=class{applyChanges(o,e,t,n,a){o.forEachOperation((r,m,h)=>{let g,_;if(r.previousIndex==null){let y=t(r,m,h);g=e.createEmbeddedView(y.templateRef,y.context,y.index),_=ai.INSERTED}else h==null?(e.remove(m),_=ai.REMOVED):(g=e.get(m),e.move(g,h),_=ai.MOVED);a&&a({context:g?.context,operation:_,record:r})})}detach(){}};var J_=[[["caption"]],[["colgroup"],["col"]],"*"],eb=["caption","colgroup, col","*"];function tb(i,o){i&1&&H(0,2)}function ib(i,o){i&1&&(l(0,"thead",0),Bt(1,1),c(),l(2,"tbody",0),Bt(3,2)(4,3),c(),l(5,"tfoot",0),Bt(6,4),c())}function nb(i,o){i&1&&Bt(0,1)(1,2)(2,3)(3,4)}var si=new b("CDK_TABLE");var Gr=(()=>{class i{template=s(We);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkCellDef",""]]})}return i})(),$u=(()=>{class i{template=s(We);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkHeaderCellDef",""]]})}return i})(),Wu=(()=>{class i{template=s(We);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkFooterCellDef",""]]})}return i})(),da=(()=>{class i{_table=s(si,{optional:!0});_hasStickyChanged=!1;get name(){return this._name}set name(e){this._setNameInput(e)}_name;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;get stickyEnd(){return this._stickyEnd}set stickyEnd(e){e!==this._stickyEnd&&(this._stickyEnd=e,this._hasStickyChanged=!0)}_stickyEnd=!1;cell;headerCell;footerCell;cssClassFriendlyName;_columnCssClassName;hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkColumnDef",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,Gr,5)(a,$u,5)(a,Wu,5),t&2){let r;T(r=R())&&(n.cell=r.first),T(r=R())&&(n.headerCell=r.first),T(r=R())&&(n.footerCell=r.first)}},inputs:{name:[0,"cdkColumnDef","name"],sticky:[2,"sticky","sticky",F],stickyEnd:[2,"stickyEnd","stickyEnd",F]}})}return i})(),Kl=class{constructor(o,e){e.nativeElement.classList.add(...o._columnCssClassName)}};var qu=(()=>{class i extends Kl{constructor(){let e=s(da),t=s(O);super(e,t);let n=e._table?._getCellRole();n&&t.nativeElement.setAttribute("role",n)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[X]})}return i})();var Xl=(()=>{class i{template=s(We);_differs=s(Io);columns;_columnsDiffer;ngOnChanges(e){if(!this._columnsDiffer){let t=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(t).create(),this._columnsDiffer.diff(t)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof Zl?e.headerCell.template:this instanceof Ql?e.footerCell.template:e.cell.template}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,features:[ye]})}return i})(),Zl=(()=>{class i extends Xl{_table=s(si,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:[0,"cdkHeaderRowDef","columns"],sticky:[2,"cdkHeaderRowDefSticky","sticky",F]},features:[X,ye]})}return i})(),Ql=(()=>{class i extends Xl{_table=s(si,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:[0,"cdkFooterRowDef","columns"],sticky:[2,"cdkFooterRowDefSticky","sticky",F]},features:[X,ye]})}return i})(),$r=(()=>{class i extends Xl{_table=s(si,{optional:!0});when;static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkRowDef",""]],inputs:{columns:[0,"cdkRowDefColumns","columns"],when:[0,"cdkRowDefWhen","when"]},features:[X]})}return i})(),ca=(()=>{class i{_viewContainer=s(qe);cells;context;static mostRecentCellOutlet=null;constructor(){i.mostRecentCellOutlet=this}ngOnDestroy(){i.mostRecentCellOutlet===this&&(i.mostRecentCellOutlet=null)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkCellOutlet",""]]})}return i})();var Jl=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,n){t&1&&Bt(0,0)},dependencies:[ca],encapsulation:2,changeDetection:1})}return i})(),Ku=(()=>{class i{templateRef=s(We);_contentClassNames=["cdk-no-data-row","cdk-row"];_cellClassNames=["cdk-cell","cdk-no-data-cell"];_cellSelector="td, cdk-cell, [cdk-cell], .cdk-cell";static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["ng-template","cdkNoDataRow",""]]})}return i})(),Uu=["top","bottom","left","right"],Yl=class{_isNativeHtmlTable;_stickCellCss;_isBrowser;_needsPositionStickyOnElement;direction;_positionListener;_tableInjector;_elemSizeCache=new WeakMap;_resizeObserver=globalThis?.ResizeObserver?new globalThis.ResizeObserver(o=>this._updateCachedSizes(o)):null;_updatedStickyColumnsParamsToReplay=[];_stickyColumnsReplayTimeout=null;_cachedCellWidths=[];_borderCellCss;_destroyed=!1;constructor(o,e,t=!0,n=!0,a,r,m){this._isNativeHtmlTable=o,this._stickCellCss=e,this._isBrowser=t,this._needsPositionStickyOnElement=n,this.direction=a,this._positionListener=r,this._tableInjector=m,this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(o,e){(e.includes("left")||e.includes("right"))&&this._removeFromStickyColumnReplayQueue(o);let t=[];for(let n of o)n.nodeType===n.ELEMENT_NODE&&t.push(n,...Array.from(n.children));Fe({write:()=>{for(let n of t)this._removeStickyStyle(n,e)}},{injector:this._tableInjector})}updateStickyColumns(o,e,t,n=!0,a=!0){if(!o.length||!this._isBrowser||!(e.some(re=>re)||t.some(re=>re))){this._positionListener?.stickyColumnsUpdated({sizes:[]}),this._positionListener?.stickyEndColumnsUpdated({sizes:[]});return}let r=o[0],m=r.children.length,h=this.direction==="rtl",g=h?"right":"left",_=h?"left":"right",y=e.lastIndexOf(!0),L=t.indexOf(!0),U,J,me;a&&this._updateStickyColumnReplayQueue({rows:[...o],stickyStartStates:[...e],stickyEndStates:[...t]}),Fe({earlyRead:()=>{U=this._getCellWidths(r,n),J=this._getStickyStartColumnPositions(U,e),me=this._getStickyEndColumnPositions(U,t)},write:()=>{for(let re of o)for(let we=0;we<m;we++){let nt=re.children[we];e[we]&&this._addStickyStyle(nt,g,J[we],we===y),t[we]&&this._addStickyStyle(nt,_,me[we],we===L)}this._positionListener&&U.some(re=>!!re)&&(this._positionListener.stickyColumnsUpdated({sizes:y===-1?[]:U.slice(0,y+1).map((re,we)=>e[we]?re:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:L===-1?[]:U.slice(L).map((re,we)=>t[we+L]?re:null).reverse()}))}},{injector:this._tableInjector})}stickRows(o,e,t){if(!this._isBrowser)return;let n=t==="bottom"?o.slice().reverse():o,a=t==="bottom"?e.slice().reverse():e,r=[],m=[],h=[];Fe({earlyRead:()=>{for(let g=0,_=0;g<n.length;g++){if(!a[g])continue;r[g]=_;let y=n[g];h[g]=this._isNativeHtmlTable?Array.from(y.children):[y];let L=this._retrieveElementSize(y).height;_+=L,m[g]=L}},write:()=>{let g=a.lastIndexOf(!0);for(let _=0;_<n.length;_++){if(!a[_])continue;let y=r[_],L=_===g;for(let U of h[_])this._addStickyStyle(U,t,y,L)}t==="top"?this._positionListener?.stickyHeaderRowsUpdated({sizes:m,offsets:r,elements:h}):this._positionListener?.stickyFooterRowsUpdated({sizes:m,offsets:r,elements:h})}},{injector:this._tableInjector})}updateStickyFooterContainer(o,e){this._isNativeHtmlTable&&Fe({write:()=>{let t=o.querySelector("tfoot");t&&(e.some(n=>!n)?this._removeStickyStyle(t,["bottom"]):this._addStickyStyle(t,"bottom",0,!1))}},{injector:this._tableInjector})}destroy(){this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._resizeObserver?.disconnect(),this._destroyed=!0}_removeStickyStyle(o,e){if(!o.classList.contains(this._stickCellCss))return;for(let n of e)o.style[n]="",o.classList.remove(this._borderCellCss[n]);Uu.some(n=>e.indexOf(n)===-1&&o.style[n])?o.style.zIndex=this._getCalculatedZIndex(o):(o.style.zIndex="",this._needsPositionStickyOnElement&&(o.style.position=""),o.classList.remove(this._stickCellCss))}_addStickyStyle(o,e,t,n){o.classList.add(this._stickCellCss),n&&o.classList.add(this._borderCellCss[e]),o.style[e]=`${t}px`,o.style.zIndex=this._getCalculatedZIndex(o),this._needsPositionStickyOnElement&&(o.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(o){let e={top:100,bottom:10,left:1,right:1},t=0;for(let n of Uu)o.style[n]&&(t+=e[n]);return t?`${t}`:""}_getCellWidths(o,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;let t=[],n=o.children;for(let a=0;a<n.length;a++){let r=n[a];t.push(this._retrieveElementSize(r).width)}return this._cachedCellWidths=t,t}_getStickyStartColumnPositions(o,e){let t=[],n=0;for(let a=0;a<o.length;a++)e[a]&&(t[a]=n,n+=o[a]);return t}_getStickyEndColumnPositions(o,e){let t=[],n=0;for(let a=o.length;a>0;a--)e[a]&&(t[a]=n,n+=o[a]);return t}_retrieveElementSize(o){let e=this._elemSizeCache.get(o);if(e)return e;let t=o.getBoundingClientRect(),n={width:t.width,height:t.height};return this._resizeObserver&&(this._elemSizeCache.set(o,n),this._resizeObserver.observe(o,{box:"border-box"})),n}_updateStickyColumnReplayQueue(o){this._removeFromStickyColumnReplayQueue(o.rows),this._stickyColumnsReplayTimeout||this._updatedStickyColumnsParamsToReplay.push(o)}_removeFromStickyColumnReplayQueue(o){let e=new Set(o);for(let t of this._updatedStickyColumnsParamsToReplay)t.rows=t.rows.filter(n=>!e.has(n));this._updatedStickyColumnsParamsToReplay=this._updatedStickyColumnsParamsToReplay.filter(t=>!!t.rows.length)}_updateCachedSizes(o){let e=!1;for(let t of o){let n=t.borderBoxSize?.length?{width:t.borderBoxSize[0].inlineSize,height:t.borderBoxSize[0].blockSize}:{width:t.contentRect.width,height:t.contentRect.height};n.width!==this._elemSizeCache.get(t.target)?.width&&ob(t.target)&&(e=!0),this._elemSizeCache.set(t.target,n)}e&&this._updatedStickyColumnsParamsToReplay.length&&(this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._stickyColumnsReplayTimeout=setTimeout(()=>{if(!this._destroyed){for(let t of this._updatedStickyColumnsParamsToReplay)this.updateStickyColumns(t.rows,t.stickyStartStates,t.stickyEndStates,!0,!1);this._updatedStickyColumnsParamsToReplay=[],this._stickyColumnsReplayTimeout=null}},0))}};function ob(i){return["cdk-cell","cdk-header-cell","cdk-footer-cell"].some(o=>i.classList.contains(o))}var la=new b("STICKY_POSITIONING_LISTENER");var ec=(()=>{class i{viewContainer=s(qe);elementRef=s(O);constructor(){let e=s(si);e._rowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","rowOutlet",""]]})}return i})(),tc=(()=>{class i{viewContainer=s(qe);elementRef=s(O);constructor(){let e=s(si);e._headerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","headerRowOutlet",""]]})}return i})(),ic=(()=>{class i{viewContainer=s(qe);elementRef=s(O);constructor(){let e=s(si);e._footerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","footerRowOutlet",""]]})}return i})(),nc=(()=>{class i{viewContainer=s(qe);elementRef=s(O);constructor(){let e=s(si);e._noDataRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","noDataRowOutlet",""]]})}return i})(),oc=(()=>{class i{_differs=s(Io);_changeDetectorRef=s(ie);_elementRef=s(O);_dir=s(He,{optional:!0});_platform=s(se);_viewRepeater;_viewportRuler=s(Rt);_injector=s(q);_virtualScrollViewport=s(Hu,{optional:!0,host:!0});_positionListener=s(la,{optional:!0})||s(la,{optional:!0,skipSelf:!0});_document=s(G);_data;_renderedRange;_onDestroy=new M;_renderRows;_renderChangeSubscription=null;_columnDefsByName=new Map;_rowDefs;_headerRowDefs;_footerRowDefs;_dataDiffer;_defaultRowDef=null;_customColumnDefs=new Set;_customRowDefs=new Set;_customHeaderRowDefs=new Set;_customFooterRowDefs=new Set;_customNoDataRow=null;_headerRowDefChanged=!0;_footerRowDefChanged=!0;_stickyColumnStylesNeedReset=!0;_forceRecalculateCellWidths=!0;_cachedRenderRowsMap=new Map;_isNativeHtmlTable;_stickyStyler;stickyCssClass="cdk-table-sticky";needsPositionStickyOnElement=!0;_isServer;_isShowingNoDataRow=!1;_hasAllOutlets=!1;_hasInitialized=!1;_headerRowStickyUpdates=new M;_footerRowStickyUpdates=new M;_disableVirtualScrolling=!1;_getCellRole(){if(this._cellRoleInternal===void 0){let e=this._elementRef.nativeElement.getAttribute("role");return e==="grid"||e==="treegrid"?"gridcell":"cell"}return this._cellRoleInternal}_cellRoleInternal=void 0;get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}_trackByFn;get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&(this._switchDataSource(e),this._changeDetectorRef.markForCheck())}_dataSource;_dataSourceChanges=new M;_dataStream=new M;get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=e,this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}_multiTemplateDataRows=!1;get fixedLayout(){return this._virtualScrollEnabled()?!0:this._fixedLayout}set fixedLayout(e){this._fixedLayout=e,this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}_fixedLayout=!1;recycleRows=!1;contentChanged=new $;viewChange=new Fn({start:0,end:Number.MAX_VALUE});_rowOutlet;_headerRowOutlet;_footerRowOutlet;_noDataRowOutlet;_contentColumnDefs;_contentRowDefs;_contentHeaderRowDefs;_contentFooterRowDefs;_noDataRow;get renderedRows(){return this._renderRows}constructor(){s(new hi("role"),{optional:!0})||this._elementRef.nativeElement.setAttribute("role","table"),this._isServer=!this._platform.isBrowser,this._isNativeHtmlTable=this._elementRef.nativeElement.nodeName==="TABLE",this._dataDiffer=this._differs.find([]).create((t,n)=>this.trackBy?this.trackBy(n.dataIndex,n.data):n)}ngOnInit(){this._setupStickyStyler(),this._viewportRuler.change().pipe(ne(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentInit(){this._viewRepeater=this.recycleRows||this._virtualScrollEnabled()?new jr:new Hr,this._virtualScrollEnabled()&&this._setupVirtualScrolling(this._virtualScrollViewport),this._hasInitialized=!0}ngAfterContentChecked(){this._canRender()&&this._render()}ngOnDestroy(){this._stickyStyler?.destroy(),[this._rowOutlet?.viewContainer,this._headerRowOutlet?.viewContainer,this._footerRowOutlet?.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e?.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._headerRowStickyUpdates.complete(),this._footerRowStickyUpdates.complete(),this._onDestroy.next(),this._onDestroy.complete(),zr(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();let e=this._dataDiffer.diff(this._renderRows);if(!e){this._updateNoDataRow(),this.contentChanged.next();return}let t=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,t,(n,a,r)=>this._getEmbeddedViewArgs(n.item,r),n=>n.item.data,n=>{n.operation===ai.INSERTED&&n.context&&this._renderCellTemplateForItem(n.record.item.rowDef,n.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(n=>{let a=t.get(n.currentIndex);a.context.$implicit=n.item.data}),this._updateNoDataRow(),this.contentChanged.next(),this.updateStickyColumnStyles()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){let e=this._getRenderedRows(this._headerRowOutlet);if(this._isNativeHtmlTable){let n=Gu(this._headerRowOutlet,"thead");n&&(n.style.display=e.length?"":"none")}let t=this._headerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,t,"top"),this._headerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyFooterRowStyles(){let e=this._getRenderedRows(this._footerRowOutlet);if(this._isNativeHtmlTable){let n=Gu(this._footerRowOutlet,"tfoot");n&&(n.style.display=e.length?"":"none")}let t=this._footerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,t,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,t),this._footerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyColumnStyles(){let e=this._getRenderedRows(this._headerRowOutlet),t=this._getRenderedRows(this._rowOutlet),n=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this.fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...t,...n],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((a,r)=>{this._addStickyColumnStyles([a],this._headerRowDefs[r])}),this._rowDefs.forEach(a=>{let r=[];for(let m=0;m<t.length;m++)this._renderRows[m].rowDef===a&&r.push(t[m]);this._addStickyColumnStyles(r,a)}),n.forEach((a,r)=>{this._addStickyColumnStyles([a],this._footerRowDefs[r])}),Array.from(this._columnDefsByName.values()).forEach(a=>a.resetStickyChanged())}stickyColumnsUpdated(e){this._positionListener?.stickyColumnsUpdated(e)}stickyEndColumnsUpdated(e){this._positionListener?.stickyEndColumnsUpdated(e)}stickyHeaderRowsUpdated(e){this._headerRowStickyUpdates.next(e),this._positionListener?.stickyHeaderRowsUpdated(e)}stickyFooterRowsUpdated(e){this._footerRowStickyUpdates.next(e),this._positionListener?.stickyFooterRowsUpdated(e)}_outletAssigned(){!this._hasAllOutlets&&this._rowOutlet&&this._headerRowOutlet&&this._footerRowOutlet&&this._noDataRowOutlet&&(this._hasAllOutlets=!0,this._canRender()&&this._render())}_canRender(){return this._hasAllOutlets&&this._hasInitialized}_render(){this._cacheRowDefs(),this._cacheColumnDefs(),!this._headerRowDefs.length&&!this._footerRowDefs.length&&this._rowDefs.length;let t=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||t,this._forceRecalculateCellWidths=t,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}_getAllRenderRows(){if(!Array.isArray(this._data)||!this._renderedRange)return[];let e=[],t=Math.min(this._data.length,this._renderedRange.end),n=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let a=this._renderedRange.start;a<t;a++){let r=this._data[a],m=this._getRenderRowsForData(r,a,n.get(r));this._cachedRenderRowsMap.has(r)||this._cachedRenderRowsMap.set(r,new WeakMap);for(let h=0;h<m.length;h++){let g=m[h],_=this._cachedRenderRowsMap.get(g.data);_.has(g.rowDef)?_.get(g.rowDef).push(g):_.set(g.rowDef,[g]),e.push(g)}}return e}_getRenderRowsForData(e,t,n){return this._getRowDefs(e,t).map(r=>{let m=n&&n.has(r)?n.get(r):[];if(m.length){let h=m.shift();return h.dataIndex=t,h}else return{data:e,rowDef:r,dataIndex:t}})}_cacheColumnDefs(){this._columnDefsByName.clear(),Ur(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(t=>{this._columnDefsByName.has(t.name),this._columnDefsByName.set(t.name,t)})}_cacheRowDefs(){this._headerRowDefs=Ur(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=Ur(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=Ur(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);let e=this._rowDefs.filter(t=>!t.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){let e=(r,m)=>{let h=!!m.getColumnsDiff();return r||h},t=this._rowDefs.reduce(e,!1);t&&this._forceRenderDataRows();let n=this._headerRowDefs.reduce(e,!1);n&&this._forceRenderHeaderRows();let a=this._footerRowDefs.reduce(e,!1);return a&&this._forceRenderFooterRows(),t||n||a}_switchDataSource(e){this._data=[],zr(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet&&this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;zr(this.dataSource)?e=this.dataSource.connect(this):ws(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=ge(this.dataSource)),this._renderChangeSubscription=Pn([e,this.viewChange]).pipe(ne(this._onDestroy)).subscribe(([t,n])=>{this._data=t||[],this._renderedRange=n,this._dataStream.next(t),this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,t)=>this._renderRow(this._headerRowOutlet,e,t)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,t)=>this._renderRow(this._footerRowOutlet,e,t)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,t){let n=Array.from(t?.columns||[]).map(m=>{let h=this._columnDefsByName.get(m);return h}),a=n.map(m=>m.sticky),r=n.map(m=>m.stickyEnd);this._stickyStyler.updateStickyColumns(e,a,r,!this.fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){let t=[];for(let n=0;n<e.viewContainer.length;n++){let a=e.viewContainer.get(n);t.push(a.rootNodes[0])}return t}_getRowDefs(e,t){if(this._rowDefs.length===1)return[this._rowDefs[0]];let n=[];if(this.multiTemplateDataRows)n=this._rowDefs.filter(a=>!a.when||a.when(t,e));else{let a=this._rowDefs.find(r=>r.when&&r.when(t,e))||this._defaultRowDef;a&&n.push(a)}return n.length,n}_getEmbeddedViewArgs(e,t){let n=e.rowDef,a={$implicit:e.data};return{templateRef:n.template,context:a,index:t}}_renderRow(e,t,n,a={}){let r=e.viewContainer.createEmbeddedView(t.template,a,n);return this._renderCellTemplateForItem(t,a),r}_renderCellTemplateForItem(e,t){for(let n of this._getCellTemplates(e))ca.mostRecentCellOutlet&&ca.mostRecentCellOutlet._viewContainer.createEmbeddedView(n,t);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){let e=this._rowOutlet.viewContainer;for(let t=0,n=e.length;t<n;t++){let r=e.get(t).context;r.count=n,r.first=t===0,r.last=t===n-1,r.even=t%2===0,r.odd=!r.even,this.multiTemplateDataRows?(r.dataIndex=this._renderRows[t].dataIndex,r.renderIndex=t):r.index=this._renderRows[t].dataIndex}}_getCellTemplates(e){return!e||!e.columns?[]:Array.from(e.columns,t=>{let n=this._columnDefsByName.get(t);return e.extractCellTemplate(n)})}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){let e=(t,n)=>t||n.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){let e=this._dir?this._dir.value:"ltr",t=this._injector;this._stickyStyler=new Yl(this._isNativeHtmlTable,this.stickyCssClass,this._platform.isBrowser,this.needsPositionStickyOnElement,e,this,t),(this._dir?this._dir.change:ge()).pipe(ne(this._onDestroy)).subscribe(n=>{this._stickyStyler.direction=n,this.updateStickyColumnStyles()})}_setupVirtualScrolling(e){let t=typeof requestAnimationFrame<"u"?xs:Cs;this.viewChange.next({start:0,end:0}),e.renderedRangeStream.pipe(Do(0,t),ne(this._onDestroy)).subscribe(this.viewChange),e.attach({dataStream:this._dataStream,measureRangeSize:(n,a)=>this._measureRangeSize(n,a)}),Pn([e.renderedContentOffset,this._headerRowStickyUpdates]).pipe(ne(this._onDestroy)).subscribe(([n,a])=>{if(!(!a.sizes||!a.offsets||!a.elements))for(let r=0;r<a.elements.length;r++){let m=a.elements[r];if(m){let h=a.offsets[r],g=n!==0?Math.max(n-h,h):-h;for(let _ of m)_.style.top=`${-g}px`}}}),Pn([e.renderedContentOffset,this._footerRowStickyUpdates]).pipe(ne(this._onDestroy)).subscribe(([n,a])=>{if(!(!a.sizes||!a.offsets||!a.elements))for(let r=0;r<a.elements.length;r++){let m=a.elements[r];if(m)for(let h of m)h.style.bottom=`${n+a.offsets[r]}px`}})}_getOwnDefs(e){return e.filter(t=>!t._table||t._table===this)}_updateNoDataRow(){let e=this._customNoDataRow||this._noDataRow;if(!e)return;let t=this._rowOutlet.viewContainer.length===0;if(t===this._isShowingNoDataRow)return;let n=this._noDataRowOutlet.viewContainer;if(t){let a=n.createEmbeddedView(e.templateRef),r=a.rootNodes[0];if(a.rootNodes.length===1&&r?.nodeType===this._document.ELEMENT_NODE){r.setAttribute("role","row"),r.classList.add(...e._contentClassNames);let m=r.querySelectorAll(e._cellSelector);for(let h=0;h<m.length;h++)m[h].classList.add(...e._cellClassNames)}}else n.clear();this._isShowingNoDataRow=t,this._changeDetectorRef.markForCheck()}_measureRangeSize(e,t){if(e.start>=e.end||t!=="vertical")return 0;let n=this.viewChange.value,a=this._rowOutlet.viewContainer;e.start<n.start||e.end>n.end;let r=e.start-n.start,m=e.end-e.start,h,g;for(let L=0;L<m;L++){let U=a.get(L+r);if(U&&U.rootNodes.length){h=g=U.rootNodes[0];break}}for(let L=m-1;L>-1;L--){let U=a.get(L+r);if(U&&U.rootNodes.length){g=U.rootNodes[U.rootNodes.length-1];break}}let _=h?.getBoundingClientRect?.(),y=g?.getBoundingClientRect?.();return _&&y?y.bottom-_.top:0}_virtualScrollEnabled(){return!this._disableVirtualScrolling&&this._virtualScrollViewport!=null}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,Ku,5)(a,da,5)(a,$r,5)(a,Zl,5)(a,Ql,5),t&2){let r;T(r=R())&&(n._noDataRow=r.first),T(r=R())&&(n._contentColumnDefs=r),T(r=R())&&(n._contentRowDefs=r),T(r=R())&&(n._contentHeaderRowDefs=r),T(r=R())&&(n._contentFooterRowDefs=r)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(t,n){t&2&&f("cdk-table-fixed-layout",n.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:[2,"multiTemplateDataRows","multiTemplateDataRows",F],fixedLayout:[2,"fixedLayout","fixedLayout",F],recycleRows:[2,"recycleRows","recycleRows",F]},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[te([{provide:si,useExisting:i},{provide:la,useValue:null}])],ngContentSelectors:eb,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,n){t&1&&(le(J_),H(0),H(1,1),S(2,tb,1,0),S(3,ib,7,0)(4,nb,4,0)),t&2&&(d(2),E(n._isServer?2:-1),d(),E(n._isNativeHtmlTable?3:4))},dependencies:[tc,ec,nc,ic],styles:[`.cdk-table-fixed-layout {
|
|
2223
|
+
`],encapsulation:2})}return i})(),Kt=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var Hu=(()=>{class i{constructor(){this.http=s(jt),this.staticUrl="/api/gpus",this.usageUrl="/api/gpus/usage"}fetchGpus(){return this.http.get(this.staticUrl).pipe(ti({error:e=>console.error("[GpuService] static fetch error:",e)}))}fetchStatus(){return this.http.get(this.usageUrl).pipe(ti({error:e=>console.error("[GpuService] status fetch error:",e)}))}watchStatus(e){return Ia(0,e).pipe(We(()=>this.fetchStatus()))}saveGpuLabel(e,t){return this.http.put(`${this.staticUrl}/gpu-label/${encodeURIComponent(e)}`,{gpuLabel:t})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();function zr(i){return i&&typeof i.connect=="function"&&!(i instanceof Mc)}var si=(function(i){return i[i.REPLACED=0]="REPLACED",i[i.INSERTED=1]="INSERTED",i[i.MOVED=2]="MOVED",i[i.REMOVED=3]="REMOVED",i})(si||{}),jr=class{viewCacheSize=20;_viewCache=[];applyChanges(o,e,t,n,a){o.forEachOperation((r,m,h)=>{let g,_;if(r.previousIndex==null){let y=()=>t(r,m,h);g=this._insertView(y,h,e,n(r)),_=g?si.INSERTED:si.REPLACED}else h==null?(this._detachAndCacheView(m,e),_=si.REMOVED):(g=this._moveView(m,h,e,n(r)),_=si.MOVED);a&&a({context:g?.context,operation:_,record:r})})}detach(){for(let o of this._viewCache)o.destroy();this._viewCache=[]}_insertView(o,e,t,n){let a=this._insertViewFromCache(e,t);if(a){a.context.$implicit=n;return}let r=o();return t.createEmbeddedView(r.templateRef,r.context,r.index)}_detachAndCacheView(o,e){let t=e.detach(o);this._maybeCacheView(t,e)}_moveView(o,e,t,n){let a=t.get(o);return t.move(a,e),a.context.$implicit=n,a}_maybeCacheView(o,e){if(this._viewCache.length<this.viewCacheSize)this._viewCache.push(o);else{let t=e.indexOf(o);t===-1?o.destroy():e.remove(t)}}_insertViewFromCache(o,e){let t=this._viewCache.pop();return t&&e.insert(t,o),t||null}};var Z_=20,Qi=(()=>{class i{_ngZone=s(j);_platform=s(se);_renderer=s(et).createRenderer(null,null);_cleanupGlobalListener;_scrolled=new M;_scrolledCount=0;scrollContainers=new Map;register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){let t=this.scrollContainers.get(e);t&&(t.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=Z_){return this._platform.isBrowser?new ft(t=>{this._cleanupGlobalListener||(this._cleanupGlobalListener=this._ngZone.runOutsideAngular(()=>this._renderer.listen("document","scroll",()=>this._scrolled.next())));let n=e>0?this._scrolled.pipe(ko(e)).subscribe(t):this._scrolled.subscribe(t);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||(this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0)}}):be()}ngOnDestroy(){this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0,this.scrollContainers.forEach((e,t)=>this.deregister(t)),this._scrolled.complete()}ancestorScrolled(e,t){let n=this.getAncestorScrollContainers(e);return this.scrolled(t).pipe(ge(a=>!a||n.indexOf(a)>-1))}getAncestorScrollContainers(e){let t=[];return this.scrollContainers.forEach((n,a)=>{this._targetContainsElement(a,e)&&t.push(a)}),t}_targetContainsElement(e,t){let n=bt(t),a=e.getElementRef().nativeElement;do if(n==a)return!0;while(n=n.parentElement);return!1}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),ql=(()=>{class i{elementRef=s(O);scrollDispatcher=s(Qi);ngZone=s(j);dir=s(Ue,{optional:!0});_scrollElement=this.elementRef.nativeElement;_destroyed=new M;_renderer=s(ue);_cleanupScroll;_elementScrolled=new M;ngOnInit(){this._cleanupScroll=this.ngZone.runOutsideAngular(()=>this._renderer.listen(this._scrollElement,"scroll",e=>this._elementScrolled.next(e))),this.scrollDispatcher.register(this)}ngOnDestroy(){this._cleanupScroll?.(),this._elementScrolled.complete(),this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){let t=this.elementRef.nativeElement,n=this.dir&&this.dir.value=="rtl";e.left==null&&(e.left=n?e.end:e.start),e.right==null&&(e.right=n?e.start:e.end),e.bottom!=null&&(e.top=t.scrollHeight-t.clientHeight-e.bottom),n&&Kn()!=ai.NORMAL?(e.left!=null&&(e.right=t.scrollWidth-t.clientWidth-e.left),Kn()==ai.INVERTED?e.left=e.right:Kn()==ai.NEGATED&&(e.left=e.right?-e.right:e.right)):e.right!=null&&(e.left=t.scrollWidth-t.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){let t=this.elementRef.nativeElement;hr()?t.scrollTo(e):(e.top!=null&&(t.scrollTop=e.top),e.left!=null&&(t.scrollLeft=e.left))}measureScrollOffset(e){let t="left",n="right",a=this.elementRef.nativeElement;if(e=="top")return a.scrollTop;if(e=="bottom")return a.scrollHeight-a.clientHeight-a.scrollTop;let r=this.dir&&this.dir.value=="rtl";return e=="start"?e=r?n:t:e=="end"&&(e=r?t:n),r&&Kn()==ai.INVERTED?e==t?a.scrollWidth-a.clientWidth-a.scrollLeft:a.scrollLeft:r&&Kn()==ai.NEGATED?e==t?a.scrollLeft+a.scrollWidth-a.clientWidth:-a.scrollLeft:e==t?a.scrollLeft:a.scrollWidth-a.clientWidth-a.scrollLeft}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]})}return i})(),Q_=20,Rt=(()=>{class i{_platform=s(se);_listeners;_viewportSize=null;_change=new M;_document=s(G);constructor(){let e=s(j),t=s(et).createRenderer(null,null);e.runOutsideAngular(()=>{if(this._platform.isBrowser){let n=a=>this._change.next(a);this._listeners=[t.listen("window","resize",n),t.listen("window","orientationchange",n)]}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){this._listeners?.forEach(e=>e()),this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();let e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){let e=this.getViewportScrollPosition(),{width:t,height:n}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+n,right:e.left+t,height:n,width:t}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};let e=this._document,t=this._getWindow(),n=e.documentElement,a=n.getBoundingClientRect(),r=-a.top||e.body?.scrollTop||t.scrollY||n.scrollTop||0,m=-a.left||e.body?.scrollLeft||t.scrollX||n.scrollLeft||0;return{top:r,left:m}}change(e=Q_){return e>0?this._change.pipe(ko(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){let e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Uu=new b("CDK_VIRTUAL_SCROLL_VIEWPORT");var li=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})(),sa=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q,li,Q,li]})}return i})();var Hr=class{applyChanges(o,e,t,n,a){o.forEachOperation((r,m,h)=>{let g,_;if(r.previousIndex==null){let y=t(r,m,h);g=e.createEmbeddedView(y.templateRef,y.context,y.index),_=si.INSERTED}else h==null?(e.remove(m),_=si.REMOVED):(g=e.get(m),e.move(g,h),_=si.MOVED);a&&a({context:g?.context,operation:_,record:r})})}detach(){}};var eb=[[["caption"]],[["colgroup"],["col"]],"*"],tb=["caption","colgroup, col","*"];function ib(i,o){i&1&&H(0,2)}function nb(i,o){i&1&&(l(0,"thead",0),Bt(1,1),c(),l(2,"tbody",0),Bt(3,2)(4,3),c(),l(5,"tfoot",0),Bt(6,4),c())}function ob(i,o){i&1&&Bt(0,1)(1,2)(2,3)(3,4)}var ci=new b("CDK_TABLE");var Gr=(()=>{class i{template=s(qe);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkCellDef",""]]})}return i})(),Wu=(()=>{class i{template=s(qe);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkHeaderCellDef",""]]})}return i})(),qu=(()=>{class i{template=s(qe);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkFooterCellDef",""]]})}return i})(),da=(()=>{class i{_table=s(ci,{optional:!0});_hasStickyChanged=!1;get name(){return this._name}set name(e){this._setNameInput(e)}_name;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;get stickyEnd(){return this._stickyEnd}set stickyEnd(e){e!==this._stickyEnd&&(this._stickyEnd=e,this._hasStickyChanged=!0)}_stickyEnd=!1;cell;headerCell;footerCell;cssClassFriendlyName;_columnCssClassName;hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkColumnDef",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,Gr,5)(a,Wu,5)(a,qu,5),t&2){let r;T(r=R())&&(n.cell=r.first),T(r=R())&&(n.headerCell=r.first),T(r=R())&&(n.footerCell=r.first)}},inputs:{name:[0,"cdkColumnDef","name"],sticky:[2,"sticky","sticky",F],stickyEnd:[2,"stickyEnd","stickyEnd",F]}})}return i})(),Kl=class{constructor(o,e){e.nativeElement.classList.add(...o._columnCssClassName)}};var Ku=(()=>{class i extends Kl{constructor(){let e=s(da),t=s(O);super(e,t);let n=e._table?._getCellRole();n&&t.nativeElement.setAttribute("role",n)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[X]})}return i})();var Xl=(()=>{class i{template=s(qe);_differs=s(To);columns;_columnsDiffer;ngOnChanges(e){if(!this._columnsDiffer){let t=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(t).create(),this._columnsDiffer.diff(t)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof Zl?e.headerCell.template:this instanceof Ql?e.footerCell.template:e.cell.template}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,features:[xe]})}return i})(),Zl=(()=>{class i extends Xl{_table=s(ci,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:[0,"cdkHeaderRowDef","columns"],sticky:[2,"cdkHeaderRowDefSticky","sticky",F]},features:[X,xe]})}return i})(),Ql=(()=>{class i extends Xl{_table=s(ci,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:[0,"cdkFooterRowDef","columns"],sticky:[2,"cdkFooterRowDefSticky","sticky",F]},features:[X,xe]})}return i})(),$r=(()=>{class i extends Xl{_table=s(ci,{optional:!0});when;static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkRowDef",""]],inputs:{columns:[0,"cdkRowDefColumns","columns"],when:[0,"cdkRowDefWhen","when"]},features:[X]})}return i})(),ca=(()=>{class i{_viewContainer=s(Ke);cells;context;static mostRecentCellOutlet=null;constructor(){i.mostRecentCellOutlet=this}ngOnDestroy(){i.mostRecentCellOutlet===this&&(i.mostRecentCellOutlet=null)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdkCellOutlet",""]]})}return i})();var Jl=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,n){t&1&&Bt(0,0)},dependencies:[ca],encapsulation:2,changeDetection:1})}return i})(),Yu=(()=>{class i{templateRef=s(qe);_contentClassNames=["cdk-no-data-row","cdk-row"];_cellClassNames=["cdk-cell","cdk-no-data-cell"];_cellSelector="td, cdk-cell, [cdk-cell], .cdk-cell";static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["ng-template","cdkNoDataRow",""]]})}return i})(),Gu=["top","bottom","left","right"],Yl=class{_isNativeHtmlTable;_stickCellCss;_isBrowser;_needsPositionStickyOnElement;direction;_positionListener;_tableInjector;_elemSizeCache=new WeakMap;_resizeObserver=globalThis?.ResizeObserver?new globalThis.ResizeObserver(o=>this._updateCachedSizes(o)):null;_updatedStickyColumnsParamsToReplay=[];_stickyColumnsReplayTimeout=null;_cachedCellWidths=[];_borderCellCss;_destroyed=!1;constructor(o,e,t=!0,n=!0,a,r,m){this._isNativeHtmlTable=o,this._stickCellCss=e,this._isBrowser=t,this._needsPositionStickyOnElement=n,this.direction=a,this._positionListener=r,this._tableInjector=m,this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(o,e){(e.includes("left")||e.includes("right"))&&this._removeFromStickyColumnReplayQueue(o);let t=[];for(let n of o)n.nodeType===n.ELEMENT_NODE&&t.push(n,...Array.from(n.children));Fe({write:()=>{for(let n of t)this._removeStickyStyle(n,e)}},{injector:this._tableInjector})}updateStickyColumns(o,e,t,n=!0,a=!0){if(!o.length||!this._isBrowser||!(e.some(re=>re)||t.some(re=>re))){this._positionListener?.stickyColumnsUpdated({sizes:[]}),this._positionListener?.stickyEndColumnsUpdated({sizes:[]});return}let r=o[0],m=r.children.length,h=this.direction==="rtl",g=h?"right":"left",_=h?"left":"right",y=e.lastIndexOf(!0),B=t.indexOf(!0),U,J,me;a&&this._updateStickyColumnReplayQueue({rows:[...o],stickyStartStates:[...e],stickyEndStates:[...t]}),Fe({earlyRead:()=>{U=this._getCellWidths(r,n),J=this._getStickyStartColumnPositions(U,e),me=this._getStickyEndColumnPositions(U,t)},write:()=>{for(let re of o)for(let ke=0;ke<m;ke++){let nt=re.children[ke];e[ke]&&this._addStickyStyle(nt,g,J[ke],ke===y),t[ke]&&this._addStickyStyle(nt,_,me[ke],ke===B)}this._positionListener&&U.some(re=>!!re)&&(this._positionListener.stickyColumnsUpdated({sizes:y===-1?[]:U.slice(0,y+1).map((re,ke)=>e[ke]?re:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:B===-1?[]:U.slice(B).map((re,ke)=>t[ke+B]?re:null).reverse()}))}},{injector:this._tableInjector})}stickRows(o,e,t){if(!this._isBrowser)return;let n=t==="bottom"?o.slice().reverse():o,a=t==="bottom"?e.slice().reverse():e,r=[],m=[],h=[];Fe({earlyRead:()=>{for(let g=0,_=0;g<n.length;g++){if(!a[g])continue;r[g]=_;let y=n[g];h[g]=this._isNativeHtmlTable?Array.from(y.children):[y];let B=this._retrieveElementSize(y).height;_+=B,m[g]=B}},write:()=>{let g=a.lastIndexOf(!0);for(let _=0;_<n.length;_++){if(!a[_])continue;let y=r[_],B=_===g;for(let U of h[_])this._addStickyStyle(U,t,y,B)}t==="top"?this._positionListener?.stickyHeaderRowsUpdated({sizes:m,offsets:r,elements:h}):this._positionListener?.stickyFooterRowsUpdated({sizes:m,offsets:r,elements:h})}},{injector:this._tableInjector})}updateStickyFooterContainer(o,e){this._isNativeHtmlTable&&Fe({write:()=>{let t=o.querySelector("tfoot");t&&(e.some(n=>!n)?this._removeStickyStyle(t,["bottom"]):this._addStickyStyle(t,"bottom",0,!1))}},{injector:this._tableInjector})}destroy(){this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._resizeObserver?.disconnect(),this._destroyed=!0}_removeStickyStyle(o,e){if(!o.classList.contains(this._stickCellCss))return;for(let n of e)o.style[n]="",o.classList.remove(this._borderCellCss[n]);Gu.some(n=>e.indexOf(n)===-1&&o.style[n])?o.style.zIndex=this._getCalculatedZIndex(o):(o.style.zIndex="",this._needsPositionStickyOnElement&&(o.style.position=""),o.classList.remove(this._stickCellCss))}_addStickyStyle(o,e,t,n){o.classList.add(this._stickCellCss),n&&o.classList.add(this._borderCellCss[e]),o.style[e]=`${t}px`,o.style.zIndex=this._getCalculatedZIndex(o),this._needsPositionStickyOnElement&&(o.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(o){let e={top:100,bottom:10,left:1,right:1},t=0;for(let n of Gu)o.style[n]&&(t+=e[n]);return t?`${t}`:""}_getCellWidths(o,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;let t=[],n=o.children;for(let a=0;a<n.length;a++){let r=n[a];t.push(this._retrieveElementSize(r).width)}return this._cachedCellWidths=t,t}_getStickyStartColumnPositions(o,e){let t=[],n=0;for(let a=0;a<o.length;a++)e[a]&&(t[a]=n,n+=o[a]);return t}_getStickyEndColumnPositions(o,e){let t=[],n=0;for(let a=o.length;a>0;a--)e[a]&&(t[a]=n,n+=o[a]);return t}_retrieveElementSize(o){let e=this._elemSizeCache.get(o);if(e)return e;let t=o.getBoundingClientRect(),n={width:t.width,height:t.height};return this._resizeObserver&&(this._elemSizeCache.set(o,n),this._resizeObserver.observe(o,{box:"border-box"})),n}_updateStickyColumnReplayQueue(o){this._removeFromStickyColumnReplayQueue(o.rows),this._stickyColumnsReplayTimeout||this._updatedStickyColumnsParamsToReplay.push(o)}_removeFromStickyColumnReplayQueue(o){let e=new Set(o);for(let t of this._updatedStickyColumnsParamsToReplay)t.rows=t.rows.filter(n=>!e.has(n));this._updatedStickyColumnsParamsToReplay=this._updatedStickyColumnsParamsToReplay.filter(t=>!!t.rows.length)}_updateCachedSizes(o){let e=!1;for(let t of o){let n=t.borderBoxSize?.length?{width:t.borderBoxSize[0].inlineSize,height:t.borderBoxSize[0].blockSize}:{width:t.contentRect.width,height:t.contentRect.height};n.width!==this._elemSizeCache.get(t.target)?.width&&ab(t.target)&&(e=!0),this._elemSizeCache.set(t.target,n)}e&&this._updatedStickyColumnsParamsToReplay.length&&(this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._stickyColumnsReplayTimeout=setTimeout(()=>{if(!this._destroyed){for(let t of this._updatedStickyColumnsParamsToReplay)this.updateStickyColumns(t.rows,t.stickyStartStates,t.stickyEndStates,!0,!1);this._updatedStickyColumnsParamsToReplay=[],this._stickyColumnsReplayTimeout=null}},0))}};function ab(i){return["cdk-cell","cdk-header-cell","cdk-footer-cell"].some(o=>i.classList.contains(o))}var la=new b("STICKY_POSITIONING_LISTENER");var ec=(()=>{class i{viewContainer=s(Ke);elementRef=s(O);constructor(){let e=s(ci);e._rowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","rowOutlet",""]]})}return i})(),tc=(()=>{class i{viewContainer=s(Ke);elementRef=s(O);constructor(){let e=s(ci);e._headerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","headerRowOutlet",""]]})}return i})(),ic=(()=>{class i{viewContainer=s(Ke);elementRef=s(O);constructor(){let e=s(ci);e._footerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","footerRowOutlet",""]]})}return i})(),nc=(()=>{class i{viewContainer=s(Ke);elementRef=s(O);constructor(){let e=s(ci);e._noDataRowOutlet=this,e._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","noDataRowOutlet",""]]})}return i})(),oc=(()=>{class i{_differs=s(To);_changeDetectorRef=s(ie);_elementRef=s(O);_dir=s(Ue,{optional:!0});_platform=s(se);_viewRepeater;_viewportRuler=s(Rt);_injector=s(q);_virtualScrollViewport=s(Uu,{optional:!0,host:!0});_positionListener=s(la,{optional:!0})||s(la,{optional:!0,skipSelf:!0});_document=s(G);_data;_renderedRange;_onDestroy=new M;_renderRows;_renderChangeSubscription=null;_columnDefsByName=new Map;_rowDefs;_headerRowDefs;_footerRowDefs;_dataDiffer;_defaultRowDef=null;_customColumnDefs=new Set;_customRowDefs=new Set;_customHeaderRowDefs=new Set;_customFooterRowDefs=new Set;_customNoDataRow=null;_headerRowDefChanged=!0;_footerRowDefChanged=!0;_stickyColumnStylesNeedReset=!0;_forceRecalculateCellWidths=!0;_cachedRenderRowsMap=new Map;_isNativeHtmlTable;_stickyStyler;stickyCssClass="cdk-table-sticky";needsPositionStickyOnElement=!0;_isServer;_isShowingNoDataRow=!1;_hasAllOutlets=!1;_hasInitialized=!1;_headerRowStickyUpdates=new M;_footerRowStickyUpdates=new M;_disableVirtualScrolling=!1;_getCellRole(){if(this._cellRoleInternal===void 0){let e=this._elementRef.nativeElement.getAttribute("role");return e==="grid"||e==="treegrid"?"gridcell":"cell"}return this._cellRoleInternal}_cellRoleInternal=void 0;get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}_trackByFn;get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&(this._switchDataSource(e),this._changeDetectorRef.markForCheck())}_dataSource;_dataSourceChanges=new M;_dataStream=new M;get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=e,this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}_multiTemplateDataRows=!1;get fixedLayout(){return this._virtualScrollEnabled()?!0:this._fixedLayout}set fixedLayout(e){this._fixedLayout=e,this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}_fixedLayout=!1;recycleRows=!1;contentChanged=new $;viewChange=new Fn({start:0,end:Number.MAX_VALUE});_rowOutlet;_headerRowOutlet;_footerRowOutlet;_noDataRowOutlet;_contentColumnDefs;_contentRowDefs;_contentHeaderRowDefs;_contentFooterRowDefs;_noDataRow;get renderedRows(){return this._renderRows}constructor(){s(new fi("role"),{optional:!0})||this._elementRef.nativeElement.setAttribute("role","table"),this._isServer=!this._platform.isBrowser,this._isNativeHtmlTable=this._elementRef.nativeElement.nodeName==="TABLE",this._dataDiffer=this._differs.find([]).create((t,n)=>this.trackBy?this.trackBy(n.dataIndex,n.data):n)}ngOnInit(){this._setupStickyStyler(),this._viewportRuler.change().pipe(ne(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentInit(){this._viewRepeater=this.recycleRows||this._virtualScrollEnabled()?new jr:new Hr,this._virtualScrollEnabled()&&this._setupVirtualScrolling(this._virtualScrollViewport),this._hasInitialized=!0}ngAfterContentChecked(){this._canRender()&&this._render()}ngOnDestroy(){this._stickyStyler?.destroy(),[this._rowOutlet?.viewContainer,this._headerRowOutlet?.viewContainer,this._footerRowOutlet?.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e?.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._headerRowStickyUpdates.complete(),this._footerRowStickyUpdates.complete(),this._onDestroy.next(),this._onDestroy.complete(),zr(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();let e=this._dataDiffer.diff(this._renderRows);if(!e){this._updateNoDataRow(),this.contentChanged.next();return}let t=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,t,(n,a,r)=>this._getEmbeddedViewArgs(n.item,r),n=>n.item.data,n=>{n.operation===si.INSERTED&&n.context&&this._renderCellTemplateForItem(n.record.item.rowDef,n.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(n=>{let a=t.get(n.currentIndex);a.context.$implicit=n.item.data}),this._updateNoDataRow(),this.contentChanged.next(),this.updateStickyColumnStyles()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){let e=this._getRenderedRows(this._headerRowOutlet);if(this._isNativeHtmlTable){let n=$u(this._headerRowOutlet,"thead");n&&(n.style.display=e.length?"":"none")}let t=this._headerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,t,"top"),this._headerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyFooterRowStyles(){let e=this._getRenderedRows(this._footerRowOutlet);if(this._isNativeHtmlTable){let n=$u(this._footerRowOutlet,"tfoot");n&&(n.style.display=e.length?"":"none")}let t=this._footerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,t,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,t),this._footerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyColumnStyles(){let e=this._getRenderedRows(this._headerRowOutlet),t=this._getRenderedRows(this._rowOutlet),n=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this.fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...t,...n],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((a,r)=>{this._addStickyColumnStyles([a],this._headerRowDefs[r])}),this._rowDefs.forEach(a=>{let r=[];for(let m=0;m<t.length;m++)this._renderRows[m].rowDef===a&&r.push(t[m]);this._addStickyColumnStyles(r,a)}),n.forEach((a,r)=>{this._addStickyColumnStyles([a],this._footerRowDefs[r])}),Array.from(this._columnDefsByName.values()).forEach(a=>a.resetStickyChanged())}stickyColumnsUpdated(e){this._positionListener?.stickyColumnsUpdated(e)}stickyEndColumnsUpdated(e){this._positionListener?.stickyEndColumnsUpdated(e)}stickyHeaderRowsUpdated(e){this._headerRowStickyUpdates.next(e),this._positionListener?.stickyHeaderRowsUpdated(e)}stickyFooterRowsUpdated(e){this._footerRowStickyUpdates.next(e),this._positionListener?.stickyFooterRowsUpdated(e)}_outletAssigned(){!this._hasAllOutlets&&this._rowOutlet&&this._headerRowOutlet&&this._footerRowOutlet&&this._noDataRowOutlet&&(this._hasAllOutlets=!0,this._canRender()&&this._render())}_canRender(){return this._hasAllOutlets&&this._hasInitialized}_render(){this._cacheRowDefs(),this._cacheColumnDefs(),!this._headerRowDefs.length&&!this._footerRowDefs.length&&this._rowDefs.length;let t=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||t,this._forceRecalculateCellWidths=t,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}_getAllRenderRows(){if(!Array.isArray(this._data)||!this._renderedRange)return[];let e=[],t=Math.min(this._data.length,this._renderedRange.end),n=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let a=this._renderedRange.start;a<t;a++){let r=this._data[a],m=this._getRenderRowsForData(r,a,n.get(r));this._cachedRenderRowsMap.has(r)||this._cachedRenderRowsMap.set(r,new WeakMap);for(let h=0;h<m.length;h++){let g=m[h],_=this._cachedRenderRowsMap.get(g.data);_.has(g.rowDef)?_.get(g.rowDef).push(g):_.set(g.rowDef,[g]),e.push(g)}}return e}_getRenderRowsForData(e,t,n){return this._getRowDefs(e,t).map(r=>{let m=n&&n.has(r)?n.get(r):[];if(m.length){let h=m.shift();return h.dataIndex=t,h}else return{data:e,rowDef:r,dataIndex:t}})}_cacheColumnDefs(){this._columnDefsByName.clear(),Ur(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(t=>{this._columnDefsByName.has(t.name),this._columnDefsByName.set(t.name,t)})}_cacheRowDefs(){this._headerRowDefs=Ur(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=Ur(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=Ur(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);let e=this._rowDefs.filter(t=>!t.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){let e=(r,m)=>{let h=!!m.getColumnsDiff();return r||h},t=this._rowDefs.reduce(e,!1);t&&this._forceRenderDataRows();let n=this._headerRowDefs.reduce(e,!1);n&&this._forceRenderHeaderRows();let a=this._footerRowDefs.reduce(e,!1);return a&&this._forceRenderFooterRows(),t||n||a}_switchDataSource(e){this._data=[],zr(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet&&this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;zr(this.dataSource)?e=this.dataSource.connect(this):ws(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=be(this.dataSource)),this._renderChangeSubscription=Pn([e,this.viewChange]).pipe(ne(this._onDestroy)).subscribe(([t,n])=>{this._data=t||[],this._renderedRange=n,this._dataStream.next(t),this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,t)=>this._renderRow(this._headerRowOutlet,e,t)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,t)=>this._renderRow(this._footerRowOutlet,e,t)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,t){let n=Array.from(t?.columns||[]).map(m=>{let h=this._columnDefsByName.get(m);return h}),a=n.map(m=>m.sticky),r=n.map(m=>m.stickyEnd);this._stickyStyler.updateStickyColumns(e,a,r,!this.fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){let t=[];for(let n=0;n<e.viewContainer.length;n++){let a=e.viewContainer.get(n);t.push(a.rootNodes[0])}return t}_getRowDefs(e,t){if(this._rowDefs.length===1)return[this._rowDefs[0]];let n=[];if(this.multiTemplateDataRows)n=this._rowDefs.filter(a=>!a.when||a.when(t,e));else{let a=this._rowDefs.find(r=>r.when&&r.when(t,e))||this._defaultRowDef;a&&n.push(a)}return n.length,n}_getEmbeddedViewArgs(e,t){let n=e.rowDef,a={$implicit:e.data};return{templateRef:n.template,context:a,index:t}}_renderRow(e,t,n,a={}){let r=e.viewContainer.createEmbeddedView(t.template,a,n);return this._renderCellTemplateForItem(t,a),r}_renderCellTemplateForItem(e,t){for(let n of this._getCellTemplates(e))ca.mostRecentCellOutlet&&ca.mostRecentCellOutlet._viewContainer.createEmbeddedView(n,t);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){let e=this._rowOutlet.viewContainer;for(let t=0,n=e.length;t<n;t++){let r=e.get(t).context;r.count=n,r.first=t===0,r.last=t===n-1,r.even=t%2===0,r.odd=!r.even,this.multiTemplateDataRows?(r.dataIndex=this._renderRows[t].dataIndex,r.renderIndex=t):r.index=this._renderRows[t].dataIndex}}_getCellTemplates(e){return!e||!e.columns?[]:Array.from(e.columns,t=>{let n=this._columnDefsByName.get(t);return e.extractCellTemplate(n)})}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){let e=(t,n)=>t||n.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){let e=this._dir?this._dir.value:"ltr",t=this._injector;this._stickyStyler=new Yl(this._isNativeHtmlTable,this.stickyCssClass,this._platform.isBrowser,this.needsPositionStickyOnElement,e,this,t),(this._dir?this._dir.change:be()).pipe(ne(this._onDestroy)).subscribe(n=>{this._stickyStyler.direction=n,this.updateStickyColumnStyles()})}_setupVirtualScrolling(e){let t=typeof requestAnimationFrame<"u"?xs:Cs;this.viewChange.next({start:0,end:0}),e.renderedRangeStream.pipe(ko(0,t),ne(this._onDestroy)).subscribe(this.viewChange),e.attach({dataStream:this._dataStream,measureRangeSize:(n,a)=>this._measureRangeSize(n,a)}),Pn([e.renderedContentOffset,this._headerRowStickyUpdates]).pipe(ne(this._onDestroy)).subscribe(([n,a])=>{if(!(!a.sizes||!a.offsets||!a.elements))for(let r=0;r<a.elements.length;r++){let m=a.elements[r];if(m){let h=a.offsets[r],g=n!==0?Math.max(n-h,h):-h;for(let _ of m)_.style.top=`${-g}px`}}}),Pn([e.renderedContentOffset,this._footerRowStickyUpdates]).pipe(ne(this._onDestroy)).subscribe(([n,a])=>{if(!(!a.sizes||!a.offsets||!a.elements))for(let r=0;r<a.elements.length;r++){let m=a.elements[r];if(m)for(let h of m)h.style.bottom=`${n+a.offsets[r]}px`}})}_getOwnDefs(e){return e.filter(t=>!t._table||t._table===this)}_updateNoDataRow(){let e=this._customNoDataRow||this._noDataRow;if(!e)return;let t=this._rowOutlet.viewContainer.length===0;if(t===this._isShowingNoDataRow)return;let n=this._noDataRowOutlet.viewContainer;if(t){let a=n.createEmbeddedView(e.templateRef),r=a.rootNodes[0];if(a.rootNodes.length===1&&r?.nodeType===this._document.ELEMENT_NODE){r.setAttribute("role","row"),r.classList.add(...e._contentClassNames);let m=r.querySelectorAll(e._cellSelector);for(let h=0;h<m.length;h++)m[h].classList.add(...e._cellClassNames)}}else n.clear();this._isShowingNoDataRow=t,this._changeDetectorRef.markForCheck()}_measureRangeSize(e,t){if(e.start>=e.end||t!=="vertical")return 0;let n=this.viewChange.value,a=this._rowOutlet.viewContainer;e.start<n.start||e.end>n.end;let r=e.start-n.start,m=e.end-e.start,h,g;for(let B=0;B<m;B++){let U=a.get(B+r);if(U&&U.rootNodes.length){h=g=U.rootNodes[0];break}}for(let B=m-1;B>-1;B--){let U=a.get(B+r);if(U&&U.rootNodes.length){g=U.rootNodes[U.rootNodes.length-1];break}}let _=h?.getBoundingClientRect?.(),y=g?.getBoundingClientRect?.();return _&&y?y.bottom-_.top:0}_virtualScrollEnabled(){return!this._disableVirtualScrolling&&this._virtualScrollViewport!=null}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,Yu,5)(a,da,5)(a,$r,5)(a,Zl,5)(a,Ql,5),t&2){let r;T(r=R())&&(n._noDataRow=r.first),T(r=R())&&(n._contentColumnDefs=r),T(r=R())&&(n._contentRowDefs=r),T(r=R())&&(n._contentHeaderRowDefs=r),T(r=R())&&(n._contentFooterRowDefs=r)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(t,n){t&2&&f("cdk-table-fixed-layout",n.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:[2,"multiTemplateDataRows","multiTemplateDataRows",F],fixedLayout:[2,"fixedLayout","fixedLayout",F],recycleRows:[2,"recycleRows","recycleRows",F]},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[te([{provide:ci,useExisting:i},{provide:la,useValue:null}])],ngContentSelectors:tb,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,n){t&1&&(le(eb),H(0),H(1,1),S(2,ib,1,0),S(3,nb,7,0)(4,ob,4,0)),t&2&&(d(2),E(n._isServer?2:-1),d(),E(n._isNativeHtmlTable?3:4))},dependencies:[tc,ec,nc,ic],styles:[`.cdk-table-fixed-layout {
|
|
2224
2224
|
table-layout: fixed;
|
|
2225
2225
|
}
|
|
2226
|
-
`],encapsulation:2,changeDetection:1})}return i})();function Ur(i,o){return i.concat(Array.from(o))}function
|
|
2226
|
+
`],encapsulation:2,changeDetection:1})}return i})();function Ur(i,o){return i.concat(Array.from(o))}function $u(i,o){let e=o.toUpperCase(),t=i.viewContainer.element.nativeElement;for(;t;){let n=t.nodeType===1?t.nodeName:null;if(n===e)return t;if(n==="TABLE")break;t=t.parentNode}return null}var Xu=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[sa]})}return i})();var ma=class{_multiple;_emitChanges;compareWith;_selection=new Set;_deselectedToEmit=[];_selectedToEmit=[];_selected=null;get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}changed=new M;bulk={select:o=>this._select(o),deselect:o=>this._deselect(o),setSelection:o=>this._setSelection(o)};constructor(o=!1,e,t=!0,n){this._multiple=o,this._emitChanges=t,this.compareWith=n,e&&e.length&&(o?e.forEach(a=>this._markSelected(a)):this._markSelected(e[0]),this._selectedToEmit.length=0)}select(...o){return this._select(o)}deselect(...o){return this._deselect(o)}setSelection(...o){return this._setSelection(o)}toggle(o){return this.isSelected(o)?this.deselect(o):this.select(o)}clear(o=!0){this._unmarkAll();let e=this._hasQueuedChanges();return o&&this._emitChangeEvent(),e}isSelected(o){return this._selection.has(this._getConcreteValue(o))}isEmpty(){return this._selection.size===0}hasValue(){return!this.isEmpty()}sort(o){this._multiple&&this.selected&&this._selected.sort(o)}isMultipleSelection(){return this._multiple}_select(o){this._verifyValueAssignment(o),o.forEach(t=>this._markSelected(t));let e=this._hasQueuedChanges();return this._emitChangeEvent(),e}_deselect(o){this._verifyValueAssignment(o),o.forEach(t=>this._unmarkSelected(t));let e=this._hasQueuedChanges();return this._emitChangeEvent(),e}_setSelection(o){this._verifyValueAssignment(o);let e=this.selected,t=new Set(o.map(a=>this._getConcreteValue(a)));o.forEach(a=>this._markSelected(a)),e.filter(a=>!t.has(this._getConcreteValue(a,t))).forEach(a=>this._unmarkSelected(a));let n=this._hasQueuedChanges();return this._emitChangeEvent(),n}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(o){o=this._getConcreteValue(o),this.isSelected(o)||(this._multiple||this._unmarkAll(),this.isSelected(o)||this._selection.add(o),this._emitChanges&&this._selectedToEmit.push(o))}_unmarkSelected(o){o=this._getConcreteValue(o),this.isSelected(o)&&(this._selection.delete(o),this._emitChanges&&this._deselectedToEmit.push(o))}_unmarkAll(){this.isEmpty()||this._selection.forEach(o=>this._unmarkSelected(o))}_verifyValueAssignment(o){o.length>1&&this._multiple}_hasQueuedChanges(){return!!(this._deselectedToEmit.length||this._selectedToEmit.length)}_getConcreteValue(o,e){if(this.compareWith){e=e??this._selection;for(let t of e)if(this.compareWith(o,t))return t;return o}else return o}};var ua=(()=>{class i{_listeners=[];notify(e,t){for(let n of this._listeners)n(e,t)}listen(e){return this._listeners.push(e),()=>{this._listeners=this._listeners.filter(t=>e!==t)}}ngOnDestroy(){this._listeners=[]}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var rb=[[["caption"]],[["colgroup"],["col"]],"*"],sb=["caption","colgroup, col","*"];function lb(i,o){i&1&&H(0,2)}function cb(i,o){i&1&&(l(0,"thead",0),Bt(1,1),c(),l(2,"tbody",2),Bt(3,3)(4,4),c(),l(5,"tfoot",0),Bt(6,5),c())}function db(i,o){i&1&&Bt(0,1)(1,3)(2,4)(3,5)}var Zu=(()=>{class i extends oc{stickyCssClass="mat-mdc-table-sticky";needsPositionStickyOnElement=!1;static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-mdc-table","mdc-data-table__table"],hostVars:2,hostBindings:function(t,n){t&2&&f("mat-table-fixed-layout",n.fixedLayout)},exportAs:["matTable"],features:[te([{provide:oc,useExisting:i},{provide:ci,useExisting:i},{provide:la,useValue:null}]),X],ngContentSelectors:sb,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["role","rowgroup",1,"mdc-data-table__content"],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,n){t&1&&(le(rb),H(0),H(1,1),S(2,lb,1,0),S(3,cb,7,0)(4,db,4,0)),t&2&&(d(2),E(n._isServer?2:-1),d(),E(n._isNativeHtmlTable?3:4))},dependencies:[tc,ec,nc,ic],styles:[`.mat-mdc-table-sticky {
|
|
2227
2227
|
position: sticky !important;
|
|
2228
2228
|
}
|
|
2229
2229
|
|
|
@@ -2400,7 +2400,7 @@ mat-cell.mat-mdc-cell,
|
|
|
2400
2400
|
mat-footer-cell.mat-mdc-footer-cell {
|
|
2401
2401
|
align-self: stretch;
|
|
2402
2402
|
}
|
|
2403
|
-
`],encapsulation:2,changeDetection:1})}return i})(),Zu=(()=>{class i extends Gr{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matCellDef",""]],features:[te([{provide:Gr,useExisting:i}]),X]})}return i})();var Qu=(()=>{class i extends da{get name(){return this._name}set name(e){this._setNameInput(e)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matColumnDef",""]],inputs:{name:[0,"matColumnDef","name"]},features:[te([{provide:da,useExisting:i}]),X]})}return i})();var Ju=(()=>{class i extends qu{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:[1,"mat-mdc-cell","mdc-data-table__cell"],features:[X]})}return i})();var eh=(()=>{class i extends $r{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matRowDef",""]],inputs:{columns:[0,"matRowDefColumns","columns"],when:[0,"matRowDefWhen","when"]},features:[te([{provide:$r,useExisting:i}]),X]})}return i})();var th=(()=>{class i extends Jl{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-mdc-row","mdc-data-table__row"],exportAs:["matRow"],features:[te([{provide:Jl,useExisting:i}]),X],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,n){t&1&&Bt(0,0)},dependencies:[ca],encapsulation:2,changeDetection:1})}return i})();var ih=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Yu,Q]})}return i})();var mb=["*",[["mat-chip-avatar"],["","matChipAvatar",""]],[["mat-chip-trailing-icon"],["","matChipRemove",""],["","matChipTrailingIcon",""]]],ub=["*","mat-chip-avatar, [matChipAvatar]","mat-chip-trailing-icon,[matChipRemove],[matChipTrailingIcon]"];function hb(i,o){i&1&&(l(0,"span",3),H(1,1),c())}function pb(i,o){i&1&&(l(0,"span",6),H(1,2),c())}var fb=["*"];var gb=new b("mat-chips-default-options",{providedIn:"root",factory:()=>({separatorKeyCodes:[13]})}),nh=new b("MatChipAvatar"),oh=new b("MatChipTrailingIcon"),ah=new b("MatChipEdit"),rh=new b("MatChipRemove"),sh=new b("MatChip"),lh=(()=>{class i{_elementRef=s(O);_parentChip=s(sh);_isPrimary=!0;_isLeading=!1;get disabled(){return this._disabled||this._parentChip?.disabled||!1}set disabled(e){this._disabled=e}_disabled=!1;tabIndex=-1;_allowFocusWhenDisabled=!1;_getDisabledAttribute(){return this.disabled&&!this._allowFocusWhenDisabled?"":null}constructor(){s(Te).load(yt),this._elementRef.nativeElement.nodeName==="BUTTON"&&this._elementRef.nativeElement.setAttribute("type","button")}focus(){this._elementRef.nativeElement.focus()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matChipContent",""]],hostAttrs:[1,"mat-mdc-chip-action","mdc-evolution-chip__action","mdc-evolution-chip__action--presentational"],hostVars:8,hostBindings:function(t,n){t&2&&(Y("disabled",n._getDisabledAttribute())("aria-disabled",n.disabled),f("mdc-evolution-chip__action--primary",n._isPrimary)("mdc-evolution-chip__action--secondary",!n._isPrimary)("mdc-evolution-chip__action--trailing",!n._isPrimary&&!n._isLeading))},inputs:{disabled:[2,"disabled","disabled",F],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?-1:_t(e)],_allowFocusWhenDisabled:"_allowFocusWhenDisabled"}})}return i})(),_b=(()=>{class i extends lh{_getTabindex(){return this.disabled&&!this._allowFocusWhenDisabled?null:this.tabIndex.toString()}_handleClick(e){!this.disabled&&this._isPrimary&&(e.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}_handleKeydown(e){(e.keyCode===13||e.keyCode===32)&&!this.disabled&&this._isPrimary&&!this._parentChip._isEditing&&(e.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matChipAction",""]],hostVars:3,hostBindings:function(t,n){t&1&&I("click",function(r){return n._handleClick(r)})("keydown",function(r){return n._handleKeydown(r)}),t&2&&(Y("tabindex",n._getTabindex()),f("mdc-evolution-chip__action--presentational",!1))},features:[X]})}return i})();var ha=(()=>{class i{_changeDetectorRef=s(ie);_elementRef=s(O);_tagName=s(Zc);_ngZone=s(j);_focusMonitor=s(Dt);_globalRippleOptions=s(En,{optional:!0});_document=s(G);_onFocus=new M;_onBlur=new M;_isBasicChip=!1;role=null;_hasFocusInternal=!1;_pendingFocus=!1;_actionChanges;_animationsDisabled=de();_allLeadingIcons;_allTrailingIcons;_allEditIcons;_allRemoveIcons;_hasFocus(){return this._hasFocusInternal}id=s(he).getId("mat-mdc-chip-");ariaLabel=null;ariaDescription=null;_chipListDisabled=!1;_hadFocusOnRemove=!1;_textElement;get value(){return this._value!==void 0?this._value:this._textElement.textContent.trim()}set value(e){this._value=e}_value;color;removable=!0;highlighted=!1;disableRipple=!1;get disabled(){return this._disabled||this._chipListDisabled}set disabled(e){this._disabled=e}_disabled=!1;removed=new $;destroyed=new $;basicChipAttrName="mat-basic-chip";leadingIcon;editIcon;trailingIcon;removeIcon;primaryAction;_rippleLoader=s(Br);_injector=s(q);constructor(){let e=s(Te);e.load(yt),e.load(Gi),this._monitorFocus(),this._rippleLoader?.configureRipple(this._elementRef.nativeElement,{className:"mat-mdc-chip-ripple",disabled:this._isRippleDisabled()})}ngOnInit(){this._isBasicChip=this._elementRef.nativeElement.hasAttribute(this.basicChipAttrName)||this._tagName.toLowerCase()===this.basicChipAttrName}ngAfterViewInit(){this._textElement=this._elementRef.nativeElement.querySelector(".mat-mdc-chip-action-label"),this._pendingFocus&&(this._pendingFocus=!1,this.focus())}ngAfterContentInit(){this._actionChanges=je(this._allLeadingIcons.changes,this._allTrailingIcons.changes,this._allEditIcons.changes,this._allRemoveIcons.changes).subscribe(()=>this._changeDetectorRef.markForCheck())}ngDoCheck(){this._rippleLoader.setDisabled(this._elementRef.nativeElement,this._isRippleDisabled())}ngOnDestroy(){this.destroyed.emit({chip:this}),this.destroyed.complete(),this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement),this._actionChanges?.unsubscribe()}remove(){this.removable&&(this._hadFocusOnRemove=this._hasFocus(),this.removed.emit({chip:this}))}_isRippleDisabled(){return this.disabled||this.disableRipple||this._animationsDisabled||this._isBasicChip||!this._hasInteractiveActions()||!!this._globalRippleOptions?.disabled}_hasTrailingIcon(){return!!(this.trailingIcon||this.removeIcon)}_handleKeydown(e){(e.keyCode===8&&!e.repeat||e.keyCode===46)&&(e.preventDefault(),this.remove())}focus(){this.disabled||(this.primaryAction?this.primaryAction.focus():this._pendingFocus=!0)}_getSourceAction(e){return this._getActions().find(t=>{let n=t._elementRef.nativeElement;return n===e||n.contains(e)})}_getActions(){let e=[];return this.editIcon&&e.push(this.editIcon),this.primaryAction&&e.push(this.primaryAction),this.removeIcon&&e.push(this.removeIcon),e}_handlePrimaryActionInteraction(){}_hasInteractiveActions(){return this._getActions().length>0}_edit(e){}_monitorFocus(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{let t=e!==null;t!==this._hasFocusInternal&&(this._hasFocusInternal=t,t?this._onFocus.next({chip:this}):(this._changeDetectorRef.markForCheck(),setTimeout(()=>this._ngZone.run(()=>this._onBlur.next({chip:this})))))})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,nh,5)(a,ah,5)(a,oh,5)(a,rh,5)(a,nh,5)(a,oh,5)(a,ah,5)(a,rh,5),t&2){let r;T(r=R())&&(n.leadingIcon=r.first),T(r=R())&&(n.editIcon=r.first),T(r=R())&&(n.trailingIcon=r.first),T(r=R())&&(n.removeIcon=r.first),T(r=R())&&(n._allLeadingIcons=r),T(r=R())&&(n._allTrailingIcons=r),T(r=R())&&(n._allEditIcons=r),T(r=R())&&(n._allRemoveIcons=r)}},viewQuery:function(t,n){if(t&1&&Ce(_b,5),t&2){let a;T(a=R())&&(n.primaryAction=a.first)}},hostAttrs:[1,"mat-mdc-chip"],hostVars:31,hostBindings:function(t,n){t&1&&I("keydown",function(r){return n._handleKeydown(r)}),t&2&&(at("id",n.id),Y("role",n.role)("aria-label",n.ariaLabel),Qe("mat-"+(n.color||"primary")),f("mdc-evolution-chip",!n._isBasicChip)("mdc-evolution-chip--disabled",n.disabled)("mdc-evolution-chip--with-trailing-action",n._hasTrailingIcon())("mdc-evolution-chip--with-primary-graphic",n.leadingIcon)("mdc-evolution-chip--with-primary-icon",n.leadingIcon)("mdc-evolution-chip--with-avatar",n.leadingIcon)("mat-mdc-chip-with-avatar",n.leadingIcon)("mat-mdc-chip-highlighted",n.highlighted)("mat-mdc-chip-disabled",n.disabled)("mat-mdc-basic-chip",n._isBasicChip)("mat-mdc-standard-chip",!n._isBasicChip)("mat-mdc-chip-with-trailing-icon",n._hasTrailingIcon())("_mat-animation-noopable",n._animationsDisabled))},inputs:{role:"role",id:"id",ariaLabel:[0,"aria-label","ariaLabel"],ariaDescription:[0,"aria-description","ariaDescription"],value:"value",color:"color",removable:[2,"removable","removable",F],highlighted:[2,"highlighted","highlighted",F],disableRipple:[2,"disableRipple","disableRipple",F],disabled:[2,"disabled","disabled",F]},outputs:{removed:"removed",destroyed:"destroyed"},exportAs:["matChip"],features:[te([{provide:sh,useExisting:i}])],ngContentSelectors:ub,decls:8,vars:2,consts:[[1,"mat-mdc-chip-focus-overlay"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--primary"],["matChipContent",""],[1,"mdc-evolution-chip__graphic","mat-mdc-chip-graphic"],[1,"mdc-evolution-chip__text-label","mat-mdc-chip-action-label"],[1,"mat-mdc-chip-primary-focus-indicator","mat-focus-indicator"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--trailing"]],template:function(t,n){t&1&&(le(mb),v(0,"span",0),l(1,"span",1)(2,"span",2),S(3,hb,2,0,"span",3),l(4,"span",4),H(5),v(6,"span",5),c()()(),S(7,pb,2,0,"span",6)),t&2&&(d(3),E(n.leadingIcon?3:-1),d(4),E(n._hasTrailingIcon()?7:-1))},dependencies:[lh],styles:[`.mdc-evolution-chip,
|
|
2403
|
+
`],encapsulation:2,changeDetection:1})}return i})(),Qu=(()=>{class i extends Gr{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matCellDef",""]],features:[te([{provide:Gr,useExisting:i}]),X]})}return i})();var Ju=(()=>{class i extends da{get name(){return this._name}set name(e){this._setNameInput(e)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matColumnDef",""]],inputs:{name:[0,"matColumnDef","name"]},features:[te([{provide:da,useExisting:i}]),X]})}return i})();var eh=(()=>{class i extends Ku{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:[1,"mat-mdc-cell","mdc-data-table__cell"],features:[X]})}return i})();var th=(()=>{class i extends $r{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matRowDef",""]],inputs:{columns:[0,"matRowDefColumns","columns"],when:[0,"matRowDefWhen","when"]},features:[te([{provide:$r,useExisting:i}]),X]})}return i})();var ih=(()=>{class i extends Jl{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-mdc-row","mdc-data-table__row"],exportAs:["matRow"],features:[te([{provide:Jl,useExisting:i}]),X],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,n){t&1&&Bt(0,0)},dependencies:[ca],encapsulation:2,changeDetection:1})}return i})();var nh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Xu,Q]})}return i})();var ub=["*",[["mat-chip-avatar"],["","matChipAvatar",""]],[["mat-chip-trailing-icon"],["","matChipRemove",""],["","matChipTrailingIcon",""]]],hb=["*","mat-chip-avatar, [matChipAvatar]","mat-chip-trailing-icon,[matChipRemove],[matChipTrailingIcon]"];function pb(i,o){i&1&&(l(0,"span",3),H(1,1),c())}function fb(i,o){i&1&&(l(0,"span",6),H(1,2),c())}var gb=["*"];var _b=new b("mat-chips-default-options",{providedIn:"root",factory:()=>({separatorKeyCodes:[13]})}),oh=new b("MatChipAvatar"),ah=new b("MatChipTrailingIcon"),rh=new b("MatChipEdit"),sh=new b("MatChipRemove"),lh=new b("MatChip"),ch=(()=>{class i{_elementRef=s(O);_parentChip=s(lh);_isPrimary=!0;_isLeading=!1;get disabled(){return this._disabled||this._parentChip?.disabled||!1}set disabled(e){this._disabled=e}_disabled=!1;tabIndex=-1;_allowFocusWhenDisabled=!1;_getDisabledAttribute(){return this.disabled&&!this._allowFocusWhenDisabled?"":null}constructor(){s(Te).load(xt),this._elementRef.nativeElement.nodeName==="BUTTON"&&this._elementRef.nativeElement.setAttribute("type","button")}focus(){this._elementRef.nativeElement.focus()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matChipContent",""]],hostAttrs:[1,"mat-mdc-chip-action","mdc-evolution-chip__action","mdc-evolution-chip__action--presentational"],hostVars:8,hostBindings:function(t,n){t&2&&(Y("disabled",n._getDisabledAttribute())("aria-disabled",n.disabled),f("mdc-evolution-chip__action--primary",n._isPrimary)("mdc-evolution-chip__action--secondary",!n._isPrimary)("mdc-evolution-chip__action--trailing",!n._isPrimary&&!n._isLeading))},inputs:{disabled:[2,"disabled","disabled",F],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?-1:_t(e)],_allowFocusWhenDisabled:"_allowFocusWhenDisabled"}})}return i})(),bb=(()=>{class i extends ch{_getTabindex(){return this.disabled&&!this._allowFocusWhenDisabled?null:this.tabIndex.toString()}_handleClick(e){!this.disabled&&this._isPrimary&&(e.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}_handleKeydown(e){(e.keyCode===13||e.keyCode===32)&&!this.disabled&&this._isPrimary&&!this._parentChip._isEditing&&(e.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matChipAction",""]],hostVars:3,hostBindings:function(t,n){t&1&&I("click",function(r){return n._handleClick(r)})("keydown",function(r){return n._handleKeydown(r)}),t&2&&(Y("tabindex",n._getTabindex()),f("mdc-evolution-chip__action--presentational",!1))},features:[X]})}return i})();var ha=(()=>{class i{_changeDetectorRef=s(ie);_elementRef=s(O);_tagName=s(Zc);_ngZone=s(j);_focusMonitor=s(St);_globalRippleOptions=s(En,{optional:!0});_document=s(G);_onFocus=new M;_onBlur=new M;_isBasicChip=!1;role=null;_hasFocusInternal=!1;_pendingFocus=!1;_actionChanges;_animationsDisabled=de();_allLeadingIcons;_allTrailingIcons;_allEditIcons;_allRemoveIcons;_hasFocus(){return this._hasFocusInternal}id=s(he).getId("mat-mdc-chip-");ariaLabel=null;ariaDescription=null;_chipListDisabled=!1;_hadFocusOnRemove=!1;_textElement;get value(){return this._value!==void 0?this._value:this._textElement.textContent.trim()}set value(e){this._value=e}_value;color;removable=!0;highlighted=!1;disableRipple=!1;get disabled(){return this._disabled||this._chipListDisabled}set disabled(e){this._disabled=e}_disabled=!1;removed=new $;destroyed=new $;basicChipAttrName="mat-basic-chip";leadingIcon;editIcon;trailingIcon;removeIcon;primaryAction;_rippleLoader=s(Br);_injector=s(q);constructor(){let e=s(Te);e.load(xt),e.load(Gi),this._monitorFocus(),this._rippleLoader?.configureRipple(this._elementRef.nativeElement,{className:"mat-mdc-chip-ripple",disabled:this._isRippleDisabled()})}ngOnInit(){this._isBasicChip=this._elementRef.nativeElement.hasAttribute(this.basicChipAttrName)||this._tagName.toLowerCase()===this.basicChipAttrName}ngAfterViewInit(){this._textElement=this._elementRef.nativeElement.querySelector(".mat-mdc-chip-action-label"),this._pendingFocus&&(this._pendingFocus=!1,this.focus())}ngAfterContentInit(){this._actionChanges=He(this._allLeadingIcons.changes,this._allTrailingIcons.changes,this._allEditIcons.changes,this._allRemoveIcons.changes).subscribe(()=>this._changeDetectorRef.markForCheck())}ngDoCheck(){this._rippleLoader.setDisabled(this._elementRef.nativeElement,this._isRippleDisabled())}ngOnDestroy(){this.destroyed.emit({chip:this}),this.destroyed.complete(),this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement),this._actionChanges?.unsubscribe()}remove(){this.removable&&(this._hadFocusOnRemove=this._hasFocus(),this.removed.emit({chip:this}))}_isRippleDisabled(){return this.disabled||this.disableRipple||this._animationsDisabled||this._isBasicChip||!this._hasInteractiveActions()||!!this._globalRippleOptions?.disabled}_hasTrailingIcon(){return!!(this.trailingIcon||this.removeIcon)}_handleKeydown(e){(e.keyCode===8&&!e.repeat||e.keyCode===46)&&(e.preventDefault(),this.remove())}focus(){this.disabled||(this.primaryAction?this.primaryAction.focus():this._pendingFocus=!0)}_getSourceAction(e){return this._getActions().find(t=>{let n=t._elementRef.nativeElement;return n===e||n.contains(e)})}_getActions(){let e=[];return this.editIcon&&e.push(this.editIcon),this.primaryAction&&e.push(this.primaryAction),this.removeIcon&&e.push(this.removeIcon),e}_handlePrimaryActionInteraction(){}_hasInteractiveActions(){return this._getActions().length>0}_edit(e){}_monitorFocus(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{let t=e!==null;t!==this._hasFocusInternal&&(this._hasFocusInternal=t,t?this._onFocus.next({chip:this}):(this._changeDetectorRef.markForCheck(),setTimeout(()=>this._ngZone.run(()=>this._onBlur.next({chip:this})))))})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,oh,5)(a,rh,5)(a,ah,5)(a,sh,5)(a,oh,5)(a,ah,5)(a,rh,5)(a,sh,5),t&2){let r;T(r=R())&&(n.leadingIcon=r.first),T(r=R())&&(n.editIcon=r.first),T(r=R())&&(n.trailingIcon=r.first),T(r=R())&&(n.removeIcon=r.first),T(r=R())&&(n._allLeadingIcons=r),T(r=R())&&(n._allTrailingIcons=r),T(r=R())&&(n._allEditIcons=r),T(r=R())&&(n._allRemoveIcons=r)}},viewQuery:function(t,n){if(t&1&&we(bb,5),t&2){let a;T(a=R())&&(n.primaryAction=a.first)}},hostAttrs:[1,"mat-mdc-chip"],hostVars:31,hostBindings:function(t,n){t&1&&I("keydown",function(r){return n._handleKeydown(r)}),t&2&&(at("id",n.id),Y("role",n.role)("aria-label",n.ariaLabel),Qe("mat-"+(n.color||"primary")),f("mdc-evolution-chip",!n._isBasicChip)("mdc-evolution-chip--disabled",n.disabled)("mdc-evolution-chip--with-trailing-action",n._hasTrailingIcon())("mdc-evolution-chip--with-primary-graphic",n.leadingIcon)("mdc-evolution-chip--with-primary-icon",n.leadingIcon)("mdc-evolution-chip--with-avatar",n.leadingIcon)("mat-mdc-chip-with-avatar",n.leadingIcon)("mat-mdc-chip-highlighted",n.highlighted)("mat-mdc-chip-disabled",n.disabled)("mat-mdc-basic-chip",n._isBasicChip)("mat-mdc-standard-chip",!n._isBasicChip)("mat-mdc-chip-with-trailing-icon",n._hasTrailingIcon())("_mat-animation-noopable",n._animationsDisabled))},inputs:{role:"role",id:"id",ariaLabel:[0,"aria-label","ariaLabel"],ariaDescription:[0,"aria-description","ariaDescription"],value:"value",color:"color",removable:[2,"removable","removable",F],highlighted:[2,"highlighted","highlighted",F],disableRipple:[2,"disableRipple","disableRipple",F],disabled:[2,"disabled","disabled",F]},outputs:{removed:"removed",destroyed:"destroyed"},exportAs:["matChip"],features:[te([{provide:lh,useExisting:i}])],ngContentSelectors:hb,decls:8,vars:2,consts:[[1,"mat-mdc-chip-focus-overlay"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--primary"],["matChipContent",""],[1,"mdc-evolution-chip__graphic","mat-mdc-chip-graphic"],[1,"mdc-evolution-chip__text-label","mat-mdc-chip-action-label"],[1,"mat-mdc-chip-primary-focus-indicator","mat-focus-indicator"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--trailing"]],template:function(t,n){t&1&&(le(ub),v(0,"span",0),l(1,"span",1)(2,"span",2),S(3,pb,2,0,"span",3),l(4,"span",4),H(5),v(6,"span",5),c()()(),S(7,fb,2,0,"span",6)),t&2&&(d(3),E(n.leadingIcon?3:-1),d(4),E(n._hasTrailingIcon()?7:-1))},dependencies:[ch],styles:[`.mdc-evolution-chip,
|
|
2404
2404
|
.mdc-evolution-chip__cell,
|
|
2405
2405
|
.mdc-evolution-chip__action {
|
|
2406
2406
|
display: inline-flex;
|
|
@@ -2948,7 +2948,7 @@ mat-footer-cell.mat-mdc-footer-cell {
|
|
|
2948
2948
|
img.mdc-evolution-chip__icon {
|
|
2949
2949
|
min-height: 0;
|
|
2950
2950
|
}
|
|
2951
|
-
`],encapsulation:2})}return i})();var
|
|
2951
|
+
`],encapsulation:2})}return i})();var dh=(()=>{class i{_elementRef=s(O);_changeDetectorRef=s(ie);_dir=s(Ue,{optional:!0});_lastDestroyedFocusedChipIndex=null;_keyManager;_destroyed=new M;_defaultRole="presentation";get chipFocusChanges(){return this._getChipStream(e=>e._onFocus)}get chipDestroyedChanges(){return this._getChipStream(e=>e.destroyed)}get chipRemovedChanges(){return this._getChipStream(e=>e.removed)}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._syncChipsState()}_disabled=!1;get empty(){return!this._chips||this._chips.length===0}get role(){return this._explicitRole?this._explicitRole:this.empty?null:this._defaultRole}tabIndex=0;set role(e){this._explicitRole=e}_explicitRole=null;get focused(){return this._hasFocusedChip()}_chips;_chipActions=new Ni;ngAfterViewInit(){this._setUpFocusManagement(),this._trackChipSetChanges(),this._trackDestroyedFocusedChip()}ngOnDestroy(){this._keyManager?.destroy(),this._chipActions.destroy(),this._destroyed.next(),this._destroyed.complete()}_hasFocusedChip(){return this._chips&&this._chips.some(e=>e._hasFocus())}_syncChipsState(){this._chips?.forEach(e=>{e._chipListDisabled=this._disabled,e._changeDetectorRef.markForCheck()})}focus(){}_handleKeydown(e){this._originatesFromChip(e)&&this._keyManager.onKeydown(e)}_isValidIndex(e){return e>=0&&e<this._chips.length}_allowFocusEscape(){let e=this._elementRef.nativeElement.tabIndex;e!==-1&&(this._elementRef.nativeElement.tabIndex=-1,setTimeout(()=>this._elementRef.nativeElement.tabIndex=e))}_getChipStream(e){return this._chips.changes.pipe(Ie(null),We(()=>He(...this._chips.map(e))))}_originatesFromChip(e){let t=e.target;for(;t&&t!==this._elementRef.nativeElement;){if(t.classList.contains("mat-mdc-chip"))return!0;t=t.parentElement}return!1}_setUpFocusManagement(){this._chips.changes.pipe(Ie(this._chips)).subscribe(e=>{let t=[];e.forEach(n=>n._getActions().forEach(a=>t.push(a))),this._chipActions.reset(t),this._chipActions.notifyOnChanges()}),this._keyManager=new qi(this._chipActions).withVerticalOrientation().withHorizontalOrientation(this._dir?this._dir.value:"ltr").withHomeAndEnd().skipPredicate(e=>this._skipPredicate(e)),this.chipFocusChanges.pipe(ne(this._destroyed)).subscribe(({chip:e})=>{let t=e._getSourceAction(document.activeElement);t&&this._keyManager.updateActiveItem(t)}),this._dir?.change.pipe(ne(this._destroyed)).subscribe(e=>this._keyManager.withHorizontalOrientation(e))}_skipPredicate(e){return e.disabled}_trackChipSetChanges(){this._chips.changes.pipe(Ie(null),ne(this._destroyed)).subscribe(()=>{this.disabled&&Promise.resolve().then(()=>this._syncChipsState()),this._redirectDestroyedChipFocus()})}_trackDestroyedFocusedChip(){this.chipDestroyedChanges.pipe(ne(this._destroyed)).subscribe(e=>{let n=this._chips.toArray().indexOf(e.chip),a=e.chip._hasFocus(),r=e.chip._hadFocusOnRemove&&this._keyManager.activeItem&&e.chip._getActions().includes(this._keyManager.activeItem),m=a||r;this._isValidIndex(n)&&m&&(this._lastDestroyedFocusedChipIndex=n)})}_redirectDestroyedChipFocus(){if(this._lastDestroyedFocusedChipIndex!=null){if(this._chips.length){let e=Math.min(this._lastDestroyedFocusedChipIndex,this._chips.length-1),t=this._chips.toArray()[e];t.disabled?this._chips.length===1?this.focus():this._keyManager.setPreviousItemActive():t.focus()}else this.focus();this._lastDestroyedFocusedChipIndex=null}}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-chip-set"]],contentQueries:function(t,n,a){if(t&1&&tt(a,ha,5),t&2){let r;T(r=R())&&(n._chips=r)}},hostAttrs:[1,"mat-mdc-chip-set","mdc-evolution-chip-set"],hostVars:1,hostBindings:function(t,n){t&1&&I("keydown",function(r){return n._handleKeydown(r)}),t&2&&Y("role",n.role)},inputs:{disabled:[2,"disabled","disabled",F],role:"role",tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:_t(e)]},ngContentSelectors:gb,decls:2,vars:0,consts:[["role","presentation",1,"mdc-evolution-chip-set__chips"]],template:function(t,n){t&1&&(le(),Ee(0,"div",0),H(1),Pe())},styles:[`.mat-mdc-chip-set {
|
|
2952
2952
|
display: flex;
|
|
2953
2953
|
}
|
|
2954
2954
|
.mat-mdc-chip-set:focus {
|
|
@@ -3016,7 +3016,7 @@ input.mat-mdc-chip-input {
|
|
|
3016
3016
|
margin-left: 0;
|
|
3017
3017
|
margin-right: 0;
|
|
3018
3018
|
}
|
|
3019
|
-
`],encapsulation:2})}return i})();var ho=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[lo,{provide:gb,useValue:{separatorKeyCodes:[13]}}],imports:[bi,Q]})}return i})();function bb(i,o){if(i&1&&(l(0,"td",16),u(1),c()),i&2){let e=o.$implicit;d(),Z(e.index)}}function vb(i,o){if(i&1&&(l(0,"td",17)(1,"mat-chip",18),u(2),c()()),i&2){let e=o.$implicit,t=C();d(),w("ngClass",t.getVendorCssClass(e)),d(),be(" ",t.makeGpuNameShort(e.name)+" / "+e.brand," ")}}function yb(i,o){if(i&1&&(l(0,"td",19)(1,"div",20)(2,"span",21),u(3),Eo(4,"number"),Eo(5,"number"),c(),l(6,"div",22),v(7,"div",23),c()()()),i&2){let e=o.$implicit,t=C();d(3),mn(" ",Mo(4,6,e.vramUsed,"1.0-0")," / ",Mo(5,9,e.vramTotal,"1.0-0")," GB "),d(4),Ne("width",t.vramPercent(e),"%")("background",t.colorForUsage(t.vramPercent(e)))}}function Cb(i,o){if(i&1&&(l(0,"td",24)(1,"div",25)(2,"span",26),u(3),c(),l(4,"div",27),v(5,"div",28),c()()()),i&2){let e=o.$implicit,t=C();d(2),Ne("color",t.colorForUsage(e.usage)),d(),be(" ",e.usage,"% "),d(2),Ne("width",e.usage,"%")("background",t.colorForUsage(e.usage))}}function xb(i,o){if(i&1&&(l(0,"td",29)(1,"span",30),u(2),c()()),i&2){let e=o.$implicit,t=C();d(),Ne("color",t.colorForTemp(e.temperature)),d(),be(" ",e.temperature,"\xB0C ")}}function wb(i,o){if(i&1&&(l(0,"td",31),u(1),c()),i&2){let e=o.$implicit;d(),Z(e.pciBusId)}}function Db(i,o){if(i&1&&(l(0,"td",32),u(1),c()),i&2){let e=o.$implicit,t=C();d(),Z(t.getEngineNames(e))}}function kb(i,o){i&1&&v(0,"tr",33)}var mh=(()=>{class i{constructor(){this.gpus=jn.required(),this.displayedColumns=["index","name","vram","usage","temperature","pciBusId","engineNames"]}getVendorCssClass(e){return{"gpu-name":!0,"gpu-vendor-nvidia":e.vendor==="NVIDIA","gpu-vendor-amd":e.vendor==="AMD","gpu-vendor-other":!["NVIDIA","AMD"].includes(e.vendor)}}vramPercent(e){return e.vramTotal===0?0:Math.round(e.vramUsed/e.vramTotal*100)}colorForUsage(e){return e<40?"#4caf50":e<75?"#ff9800":"#f44336"}colorForTemp(e){return e<60?"#4caf50":e<80?"#ff9800":"#f44336"}getEngineNames(e){let t=[];return e.engineCudaName&&t.push(e.engineCudaName),e.engineRocmName&&t.push(e.engineRocmName),e.engineVulkanName&&t.push(e.engineVulkanName),t.length>0?t.join(", "):"\u2014"}makeGpuNameShort(e){return e=e.replace(/^AMD Radeon RX /,"RX "),e}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-gpu-table"]],inputs:{gpus:[1,"gpus"]},decls:18,vars:2,consts:[["mat-table","",1,"gpu-table",3,"dataSource"],["matColumnDef","index"],["mat-cell","","title","#",4,"matCellDef"],["matColumnDef","name"],["mat-cell","","title","Name",4,"matCellDef"],["matColumnDef","vram"],["mat-cell","","title","VRAM",4,"matCellDef"],["matColumnDef","usage"],["mat-cell","","title","GPU Usage",4,"matCellDef"],["matColumnDef","temperature"],["mat-cell","","title","Temp \xB0C",4,"matCellDef"],["matColumnDef","pciBusId"],["mat-cell","","class","pci-cell","title","PCI Bus",4,"matCellDef"],["matColumnDef","engineNames"],["mat-cell","","title","Engine Names",4,"matCellDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-cell","","title","#"],["mat-cell","","title","Name"],[1,"gpu-name",3,"ngClass"],["mat-cell","","title","VRAM"],[1,"vram-cell"],[1,"vram-text"],[1,"vram-bar-bg"],[1,"vram-bar-fill"],["mat-cell","","title","GPU Usage"],[1,"usage-cell"],[1,"usage-value"],[1,"usage-bar-bg"],[1,"usage-bar-fill"],["mat-cell","","title","Temp \xB0C"],[1,"temp-value"],["mat-cell","","title","PCI Bus",1,"pci-cell"],["mat-cell","","title","Engine Names"],["mat-row",""]],template:function(t,n){t&1&&(l(0,"mat-card")(1,"mat-card-content")(2,"table",0),Nt(3,1),Re(4,bb,2,1,"td",2),Lt(),Nt(5,3),Re(6,vb,3,2,"td",4),Lt(),Nt(7,5),Re(8,yb,8,12,"td",6),Lt(),Nt(9,7),Re(10,Cb,6,7,"td",8),Lt(),Nt(11,9),Re(12,xb,3,3,"td",10),Lt(),Nt(13,11),Re(14,wb,2,1,"td",12),Lt(),Nt(15,13),Re(16,Db,2,1,"td",14),Lt(),Re(17,kb,1,0,"tr",15),c()()()),t&2&&(d(2),w("dataSource",n.gpus()),d(15),w("matRowDefColumns",n.displayedColumns))},dependencies:[Ge,Gs,ih,Xu,Qu,Zu,eh,Ju,th,Hi,zi,ji,ho,ha,qs],styles:[".gpu-table[_ngcontent-%COMP%]{width:100%;white-space:nowrap}.gpu-name[_ngcontent-%COMP%]{font-weight:500}.gpu-vendor-nvidia[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #a4f021}.gpu-vendor-amd[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #ffa1a1}.gpu-vendor-other[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #b6e7ff}.pci-cell[_ngcontent-%COMP%]{font-family:Roboto Mono,monospace;font-size:.85rem;color:#666}.vram-cell[_ngcontent-%COMP%]{min-width:160px}.vram-text[_ngcontent-%COMP%]{display:block;margin-bottom:4px;font-size:.85rem}.vram-bar-bg[_ngcontent-%COMP%]{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.vram-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:4px;transition:width .4s ease,background .4s ease}.usage-cell[_ngcontent-%COMP%]{min-width:130px}.usage-value[_ngcontent-%COMP%]{display:block;margin-bottom:4px;font-weight:500;font-size:.9rem}.usage-bar-bg[_ngcontent-%COMP%]{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.usage-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:4px;transition:width .4s ease,background .4s ease}.temp-value[_ngcontent-%COMP%]{font-weight:500;font-size:.95rem}.mat-row[_ngcontent-%COMP%]{transition:background .2s ease;height:44px}.mat-row[_ngcontent-%COMP%]:hover{background:#fafafa}mat-card-content[_ngcontent-%COMP%]{overflow-x:hidden}"]})}}return i})();var pa=class{_attachedHost=null;attach(o){return this._attachedHost=o,o.attach(this)}detach(){let o=this._attachedHost;o!=null&&(this._attachedHost=null,o.detach())}get isAttached(){return this._attachedHost!=null}setAttachedHost(o){this._attachedHost=o}},li=class extends pa{component;viewContainerRef;injector;projectableNodes;bindings;directives;constructor(o,e,t,n,a,r){super(),this.component=o,this.viewContainerRef=e,this.injector=t,this.projectableNodes=n,this.bindings=a||null,this.directives=r||null}},Ct=class extends pa{templateRef;viewContainerRef;context;injector;constructor(o,e,t,n){super(),this.templateRef=o,this.viewContainerRef=e,this.context=t,this.injector=n}get origin(){return this.templateRef.elementRef}attach(o,e=this.context){return this.context=e,super.attach(o)}detach(){return this.context=void 0,super.detach()}},ac=class extends pa{element;constructor(o){super(),this.element=o instanceof O?o.nativeElement:o}},Ji=class{_attachedPortal=null;_disposeFn=null;_isDisposed=!1;hasAttached(){return!!this._attachedPortal}attach(o){if(o instanceof li)return this._attachedPortal=o,this.attachComponentPortal(o);if(o instanceof Ct)return this._attachedPortal=o,this.attachTemplatePortal(o);if(this.attachDomPortal&&o instanceof ac)return this._attachedPortal=o,this.attachDomPortal(o)}attachDomPortal=null;detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(o){this._disposeFn=o}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}},fa=class extends Ji{outletElement;_appRef;_defaultInjector;constructor(o,e,t){super(),this.outletElement=o,this._appRef=e,this._defaultInjector=t}attachComponentPortal(o){let e;if(o.viewContainerRef){let t=o.injector||o.viewContainerRef.injector,n=t.get(Na,null,{optional:!0})||void 0;e=o.viewContainerRef.createComponent(o.component,{index:o.viewContainerRef.length,injector:t,ngModuleRef:n,projectableNodes:o.projectableNodes||void 0,bindings:o.bindings||void 0,directives:o.directives||void 0}),this.setDisposeFn(()=>e.destroy())}else{let t=this._appRef,n=o.injector||this._defaultInjector||q.NULL,a=n.get(ei,t.injector);e=Va(o.component,{elementInjector:n,environmentInjector:a,projectableNodes:o.projectableNodes||void 0,bindings:o.bindings||void 0,directives:o.directives||void 0}),t.attachView(e.hostView),this.setDisposeFn(()=>{t.viewCount>0&&t.detachView(e.hostView),e.destroy()})}return this.outletElement.appendChild(this._getComponentRootNode(e)),this._attachedPortal=o,e}attachTemplatePortal(o){let e=o.viewContainerRef,t=e.createEmbeddedView(o.templateRef,o.context,{injector:o.injector});return t.rootNodes.forEach(n=>this.outletElement.appendChild(n)),t.detectChanges(),this.setDisposeFn(()=>{let n=e.indexOf(t);n!==-1&&e.remove(n)}),this._attachedPortal=o,t}attachDomPortal=o=>{let e=o.element;e.parentNode;let t=this.outletElement.ownerDocument.createComment("dom-portal");e.parentNode.insertBefore(t,e),this.outletElement.appendChild(e),this._attachedPortal=o,super.setDisposeFn(()=>{t.parentNode&&t.parentNode.replaceChild(e,t)})};dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(o){return o.hostView.rootNodes[0]}};var vi=(()=>{class i extends Ji{_moduleRef=s(Na,{optional:!0});_document=s(G);_viewContainerRef=s(qe);_isInitialized=!1;_attachedRef=null;get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}attached=new $;get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(e){e.setAttachedHost(this);let t=e.viewContainerRef!=null?e.viewContainerRef:this._viewContainerRef,n=t.createComponent(e.component,{index:t.length,injector:e.injector||t.injector,projectableNodes:e.projectableNodes||void 0,ngModuleRef:this._moduleRef||void 0,bindings:e.bindings||void 0,directives:e.directives||void 0});return t!==this._viewContainerRef&&this._getRootNode().appendChild(n.hostView.rootNodes[0]),super.setDisposeFn(()=>n.destroy()),this._attachedPortal=e,this._attachedRef=n,this.attached.emit(n),n}attachTemplatePortal(e){e.setAttachedHost(this);let t=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context,{injector:e.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=t,this.attached.emit(t),t}attachDomPortal=e=>{let t=e.element;t.parentNode;let n=this._document.createComment("dom-portal");e.setAttachedHost(this),t.parentNode.insertBefore(n,t),this._getRootNode().appendChild(t),this._attachedPortal=e,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(t,n)})};_getRootNode(){let e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:[0,"cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[X]})}return i})(),yi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();var uh=hr();function go(i){return new Wr(i.get(Rt),i.get(G))}var Wr=class{_viewportRuler;_previousHTMLStyles={top:"",left:""};_previousScrollPosition;_isEnabled=!1;_document;constructor(o,e){this._viewportRuler=o,this._document=e}attach(){}enable(){if(this._canBeEnabled()){let o=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=o.style.left||"",this._previousHTMLStyles.top=o.style.top||"",o.style.left=Xe(-this._previousScrollPosition.left),o.style.top=Xe(-this._previousScrollPosition.top),o.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){let o=this._document.documentElement,e=this._document.body,t=o.style,n=e.style,a=t.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,t.left=this._previousHTMLStyles.left,t.top=this._previousHTMLStyles.top,o.classList.remove("cdk-global-scrollblock"),uh&&(t.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),uh&&(t.scrollBehavior=a,n.scrollBehavior=r)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;let e=this._document.documentElement,t=this._viewportRuler.getViewportSize();return e.scrollHeight>t.height||e.scrollWidth>t.width}};function vh(i,o){return new qr(i.get(Qi),i.get(j),i.get(Rt),o)}var qr=class{_scrollDispatcher;_ngZone;_viewportRuler;_config;_scrollSubscription=null;_overlayRef;_initialScrollPosition;constructor(o,e,t,n){this._scrollDispatcher=o,this._ngZone=e,this._viewportRuler=t,this._config=n}attach(o){this._overlayRef,this._overlayRef=o}enable(){if(this._scrollSubscription)return;let o=this._scrollDispatcher.scrolled(0).pipe(pe(e=>!e||!this._overlayRef.overlayElement.contains(e.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=o.subscribe(()=>{let e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=o.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}_detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}};var ga=class{enable(){}disable(){}attach(){}};function rc(i,o){return o.some(e=>{let t=i.bottom<e.top,n=i.top>e.bottom,a=i.right<e.left,r=i.left>e.right;return t||n||a||r})}function hh(i,o){return o.some(e=>{let t=i.top<e.top,n=i.bottom>e.bottom,a=i.left<e.left,r=i.right>e.right;return t||n||a||r})}function ci(i,o){return new Kr(i.get(Qi),i.get(Rt),i.get(j),o)}var Kr=class{_scrollDispatcher;_viewportRuler;_ngZone;_config;_scrollSubscription=null;_overlayRef;constructor(o,e,t,n){this._scrollDispatcher=o,this._viewportRuler=e,this._ngZone=t,this._config=n}attach(o){this._overlayRef,this._overlayRef=o}enable(){if(!this._scrollSubscription){let o=this._config?this._config.scrollThrottle:0;this._scrollSubscription=this._scrollDispatcher.scrolled(o).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){let e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:t,height:n}=this._viewportRuler.getViewportSize();rc(e,[{width:t,height:n,bottom:n,right:t,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}})}}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}},yh=(()=>{class i{_injector=s(q);noop=()=>new ga;close=e=>vh(this._injector,e);block=()=>go(this._injector);reposition=e=>ci(this._injector,e);static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Ft=class{positionStrategy;scrollStrategy=new ga;panelClass="";hasBackdrop=!1;backdropClass="cdk-overlay-dark-backdrop";disableAnimations;width;height;minWidth;minHeight;maxWidth;maxHeight;direction;disposeOnNavigation=!1;usePopover;eventPredicate;constructor(o){if(o){let e=Object.keys(o);for(let t of e)o[t]!==void 0&&(this[t]=o[t])}}};var Yr=class{connectionPair;scrollableViewProperties;constructor(o,e){this.connectionPair=o,this.scrollableViewProperties=e}};var Ch=(()=>{class i{_attachedOverlays=[];_document=s(G);_isAttached=!1;ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){let t=this._attachedOverlays.indexOf(e);t>-1&&this._attachedOverlays.splice(t,1),this._attachedOverlays.length===0&&this.detach()}canReceiveEvent(e,t,n){return n.observers.length<1?!1:e.eventPredicate?e.eventPredicate(t):!0}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),xh=(()=>{class i extends Ch{_ngZone=s(j);_renderer=s(et).createRenderer(null,null);_cleanupKeydown;add(e){super.add(e),this._isAttached||(this._ngZone.runOutsideAngular(()=>{this._cleanupKeydown=this._renderer.listen("body","keydown",this._keydownListener)}),this._isAttached=!0)}detach(){this._isAttached&&(this._cleanupKeydown?.(),this._isAttached=!1)}_keydownListener=e=>{let t=this._attachedOverlays;for(let n=t.length-1;n>-1;n--){let a=t[n];if(this.canReceiveEvent(a,e,a._keydownEvents)){this._ngZone.run(()=>a._keydownEvents.next(e));break}}};static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),wh=(()=>{class i extends Ch{_platform=s(se);_ngZone=s(j);_renderer=s(et).createRenderer(null,null);_cursorOriginalValue;_cursorStyleIsSet=!1;_pointerDownEventTarget=null;_cleanups;add(e){if(super.add(e),!this._isAttached){let t=this._document.body,n={capture:!0},a=this._renderer;this._cleanups=this._ngZone.runOutsideAngular(()=>[a.listen(t,"pointerdown",this._pointerDownListener,n),a.listen(t,"click",this._clickListener,n),a.listen(t,"auxclick",this._clickListener,n),a.listen(t,"contextmenu",this._clickListener,n)]),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){this._isAttached&&(this._cleanups?.forEach(e=>e()),this._cleanups=void 0,this._platform.IOS&&this._cursorStyleIsSet&&(this._document.body.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1)}_pointerDownListener=e=>{this._pointerDownEventTarget=it(e)};_clickListener=e=>{let t=it(e),n=e.type==="click"&&this._pointerDownEventTarget?this._pointerDownEventTarget:t;this._pointerDownEventTarget=null;let a=this._attachedOverlays.slice();for(let r=a.length-1;r>-1;r--){let m=a[r],h=m._outsidePointerEvents;if(!(!m.hasAttached()||!this.canReceiveEvent(m,e,h))){if(ph(m.overlayElement,t)||ph(m.overlayElement,n))break;this._ngZone?this._ngZone.run(()=>h.next(e)):h.next(e)}}};static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function ph(i,o){let e=typeof ShadowRoot<"u"&&ShadowRoot,t=o;for(;t;){if(t===i)return!0;t=e&&t instanceof ShadowRoot?t.host:t.parentNode}return!1}var Dh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["ng-component"]],hostAttrs:["cdk-overlay-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`.cdk-overlay-container, .cdk-global-overlay-wrapper {
|
|
3019
|
+
`],encapsulation:2})}return i})();var po=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[lo,{provide:_b,useValue:{separatorKeyCodes:[13]}}],imports:[bi,Q]})}return i})();function vb(i,o){if(i&1&&(l(0,"td",16),u(1),c()),i&2){let e=o.$implicit;d(),Z(e.index)}}function yb(i,o){if(i&1&&(l(0,"td",17)(1,"mat-chip",18),u(2),c()()),i&2){let e=o.$implicit,t=C();d(),w("ngClass",t.getVendorCssClass(e)),d(),ye(" ",t.makeGpuNameShort(e.name)+" / "+e.brand," ")}}function Cb(i,o){if(i&1&&(l(0,"td",19)(1,"div",20)(2,"span",21),u(3),Mo(4,"number"),Mo(5,"number"),c(),l(6,"div",22),v(7,"div",23),c()()()),i&2){let e=o.$implicit,t=C();d(3),mn(" ",Ao(4,6,e.vramUsed,"1.0-0")," / ",Ao(5,9,e.vramTotal,"1.0-0")," GB "),d(4),Ne("width",t.vramPercent(e),"%")("background",t.colorForUsage(t.vramPercent(e)))}}function xb(i,o){if(i&1&&(l(0,"td",24)(1,"div",25)(2,"span",26),u(3),c(),l(4,"div",27),v(5,"div",28),c()()()),i&2){let e=o.$implicit,t=C();d(2),Ne("color",t.colorForUsage(e.usage)),d(),ye(" ",e.usage,"% "),d(2),Ne("width",e.usage,"%")("background",t.colorForUsage(e.usage))}}function wb(i,o){if(i&1&&(l(0,"td",29)(1,"span",30),u(2),c()()),i&2){let e=o.$implicit,t=C();d(),Ne("color",t.colorForTemp(e.temperature)),d(),ye(" ",e.temperature,"\xB0C ")}}function Db(i,o){if(i&1&&(l(0,"td",31),u(1),c()),i&2){let e=o.$implicit;d(),Z(e.pciBusId)}}function kb(i,o){if(i&1){let e=Ve();l(0,"td",32)(1,"mat-form-field",33)(2,"input",34),I("input",function(n){let a=pe(e).$implicit,r=C();return fe(r.onEditInput(a,n))})("keydown.enter",function(){let n=pe(e).$implicit,a=C();return fe(a.commitEdit(n))})("blur",function(){let n=pe(e).$implicit,a=C();return fe(a.commitEdit(n))}),c()()()}if(i&2){let e=o.$implicit,t=C();d(2),w("value",t.editValue(e))("disabled",!e.pciBusId)}}function Sb(i,o){i&1&&v(0,"tr",35)}var uh=(()=>{class i{constructor(){this.gpus=jn.required(),this.gpuLabelChange=Qc(),this.editValues=new Map,this.displayedColumns=["index","name","vram","usage","temperature","pciBusId","gpuLabel"]}getVendorCssClass(e){return{"gpu-name":!0,"gpu-vendor-nvidia":e.vendor==="NVIDIA","gpu-vendor-amd":e.vendor==="AMD","gpu-vendor-other":!["NVIDIA","AMD"].includes(e.vendor)}}vramPercent(e){return e.vramTotal===0?0:Math.round(e.vramUsed/e.vramTotal*100)}colorForUsage(e){return e<40?"#4caf50":e<75?"#ff9800":"#f44336"}colorForTemp(e){return e<60?"#4caf50":e<80?"#ff9800":"#f44336"}editValue(e){return this.editValues.get(e.pciBusId)??e.gpuLabel}onEditInput(e,t){this.editValues.set(e.pciBusId,t.target.value)}commitEdit(e){let t=this.editValues.get(e.pciBusId);if(t===void 0)return;this.editValues.delete(e.pciBusId);let n=t.trim();n!==e.gpuLabel.trim()&&this.gpuLabelChange.emit({pciBusId:e.pciBusId,gpuLabel:n})}makeGpuNameShort(e){return e=e.replace(/^AMD Radeon RX /,"RX "),e}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-gpu-table"]],inputs:{gpus:[1,"gpus"]},outputs:{gpuLabelChange:"gpuLabelChange"},decls:18,vars:2,consts:[["mat-table","",1,"gpu-table",3,"dataSource"],["matColumnDef","index"],["mat-cell","","title","#",4,"matCellDef"],["matColumnDef","name"],["mat-cell","","title","Name",4,"matCellDef"],["matColumnDef","vram"],["mat-cell","","title","VRAM",4,"matCellDef"],["matColumnDef","usage"],["mat-cell","","title","GPU Usage",4,"matCellDef"],["matColumnDef","temperature"],["mat-cell","","title","Temp \xB0C",4,"matCellDef"],["matColumnDef","pciBusId"],["mat-cell","","class","pci-cell","title","PCI Bus",4,"matCellDef"],["matColumnDef","gpuLabel"],["mat-cell","","title","GPU Label","class","gpu-label-cell",4,"matCellDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-cell","","title","#"],["mat-cell","","title","Name"],[1,"gpu-name",3,"ngClass"],["mat-cell","","title","VRAM"],[1,"vram-cell"],[1,"vram-text"],[1,"vram-bar-bg"],[1,"vram-bar-fill"],["mat-cell","","title","GPU Usage"],[1,"usage-cell"],[1,"usage-value"],[1,"usage-bar-bg"],[1,"usage-bar-fill"],["mat-cell","","title","Temp \xB0C"],[1,"temp-value"],["mat-cell","","title","PCI Bus",1,"pci-cell"],["mat-cell","","title","GPU Label",1,"gpu-label-cell"],["appearance","outline","subscriptSizing","dynamic",1,"gpu-label-field"],["matInput","","placeholder","\u2014",3,"input","keydown.enter","blur","value","disabled"],["mat-row",""]],template:function(t,n){t&1&&(l(0,"mat-card")(1,"mat-card-content")(2,"table",0),Nt(3,1),Re(4,vb,2,1,"td",2),Lt(),Nt(5,3),Re(6,yb,3,2,"td",4),Lt(),Nt(7,5),Re(8,Cb,8,12,"td",6),Lt(),Nt(9,7),Re(10,xb,6,7,"td",8),Lt(),Nt(11,9),Re(12,wb,3,3,"td",10),Lt(),Nt(13,11),Re(14,Db,2,1,"td",12),Lt(),Nt(15,13),Re(16,kb,3,2,"td",14),Lt(),Re(17,Sb,1,0,"tr",15),c()()()),t&2&&(d(2),w("dataSource",n.gpus()),d(15),w("matRowDefColumns",n.displayedColumns))},dependencies:[$e,Gs,nh,Zu,Ju,Qu,th,eh,ih,Hi,zi,ji,po,ha,$t,Gt,yt,Ct,qs],styles:['@charset "UTF-8";.gpu-table[_ngcontent-%COMP%]{width:100%;white-space:nowrap}.gpu-name[_ngcontent-%COMP%]{font-weight:500}.gpu-vendor-nvidia[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #a4f021}.gpu-vendor-amd[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #ffa1a1}.gpu-vendor-other[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #b6e7ff}.pci-cell[_ngcontent-%COMP%]{font-family:Roboto Mono,monospace;font-size:.85rem;color:#666}.vram-cell[_ngcontent-%COMP%]{min-width:160px}.vram-text[_ngcontent-%COMP%]{display:block;margin-bottom:4px;font-size:.85rem}.vram-bar-bg[_ngcontent-%COMP%]{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.vram-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:4px;transition:width .4s ease,background .4s ease}.usage-cell[_ngcontent-%COMP%]{min-width:130px}.usage-value[_ngcontent-%COMP%]{display:block;margin-bottom:4px;font-weight:500;font-size:.9rem}.usage-bar-bg[_ngcontent-%COMP%]{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.usage-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:4px;transition:width .4s ease,background .4s ease}.temp-value[_ngcontent-%COMP%]{font-weight:500;font-size:.95rem}.gpu-label-field[_ngcontent-%COMP%]{width:100%;min-width:160px}.gpu-label-field[_ngcontent-%COMP%] .mat-mdc-form-field-infix{min-height:0;padding-top:8px;padding-bottom:8px}.gpu-label-field[_ngcontent-%COMP%] .mdc-text-field--outlined{padding-left:10px;padding-right:10px}.mat-row[_ngcontent-%COMP%]{transition:background .2s ease;height:44px}.mat-row[_ngcontent-%COMP%]:hover{background:#fafafa}mat-card-content[_ngcontent-%COMP%]{overflow-x:hidden}']})}}return i})();var pa=class{_attachedHost=null;attach(o){return this._attachedHost=o,o.attach(this)}detach(){let o=this._attachedHost;o!=null&&(this._attachedHost=null,o.detach())}get isAttached(){return this._attachedHost!=null}setAttachedHost(o){this._attachedHost=o}},di=class extends pa{component;viewContainerRef;injector;projectableNodes;bindings;directives;constructor(o,e,t,n,a,r){super(),this.component=o,this.viewContainerRef=e,this.injector=t,this.projectableNodes=n,this.bindings=a||null,this.directives=r||null}},wt=class extends pa{templateRef;viewContainerRef;context;injector;constructor(o,e,t,n){super(),this.templateRef=o,this.viewContainerRef=e,this.context=t,this.injector=n}get origin(){return this.templateRef.elementRef}attach(o,e=this.context){return this.context=e,super.attach(o)}detach(){return this.context=void 0,super.detach()}},ac=class extends pa{element;constructor(o){super(),this.element=o instanceof O?o.nativeElement:o}},Ji=class{_attachedPortal=null;_disposeFn=null;_isDisposed=!1;hasAttached(){return!!this._attachedPortal}attach(o){if(o instanceof di)return this._attachedPortal=o,this.attachComponentPortal(o);if(o instanceof wt)return this._attachedPortal=o,this.attachTemplatePortal(o);if(this.attachDomPortal&&o instanceof ac)return this._attachedPortal=o,this.attachDomPortal(o)}attachDomPortal=null;detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(o){this._disposeFn=o}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}},fa=class extends Ji{outletElement;_appRef;_defaultInjector;constructor(o,e,t){super(),this.outletElement=o,this._appRef=e,this._defaultInjector=t}attachComponentPortal(o){let e;if(o.viewContainerRef){let t=o.injector||o.viewContainerRef.injector,n=t.get(Na,null,{optional:!0})||void 0;e=o.viewContainerRef.createComponent(o.component,{index:o.viewContainerRef.length,injector:t,ngModuleRef:n,projectableNodes:o.projectableNodes||void 0,bindings:o.bindings||void 0,directives:o.directives||void 0}),this.setDisposeFn(()=>e.destroy())}else{let t=this._appRef,n=o.injector||this._defaultInjector||q.NULL,a=n.get(ii,t.injector);e=Va(o.component,{elementInjector:n,environmentInjector:a,projectableNodes:o.projectableNodes||void 0,bindings:o.bindings||void 0,directives:o.directives||void 0}),t.attachView(e.hostView),this.setDisposeFn(()=>{t.viewCount>0&&t.detachView(e.hostView),e.destroy()})}return this.outletElement.appendChild(this._getComponentRootNode(e)),this._attachedPortal=o,e}attachTemplatePortal(o){let e=o.viewContainerRef,t=e.createEmbeddedView(o.templateRef,o.context,{injector:o.injector});return t.rootNodes.forEach(n=>this.outletElement.appendChild(n)),t.detectChanges(),this.setDisposeFn(()=>{let n=e.indexOf(t);n!==-1&&e.remove(n)}),this._attachedPortal=o,t}attachDomPortal=o=>{let e=o.element;e.parentNode;let t=this.outletElement.ownerDocument.createComment("dom-portal");e.parentNode.insertBefore(t,e),this.outletElement.appendChild(e),this._attachedPortal=o,super.setDisposeFn(()=>{t.parentNode&&t.parentNode.replaceChild(e,t)})};dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(o){return o.hostView.rootNodes[0]}};var vi=(()=>{class i extends Ji{_moduleRef=s(Na,{optional:!0});_document=s(G);_viewContainerRef=s(Ke);_isInitialized=!1;_attachedRef=null;get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}attached=new $;get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(e){e.setAttachedHost(this);let t=e.viewContainerRef!=null?e.viewContainerRef:this._viewContainerRef,n=t.createComponent(e.component,{index:t.length,injector:e.injector||t.injector,projectableNodes:e.projectableNodes||void 0,ngModuleRef:this._moduleRef||void 0,bindings:e.bindings||void 0,directives:e.directives||void 0});return t!==this._viewContainerRef&&this._getRootNode().appendChild(n.hostView.rootNodes[0]),super.setDisposeFn(()=>n.destroy()),this._attachedPortal=e,this._attachedRef=n,this.attached.emit(n),n}attachTemplatePortal(e){e.setAttachedHost(this);let t=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context,{injector:e.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=t,this.attached.emit(t),t}attachDomPortal=e=>{let t=e.element;t.parentNode;let n=this._document.createComment("dom-portal");e.setAttachedHost(this),t.parentNode.insertBefore(n,t),this._getRootNode().appendChild(t),this._attachedPortal=e,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(t,n)})};_getRootNode(){let e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:[0,"cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[X]})}return i})(),yi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();var hh=hr();function _o(i){return new Wr(i.get(Rt),i.get(G))}var Wr=class{_viewportRuler;_previousHTMLStyles={top:"",left:""};_previousScrollPosition;_isEnabled=!1;_document;constructor(o,e){this._viewportRuler=o,this._document=e}attach(){}enable(){if(this._canBeEnabled()){let o=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=o.style.left||"",this._previousHTMLStyles.top=o.style.top||"",o.style.left=Xe(-this._previousScrollPosition.left),o.style.top=Xe(-this._previousScrollPosition.top),o.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){let o=this._document.documentElement,e=this._document.body,t=o.style,n=e.style,a=t.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,t.left=this._previousHTMLStyles.left,t.top=this._previousHTMLStyles.top,o.classList.remove("cdk-global-scrollblock"),hh&&(t.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),hh&&(t.scrollBehavior=a,n.scrollBehavior=r)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;let e=this._document.documentElement,t=this._viewportRuler.getViewportSize();return e.scrollHeight>t.height||e.scrollWidth>t.width}};function yh(i,o){return new qr(i.get(Qi),i.get(j),i.get(Rt),o)}var qr=class{_scrollDispatcher;_ngZone;_viewportRuler;_config;_scrollSubscription=null;_overlayRef;_initialScrollPosition;constructor(o,e,t,n){this._scrollDispatcher=o,this._ngZone=e,this._viewportRuler=t,this._config=n}attach(o){this._overlayRef,this._overlayRef=o}enable(){if(this._scrollSubscription)return;let o=this._scrollDispatcher.scrolled(0).pipe(ge(e=>!e||!this._overlayRef.overlayElement.contains(e.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=o.subscribe(()=>{let e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=o.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}_detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}};var ga=class{enable(){}disable(){}attach(){}};function rc(i,o){return o.some(e=>{let t=i.bottom<e.top,n=i.top>e.bottom,a=i.right<e.left,r=i.left>e.right;return t||n||a||r})}function ph(i,o){return o.some(e=>{let t=i.top<e.top,n=i.bottom>e.bottom,a=i.left<e.left,r=i.right>e.right;return t||n||a||r})}function mi(i,o){return new Kr(i.get(Qi),i.get(Rt),i.get(j),o)}var Kr=class{_scrollDispatcher;_viewportRuler;_ngZone;_config;_scrollSubscription=null;_overlayRef;constructor(o,e,t,n){this._scrollDispatcher=o,this._viewportRuler=e,this._ngZone=t,this._config=n}attach(o){this._overlayRef,this._overlayRef=o}enable(){if(!this._scrollSubscription){let o=this._config?this._config.scrollThrottle:0;this._scrollSubscription=this._scrollDispatcher.scrolled(o).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){let e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:t,height:n}=this._viewportRuler.getViewportSize();rc(e,[{width:t,height:n,bottom:n,right:t,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}})}}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}},Ch=(()=>{class i{_injector=s(q);noop=()=>new ga;close=e=>yh(this._injector,e);block=()=>_o(this._injector);reposition=e=>mi(this._injector,e);static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Ft=class{positionStrategy;scrollStrategy=new ga;panelClass="";hasBackdrop=!1;backdropClass="cdk-overlay-dark-backdrop";disableAnimations;width;height;minWidth;minHeight;maxWidth;maxHeight;direction;disposeOnNavigation=!1;usePopover;eventPredicate;constructor(o){if(o){let e=Object.keys(o);for(let t of e)o[t]!==void 0&&(this[t]=o[t])}}};var Yr=class{connectionPair;scrollableViewProperties;constructor(o,e){this.connectionPair=o,this.scrollableViewProperties=e}};var xh=(()=>{class i{_attachedOverlays=[];_document=s(G);_isAttached=!1;ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){let t=this._attachedOverlays.indexOf(e);t>-1&&this._attachedOverlays.splice(t,1),this._attachedOverlays.length===0&&this.detach()}canReceiveEvent(e,t,n){return n.observers.length<1?!1:e.eventPredicate?e.eventPredicate(t):!0}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),wh=(()=>{class i extends xh{_ngZone=s(j);_renderer=s(et).createRenderer(null,null);_cleanupKeydown;add(e){super.add(e),this._isAttached||(this._ngZone.runOutsideAngular(()=>{this._cleanupKeydown=this._renderer.listen("body","keydown",this._keydownListener)}),this._isAttached=!0)}detach(){this._isAttached&&(this._cleanupKeydown?.(),this._isAttached=!1)}_keydownListener=e=>{let t=this._attachedOverlays;for(let n=t.length-1;n>-1;n--){let a=t[n];if(this.canReceiveEvent(a,e,a._keydownEvents)){this._ngZone.run(()=>a._keydownEvents.next(e));break}}};static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Dh=(()=>{class i extends xh{_platform=s(se);_ngZone=s(j);_renderer=s(et).createRenderer(null,null);_cursorOriginalValue;_cursorStyleIsSet=!1;_pointerDownEventTarget=null;_cleanups;add(e){if(super.add(e),!this._isAttached){let t=this._document.body,n={capture:!0},a=this._renderer;this._cleanups=this._ngZone.runOutsideAngular(()=>[a.listen(t,"pointerdown",this._pointerDownListener,n),a.listen(t,"click",this._clickListener,n),a.listen(t,"auxclick",this._clickListener,n),a.listen(t,"contextmenu",this._clickListener,n)]),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){this._isAttached&&(this._cleanups?.forEach(e=>e()),this._cleanups=void 0,this._platform.IOS&&this._cursorStyleIsSet&&(this._document.body.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1)}_pointerDownListener=e=>{this._pointerDownEventTarget=it(e)};_clickListener=e=>{let t=it(e),n=e.type==="click"&&this._pointerDownEventTarget?this._pointerDownEventTarget:t;this._pointerDownEventTarget=null;let a=this._attachedOverlays.slice();for(let r=a.length-1;r>-1;r--){let m=a[r],h=m._outsidePointerEvents;if(!(!m.hasAttached()||!this.canReceiveEvent(m,e,h))){if(fh(m.overlayElement,t)||fh(m.overlayElement,n))break;this._ngZone?this._ngZone.run(()=>h.next(e)):h.next(e)}}};static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function fh(i,o){let e=typeof ShadowRoot<"u"&&ShadowRoot,t=o;for(;t;){if(t===i)return!0;t=e&&t instanceof ShadowRoot?t.host:t.parentNode}return!1}var kh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["ng-component"]],hostAttrs:["cdk-overlay-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`.cdk-overlay-container, .cdk-global-overlay-wrapper {
|
|
3020
3020
|
pointer-events: none;
|
|
3021
3021
|
top: 0;
|
|
3022
3022
|
left: 0;
|
|
@@ -3155,14 +3155,14 @@ input.mat-mdc-chip-input {
|
|
|
3155
3155
|
position: fixed;
|
|
3156
3156
|
z-index: auto;
|
|
3157
3157
|
}
|
|
3158
|
-
`],encapsulation:2})}return i})(),Qr=(()=>{class i{_platform=s(se);_containerElement;_document=s(G);_styleLoader=s(Te);ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._loadStyles(),this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let e="cdk-overlay-container";if(this._platform.isBrowser||bl()){let n=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let a=0;a<n.length;a++)n[a].remove()}let t=this._document.createElement("div");t.classList.add(e),bl()?t.setAttribute("platform","test"):this._platform.isBrowser||t.setAttribute("platform","server"),this._document.body.appendChild(t),this._containerElement=t}_loadStyles(){this._styleLoader.load(Dh)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),sc=class{_renderer;_ngZone;element;_cleanupClick;_cleanupTransitionEnd;_fallbackTimeout;constructor(o,e,t,n){this._renderer=e,this._ngZone=t,this.element=o.createElement("div"),this.element.classList.add("cdk-overlay-backdrop"),this._cleanupClick=e.listen(this.element,"click",n)}detach(){this._ngZone.runOutsideAngular(()=>{let o=this.element;clearTimeout(this._fallbackTimeout),this._cleanupTransitionEnd?.(),this._cleanupTransitionEnd=this._renderer.listen(o,"transitionend",this.dispose),this._fallbackTimeout=setTimeout(this.dispose,500),o.style.pointerEvents="none",o.classList.remove("cdk-overlay-backdrop-showing")})}dispose=()=>{clearTimeout(this._fallbackTimeout),this._cleanupClick?.(),this._cleanupTransitionEnd?.(),this._cleanupClick=this._cleanupTransitionEnd=this._fallbackTimeout=void 0,this.element.remove()}};function lc(i){return i&&i.nodeType===1}var po=class{_portalOutlet;_host;_pane;_config;_ngZone;_keyboardDispatcher;_document;_location;_outsideClickDispatcher;_animationsDisabled;_injector;_renderer;_backdropClick=new M;_attachments=new M;_detachments=new M;_positionStrategy;_scrollStrategy;_locationChanges=_e.EMPTY;_backdropRef=null;_detachContentMutationObserver;_detachContentAfterRenderRef;_disposed=!1;_previousHostParent;_keydownEvents=new M;_outsidePointerEvents=new M;_afterNextRenderRef;constructor(o,e,t,n,a,r,m,h,g,_=!1,y,L){this._portalOutlet=o,this._host=e,this._pane=t,this._config=n,this._ngZone=a,this._keyboardDispatcher=r,this._document=m,this._location=h,this._outsideClickDispatcher=g,this._animationsDisabled=_,this._injector=y,this._renderer=L,n.scrollStrategy&&(this._scrollStrategy=n.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=n.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropRef?.element||null}get hostElement(){return this._host}get eventPredicate(){return this._config?.eventPredicate||null}attach(o){if(this._disposed)return null;this._attachHost();let e=this._portalOutlet.attach(o);return this._positionStrategy?.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=Fe(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._completeDetachContent(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),typeof e?.onDestroy=="function"&&e.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();let o=this._portalOutlet.detach();return this._detachments.next(),this._completeDetachContent(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),o}dispose(){if(this._disposed)return;let o=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._backdropRef?.dispose(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=this._backdropRef=null,o&&this._detachments.next(),this._detachments.complete(),this._completeDetachContent(),this._disposed=!0}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(o){o!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=o,this.hasAttached()&&(o.attach(this),this.updatePosition()))}updateSize(o){this._config=B(B({},this._config),o),this._updateElementSize()}setDirection(o){this._config=Me(B({},this._config),{direction:o}),this._updateElementDirection()}addPanelClass(o){this._pane&&this._toggleClasses(this._pane,o,!0)}removePanelClass(o){this._pane&&this._toggleClasses(this._pane,o,!1)}getDirection(){let o=this._config.direction;return o?typeof o=="string"?o:o.value:"ltr"}updateScrollStrategy(o){o!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=o,this.hasAttached()&&(o.attach(this),o.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;let o=this._pane.style;o.width=Xe(this._config.width),o.height=Xe(this._config.height),o.minWidth=Xe(this._config.minWidth),o.minHeight=Xe(this._config.minHeight),o.maxWidth=Xe(this._config.maxWidth),o.maxHeight=Xe(this._config.maxHeight)}_togglePointerEvents(o){this._pane.style.pointerEvents=o?"":"none"}_attachHost(){if(!this._host.parentElement){let o=this._config.usePopover?this._positionStrategy?.getPopoverInsertionPoint?.():null;lc(o)?o.after(this._host):o?.type==="parent"?o.element.appendChild(this._host):this._previousHostParent?.appendChild(this._host)}if(this._config.usePopover)try{this._host.showPopover()}catch(o){}}_attachBackdrop(){let o="cdk-overlay-backdrop-showing";this._backdropRef?.dispose(),this._backdropRef=new sc(this._document,this._renderer,this._ngZone,e=>{this._backdropClick.next(e)}),this._animationsDisabled&&this._backdropRef.element.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropRef.element,this._config.backdropClass,!0),this._config.usePopover?this._host.prepend(this._backdropRef.element):this._host.parentElement.insertBefore(this._backdropRef.element,this._host),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this._backdropRef?.element.classList.add(o))}):this._backdropRef.element.classList.add(o)}_updateStackingOrder(){!this._config.usePopover&&this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){this._animationsDisabled?(this._backdropRef?.dispose(),this._backdropRef=null):this._backdropRef?.detach()}_toggleClasses(o,e,t){let n=Ei(e||[]).filter(a=>!!a);n.length&&(t?o.classList.add(...n):o.classList.remove(...n))}_detachContentWhenEmpty(){let o=!1;try{this._detachContentAfterRenderRef=Fe(()=>{o=!0,this._detachContent()},{injector:this._injector})}catch(e){if(o)throw e;this._detachContent()}globalThis.MutationObserver&&this._pane&&(this._detachContentMutationObserver||=new globalThis.MutationObserver(()=>{this._detachContent()}),this._detachContentMutationObserver.observe(this._pane,{childList:!0}))}_detachContent(){(!this._pane||!this._host||this._pane.children.length===0)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),this._completeDetachContent())}_completeDetachContent(){this._detachContentAfterRenderRef?.destroy(),this._detachContentAfterRenderRef=void 0,this._detachContentMutationObserver?.disconnect()}_disposeScrollStrategy(){let o=this._scrollStrategy;o?.disable(),o?.detach?.()}},fh="cdk-overlay-connected-position-bounding-box",Sb=/([A-Za-z%]+)$/;function Ti(i,o){return new Xr(o,i.get(Rt),i.get(G),i.get(se),i.get(Qr))}var Xr=class{_viewportRuler;_document;_platform;_overlayContainer;_overlayRef;_isInitialRender=!1;_lastBoundingBoxSize={width:0,height:0};_isPushed=!1;_canPush=!0;_growAfterOpen=!1;_hasFlexibleDimensions=!0;_positionLocked=!1;_originRect;_overlayRect;_viewportRect;_containerRect;_viewportMargin=0;_scrollables=[];_preferredPositions=[];_origin;_pane;_isDisposed=!1;_boundingBox=null;_lastPosition=null;_lastScrollVisibility=null;_positionChanges=new M;_resizeSubscription=_e.EMPTY;_offsetX=0;_offsetY=0;_transformOriginSelector;_appliedPanelClasses=[];_previousPushAmount=null;_popoverLocation="global";positionChanges=this._positionChanges;get positions(){return this._preferredPositions}constructor(o,e,t,n,a){this._viewportRuler=e,this._document=t,this._platform=n,this._overlayContainer=a,this.setOrigin(o)}attach(o){this._overlayRef&&this._overlayRef,this._validatePositions(),o.hostElement.classList.add(fh),this._overlayRef=o,this._boundingBox=o.hostElement,this._pane=o.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition){this.reapplyLastPosition();return}this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._getContainerRect();let o=this._originRect,e=this._overlayRect,t=this._viewportRect,n=this._containerRect,a=[],r;for(let m of this._preferredPositions){let h=this._getOriginPoint(o,n,m),g=this._getOverlayPoint(h,e,m),_=this._getOverlayFit(g,e,t,m);if(_.isCompletelyWithinViewport){this._isPushed=!1,this._applyPosition(m,h);return}if(this._canFitWithFlexibleDimensions(_,g,t)){a.push({position:m,origin:h,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(h,m)});continue}(!r||r.overlayFit.visibleArea<_.visibleArea)&&(r={overlayFit:_,overlayPoint:g,originPoint:h,position:m,overlayRect:e})}if(a.length){let m=null,h=-1;for(let g of a){let _=g.boundingBoxRect.width*g.boundingBoxRect.height*(g.position.weight||1);_>h&&(h=_,m=g)}this._isPushed=!1,this._applyPosition(m.position,m.origin);return}if(this._canPush){this._isPushed=!0,this._applyPosition(r.position,r.originPoint);return}this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&An(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(fh),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;let o=this._lastPosition;o?(this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._getContainerRect(),this._applyPosition(o,this._getOriginPoint(this._originRect,this._containerRect,o))):this.apply()}withScrollableContainers(o){return this._scrollables=o,this}withPositions(o){return this._preferredPositions=o,o.indexOf(this._lastPosition)===-1&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(o){return this._viewportMargin=o,this}withFlexibleDimensions(o=!0){return this._hasFlexibleDimensions=o,this}withGrowAfterOpen(o=!0){return this._growAfterOpen=o,this}withPush(o=!0){return this._canPush=o,this}withLockedPosition(o=!0){return this._positionLocked=o,this}setOrigin(o){return this._origin=o,this}withDefaultOffsetX(o){return this._offsetX=o,this}withDefaultOffsetY(o){return this._offsetY=o,this}withTransformOriginOn(o){return this._transformOriginSelector=o,this}withPopoverLocation(o){return this._popoverLocation=o,this}getPopoverInsertionPoint(){return this._popoverLocation==="global"?null:this._popoverLocation!=="inline"?this._popoverLocation:this._origin instanceof O?this._origin.nativeElement:lc(this._origin)?this._origin:null}_getOriginPoint(o,e,t){let n;if(t.originX=="center")n=o.left+o.width/2;else{let r=this._isRtl()?o.right:o.left,m=this._isRtl()?o.left:o.right;n=t.originX=="start"?r:m}e.left<0&&(n-=e.left);let a;return t.originY=="center"?a=o.top+o.height/2:a=t.originY=="top"?o.top:o.bottom,e.top<0&&(a-=e.top),{x:n,y:a}}_getOverlayPoint(o,e,t){let n;t.overlayX=="center"?n=-e.width/2:t.overlayX==="start"?n=this._isRtl()?-e.width:0:n=this._isRtl()?0:-e.width;let a;return t.overlayY=="center"?a=-e.height/2:a=t.overlayY=="top"?0:-e.height,{x:o.x+n,y:o.y+a}}_getOverlayFit(o,e,t,n){let a=_h(e),{x:r,y:m}=o,h=this._getOffset(n,"x"),g=this._getOffset(n,"y");h&&(r+=h),g&&(m+=g);let _=0-r,y=r+a.width-t.width,L=0-m,U=m+a.height-t.height,J=this._subtractOverflows(a.width,_,y),me=this._subtractOverflows(a.height,L,U),re=J*me;return{visibleArea:re,isCompletelyWithinViewport:a.width*a.height===re,fitsInViewportVertically:me===a.height,fitsInViewportHorizontally:J==a.width}}_canFitWithFlexibleDimensions(o,e,t){if(this._hasFlexibleDimensions){let n=t.bottom-e.y,a=t.right-e.x,r=gh(this._overlayRef.getConfig().minHeight),m=gh(this._overlayRef.getConfig().minWidth),h=o.fitsInViewportVertically||r!=null&&r<=n,g=o.fitsInViewportHorizontally||m!=null&&m<=a;return h&&g}return!1}_pushOverlayOnScreen(o,e,t){if(this._previousPushAmount&&this._positionLocked)return{x:o.x+this._previousPushAmount.x,y:o.y+this._previousPushAmount.y};let n=_h(e),a=this._viewportRect,r=Math.max(o.x+n.width-a.width,0),m=Math.max(o.y+n.height-a.height,0),h=Math.max(a.top-t.top-o.y,0),g=Math.max(a.left-t.left-o.x,0),_=0,y=0;return n.width<=a.width?_=g||-r:_=o.x<this._getViewportMarginStart()?a.left-t.left-o.x:0,n.height<=a.height?y=h||-m:y=o.y<this._getViewportMarginTop()?a.top-t.top-o.y:0,this._previousPushAmount={x:_,y},{x:o.x+_,y:o.y+y}}_applyPosition(o,e){if(this._setTransformOrigin(o),this._setOverlayElementStyles(e,o),this._setBoundingBoxStyles(e,o),o.panelClass&&this._addPanelClasses(o.panelClass),this._positionChanges.observers.length){let t=this._getScrollVisibility();if(o!==this._lastPosition||!this._lastScrollVisibility||!Eb(this._lastScrollVisibility,t)){let n=new Yr(o,t);this._positionChanges.next(n)}this._lastScrollVisibility=t}this._lastPosition=o,this._isInitialRender=!1}_setTransformOrigin(o){if(!this._transformOriginSelector)return;let e=this._boundingBox.querySelectorAll(this._transformOriginSelector),t,n=o.overlayY;o.overlayX==="center"?t="center":this._isRtl()?t=o.overlayX==="start"?"right":"left":t=o.overlayX==="start"?"left":"right";for(let a=0;a<e.length;a++)e[a].style.transformOrigin=`${t} ${n}`}_calculateBoundingBoxRect(o,e){let t=this._viewportRect,n=this._isRtl(),a,r,m;if(e.overlayY==="top")r=o.y,a=t.height-r+this._getViewportMarginBottom();else if(e.overlayY==="bottom")m=t.height-o.y+this._getViewportMarginTop()+this._getViewportMarginBottom(),a=t.height-m+this._getViewportMarginTop();else{let U=Math.min(t.bottom-o.y+t.top,o.y),J=this._lastBoundingBoxSize.height;a=U*2,r=o.y-U,a>J&&!this._isInitialRender&&!this._growAfterOpen&&(r=o.y-J/2)}let h=e.overlayX==="start"&&!n||e.overlayX==="end"&&n,g=e.overlayX==="end"&&!n||e.overlayX==="start"&&n,_,y,L;if(g)L=t.width-o.x+this._getViewportMarginStart()+this._getViewportMarginEnd(),_=o.x-this._getViewportMarginStart();else if(h)y=o.x,_=t.right-o.x-this._getViewportMarginEnd();else{let U=Math.min(t.right-o.x+t.left,o.x),J=this._lastBoundingBoxSize.width;_=U*2,y=o.x-U,_>J&&!this._isInitialRender&&!this._growAfterOpen&&(y=o.x-J/2)}return{top:r,left:y,bottom:m,right:L,width:_,height:a}}_setBoundingBoxStyles(o,e){let t=this._calculateBoundingBoxRect(o,e);!this._isInitialRender&&!this._growAfterOpen&&(t.height=Math.min(t.height,this._lastBoundingBoxSize.height),t.width=Math.min(t.width,this._lastBoundingBoxSize.width));let n={};if(this._hasExactPosition())n.top=n.left="0",n.bottom=n.right="auto",n.maxHeight=n.maxWidth="",n.width=n.height="100%";else{let a=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;n.width=Xe(t.width),n.height=Xe(t.height),n.top=Xe(t.top)||"auto",n.bottom=Xe(t.bottom)||"auto",n.left=Xe(t.left)||"auto",n.right=Xe(t.right)||"auto",e.overlayX==="center"?n.alignItems="center":n.alignItems=e.overlayX==="end"?"flex-end":"flex-start",e.overlayY==="center"?n.justifyContent="center":n.justifyContent=e.overlayY==="bottom"?"flex-end":"flex-start",a&&(n.maxHeight=Xe(a)),r&&(n.maxWidth=Xe(r))}this._lastBoundingBoxSize=t,An(this._boundingBox.style,n)}_resetBoundingBoxStyles(){An(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){An(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(o,e){let t={},n=this._hasExactPosition(),a=this._hasFlexibleDimensions,r=this._overlayRef.getConfig();if(n){let _=this._viewportRuler.getViewportScrollPosition();An(t,this._getExactOverlayY(e,o,_)),An(t,this._getExactOverlayX(e,o,_))}else t.position="static";let m="",h=this._getOffset(e,"x"),g=this._getOffset(e,"y");h&&(m+=`translateX(${h}px) `),g&&(m+=`translateY(${g}px)`),t.transform=m.trim(),r.maxHeight&&(n?t.maxHeight=Xe(r.maxHeight):a&&(t.maxHeight="")),r.maxWidth&&(n?t.maxWidth=Xe(r.maxWidth):a&&(t.maxWidth="")),An(this._pane.style,t)}_getExactOverlayY(o,e,t){let n={top:"",bottom:""},a=this._getOverlayPoint(e,this._overlayRect,o);if(this._isPushed&&(a=this._pushOverlayOnScreen(a,this._overlayRect,t)),o.overlayY==="bottom"){let r=this._document.documentElement.clientHeight;n.bottom=`${r-(a.y+this._overlayRect.height)}px`}else n.top=Xe(a.y);return n}_getExactOverlayX(o,e,t){let n={left:"",right:""},a=this._getOverlayPoint(e,this._overlayRect,o);this._isPushed&&(a=this._pushOverlayOnScreen(a,this._overlayRect,t));let r;if(this._isRtl()?r=o.overlayX==="end"?"left":"right":r=o.overlayX==="end"?"right":"left",r==="right"){let m=this._document.documentElement.clientWidth;n.right=`${m-(a.x+this._overlayRect.width)}px`}else n.left=Xe(a.x);return n}_getScrollVisibility(){let o=this._getOriginRect(),e=this._pane.getBoundingClientRect(),t=this._scrollables.map(n=>n.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:hh(o,t),isOriginOutsideView:rc(o,t),isOverlayClipped:hh(e,t),isOverlayOutsideView:rc(e,t)}}_subtractOverflows(o,...e){return e.reduce((t,n)=>t-Math.max(n,0),o)}_getNarrowedViewportRect(){let o=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,t=this._viewportRuler.getViewportScrollPosition();return{top:t.top+this._getViewportMarginTop(),left:t.left+this._getViewportMarginStart(),right:t.left+o-this._getViewportMarginEnd(),bottom:t.top+e-this._getViewportMarginBottom(),width:o-this._getViewportMarginStart()-this._getViewportMarginEnd(),height:e-this._getViewportMarginTop()-this._getViewportMarginBottom()}}_isRtl(){return this._overlayRef.getDirection()==="rtl"}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(o,e){return e==="x"?o.offsetX==null?this._offsetX:o.offsetX:o.offsetY==null?this._offsetY:o.offsetY}_validatePositions(){}_addPanelClasses(o){this._pane&&Ei(o).forEach(e=>{e!==""&&this._appliedPanelClasses.indexOf(e)===-1&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(o=>{this._pane.classList.remove(o)}),this._appliedPanelClasses=[])}_getViewportMarginStart(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.start??0}_getViewportMarginEnd(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.end??0}_getViewportMarginTop(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.top??0}_getViewportMarginBottom(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.bottom??0}_getOriginRect(){let o=this._origin;if(o instanceof O)return o.nativeElement.getBoundingClientRect();if(o instanceof Element)return o.getBoundingClientRect();let e=o.width||0,t=o.height||0;return{top:o.y,bottom:o.y+t,left:o.x,right:o.x+e,height:t,width:e}}_getContainerRect(){let o=this._overlayRef.getConfig().usePopover&&this._popoverLocation!=="global",e=this._overlayContainer.getContainerElement();o&&(e.style.display="block");let t=e.getBoundingClientRect();return o&&(e.style.display=""),t}};function An(i,o){for(let e in o)o.hasOwnProperty(e)&&(i[e]=o[e]);return i}function gh(i){if(typeof i!="number"&&i!=null){let[o,e]=i.split(Sb);return!e||e==="px"?parseFloat(o):null}return i||null}function _h(i){return{top:Math.floor(i.top),right:Math.floor(i.right),bottom:Math.floor(i.bottom),left:Math.floor(i.left),width:Math.floor(i.width),height:Math.floor(i.height)}}function Eb(i,o){return i===o?!0:i.isOriginClipped===o.isOriginClipped&&i.isOriginOutsideView===o.isOriginOutsideView&&i.isOverlayClipped===o.isOverlayClipped&&i.isOverlayOutsideView===o.isOverlayOutsideView}var bh="cdk-global-overlay-wrapper";function en(i){return new Zr}var Zr=class{_overlayRef;_cssPosition="static";_topOffset="";_bottomOffset="";_alignItems="";_xPosition="";_xOffset="";_width="";_height="";_isDisposed=!1;attach(o){let e=o.getConfig();this._overlayRef=o,this._width&&!e.width&&o.updateSize({width:this._width}),this._height&&!e.height&&o.updateSize({height:this._height}),o.hostElement.classList.add(bh),this._isDisposed=!1}top(o=""){return this._bottomOffset="",this._topOffset=o,this._alignItems="flex-start",this}left(o=""){return this._xOffset=o,this._xPosition="left",this}bottom(o=""){return this._topOffset="",this._bottomOffset=o,this._alignItems="flex-end",this}right(o=""){return this._xOffset=o,this._xPosition="right",this}start(o=""){return this._xOffset=o,this._xPosition="start",this}end(o=""){return this._xOffset=o,this._xPosition="end",this}width(o=""){return this._overlayRef?this._overlayRef.updateSize({width:o}):this._width=o,this}height(o=""){return this._overlayRef?this._overlayRef.updateSize({height:o}):this._height=o,this}centerHorizontally(o=""){return this.left(o),this._xPosition="center",this}centerVertically(o=""){return this.top(o),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;let o=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,t=this._overlayRef.getConfig(),{width:n,height:a,maxWidth:r,maxHeight:m}=t,h=(n==="100%"||n==="100vw")&&(!r||r==="100%"||r==="100vw"),g=(a==="100%"||a==="100vh")&&(!m||m==="100%"||m==="100vh"),_=this._xPosition,y=this._xOffset,L=this._overlayRef.getConfig().direction==="rtl",U="",J="",me="";h?me="flex-start":_==="center"?(me="center",L?J=y:U=y):L?_==="left"||_==="end"?(me="flex-end",U=y):(_==="right"||_==="start")&&(me="flex-start",J=y):_==="left"||_==="start"?(me="flex-start",U=y):(_==="right"||_==="end")&&(me="flex-end",J=y),o.position=this._cssPosition,o.marginLeft=h?"0":U,o.marginTop=g?"0":this._topOffset,o.marginBottom=this._bottomOffset,o.marginRight=h?"0":J,e.justifyContent=me,e.alignItems=g?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;let o=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,t=e.style;e.classList.remove(bh),t.justifyContent=t.alignItems=o.marginTop=o.marginBottom=o.marginLeft=o.marginRight=o.position="",this._overlayRef=null,this._isDisposed=!0}},kh=(()=>{class i{_injector=s(q);global(){return en()}flexibleConnectedTo(e){return Ti(this._injector,e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),_a=new b("OVERLAY_DEFAULT_CONFIG");function Pt(i,o){i.get(Te).load(Dh);let e=i.get(Qr),t=i.get(G),n=i.get(he),a=i.get(Li),r=i.get(He),m=i.get(ue,null,{optional:!0})||i.get(et).createRenderer(null,null),h=new Ft(o),g=i.get(_a,null,{optional:!0})?.usePopover??!0;h.direction=h.direction||r.value,"showPopover"in t.body?h.usePopover=o?.usePopover??g:h.usePopover=!1;let _=t.createElement("div"),y=t.createElement("div");_.id=n.getId("cdk-overlay-"),_.classList.add("cdk-overlay-pane"),y.appendChild(_),h.usePopover&&(y.setAttribute("popover","manual"),y.classList.add("cdk-overlay-popover"));let L=h.usePopover?h.positionStrategy?.getPopoverInsertionPoint?.():null;return lc(L)?L.after(y):L?.type==="parent"?L.element.appendChild(y):e.getContainerElement().appendChild(y),new po(new fa(_,a,i),y,_,h,i.get(j),i.get(xh),t,i.get(Ua),i.get(wh),o?.disableAnimations??i.get(xi,null,{optional:!0})==="NoopAnimations",i.get(ei),m)}var Sh=(()=>{class i{scrollStrategies=s(yh);_positionBuilder=s(kh);_injector=s(q);create(e){return Pt(this._injector,e)}position(){return this._positionBuilder}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Mb=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Ab=new b("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>ci(i)}}),fo=(()=>{class i{elementRef=s(O);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]})}return i})(),Eh=new b("cdk-connected-overlay-default-config"),Jr=(()=>{class i{_dir=s(He,{optional:!0});_injector=s(q);_overlayRef;_templatePortal;_backdropSubscription=_e.EMPTY;_attachSubscription=_e.EMPTY;_detachSubscription=_e.EMPTY;_positionSubscription=_e.EMPTY;_offsetX;_offsetY;_position;_scrollStrategyFactory=s(Ab);_ngZone=s(j);origin;positions;positionStrategy;get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}width;height;minWidth;minHeight;backdropClass;panelClass;viewportMargin=0;scrollStrategy;open=!1;disableClose=!1;transformOriginSelector;hasBackdrop=!1;lockPosition=!1;flexibleDimensions=!1;growAfterOpen=!1;push=!1;disposeOnNavigation=!1;usePopover;matchWidth=!1;set _config(e){typeof e!="string"&&this._assignConfig(e)}backdropClick=new $;positionChange=new $;attach=new $;detach=new $;overlayKeydown=new $;overlayOutsideClick=new $;constructor(){let e=s(We),t=s(qe),n=s(Eh,{optional:!0}),a=s(_a,{optional:!0});this.usePopover=a?.usePopover===!1?null:"global",this._templatePortal=new Ct(e,t),this.scrollStrategy=this._scrollStrategyFactory(),n&&this._assignConfig(n)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef?.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef?.updateSize({width:this._getWidth(),minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this.attachOverlay():this.detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Mb);let e=this._overlayRef=Pt(this._injector,this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),t.keyCode===27&&!this.disableClose&&!Ve(t)&&(t.preventDefault(),this.detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{let n=this._getOriginElement(),a=it(t);(!n||n!==a&&!n.contains(a))&&this.overlayOutsideClick.next(t)})}_buildConfig(){let e=this._position=this.positionStrategy||this._createPositionStrategy(),t=new Ft({direction:this._dir||"ltr",positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation,usePopover:!!this.usePopover});return(this.height||this.height===0)&&(t.height=this.height),(this.minWidth||this.minWidth===0)&&(t.minWidth=this.minWidth),(this.minHeight||this.minHeight===0)&&(t.minHeight=this.minHeight),this.backdropClass&&(t.backdropClass=this.backdropClass),this.panelClass&&(t.panelClass=this.panelClass),t}_updatePositionStrategy(e){let t=this.positions.map(n=>({originX:n.originX,originY:n.originY,overlayX:n.overlayX,overlayY:n.overlayY,offsetX:n.offsetX||this.offsetX,offsetY:n.offsetY||this.offsetY,panelClass:n.panelClass||void 0}));return e.setOrigin(this._getOrigin()).withPositions(t).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector).withPopoverLocation(this.usePopover===null?"global":this.usePopover)}_createPositionStrategy(){let e=Ti(this._injector,this._getOrigin());return this._updatePositionStrategy(e),e}_getOrigin(){return this.origin instanceof fo?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof fo?this.origin.elementRef.nativeElement:this.origin instanceof O?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_getWidth(){return this.width?this.width:this.matchWidth?this._getOriginElement()?.getBoundingClientRect?.().width:void 0}attachOverlay(){this._overlayRef||this._createOverlay();let e=this._overlayRef;e.getConfig().hasBackdrop=this.hasBackdrop,e.updateSize({width:this._getWidth()}),e.hasAttached()||e.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=e.backdropClick().subscribe(t=>this.backdropClick.emit(t)):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(Fc(()=>this.positionChange.observers.length>0)).subscribe(t=>{this._ngZone.run(()=>this.positionChange.emit(t)),this.positionChange.observers.length===0&&this._positionSubscription.unsubscribe()})),this.open=!0}detachOverlay(){this._overlayRef?.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.open=!1}_assignConfig(e){this.origin=e.origin??this.origin,this.positions=e.positions??this.positions,this.positionStrategy=e.positionStrategy??this.positionStrategy,this.offsetX=e.offsetX??this.offsetX,this.offsetY=e.offsetY??this.offsetY,this.width=e.width??this.width,this.height=e.height??this.height,this.minWidth=e.minWidth??this.minWidth,this.minHeight=e.minHeight??this.minHeight,this.backdropClass=e.backdropClass??this.backdropClass,this.panelClass=e.panelClass??this.panelClass,this.viewportMargin=e.viewportMargin??this.viewportMargin,this.scrollStrategy=e.scrollStrategy??this.scrollStrategy,this.disableClose=e.disableClose??this.disableClose,this.transformOriginSelector=e.transformOriginSelector??this.transformOriginSelector,this.hasBackdrop=e.hasBackdrop??this.hasBackdrop,this.lockPosition=e.lockPosition??this.lockPosition,this.flexibleDimensions=e.flexibleDimensions??this.flexibleDimensions,this.growAfterOpen=e.growAfterOpen??this.growAfterOpen,this.push=e.push??this.push,this.disposeOnNavigation=e.disposeOnNavigation??this.disposeOnNavigation,this.usePopover=e.usePopover??this.usePopover,this.matchWidth=e.matchWidth??this.matchWidth}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",F],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",F],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",F],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",F],push:[2,"cdkConnectedOverlayPush","push",F],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",F],usePopover:[0,"cdkConnectedOverlayUsePopover","usePopover"],matchWidth:[2,"cdkConnectedOverlayMatchWidth","matchWidth",F],_config:[0,"cdkConnectedOverlay","_config"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ye]})}return i})(),kt=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[Sh],imports:[Q,yi,sa,sa]})}return i})();function Ib(i,o){}var tn=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;positionStrategy;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;scrollStrategy;closeOnNavigation=!0;closeOnDestroy=!0;closeOnOverlayDetachments=!0;disableAnimations=!1;providers;container;templateContext;bindings};var dc=(()=>{class i extends Ji{_elementRef=s(O);_focusTrapFactory=s(Dl);_config;_interactivityChecker=s(wl);_ngZone=s(j);_focusMonitor=s(Dt);_renderer=s(ue);_changeDetectorRef=s(ie);_injector=s(q);_platform=s(se);_document=s(G);_portalOutlet;_focusTrapped=new M;_focusTrap=null;_elementFocusedBeforeDialogWasOpened=null;_closeInteractionType=null;_ariaLabelledByQueue=[];_isDestroyed=!1;constructor(){super(),this._config=s(tn,{optional:!0})||new tn,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(e){this._ariaLabelledByQueue.push(e),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(e){let t=this._ariaLabelledByQueue.indexOf(e);t>-1&&(this._ariaLabelledByQueue.splice(t,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._focusTrapped.complete(),this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(e){this._portalOutlet.hasAttached();let t=this._portalOutlet.attachComponentPortal(e);return this._contentAttached(),t}attachTemplatePortal(e){this._portalOutlet.hasAttached();let t=this._portalOutlet.attachTemplatePortal(e);return this._contentAttached(),t}attachDomPortal=e=>{this._portalOutlet.hasAttached();let t=this._portalOutlet.attachDomPortal(e);return this._contentAttached(),t};_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,t){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let n=()=>{a(),r(),e.removeAttribute("tabindex")},a=this._renderer.listen(e,"blur",n),r=this._renderer.listen(e,"mousedown",n)})),e.focus(t)}_focusByCssSelector(e,t){let n=this._elementRef.nativeElement.querySelector(e);n&&this._forceFocus(n,t)}_trapFocus(e){this._isDestroyed||Fe(()=>{let t=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||t.focus(e);break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement(e)||this._focusDialogContainer(e);break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]',e);break;default:this._focusByCssSelector(this._config.autoFocus,e);break}this._focusTrapped.next()},{injector:this._injector})}_restoreFocus(){let e=this._config.restoreFocus,t=null;if(typeof e=="string"?t=this._document.querySelector(e):typeof e=="boolean"?t=e?this._elementFocusedBeforeDialogWasOpened:null:e&&(t=e),this._config.restoreFocus&&t&&typeof t.focus=="function"){let n=Ui(),a=this._elementRef.nativeElement;(!n||n===this._document.body||n===a||a.contains(n))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(e){this._elementRef.nativeElement.focus?.(e)}_containsFocus(){let e=this._elementRef.nativeElement,t=Ui();return e===t||e.contains(t)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=Ui()))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["cdk-dialog-container"]],viewQuery:function(t,n){if(t&1&&Ce(vi,7),t&2){let a;T(a=R())&&(n._portalOutlet=a.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(t,n){t&2&&Y("id",n._config.id||null)("role",n._config.role)("aria-modal",n._config.ariaModal)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null)},features:[X],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,n){t&1&&Re(0,Ib,0,0,"ng-template",0)},dependencies:[vi],styles:[`.cdk-dialog-container {
|
|
3158
|
+
`],encapsulation:2})}return i})(),Qr=(()=>{class i{_platform=s(se);_containerElement;_document=s(G);_styleLoader=s(Te);ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._loadStyles(),this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let e="cdk-overlay-container";if(this._platform.isBrowser||bl()){let n=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let a=0;a<n.length;a++)n[a].remove()}let t=this._document.createElement("div");t.classList.add(e),bl()?t.setAttribute("platform","test"):this._platform.isBrowser||t.setAttribute("platform","server"),this._document.body.appendChild(t),this._containerElement=t}_loadStyles(){this._styleLoader.load(kh)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),sc=class{_renderer;_ngZone;element;_cleanupClick;_cleanupTransitionEnd;_fallbackTimeout;constructor(o,e,t,n){this._renderer=e,this._ngZone=t,this.element=o.createElement("div"),this.element.classList.add("cdk-overlay-backdrop"),this._cleanupClick=e.listen(this.element,"click",n)}detach(){this._ngZone.runOutsideAngular(()=>{let o=this.element;clearTimeout(this._fallbackTimeout),this._cleanupTransitionEnd?.(),this._cleanupTransitionEnd=this._renderer.listen(o,"transitionend",this.dispose),this._fallbackTimeout=setTimeout(this.dispose,500),o.style.pointerEvents="none",o.classList.remove("cdk-overlay-backdrop-showing")})}dispose=()=>{clearTimeout(this._fallbackTimeout),this._cleanupClick?.(),this._cleanupTransitionEnd?.(),this._cleanupClick=this._cleanupTransitionEnd=this._fallbackTimeout=void 0,this.element.remove()}};function lc(i){return i&&i.nodeType===1}var fo=class{_portalOutlet;_host;_pane;_config;_ngZone;_keyboardDispatcher;_document;_location;_outsideClickDispatcher;_animationsDisabled;_injector;_renderer;_backdropClick=new M;_attachments=new M;_detachments=new M;_positionStrategy;_scrollStrategy;_locationChanges=ve.EMPTY;_backdropRef=null;_detachContentMutationObserver;_detachContentAfterRenderRef;_disposed=!1;_previousHostParent;_keydownEvents=new M;_outsidePointerEvents=new M;_afterNextRenderRef;constructor(o,e,t,n,a,r,m,h,g,_=!1,y,B){this._portalOutlet=o,this._host=e,this._pane=t,this._config=n,this._ngZone=a,this._keyboardDispatcher=r,this._document=m,this._location=h,this._outsideClickDispatcher=g,this._animationsDisabled=_,this._injector=y,this._renderer=B,n.scrollStrategy&&(this._scrollStrategy=n.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=n.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropRef?.element||null}get hostElement(){return this._host}get eventPredicate(){return this._config?.eventPredicate||null}attach(o){if(this._disposed)return null;this._attachHost();let e=this._portalOutlet.attach(o);return this._positionStrategy?.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=Fe(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._completeDetachContent(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),typeof e?.onDestroy=="function"&&e.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();let o=this._portalOutlet.detach();return this._detachments.next(),this._completeDetachContent(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),o}dispose(){if(this._disposed)return;let o=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._backdropRef?.dispose(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=this._backdropRef=null,o&&this._detachments.next(),this._detachments.complete(),this._completeDetachContent(),this._disposed=!0}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(o){o!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=o,this.hasAttached()&&(o.attach(this),this.updatePosition()))}updateSize(o){this._config=L(L({},this._config),o),this._updateElementSize()}setDirection(o){this._config=Se(L({},this._config),{direction:o}),this._updateElementDirection()}addPanelClass(o){this._pane&&this._toggleClasses(this._pane,o,!0)}removePanelClass(o){this._pane&&this._toggleClasses(this._pane,o,!1)}getDirection(){let o=this._config.direction;return o?typeof o=="string"?o:o.value:"ltr"}updateScrollStrategy(o){o!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=o,this.hasAttached()&&(o.attach(this),o.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;let o=this._pane.style;o.width=Xe(this._config.width),o.height=Xe(this._config.height),o.minWidth=Xe(this._config.minWidth),o.minHeight=Xe(this._config.minHeight),o.maxWidth=Xe(this._config.maxWidth),o.maxHeight=Xe(this._config.maxHeight)}_togglePointerEvents(o){this._pane.style.pointerEvents=o?"":"none"}_attachHost(){if(!this._host.parentElement){let o=this._config.usePopover?this._positionStrategy?.getPopoverInsertionPoint?.():null;lc(o)?o.after(this._host):o?.type==="parent"?o.element.appendChild(this._host):this._previousHostParent?.appendChild(this._host)}if(this._config.usePopover)try{this._host.showPopover()}catch(o){}}_attachBackdrop(){let o="cdk-overlay-backdrop-showing";this._backdropRef?.dispose(),this._backdropRef=new sc(this._document,this._renderer,this._ngZone,e=>{this._backdropClick.next(e)}),this._animationsDisabled&&this._backdropRef.element.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropRef.element,this._config.backdropClass,!0),this._config.usePopover?this._host.prepend(this._backdropRef.element):this._host.parentElement.insertBefore(this._backdropRef.element,this._host),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this._backdropRef?.element.classList.add(o))}):this._backdropRef.element.classList.add(o)}_updateStackingOrder(){!this._config.usePopover&&this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){this._animationsDisabled?(this._backdropRef?.dispose(),this._backdropRef=null):this._backdropRef?.detach()}_toggleClasses(o,e,t){let n=Ei(e||[]).filter(a=>!!a);n.length&&(t?o.classList.add(...n):o.classList.remove(...n))}_detachContentWhenEmpty(){let o=!1;try{this._detachContentAfterRenderRef=Fe(()=>{o=!0,this._detachContent()},{injector:this._injector})}catch(e){if(o)throw e;this._detachContent()}globalThis.MutationObserver&&this._pane&&(this._detachContentMutationObserver||=new globalThis.MutationObserver(()=>{this._detachContent()}),this._detachContentMutationObserver.observe(this._pane,{childList:!0}))}_detachContent(){(!this._pane||!this._host||this._pane.children.length===0)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),this._completeDetachContent())}_completeDetachContent(){this._detachContentAfterRenderRef?.destroy(),this._detachContentAfterRenderRef=void 0,this._detachContentMutationObserver?.disconnect()}_disposeScrollStrategy(){let o=this._scrollStrategy;o?.disable(),o?.detach?.()}},gh="cdk-overlay-connected-position-bounding-box",Eb=/([A-Za-z%]+)$/;function Ti(i,o){return new Xr(o,i.get(Rt),i.get(G),i.get(se),i.get(Qr))}var Xr=class{_viewportRuler;_document;_platform;_overlayContainer;_overlayRef;_isInitialRender=!1;_lastBoundingBoxSize={width:0,height:0};_isPushed=!1;_canPush=!0;_growAfterOpen=!1;_hasFlexibleDimensions=!0;_positionLocked=!1;_originRect;_overlayRect;_viewportRect;_containerRect;_viewportMargin=0;_scrollables=[];_preferredPositions=[];_origin;_pane;_isDisposed=!1;_boundingBox=null;_lastPosition=null;_lastScrollVisibility=null;_positionChanges=new M;_resizeSubscription=ve.EMPTY;_offsetX=0;_offsetY=0;_transformOriginSelector;_appliedPanelClasses=[];_previousPushAmount=null;_popoverLocation="global";positionChanges=this._positionChanges;get positions(){return this._preferredPositions}constructor(o,e,t,n,a){this._viewportRuler=e,this._document=t,this._platform=n,this._overlayContainer=a,this.setOrigin(o)}attach(o){this._overlayRef&&this._overlayRef,this._validatePositions(),o.hostElement.classList.add(gh),this._overlayRef=o,this._boundingBox=o.hostElement,this._pane=o.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition){this.reapplyLastPosition();return}this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._getContainerRect();let o=this._originRect,e=this._overlayRect,t=this._viewportRect,n=this._containerRect,a=[],r;for(let m of this._preferredPositions){let h=this._getOriginPoint(o,n,m),g=this._getOverlayPoint(h,e,m),_=this._getOverlayFit(g,e,t,m);if(_.isCompletelyWithinViewport){this._isPushed=!1,this._applyPosition(m,h);return}if(this._canFitWithFlexibleDimensions(_,g,t)){a.push({position:m,origin:h,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(h,m)});continue}(!r||r.overlayFit.visibleArea<_.visibleArea)&&(r={overlayFit:_,overlayPoint:g,originPoint:h,position:m,overlayRect:e})}if(a.length){let m=null,h=-1;for(let g of a){let _=g.boundingBoxRect.width*g.boundingBoxRect.height*(g.position.weight||1);_>h&&(h=_,m=g)}this._isPushed=!1,this._applyPosition(m.position,m.origin);return}if(this._canPush){this._isPushed=!0,this._applyPosition(r.position,r.originPoint);return}this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&An(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(gh),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;let o=this._lastPosition;o?(this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._getContainerRect(),this._applyPosition(o,this._getOriginPoint(this._originRect,this._containerRect,o))):this.apply()}withScrollableContainers(o){return this._scrollables=o,this}withPositions(o){return this._preferredPositions=o,o.indexOf(this._lastPosition)===-1&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(o){return this._viewportMargin=o,this}withFlexibleDimensions(o=!0){return this._hasFlexibleDimensions=o,this}withGrowAfterOpen(o=!0){return this._growAfterOpen=o,this}withPush(o=!0){return this._canPush=o,this}withLockedPosition(o=!0){return this._positionLocked=o,this}setOrigin(o){return this._origin=o,this}withDefaultOffsetX(o){return this._offsetX=o,this}withDefaultOffsetY(o){return this._offsetY=o,this}withTransformOriginOn(o){return this._transformOriginSelector=o,this}withPopoverLocation(o){return this._popoverLocation=o,this}getPopoverInsertionPoint(){return this._popoverLocation==="global"?null:this._popoverLocation!=="inline"?this._popoverLocation:this._origin instanceof O?this._origin.nativeElement:lc(this._origin)?this._origin:null}_getOriginPoint(o,e,t){let n;if(t.originX=="center")n=o.left+o.width/2;else{let r=this._isRtl()?o.right:o.left,m=this._isRtl()?o.left:o.right;n=t.originX=="start"?r:m}e.left<0&&(n-=e.left);let a;return t.originY=="center"?a=o.top+o.height/2:a=t.originY=="top"?o.top:o.bottom,e.top<0&&(a-=e.top),{x:n,y:a}}_getOverlayPoint(o,e,t){let n;t.overlayX=="center"?n=-e.width/2:t.overlayX==="start"?n=this._isRtl()?-e.width:0:n=this._isRtl()?0:-e.width;let a;return t.overlayY=="center"?a=-e.height/2:a=t.overlayY=="top"?0:-e.height,{x:o.x+n,y:o.y+a}}_getOverlayFit(o,e,t,n){let a=bh(e),{x:r,y:m}=o,h=this._getOffset(n,"x"),g=this._getOffset(n,"y");h&&(r+=h),g&&(m+=g);let _=0-r,y=r+a.width-t.width,B=0-m,U=m+a.height-t.height,J=this._subtractOverflows(a.width,_,y),me=this._subtractOverflows(a.height,B,U),re=J*me;return{visibleArea:re,isCompletelyWithinViewport:a.width*a.height===re,fitsInViewportVertically:me===a.height,fitsInViewportHorizontally:J==a.width}}_canFitWithFlexibleDimensions(o,e,t){if(this._hasFlexibleDimensions){let n=t.bottom-e.y,a=t.right-e.x,r=_h(this._overlayRef.getConfig().minHeight),m=_h(this._overlayRef.getConfig().minWidth),h=o.fitsInViewportVertically||r!=null&&r<=n,g=o.fitsInViewportHorizontally||m!=null&&m<=a;return h&&g}return!1}_pushOverlayOnScreen(o,e,t){if(this._previousPushAmount&&this._positionLocked)return{x:o.x+this._previousPushAmount.x,y:o.y+this._previousPushAmount.y};let n=bh(e),a=this._viewportRect,r=Math.max(o.x+n.width-a.width,0),m=Math.max(o.y+n.height-a.height,0),h=Math.max(a.top-t.top-o.y,0),g=Math.max(a.left-t.left-o.x,0),_=0,y=0;return n.width<=a.width?_=g||-r:_=o.x<this._getViewportMarginStart()?a.left-t.left-o.x:0,n.height<=a.height?y=h||-m:y=o.y<this._getViewportMarginTop()?a.top-t.top-o.y:0,this._previousPushAmount={x:_,y},{x:o.x+_,y:o.y+y}}_applyPosition(o,e){if(this._setTransformOrigin(o),this._setOverlayElementStyles(e,o),this._setBoundingBoxStyles(e,o),o.panelClass&&this._addPanelClasses(o.panelClass),this._positionChanges.observers.length){let t=this._getScrollVisibility();if(o!==this._lastPosition||!this._lastScrollVisibility||!Mb(this._lastScrollVisibility,t)){let n=new Yr(o,t);this._positionChanges.next(n)}this._lastScrollVisibility=t}this._lastPosition=o,this._isInitialRender=!1}_setTransformOrigin(o){if(!this._transformOriginSelector)return;let e=this._boundingBox.querySelectorAll(this._transformOriginSelector),t,n=o.overlayY;o.overlayX==="center"?t="center":this._isRtl()?t=o.overlayX==="start"?"right":"left":t=o.overlayX==="start"?"left":"right";for(let a=0;a<e.length;a++)e[a].style.transformOrigin=`${t} ${n}`}_calculateBoundingBoxRect(o,e){let t=this._viewportRect,n=this._isRtl(),a,r,m;if(e.overlayY==="top")r=o.y,a=t.height-r+this._getViewportMarginBottom();else if(e.overlayY==="bottom")m=t.height-o.y+this._getViewportMarginTop()+this._getViewportMarginBottom(),a=t.height-m+this._getViewportMarginTop();else{let U=Math.min(t.bottom-o.y+t.top,o.y),J=this._lastBoundingBoxSize.height;a=U*2,r=o.y-U,a>J&&!this._isInitialRender&&!this._growAfterOpen&&(r=o.y-J/2)}let h=e.overlayX==="start"&&!n||e.overlayX==="end"&&n,g=e.overlayX==="end"&&!n||e.overlayX==="start"&&n,_,y,B;if(g)B=t.width-o.x+this._getViewportMarginStart()+this._getViewportMarginEnd(),_=o.x-this._getViewportMarginStart();else if(h)y=o.x,_=t.right-o.x-this._getViewportMarginEnd();else{let U=Math.min(t.right-o.x+t.left,o.x),J=this._lastBoundingBoxSize.width;_=U*2,y=o.x-U,_>J&&!this._isInitialRender&&!this._growAfterOpen&&(y=o.x-J/2)}return{top:r,left:y,bottom:m,right:B,width:_,height:a}}_setBoundingBoxStyles(o,e){let t=this._calculateBoundingBoxRect(o,e);!this._isInitialRender&&!this._growAfterOpen&&(t.height=Math.min(t.height,this._lastBoundingBoxSize.height),t.width=Math.min(t.width,this._lastBoundingBoxSize.width));let n={};if(this._hasExactPosition())n.top=n.left="0",n.bottom=n.right="auto",n.maxHeight=n.maxWidth="",n.width=n.height="100%";else{let a=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;n.width=Xe(t.width),n.height=Xe(t.height),n.top=Xe(t.top)||"auto",n.bottom=Xe(t.bottom)||"auto",n.left=Xe(t.left)||"auto",n.right=Xe(t.right)||"auto",e.overlayX==="center"?n.alignItems="center":n.alignItems=e.overlayX==="end"?"flex-end":"flex-start",e.overlayY==="center"?n.justifyContent="center":n.justifyContent=e.overlayY==="bottom"?"flex-end":"flex-start",a&&(n.maxHeight=Xe(a)),r&&(n.maxWidth=Xe(r))}this._lastBoundingBoxSize=t,An(this._boundingBox.style,n)}_resetBoundingBoxStyles(){An(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){An(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(o,e){let t={},n=this._hasExactPosition(),a=this._hasFlexibleDimensions,r=this._overlayRef.getConfig();if(n){let _=this._viewportRuler.getViewportScrollPosition();An(t,this._getExactOverlayY(e,o,_)),An(t,this._getExactOverlayX(e,o,_))}else t.position="static";let m="",h=this._getOffset(e,"x"),g=this._getOffset(e,"y");h&&(m+=`translateX(${h}px) `),g&&(m+=`translateY(${g}px)`),t.transform=m.trim(),r.maxHeight&&(n?t.maxHeight=Xe(r.maxHeight):a&&(t.maxHeight="")),r.maxWidth&&(n?t.maxWidth=Xe(r.maxWidth):a&&(t.maxWidth="")),An(this._pane.style,t)}_getExactOverlayY(o,e,t){let n={top:"",bottom:""},a=this._getOverlayPoint(e,this._overlayRect,o);if(this._isPushed&&(a=this._pushOverlayOnScreen(a,this._overlayRect,t)),o.overlayY==="bottom"){let r=this._document.documentElement.clientHeight;n.bottom=`${r-(a.y+this._overlayRect.height)}px`}else n.top=Xe(a.y);return n}_getExactOverlayX(o,e,t){let n={left:"",right:""},a=this._getOverlayPoint(e,this._overlayRect,o);this._isPushed&&(a=this._pushOverlayOnScreen(a,this._overlayRect,t));let r;if(this._isRtl()?r=o.overlayX==="end"?"left":"right":r=o.overlayX==="end"?"right":"left",r==="right"){let m=this._document.documentElement.clientWidth;n.right=`${m-(a.x+this._overlayRect.width)}px`}else n.left=Xe(a.x);return n}_getScrollVisibility(){let o=this._getOriginRect(),e=this._pane.getBoundingClientRect(),t=this._scrollables.map(n=>n.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:ph(o,t),isOriginOutsideView:rc(o,t),isOverlayClipped:ph(e,t),isOverlayOutsideView:rc(e,t)}}_subtractOverflows(o,...e){return e.reduce((t,n)=>t-Math.max(n,0),o)}_getNarrowedViewportRect(){let o=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,t=this._viewportRuler.getViewportScrollPosition();return{top:t.top+this._getViewportMarginTop(),left:t.left+this._getViewportMarginStart(),right:t.left+o-this._getViewportMarginEnd(),bottom:t.top+e-this._getViewportMarginBottom(),width:o-this._getViewportMarginStart()-this._getViewportMarginEnd(),height:e-this._getViewportMarginTop()-this._getViewportMarginBottom()}}_isRtl(){return this._overlayRef.getDirection()==="rtl"}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(o,e){return e==="x"?o.offsetX==null?this._offsetX:o.offsetX:o.offsetY==null?this._offsetY:o.offsetY}_validatePositions(){}_addPanelClasses(o){this._pane&&Ei(o).forEach(e=>{e!==""&&this._appliedPanelClasses.indexOf(e)===-1&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(o=>{this._pane.classList.remove(o)}),this._appliedPanelClasses=[])}_getViewportMarginStart(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.start??0}_getViewportMarginEnd(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.end??0}_getViewportMarginTop(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.top??0}_getViewportMarginBottom(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.bottom??0}_getOriginRect(){let o=this._origin;if(o instanceof O)return o.nativeElement.getBoundingClientRect();if(o instanceof Element)return o.getBoundingClientRect();let e=o.width||0,t=o.height||0;return{top:o.y,bottom:o.y+t,left:o.x,right:o.x+e,height:t,width:e}}_getContainerRect(){let o=this._overlayRef.getConfig().usePopover&&this._popoverLocation!=="global",e=this._overlayContainer.getContainerElement();o&&(e.style.display="block");let t=e.getBoundingClientRect();return o&&(e.style.display=""),t}};function An(i,o){for(let e in o)o.hasOwnProperty(e)&&(i[e]=o[e]);return i}function _h(i){if(typeof i!="number"&&i!=null){let[o,e]=i.split(Eb);return!e||e==="px"?parseFloat(o):null}return i||null}function bh(i){return{top:Math.floor(i.top),right:Math.floor(i.right),bottom:Math.floor(i.bottom),left:Math.floor(i.left),width:Math.floor(i.width),height:Math.floor(i.height)}}function Mb(i,o){return i===o?!0:i.isOriginClipped===o.isOriginClipped&&i.isOriginOutsideView===o.isOriginOutsideView&&i.isOverlayClipped===o.isOverlayClipped&&i.isOverlayOutsideView===o.isOverlayOutsideView}var vh="cdk-global-overlay-wrapper";function en(i){return new Zr}var Zr=class{_overlayRef;_cssPosition="static";_topOffset="";_bottomOffset="";_alignItems="";_xPosition="";_xOffset="";_width="";_height="";_isDisposed=!1;attach(o){let e=o.getConfig();this._overlayRef=o,this._width&&!e.width&&o.updateSize({width:this._width}),this._height&&!e.height&&o.updateSize({height:this._height}),o.hostElement.classList.add(vh),this._isDisposed=!1}top(o=""){return this._bottomOffset="",this._topOffset=o,this._alignItems="flex-start",this}left(o=""){return this._xOffset=o,this._xPosition="left",this}bottom(o=""){return this._topOffset="",this._bottomOffset=o,this._alignItems="flex-end",this}right(o=""){return this._xOffset=o,this._xPosition="right",this}start(o=""){return this._xOffset=o,this._xPosition="start",this}end(o=""){return this._xOffset=o,this._xPosition="end",this}width(o=""){return this._overlayRef?this._overlayRef.updateSize({width:o}):this._width=o,this}height(o=""){return this._overlayRef?this._overlayRef.updateSize({height:o}):this._height=o,this}centerHorizontally(o=""){return this.left(o),this._xPosition="center",this}centerVertically(o=""){return this.top(o),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;let o=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,t=this._overlayRef.getConfig(),{width:n,height:a,maxWidth:r,maxHeight:m}=t,h=(n==="100%"||n==="100vw")&&(!r||r==="100%"||r==="100vw"),g=(a==="100%"||a==="100vh")&&(!m||m==="100%"||m==="100vh"),_=this._xPosition,y=this._xOffset,B=this._overlayRef.getConfig().direction==="rtl",U="",J="",me="";h?me="flex-start":_==="center"?(me="center",B?J=y:U=y):B?_==="left"||_==="end"?(me="flex-end",U=y):(_==="right"||_==="start")&&(me="flex-start",J=y):_==="left"||_==="start"?(me="flex-start",U=y):(_==="right"||_==="end")&&(me="flex-end",J=y),o.position=this._cssPosition,o.marginLeft=h?"0":U,o.marginTop=g?"0":this._topOffset,o.marginBottom=this._bottomOffset,o.marginRight=h?"0":J,e.justifyContent=me,e.alignItems=g?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;let o=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,t=e.style;e.classList.remove(vh),t.justifyContent=t.alignItems=o.marginTop=o.marginBottom=o.marginLeft=o.marginRight=o.position="",this._overlayRef=null,this._isDisposed=!0}},Sh=(()=>{class i{_injector=s(q);global(){return en()}flexibleConnectedTo(e){return Ti(this._injector,e)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),_a=new b("OVERLAY_DEFAULT_CONFIG");function Pt(i,o){i.get(Te).load(kh);let e=i.get(Qr),t=i.get(G),n=i.get(he),a=i.get(Li),r=i.get(Ue),m=i.get(ue,null,{optional:!0})||i.get(et).createRenderer(null,null),h=new Ft(o),g=i.get(_a,null,{optional:!0})?.usePopover??!0;h.direction=h.direction||r.value,"showPopover"in t.body?h.usePopover=o?.usePopover??g:h.usePopover=!1;let _=t.createElement("div"),y=t.createElement("div");_.id=n.getId("cdk-overlay-"),_.classList.add("cdk-overlay-pane"),y.appendChild(_),h.usePopover&&(y.setAttribute("popover","manual"),y.classList.add("cdk-overlay-popover"));let B=h.usePopover?h.positionStrategy?.getPopoverInsertionPoint?.():null;return lc(B)?B.after(y):B?.type==="parent"?B.element.appendChild(y):e.getContainerElement().appendChild(y),new fo(new fa(_,a,i),y,_,h,i.get(j),i.get(wh),t,i.get(Ua),i.get(Dh),o?.disableAnimations??i.get(xi,null,{optional:!0})==="NoopAnimations",i.get(ii),m)}var Eh=(()=>{class i{scrollStrategies=s(Ch);_positionBuilder=s(Sh);_injector=s(q);create(e){return Pt(this._injector,e)}position(){return this._positionBuilder}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})(),Ab=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Ib=new b("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>mi(i)}}),go=(()=>{class i{elementRef=s(O);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]})}return i})(),Mh=new b("cdk-connected-overlay-default-config"),Jr=(()=>{class i{_dir=s(Ue,{optional:!0});_injector=s(q);_overlayRef;_templatePortal;_backdropSubscription=ve.EMPTY;_attachSubscription=ve.EMPTY;_detachSubscription=ve.EMPTY;_positionSubscription=ve.EMPTY;_offsetX;_offsetY;_position;_scrollStrategyFactory=s(Ib);_ngZone=s(j);origin;positions;positionStrategy;get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}width;height;minWidth;minHeight;backdropClass;panelClass;viewportMargin=0;scrollStrategy;open=!1;disableClose=!1;transformOriginSelector;hasBackdrop=!1;lockPosition=!1;flexibleDimensions=!1;growAfterOpen=!1;push=!1;disposeOnNavigation=!1;usePopover;matchWidth=!1;set _config(e){typeof e!="string"&&this._assignConfig(e)}backdropClick=new $;positionChange=new $;attach=new $;detach=new $;overlayKeydown=new $;overlayOutsideClick=new $;constructor(){let e=s(qe),t=s(Ke),n=s(Mh,{optional:!0}),a=s(_a,{optional:!0});this.usePopover=a?.usePopover===!1?null:"global",this._templatePortal=new wt(e,t),this.scrollStrategy=this._scrollStrategyFactory(),n&&this._assignConfig(n)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef?.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef?.updateSize({width:this._getWidth(),minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this.attachOverlay():this.detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Ab);let e=this._overlayRef=Pt(this._injector,this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),t.keyCode===27&&!this.disableClose&&!ze(t)&&(t.preventDefault(),this.detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{let n=this._getOriginElement(),a=it(t);(!n||n!==a&&!n.contains(a))&&this.overlayOutsideClick.next(t)})}_buildConfig(){let e=this._position=this.positionStrategy||this._createPositionStrategy(),t=new Ft({direction:this._dir||"ltr",positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation,usePopover:!!this.usePopover});return(this.height||this.height===0)&&(t.height=this.height),(this.minWidth||this.minWidth===0)&&(t.minWidth=this.minWidth),(this.minHeight||this.minHeight===0)&&(t.minHeight=this.minHeight),this.backdropClass&&(t.backdropClass=this.backdropClass),this.panelClass&&(t.panelClass=this.panelClass),t}_updatePositionStrategy(e){let t=this.positions.map(n=>({originX:n.originX,originY:n.originY,overlayX:n.overlayX,overlayY:n.overlayY,offsetX:n.offsetX||this.offsetX,offsetY:n.offsetY||this.offsetY,panelClass:n.panelClass||void 0}));return e.setOrigin(this._getOrigin()).withPositions(t).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector).withPopoverLocation(this.usePopover===null?"global":this.usePopover)}_createPositionStrategy(){let e=Ti(this._injector,this._getOrigin());return this._updatePositionStrategy(e),e}_getOrigin(){return this.origin instanceof go?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof go?this.origin.elementRef.nativeElement:this.origin instanceof O?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_getWidth(){return this.width?this.width:this.matchWidth?this._getOriginElement()?.getBoundingClientRect?.().width:void 0}attachOverlay(){this._overlayRef||this._createOverlay();let e=this._overlayRef;e.getConfig().hasBackdrop=this.hasBackdrop,e.updateSize({width:this._getWidth()}),e.hasAttached()||e.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=e.backdropClick().subscribe(t=>this.backdropClick.emit(t)):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(Fc(()=>this.positionChange.observers.length>0)).subscribe(t=>{this._ngZone.run(()=>this.positionChange.emit(t)),this.positionChange.observers.length===0&&this._positionSubscription.unsubscribe()})),this.open=!0}detachOverlay(){this._overlayRef?.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.open=!1}_assignConfig(e){this.origin=e.origin??this.origin,this.positions=e.positions??this.positions,this.positionStrategy=e.positionStrategy??this.positionStrategy,this.offsetX=e.offsetX??this.offsetX,this.offsetY=e.offsetY??this.offsetY,this.width=e.width??this.width,this.height=e.height??this.height,this.minWidth=e.minWidth??this.minWidth,this.minHeight=e.minHeight??this.minHeight,this.backdropClass=e.backdropClass??this.backdropClass,this.panelClass=e.panelClass??this.panelClass,this.viewportMargin=e.viewportMargin??this.viewportMargin,this.scrollStrategy=e.scrollStrategy??this.scrollStrategy,this.disableClose=e.disableClose??this.disableClose,this.transformOriginSelector=e.transformOriginSelector??this.transformOriginSelector,this.hasBackdrop=e.hasBackdrop??this.hasBackdrop,this.lockPosition=e.lockPosition??this.lockPosition,this.flexibleDimensions=e.flexibleDimensions??this.flexibleDimensions,this.growAfterOpen=e.growAfterOpen??this.growAfterOpen,this.push=e.push??this.push,this.disposeOnNavigation=e.disposeOnNavigation??this.disposeOnNavigation,this.usePopover=e.usePopover??this.usePopover,this.matchWidth=e.matchWidth??this.matchWidth}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",F],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",F],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",F],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",F],push:[2,"cdkConnectedOverlayPush","push",F],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",F],usePopover:[0,"cdkConnectedOverlayUsePopover","usePopover"],matchWidth:[2,"cdkConnectedOverlayMatchWidth","matchWidth",F],_config:[0,"cdkConnectedOverlay","_config"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[xe]})}return i})(),Et=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[Eh],imports:[Q,yi,sa,sa]})}return i})();function Tb(i,o){}var tn=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;positionStrategy;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;scrollStrategy;closeOnNavigation=!0;closeOnDestroy=!0;closeOnOverlayDetachments=!0;disableAnimations=!1;providers;container;templateContext;bindings};var dc=(()=>{class i extends Ji{_elementRef=s(O);_focusTrapFactory=s(Dl);_config;_interactivityChecker=s(wl);_ngZone=s(j);_focusMonitor=s(St);_renderer=s(ue);_changeDetectorRef=s(ie);_injector=s(q);_platform=s(se);_document=s(G);_portalOutlet;_focusTrapped=new M;_focusTrap=null;_elementFocusedBeforeDialogWasOpened=null;_closeInteractionType=null;_ariaLabelledByQueue=[];_isDestroyed=!1;constructor(){super(),this._config=s(tn,{optional:!0})||new tn,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(e){this._ariaLabelledByQueue.push(e),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(e){let t=this._ariaLabelledByQueue.indexOf(e);t>-1&&(this._ariaLabelledByQueue.splice(t,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._focusTrapped.complete(),this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(e){this._portalOutlet.hasAttached();let t=this._portalOutlet.attachComponentPortal(e);return this._contentAttached(),t}attachTemplatePortal(e){this._portalOutlet.hasAttached();let t=this._portalOutlet.attachTemplatePortal(e);return this._contentAttached(),t}attachDomPortal=e=>{this._portalOutlet.hasAttached();let t=this._portalOutlet.attachDomPortal(e);return this._contentAttached(),t};_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,t){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let n=()=>{a(),r(),e.removeAttribute("tabindex")},a=this._renderer.listen(e,"blur",n),r=this._renderer.listen(e,"mousedown",n)})),e.focus(t)}_focusByCssSelector(e,t){let n=this._elementRef.nativeElement.querySelector(e);n&&this._forceFocus(n,t)}_trapFocus(e){this._isDestroyed||Fe(()=>{let t=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||t.focus(e);break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement(e)||this._focusDialogContainer(e);break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]',e);break;default:this._focusByCssSelector(this._config.autoFocus,e);break}this._focusTrapped.next()},{injector:this._injector})}_restoreFocus(){let e=this._config.restoreFocus,t=null;if(typeof e=="string"?t=this._document.querySelector(e):typeof e=="boolean"?t=e?this._elementFocusedBeforeDialogWasOpened:null:e&&(t=e),this._config.restoreFocus&&t&&typeof t.focus=="function"){let n=Ui(),a=this._elementRef.nativeElement;(!n||n===this._document.body||n===a||a.contains(n))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(e){this._elementRef.nativeElement.focus?.(e)}_containsFocus(){let e=this._elementRef.nativeElement,t=Ui();return e===t||e.contains(t)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=Ui()))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["cdk-dialog-container"]],viewQuery:function(t,n){if(t&1&&we(vi,7),t&2){let a;T(a=R())&&(n._portalOutlet=a.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(t,n){t&2&&Y("id",n._config.id||null)("role",n._config.role)("aria-modal",n._config.ariaModal)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null)},features:[X],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,n){t&1&&Re(0,Tb,0,0,"ng-template",0)},dependencies:[vi],styles:[`.cdk-dialog-container {
|
|
3159
3159
|
display: block;
|
|
3160
3160
|
width: 100%;
|
|
3161
3161
|
height: 100%;
|
|
3162
3162
|
min-height: inherit;
|
|
3163
3163
|
max-height: inherit;
|
|
3164
3164
|
}
|
|
3165
|
-
`],encapsulation:2,changeDetection:1})}return i})(),ba=class{overlayRef;config;componentInstance=null;componentRef=null;containerInstance;disableClose;closed=new M;backdropClick;keydownEvents;outsidePointerEvents;id;_detachSubscription;constructor(o,e){this.overlayRef=o,this.config=e,this.disableClose=e.disableClose,this.backdropClick=o.backdropClick(),this.keydownEvents=o.keydownEvents(),this.outsidePointerEvents=o.outsidePointerEvents(),this.id=e.id,this.keydownEvents.subscribe(t=>{t.keyCode===27&&!this.disableClose&&!Ve(t)&&(t.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{!this.disableClose&&this._canClose()?this.close(void 0,{focusOrigin:"mouse"}):this.containerInstance._recaptureFocus?.()}),this._detachSubscription=o.detachments().subscribe(()=>{e.closeOnOverlayDetachments!==!1&&this.close()})}close(o,e){if(this._canClose(o)){let t=this.closed;this.containerInstance._closeInteractionType=e?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),t.next(o),t.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(o="",e=""){return this.overlayRef.updateSize({width:o,height:e}),this}addPanelClass(o){return this.overlayRef.addPanelClass(o),this}removePanelClass(o){return this.overlayRef.removePanelClass(o),this}_canClose(o){let e=this.config;return!!this.containerInstance&&(!e.closePredicate||e.closePredicate(o,e,this.componentInstance))}},Tb=new b("DialogScrollStrategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>go(i)}}),Rb=new b("DialogData"),Ob=new b("DefaultDialogConfig");function Fb(i){let o=N(i),e=new $;return{valueSignal:o,get value(){return o()},change:e,ngOnDestroy(){e.complete()}}}var mc=(()=>{class i{_injector=s(q);_defaultOptions=s(Ob,{optional:!0});_parentDialog=s(i,{optional:!0,skipSelf:!0});_overlayContainer=s(Qr);_idGenerator=s(he);_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new M;_afterOpenedAtThisLevel=new M;_ariaHiddenElements=new Map;_scrollStrategy=s(Tb);get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}afterAllClosed=Oi(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Ie(void 0)));open(e,t){let n=this._defaultOptions||new tn;t=B(B({},n),t),t.id=t.id||this._idGenerator.getId("cdk-dialog-"),t.id&&this.getDialogById(t.id);let a=this._getOverlayConfig(t),r=Pt(this._injector,a),m=new ba(r,t),h=this._attachContainer(r,m,t);if(m.containerInstance=h,!this.openDialogs.length){let g=this._overlayContainer.getContainerElement();h._focusTrapped?h._focusTrapped.pipe(ot(1)).subscribe(()=>{this._hideNonDialogContentFromAssistiveTechnology(g)}):this._hideNonDialogContentFromAssistiveTechnology(g)}return this._attachDialogContent(e,m,h,t),this.openDialogs.push(m),m.closed.subscribe(()=>this._removeOpenDialog(m,!0)),this.afterOpened.next(m),m}closeAll(){cc(this.openDialogs,e=>e.close())}getDialogById(e){return this.openDialogs.find(t=>t.id===e)}ngOnDestroy(){cc(this._openDialogsAtThisLevel,e=>{e.config.closeOnDestroy===!1&&this._removeOpenDialog(e,!1)}),cc(this._openDialogsAtThisLevel,e=>e.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(e){let t=new Ft({positionStrategy:e.positionStrategy||en().centerHorizontally().centerVertically(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,width:e.width,height:e.height,disposeOnNavigation:e.closeOnNavigation,disableAnimations:e.disableAnimations});return e.backdropClass&&(t.backdropClass=e.backdropClass),t}_attachContainer(e,t,n){let a=n.injector||n.viewContainerRef?.injector,r=[{provide:tn,useValue:n},{provide:ba,useValue:t},{provide:po,useValue:e}],m;n.container?typeof n.container=="function"?m=n.container:(m=n.container.type,r.push(...n.container.providers(n))):m=dc;let h=new li(m,n.viewContainerRef,q.create({parent:a||this._injector,providers:r}));return e.attach(h).instance}_attachDialogContent(e,t,n,a){if(e instanceof We){let r=this._createInjector(a,t,n,void 0),m={$implicit:a.data,dialogRef:t};a.templateContext&&(m=B(B({},m),typeof a.templateContext=="function"?a.templateContext():a.templateContext)),n.attachTemplatePortal(new Ct(e,null,m,r))}else{let r=this._createInjector(a,t,n,this._injector),m=n.attachComponentPortal(new li(e,a.viewContainerRef,r,null,a.bindings));t.componentRef=m,t.componentInstance=m.instance}}_createInjector(e,t,n,a){let r=e.injector||e.viewContainerRef?.injector,m=[{provide:Rb,useValue:e.data},{provide:ba,useValue:t}];return e.providers&&(typeof e.providers=="function"?m.push(...e.providers(t,e,n)):m.push(...e.providers)),e.direction&&(!r||!r.get(He,null,{optional:!0}))&&m.push({provide:He,useValue:Fb(e.direction)}),q.create({parent:r||a,providers:m})}_removeOpenDialog(e,t){let n=this.openDialogs.indexOf(e);n>-1&&(this.openDialogs.splice(n,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((a,r)=>{a?r.setAttribute("aria-hidden",a):r.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),t&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(e){if(e.parentElement){let t=e.parentElement.children;for(let n=t.length-1;n>-1;n--){let a=t[n];a!==e&&a.nodeName!=="SCRIPT"&&a.nodeName!=="STYLE"&&!a.hasAttribute("aria-live")&&!a.hasAttribute("popover")&&(this._ariaHiddenElements.set(a,a.getAttribute("aria-hidden")),a.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){let e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function cc(i,o){let e=i.length;for(;e--;)o(i[e])}var Mh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[mc],imports:[kt,yi,qo,yi]})}return i})();function Pb(i,o){}var ts=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;position;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;delayFocusTrap=!0;scrollStrategy;closeOnNavigation=!0;enterAnimationDuration;exitAnimationDuration;bindings},uc="mdc-dialog--open",Ah="mdc-dialog--opening",Ih="mdc-dialog--closing",Nb=150,Lb=75,Bb=(()=>{class i extends dc{_animationStateChanged=new $;_animationsEnabled=!de();_actionSectionCount=0;_hostElement=this._elementRef.nativeElement;_enterAnimationDuration=this._animationsEnabled?Rh(this._config.enterAnimationDuration)??Nb:0;_exitAnimationDuration=this._animationsEnabled?Rh(this._config.exitAnimationDuration)??Lb:0;_animationTimer=null;_contentAttached(){super._contentAttached(),this._startOpenAnimation()}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty(Th,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Ah,uc)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(uc),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(uc),this._animationsEnabled?(this._hostElement.style.setProperty(Th,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Ih)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_updateActionSectionCount(e){this._actionSectionCount+=e,this._changeDetectorRef.markForCheck()}_finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)};_finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})};_clearAnimationClasses(){this._hostElement.classList.remove(Ah,Ih)}_waitForAnimationToComplete(e,t){this._animationTimer!==null&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(t,e)}_requestAnimationFrame(e){this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(e):e()})}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(e){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})}ngOnDestroy(){super.ngOnDestroy(),this._animationTimer!==null&&clearTimeout(this._animationTimer)}attachComponentPortal(e){let t=super.attachComponentPortal(e);return t.location.nativeElement.classList.add("mat-mdc-dialog-component-host"),t}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:10,hostBindings:function(t,n){t&2&&(at("id",n._config.id),Y("aria-modal",n._config.ariaModal)("role",n._config.role)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null),f("_mat-animation-noopable",!n._animationsEnabled)("mat-mdc-dialog-container-with-actions",n._actionSectionCount>0))},features:[X],decls:3,vars:0,consts:[[1,"mat-mdc-dialog-inner-container","mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(t,n){t&1&&(l(0,"div",0)(1,"div",1),Re(2,Pb,0,0,"ng-template",2),c()())},dependencies:[vi],styles:[`.mat-mdc-dialog-container {
|
|
3165
|
+
`],encapsulation:2,changeDetection:1})}return i})(),ba=class{overlayRef;config;componentInstance=null;componentRef=null;containerInstance;disableClose;closed=new M;backdropClick;keydownEvents;outsidePointerEvents;id;_detachSubscription;constructor(o,e){this.overlayRef=o,this.config=e,this.disableClose=e.disableClose,this.backdropClick=o.backdropClick(),this.keydownEvents=o.keydownEvents(),this.outsidePointerEvents=o.outsidePointerEvents(),this.id=e.id,this.keydownEvents.subscribe(t=>{t.keyCode===27&&!this.disableClose&&!ze(t)&&(t.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{!this.disableClose&&this._canClose()?this.close(void 0,{focusOrigin:"mouse"}):this.containerInstance._recaptureFocus?.()}),this._detachSubscription=o.detachments().subscribe(()=>{e.closeOnOverlayDetachments!==!1&&this.close()})}close(o,e){if(this._canClose(o)){let t=this.closed;this.containerInstance._closeInteractionType=e?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),t.next(o),t.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(o="",e=""){return this.overlayRef.updateSize({width:o,height:e}),this}addPanelClass(o){return this.overlayRef.addPanelClass(o),this}removePanelClass(o){return this.overlayRef.removePanelClass(o),this}_canClose(o){let e=this.config;return!!this.containerInstance&&(!e.closePredicate||e.closePredicate(o,e,this.componentInstance))}},Rb=new b("DialogScrollStrategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>_o(i)}}),Ob=new b("DialogData"),Fb=new b("DefaultDialogConfig");function Pb(i){let o=N(i),e=new $;return{valueSignal:o,get value(){return o()},change:e,ngOnDestroy(){e.complete()}}}var mc=(()=>{class i{_injector=s(q);_defaultOptions=s(Fb,{optional:!0});_parentDialog=s(i,{optional:!0,skipSelf:!0});_overlayContainer=s(Qr);_idGenerator=s(he);_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new M;_afterOpenedAtThisLevel=new M;_ariaHiddenElements=new Map;_scrollStrategy=s(Rb);get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}afterAllClosed=Oi(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Ie(void 0)));open(e,t){let n=this._defaultOptions||new tn;t=L(L({},n),t),t.id=t.id||this._idGenerator.getId("cdk-dialog-"),t.id&&this.getDialogById(t.id);let a=this._getOverlayConfig(t),r=Pt(this._injector,a),m=new ba(r,t),h=this._attachContainer(r,m,t);if(m.containerInstance=h,!this.openDialogs.length){let g=this._overlayContainer.getContainerElement();h._focusTrapped?h._focusTrapped.pipe(ot(1)).subscribe(()=>{this._hideNonDialogContentFromAssistiveTechnology(g)}):this._hideNonDialogContentFromAssistiveTechnology(g)}return this._attachDialogContent(e,m,h,t),this.openDialogs.push(m),m.closed.subscribe(()=>this._removeOpenDialog(m,!0)),this.afterOpened.next(m),m}closeAll(){cc(this.openDialogs,e=>e.close())}getDialogById(e){return this.openDialogs.find(t=>t.id===e)}ngOnDestroy(){cc(this._openDialogsAtThisLevel,e=>{e.config.closeOnDestroy===!1&&this._removeOpenDialog(e,!1)}),cc(this._openDialogsAtThisLevel,e=>e.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(e){let t=new Ft({positionStrategy:e.positionStrategy||en().centerHorizontally().centerVertically(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,width:e.width,height:e.height,disposeOnNavigation:e.closeOnNavigation,disableAnimations:e.disableAnimations});return e.backdropClass&&(t.backdropClass=e.backdropClass),t}_attachContainer(e,t,n){let a=n.injector||n.viewContainerRef?.injector,r=[{provide:tn,useValue:n},{provide:ba,useValue:t},{provide:fo,useValue:e}],m;n.container?typeof n.container=="function"?m=n.container:(m=n.container.type,r.push(...n.container.providers(n))):m=dc;let h=new di(m,n.viewContainerRef,q.create({parent:a||this._injector,providers:r}));return e.attach(h).instance}_attachDialogContent(e,t,n,a){if(e instanceof qe){let r=this._createInjector(a,t,n,void 0),m={$implicit:a.data,dialogRef:t};a.templateContext&&(m=L(L({},m),typeof a.templateContext=="function"?a.templateContext():a.templateContext)),n.attachTemplatePortal(new wt(e,null,m,r))}else{let r=this._createInjector(a,t,n,this._injector),m=n.attachComponentPortal(new di(e,a.viewContainerRef,r,null,a.bindings));t.componentRef=m,t.componentInstance=m.instance}}_createInjector(e,t,n,a){let r=e.injector||e.viewContainerRef?.injector,m=[{provide:Ob,useValue:e.data},{provide:ba,useValue:t}];return e.providers&&(typeof e.providers=="function"?m.push(...e.providers(t,e,n)):m.push(...e.providers)),e.direction&&(!r||!r.get(Ue,null,{optional:!0}))&&m.push({provide:Ue,useValue:Pb(e.direction)}),q.create({parent:r||a,providers:m})}_removeOpenDialog(e,t){let n=this.openDialogs.indexOf(e);n>-1&&(this.openDialogs.splice(n,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((a,r)=>{a?r.setAttribute("aria-hidden",a):r.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),t&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(e){if(e.parentElement){let t=e.parentElement.children;for(let n=t.length-1;n>-1;n--){let a=t[n];a!==e&&a.nodeName!=="SCRIPT"&&a.nodeName!=="STYLE"&&!a.hasAttribute("aria-live")&&!a.hasAttribute("popover")&&(this._ariaHiddenElements.set(a,a.getAttribute("aria-hidden")),a.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){let e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();function cc(i,o){let e=i.length;for(;e--;)o(i[e])}var Ah=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[mc],imports:[Et,yi,Ko,yi]})}return i})();function Nb(i,o){}var ts=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;position;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;delayFocusTrap=!0;scrollStrategy;closeOnNavigation=!0;enterAnimationDuration;exitAnimationDuration;bindings},uc="mdc-dialog--open",Ih="mdc-dialog--opening",Th="mdc-dialog--closing",Lb=150,Bb=75,Vb=(()=>{class i extends dc{_animationStateChanged=new $;_animationsEnabled=!de();_actionSectionCount=0;_hostElement=this._elementRef.nativeElement;_enterAnimationDuration=this._animationsEnabled?Oh(this._config.enterAnimationDuration)??Lb:0;_exitAnimationDuration=this._animationsEnabled?Oh(this._config.exitAnimationDuration)??Bb:0;_animationTimer=null;_contentAttached(){super._contentAttached(),this._startOpenAnimation()}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty(Rh,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Ih,uc)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(uc),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(uc),this._animationsEnabled?(this._hostElement.style.setProperty(Rh,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Th)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_updateActionSectionCount(e){this._actionSectionCount+=e,this._changeDetectorRef.markForCheck()}_finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)};_finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})};_clearAnimationClasses(){this._hostElement.classList.remove(Ih,Th)}_waitForAnimationToComplete(e,t){this._animationTimer!==null&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(t,e)}_requestAnimationFrame(e){this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(e):e()})}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(e){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})}ngOnDestroy(){super.ngOnDestroy(),this._animationTimer!==null&&clearTimeout(this._animationTimer)}attachComponentPortal(e){let t=super.attachComponentPortal(e);return t.location.nativeElement.classList.add("mat-mdc-dialog-component-host"),t}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:10,hostBindings:function(t,n){t&2&&(at("id",n._config.id),Y("aria-modal",n._config.ariaModal)("role",n._config.role)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null),f("_mat-animation-noopable",!n._animationsEnabled)("mat-mdc-dialog-container-with-actions",n._actionSectionCount>0))},features:[X],decls:3,vars:0,consts:[[1,"mat-mdc-dialog-inner-container","mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(t,n){t&1&&(l(0,"div",0)(1,"div",1),Re(2,Nb,0,0,"ng-template",2),c()())},dependencies:[vi],styles:[`.mat-mdc-dialog-container {
|
|
3166
3166
|
width: 100%;
|
|
3167
3167
|
height: 100%;
|
|
3168
3168
|
display: block;
|
|
@@ -3351,7 +3351,7 @@ input.mat-mdc-chip-input {
|
|
|
3351
3351
|
.mat-mdc-dialog-component-host {
|
|
3352
3352
|
display: contents;
|
|
3353
3353
|
}
|
|
3354
|
-
`],encapsulation:2,changeDetection:1})}return i})(),Th="--mat-dialog-transition-duration";function Rh(i){return i==null?null:typeof i=="number"?i:i.endsWith("ms")?At(i.substring(0,i.length-2)):i.endsWith("s")?At(i.substring(0,i.length-1))*1e3:i==="0"?0:null}var es=(function(i){return i[i.OPEN=0]="OPEN",i[i.CLOSING=1]="CLOSING",i[i.CLOSED=2]="CLOSED",i})(es||{}),Kt=class{_ref;_config;_containerInstance;componentInstance;componentRef=null;disableClose;id;_afterOpened=new Sa(1);_beforeClosed=new Sa(1);_result;_closeFallbackTimeout;_state=es.OPEN;_closeInteractionType;constructor(o,e,t){this._ref=o,this._config=e,this._containerInstance=t,this.disableClose=e.disableClose,this.id=o.id,o.addPanelClass("mat-mdc-dialog-panel"),t._animationStateChanged.pipe(pe(n=>n.state==="opened"),ot(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),t._animationStateChanged.pipe(pe(n=>n.state==="closed"),ot(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),o.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),je(this.backdropClick(),this.keydownEvents().pipe(pe(n=>n.keyCode===27&&!this.disableClose&&!Ve(n)))).subscribe(n=>{this.disableClose||(n.preventDefault(),Vb(this,n.type==="keydown"?"keyboard":"mouse"))})}close(o){let e=this._config.closePredicate;e&&!e(o,this._config,this.componentInstance)||(this._result=o,this._containerInstance._animationStateChanged.pipe(pe(t=>t.state==="closing"),ot(1)).subscribe(t=>{this._beforeClosed.next(o),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),t.totalTime+100)}),this._state=es.CLOSING,this._containerInstance._startExitAnimation())}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(o){let e=this._ref.config.positionStrategy;return o&&(o.left||o.right)?o.left?e.left(o.left):e.right(o.right):e.centerHorizontally(),o&&(o.top||o.bottom)?o.top?e.top(o.top):e.bottom(o.bottom):e.centerVertically(),this._ref.updatePosition(),this}updateSize(o="",e=""){return this._ref.updateSize(o,e),this}addPanelClass(o){return this._ref.addPanelClass(o),this}removePanelClass(o){return this._ref.removePanelClass(o),this}getState(){return this._state}_finishDialogClose(){this._state=es.CLOSED,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}};function Vb(i,o,e){return i._closeInteractionType=o,i.close(e)}var va=new b("MatMdcDialogData"),zb=new b("mat-mdc-dialog-default-options"),jb=new b("mat-mdc-dialog-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>go(i)}}),_o=(()=>{class i{_defaultOptions=s(zb,{optional:!0});_scrollStrategy=s(jb);_parentDialog=s(i,{optional:!0,skipSelf:!0});_idGenerator=s(he);_injector=s(q);_dialog=s(mc);_animationsDisabled=de();_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new M;_afterOpenedAtThisLevel=new M;dialogConfigClass=ts;_dialogRefConstructor;_dialogContainerType;_dialogDataToken;get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){let e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}afterAllClosed=Oi(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Ie(void 0)));constructor(){this._dialogRefConstructor=Kt,this._dialogContainerType=Bb,this._dialogDataToken=va}open(e,t){let n;t=B(B({},this._defaultOptions||new ts),t),t.id=t.id||this._idGenerator.getId("mat-mdc-dialog-"),t.scrollStrategy=t.scrollStrategy||this._scrollStrategy();let a=this._dialog.open(e,Me(B({},t),{positionStrategy:en(this._injector).centerHorizontally().centerVertically(),disableClose:!0,closePredicate:void 0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,disableAnimations:this._animationsDisabled||t.enterAnimationDuration?.toLocaleString()==="0"||t.exitAnimationDuration?.toString()==="0",container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:t},{provide:tn,useValue:t}]},templateContext:()=>({dialogRef:n}),providers:(r,m,h)=>(n=new this._dialogRefConstructor(r,t,h),n.updatePosition(t?.position),[{provide:this._dialogContainerType,useValue:h},{provide:this._dialogDataToken,useValue:m.data},{provide:this._dialogRefConstructor,useValue:n}])}));return n.componentRef=a.componentRef,n.componentInstance=a.componentInstance,this.openDialogs.push(n),this.afterOpened.next(n),n.afterClosed().subscribe(()=>{let r=this.openDialogs.indexOf(n);r>-1&&(this.openDialogs.splice(r,1),this.openDialogs.length||this._getAfterAllClosed().next())}),n}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(t=>t.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(e){let t=e.length;for(;t--;)e[t].close()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Oh=(()=>{class i{_dialogRef=s(Kt,{optional:!0});_elementRef=s(O);_dialog=s(_o);ngOnInit(){this._dialogRef||(this._dialogRef=Hb(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{this._onAdd()})}ngOnDestroy(){this._dialogRef?._containerInstance&&Promise.resolve().then(()=>{this._onRemove()})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i})}return i})(),nn=(()=>{class i extends Oh{id=s(he).getId("mat-mdc-dialog-title-");_onAdd(){this._dialogRef._containerInstance?._addAriaLabelledBy?.(this.id)}_onRemove(){this._dialogRef?._containerInstance?._removeAriaLabelledBy?.(this.id)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-mdc-dialog-title","mdc-dialog__title"],hostVars:1,hostBindings:function(t,n){t&2&&at("id",n.id)},inputs:{id:"id"},exportAs:["matDialogTitle"],features:[X]})}return i})(),on=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-mdc-dialog-content","mdc-dialog__content"],features:[Kc([ql])]})}return i})(),an=(()=>{class i extends Oh{align;_onAdd(){this._dialogRef._containerInstance?._updateActionSectionCount?.(1)}_onRemove(){this._dialogRef._containerInstance?._updateActionSectionCount?.(-1)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-mdc-dialog-actions","mdc-dialog__actions"],hostVars:6,hostBindings:function(t,n){t&2&&f("mat-mdc-dialog-actions-align-start",n.align==="start")("mat-mdc-dialog-actions-align-center",n.align==="center")("mat-mdc-dialog-actions-align-end",n.align==="end")},inputs:{align:"align"},features:[X]})}return i})();function Hb(i,o){let e=i.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-mdc-dialog-container");)e=e.parentElement;return e?o.find(t=>t.id===e.id):null}var Ci=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[_o],imports:[Mh,kt,yi,Q]})}return i})();var Ub=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],Gb=["mat-icon, [matMenuItemIcon]","*"];function $b(i,o){i&1&&(ui(),l(0,"svg",2),v(1,"polygon",3),c())}var Wb=["*"];function qb(i,o){if(i&1){let e=Ke();Se(0,"div",0),Ba("click",function(){De(e);let n=C();return ke(n.closed.emit("click"))})("animationstart",function(n){De(e);let a=C();return ke(a._onAnimationStart(n.animationName))})("animationend",function(n){De(e);let a=C();return ke(a._onAnimationDone(n.animationName))})("animationcancel",function(n){De(e);let a=C();return ke(a._onAnimationDone(n.animationName))}),Se(1,"div",1),H(2),Pe()()}if(i&2){let e=C();Qe(e._classList),f("mat-menu-panel-animations-disabled",e._animationsDisabled)("mat-menu-panel-exit-animation",e._panelAnimationState==="void")("mat-menu-panel-animating",e._isAnimating()),at("id",e.panelId),Y("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}var pc=new b("MAT_MENU_PANEL"),In=(()=>{class i{_elementRef=s(O);_document=s(G);_focusMonitor=s(Dt);_parentMenu=s(pc,{optional:!0});_changeDetectorRef=s(ie);role="menuitem";disabled=!1;disableRipple=!1;_hovered=new M;_focused=new M;_highlighted=!1;_triggersSubmenu=!1;constructor(){s(Te).load(yt),this._parentMenu?.addItem?.(this)}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){let e=this._elementRef.nativeElement.cloneNode(!0),t=e.querySelectorAll("mat-icon, .material-icons");for(let n=0;n<t.length;n++)t[n].remove();return e.textContent?.trim()||""}_setHighlighted(e){this._highlighted=e,this._changeDetectorRef.markForCheck()}_setTriggersSubmenu(e){this._triggersSubmenu=e,this._changeDetectorRef.markForCheck()}_hasFocus(){return this._document&&this._document.activeElement===this._getHostElement()}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["","mat-menu-item",""]],hostAttrs:[1,"mat-mdc-menu-item","mat-focus-indicator"],hostVars:8,hostBindings:function(t,n){t&1&&I("click",function(r){return n._checkDisabled(r)})("mouseenter",function(){return n._handleMouseEnter()}),t&2&&(Y("role",n.role)("tabindex",n._getTabIndex())("aria-disabled",n.disabled)("disabled",n.disabled||null),f("mat-mdc-menu-item-highlighted",n._highlighted)("mat-mdc-menu-item-submenu-trigger",n._triggersSubmenu))},inputs:{role:"role",disabled:[2,"disabled","disabled",F],disableRipple:[2,"disableRipple","disableRipple",F]},exportAs:["matMenuItem"],ngContentSelectors:Gb,decls:5,vars:3,consts:[[1,"mat-mdc-menu-item-text"],["matRipple","",1,"mat-mdc-menu-ripple",3,"matRippleDisabled","matRippleTrigger"],["viewBox","0 0 5 10","focusable","false","aria-hidden","true",1,"mat-mdc-menu-submenu-icon"],["points","0,0 5,5 0,10"]],template:function(t,n){t&1&&(le(Ub),H(0),l(1,"span",0),H(2,1),c(),v(3,"div",1),S(4,$b,2,0,":svg:svg",2)),t&2&&(d(3),w("matRippleDisabled",n.disableRipple||n.disabled)("matRippleTrigger",n._getHostElement()),d(),E(n._triggersSubmenu?4:-1))},dependencies:[mo],encapsulation:2})}return i})();var Kb=new b("MatMenuContent");var Yb=new b("mat-menu-default-options",{providedIn:"root",factory:()=>({overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"})}),hc="_mat-menu-enter",ns="_mat-menu-exit",rn=(()=>{class i{_elementRef=s(O);_changeDetectorRef=s(ie);_injector=s(q);_keyManager;_xPosition;_yPosition;_firstItemFocusRef;_exitFallbackTimeout;_animationsDisabled=de();_allItems;_directDescendantItems=new Ni;_classList={};_panelAnimationState="void";_animationDone=new M;_isAnimating=N(!1);parentMenu;direction;overlayPanelClass;backdropClass;ariaLabel;ariaLabelledby;ariaDescribedby;get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}templateRef;items;lazyContent;overlapTrigger=!1;hasBackdrop;get panelClass(){return this._previousPanelClass}set panelClass(e){let t=this._previousPanelClass,n=B({},this._classList);t&&t.length&&t.split(" ").forEach(a=>{n[a]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(a=>{n[a]=!0}),this._elementRef.nativeElement.className=""),this._classList=n}_previousPanelClass="";get classList(){return this.panelClass}set classList(e){this.panelClass=e}closed=new $;close=this.closed;panelId=s(he).getId("mat-menu-panel-");constructor(){let e=s(Yb);this.overlayPanelClass=e.overlayPanelClass||"",this._xPosition=e.xPosition,this._yPosition=e.yPosition,this.backdropClass=e.backdropClass,this.overlapTrigger=e.overlapTrigger,this.hasBackdrop=e.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new qi(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(Ie(this._directDescendantItems),$e(e=>je(...e.map(t=>t._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{let t=this._keyManager;if(this._panelAnimationState==="enter"&&t.activeItem?._hasFocus()){let n=e.toArray(),a=Math.max(0,Math.min(n.length-1,t.activeItemIndex||0));n[a]&&!n[a].disabled?t.setActiveItem(a):t.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy(),clearTimeout(this._exitFallbackTimeout)}_hovered(){return this._directDescendantItems.changes.pipe(Ie(this._directDescendantItems),$e(t=>je(...t.map(n=>n._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){let t=e.keyCode,n=this._keyManager;switch(t){case 27:Ve(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&this.direction==="ltr"&&this.closed.emit("keydown");break;case 39:this.parentMenu&&this.direction==="rtl"&&this.closed.emit("keydown");break;default:(t===38||t===40)&&n.setFocusOrigin("keyboard"),n.onKeydown(e);return}}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=Fe(()=>{let t=this._resolvePanel();if(!t||!t.contains(document.activeElement)){let n=this._keyManager;n.setFocusOrigin(e).setFirstItemActive(),!n.activeItem&&t&&t.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){}setPositionClasses(e=this.xPosition,t=this.yPosition){this._classList=Me(B({},this._classList),{"mat-menu-before":e==="before","mat-menu-after":e==="after","mat-menu-above":t==="above","mat-menu-below":t==="below"}),this._changeDetectorRef.markForCheck()}_onAnimationDone(e){let t=e===ns;(t||e===hc)&&(t&&(clearTimeout(this._exitFallbackTimeout),this._exitFallbackTimeout=void 0),this._animationDone.next(t?"void":"enter"),this._isAnimating.set(!1))}_onAnimationStart(e){(e===hc||e===ns)&&this._isAnimating.set(!0)}_setIsOpen(e){if(this._panelAnimationState=e?"enter":"void",e){if(this._keyManager.activeItemIndex===0){let t=this._resolvePanel();t&&(t.scrollTop=0)}}else this._animationsDisabled||(this._exitFallbackTimeout=setTimeout(()=>this._onAnimationDone(ns),200));this._animationsDisabled&&setTimeout(()=>{this._onAnimationDone(e?hc:ns)}),this._changeDetectorRef.markForCheck()}_updateDirectDescendants(){this._allItems.changes.pipe(Ie(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(t=>t._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}_resolvePanel(){let e=null;return this._directDescendantItems.length&&(e=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),e}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-menu"]],contentQueries:function(t,n,a){if(t&1&&tt(a,Kb,5)(a,In,5)(a,In,4),t&2){let r;T(r=R())&&(n.lazyContent=r.first),T(r=R())&&(n._allItems=r),T(r=R())&&(n.items=r)}},viewQuery:function(t,n){if(t&1&&Ce(We,5),t&2){let a;T(a=R())&&(n.templateRef=a.first)}},hostVars:3,hostBindings:function(t,n){t&2&&Y("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",F],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>e==null?null:F(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],features:[te([{provide:pc,useExisting:i}])],ngContentSelectors:Wb,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel",3,"click","animationstart","animationend","animationcancel","id"],[1,"mat-mdc-menu-content"]],template:function(t,n){t&1&&(le(),La(0,qb,3,12,"ng-template"))},styles:[`mat-menu {
|
|
3354
|
+
`],encapsulation:2,changeDetection:1})}return i})(),Rh="--mat-dialog-transition-duration";function Oh(i){return i==null?null:typeof i=="number"?i:i.endsWith("ms")?Tt(i.substring(0,i.length-2)):i.endsWith("s")?Tt(i.substring(0,i.length-1))*1e3:i==="0"?0:null}var es=(function(i){return i[i.OPEN=0]="OPEN",i[i.CLOSING=1]="CLOSING",i[i.CLOSED=2]="CLOSED",i})(es||{}),Xt=class{_ref;_config;_containerInstance;componentInstance;componentRef=null;disableClose;id;_afterOpened=new Sa(1);_beforeClosed=new Sa(1);_result;_closeFallbackTimeout;_state=es.OPEN;_closeInteractionType;constructor(o,e,t){this._ref=o,this._config=e,this._containerInstance=t,this.disableClose=e.disableClose,this.id=o.id,o.addPanelClass("mat-mdc-dialog-panel"),t._animationStateChanged.pipe(ge(n=>n.state==="opened"),ot(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),t._animationStateChanged.pipe(ge(n=>n.state==="closed"),ot(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),o.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),He(this.backdropClick(),this.keydownEvents().pipe(ge(n=>n.keyCode===27&&!this.disableClose&&!ze(n)))).subscribe(n=>{this.disableClose||(n.preventDefault(),zb(this,n.type==="keydown"?"keyboard":"mouse"))})}close(o){let e=this._config.closePredicate;e&&!e(o,this._config,this.componentInstance)||(this._result=o,this._containerInstance._animationStateChanged.pipe(ge(t=>t.state==="closing"),ot(1)).subscribe(t=>{this._beforeClosed.next(o),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),t.totalTime+100)}),this._state=es.CLOSING,this._containerInstance._startExitAnimation())}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(o){let e=this._ref.config.positionStrategy;return o&&(o.left||o.right)?o.left?e.left(o.left):e.right(o.right):e.centerHorizontally(),o&&(o.top||o.bottom)?o.top?e.top(o.top):e.bottom(o.bottom):e.centerVertically(),this._ref.updatePosition(),this}updateSize(o="",e=""){return this._ref.updateSize(o,e),this}addPanelClass(o){return this._ref.addPanelClass(o),this}removePanelClass(o){return this._ref.removePanelClass(o),this}getState(){return this._state}_finishDialogClose(){this._state=es.CLOSED,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}};function zb(i,o,e){return i._closeInteractionType=o,i.close(e)}var va=new b("MatMdcDialogData"),jb=new b("mat-mdc-dialog-default-options"),Hb=new b("mat-mdc-dialog-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>_o(i)}}),bo=(()=>{class i{_defaultOptions=s(jb,{optional:!0});_scrollStrategy=s(Hb);_parentDialog=s(i,{optional:!0,skipSelf:!0});_idGenerator=s(he);_injector=s(q);_dialog=s(mc);_animationsDisabled=de();_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new M;_afterOpenedAtThisLevel=new M;dialogConfigClass=ts;_dialogRefConstructor;_dialogContainerType;_dialogDataToken;get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){let e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}afterAllClosed=Oi(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Ie(void 0)));constructor(){this._dialogRefConstructor=Xt,this._dialogContainerType=Vb,this._dialogDataToken=va}open(e,t){let n;t=L(L({},this._defaultOptions||new ts),t),t.id=t.id||this._idGenerator.getId("mat-mdc-dialog-"),t.scrollStrategy=t.scrollStrategy||this._scrollStrategy();let a=this._dialog.open(e,Se(L({},t),{positionStrategy:en(this._injector).centerHorizontally().centerVertically(),disableClose:!0,closePredicate:void 0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,disableAnimations:this._animationsDisabled||t.enterAnimationDuration?.toLocaleString()==="0"||t.exitAnimationDuration?.toString()==="0",container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:t},{provide:tn,useValue:t}]},templateContext:()=>({dialogRef:n}),providers:(r,m,h)=>(n=new this._dialogRefConstructor(r,t,h),n.updatePosition(t?.position),[{provide:this._dialogContainerType,useValue:h},{provide:this._dialogDataToken,useValue:m.data},{provide:this._dialogRefConstructor,useValue:n}])}));return n.componentRef=a.componentRef,n.componentInstance=a.componentInstance,this.openDialogs.push(n),this.afterOpened.next(n),n.afterClosed().subscribe(()=>{let r=this.openDialogs.indexOf(n);r>-1&&(this.openDialogs.splice(r,1),this.openDialogs.length||this._getAfterAllClosed().next())}),n}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(t=>t.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(e){let t=e.length;for(;t--;)e[t].close()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Fh=(()=>{class i{_dialogRef=s(Xt,{optional:!0});_elementRef=s(O);_dialog=s(bo);ngOnInit(){this._dialogRef||(this._dialogRef=Ub(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{this._onAdd()})}ngOnDestroy(){this._dialogRef?._containerInstance&&Promise.resolve().then(()=>{this._onRemove()})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i})}return i})(),nn=(()=>{class i extends Fh{id=s(he).getId("mat-mdc-dialog-title-");_onAdd(){this._dialogRef._containerInstance?._addAriaLabelledBy?.(this.id)}_onRemove(){this._dialogRef?._containerInstance?._removeAriaLabelledBy?.(this.id)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-mdc-dialog-title","mdc-dialog__title"],hostVars:1,hostBindings:function(t,n){t&2&&at("id",n.id)},inputs:{id:"id"},exportAs:["matDialogTitle"],features:[X]})}return i})(),on=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-mdc-dialog-content","mdc-dialog__content"],features:[Kc([ql])]})}return i})(),an=(()=>{class i extends Fh{align;_onAdd(){this._dialogRef._containerInstance?._updateActionSectionCount?.(1)}_onRemove(){this._dialogRef._containerInstance?._updateActionSectionCount?.(-1)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-mdc-dialog-actions","mdc-dialog__actions"],hostVars:6,hostBindings:function(t,n){t&2&&f("mat-mdc-dialog-actions-align-start",n.align==="start")("mat-mdc-dialog-actions-align-center",n.align==="center")("mat-mdc-dialog-actions-align-end",n.align==="end")},inputs:{align:"align"},features:[X]})}return i})();function Ub(i,o){let e=i.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-mdc-dialog-container");)e=e.parentElement;return e?o.find(t=>t.id===e.id):null}var Ci=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({providers:[bo],imports:[Ah,Et,yi,Q]})}return i})();var Gb=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],$b=["mat-icon, [matMenuItemIcon]","*"];function Wb(i,o){i&1&&(pi(),l(0,"svg",2),v(1,"polygon",3),c())}var qb=["*"];function Kb(i,o){if(i&1){let e=Ve();Ee(0,"div",0),Ba("click",function(){pe(e);let n=C();return fe(n.closed.emit("click"))})("animationstart",function(n){pe(e);let a=C();return fe(a._onAnimationStart(n.animationName))})("animationend",function(n){pe(e);let a=C();return fe(a._onAnimationDone(n.animationName))})("animationcancel",function(n){pe(e);let a=C();return fe(a._onAnimationDone(n.animationName))}),Ee(1,"div",1),H(2),Pe()()}if(i&2){let e=C();Qe(e._classList),f("mat-menu-panel-animations-disabled",e._animationsDisabled)("mat-menu-panel-exit-animation",e._panelAnimationState==="void")("mat-menu-panel-animating",e._isAnimating()),at("id",e.panelId),Y("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}var pc=new b("MAT_MENU_PANEL"),In=(()=>{class i{_elementRef=s(O);_document=s(G);_focusMonitor=s(St);_parentMenu=s(pc,{optional:!0});_changeDetectorRef=s(ie);role="menuitem";disabled=!1;disableRipple=!1;_hovered=new M;_focused=new M;_highlighted=!1;_triggersSubmenu=!1;constructor(){s(Te).load(xt),this._parentMenu?.addItem?.(this)}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){let e=this._elementRef.nativeElement.cloneNode(!0),t=e.querySelectorAll("mat-icon, .material-icons");for(let n=0;n<t.length;n++)t[n].remove();return e.textContent?.trim()||""}_setHighlighted(e){this._highlighted=e,this._changeDetectorRef.markForCheck()}_setTriggersSubmenu(e){this._triggersSubmenu=e,this._changeDetectorRef.markForCheck()}_hasFocus(){return this._document&&this._document.activeElement===this._getHostElement()}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["","mat-menu-item",""]],hostAttrs:[1,"mat-mdc-menu-item","mat-focus-indicator"],hostVars:8,hostBindings:function(t,n){t&1&&I("click",function(r){return n._checkDisabled(r)})("mouseenter",function(){return n._handleMouseEnter()}),t&2&&(Y("role",n.role)("tabindex",n._getTabIndex())("aria-disabled",n.disabled)("disabled",n.disabled||null),f("mat-mdc-menu-item-highlighted",n._highlighted)("mat-mdc-menu-item-submenu-trigger",n._triggersSubmenu))},inputs:{role:"role",disabled:[2,"disabled","disabled",F],disableRipple:[2,"disableRipple","disableRipple",F]},exportAs:["matMenuItem"],ngContentSelectors:$b,decls:5,vars:3,consts:[[1,"mat-mdc-menu-item-text"],["matRipple","",1,"mat-mdc-menu-ripple",3,"matRippleDisabled","matRippleTrigger"],["viewBox","0 0 5 10","focusable","false","aria-hidden","true",1,"mat-mdc-menu-submenu-icon"],["points","0,0 5,5 0,10"]],template:function(t,n){t&1&&(le(Gb),H(0),l(1,"span",0),H(2,1),c(),v(3,"div",1),S(4,Wb,2,0,":svg:svg",2)),t&2&&(d(3),w("matRippleDisabled",n.disableRipple||n.disabled)("matRippleTrigger",n._getHostElement()),d(),E(n._triggersSubmenu?4:-1))},dependencies:[uo],encapsulation:2})}return i})();var Yb=new b("MatMenuContent");var Xb=new b("mat-menu-default-options",{providedIn:"root",factory:()=>({overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"})}),hc="_mat-menu-enter",ns="_mat-menu-exit",rn=(()=>{class i{_elementRef=s(O);_changeDetectorRef=s(ie);_injector=s(q);_keyManager;_xPosition;_yPosition;_firstItemFocusRef;_exitFallbackTimeout;_animationsDisabled=de();_allItems;_directDescendantItems=new Ni;_classList={};_panelAnimationState="void";_animationDone=new M;_isAnimating=N(!1);parentMenu;direction;overlayPanelClass;backdropClass;ariaLabel;ariaLabelledby;ariaDescribedby;get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}templateRef;items;lazyContent;overlapTrigger=!1;hasBackdrop;get panelClass(){return this._previousPanelClass}set panelClass(e){let t=this._previousPanelClass,n=L({},this._classList);t&&t.length&&t.split(" ").forEach(a=>{n[a]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(a=>{n[a]=!0}),this._elementRef.nativeElement.className=""),this._classList=n}_previousPanelClass="";get classList(){return this.panelClass}set classList(e){this.panelClass=e}closed=new $;close=this.closed;panelId=s(he).getId("mat-menu-panel-");constructor(){let e=s(Xb);this.overlayPanelClass=e.overlayPanelClass||"",this._xPosition=e.xPosition,this._yPosition=e.yPosition,this.backdropClass=e.backdropClass,this.overlapTrigger=e.overlapTrigger,this.hasBackdrop=e.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new qi(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(Ie(this._directDescendantItems),We(e=>He(...e.map(t=>t._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{let t=this._keyManager;if(this._panelAnimationState==="enter"&&t.activeItem?._hasFocus()){let n=e.toArray(),a=Math.max(0,Math.min(n.length-1,t.activeItemIndex||0));n[a]&&!n[a].disabled?t.setActiveItem(a):t.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy(),clearTimeout(this._exitFallbackTimeout)}_hovered(){return this._directDescendantItems.changes.pipe(Ie(this._directDescendantItems),We(t=>He(...t.map(n=>n._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){let t=e.keyCode,n=this._keyManager;switch(t){case 27:ze(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&this.direction==="ltr"&&this.closed.emit("keydown");break;case 39:this.parentMenu&&this.direction==="rtl"&&this.closed.emit("keydown");break;default:(t===38||t===40)&&n.setFocusOrigin("keyboard"),n.onKeydown(e);return}}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=Fe(()=>{let t=this._resolvePanel();if(!t||!t.contains(document.activeElement)){let n=this._keyManager;n.setFocusOrigin(e).setFirstItemActive(),!n.activeItem&&t&&t.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){}setPositionClasses(e=this.xPosition,t=this.yPosition){this._classList=Se(L({},this._classList),{"mat-menu-before":e==="before","mat-menu-after":e==="after","mat-menu-above":t==="above","mat-menu-below":t==="below"}),this._changeDetectorRef.markForCheck()}_onAnimationDone(e){let t=e===ns;(t||e===hc)&&(t&&(clearTimeout(this._exitFallbackTimeout),this._exitFallbackTimeout=void 0),this._animationDone.next(t?"void":"enter"),this._isAnimating.set(!1))}_onAnimationStart(e){(e===hc||e===ns)&&this._isAnimating.set(!0)}_setIsOpen(e){if(this._panelAnimationState=e?"enter":"void",e){if(this._keyManager.activeItemIndex===0){let t=this._resolvePanel();t&&(t.scrollTop=0)}}else this._animationsDisabled||(this._exitFallbackTimeout=setTimeout(()=>this._onAnimationDone(ns),200));this._animationsDisabled&&setTimeout(()=>{this._onAnimationDone(e?hc:ns)}),this._changeDetectorRef.markForCheck()}_updateDirectDescendants(){this._allItems.changes.pipe(Ie(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(t=>t._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}_resolvePanel(){let e=null;return this._directDescendantItems.length&&(e=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),e}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-menu"]],contentQueries:function(t,n,a){if(t&1&&tt(a,Yb,5)(a,In,5)(a,In,4),t&2){let r;T(r=R())&&(n.lazyContent=r.first),T(r=R())&&(n._allItems=r),T(r=R())&&(n.items=r)}},viewQuery:function(t,n){if(t&1&&we(qe,5),t&2){let a;T(a=R())&&(n.templateRef=a.first)}},hostVars:3,hostBindings:function(t,n){t&2&&Y("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",F],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>e==null?null:F(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],features:[te([{provide:pc,useExisting:i}])],ngContentSelectors:qb,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel",3,"click","animationstart","animationend","animationcancel","id"],[1,"mat-mdc-menu-content"]],template:function(t,n){t&1&&(le(),La(0,Kb,3,12,"ng-template"))},styles:[`mat-menu {
|
|
3355
3355
|
display: none;
|
|
3356
3356
|
}
|
|
3357
3357
|
|
|
@@ -3543,15 +3543,15 @@ input.mat-mdc-chip-input {
|
|
|
3543
3543
|
position: absolute;
|
|
3544
3544
|
pointer-events: none;
|
|
3545
3545
|
}
|
|
3546
|
-
`],encapsulation:2})}return i})(),Xb=new b("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>ci(i)}});var bo=new WeakMap,Zb=(()=>{class i{_canHaveBackdrop;_element=s(O);_viewContainerRef=s(qe);_menuItemInstance=s(In,{optional:!0,self:!0});_dir=s(He,{optional:!0});_focusMonitor=s(Dt);_ngZone=s(j);_injector=s(q);_scrollStrategy=s(Xb);_changeDetectorRef=s(ie);_animationsDisabled=de();_portal;_overlayRef=null;_menuOpen=!1;_closingActionsSubscription=_e.EMPTY;_menuCloseSubscription=_e.EMPTY;_pendingRemoval;_parentMaterialMenu;_parentInnerPadding;_openedBy=void 0;get _menu(){return this._menuInternal}set _menu(e){e!==this._menuInternal&&(this._menuInternal=e,this._menuCloseSubscription.unsubscribe(),e?(this._parentMaterialMenu,this._menuCloseSubscription=e.close.subscribe(t=>{this._destroyMenu(t),(t==="click"||t==="tab")&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(t)})):this._destroyMenu(),this._menuItemInstance?._setTriggersSubmenu(this._triggersSubmenu()))}_menuInternal=null;constructor(e){this._canHaveBackdrop=e;let t=s(pc,{optional:!0});this._parentMaterialMenu=t instanceof rn?t:void 0}ngOnDestroy(){this._menu&&this._ownsMenu(this._menu)&&bo.delete(this._menu),this._pendingRemoval?.unsubscribe(),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null)}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this._menu)}_closeMenu(){this._menu?.close.emit()}_openMenu(e){if(this._triggerIsAriaDisabled())return;let t=this._menu;if(this._menuOpen||!t)return;this._pendingRemoval?.unsubscribe();let n=bo.get(t);bo.set(t,this),n&&n!==this&&n._closeMenu();let a=this._createOverlay(t),r=a.getConfig(),m=r.positionStrategy;this._setPosition(t,m),this._canHaveBackdrop?r.hasBackdrop=t.hasBackdrop==null?!this._triggersSubmenu():t.hasBackdrop:r.hasBackdrop=t.hasBackdrop??!1,a.hasAttached()||(a.attach(this._getPortal(t)),t.lazyContent?.attach(this.menuData)),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this._closeMenu()),t.parentMenu=this._triggersSubmenu()?this._parentMaterialMenu:void 0,t.direction=this.dir,e&&t.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0),t instanceof rn&&(t._setIsOpen(!0),t._directDescendantItems.changes.pipe(ne(t.close)).subscribe(()=>{m.withLockedPosition(!1).reapplyLastPosition(),m.withLockedPosition(!0)}))}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}_destroyMenu(e){let t=this._overlayRef,n=this._menu;!t||!this.menuOpen||(this._closingActionsSubscription.unsubscribe(),this._pendingRemoval?.unsubscribe(),n instanceof rn&&this._ownsMenu(n)?(this._pendingRemoval=n._animationDone.pipe(ot(1)).subscribe(()=>{t.detach(),bo.has(n)||n.lazyContent?.detach()}),n._setIsOpen(!1)):(t.detach(),n?.lazyContent?.detach()),n&&this._ownsMenu(n)&&bo.delete(n),this.restoreFocus&&(e==="keydown"||!this._openedBy||!this._triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,this._setIsMenuOpen(!1))}_setIsMenuOpen(e){e!==this._menuOpen&&(this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this._triggersSubmenu()&&this._menuItemInstance._setHighlighted(e),this._changeDetectorRef.markForCheck())}_createOverlay(e){if(!this._overlayRef){let t=this._getOverlayConfig(e);this._subscribeToPositions(e,t.positionStrategy),this._overlayRef=Pt(this._injector,t),this._overlayRef.keydownEvents().subscribe(n=>{this._menu instanceof rn&&this._menu._handleKeydown(n)})}return this._overlayRef}_getOverlayConfig(e){return new Ft({positionStrategy:Ti(this._injector,this._getOverlayOrigin()).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:e.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:e.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir||"ltr",disableAnimations:this._animationsDisabled})}_subscribeToPositions(e,t){e.setPositionClasses&&t.positionChanges.subscribe(n=>{this._ngZone.run(()=>{let a=n.connectionPair.overlayX==="start"?"after":"before",r=n.connectionPair.overlayY==="top"?"below":"above";e.setPositionClasses(a,r)})})}_setPosition(e,t){let[n,a]=e.xPosition==="before"?["end","start"]:["start","end"],[r,m]=e.yPosition==="above"?["bottom","top"]:["top","bottom"],[h,g]=[r,m],[_,y]=[n,a],L=0;if(this._triggersSubmenu()){if(y=n=e.xPosition==="before"?"start":"end",a=_=n==="end"?"start":"end",this._parentMaterialMenu){if(this._parentInnerPadding==null){let U=this._parentMaterialMenu.items.first;this._parentInnerPadding=U?U._getHostElement().offsetTop:0}L=r==="bottom"?this._parentInnerPadding:-this._parentInnerPadding}}else e.overlapTrigger||(h=r==="top"?"bottom":"top",g=m==="top"?"bottom":"top");t.withPositions([{originX:n,originY:h,overlayX:_,overlayY:r,offsetY:L},{originX:a,originY:h,overlayX:y,overlayY:r,offsetY:L},{originX:n,originY:g,overlayX:_,overlayY:m,offsetY:-L},{originX:a,originY:g,overlayX:y,overlayY:m,offsetY:-L}])}_menuClosingActions(){let e=this._getOutsideClickStream(this._overlayRef),t=this._overlayRef.detachments(),n=this._parentMaterialMenu?this._parentMaterialMenu.closed:ge(),a=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(pe(r=>this._menuOpen&&r!==this._menuItemInstance)):ge();return je(e,n,a,t)}_getPortal(e){return(!this._portal||this._portal.templateRef!==e.templateRef)&&(this._portal=new Ct(e.templateRef,this._viewContainerRef)),this._portal}_ownsMenu(e){return bo.get(e)===this}_triggerIsAriaDisabled(){return F(this._element.nativeElement.getAttribute("aria-disabled"))}static \u0275fac=function(t){Pa()};static \u0275dir=x({type:i})}return i})(),os=(()=>{class i extends Zb{_cleanupTouchstart;_hoverSubscription=_e.EMPTY;get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){this._menu=e}menuData;restoreFocus=!0;menuOpened=new $;onMenuOpen=this.menuOpened;menuClosed=new $;onMenuClose=this.menuClosed;constructor(){super(!0);let e=s(ue);this._cleanupTouchstart=e.listen(this._element.nativeElement,"touchstart",t=>{bn(t)||(this._openedBy="touch")},{passive:!0})}triggersSubmenu(){return super._triggersSubmenu()}toggleMenu(){return this.menuOpen?this.closeMenu():this.openMenu()}openMenu(){this._openMenu(!0)}closeMenu(){this._closeMenu()}updatePosition(){this._overlayRef?.updatePosition()}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTouchstart(),this._hoverSubscription.unsubscribe()}_getOverlayOrigin(){return this._element}_getOutsideClickStream(e){return e.backdropClick()}_handleMousedown(e){_n(e)||(this._openedBy=e.button===0?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){let t=e.keyCode;(t===13||t===32)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(t===39&&this.dir==="ltr"||t===37&&this.dir==="rtl")&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){this.triggersSubmenu()&&this._parentMaterialMenu&&(this._hoverSubscription=this._parentMaterialMenu._hovered().subscribe(e=>{e===this._menuItemInstance&&!e.disabled&&this._parentMaterialMenu?._panelAnimationState!=="void"&&(this._openedBy="mouse",this._openMenu(!1))}))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(t,n){t&1&&I("click",function(r){return n._handleClick(r)})("mousedown",function(r){return n._handleMousedown(r)})("keydown",function(r){return n._handleKeydown(r)}),t&2&&Y("aria-haspopup",n.menu?"menu":null)("aria-expanded",n.menuOpen)("aria-controls",n.menuOpen?n.menu?.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],features:[X]})}return i})();var as=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[bi,kt,Q,ri]})}return i})();function Qb(i,o){if(i&1){let e=Ke();l(0,"div",1)(1,"button",2),I("click",function(){De(e);let n=C();return ke(n.action())}),u(2),c()()}if(i&2){let e=C();d(2),be(" ",e.data.action," ")}}var Jb=["label"];function ev(i,o){}var tv=Math.pow(2,31)-1,ya=class{_overlayRef;instance;containerInstance;_afterDismissed=new M;_afterOpened=new M;_onAction=new M;_durationTimeoutId;_dismissedByAction=!1;constructor(o,e){this._overlayRef=e,this.containerInstance=o,o._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete(),this.dismiss()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(o){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(o,tv))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}},Ph=new b("MatSnackBarData"),vo=class{politeness="polite";announcementMessage="";viewContainerRef;duration=0;panelClass;direction;data=null;horizontalPosition="center";verticalPosition="bottom"},iv=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matSnackBarLabel",""]],hostAttrs:[1,"mat-mdc-snack-bar-label","mdc-snackbar__label"]})}return i})(),nv=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matSnackBarActions",""]],hostAttrs:[1,"mat-mdc-snack-bar-actions","mdc-snackbar__actions"]})}return i})(),ov=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matSnackBarAction",""]],hostAttrs:[1,"mat-mdc-snack-bar-action","mdc-snackbar__action"]})}return i})(),av=(()=>{class i{snackBarRef=s(ya);data=s(Ph);action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-mdc-simple-snack-bar"],exportAs:["matSnackBar"],decls:3,vars:2,consts:[["matSnackBarLabel",""],["matSnackBarActions",""],["matButton","","matSnackBarAction","",3,"click"]],template:function(t,n){t&1&&(l(0,"div",0),u(1),c(),S(2,Qb,3,1,"div",1)),t&2&&(d(),be(" ",n.data.message,`
|
|
3547
|
-
`),d(),E(n.hasAction?2:-1))},dependencies:[ht,
|
|
3546
|
+
`],encapsulation:2})}return i})(),Zb=new b("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>mi(i)}});var vo=new WeakMap,Qb=(()=>{class i{_canHaveBackdrop;_element=s(O);_viewContainerRef=s(Ke);_menuItemInstance=s(In,{optional:!0,self:!0});_dir=s(Ue,{optional:!0});_focusMonitor=s(St);_ngZone=s(j);_injector=s(q);_scrollStrategy=s(Zb);_changeDetectorRef=s(ie);_animationsDisabled=de();_portal;_overlayRef=null;_menuOpen=!1;_closingActionsSubscription=ve.EMPTY;_menuCloseSubscription=ve.EMPTY;_pendingRemoval;_parentMaterialMenu;_parentInnerPadding;_openedBy=void 0;get _menu(){return this._menuInternal}set _menu(e){e!==this._menuInternal&&(this._menuInternal=e,this._menuCloseSubscription.unsubscribe(),e?(this._parentMaterialMenu,this._menuCloseSubscription=e.close.subscribe(t=>{this._destroyMenu(t),(t==="click"||t==="tab")&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(t)})):this._destroyMenu(),this._menuItemInstance?._setTriggersSubmenu(this._triggersSubmenu()))}_menuInternal=null;constructor(e){this._canHaveBackdrop=e;let t=s(pc,{optional:!0});this._parentMaterialMenu=t instanceof rn?t:void 0}ngOnDestroy(){this._menu&&this._ownsMenu(this._menu)&&vo.delete(this._menu),this._pendingRemoval?.unsubscribe(),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null)}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this._menu)}_closeMenu(){this._menu?.close.emit()}_openMenu(e){if(this._triggerIsAriaDisabled())return;let t=this._menu;if(this._menuOpen||!t)return;this._pendingRemoval?.unsubscribe();let n=vo.get(t);vo.set(t,this),n&&n!==this&&n._closeMenu();let a=this._createOverlay(t),r=a.getConfig(),m=r.positionStrategy;this._setPosition(t,m),this._canHaveBackdrop?r.hasBackdrop=t.hasBackdrop==null?!this._triggersSubmenu():t.hasBackdrop:r.hasBackdrop=t.hasBackdrop??!1,a.hasAttached()||(a.attach(this._getPortal(t)),t.lazyContent?.attach(this.menuData)),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this._closeMenu()),t.parentMenu=this._triggersSubmenu()?this._parentMaterialMenu:void 0,t.direction=this.dir,e&&t.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0),t instanceof rn&&(t._setIsOpen(!0),t._directDescendantItems.changes.pipe(ne(t.close)).subscribe(()=>{m.withLockedPosition(!1).reapplyLastPosition(),m.withLockedPosition(!0)}))}focus(e,t){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}_destroyMenu(e){let t=this._overlayRef,n=this._menu;!t||!this.menuOpen||(this._closingActionsSubscription.unsubscribe(),this._pendingRemoval?.unsubscribe(),n instanceof rn&&this._ownsMenu(n)?(this._pendingRemoval=n._animationDone.pipe(ot(1)).subscribe(()=>{t.detach(),vo.has(n)||n.lazyContent?.detach()}),n._setIsOpen(!1)):(t.detach(),n?.lazyContent?.detach()),n&&this._ownsMenu(n)&&vo.delete(n),this.restoreFocus&&(e==="keydown"||!this._openedBy||!this._triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,this._setIsMenuOpen(!1))}_setIsMenuOpen(e){e!==this._menuOpen&&(this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this._triggersSubmenu()&&this._menuItemInstance._setHighlighted(e),this._changeDetectorRef.markForCheck())}_createOverlay(e){if(!this._overlayRef){let t=this._getOverlayConfig(e);this._subscribeToPositions(e,t.positionStrategy),this._overlayRef=Pt(this._injector,t),this._overlayRef.keydownEvents().subscribe(n=>{this._menu instanceof rn&&this._menu._handleKeydown(n)})}return this._overlayRef}_getOverlayConfig(e){return new Ft({positionStrategy:Ti(this._injector,this._getOverlayOrigin()).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:e.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:e.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir||"ltr",disableAnimations:this._animationsDisabled})}_subscribeToPositions(e,t){e.setPositionClasses&&t.positionChanges.subscribe(n=>{this._ngZone.run(()=>{let a=n.connectionPair.overlayX==="start"?"after":"before",r=n.connectionPair.overlayY==="top"?"below":"above";e.setPositionClasses(a,r)})})}_setPosition(e,t){let[n,a]=e.xPosition==="before"?["end","start"]:["start","end"],[r,m]=e.yPosition==="above"?["bottom","top"]:["top","bottom"],[h,g]=[r,m],[_,y]=[n,a],B=0;if(this._triggersSubmenu()){if(y=n=e.xPosition==="before"?"start":"end",a=_=n==="end"?"start":"end",this._parentMaterialMenu){if(this._parentInnerPadding==null){let U=this._parentMaterialMenu.items.first;this._parentInnerPadding=U?U._getHostElement().offsetTop:0}B=r==="bottom"?this._parentInnerPadding:-this._parentInnerPadding}}else e.overlapTrigger||(h=r==="top"?"bottom":"top",g=m==="top"?"bottom":"top");t.withPositions([{originX:n,originY:h,overlayX:_,overlayY:r,offsetY:B},{originX:a,originY:h,overlayX:y,overlayY:r,offsetY:B},{originX:n,originY:g,overlayX:_,overlayY:m,offsetY:-B},{originX:a,originY:g,overlayX:y,overlayY:m,offsetY:-B}])}_menuClosingActions(){let e=this._getOutsideClickStream(this._overlayRef),t=this._overlayRef.detachments(),n=this._parentMaterialMenu?this._parentMaterialMenu.closed:be(),a=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(ge(r=>this._menuOpen&&r!==this._menuItemInstance)):be();return He(e,n,a,t)}_getPortal(e){return(!this._portal||this._portal.templateRef!==e.templateRef)&&(this._portal=new wt(e.templateRef,this._viewContainerRef)),this._portal}_ownsMenu(e){return vo.get(e)===this}_triggerIsAriaDisabled(){return F(this._element.nativeElement.getAttribute("aria-disabled"))}static \u0275fac=function(t){Pa()};static \u0275dir=x({type:i})}return i})(),os=(()=>{class i extends Qb{_cleanupTouchstart;_hoverSubscription=ve.EMPTY;get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){this._menu=e}menuData;restoreFocus=!0;menuOpened=new $;onMenuOpen=this.menuOpened;menuClosed=new $;onMenuClose=this.menuClosed;constructor(){super(!0);let e=s(ue);this._cleanupTouchstart=e.listen(this._element.nativeElement,"touchstart",t=>{bn(t)||(this._openedBy="touch")},{passive:!0})}triggersSubmenu(){return super._triggersSubmenu()}toggleMenu(){return this.menuOpen?this.closeMenu():this.openMenu()}openMenu(){this._openMenu(!0)}closeMenu(){this._closeMenu()}updatePosition(){this._overlayRef?.updatePosition()}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTouchstart(),this._hoverSubscription.unsubscribe()}_getOverlayOrigin(){return this._element}_getOutsideClickStream(e){return e.backdropClick()}_handleMousedown(e){_n(e)||(this._openedBy=e.button===0?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){let t=e.keyCode;(t===13||t===32)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(t===39&&this.dir==="ltr"||t===37&&this.dir==="rtl")&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){this.triggersSubmenu()&&this._parentMaterialMenu&&(this._hoverSubscription=this._parentMaterialMenu._hovered().subscribe(e=>{e===this._menuItemInstance&&!e.disabled&&this._parentMaterialMenu?._panelAnimationState!=="void"&&(this._openedBy="mouse",this._openMenu(!1))}))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(t,n){t&1&&I("click",function(r){return n._handleClick(r)})("mousedown",function(r){return n._handleMousedown(r)})("keydown",function(r){return n._handleKeydown(r)}),t&2&&Y("aria-haspopup",n.menu?"menu":null)("aria-expanded",n.menuOpen)("aria-controls",n.menuOpen?n.menu?.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],features:[X]})}return i})();var as=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[bi,Et,Q,li]})}return i})();function Jb(i,o){if(i&1){let e=Ve();l(0,"div",1)(1,"button",2),I("click",function(){pe(e);let n=C();return fe(n.action())}),u(2),c()()}if(i&2){let e=C();d(2),ye(" ",e.data.action," ")}}var ev=["label"];function tv(i,o){}var iv=Math.pow(2,31)-1,ya=class{_overlayRef;instance;containerInstance;_afterDismissed=new M;_afterOpened=new M;_onAction=new M;_durationTimeoutId;_dismissedByAction=!1;constructor(o,e){this._overlayRef=e,this.containerInstance=o,o._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete(),this.dismiss()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(o){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(o,iv))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}},Nh=new b("MatSnackBarData"),yo=class{politeness="polite";announcementMessage="";viewContainerRef;duration=0;panelClass;direction;data=null;horizontalPosition="center";verticalPosition="bottom"},nv=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matSnackBarLabel",""]],hostAttrs:[1,"mat-mdc-snack-bar-label","mdc-snackbar__label"]})}return i})(),ov=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matSnackBarActions",""]],hostAttrs:[1,"mat-mdc-snack-bar-actions","mdc-snackbar__actions"]})}return i})(),av=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matSnackBarAction",""]],hostAttrs:[1,"mat-mdc-snack-bar-action","mdc-snackbar__action"]})}return i})(),rv=(()=>{class i{snackBarRef=s(ya);data=s(Nh);action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-mdc-simple-snack-bar"],exportAs:["matSnackBar"],decls:3,vars:2,consts:[["matSnackBarLabel",""],["matSnackBarActions",""],["matButton","","matSnackBarAction","",3,"click"]],template:function(t,n){t&1&&(l(0,"div",0),u(1),c(),S(2,Jb,3,1,"div",1)),t&2&&(d(),ye(" ",n.data.message,`
|
|
3547
|
+
`),d(),E(n.hasAction?2:-1))},dependencies:[ht,nv,ov,av],styles:[`.mat-mdc-simple-snack-bar {
|
|
3548
3548
|
display: flex;
|
|
3549
3549
|
}
|
|
3550
3550
|
.mat-mdc-simple-snack-bar .mat-mdc-snack-bar-label {
|
|
3551
3551
|
max-height: 50vh;
|
|
3552
3552
|
overflow: auto;
|
|
3553
3553
|
}
|
|
3554
|
-
`],encapsulation:2})}return i})(),fc="_mat-snack-bar-enter",gc="_mat-snack-bar-exit",
|
|
3554
|
+
`],encapsulation:2})}return i})(),fc="_mat-snack-bar-enter",gc="_mat-snack-bar-exit",sv=(()=>{class i extends Ji{_ngZone=s(j);_elementRef=s(O);_changeDetectorRef=s(ie);_platform=s(se);_animationsDisabled=de();snackBarConfig=s(yo);_document=s(G);_trackedModals=new Set;_enterFallback;_exitFallback;_injector=s(q);_announceDelay=150;_announceTimeoutId;_destroyed=!1;_portalOutlet;_onAnnounce=new M;_onExit=new M;_onEnter=new M;_animationState="void";_live;_label;_role;_liveElementId=s(he).getId("mat-snack-bar-container-live-");constructor(){super();let e=this.snackBarConfig;e.politeness==="assertive"&&!e.announcementMessage?this._live="assertive":e.politeness==="off"?this._live="off":this._live="polite",this._platform.FIREFOX&&(this._live==="polite"&&(this._role="status"),this._live==="assertive"&&(this._role="alert"))}attachComponentPortal(e){this._assertNotAttached();let t=this._portalOutlet.attachComponentPortal(e);return this._afterPortalAttached(),t}attachTemplatePortal(e){this._assertNotAttached();let t=this._portalOutlet.attachTemplatePortal(e);return this._afterPortalAttached(),t}attachDomPortal=e=>{this._assertNotAttached();let t=this._portalOutlet.attachDomPortal(e);return this._afterPortalAttached(),t};onAnimationEnd(e){e===gc?this._completeExit():e===fc&&(clearTimeout(this._enterFallback),this._ngZone.run(()=>{this._onEnter.next(),this._onEnter.complete()}))}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.markForCheck(),this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce(),this._animationsDisabled?Fe(()=>{this._ngZone.run(()=>queueMicrotask(()=>this.onAnimationEnd(fc)))},{injector:this._injector}):(clearTimeout(this._enterFallback),this._enterFallback=setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-snack-bar-fallback-visible"),this.onAnimationEnd(fc)},200)))}exit(){return this._destroyed?be(void 0):(this._ngZone.run(()=>{this._animationState="hidden",this._changeDetectorRef.markForCheck(),this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._animationsDisabled?Fe(()=>{this._ngZone.run(()=>queueMicrotask(()=>this.onAnimationEnd(gc)))},{injector:this._injector}):(clearTimeout(this._exitFallback),this._exitFallback=setTimeout(()=>this.onAnimationEnd(gc),200))}),this._onExit)}ngOnDestroy(){this._destroyed=!0,this._clearFromModals(),this._completeExit()}_completeExit(){clearTimeout(this._exitFallback),queueMicrotask(()=>{this._onExit.next(),this._onExit.complete()})}_afterPortalAttached(){let e=this._elementRef.nativeElement,t=this.snackBarConfig.panelClass;t&&(Array.isArray(t)?t.forEach(r=>e.classList.add(r)):e.classList.add(t)),this._exposeToModals();let n=this._label.nativeElement,a="mdc-snackbar__label";n.classList.toggle(a,!n.querySelector(`.${a}`))}_exposeToModals(){let e=this._liveElementId,t=this._document.querySelectorAll('body > .cdk-overlay-container [aria-modal="true"]');for(let n=0;n<t.length;n++){let a=t[n],r=a.getAttribute("aria-owns");this._trackedModals.add(a),r?r.indexOf(e)===-1&&a.setAttribute("aria-owns",r+" "+e):a.setAttribute("aria-owns",e)}}_clearFromModals(){this._trackedModals.forEach(e=>{let t=e.getAttribute("aria-owns");if(t){let n=t.replace(this._liveElementId,"").trim();n.length>0?e.setAttribute("aria-owns",n):e.removeAttribute("aria-owns")}}),this._trackedModals.clear()}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{if(this._destroyed)return;let e=this._elementRef.nativeElement,t=e.querySelector("[aria-hidden]"),n=e.querySelector("[aria-live]");if(t&&n){let a=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(a=document.activeElement),t.removeAttribute("aria-hidden"),n.appendChild(t),a?.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-snack-bar-container"]],viewQuery:function(t,n){if(t&1&&we(vi,7)(ev,7),t&2){let a;T(a=R())&&(n._portalOutlet=a.first),T(a=R())&&(n._label=a.first)}},hostAttrs:[1,"mdc-snackbar","mat-mdc-snack-bar-container"],hostVars:6,hostBindings:function(t,n){t&1&&I("animationend",function(r){return n.onAnimationEnd(r.animationName)})("animationcancel",function(r){return n.onAnimationEnd(r.animationName)}),t&2&&f("mat-snack-bar-container-enter",n._animationState==="visible")("mat-snack-bar-container-exit",n._animationState==="hidden")("mat-snack-bar-container-animations-enabled",!n._animationsDisabled)},features:[X],decls:6,vars:3,consts:[["label",""],[1,"mdc-snackbar__surface","mat-mdc-snackbar-surface"],[1,"mat-mdc-snack-bar-label"],["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(t,n){t&1&&(l(0,"div",1)(1,"div",2,0)(3,"div",3),Re(4,tv,0,0,"ng-template",4),c(),v(5,"div"),c()()),t&2&&(d(5),Y("aria-live",n._live)("role",n._role)("id",n._liveElementId))},dependencies:[vi],styles:[`@keyframes _mat-snack-bar-enter {
|
|
3555
3555
|
from {
|
|
3556
3556
|
transform: scale(0.8);
|
|
3557
3557
|
opacity: 0;
|
|
@@ -3667,7 +3667,7 @@ input.mat-mdc-chip-input {
|
|
|
3667
3667
|
.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled) .mat-ripple-element {
|
|
3668
3668
|
opacity: 0.1;
|
|
3669
3669
|
}
|
|
3670
|
-
`],encapsulation:2,changeDetection:1})}return i})(),
|
|
3670
|
+
`],encapsulation:2,changeDetection:1})}return i})(),lv=new b("mat-snack-bar-default-options",{providedIn:"root",factory:()=>new yo}),Lh=(()=>{class i{_live=s(qo);_injector=s(q);_breakpointObserver=s(fn);_parentSnackBar=s(i,{optional:!0,skipSelf:!0});_defaultConfig=s(lv);_animationsDisabled=de();_snackBarRefAtThisLevel=null;simpleSnackBarComponent=rv;snackBarContainerComponent=sv;handsetCssClass="mat-mdc-snack-bar-handset";get _openedSnackBarRef(){let e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}openFromComponent(e,t){return this._attach(e,t)}openFromTemplate(e,t){return this._attach(e,t)}open(e,t="",n){let a=L(L({},this._defaultConfig),n);return a.data={message:e,action:t},a.announcementMessage===e&&(a.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,a)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(e,t){let n=t&&t.viewContainerRef&&t.viewContainerRef.injector,a=q.create({parent:n||this._injector,providers:[{provide:yo,useValue:t}]}),r=new di(this.snackBarContainerComponent,t.viewContainerRef,a),m=e.attach(r);return m.instance.snackBarConfig=t,m.instance}_attach(e,t){let n=L(L(L({},new yo),this._defaultConfig),t),a=this._createOverlay(n),r=this._attachSnackBarContainer(a,n),m=new ya(r,a);if(e instanceof qe){let h=new wt(e,null,{$implicit:n.data,snackBarRef:m});m.instance=r.attachTemplatePortal(h)}else{let h=this._createInjector(n,m),g=new di(e,void 0,h),_=r.attachComponentPortal(g);m.instance=_.instance}return this._breakpointObserver.observe(dr.HandsetPortrait).pipe(ne(a.detachments())).subscribe(h=>{a.overlayElement.classList.toggle(this.handsetCssClass,h.matches)}),n.announcementMessage&&r._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(m,n),this._openedSnackBarRef=m,this._openedSnackBarRef}_animateSnackBar(e,t){e.afterDismissed().subscribe(()=>{this._openedSnackBarRef==e&&(this._openedSnackBarRef=null),t.announcementMessage&&this._live.clear()}),t.duration&&t.duration>0&&e.afterOpened().subscribe(()=>e._dismissAfter(t.duration)),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter()}_createOverlay(e){let t=new Ft;t.direction=e.direction;let n=en(this._injector),a=e.direction==="rtl",r=e.horizontalPosition==="left"||e.horizontalPosition==="start"&&!a||e.horizontalPosition==="end"&&a,m=!r&&e.horizontalPosition!=="center";return r?n.left("0"):m?n.right("0"):n.centerHorizontally(),e.verticalPosition==="top"?n.top("0"):n.bottom("0"),t.positionStrategy=n,t.disableAnimations=this._animationsDisabled,Pt(this._injector,t)}_createInjector(e,t){let n=e&&e.viewContainerRef&&e.viewContainerRef.injector;return q.create({parent:n||this._injector,providers:[{provide:ya,useValue:t},{provide:Nh,useValue:e.data}]})}static \u0275fac=function(t){return new(t||i)};static \u0275prov=W({token:i,factory:i.\u0275fac})}return i})();var Zt=(()=>{class i{constructor(){this.http=s(jt),this.url="/api/services"}fetchServices(){return this.http.get(this.url)}control(e,t){return this.http.post(`${this.url}/control`,{name:e,action:t})}fetchConfigs(){return this.http.get(`${this.url}/config`)}getConfig(e){return this.http.get(`${this.url}/config/${e}`)}saveConfig(e){return this.http.post(`${this.url}/config`,e)}deleteConfig(e){return this.http.delete(`${this.url}/config/${e}`)}listAvailableServices(){return this.http.get(`${this.url}/managed/available`)}listManagedServices(){return this.http.get(`${this.url}/managed`)}addManagedService(e){return this.http.post(`${this.url}/managed`,{name:e})}removeManagedService(e){return this.http.delete(`${this.url}/managed`,{body:{name:e}})}fetchJournal(e,t=100){return this.http.get(`${this.url}/journal/${e}`,{params:{lines:t}})}getLlamaAutocomplete(e,t,n){let a={type:e,query:t};return n&&(a.binary=n),this.http.get(`${this.url}/llama/autocomplete`,{params:a})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var Bh="journal-selected-service",rs=(()=>{class i{constructor(){this.selectedService=N(this.readSaved())}select(e){this.selectedService.set(e),localStorage.setItem(Bh,JSON.stringify(e))}readSaved(){let e=localStorage.getItem(Bh);if(e===null)return null;try{return JSON.parse(e)}catch(t){return null}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var ss=(()=>{class i{constructor(){this.serviceService=s(Zt),this.services=N([]),this.loaded=N(!1),this.error=N(null)}refresh(){return Ce(this,null,function*(){try{let e=yield je(this.serviceService.fetchServices());this.services.set(e),this.error.set(null),this.loaded.set(!0)}catch(e){this.error.set(e instanceof Error?e.message:String(e)),console.error("[ServiceListService] refresh error:",e)}})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var Vh=(()=>{class i{_animationsDisabled=de();state="unchecked";disabled=!1;appearance="full";static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(t,n){t&2&&f("mat-pseudo-checkbox-indeterminate",n.state==="indeterminate")("mat-pseudo-checkbox-checked",n.state==="checked")("mat-pseudo-checkbox-disabled",n.disabled)("mat-pseudo-checkbox-minimal",n.appearance==="minimal")("mat-pseudo-checkbox-full",n.appearance==="full")("_mat-animation-noopable",n._animationsDisabled)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(t,n){},styles:[`.mat-pseudo-checkbox {
|
|
3671
3671
|
border-radius: 2px;
|
|
3672
3672
|
cursor: pointer;
|
|
3673
3673
|
display: inline-block;
|
|
@@ -3773,7 +3773,7 @@ input.mat-mdc-chip-input {
|
|
|
3773
3773
|
top: 6px;
|
|
3774
3774
|
width: 12px;
|
|
3775
3775
|
}
|
|
3776
|
-
`],encapsulation:2})}return i})();var
|
|
3776
|
+
`],encapsulation:2})}return i})();var cv=["text"],dv=[[["mat-icon"]],"*"],mv=["mat-icon","*"];function uv(i,o){if(i&1&&v(0,"mat-pseudo-checkbox",1),i&2){let e=C();w("disabled",e.disabled)("state",e.selected?"checked":"unchecked")}}function hv(i,o){if(i&1&&v(0,"mat-pseudo-checkbox",3),i&2){let e=C();w("disabled",e.disabled)}}function pv(i,o){if(i&1&&(l(0,"span",4),u(1),c()),i&2){let e=C();d(),ye("(",e.group.label,")")}}var xa=new b("MAT_OPTION_PARENT_COMPONENT"),wa=new b("MatOptgroup");var Ca=class{source;isUserInput;constructor(o,e=!1){this.source=o,this.isUserInput=e}},Mt=(()=>{class i{_element=s(O);_changeDetectorRef=s(ie);_parent=s(xa,{optional:!0});group=s(wa,{optional:!0});_signalDisableRipple=!1;_selected=!1;_active=!1;_mostRecentViewValue="";get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}value;id=s(he).getId("mat-option-");get disabled(){return this.group&&this.group.disabled||this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=N(!1);get disableRipple(){return this._signalDisableRipple?this._parent.disableRipple():!!this._parent?.disableRipple}get hideSingleSelectionIndicator(){return!!(this._parent&&this._parent.hideSingleSelectionIndicator)}onSelectionChange=new $;_text;_stateChanges=new M;constructor(){let e=s(Te);e.load(xt),e.load(Gi),this._signalDisableRipple=!!this._parent&&Pi(this._parent.disableRipple)}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(e=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}deselect(e=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}focus(e,t){let n=this._getHostElement();typeof n.focus=="function"&&n.focus(t)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(e){(e.keyCode===13||e.keyCode===32)&&!ze(e)&&(this._selectViaInteraction(),e.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=this.multiple?!this._selected:!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){let e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=e)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(e=!1){this.onSelectionChange.emit(new Ca(this,e))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-option"]],viewQuery:function(t,n){if(t&1&&we(cv,7),t&2){let a;T(a=R())&&(n._text=a.first)}},hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(t,n){t&1&&I("click",function(){return n._selectViaInteraction()})("keydown",function(r){return n._handleKeydown(r)}),t&2&&(at("id",n.id),Y("aria-selected",n.selected)("aria-disabled",n.disabled.toString()),f("mdc-list-item--selected",n.selected)("mat-mdc-option-multiple",n.multiple)("mat-mdc-option-active",n.active)("mdc-list-item--disabled",n.disabled))},inputs:{value:"value",id:"id",disabled:[2,"disabled","disabled",F]},outputs:{onSelectionChange:"onSelectionChange"},exportAs:["matOption"],ngContentSelectors:mv,decls:8,vars:5,consts:[["text",""],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],[1,"mdc-list-item__primary-text"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled"]],template:function(t,n){t&1&&(le(dv),S(0,uv,1,2,"mat-pseudo-checkbox",1),H(1),l(2,"span",2,0),H(4,1),c(),S(5,hv,1,1,"mat-pseudo-checkbox",3),S(6,pv,2,1,"span",4),v(7,"div",5)),t&2&&(E(n.multiple?0:-1),d(5),E(!n.multiple&&n.selected&&!n.hideSingleSelectionIndicator?5:-1),d(),E(n.group&&n.group._inert?6:-1),d(),w("matRippleTrigger",n._getHostElement())("matRippleDisabled",n.disabled||n.disableRipple))},dependencies:[Vh,uo],styles:[`.mat-mdc-option {
|
|
3777
3777
|
-webkit-user-select: none;
|
|
3778
3778
|
user-select: none;
|
|
3779
3779
|
-moz-osx-font-smoothing: grayscale;
|
|
@@ -3894,7 +3894,7 @@ input.mat-mdc-chip-input {
|
|
|
3894
3894
|
.mat-mdc-option-active .mat-focus-indicator::before {
|
|
3895
3895
|
content: "";
|
|
3896
3896
|
}
|
|
3897
|
-
`],encapsulation:2})}return i})();function ls(i,o,e){if(e.length){let t=o.toArray(),n=e.toArray(),a=0;for(let r=0;r<i+1;r++)t[r].group&&t[r].group===n[a]&&a++;return a}return 0}function cs(i,o,e,t){return i<e?i:i+o>e+t?Math.max(0,i-t+o):e}var ds=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var
|
|
3897
|
+
`],encapsulation:2})}return i})();function ls(i,o,e){if(e.length){let t=o.toArray(),n=e.toArray(),a=0;for(let r=0;r<i+1;r++)t[r].group&&t[r].group===n[a]&&a++;return a}return 0}function cs(i,o,e,t){return i<e?i:i+o>e+t?Math.max(0,i-t+o):e}var ds=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var Co=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[bi,ds,Mt,Q]})}return i})();var fv=["panel"],gv=["*"];function _v(i,o){if(i&1&&(Ee(0,"div",1,0),H(2),Pe()),i&2){let e=o.id,t=C();Qe(t._classList),f("mat-mdc-autocomplete-visible",t.showPanel)("mat-mdc-autocomplete-hidden",!t.showPanel)("mat-autocomplete-panel-animations-enabled",!t._animationsDisabled)("mat-primary",t._color==="primary")("mat-accent",t._color==="accent")("mat-warn",t._color==="warn"),at("id",t.id),Y("aria-label",t.ariaLabel||null)("aria-labelledby",t._getPanelAriaLabelledby(e))}}var _c=class{source;option;constructor(o,e){this.source=o,this.option=e}},zh=new b("mat-autocomplete-default-options",{providedIn:"root",factory:()=>({autoActiveFirstOption:!1,autoSelectActiveOption:!1,hideSingleSelectionIndicator:!1,requireSelection:!1,hasBackdrop:!1})}),xo=(()=>{class i{_changeDetectorRef=s(ie);_elementRef=s(O);_defaults=s(zh);_animationsDisabled=de();_activeOptionChanges=ve.EMPTY;_keyManager;showPanel=!1;get isOpen(){return this._isOpen&&this.showPanel}_isOpen=!1;_latestOpeningTrigger;_setColor(e){this._color=e,this._changeDetectorRef.markForCheck()}_color;template;panel;options;optionGroups;ariaLabel;ariaLabelledby;displayWith=null;autoActiveFirstOption;autoSelectActiveOption;requireSelection;panelWidth;disableRipple=!1;optionSelected=new $;opened=new $;closed=new $;optionActivated=new $;set classList(e){this._classList=e,this._elementRef.nativeElement.className=""}_classList;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}_hideSingleSelectionIndicator;_syncParentProperties(){if(this.options)for(let e of this.options)e._changeDetectorRef.markForCheck()}id=s(he).getId("mat-autocomplete-");inertGroups;constructor(){let e=s(se);this.inertGroups=e?.SAFARI||!1,this.autoActiveFirstOption=!!this._defaults.autoActiveFirstOption,this.autoSelectActiveOption=!!this._defaults.autoSelectActiveOption,this.requireSelection=!!this._defaults.requireSelection,this._hideSingleSelectionIndicator=this._defaults.hideSingleSelectionIndicator??!1}ngAfterContentInit(){this._keyManager=new Cn(this.options).withWrap().skipPredicate(this._skipPredicate),this._activeOptionChanges=this._keyManager.change.subscribe(e=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[e]||null})}),this._setVisibility()}ngOnDestroy(){this._keyManager?.destroy(),this._activeOptionChanges.unsubscribe()}_setScrollTop(e){this.panel&&(this.panel.nativeElement.scrollTop=e)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options?.length,this._changeDetectorRef.markForCheck()}_emitSelectEvent(e){let t=new _c(this,e);this.optionSelected.emit(t)}_getPanelAriaLabelledby(e){if(this.ariaLabel)return null;let t=e?e+" ":"";return this.ariaLabelledby?t+this.ariaLabelledby:e}_skipPredicate(){return!1}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-autocomplete"]],contentQueries:function(t,n,a){if(t&1&&tt(a,Mt,5)(a,wa,5),t&2){let r;T(r=R())&&(n.options=r),T(r=R())&&(n.optionGroups=r)}},viewQuery:function(t,n){if(t&1&&we(qe,7)(fv,5),t&2){let a;T(a=R())&&(n.template=a.first),T(a=R())&&(n.panel=a.first)}},hostAttrs:[1,"mat-mdc-autocomplete"],inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:[2,"autoActiveFirstOption","autoActiveFirstOption",F],autoSelectActiveOption:[2,"autoSelectActiveOption","autoSelectActiveOption",F],requireSelection:[2,"requireSelection","requireSelection",F],panelWidth:"panelWidth",disableRipple:[2,"disableRipple","disableRipple",F],classList:[0,"class","classList"],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",F]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},exportAs:["matAutocomplete"],features:[te([{provide:xa,useExisting:i}])],ngContentSelectors:gv,decls:1,vars:0,consts:[["panel",""],["role","listbox",1,"mat-mdc-autocomplete-panel","mdc-menu-surface","mdc-menu-surface--open",3,"id"]],template:function(t,n){t&1&&(le(),La(0,_v,3,17,"ng-template"))},styles:[`div.mat-mdc-autocomplete-panel {
|
|
3898
3898
|
width: 100%;
|
|
3899
3899
|
max-height: 256px;
|
|
3900
3900
|
visibility: hidden;
|
|
@@ -3948,7 +3948,7 @@ div.mat-mdc-autocomplete-panel.mat-mdc-autocomplete-hidden,
|
|
|
3948
3948
|
mat-autocomplete {
|
|
3949
3949
|
display: none;
|
|
3950
3950
|
}
|
|
3951
|
-
`],encapsulation:2})}return i})();var _v={provide:fi,useExisting:lt(()=>Tn),multi:!0};var bv=new b("mat-autocomplete-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>ci(i)}}),Tn=(()=>{class i{_environmentInjector=s(ei);_element=s(O);_injector=s(q);_viewContainerRef=s(qe);_zone=s(j);_changeDetectorRef=s(ie);_dir=s(He,{optional:!0});_formField=s(kn,{optional:!0,host:!0});_viewportRuler=s(Rt);_scrollStrategy=s(bv);_renderer=s(ue);_animationsDisabled=de();_defaults=s(Vh,{optional:!0});_overlayRef=null;_portal;_componentDestroyed=!1;_initialized=new M;_keydownSubscription;_outsideClickSubscription;_cleanupWindowBlur;_previousValue=null;_valueOnAttach=null;_valueOnLastKeydown=null;_positionStrategy;_manuallyFloatingLabel=!1;_closingActionsSubscription;_viewportSubscription=_e.EMPTY;_breakpointObserver=s(fn);_handsetLandscapeSubscription=_e.EMPTY;_canOpenOnNextFocus=!0;_valueBeforeAutoSelection;_pendingAutoselectedOption=null;_closeKeyEventStream=new M;_overlayPanelClass=Ei(this._defaults?.overlayPanelClass||[]);_windowBlurHandler=()=>{this._canOpenOnNextFocus=this.panelOpen||!this._hasFocus()};_onChange=()=>{};_onTouched=()=>{};autocomplete;position="auto";connectedTo;autocompleteAttribute="off";autocompleteDisabled=!1;_aboveClass="mat-mdc-autocomplete-panel-above";ngAfterViewInit(){this._initialized.next(),this._initialized.complete(),this._cleanupWindowBlur=this._renderer.listen("window","blur",this._windowBlurHandler)}ngOnChanges(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){this._cleanupWindowBlur?.(),this._handsetLandscapeSubscription.unsubscribe(),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}_overlayAttached=!1;openPanel(){this._openPanelInternal()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._latestOpeningTrigger===this&&(this.autocomplete._isOpen=!1,this.autocomplete._latestOpeningTrigger=null),this._overlayAttached=!1,this._pendingAutoselectedOption=null,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._updatePanelState(),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return je(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(pe(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(pe(()=>this._overlayAttached)):ge()).pipe(Ae(e=>e instanceof Ca?e:null))}optionSelections=Oi(()=>{let e=this.autocomplete?this.autocomplete.options:null;return e?e.changes.pipe(Ie(e),$e(()=>je(...e.map(t=>t.onSelectionChange)))):this._initialized.pipe($e(()=>this.optionSelections))});get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return new ft(e=>{let t=a=>{let r=it(a),m=this._formField?this._formField.getConnectedOverlayOrigin().nativeElement:null,h=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;this._overlayAttached&&r!==this._element.nativeElement&&!this._hasFocus()&&(!m||!m.contains(r))&&(!h||!h.contains(r))&&this._overlayRef&&!this._overlayRef.overlayElement.contains(r)&&e.next(a)},n=[this._renderer.listen("document","click",t),this._renderer.listen("document","auxclick",t),this._renderer.listen("document","touchend",t)];return()=>{n.forEach(a=>a())}})}writeValue(e){Promise.resolve(null).then(()=>this._assignOptionValue(e))}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this._element.nativeElement.disabled=e}_handleKeydown(e){let t=e,n=t.keyCode,a=Ve(t);if(n===27&&!a&&t.preventDefault(),this._valueOnLastKeydown=this._element.nativeElement.value,this.activeOption&&n===13&&this.panelOpen&&!a)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else if(this.autocomplete){let r=this.autocomplete._keyManager.activeItem,m=n===38||n===40;n===9||m&&!a&&this.panelOpen?this.autocomplete._keyManager.onKeydown(t):m&&this._canOpen()&&this._openPanelInternal(this._valueOnLastKeydown),(m||this.autocomplete._keyManager.activeItem!==r)&&(this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0),this.autocomplete.autoSelectActiveOption&&this.activeOption&&(this._pendingAutoselectedOption||(this._valueBeforeAutoSelection=this._valueOnLastKeydown),this._pendingAutoselectedOption=this.activeOption,this._assignOptionValue(this.activeOption.value)))}}_handleInput(e){let t=e.target,n=t.value;if(t.type==="number"&&(n=n==""?null:parseFloat(n)),this._previousValue!==n){if(this._previousValue=n,this._pendingAutoselectedOption=null,(!this.autocomplete||!this.autocomplete.requireSelection)&&this._onChange(n),!n)this._clearPreviousSelectedOption(null,!1);else if(this.panelOpen&&!this.autocomplete.requireSelection){let a=this.autocomplete.options?.find(r=>r.selected);if(a){let r=this._getDisplayValue(a.value);n!==r&&a.deselect(!1)}}if(this._canOpen()&&this._hasFocus()){let a=this._valueOnLastKeydown??this._element.nativeElement.value;this._valueOnLastKeydown=null,this._openPanelInternal(a)}}}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(this._previousValue),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this._openPanelInternal()}_hasFocus(){return Ui()===this._element.nativeElement}_floatLabel(e=!1){this._formField&&this._formField.floatLabel==="auto"&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField&&(this._formField.floatLabel="auto"),this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){let e=new ft(n=>{Fe(()=>{n.next()},{injector:this._environmentInjector})}),t=this.autocomplete.options?.changes.pipe(Jt(()=>this._positionStrategy.reapplyLastPosition()),Rc(0))??ge();return je(e,t).pipe($e(()=>this._zone.run(()=>{let n=this.panelOpen;return this._resetActiveItem(),this._updatePanelState(),this._changeDetectorRef.detectChanges(),this.panelOpen&&this._overlayRef.updatePosition(),n!==this.panelOpen&&(this.panelOpen?this._emitOpened():this.autocomplete.closed.emit()),this.panelClosingActions})),ot(1)).subscribe(n=>this._setValueAndClose(n))}_emitOpened(){this.autocomplete.opened.emit()}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_getDisplayValue(e){let t=this.autocomplete;return t&&t.displayWith?t.displayWith(e):e}_assignOptionValue(e){let t=this._getDisplayValue(e);e==null&&this._clearPreviousSelectedOption(null,!1),this._updateNativeInputValue(t??"")}_updateNativeInputValue(e){this._formField?this._formField._control.value=e:this._element.nativeElement.value=e,this._previousValue=e}_setValueAndClose(e){let t=this.autocomplete,n=e?e.source:this._pendingAutoselectedOption;n?(this._clearPreviousSelectedOption(n),this._assignOptionValue(n.value),this._onChange(n.value),t._emitSelectEvent(n),this._element.nativeElement.focus()):t.requireSelection&&this._element.nativeElement.value!==this._valueOnAttach&&(this._clearPreviousSelectedOption(null),this._assignOptionValue(null),this._onChange(null)),this.closePanel()}_clearPreviousSelectedOption(e,t){this.autocomplete?.options?.forEach(n=>{n!==e&&n.selected&&n.deselect(t)})}_openPanelInternal(e=this._element.nativeElement.value){this._attachOverlay(e),this._floatLabel()}_attachOverlay(e){if(!this.autocomplete)return;let t=this._overlayRef;t?(this._positionStrategy.setOrigin(this._getConnectedElement()),t.updateSize({width:this._getPanelWidth()})):(this._portal=new Ct(this.autocomplete.template,this._viewContainerRef,{id:this._formField?.getLabelId()}),t=Pt(this._injector,this._getOverlayConfig()),this._overlayRef=t,this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&t&&t.updateSize({width:this._getPanelWidth()})}),this._handsetLandscapeSubscription=this._breakpointObserver.observe(dr.HandsetLandscape).subscribe(a=>{a.matches?this._positionStrategy.withFlexibleDimensions(!0).withGrowAfterOpen(!0).withViewportMargin(8):this._positionStrategy.withFlexibleDimensions(!1).withGrowAfterOpen(!1).withViewportMargin(0)})),t&&!t.hasAttached()&&(t.attach(this._portal),this._valueOnAttach=e,this._valueOnLastKeydown=null,this._closingActionsSubscription=this._subscribeToClosingActions());let n=this.panelOpen;this.autocomplete._isOpen=this._overlayAttached=!0,this.autocomplete._latestOpeningTrigger=this,this.autocomplete._setColor(this._formField?.color),this._updatePanelState(),this.panelOpen&&n!==this.panelOpen&&this._emitOpened()}_handlePanelKeydown=e=>{(e.keyCode===27&&!Ve(e)||e.keyCode===38&&Ve(e,"altKey"))&&(this._pendingAutoselectedOption&&(this._updateNativeInputValue(this._valueBeforeAutoSelection??""),this._pendingAutoselectedOption=null),this._closeKeyEventStream.next(),this._resetActiveItem(),e.stopPropagation(),e.preventDefault())};_updatePanelState(){if(this.autocomplete._setVisibility(),this.panelOpen){let e=this._overlayRef;this._keydownSubscription||(this._keydownSubscription=e.keydownEvents().subscribe(this._handlePanelKeydown)),this._outsideClickSubscription||(this._outsideClickSubscription=e.outsidePointerEvents().subscribe())}else this._keydownSubscription?.unsubscribe(),this._outsideClickSubscription?.unsubscribe(),this._keydownSubscription=this._outsideClickSubscription=void 0}_getOverlayConfig(){return new Ft({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir??void 0,hasBackdrop:this._defaults?.hasBackdrop,backdropClass:this._defaults?.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this._overlayPanelClass,disableAnimations:this._animationsDisabled})}_getOverlayPosition(){let e=Ti(this._injector,this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1).withPopoverLocation("inline");return this._setStrategyPositions(e),this._positionStrategy=e,e}_setStrategyPositions(e){let t=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],n=this._aboveClass,a=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:n},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:n}],r;this.position==="above"?r=a:this.position==="below"?r=t:r=[...t,...a],e.withPositions(r)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){let e=this.autocomplete;if(e.autoActiveFirstOption){let t=-1;for(let n=0;n<e.options.length;n++)if(!e.options.get(n).disabled){t=n;break}e._keyManager.setActiveItem(t)}else e._keyManager.setActiveItem(-1)}_canOpen(){let e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this.autocompleteDisabled}_scrollToOption(e){let t=this.autocomplete,n=ls(e,t.options,t.optionGroups);if(e===0&&n===1)t._setScrollTop(0);else if(t.panel){let a=t.options.toArray()[e];if(a){let r=a._getHostElement(),m=cs(r.offsetTop,r.offsetHeight,t._getScrollTop(),t.panel.nativeElement.offsetHeight);t._setScrollTop(m)}}}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-mdc-autocomplete-trigger"],hostVars:7,hostBindings:function(t,n){t&1&&I("focusin",function(){return n._handleFocus()})("blur",function(){return n._onTouched()})("input",function(r){return n._handleInput(r)})("keydown",function(r){return n._handleKeydown(r)})("click",function(){return n._handleClick()}),t&2&&Y("autocomplete",n.autocompleteAttribute)("role",n.autocompleteDisabled?null:"combobox")("aria-autocomplete",n.autocompleteDisabled?null:"list")("aria-activedescendant",n.panelOpen&&n.activeOption?n.activeOption.id:null)("aria-expanded",n.autocompleteDisabled?null:n.panelOpen.toString())("aria-controls",n.autocompleteDisabled||!n.panelOpen?null:n.autocomplete?.id)("aria-haspopup",n.autocompleteDisabled?null:"listbox")},inputs:{autocomplete:[0,"matAutocomplete","autocomplete"],position:[0,"matAutocompletePosition","position"],connectedTo:[0,"matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:[0,"autocomplete","autocompleteAttribute"],autocompleteDisabled:[2,"matAutocompleteDisabled","autocompleteDisabled",F]},exportAs:["matAutocompleteTrigger"],features:[te([_v]),ye]})}return i})(),xo=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[kt,yo,ri,yo,Q]})}return i})();var vv=(i,o)=>o.command;function yv(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function Cv(i,o){i&1&&(l(0,"mat-error"),u(1,"Starts with letter, alphanumeric + hyphens/underscores, max 128 chars"),c())}function xv(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function wv(i,o){if(i&1&&(l(0,"mat-option",6)(1,"span",12),u(2),c(),l(3,"span",13),u(4),c()()),i&2){let e=o.$implicit;w("value",e.command),d(2),Z(e.command),d(2),be("(",e.from,")")}}var Dv="^[a-zA-Z][a-zA-Z0-9_-]{0,127}$",zh=(()=>{class i{constructor(){this.fb=s(oo),this.dialogRef=s(Kt),this.data=s(va),this.isEdit=this.data.config!==null,this.isClone=this.data.clone===!0,this.form=this.fb.group({name:[this.data.config?.name??"",{validators:[vt.required,vt.pattern(Dv)]}],command:[this.data.config?.command??"",vt.required],flagsText:[""],envText:[""]}),this.allExistingCommands=K(()=>{let e=this.data.allConfigs??[],t=this.data.config?.name??null,n=new Set,a=[];for(let r of e)r.name!==t&&(n.has(r.command)||(n.add(r.command),a.push({command:r.command,from:r.name})));return a}),this._commandValue=N(this.data.config?.command??""),this.commandValue=this._commandValue.asReadonly(),this.filteredCommands=K(()=>{let e=this.commandValue()?.toLowerCase()??"";return this.allExistingCommands().filter(t=>t.command.toLowerCase().includes(e)||t.from.toLowerCase().includes(e))})}get nameControl(){return this.form.get("name")}get commandControl(){return this.form.get("command")}ngOnInit(){if(this.commandControl.valueChanges.subscribe(e=>this._commandValue.set(e)),this.data.config?.flags?.length&&this.form.get("flagsText").setValue(this.data.config.flags.join(`
|
|
3951
|
+
`],encapsulation:2})}return i})();var bv={provide:_i,useExisting:lt(()=>Tn),multi:!0};var vv=new b("mat-autocomplete-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>mi(i)}}),Tn=(()=>{class i{_environmentInjector=s(ii);_element=s(O);_injector=s(q);_viewContainerRef=s(Ke);_zone=s(j);_changeDetectorRef=s(ie);_dir=s(Ue,{optional:!0});_formField=s(kn,{optional:!0,host:!0});_viewportRuler=s(Rt);_scrollStrategy=s(vv);_renderer=s(ue);_animationsDisabled=de();_defaults=s(zh,{optional:!0});_overlayRef=null;_portal;_componentDestroyed=!1;_initialized=new M;_keydownSubscription;_outsideClickSubscription;_cleanupWindowBlur;_previousValue=null;_valueOnAttach=null;_valueOnLastKeydown=null;_positionStrategy;_manuallyFloatingLabel=!1;_closingActionsSubscription;_viewportSubscription=ve.EMPTY;_breakpointObserver=s(fn);_handsetLandscapeSubscription=ve.EMPTY;_canOpenOnNextFocus=!0;_valueBeforeAutoSelection;_pendingAutoselectedOption=null;_closeKeyEventStream=new M;_overlayPanelClass=Ei(this._defaults?.overlayPanelClass||[]);_windowBlurHandler=()=>{this._canOpenOnNextFocus=this.panelOpen||!this._hasFocus()};_onChange=()=>{};_onTouched=()=>{};autocomplete;position="auto";connectedTo;autocompleteAttribute="off";autocompleteDisabled=!1;_aboveClass="mat-mdc-autocomplete-panel-above";ngAfterViewInit(){this._initialized.next(),this._initialized.complete(),this._cleanupWindowBlur=this._renderer.listen("window","blur",this._windowBlurHandler)}ngOnChanges(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){this._cleanupWindowBlur?.(),this._handsetLandscapeSubscription.unsubscribe(),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}_overlayAttached=!1;openPanel(){this._openPanelInternal()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._latestOpeningTrigger===this&&(this.autocomplete._isOpen=!1,this.autocomplete._latestOpeningTrigger=null),this._overlayAttached=!1,this._pendingAutoselectedOption=null,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._updatePanelState(),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return He(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(ge(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(ge(()=>this._overlayAttached)):be()).pipe(Ae(e=>e instanceof Ca?e:null))}optionSelections=Oi(()=>{let e=this.autocomplete?this.autocomplete.options:null;return e?e.changes.pipe(Ie(e),We(()=>He(...e.map(t=>t.onSelectionChange)))):this._initialized.pipe(We(()=>this.optionSelections))});get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return new ft(e=>{let t=a=>{let r=it(a),m=this._formField?this._formField.getConnectedOverlayOrigin().nativeElement:null,h=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;this._overlayAttached&&r!==this._element.nativeElement&&!this._hasFocus()&&(!m||!m.contains(r))&&(!h||!h.contains(r))&&this._overlayRef&&!this._overlayRef.overlayElement.contains(r)&&e.next(a)},n=[this._renderer.listen("document","click",t),this._renderer.listen("document","auxclick",t),this._renderer.listen("document","touchend",t)];return()=>{n.forEach(a=>a())}})}writeValue(e){Promise.resolve(null).then(()=>this._assignOptionValue(e))}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this._element.nativeElement.disabled=e}_handleKeydown(e){let t=e,n=t.keyCode,a=ze(t);if(n===27&&!a&&t.preventDefault(),this._valueOnLastKeydown=this._element.nativeElement.value,this.activeOption&&n===13&&this.panelOpen&&!a)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else if(this.autocomplete){let r=this.autocomplete._keyManager.activeItem,m=n===38||n===40;n===9||m&&!a&&this.panelOpen?this.autocomplete._keyManager.onKeydown(t):m&&this._canOpen()&&this._openPanelInternal(this._valueOnLastKeydown),(m||this.autocomplete._keyManager.activeItem!==r)&&(this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0),this.autocomplete.autoSelectActiveOption&&this.activeOption&&(this._pendingAutoselectedOption||(this._valueBeforeAutoSelection=this._valueOnLastKeydown),this._pendingAutoselectedOption=this.activeOption,this._assignOptionValue(this.activeOption.value)))}}_handleInput(e){let t=e.target,n=t.value;if(t.type==="number"&&(n=n==""?null:parseFloat(n)),this._previousValue!==n){if(this._previousValue=n,this._pendingAutoselectedOption=null,(!this.autocomplete||!this.autocomplete.requireSelection)&&this._onChange(n),!n)this._clearPreviousSelectedOption(null,!1);else if(this.panelOpen&&!this.autocomplete.requireSelection){let a=this.autocomplete.options?.find(r=>r.selected);if(a){let r=this._getDisplayValue(a.value);n!==r&&a.deselect(!1)}}if(this._canOpen()&&this._hasFocus()){let a=this._valueOnLastKeydown??this._element.nativeElement.value;this._valueOnLastKeydown=null,this._openPanelInternal(a)}}}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(this._previousValue),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this._openPanelInternal()}_hasFocus(){return Ui()===this._element.nativeElement}_floatLabel(e=!1){this._formField&&this._formField.floatLabel==="auto"&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField&&(this._formField.floatLabel="auto"),this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){let e=new ft(n=>{Fe(()=>{n.next()},{injector:this._environmentInjector})}),t=this.autocomplete.options?.changes.pipe(ti(()=>this._positionStrategy.reapplyLastPosition()),Rc(0))??be();return He(e,t).pipe(We(()=>this._zone.run(()=>{let n=this.panelOpen;return this._resetActiveItem(),this._updatePanelState(),this._changeDetectorRef.detectChanges(),this.panelOpen&&this._overlayRef.updatePosition(),n!==this.panelOpen&&(this.panelOpen?this._emitOpened():this.autocomplete.closed.emit()),this.panelClosingActions})),ot(1)).subscribe(n=>this._setValueAndClose(n))}_emitOpened(){this.autocomplete.opened.emit()}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_getDisplayValue(e){let t=this.autocomplete;return t&&t.displayWith?t.displayWith(e):e}_assignOptionValue(e){let t=this._getDisplayValue(e);e==null&&this._clearPreviousSelectedOption(null,!1),this._updateNativeInputValue(t??"")}_updateNativeInputValue(e){this._formField?this._formField._control.value=e:this._element.nativeElement.value=e,this._previousValue=e}_setValueAndClose(e){let t=this.autocomplete,n=e?e.source:this._pendingAutoselectedOption;n?(this._clearPreviousSelectedOption(n),this._assignOptionValue(n.value),this._onChange(n.value),t._emitSelectEvent(n),this._element.nativeElement.focus()):t.requireSelection&&this._element.nativeElement.value!==this._valueOnAttach&&(this._clearPreviousSelectedOption(null),this._assignOptionValue(null),this._onChange(null)),this.closePanel()}_clearPreviousSelectedOption(e,t){this.autocomplete?.options?.forEach(n=>{n!==e&&n.selected&&n.deselect(t)})}_openPanelInternal(e=this._element.nativeElement.value){this._attachOverlay(e),this._floatLabel()}_attachOverlay(e){if(!this.autocomplete)return;let t=this._overlayRef;t?(this._positionStrategy.setOrigin(this._getConnectedElement()),t.updateSize({width:this._getPanelWidth()})):(this._portal=new wt(this.autocomplete.template,this._viewContainerRef,{id:this._formField?.getLabelId()}),t=Pt(this._injector,this._getOverlayConfig()),this._overlayRef=t,this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&t&&t.updateSize({width:this._getPanelWidth()})}),this._handsetLandscapeSubscription=this._breakpointObserver.observe(dr.HandsetLandscape).subscribe(a=>{a.matches?this._positionStrategy.withFlexibleDimensions(!0).withGrowAfterOpen(!0).withViewportMargin(8):this._positionStrategy.withFlexibleDimensions(!1).withGrowAfterOpen(!1).withViewportMargin(0)})),t&&!t.hasAttached()&&(t.attach(this._portal),this._valueOnAttach=e,this._valueOnLastKeydown=null,this._closingActionsSubscription=this._subscribeToClosingActions());let n=this.panelOpen;this.autocomplete._isOpen=this._overlayAttached=!0,this.autocomplete._latestOpeningTrigger=this,this.autocomplete._setColor(this._formField?.color),this._updatePanelState(),this.panelOpen&&n!==this.panelOpen&&this._emitOpened()}_handlePanelKeydown=e=>{(e.keyCode===27&&!ze(e)||e.keyCode===38&&ze(e,"altKey"))&&(this._pendingAutoselectedOption&&(this._updateNativeInputValue(this._valueBeforeAutoSelection??""),this._pendingAutoselectedOption=null),this._closeKeyEventStream.next(),this._resetActiveItem(),e.stopPropagation(),e.preventDefault())};_updatePanelState(){if(this.autocomplete._setVisibility(),this.panelOpen){let e=this._overlayRef;this._keydownSubscription||(this._keydownSubscription=e.keydownEvents().subscribe(this._handlePanelKeydown)),this._outsideClickSubscription||(this._outsideClickSubscription=e.outsidePointerEvents().subscribe())}else this._keydownSubscription?.unsubscribe(),this._outsideClickSubscription?.unsubscribe(),this._keydownSubscription=this._outsideClickSubscription=void 0}_getOverlayConfig(){return new Ft({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir??void 0,hasBackdrop:this._defaults?.hasBackdrop,backdropClass:this._defaults?.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this._overlayPanelClass,disableAnimations:this._animationsDisabled})}_getOverlayPosition(){let e=Ti(this._injector,this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1).withPopoverLocation("inline");return this._setStrategyPositions(e),this._positionStrategy=e,e}_setStrategyPositions(e){let t=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],n=this._aboveClass,a=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:n},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:n}],r;this.position==="above"?r=a:this.position==="below"?r=t:r=[...t,...a],e.withPositions(r)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){let e=this.autocomplete;if(e.autoActiveFirstOption){let t=-1;for(let n=0;n<e.options.length;n++)if(!e.options.get(n).disabled){t=n;break}e._keyManager.setActiveItem(t)}else e._keyManager.setActiveItem(-1)}_canOpen(){let e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this.autocompleteDisabled}_scrollToOption(e){let t=this.autocomplete,n=ls(e,t.options,t.optionGroups);if(e===0&&n===1)t._setScrollTop(0);else if(t.panel){let a=t.options.toArray()[e];if(a){let r=a._getHostElement(),m=cs(r.offsetTop,r.offsetHeight,t._getScrollTop(),t.panel.nativeElement.offsetHeight);t._setScrollTop(m)}}}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-mdc-autocomplete-trigger"],hostVars:7,hostBindings:function(t,n){t&1&&I("focusin",function(){return n._handleFocus()})("blur",function(){return n._onTouched()})("input",function(r){return n._handleInput(r)})("keydown",function(r){return n._handleKeydown(r)})("click",function(){return n._handleClick()}),t&2&&Y("autocomplete",n.autocompleteAttribute)("role",n.autocompleteDisabled?null:"combobox")("aria-autocomplete",n.autocompleteDisabled?null:"list")("aria-activedescendant",n.panelOpen&&n.activeOption?n.activeOption.id:null)("aria-expanded",n.autocompleteDisabled?null:n.panelOpen.toString())("aria-controls",n.autocompleteDisabled||!n.panelOpen?null:n.autocomplete?.id)("aria-haspopup",n.autocompleteDisabled?null:"listbox")},inputs:{autocomplete:[0,"matAutocomplete","autocomplete"],position:[0,"matAutocompletePosition","position"],connectedTo:[0,"matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:[0,"autocomplete","autocompleteAttribute"],autocompleteDisabled:[2,"matAutocompleteDisabled","autocompleteDisabled",F]},exportAs:["matAutocompleteTrigger"],features:[te([bv]),xe]})}return i})(),wo=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Et,Co,li,Co,Q]})}return i})();var yv=(i,o)=>o.command;function Cv(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function xv(i,o){i&1&&(l(0,"mat-error"),u(1,"Starts with letter, alphanumeric + hyphens/underscores, max 128 chars"),c())}function wv(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function Dv(i,o){if(i&1&&(l(0,"mat-option",6)(1,"span",12),u(2),c(),l(3,"span",13),u(4),c()()),i&2){let e=o.$implicit;w("value",e.command),d(2),Z(e.command),d(2),ye("(",e.from,")")}}var kv="^[a-zA-Z][a-zA-Z0-9_-]{0,127}$",jh=(()=>{class i{constructor(){this.fb=s(oo),this.dialogRef=s(Xt),this.data=s(va),this.isEdit=this.data.config!==null,this.isClone=this.data.clone===!0,this.form=this.fb.group({name:[this.data.config?.name??"",{validators:[vt.required,vt.pattern(kv)]}],command:[this.data.config?.command??"",vt.required],flagsText:[""],envText:[""]}),this.allExistingCommands=K(()=>{let e=this.data.allConfigs??[],t=this.data.config?.name??null,n=new Set,a=[];for(let r of e)r.name!==t&&(n.has(r.command)||(n.add(r.command),a.push({command:r.command,from:r.name})));return a}),this._commandValue=N(this.data.config?.command??""),this.commandValue=this._commandValue.asReadonly(),this.filteredCommands=K(()=>{let e=this.commandValue()?.toLowerCase()??"";return this.allExistingCommands().filter(t=>t.command.toLowerCase().includes(e)||t.from.toLowerCase().includes(e))})}get nameControl(){return this.form.get("name")}get commandControl(){return this.form.get("command")}ngOnInit(){if(this.commandControl.valueChanges.subscribe(e=>this._commandValue.set(e)),this.data.config?.flags?.length&&this.form.get("flagsText").setValue(this.data.config.flags.join(`
|
|
3952
3952
|
`)+`
|
|
3953
3953
|
`),this.data.config?.environment){let e=Object.entries(this.data.config.environment).map(([t,n])=>`${t}=${n}`).join(`
|
|
3954
3954
|
`);e&&this.form.get("envText").setValue(e+`
|
|
@@ -3958,7 +3958,7 @@ mat-autocomplete {
|
|
|
3958
3958
|
--ctx-size 4096
|
|
3959
3959
|
--verbose`,1,"flags-textarea"],["matInput","","formControlName","envText","rows","4","wrap","off","placeholder",`HF_HOME=/data/huggingface
|
|
3960
3960
|
CUDA_VISIBLE_DEVICES=0,1
|
|
3961
|
-
MY_API_KEY=secret`,1,"env-textarea"],["align","end"],["mat-stroked-button","",3,"click"],["mat-raised-button","","color","primary",3,"click","disabled"],[1,"auto-path"],[1,"auto-from"]],template:function(t,n){if(t&1&&(l(0,"h2",1),u(1),c(),l(2,"mat-dialog-content")(3,"form",2)(4,"mat-form-field",3),v(5,"input",4),D(),l(6,"mat-label"),u(7,"Service Name"),c(),S(8,
|
|
3961
|
+
MY_API_KEY=secret`,1,"env-textarea"],["align","end"],["mat-stroked-button","",3,"click"],["mat-raised-button","","color","primary",3,"click","disabled"],[1,"auto-path"],[1,"auto-from"]],template:function(t,n){if(t&1&&(l(0,"h2",1),u(1),c(),l(2,"mat-dialog-content")(3,"form",2)(4,"mat-form-field",3),v(5,"input",4),D(),l(6,"mat-label"),u(7,"Service Name"),c(),S(8,Cv,2,0,"mat-error")(9,xv,2,0,"mat-error"),c(),l(10,"mat-form-field",3),v(11,"input",5),D(),l(12,"mat-label"),u(13,"Command (absolute path)"),c(),S(14,wv,2,0,"mat-error"),c(),l(15,"mat-autocomplete",null,0),Le(17,Dv,5,3,"mat-option",6,yv),c(),l(19,"mat-form-field",3),v(20,"textarea",7),D(),l(21,"mat-label"),u(22,"CLI Flags (one per line)"),c()(),l(23,"mat-form-field",3),v(24,"textarea",8),D(),l(25,"mat-label"),u(26,"Environment variables (KEY=VALUE, one per line)"),c()()()(),l(27,"mat-dialog-actions",9)(28,"button",10),I("click",function(){return n.cancel()}),u(29,"Cancel"),c(),l(30,"button",11),I("click",function(){return n.save()}),u(31),c()()),t&2){let a=Ye(16);d(),ye("",n.isClone?"Clone":n.isEdit?"Edit":"Add"," custom service"),d(2),w("formGroup",n.form),d(2),w("disabled",n.isEdit&&!n.isClone),k(),d(3),E(n.nameControl.errors?.required?8:n.nameControl.errors?.pattern?9:-1),d(3),w("matAutocomplete",a),k(),d(3),E(n.commandControl.errors?.required?14:-1),d(3),Be(n.filteredCommands()),d(3),k(),d(4),k(),d(6),w("disabled",n.form.invalid),d(),ye(" ",n.isEdit&&!n.isClone?"Save":"Create"," ")}},dependencies:[$e,ao,Or,Yi,Xi,no,ro,ri,Dn,wo,xo,Mt,Tn,dt,ht,$t,Gt,yt,Ut,so,Ci,nn,an,on],styles:[".dialog-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;min-width:480px}.auto-path[_ngcontent-%COMP%]{font-family:monospace}.auto-from[_ngcontent-%COMP%]{margin-left:8px;opacity:.6;font-size:12px}.full-width[_ngcontent-%COMP%]{width:100%}.flags-textarea[_ngcontent-%COMP%], .env-textarea[_ngcontent-%COMP%]{overflow-x:auto}mat-dialog-content[_ngcontent-%COMP%]{padding-top:10px!important}mat-dialog-actions[_ngcontent-%COMP%]{gap:8px}"]})}}return i})();var Sv=["*"],Hh=(()=>{class i{labelPosition="after";static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(t,n){t&2&&f("mdc-form-field--align-end",n.labelPosition==="before")},inputs:{labelPosition:"labelPosition"},ngContentSelectors:Sv,decls:1,vars:0,template:function(t,n){t&1&&(le(),H(0))},styles:[`.mat-internal-form-field {
|
|
3962
3962
|
-moz-osx-font-smoothing: grayscale;
|
|
3963
3963
|
-webkit-font-smoothing: antialiased;
|
|
3964
3964
|
display: inline-flex;
|
|
@@ -3992,7 +3992,7 @@ MY_API_KEY=secret`,1,"env-textarea"],["align","end"],["mat-stroked-button","",3,
|
|
|
3992
3992
|
padding-left: 4px;
|
|
3993
3993
|
padding-right: 0;
|
|
3994
3994
|
}
|
|
3995
|
-
`],encapsulation:2})}return i})();var
|
|
3995
|
+
`],encapsulation:2})}return i})();var Ev=["input"],Mv=["label"],Av=["*"],bc={color:"accent",clickAction:"check-indeterminate",disabledInteractive:!1},Iv=new b("mat-checkbox-default-options",{providedIn:"root",factory:()=>bc}),pt=(function(i){return i[i.Init=0]="Init",i[i.Checked=1]="Checked",i[i.Unchecked=2]="Unchecked",i[i.Indeterminate=3]="Indeterminate",i})(pt||{}),vc=class{source;checked},Tv=(()=>{class i{_elementRef=s(O);_changeDetectorRef=s(ie);_ngZone=s(j);_animationsDisabled=de();_options=s(Iv,{optional:!0});focus(){this._inputElement.nativeElement.focus()}_createChangeEvent(e){let t=new vc;return t.source=this,t.checked=e,t}_getAnimationTargetElement(){return this._inputElement?.nativeElement}_animationClasses={uncheckedToChecked:"mdc-checkbox--anim-unchecked-checked",uncheckedToIndeterminate:"mdc-checkbox--anim-unchecked-indeterminate",checkedToUnchecked:"mdc-checkbox--anim-checked-unchecked",checkedToIndeterminate:"mdc-checkbox--anim-checked-indeterminate",indeterminateToChecked:"mdc-checkbox--anim-indeterminate-checked",indeterminateToUnchecked:"mdc-checkbox--anim-indeterminate-unchecked"};ariaLabel="";ariaLabelledby=null;ariaDescribedby;ariaExpanded;ariaControls;ariaOwns;_uniqueId;id;get inputId(){return`${this.id||this._uniqueId}-input`}required=!1;labelPosition="after";name=null;change=new $;indeterminateChange=new $;value;disableRipple=!1;_inputElement;_labelElement;tabIndex;color;disabledInteractive;_onTouched=()=>{};_currentAnimationClass="";_currentCheckState=pt.Init;_controlValueAccessorChangeFn=()=>{};_validatorChangeFn=()=>{};constructor(){s(Te).load(xt);let e=s(new fi("tabindex"),{optional:!0});this._options=this._options||bc,this.color=this._options.color||bc.color,this.tabIndex=e==null?0:parseInt(e)||0,this.id=this._uniqueId=s(he).getId("mat-mdc-checkbox-"),this.disabledInteractive=this._options?.disabledInteractive??!1}ngOnChanges(e){e.required&&this._validatorChangeFn()}ngAfterViewInit(){this._syncIndeterminate(this.indeterminate)}get checked(){return this._checked}set checked(e){e!=this.checked&&(this._checked=e,this._changeDetectorRef.markForCheck())}_checked=!1;get disabled(){return this._disabled}set disabled(e){e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}_disabled=!1;get indeterminate(){return this._indeterminate()}set indeterminate(e){let t=e!=this._indeterminate();this._indeterminate.set(e),t&&(e?this._transitionCheckState(pt.Indeterminate):this._transitionCheckState(this.checked?pt.Checked:pt.Unchecked),this.indeterminateChange.emit(e)),this._syncIndeterminate(e)}_indeterminate=N(!1);_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(e){this.checked=!!e}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}validate(e){return this.required&&e.value!==!0?{required:!0}:null}registerOnValidatorChange(e){this._validatorChangeFn=e}_transitionCheckState(e){let t=this._currentCheckState,n=this._getAnimationTargetElement();if(!(t===e||!n)&&(this._currentAnimationClass&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(t,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);let a=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(a)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){let e=this._options?.clickAction;!this.disabled&&e!=="noop"?(this.indeterminate&&e!=="check"&&Promise.resolve().then(()=>{this._indeterminate.set(!1),this.indeterminateChange.emit(!1)}),this._checked=!this._checked,this._transitionCheckState(this._checked?pt.Checked:pt.Unchecked),this._emitChangeEvent()):(this.disabled&&this.disabledInteractive||!this.disabled&&e==="noop")&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate)}_onInteractionEvent(e){e.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(e,t){if(this._animationsDisabled)return"";switch(e){case pt.Init:if(t===pt.Checked)return this._animationClasses.uncheckedToChecked;if(t==pt.Indeterminate)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case pt.Unchecked:return t===pt.Checked?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case pt.Checked:return t===pt.Unchecked?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case pt.Indeterminate:return t===pt.Checked?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(e){let t=this._inputElement;t&&(t.nativeElement.indeterminate=e)}_onInputClick(){this._handleInputClick()}_onTouchTargetClick(){this._handleInputClick(),this.disabled||this._inputElement.nativeElement.focus()}_preventBubblingFromLabel(e){e.target&&this._labelElement.nativeElement.contains(e.target)&&e.stopPropagation()}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-checkbox"]],viewQuery:function(t,n){if(t&1&&we(Ev,5)(Mv,5),t&2){let a;T(a=R())&&(n._inputElement=a.first),T(a=R())&&(n._labelElement=a.first)}},hostAttrs:[1,"mat-mdc-checkbox"],hostVars:16,hostBindings:function(t,n){t&2&&(at("id",n.id),Y("tabindex",null)("aria-label",null)("aria-labelledby",null),Qe(n.color?"mat-"+n.color:"mat-accent"),f("_mat-animation-noopable",n._animationsDisabled)("mdc-checkbox--disabled",n.disabled)("mat-mdc-checkbox-disabled",n.disabled)("mat-mdc-checkbox-checked",n.checked)("mat-mdc-checkbox-disabled-interactive",n.disabledInteractive))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],ariaExpanded:[2,"aria-expanded","ariaExpanded",F],ariaControls:[0,"aria-controls","ariaControls"],ariaOwns:[0,"aria-owns","ariaOwns"],id:"id",required:[2,"required","required",F],labelPosition:"labelPosition",name:"name",value:"value",disableRipple:[2,"disableRipple","disableRipple",F],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?void 0:_t(e)],color:"color",disabledInteractive:[2,"disabledInteractive","disabledInteractive",F],checked:[2,"checked","checked",F],disabled:[2,"disabled","disabled",F],indeterminate:[2,"indeterminate","indeterminate",F]},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[te([{provide:_i,useExisting:lt(()=>i),multi:!0},{provide:wn,useExisting:i,multi:!0}]),xe],ngContentSelectors:Av,decls:15,vars:23,consts:[["checkbox",""],["input",""],["label",""],["mat-internal-form-field","",3,"click","labelPosition"],[1,"mdc-checkbox"],["aria-hidden","true",1,"mat-mdc-checkbox-touch-target",3,"click"],["type","checkbox",1,"mdc-checkbox__native-control",3,"blur","click","change","checked","indeterminate","disabled","id","required","tabIndex"],["aria-hidden","true",1,"mdc-checkbox__ripple"],["aria-hidden","true",1,"mdc-checkbox__background"],["focusable","false","viewBox","0 0 24 24",1,"mdc-checkbox__checkmark"],["fill","none","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-checkbox__checkmark-path"],[1,"mdc-checkbox__mixedmark"],["mat-ripple","","aria-hidden","true",1,"mat-mdc-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-label",3,"for"]],template:function(t,n){if(t&1&&(le(),l(0,"div",3),I("click",function(r){return n._preventBubblingFromLabel(r)}),l(1,"div",4,0)(3,"div",5),I("click",function(){return n._onTouchTargetClick()}),c(),l(4,"input",6,1),I("blur",function(){return n._onBlur()})("click",function(){return n._onInputClick()})("change",function(r){return n._onInteractionEvent(r)}),c(),v(6,"div",7),l(7,"div",8),pi(),l(8,"svg",9),v(9,"path",10),c(),Ss(),v(10,"div",11),c(),v(11,"div",12),c(),l(12,"label",13,2),H(14),c()()),t&2){let a=Ye(2);w("labelPosition",n.labelPosition),d(4),f("mdc-checkbox--selected",n.checked),w("checked",n.checked)("indeterminate",n.indeterminate)("disabled",n.disabled&&!n.disabledInteractive)("id",n.inputId)("required",n.required)("tabIndex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex),Y("aria-label",n.ariaLabel||null)("aria-labelledby",n.ariaLabelledby)("aria-describedby",n.ariaDescribedby)("aria-checked",n.indeterminate?"mixed":null)("aria-controls",n.ariaControls)("aria-disabled",n.disabled&&n.disabledInteractive?!0:null)("aria-expanded",n.ariaExpanded)("aria-owns",n.ariaOwns)("name",n.name)("value",n.value),d(7),w("matRippleTrigger",a)("matRippleDisabled",n.disableRipple||n.disabled)("matRippleCentered",!0),d(),w("for",n.inputId)}},dependencies:[uo,Hh],styles:[`.mdc-checkbox {
|
|
3996
3996
|
display: inline-block;
|
|
3997
3997
|
position: relative;
|
|
3998
3998
|
flex: 0 0 18px;
|
|
@@ -4465,7 +4465,7 @@ MY_API_KEY=secret`,1,"env-textarea"],["align","end"],["mat-stroked-button","",3,
|
|
|
4465
4465
|
.mdc-checkbox__native-control:focus-visible ~ .mat-focus-indicator::before {
|
|
4466
4466
|
content: "";
|
|
4467
4467
|
}
|
|
4468
|
-
`],encapsulation:2})}return i})(),us=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[
|
|
4468
|
+
`],encapsulation:2})}return i})(),us=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Tv,Q]})}return i})();var yc=(()=>{class i{get vertical(){return this._vertical}set vertical(e){this._vertical=rt(e)}_vertical=!1;get inset(){return this._inset}set inset(e){this._inset=rt(e)}_inset=!1;static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(t,n){t&2&&(Y("aria-orientation",n.vertical?"vertical":"horizontal"),f("mat-divider-vertical",n.vertical)("mat-divider-horizontal",!n.vertical)("mat-divider-inset",n.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(t,n){},styles:[`.mat-divider {
|
|
4469
4469
|
display: block;
|
|
4470
4470
|
margin: 0;
|
|
4471
4471
|
border-top-style: solid;
|
|
@@ -4485,7 +4485,7 @@ MY_API_KEY=secret`,1,"env-textarea"],["align","end"],["mat-stroked-button","",3,
|
|
|
4485
4485
|
margin-left: auto;
|
|
4486
4486
|
margin-right: 80px;
|
|
4487
4487
|
}
|
|
4488
|
-
`],encapsulation:2})}return i})(),hs=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var
|
|
4488
|
+
`],encapsulation:2})}return i})(),hs=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Q]})}return i})();var Rv=["*"],Ov=`.mdc-list {
|
|
4489
4489
|
margin: 0;
|
|
4490
4490
|
padding: 8px 0;
|
|
4491
4491
|
list-style-type: none;
|
|
@@ -5029,7 +5029,7 @@ mat-action-list button::-moz-focus-inner {
|
|
|
5029
5029
|
.mat-mdc-nav-list .mat-mdc-list-item.mdc-list-item--activated {
|
|
5030
5030
|
background-color: var(--mat-list-active-indicator-color, var(--mat-sys-secondary-container));
|
|
5031
5031
|
}
|
|
5032
|
-
`,Ov=["unscopedContent"],Fv=["text"],Pv=[[["","matListItemAvatar",""],["","matListItemIcon",""]],[["","matListItemTitle",""]],[["","matListItemLine",""]],"*",[["","matListItemMeta",""]],[["mat-divider"]]],Nv=["[matListItemAvatar],[matListItemIcon]","[matListItemTitle]","[matListItemLine]","*","[matListItemMeta]","mat-divider"];var Lv=new b("ListOption"),Bv=(()=>{class i{_elementRef=s(O);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matListItemTitle",""]],hostAttrs:[1,"mat-mdc-list-item-title","mdc-list-item__primary-text"]})}return i})(),Vv=(()=>{class i{_elementRef=s(O);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matListItemLine",""]],hostAttrs:[1,"mat-mdc-list-item-line","mdc-list-item__secondary-text"]})}return i})(),zv=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matListItemMeta",""]],hostAttrs:[1,"mat-mdc-list-item-meta","mdc-list-item__end"]})}return i})(),Hh=(()=>{class i{_listOption=s(Lv,{optional:!0});_isAlignedAtStart(){return!this._listOption||this._listOption?._getTogglePosition()==="after"}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,hostVars:4,hostBindings:function(t,n){t&2&&f("mdc-list-item__start",n._isAlignedAtStart())("mdc-list-item__end",!n._isAlignedAtStart())}})}return i})(),jv=(()=>{class i extends Hh{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matListItemAvatar",""]],hostAttrs:[1,"mat-mdc-list-item-avatar"],features:[X]})}return i})(),Hv=(()=>{class i extends Hh{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matListItemIcon",""]],hostAttrs:[1,"mat-mdc-list-item-icon"],features:[X]})}return i})(),Uv=new b("MAT_LIST_CONFIG"),Cc=(()=>{class i{_isNonInteractive=!0;get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=rt(e)}_disableRipple=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(rt(e))}_disabled=N(!1);_defaultOptions=s(Uv,{optional:!0});static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,hostVars:1,hostBindings:function(t,n){t&2&&Y("aria-disabled",n.disabled)},inputs:{disableRipple:"disableRipple",disabled:"disabled"}})}return i})(),Gv=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_listBase=s(Cc,{optional:!0});_platform=s(se);_hostElement;_isButtonElement;_noopAnimations=de();_avatars;_icons;set lines(e){this._explicitLines=At(e,null),this._updateItemLines(!1)}_explicitLines=null;get disableRipple(){return this.disabled||this._disableRipple||this._noopAnimations||!!this._listBase?.disableRipple}set disableRipple(e){this._disableRipple=rt(e)}_disableRipple=!1;get disabled(){return this._disabled()||!!this._listBase?.disabled}set disabled(e){this._disabled.set(rt(e))}_disabled=N(!1);_subscriptions=new _e;_rippleRenderer=null;_hasUnscopedTextContent=!1;rippleConfig;get rippleDisabled(){return this.disableRipple||!!this.rippleConfig.disabled}constructor(){s(Te).load(yt);let e=s(En,{optional:!0});this.rippleConfig=e||{},this._hostElement=this._elementRef.nativeElement,this._isButtonElement=this._hostElement.nodeName.toLowerCase()==="button",this._listBase&&!this._listBase._isNonInteractive&&this._initInteractiveListItem(),this._isButtonElement&&!this._hostElement.hasAttribute("type")&&this._hostElement.setAttribute("type","button")}ngAfterViewInit(){this._monitorProjectedLinesAndTitle(),this._updateItemLines(!0)}ngOnDestroy(){this._subscriptions.unsubscribe(),this._rippleRenderer!==null&&this._rippleRenderer._removeTriggerEvents()}_hasIconOrAvatar(){return!!(this._avatars.length||this._icons.length)}_initInteractiveListItem(){this._hostElement.classList.add("mat-mdc-list-item-interactive"),this._rippleRenderer=new Sn(this,this._ngZone,this._hostElement,this._platform,s(q)),this._rippleRenderer.setupTriggerEvents(this._hostElement)}_monitorProjectedLinesAndTitle(){this._ngZone.runOutsideAngular(()=>{this._subscriptions.add(je(this._lines.changes,this._titles.changes).subscribe(()=>this._updateItemLines(!1)))})}_updateItemLines(e){if(!this._lines||!this._titles||!this._unscopedContent)return;e&&this._checkDomForUnscopedTextContent();let t=this._explicitLines??this._inferLinesFromContent(),n=this._unscopedContent.nativeElement;if(this._hostElement.classList.toggle("mat-mdc-list-item-single-line",t<=1),this._hostElement.classList.toggle("mdc-list-item--with-one-line",t<=1),this._hostElement.classList.toggle("mdc-list-item--with-two-lines",t===2),this._hostElement.classList.toggle("mdc-list-item--with-three-lines",t===3),this._hasUnscopedTextContent){let a=this._titles.length===0&&t===1;n.classList.toggle("mdc-list-item__primary-text",a),n.classList.toggle("mdc-list-item__secondary-text",!a)}else n.classList.remove("mdc-list-item__primary-text"),n.classList.remove("mdc-list-item__secondary-text")}_inferLinesFromContent(){let e=this._titles.length+this._lines.length;return this._hasUnscopedTextContent&&(e+=1),e}_checkDomForUnscopedTextContent(){this._hasUnscopedTextContent=Array.from(this._unscopedContent.nativeElement.childNodes).filter(e=>e.nodeType!==e.COMMENT_NODE).some(e=>!!(e.textContent&&e.textContent.trim()))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,contentQueries:function(t,n,a){if(t&1&&tt(a,jv,4)(a,Hv,4),t&2){let r;T(r=R())&&(n._avatars=r),T(r=R())&&(n._icons=r)}},hostVars:4,hostBindings:function(t,n){t&2&&(Y("aria-disabled",n.disabled)("disabled",n._isButtonElement&&n.disabled||null),f("mdc-list-item--disabled",n.disabled))},inputs:{lines:"lines",disableRipple:"disableRipple",disabled:"disabled"}})}return i})();var Uh=(()=>{class i extends Cc{static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-list"]],hostAttrs:[1,"mat-mdc-list","mat-mdc-list-base","mdc-list"],exportAs:["matList"],features:[te([{provide:Cc,useExisting:i}]),X],ngContentSelectors:Tv,decls:1,vars:0,template:function(t,n){t&1&&(le(),H(0))},styles:[Rv],encapsulation:2})}return i})(),Gh=(()=>{class i extends Gv{_lines;_titles;_meta;_unscopedContent;_itemText;get activated(){return this._activated}set activated(e){this._activated=rt(e)}_activated=!1;_getAriaCurrent(){return this._hostElement.nodeName==="A"&&this._activated?"page":null}_hasBothLeadingAndTrailing(){return this._meta.length!==0&&(this._avatars.length!==0||this._icons.length!==0)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=fe(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,Vv,5)(a,Bv,5)(a,zv,5),t&2){let r;T(r=R())&&(n._lines=r),T(r=R())&&(n._titles=r),T(r=R())&&(n._meta=r)}},viewQuery:function(t,n){if(t&1&&Ce(Ov,5)(Fv,5),t&2){let a;T(a=R())&&(n._unscopedContent=a.first),T(a=R())&&(n._itemText=a.first)}},hostAttrs:[1,"mat-mdc-list-item","mdc-list-item"],hostVars:13,hostBindings:function(t,n){t&2&&(Y("aria-current",n._getAriaCurrent()),f("mdc-list-item--activated",n.activated)("mdc-list-item--with-leading-avatar",n._avatars.length!==0)("mdc-list-item--with-leading-icon",n._icons.length!==0)("mdc-list-item--with-trailing-meta",n._meta.length!==0)("mat-mdc-list-item-both-leading-and-trailing",n._hasBothLeadingAndTrailing())("_mat-animation-noopable",n._noopAnimations))},inputs:{activated:"activated"},exportAs:["matListItem"],features:[X],ngContentSelectors:Nv,decls:10,vars:0,consts:[["unscopedContent",""],[1,"mdc-list-item__content"],[1,"mat-mdc-list-item-unscoped-content",3,"cdkObserveContent"],[1,"mat-focus-indicator"]],template:function(t,n){t&1&&(le(Pv),H(0),l(1,"span",1),H(2,1),H(3,2),l(4,"span",2,0),I("cdkObserveContent",function(){return n._updateItemLines(!0)}),H(6,3),c()(),H(7,4),H(8,5),v(9,"div",3))},dependencies:[xm],encapsulation:2})}return i})();var $h=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Zn,bi,ds,Q,hs]})}return i})();function $v(i,o){i&1&&v(0,"mat-progress-bar",5)}function Wv(i,o){i&1&&(l(0,"span",13),u(1,"(removed)"),c())}function qv(i,o){i&1&&(l(0,"mat-icon"),u(1,"check_box"),c())}function Kv(i,o){i&1&&(l(0,"mat-icon"),u(1,"check_box_outline_blank"),c())}function Yv(i,o){if(i&1){let e=Ke();l(0,"mat-list-item")(1,"div",11)(2,"span",12),u(3),c(),S(4,Wv,2,0,"span",13),l(5,"button",14),I("click",function(){let n=De(e).$implicit,a=C(3);return ke(a.toggle(n))}),S(6,qv,2,0,"mat-icon")(7,Kv,2,0,"mat-icon"),c()()()}if(i&2){let e=o.$implicit,t=C(3);f("orphaned",t.isOrphaned(e)),d(3),Z(e),d(),E(t.isOrphaned(e)?4:-1),d(),Y("aria-label","Toggle "+e),d(),E(t.isManaged(e)?6:7)}}function Xv(i,o){if(i&1&&(l(0,"mat-list"),Le(1,Yv,8,6,"mat-list-item",10,wi),c()),i&2){let e=C(2);d(),Be(e.filteredServices)}}function Zv(i,o){if(i&1&&u(0),i&2){let e=C(3);be(' No services match "',e.filter(),'" ')}}function Qv(i,o){i&1&&u(0," No installed services found ")}function Jv(i,o){if(i&1&&(l(0,"p",9),S(1,Zv,1,1)(2,Qv,1,0),c()),i&2){let e=C(2);d(),E(e.filter()?1:2)}}function ey(i,o){if(i&1&&(l(0,"div",6),S(1,Xv,3,0,"mat-list")(2,Jv,3,1,"p",9),c()),i&2){let e=C();d(),E(e.filteredServices.length>0?1:2)}}var qh=(()=>{class i{constructor(){this.serviceService=s(Yt),this.dialogRef=s(Kt),this.available=N([]),this.managed=N(new Set),this.orphaned=N(new Set),this.loading=N(!0),this.filter=N("")}ngOnInit(){return ve(this,null,function*(){try{let[e,t]=yield Promise.all([ze(this.serviceService.listAvailableServices()),ze(this.serviceService.listManagedServices())]);this.available.set(e),this.managed.set(new Set(t));let n=new Set(e),a=t.filter(r=>!n.has(r));this.orphaned.set(new Set(a))}catch(e){console.error("[ManagedServicesDialog] load error:",e)}finally{this.loading.set(!1)}})}get filteredServices(){let e=this.available(),t=this.orphaned(),n=[...new Set([...e,...t])].sort(),a=this.filter();if(!a)return n;let r=a.toLowerCase();return n.filter(m=>m.toLowerCase().includes(r))}isOrphaned(e){return this.orphaned().has(e)}isManaged(e){return this.managed().has(e)}toggle(e){return ve(this,null,function*(){try{this.isManaged(e)?yield ze(this.serviceService.removeManagedService(e)):yield ze(this.serviceService.addManagedService(e));let t=new Set(this.managed());t.has(e)?t.delete(e):t.add(e),this.managed.set(t)}catch(t){console.error(`[ManagedServicesDialog] toggle error (${e}):`,t)}})}close(){this.dialogRef.close(!0)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-managed-services-dialog"]],decls:13,vars:2,consts:[[1,"dialog-container"],["mat-dialog-title",""],[1,"dialog-description"],["appearance","outline",1,"filter-field"],["matInput","","placeholder","Filter services...",3,"input","value"],["mode","indeterminate"],[1,"services-list"],["align","end"],["mat-raised-button","","color","primary",3,"click"],[1,"no-services"],[3,"orphaned"],[1,"service-row"],[1,"service-name"],[1,"orphaned-hint"],["mat-icon-button","",3,"click"]],template:function(t,n){t&1&&(l(0,"div",0)(1,"h2",1),u(2,"Manage services"),c(),l(3,"mat-dialog-content")(4,"p",2),u(5,"Select which system services to control."),c(),l(6,"mat-form-field",3)(7,"input",4),I("input",function(r){return n.filter.set(r.target.value)}),c()(),S(8,$v,1,0,"mat-progress-bar",5)(9,ey,3,1,"div",6),c(),l(10,"mat-dialog-actions",7)(11,"button",8),I("click",function(){return n.close()}),u(12,"Done"),c()()()),t&2&&(d(7),w("value",n.filter()),d(),E(n.loading()?8:9))},dependencies:[Ge,dt,ht,Mn,Ci,nn,an,on,us,$h,Uh,Gh,Vi,qn,Tt,It,_i,gi,Wt,$t],styles:[".dialog-container[_ngcontent-%COMP%]{min-width:400px;max-width:500px}mat-dialog-title[_ngcontent-%COMP%]{margin-bottom:8px}.dialog-description[_ngcontent-%COMP%]{margin:0 0 12px;color:#666;font-size:.9rem}.filter-field[_ngcontent-%COMP%]{width:100%;margin-bottom:8px}.services-list[_ngcontent-%COMP%]{max-height:400px;overflow-y:auto}.service-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;width:100%}.service-row[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-left:auto;flex-shrink:0}.service-name[_ngcontent-%COMP%]{font-family:monospace;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.no-services[_ngcontent-%COMP%]{text-align:center;color:#999;font-size:.9rem;padding:16px 0}mat-list-item.orphaned[_ngcontent-%COMP%] .service-name[_ngcontent-%COMP%]{color:#999}mat-list-item.orphaned[_ngcontent-%COMP%] .orphaned-hint[_ngcontent-%COMP%]{color:#bbb;font-size:.8rem;font-style:italic;margin-right:8px}"]})}}return i})();var Kh=new b("CdkAccordion");var Yh=(()=>{class i{accordion=s(Kh,{optional:!0,skipSelf:!0});_changeDetectorRef=s(ie);_expansionDispatcher=s(ua);_openCloseAllSubscription=_e.EMPTY;closed=new $;opened=new $;destroyed=new $;expandedChange=new $;id=s(he).getId("cdk-accordion-child-");get expanded(){return this._expanded}set expanded(e){if(this._expanded!==e){if(this._expanded=e,this.expandedChange.emit(e),e){this.opened.emit();let t=this.accordion?this.accordion.id:this.id;this._expansionDispatcher.notify(this.id,t)}else this.closed.emit();this._changeDetectorRef.markForCheck()}}_expanded=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=N(!1);_removeUniqueSelectionListener=()=>{};ngOnInit(){this._removeUniqueSelectionListener=this._expansionDispatcher.listen((e,t)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===t&&this.id!==e&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",F],disabled:[2,"disabled","disabled",F]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[te([{provide:Kh,useValue:void 0}])]})}return i})(),Xh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();var ty=["body"],iy=["bodyWrapper"],ny=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],oy=["mat-expansion-panel-header","*","mat-action-row"];function ay(i,o){}var ry=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],sy=["mat-panel-title","mat-panel-description","*"];function ly(i,o){i&1&&(Se(0,"span",1),ui(),Se(1,"svg",2),ct(2,"path",3),Pe()())}var Zh=new b("MAT_ACCORDION"),Qh=new b("MAT_EXPANSION_PANEL"),cy=(()=>{class i{_template=s(We);_expansionPanel=s(Qh,{optional:!0});static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["ng-template","matExpansionPanelContent",""]]})}return i})(),Jh=new b("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),xc=(()=>{class i extends Yh{_viewContainerRef=s(qe);_animationsDisabled=de();_document=s(G);_ngZone=s(j);_elementRef=s(O);_renderer=s(ue);_cleanupTransitionEnd;get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}_hideToggle=!1;get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_togglePosition;afterExpand=new $;afterCollapse=new $;_inputChanges=new M;accordion=s(Zh,{optional:!0,skipSelf:!0});_lazyContent;_body;_bodyWrapper;_portal;_headerId=s(he).getId("mat-expansion-panel-header-");constructor(){super();let e=s(Jh,{optional:!0});this._expansionDispatcher=s(ua),e&&(this.hideToggle=e.hideToggle)}_hasSpacing(){return this.accordion?this.expanded&&this.accordion.displayMode==="default":!1}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(Ie(null),pe(()=>this.expanded&&!this._portal),ot(1)).subscribe(()=>{this._portal=new Ct(this._lazyContent._template,this._viewContainerRef)}),this._setupAnimationEvents()}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTransitionEnd?.(),this._inputChanges.complete()}_containsFocus(){if(this._body){let e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}_transitionEndListener=({target:e,propertyName:t})=>{e===this._bodyWrapper?.nativeElement&&t==="grid-template-rows"&&this._ngZone.run(()=>{this.expanded?this.afterExpand.emit():this.afterCollapse.emit()})};_setupAnimationEvents(){this._ngZone.runOutsideAngular(()=>{this._animationsDisabled?(this.opened.subscribe(()=>this._ngZone.run(()=>this.afterExpand.emit())),this.closed.subscribe(()=>this._ngZone.run(()=>this.afterCollapse.emit()))):setTimeout(()=>{let e=this._elementRef.nativeElement;this._cleanupTransitionEnd=this._renderer.listen(e,"transitionend",this._transitionEndListener),e.classList.add("mat-expansion-panel-animations-enabled")},200)})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-expansion-panel"]],contentQueries:function(t,n,a){if(t&1&&tt(a,cy,5),t&2){let r;T(r=R())&&(n._lazyContent=r.first)}},viewQuery:function(t,n){if(t&1&&Ce(ty,5)(iy,5),t&2){let a;T(a=R())&&(n._body=a.first),T(a=R())&&(n._bodyWrapper=a.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:4,hostBindings:function(t,n){t&2&&f("mat-expanded",n.expanded)("mat-expansion-panel-spacing",n._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",F],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[te([{provide:Zh,useValue:void 0},{provide:Qh,useExisting:i}]),X,ye],ngContentSelectors:oy,decls:9,vars:4,consts:[["bodyWrapper",""],["body",""],[1,"mat-expansion-panel-content-wrapper"],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,n){t&1&&(le(ny),H(0),l(1,"div",2,0)(3,"div",3,1)(5,"div",4),H(6,1),Re(7,ay,0,0,"ng-template",5),c(),H(8,2),c()()),t&2&&(d(),Y("inert",n.expanded?null:""),d(2),w("id",n.id),Y("aria-labelledby",n._headerId),d(4),w("cdkPortalOutlet",n._portal))},dependencies:[vi],styles:[`.mat-expansion-panel {
|
|
5032
|
+
`,Fv=["unscopedContent"],Pv=["text"],Nv=[[["","matListItemAvatar",""],["","matListItemIcon",""]],[["","matListItemTitle",""]],[["","matListItemLine",""]],"*",[["","matListItemMeta",""]],[["mat-divider"]]],Lv=["[matListItemAvatar],[matListItemIcon]","[matListItemTitle]","[matListItemLine]","*","[matListItemMeta]","mat-divider"];var Bv=new b("ListOption"),Vv=(()=>{class i{_elementRef=s(O);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matListItemTitle",""]],hostAttrs:[1,"mat-mdc-list-item-title","mdc-list-item__primary-text"]})}return i})(),zv=(()=>{class i{_elementRef=s(O);static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matListItemLine",""]],hostAttrs:[1,"mat-mdc-list-item-line","mdc-list-item__secondary-text"]})}return i})(),jv=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matListItemMeta",""]],hostAttrs:[1,"mat-mdc-list-item-meta","mdc-list-item__end"]})}return i})(),Uh=(()=>{class i{_listOption=s(Bv,{optional:!0});_isAlignedAtStart(){return!this._listOption||this._listOption?._getTogglePosition()==="after"}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,hostVars:4,hostBindings:function(t,n){t&2&&f("mdc-list-item__start",n._isAlignedAtStart())("mdc-list-item__end",!n._isAlignedAtStart())}})}return i})(),Hv=(()=>{class i extends Uh{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matListItemAvatar",""]],hostAttrs:[1,"mat-mdc-list-item-avatar"],features:[X]})}return i})(),Uv=(()=>{class i extends Uh{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275dir=x({type:i,selectors:[["","matListItemIcon",""]],hostAttrs:[1,"mat-mdc-list-item-icon"],features:[X]})}return i})(),Gv=new b("MAT_LIST_CONFIG"),Cc=(()=>{class i{_isNonInteractive=!0;get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=rt(e)}_disableRipple=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(rt(e))}_disabled=N(!1);_defaultOptions=s(Gv,{optional:!0});static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,hostVars:1,hostBindings:function(t,n){t&2&&Y("aria-disabled",n.disabled)},inputs:{disableRipple:"disableRipple",disabled:"disabled"}})}return i})(),$v=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_listBase=s(Cc,{optional:!0});_platform=s(se);_hostElement;_isButtonElement;_noopAnimations=de();_avatars;_icons;set lines(e){this._explicitLines=Tt(e,null),this._updateItemLines(!1)}_explicitLines=null;get disableRipple(){return this.disabled||this._disableRipple||this._noopAnimations||!!this._listBase?.disableRipple}set disableRipple(e){this._disableRipple=rt(e)}_disableRipple=!1;get disabled(){return this._disabled()||!!this._listBase?.disabled}set disabled(e){this._disabled.set(rt(e))}_disabled=N(!1);_subscriptions=new ve;_rippleRenderer=null;_hasUnscopedTextContent=!1;rippleConfig;get rippleDisabled(){return this.disableRipple||!!this.rippleConfig.disabled}constructor(){s(Te).load(xt);let e=s(En,{optional:!0});this.rippleConfig=e||{},this._hostElement=this._elementRef.nativeElement,this._isButtonElement=this._hostElement.nodeName.toLowerCase()==="button",this._listBase&&!this._listBase._isNonInteractive&&this._initInteractiveListItem(),this._isButtonElement&&!this._hostElement.hasAttribute("type")&&this._hostElement.setAttribute("type","button")}ngAfterViewInit(){this._monitorProjectedLinesAndTitle(),this._updateItemLines(!0)}ngOnDestroy(){this._subscriptions.unsubscribe(),this._rippleRenderer!==null&&this._rippleRenderer._removeTriggerEvents()}_hasIconOrAvatar(){return!!(this._avatars.length||this._icons.length)}_initInteractiveListItem(){this._hostElement.classList.add("mat-mdc-list-item-interactive"),this._rippleRenderer=new Sn(this,this._ngZone,this._hostElement,this._platform,s(q)),this._rippleRenderer.setupTriggerEvents(this._hostElement)}_monitorProjectedLinesAndTitle(){this._ngZone.runOutsideAngular(()=>{this._subscriptions.add(He(this._lines.changes,this._titles.changes).subscribe(()=>this._updateItemLines(!1)))})}_updateItemLines(e){if(!this._lines||!this._titles||!this._unscopedContent)return;e&&this._checkDomForUnscopedTextContent();let t=this._explicitLines??this._inferLinesFromContent(),n=this._unscopedContent.nativeElement;if(this._hostElement.classList.toggle("mat-mdc-list-item-single-line",t<=1),this._hostElement.classList.toggle("mdc-list-item--with-one-line",t<=1),this._hostElement.classList.toggle("mdc-list-item--with-two-lines",t===2),this._hostElement.classList.toggle("mdc-list-item--with-three-lines",t===3),this._hasUnscopedTextContent){let a=this._titles.length===0&&t===1;n.classList.toggle("mdc-list-item__primary-text",a),n.classList.toggle("mdc-list-item__secondary-text",!a)}else n.classList.remove("mdc-list-item__primary-text"),n.classList.remove("mdc-list-item__secondary-text")}_inferLinesFromContent(){let e=this._titles.length+this._lines.length;return this._hasUnscopedTextContent&&(e+=1),e}_checkDomForUnscopedTextContent(){this._hasUnscopedTextContent=Array.from(this._unscopedContent.nativeElement.childNodes).filter(e=>e.nodeType!==e.COMMENT_NODE).some(e=>!!(e.textContent&&e.textContent.trim()))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,contentQueries:function(t,n,a){if(t&1&&tt(a,Hv,4)(a,Uv,4),t&2){let r;T(r=R())&&(n._avatars=r),T(r=R())&&(n._icons=r)}},hostVars:4,hostBindings:function(t,n){t&2&&(Y("aria-disabled",n.disabled)("disabled",n._isButtonElement&&n.disabled||null),f("mdc-list-item--disabled",n.disabled))},inputs:{lines:"lines",disableRipple:"disableRipple",disabled:"disabled"}})}return i})();var Gh=(()=>{class i extends Cc{static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-list"]],hostAttrs:[1,"mat-mdc-list","mat-mdc-list-base","mdc-list"],exportAs:["matList"],features:[te([{provide:Cc,useExisting:i}]),X],ngContentSelectors:Rv,decls:1,vars:0,template:function(t,n){t&1&&(le(),H(0))},styles:[Ov],encapsulation:2})}return i})(),$h=(()=>{class i extends $v{_lines;_titles;_meta;_unscopedContent;_itemText;get activated(){return this._activated}set activated(e){this._activated=rt(e)}_activated=!1;_getAriaCurrent(){return this._hostElement.nodeName==="A"&&this._activated?"page":null}_hasBothLeadingAndTrailing(){return this._meta.length!==0&&(this._avatars.length!==0||this._icons.length!==0)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=_e(i)))(n||i)}})();static \u0275cmp=A({type:i,selectors:[["mat-list-item"],["a","mat-list-item",""],["button","mat-list-item",""]],contentQueries:function(t,n,a){if(t&1&&tt(a,zv,5)(a,Vv,5)(a,jv,5),t&2){let r;T(r=R())&&(n._lines=r),T(r=R())&&(n._titles=r),T(r=R())&&(n._meta=r)}},viewQuery:function(t,n){if(t&1&&we(Fv,5)(Pv,5),t&2){let a;T(a=R())&&(n._unscopedContent=a.first),T(a=R())&&(n._itemText=a.first)}},hostAttrs:[1,"mat-mdc-list-item","mdc-list-item"],hostVars:13,hostBindings:function(t,n){t&2&&(Y("aria-current",n._getAriaCurrent()),f("mdc-list-item--activated",n.activated)("mdc-list-item--with-leading-avatar",n._avatars.length!==0)("mdc-list-item--with-leading-icon",n._icons.length!==0)("mdc-list-item--with-trailing-meta",n._meta.length!==0)("mat-mdc-list-item-both-leading-and-trailing",n._hasBothLeadingAndTrailing())("_mat-animation-noopable",n._noopAnimations))},inputs:{activated:"activated"},exportAs:["matListItem"],features:[X],ngContentSelectors:Lv,decls:10,vars:0,consts:[["unscopedContent",""],[1,"mdc-list-item__content"],[1,"mat-mdc-list-item-unscoped-content",3,"cdkObserveContent"],[1,"mat-focus-indicator"]],template:function(t,n){t&1&&(le(Nv),H(0),l(1,"span",1),H(2,1),H(3,2),l(4,"span",2,0),I("cdkObserveContent",function(){return n._updateItemLines(!0)}),H(6,3),c()(),H(7,4),H(8,5),v(9,"div",3))},dependencies:[wm],encapsulation:2})}return i})();var Wh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Zn,bi,ds,Q,hs]})}return i})();function Wv(i,o){i&1&&v(0,"mat-progress-bar",5)}function qv(i,o){i&1&&(l(0,"span",13),u(1,"(removed)"),c())}function Kv(i,o){i&1&&(l(0,"mat-icon"),u(1,"check_box"),c())}function Yv(i,o){i&1&&(l(0,"mat-icon"),u(1,"check_box_outline_blank"),c())}function Xv(i,o){if(i&1){let e=Ve();l(0,"mat-list-item")(1,"div",11)(2,"span",12),u(3),c(),S(4,qv,2,0,"span",13),l(5,"button",14),I("click",function(){let n=pe(e).$implicit,a=C(3);return fe(a.toggle(n))}),S(6,Kv,2,0,"mat-icon")(7,Yv,2,0,"mat-icon"),c()()()}if(i&2){let e=o.$implicit,t=C(3);f("orphaned",t.isOrphaned(e)),d(3),Z(e),d(),E(t.isOrphaned(e)?4:-1),d(),Y("aria-label","Toggle "+e),d(),E(t.isManaged(e)?6:7)}}function Zv(i,o){if(i&1&&(l(0,"mat-list"),Le(1,Xv,8,6,"mat-list-item",10,wi),c()),i&2){let e=C(2);d(),Be(e.filteredServices)}}function Qv(i,o){if(i&1&&u(0),i&2){let e=C(3);ye(' No services match "',e.filter(),'" ')}}function Jv(i,o){i&1&&u(0," No installed services found ")}function ey(i,o){if(i&1&&(l(0,"p",9),S(1,Qv,1,1)(2,Jv,1,0),c()),i&2){let e=C(2);d(),E(e.filter()?1:2)}}function ty(i,o){if(i&1&&(l(0,"div",6),S(1,Zv,3,0,"mat-list")(2,ey,3,1,"p",9),c()),i&2){let e=C();d(),E(e.filteredServices.length>0?1:2)}}var Kh=(()=>{class i{constructor(){this.serviceService=s(Zt),this.dialogRef=s(Xt),this.available=N([]),this.managed=N(new Set),this.orphaned=N(new Set),this.loading=N(!0),this.filter=N("")}ngOnInit(){return Ce(this,null,function*(){try{let[e,t]=yield Promise.all([je(this.serviceService.listAvailableServices()),je(this.serviceService.listManagedServices())]);this.available.set(e),this.managed.set(new Set(t));let n=new Set(e),a=t.filter(r=>!n.has(r));this.orphaned.set(new Set(a))}catch(e){console.error("[ManagedServicesDialog] load error:",e)}finally{this.loading.set(!1)}})}get filteredServices(){let e=this.available(),t=this.orphaned(),n=[...new Set([...e,...t])].sort(),a=this.filter();if(!a)return n;let r=a.toLowerCase();return n.filter(m=>m.toLowerCase().includes(r))}isOrphaned(e){return this.orphaned().has(e)}isManaged(e){return this.managed().has(e)}toggle(e){return Ce(this,null,function*(){try{this.isManaged(e)?yield je(this.serviceService.removeManagedService(e)):yield je(this.serviceService.addManagedService(e));let t=new Set(this.managed());t.has(e)?t.delete(e):t.add(e),this.managed.set(t)}catch(t){console.error(`[ManagedServicesDialog] toggle error (${e}):`,t)}})}close(){this.dialogRef.close(!0)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-managed-services-dialog"]],decls:13,vars:2,consts:[[1,"dialog-container"],["mat-dialog-title",""],[1,"dialog-description"],["appearance","outline",1,"filter-field"],["matInput","","placeholder","Filter services...",3,"input","value"],["mode","indeterminate"],[1,"services-list"],["align","end"],["mat-raised-button","","color","primary",3,"click"],[1,"no-services"],[3,"orphaned"],[1,"service-row"],[1,"service-name"],[1,"orphaned-hint"],["mat-icon-button","",3,"click"]],template:function(t,n){t&1&&(l(0,"div",0)(1,"h2",1),u(2,"Manage services"),c(),l(3,"mat-dialog-content")(4,"p",2),u(5,"Select which system services to control."),c(),l(6,"mat-form-field",3)(7,"input",4),I("input",function(r){return n.filter.set(r.target.value)}),c()(),S(8,Wv,1,0,"mat-progress-bar",5)(9,ty,3,1,"div",6),c(),l(10,"mat-dialog-actions",7)(11,"button",8),I("click",function(){return n.close()}),u(12,"Done"),c()()()),t&2&&(d(7),w("value",n.filter()),d(),E(n.loading()?8:9))},dependencies:[$e,dt,ht,Mn,Ci,nn,an,on,us,Wh,Gh,$h,Vi,qn,Ct,yt,$t,Gt,Kt,qt],styles:[".dialog-container[_ngcontent-%COMP%]{min-width:400px;max-width:500px}mat-dialog-title[_ngcontent-%COMP%]{margin-bottom:8px}.dialog-description[_ngcontent-%COMP%]{margin:0 0 12px;color:#666;font-size:.9rem}.filter-field[_ngcontent-%COMP%]{width:100%;margin-bottom:8px}.services-list[_ngcontent-%COMP%]{max-height:400px;overflow-y:auto}.service-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;width:100%}.service-row[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin-left:auto;flex-shrink:0}.service-name[_ngcontent-%COMP%]{font-family:monospace;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.no-services[_ngcontent-%COMP%]{text-align:center;color:#999;font-size:.9rem;padding:16px 0}mat-list-item.orphaned[_ngcontent-%COMP%] .service-name[_ngcontent-%COMP%]{color:#999}mat-list-item.orphaned[_ngcontent-%COMP%] .orphaned-hint[_ngcontent-%COMP%]{color:#bbb;font-size:.8rem;font-style:italic;margin-right:8px}"]})}}return i})();var Yh=new b("CdkAccordion");var Xh=(()=>{class i{accordion=s(Yh,{optional:!0,skipSelf:!0});_changeDetectorRef=s(ie);_expansionDispatcher=s(ua);_openCloseAllSubscription=ve.EMPTY;closed=new $;opened=new $;destroyed=new $;expandedChange=new $;id=s(he).getId("cdk-accordion-child-");get expanded(){return this._expanded}set expanded(e){if(this._expanded!==e){if(this._expanded=e,this.expandedChange.emit(e),e){this.opened.emit();let t=this.accordion?this.accordion.id:this.id;this._expansionDispatcher.notify(this.id,t)}else this.closed.emit();this._changeDetectorRef.markForCheck()}}_expanded=!1;get disabled(){return this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=N(!1);_removeUniqueSelectionListener=()=>{};ngOnInit(){this._removeUniqueSelectionListener=this._expansionDispatcher.listen((e,t)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===t&&this.id!==e&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:[2,"expanded","expanded",F],disabled:[2,"disabled","disabled",F]},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[te([{provide:Yh,useValue:void 0}])]})}return i})(),Zh=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({})}return i})();var iy=["body"],ny=["bodyWrapper"],oy=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],ay=["mat-expansion-panel-header","*","mat-action-row"];function ry(i,o){}var sy=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],ly=["mat-panel-title","mat-panel-description","*"];function cy(i,o){i&1&&(Ee(0,"span",1),pi(),Ee(1,"svg",2),ct(2,"path",3),Pe()())}var Qh=new b("MAT_ACCORDION"),Jh=new b("MAT_EXPANSION_PANEL"),dy=(()=>{class i{_template=s(qe);_expansionPanel=s(Jh,{optional:!0});static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["ng-template","matExpansionPanelContent",""]]})}return i})(),ep=new b("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),xc=(()=>{class i extends Xh{_viewContainerRef=s(Ke);_animationsDisabled=de();_document=s(G);_ngZone=s(j);_elementRef=s(O);_renderer=s(ue);_cleanupTransitionEnd;get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=e}_hideToggle=!1;get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_togglePosition;afterExpand=new $;afterCollapse=new $;_inputChanges=new M;accordion=s(Qh,{optional:!0,skipSelf:!0});_lazyContent;_body;_bodyWrapper;_portal;_headerId=s(he).getId("mat-expansion-panel-header-");constructor(){super();let e=s(ep,{optional:!0});this._expansionDispatcher=s(ua),e&&(this.hideToggle=e.hideToggle)}_hasSpacing(){return this.accordion?this.expanded&&this.accordion.displayMode==="default":!1}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this._lazyContent._expansionPanel===this&&this.opened.pipe(Ie(null),ge(()=>this.expanded&&!this._portal),ot(1)).subscribe(()=>{this._portal=new wt(this._lazyContent._template,this._viewContainerRef)}),this._setupAnimationEvents()}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTransitionEnd?.(),this._inputChanges.complete()}_containsFocus(){if(this._body){let e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}_transitionEndListener=({target:e,propertyName:t})=>{e===this._bodyWrapper?.nativeElement&&t==="grid-template-rows"&&this._ngZone.run(()=>{this.expanded?this.afterExpand.emit():this.afterCollapse.emit()})};_setupAnimationEvents(){this._ngZone.runOutsideAngular(()=>{this._animationsDisabled?(this.opened.subscribe(()=>this._ngZone.run(()=>this.afterExpand.emit())),this.closed.subscribe(()=>this._ngZone.run(()=>this.afterCollapse.emit()))):setTimeout(()=>{let e=this._elementRef.nativeElement;this._cleanupTransitionEnd=this._renderer.listen(e,"transitionend",this._transitionEndListener),e.classList.add("mat-expansion-panel-animations-enabled")},200)})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-expansion-panel"]],contentQueries:function(t,n,a){if(t&1&&tt(a,dy,5),t&2){let r;T(r=R())&&(n._lazyContent=r.first)}},viewQuery:function(t,n){if(t&1&&we(iy,5)(ny,5),t&2){let a;T(a=R())&&(n._body=a.first),T(a=R())&&(n._bodyWrapper=a.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:4,hostBindings:function(t,n){t&2&&f("mat-expanded",n.expanded)("mat-expansion-panel-spacing",n._hasSpacing())},inputs:{hideToggle:[2,"hideToggle","hideToggle",F],togglePosition:"togglePosition"},outputs:{afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[te([{provide:Qh,useValue:void 0},{provide:Jh,useExisting:i}]),X,xe],ngContentSelectors:ay,decls:9,vars:4,consts:[["bodyWrapper",""],["body",""],[1,"mat-expansion-panel-content-wrapper"],["role","region",1,"mat-expansion-panel-content",3,"id"],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,n){t&1&&(le(oy),H(0),l(1,"div",2,0)(3,"div",3,1)(5,"div",4),H(6,1),Re(7,ry,0,0,"ng-template",5),c(),H(8,2),c()()),t&2&&(d(),Y("inert",n.expanded?null:""),d(2),w("id",n.id),Y("aria-labelledby",n._headerId),d(4),w("cdkPortalOutlet",n._portal))},dependencies:[vi],styles:[`.mat-expansion-panel {
|
|
5033
5033
|
box-sizing: content-box;
|
|
5034
5034
|
display: block;
|
|
5035
5035
|
margin: 0;
|
|
@@ -5145,7 +5145,7 @@ mat-action-list button::-moz-focus-inner {
|
|
|
5145
5145
|
margin-left: 0;
|
|
5146
5146
|
margin-right: 8px;
|
|
5147
5147
|
}
|
|
5148
|
-
`],encapsulation:2})}return i})();var
|
|
5148
|
+
`],encapsulation:2})}return i})();var tp=(()=>{class i{panel=s(xc,{host:!0});_element=s(O);_focusMonitor=s(St);_changeDetectorRef=s(ie);_parentChangeSubscription=ve.EMPTY;constructor(){s(Te).load(xt);let e=this.panel,t=s(ep,{optional:!0}),n=s(new fi("tabindex"),{optional:!0}),a=e.accordion?e.accordion._stateChanges.pipe(ge(r=>!!(r.hideToggle||r.togglePosition))):Ea;this.tabIndex=parseInt(n||"")||0,this._parentChangeSubscription=He(e.opened,e.closed,a,e._inputChanges.pipe(ge(r=>!!(r.hideToggle||r.disabled||r.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(ge(()=>e._containsFocus())).subscribe(()=>this._focusMonitor.focusVia(this._element,"program")),t&&(this.expandedHeight=t.expandedHeight,this.collapsedHeight=t.collapsedHeight)}expandedHeight;collapsedHeight;tabIndex=0;get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){let e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:ze(e)||(e.preventDefault(),this._toggle());break;default:this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e);return}}focus(e,t){e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:13,hostBindings:function(t,n){t&1&&I("click",function(){return n._toggle()})("keydown",function(r){return n._keydown(r)}),t&2&&(Y("id",n.panel._headerId)("tabindex",n.disabled?-1:n.tabIndex)("aria-controls",n._getPanelId())("aria-expanded",n._isExpanded())("aria-disabled",n.panel.disabled),Ne("height",n._getHeaderHeight()),f("mat-expanded",n._isExpanded())("mat-expansion-toggle-indicator-after",n._getTogglePosition()==="after")("mat-expansion-toggle-indicator-before",n._getTogglePosition()==="before"))},inputs:{expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight",tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:_t(e)]},ngContentSelectors:ly,decls:5,vars:3,consts:[[1,"mat-content"],[1,"mat-expansion-indicator"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 -960 960 960","aria-hidden","true","focusable","false"],["d","M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"]],template:function(t,n){t&1&&(le(sy),Ee(0,"span",0),H(1),H(2,1),H(3,2),Pe(),S(4,cy,3,0,"span",1)),t&2&&(f("mat-content-hide-toggle",!n._showToggle()),d(4),E(n._showToggle()?4:-1))},styles:[`.mat-expansion-panel-header {
|
|
5149
5149
|
display: flex;
|
|
5150
5150
|
flex-direction: row;
|
|
5151
5151
|
align-items: center;
|
|
@@ -5286,7 +5286,7 @@ mat-action-list button::-moz-focus-inner {
|
|
|
5286
5286
|
border-top-right-radius: 0;
|
|
5287
5287
|
}
|
|
5288
5288
|
}
|
|
5289
|
-
`],encapsulation:2})}return i})(),tp=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-panel-description"]],hostAttrs:[1,"mat-expansion-panel-header-description"]})}return i})(),ip=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]})}return i})();var np=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Xh,yi,Q]})}return i})();var my=["trigger"],uy=["panel"],hy=[[["mat-select-trigger"]],"*"],py=["mat-select-trigger","*"];function fy(i,o){if(i&1&&(l(0,"span",4),u(1),c()),i&2){let e=C();d(),Z(e.placeholder)}}function gy(i,o){i&1&&H(0)}function _y(i,o){if(i&1&&(l(0,"span",11),u(1),c()),i&2){let e=C(2);d(),Z(e.triggerValue)}}function by(i,o){if(i&1&&(l(0,"span",5),S(1,gy,1,0)(2,_y,2,1,"span",11),c()),i&2){let e=C();d(),E(e.customTrigger?1:2)}}function vy(i,o){if(i&1){let e=Ke();l(0,"div",12,1),I("keydown",function(n){De(e);let a=C();return ke(a._handleKeydown(n))}),H(2,1),c()}if(i&2){let e=C();Qe(e.panelClass),f("mat-select-panel-animations-enabled",!e._animationsDisabled)("mat-primary",e._parentFormField?.color==="primary")("mat-accent",e._parentFormField?.color==="accent")("mat-warn",e._parentFormField?.color==="warn")("mat-undefined",!e._parentFormField?.color),Y("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}var yy=new b("mat-select-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>ci(i)}}),Cy=new b("MAT_SELECT_CONFIG"),xy=new b("MatSelectTrigger"),wc=class{source;value;constructor(o,e){this.source=o,this.value=e}},ps=(()=>{class i{_viewportRuler=s(Rt);_changeDetectorRef=s(ie);_elementRef=s(O);_dir=s(He,{optional:!0});_idGenerator=s(he);_renderer=s(ue);_parentFormField=s(kn,{optional:!0});ngControl=s(Ht,{self:!0,optional:!0});_liveAnnouncer=s(Wo);_defaultOptions=s(Cy,{optional:!0});_animationsDisabled=de();_popoverLocation;_initialized=new M;_cleanupDetach;options;optionGroups;customTrigger;_positions=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"}];_scrollOptionIntoView(e){let t=this.options.toArray()[e];if(t){let n=this.panel.nativeElement,a=ls(e,this.options,this.optionGroups),r=t._getHostElement();e===0&&a===1?n.scrollTop=0:n.scrollTop=cs(r.offsetTop,r.offsetHeight,n.scrollTop,n.offsetHeight)}}_positioningSettled(){this._scrollOptionIntoView(this._keyManager.activeItemIndex||0)}_getChangeEvent(e){return new wc(this,e)}_scrollStrategyFactory=s(yy);_panelOpen=!1;_compareWith=(e,t)=>e===t;_uid=this._idGenerator.getId("mat-select-");_triggerAriaLabelledBy=null;_previousControl;_destroy=new M;_errorStateTracker;stateChanges=new M;disableAutomaticLabeling=!0;userAriaDescribedBy;_selectionModel;_keyManager;_preferredOverlayOrigin;_overlayWidth;_onChange=()=>{};_onTouched=()=>{};_valueId=this._idGenerator.getId("mat-select-value-");_scrollStrategy;_overlayPanelClass=this._defaultOptions?.overlayPanelClass||"";get focused(){return this._focused||this._panelOpen}_focused=!1;controlType="mat-select";trigger;panel;_overlayDir;panelClass;disabled=!1;get disableRipple(){return this._disableRipple()}set disableRipple(e){this._disableRipple.set(e)}_disableRipple=N(!1);tabIndex=0;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}_hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}_placeholder;get required(){return this._required??this.ngControl?.control?.hasValidator(vt.required)??!1}set required(e){this._required=e,this.stateChanges.next()}_required;get multiple(){return this._multiple}set multiple(e){this._selectionModel,this._multiple=e}_multiple=!1;disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1;get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}_value;ariaLabel="";ariaLabelledby;get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}typeaheadDebounceInterval;sortComparator;get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}_id;get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}panelWidth=this._defaultOptions&&typeof this._defaultOptions.panelWidth<"u"?this._defaultOptions.panelWidth:"auto";canSelectNullableOptions=this._defaultOptions?.canSelectNullableOptions??!1;optionSelectionChanges=Oi(()=>{let e=this.options;return e?e.changes.pipe(Ie(e),$e(()=>je(...e.map(t=>t.onSelectionChange)))):this._initialized.pipe($e(()=>this.optionSelectionChanges))});openedChange=new $;_openedStream=this.openedChange.pipe(pe(e=>e),Ae(()=>{}));_closedStream=this.openedChange.pipe(pe(e=>!e),Ae(()=>{}));selectionChange=new $;valueChange=new $;constructor(){let e=s(lo),t=s(na,{optional:!0}),n=s(oi,{optional:!0}),a=s(new hi("tabindex"),{optional:!0}),r=s(_a,{optional:!0});this.ngControl&&(this.ngControl.valueAccessor=this),this._defaultOptions?.typeaheadDebounceInterval!=null&&(this.typeaheadDebounceInterval=this._defaultOptions.typeaheadDebounceInterval),this._errorStateTracker=new co(e,this.ngControl,n,t,this.stateChanges),this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=a==null?0:parseInt(a)||0,this._popoverLocation=r?.usePopover===!1?null:"inline",this.id=this.id}ngOnInit(){this._selectionModel=new ma(this.multiple),this.stateChanges.next(),this._viewportRuler.change().pipe(ne(this._destroy)).subscribe(()=>{this.panelOpen&&(this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._changeDetectorRef.detectChanges())})}ngAfterContentInit(){this._initialized.next(),this._initialized.complete(),this._initKeyManager(),this._selectionModel.changed.pipe(ne(this._destroy)).subscribe(e=>{e.added.forEach(t=>t.select()),e.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Ie(null),ne(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){let e=this._getTriggerAriaLabelledby(),t=this.ngControl;if(e!==this._triggerAriaLabelledBy){let n=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?n.setAttribute("aria-labelledby",e):n.removeAttribute("aria-labelledby")}t&&(this._previousControl!==t.control&&(this._previousControl!==void 0&&t.disabled!==null&&t.disabled!==this.disabled&&(this.disabled=t.disabled),this._previousControl=t.control),this.updateErrorState())}ngOnChanges(e){(e.disabled||e.userAriaDescribedBy)&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this.typeaheadDebounceInterval),e.panelClass&&this.panelClass instanceof Set&&(this.panelClass=Array.from(this.panelClass))}ngOnDestroy(){this._cleanupDetach?.(),this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._parentFormField&&(this._preferredOverlayOrigin=this._parentFormField.getConnectedOverlayOrigin()),this._cleanupDetach?.(),this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._panelOpen=!0,this._overlayDir.positionChange.pipe(ot(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()}),this._overlayDir.attachOverlay(),this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!0)))}close(){this._panelOpen&&(this._panelOpen=!1,this._exitAndDetach(),this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!1)))}_exitAndDetach(){if(this._animationsDisabled||!this.panel){this._detachOverlay();return}this._cleanupDetach?.(),this._cleanupDetach=()=>{t(),clearTimeout(n),this._cleanupDetach=void 0};let e=this.panel.nativeElement,t=this._renderer.listen(e,"animationend",a=>{a.animationName==="_mat-select-exit"&&(this._cleanupDetach?.(),this._detachOverlay())}),n=setTimeout(()=>{this._cleanupDetach?.(),this._detachOverlay()},200);e.classList.add("mat-select-panel-exit")}_detachOverlay(){this._overlayDir.detachOverlay(),this._changeDetectorRef.markForCheck()}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){let e=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}updateErrorState(){this._errorStateTracker.updateErrorState()}_isRtl(){return this._dir?this._dir.value==="rtl":!1}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){let t=e.keyCode,n=t===40||t===38||t===37||t===39,a=t===13||t===32,r=this._keyManager;if(!r.isTyping()&&a&&!Ve(e)||(this.multiple||e.altKey)&&n)e.preventDefault(),this.open();else if(!this.multiple){let m=this.selected;r.onKeydown(e);let h=this.selected;h&&m!==h&&this._liveAnnouncer.announce(h.viewValue,1e4)}}_handleOpenKeydown(e){let t=this._keyManager,n=e.keyCode,a=n===40||n===38,r=t.isTyping();if(a&&e.altKey)e.preventDefault(),this.close();else if(!r&&(n===13||n===32)&&t.activeItem&&!Ve(e))e.preventDefault(),t.activeItem._selectViaInteraction();else if(!r&&this._multiple&&n===65&&e.ctrlKey){e.preventDefault();let m=this.options.some(h=>!h.disabled&&!h.selected);this.options.forEach(h=>{h.disabled||(m?h.select():h.deselect())})}else{let m=t.activeItemIndex;t.onKeydown(e),this._multiple&&a&&e.shiftKey&&t.activeItem&&t.activeItemIndex!==m&&t.activeItem._selectViaInteraction()}}_handleOverlayKeydown(e){e.keyCode===27&&!Ve(e)&&(e.preventDefault(),this.close())}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this.options.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(t=>this._selectOptionByValue(t)),this._sortValues();else{let t=this._selectOptionByValue(e);t?this._keyManager.updateActiveItem(t):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){let t=this.options.find(n=>{if(this._selectionModel.isSelected(n))return!1;try{return(n.value!=null||this.canSelectNullableOptions)&&this._compareWith(n.value,e)}catch(a){return!1}});return t&&this._selectionModel.select(t),t}_assignValue(e){return e!==this._value||this._multiple&&Array.isArray(e)?(this.options&&this._setSelectionByValue(e),this._value=e,!0):!1}_skipPredicate=e=>this.panelOpen?!1:e.disabled;_getOverlayWidth(e){return this.panelWidth==="auto"?(e instanceof fo?e.elementRef:e||this._elementRef).nativeElement.getBoundingClientRect().width:this.panelWidth===null?"":this.panelWidth}_syncParentProperties(){if(this.options)for(let e of this.options)e._changeDetectorRef.markForCheck()}_initKeyManager(){this._keyManager=new Cn(this.options).withTypeAhead(this.typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){let e=je(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(ne(e)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),je(...this.options.map(t=>t._stateChanges)).pipe(ne(e)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(e,t){let n=this._selectionModel.isSelected(e);!this.canSelectNullableOptions&&e.value==null&&!this._multiple?(e.deselect(),this._selectionModel.clear(),this.value!=null&&this._propagateChanges(e.value)):(n!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),t&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),t&&this.focus())),n!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){let e=this.options.toArray();this._selectionModel.sort((t,n)=>this.sortComparator?this.sortComparator(t,n,e):e.indexOf(t)-e.indexOf(n)),this.stateChanges.next()}}_propagateChanges(e){let t;this.multiple?t=this.selected.map(n=>n.value):t=this.selected?this.selected.value:e,this._value=t,this.valueChange.emit(t),this._onChange(t),this.selectionChange.emit(this._getChangeEvent(t)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let e=-1;for(let t=0;t<this.options.length;t++)if(!this.options.get(t).disabled){e=t;break}this._keyManager.setActiveItem(e)}else this._keyManager.setActiveItem(this._selectionModel.selected[0])}_canOpen(){return!this._panelOpen&&!this.disabled&&this.options?.length>0&&!!this._overlayDir}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;let e=this._parentFormField?.getLabelId()||null,t=e?e+" ":"";return this.ariaLabelledby?t+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;let e=this._parentFormField?.getLabelId()||"";return this.ariaLabelledby&&(e+=" "+this.ariaLabelledby),e||(e=this._valueId),e}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(e){let t=this._elementRef.nativeElement;e.length?t.setAttribute("aria-describedby",e.join(" ")):t.removeAttribute("aria-describedby")}onContainerClick(e){let t=it(e);t&&(t.tagName==="MAT-OPTION"||t.classList.contains("cdk-overlay-backdrop")||t.closest(".mat-mdc-select-panel"))||(this.focus(),this.open())}get shouldLabelFloat(){return this.panelOpen||!this.empty||this.focused&&!!this.placeholder}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-select"]],contentQueries:function(t,n,a){if(t&1&&tt(a,xy,5)(a,St,5)(a,wa,5),t&2){let r;T(r=R())&&(n.customTrigger=r.first),T(r=R())&&(n.options=r),T(r=R())&&(n.optionGroups=r)}},viewQuery:function(t,n){if(t&1&&Ce(my,5)(uy,5)(Jr,5),t&2){let a;T(a=R())&&(n.trigger=a.first),T(a=R())&&(n.panel=a.first),T(a=R())&&(n._overlayDir=a.first)}},hostAttrs:["role","combobox","aria-haspopup","listbox",1,"mat-mdc-select"],hostVars:21,hostBindings:function(t,n){t&1&&I("keydown",function(r){return n._handleKeydown(r)})("focus",function(){return n._onFocus()})("blur",function(){return n._onBlur()}),t&2&&(Y("id",n.id)("tabindex",n.disabled?-1:n.tabIndex)("aria-controls",n.panelOpen?n.id+"-panel":null)("aria-expanded",n.panelOpen)("aria-label",n.ariaLabel||null)("aria-required",n.required.toString())("aria-disabled",n.disabled.toString())("aria-invalid",n.errorState)("aria-activedescendant",n._getAriaActiveDescendant()),f("mat-mdc-select-disabled",n.disabled)("mat-mdc-select-invalid",n.errorState)("mat-mdc-select-required",n.required)("mat-mdc-select-empty",n.empty)("mat-mdc-select-multiple",n.multiple)("mat-select-open",n.panelOpen))},inputs:{userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",disabled:[2,"disabled","disabled",F],disableRipple:[2,"disableRipple","disableRipple",F],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:_t(e)],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",F],placeholder:"placeholder",required:[2,"required","required",F],multiple:[2,"multiple","multiple",F],disableOptionCentering:[2,"disableOptionCentering","disableOptionCentering",F],compareWith:"compareWith",value:"value",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:[2,"typeaheadDebounceInterval","typeaheadDebounceInterval",_t],sortComparator:"sortComparator",id:"id",panelWidth:"panelWidth",canSelectNullableOptions:[2,"canSelectNullableOptions","canSelectNullableOptions",F]},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},exportAs:["matSelect"],features:[te([{provide:oa,useExisting:i},{provide:xa,useExisting:i}]),ye],ngContentSelectors:py,decls:11,vars:10,consts:[["fallbackOverlayOrigin","cdkOverlayOrigin","trigger",""],["panel",""],["cdk-overlay-origin","",1,"mat-mdc-select-trigger",3,"click"],[1,"mat-mdc-select-value"],[1,"mat-mdc-select-placeholder","mat-mdc-select-min-line"],[1,"mat-mdc-select-value-text"],[1,"mat-mdc-select-arrow-wrapper"],[1,"mat-mdc-select-arrow"],["viewBox","0 0 24 24","width","24px","height","24px","focusable","false","aria-hidden","true"],["d","M7 10l5 5 5-5z"],["cdk-connected-overlay","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"detach","backdropClick","overlayKeydown","cdkConnectedOverlayDisableClose","cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayWidth","cdkConnectedOverlayFlexibleDimensions","cdkConnectedOverlayUsePopover"],[1,"mat-mdc-select-min-line"],["role","listbox","tabindex","-1",1,"mat-mdc-select-panel","mdc-menu-surface","mdc-menu-surface--open",3,"keydown"]],template:function(t,n){if(t&1&&(le(hy),l(0,"div",2,0),I("click",function(){return n.open()}),l(3,"div",3),S(4,fy,2,1,"span",4)(5,by,3,1,"span",5),c(),l(6,"div",6)(7,"div",7),ui(),l(8,"svg",8),v(9,"path",9),c()()()(),Re(10,vy,3,16,"ng-template",10),I("detach",function(){return n.close()})("backdropClick",function(){return n.close()})("overlayKeydown",function(r){return n._handleOverlayKeydown(r)})),t&2){let a=Ye(1);d(3),Y("id",n._valueId),d(),E(n.empty?4:5),d(6),w("cdkConnectedOverlayDisableClose",!0)("cdkConnectedOverlayPanelClass",n._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",n._scrollStrategy)("cdkConnectedOverlayOrigin",n._preferredOverlayOrigin||a)("cdkConnectedOverlayPositions",n._positions)("cdkConnectedOverlayWidth",n._overlayWidth)("cdkConnectedOverlayFlexibleDimensions",!0)("cdkConnectedOverlayUsePopover",n._popoverLocation)}},dependencies:[fo,Jr],styles:[`@keyframes _mat-select-enter {
|
|
5289
|
+
`],encapsulation:2})}return i})(),ip=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-panel-description"]],hostAttrs:[1,"mat-expansion-panel-header-description"]})}return i})(),np=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]})}return i})();var op=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Zh,yi,Q]})}return i})();var uy=["trigger"],hy=["panel"],py=[[["mat-select-trigger"]],"*"],fy=["mat-select-trigger","*"];function gy(i,o){if(i&1&&(l(0,"span",4),u(1),c()),i&2){let e=C();d(),Z(e.placeholder)}}function _y(i,o){i&1&&H(0)}function by(i,o){if(i&1&&(l(0,"span",11),u(1),c()),i&2){let e=C(2);d(),Z(e.triggerValue)}}function vy(i,o){if(i&1&&(l(0,"span",5),S(1,_y,1,0)(2,by,2,1,"span",11),c()),i&2){let e=C();d(),E(e.customTrigger?1:2)}}function yy(i,o){if(i&1){let e=Ve();l(0,"div",12,1),I("keydown",function(n){pe(e);let a=C();return fe(a._handleKeydown(n))}),H(2,1),c()}if(i&2){let e=C();Qe(e.panelClass),f("mat-select-panel-animations-enabled",!e._animationsDisabled)("mat-primary",e._parentFormField?.color==="primary")("mat-accent",e._parentFormField?.color==="accent")("mat-warn",e._parentFormField?.color==="warn")("mat-undefined",!e._parentFormField?.color),Y("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}var Cy=new b("mat-select-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>mi(i)}}),xy=new b("MAT_SELECT_CONFIG"),wy=new b("MatSelectTrigger"),wc=class{source;value;constructor(o,e){this.source=o,this.value=e}},ps=(()=>{class i{_viewportRuler=s(Rt);_changeDetectorRef=s(ie);_elementRef=s(O);_dir=s(Ue,{optional:!0});_idGenerator=s(he);_renderer=s(ue);_parentFormField=s(kn,{optional:!0});ngControl=s(Ht,{self:!0,optional:!0});_liveAnnouncer=s(qo);_defaultOptions=s(xy,{optional:!0});_animationsDisabled=de();_popoverLocation;_initialized=new M;_cleanupDetach;options;optionGroups;customTrigger;_positions=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"}];_scrollOptionIntoView(e){let t=this.options.toArray()[e];if(t){let n=this.panel.nativeElement,a=ls(e,this.options,this.optionGroups),r=t._getHostElement();e===0&&a===1?n.scrollTop=0:n.scrollTop=cs(r.offsetTop,r.offsetHeight,n.scrollTop,n.offsetHeight)}}_positioningSettled(){this._scrollOptionIntoView(this._keyManager.activeItemIndex||0)}_getChangeEvent(e){return new wc(this,e)}_scrollStrategyFactory=s(Cy);_panelOpen=!1;_compareWith=(e,t)=>e===t;_uid=this._idGenerator.getId("mat-select-");_triggerAriaLabelledBy=null;_previousControl;_destroy=new M;_errorStateTracker;stateChanges=new M;disableAutomaticLabeling=!0;userAriaDescribedBy;_selectionModel;_keyManager;_preferredOverlayOrigin;_overlayWidth;_onChange=()=>{};_onTouched=()=>{};_valueId=this._idGenerator.getId("mat-select-value-");_scrollStrategy;_overlayPanelClass=this._defaultOptions?.overlayPanelClass||"";get focused(){return this._focused||this._panelOpen}_focused=!1;controlType="mat-select";trigger;panel;_overlayDir;panelClass;disabled=!1;get disableRipple(){return this._disableRipple()}set disableRipple(e){this._disableRipple.set(e)}_disableRipple=N(!1);tabIndex=0;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}_hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}_placeholder;get required(){return this._required??this.ngControl?.control?.hasValidator(vt.required)??!1}set required(e){this._required=e,this.stateChanges.next()}_required;get multiple(){return this._multiple}set multiple(e){this._selectionModel,this._multiple=e}_multiple=!1;disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1;get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}_value;ariaLabel="";ariaLabelledby;get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}typeaheadDebounceInterval;sortComparator;get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}_id;get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}panelWidth=this._defaultOptions&&typeof this._defaultOptions.panelWidth<"u"?this._defaultOptions.panelWidth:"auto";canSelectNullableOptions=this._defaultOptions?.canSelectNullableOptions??!1;optionSelectionChanges=Oi(()=>{let e=this.options;return e?e.changes.pipe(Ie(e),We(()=>He(...e.map(t=>t.onSelectionChange)))):this._initialized.pipe(We(()=>this.optionSelectionChanges))});openedChange=new $;_openedStream=this.openedChange.pipe(ge(e=>e),Ae(()=>{}));_closedStream=this.openedChange.pipe(ge(e=>!e),Ae(()=>{}));selectionChange=new $;valueChange=new $;constructor(){let e=s(lo),t=s(oa,{optional:!0}),n=s(ri,{optional:!0}),a=s(new fi("tabindex"),{optional:!0}),r=s(_a,{optional:!0});this.ngControl&&(this.ngControl.valueAccessor=this),this._defaultOptions?.typeaheadDebounceInterval!=null&&(this.typeaheadDebounceInterval=this._defaultOptions.typeaheadDebounceInterval),this._errorStateTracker=new co(e,this.ngControl,n,t,this.stateChanges),this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=a==null?0:parseInt(a)||0,this._popoverLocation=r?.usePopover===!1?null:"inline",this.id=this.id}ngOnInit(){this._selectionModel=new ma(this.multiple),this.stateChanges.next(),this._viewportRuler.change().pipe(ne(this._destroy)).subscribe(()=>{this.panelOpen&&(this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._changeDetectorRef.detectChanges())})}ngAfterContentInit(){this._initialized.next(),this._initialized.complete(),this._initKeyManager(),this._selectionModel.changed.pipe(ne(this._destroy)).subscribe(e=>{e.added.forEach(t=>t.select()),e.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Ie(null),ne(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){let e=this._getTriggerAriaLabelledby(),t=this.ngControl;if(e!==this._triggerAriaLabelledBy){let n=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?n.setAttribute("aria-labelledby",e):n.removeAttribute("aria-labelledby")}t&&(this._previousControl!==t.control&&(this._previousControl!==void 0&&t.disabled!==null&&t.disabled!==this.disabled&&(this.disabled=t.disabled),this._previousControl=t.control),this.updateErrorState())}ngOnChanges(e){(e.disabled||e.userAriaDescribedBy)&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this.typeaheadDebounceInterval),e.panelClass&&this.panelClass instanceof Set&&(this.panelClass=Array.from(this.panelClass))}ngOnDestroy(){this._cleanupDetach?.(),this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._parentFormField&&(this._preferredOverlayOrigin=this._parentFormField.getConnectedOverlayOrigin()),this._cleanupDetach?.(),this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._panelOpen=!0,this._overlayDir.positionChange.pipe(ot(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()}),this._overlayDir.attachOverlay(),this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!0)))}close(){this._panelOpen&&(this._panelOpen=!1,this._exitAndDetach(),this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!1)))}_exitAndDetach(){if(this._animationsDisabled||!this.panel){this._detachOverlay();return}this._cleanupDetach?.(),this._cleanupDetach=()=>{t(),clearTimeout(n),this._cleanupDetach=void 0};let e=this.panel.nativeElement,t=this._renderer.listen(e,"animationend",a=>{a.animationName==="_mat-select-exit"&&(this._cleanupDetach?.(),this._detachOverlay())}),n=setTimeout(()=>{this._cleanupDetach?.(),this._detachOverlay()},200);e.classList.add("mat-select-panel-exit")}_detachOverlay(){this._overlayDir.detachOverlay(),this._changeDetectorRef.markForCheck()}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){let e=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}updateErrorState(){this._errorStateTracker.updateErrorState()}_isRtl(){return this._dir?this._dir.value==="rtl":!1}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){let t=e.keyCode,n=t===40||t===38||t===37||t===39,a=t===13||t===32,r=this._keyManager;if(!r.isTyping()&&a&&!ze(e)||(this.multiple||e.altKey)&&n)e.preventDefault(),this.open();else if(!this.multiple){let m=this.selected;r.onKeydown(e);let h=this.selected;h&&m!==h&&this._liveAnnouncer.announce(h.viewValue,1e4)}}_handleOpenKeydown(e){let t=this._keyManager,n=e.keyCode,a=n===40||n===38,r=t.isTyping();if(a&&e.altKey)e.preventDefault(),this.close();else if(!r&&(n===13||n===32)&&t.activeItem&&!ze(e))e.preventDefault(),t.activeItem._selectViaInteraction();else if(!r&&this._multiple&&n===65&&e.ctrlKey){e.preventDefault();let m=this.options.some(h=>!h.disabled&&!h.selected);this.options.forEach(h=>{h.disabled||(m?h.select():h.deselect())})}else{let m=t.activeItemIndex;t.onKeydown(e),this._multiple&&a&&e.shiftKey&&t.activeItem&&t.activeItemIndex!==m&&t.activeItem._selectViaInteraction()}}_handleOverlayKeydown(e){e.keyCode===27&&!ze(e)&&(e.preventDefault(),this.close())}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this.options.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(t=>this._selectOptionByValue(t)),this._sortValues();else{let t=this._selectOptionByValue(e);t?this._keyManager.updateActiveItem(t):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){let t=this.options.find(n=>{if(this._selectionModel.isSelected(n))return!1;try{return(n.value!=null||this.canSelectNullableOptions)&&this._compareWith(n.value,e)}catch(a){return!1}});return t&&this._selectionModel.select(t),t}_assignValue(e){return e!==this._value||this._multiple&&Array.isArray(e)?(this.options&&this._setSelectionByValue(e),this._value=e,!0):!1}_skipPredicate=e=>this.panelOpen?!1:e.disabled;_getOverlayWidth(e){return this.panelWidth==="auto"?(e instanceof go?e.elementRef:e||this._elementRef).nativeElement.getBoundingClientRect().width:this.panelWidth===null?"":this.panelWidth}_syncParentProperties(){if(this.options)for(let e of this.options)e._changeDetectorRef.markForCheck()}_initKeyManager(){this._keyManager=new Cn(this.options).withTypeAhead(this.typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){let e=He(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(ne(e)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),He(...this.options.map(t=>t._stateChanges)).pipe(ne(e)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(e,t){let n=this._selectionModel.isSelected(e);!this.canSelectNullableOptions&&e.value==null&&!this._multiple?(e.deselect(),this._selectionModel.clear(),this.value!=null&&this._propagateChanges(e.value)):(n!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),t&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),t&&this.focus())),n!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){let e=this.options.toArray();this._selectionModel.sort((t,n)=>this.sortComparator?this.sortComparator(t,n,e):e.indexOf(t)-e.indexOf(n)),this.stateChanges.next()}}_propagateChanges(e){let t;this.multiple?t=this.selected.map(n=>n.value):t=this.selected?this.selected.value:e,this._value=t,this.valueChange.emit(t),this._onChange(t),this.selectionChange.emit(this._getChangeEvent(t)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let e=-1;for(let t=0;t<this.options.length;t++)if(!this.options.get(t).disabled){e=t;break}this._keyManager.setActiveItem(e)}else this._keyManager.setActiveItem(this._selectionModel.selected[0])}_canOpen(){return!this._panelOpen&&!this.disabled&&this.options?.length>0&&!!this._overlayDir}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;let e=this._parentFormField?.getLabelId()||null,t=e?e+" ":"";return this.ariaLabelledby?t+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;let e=this._parentFormField?.getLabelId()||"";return this.ariaLabelledby&&(e+=" "+this.ariaLabelledby),e||(e=this._valueId),e}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(e){let t=this._elementRef.nativeElement;e.length?t.setAttribute("aria-describedby",e.join(" ")):t.removeAttribute("aria-describedby")}onContainerClick(e){let t=it(e);t&&(t.tagName==="MAT-OPTION"||t.classList.contains("cdk-overlay-backdrop")||t.closest(".mat-mdc-select-panel"))||(this.focus(),this.open())}get shouldLabelFloat(){return this.panelOpen||!this.empty||this.focused&&!!this.placeholder}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-select"]],contentQueries:function(t,n,a){if(t&1&&tt(a,wy,5)(a,Mt,5)(a,wa,5),t&2){let r;T(r=R())&&(n.customTrigger=r.first),T(r=R())&&(n.options=r),T(r=R())&&(n.optionGroups=r)}},viewQuery:function(t,n){if(t&1&&we(uy,5)(hy,5)(Jr,5),t&2){let a;T(a=R())&&(n.trigger=a.first),T(a=R())&&(n.panel=a.first),T(a=R())&&(n._overlayDir=a.first)}},hostAttrs:["role","combobox","aria-haspopup","listbox",1,"mat-mdc-select"],hostVars:21,hostBindings:function(t,n){t&1&&I("keydown",function(r){return n._handleKeydown(r)})("focus",function(){return n._onFocus()})("blur",function(){return n._onBlur()}),t&2&&(Y("id",n.id)("tabindex",n.disabled?-1:n.tabIndex)("aria-controls",n.panelOpen?n.id+"-panel":null)("aria-expanded",n.panelOpen)("aria-label",n.ariaLabel||null)("aria-required",n.required.toString())("aria-disabled",n.disabled.toString())("aria-invalid",n.errorState)("aria-activedescendant",n._getAriaActiveDescendant()),f("mat-mdc-select-disabled",n.disabled)("mat-mdc-select-invalid",n.errorState)("mat-mdc-select-required",n.required)("mat-mdc-select-empty",n.empty)("mat-mdc-select-multiple",n.multiple)("mat-select-open",n.panelOpen))},inputs:{userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",disabled:[2,"disabled","disabled",F],disableRipple:[2,"disableRipple","disableRipple",F],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:_t(e)],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",F],placeholder:"placeholder",required:[2,"required","required",F],multiple:[2,"multiple","multiple",F],disableOptionCentering:[2,"disableOptionCentering","disableOptionCentering",F],compareWith:"compareWith",value:"value",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:[2,"typeaheadDebounceInterval","typeaheadDebounceInterval",_t],sortComparator:"sortComparator",id:"id",panelWidth:"panelWidth",canSelectNullableOptions:[2,"canSelectNullableOptions","canSelectNullableOptions",F]},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},exportAs:["matSelect"],features:[te([{provide:aa,useExisting:i},{provide:xa,useExisting:i}]),xe],ngContentSelectors:fy,decls:11,vars:10,consts:[["fallbackOverlayOrigin","cdkOverlayOrigin","trigger",""],["panel",""],["cdk-overlay-origin","",1,"mat-mdc-select-trigger",3,"click"],[1,"mat-mdc-select-value"],[1,"mat-mdc-select-placeholder","mat-mdc-select-min-line"],[1,"mat-mdc-select-value-text"],[1,"mat-mdc-select-arrow-wrapper"],[1,"mat-mdc-select-arrow"],["viewBox","0 0 24 24","width","24px","height","24px","focusable","false","aria-hidden","true"],["d","M7 10l5 5 5-5z"],["cdk-connected-overlay","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"detach","backdropClick","overlayKeydown","cdkConnectedOverlayDisableClose","cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayWidth","cdkConnectedOverlayFlexibleDimensions","cdkConnectedOverlayUsePopover"],[1,"mat-mdc-select-min-line"],["role","listbox","tabindex","-1",1,"mat-mdc-select-panel","mdc-menu-surface","mdc-menu-surface--open",3,"keydown"]],template:function(t,n){if(t&1&&(le(py),l(0,"div",2,0),I("click",function(){return n.open()}),l(3,"div",3),S(4,gy,2,1,"span",4)(5,vy,3,1,"span",5),c(),l(6,"div",6)(7,"div",7),pi(),l(8,"svg",8),v(9,"path",9),c()()()(),Re(10,yy,3,16,"ng-template",10),I("detach",function(){return n.close()})("backdropClick",function(){return n.close()})("overlayKeydown",function(r){return n._handleOverlayKeydown(r)})),t&2){let a=Ye(1);d(3),Y("id",n._valueId),d(),E(n.empty?4:5),d(6),w("cdkConnectedOverlayDisableClose",!0)("cdkConnectedOverlayPanelClass",n._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",n._scrollStrategy)("cdkConnectedOverlayOrigin",n._preferredOverlayOrigin||a)("cdkConnectedOverlayPositions",n._positions)("cdkConnectedOverlayWidth",n._overlayWidth)("cdkConnectedOverlayFlexibleDimensions",!0)("cdkConnectedOverlayUsePopover",n._popoverLocation)}},dependencies:[go,Jr],styles:[`@keyframes _mat-select-enter {
|
|
5290
5290
|
from {
|
|
5291
5291
|
opacity: 0;
|
|
5292
5292
|
transform: scaleY(0.8);
|
|
@@ -5475,7 +5475,7 @@ div.mat-mdc-select-panel {
|
|
|
5475
5475
|
.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper {
|
|
5476
5476
|
transform: var(--mat-select-arrow-transform, translateY(-8px));
|
|
5477
5477
|
}
|
|
5478
|
-
`],encapsulation:2})}return i})();var fs=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[kt,yo,Q,ri,Tt,yo]})}return i})();var wy=["tooltip"],Dy=20;var ky=new b("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>ci(i,{scrollThrottle:Dy})}}),Sy=new b("mat-tooltip-default-options",{providedIn:"root",factory:()=>({showDelay:0,hideDelay:0,touchendHideDelay:1500})});var ap="tooltip-panel",Ey={passive:!0},My=8,Ay=8,Iy=24,Ty=200,Dc=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_platform=s(se);_ariaDescriber=s(Nm);_focusMonitor=s(Dt);_dir=s(He);_injector=s(q);_viewContainerRef=s(qe);_mediaMatcher=s(Wn);_document=s(G);_renderer=s(ue);_animationsDisabled=de();_defaultOptions=s(Sy,{optional:!0});_overlayRef=null;_tooltipInstance=null;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=rp;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending=!1;_dirSubscribed=!1;get position(){return this._position}set position(e){e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(e){this._positionAtOrigin=rt(e),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(e){let t=rt(e);this._disabled!==t&&(this._disabled=t,t?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=At(e)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=At(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(e){let t=this._message;this._message=e!=null?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(t)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_eventCleanups=[];_touchstartTimeout=null;_destroyed=new M;_isDestroyed=!1;constructor(){let e=this._defaultOptions;e&&(this._showDelay=e.showDelay,this._hideDelay=e.hideDelay,e.position&&(this.position=e.position),e.positionAtOrigin&&(this.positionAtOrigin=e.positionAtOrigin),e.touchGestures&&(this.touchGestures=e.touchGestures),e.tooltipClass&&(this.tooltipClass=e.tooltipClass)),this._viewportMargin=My}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(ne(this._destroyed)).subscribe(e=>{e?e==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let e=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._eventCleanups.forEach(t=>t()),this._eventCleanups.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay,t){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let n=this._createOverlay(t);this._detach(),this._portal=this._portal||new li(this._tooltipComponent,this._viewContainerRef);let a=this._tooltipInstance=n.attach(this._portal).instance;a._triggerElement=this._elementRef.nativeElement,a._mouseLeaveHideDelay=this._hideDelay,a.afterHidden().pipe(ne(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),a.show(e)}hide(e=this.hideDelay){let t=this._tooltipInstance;t&&(t.isVisible()?t.hide(e):(t._cancelPendingAnimations(),this._detach()))}toggle(e){this._isTooltipVisible()?this.hide():this.show(void 0,e)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(e){if(this._overlayRef){let r=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!e)&&r._origin instanceof O)return this._overlayRef;this._detach()}let t=this._injector.get(Qi).getAncestorScrollContainers(this._elementRef),n=`${this._cssClassPrefix}-${ap}`,a=Ti(this._injector,this.positionAtOrigin?e||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t).withPopoverLocation("global");return a.positionChanges.pipe(ne(this._destroyed)).subscribe(r=>{this._updateCurrentPositionClass(r.connectionPair),this._tooltipInstance&&r.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=Pt(this._injector,{direction:this._dir,positionStrategy:a,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,n]:n,scrollStrategy:this._injector.get(ky)(),disableAnimations:this._animationsDisabled,eventPredicate:this._overlayEventPredicate}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(ne(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(ne(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(ne(this._destroyed)).subscribe(r=>{r.preventDefault(),r.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(ne(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){let t=e.getConfig().positionStrategy,n=this._getOrigin(),a=this._getOverlayPosition();t.withPositions([this._addOffset(B(B({},n.main),a.main)),this._addOffset(B(B({},n.fallback),a.fallback))])}_addOffset(e){let t=Ay,n=!this._dir||this._dir.value=="ltr";return e.originY==="top"?e.offsetY=-t:e.originY==="bottom"?e.offsetY=t:e.originX==="start"?e.offsetX=n?-t:t:e.originX==="end"&&(e.offsetX=n?t:-t),e}_getOrigin(){let e=!this._dir||this._dir.value=="ltr",t=this.position,n;t=="above"||t=="below"?n={originX:"center",originY:t=="above"?"top":"bottom"}:t=="before"||t=="left"&&e||t=="right"&&!e?n={originX:"start",originY:"center"}:(t=="after"||t=="right"&&e||t=="left"&&!e)&&(n={originX:"end",originY:"center"});let{x:a,y:r}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:a,originY:r}}}_getOverlayPosition(){let e=!this._dir||this._dir.value=="ltr",t=this.position,n;t=="above"?n={overlayX:"center",overlayY:"bottom"}:t=="below"?n={overlayX:"center",overlayY:"top"}:t=="before"||t=="left"&&e||t=="right"&&!e?n={overlayX:"end",overlayY:"center"}:(t=="after"||t=="right"&&e||t=="left"&&!e)&&(n={overlayX:"start",overlayY:"center"});let{x:a,y:r}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:a,overlayY:r}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),Fe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e instanceof Set?Array.from(e):e,this._tooltipInstance._markForCheck())}_invertPosition(e,t){return this.position==="above"||this.position==="below"?t==="top"?t="bottom":t==="bottom"&&(t="top"):e==="end"?e="start":e==="start"&&(e="end"),{x:e,y:t}}_updateCurrentPositionClass(e){let{overlayY:t,originX:n,originY:a}=e,r;if(t==="center"?this._dir&&this._dir.value==="rtl"?r=n==="end"?"left":"right":r=n==="start"?"left":"right":r=t==="bottom"&&a==="top"?"above":"below",r!==this._currentPosition){let m=this._overlayRef;if(m){let h=`${this._cssClassPrefix}-${ap}-`;m.removePanelClass(h+this._currentPosition),m.addPanelClass(h+r)}this._currentPosition=r}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._eventCleanups.length||(this._isTouchPlatform()?this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._addListener("touchstart",e=>{let t=e.targetTouches?.[0],n=t?{x:t.clientX,y:t.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let a=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,n)},this._defaultOptions?.touchLongPressShowDelay??a)})):this._addListener("mouseenter",e=>{this._setupPointerExitEventsIfNeeded();let t;e.x!==void 0&&e.y!==void 0&&(t=e),this.show(void 0,t)}))}_setupPointerExitEventsIfNeeded(){if(!this._pointerExitEventsInitialized){if(this._pointerExitEventsInitialized=!0,!this._isTouchPlatform())this._addListener("mouseleave",e=>{let t=e.relatedTarget;(!t||!this._overlayRef?.overlayElement.contains(t))&&this.hide()}),this._addListener("wheel",e=>{if(this._isTooltipVisible()){let t=this._document.elementFromPoint(e.clientX,e.clientY),n=this._elementRef.nativeElement;t!==n&&!n.contains(t)&&this.hide()}});else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let e=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};this._addListener("touchend",e),this._addListener("touchcancel",e)}}}_addListener(e,t){this._eventCleanups.push(this._renderer.listen(this._elementRef.nativeElement,e,t,Ey))}_isTouchPlatform(){let e=this._defaultOptions?.detectHoverCapability;return typeof e=="function"?!e():this._platform.IOS||this._platform.ANDROID?!0:this._platform.isBrowser?!!e&&this._mediaMatcher.matchMedia("(any-hover: none)").matches:!1}_disableNativeGesturesIfNecessary(){let e=this.touchGestures;if(e!=="off"){let t=this._elementRef.nativeElement,n=t.style;(e==="on"||t.nodeName!=="INPUT"&&t.nodeName!=="TEXTAREA")&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),(e==="on"||!t.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}_syncAriaDescription(e){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,e,"tooltip"),this._isDestroyed||Fe({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}_overlayEventPredicate=e=>e.type==="keydown"?this._isTooltipVisible()&&e.keyCode===27&&!Ve(e):!0;static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(t,n){t&2&&f("mat-mdc-tooltip-disabled",n.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 i})(),rp=(()=>{class i{_changeDetectorRef=s(ie);_elementRef=s(O);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=de();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new M;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";show(e){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}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:e}){(!e||!this._triggerElement.contains(e))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let e=this._elementRef.nativeElement.getBoundingClientRect();return e.height>Iy&&e.width>=Ty}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){let t=this._tooltip.nativeElement,n=this._showAnimation,a=this._hideAnimation;if(t.classList.remove(e?a:n),t.classList.add(e?n:a),this._isVisible!==e&&(this._isVisible=e,this._changeDetectorRef.markForCheck()),e&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let r=getComputedStyle(t);(r.getPropertyValue("animation-duration")==="0s"||r.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(t.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-tooltip-component"]],viewQuery:function(t,n){if(t&1&&Ce(wy,7),t&2){let a;T(a=R())&&(n._tooltip=a.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(t,n){t&1&&I("mouseleave",function(r){return n._handleMouseLeave(r)})},decls:4,vars:5,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(t,n){t&1&&(Se(0,"div",1,0),Ba("animationend",function(r){return n._handleAnimationEnd(r)}),Se(2,"div",2),u(3),Pe()()),t&2&&(Qe(n.tooltipClass),f("mdc-tooltip--multiline",n._isMultiline),d(3),Z(n.message))},styles:[`.mat-mdc-tooltip {
|
|
5478
|
+
`],encapsulation:2})}return i})();var fs=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Et,Co,Q,li,Ct,Co]})}return i})();var Dy=["tooltip"],ky=20;var Sy=new b("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let i=s(q);return()=>mi(i,{scrollThrottle:ky})}}),Ey=new b("mat-tooltip-default-options",{providedIn:"root",factory:()=>({showDelay:0,hideDelay:0,touchendHideDelay:1500})});var rp="tooltip-panel",My={passive:!0},Ay=8,Iy=8,Ty=24,Ry=200,Dc=(()=>{class i{_elementRef=s(O);_ngZone=s(j);_platform=s(se);_ariaDescriber=s(Lm);_focusMonitor=s(St);_dir=s(Ue);_injector=s(q);_viewContainerRef=s(Ke);_mediaMatcher=s(Wn);_document=s(G);_renderer=s(ue);_animationsDisabled=de();_defaultOptions=s(Ey,{optional:!0});_overlayRef=null;_tooltipInstance=null;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=sp;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending=!1;_dirSubscribed=!1;get position(){return this._position}set position(e){e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(e){this._positionAtOrigin=rt(e),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(e){let t=rt(e);this._disabled!==t&&(this._disabled=t,t?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=Tt(e)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=Tt(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(e){let t=this._message;this._message=e!=null?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(t)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_eventCleanups=[];_touchstartTimeout=null;_destroyed=new M;_isDestroyed=!1;constructor(){let e=this._defaultOptions;e&&(this._showDelay=e.showDelay,this._hideDelay=e.hideDelay,e.position&&(this.position=e.position),e.positionAtOrigin&&(this.positionAtOrigin=e.positionAtOrigin),e.touchGestures&&(this.touchGestures=e.touchGestures),e.tooltipClass&&(this.tooltipClass=e.tooltipClass)),this._viewportMargin=Ay}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(ne(this._destroyed)).subscribe(e=>{e?e==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let e=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._eventCleanups.forEach(t=>t()),this._eventCleanups.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay,t){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let n=this._createOverlay(t);this._detach(),this._portal=this._portal||new di(this._tooltipComponent,this._viewContainerRef);let a=this._tooltipInstance=n.attach(this._portal).instance;a._triggerElement=this._elementRef.nativeElement,a._mouseLeaveHideDelay=this._hideDelay,a.afterHidden().pipe(ne(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),a.show(e)}hide(e=this.hideDelay){let t=this._tooltipInstance;t&&(t.isVisible()?t.hide(e):(t._cancelPendingAnimations(),this._detach()))}toggle(e){this._isTooltipVisible()?this.hide():this.show(void 0,e)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(e){if(this._overlayRef){let r=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!e)&&r._origin instanceof O)return this._overlayRef;this._detach()}let t=this._injector.get(Qi).getAncestorScrollContainers(this._elementRef),n=`${this._cssClassPrefix}-${rp}`,a=Ti(this._injector,this.positionAtOrigin?e||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t).withPopoverLocation("global");return a.positionChanges.pipe(ne(this._destroyed)).subscribe(r=>{this._updateCurrentPositionClass(r.connectionPair),this._tooltipInstance&&r.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=Pt(this._injector,{direction:this._dir,positionStrategy:a,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,n]:n,scrollStrategy:this._injector.get(Sy)(),disableAnimations:this._animationsDisabled,eventPredicate:this._overlayEventPredicate}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(ne(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(ne(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(ne(this._destroyed)).subscribe(r=>{r.preventDefault(),r.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(ne(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){let t=e.getConfig().positionStrategy,n=this._getOrigin(),a=this._getOverlayPosition();t.withPositions([this._addOffset(L(L({},n.main),a.main)),this._addOffset(L(L({},n.fallback),a.fallback))])}_addOffset(e){let t=Iy,n=!this._dir||this._dir.value=="ltr";return e.originY==="top"?e.offsetY=-t:e.originY==="bottom"?e.offsetY=t:e.originX==="start"?e.offsetX=n?-t:t:e.originX==="end"&&(e.offsetX=n?t:-t),e}_getOrigin(){let e=!this._dir||this._dir.value=="ltr",t=this.position,n;t=="above"||t=="below"?n={originX:"center",originY:t=="above"?"top":"bottom"}:t=="before"||t=="left"&&e||t=="right"&&!e?n={originX:"start",originY:"center"}:(t=="after"||t=="right"&&e||t=="left"&&!e)&&(n={originX:"end",originY:"center"});let{x:a,y:r}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:a,originY:r}}}_getOverlayPosition(){let e=!this._dir||this._dir.value=="ltr",t=this.position,n;t=="above"?n={overlayX:"center",overlayY:"bottom"}:t=="below"?n={overlayX:"center",overlayY:"top"}:t=="before"||t=="left"&&e||t=="right"&&!e?n={overlayX:"end",overlayY:"center"}:(t=="after"||t=="right"&&e||t=="left"&&!e)&&(n={overlayX:"start",overlayY:"center"});let{x:a,y:r}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:a,overlayY:r}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),Fe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e instanceof Set?Array.from(e):e,this._tooltipInstance._markForCheck())}_invertPosition(e,t){return this.position==="above"||this.position==="below"?t==="top"?t="bottom":t==="bottom"&&(t="top"):e==="end"?e="start":e==="start"&&(e="end"),{x:e,y:t}}_updateCurrentPositionClass(e){let{overlayY:t,originX:n,originY:a}=e,r;if(t==="center"?this._dir&&this._dir.value==="rtl"?r=n==="end"?"left":"right":r=n==="start"?"left":"right":r=t==="bottom"&&a==="top"?"above":"below",r!==this._currentPosition){let m=this._overlayRef;if(m){let h=`${this._cssClassPrefix}-${rp}-`;m.removePanelClass(h+this._currentPosition),m.addPanelClass(h+r)}this._currentPosition=r}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._eventCleanups.length||(this._isTouchPlatform()?this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._addListener("touchstart",e=>{let t=e.targetTouches?.[0],n=t?{x:t.clientX,y:t.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let a=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,n)},this._defaultOptions?.touchLongPressShowDelay??a)})):this._addListener("mouseenter",e=>{this._setupPointerExitEventsIfNeeded();let t;e.x!==void 0&&e.y!==void 0&&(t=e),this.show(void 0,t)}))}_setupPointerExitEventsIfNeeded(){if(!this._pointerExitEventsInitialized){if(this._pointerExitEventsInitialized=!0,!this._isTouchPlatform())this._addListener("mouseleave",e=>{let t=e.relatedTarget;(!t||!this._overlayRef?.overlayElement.contains(t))&&this.hide()}),this._addListener("wheel",e=>{if(this._isTooltipVisible()){let t=this._document.elementFromPoint(e.clientX,e.clientY),n=this._elementRef.nativeElement;t!==n&&!n.contains(t)&&this.hide()}});else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let e=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};this._addListener("touchend",e),this._addListener("touchcancel",e)}}}_addListener(e,t){this._eventCleanups.push(this._renderer.listen(this._elementRef.nativeElement,e,t,My))}_isTouchPlatform(){let e=this._defaultOptions?.detectHoverCapability;return typeof e=="function"?!e():this._platform.IOS||this._platform.ANDROID?!0:this._platform.isBrowser?!!e&&this._mediaMatcher.matchMedia("(any-hover: none)").matches:!1}_disableNativeGesturesIfNecessary(){let e=this.touchGestures;if(e!=="off"){let t=this._elementRef.nativeElement,n=t.style;(e==="on"||t.nodeName!=="INPUT"&&t.nodeName!=="TEXTAREA")&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),(e==="on"||!t.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}_syncAriaDescription(e){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,e,"tooltip"),this._isDestroyed||Fe({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}_overlayEventPredicate=e=>e.type==="keydown"?this._isTooltipVisible()&&e.keyCode===27&&!ze(e):!0;static \u0275fac=function(t){return new(t||i)};static \u0275dir=x({type:i,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(t,n){t&2&&f("mat-mdc-tooltip-disabled",n.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 i})(),sp=(()=>{class i{_changeDetectorRef=s(ie);_elementRef=s(O);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=de();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new M;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";show(e){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}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:e}){(!e||!this._triggerElement.contains(e))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let e=this._elementRef.nativeElement.getBoundingClientRect();return e.height>Ty&&e.width>=Ry}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){let t=this._tooltip.nativeElement,n=this._showAnimation,a=this._hideAnimation;if(t.classList.remove(e?a:n),t.classList.add(e?n:a),this._isVisible!==e&&(this._isVisible=e,this._changeDetectorRef.markForCheck()),e&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let r=getComputedStyle(t);(r.getPropertyValue("animation-duration")==="0s"||r.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(t.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=A({type:i,selectors:[["mat-tooltip-component"]],viewQuery:function(t,n){if(t&1&&we(Dy,7),t&2){let a;T(a=R())&&(n._tooltip=a.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(t,n){t&1&&I("mouseleave",function(r){return n._handleMouseLeave(r)})},decls:4,vars:5,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(t,n){t&1&&(Ee(0,"div",1,0),Ba("animationend",function(r){return n._handleAnimationEnd(r)}),Ee(2,"div",2),u(3),Pe()()),t&2&&(Qe(n.tooltipClass),f("mdc-tooltip--multiline",n._isMultiline),d(3),Z(n.message))},styles:[`.mat-mdc-tooltip {
|
|
5479
5479
|
position: relative;
|
|
5480
5480
|
transform: scale(0);
|
|
5481
5481
|
display: inline-flex;
|
|
@@ -5580,5 +5580,5 @@ div.mat-mdc-select-panel {
|
|
|
5580
5580
|
.mat-mdc-tooltip-hide {
|
|
5581
5581
|
animation: mat-mdc-tooltip-hide 75ms cubic-bezier(0.4, 0, 1, 1) forwards;
|
|
5582
5582
|
}
|
|
5583
|
-
`],encapsulation:2})}return i})();var sp=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[qo,kt,Q,ri]})}return i})();function sn(i,o){for(let e of i){let t=e.indexOf("=");if(t>0&&e.slice(0,t)===o)return e.slice(t+1);let n=e.indexOf(" ");if(n>0&&e.slice(0,n)===o)return e.slice(n+1).trim()}for(let e=0;e<i.length;e++)if(i[e]===o&&e+1<i.length)return i[e+1];return null}function Rn(i,o,e,t){for(let n of i){let a=n.split(/\s|=/)[0];if(a===o)return!0;if(a===e)return!1}return t}function Ue(i,o,e){let t=sn(i,o);return t!==null?t:e}function xe(i,o,e){let t=sn(i,o);if(t!==null){let n=parseInt(t,10);return isNaN(n)?e:n}return e}function st(i,o,e){let t=sn(i,o);if(t!==null){let n=parseFloat(t);return isNaN(n)?e:n}return e}var Oy=(i,o)=>o.path;function Fy(i,o){i&1&&(l(0,"span",7),u(1,"(dir)"),c())}function Py(i,o){if(i&1&&(l(0,"mat-option",5)(1,"span",6),u(2),c(),S(3,Fy,2,0,"span",7),c()),i&2){let e=o.$implicit;w("value",e.path),d(2),Z(e.path),d(),E(e.isDir?3:-1)}}var lp=(()=>{class i{constructor(){this.fb=s(oo),this.service=s(Yt),this.label="Path",this.placeholder="/path/to/file",this.required=!1,this.fieldClass="",this.existingPaths=[],this.onChange=e=>{},this.onTouched=()=>{},this._subscription=null,this.suggestions=N([]),this.innerForm=this.fb.group({value:[""]})}writeValue(e){let t=(e??"").toString();this.innerForm.patchValue({value:t},{emitEvent:!1})}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){e?this.innerForm.disable():this.innerForm.enable()}ngOnInit(){this._subscription=this.innerForm.get("value").valueChanges.subscribe(e=>{this.onChange(e)}),this._subscription.add(this.innerForm.get("value").valueChanges.pipe(Qt(200),Fi(),$e(e=>{let t=(e??"").trim();return t?this.service.getLlamaAutocomplete("path",t).pipe(mi(()=>ge([]))):ge(this.emptySuggestions)})).subscribe(e=>{this.suggestions.set(e)}))}get emptySuggestions(){return this.existingPaths.filter(Boolean).map(e=>({path:e,source:"existing config"}))}ngOnDestroy(){this._subscription?.unsubscribe()}onSelect(e){this.innerForm.patchValue({value:e},{emitEvent:!1}),this.onChange(e)}onBlur(){this.onTouched()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-file-autocomplete"]],inputs:{label:"label",placeholder:"placeholder",required:"required",fieldClass:"fieldClass",existingPaths:"existingPaths"},features:[te([{provide:fi,useExisting:lt(()=>i),multi:!0}])],decls:9,vars:7,consts:[["auto","matAutocomplete"],[3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","formControlName","value",3,"blur","placeholder","required","matAutocomplete"],[3,"optionSelected"],[3,"value"],[1,"file-path"],[1,"file-dir"]],template:function(t,n){if(t&1&&(Nt(0,1),l(1,"mat-form-field",2)(2,"input",3),I("blur",function(){return n.onBlur()}),c(),D(),l(3,"mat-label"),u(4),c()(),l(5,"mat-autocomplete",4,0),I("optionSelected",function(r){return n.onSelect(r.option.value)}),Le(7,Py,4,3,"mat-option",5,Oy),c(),Lt()),t&2){let a=Ye(6);w("formGroup",n.innerForm),d(),Qe(n.fieldClass),d(),w("placeholder",n.placeholder)("required",n.required)("matAutocomplete",a),k(),d(2),Z(n.label),d(3),Be(n.suggestions())}},dependencies:[Ge,ro,Yi,Xi,no,Tr,oi,Dn,Tt,It,Ut,_i,gi,xo,Co,St,Tn],styles:[".full-width[_ngcontent-%COMP%]{width:100%}.file-path[_ngcontent-%COMP%]{font-family:monospace}.file-dir[_ngcontent-%COMP%]{margin-left:4px;color:#1976d2;font-size:11px;font-weight:500}.file-source[_ngcontent-%COMP%]{margin-left:8px;opacity:.6;font-size:12px}"]})}}return i})();function Da(i){i||(i=s(ti));let o=new ft(e=>{if(i.destroyed){e.next();return}return i.onDestroy(e.next.bind(e))});return e=>e.pipe(ne(o))}function gs(i,o){let t=!o?.manualCleanup?o?.injector?.get(ti)??s(ti):null,n=Ny(o?.equal),a;o?.requireSync?a=N({kind:0},{equal:n}):a=N({kind:1,value:o?.initialValue},{equal:n});let r,m=i.subscribe({next:h=>a.set({kind:1,value:h}),error:h=>{a.set({kind:2,error:h}),r?.()},complete:()=>{r?.()}});if(o?.requireSync&&a().kind===0)throw new oe(601,!1);return r=t?.onDestroy(m.unsubscribe.bind(m)),K(()=>{let h=a();switch(h.kind){case 1:return h.value;case 2:throw h.error;case 0:throw new oe(601,!1)}},{equal:o?.equal})}function Ny(i=Object.is){return(o,e)=>o.kind===1&&e.kind===1&&i(o.value,e.value)}function _s(i){if(typeof i=="number")return i;let o=i.trim();if(!o)return 0;let e=o.split(/\s*x\s*/i),t=1,n;if(e.length>=2){let h=e[0].trim();h&&(t=parseInt(h,10),(isNaN(t)||t<1)&&(t=1)),n=e.slice(1).join("").trim()}else n=o;let a=n.match(/^(\d+)\s*([kKmM])?$/);if(!a)return 0;let r=parseInt(a[1],10),m=a[2];return m&&(m.toLowerCase()==="k"?r*=1024:m.toLowerCase()==="m"&&(r*=1024*1024)),t*r}var kc=[8192,16384,32768,65536,98304,131072,196608,262144,524288,1048576];function cp(i){if(i<=0)return"0";if(i>=1048576){let o=i/1048576;return`${o%1===0?o:o.toFixed(1)}M`}if(i>=1024){let o=i/1024;return`${o%1===0?o:o.toFixed(1)}K`}return`${i}`}function bs(i,o){if(i<=0)return"";if(o>1&&i%o===0){let e=i/o;if(kc.includes(e))return`${o} x ${cp(e)}`}return cp(i)}var Ly=(i,o)=>o.command,Sc=(i,o)=>o.path,By=(i,o)=>o.label;function Vy(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function zy(i,o){i&1&&(l(0,"mat-error"),u(1,"Starts with letter, alphanumeric + hyphens/underscores, max 128 chars"),c())}function jy(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function Hy(i,o){if(i&1&&(l(0,"mat-option",8)(1,"span",98),u(2),c(),l(3,"span",99),u(4),c()()),i&2){let e=o.$implicit;w("value",e.command),d(2),Z(e.command),d(2),be("(",e.from,")")}}function Uy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e.path),d(),Z(e.path)}}function Gy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e.label),d(),Z(e.label)}}function $y(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function Wy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function qy(i,o){if(i&1&&(l(0,"div",26),u(1,"YaRN Parameters"),c(),l(2,"div",13)(3,"mat-form-field",18),v(4,"input",100),D(),l(5,"mat-label"),u(6,"YaRN Orig Ctx"),c()(),l(7,"mat-form-field",18),v(8,"input",101),D(),l(9,"mat-label"),u(10,"Extrapolation Mix"),c()(),l(11,"mat-form-field",18),v(12,"input",102),D(),l(13,"mat-label"),u(14,"Attn Factor"),c()(),l(15,"mat-form-field",18),v(16,"input",103),D(),l(17,"mat-label"),u(18,"Beta Slow"),c()(),l(19,"mat-form-field",18),v(20,"input",104),D(),l(21,"mat-label"),u(22,"Beta Fast"),c()()()),i&2){let e=C();d(3),f("changed",e.isControlChanged("yarnOrigCtx")),d(),k(),d(3),f("changed",e.isControlChanged("yarnExtFactor")),d(),k(),d(3),f("changed",e.isControlChanged("yarnAttnFactor")),d(),k(),d(3),f("changed",e.isControlChanged("yarnBetaSlow")),d(),k(),d(3),f("changed",e.isControlChanged("yarnBetaFast")),d(),k()}}function Ky(i,o){i&1&&(l(0,"div",78),u(1," draft-mtp generates drafts with the model's built-in MTP head \u2014 no separate draft model "),c())}function Yy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e.path),d(),Z(e.path)}}function Xy(i,o){if(i&1&&(v(0,"app-file-autocomplete",107),D(),l(1,"div",13)(2,"mat-form-field",18)(3,"mat-select",108),Le(4,Yy,2,2,"mat-option",8,Sc),c(),D(),l(6,"mat-label"),u(7,"Draft Device (multi-select)"),c()()()),i&2){let e=C(2);w("existingPaths",e.existingDraftModelPaths())("fieldClass",e.isControlChanged("modelDraft")?"changed":""),k(),d(2),f("changed",e.isControlChanged("specDraftDevice")),d(),k(),d(),Be(e.availableDevices())}}function Zy(i,o){if(i&1&&(l(0,"mat-form-field",18),v(1,"input",109),D(),l(2,"mat-label"),u(3,"Draft GPU Layers"),c()()),i&2){let e=C(2);f("changed",e.isControlChanged("nGpuLayersDraft")),d(),k()}}function Qy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function Jy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function e0(i,o){if(i&1&&(l(0,"div",13)(1,"mat-form-field",18)(2,"mat-select",110),Le(3,Qy,2,2,"mat-option",8,wi),c(),D(),l(5,"mat-label"),u(6,"Draft Cache Type K"),c()(),l(7,"mat-form-field",18)(8,"mat-select",111),Le(9,Jy,2,2,"mat-option",8,wi),c(),D(),l(11,"mat-label"),u(12,"Draft Cache Type V"),c()()()),i&2){let e=C(2);d(),f("changed",e.isControlChanged("specDraftCacheTypeK")),d(),k(),d(),Be(e.kvCacheTypes),d(4),f("changed",e.isControlChanged("specDraftCacheTypeV")),d(),k(),d(),Be(e.kvCacheTypes)}}function t0(i,o){if(i&1&&(l(0,"div",26),u(1,"Draft Model"),c(),S(2,Xy,8,4),l(3,"div",13)(4,"mat-form-field",18),v(5,"input",105),D(),l(6,"mat-label"),u(7,"Draft N Max"),c()(),S(8,Zy,4,2,"mat-form-field",106),c(),S(9,e0,13,4,"div",13)),i&2){let e=C();d(2),E(e.showDraftModelFields()?2:-1),d(2),f("changed",e.isControlChanged("specDraftNMax")),d(),k(),d(3),E(e.showDraftModelFields()?8:-1),d(),E(e.showDraftModelFields()?9:-1)}}function i0(i,o){if(i&1&&(l(0,"div",26),u(1,"Ngram Mod Parameters"),c(),l(2,"div",13)(3,"mat-form-field",18),v(4,"input",112),D(),l(5,"mat-label"),u(6,"Ngram Mod N Min"),c()(),l(7,"mat-form-field",18),v(8,"input",113),D(),l(9,"mat-label"),u(10,"Ngram Mod N Max"),c()(),l(11,"mat-form-field",18),v(12,"input",114),D(),l(13,"mat-label"),u(14,"Ngram Mod Match"),c()()()),i&2){let e=C();d(3),f("changed",e.isControlChanged("specNgramModNMin")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramModNMax")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramModNMatch")),d(),k()}}function n0(i,o){if(i&1&&(l(0,"div",26),u(1,"Ngram Simple Parameters"),c(),l(2,"div",13)(3,"mat-form-field",18),v(4,"input",115),D(),l(5,"mat-label"),u(6,"Simple Size N"),c()(),l(7,"mat-form-field",18),v(8,"input",116),D(),l(9,"mat-label"),u(10,"Simple Size M"),c()(),l(11,"mat-form-field",18),v(12,"input",117),D(),l(13,"mat-label"),u(14,"Simple Min Hits"),c()()()),i&2){let e=C();d(3),f("changed",e.isControlChanged("specNgramSimpleSizeN")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramSimpleSizeM")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramSimpleMinHits")),d(),k()}}function o0(i,o){if(i&1&&(l(0,"mat-option",8)(1,"span",98),u(2),c(),l(3,"span",99),u(4),c()()),i&2){let e=o.$implicit;w("value",e.path),d(2),Z(e.path),d(2),be("(",e.source,")")}}var p={host:"127.0.0.1",port:8080,threads:-1,flashAttn:"auto",fit:"on",parallel:-1,alias:"",nPredict:-1,contextShift:"off",contBatching:"on",model:"",mmproj:"",nGpuLayers:"auto",device:[],tensorSplit:"",splitMode:"layer",mainGpu:0,fitTarget:1024,fitCtx:4096,mlock:"off",mmap:"on",cpuMoe:"off",nCpuMoe:0,ctxSize:0,batchSize:2048,ubatchSize:512,cacheTypeK:"f16",cacheTypeV:"f16",kvOffload:"on",cacheRam:8192,swaFull:"off",ropeScaling:"none",ropeScale:1,ropeFreqBase:0,ropeFreqScale:0,yarnOrigCtx:0,yarnExtFactor:-1,yarnAttnFactor:-1,yarnBetaSlow:-1,yarnBetaFast:-1,temperature:.8,seed:-1,topK:40,topP:.95,minP:.05,typicalP:1,repeatLastN:64,repeatPenalty:1,presencePenalty:0,frequencyPenalty:0,dryMultiplier:0,dryBase:1.75,mirostat:0,dynatempRange:0,modelDraft:"",specDraftDevice:[],specDraftNMax:3,nGpuLayersDraft:"auto",specDraftCacheTypeK:"f16",specDraftCacheTypeV:"f16",specType:"none",specNgramModNMin:48,specNgramModNMax:64,specNgramModNMatch:24,specNgramSimpleSizeN:12,specNgramSimpleSizeM:48,specNgramSimpleMinHits:1,lora:"",loraScaled:"",timeout:3600,threadsHttp:-1,metrics:"off",slots:"on",cachePrompt:"on",cacheReuse:0,reasoning:"auto",reasoningBudget:-1,reasoningFormat:"auto",apiKeyFile:""};function a0(i,o){let e=p[i];if(e===void 0)return!1;if(Array.isArray(o)||Array.isArray(e)){let t=Array.isArray(o)?o:[],n=Array.isArray(e)?e:[];return t.length!==n.length||t.some((a,r)=>a!==n[r])}return String(o)!==String(e)}var r0="^[a-zA-Z][a-zA-Z0-9_-]{0,127}$",s0=["f32","f16","bf16","q8_0","q4_0","q4_1","iq4_nl","q5_0","q5_1"],dp=(()=>{class i{constructor(){this.fb=s(oo),this.dialogRef=s(Kt),this.data=s(va),this.serviceService=s(Yt),this.cdr=s(ie),this.destroyRef=s(ti),this.isEdit=this.data.config!==null,this.isClone=this.data.clone===!0,this.kvCacheTypes=s0,this.allExistingCommands=K(()=>{let e=this.data.allConfigs??[],t=this.data.config?.name??null,n=new Set,a=[];for(let r of e)r.name!==t&&(n.has(r.command)||(n.add(r.command),a.push({command:r.command,from:r.name})));return a}),this._commandValue=N(this.data.config?.command??""),this.commandValue=this._commandValue.asReadonly(),this.filteredCommands=K(()=>{let e=this.commandValue()?.toLowerCase()??"";return this.allExistingCommands().filter(t=>t.command.toLowerCase().includes(e)||t.from.toLowerCase().includes(e))}),this.form=this.fb.group({name:[this.data.config?.name??"",{validators:[vt.required,vt.pattern(r0)]}],command:[this.data.config?.command??"",vt.required],host:[p.host],port:[p.port],threads:[p.threads],flashAttn:[p.flashAttn],fit:[p.fit],parallel:[p.parallel],alias:[p.alias],nPredict:[p.nPredict],contextShift:[p.contextShift],contBatching:[p.contBatching],model:[""],mmproj:[""],nGpuLayers:[p.nGpuLayers],device:[[]],tensorSplit:[""],splitMode:[p.splitMode],mainGpu:[p.mainGpu],fitTarget:[p.fitTarget],fitCtx:[p.fitCtx],mlock:[p.mlock],mmap:[p.mmap],cpuMoe:[p.cpuMoe],nCpuMoe:[p.nCpuMoe],ctxSize:[""],batchSize:[p.batchSize],ubatchSize:[p.ubatchSize],cacheTypeK:[p.cacheTypeK],cacheTypeV:[p.cacheTypeV],kvOffload:[p.kvOffload],cacheRam:[p.cacheRam],swaFull:[p.swaFull],ropeScaling:[p.ropeScaling],ropeScale:[p.ropeScale],ropeFreqBase:[p.ropeFreqBase],ropeFreqScale:[p.ropeFreqScale],yarnOrigCtx:[p.yarnOrigCtx],yarnExtFactor:[p.yarnExtFactor],yarnAttnFactor:[p.yarnAttnFactor],yarnBetaSlow:[p.yarnBetaSlow],yarnBetaFast:[p.yarnBetaFast],temperature:[p.temperature],seed:[p.seed],topK:[p.topK],topP:[p.topP],minP:[p.minP],typicalP:[p.typicalP],repeatLastN:[p.repeatLastN],repeatPenalty:[p.repeatPenalty],presencePenalty:[p.presencePenalty],frequencyPenalty:[p.frequencyPenalty],dryMultiplier:[p.dryMultiplier],dryBase:[p.dryBase],mirostat:[p.mirostat],dynatempRange:[p.dynatempRange],modelDraft:[""],specDraftDevice:[[]],specDraftNMax:[p.specDraftNMax],nGpuLayersDraft:[p.nGpuLayersDraft],specDraftCacheTypeK:[p.specDraftCacheTypeK],specDraftCacheTypeV:[p.specDraftCacheTypeV],specType:[p.specType],specNgramModNMin:[p.specNgramModNMin],specNgramModNMax:[p.specNgramModNMax],specNgramModNMatch:[p.specNgramModNMatch],specNgramSimpleSizeN:[p.specNgramSimpleSizeN],specNgramSimpleSizeM:[p.specNgramSimpleSizeM],specNgramSimpleMinHits:[p.specNgramSimpleMinHits],lora:[""],loraScaled:[""],timeout:[p.timeout],threadsHttp:[p.threadsHttp],metrics:[p.metrics],slots:[p.slots],cachePrompt:[p.cachePrompt],cacheReuse:[p.cacheReuse],reasoning:[p.reasoning],reasoningBudget:[p.reasoningBudget],reasoningFormat:[p.reasoningFormat],apiKeyFile:[""]}),this.availableDevices=K(()=>this.availableDevicesRaw()),this.availableDevicesRaw=gs(this.form.controls.command.valueChanges.pipe(Da(),Ie(this.form.controls.command.value),Qt(300),Fi(),$e(e=>{let t=(e??"").trim();return t?this.serviceService.getLlamaAutocomplete("device","",t).pipe(mi(()=>ge([]))):this.serviceService.getLlamaAutocomplete("device","").pipe(mi(()=>ge([])))})),{initialValue:[]}),this.filteredHosts=gs(this.form.controls.host.valueChanges.pipe(Da(),Ie(this.form.controls.host.value),Qt(250),Fi(),$e(e=>{let t=(e??"").trim();return t?this.serviceService.getLlamaAutocomplete("host",t).pipe(mi(()=>ge([]))):ge([])})),{initialValue:[]}),this.existingModelPaths=K(()=>this.extractConfigPaths("--model")),this.existingMmprojPaths=K(()=>this.extractConfigPaths("--mmproj")),this.existingApiKeyPaths=K(()=>this.extractConfigPaths("--api-key-file")),this.existingDraftModelPaths=K(()=>this.extractConfigPaths("--model-draft")),this.existingLoraPaths=K(()=>this.extractConfigPaths("--lora")),this.formValue=gs(this.form.valueChanges,{initialValue:this.form.value}),this.fitValue=K(()=>this.formValue()?.fit),this.splitModeValue=K(()=>this.formValue()?.splitMode),this.specTypeValue=K(()=>this.formValue()?.specType),this.ropeScalingValue=K(()=>this.formValue()?.ropeScaling),this.cpuMoeValue=K(()=>this.formValue()?.cpuMoe),this.cachePromptValue=K(()=>this.formValue()?.cachePrompt),this.reasoningValue=K(()=>this.formValue()?.reasoning),this.mirostatValue=K(()=>this.formValue()?.mirostat),this.hostValue=K(()=>this.formValue()?.host),this.isTensorSplitDisabled=K(()=>this.splitModeValue()==="none"),this.isFitTargetDisabled=K(()=>this.fitValue()==="off"),this.isCpuMoeLayersDisabled=K(()=>this.cpuMoeValue()==="on"),this.isCacheReuseDisabled=K(()=>this.cachePromptValue()==="off"),this.isReasoningParamsDisabled=K(()=>this.reasoningValue()==="off"),this.isMirostatEnabled=K(()=>(this.mirostatValue()??0)!==0),this.isRopeParamsDisabled=K(()=>this.ropeScalingValue()==="none"),this.isPortDisabled=K(()=>(this.hostValue()??"").trim().toLowerCase().endsWith(".sock")),this.showDraftParams=K(()=>(this.specTypeValue()??"").includes("draft")),this.showDraftModelFields=K(()=>{let e=this.specTypeValue()??"";return e.includes("draft")&&!e.includes("mtp")}),this.showNgramModParams=K(()=>(this.specTypeValue()??"").includes("ngram-mod")),this.showNgramSimpleParams=K(()=>(this.specTypeValue()??"").includes("ngram-simple")),this.showYarnParams=K(()=>this.ropeScalingValue()==="yarn"),this.parallelSlots=K(()=>{let e=this.formValue()?.parallel;return typeof e=="number"&&e>0?e:1}),this.ctxPresets=K(()=>{let e=this.parallelSlots();return kc.map(t=>({label:bs(e*t,e)}))}),this._flags=null}extractConfigPaths(e){let t=this.data.allConfigs??[],n=this.data.config?.name??null,a=new Set,r=[];for(let m of t){if(m.name===n||!m.flags)continue;let h=sn(m.flags,e);h&&!a.has(h)&&(a.add(h),r.push(h))}return r}isControlChanged(e){let t=this.form.get(e)?.value;return e==="ctxSize"?+_s(t)!==p.ctxSize:t!==void 0&&a0(e,t)}isSectionChanged(...e){return e.some(t=>this.isControlChanged(t))}onCtxSizeInput(e){let t=e.target.value,n=_s(t),a=bs(n,this.parallelSlots());this.form.get("ctxSize")?.setValue(a,{emitEvent:!1})}ngOnInit(){this.form.controls.command.valueChanges.pipe(Da(this.destroyRef)).subscribe(e=>this._commandValue.set(e)),this.data.config&&this.populateFormFromFlags(this.data.config.flags),this.form.valueChanges.pipe(Da(this.destroyRef)).subscribe(()=>{this.cdr.markForCheck()})}populateFormFromFlags(e){let t=this.form.controls;t.host.setValue(Ue(e,"--host",p.host)),t.port.setValue(xe(e,"--port",p.port)),t.threads.setValue(xe(e,"--threads",p.threads)),t.flashAttn.setValue(Ue(e,"--flash-attn",p.flashAttn)),t.fit.setValue(Ue(e,"--fit",p.fit)),t.parallel.setValue(xe(e,"--parallel",p.parallel)),t.alias.setValue(Ue(e,"--alias","")),t.nPredict.setValue(xe(e,"--n-predict",p.nPredict)),t.contextShift.setValue(Rn(e,"--context-shift","--no-context-shift",!1)?"on":"off"),t.contBatching.setValue(Rn(e,"--cont-batching","--no-cont-batching",!0)?"on":"off");let n=sn(e,"--device");t.device.setValue(n?n.split(",").map(h=>h.trim()).filter(Boolean):[]),t.tensorSplit.setValue(Ue(e,"--tensor-split","")),t.model.setValue(Ue(e,"--model","")),t.mmproj.setValue(Ue(e,"--mmproj","")),t.nGpuLayers.setValue(Ue(e,"--n-gpu-layers",p.nGpuLayers)),t.splitMode.setValue(Ue(e,"--split-mode",p.splitMode)),t.mainGpu.setValue(xe(e,"--main-gpu",p.mainGpu)),t.fitTarget.setValue(xe(e,"--fit-target",p.fitTarget)),t.fitCtx.setValue(xe(e,"--fit-ctx",p.fitCtx)),t.mlock.setValue(e.includes("--mlock")?"on":"off"),t.mmap.setValue(Rn(e,"--mmap","--no-mmap",!0)?"on":"off"),t.cpuMoe.setValue(e.includes("--cpu-moe")?"on":"off"),t.nCpuMoe.setValue(xe(e,"--n-cpu-moe",0));let a=xe(e,"--ctx-size",p.ctxSize),r=typeof t.parallel.value=="number"&&t.parallel.value>0?t.parallel.value:1;t.ctxSize.setValue(bs(a,r)),t.batchSize.setValue(xe(e,"--batch-size",p.batchSize)),t.ubatchSize.setValue(xe(e,"--ubatch-size",p.ubatchSize)),t.cacheTypeK.setValue(Ue(e,"--cache-type-k",p.cacheTypeK)),t.cacheTypeV.setValue(Ue(e,"--cache-type-v",p.cacheTypeV)),t.kvOffload.setValue(Rn(e,"--kv-offload","--no-kv-offload",!0)?"on":"off"),t.cacheRam.setValue(xe(e,"--cache-ram",p.cacheRam)),t.swaFull.setValue(e.includes("--swa-full")?"on":"off"),t.ropeScaling.setValue(Ue(e,"--rope-scaling",p.ropeScaling)),t.ropeScale.setValue(st(e,"--rope-scale",p.ropeScale)),t.ropeFreqBase.setValue(st(e,"--rope-freq-base",p.ropeFreqBase)),t.ropeFreqScale.setValue(st(e,"--rope-freq-scale",p.ropeFreqScale)),t.yarnOrigCtx.setValue(xe(e,"--yarn-orig-ctx",p.yarnOrigCtx)),t.yarnExtFactor.setValue(st(e,"--yarn-ext-factor",p.yarnExtFactor)),t.yarnAttnFactor.setValue(st(e,"--yarn-attn-factor",p.yarnAttnFactor)),t.yarnBetaSlow.setValue(st(e,"--yarn-beta-slow",p.yarnBetaSlow)),t.yarnBetaFast.setValue(st(e,"--yarn-beta-fast",p.yarnBetaFast)),t.temperature.setValue(st(e,"--temperature",p.temperature)),t.seed.setValue(xe(e,"--seed",p.seed)),t.topK.setValue(xe(e,"--top-k",p.topK)),t.topP.setValue(st(e,"--top-p",p.topP)),t.minP.setValue(st(e,"--min-p",p.minP)),t.typicalP.setValue(st(e,"--typical",p.typicalP)),t.repeatLastN.setValue(xe(e,"--repeat-last-n",p.repeatLastN)),t.repeatPenalty.setValue(st(e,"--repeat-penalty",p.repeatPenalty)),t.presencePenalty.setValue(st(e,"--presence-penalty",p.presencePenalty)),t.frequencyPenalty.setValue(st(e,"--frequency-penalty",p.frequencyPenalty)),t.dryMultiplier.setValue(st(e,"--dry-multiplier",p.dryMultiplier)),t.dryBase.setValue(st(e,"--dry-base",p.dryBase)),t.mirostat.setValue(xe(e,"--mirostat",p.mirostat)),t.dynatempRange.setValue(st(e,"--dynatemp-range",p.dynatempRange)),t.modelDraft.setValue(Ue(e,"--model-draft",""));let m=sn(e,"--spec-draft-device")??sn(e,"--device-draft");t.specDraftDevice.setValue(m?m.split(",").map(h=>h.trim()).filter(Boolean):[]),t.specDraftNMax.setValue(xe(e,"--spec-draft-n-max",p.specDraftNMax)),t.nGpuLayersDraft.setValue(Ue(e,"--n-gpu-layers-draft",p.nGpuLayersDraft)),t.specDraftCacheTypeK.setValue(Ue(e,"--cache-type-k-draft",p.specDraftCacheTypeK)),t.specDraftCacheTypeV.setValue(Ue(e,"--cache-type-v-draft",p.specDraftCacheTypeV)),t.specType.setValue(Ue(e,"--spec-type",p.specType)),t.specNgramModNMin.setValue(xe(e,"--spec-ngram-mod-n-min",p.specNgramModNMin)),t.specNgramModNMax.setValue(xe(e,"--spec-ngram-mod-n-max",p.specNgramModNMax)),t.specNgramModNMatch.setValue(xe(e,"--spec-ngram-mod-n-match",p.specNgramModNMatch)),t.specNgramSimpleSizeN.setValue(xe(e,"--spec-ngram-simple-size-n",p.specNgramSimpleSizeN)),t.specNgramSimpleSizeM.setValue(xe(e,"--spec-ngram-simple-size-m",p.specNgramSimpleSizeM)),t.specNgramSimpleMinHits.setValue(xe(e,"--spec-ngram-simple-min-hits",p.specNgramSimpleMinHits)),t.lora.setValue(Ue(e,"--lora","")),t.loraScaled.setValue(Ue(e,"--lora-scaled","")),t.timeout.setValue(xe(e,"--timeout",p.timeout)),t.threadsHttp.setValue(xe(e,"--threads-http",p.threadsHttp)),t.metrics.setValue(e.includes("--metrics")?"on":"off"),t.slots.setValue(Rn(e,"--slots","--no-slots",!0)?"on":"off"),t.cachePrompt.setValue(Rn(e,"--cache-prompt","--no-cache-prompt",!0)?"on":"off"),t.cacheReuse.setValue(xe(e,"--cache-reuse",p.cacheReuse)),t.reasoning.setValue(Ue(e,"--reasoning",p.reasoning)),t.reasoningBudget.setValue(xe(e,"--reasoning-budget",p.reasoningBudget)),t.reasoningFormat.setValue(Ue(e,"--reasoning-format",p.reasoningFormat)),t.apiKeyFile.setValue(Ue(e,"--api-key-file",""))}addIf(e,t,n){String(t)!==String(n)&&this._flags.push(`${e} ${t}`)}addToggle(e,t,n,a){let r=e==="on";r!==a&&this._flags.push(r?t:n)}buildFlags(){this._flags=[];let e=this.form.controls;this.addIf("--host",e.host.value,p.host),this.addIf("--port",e.port.value,p.port),this.addIf("--threads",e.threads.value,p.threads),this.addIf("--flash-attn",e.flashAttn.value,p.flashAttn),this.addIf("--fit",e.fit.value,p.fit),this.addIf("--parallel",e.parallel.value,p.parallel),this.addIf("--alias",e.alias.value,p.alias),this.addIf("--n-predict",e.nPredict.value,p.nPredict),this.addToggle(e.contextShift.value,"--context-shift","--no-context-shift",!1),this.addToggle(e.contBatching.value,"--cont-batching","--no-cont-batching",!0);let t=e.device.value;t&&t.length>0&&this._flags.push(`--device ${t.join(",")}`),e.splitMode.value!=="none"&&this.addIf("--tensor-split",e.tensorSplit.value,p.tensorSplit),this.addIf("--model",e.model.value,p.model),this.addIf("--mmproj",e.mmproj.value,p.mmproj),this.addIf("--n-gpu-layers",e.nGpuLayers.value,p.nGpuLayers),this.addIf("--split-mode",e.splitMode.value,p.splitMode),this.addIf("--main-gpu",e.mainGpu.value,p.mainGpu),e.fit.value==="on"&&(this.addIf("--fit-target",e.fitTarget.value,p.fitTarget),this.addIf("--fit-ctx",e.fitCtx.value,p.fitCtx)),e.mlock.value==="on"&&this._flags.push("--mlock"),this.addToggle(e.mmap.value,"--mmap","--no-mmap",!0),e.cpuMoe.value==="on"&&this._flags.push("--cpu-moe"),e.cpuMoe.value!=="on"&&this.addIf("--n-cpu-moe",e.nCpuMoe.value,p.nCpuMoe),this.addIf("--ctx-size",+_s(e.ctxSize.value??""),p.ctxSize),this.addIf("--batch-size",e.batchSize.value,p.batchSize),this.addIf("--ubatch-size",e.ubatchSize.value,p.ubatchSize),this.addIf("--cache-type-k",e.cacheTypeK.value,p.cacheTypeK),this.addIf("--cache-type-v",e.cacheTypeV.value,p.cacheTypeV),this.addToggle(e.kvOffload.value,"--kv-offload","--no-kv-offload",!0),this.addIf("--cache-ram",e.cacheRam.value,p.cacheRam),e.swaFull.value==="on"&&this._flags.push("--swa-full");let n=e.ropeScaling.value;n&&n!==p.ropeScaling&&(this._flags.push(`--rope-scaling ${n}`),this.addIf("--rope-scale",e.ropeScale.value,p.ropeScale),this.addIf("--rope-freq-base",e.ropeFreqBase.value,p.ropeFreqBase),this.addIf("--rope-freq-scale",e.ropeFreqScale.value,p.ropeFreqScale),n==="yarn"&&(this.addIf("--yarn-orig-ctx",e.yarnOrigCtx.value,p.yarnOrigCtx),this.addIf("--yarn-ext-factor",e.yarnExtFactor.value,p.yarnExtFactor),this.addIf("--yarn-attn-factor",e.yarnAttnFactor.value,p.yarnAttnFactor),this.addIf("--yarn-beta-slow",e.yarnBetaSlow.value,p.yarnBetaSlow),this.addIf("--yarn-beta-fast",e.yarnBetaFast.value,p.yarnBetaFast))),this.addIf("--temperature",e.temperature.value,p.temperature),this.addIf("--seed",e.seed.value,p.seed),this.addIf("--top-k",e.topK.value,p.topK),this.addIf("--top-p",e.topP.value,p.topP),this.addIf("--min-p",e.minP.value,p.minP),this.addIf("--typical",e.typicalP.value,p.typicalP),this.addIf("--repeat-last-n",e.repeatLastN.value,p.repeatLastN),this.addIf("--repeat-penalty",e.repeatPenalty.value,p.repeatPenalty),this.addIf("--presence-penalty",e.presencePenalty.value,p.presencePenalty),this.addIf("--frequency-penalty",e.frequencyPenalty.value,p.frequencyPenalty),this.addIf("--dry-multiplier",e.dryMultiplier.value,p.dryMultiplier),this.addIf("--dry-base",e.dryBase.value,p.dryBase),this.addIf("--mirostat",e.mirostat.value,p.mirostat),this.addIf("--dynatemp-range",e.dynatempRange.value,p.dynatempRange);let a=e.specType.value;if(this.addIf("--spec-type",a,p.specType),a?.includes("draft")&&(this.addIf("--spec-draft-n-max",e.specDraftNMax.value,p.specDraftNMax),!a.includes("mtp"))){this.addIf("--model-draft",e.modelDraft.value,p.modelDraft);let m=e.specDraftDevice.value;m&&m.length>0&&this._flags.push(`--spec-draft-device ${m.join(",")}`),this.addIf("--n-gpu-layers-draft",e.nGpuLayersDraft.value,p.nGpuLayersDraft),this.addIf("--cache-type-k-draft",e.specDraftCacheTypeK.value,p.specDraftCacheTypeK),this.addIf("--cache-type-v-draft",e.specDraftCacheTypeV.value,p.specDraftCacheTypeV)}a?.includes("ngram")&&(this.addIf("--spec-ngram-mod-n-min",e.specNgramModNMin.value,p.specNgramModNMin),this.addIf("--spec-ngram-mod-n-max",e.specNgramModNMax.value,p.specNgramModNMax),this.addIf("--spec-ngram-mod-n-match",e.specNgramModNMatch.value,p.specNgramModNMatch),this.addIf("--spec-ngram-simple-size-n",e.specNgramSimpleSizeN.value,p.specNgramSimpleSizeN),this.addIf("--spec-ngram-simple-size-m",e.specNgramSimpleSizeM.value,p.specNgramSimpleSizeM),this.addIf("--spec-ngram-simple-min-hits",e.specNgramSimpleMinHits.value,p.specNgramSimpleMinHits)),this.addIf("--lora",e.lora.value,p.lora),this.addIf("--lora-scaled",e.loraScaled.value,p.loraScaled),this.addIf("--timeout",e.timeout.value,p.timeout),this.addIf("--threads-http",e.threadsHttp.value,p.threadsHttp),e.metrics.value==="on"&&this._flags.push("--metrics"),this.addToggle(e.slots.value,"--slots","--no-slots",!0),this.addToggle(e.cachePrompt.value,"--cache-prompt","--no-cache-prompt",!0),e.cachePrompt.value==="on"&&this.addIf("--cache-reuse",e.cacheReuse.value,p.cacheReuse),this.addIf("--reasoning",e.reasoning.value,p.reasoning),this.addIf("--reasoning-budget",e.reasoningBudget.value,p.reasoningBudget),this.addIf("--reasoning-format",e.reasoningFormat.value,p.reasoningFormat),this.addIf("--api-key-file",e.apiKeyFile.value,p.apiKeyFile);let r=this._flags;return this._flags=null,r}save(){if(this.form.invalid)return;let e={name:this.form.controls.name.value.trim(),type:"llama-server",command:this.form.controls.command.value.trim(),flags:this.buildFlags()};this.dialogRef.close(e)}cancel(){this.dialogRef.close()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-llama-server-dialog"]],decls:448,vars:180,consts:[["commandAuto","matAutocomplete"],["ctxSizeAuto","matAutocomplete"],["hostAuto","matAutocomplete"],["mat-dialog-title",""],[1,"llama-form",3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","formControlName","name","placeholder","e.g. llama-qwen3_6-27b-q8",3,"disabled"],["matInput","","formControlName","command","placeholder","/path/to/llama-server",3,"matAutocomplete"],[3,"value"],["expanded",""],["formControlName","model","label","Model Path","placeholder","/path/to/model.gguf",3,"existingPaths","fieldClass"],["formControlName","mmproj","label","MMProj Path","placeholder","/path/to/mmproj.gguf (optional)",3,"existingPaths","fieldClass"],["matInput","","formControlName","alias","type","text","matTooltip","Set model name aliases (comma-separated). Used by API for model identification"],[1,"form-row"],["appearance","outline",1,"form-col-40"],["matInput","","formControlName","nGpuLayers","type","number","matTooltip","Max number of layers to store in VRAM. 999 = all layers. Can use 'auto' or 'all'"],["appearance","outline",1,"form-col-60"],["formControlName","device","multiple","","placeholder","Select GPU devices","matTooltip","Comma-separated list of devices for offloading. Use --list-devices to see available"],["appearance","outline",1,"form-col"],["formControlName","splitMode","matTooltip","How to split model across multiple GPUs. layer=pipelined, row=parallelized, tensor=experimental"],["value","layer"],["value","row"],["value","tensor"],["value","none"],["matInput","","formControlName","tensorSplit","placeholder","10,10,10","matTooltip","Fraction of model to offload to each GPU (comma-separated proportions, e.g. 3,1)",3,"disabled"],["matInput","","formControlName","mainGpu","type","number","matTooltip","GPU index for model (with split-mode=none) or for intermediate results and KV (with split-mode=row)"],[1,"subsection-label"],["formControlName","fit","matTooltip","Adjust unset arguments to fit in device memory. Helps prevent OOM errors"],["value","on"],["value","off"],["matInput","","formControlName","fitTarget","type","number","matTooltip","Target margin per device in MiB for --fit option. Default: 1024",3,"disabled"],["matInput","","formControlName","fitCtx","type","number","matTooltip","Minimum context size that can be set by --fit option. Default: 4096",3,"disabled"],["formControlName","mlock","matTooltip","Force system to keep model in RAM rather than swapping or compressing"],["formControlName","mmap","matTooltip","Memory-map model. If disabled: slower load but may reduce pageouts if not using mlock"],["formControlName","cpuMoe","matTooltip","Keep all Mixture of Experts (MoE) weights in CPU memory"],["matInput","","formControlName","nCpuMoe","type","number","matTooltip","Keep MoE weights of first N layers in CPU. 0 = disabled",3,"disabled"],["matInput","","formControlName","ctxSize","type","text","placeholder","e.g. 8K, 3x16K, 20000","matTooltip","Context size. Supports: 20000, 20K, 3x20K. 0 = from model metadata",3,"blur","keyup.enter","matAutocomplete"],["matInput","","formControlName","batchSize","type","number","matTooltip","Logical maximum batch size for processing. Default: 2048"],["matInput","","formControlName","ubatchSize","type","number","matTooltip","Physical maximum batch size. Default: 512"],["formControlName","cacheTypeK","matTooltip","KV cache data type for K. Options: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1"],["formControlName","cacheTypeV","matTooltip","KV cache data type for V. Options: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1"],["formControlName","kvOffload","matTooltip","Enable KV cache offloading to GPU. Reduces CPU memory usage"],["matInput","","formControlName","cacheRam","type","number","matTooltip","Maximum prompt cache size in MiB. -1 = no limit, 0 = disable. Default: 8192"],["formControlName","swaFull","matTooltip","Use full-size SWA (Sliding Window Attention) cache instead of compressed"],["formControlName","ropeScaling","matTooltip","RoPE frequency scaling method. linear or yarn for extended context"],["value","linear"],["value","yarn"],["matInput","","formControlName","ropeScale","type","number","matTooltip","RoPE context scaling factor. Expands context by factor of N",3,"disabled"],["matInput","","formControlName","ropeFreqBase","type","number","matTooltip","RoPE base frequency for NTK-aware scaling. 0 = loaded from model",3,"disabled"],["matInput","","formControlName","ropeFreqScale","type","number","matTooltip","RoPE frequency scaling factor. Expands context by factor of 1/N. 0 = from model",3,"disabled"],["matInput","","formControlName","threads","type","number","matTooltip","Number of CPU threads to use during generation. -1 = auto-detect"],["matInput","","formControlName","parallel","type","number","matTooltip","Number of server slots for parallel requests. -1 = auto"],["matInput","","formControlName","nPredict","type","number","matTooltip","Maximum number of tokens to predict. -1 = infinity (unlimited generation)"],["formControlName","flashAttn","matTooltip","Enable Flash Attention for faster inference with lower VRAM usage"],["value","auto"],["formControlName","contBatching","matTooltip","Enable continuous (dynamic) batching for better throughput with multiple requests"],["formControlName","contextShift","matTooltip","Enable context shift on infinite text generation. Shifts context window when full"],["matInput","","formControlName","temperature","type","number","matTooltip","Temperature for sampling. Higher = more random, lower = more deterministic. Default: 0.8"],["matInput","","formControlName","seed","type","number","matTooltip","RNG seed for reproducibility. -1 = random seed"],["matInput","","formControlName","topK","type","number","matTooltip","Top-K sampling: limit to K most likely tokens. 0 = disabled. Default: 40",3,"disabled"],["matInput","","formControlName","topP","type","number","matTooltip","Top-P (nucleus) sampling: cumulative probability threshold. 1.0 = disabled. Default: 0.95",3,"disabled"],["matInput","","formControlName","minP","type","number","matTooltip","Min-P sampling: minimum probability threshold. 0.0 = disabled. Default: 0.05"],["matInput","","formControlName","typicalP","type","number","matTooltip","Locally typical sampling parameter p. 1.0 = disabled",3,"disabled"],["formControlName","mirostat","matTooltip","Mirostat sampling mode. 0=disabled, 1=Mirostat, 2=Mirostat 2.0. Top-K/Nucleus ignored when enabled"],["matInput","","formControlName","dynatempRange","type","number","matTooltip","Dynamic temperature range. 0.0 = disabled"],["matInput","","formControlName","repeatLastN","type","number","matTooltip","Last N tokens to consider for penalty. 0 = disabled, -1 = ctx_size. Default: 64"],["matInput","","formControlName","repeatPenalty","type","number","matTooltip","Penalize repeat sequence of tokens. 1.0 = disabled"],["matInput","","formControlName","presencePenalty","type","number","matTooltip","Alpha presence penalty: penalize tokens that appeared. 0.0 = disabled"],["matInput","","formControlName","frequencyPenalty","type","number","matTooltip","Alpha frequency penalty: penalize by token frequency. 0.0 = disabled"],["matInput","","formControlName","dryMultiplier","type","number","matTooltip","DRY sampling multiplier: prevents repetition by penalizing recent tokens. 0.0 = disabled"],["matInput","","formControlName","dryBase","type","number","matTooltip","DRY sampling base value. Default: 1.75"],["appearance","outline","subscriptSizing","dynamic",1,"full-width"],["formControlName","specType","matTooltip","Type of speculative decoding. draft-* uses draft model, ngram-* uses n-gram lookup"],["value","draft-simple"],["value","draft-eagle3"],["value","draft-mtp"],["value","ngram-simple"],["value","ngram-mod"],[1,"sub-section-hint"],["formControlName","lora","label","LoRA Adapter Path","placeholder","/path/to/lora.gguf (comma-separated for multiple)",3,"existingPaths","fieldClass"],["matInput","","formControlName","loraScaled","type","text","matTooltip","LoRA adapter with user-defined scaling. Format: path:scale,... (e.g. lora.gguf:0.5)"],["matInput","","formControlName","host","type","text","matTooltip","IP address to listen (default: 127.0.0.1). Can bind to UNIX socket if ends with .sock",3,"matAutocomplete"],["matInput","","formControlName","port","type","number","matTooltip","Port to listen (default: 8080). Ignored when host is a UNIX socket",3,"disabled"],["matInput","","formControlName","timeout","type","number","matTooltip","Server read/write timeout in seconds. Default: 3600"],["matInput","","formControlName","threadsHttp","type","number","matTooltip","Number of threads for HTTP requests. -1 = auto"],["formControlName","apiKeyFile","label","API Key File","placeholder","/path/to/keys.ini",3,"existingPaths","fieldClass"],["formControlName","metrics","matTooltip","Enable Prometheus-compatible metrics endpoint at /metrics"],["formControlName","slots","matTooltip","Expose slots monitoring endpoint at /slots"],["formControlName","cachePrompt","matTooltip","Enable prompt caching to speed up repeated prompts"],["matInput","","formControlName","cacheReuse","type","number","matTooltip","Min chunk size to attempt reusing from cache via KV shifting. Requires prompt caching",3,"disabled"],["formControlName","reasoning","matTooltip","Use reasoning/thinking in chat. auto = detect from template"],["matInput","","formControlName","reasoningBudget","type","number","matTooltip","Token budget for thinking. -1 = unlimited, 0 = immediate end, N>0 = token limit",3,"disabled"],["formControlName","reasoningFormat","matTooltip","Format for reasoning output. none=raw, deepseek=reasoning_content field, deepseek-legacy=keep think tags",3,"disabled"],["value","deepseek"],["value","deepseek-legacy"],["align","end"],["mat-stroked-button","",3,"click"],["mat-raised-button","","color","primary",3,"click","disabled"],[1,"auto-path"],[1,"auto-from"],["matInput","","formControlName","yarnOrigCtx","type","number","matTooltip","YaRN: original context size of model. 0 = model training context size"],["matInput","","formControlName","yarnExtFactor","type","number","matTooltip","YaRN: extrapolation mix factor. -1 = default, 0.0 = full interpolation"],["matInput","","formControlName","yarnAttnFactor","type","number","matTooltip","YaRN: scale sqrt(t) or attention magnitude. -1 = default"],["matInput","","formControlName","yarnBetaSlow","type","number","matTooltip","YaRN: high correction dim (alpha). -1 = default"],["matInput","","formControlName","yarnBetaFast","type","number","matTooltip","YaRN: low correction dim (beta). -1 = default"],["matInput","","formControlName","specDraftNMax","type","number","matTooltip","Max number of tokens to draft for speculative decoding. Default: 3"],["appearance","outline",1,"form-col",3,"changed"],["formControlName","modelDraft","label","Draft Model Path","placeholder","/path/to/draft-model.gguf",3,"existingPaths","fieldClass"],["formControlName","specDraftDevice","multiple","","placeholder","Select GPU devices for draft model","matTooltip","Devices for offloading the draft model. Same options as main --device"],["matInput","","formControlName","nGpuLayersDraft","type","number","matTooltip","Max draft model layers to store in VRAM. 999 = all layers"],["formControlName","specDraftCacheTypeK","matTooltip","KV cache data type for K for the draft model"],["formControlName","specDraftCacheTypeV","matTooltip","KV cache data type for V for the draft model"],["matInput","","formControlName","specNgramModNMin","type","number","matTooltip","Min number of ngram tokens for ngram-mod speculative decoding. Default: 48"],["matInput","","formControlName","specNgramModNMax","type","number","matTooltip","Max number of ngram tokens for ngram-mod speculative decoding. Default: 64"],["matInput","","formControlName","specNgramModNMatch","type","number","matTooltip","Ngram-mod lookup length. Default: 24"],["matInput","","formControlName","specNgramSimpleSizeN","type","number","matTooltip","Ngram size N for ngram-simple: length of lookup n-gram. Default: 12"],["matInput","","formControlName","specNgramSimpleSizeM","type","number","matTooltip","Ngram size M for ngram-simple: length of draft m-gram. Default: 48"],["matInput","","formControlName","specNgramSimpleMinHits","type","number","matTooltip","Minimum hits for ngram-simple speculative decoding. Default: 1"]],template:function(t,n){if(t&1&&(l(0,"h2",3),u(1),c(),l(2,"mat-dialog-content")(3,"form",4)(4,"mat-form-field",5),v(5,"input",6),D(),l(6,"mat-label"),u(7,"Service Name"),c(),S(8,Vy,2,0,"mat-error")(9,zy,2,0,"mat-error"),c(),l(10,"mat-form-field",5),v(11,"input",7),D(),l(12,"mat-label"),u(13,"Binary Path"),c(),S(14,jy,2,0,"mat-error"),c(),l(15,"mat-autocomplete",null,0),Le(17,Hy,5,3,"mat-option",8,Ly),c(),l(19,"mat-expansion-panel",9)(20,"mat-expansion-panel-header")(21,"mat-panel-title"),u(22,"Model"),c()(),v(23,"app-file-autocomplete",10),D(),v(24,"app-file-autocomplete",11),D(),l(25,"mat-form-field",5),v(26,"input",12),D(),l(27,"mat-label"),u(28,"Model Alias"),c()()(),l(29,"mat-expansion-panel",9)(30,"mat-expansion-panel-header")(31,"mat-panel-title"),u(32,"GPU & Memory"),c()(),l(33,"div",13)(34,"mat-form-field",14),v(35,"input",15),D(),l(36,"mat-label"),u(37,"GPU Layers"),c()(),l(38,"mat-form-field",16)(39,"mat-select",17),Le(40,Uy,2,2,"mat-option",8,Sc),c(),D(),l(42,"mat-label"),u(43,"Device (multi-select)"),c()()(),l(44,"div",13)(45,"mat-form-field",18)(46,"mat-select",19)(47,"mat-option",20),u(48,"layer (pipelined)"),c(),l(49,"mat-option",21),u(50,"row (parallelized)"),c(),l(51,"mat-option",22),u(52,"tensor (experimental)"),c(),l(53,"mat-option",23),u(54,"none (single GPU)"),c()(),D(),l(55,"mat-label"),u(56,"Split Mode"),c()(),l(57,"mat-form-field",18),v(58,"input",24),D(),l(59,"mat-label"),u(60,"Tensor Split"),c()(),l(61,"mat-form-field",18),v(62,"input",25),D(),l(63,"mat-label"),u(64,"Main GPU"),c()()(),l(65,"div",26),u(66,"Memory"),c(),l(67,"div",13)(68,"mat-form-field",18)(69,"mat-select",27)(70,"mat-option",28),u(71,"on"),c(),l(72,"mat-option",29),u(73,"off"),c()(),D(),l(74,"mat-label"),u(75,"Fit to VRAM"),c()(),l(76,"mat-form-field",18),v(77,"input",30),D(),l(78,"mat-label"),u(79,"Fit Target (MiB)"),c()(),l(80,"mat-form-field",18),v(81,"input",31),D(),l(82,"mat-label"),u(83,"Fit Min Ctx"),c()()(),l(84,"div",13)(85,"mat-form-field",18)(86,"mat-select",32)(87,"mat-option",28),u(88,"on"),c(),l(89,"mat-option",29),u(90,"off"),c()(),D(),l(91,"mat-label"),u(92,"mlock (pin RAM)"),c()(),l(93,"mat-form-field",18)(94,"mat-select",33)(95,"mat-option",28),u(96,"on"),c(),l(97,"mat-option",29),u(98,"off"),c()(),D(),l(99,"mat-label"),u(100,"mmap"),c()(),l(101,"mat-form-field",18)(102,"mat-select",34)(103,"mat-option",28),u(104,"on"),c(),l(105,"mat-option",29),u(106,"off"),c()(),D(),l(107,"mat-label"),u(108,"CPU MoE"),c()(),l(109,"mat-form-field",18),v(110,"input",35),D(),l(111,"mat-label"),u(112,"N CPU MoE Layers"),c()()()(),l(113,"mat-expansion-panel")(114,"mat-expansion-panel-header")(115,"mat-panel-title"),u(116,"Context & KV Cache"),c()(),l(117,"div",13)(118,"mat-form-field",18)(119,"input",36),I("blur",function(r){return n.onCtxSizeInput(r)})("keyup.enter",function(r){return n.onCtxSizeInput(r)}),c(),D(),l(120,"mat-label"),u(121,"Context Size"),c()(),l(122,"mat-autocomplete",null,1),Le(124,Gy,2,2,"mat-option",8,By),c(),l(126,"mat-form-field",18),v(127,"input",37),D(),l(128,"mat-label"),u(129,"Batch Size"),c()(),l(130,"mat-form-field",18),v(131,"input",38),D(),l(132,"mat-label"),u(133,"Ubatch Size"),c()()(),l(134,"div",13)(135,"mat-form-field",18)(136,"mat-select",39),Le(137,$y,2,2,"mat-option",8,wi),c(),D(),l(139,"mat-label"),u(140,"KV Cache Type K"),c()(),l(141,"mat-form-field",18)(142,"mat-select",40),Le(143,Wy,2,2,"mat-option",8,wi),c(),D(),l(145,"mat-label"),u(146,"KV Cache Type V"),c()(),l(147,"mat-form-field",18)(148,"mat-select",41)(149,"mat-option",28),u(150,"on"),c(),l(151,"mat-option",29),u(152,"off"),c()(),D(),l(153,"mat-label"),u(154,"KV Offload"),c()()(),l(155,"div",13)(156,"mat-form-field",18),v(157,"input",42),D(),l(158,"mat-label"),u(159,"Cache RAM (MiB)"),c()(),l(160,"mat-form-field",18)(161,"mat-select",43)(162,"mat-option",28),u(163,"on"),c(),l(164,"mat-option",29),u(165,"off"),c()(),D(),l(166,"mat-label"),u(167,"Full SWA Cache"),c()()()(),l(168,"mat-expansion-panel")(169,"mat-expansion-panel-header")(170,"mat-panel-title"),u(171,"RoPE Scaling"),c()(),l(172,"div",13)(173,"mat-form-field",18)(174,"mat-select",44)(175,"mat-option",23),u(176,"none"),c(),l(177,"mat-option",45),u(178,"linear"),c(),l(179,"mat-option",46),u(180,"yarn"),c()(),D(),l(181,"mat-label"),u(182,"Scaling Method"),c()(),l(183,"mat-form-field",18),v(184,"input",47),D(),l(185,"mat-label"),u(186,"Scale Factor"),c()(),l(187,"mat-form-field",18),v(188,"input",48),D(),l(189,"mat-label"),u(190,"Freq Base"),c()(),l(191,"mat-form-field",18),v(192,"input",49),D(),l(193,"mat-label"),u(194,"Freq Scale"),c()()(),S(195,qy,23,10),c(),l(196,"mat-expansion-panel")(197,"mat-expansion-panel-header")(198,"mat-panel-title"),u(199,"Generation"),c(),l(200,"mat-panel-description"),u(201,"Runtime and batching defaults"),c()(),l(202,"div",13)(203,"mat-form-field",18),v(204,"input",50),D(),l(205,"mat-label"),u(206,"Threads"),c()(),l(207,"mat-form-field",18),v(208,"input",51),D(),l(209,"mat-label"),u(210,"Parallel Slots"),c()(),l(211,"mat-form-field",18),v(212,"input",52),D(),l(213,"mat-label"),u(214,"Max Tokens (n-predict)"),c()()(),l(215,"div",13)(216,"mat-form-field",18)(217,"mat-select",53)(218,"mat-option",28),u(219,"on"),c(),l(220,"mat-option",29),u(221,"off"),c(),l(222,"mat-option",54),u(223,"auto"),c()(),D(),l(224,"mat-label"),u(225,"Flash Attention"),c()(),l(226,"mat-form-field",18)(227,"mat-select",55)(228,"mat-option",28),u(229,"on"),c(),l(230,"mat-option",29),u(231,"off"),c()(),D(),l(232,"mat-label"),u(233,"Cont. Batching"),c()(),l(234,"mat-form-field",18)(235,"mat-select",56)(236,"mat-option",28),u(237,"on"),c(),l(238,"mat-option",29),u(239,"off"),c()(),D(),l(240,"mat-label"),u(241,"Context Shift"),c()()()(),l(242,"mat-expansion-panel")(243,"mat-expansion-panel-header")(244,"mat-panel-title"),u(245,"Sampling Defaults"),c(),l(246,"mat-panel-description"),u(247,"Default sampling parameters for generation"),c()(),l(248,"div",26),u(249,"Core"),c(),l(250,"div",13)(251,"mat-form-field",18),v(252,"input",57),D(),l(253,"mat-label"),u(254,"Temperature"),c()(),l(255,"mat-form-field",18),v(256,"input",58),D(),l(257,"mat-label"),u(258,"Seed"),c()(),l(259,"mat-form-field",18),v(260,"input",59),D(),l(261,"mat-label"),u(262,"Top-K"),c()(),l(263,"mat-form-field",18),v(264,"input",60),D(),l(265,"mat-label"),u(266,"Top-P"),c()()(),l(267,"div",13)(268,"mat-form-field",18),v(269,"input",61),D(),l(270,"mat-label"),u(271,"Min-P"),c()(),l(272,"mat-form-field",18),v(273,"input",62),D(),l(274,"mat-label"),u(275,"Typical-P"),c()(),l(276,"mat-form-field",18)(277,"mat-select",63)(278,"mat-option",8),u(279,"disabled"),c(),l(280,"mat-option",8),u(281,"Mirostat"),c(),l(282,"mat-option",8),u(283,"Mirostat 2.0"),c()(),D(),l(284,"mat-label"),u(285,"Mirostat"),c()(),l(286,"mat-form-field",18),v(287,"input",64),D(),l(288,"mat-label"),u(289,"Dyn. Temp Range"),c()()(),l(290,"div",26),u(291,"Penalties"),c(),l(292,"div",13)(293,"mat-form-field",18),v(294,"input",65),D(),l(295,"mat-label"),u(296,"Repeat Last N"),c()(),l(297,"mat-form-field",18),v(298,"input",66),D(),l(299,"mat-label"),u(300,"Repeat Penalty"),c()(),l(301,"mat-form-field",18),v(302,"input",67),D(),l(303,"mat-label"),u(304,"Presence Penalty"),c()(),l(305,"mat-form-field",18),v(306,"input",68),D(),l(307,"mat-label"),u(308,"Frequency Penalty"),c()()(),l(309,"div",26),u(310,"DRY Sampling"),c(),l(311,"div",13)(312,"mat-form-field",18),v(313,"input",69),D(),l(314,"mat-label"),u(315,"DRY Multiplier"),c()(),l(316,"mat-form-field",18),v(317,"input",70),D(),l(318,"mat-label"),u(319,"DRY Base"),c()()()(),l(320,"mat-expansion-panel")(321,"mat-expansion-panel-header")(322,"mat-panel-title"),u(323,"Speculative Decoding"),c(),l(324,"mat-panel-description"),u(325,"Draft model and speculative decoding options"),c()(),l(326,"mat-form-field",71)(327,"mat-select",72)(328,"mat-option",23),u(329,"none"),c(),l(330,"mat-option",73),u(331,"draft-simple"),c(),l(332,"mat-option",74),u(333,"draft-eagle3"),c(),l(334,"mat-option",75),u(335,"draft-mtp"),c(),l(336,"mat-option",76),u(337,"ngram-simple"),c(),l(338,"mat-option",77),u(339,"ngram-mod"),c()(),D(),l(340,"mat-label"),u(341,"Spec Type"),c()(),S(342,Ky,2,0,"div",78),S(343,t0,10,5),S(344,i0,15,6),S(345,n0,15,6),c(),l(346,"mat-expansion-panel")(347,"mat-expansion-panel-header")(348,"mat-panel-title"),u(349,"LoRA & Adapters"),c()(),v(350,"app-file-autocomplete",79),D(),l(351,"mat-form-field",5),v(352,"input",80),D(),l(353,"mat-label"),u(354,"LoRA Scaled"),c()()(),l(355,"mat-expansion-panel")(356,"mat-expansion-panel-header")(357,"mat-panel-title"),u(358,"Server & Network"),c()(),l(359,"div",13)(360,"mat-form-field",18),v(361,"input",81),D(),l(362,"mat-label"),u(363,"Host"),c()(),l(364,"mat-autocomplete",null,2),Le(366,o0,5,3,"mat-option",8,Sc),c(),l(368,"mat-form-field",18),v(369,"input",82),D(),l(370,"mat-label"),u(371,"Port"),c()(),l(372,"mat-form-field",18),v(373,"input",83),D(),l(374,"mat-label"),u(375,"Timeout (s)"),c()(),l(376,"mat-form-field",18),v(377,"input",84),D(),l(378,"mat-label"),u(379,"HTTP Threads"),c()()(),v(380,"app-file-autocomplete",85),D(),l(381,"div",13)(382,"mat-form-field",18)(383,"mat-select",86)(384,"mat-option",28),u(385,"on"),c(),l(386,"mat-option",29),u(387,"off"),c()(),D(),l(388,"mat-label"),u(389,"Prometheus Metrics"),c()(),l(390,"mat-form-field",18)(391,"mat-select",87)(392,"mat-option",28),u(393,"on"),c(),l(394,"mat-option",29),u(395,"off"),c()(),D(),l(396,"mat-label"),u(397,"Slots Endpoint"),c()(),l(398,"mat-form-field",18)(399,"mat-select",88)(400,"mat-option",28),u(401,"on"),c(),l(402,"mat-option",29),u(403,"off"),c()(),D(),l(404,"mat-label"),u(405,"Prompt Cache"),c()(),l(406,"mat-form-field",18),v(407,"input",89),D(),l(408,"mat-label"),u(409,"Cache Reuse"),c()()()(),l(410,"mat-expansion-panel")(411,"mat-expansion-panel-header")(412,"mat-panel-title"),u(413,"Reasoning"),c(),l(414,"mat-panel-description"),u(415,"Thinking/reasoning mode settings"),c()(),l(416,"div",13)(417,"mat-form-field",18)(418,"mat-select",90)(419,"mat-option",28),u(420,"on"),c(),l(421,"mat-option",29),u(422,"off"),c(),l(423,"mat-option",54),u(424,"auto"),c()(),D(),l(425,"mat-label"),u(426,"Reasoning"),c()(),l(427,"mat-form-field",18),v(428,"input",91),D(),l(429,"mat-label"),u(430,"Reasoning Budget"),c()(),l(431,"mat-form-field",18)(432,"mat-select",92)(433,"mat-option",54),u(434,"auto"),c(),l(435,"mat-option",23),u(436,"none (raw)"),c(),l(437,"mat-option",93),u(438,"deepseek"),c(),l(439,"mat-option",94),u(440,"deepseek-legacy"),c()(),D(),l(441,"mat-label"),u(442,"Reasoning Format"),c()()()()()(),l(443,"mat-dialog-actions",95)(444,"button",96),I("click",function(){return n.cancel()}),u(445,"Cancel"),c(),l(446,"button",97),I("click",function(){return n.save()}),u(447),c()()),t&2){let a=Ye(16),r=Ye(123),m=Ye(365);d(),be("",n.isClone?"Clone":n.isEdit?"Edit":"Add"," llama-server service"),d(2),w("formGroup",n.form),d(),f("changed",n.isControlChanged("name")),d(),w("disabled",n.isEdit&&!n.isClone),k(),d(3),E(n.form.controls.name.errors?.required?8:n.form.controls.name.errors?.pattern?9:-1),d(2),f("changed",n.isControlChanged("command")),d(),w("matAutocomplete",a),k(),d(3),E(n.form.controls.command.errors?.required?14:-1),d(3),Be(n.filteredCommands()),d(2),f("has-changed",n.isSectionChanged("model","mmproj","alias")),d(4),w("existingPaths",n.existingModelPaths())("fieldClass",n.isControlChanged("model")?"changed":""),k(),d(),w("existingPaths",n.existingMmprojPaths())("fieldClass",n.isControlChanged("mmproj")?"changed":""),k(),d(),f("changed",n.isControlChanged("alias")),d(),k(),d(3),f("has-changed",n.isSectionChanged("nGpuLayers","device","tensorSplit","splitMode","mainGpu","fit","fitTarget","fitCtx","mlock","mmap","cpuMoe","nCpuMoe")),d(5),f("changed",n.isControlChanged("nGpuLayers")),d(),k(),d(3),f("changed",n.isControlChanged("device")),d(),k(),d(),Be(n.availableDevices()),d(5),f("changed",n.isControlChanged("splitMode")),d(),k(),d(11),f("changed",n.isControlChanged("tensorSplit")&&!n.isTensorSplitDisabled()),d(),w("disabled",n.isTensorSplitDisabled()),k(),d(3),f("changed",n.isControlChanged("mainGpu")),d(),k(),d(6),f("changed",n.isControlChanged("fit")),d(),k(),d(7),f("changed",n.isControlChanged("fitTarget")&&!n.isFitTargetDisabled()),d(),w("disabled",n.isFitTargetDisabled()),k(),d(3),f("changed",n.isControlChanged("fitCtx")&&!n.isFitTargetDisabled()),d(),w("disabled",n.isFitTargetDisabled()),k(),d(4),f("changed",n.isControlChanged("mlock")),d(),k(),d(7),f("changed",n.isControlChanged("mmap")),d(),k(),d(7),f("changed",n.isControlChanged("cpuMoe")),d(),k(),d(7),f("changed",n.isControlChanged("nCpuMoe")&&!n.isCpuMoeLayersDisabled()),d(),w("disabled",n.isCpuMoeLayersDisabled()),k(),d(3),f("has-changed",n.isSectionChanged("ctxSize","batchSize","ubatchSize","cacheTypeK","cacheTypeV","kvOffload","cacheRam","swaFull")),d(5),f("changed",n.isControlChanged("ctxSize")),d(),w("matAutocomplete",r),k(),d(5),Be(n.ctxPresets()),d(2),f("changed",n.isControlChanged("batchSize")),d(),k(),d(3),f("changed",n.isControlChanged("ubatchSize")),d(),k(),d(4),f("changed",n.isControlChanged("cacheTypeK")),d(),k(),d(),Be(n.kvCacheTypes),d(4),f("changed",n.isControlChanged("cacheTypeV")),d(),k(),d(),Be(n.kvCacheTypes),d(4),f("changed",n.isControlChanged("kvOffload")),d(),k(),d(8),f("changed",n.isControlChanged("cacheRam")),d(),k(),d(3),f("changed",n.isControlChanged("swaFull")),d(),k(),d(7),f("has-changed",n.isSectionChanged("ropeScaling","ropeScale","ropeFreqBase","ropeFreqScale","yarnOrigCtx","yarnExtFactor","yarnAttnFactor","yarnBetaSlow","yarnBetaFast")),d(5),f("changed",n.isControlChanged("ropeScaling")),d(),k(),d(9),f("changed",n.isControlChanged("ropeScale")&&!n.isRopeParamsDisabled()),d(),w("disabled",n.isRopeParamsDisabled()),k(),d(3),f("changed",n.isControlChanged("ropeFreqBase")&&!n.isRopeParamsDisabled()),d(),w("disabled",n.isRopeParamsDisabled()),k(),d(3),f("changed",n.isControlChanged("ropeFreqScale")&&!n.isRopeParamsDisabled()),d(),w("disabled",n.isRopeParamsDisabled()),k(),d(3),E(n.showYarnParams()?195:-1),d(),f("has-changed",n.isSectionChanged("threads","parallel","flashAttn","contBatching","contextShift","nPredict")),d(7),f("changed",n.isControlChanged("threads")),d(),k(),d(3),f("changed",n.isControlChanged("parallel")),d(),k(),d(3),f("changed",n.isControlChanged("nPredict")),d(),k(),d(4),f("changed",n.isControlChanged("flashAttn")),d(),k(),d(9),f("changed",n.isControlChanged("contBatching")),d(),k(),d(7),f("changed",n.isControlChanged("contextShift")),d(),k(),d(7),f("has-changed",n.isSectionChanged("temperature","seed","topK","topP","minP","typicalP","mirostat","dynatempRange","repeatLastN","repeatPenalty","presencePenalty","frequencyPenalty","dryMultiplier","dryBase")),d(9),f("changed",n.isControlChanged("temperature")),d(),k(),d(3),f("changed",n.isControlChanged("seed")),d(),k(),d(3),f("changed",n.isControlChanged("topK")&&!n.isMirostatEnabled()),d(),w("disabled",n.isMirostatEnabled()),k(),d(3),f("changed",n.isControlChanged("topP")&&!n.isMirostatEnabled()),d(),w("disabled",n.isMirostatEnabled()),k(),d(4),f("changed",n.isControlChanged("minP")),d(),k(),d(3),f("changed",n.isControlChanged("typicalP")&&!n.isMirostatEnabled()),d(),w("disabled",n.isMirostatEnabled()),k(),d(3),f("changed",n.isControlChanged("mirostat")),d(),k(),d(),w("value",0),d(2),w("value",1),d(2),w("value",2),d(4),f("changed",n.isControlChanged("dynatempRange")),d(),k(),d(6),f("changed",n.isControlChanged("repeatLastN")),d(),k(),d(3),f("changed",n.isControlChanged("repeatPenalty")),d(),k(),d(3),f("changed",n.isControlChanged("presencePenalty")),d(),k(),d(3),f("changed",n.isControlChanged("frequencyPenalty")),d(),k(),d(6),f("changed",n.isControlChanged("dryMultiplier")),d(),k(),d(3),f("changed",n.isControlChanged("dryBase")),d(),k(),d(3),f("has-changed",n.isSectionChanged("modelDraft","specDraftDevice","specDraftNMax","nGpuLayersDraft","specDraftCacheTypeK","specDraftCacheTypeV","specType","specNgramModNMin","specNgramModNMax","specNgramModNMatch","specNgramSimpleSizeN","specNgramSimpleSizeM","specNgramSimpleMinHits")),d(6),f("changed",n.isControlChanged("specType")),d(),k(),d(15),E(n.showDraftParams()&&!n.showDraftModelFields()?342:-1),d(),E(n.showDraftParams()?343:-1),d(),E(n.showNgramModParams()?344:-1),d(),E(n.showNgramSimpleParams()?345:-1),d(),f("has-changed",n.isSectionChanged("lora","loraScaled")),d(4),w("existingPaths",n.existingLoraPaths())("fieldClass",n.isControlChanged("lora")?"changed":""),k(),d(),f("changed",n.isControlChanged("loraScaled")),d(),k(),d(3),f("has-changed",n.isSectionChanged("host","port","timeout","threadsHttp","apiKeyFile","metrics","slots","cachePrompt","cacheReuse")),d(5),f("changed",n.isControlChanged("host")),d(),w("matAutocomplete",m),k(),d(5),Be(n.filteredHosts()),d(2),f("changed",n.isControlChanged("port")&&!n.isPortDisabled()),d(),w("disabled",n.isPortDisabled()),k(),d(3),f("changed",n.isControlChanged("timeout")),d(),k(),d(3),f("changed",n.isControlChanged("threadsHttp")),d(),k(),d(3),w("existingPaths",n.existingApiKeyPaths())("fieldClass",n.isControlChanged("apiKeyFile")?"changed":""),k(),d(2),f("changed",n.isControlChanged("metrics")),d(),k(),d(7),f("changed",n.isControlChanged("slots")),d(),k(),d(7),f("changed",n.isControlChanged("cachePrompt")),d(),k(),d(7),f("changed",n.isControlChanged("cacheReuse")&&!n.isCacheReuseDisabled()),d(),w("disabled",n.isCacheReuseDisabled()),k(),d(3),f("has-changed",n.isSectionChanged("reasoning","reasoningBudget","reasoningFormat")),d(7),f("changed",n.isControlChanged("reasoning")),d(),k(),d(9),f("changed",n.isControlChanged("reasoningBudget")&&!n.isReasoningParamsDisabled()),d(),w("disabled",n.isReasoningParamsDisabled()),k(),d(3),f("changed",n.isControlChanged("reasoningFormat")&&!n.isReasoningParamsDisabled()),d(),w("disabled",n.isReasoningParamsDisabled()),k(),d(14),w("disabled",n.form.invalid),d(),be(" ",n.isEdit&&!n.isClone?"Save":"Create"," ")}},dependencies:[Ge,ao,Or,Yi,zl,Xi,no,ro,oi,Dn,xo,Co,St,Tn,dt,ht,us,np,xc,ep,ip,tp,Tt,It,Ut,so,_i,gi,Ci,nn,an,on,fs,ps,sp,Dc,lp],styles:['@charset "UTF-8";.llama-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;min-width:640px}.form-row[_ngcontent-%COMP%]{display:flex;gap:12px;margin-bottom:4px}.form-col[_ngcontent-%COMP%]{flex:1}.form-col-60[_ngcontent-%COMP%]{flex:3}.form-col-40[_ngcontent-%COMP%]{flex:2}.full-width[_ngcontent-%COMP%]{width:100%}.auto-path[_ngcontent-%COMP%]{font-family:monospace}.auto-from[_ngcontent-%COMP%]{margin-left:8px;opacity:.6;font-size:12px}mat-dialog-content[_ngcontent-%COMP%]{padding-top:10px!important;max-height:80vh}mat-expansion-panel[_ngcontent-%COMP%]{margin-bottom:0}mat-dialog-actions[_ngcontent-%COMP%]{gap:8px}.subsection-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:#0009;margin:4px 0 14px;text-transform:uppercase;letter-spacing:.5px}.sub-section-hint[_ngcontent-%COMP%]{font-size:11px;color:#0006;margin-bottom:4px}mat-expansion-panel.has-changed[_ngcontent-%COMP%] mat-panel-title[_ngcontent-%COMP%]{font-weight:700}mat-form-field.changed[_ngcontent-%COMP%] .mat-mdc-form-field-infix input, mat-form-field.changed[_ngcontent-%COMP%] .mat-mdc-form-field-infix .mat-mdc-select{font-weight:700}']})}}return i})();var l0=(i,o)=>o.name;function c0(i,o){if(i&1){let e=Ke();l(0,"button",21),I("click",function(n){De(e);let a=C(2).$implicit;return C(2).control(a.name,"start"),ke(n.stopPropagation())}),l(1,"mat-icon"),u(2,"play_arrow"),c(),u(3," Start "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",t.busy()?.name===e.name)}}function d0(i,o){if(i&1){let e=Ke();l(0,"button",22),I("click",function(n){De(e);let a=C(2).$implicit;return C(2).control(a.name,"stop"),ke(n.stopPropagation())}),l(1,"mat-icon"),u(2,"stop"),c(),u(3," Stop "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",t.busy()?.name===e.name)}}function m0(i,o){if(i&1){let e=Ke();l(0,"button",23),I("click",function(n){De(e);let a=C(2).$implicit;return C(2).control(a.name,"disable"),ke(n.stopPropagation())}),l(1,"mat-icon"),u(2,"lock"),c(),u(3," Disable "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",t.busy()?.name===e.name)}}function u0(i,o){if(i&1){let e=Ke();l(0,"button",23),I("click",function(n){De(e);let a=C(2).$implicit;return C(2).control(a.name,"enable"),ke(n.stopPropagation())}),l(1,"mat-icon"),u(2,"lock_open"),c(),u(3," Enable "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",e.enabled||t.busy()?.name===e.name)}}function h0(i,o){if(i&1&&(S(0,c0,4,1,"button",18)(1,d0,4,1,"button",19),S(2,m0,4,1,"button",20)(3,u0,4,1,"button",20)),i&2){let e=C().$implicit;E(e.running?1:0),d(2),E(e.enabled?2:3)}}function p0(i,o){if(i&1){let e=Ke();l(0,"tr",11),I("click",function(){let n=De(e).$implicit,a=C(2);return ke(a.selectedServiceService.select(n.name))}),l(1,"td")(2,"div",12),v(3,"span",13),l(4,"span",14),u(5),c()()(),l(6,"td",15),S(7,h0,4,2),c(),l(8,"td",15)(9,"div")(10,"button",16)(11,"mat-icon"),u(12,"more_vert"),c()(),l(13,"mat-menu",17,1)(15,"button",7),I("click",function(){let n=De(e).$implicit,a=C(2);return ke(a.editService(n))}),l(16,"mat-icon"),u(17,"edit"),c(),l(18,"span"),u(19,"Edit"),c()(),l(20,"button",7),I("click",function(){let n=De(e).$implicit,a=C(2);return ke(a.cloneService(n))}),l(21,"mat-icon"),u(22,"content_copy"),c(),l(23,"span"),u(24,"Clone"),c()(),l(25,"button",7),I("click",function(){let n=De(e).$implicit,a=C(2);return ke(a.deleteService(n.name))}),l(26,"mat-icon"),u(27,"delete"),c(),l(28,"span"),u(29,"Delete"),c()()()()()()}if(i&2){let e=o.$implicit,t=Ye(14);f("custom",e.hasConfig),d(3),f("running",e.running),d(),f("disabled",!e.enabled),d(),Z(e.name),d(2),E(e.installed?7:-1),d(2),Ne("visibility",e.hasConfig?"visible":"hidden"),d(),w("matMenuTriggerFor",t)}}function f0(i,o){if(i&1&&(l(0,"table",8)(1,"tbody"),Le(2,p0,30,11,"tr",10,l0),c()()),i&2){let e=C();d(2),Be(e.unified())}}function g0(i,o){i&1&&(l(0,"div",9)(1,"p"),u(2,'No services configured. Click "Manage" to select system services or "Add Service" to create one.'),c()())}var mp=(()=>{class i{constructor(){this.serviceService=s(Yt),this.serviceList=s(ss),this.selectedServiceService=s(rs),this.dialog=s(_o),this.snackBar=s(Nh),this.services=this.serviceList.services,this.configs=N([]),this.loading=N(!0),this.busy=N(null),this.unified=K(()=>{let e=this.services(),t=this.configs(),n=new Map;for(let m of t)n.set(m.name,m);let a=e.filter(m=>n.has(m.name)).map(m=>{let h=n.get(m.name)??null;return{name:m.name,running:m.running,enabled:m.enabled,installed:m.installed,pid:m.pid,error:m.error,config:h,hasConfig:!0}}),r=e.filter(m=>!n.has(m.name)).map(m=>Me(B({},m),{config:null,hasConfig:!1}));return[...a,...r]})}ngOnInit(){this.load()}load(){return ve(this,null,function*(){this.loading.set(!0);try{yield this.serviceList.refresh(),this.configs.set(yield ze(this.serviceService.fetchConfigs()))}catch(e){console.error("[ServicesComponent] load error:",e)}finally{this.loading.set(!1)}})}control(e,t){return ve(this,null,function*(){let n=this.busy();if(!(n&&n.name===e&&n.action===t)){this.selectedServiceService.select(e),this.busy.set({name:e,action:t});try{let a=yield ze(this.serviceService.control(e,t));a.error&&this.showError(`${e}: ${a.error}`),yield this.load()}catch(a){this.showError(`${e}: ${String(a.error||a)}`)}finally{this.busy.set(null)}}})}showError(e){this.snackBar.open(e,"Dismiss",{duration:8e3,horizontalPosition:"center",verticalPosition:"top"})}manageServices(){this.dialog.open(qh,{maxWidth:"600px"}).afterClosed().subscribe(t=>{t&&this.load()})}addService(e){this.openDialog(null,e)}editService(e){this.selectedServiceService.select(e.name),this.openDialog(e.config,e.config?.type)}cloneService(e){if(!e.config)return;let t=Me(B({},e.config),{name:this.uniqueCloneName(e.name)});this.openDialog(t,t.type,!0)}uniqueCloneName(e){let t=new Set(this.configs().map(a=>a.name));if(!t.has(`${e}-copy`))return`${e}-copy`;let n=2;for(;t.has(`${e}-copy-${n}`);)n++;return`${e}-copy-${n}`}deleteService(e){return ve(this,null,function*(){this.selectedServiceService.select(e);try{yield ze(this.serviceService.deleteConfig(e)),yield this.load()}catch(t){this.showError(`Delete "${e}": ${String(t)}`)}})}hasFlags(e){return e.flags.length>0}openDialog(e,t,n=!1){if((t??e?.type??"generic")==="llama-server"){let r={config:e,allConfigs:this.configs(),clone:n},m=this.dialog.open(dp,{data:r,minWidth:"800px"});this.handleDialogResult(m,e,n)}else{let r={config:e,allConfigs:this.configs(),clone:n},m=this.dialog.open(zh,{data:r,minWidth:"1000px"});this.handleDialogResult(m,e,n)}}handleDialogResult(e,t,n=!1){e.afterClosed().subscribe(a=>ve(this,null,function*(){if(a)try{if(n)yield ze(this.serviceService.saveConfig(a));else{let r=t?.name??null;if(r!==null&&r!==a.name){let h=this.unified().find(y=>y.name===r),g=h?.running??!1,_=h?.enabled??!1;yield ze(this.serviceService.deleteConfig(r)),yield ze(this.serviceService.saveConfig(a)),_&&(yield ze(this.serviceService.control(a.name,"enable"))),g&&(yield ze(this.serviceService.control(a.name,"start")))}else yield ze(this.serviceService.saveConfig(a))}}catch(r){this.showError(`Save: ${String(r)}`)}finally{yield this.load()}}))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-services"]],decls:25,vars:2,consts:[["addMenu",""],["serviceMenu","matMenu"],[1,"services-card"],[1,"section-header"],[1,"header-actions"],["mat-stroked-button","",3,"click"],["mat-raised-button","","color","primary","title","Install your own service.",3,"matMenuTriggerFor"],["mat-menu-item","",3,"click"],[1,"services-list"],[1,"empty"],[3,"custom"],[3,"click"],[1,"service-name"],[1,"status-dot"],[1,"name-text"],[1,"service-actions-cell"],["mat-icon-button","","title","Service actions",3,"matMenuTriggerFor"],["yPosition","below"],["mat-raised-button","","color","primary",3,"disabled"],["mat-raised-button","","color","warn",3,"disabled"],["mat-stroked-button","",3,"disabled"],["mat-raised-button","","color","primary",3,"click","disabled"],["mat-raised-button","","color","warn",3,"click","disabled"],["mat-stroked-button","",3,"click","disabled"]],template:function(t,n){if(t&1&&(l(0,"div",2)(1,"div",3)(2,"h2"),u(3,"Services"),c(),l(4,"div",4)(5,"button",5),I("click",function(){return n.manageServices()}),l(6,"mat-icon"),u(7,"tune"),c(),u(8," Select services to manage... "),c(),l(9,"button",6)(10,"mat-icon"),u(11,"add"),c(),u(12," Add custom service... "),c(),l(13,"mat-menu",null,0)(15,"button",7),I("click",function(){return n.addService("generic")}),l(16,"mat-icon"),u(17,"settings"),c(),u(18," Generic service "),c(),l(19,"button",7),I("click",function(){return n.addService("llama-server")}),l(20,"mat-icon"),u(21,"smart_toy"),c(),u(22," llama-server "),c()()()(),S(23,f0,4,0,"table",8)(24,g0,3,0,"div",9),c()),t&2){let a=Ye(14);d(9),w("matMenuTriggerFor",a),d(14),E(n.unified().length>0?23:n.loading()?-1:24)}},dependencies:[Ge,dt,ht,Mn,ho,as,rn,In,os,Wt,$t],styles:[".services-card[_ngcontent-%COMP%]{margin-bottom:24px}.section-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;margin-top:8px}.section-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.1rem;font-weight:600;color:#333}.section-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%]{display:flex;gap:8px}.services-list[_ngcontent-%COMP%]{width:100%;border-collapse:collapse}.services-list[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.services-list[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:#fff}.services-list[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child{border-bottom:none}.services-list[_ngcontent-%COMP%] tr.custom[_ngcontent-%COMP%], .services-list[_ngcontent-%COMP%] tr.custom[_ngcontent-%COMP%]:first-child td[_ngcontent-%COMP%]:first-child{border-left:3px solid #7c4dff}.services-list[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:4px 12px;vertical-align:middle}.service-name[_ngcontent-%COMP%]{font-size:1rem;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:8px}.service-name[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{display:inline-block;width:10px;height:10px;border-radius:50%;background-color:#bdbdbd}.service-name[_ngcontent-%COMP%] .status-dot.running[_ngcontent-%COMP%]{background-color:#4caf50}.service-name[_ngcontent-%COMP%] .name-text[_ngcontent-%COMP%]{color:#212121}.service-name[_ngcontent-%COMP%] .name-text.disabled[_ngcontent-%COMP%]{color:#9e9e9e}.service-actions-cell[_ngcontent-%COMP%]{white-space:nowrap}.service-actions-cell[_ngcontent-%COMP%] button[_ngcontent-%COMP%] + button[_ngcontent-%COMP%]{margin-left:8px}.status-chip[_ngcontent-%COMP%], .enabled-chip[_ngcontent-%COMP%]{font-size:.8rem;font-weight:500}.status-chip.running[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #a5d6a7}.status-chip.stopped[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #ef9a9a}.enabled-chip.enabled[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #90caf9}.enabled-chip.disabled[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #bdbdbd}.empty[_ngcontent-%COMP%]{text-align:center;padding:24px;color:#999;font-size:.9rem}.empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0}"]})}}return i})();var _0=["journalBody"],b0=(i,o)=>o.name;function v0(i,o){if(i&1&&(l(0,"mat-option",7),u(1),c()),i&2){let e=o.$implicit;w("value",e.name),d(),Z(e.name)}}function y0(i,o){if(i&1){let e=Ke();l(0,"button",10),I("click",function(){De(e);let n=C(2);return ke(n.toggleWordWrap())}),l(1,"mat-icon"),u(2,"wrap_text"),c()()}}function C0(i,o){if(i&1){let e=Ke();l(0,"button",11),I("click",function(){De(e);let n=C(2);return ke(n.toggleWordWrap())}),l(1,"mat-icon"),u(2,"wrap_text"),c()()}}function x0(i,o){if(i&1){let e=Ke();l(0,"mat-select",6),I("ngModelChange",function(n){De(e);let a=C();return ke(a.onServiceChange(n))}),l(1,"mat-option",7),u(2,"\u2014 None \u2014"),c(),Le(3,v0,2,2,"mat-option",7,b0),c(),D(),S(5,y0,3,0,"button",8)(6,C0,3,0,"button",9)}if(i&2){let e=C();w("ngModel",e.selectedService()),k(),d(),w("value",null),d(2),Be(e.services()),d(2),E(e.wordWrap()?5:6)}}function w0(i,o){if(i&1&&(l(0,"div",3),u(1),c()),i&2){let e=C();d(),Z(e.error())}}function D0(i,o){if(i&1&&(l(0,"div",4,0)(2,"pre"),u(3),c()()),i&2){let e=C();d(2),f("wrap-on",e.wordWrap()),d(),Z(e.journalText())}}function k0(i,o){i&1&&(l(0,"div",5)(1,"p"),u(2,"No service selected"),c()())}var S0=40,up=(()=>{class i{toggleWordWrap(){this.wordWrap.update(e=>!e)}constructor(){this.serviceService=s(Yt),this.selectedServiceService=s(rs),this.serviceList=s(ss),this.cdr=s(ie),this.services=this.serviceList.services,this.servicesLoaded=this.serviceList.loaded,this.journalLines=N([]),this.journalLoading=N(!1),this.journalError=N(null),this.error=K(()=>this.serviceList.error()??this.journalError()),this.selectedService=K(()=>this.selectedServiceService.selectedService()),this.wordWrap=N(!0),this.journalText=K(()=>{let e=this.journalLines();return e.length===0?"":e.map(t=>t.timestamp?`${t.timestamp} ${t.message}`:t.message).join(`
|
|
5584
|
-
`)}),Et(()=>{if(!this.servicesLoaded())return;let e=this.selectedService();e!==null&&!this.services().some(t=>t.name===e)&&this.selectedServiceService.select(null)}),Et(()=>{if(!this.servicesLoaded())return;this.selectedService()?(this.journalLines.set([]),this.journalError.set(null),this.restartPolling()):(this.stopPolling(),this.journalLines.set([]))}),this.serviceList.refresh()}ngAfterViewInit(){this.scrollToBottom()}ngOnDestroy(){this.stopPolling()}onServiceChange(e){this.selectedServiceService.select(e)}restartPolling(){this.stopPolling(),this.fetchJournal(),this.journalSub=Ia(0,1e3).subscribe(()=>this.fetchJournal())}stopPolling(){this.journalSub&&(this.journalSub.unsubscribe(),this.journalSub=void 0)}fetchJournal(){let e=this.selectedService();e&&(this.isTextSelected()||(this.journalLoading.set(!0),this.serviceService.fetchJournal(e,100).subscribe({next:t=>{let n=this.isScrolledToBottom();this.journalLines.set(t),this.journalError.set(null),this.journalLoading.set(!1),this.cdr.markForCheck(),requestAnimationFrame(()=>{n&&this.scrollToBottom()})},error:t=>{this.journalError.set(t.message),this.journalLoading.set(!1),this.cdr.markForCheck()}})))}get scrollContainer(){return this.journalBody?.nativeElement??null}isTextSelected(){let e=typeof window<"u"?window:null;if(!e)return!1;let t=e.getSelection();if(!t||t.isCollapsed||!t.rangeCount)return!1;let n=this.scrollContainer;return n?n.contains(t.anchorNode):!1}isScrolledToBottom(){let e=this.scrollContainer;return e?e.scrollHeight-e.scrollTop-e.clientHeight<=S0:!0}scrollToBottom(){let e=this.scrollContainer;e&&(e.scrollTop=e.scrollHeight)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-journal-panel"]],viewQuery:function(t,n){if(t&1&&Ce(_0,5),t&2){let a;T(a=R())&&(n.journalBody=a.first)}},decls:9,vars:3,consts:[["journalBody",""],[1,"journal-card"],[1,"journal-header"],[1,"journal-error"],[1,"journal-body"],[1,"journal-body","journal-empty"],["disableOptionCentering","",1,"service-select",3,"ngModelChange","ngModel"],[3,"value"],["mat-flat-button","","color","primary","aria-label","Disable word wrap"],["mat-stroked-button","","aria-label","Enable word wrap"],["mat-flat-button","","color","primary","aria-label","Disable word wrap",3,"click"],["mat-stroked-button","","aria-label","Enable word wrap",3,"click"]],template:function(t,n){t&1&&(l(0,"mat-card",1)(1,"mat-card-content")(2,"div",2)(3,"h2"),u(4,"Journal"),c(),S(5,x0,7,3),c(),S(6,w0,2,1,"div",3),S(7,D0,4,3,"div",4)(8,k0,3,0,"div",5),c()()),t&2&&(d(5),E(n.servicesLoaded()&&n.services().length>0?5:-1),d(),E(n.error()?6:-1),d(),E(n.selectedService()?7:8))},dependencies:[Ge,Hi,zi,ji,fs,ps,St,dt,ht,Wt,$t,Vi,ao,Xi,Vl],styles:[".journal-card[_ngcontent-%COMP%]{height:100%;display:flex;flex-direction:column;overflow:hidden}.journal-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-bottom:8px}.journal-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-shrink:0}.journal-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:20px;font-weight:500}.service-select[_ngcontent-%COMP%]{flex:1;min-width:150px}.journal-error[_ngcontent-%COMP%]{color:#f44336;font-size:13px;margin-bottom:8px;flex-shrink:0}.journal-body[_ngcontent-%COMP%]{flex:1;overflow-y:auto;background:#1e1e1e;border-radius:4px;padding:8px;min-height:0}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar{width:8px}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:#2d2d2d;border-radius:4px}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#777}.journal-body[_ngcontent-%COMP%]{scrollbar-width:thin;scrollbar-color:#555 #2d2d2d}.journal-body[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.6;color:#d4d4d4;white-space:pre}.journal-body[_ngcontent-%COMP%] pre.wrap-on[_ngcontent-%COMP%]{white-space:pre-wrap}.journal-empty[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center}.journal-empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;color:#888;font-size:14px}[_nghost-%COMP%] .mdc-button{min-width:32px}[_nghost-%COMP%] .mat-mdc-unelevated-button>.mat-icon, [_nghost-%COMP%] .mat-mdc-outlined-button>.mat-icon{margin-right:0}"]})}}return i})();var vs=(()=>{class i{constructor(){this.http=s(jt),this.baseUrl="/api/system"}reboot(){return ve(this,null,function*(){yield ze(this.http.post(`${this.baseUrl}/reboot`,null))})}shutdown(){return ve(this,null,function*(){yield ze(this.http.post(`${this.baseUrl}/shutdown`,null))})}getSystemInfo(){return ve(this,null,function*(){return ze(this.http.get(`${this.baseUrl}/info`))})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var E0=(i,o)=>o.device,M0=(i,o)=>o.path;function A0(i,o){i&1&&v(0,"mat-progress-bar",2)}function I0(i,o){if(i&1&&(l(0,"p",3),u(1),c()),i&2){let e=C();d(),Z(e.error())}}function T0(i,o){if(i&1&&(l(0,"span",11),u(1),c()),i&2){let e=C(2);d(),Z(e.info().uptime)}}function R0(i,o){if(i&1&&(l(0,"div",12)(1,"span",13),u(2,"Version"),c(),l(3,"span",14),u(4),c()()),i&2){let e=C(2);d(4),Z(e.info().os.version)}}function O0(i,o){if(i&1&&(l(0,"div",16)(1,"div",18)(2,"span",19),u(3),c(),l(4,"span",20),u(5),c()(),l(6,"div",21),v(7,"div",22),c(),l(8,"div",23)(9,"span"),u(10),c(),l(11,"span"),u(12),c()()()),i&2){let e=o.$implicit,t=C(2);d(3),Z(e.device),d(2),Z(e.mountPoint),d(2),Ne("width",e.usePercent,"%")("background",e.usePercent>90?"#f44336":e.usePercent>75?"#ff9800":"#4caf50"),d(3),mn("",t.formatBytes(e.available)," free of ",t.formatBytes(e.total)),d(2),be("",e.usePercent,"% used")}}function F0(i,o){if(i&1&&(l(0,"div",27)(1,"span",31),u(2,"Last"),c(),l(3,"span",32),u(4),Eo(5,"date"),c()()),i&2){let e=C(3);d(4),Z(Mo(5,1,e.info().timeshift.lastSnapshot,"medium"))}}function P0(i,o){if(i&1&&(l(0,"mat-chip",33),u(1),c()),i&2){let e=o.$implicit;d(),Z(e)}}function N0(i,o){if(i&1&&(l(0,"mat-chip-set"),Le(1,P0,2,1,"mat-chip",33,wi),c()),i&2){let e=C(3);d(),Be(e.info().timeshift.schedules)}}function L0(i,o){if(i&1&&(l(0,"div",6)(1,"h3"),u(2,"Timeshift Backup"),c(),l(3,"div",7)(4,"div",8)(5,"mat-chip-set")(6,"mat-chip",24),u(7),c(),l(8,"mat-chip",25),u(9),c()(),l(10,"span",26),u(11),c()(),S(12,F0,6,4,"div",27),l(13,"div",28),v(14,"div",29),c(),l(15,"div",30)(16,"span"),u(17),c(),S(18,N0,3,0,"mat-chip-set"),c()()(),v(19,"mat-divider",15)),i&2){let e=C(2);d(7),Z(e.info().timeshift.mode),d(2),Z(e.info().timeshift.device),d(2),be("",e.info().timeshift.snapshots," snapshots"),d(),E(e.info().timeshift.lastSnapshot?12:-1),d(2),Ne("width",e.info().timeshift.totalSpace>0?(e.info().timeshift.totalSpace-e.info().timeshift.freeSpace)/e.info().timeshift.totalSpace*100:0,"%")("background",e.info().timeshift.totalSpace>0&&(e.info().timeshift.totalSpace-e.info().timeshift.freeSpace)/e.info().timeshift.totalSpace>.9?"#f44336":e.info().timeshift.totalSpace>0&&(e.info().timeshift.totalSpace-e.info().timeshift.freeSpace)/e.info().timeshift.totalSpace>.75?"#ff9800":"#4caf50"),d(3),mn("",e.formatBytes(e.info().timeshift.freeSpace)," free of ",e.formatBytes(e.info().timeshift.totalSpace)),d(),E(e.info().timeshift.schedules.length>0?18:-1)}}function B0(i,o){if(i&1&&u(0),i&2){let e=C().$implicit,t=C(2);be(" ",t.formatBytes(e.size)," ")}}function V0(i,o){i&1&&u(0," \u2014 ")}function z0(i,o){if(i&1&&(l(0,"div",17)(1,"span",34),u(2),c(),l(3,"span",35),S(4,B0,1,1)(5,V0,1,0),c()()),i&2){let e=o.$implicit;d(2),Z(e.path),d(2),E(e.exists?4:5)}}function j0(i,o){if(i&1&&(l(0,"div",6)(1,"h3"),u(2,"Operating System"),c(),l(3,"div",7)(4,"div",8)(5,"mat-chip-set")(6,"mat-chip",9),u(7),c(),l(8,"mat-chip",10),u(9),c()(),S(10,T0,2,1,"span",11),c(),S(11,R0,5,1,"div",12),l(12,"div",12)(13,"span",13),u(14,"Kernel"),c(),l(15,"span",14),u(16),c()()()(),v(17,"mat-divider",15),l(18,"div",6)(19,"h3"),u(20,"Disks"),c(),Le(21,O0,13,9,"div",16,E0),c(),v(23,"mat-divider",15),S(24,L0,20,11),l(25,"div",6)(26,"h3"),u(27,"System Logs"),c(),Le(28,z0,6,2,"div",17,M0),c()),i&2){let e=C();d(7),Z(e.info().hostname),d(2),Z(e.info().os.name),d(),E(e.info().uptime?10:-1),d(),E(e.info().os.version?11:-1),d(5),Z(e.info().kernel),d(5),Be(e.info().disks),d(3),E(e.info().timeshift?24:-1),d(4),Be(e.info().logs)}}var hp=(()=>{class i{constructor(){this.systemService=s(vs),this.dialogRef=s(Kt),this.loading=N(!0),this.info=N(null),this.error=N(null)}ngOnInit(){return ve(this,null,function*(){try{let e=yield this.systemService.getSystemInfo();this.info.set(e)}catch(e){this.error.set(e instanceof Error?e.message:"Failed to load system info")}finally{this.loading.set(!1)}})}formatBytes(e){return e===0?"0 B":`${(e/(1024*1024*1024)).toFixed(1)} GB`}close(){this.dialogRef.close()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-system-info-dialog"]],decls:12,vars:1,consts:[[1,"dialog-container"],["mat-dialog-title",""],["mode","indeterminate"],[1,"dialog-error"],["align","end"],["mat-raised-button","","color","primary",3,"click"],[1,"info-section"],[1,"info-card"],[1,"info-card-header"],[1,"hostname-chip"],[1,"distro-chip"],[1,"os-uptime"],[1,"info-row"],[1,"info-label"],[1,"info-value"],[1,"section-divider"],[1,"disk-row"],[1,"log-row"],[1,"disk-header"],[1,"disk-device"],[1,"disk-mount"],[1,"disk-bar-bg"],[1,"disk-bar-fill"],[1,"disk-details"],[1,"mode-chip"],[1,"device-chip"],[1,"timeshift-snapshots"],[1,"timeshift-row"],[1,"timeshift-disk-bar-bg"],[1,"timeshift-disk-bar-fill"],[1,"timeshift-disk-details"],[1,"timeshift-label"],[1,"timeshift-value"],[1,"schedule-chip"],[1,"log-path"],[1,"log-size"]],template:function(t,n){t&1&&(l(0,"div",0)(1,"h2",1)(2,"mat-icon"),u(3,"info"),c(),u(4," System Info "),c(),l(5,"mat-dialog-content"),S(6,A0,1,0,"mat-progress-bar",2)(7,I0,2,1,"p",3)(8,j0,30,6),c(),l(9,"mat-dialog-actions",4)(10,"button",5),I("click",function(){return n.close()}),u(11,"OK"),c()()()),t&2&&(d(6),E(n.loading()?6:n.error()?7:n.info()?8:-1))},dependencies:[Ge,dt,ht,Ci,nn,an,on,Vi,qn,hs,yc,Wt,$t,ho,ha,ch,Ws],styles:[".dialog-container[_ngcontent-%COMP%]{min-width:480px}.dialog-error[_ngcontent-%COMP%]{color:#f44336;padding:8px 0}.info-section[_ngcontent-%COMP%]{margin-bottom:8px}.info-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 8px;font-size:14px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.info-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:4px 0}.info-row[_ngcontent-%COMP%] .info-label[_ngcontent-%COMP%]{color:#666;font-size:14px}.info-row[_ngcontent-%COMP%] .info-value[_ngcontent-%COMP%]{font-family:monospace;font-size:13px;color:#333}.section-divider[_ngcontent-%COMP%]{margin:12px 0}.disk-row[_ngcontent-%COMP%]{margin-bottom:12px}.disk-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;margin-bottom:4px}.disk-header[_ngcontent-%COMP%] .disk-device[_ngcontent-%COMP%]{font-family:monospace;font-size:13px}.disk-header[_ngcontent-%COMP%] .disk-mount[_ngcontent-%COMP%]{font-size:13px;color:#666}.disk-bar-bg[_ngcontent-%COMP%]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:2px}.disk-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:3px}.disk-details[_ngcontent-%COMP%]{display:flex;justify-content:space-between;font-size:12px;color:#666}.info-card[_ngcontent-%COMP%]{background:#f5f5f5;border-radius:8px;padding:12px}.info-card-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.info-card-header[_ngcontent-%COMP%] .hostname-chip[_ngcontent-%COMP%]{font-family:monospace;background:#e8eaf6!important;color:#303f9f!important}.info-card-header[_ngcontent-%COMP%] .distro-chip[_ngcontent-%COMP%], .info-card-header[_ngcontent-%COMP%] .mode-chip[_ngcontent-%COMP%]{font-weight:600;background:#e3f2fd!important;color:#1976d2!important}.info-card-header[_ngcontent-%COMP%] .device-chip[_ngcontent-%COMP%]{font-family:monospace;background:#e8eaf6!important;color:#303f9f!important}.os-uptime[_ngcontent-%COMP%], .timeshift-snapshots[_ngcontent-%COMP%]{font-size:13px;color:#666;white-space:nowrap}.timeshift-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:4px 0;margin-bottom:6px}.timeshift-row[_ngcontent-%COMP%] .timeshift-label[_ngcontent-%COMP%]{color:#666;font-size:13px}.timeshift-row[_ngcontent-%COMP%] .timeshift-value[_ngcontent-%COMP%]{font-size:13px;color:#333}.timeshift-disk-bar-bg[_ngcontent-%COMP%]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:4px}.timeshift-disk-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:3px}.timeshift-disk-details[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#666}.timeshift-disk-details[_ngcontent-%COMP%] .schedule-chip[_ngcontent-%COMP%]{font-size:11px;background:#fff3e0!important;color:#e65100!important}.log-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:4px 0}.log-row[_ngcontent-%COMP%] .log-path[_ngcontent-%COMP%]{font-family:monospace;font-size:13px}.log-row[_ngcontent-%COMP%] .log-size[_ngcontent-%COMP%]{font-family:monospace;font-size:13px;color:#333}"]})}}return i})();var pp=(()=>{class i{constructor(){this.systemInfo=jn.required(),this.systemService=s(vs),this.dialog=s(_o)}openSystemInfo(){this.dialog.open(hp,{disableClose:!1})}reboot(){return ve(this,null,function*(){confirm("Reboot the server?")&&(yield this.systemService.reboot())})}shutdown(){return ve(this,null,function*(){confirm("Shutdown the server?")&&(yield this.systemService.shutdown())})}formatBytes(e){let t=e/1073741824;return`${Math.ceil(t)} GB`}ceilCpu(e){return Math.ceil(e)}colorForUsage(e){return e<40?"#4caf50":e<75?"#ff9800":"#f44336"}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-system-bar"]],inputs:{systemInfo:[1,"systemInfo"]},decls:48,vars:16,consts:[["menu","matMenu"],[1,"system-bar"],[1,"system-panel"],[1,"panel-body"],[1,"panel-icon"],[1,"panel-content"],[1,"panel-header"],[1,"panel-label"],[1,"panel-value"],[1,"bar-bg"],[1,"bar-fill"],[1,"server-controls"],["mat-icon-button","","color","warn","title","Server actions",3,"matMenuTriggerFor"],["yPosition","below"],["mat-menu-item","",3,"click"]],template:function(t,n){if(t&1&&(l(0,"div",1)(1,"mat-card",2)(2,"mat-card-content")(3,"div",3)(4,"mat-icon",4),u(5,"dynamic_feed"),c(),l(6,"div",5)(7,"div",6)(8,"span",7),u(9,"CPU"),c(),l(10,"span",8),u(11),c()(),l(12,"div",9),v(13,"div",10),c()()()()(),l(14,"mat-card",2)(15,"mat-card-content")(16,"div",3)(17,"mat-icon",4),u(18,"memory"),c(),l(19,"div",5)(20,"div",6)(21,"span",7),u(22,"RAM"),c(),l(23,"span",8),u(24),c()(),l(25,"div",9),v(26,"div",10),c()()()()(),l(27,"div",11)(28,"button",12)(29,"mat-icon"),u(30,"more_vert"),c()(),l(31,"mat-menu",13,0)(33,"button",14),I("click",function(){return n.openSystemInfo()}),l(34,"mat-icon"),u(35,"info"),c(),l(36,"span"),u(37,"System info"),c()(),l(38,"button",14),I("click",function(){return n.reboot()}),l(39,"mat-icon"),u(40,"restart_alt"),c(),l(41,"span"),u(42,"Reboot server"),c()(),l(43,"button",14),I("click",function(){return n.shutdown()}),l(44,"mat-icon"),u(45,"power_settings_new"),c(),l(46,"span"),u(47,"Shutdown server"),c()()()()()),t&2){let a=Ye(32);d(10),Ne("color",n.colorForUsage(n.systemInfo().cpuUsage)),d(),be(" ",n.ceilCpu(n.systemInfo().cpuUsage),"% "),d(2),Ne("width",n.systemInfo().cpuUsage,"%")("background",n.colorForUsage(n.systemInfo().cpuUsage)),d(10),Ne("color",n.colorForUsage(n.systemInfo().memoryPercent)),d(),mn(" ",n.formatBytes(n.systemInfo().memoryUsed)," / ",n.formatBytes(n.systemInfo().memoryTotal)," "),d(2),Ne("width",n.systemInfo().memoryPercent,"%")("background",n.colorForUsage(n.systemInfo().memoryPercent)),d(2),w("matMenuTriggerFor",a)}},dependencies:[Ge,Hi,zi,ji,Wt,$t,dt,Mn,as,rn,In,os,Ci],styles:[".system-bar[_ngcontent-%COMP%]{display:flex;gap:16px;margin-bottom:16px;align-items:stretch}.system-panel[_ngcontent-%COMP%]{flex:1}.server-controls[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.panel-body[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.panel-icon[_ngcontent-%COMP%]{color:#757575;font-size:24px;width:24px;height:24px}.panel-content[_ngcontent-%COMP%]{flex:1;min-width:0}.panel-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.panel-label[_ngcontent-%COMP%]{font-weight:500;font-size:.85rem;color:#555;text-transform:uppercase;letter-spacing:.5px}.panel-value[_ngcontent-%COMP%]{font-weight:500;font-size:.9rem;white-space:nowrap}.bar-bg[_ngcontent-%COMP%]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:3px;transition:width .4s ease,background .4s ease}"]})}}return i})();function H0(i,o){if(i&1&&(l(0,"div",8)(1,"mat-icon",10),u(2,"warning"),c(),u(3),c()),i&2){let e=C(2);d(3),be(" ",e.loginError()," ")}}function U0(i,o){if(i&1){let e=Ke();l(0,"div",0)(1,"mat-card",1)(2,"mat-card-content")(3,"div",2)(4,"mat-icon",3),u(5,"lock"),c(),l(6,"h2"),u(7,"Authentication Required"),c(),l(8,"p",4),u(9,"Enter your system password to continue"),c()(),l(10,"form",5),I("submit",function(n){return De(e),C().onLogin(),ke(n.preventDefault())}),l(11,"mat-form-field",6)(12,"mat-label"),u(13,"Password"),c(),l(14,"input",7),I("input",function(n){De(e);let a=C();return ke(a.loginPassword.set(n.target.value))}),c()(),S(15,H0,4,1,"div",8),l(16,"button",9),u(17,"Sign In"),c()()()()()}if(i&2){let e=C();d(14),w("value",e.loginPassword()),d(),E(e.loginError()?15:-1)}}function G0(i,o){i&1&&v(0,"mat-progress-bar",11)}function $0(i,o){if(i&1&&(l(0,"mat-card",14)(1,"mat-card-content")(2,"mat-icon",18),u(3," error_outline "),c(),l(4,"p"),u(5),c(),l(6,"p",4),u(7,"Make sure the backend is running on port 4242."),c()()()),i&2){let e=C(2);d(5),Z(e.error())}}function W0(i,o){i&1&&(l(0,"mat-card",19)(1,"mat-card-content")(2,"p"),u(3,"No GPUs detected."),c(),l(4,"p",4),u(5,"Ensure nvidia-smi or rocm-smi is available on this system."),c()()())}function q0(i,o){if(i&1&&v(0,"app-system-bar",20)(1,"app-gpu-table",21),i&2){let e=C(3);w("systemInfo",e.systemInfo()),d(),w("gpus",e.gpus())}}function K0(i,o){if(i&1&&(S(0,W0,6,0,"mat-card",19)(1,q0,2,2),v(2,"app-services")),i&2){let e=C(2);E(e.hasGpus()?1:0)}}function Y0(i,o){if(i&1){let e=Ke();S(0,G0,1,0,"mat-progress-bar",11),l(1,"div",12)(2,"div",13),S(3,$0,8,1,"mat-card",14)(4,K0,3,1),c(),l(5,"div",15),I("mousedown",function(n){De(e);let a=C();return ke(a.startDrag(n))}),v(6,"span",16),c(),l(7,"div",17),v(8,"app-journal-panel"),c()()}if(i&2){let e=C();E(e.loading()?0:-1),d(),f("dragging",e.isDragging()),d(2),E(e.error()?3:4),d(4),Ne("width",e.sidebarWidth(),"px")}}var fp=100,gp=1600,_p=(()=>{class i{ngOnInit(){this.authService.authState.subscribe(t=>{this.isAuthenticated.set(t),t&&(this.loginError.set(null),this.loginPassword.set(""))});let e=localStorage.getItem("journal-sidebar-width");if(e){let t=parseInt(e,10);t>=fp&&t<=gp&&this.sidebarWidth.set(t)}}ngOnDestroy(){}onLogin(){return ve(this,null,function*(){this.loginError.set(null),(yield this.authService.login(this.loginPassword()))?(this.loading.set(!0),this.initGpus()):this.loginError.set("Invalid password")})}startDrag(e){e.preventDefault(),this.dragOffsetX=e.clientX,this.dragStartWidth=this.sidebarWidth(),this.isDragging.set(!0)}onDrag(e){if(!this.isDragging())return;let t=this.dragOffsetX-e.clientX,n=this.dragStartWidth+t;n=Math.max(fp,Math.min(gp,n)),this.sidebarWidth.set(n)}onDragEnd(){this.isDragging()&&(localStorage.setItem("journal-sidebar-width",String(this.sidebarWidth())),this.isDragging.set(!1))}constructor(){this.gpuService=s(ju),this.authService=s(cr),this.gpus=N([]),this.systemInfo=N({cpuUsage:0,memoryTotal:0,memoryUsed:0,memoryPercent:0}),this.loading=N(!0),this.error=N(null),this.hasGpus=K(()=>this.gpus().length>0),this.isAuthenticated=N(this.authService.isAuthenticated()),this.loginPassword=N(""),this.loginError=N(null),this.sidebarWidth=N(420),this.isDragging=N(!1),this.dragOffsetX=0,this.dragStartWidth=420,this.isAuthenticated()&&this.initGpus()}initGpus(e=0){this.gpuService.fetchGpus().subscribe({next:t=>{if(t.length===0){e<3?setTimeout(()=>this.initGpus(e+1),5e3):this.loading.set(!1);return}let n=t.map(a=>Me(B({},a),{key:a.pciBusId,usage:0,temperature:0,vramUsed:0}));this.gpus.set(n),this.loading.set(!1),this.error.set(null),this.gpuService.watchStatus().subscribe({next:a=>{this.systemInfo.set(a.system),this.mergeUsage(t,a.gpus)},error:a=>{console.error("[AppComponent] status poll error:",a)}})},error:t=>{console.error("[AppComponent] static fetch error:",t),this.error.set(`Failed to fetch GPU data: ${t.message}`),this.loading.set(!1)}})}mergeUsage(e,t){let n=new Map;for(let a of t)n.set(a.key,a);this.gpus.set(e.map(a=>{let r=n.get(a.pciBusId);return Me(B({},a),{key:a.pciBusId,usage:r?.usage??0,temperature:r?.temperature??0,vramUsed:r?.vramUsed??0})}))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-root"]],hostBindings:function(t,n){t&1&&I("mousemove",function(r){return n.onDrag(r)},Ms)("mouseup",function(){return n.onDragEnd()},Ms)},decls:2,vars:1,consts:[[1,"login-container"],[1,"login-card"],[1,"login-header"],[1,"login-icon"],[1,"mat-body-2",2,"color","#999"],[1,"login-form",3,"submit"],["appearance","outline",1,"full-width"],["matInput","","type","password","autofocus","",3,"input","value"],[1,"login-error"],["mat-raised-button","","color","primary","type","submit",1,"login-btn"],[2,"font-size","20px","vertical-align","middle"],["mode","query","color","primary"],[1,"layout"],[1,"main-content"],[1,"error-card"],[1,"splitter",3,"mousedown"],[1,"splitter-line"],[1,"journal-sidebar"],[2,"color","#f44336","font-size","48px","float","left","margin-right","16px"],[1,"empty-card"],[3,"systemInfo"],[3,"gpus"]],template:function(t,n){t&1&&S(0,U0,18,2,"div",0)(1,Y0,9,6),t&2&&E(n.isAuthenticated()?1:0)},dependencies:[Ge,Vi,qn,Hi,zi,ji,_i,gi,It,Ut,Tt,dt,ht,Wt,$t,mh,mp,up,pp],styles:[".spacer[_ngcontent-%COMP%]{flex:1 1 auto}.login-container[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 56px);padding:24px;background:#f5f5f5}.login-card[_ngcontent-%COMP%]{width:100%;max-width:400px}.login-header[_ngcontent-%COMP%]{text-align:center;margin-bottom:24px}.login-header[_ngcontent-%COMP%] .login-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;line-height:48px;background:#e3f2fd;border-radius:50%;padding:8px;color:#1976d2}.login-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:16px 0 4px;font-size:22px;font-weight:500}.login-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.login-error[_ngcontent-%COMP%]{color:#d32f2f;font-size:14px;text-align:center;padding:8px;background:#ffebee;border-radius:4px}.login-btn[_ngcontent-%COMP%]{width:100%;margin-top:8px}.full-width[_ngcontent-%COMP%]{width:100%}.layout[_ngcontent-%COMP%]{display:flex;height:100%;overflow:hidden}.layout.dragging[_ngcontent-%COMP%]{user-select:none;-webkit-user-select:none}.main-content[_ngcontent-%COMP%]{flex:1;min-width:0;overflow-y:auto;padding:24px 8px 24px 24px;max-width:100%}.splitter[_ngcontent-%COMP%]{width:8px;flex-shrink:0;cursor:col-resize;display:flex;align-items:center;justify-content:center;background:transparent;transition:background .15s}.splitter[_ngcontent-%COMP%]:hover{background:#0000000a}.splitter[_ngcontent-%COMP%] .splitter-line[_ngcontent-%COMP%]{width:2px;height:32px;border-radius:1px;background:#bdbdbd;transition:background .15s,width .15s}.splitter[_ngcontent-%COMP%]:hover .splitter-line[_ngcontent-%COMP%]{background:#757575;width:3px}.journal-sidebar[_ngcontent-%COMP%]{flex-shrink:0;overflow:hidden;padding:24px 24px 24px 8px}.error-card[_ngcontent-%COMP%], .empty-card[_ngcontent-%COMP%]{margin-top:32px;max-width:600px;margin-left:auto;margin-right:auto}[_nghost-%COMP%] mat-card-content{padding-top:10px!important;padding-bottom:10px!important}app-services[_ngcontent-%COMP%]{display:block;margin-top:24px}"]})}}return i})();tl(_p,im).catch(i=>console.error(i));
|
|
5583
|
+
`],encapsulation:2})}return i})();var lp=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=z({type:i});static \u0275inj=V({imports:[Ko,Et,Q,li]})}return i})();function sn(i,o){for(let e of i){let t=e.indexOf("=");if(t>0&&e.slice(0,t)===o)return e.slice(t+1);let n=e.indexOf(" ");if(n>0&&e.slice(0,n)===o)return e.slice(n+1).trim()}for(let e=0;e<i.length;e++)if(i[e]===o&&e+1<i.length)return i[e+1];return null}function Rn(i,o,e,t){for(let n of i){let a=n.split(/\s|=/)[0];if(a===o)return!0;if(a===e)return!1}return t}function Ge(i,o,e){let t=sn(i,o);return t!==null?t:e}function De(i,o,e){let t=sn(i,o);if(t!==null){let n=parseInt(t,10);return isNaN(n)?e:n}return e}function st(i,o,e){let t=sn(i,o);if(t!==null){let n=parseFloat(t);return isNaN(n)?e:n}return e}var Fy=(i,o)=>o.path;function Py(i,o){i&1&&(l(0,"span",7),u(1,"(dir)"),c())}function Ny(i,o){if(i&1&&(l(0,"mat-option",5)(1,"span",6),u(2),c(),S(3,Py,2,0,"span",7),c()),i&2){let e=o.$implicit;w("value",e.path),d(2),Z(e.path),d(),E(e.isDir?3:-1)}}var cp=(()=>{class i{constructor(){this.fb=s(oo),this.service=s(Zt),this.label="Path",this.placeholder="/path/to/file",this.required=!1,this.fieldClass="",this.existingPaths=[],this.onChange=e=>{},this.onTouched=()=>{},this._subscription=null,this.suggestions=N([]),this.innerForm=this.fb.group({value:[""]})}writeValue(e){let t=(e??"").toString();this.innerForm.patchValue({value:t},{emitEvent:!1})}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){e?this.innerForm.disable():this.innerForm.enable()}ngOnInit(){this._subscription=this.innerForm.get("value").valueChanges.subscribe(e=>{this.onChange(e)}),this._subscription.add(this.innerForm.get("value").valueChanges.pipe(ei(200),Fi(),We(e=>{let t=(e??"").trim();return t?this.service.getLlamaAutocomplete("path",t).pipe(hi(()=>be([]))):be(this.emptySuggestions)})).subscribe(e=>{this.suggestions.set(e)}))}get emptySuggestions(){return this.existingPaths.filter(Boolean).map(e=>({path:e,source:"existing config"}))}ngOnDestroy(){this._subscription?.unsubscribe()}onSelect(e){this.innerForm.patchValue({value:e},{emitEvent:!1}),this.onChange(e)}onBlur(){this.onTouched()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-file-autocomplete"]],inputs:{label:"label",placeholder:"placeholder",required:"required",fieldClass:"fieldClass",existingPaths:"existingPaths"},features:[te([{provide:_i,useExisting:lt(()=>i),multi:!0}])],decls:9,vars:7,consts:[["auto","matAutocomplete"],[3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","formControlName","value",3,"blur","placeholder","required","matAutocomplete"],[3,"optionSelected"],[3,"value"],[1,"file-path"],[1,"file-dir"]],template:function(t,n){if(t&1&&(Nt(0,1),l(1,"mat-form-field",2)(2,"input",3),I("blur",function(){return n.onBlur()}),c(),D(),l(3,"mat-label"),u(4),c()(),l(5,"mat-autocomplete",4,0),I("optionSelected",function(r){return n.onSelect(r.option.value)}),Le(7,Ny,4,3,"mat-option",5,Fy),c(),Lt()),t&2){let a=Ye(6);w("formGroup",n.innerForm),d(),Qe(n.fieldClass),d(),w("placeholder",n.placeholder)("required",n.required)("matAutocomplete",a),k(),d(2),Z(n.label),d(3),Be(n.suggestions())}},dependencies:[$e,ro,Yi,Xi,no,Tr,ri,Dn,Ct,yt,Ut,$t,Gt,wo,xo,Mt,Tn],styles:[".full-width[_ngcontent-%COMP%]{width:100%}.file-path[_ngcontent-%COMP%]{font-family:monospace}.file-dir[_ngcontent-%COMP%]{margin-left:4px;color:#1976d2;font-size:11px;font-weight:500}.file-source[_ngcontent-%COMP%]{margin-left:8px;opacity:.6;font-size:12px}"]})}}return i})();function Da(i){i||(i=s(ni));let o=new ft(e=>{if(i.destroyed){e.next();return}return i.onDestroy(e.next.bind(e))});return e=>e.pipe(ne(o))}function gs(i,o){let t=!o?.manualCleanup?o?.injector?.get(ni)??s(ni):null,n=Ly(o?.equal),a;o?.requireSync?a=N({kind:0},{equal:n}):a=N({kind:1,value:o?.initialValue},{equal:n});let r,m=i.subscribe({next:h=>a.set({kind:1,value:h}),error:h=>{a.set({kind:2,error:h}),r?.()},complete:()=>{r?.()}});if(o?.requireSync&&a().kind===0)throw new oe(601,!1);return r=t?.onDestroy(m.unsubscribe.bind(m)),K(()=>{let h=a();switch(h.kind){case 1:return h.value;case 2:throw h.error;case 0:throw new oe(601,!1)}},{equal:o?.equal})}function Ly(i=Object.is){return(o,e)=>o.kind===1&&e.kind===1&&i(o.value,e.value)}function _s(i){if(typeof i=="number")return i;let o=i.trim();if(!o)return 0;let e=o.split(/\s*x\s*/i),t=1,n;if(e.length>=2){let h=e[0].trim();h&&(t=parseInt(h,10),(isNaN(t)||t<1)&&(t=1)),n=e.slice(1).join("").trim()}else n=o;let a=n.match(/^(\d+)\s*([kKmM])?$/);if(!a)return 0;let r=parseInt(a[1],10),m=a[2];return m&&(m.toLowerCase()==="k"?r*=1024:m.toLowerCase()==="m"&&(r*=1024*1024)),t*r}var kc=[8192,16384,32768,65536,98304,131072,196608,262144,524288,1048576];function dp(i){if(i<=0)return"0";if(i>=1048576){let o=i/1048576;return`${o%1===0?o:o.toFixed(1)}M`}if(i>=1024){let o=i/1024;return`${o%1===0?o:o.toFixed(1)}K`}return`${i}`}function bs(i,o){if(i<=0)return"";if(o>1&&i%o===0){let e=i/o;if(kc.includes(e))return`${o} x ${dp(e)}`}return dp(i)}var By=(i,o)=>o.command,Sc=(i,o)=>o.path,Vy=(i,o)=>o.label;function zy(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function jy(i,o){i&1&&(l(0,"mat-error"),u(1,"Starts with letter, alphanumeric + hyphens/underscores, max 128 chars"),c())}function Hy(i,o){i&1&&(l(0,"mat-error"),u(1,"Required"),c())}function Uy(i,o){if(i&1&&(l(0,"mat-option",8)(1,"span",98),u(2),c(),l(3,"span",99),u(4),c()()),i&2){let e=o.$implicit;w("value",e.command),d(2),Z(e.command),d(2),ye("(",e.from,")")}}function Gy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e.path),d(),Z(e.path)}}function $y(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e.label),d(),Z(e.label)}}function Wy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function qy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function Ky(i,o){if(i&1&&(l(0,"div",26),u(1,"YaRN Parameters"),c(),l(2,"div",13)(3,"mat-form-field",18),v(4,"input",100),D(),l(5,"mat-label"),u(6,"YaRN Orig Ctx"),c()(),l(7,"mat-form-field",18),v(8,"input",101),D(),l(9,"mat-label"),u(10,"Extrapolation Mix"),c()(),l(11,"mat-form-field",18),v(12,"input",102),D(),l(13,"mat-label"),u(14,"Attn Factor"),c()(),l(15,"mat-form-field",18),v(16,"input",103),D(),l(17,"mat-label"),u(18,"Beta Slow"),c()(),l(19,"mat-form-field",18),v(20,"input",104),D(),l(21,"mat-label"),u(22,"Beta Fast"),c()()()),i&2){let e=C();d(3),f("changed",e.isControlChanged("yarnOrigCtx")),d(),k(),d(3),f("changed",e.isControlChanged("yarnExtFactor")),d(),k(),d(3),f("changed",e.isControlChanged("yarnAttnFactor")),d(),k(),d(3),f("changed",e.isControlChanged("yarnBetaSlow")),d(),k(),d(3),f("changed",e.isControlChanged("yarnBetaFast")),d(),k()}}function Yy(i,o){i&1&&(l(0,"div",78),u(1," draft-mtp generates drafts with the model's built-in MTP head \u2014 no separate draft model "),c())}function Xy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e.path),d(),Z(e.path)}}function Zy(i,o){if(i&1&&(v(0,"app-file-autocomplete",107),D(),l(1,"div",13)(2,"mat-form-field",18)(3,"mat-select",108),Le(4,Xy,2,2,"mat-option",8,Sc),c(),D(),l(6,"mat-label"),u(7,"Draft Device (multi-select)"),c()()()),i&2){let e=C(2);w("existingPaths",e.existingDraftModelPaths())("fieldClass",e.isControlChanged("modelDraft")?"changed":""),k(),d(2),f("changed",e.isControlChanged("specDraftDevice")),d(),k(),d(),Be(e.availableDevices())}}function Qy(i,o){if(i&1&&(l(0,"mat-form-field",18),v(1,"input",109),D(),l(2,"mat-label"),u(3,"Draft GPU Layers"),c()()),i&2){let e=C(2);f("changed",e.isControlChanged("nGpuLayersDraft")),d(),k()}}function Jy(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function e0(i,o){if(i&1&&(l(0,"mat-option",8),u(1),c()),i&2){let e=o.$implicit;w("value",e),d(),Z(e)}}function t0(i,o){if(i&1&&(l(0,"div",13)(1,"mat-form-field",18)(2,"mat-select",110),Le(3,Jy,2,2,"mat-option",8,wi),c(),D(),l(5,"mat-label"),u(6,"Draft Cache Type K"),c()(),l(7,"mat-form-field",18)(8,"mat-select",111),Le(9,e0,2,2,"mat-option",8,wi),c(),D(),l(11,"mat-label"),u(12,"Draft Cache Type V"),c()()()),i&2){let e=C(2);d(),f("changed",e.isControlChanged("specDraftCacheTypeK")),d(),k(),d(),Be(e.kvCacheTypes),d(4),f("changed",e.isControlChanged("specDraftCacheTypeV")),d(),k(),d(),Be(e.kvCacheTypes)}}function i0(i,o){if(i&1&&(l(0,"div",26),u(1,"Draft Model"),c(),S(2,Zy,8,4),l(3,"div",13)(4,"mat-form-field",18),v(5,"input",105),D(),l(6,"mat-label"),u(7,"Draft N Max"),c()(),S(8,Qy,4,2,"mat-form-field",106),c(),S(9,t0,13,4,"div",13)),i&2){let e=C();d(2),E(e.showDraftModelFields()?2:-1),d(2),f("changed",e.isControlChanged("specDraftNMax")),d(),k(),d(3),E(e.showDraftModelFields()?8:-1),d(),E(e.showDraftModelFields()?9:-1)}}function n0(i,o){if(i&1&&(l(0,"div",26),u(1,"Ngram Mod Parameters"),c(),l(2,"div",13)(3,"mat-form-field",18),v(4,"input",112),D(),l(5,"mat-label"),u(6,"Ngram Mod N Min"),c()(),l(7,"mat-form-field",18),v(8,"input",113),D(),l(9,"mat-label"),u(10,"Ngram Mod N Max"),c()(),l(11,"mat-form-field",18),v(12,"input",114),D(),l(13,"mat-label"),u(14,"Ngram Mod Match"),c()()()),i&2){let e=C();d(3),f("changed",e.isControlChanged("specNgramModNMin")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramModNMax")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramModNMatch")),d(),k()}}function o0(i,o){if(i&1&&(l(0,"div",26),u(1,"Ngram Simple Parameters"),c(),l(2,"div",13)(3,"mat-form-field",18),v(4,"input",115),D(),l(5,"mat-label"),u(6,"Simple Size N"),c()(),l(7,"mat-form-field",18),v(8,"input",116),D(),l(9,"mat-label"),u(10,"Simple Size M"),c()(),l(11,"mat-form-field",18),v(12,"input",117),D(),l(13,"mat-label"),u(14,"Simple Min Hits"),c()()()),i&2){let e=C();d(3),f("changed",e.isControlChanged("specNgramSimpleSizeN")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramSimpleSizeM")),d(),k(),d(3),f("changed",e.isControlChanged("specNgramSimpleMinHits")),d(),k()}}function a0(i,o){if(i&1&&(l(0,"mat-option",8)(1,"span",98),u(2),c(),l(3,"span",99),u(4),c()()),i&2){let e=o.$implicit;w("value",e.path),d(2),Z(e.path),d(2),ye("(",e.source,")")}}var p={host:"127.0.0.1",port:8080,threads:-1,flashAttn:"auto",fit:"on",parallel:-1,alias:"",nPredict:-1,contextShift:"off",contBatching:"on",model:"",mmproj:"",nGpuLayers:"auto",device:[],tensorSplit:"",splitMode:"layer",mainGpu:0,fitTarget:1024,fitCtx:4096,mlock:"off",mmap:"on",cpuMoe:"off",nCpuMoe:0,ctxSize:0,batchSize:2048,ubatchSize:512,cacheTypeK:"f16",cacheTypeV:"f16",kvOffload:"on",cacheRam:8192,swaFull:"off",ropeScaling:"none",ropeScale:1,ropeFreqBase:0,ropeFreqScale:0,yarnOrigCtx:0,yarnExtFactor:-1,yarnAttnFactor:-1,yarnBetaSlow:-1,yarnBetaFast:-1,temperature:.8,seed:-1,topK:40,topP:.95,minP:.05,typicalP:1,repeatLastN:64,repeatPenalty:1,presencePenalty:0,frequencyPenalty:0,dryMultiplier:0,dryBase:1.75,mirostat:0,dynatempRange:0,modelDraft:"",specDraftDevice:[],specDraftNMax:3,nGpuLayersDraft:"auto",specDraftCacheTypeK:"f16",specDraftCacheTypeV:"f16",specType:"none",specNgramModNMin:48,specNgramModNMax:64,specNgramModNMatch:24,specNgramSimpleSizeN:12,specNgramSimpleSizeM:48,specNgramSimpleMinHits:1,lora:"",loraScaled:"",timeout:3600,threadsHttp:-1,metrics:"off",slots:"on",cachePrompt:"on",cacheReuse:0,reasoning:"auto",reasoningBudget:-1,reasoningFormat:"auto",apiKeyFile:""};function r0(i,o){let e=p[i];if(e===void 0)return!1;if(Array.isArray(o)||Array.isArray(e)){let t=Array.isArray(o)?o:[],n=Array.isArray(e)?e:[];return t.length!==n.length||t.some((a,r)=>a!==n[r])}return String(o)!==String(e)}var s0="^[a-zA-Z][a-zA-Z0-9_-]{0,127}$",l0=["f32","f16","bf16","q8_0","q4_0","q4_1","iq4_nl","q5_0","q5_1"],mp=(()=>{class i{constructor(){this.fb=s(oo),this.dialogRef=s(Xt),this.data=s(va),this.serviceService=s(Zt),this.cdr=s(ie),this.destroyRef=s(ni),this.isEdit=this.data.config!==null,this.isClone=this.data.clone===!0,this.kvCacheTypes=l0,this.allExistingCommands=K(()=>{let e=this.data.allConfigs??[],t=this.data.config?.name??null,n=new Set,a=[];for(let r of e)r.name!==t&&(n.has(r.command)||(n.add(r.command),a.push({command:r.command,from:r.name})));return a}),this._commandValue=N(this.data.config?.command??""),this.commandValue=this._commandValue.asReadonly(),this.filteredCommands=K(()=>{let e=this.commandValue()?.toLowerCase()??"";return this.allExistingCommands().filter(t=>t.command.toLowerCase().includes(e)||t.from.toLowerCase().includes(e))}),this.form=this.fb.group({name:[this.data.config?.name??"",{validators:[vt.required,vt.pattern(s0)]}],command:[this.data.config?.command??"",vt.required],host:[p.host],port:[p.port],threads:[p.threads],flashAttn:[p.flashAttn],fit:[p.fit],parallel:[p.parallel],alias:[p.alias],nPredict:[p.nPredict],contextShift:[p.contextShift],contBatching:[p.contBatching],model:[""],mmproj:[""],nGpuLayers:[p.nGpuLayers],device:[[]],tensorSplit:[""],splitMode:[p.splitMode],mainGpu:[p.mainGpu],fitTarget:[p.fitTarget],fitCtx:[p.fitCtx],mlock:[p.mlock],mmap:[p.mmap],cpuMoe:[p.cpuMoe],nCpuMoe:[p.nCpuMoe],ctxSize:[""],batchSize:[p.batchSize],ubatchSize:[p.ubatchSize],cacheTypeK:[p.cacheTypeK],cacheTypeV:[p.cacheTypeV],kvOffload:[p.kvOffload],cacheRam:[p.cacheRam],swaFull:[p.swaFull],ropeScaling:[p.ropeScaling],ropeScale:[p.ropeScale],ropeFreqBase:[p.ropeFreqBase],ropeFreqScale:[p.ropeFreqScale],yarnOrigCtx:[p.yarnOrigCtx],yarnExtFactor:[p.yarnExtFactor],yarnAttnFactor:[p.yarnAttnFactor],yarnBetaSlow:[p.yarnBetaSlow],yarnBetaFast:[p.yarnBetaFast],temperature:[p.temperature],seed:[p.seed],topK:[p.topK],topP:[p.topP],minP:[p.minP],typicalP:[p.typicalP],repeatLastN:[p.repeatLastN],repeatPenalty:[p.repeatPenalty],presencePenalty:[p.presencePenalty],frequencyPenalty:[p.frequencyPenalty],dryMultiplier:[p.dryMultiplier],dryBase:[p.dryBase],mirostat:[p.mirostat],dynatempRange:[p.dynatempRange],modelDraft:[""],specDraftDevice:[[]],specDraftNMax:[p.specDraftNMax],nGpuLayersDraft:[p.nGpuLayersDraft],specDraftCacheTypeK:[p.specDraftCacheTypeK],specDraftCacheTypeV:[p.specDraftCacheTypeV],specType:[p.specType],specNgramModNMin:[p.specNgramModNMin],specNgramModNMax:[p.specNgramModNMax],specNgramModNMatch:[p.specNgramModNMatch],specNgramSimpleSizeN:[p.specNgramSimpleSizeN],specNgramSimpleSizeM:[p.specNgramSimpleSizeM],specNgramSimpleMinHits:[p.specNgramSimpleMinHits],lora:[""],loraScaled:[""],timeout:[p.timeout],threadsHttp:[p.threadsHttp],metrics:[p.metrics],slots:[p.slots],cachePrompt:[p.cachePrompt],cacheReuse:[p.cacheReuse],reasoning:[p.reasoning],reasoningBudget:[p.reasoningBudget],reasoningFormat:[p.reasoningFormat],apiKeyFile:[""]}),this.availableDevices=K(()=>this.availableDevicesRaw()),this.availableDevicesRaw=gs(this.form.controls.command.valueChanges.pipe(Da(),Ie(this.form.controls.command.value),ei(300),Fi(),We(e=>{let t=(e??"").trim();return t?this.serviceService.getLlamaAutocomplete("device","",t).pipe(hi(()=>be([]))):this.serviceService.getLlamaAutocomplete("device","").pipe(hi(()=>be([])))})),{initialValue:[]}),this.filteredHosts=gs(this.form.controls.host.valueChanges.pipe(Da(),Ie(this.form.controls.host.value),ei(250),Fi(),We(e=>{let t=(e??"").trim();return t?this.serviceService.getLlamaAutocomplete("host",t).pipe(hi(()=>be([]))):be([])})),{initialValue:[]}),this.existingModelPaths=K(()=>this.extractConfigPaths("--model")),this.existingMmprojPaths=K(()=>this.extractConfigPaths("--mmproj")),this.existingApiKeyPaths=K(()=>this.extractConfigPaths("--api-key-file")),this.existingDraftModelPaths=K(()=>this.extractConfigPaths("--model-draft")),this.existingLoraPaths=K(()=>this.extractConfigPaths("--lora")),this.formValue=gs(this.form.valueChanges,{initialValue:this.form.value}),this.fitValue=K(()=>this.formValue()?.fit),this.splitModeValue=K(()=>this.formValue()?.splitMode),this.specTypeValue=K(()=>this.formValue()?.specType),this.ropeScalingValue=K(()=>this.formValue()?.ropeScaling),this.cpuMoeValue=K(()=>this.formValue()?.cpuMoe),this.cachePromptValue=K(()=>this.formValue()?.cachePrompt),this.reasoningValue=K(()=>this.formValue()?.reasoning),this.mirostatValue=K(()=>this.formValue()?.mirostat),this.hostValue=K(()=>this.formValue()?.host),this.isTensorSplitDisabled=K(()=>this.splitModeValue()==="none"),this.isFitTargetDisabled=K(()=>this.fitValue()==="off"),this.isCpuMoeLayersDisabled=K(()=>this.cpuMoeValue()==="on"),this.isCacheReuseDisabled=K(()=>this.cachePromptValue()==="off"),this.isReasoningParamsDisabled=K(()=>this.reasoningValue()==="off"),this.isMirostatEnabled=K(()=>(this.mirostatValue()??0)!==0),this.isRopeParamsDisabled=K(()=>this.ropeScalingValue()==="none"),this.isPortDisabled=K(()=>(this.hostValue()??"").trim().toLowerCase().endsWith(".sock")),this.showDraftParams=K(()=>(this.specTypeValue()??"").includes("draft")),this.showDraftModelFields=K(()=>{let e=this.specTypeValue()??"";return e.includes("draft")&&!e.includes("mtp")}),this.showNgramModParams=K(()=>(this.specTypeValue()??"").includes("ngram-mod")),this.showNgramSimpleParams=K(()=>(this.specTypeValue()??"").includes("ngram-simple")),this.showYarnParams=K(()=>this.ropeScalingValue()==="yarn"),this.parallelSlots=K(()=>{let e=this.formValue()?.parallel;return typeof e=="number"&&e>0?e:1}),this.ctxPresets=K(()=>{let e=this.parallelSlots();return kc.map(t=>({label:bs(e*t,e)}))}),this._flags=null}extractConfigPaths(e){let t=this.data.allConfigs??[],n=this.data.config?.name??null,a=new Set,r=[];for(let m of t){if(m.name===n||!m.flags)continue;let h=sn(m.flags,e);h&&!a.has(h)&&(a.add(h),r.push(h))}return r}isControlChanged(e){let t=this.form.get(e)?.value;return e==="ctxSize"?+_s(t)!==p.ctxSize:t!==void 0&&r0(e,t)}isSectionChanged(...e){return e.some(t=>this.isControlChanged(t))}onCtxSizeInput(e){let t=e.target.value,n=_s(t),a=bs(n,this.parallelSlots());this.form.get("ctxSize")?.setValue(a,{emitEvent:!1})}ngOnInit(){this.form.controls.command.valueChanges.pipe(Da(this.destroyRef)).subscribe(e=>this._commandValue.set(e)),this.data.config&&this.populateFormFromFlags(this.data.config.flags),this.form.valueChanges.pipe(Da(this.destroyRef)).subscribe(()=>{this.cdr.markForCheck()})}populateFormFromFlags(e){let t=this.form.controls;t.host.setValue(Ge(e,"--host",p.host)),t.port.setValue(De(e,"--port",p.port)),t.threads.setValue(De(e,"--threads",p.threads)),t.flashAttn.setValue(Ge(e,"--flash-attn",p.flashAttn)),t.fit.setValue(Ge(e,"--fit",p.fit)),t.parallel.setValue(De(e,"--parallel",p.parallel)),t.alias.setValue(Ge(e,"--alias","")),t.nPredict.setValue(De(e,"--n-predict",p.nPredict)),t.contextShift.setValue(Rn(e,"--context-shift","--no-context-shift",!1)?"on":"off"),t.contBatching.setValue(Rn(e,"--cont-batching","--no-cont-batching",!0)?"on":"off");let n=sn(e,"--device");t.device.setValue(n?n.split(",").map(h=>h.trim()).filter(Boolean):[]),t.tensorSplit.setValue(Ge(e,"--tensor-split","")),t.model.setValue(Ge(e,"--model","")),t.mmproj.setValue(Ge(e,"--mmproj","")),t.nGpuLayers.setValue(Ge(e,"--n-gpu-layers",p.nGpuLayers)),t.splitMode.setValue(Ge(e,"--split-mode",p.splitMode)),t.mainGpu.setValue(De(e,"--main-gpu",p.mainGpu)),t.fitTarget.setValue(De(e,"--fit-target",p.fitTarget)),t.fitCtx.setValue(De(e,"--fit-ctx",p.fitCtx)),t.mlock.setValue(e.includes("--mlock")?"on":"off"),t.mmap.setValue(Rn(e,"--mmap","--no-mmap",!0)?"on":"off"),t.cpuMoe.setValue(e.includes("--cpu-moe")?"on":"off"),t.nCpuMoe.setValue(De(e,"--n-cpu-moe",0));let a=De(e,"--ctx-size",p.ctxSize),r=typeof t.parallel.value=="number"&&t.parallel.value>0?t.parallel.value:1;t.ctxSize.setValue(bs(a,r)),t.batchSize.setValue(De(e,"--batch-size",p.batchSize)),t.ubatchSize.setValue(De(e,"--ubatch-size",p.ubatchSize)),t.cacheTypeK.setValue(Ge(e,"--cache-type-k",p.cacheTypeK)),t.cacheTypeV.setValue(Ge(e,"--cache-type-v",p.cacheTypeV)),t.kvOffload.setValue(Rn(e,"--kv-offload","--no-kv-offload",!0)?"on":"off"),t.cacheRam.setValue(De(e,"--cache-ram",p.cacheRam)),t.swaFull.setValue(e.includes("--swa-full")?"on":"off"),t.ropeScaling.setValue(Ge(e,"--rope-scaling",p.ropeScaling)),t.ropeScale.setValue(st(e,"--rope-scale",p.ropeScale)),t.ropeFreqBase.setValue(st(e,"--rope-freq-base",p.ropeFreqBase)),t.ropeFreqScale.setValue(st(e,"--rope-freq-scale",p.ropeFreqScale)),t.yarnOrigCtx.setValue(De(e,"--yarn-orig-ctx",p.yarnOrigCtx)),t.yarnExtFactor.setValue(st(e,"--yarn-ext-factor",p.yarnExtFactor)),t.yarnAttnFactor.setValue(st(e,"--yarn-attn-factor",p.yarnAttnFactor)),t.yarnBetaSlow.setValue(st(e,"--yarn-beta-slow",p.yarnBetaSlow)),t.yarnBetaFast.setValue(st(e,"--yarn-beta-fast",p.yarnBetaFast)),t.temperature.setValue(st(e,"--temperature",p.temperature)),t.seed.setValue(De(e,"--seed",p.seed)),t.topK.setValue(De(e,"--top-k",p.topK)),t.topP.setValue(st(e,"--top-p",p.topP)),t.minP.setValue(st(e,"--min-p",p.minP)),t.typicalP.setValue(st(e,"--typical",p.typicalP)),t.repeatLastN.setValue(De(e,"--repeat-last-n",p.repeatLastN)),t.repeatPenalty.setValue(st(e,"--repeat-penalty",p.repeatPenalty)),t.presencePenalty.setValue(st(e,"--presence-penalty",p.presencePenalty)),t.frequencyPenalty.setValue(st(e,"--frequency-penalty",p.frequencyPenalty)),t.dryMultiplier.setValue(st(e,"--dry-multiplier",p.dryMultiplier)),t.dryBase.setValue(st(e,"--dry-base",p.dryBase)),t.mirostat.setValue(De(e,"--mirostat",p.mirostat)),t.dynatempRange.setValue(st(e,"--dynatemp-range",p.dynatempRange)),t.modelDraft.setValue(Ge(e,"--model-draft",""));let m=sn(e,"--spec-draft-device")??sn(e,"--device-draft");t.specDraftDevice.setValue(m?m.split(",").map(h=>h.trim()).filter(Boolean):[]),t.specDraftNMax.setValue(De(e,"--spec-draft-n-max",p.specDraftNMax)),t.nGpuLayersDraft.setValue(Ge(e,"--n-gpu-layers-draft",p.nGpuLayersDraft)),t.specDraftCacheTypeK.setValue(Ge(e,"--cache-type-k-draft",p.specDraftCacheTypeK)),t.specDraftCacheTypeV.setValue(Ge(e,"--cache-type-v-draft",p.specDraftCacheTypeV)),t.specType.setValue(Ge(e,"--spec-type",p.specType)),t.specNgramModNMin.setValue(De(e,"--spec-ngram-mod-n-min",p.specNgramModNMin)),t.specNgramModNMax.setValue(De(e,"--spec-ngram-mod-n-max",p.specNgramModNMax)),t.specNgramModNMatch.setValue(De(e,"--spec-ngram-mod-n-match",p.specNgramModNMatch)),t.specNgramSimpleSizeN.setValue(De(e,"--spec-ngram-simple-size-n",p.specNgramSimpleSizeN)),t.specNgramSimpleSizeM.setValue(De(e,"--spec-ngram-simple-size-m",p.specNgramSimpleSizeM)),t.specNgramSimpleMinHits.setValue(De(e,"--spec-ngram-simple-min-hits",p.specNgramSimpleMinHits)),t.lora.setValue(Ge(e,"--lora","")),t.loraScaled.setValue(Ge(e,"--lora-scaled","")),t.timeout.setValue(De(e,"--timeout",p.timeout)),t.threadsHttp.setValue(De(e,"--threads-http",p.threadsHttp)),t.metrics.setValue(e.includes("--metrics")?"on":"off"),t.slots.setValue(Rn(e,"--slots","--no-slots",!0)?"on":"off"),t.cachePrompt.setValue(Rn(e,"--cache-prompt","--no-cache-prompt",!0)?"on":"off"),t.cacheReuse.setValue(De(e,"--cache-reuse",p.cacheReuse)),t.reasoning.setValue(Ge(e,"--reasoning",p.reasoning)),t.reasoningBudget.setValue(De(e,"--reasoning-budget",p.reasoningBudget)),t.reasoningFormat.setValue(Ge(e,"--reasoning-format",p.reasoningFormat)),t.apiKeyFile.setValue(Ge(e,"--api-key-file",""))}addIf(e,t,n){String(t)!==String(n)&&this._flags.push(`${e} ${t}`)}addToggle(e,t,n,a){let r=e==="on";r!==a&&this._flags.push(r?t:n)}buildFlags(){this._flags=[];let e=this.form.controls;this.addIf("--host",e.host.value,p.host),this.addIf("--port",e.port.value,p.port),this.addIf("--threads",e.threads.value,p.threads),this.addIf("--flash-attn",e.flashAttn.value,p.flashAttn),this.addIf("--fit",e.fit.value,p.fit),this.addIf("--parallel",e.parallel.value,p.parallel),this.addIf("--alias",e.alias.value,p.alias),this.addIf("--n-predict",e.nPredict.value,p.nPredict),this.addToggle(e.contextShift.value,"--context-shift","--no-context-shift",!1),this.addToggle(e.contBatching.value,"--cont-batching","--no-cont-batching",!0);let t=e.device.value;t&&t.length>0&&this._flags.push(`--device ${t.join(",")}`),e.splitMode.value!=="none"&&this.addIf("--tensor-split",e.tensorSplit.value,p.tensorSplit),this.addIf("--model",e.model.value,p.model),this.addIf("--mmproj",e.mmproj.value,p.mmproj),this.addIf("--n-gpu-layers",e.nGpuLayers.value,p.nGpuLayers),this.addIf("--split-mode",e.splitMode.value,p.splitMode),this.addIf("--main-gpu",e.mainGpu.value,p.mainGpu),e.fit.value==="on"&&(this.addIf("--fit-target",e.fitTarget.value,p.fitTarget),this.addIf("--fit-ctx",e.fitCtx.value,p.fitCtx)),e.mlock.value==="on"&&this._flags.push("--mlock"),this.addToggle(e.mmap.value,"--mmap","--no-mmap",!0),e.cpuMoe.value==="on"&&this._flags.push("--cpu-moe"),e.cpuMoe.value!=="on"&&this.addIf("--n-cpu-moe",e.nCpuMoe.value,p.nCpuMoe),this.addIf("--ctx-size",+_s(e.ctxSize.value??""),p.ctxSize),this.addIf("--batch-size",e.batchSize.value,p.batchSize),this.addIf("--ubatch-size",e.ubatchSize.value,p.ubatchSize),this.addIf("--cache-type-k",e.cacheTypeK.value,p.cacheTypeK),this.addIf("--cache-type-v",e.cacheTypeV.value,p.cacheTypeV),this.addToggle(e.kvOffload.value,"--kv-offload","--no-kv-offload",!0),this.addIf("--cache-ram",e.cacheRam.value,p.cacheRam),e.swaFull.value==="on"&&this._flags.push("--swa-full");let n=e.ropeScaling.value;n&&n!==p.ropeScaling&&(this._flags.push(`--rope-scaling ${n}`),this.addIf("--rope-scale",e.ropeScale.value,p.ropeScale),this.addIf("--rope-freq-base",e.ropeFreqBase.value,p.ropeFreqBase),this.addIf("--rope-freq-scale",e.ropeFreqScale.value,p.ropeFreqScale),n==="yarn"&&(this.addIf("--yarn-orig-ctx",e.yarnOrigCtx.value,p.yarnOrigCtx),this.addIf("--yarn-ext-factor",e.yarnExtFactor.value,p.yarnExtFactor),this.addIf("--yarn-attn-factor",e.yarnAttnFactor.value,p.yarnAttnFactor),this.addIf("--yarn-beta-slow",e.yarnBetaSlow.value,p.yarnBetaSlow),this.addIf("--yarn-beta-fast",e.yarnBetaFast.value,p.yarnBetaFast))),this.addIf("--temperature",e.temperature.value,p.temperature),this.addIf("--seed",e.seed.value,p.seed),this.addIf("--top-k",e.topK.value,p.topK),this.addIf("--top-p",e.topP.value,p.topP),this.addIf("--min-p",e.minP.value,p.minP),this.addIf("--typical",e.typicalP.value,p.typicalP),this.addIf("--repeat-last-n",e.repeatLastN.value,p.repeatLastN),this.addIf("--repeat-penalty",e.repeatPenalty.value,p.repeatPenalty),this.addIf("--presence-penalty",e.presencePenalty.value,p.presencePenalty),this.addIf("--frequency-penalty",e.frequencyPenalty.value,p.frequencyPenalty),this.addIf("--dry-multiplier",e.dryMultiplier.value,p.dryMultiplier),this.addIf("--dry-base",e.dryBase.value,p.dryBase),this.addIf("--mirostat",e.mirostat.value,p.mirostat),this.addIf("--dynatemp-range",e.dynatempRange.value,p.dynatempRange);let a=e.specType.value;if(this.addIf("--spec-type",a,p.specType),a?.includes("draft")&&(this.addIf("--spec-draft-n-max",e.specDraftNMax.value,p.specDraftNMax),!a.includes("mtp"))){this.addIf("--model-draft",e.modelDraft.value,p.modelDraft);let m=e.specDraftDevice.value;m&&m.length>0&&this._flags.push(`--spec-draft-device ${m.join(",")}`),this.addIf("--n-gpu-layers-draft",e.nGpuLayersDraft.value,p.nGpuLayersDraft),this.addIf("--cache-type-k-draft",e.specDraftCacheTypeK.value,p.specDraftCacheTypeK),this.addIf("--cache-type-v-draft",e.specDraftCacheTypeV.value,p.specDraftCacheTypeV)}a?.includes("ngram")&&(this.addIf("--spec-ngram-mod-n-min",e.specNgramModNMin.value,p.specNgramModNMin),this.addIf("--spec-ngram-mod-n-max",e.specNgramModNMax.value,p.specNgramModNMax),this.addIf("--spec-ngram-mod-n-match",e.specNgramModNMatch.value,p.specNgramModNMatch),this.addIf("--spec-ngram-simple-size-n",e.specNgramSimpleSizeN.value,p.specNgramSimpleSizeN),this.addIf("--spec-ngram-simple-size-m",e.specNgramSimpleSizeM.value,p.specNgramSimpleSizeM),this.addIf("--spec-ngram-simple-min-hits",e.specNgramSimpleMinHits.value,p.specNgramSimpleMinHits)),this.addIf("--lora",e.lora.value,p.lora),this.addIf("--lora-scaled",e.loraScaled.value,p.loraScaled),this.addIf("--timeout",e.timeout.value,p.timeout),this.addIf("--threads-http",e.threadsHttp.value,p.threadsHttp),e.metrics.value==="on"&&this._flags.push("--metrics"),this.addToggle(e.slots.value,"--slots","--no-slots",!0),this.addToggle(e.cachePrompt.value,"--cache-prompt","--no-cache-prompt",!0),e.cachePrompt.value==="on"&&this.addIf("--cache-reuse",e.cacheReuse.value,p.cacheReuse),this.addIf("--reasoning",e.reasoning.value,p.reasoning),this.addIf("--reasoning-budget",e.reasoningBudget.value,p.reasoningBudget),this.addIf("--reasoning-format",e.reasoningFormat.value,p.reasoningFormat),this.addIf("--api-key-file",e.apiKeyFile.value,p.apiKeyFile);let r=this._flags;return this._flags=null,r}save(){if(this.form.invalid)return;let e={name:this.form.controls.name.value.trim(),type:"llama-server",command:this.form.controls.command.value.trim(),flags:this.buildFlags()};this.dialogRef.close(e)}cancel(){this.dialogRef.close()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-llama-server-dialog"]],decls:448,vars:180,consts:[["commandAuto","matAutocomplete"],["ctxSizeAuto","matAutocomplete"],["hostAuto","matAutocomplete"],["mat-dialog-title",""],[1,"llama-form",3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","formControlName","name","placeholder","e.g. llama-qwen3_6-27b-q8",3,"disabled"],["matInput","","formControlName","command","placeholder","/path/to/llama-server",3,"matAutocomplete"],[3,"value"],["expanded",""],["formControlName","model","label","Model Path","placeholder","/path/to/model.gguf",3,"existingPaths","fieldClass"],["formControlName","mmproj","label","MMProj Path","placeholder","/path/to/mmproj.gguf (optional)",3,"existingPaths","fieldClass"],["matInput","","formControlName","alias","type","text","matTooltip","Set model name aliases (comma-separated). Used by API for model identification"],[1,"form-row"],["appearance","outline",1,"form-col-40"],["matInput","","formControlName","nGpuLayers","type","number","matTooltip","Max number of layers to store in VRAM. 999 = all layers. Can use 'auto' or 'all'"],["appearance","outline",1,"form-col-60"],["formControlName","device","multiple","","placeholder","Select GPU devices","matTooltip","Comma-separated list of devices for offloading. Use --list-devices to see available"],["appearance","outline",1,"form-col"],["formControlName","splitMode","matTooltip","How to split model across multiple GPUs. layer=pipelined, row=parallelized, tensor=experimental"],["value","layer"],["value","row"],["value","tensor"],["value","none"],["matInput","","formControlName","tensorSplit","placeholder","10,10,10","matTooltip","Fraction of model to offload to each GPU (comma-separated proportions, e.g. 3,1)",3,"disabled"],["matInput","","formControlName","mainGpu","type","number","matTooltip","GPU index for model (with split-mode=none) or for intermediate results and KV (with split-mode=row)"],[1,"subsection-label"],["formControlName","fit","matTooltip","Adjust unset arguments to fit in device memory. Helps prevent OOM errors"],["value","on"],["value","off"],["matInput","","formControlName","fitTarget","type","number","matTooltip","Target margin per device in MiB for --fit option. Default: 1024",3,"disabled"],["matInput","","formControlName","fitCtx","type","number","matTooltip","Minimum context size that can be set by --fit option. Default: 4096",3,"disabled"],["formControlName","mlock","matTooltip","Force system to keep model in RAM rather than swapping or compressing"],["formControlName","mmap","matTooltip","Memory-map model. If disabled: slower load but may reduce pageouts if not using mlock"],["formControlName","cpuMoe","matTooltip","Keep all Mixture of Experts (MoE) weights in CPU memory"],["matInput","","formControlName","nCpuMoe","type","number","matTooltip","Keep MoE weights of first N layers in CPU. 0 = disabled",3,"disabled"],["matInput","","formControlName","ctxSize","type","text","placeholder","e.g. 8K, 3x16K, 20000","matTooltip","Context size. Supports: 20000, 20K, 3x20K. 0 = from model metadata",3,"blur","keyup.enter","matAutocomplete"],["matInput","","formControlName","batchSize","type","number","matTooltip","Logical maximum batch size for processing. Default: 2048"],["matInput","","formControlName","ubatchSize","type","number","matTooltip","Physical maximum batch size. Default: 512"],["formControlName","cacheTypeK","matTooltip","KV cache data type for K. Options: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1"],["formControlName","cacheTypeV","matTooltip","KV cache data type for V. Options: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1"],["formControlName","kvOffload","matTooltip","Enable KV cache offloading to GPU. Reduces CPU memory usage"],["matInput","","formControlName","cacheRam","type","number","matTooltip","Maximum prompt cache size in MiB. -1 = no limit, 0 = disable. Default: 8192"],["formControlName","swaFull","matTooltip","Use full-size SWA (Sliding Window Attention) cache instead of compressed"],["formControlName","ropeScaling","matTooltip","RoPE frequency scaling method. linear or yarn for extended context"],["value","linear"],["value","yarn"],["matInput","","formControlName","ropeScale","type","number","matTooltip","RoPE context scaling factor. Expands context by factor of N",3,"disabled"],["matInput","","formControlName","ropeFreqBase","type","number","matTooltip","RoPE base frequency for NTK-aware scaling. 0 = loaded from model",3,"disabled"],["matInput","","formControlName","ropeFreqScale","type","number","matTooltip","RoPE frequency scaling factor. Expands context by factor of 1/N. 0 = from model",3,"disabled"],["matInput","","formControlName","threads","type","number","matTooltip","Number of CPU threads to use during generation. -1 = auto-detect"],["matInput","","formControlName","parallel","type","number","matTooltip","Number of server slots for parallel requests. -1 = auto"],["matInput","","formControlName","nPredict","type","number","matTooltip","Maximum number of tokens to predict. -1 = infinity (unlimited generation)"],["formControlName","flashAttn","matTooltip","Enable Flash Attention for faster inference with lower VRAM usage"],["value","auto"],["formControlName","contBatching","matTooltip","Enable continuous (dynamic) batching for better throughput with multiple requests"],["formControlName","contextShift","matTooltip","Enable context shift on infinite text generation. Shifts context window when full"],["matInput","","formControlName","temperature","type","number","matTooltip","Temperature for sampling. Higher = more random, lower = more deterministic. Default: 0.8"],["matInput","","formControlName","seed","type","number","matTooltip","RNG seed for reproducibility. -1 = random seed"],["matInput","","formControlName","topK","type","number","matTooltip","Top-K sampling: limit to K most likely tokens. 0 = disabled. Default: 40",3,"disabled"],["matInput","","formControlName","topP","type","number","matTooltip","Top-P (nucleus) sampling: cumulative probability threshold. 1.0 = disabled. Default: 0.95",3,"disabled"],["matInput","","formControlName","minP","type","number","matTooltip","Min-P sampling: minimum probability threshold. 0.0 = disabled. Default: 0.05"],["matInput","","formControlName","typicalP","type","number","matTooltip","Locally typical sampling parameter p. 1.0 = disabled",3,"disabled"],["formControlName","mirostat","matTooltip","Mirostat sampling mode. 0=disabled, 1=Mirostat, 2=Mirostat 2.0. Top-K/Nucleus ignored when enabled"],["matInput","","formControlName","dynatempRange","type","number","matTooltip","Dynamic temperature range. 0.0 = disabled"],["matInput","","formControlName","repeatLastN","type","number","matTooltip","Last N tokens to consider for penalty. 0 = disabled, -1 = ctx_size. Default: 64"],["matInput","","formControlName","repeatPenalty","type","number","matTooltip","Penalize repeat sequence of tokens. 1.0 = disabled"],["matInput","","formControlName","presencePenalty","type","number","matTooltip","Alpha presence penalty: penalize tokens that appeared. 0.0 = disabled"],["matInput","","formControlName","frequencyPenalty","type","number","matTooltip","Alpha frequency penalty: penalize by token frequency. 0.0 = disabled"],["matInput","","formControlName","dryMultiplier","type","number","matTooltip","DRY sampling multiplier: prevents repetition by penalizing recent tokens. 0.0 = disabled"],["matInput","","formControlName","dryBase","type","number","matTooltip","DRY sampling base value. Default: 1.75"],["appearance","outline","subscriptSizing","dynamic",1,"full-width"],["formControlName","specType","matTooltip","Type of speculative decoding. draft-* uses draft model, ngram-* uses n-gram lookup"],["value","draft-simple"],["value","draft-eagle3"],["value","draft-mtp"],["value","ngram-simple"],["value","ngram-mod"],[1,"sub-section-hint"],["formControlName","lora","label","LoRA Adapter Path","placeholder","/path/to/lora.gguf (comma-separated for multiple)",3,"existingPaths","fieldClass"],["matInput","","formControlName","loraScaled","type","text","matTooltip","LoRA adapter with user-defined scaling. Format: path:scale,... (e.g. lora.gguf:0.5)"],["matInput","","formControlName","host","type","text","matTooltip","IP address to listen (default: 127.0.0.1). Can bind to UNIX socket if ends with .sock",3,"matAutocomplete"],["matInput","","formControlName","port","type","number","matTooltip","Port to listen (default: 8080). Ignored when host is a UNIX socket",3,"disabled"],["matInput","","formControlName","timeout","type","number","matTooltip","Server read/write timeout in seconds. Default: 3600"],["matInput","","formControlName","threadsHttp","type","number","matTooltip","Number of threads for HTTP requests. -1 = auto"],["formControlName","apiKeyFile","label","API Key File","placeholder","/path/to/keys.ini",3,"existingPaths","fieldClass"],["formControlName","metrics","matTooltip","Enable Prometheus-compatible metrics endpoint at /metrics"],["formControlName","slots","matTooltip","Expose slots monitoring endpoint at /slots"],["formControlName","cachePrompt","matTooltip","Enable prompt caching to speed up repeated prompts"],["matInput","","formControlName","cacheReuse","type","number","matTooltip","Min chunk size to attempt reusing from cache via KV shifting. Requires prompt caching",3,"disabled"],["formControlName","reasoning","matTooltip","Use reasoning/thinking in chat. auto = detect from template"],["matInput","","formControlName","reasoningBudget","type","number","matTooltip","Token budget for thinking. -1 = unlimited, 0 = immediate end, N>0 = token limit",3,"disabled"],["formControlName","reasoningFormat","matTooltip","Format for reasoning output. none=raw, deepseek=reasoning_content field, deepseek-legacy=keep think tags",3,"disabled"],["value","deepseek"],["value","deepseek-legacy"],["align","end"],["mat-stroked-button","",3,"click"],["mat-raised-button","","color","primary",3,"click","disabled"],[1,"auto-path"],[1,"auto-from"],["matInput","","formControlName","yarnOrigCtx","type","number","matTooltip","YaRN: original context size of model. 0 = model training context size"],["matInput","","formControlName","yarnExtFactor","type","number","matTooltip","YaRN: extrapolation mix factor. -1 = default, 0.0 = full interpolation"],["matInput","","formControlName","yarnAttnFactor","type","number","matTooltip","YaRN: scale sqrt(t) or attention magnitude. -1 = default"],["matInput","","formControlName","yarnBetaSlow","type","number","matTooltip","YaRN: high correction dim (alpha). -1 = default"],["matInput","","formControlName","yarnBetaFast","type","number","matTooltip","YaRN: low correction dim (beta). -1 = default"],["matInput","","formControlName","specDraftNMax","type","number","matTooltip","Max number of tokens to draft for speculative decoding. Default: 3"],["appearance","outline",1,"form-col",3,"changed"],["formControlName","modelDraft","label","Draft Model Path","placeholder","/path/to/draft-model.gguf",3,"existingPaths","fieldClass"],["formControlName","specDraftDevice","multiple","","placeholder","Select GPU devices for draft model","matTooltip","Devices for offloading the draft model. Same options as main --device"],["matInput","","formControlName","nGpuLayersDraft","type","number","matTooltip","Max draft model layers to store in VRAM. 999 = all layers"],["formControlName","specDraftCacheTypeK","matTooltip","KV cache data type for K for the draft model"],["formControlName","specDraftCacheTypeV","matTooltip","KV cache data type for V for the draft model"],["matInput","","formControlName","specNgramModNMin","type","number","matTooltip","Min number of ngram tokens for ngram-mod speculative decoding. Default: 48"],["matInput","","formControlName","specNgramModNMax","type","number","matTooltip","Max number of ngram tokens for ngram-mod speculative decoding. Default: 64"],["matInput","","formControlName","specNgramModNMatch","type","number","matTooltip","Ngram-mod lookup length. Default: 24"],["matInput","","formControlName","specNgramSimpleSizeN","type","number","matTooltip","Ngram size N for ngram-simple: length of lookup n-gram. Default: 12"],["matInput","","formControlName","specNgramSimpleSizeM","type","number","matTooltip","Ngram size M for ngram-simple: length of draft m-gram. Default: 48"],["matInput","","formControlName","specNgramSimpleMinHits","type","number","matTooltip","Minimum hits for ngram-simple speculative decoding. Default: 1"]],template:function(t,n){if(t&1&&(l(0,"h2",3),u(1),c(),l(2,"mat-dialog-content")(3,"form",4)(4,"mat-form-field",5),v(5,"input",6),D(),l(6,"mat-label"),u(7,"Service Name"),c(),S(8,zy,2,0,"mat-error")(9,jy,2,0,"mat-error"),c(),l(10,"mat-form-field",5),v(11,"input",7),D(),l(12,"mat-label"),u(13,"Binary Path"),c(),S(14,Hy,2,0,"mat-error"),c(),l(15,"mat-autocomplete",null,0),Le(17,Uy,5,3,"mat-option",8,By),c(),l(19,"mat-expansion-panel",9)(20,"mat-expansion-panel-header")(21,"mat-panel-title"),u(22,"Model"),c()(),v(23,"app-file-autocomplete",10),D(),v(24,"app-file-autocomplete",11),D(),l(25,"mat-form-field",5),v(26,"input",12),D(),l(27,"mat-label"),u(28,"Model Alias"),c()()(),l(29,"mat-expansion-panel",9)(30,"mat-expansion-panel-header")(31,"mat-panel-title"),u(32,"GPU & Memory"),c()(),l(33,"div",13)(34,"mat-form-field",14),v(35,"input",15),D(),l(36,"mat-label"),u(37,"GPU Layers"),c()(),l(38,"mat-form-field",16)(39,"mat-select",17),Le(40,Gy,2,2,"mat-option",8,Sc),c(),D(),l(42,"mat-label"),u(43,"Device (multi-select)"),c()()(),l(44,"div",13)(45,"mat-form-field",18)(46,"mat-select",19)(47,"mat-option",20),u(48,"layer (pipelined)"),c(),l(49,"mat-option",21),u(50,"row (parallelized)"),c(),l(51,"mat-option",22),u(52,"tensor (experimental)"),c(),l(53,"mat-option",23),u(54,"none (single GPU)"),c()(),D(),l(55,"mat-label"),u(56,"Split Mode"),c()(),l(57,"mat-form-field",18),v(58,"input",24),D(),l(59,"mat-label"),u(60,"Tensor Split"),c()(),l(61,"mat-form-field",18),v(62,"input",25),D(),l(63,"mat-label"),u(64,"Main GPU"),c()()(),l(65,"div",26),u(66,"Memory"),c(),l(67,"div",13)(68,"mat-form-field",18)(69,"mat-select",27)(70,"mat-option",28),u(71,"on"),c(),l(72,"mat-option",29),u(73,"off"),c()(),D(),l(74,"mat-label"),u(75,"Fit to VRAM"),c()(),l(76,"mat-form-field",18),v(77,"input",30),D(),l(78,"mat-label"),u(79,"Fit Target (MiB)"),c()(),l(80,"mat-form-field",18),v(81,"input",31),D(),l(82,"mat-label"),u(83,"Fit Min Ctx"),c()()(),l(84,"div",13)(85,"mat-form-field",18)(86,"mat-select",32)(87,"mat-option",28),u(88,"on"),c(),l(89,"mat-option",29),u(90,"off"),c()(),D(),l(91,"mat-label"),u(92,"mlock (pin RAM)"),c()(),l(93,"mat-form-field",18)(94,"mat-select",33)(95,"mat-option",28),u(96,"on"),c(),l(97,"mat-option",29),u(98,"off"),c()(),D(),l(99,"mat-label"),u(100,"mmap"),c()(),l(101,"mat-form-field",18)(102,"mat-select",34)(103,"mat-option",28),u(104,"on"),c(),l(105,"mat-option",29),u(106,"off"),c()(),D(),l(107,"mat-label"),u(108,"CPU MoE"),c()(),l(109,"mat-form-field",18),v(110,"input",35),D(),l(111,"mat-label"),u(112,"N CPU MoE Layers"),c()()()(),l(113,"mat-expansion-panel")(114,"mat-expansion-panel-header")(115,"mat-panel-title"),u(116,"Context & KV Cache"),c()(),l(117,"div",13)(118,"mat-form-field",18)(119,"input",36),I("blur",function(r){return n.onCtxSizeInput(r)})("keyup.enter",function(r){return n.onCtxSizeInput(r)}),c(),D(),l(120,"mat-label"),u(121,"Context Size"),c()(),l(122,"mat-autocomplete",null,1),Le(124,$y,2,2,"mat-option",8,Vy),c(),l(126,"mat-form-field",18),v(127,"input",37),D(),l(128,"mat-label"),u(129,"Batch Size"),c()(),l(130,"mat-form-field",18),v(131,"input",38),D(),l(132,"mat-label"),u(133,"Ubatch Size"),c()()(),l(134,"div",13)(135,"mat-form-field",18)(136,"mat-select",39),Le(137,Wy,2,2,"mat-option",8,wi),c(),D(),l(139,"mat-label"),u(140,"KV Cache Type K"),c()(),l(141,"mat-form-field",18)(142,"mat-select",40),Le(143,qy,2,2,"mat-option",8,wi),c(),D(),l(145,"mat-label"),u(146,"KV Cache Type V"),c()(),l(147,"mat-form-field",18)(148,"mat-select",41)(149,"mat-option",28),u(150,"on"),c(),l(151,"mat-option",29),u(152,"off"),c()(),D(),l(153,"mat-label"),u(154,"KV Offload"),c()()(),l(155,"div",13)(156,"mat-form-field",18),v(157,"input",42),D(),l(158,"mat-label"),u(159,"Cache RAM (MiB)"),c()(),l(160,"mat-form-field",18)(161,"mat-select",43)(162,"mat-option",28),u(163,"on"),c(),l(164,"mat-option",29),u(165,"off"),c()(),D(),l(166,"mat-label"),u(167,"Full SWA Cache"),c()()()(),l(168,"mat-expansion-panel")(169,"mat-expansion-panel-header")(170,"mat-panel-title"),u(171,"RoPE Scaling"),c()(),l(172,"div",13)(173,"mat-form-field",18)(174,"mat-select",44)(175,"mat-option",23),u(176,"none"),c(),l(177,"mat-option",45),u(178,"linear"),c(),l(179,"mat-option",46),u(180,"yarn"),c()(),D(),l(181,"mat-label"),u(182,"Scaling Method"),c()(),l(183,"mat-form-field",18),v(184,"input",47),D(),l(185,"mat-label"),u(186,"Scale Factor"),c()(),l(187,"mat-form-field",18),v(188,"input",48),D(),l(189,"mat-label"),u(190,"Freq Base"),c()(),l(191,"mat-form-field",18),v(192,"input",49),D(),l(193,"mat-label"),u(194,"Freq Scale"),c()()(),S(195,Ky,23,10),c(),l(196,"mat-expansion-panel")(197,"mat-expansion-panel-header")(198,"mat-panel-title"),u(199,"Generation"),c(),l(200,"mat-panel-description"),u(201,"Runtime and batching defaults"),c()(),l(202,"div",13)(203,"mat-form-field",18),v(204,"input",50),D(),l(205,"mat-label"),u(206,"Threads"),c()(),l(207,"mat-form-field",18),v(208,"input",51),D(),l(209,"mat-label"),u(210,"Parallel Slots"),c()(),l(211,"mat-form-field",18),v(212,"input",52),D(),l(213,"mat-label"),u(214,"Max Tokens (n-predict)"),c()()(),l(215,"div",13)(216,"mat-form-field",18)(217,"mat-select",53)(218,"mat-option",28),u(219,"on"),c(),l(220,"mat-option",29),u(221,"off"),c(),l(222,"mat-option",54),u(223,"auto"),c()(),D(),l(224,"mat-label"),u(225,"Flash Attention"),c()(),l(226,"mat-form-field",18)(227,"mat-select",55)(228,"mat-option",28),u(229,"on"),c(),l(230,"mat-option",29),u(231,"off"),c()(),D(),l(232,"mat-label"),u(233,"Cont. Batching"),c()(),l(234,"mat-form-field",18)(235,"mat-select",56)(236,"mat-option",28),u(237,"on"),c(),l(238,"mat-option",29),u(239,"off"),c()(),D(),l(240,"mat-label"),u(241,"Context Shift"),c()()()(),l(242,"mat-expansion-panel")(243,"mat-expansion-panel-header")(244,"mat-panel-title"),u(245,"Sampling Defaults"),c(),l(246,"mat-panel-description"),u(247,"Default sampling parameters for generation"),c()(),l(248,"div",26),u(249,"Core"),c(),l(250,"div",13)(251,"mat-form-field",18),v(252,"input",57),D(),l(253,"mat-label"),u(254,"Temperature"),c()(),l(255,"mat-form-field",18),v(256,"input",58),D(),l(257,"mat-label"),u(258,"Seed"),c()(),l(259,"mat-form-field",18),v(260,"input",59),D(),l(261,"mat-label"),u(262,"Top-K"),c()(),l(263,"mat-form-field",18),v(264,"input",60),D(),l(265,"mat-label"),u(266,"Top-P"),c()()(),l(267,"div",13)(268,"mat-form-field",18),v(269,"input",61),D(),l(270,"mat-label"),u(271,"Min-P"),c()(),l(272,"mat-form-field",18),v(273,"input",62),D(),l(274,"mat-label"),u(275,"Typical-P"),c()(),l(276,"mat-form-field",18)(277,"mat-select",63)(278,"mat-option",8),u(279,"disabled"),c(),l(280,"mat-option",8),u(281,"Mirostat"),c(),l(282,"mat-option",8),u(283,"Mirostat 2.0"),c()(),D(),l(284,"mat-label"),u(285,"Mirostat"),c()(),l(286,"mat-form-field",18),v(287,"input",64),D(),l(288,"mat-label"),u(289,"Dyn. Temp Range"),c()()(),l(290,"div",26),u(291,"Penalties"),c(),l(292,"div",13)(293,"mat-form-field",18),v(294,"input",65),D(),l(295,"mat-label"),u(296,"Repeat Last N"),c()(),l(297,"mat-form-field",18),v(298,"input",66),D(),l(299,"mat-label"),u(300,"Repeat Penalty"),c()(),l(301,"mat-form-field",18),v(302,"input",67),D(),l(303,"mat-label"),u(304,"Presence Penalty"),c()(),l(305,"mat-form-field",18),v(306,"input",68),D(),l(307,"mat-label"),u(308,"Frequency Penalty"),c()()(),l(309,"div",26),u(310,"DRY Sampling"),c(),l(311,"div",13)(312,"mat-form-field",18),v(313,"input",69),D(),l(314,"mat-label"),u(315,"DRY Multiplier"),c()(),l(316,"mat-form-field",18),v(317,"input",70),D(),l(318,"mat-label"),u(319,"DRY Base"),c()()()(),l(320,"mat-expansion-panel")(321,"mat-expansion-panel-header")(322,"mat-panel-title"),u(323,"Speculative Decoding"),c(),l(324,"mat-panel-description"),u(325,"Draft model and speculative decoding options"),c()(),l(326,"mat-form-field",71)(327,"mat-select",72)(328,"mat-option",23),u(329,"none"),c(),l(330,"mat-option",73),u(331,"draft-simple"),c(),l(332,"mat-option",74),u(333,"draft-eagle3"),c(),l(334,"mat-option",75),u(335,"draft-mtp"),c(),l(336,"mat-option",76),u(337,"ngram-simple"),c(),l(338,"mat-option",77),u(339,"ngram-mod"),c()(),D(),l(340,"mat-label"),u(341,"Spec Type"),c()(),S(342,Yy,2,0,"div",78),S(343,i0,10,5),S(344,n0,15,6),S(345,o0,15,6),c(),l(346,"mat-expansion-panel")(347,"mat-expansion-panel-header")(348,"mat-panel-title"),u(349,"LoRA & Adapters"),c()(),v(350,"app-file-autocomplete",79),D(),l(351,"mat-form-field",5),v(352,"input",80),D(),l(353,"mat-label"),u(354,"LoRA Scaled"),c()()(),l(355,"mat-expansion-panel")(356,"mat-expansion-panel-header")(357,"mat-panel-title"),u(358,"Server & Network"),c()(),l(359,"div",13)(360,"mat-form-field",18),v(361,"input",81),D(),l(362,"mat-label"),u(363,"Host"),c()(),l(364,"mat-autocomplete",null,2),Le(366,a0,5,3,"mat-option",8,Sc),c(),l(368,"mat-form-field",18),v(369,"input",82),D(),l(370,"mat-label"),u(371,"Port"),c()(),l(372,"mat-form-field",18),v(373,"input",83),D(),l(374,"mat-label"),u(375,"Timeout (s)"),c()(),l(376,"mat-form-field",18),v(377,"input",84),D(),l(378,"mat-label"),u(379,"HTTP Threads"),c()()(),v(380,"app-file-autocomplete",85),D(),l(381,"div",13)(382,"mat-form-field",18)(383,"mat-select",86)(384,"mat-option",28),u(385,"on"),c(),l(386,"mat-option",29),u(387,"off"),c()(),D(),l(388,"mat-label"),u(389,"Prometheus Metrics"),c()(),l(390,"mat-form-field",18)(391,"mat-select",87)(392,"mat-option",28),u(393,"on"),c(),l(394,"mat-option",29),u(395,"off"),c()(),D(),l(396,"mat-label"),u(397,"Slots Endpoint"),c()(),l(398,"mat-form-field",18)(399,"mat-select",88)(400,"mat-option",28),u(401,"on"),c(),l(402,"mat-option",29),u(403,"off"),c()(),D(),l(404,"mat-label"),u(405,"Prompt Cache"),c()(),l(406,"mat-form-field",18),v(407,"input",89),D(),l(408,"mat-label"),u(409,"Cache Reuse"),c()()()(),l(410,"mat-expansion-panel")(411,"mat-expansion-panel-header")(412,"mat-panel-title"),u(413,"Reasoning"),c(),l(414,"mat-panel-description"),u(415,"Thinking/reasoning mode settings"),c()(),l(416,"div",13)(417,"mat-form-field",18)(418,"mat-select",90)(419,"mat-option",28),u(420,"on"),c(),l(421,"mat-option",29),u(422,"off"),c(),l(423,"mat-option",54),u(424,"auto"),c()(),D(),l(425,"mat-label"),u(426,"Reasoning"),c()(),l(427,"mat-form-field",18),v(428,"input",91),D(),l(429,"mat-label"),u(430,"Reasoning Budget"),c()(),l(431,"mat-form-field",18)(432,"mat-select",92)(433,"mat-option",54),u(434,"auto"),c(),l(435,"mat-option",23),u(436,"none (raw)"),c(),l(437,"mat-option",93),u(438,"deepseek"),c(),l(439,"mat-option",94),u(440,"deepseek-legacy"),c()(),D(),l(441,"mat-label"),u(442,"Reasoning Format"),c()()()()()(),l(443,"mat-dialog-actions",95)(444,"button",96),I("click",function(){return n.cancel()}),u(445,"Cancel"),c(),l(446,"button",97),I("click",function(){return n.save()}),u(447),c()()),t&2){let a=Ye(16),r=Ye(123),m=Ye(365);d(),ye("",n.isClone?"Clone":n.isEdit?"Edit":"Add"," llama-server service"),d(2),w("formGroup",n.form),d(),f("changed",n.isControlChanged("name")),d(),w("disabled",n.isEdit&&!n.isClone),k(),d(3),E(n.form.controls.name.errors?.required?8:n.form.controls.name.errors?.pattern?9:-1),d(2),f("changed",n.isControlChanged("command")),d(),w("matAutocomplete",a),k(),d(3),E(n.form.controls.command.errors?.required?14:-1),d(3),Be(n.filteredCommands()),d(2),f("has-changed",n.isSectionChanged("model","mmproj","alias")),d(4),w("existingPaths",n.existingModelPaths())("fieldClass",n.isControlChanged("model")?"changed":""),k(),d(),w("existingPaths",n.existingMmprojPaths())("fieldClass",n.isControlChanged("mmproj")?"changed":""),k(),d(),f("changed",n.isControlChanged("alias")),d(),k(),d(3),f("has-changed",n.isSectionChanged("nGpuLayers","device","tensorSplit","splitMode","mainGpu","fit","fitTarget","fitCtx","mlock","mmap","cpuMoe","nCpuMoe")),d(5),f("changed",n.isControlChanged("nGpuLayers")),d(),k(),d(3),f("changed",n.isControlChanged("device")),d(),k(),d(),Be(n.availableDevices()),d(5),f("changed",n.isControlChanged("splitMode")),d(),k(),d(11),f("changed",n.isControlChanged("tensorSplit")&&!n.isTensorSplitDisabled()),d(),w("disabled",n.isTensorSplitDisabled()),k(),d(3),f("changed",n.isControlChanged("mainGpu")),d(),k(),d(6),f("changed",n.isControlChanged("fit")),d(),k(),d(7),f("changed",n.isControlChanged("fitTarget")&&!n.isFitTargetDisabled()),d(),w("disabled",n.isFitTargetDisabled()),k(),d(3),f("changed",n.isControlChanged("fitCtx")&&!n.isFitTargetDisabled()),d(),w("disabled",n.isFitTargetDisabled()),k(),d(4),f("changed",n.isControlChanged("mlock")),d(),k(),d(7),f("changed",n.isControlChanged("mmap")),d(),k(),d(7),f("changed",n.isControlChanged("cpuMoe")),d(),k(),d(7),f("changed",n.isControlChanged("nCpuMoe")&&!n.isCpuMoeLayersDisabled()),d(),w("disabled",n.isCpuMoeLayersDisabled()),k(),d(3),f("has-changed",n.isSectionChanged("ctxSize","batchSize","ubatchSize","cacheTypeK","cacheTypeV","kvOffload","cacheRam","swaFull")),d(5),f("changed",n.isControlChanged("ctxSize")),d(),w("matAutocomplete",r),k(),d(5),Be(n.ctxPresets()),d(2),f("changed",n.isControlChanged("batchSize")),d(),k(),d(3),f("changed",n.isControlChanged("ubatchSize")),d(),k(),d(4),f("changed",n.isControlChanged("cacheTypeK")),d(),k(),d(),Be(n.kvCacheTypes),d(4),f("changed",n.isControlChanged("cacheTypeV")),d(),k(),d(),Be(n.kvCacheTypes),d(4),f("changed",n.isControlChanged("kvOffload")),d(),k(),d(8),f("changed",n.isControlChanged("cacheRam")),d(),k(),d(3),f("changed",n.isControlChanged("swaFull")),d(),k(),d(7),f("has-changed",n.isSectionChanged("ropeScaling","ropeScale","ropeFreqBase","ropeFreqScale","yarnOrigCtx","yarnExtFactor","yarnAttnFactor","yarnBetaSlow","yarnBetaFast")),d(5),f("changed",n.isControlChanged("ropeScaling")),d(),k(),d(9),f("changed",n.isControlChanged("ropeScale")&&!n.isRopeParamsDisabled()),d(),w("disabled",n.isRopeParamsDisabled()),k(),d(3),f("changed",n.isControlChanged("ropeFreqBase")&&!n.isRopeParamsDisabled()),d(),w("disabled",n.isRopeParamsDisabled()),k(),d(3),f("changed",n.isControlChanged("ropeFreqScale")&&!n.isRopeParamsDisabled()),d(),w("disabled",n.isRopeParamsDisabled()),k(),d(3),E(n.showYarnParams()?195:-1),d(),f("has-changed",n.isSectionChanged("threads","parallel","flashAttn","contBatching","contextShift","nPredict")),d(7),f("changed",n.isControlChanged("threads")),d(),k(),d(3),f("changed",n.isControlChanged("parallel")),d(),k(),d(3),f("changed",n.isControlChanged("nPredict")),d(),k(),d(4),f("changed",n.isControlChanged("flashAttn")),d(),k(),d(9),f("changed",n.isControlChanged("contBatching")),d(),k(),d(7),f("changed",n.isControlChanged("contextShift")),d(),k(),d(7),f("has-changed",n.isSectionChanged("temperature","seed","topK","topP","minP","typicalP","mirostat","dynatempRange","repeatLastN","repeatPenalty","presencePenalty","frequencyPenalty","dryMultiplier","dryBase")),d(9),f("changed",n.isControlChanged("temperature")),d(),k(),d(3),f("changed",n.isControlChanged("seed")),d(),k(),d(3),f("changed",n.isControlChanged("topK")&&!n.isMirostatEnabled()),d(),w("disabled",n.isMirostatEnabled()),k(),d(3),f("changed",n.isControlChanged("topP")&&!n.isMirostatEnabled()),d(),w("disabled",n.isMirostatEnabled()),k(),d(4),f("changed",n.isControlChanged("minP")),d(),k(),d(3),f("changed",n.isControlChanged("typicalP")&&!n.isMirostatEnabled()),d(),w("disabled",n.isMirostatEnabled()),k(),d(3),f("changed",n.isControlChanged("mirostat")),d(),k(),d(),w("value",0),d(2),w("value",1),d(2),w("value",2),d(4),f("changed",n.isControlChanged("dynatempRange")),d(),k(),d(6),f("changed",n.isControlChanged("repeatLastN")),d(),k(),d(3),f("changed",n.isControlChanged("repeatPenalty")),d(),k(),d(3),f("changed",n.isControlChanged("presencePenalty")),d(),k(),d(3),f("changed",n.isControlChanged("frequencyPenalty")),d(),k(),d(6),f("changed",n.isControlChanged("dryMultiplier")),d(),k(),d(3),f("changed",n.isControlChanged("dryBase")),d(),k(),d(3),f("has-changed",n.isSectionChanged("modelDraft","specDraftDevice","specDraftNMax","nGpuLayersDraft","specDraftCacheTypeK","specDraftCacheTypeV","specType","specNgramModNMin","specNgramModNMax","specNgramModNMatch","specNgramSimpleSizeN","specNgramSimpleSizeM","specNgramSimpleMinHits")),d(6),f("changed",n.isControlChanged("specType")),d(),k(),d(15),E(n.showDraftParams()&&!n.showDraftModelFields()?342:-1),d(),E(n.showDraftParams()?343:-1),d(),E(n.showNgramModParams()?344:-1),d(),E(n.showNgramSimpleParams()?345:-1),d(),f("has-changed",n.isSectionChanged("lora","loraScaled")),d(4),w("existingPaths",n.existingLoraPaths())("fieldClass",n.isControlChanged("lora")?"changed":""),k(),d(),f("changed",n.isControlChanged("loraScaled")),d(),k(),d(3),f("has-changed",n.isSectionChanged("host","port","timeout","threadsHttp","apiKeyFile","metrics","slots","cachePrompt","cacheReuse")),d(5),f("changed",n.isControlChanged("host")),d(),w("matAutocomplete",m),k(),d(5),Be(n.filteredHosts()),d(2),f("changed",n.isControlChanged("port")&&!n.isPortDisabled()),d(),w("disabled",n.isPortDisabled()),k(),d(3),f("changed",n.isControlChanged("timeout")),d(),k(),d(3),f("changed",n.isControlChanged("threadsHttp")),d(),k(),d(3),w("existingPaths",n.existingApiKeyPaths())("fieldClass",n.isControlChanged("apiKeyFile")?"changed":""),k(),d(2),f("changed",n.isControlChanged("metrics")),d(),k(),d(7),f("changed",n.isControlChanged("slots")),d(),k(),d(7),f("changed",n.isControlChanged("cachePrompt")),d(),k(),d(7),f("changed",n.isControlChanged("cacheReuse")&&!n.isCacheReuseDisabled()),d(),w("disabled",n.isCacheReuseDisabled()),k(),d(3),f("has-changed",n.isSectionChanged("reasoning","reasoningBudget","reasoningFormat")),d(7),f("changed",n.isControlChanged("reasoning")),d(),k(),d(9),f("changed",n.isControlChanged("reasoningBudget")&&!n.isReasoningParamsDisabled()),d(),w("disabled",n.isReasoningParamsDisabled()),k(),d(3),f("changed",n.isControlChanged("reasoningFormat")&&!n.isReasoningParamsDisabled()),d(),w("disabled",n.isReasoningParamsDisabled()),k(),d(14),w("disabled",n.form.invalid),d(),ye(" ",n.isEdit&&!n.isClone?"Save":"Create"," ")}},dependencies:[$e,ao,Or,Yi,zl,Xi,no,ro,ri,Dn,wo,xo,Mt,Tn,dt,ht,us,op,xc,tp,np,ip,Ct,yt,Ut,so,$t,Gt,Ci,nn,an,on,fs,ps,lp,Dc,cp],styles:['@charset "UTF-8";.llama-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;min-width:640px}.form-row[_ngcontent-%COMP%]{display:flex;gap:12px;margin-bottom:4px}.form-col[_ngcontent-%COMP%]{flex:1}.form-col-60[_ngcontent-%COMP%]{flex:3}.form-col-40[_ngcontent-%COMP%]{flex:2}.full-width[_ngcontent-%COMP%]{width:100%}.auto-path[_ngcontent-%COMP%]{font-family:monospace}.auto-from[_ngcontent-%COMP%]{margin-left:8px;opacity:.6;font-size:12px}mat-dialog-content[_ngcontent-%COMP%]{padding-top:10px!important;max-height:80vh}mat-expansion-panel[_ngcontent-%COMP%]{margin-bottom:0}mat-dialog-actions[_ngcontent-%COMP%]{gap:8px}.subsection-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:#0009;margin:4px 0 14px;text-transform:uppercase;letter-spacing:.5px}.sub-section-hint[_ngcontent-%COMP%]{font-size:11px;color:#0006;margin-bottom:4px}mat-expansion-panel.has-changed[_ngcontent-%COMP%] mat-panel-title[_ngcontent-%COMP%]{font-weight:700}mat-form-field.changed[_ngcontent-%COMP%] .mat-mdc-form-field-infix input, mat-form-field.changed[_ngcontent-%COMP%] .mat-mdc-form-field-infix .mat-mdc-select{font-weight:700}']})}}return i})();var c0=(i,o)=>o.name;function d0(i,o){if(i&1){let e=Ve();l(0,"button",21),I("click",function(n){pe(e);let a=C(2).$implicit;return C(2).control(a.name,"start"),fe(n.stopPropagation())}),l(1,"mat-icon"),u(2,"play_arrow"),c(),u(3," Start "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",t.busy()?.name===e.name)}}function m0(i,o){if(i&1){let e=Ve();l(0,"button",22),I("click",function(n){pe(e);let a=C(2).$implicit;return C(2).control(a.name,"stop"),fe(n.stopPropagation())}),l(1,"mat-icon"),u(2,"stop"),c(),u(3," Stop "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",t.busy()?.name===e.name)}}function u0(i,o){if(i&1){let e=Ve();l(0,"button",23),I("click",function(n){pe(e);let a=C(2).$implicit;return C(2).control(a.name,"disable"),fe(n.stopPropagation())}),l(1,"mat-icon"),u(2,"lock"),c(),u(3," Disable "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",t.busy()?.name===e.name)}}function h0(i,o){if(i&1){let e=Ve();l(0,"button",23),I("click",function(n){pe(e);let a=C(2).$implicit;return C(2).control(a.name,"enable"),fe(n.stopPropagation())}),l(1,"mat-icon"),u(2,"lock_open"),c(),u(3," Enable "),c()}if(i&2){let e=C(2).$implicit,t=C(2);w("disabled",e.enabled||t.busy()?.name===e.name)}}function p0(i,o){if(i&1&&(S(0,d0,4,1,"button",18)(1,m0,4,1,"button",19),S(2,u0,4,1,"button",20)(3,h0,4,1,"button",20)),i&2){let e=C().$implicit;E(e.running?1:0),d(2),E(e.enabled?2:3)}}function f0(i,o){if(i&1){let e=Ve();l(0,"tr",11),I("click",function(){let n=pe(e).$implicit,a=C(2);return fe(a.selectedServiceService.select(n.name))}),l(1,"td")(2,"div",12),v(3,"span",13),l(4,"span",14),u(5),c()()(),l(6,"td",15),S(7,p0,4,2),c(),l(8,"td",15)(9,"div")(10,"button",16)(11,"mat-icon"),u(12,"more_vert"),c()(),l(13,"mat-menu",17,1)(15,"button",7),I("click",function(){let n=pe(e).$implicit,a=C(2);return fe(a.editService(n))}),l(16,"mat-icon"),u(17,"edit"),c(),l(18,"span"),u(19,"Edit"),c()(),l(20,"button",7),I("click",function(){let n=pe(e).$implicit,a=C(2);return fe(a.cloneService(n))}),l(21,"mat-icon"),u(22,"content_copy"),c(),l(23,"span"),u(24,"Clone"),c()(),l(25,"button",7),I("click",function(){let n=pe(e).$implicit,a=C(2);return fe(a.deleteService(n.name))}),l(26,"mat-icon"),u(27,"delete"),c(),l(28,"span"),u(29,"Delete"),c()()()()()()}if(i&2){let e=o.$implicit,t=Ye(14);f("custom",e.hasConfig),d(3),f("running",e.running),d(),f("disabled",!e.enabled),d(),Z(e.name),d(2),E(e.installed?7:-1),d(2),Ne("visibility",e.hasConfig?"visible":"hidden"),d(),w("matMenuTriggerFor",t)}}function g0(i,o){if(i&1&&(l(0,"table",8)(1,"tbody"),Le(2,f0,30,11,"tr",10,c0),c()()),i&2){let e=C();d(2),Be(e.unified())}}function _0(i,o){i&1&&(l(0,"div",9)(1,"p"),u(2,'No services configured. Click "Manage" to select system services or "Add Service" to create one.'),c()())}var up=(()=>{class i{constructor(){this.serviceService=s(Zt),this.serviceList=s(ss),this.selectedServiceService=s(rs),this.dialog=s(bo),this.snackBar=s(Lh),this.services=this.serviceList.services,this.configs=N([]),this.loading=N(!0),this.busy=N(null),this.unified=K(()=>{let e=this.services(),t=this.configs(),n=new Map;for(let m of t)n.set(m.name,m);let a=e.filter(m=>n.has(m.name)).map(m=>{let h=n.get(m.name)??null;return{name:m.name,running:m.running,enabled:m.enabled,installed:m.installed,pid:m.pid,error:m.error,config:h,hasConfig:!0}}),r=e.filter(m=>!n.has(m.name)).map(m=>Se(L({},m),{config:null,hasConfig:!1}));return[...a,...r]})}ngOnInit(){this.load()}load(){return Ce(this,null,function*(){this.loading.set(!0);try{yield this.serviceList.refresh(),this.configs.set(yield je(this.serviceService.fetchConfigs()))}catch(e){console.error("[ServicesComponent] load error:",e)}finally{this.loading.set(!1)}})}control(e,t){return Ce(this,null,function*(){let n=this.busy();if(!(n&&n.name===e&&n.action===t)){this.selectedServiceService.select(e),this.busy.set({name:e,action:t});try{let a=yield je(this.serviceService.control(e,t));a.error&&this.showError(`${e}: ${a.error}`),yield this.load()}catch(a){this.showError(`${e}: ${String(a.error||a)}`)}finally{this.busy.set(null)}}})}showError(e){this.snackBar.open(e,"Dismiss",{duration:8e3,horizontalPosition:"center",verticalPosition:"top"})}manageServices(){this.dialog.open(Kh,{maxWidth:"600px"}).afterClosed().subscribe(t=>{t&&this.load()})}addService(e){this.openDialog(null,e)}editService(e){this.selectedServiceService.select(e.name),this.openDialog(e.config,e.config?.type)}cloneService(e){if(!e.config)return;let t=Se(L({},e.config),{name:this.uniqueCloneName(e.name)});this.openDialog(t,t.type,!0)}uniqueCloneName(e){let t=new Set(this.configs().map(a=>a.name));if(!t.has(`${e}-copy`))return`${e}-copy`;let n=2;for(;t.has(`${e}-copy-${n}`);)n++;return`${e}-copy-${n}`}deleteService(e){return Ce(this,null,function*(){this.selectedServiceService.select(e);try{yield je(this.serviceService.deleteConfig(e)),yield this.load()}catch(t){this.showError(`Delete "${e}": ${String(t)}`)}})}hasFlags(e){return e.flags.length>0}openDialog(e,t,n=!1){if((t??e?.type??"generic")==="llama-server"){let r={config:e,allConfigs:this.configs(),clone:n},m=this.dialog.open(mp,{data:r,minWidth:"800px"});this.handleDialogResult(m,e,n)}else{let r={config:e,allConfigs:this.configs(),clone:n},m=this.dialog.open(jh,{data:r,minWidth:"1000px"});this.handleDialogResult(m,e,n)}}handleDialogResult(e,t,n=!1){e.afterClosed().subscribe(a=>Ce(this,null,function*(){if(a)try{if(n)yield je(this.serviceService.saveConfig(a));else{let r=t?.name??null;if(r!==null&&r!==a.name){let h=this.unified().find(y=>y.name===r),g=h?.running??!1,_=h?.enabled??!1;yield je(this.serviceService.deleteConfig(r)),yield je(this.serviceService.saveConfig(a)),_&&(yield je(this.serviceService.control(a.name,"enable"))),g&&(yield je(this.serviceService.control(a.name,"start")))}else yield je(this.serviceService.saveConfig(a))}}catch(r){this.showError(`Save: ${String(r)}`)}finally{yield this.load()}}))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-services"]],decls:25,vars:2,consts:[["addMenu",""],["serviceMenu","matMenu"],[1,"services-card"],[1,"section-header"],[1,"header-actions"],["mat-stroked-button","",3,"click"],["mat-raised-button","","color","primary","title","Install your own service.",3,"matMenuTriggerFor"],["mat-menu-item","",3,"click"],[1,"services-list"],[1,"empty"],[3,"custom"],[3,"click"],[1,"service-name"],[1,"status-dot"],[1,"name-text"],[1,"service-actions-cell"],["mat-icon-button","","title","Service actions",3,"matMenuTriggerFor"],["yPosition","below"],["mat-raised-button","","color","primary",3,"disabled"],["mat-raised-button","","color","warn",3,"disabled"],["mat-stroked-button","",3,"disabled"],["mat-raised-button","","color","primary",3,"click","disabled"],["mat-raised-button","","color","warn",3,"click","disabled"],["mat-stroked-button","",3,"click","disabled"]],template:function(t,n){if(t&1&&(l(0,"div",2)(1,"div",3)(2,"h2"),u(3,"Services"),c(),l(4,"div",4)(5,"button",5),I("click",function(){return n.manageServices()}),l(6,"mat-icon"),u(7,"tune"),c(),u(8," Select services to manage... "),c(),l(9,"button",6)(10,"mat-icon"),u(11,"add"),c(),u(12," Add custom service... "),c(),l(13,"mat-menu",null,0)(15,"button",7),I("click",function(){return n.addService("generic")}),l(16,"mat-icon"),u(17,"settings"),c(),u(18," Generic service "),c(),l(19,"button",7),I("click",function(){return n.addService("llama-server")}),l(20,"mat-icon"),u(21,"smart_toy"),c(),u(22," llama-server "),c()()()(),S(23,g0,4,0,"table",8)(24,_0,3,0,"div",9),c()),t&2){let a=Ye(14);d(9),w("matMenuTriggerFor",a),d(14),E(n.unified().length>0?23:n.loading()?-1:24)}},dependencies:[$e,dt,ht,Mn,po,as,rn,In,os,Kt,qt],styles:[".services-card[_ngcontent-%COMP%]{margin-bottom:24px}.section-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;margin-top:8px}.section-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:1.1rem;font-weight:600;color:#333}.section-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%]{display:flex;gap:8px}.services-list[_ngcontent-%COMP%]{width:100%;border-collapse:collapse}.services-list[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.services-list[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:#fff}.services-list[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child{border-bottom:none}.services-list[_ngcontent-%COMP%] tr.custom[_ngcontent-%COMP%], .services-list[_ngcontent-%COMP%] tr.custom[_ngcontent-%COMP%]:first-child td[_ngcontent-%COMP%]:first-child{border-left:3px solid #7c4dff}.services-list[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{padding:4px 12px;vertical-align:middle}.service-name[_ngcontent-%COMP%]{font-size:1rem;font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:8px}.service-name[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{display:inline-block;width:10px;height:10px;border-radius:50%;background-color:#bdbdbd}.service-name[_ngcontent-%COMP%] .status-dot.running[_ngcontent-%COMP%]{background-color:#4caf50}.service-name[_ngcontent-%COMP%] .name-text[_ngcontent-%COMP%]{color:#212121}.service-name[_ngcontent-%COMP%] .name-text.disabled[_ngcontent-%COMP%]{color:#9e9e9e}.service-actions-cell[_ngcontent-%COMP%]{white-space:nowrap}.service-actions-cell[_ngcontent-%COMP%] button[_ngcontent-%COMP%] + button[_ngcontent-%COMP%]{margin-left:8px}.status-chip[_ngcontent-%COMP%], .enabled-chip[_ngcontent-%COMP%]{font-size:.8rem;font-weight:500}.status-chip.running[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #a5d6a7}.status-chip.stopped[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #ef9a9a}.enabled-chip.enabled[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #90caf9}.enabled-chip.disabled[_ngcontent-%COMP%]{--mat-chip-elevated-container-color: #bdbdbd}.empty[_ngcontent-%COMP%]{text-align:center;padding:24px;color:#999;font-size:.9rem}.empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0}"]})}}return i})();var b0=["journalBody"],v0=(i,o)=>o.name;function y0(i,o){if(i&1&&(l(0,"mat-option",7),u(1),c()),i&2){let e=o.$implicit;w("value",e.name),d(),Z(e.name)}}function C0(i,o){if(i&1){let e=Ve();l(0,"button",10),I("click",function(){pe(e);let n=C(2);return fe(n.toggleWordWrap())}),l(1,"mat-icon"),u(2,"wrap_text"),c()()}}function x0(i,o){if(i&1){let e=Ve();l(0,"button",11),I("click",function(){pe(e);let n=C(2);return fe(n.toggleWordWrap())}),l(1,"mat-icon"),u(2,"wrap_text"),c()()}}function w0(i,o){if(i&1){let e=Ve();l(0,"mat-select",6),I("ngModelChange",function(n){pe(e);let a=C();return fe(a.onServiceChange(n))}),l(1,"mat-option",7),u(2,"\u2014 None \u2014"),c(),Le(3,y0,2,2,"mat-option",7,v0),c(),D(),S(5,C0,3,0,"button",8)(6,x0,3,0,"button",9)}if(i&2){let e=C();w("ngModel",e.selectedService()),k(),d(),w("value",null),d(2),Be(e.services()),d(2),E(e.wordWrap()?5:6)}}function D0(i,o){if(i&1&&(l(0,"div",3),u(1),c()),i&2){let e=C();d(),Z(e.error())}}function k0(i,o){if(i&1&&(l(0,"div",4,0)(2,"pre"),u(3),c()()),i&2){let e=C();d(2),f("wrap-on",e.wordWrap()),d(),Z(e.journalText())}}function S0(i,o){i&1&&(l(0,"div",5)(1,"p"),u(2,"No service selected"),c()())}var E0=40,hp=(()=>{class i{toggleWordWrap(){this.wordWrap.update(e=>!e)}constructor(){this.serviceService=s(Zt),this.selectedServiceService=s(rs),this.serviceList=s(ss),this.cdr=s(ie),this.services=this.serviceList.services,this.servicesLoaded=this.serviceList.loaded,this.journalLines=N([]),this.journalLoading=N(!1),this.journalError=N(null),this.error=K(()=>this.serviceList.error()??this.journalError()),this.selectedService=K(()=>this.selectedServiceService.selectedService()),this.wordWrap=N(!0),this.journalText=K(()=>{let e=this.journalLines();return e.length===0?"":e.map(t=>t.timestamp?`${t.timestamp} ${t.message}`:t.message).join(`
|
|
5584
|
+
`)}),At(()=>{if(!this.servicesLoaded())return;let e=this.selectedService();e!==null&&!this.services().some(t=>t.name===e)&&this.selectedServiceService.select(null)}),At(()=>{if(!this.servicesLoaded())return;this.selectedService()?(this.journalLines.set([]),this.journalError.set(null),this.restartPolling()):(this.stopPolling(),this.journalLines.set([]))}),this.serviceList.refresh()}ngAfterViewInit(){this.scrollToBottom()}ngOnDestroy(){this.stopPolling()}onServiceChange(e){this.selectedServiceService.select(e)}restartPolling(){this.stopPolling(),this.fetchJournal(),this.journalSub=Ia(0,1e3).subscribe(()=>this.fetchJournal())}stopPolling(){this.journalSub&&(this.journalSub.unsubscribe(),this.journalSub=void 0)}fetchJournal(){let e=this.selectedService();e&&(this.isTextSelected()||(this.journalLoading.set(!0),this.serviceService.fetchJournal(e,100).subscribe({next:t=>{let n=this.isScrolledToBottom();this.journalLines.set(t),this.journalError.set(null),this.journalLoading.set(!1),this.cdr.markForCheck(),requestAnimationFrame(()=>{n&&this.scrollToBottom()})},error:t=>{this.journalError.set(t.message),this.journalLoading.set(!1),this.cdr.markForCheck()}})))}get scrollContainer(){return this.journalBody?.nativeElement??null}isTextSelected(){let e=typeof window<"u"?window:null;if(!e)return!1;let t=e.getSelection();if(!t||t.isCollapsed||!t.rangeCount)return!1;let n=this.scrollContainer;return n?n.contains(t.anchorNode):!1}isScrolledToBottom(){let e=this.scrollContainer;return e?e.scrollHeight-e.scrollTop-e.clientHeight<=E0:!0}scrollToBottom(){let e=this.scrollContainer;e&&(e.scrollTop=e.scrollHeight)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-journal-panel"]],viewQuery:function(t,n){if(t&1&&we(b0,5),t&2){let a;T(a=R())&&(n.journalBody=a.first)}},decls:9,vars:3,consts:[["journalBody",""],[1,"journal-card"],[1,"journal-header"],[1,"journal-error"],[1,"journal-body"],[1,"journal-body","journal-empty"],["disableOptionCentering","",1,"service-select",3,"ngModelChange","ngModel"],[3,"value"],["mat-flat-button","","color","primary","aria-label","Disable word wrap"],["mat-stroked-button","","aria-label","Enable word wrap"],["mat-flat-button","","color","primary","aria-label","Disable word wrap",3,"click"],["mat-stroked-button","","aria-label","Enable word wrap",3,"click"]],template:function(t,n){t&1&&(l(0,"mat-card",1)(1,"mat-card-content")(2,"div",2)(3,"h2"),u(4,"Journal"),c(),S(5,w0,7,3),c(),S(6,D0,2,1,"div",3),S(7,k0,4,3,"div",4)(8,S0,3,0,"div",5),c()()),t&2&&(d(5),E(n.servicesLoaded()&&n.services().length>0?5:-1),d(),E(n.error()?6:-1),d(),E(n.selectedService()?7:8))},dependencies:[$e,Hi,zi,ji,fs,ps,Mt,dt,ht,Kt,qt,Vi,ao,Xi,Vl],styles:[".journal-card[_ngcontent-%COMP%]{height:100%;display:flex;flex-direction:column;overflow:hidden}.journal-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-bottom:8px}.journal-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-shrink:0}.journal-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:20px;font-weight:500}.service-select[_ngcontent-%COMP%]{flex:1;min-width:150px}.journal-error[_ngcontent-%COMP%]{color:#f44336;font-size:13px;margin-bottom:8px;flex-shrink:0}.journal-body[_ngcontent-%COMP%]{flex:1;overflow-y:auto;background:#1e1e1e;border-radius:4px;padding:8px;min-height:0}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar{width:8px}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:#2d2d2d;border-radius:4px}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.journal-body[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#777}.journal-body[_ngcontent-%COMP%]{scrollbar-width:thin;scrollbar-color:#555 #2d2d2d}.journal-body[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.6;color:#d4d4d4;white-space:pre}.journal-body[_ngcontent-%COMP%] pre.wrap-on[_ngcontent-%COMP%]{white-space:pre-wrap}.journal-empty[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center}.journal-empty[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;color:#888;font-size:14px}[_nghost-%COMP%] .mdc-button{min-width:32px}[_nghost-%COMP%] .mat-mdc-unelevated-button>.mat-icon, [_nghost-%COMP%] .mat-mdc-outlined-button>.mat-icon{margin-right:0}"]})}}return i})();var vs=(()=>{class i{constructor(){this.http=s(jt),this.baseUrl="/api/system"}reboot(){return Ce(this,null,function*(){yield je(this.http.post(`${this.baseUrl}/reboot`,null))})}shutdown(){return Ce(this,null,function*(){yield je(this.http.post(`${this.baseUrl}/shutdown`,null))})}getSystemInfo(){return Ce(this,null,function*(){return je(this.http.get(`${this.baseUrl}/info`))})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=ae({token:i,factory:i.\u0275fac,providedIn:"root"})}}return i})();var M0=(i,o)=>o.device,A0=(i,o)=>o.path;function I0(i,o){i&1&&v(0,"mat-progress-bar",2)}function T0(i,o){if(i&1&&(l(0,"p",3),u(1),c()),i&2){let e=C();d(),Z(e.error())}}function R0(i,o){if(i&1&&(l(0,"span",11),u(1),c()),i&2){let e=C(2);d(),Z(e.info().uptime)}}function O0(i,o){if(i&1&&(l(0,"div",12)(1,"span",13),u(2,"Version"),c(),l(3,"span",14),u(4),c()()),i&2){let e=C(2);d(4),Z(e.info().os.version)}}function F0(i,o){if(i&1&&(l(0,"div",16)(1,"div",18)(2,"span",19),u(3),c(),l(4,"span",20),u(5),c()(),l(6,"div",21),v(7,"div",22),c(),l(8,"div",23)(9,"span"),u(10),c(),l(11,"span"),u(12),c()()()),i&2){let e=o.$implicit,t=C(2);d(3),Z(e.device),d(2),Z(e.mountPoint),d(2),Ne("width",e.usePercent,"%")("background",e.usePercent>90?"#f44336":e.usePercent>75?"#ff9800":"#4caf50"),d(3),mn("",t.formatBytes(e.available)," free of ",t.formatBytes(e.total)),d(2),ye("",e.usePercent,"% used")}}function P0(i,o){if(i&1&&(l(0,"div",27)(1,"span",31),u(2,"Last"),c(),l(3,"span",32),u(4),Mo(5,"date"),c()()),i&2){let e=C(3);d(4),Z(Ao(5,1,e.info().timeshift.lastSnapshot,"medium"))}}function N0(i,o){if(i&1&&(l(0,"mat-chip",33),u(1),c()),i&2){let e=o.$implicit;d(),Z(e)}}function L0(i,o){if(i&1&&(l(0,"mat-chip-set"),Le(1,N0,2,1,"mat-chip",33,wi),c()),i&2){let e=C(3);d(),Be(e.info().timeshift.schedules)}}function B0(i,o){if(i&1&&(l(0,"div",6)(1,"h3"),u(2,"Timeshift Backup"),c(),l(3,"div",7)(4,"div",8)(5,"mat-chip-set")(6,"mat-chip",24),u(7),c(),l(8,"mat-chip",25),u(9),c()(),l(10,"span",26),u(11),c()(),S(12,P0,6,4,"div",27),l(13,"div",28),v(14,"div",29),c(),l(15,"div",30)(16,"span"),u(17),c(),S(18,L0,3,0,"mat-chip-set"),c()()(),v(19,"mat-divider",15)),i&2){let e=C(2);d(7),Z(e.info().timeshift.mode),d(2),Z(e.info().timeshift.device),d(2),ye("",e.info().timeshift.snapshots," snapshots"),d(),E(e.info().timeshift.lastSnapshot?12:-1),d(2),Ne("width",e.info().timeshift.totalSpace>0?(e.info().timeshift.totalSpace-e.info().timeshift.freeSpace)/e.info().timeshift.totalSpace*100:0,"%")("background",e.info().timeshift.totalSpace>0&&(e.info().timeshift.totalSpace-e.info().timeshift.freeSpace)/e.info().timeshift.totalSpace>.9?"#f44336":e.info().timeshift.totalSpace>0&&(e.info().timeshift.totalSpace-e.info().timeshift.freeSpace)/e.info().timeshift.totalSpace>.75?"#ff9800":"#4caf50"),d(3),mn("",e.formatBytes(e.info().timeshift.freeSpace)," free of ",e.formatBytes(e.info().timeshift.totalSpace)),d(),E(e.info().timeshift.schedules.length>0?18:-1)}}function V0(i,o){if(i&1&&u(0),i&2){let e=C().$implicit,t=C(2);ye(" ",t.formatBytes(e.size)," ")}}function z0(i,o){i&1&&u(0," \u2014 ")}function j0(i,o){if(i&1&&(l(0,"div",17)(1,"span",34),u(2),c(),l(3,"span",35),S(4,V0,1,1)(5,z0,1,0),c()()),i&2){let e=o.$implicit;d(2),Z(e.path),d(2),E(e.exists?4:5)}}function H0(i,o){if(i&1&&(l(0,"div",6)(1,"h3"),u(2,"Operating System"),c(),l(3,"div",7)(4,"div",8)(5,"mat-chip-set")(6,"mat-chip",9),u(7),c(),l(8,"mat-chip",10),u(9),c()(),S(10,R0,2,1,"span",11),c(),S(11,O0,5,1,"div",12),l(12,"div",12)(13,"span",13),u(14,"Kernel"),c(),l(15,"span",14),u(16),c()()()(),v(17,"mat-divider",15),l(18,"div",6)(19,"h3"),u(20,"Disks"),c(),Le(21,F0,13,9,"div",16,M0),c(),v(23,"mat-divider",15),S(24,B0,20,11),l(25,"div",6)(26,"h3"),u(27,"System Logs"),c(),Le(28,j0,6,2,"div",17,A0),c()),i&2){let e=C();d(7),Z(e.info().hostname),d(2),Z(e.info().os.name),d(),E(e.info().uptime?10:-1),d(),E(e.info().os.version?11:-1),d(5),Z(e.info().kernel),d(5),Be(e.info().disks),d(3),E(e.info().timeshift?24:-1),d(4),Be(e.info().logs)}}var pp=(()=>{class i{constructor(){this.systemService=s(vs),this.dialogRef=s(Xt),this.loading=N(!0),this.info=N(null),this.error=N(null)}ngOnInit(){return Ce(this,null,function*(){try{let e=yield this.systemService.getSystemInfo();this.info.set(e)}catch(e){this.error.set(e instanceof Error?e.message:"Failed to load system info")}finally{this.loading.set(!1)}})}formatBytes(e){return e===0?"0 B":`${(e/(1024*1024*1024)).toFixed(1)} GB`}close(){this.dialogRef.close()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-system-info-dialog"]],decls:12,vars:1,consts:[[1,"dialog-container"],["mat-dialog-title",""],["mode","indeterminate"],[1,"dialog-error"],["align","end"],["mat-raised-button","","color","primary",3,"click"],[1,"info-section"],[1,"info-card"],[1,"info-card-header"],[1,"hostname-chip"],[1,"distro-chip"],[1,"os-uptime"],[1,"info-row"],[1,"info-label"],[1,"info-value"],[1,"section-divider"],[1,"disk-row"],[1,"log-row"],[1,"disk-header"],[1,"disk-device"],[1,"disk-mount"],[1,"disk-bar-bg"],[1,"disk-bar-fill"],[1,"disk-details"],[1,"mode-chip"],[1,"device-chip"],[1,"timeshift-snapshots"],[1,"timeshift-row"],[1,"timeshift-disk-bar-bg"],[1,"timeshift-disk-bar-fill"],[1,"timeshift-disk-details"],[1,"timeshift-label"],[1,"timeshift-value"],[1,"schedule-chip"],[1,"log-path"],[1,"log-size"]],template:function(t,n){t&1&&(l(0,"div",0)(1,"h2",1)(2,"mat-icon"),u(3,"info"),c(),u(4," System Info "),c(),l(5,"mat-dialog-content"),S(6,I0,1,0,"mat-progress-bar",2)(7,T0,2,1,"p",3)(8,H0,30,6),c(),l(9,"mat-dialog-actions",4)(10,"button",5),I("click",function(){return n.close()}),u(11,"OK"),c()()()),t&2&&(d(6),E(n.loading()?6:n.error()?7:n.info()?8:-1))},dependencies:[$e,dt,ht,Ci,nn,an,on,Vi,qn,hs,yc,Kt,qt,po,ha,dh,Ws],styles:[".dialog-container[_ngcontent-%COMP%]{min-width:480px}.dialog-error[_ngcontent-%COMP%]{color:#f44336;padding:8px 0}.info-section[_ngcontent-%COMP%]{margin-bottom:8px}.info-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 8px;font-size:14px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.info-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:4px 0}.info-row[_ngcontent-%COMP%] .info-label[_ngcontent-%COMP%]{color:#666;font-size:14px}.info-row[_ngcontent-%COMP%] .info-value[_ngcontent-%COMP%]{font-family:monospace;font-size:13px;color:#333}.section-divider[_ngcontent-%COMP%]{margin:12px 0}.disk-row[_ngcontent-%COMP%]{margin-bottom:12px}.disk-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;margin-bottom:4px}.disk-header[_ngcontent-%COMP%] .disk-device[_ngcontent-%COMP%]{font-family:monospace;font-size:13px}.disk-header[_ngcontent-%COMP%] .disk-mount[_ngcontent-%COMP%]{font-size:13px;color:#666}.disk-bar-bg[_ngcontent-%COMP%]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:2px}.disk-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:3px}.disk-details[_ngcontent-%COMP%]{display:flex;justify-content:space-between;font-size:12px;color:#666}.info-card[_ngcontent-%COMP%]{background:#f5f5f5;border-radius:8px;padding:12px}.info-card-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.info-card-header[_ngcontent-%COMP%] .hostname-chip[_ngcontent-%COMP%]{font-family:monospace;background:#e8eaf6!important;color:#303f9f!important}.info-card-header[_ngcontent-%COMP%] .distro-chip[_ngcontent-%COMP%], .info-card-header[_ngcontent-%COMP%] .mode-chip[_ngcontent-%COMP%]{font-weight:600;background:#e3f2fd!important;color:#1976d2!important}.info-card-header[_ngcontent-%COMP%] .device-chip[_ngcontent-%COMP%]{font-family:monospace;background:#e8eaf6!important;color:#303f9f!important}.os-uptime[_ngcontent-%COMP%], .timeshift-snapshots[_ngcontent-%COMP%]{font-size:13px;color:#666;white-space:nowrap}.timeshift-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:4px 0;margin-bottom:6px}.timeshift-row[_ngcontent-%COMP%] .timeshift-label[_ngcontent-%COMP%]{color:#666;font-size:13px}.timeshift-row[_ngcontent-%COMP%] .timeshift-value[_ngcontent-%COMP%]{font-size:13px;color:#333}.timeshift-disk-bar-bg[_ngcontent-%COMP%]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:4px}.timeshift-disk-bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:3px}.timeshift-disk-details[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#666}.timeshift-disk-details[_ngcontent-%COMP%] .schedule-chip[_ngcontent-%COMP%]{font-size:11px;background:#fff3e0!important;color:#e65100!important}.log-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:4px 0}.log-row[_ngcontent-%COMP%] .log-path[_ngcontent-%COMP%]{font-family:monospace;font-size:13px}.log-row[_ngcontent-%COMP%] .log-size[_ngcontent-%COMP%]{font-family:monospace;font-size:13px;color:#333}"]})}}return i})();var fp=(()=>{class i{constructor(){this.systemInfo=jn.required(),this.systemService=s(vs),this.dialog=s(bo)}openSystemInfo(){this.dialog.open(pp,{disableClose:!1})}reboot(){return Ce(this,null,function*(){confirm("Reboot the server?")&&(yield this.systemService.reboot())})}shutdown(){return Ce(this,null,function*(){confirm("Shutdown the server?")&&(yield this.systemService.shutdown())})}formatBytes(e){let t=e/1073741824;return`${Math.ceil(t)} GB`}ceilCpu(e){return Math.ceil(e)}colorForUsage(e){return e<40?"#4caf50":e<75?"#ff9800":"#f44336"}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-system-bar"]],inputs:{systemInfo:[1,"systemInfo"]},decls:48,vars:16,consts:[["menu","matMenu"],[1,"system-bar"],[1,"system-panel"],[1,"panel-body"],[1,"panel-icon"],[1,"panel-content"],[1,"panel-header"],[1,"panel-label"],[1,"panel-value"],[1,"bar-bg"],[1,"bar-fill"],[1,"server-controls"],["mat-icon-button","","color","warn","title","Server actions",3,"matMenuTriggerFor"],["yPosition","below"],["mat-menu-item","",3,"click"]],template:function(t,n){if(t&1&&(l(0,"div",1)(1,"mat-card",2)(2,"mat-card-content")(3,"div",3)(4,"mat-icon",4),u(5,"dynamic_feed"),c(),l(6,"div",5)(7,"div",6)(8,"span",7),u(9,"CPU"),c(),l(10,"span",8),u(11),c()(),l(12,"div",9),v(13,"div",10),c()()()()(),l(14,"mat-card",2)(15,"mat-card-content")(16,"div",3)(17,"mat-icon",4),u(18,"memory"),c(),l(19,"div",5)(20,"div",6)(21,"span",7),u(22,"RAM"),c(),l(23,"span",8),u(24),c()(),l(25,"div",9),v(26,"div",10),c()()()()(),l(27,"div",11)(28,"button",12)(29,"mat-icon"),u(30,"more_vert"),c()(),l(31,"mat-menu",13,0)(33,"button",14),I("click",function(){return n.openSystemInfo()}),l(34,"mat-icon"),u(35,"info"),c(),l(36,"span"),u(37,"System info"),c()(),l(38,"button",14),I("click",function(){return n.reboot()}),l(39,"mat-icon"),u(40,"restart_alt"),c(),l(41,"span"),u(42,"Reboot server"),c()(),l(43,"button",14),I("click",function(){return n.shutdown()}),l(44,"mat-icon"),u(45,"power_settings_new"),c(),l(46,"span"),u(47,"Shutdown server"),c()()()()()),t&2){let a=Ye(32);d(10),Ne("color",n.colorForUsage(n.systemInfo().cpuUsage)),d(),ye(" ",n.ceilCpu(n.systemInfo().cpuUsage),"% "),d(2),Ne("width",n.systemInfo().cpuUsage,"%")("background",n.colorForUsage(n.systemInfo().cpuUsage)),d(10),Ne("color",n.colorForUsage(n.systemInfo().memoryPercent)),d(),mn(" ",n.formatBytes(n.systemInfo().memoryUsed)," / ",n.formatBytes(n.systemInfo().memoryTotal)," "),d(2),Ne("width",n.systemInfo().memoryPercent,"%")("background",n.colorForUsage(n.systemInfo().memoryPercent)),d(2),w("matMenuTriggerFor",a)}},dependencies:[$e,Hi,zi,ji,Kt,qt,dt,Mn,as,rn,In,os,Ci],styles:[".system-bar[_ngcontent-%COMP%]{display:flex;gap:16px;margin-bottom:16px;align-items:stretch}.system-panel[_ngcontent-%COMP%]{flex:1}.server-controls[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.panel-body[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.panel-icon[_ngcontent-%COMP%]{color:#757575;font-size:24px;width:24px;height:24px}.panel-content[_ngcontent-%COMP%]{flex:1;min-width:0}.panel-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.panel-label[_ngcontent-%COMP%]{font-weight:500;font-size:.85rem;color:#555;text-transform:uppercase;letter-spacing:.5px}.panel-value[_ngcontent-%COMP%]{font-weight:500;font-size:.9rem;white-space:nowrap}.bar-bg[_ngcontent-%COMP%]{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.bar-fill[_ngcontent-%COMP%]{height:100%;border-radius:3px;transition:width .4s ease,background .4s ease}"]})}}return i})();function U0(i,o){if(i&1&&(l(0,"div",8)(1,"mat-icon",10),u(2,"warning"),c(),u(3),c()),i&2){let e=C(2);d(3),ye(" ",e.loginError()," ")}}function G0(i,o){if(i&1){let e=Ve();l(0,"div",0)(1,"mat-card",1)(2,"mat-card-content")(3,"div",2)(4,"mat-icon",3),u(5,"lock"),c(),l(6,"h2"),u(7,"Authentication Required"),c(),l(8,"p",4),u(9,"Enter your system password to continue"),c()(),l(10,"form",5),I("submit",function(n){return pe(e),C().onLogin(),fe(n.preventDefault())}),l(11,"mat-form-field",6)(12,"mat-label"),u(13,"Password"),c(),l(14,"input",7),I("input",function(n){pe(e);let a=C();return fe(a.loginPassword.set(n.target.value))}),c()(),S(15,U0,4,1,"div",8),l(16,"button",9),u(17,"Sign In"),c()()()()()}if(i&2){let e=C();d(14),w("value",e.loginPassword()),d(),E(e.loginError()?15:-1)}}function $0(i,o){i&1&&v(0,"mat-progress-bar",11)}function W0(i,o){if(i&1&&(l(0,"mat-card",14)(1,"mat-card-content")(2,"mat-icon",18),u(3," error_outline "),c(),l(4,"p"),u(5),c(),l(6,"p",4),u(7,"Make sure the backend is running on port 4242."),c()()()),i&2){let e=C(2);d(5),Z(e.error())}}function q0(i,o){i&1&&(l(0,"mat-card",19)(1,"mat-card-content")(2,"p"),u(3,"No GPUs detected."),c(),l(4,"p",4),u(5,"Ensure nvidia-smi or rocm-smi is available on this system."),c()()())}function K0(i,o){if(i&1){let e=Ve();v(0,"app-system-bar",20),l(1,"app-gpu-table",21),I("gpuLabelChange",function(n){pe(e);let a=C(3);return fe(a.onGpuLabelChange(n))}),c()}if(i&2){let e=C(3);w("systemInfo",e.systemInfo()),d(),w("gpus",e.gpus())}}function Y0(i,o){if(i&1&&(S(0,q0,6,0,"mat-card",19)(1,K0,2,2),v(2,"app-services")),i&2){let e=C(2);E(e.hasGpus()?1:0)}}function X0(i,o){if(i&1){let e=Ve();S(0,$0,1,0,"mat-progress-bar",11),l(1,"div",12)(2,"div",13),S(3,W0,8,1,"mat-card",14)(4,Y0,3,1),c(),l(5,"div",15),I("mousedown",function(n){pe(e);let a=C();return fe(a.startDrag(n))}),v(6,"span",16),c(),l(7,"div",17),v(8,"app-journal-panel"),c()()}if(i&2){let e=C();E(e.loading()?0:-1),d(),f("dragging",e.isDragging()),d(2),E(e.error()?3:4),d(4),Ne("width",e.sidebarWidth(),"px")}}var gp=100,_p=1600,bp=(()=>{class i{ngOnInit(){this.authService.authState.subscribe(t=>{this.isAuthenticated.set(t),t&&(this.loginError.set(null),this.loginPassword.set(""))});let e=localStorage.getItem("journal-sidebar-width");if(e){let t=parseInt(e,10);t>=gp&&t<=_p&&this.sidebarWidth.set(t)}}ngOnDestroy(){}onLogin(){return Ce(this,null,function*(){this.loginError.set(null),(yield this.authService.login(this.loginPassword()))?(this.loading.set(!0),this.initGpus()):this.loginError.set("Invalid password")})}startDrag(e){e.preventDefault(),this.dragOffsetX=e.clientX,this.dragStartWidth=this.sidebarWidth(),this.isDragging.set(!0)}onDrag(e){if(!this.isDragging())return;let t=this.dragOffsetX-e.clientX,n=this.dragStartWidth+t;n=Math.max(gp,Math.min(_p,n)),this.sidebarWidth.set(n)}onDragEnd(){this.isDragging()&&(localStorage.setItem("journal-sidebar-width",String(this.sidebarWidth())),this.isDragging.set(!1))}constructor(){this.gpuService=s(Hu),this.authService=s(cr),this.gpus=N([]),this.systemInfo=N({cpuUsage:0,memoryTotal:0,memoryUsed:0,memoryPercent:0}),this.loading=N(!0),this.error=N(null),this.hasGpus=K(()=>this.gpus().length>0),this.isAuthenticated=N(this.authService.isAuthenticated()),this.loginPassword=N(""),this.loginError=N(null),this.sidebarWidth=N(420),this.isDragging=N(!1),this.dragOffsetX=0,this.dragStartWidth=420,this.isAuthenticated()&&this.initGpus()}initGpus(e=0){this.gpuService.fetchGpus().subscribe({next:t=>{if(t.length===0){e<3?setTimeout(()=>this.initGpus(e+1),5e3):this.loading.set(!1);return}let n=t.map(a=>Se(L({},a),{key:a.pciBusId,usage:0,temperature:0,vramUsed:0}));this.gpus.set(n),this.loading.set(!1),this.error.set(null),this.gpuService.watchStatus(3e5).subscribe({next:a=>{this.systemInfo.set(a.system),this.mergeUsage(a.gpus)},error:a=>{console.error("[AppComponent] status poll error:",a)}})},error:t=>{console.error("[AppComponent] static fetch error:",t),this.error.set(`Failed to fetch GPU data: ${t.message}`),this.loading.set(!1)}})}mergeUsage(e){let t=new Map;for(let n of e)t.set(n.key,n);this.gpus.update(n=>n.map(a=>{let r=t.get(a.pciBusId);return Se(L({},a),{key:a.pciBusId,usage:r?.usage??0,temperature:r?.temperature??0,vramUsed:r?.vramUsed??0})}))}onGpuLabelChange(e){this.gpus.update(t=>t.map(n=>n.pciBusId===e.pciBusId?Se(L({},n),{gpuLabel:e.gpuLabel}):n)),this.gpuService.saveGpuLabel(e.pciBusId,e.gpuLabel).subscribe({error:t=>console.error("[AppComponent] GPU label save error:",t)})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=A({type:i,selectors:[["app-root"]],hostBindings:function(t,n){t&1&&I("mousemove",function(r){return n.onDrag(r)},Ms)("mouseup",function(){return n.onDragEnd()},Ms)},decls:2,vars:1,consts:[[1,"login-container"],[1,"login-card"],[1,"login-header"],[1,"login-icon"],[1,"mat-body-2",2,"color","#999"],[1,"login-form",3,"submit"],["appearance","outline",1,"full-width"],["matInput","","type","password","autofocus","",3,"input","value"],[1,"login-error"],["mat-raised-button","","color","primary","type","submit",1,"login-btn"],[2,"font-size","20px","vertical-align","middle"],["mode","query","color","primary"],[1,"layout"],[1,"main-content"],[1,"error-card"],[1,"splitter",3,"mousedown"],[1,"splitter-line"],[1,"journal-sidebar"],[2,"color","#f44336","font-size","48px","float","left","margin-right","16px"],[1,"empty-card"],[3,"systemInfo"],[3,"gpuLabelChange","gpus"]],template:function(t,n){t&1&&S(0,G0,18,2,"div",0)(1,X0,9,6),t&2&&E(n.isAuthenticated()?1:0)},dependencies:[$e,Vi,qn,Hi,zi,ji,$t,Gt,yt,Ut,Ct,dt,ht,Kt,qt,uh,up,hp,fp],styles:[".spacer[_ngcontent-%COMP%]{flex:1 1 auto}.login-container[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 56px);padding:24px;background:#f5f5f5}.login-card[_ngcontent-%COMP%]{width:100%;max-width:400px}.login-header[_ngcontent-%COMP%]{text-align:center;margin-bottom:24px}.login-header[_ngcontent-%COMP%] .login-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;line-height:48px;background:#e3f2fd;border-radius:50%;padding:8px;color:#1976d2}.login-header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:16px 0 4px;font-size:22px;font-weight:500}.login-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.login-error[_ngcontent-%COMP%]{color:#d32f2f;font-size:14px;text-align:center;padding:8px;background:#ffebee;border-radius:4px}.login-btn[_ngcontent-%COMP%]{width:100%;margin-top:8px}.full-width[_ngcontent-%COMP%]{width:100%}.layout[_ngcontent-%COMP%]{display:flex;height:100%;overflow:hidden}.layout.dragging[_ngcontent-%COMP%]{user-select:none;-webkit-user-select:none}.main-content[_ngcontent-%COMP%]{flex:1;min-width:0;overflow-y:auto;padding:24px 8px 24px 24px;max-width:100%}.splitter[_ngcontent-%COMP%]{width:8px;flex-shrink:0;cursor:col-resize;display:flex;align-items:center;justify-content:center;background:transparent;transition:background .15s}.splitter[_ngcontent-%COMP%]:hover{background:#0000000a}.splitter[_ngcontent-%COMP%] .splitter-line[_ngcontent-%COMP%]{width:2px;height:32px;border-radius:1px;background:#bdbdbd;transition:background .15s,width .15s}.splitter[_ngcontent-%COMP%]:hover .splitter-line[_ngcontent-%COMP%]{background:#757575;width:3px}.journal-sidebar[_ngcontent-%COMP%]{flex-shrink:0;overflow:hidden;padding:24px 24px 24px 8px}.error-card[_ngcontent-%COMP%], .empty-card[_ngcontent-%COMP%]{margin-top:32px;max-width:600px;margin-left:auto;margin-right:auto}[_nghost-%COMP%] mat-card-content{padding-top:10px!important;padding-bottom:10px!important}app-services[_ngcontent-%COMP%]{display:block;margin-top:24px}"]})}}return i})();tl(bp,nm).catch(i=>console.error(i));
|