diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fb773290..68990179 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,8 +6,8 @@ env: solution: 'src\ReportGenerator.sln' buildPlatform: Any CPU buildConfiguration: Release - version: 5.3.10 - dotnetSDKVersion: 8.0.400 + version: 5.3.11 + dotnetSDKVersion: 8.0.403 nodeVersion: 20 jobs: diff --git a/docs/main-VTOBG6SZ.js b/docs/main-VTOBG6SZ.js index d62ff165..35bb8788 100644 --- a/docs/main-VTOBG6SZ.js +++ b/docs/main-VTOBG6SZ.js @@ -5,7 +5,7 @@ ${r.map((n,i)=>`${i+1}) ${n.toString()}`).join(` `+t.message,i,r,n),t[Fy]=i,t[Qo]=null,t}function Hy(t,e,r,n=null){t=t&&t.charAt(0)===` `&&t.charAt(1)==Vy?t.slice(2):t;let i=ke(e);if(Array.isArray(e))i=e.map(ke).join(" -> ");else if(typeof e=="object"){let o=[];for(let s in e)if(e.hasOwnProperty(s)){let a=e[s];o.push(s+":"+(typeof a=="string"?JSON.stringify(a):ke(a)))}i=`{${o.join(", ")}}`}return`${r}${n?"("+n+")":""}[${i}]: ${t.replace(Ly,` `)}`}var Es=yh(uh("Optional"),8);var Mc=yh(uh("SkipSelf"),4);function gr(t,e){let r=t.hasOwnProperty(Yo);return r?t[Yo]:null}function Gy(t,e,r){if(t.length!==e.length)return!1;for(let n=0;nArray.isArray(r)?Tc(r,e):e(r))}function Dh(t,e,r){e>=t.length?t.push(r):t.splice(e,0,r)}function Ko(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function qy(t,e,r,n){let i=t.length;if(i==e)t.push(r,n);else if(i===1)t.push(n,t[0]),t[0]=r;else{for(i--,t.push(t[i-1],t[i]);i>e;){let o=i-2;t[i]=t[o],i--}t[e]=r,t[e+1]=n}}function Wy(t,e,r){let n=vi(t,e);return n>=0?t[n|1]=r:(n=~n,qy(t,n,e,r)),n}function yl(t,e){let r=vi(t,e);if(r>=0)return t[r|1]}function vi(t,e){return Zy(t,e,1)}function Zy(t,e,r){let n=0,i=t.length>>r;for(;i!==n;){let o=n+(i-n>>1),s=t[o<e?i=o:n=o+1}return~(i<e){s=o-1;break}}}for(;o-1){let o;for(;++io?m="":m=i[h+1].toLowerCase(),n&2&&d!==m){if(ct(n))return!1;s=!0}}}}return ct(n)||s}function ct(t){return(t&1)===0}function e0(t,e,r,n){if(e===null)return-1;let i=0;if(n||!r){let o=!1;for(;i-1)for(r++;r0?'="'+a+'"':"")+"]"}else n&8?i+="."+s:n&4&&(i+=" "+s);else i!==""&&!ct(s)&&(e+=Rf(o,i),i=""),n=s,o=o||!ct(n);r++}return i!==""&&(e+=Rf(o,i)),e}function o0(t){return t.map(i0).join(",")}function s0(t){let e=[],r=[],n=1,i=2;for(;n{let e=Th(t),r=W(b({},e),{decls:t.decls,vars:t.vars,template:t.template,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,onPush:t.changeDetection===bh.OnPush,directiveDefs:null,pipeDefs:null,dependencies:e.standalone&&t.dependencies||null,getStandaloneInjector:null,signals:t.signals??!1,data:t.data||{},encapsulation:t.encapsulation||wt.Emulated,styles:t.styles||Xe,_:null,schemas:t.schemas||null,tView:null,id:""});Ah(r);let n=t.dependencies;return r.directiveDefs=kf(n,!1),r.pipeDefs=kf(n,!0),r.id=c0(r),r})}function a0(t){return cn(t)||Ih(t)}function l0(t){return t!==null}function qe(t){return gi(()=>({type:t.type,bootstrap:t.bootstrap||Xe,declarations:t.declarations||Xe,imports:t.imports||Xe,exports:t.exports||Xe,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null}))}function Of(t,e){if(t==null)return vr;let r={};for(let n in t)if(t.hasOwnProperty(n)){let i=t[n],o,s,a=ln.None;Array.isArray(i)?(a=i[0],o=i[1],s=i[2]??o):(o=i,s=i),e?(r[o]=a!==ln.None?[n,a]:n,e[o]=s):r[o]=n}return r}function ne(t){return gi(()=>{let e=Th(t);return Ah(e),e})}function cn(t){return t[Ty]||null}function Ih(t){return t[Ay]||null}function xh(t){return t[Ny]||null}function Sh(t){let e=cn(t)||Ih(t)||xh(t);return e!==null?e.standalone:!1}function Mh(t,e){let r=t[Ry]||null;if(!r&&e===!0)throw new Error(`Type ${ke(t)} does not have '\u0275mod' property.`);return r}function Th(t){let e={};return{type:t.type,providersResolver:null,factory:null,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputTransforms:null,inputConfig:t.inputs||vr,exportAs:t.exportAs||null,standalone:t.standalone===!0,signals:t.signals===!0,selectors:t.selectors||Xe,viewQuery:t.viewQuery||null,features:t.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:Of(t.inputs,e),outputs:Of(t.outputs),debugInfo:null}}function Ah(t){t.features?.forEach(e=>e(t))}function kf(t,e){if(!t)return null;let r=e?xh:a0;return()=>(typeof t=="function"?t():t).map(n=>r(n)).filter(l0)}function c0(t){let e=0,r=[t.selectors,t.ngContentSelectors,t.hostVars,t.hostAttrs,t.consts,t.vars,t.decls,t.encapsulation,t.standalone,t.signals,t.exportAs,JSON.stringify(t.inputs),JSON.stringify(t.outputs),Object.getOwnPropertyNames(t.type.prototype),!!t.contentQueries,!!t.viewQuery].join("|");for(let i of r)e=Math.imul(31,e)+i.charCodeAt(0)<<0;return e+=2147483648,"c"+e}function _s(t){return{\u0275providers:t}}function Nc(...t){return{\u0275providers:Nh(!0,t),\u0275fromNgModule:!0}}function Nh(t,...e){let r=[],n=new Set,i,o=s=>{r.push(s)};return Tc(e,s=>{let a=s;Pl(a,o,[],n)&&(i||=[],i.push(a))}),i!==void 0&&Rh(i,o),r}function Rh(t,e){for(let r=0;r{e(o,n)})}}function Pl(t,e,r,n){if(t=Oe(t),!t)return!1;let i=null,o=Sf(t),s=!o&&cn(t);if(!o&&!s){let l=t.ngModule;if(o=Sf(l),o)i=l;else return!1}else{if(s&&!s.standalone)return!1;i=t}let a=n.has(i);if(s){if(a)return!1;if(n.add(i),s.dependencies){let l=typeof s.dependencies=="function"?s.dependencies():s.dependencies;for(let d of l)Pl(d,e,r,n)}}else if(o){if(o.imports!=null&&!a){n.add(i);let d;try{Tc(o.imports,h=>{Pl(h,e,r,n)&&(d||=[],d.push(h))})}finally{}d!==void 0&&Rh(d,e)}if(!a){let d=gr(i)||(()=>new i);e({provide:i,useFactory:d,deps:Xe},i),e({provide:wh,useValue:i,multi:!0},i),e({provide:yr,useValue:()=>I(i),multi:!0},i)}let l=o.providers;if(l!=null&&!a){let d=t;Rc(l,h=>{e(h,d)})}}else return!1;return i!==t&&t.providers!==void 0}function Rc(t,e){for(let r of t)mh(r)&&(r=r.\u0275providers),Array.isArray(r)?Rc(r,e):e(r)}var u0=te({provide:String,useValue:te});function Oh(t){return t!==null&&typeof t=="object"&&u0 in t}function d0(t){return!!(t&&t.useExisting)}function f0(t){return!!(t&&t.useFactory)}function Dr(t){return typeof t=="function"}function h0(t){return!!t.useClass}var Is=new x(""),Ho={},p0={},Dl;function Oc(){return Dl===void 0&&(Dl=new Jo),Dl}var Pe=class{},fi=class extends Pe{get destroyed(){return this._destroyed}constructor(e,r,n,i){super(),this.parent=r,this.source=n,this.scopes=i,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Ll(e,s=>this.processProvider(s)),this.records.set(Ch,ur(void 0,this)),i.has("environment")&&this.records.set(Pe,ur(void 0,this));let o=this.records.get(Is);o!=null&&typeof o.value=="string"&&this.scopes.add(o.value),this.injectorDefTypes=new Set(this.get(wh,Xe,H.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;let e=q(null);try{for(let n of this._ngOnDestroyHooks)n.ngOnDestroy();let r=this._onDestroyHooks;this._onDestroyHooks=[];for(let n of r)n()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),q(e)}}onDestroy(e){return this.assertNotDestroyed(),this._onDestroyHooks.push(e),()=>this.removeOnDestroy(e)}runInContext(e){this.assertNotDestroyed();let r=on(this),n=Je(void 0),i;try{return e()}finally{on(r),Je(n)}}get(e,r=ui,n=H.Default){if(this.assertNotDestroyed(),e.hasOwnProperty(Tf))return e[Tf](this);n=bs(n);let i,o=on(this),s=Je(void 0);try{if(!(n&H.SkipSelf)){let l=this.records.get(e);if(l===void 0){let d=D0(e)&&Cs(e);d&&this.injectableDefInScope(d)?l=ur(Fl(e),Ho):l=null,this.records.set(e,l)}if(l!=null)return this.hydrate(e,l)}let a=n&H.Self?Oc():this.parent;return r=n&H.Optional&&r===ui?null:r,a.get(e,r)}catch(a){if(a.name==="NullInjectorError"){if((a[Qo]=a[Qo]||[]).unshift(ke(e)),o)throw a;return $y(a,e,"R3InjectorError",this.source)}else throw a}finally{Je(s),on(o)}}resolveInjectorInitializers(){let e=q(null),r=on(this),n=Je(void 0),i;try{let o=this.get(yr,Xe,H.Self);for(let s of o)s()}finally{on(r),Je(n),q(e)}}toString(){let e=[],r=this.records;for(let n of r.keys())e.push(ke(n));return`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new M(205,!1)}processProvider(e){e=Oe(e);let r=Dr(e)?e:Oe(e&&e.provide),n=g0(e);if(!Dr(e)&&e.multi===!0){let i=this.records.get(r);i||(i=ur(void 0,Ho,!0),i.factory=()=>Ol(i.multi),this.records.set(r,i)),r=e,i.multi.push(e)}this.records.set(r,n)}hydrate(e,r){let n=q(null);try{return r.value===Ho&&(r.value=p0,r.value=r.factory()),typeof r.value=="object"&&r.value&&y0(r.value)&&this._ngOnDestroyHooks.add(r.value),r.value}finally{q(n)}}injectableDefInScope(e){if(!e.providedIn)return!1;let r=Oe(e.providedIn);return typeof r=="string"?r==="any"||this.scopes.has(r):this.injectorDefTypes.has(r)}removeOnDestroy(e){let r=this._onDestroyHooks.indexOf(e);r!==-1&&this._onDestroyHooks.splice(r,1)}};function Fl(t){let e=Cs(t),r=e!==null?e.factory:gr(t);if(r!==null)return r;if(t instanceof x)throw new M(204,!1);if(t instanceof Function)return m0(t);throw new M(204,!1)}function m0(t){if(t.length>0)throw new M(204,!1);let r=Sy(t);return r!==null?()=>r.factory(t):()=>new t}function g0(t){if(Oh(t))return ur(void 0,t.useValue);{let e=kh(t);return ur(e,Ho)}}function kh(t,e,r){let n;if(Dr(t)){let i=Oe(t);return gr(i)||Fl(i)}else if(Oh(t))n=()=>Oe(t.useValue);else if(f0(t))n=()=>t.useFactory(...Ol(t.deps||[]));else if(d0(t))n=()=>I(Oe(t.useExisting));else{let i=Oe(t&&(t.useClass||t.provide));if(v0(t))n=()=>new i(...Ol(t.deps));else return gr(i)||Fl(i)}return n}function ur(t,e,r=!1){return{factory:t,value:e,multi:r?[]:void 0}}function v0(t){return!!t.deps}function y0(t){return t!==null&&typeof t=="object"&&typeof t.ngOnDestroy=="function"}function D0(t){return typeof t=="function"||typeof t=="object"&&t instanceof x}function Ll(t,e){for(let r of t)Array.isArray(r)?Ll(r,e):r&&mh(r)?Ll(r.\u0275providers,e):e(r)}function it(t,e){t instanceof fi&&t.assertNotDestroyed();let r,n=on(t),i=Je(void 0);try{return e()}finally{on(n),Je(i)}}function Ph(){return gh()!==void 0||jy()!=null}function C0(t){if(!Ph())throw new M(-203,!1)}function w0(t){return typeof t=="function"}var Vt=0,j=1,O=2,Te=3,ut=4,dt=5,Xo=6,es=7,tt=8,Cr=9,bt=10,ge=11,hi=12,Pf=13,Mr=14,Et=15,An=16,dr=17,kt=18,xs=19,Fh=20,sn=21,Cl=22,et=23,nt=25,Lh=1;var Nn=7,ts=8,wr=9,je=10,ns=function(t){return t[t.None=0]="None",t[t.HasTransplantedViews=2]="HasTransplantedViews",t}(ns||{});function an(t){return Array.isArray(t)&&typeof t[Lh]=="object"}function jt(t){return Array.isArray(t)&&t[Lh]===!0}function kc(t){return(t.flags&4)!==0}function Ss(t){return t.componentOffset>-1}function Ms(t){return(t.flags&1)===1}function un(t){return!!t.template}function Vl(t){return(t[O]&512)!==0}var jl=class{constructor(e,r,n){this.previousValue=e,this.currentValue=r,this.firstChange=n}isFirstChange(){return this.firstChange}};function Vh(t,e,r,n){e!==null?e.applyValueToInputSignal(e,n):t[r]=n}function Ut(){return jh}function jh(t){return t.type.prototype.ngOnChanges&&(t.setInput=E0),b0}Ut.ngInherit=!0;function b0(){let t=Bh(this),e=t?.current;if(e){let r=t.previous;if(r===vr)t.previous=e;else for(let n in e)r[n]=e[n];t.current=null,this.ngOnChanges(e)}}function E0(t,e,r,n,i){let o=this.declaredInputs[n],s=Bh(t)||_0(t,{previous:vr,current:null}),a=s.current||(s.current={}),l=s.previous,d=l[o];a[o]=new jl(d&&d.currentValue,r,l===vr),Vh(t,e,i,r)}var Uh="__ngSimpleChanges__";function Bh(t){return t[Uh]||null}function _0(t,e){return t[Uh]=e}var Ff=null;var yt=function(t,e,r){Ff?.(t,e,r)},I0="svg",x0="math";function _t(t){for(;Array.isArray(t);)t=t[Vt];return t}function $h(t,e){return _t(e[t])}function ot(t,e){return _t(e[t.index])}function Pc(t,e){return t.data[e]}function S0(t,e){return t[e]}function hn(t,e){let r=e[t];return an(r)?r:r[Vt]}function M0(t){return(t[O]&4)===4}function Fc(t){return(t[O]&128)===128}function T0(t){return jt(t[Te])}function br(t,e){return e==null?null:t[e]}function Hh(t){t[dr]=0}function Gh(t){t[O]&1024||(t[O]|=1024,Fc(t)&&As(t))}function A0(t,e){for(;t>0;)e=e[Mr],t--;return e}function Ts(t){return!!(t[O]&9216||t[et]?.dirty)}function Ul(t){t[bt].changeDetectionScheduler?.notify(8),t[O]&64&&(t[O]|=1024),Ts(t)&&As(t)}function As(t){t[bt].changeDetectionScheduler?.notify(0);let e=Rn(t);for(;e!==null&&!(e[O]&8192||(e[O]|=8192,!Fc(e)));)e=Rn(e)}function zh(t,e){if((t[O]&256)===256)throw new M(911,!1);t[sn]===null&&(t[sn]=[]),t[sn].push(e)}function N0(t,e){if(t[sn]===null)return;let r=t[sn].indexOf(e);r!==-1&&t[sn].splice(r,1)}function Rn(t){let e=t[Te];return jt(e)?e[Te]:e}var G={lFrame:ep(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var qh=!1;function R0(){return G.lFrame.elementDepthCount}function O0(){G.lFrame.elementDepthCount++}function k0(){G.lFrame.elementDepthCount--}function Wh(){return G.bindingsEnabled}function P0(){return G.skipHydrationRootTNode!==null}function F0(t){return G.skipHydrationRootTNode===t}function L0(){G.skipHydrationRootTNode=null}function Q(){return G.lFrame.lView}function _e(){return G.lFrame.tView}function F(t){return G.lFrame.contextLView=t,t[tt]}function L(t){return G.lFrame.contextLView=null,t}function Me(){let t=Zh();for(;t!==null&&t.type===64;)t=t.parent;return t}function Zh(){return G.lFrame.currentTNode}function V0(){let t=G.lFrame,e=t.currentTNode;return t.isParent?e:e.parent}function jn(t,e){let r=G.lFrame;r.currentTNode=t,r.isParent=e}function Lc(){return G.lFrame.isParent}function Yh(){G.lFrame.isParent=!1}function j0(){return G.lFrame.contextLView}function Qh(){return qh}function Lf(t){qh=t}function Vc(){let t=G.lFrame,e=t.bindingRootIndex;return e===-1&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function U0(t){return G.lFrame.bindingIndex=t}function yi(){return G.lFrame.bindingIndex++}function B0(t){let e=G.lFrame,r=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,r}function $0(){return G.lFrame.inI18n}function H0(t,e){let r=G.lFrame;r.bindingIndex=r.bindingRootIndex=t,Bl(e)}function G0(){return G.lFrame.currentDirectiveIndex}function Bl(t){G.lFrame.currentDirectiveIndex=t}function z0(t){let e=G.lFrame.currentDirectiveIndex;return e===-1?null:t[e]}function Kh(){return G.lFrame.currentQueryIndex}function jc(t){G.lFrame.currentQueryIndex=t}function q0(t){let e=t[j];return e.type===2?e.declTNode:e.type===1?t[dt]:null}function Jh(t,e,r){if(r&H.SkipSelf){let i=e,o=t;for(;i=i.parent,i===null&&!(r&H.Host);)if(i=q0(o),i===null||(o=o[Mr],i.type&10))break;if(i===null)return!1;e=i,t=o}let n=G.lFrame=Xh();return n.currentTNode=e,n.lView=t,!0}function Uc(t){let e=Xh(),r=t[j];G.lFrame=e,e.currentTNode=r.firstChild,e.lView=t,e.tView=r,e.contextLView=t,e.bindingIndex=r.bindingStartIndex,e.inI18n=!1}function Xh(){let t=G.lFrame,e=t===null?null:t.child;return e===null?ep(t):e}function ep(t){let e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return t!==null&&(t.child=e),e}function tp(){let t=G.lFrame;return G.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}var np=tp;function Bc(){let t=tp();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function W0(t){return(G.lFrame.contextLView=A0(t,G.lFrame.contextLView))[tt]}function Tr(){return G.lFrame.selectedIndex}function On(t){G.lFrame.selectedIndex=t}function Ns(){let t=G.lFrame;return Pc(t.tView,t.selectedIndex)}function Z0(){return G.lFrame.currentNamespace}var rp=!0;function Rs(){return rp}function Os(t){rp=t}function Y0(t,e,r){let{ngOnChanges:n,ngOnInit:i,ngDoCheck:o}=e.type.prototype;if(n){let s=jh(e);(r.preOrderHooks??=[]).push(t,s),(r.preOrderCheckHooks??=[]).push(t,s)}i&&(r.preOrderHooks??=[]).push(0-t,i),o&&((r.preOrderHooks??=[]).push(t,o),(r.preOrderCheckHooks??=[]).push(t,o))}function ks(t,e){for(let r=e.directiveStart,n=e.directiveEnd;r=n)break}else e[l]<0&&(t[dr]+=65536),(a>14>16&&(t[O]&3)===e&&(t[O]+=16384,Vf(a,o)):Vf(a,o)}var mr=-1,kn=class{constructor(e,r,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=r,this.injectImpl=n}};function K0(t){return t instanceof kn}function J0(t){return(t.flags&8)!==0}function X0(t){return(t.flags&16)!==0}var bl={},$l=class{constructor(e,r){this.injector=e,this.parentInjector=r}get(e,r,n){n=bs(n);let i=this.injector.get(e,bl,n);return i!==bl||r===bl?i:this.parentInjector.get(e,r,n)}};function op(t){return t!==mr}function rs(t){return t&32767}function eD(t){return t>>16}function is(t,e){let r=eD(t),n=e;for(;r>0;)n=n[Mr],r--;return n}var Hl=!0;function jf(t){let e=Hl;return Hl=t,e}var tD=256,sp=tD-1,ap=5,nD=0,Dt={};function rD(t,e,r){let n;typeof r=="string"?n=r.charCodeAt(0)||0:r.hasOwnProperty(ci)&&(n=r[ci]),n==null&&(n=r[ci]=nD++);let i=n&sp,o=1<>ap)]|=o}function os(t,e){let r=lp(t,e);if(r!==-1)return r;let n=e[j];n.firstCreatePass&&(t.injectorIndex=e.length,El(n.data,t),El(e,null),El(n.blueprint,null));let i=$c(t,e),o=t.injectorIndex;if(op(i)){let s=rs(i),a=is(i,e),l=a[j].data;for(let d=0;d<8;d++)e[o+d]=a[s+d]|l[s+d]}return e[o+8]=i,o}function El(t,e){t.push(0,0,0,0,0,0,0,0,e)}function lp(t,e){return t.injectorIndex===-1||t.parent&&t.parent.injectorIndex===t.injectorIndex||e[t.injectorIndex+8]===null?-1:t.injectorIndex}function $c(t,e){if(t.parent&&t.parent.injectorIndex!==-1)return t.parent.injectorIndex;let r=0,n=null,i=e;for(;i!==null;){if(n=hp(i),n===null)return mr;if(r++,i=i[Mr],n.injectorIndex!==-1)return n.injectorIndex|r<<16}return mr}function Gl(t,e,r){rD(t,e,r)}function iD(t,e){if(e==="class")return t.classes;if(e==="style")return t.styles;let r=t.attrs;if(r){let n=r.length,i=0;for(;i>20,m=n?a:a+h,v=i?a+h:d;for(let y=m;y=l&&w.type===r)return y}if(i){let y=s[l];if(y&&un(y)&&y.type===r)return l}return null}function Pn(t,e,r,n){let i=t[r],o=e.data;if(K0(i)){let s=i;s.resolving&&ky(Oy(o[r]));let a=jf(s.canSeeViewProviders);s.resolving=!0;let l,d=s.injectImpl?Je(s.injectImpl):null,h=Jh(t,n,H.Default);try{i=t[r]=s.factory(void 0,o,t,n),e.firstCreatePass&&r>=n.directiveStart&&Y0(r,o[r],e)}finally{d!==null&&Je(d),jf(a),s.resolving=!1,np()}}return i}function sD(t){if(typeof t=="string")return t.charCodeAt(0)||0;let e=t.hasOwnProperty(ci)?t[ci]:void 0;return typeof e=="number"?e>=0?e&sp:aD:e}function Uf(t,e,r){let n=1<>ap)]&n)}function Bf(t,e){return!(t&H.Self)&&!(t&H.Host&&e)}var Tn=class{constructor(e,r){this._tNode=e,this._lView=r}get(e,r,n){return dp(this._tNode,this._lView,e,bs(n),r)}};function aD(){return new Tn(Me(),Q())}function ft(t){return gi(()=>{let e=t.prototype.constructor,r=e[Yo]||zl(e),n=Object.prototype,i=Object.getPrototypeOf(t.prototype).constructor;for(;i&&i!==n;){let o=i[Yo]||zl(i);if(o&&o!==r)return o;i=Object.getPrototypeOf(i)}return o=>new o})}function zl(t){return dh(t)?()=>{let e=zl(Oe(t));return e&&e()}:gr(t)}function lD(t,e,r,n,i){let o=t,s=e;for(;o!==null&&s!==null&&s[O]&2048&&!(s[O]&512);){let a=fp(o,s,r,n|H.Self,Dt);if(a!==Dt)return a;let l=o.parent;if(!l){let d=s[Fh];if(d){let h=d.get(r,Dt,n);if(h!==Dt)return h}l=hp(s),s=s[Mr]}o=l}return i}function hp(t){let e=t[j],r=e.type;return r===2?e.declTNode:r===1?t[dt]:null}function Hc(t){return iD(Me(),t)}function $f(t,e=null,r=null,n){let i=pp(t,e,r,n);return i.resolveInjectorInitializers(),i}function pp(t,e=null,r=null,n,i=new Set){let o=[r||Xe,Nc(t)];return n=n||(typeof t=="object"?void 0:ke(t)),new fi(o,e||Oc(),n||null,i)}var Sn=class Sn{static create(e,r){if(Array.isArray(e))return $f({name:""},r,e,"");{let n=e.name??"";return $f({name:n},e.parent,e.providers,n)}}};Sn.THROW_IF_NOT_FOUND=ui,Sn.NULL=new Jo,Sn.\u0275prov=E({token:Sn,providedIn:"any",factory:()=>I(Ch)}),Sn.__NG_ELEMENT_ID__=-1;var rt=Sn;var cD=new x("");cD.__NG_ELEMENT_ID__=t=>{let e=Me();if(e===null)throw new M(204,!1);if(e.type&2)return e.value;if(t&H.Optional)return null;throw new M(204,!1)};var uD="ngOriginalError";function _l(t){return t[uD]}var mp=!0,Gc=(()=>{let e=class e{};e.__NG_ELEMENT_ID__=dD,e.__NG_ENV_ID__=n=>n;let t=e;return t})(),ql=class extends Gc{constructor(e){super(),this._lView=e}onDestroy(e){return zh(this._lView,e),()=>N0(this._lView,e)}};function dD(){return new ql(Q())}var Bt=(()=>{let e=class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new xe(!1)}get _hasPendingTasks(){return this.hasPendingTasks.value}add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);let n=this.taskId++;return this.pendingTasks.add(n),n}remove(n){this.pendingTasks.delete(n),this.pendingTasks.size===0&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}};e.\u0275prov=E({token:e,providedIn:"root",factory:()=>new e});let t=e;return t})();var Wl=class extends be{constructor(e=!1){super(),this.destroyRef=void 0,this.pendingTasks=void 0,this.__isAsync=e,Ph()&&(this.destroyRef=C(Gc,{optional:!0})??void 0,this.pendingTasks=C(Bt,{optional:!0})??void 0)}emit(e){let r=q(null);try{super.next(e)}finally{q(r)}}subscribe(e,r,n){let i=e,o=r||(()=>null),s=n;if(e&&typeof e=="object"){let l=e;i=l.next?.bind(l),o=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(o=this.wrapInTimeout(o),i&&(i=this.wrapInTimeout(i)),s&&(s=this.wrapInTimeout(s)));let a=super.subscribe({next:i,error:o,complete:s});return e instanceof ye&&e.add(a),a}wrapInTimeout(e){return r=>{let n=this.pendingTasks?.add();setTimeout(()=>{e(r),n!==void 0&&this.pendingTasks?.remove(n)})}}},he=Wl;function ss(...t){}function gp(t){let e,r;function n(){t=ss;try{r!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(r),e!==void 0&&clearTimeout(e)}catch{}}return e=setTimeout(()=>{t(),n()}),typeof requestAnimationFrame=="function"&&(r=requestAnimationFrame(()=>{t(),n()})),()=>n()}function Hf(t){return queueMicrotask(()=>t()),()=>{t=ss}}var zc="isAngularZone",as=zc+"_ID",fD=0,ee=class t{constructor(e){this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new he(!1),this.onMicrotaskEmpty=new he(!1),this.onStable=new he(!1),this.onError=new he(!1);let{enableLongStackTrace:r=!1,shouldCoalesceEventChangeDetection:n=!1,shouldCoalesceRunChangeDetection:i=!1,scheduleInRootZone:o=mp}=e;if(typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();let s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),r&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!i&&n,s.shouldCoalesceRunChangeDetection=i,s.callbackScheduled=!1,s.scheduleInRootZone=o,mD(s)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(zc)===!0}static assertInAngularZone(){if(!t.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(t.isInAngularZone())throw new M(909,!1)}run(e,r,n){return this._inner.run(e,r,n)}runTask(e,r,n,i){let o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+i,e,hD,ss,ss);try{return o.runTask(s,r,n)}finally{o.cancelTask(s)}}runGuarded(e,r,n){return this._inner.runGuarded(e,r,n)}runOutsideAngular(e){return this._outer.run(e)}},hD={};function qc(t){if(t._nesting==0&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function pD(t){if(t.isCheckStableRunning||t.callbackScheduled)return;t.callbackScheduled=!0;function e(){gp(()=>{t.callbackScheduled=!1,Zl(t),t.isCheckStableRunning=!0,qc(t),t.isCheckStableRunning=!1})}t.scheduleInRootZone?Zone.root.run(()=>{e()}):t._outer.run(()=>{e()}),Zl(t)}function mD(t){let e=()=>{pD(t)},r=fD++;t._inner=t._inner.fork({name:"angular",properties:{[zc]:!0,[as]:r,[as+r]:!0},onInvokeTask:(n,i,o,s,a,l)=>{if(gD(l))return n.invokeTask(o,s,a,l);try{return Gf(t),n.invokeTask(o,s,a,l)}finally{(t.shouldCoalesceEventChangeDetection&&s.type==="eventTask"||t.shouldCoalesceRunChangeDetection)&&e(),zf(t)}},onInvoke:(n,i,o,s,a,l,d)=>{try{return Gf(t),n.invoke(o,s,a,l,d)}finally{t.shouldCoalesceRunChangeDetection&&!t.callbackScheduled&&!vD(l)&&e(),zf(t)}},onHasTask:(n,i,o,s)=>{n.hasTask(o,s),i===o&&(s.change=="microTask"?(t._hasPendingMicrotasks=s.microTask,Zl(t),qc(t)):s.change=="macroTask"&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(n,i,o,s)=>(n.handleError(o,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}function Zl(t){t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&t.callbackScheduled===!0?t.hasPendingMicrotasks=!0:t.hasPendingMicrotasks=!1}function Gf(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function zf(t){t._nesting--,qc(t)}var Yl=class{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new he,this.onMicrotaskEmpty=new he,this.onStable=new he,this.onError=new he}run(e,r,n){return e.apply(r,n)}runGuarded(e,r,n){return e.apply(r,n)}runOutsideAngular(e){return e()}runTask(e,r,n,i){return e.apply(r,n)}};function gD(t){return vp(t,"__ignore_ng_zone__")}function vD(t){return vp(t,"__scheduler_tick__")}function vp(t,e){return!Array.isArray(t)||t.length!==1?!1:t[0]?.data?.[e]===!0}var Pt=class{constructor(){this._console=console}handleError(e){let r=this._findOriginalError(e);this._console.error("ERROR",e),r&&this._console.error("ORIGINAL ERROR",r)}_findOriginalError(e){let r=e&&_l(e);for(;r&&_l(r);)r=_l(r);return r||null}},yD=new x("",{providedIn:"root",factory:()=>{let t=C(ee),e=C(Pt);return r=>t.runOutsideAngular(()=>e.handleError(r))}});function DD(){return Ar(Me(),Q())}function Ar(t,e){return new Ae(ot(t,e))}var Ae=(()=>{let e=class e{constructor(n){this.nativeElement=n}};e.__NG_ELEMENT_ID__=DD;let t=e;return t})();function CD(t){return t instanceof Ae?t.nativeElement:t}function wD(){return this._results[Symbol.iterator]()}var Ql=class t{get changes(){return this._changes??=new he}constructor(e=!1){this._emitDistinctChangesOnly=e,this.dirty=!0,this._onDirty=void 0,this._results=[],this._changesDetected=!1,this._changes=void 0,this.length=0,this.first=void 0,this.last=void 0;let r=t.prototype;r[Symbol.iterator]||(r[Symbol.iterator]=wD)}get(e){return this._results[e]}map(e){return this._results.map(e)}filter(e){return this._results.filter(e)}find(e){return this._results.find(e)}reduce(e,r){return this._results.reduce(e,r)}forEach(e){this._results.forEach(e)}some(e){return this._results.some(e)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(e,r){this.dirty=!1;let n=zy(e);(this._changesDetected=!Gy(this._results,n,r))&&(this._results=n,this.length=n.length,this.last=n[this.length-1],this.first=n[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.emit(this)}onDirty(e){this._onDirty=e}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}};function yp(t){return(t.flags&128)===128}var Dp=new Map,bD=0;function ED(){return bD++}function _D(t){Dp.set(t[xs],t)}function Kl(t){Dp.delete(t[xs])}var qf="__ngContext__";function dn(t,e){an(e)?(t[qf]=e[xs],_D(e)):t[qf]=e}function Cp(t){return bp(t[hi])}function wp(t){return bp(t[ut])}function bp(t){for(;t!==null&&!jt(t);)t=t[ut];return t}var Jl;function Ep(t){Jl=t}function ID(){if(Jl!==void 0)return Jl;if(typeof document<"u")return document;throw new M(210,!1)}var Ps=new x("",{providedIn:"root",factory:()=>xD}),xD="ng",Wc=new x(""),It=new x("",{providedIn:"platform",factory:()=>"unknown"});var Zc=new x("",{providedIn:"root",factory:()=>ID().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var SD="h",MD="b";var TD=()=>null;function Yc(t,e,r=!1){return TD(t,e,r)}var _p=!1,AD=new x("",{providedIn:"root",factory:()=>_p});var jo;function ND(){if(jo===void 0&&(jo=null,Ct.trustedTypes))try{jo=Ct.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch{}return jo}function Wf(t){return ND()?.createScriptURL(t)||t}var ls=class{constructor(e){this.changingThisBreaksApplicationSecurity=e}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${ch})`}};function Di(t){return t instanceof ls?t.changingThisBreaksApplicationSecurity:t}function Qc(t,e){let r=RD(t);if(r!=null&&r!==e){if(r==="ResourceURL"&&e==="URL")return!0;throw new Error(`Required a safe ${e}, got a ${r} (see ${ch})`)}return r===e}function RD(t){return t instanceof ls&&t.getTypeName()||null}var OD=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Ip(t){return t=String(t),t.match(OD)?t:"unsafe:"+t}var Fs=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}(Fs||{});function Nr(t){let e=Sp();return e?e.sanitize(Fs.URL,t)||"":Qc(t,"URL")?Di(t):Ip(ws(t))}function kD(t){let e=Sp();if(e)return Wf(e.sanitize(Fs.RESOURCE_URL,t)||"");if(Qc(t,"ResourceURL"))return Wf(Di(t));throw new M(904,!1)}function PD(t,e){return e==="src"&&(t==="embed"||t==="frame"||t==="iframe"||t==="media"||t==="script")||e==="href"&&(t==="base"||t==="link")?kD:Nr}function xp(t,e,r){return PD(e,r)(t)}function Sp(){let t=Q();return t&&t[bt].sanitizer}var FD=/^>|^->||--!>|)/g,VD="\u200B$1\u200B";function jD(t){return t.replace(FD,e=>e.replace(LD,VD))}function Mp(t){return t instanceof Function?t():t}function UD(t){return(t??C(rt)).get(It)==="browser"}var Ft=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}(Ft||{}),BD;function Kc(t,e){return BD(t,e)}function fr(t,e,r,n,i){if(n!=null){let o,s=!1;jt(n)?o=n:an(n)&&(s=!0,n=n[Vt]);let a=_t(n);t===0&&r!==null?i==null?Rp(e,r,a):us(e,r,a,i||null,!0):t===1&&r!==null?us(e,r,a,i||null,!0):t===2?rC(e,a,s):t===3&&e.destroyNode(a),o!=null&&oC(e,t,o,r,i)}}function $D(t,e){return t.createText(e)}function HD(t,e,r){t.setValue(e,r)}function GD(t,e){return t.createComment(jD(e))}function Tp(t,e,r){return t.createElement(e,r)}function zD(t,e){Ap(t,e),e[Vt]=null,e[dt]=null}function qD(t,e,r,n,i,o){n[Vt]=i,n[dt]=e,Vs(t,n,r,1,i,o)}function Ap(t,e){e[bt].changeDetectionScheduler?.notify(9),Vs(t,e,e[ge],2,null,null)}function WD(t){let e=t[hi];if(!e)return Il(t[j],t);for(;e;){let r=null;if(an(e))r=e[hi];else{let n=e[je];n&&(r=n)}if(!r){for(;e&&!e[ut]&&e!==t;)an(e)&&Il(e[j],e),e=e[Te];e===null&&(e=t),an(e)&&Il(e[j],e),r=e&&e[ut]}e=r}}function ZD(t,e,r,n){let i=je+n,o=r.length;n>0&&(r[i-1][ut]=e),n0&&(t[r-1][ut]=n[ut]);let o=Ko(t,je+e);zD(n[j],n);let s=o[kt];s!==null&&s.detachView(o[j]),n[Te]=null,n[ut]=null,n[O]&=-129}return n}function Xc(t,e){if(!(e[O]&256)){let r=e[ge];r.destroyNode&&Vs(t,e,r,3,null,null),WD(e)}}function Il(t,e){if(e[O]&256)return;let r=q(null);try{e[O]&=-129,e[O]|=256,e[et]&&el(e[et]),QD(t,e),YD(t,e),e[j].type===1&&e[ge].destroy();let n=e[An];if(n!==null&&jt(e[Te])){n!==e[Te]&&Jc(n,e);let i=e[kt];i!==null&&i.detachView(t)}Kl(e)}finally{q(r)}}function YD(t,e){let r=t.cleanup,n=e[es];if(r!==null)for(let o=0;o=0?n[s]():n[-s].unsubscribe(),o+=2}else{let s=n[r[o+1]];r[o].call(s)}n!==null&&(e[es]=null);let i=e[sn];if(i!==null){e[sn]=null;for(let o=0;o-1){let{encapsulation:o}=t.data[n.directiveStart+i];if(o===wt.None||o===wt.Emulated)return null}return ot(n,r)}}function us(t,e,r,n,i){t.insertBefore(e,r,n,i)}function Rp(t,e,r){t.appendChild(e,r)}function Zf(t,e,r,n,i){n!==null?us(t,e,r,n,i):Rp(t,e,r)}function Op(t,e){return t.parentNode(e)}function XD(t,e){return t.nextSibling(e)}function eC(t,e,r){return nC(t,e,r)}function tC(t,e,r){return t.type&40?ot(t,r):null}var nC=tC,Yf;function Ls(t,e,r,n){let i=KD(t,n,e),o=e[ge],s=n.parent||e[dt],a=eC(s,n,e);if(i!=null)if(Array.isArray(r))for(let l=0;lnt&&Lp(t,e,nt,!1),yt(s?2:0,i),r(n,i)}finally{On(o),yt(s?3:1,i)}}function tu(t,e,r){if(kc(e)){let n=q(null);try{let i=e.directiveStart,o=e.directiveEnd;for(let s=i;snull;function pC(t,e,r,n){let i=Wp(e);i.push(r),t.firstCreatePass&&Zp(t).push(n,i.length-1)}function mC(t,e,r,n,i,o){let s=e?e.injectorIndex:-1,a=0;return P0()&&(a|=128),{type:r,index:n,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:i,attrs:o,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:e,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}function Qf(t,e,r,n,i){for(let o in e){if(!e.hasOwnProperty(o))continue;let s=e[o];if(s===void 0)continue;n??={};let a,l=ln.None;Array.isArray(s)?(a=s[0],l=s[1]):a=s;let d=o;if(i!==null){if(!i.hasOwnProperty(o))continue;d=i[o]}t===0?Kf(n,r,d,a,l):Kf(n,r,d,a)}return n}function Kf(t,e,r,n,i){let o;t.hasOwnProperty(r)?(o=t[r]).push(e,n):o=t[r]=[e,n],i!==void 0&&o.push(i)}function gC(t,e,r){let n=e.directiveStart,i=e.directiveEnd,o=t.data,s=e.attrs,a=[],l=null,d=null;for(let h=n;h0;){let r=t[--e];if(typeof r=="number"&&r<0)return r}return 0}function wC(t,e,r,n){let i=r.directiveStart,o=r.directiveEnd;Ss(r)&&MC(e,r,t.data[i+r.componentOffset]),t.firstCreatePass||os(r,e),dn(n,e);let s=r.initialInputs;for(let a=i;a{As(t.lView)},consumerOnSignalRead(){this.lView[et]=this}});function GC(t){let e=t[et]??Object.create(zC);return e.lView=t,e}var zC=W(b({},ii),{consumerIsAlwaysLive:!0,consumerMarkedDirty:t=>{let e=Rn(t.lView);for(;e&&!Xp(e[j]);)e=Rn(e);e&&Gh(e)},consumerOnSignalRead(){this.lView[et]=this}});function Xp(t){return t.type!==2}var qC=100;function em(t,e=!0,r=0){let n=t[bt],i=n.rendererFactory,o=!1;o||i.begin?.();try{WC(t,r)}catch(s){throw e&&Yp(t,s),s}finally{o||(i.end?.(),n.inlineEffectRunner?.flush())}}function WC(t,e){let r=Qh();try{Lf(!0),rc(t,e);let n=0;for(;Ts(t);){if(n===qC)throw new M(103,!1);n++,rc(t,1)}}finally{Lf(r)}}function ZC(t,e,r,n){let i=e[O];if((i&256)===256)return;let o=!1,s=!1;!o&&e[bt].inlineEffectRunner?.flush(),Uc(e);let a=!0,l=null,d=null;o||(Xp(t)?(d=UC(e),l=fo(d)):Ud()===null?(a=!1,d=GC(e),l=fo(d)):e[et]&&(el(e[et]),e[et]=null));try{Hh(e),U0(t.bindingStartIndex),r!==null&&Bp(t,e,r,2,n);let h=(i&3)===3;if(!o)if(h){let y=t.preOrderCheckHooks;y!==null&&Go(e,y,null)}else{let y=t.preOrderHooks;y!==null&&zo(e,y,0,null),wl(e,0)}if(s||YC(e),tm(e,0),t.contentQueries!==null&&qp(t,e),!o)if(h){let y=t.contentCheckHooks;y!==null&&Go(e,y)}else{let y=t.contentHooks;y!==null&&zo(e,y,1),wl(e,1)}lC(t,e);let m=t.components;m!==null&&rm(e,m,0);let v=t.viewQuery;if(v!==null&&tc(2,v,n),!o)if(h){let y=t.viewCheckHooks;y!==null&&Go(e,y)}else{let y=t.viewHooks;y!==null&&zo(e,y,2),wl(e,2)}if(t.firstUpdatePass===!0&&(t.firstUpdatePass=!1),e[Cl]){for(let y of e[Cl])y();e[Cl]=null}o||(e[O]&=-73)}catch(h){throw o||As(e),h}finally{d!==null&&(Ja(d,l),a&&$C(d)),Bc()}}function tm(t,e){for(let r=Cp(t);r!==null;r=wp(r))for(let n=je;n-1&&(cs(e,n),Ko(r,n))}this._attachedToViewContainer=!1}Xc(this._lView[j],this._lView)}onDestroy(e){zh(this._lView,e)}markForCheck(){cu(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[O]&=-129}reattach(){Ul(this._lView),this._lView[O]|=128}detectChanges(){this._lView[O]|=1024,em(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let e=Vl(this._lView),r=this._lView[An];r!==null&&!e&&Jc(r,this._lView),Ap(this._lView[j],this._lView)}attachToAppRef(e){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=e;let r=Vl(this._lView),n=this._lView[An];n!==null&&!r&&Np(n,this._lView),Ul(this._lView)}},Ln=(()=>{let e=class e{};e.__NG_ELEMENT_ID__=XC;let t=e;return t})(),KC=Ln,JC=class extends KC{constructor(e,r,n){super(),this._declarationLView=e,this._declarationTContainer=r,this.elementRef=n}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(e,r){return this.createEmbeddedViewImpl(e,r)}createEmbeddedViewImpl(e,r,n){let i=Qp(this._declarationLView,this._declarationTContainer,e,{embeddedViewInjector:r,dehydratedView:n});return new Fn(i)}};function XC(){return uu(Me(),Q())}function uu(t,e){return t.type&4?new JC(e,t,Ar(t,e)):null}var rO=new RegExp(`^(\\d+)*(${MD}|${SD})*(.*)`);var ew=()=>null;function ic(t,e){return ew(t,e)}var Er=class{},im=new x("",{providedIn:"root",factory:()=>!1});var om=new x(""),sm=new x(""),oc=class{},fs=class{};function tw(t){let e=Error(`No component factory found for ${ke(t)}.`);return e[nw]=t,e}var nw="ngComponent";var sc=class{resolveComponentFactory(e){throw tw(e)}},Du=class Du{};Du.NULL=new sc;var _r=Du,Ir=class{},st=(()=>{let e=class e{constructor(){this.destroyNode=null}};e.__NG_ELEMENT_ID__=()=>rw();let t=e;return t})();function rw(){let t=Q(),e=Me(),r=hn(e.index,t);return(an(r)?r:t)[ge]}var iw=(()=>{let e=class e{};e.\u0275prov=E({token:e,providedIn:"root",factory:()=>null});let t=e;return t})();function hs(t,e,r){let n=r?t.styles:null,i=r?t.classes:null,o=0;if(e!==null)for(let s=0;s0&&Pp(t,r,o.join(" "))}}function dw(t,e,r){let n=t.projection=[];for(let i=0;i{let e=class e{};e.__NG_ELEMENT_ID__=hw;let t=e;return t})();function hw(){let t=Me();return lm(t,Q())}var pw=pn,am=class extends pw{constructor(e,r,n){super(),this._lContainer=e,this._hostTNode=r,this._hostLView=n}get element(){return Ar(this._hostTNode,this._hostLView)}get injector(){return new Tn(this._hostTNode,this._hostLView)}get parentInjector(){let e=$c(this._hostTNode,this._hostLView);if(op(e)){let r=is(e,this._hostLView),n=rs(e),i=r[j].data[n+8];return new Tn(i,r)}else return new Tn(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(e){let r=Xf(this._lContainer);return r!==null&&r[e]||null}get length(){return this._lContainer.length-je}createEmbeddedView(e,r,n){let i,o;typeof n=="number"?i=n:n!=null&&(i=n.index,o=n.injector);let s=ic(this._lContainer,e.ssrId),a=e.createEmbeddedViewImpl(r||{},o,s);return this.insertImpl(a,i,nc(this._hostTNode,s)),a}createComponent(e,r,n,i,o){let s=e&&!w0(e),a;if(s)a=r;else{let w=r||{};a=w.index,n=w.injector,i=w.projectableNodes,o=w.environmentInjector||w.ngModuleRef}let l=s?e:new xr(cn(e)),d=n||this.parentInjector;if(!o&&l.ngModule==null){let U=(s?d:this.parentInjector).get(Pe,null);U&&(o=U)}let h=cn(l.componentType??{}),m=ic(this._lContainer,h?.id??null),v=m?.firstChild??null,y=l.create(d,i,v,o);return this.insertImpl(y.hostView,a,nc(this._hostTNode,m)),y}insert(e,r){return this.insertImpl(e,r,!0)}insertImpl(e,r,n){let i=e._lView;if(T0(i)){let a=this.indexOf(e);if(a!==-1)this.detach(a);else{let l=i[Te],d=new am(l,l[dt],l[Te]);d.detach(d.indexOf(e))}}let o=this._adjustIndex(r),s=this._lContainer;return Kp(s,i,o,n),e.attachToViewContainerRef(),Dh(xl(s),o,e),e}move(e,r){return this.insert(e,r)}indexOf(e){let r=Xf(this._lContainer);return r!==null?r.indexOf(e):-1}remove(e){let r=this._adjustIndex(e,-1),n=cs(this._lContainer,r);n&&(Ko(xl(this._lContainer),r),Xc(n[j],n))}detach(e){let r=this._adjustIndex(e,-1),n=cs(this._lContainer,r);return n&&Ko(xl(this._lContainer),r)!=null?new Fn(n):null}_adjustIndex(e,r=0){return e??this.length+r}};function Xf(t){return t[ts]}function xl(t){return t[ts]||(t[ts]=[])}function lm(t,e){let r,n=e[t.index];return jt(n)?r=n:(r=zp(n,e,null,t),e[t.index]=r,Us(e,r)),gw(r,e,t,n),new am(r,t,e)}function mw(t,e){let r=t[ge],n=r.createComment(""),i=ot(e,t),o=Op(r,i);return us(r,o,n,XD(r,i),!1),n}var gw=Dw,vw=()=>!1;function yw(t,e,r){return vw(t,e,r)}function Dw(t,e,r,n){if(t[Nn])return;let i;r.type&8?i=_t(n):i=mw(e,r),t[Nn]=i}var lc=class t{constructor(e){this.queryList=e,this.matches=null}clone(){return new t(this.queryList)}setDirty(){this.queryList.setDirty()}},cc=class t{constructor(e=[]){this.queries=e}createEmbeddedView(e){let r=e.queries;if(r!==null){let n=e.contentQueries!==null?e.contentQueries[0]:r.length,i=[];for(let o=0;o0)n.push(s[a/2]);else{let d=o[a+1],h=e[-l];for(let m=je;me.trim())}function Mw(t,e,r){t.queries===null&&(t.queries=new dc),t.queries.track(new fc(e,r))}function Tw(t,e){let r=t.contentQueries||(t.contentQueries=[]),n=r.length?r[r.length-1]:-1;e!==n&&r.push(t.queries.length-1,e)}function du(t,e){return t.queries.getByIndex(e)}function Aw(t,e){let r=t[j],n=du(r,e);return n.crossesNgTemplate?hc(r,t,e,[]):cm(r,t,n,e)}var eh=new Set;function Un(t){eh.has(t)||(eh.add(t),performance?.mark?.("mark_feature_usage",{detail:{feature:t}}))}function Nw(t){return typeof t=="function"&&t[At]!==void 0}function wi(t,e){Un("NgSignals");let r=Kd(t),n=r[At];return e?.equal&&(n.equal=e.equal),r.set=i=>tl(n,i),r.update=i=>Jd(n,i),r.asReadonly=Rw.bind(r),r}function Rw(){let t=this[At];if(t.readonlyFn===void 0){let e=()=>this();e[At]=t,t.readonlyFn=e}return t.readonlyFn}function um(t){return Nw(t)&&typeof t.set=="function"}function Ow(t){return Object.getPrototypeOf(t.prototype).constructor}function Fe(t){let e=Ow(t.type),r=!0,n=[t];for(;e;){let i;if(un(t))i=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new M(903,!1);i=e.\u0275dir}if(i){if(r){n.push(i);let s=t;s.inputs=Uo(t.inputs),s.inputTransforms=Uo(t.inputTransforms),s.declaredInputs=Uo(t.declaredInputs),s.outputs=Uo(t.outputs);let a=i.hostBindings;a&&Vw(t,a);let l=i.viewQuery,d=i.contentQueries;if(l&&Fw(t,l),d&&Lw(t,d),kw(t,i),Iy(t.outputs,i.outputs),un(i)&&i.data.animation){let h=t.data;h.animation=(h.animation||[]).concat(i.data.animation)}}let o=i.features;if(o)for(let s=0;s=0;n--){let i=t[n];i.hostVars=e+=i.hostVars,i.hostAttrs=di(i.hostAttrs,r=di(r,i.hostAttrs))}}function Uo(t){return t===vr?{}:t===Xe?[]:t}function Fw(t,e){let r=t.viewQuery;r?t.viewQuery=(n,i)=>{e(n,i),r(n,i)}:t.viewQuery=e}function Lw(t,e){let r=t.contentQueries;r?t.contentQueries=(n,i,o)=>{e(n,i,o),r(n,i,o)}:t.contentQueries=e}function Vw(t,e){let r=t.hostBindings;r?t.hostBindings=(n,i)=>{e(n,i),r(n,i)}:t.hostBindings=e}function fu(t){let e=t.inputConfig,r={};for(let n in e)if(e.hasOwnProperty(n)){let i=e[n];Array.isArray(i)&&i[3]&&(r[n]=i[3])}t.inputTransforms=r}var fn=class{},pi=class{};var pc=class extends fn{constructor(e,r,n,i=!0){super(),this.ngModuleType=e,this._parent=r,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new ps(this);let o=Mh(e);this._bootstrapComponents=Mp(o.bootstrap),this._r3Injector=pp(e,r,[{provide:fn,useValue:this},{provide:_r,useValue:this.componentFactoryResolver},...n],ke(e),new Set(["environment"])),i&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(r=>r()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}},mc=class extends pi{constructor(e){super(),this.moduleType=e}create(e){return new pc(this.moduleType,e,[])}};var ms=class extends fn{constructor(e){super(),this.componentFactoryResolver=new ps(this),this.instance=null;let r=new fi([...e.providers,{provide:fn,useValue:this},{provide:_r,useValue:this.componentFactoryResolver}],e.parent||Oc(),e.debugName,new Set(["environment"]));this.injector=r,e.runEnvironmentInitializers&&r.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(e){this.injector.onDestroy(e)}};function Bs(t,e,r=null){return new ms({providers:t,parent:e,debugName:r,runEnvironmentInitializers:!0}).injector}function dm(t){return Uw(t)?Array.isArray(t)||!(t instanceof Map)&&Symbol.iterator in t:!1}function jw(t,e){if(Array.isArray(t))for(let r=0;r{let e=class e{constructor(){this.impl=null}execute(){this.impl?.execute()}};e.\u0275prov=E({token:e,providedIn:"root",factory:()=>new e});let t=e;return t})(),Mn=class Mn{constructor(){this.ngZone=C(ee),this.scheduler=C(Er),this.errorHandler=C(Pt,{optional:!0}),this.sequences=new Set,this.deferredRegistrations=new Set,this.executing=!1}execute(){this.executing=!0;for(let e of Mn.PHASES)for(let r of this.sequences)if(!(r.erroredOrDestroyed||!r.hooks[e]))try{r.pipelinedValue=this.ngZone.runOutsideAngular(()=>r.hooks[e](r.pipelinedValue))}catch(n){r.erroredOrDestroyed=!0,this.errorHandler?.handleError(n)}this.executing=!1;for(let e of this.sequences)e.afterRun(),e.once&&this.sequences.delete(e);for(let e of this.deferredRegistrations)this.sequences.add(e);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear()}register(e){this.executing?this.deferredRegistrations.add(e):(this.sequences.add(e),this.scheduler.notify(6))}unregister(e){this.executing&&this.sequences.has(e)?(e.erroredOrDestroyed=!0,e.pipelinedValue=void 0,e.once=!0):(this.sequences.delete(e),this.deferredRegistrations.delete(e))}};Mn.PHASES=[hr.EarlyRead,hr.Write,hr.MixedReadWrite,hr.Read],Mn.\u0275prov=E({token:Mn,providedIn:"root",factory:()=>new Mn});var gc=Mn,vc=class{constructor(e,r,n,i){this.impl=e,this.hooks=r,this.once=n,this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.unregisterOnDestroy=i.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0}destroy(){this.impl.unregister(this),this.unregisterOnDestroy()}};function pu(t,e){!e?.injector&&C0(pu);let r=e?.injector??C(rt);return UD(r)?(Un("NgAfterNextRender"),Yw(t,r,e,!0)):Qw}function Zw(t,e){if(t instanceof Function){let r=[void 0,void 0,void 0,void 0];return r[e]=t,r}else return[t.earlyRead,t.write,t.mixedReadWrite,t.read]}function Yw(t,e,r,n){let i=e.get(fm);i.impl??=e.get(gc);let o=r?.phase??hr.MixedReadWrite,s=new vc(i.impl,Zw(t,o),n,e.get(Gc));return i.impl.register(s),s}var Qw={destroy(){}};function $t(t,e,r,n){let i=Q(),o=yi();if(Lt(i,o,e)){let s=_e(),a=Ns();TC(a,i,t,e,r,n)}return $t}function hm(t,e,r,n){return Lt(t,yi(),r)?e+ws(r)+n:xt}function Bo(t,e){return t<<17|e<<2}function Vn(t){return t>>17&32767}function Kw(t){return(t&2)==2}function Jw(t,e){return t&131071|e<<17}function yc(t){return t|2}function Sr(t){return(t&131068)>>2}function Sl(t,e){return t&-131069|e<<2}function Xw(t){return(t&1)===1}function Dc(t){return t|1}function eb(t,e,r,n,i,o){let s=o?e.classBindings:e.styleBindings,a=Vn(s),l=Sr(s);t[n]=r;let d=!1,h;if(Array.isArray(r)){let m=r;h=m[1],(h===null||vi(m,h)>0)&&(d=!0)}else h=r;if(i)if(l!==0){let v=Vn(t[a+1]);t[n+1]=Bo(v,a),v!==0&&(t[v+1]=Sl(t[v+1],n)),t[a+1]=Jw(t[a+1],n)}else t[n+1]=Bo(a,0),a!==0&&(t[a+1]=Sl(t[a+1],n)),a=n;else t[n+1]=Bo(l,0),a===0?a=n:t[l+1]=Sl(t[l+1],n),l=n;d&&(t[n+1]=yc(t[n+1])),th(t,h,n,!0),th(t,h,n,!1),tb(e,h,t,n,o),s=Bo(a,l),o?e.classBindings=s:e.styleBindings=s}function tb(t,e,r,n,i){let o=i?t.residualClasses:t.residualStyles;o!=null&&typeof e=="string"&&vi(o,e)>=0&&(r[n+1]=Dc(r[n+1]))}function th(t,e,r,n){let i=t[r+1],o=e===null,s=n?Vn(i):Sr(i),a=!1;for(;s!==0&&(a===!1||o);){let l=t[s],d=t[s+1];nb(l,e)&&(a=!0,t[s+1]=n?Dc(d):yc(d)),s=n?Vn(d):Sr(d)}a&&(t[r+1]=n?yc(i):Dc(i))}function nb(t,e){return t===null||e==null||(Array.isArray(t)?t[1]:t)===e?!0:Array.isArray(t)&&typeof e=="string"?vi(t,e)>=0:!1}function D(t,e,r){let n=Q(),i=yi();if(Lt(n,i,e)){let o=_e(),s=Ns();ou(o,s,n,t,e,n[ge],r,!1)}return D}function nh(t,e,r,n,i){let o=e.inputs,s=i?"class":"style";au(t,r,o[s],s,n)}function $s(t,e){return rb(t,e,null,!0),$s}function rb(t,e,r,n){let i=Q(),o=_e(),s=B0(2);if(o.firstUpdatePass&&ob(o,t,s,n),e!==xt&&Lt(i,s,e)){let a=o.data[Tr()];ub(o,a,i,i[ge],t,i[s+1]=db(e,r),n,s)}}function ib(t,e){return e>=t.expandoStartIndex}function ob(t,e,r,n){let i=t.data;if(i[r+1]===null){let o=i[Tr()],s=ib(t,r);fb(o,n)&&e===null&&!s&&(e=!1),e=sb(i,o,e,n),eb(i,o,e,r,s,n)}}function sb(t,e,r,n){let i=z0(t),o=n?e.residualClasses:e.residualStyles;if(i===null)(n?e.classBindings:e.styleBindings)===0&&(r=Ml(null,t,e,r,n),r=mi(r,e.attrs,n),o=null);else{let s=e.directiveStylingLast;if(s===-1||t[s]!==i)if(r=Ml(i,t,e,r,n),o===null){let l=ab(t,e,n);l!==void 0&&Array.isArray(l)&&(l=Ml(null,t,e,l[1],n),l=mi(l,e.attrs,n),lb(t,e,n,l))}else o=cb(t,e,n)}return o!==void 0&&(n?e.residualClasses=o:e.residualStyles=o),r}function ab(t,e,r){let n=r?e.classBindings:e.styleBindings;if(Sr(n)!==0)return t[Vn(n)]}function lb(t,e,r,n){let i=r?e.classBindings:e.styleBindings;t[Vn(i)]=n}function cb(t,e,r){let n,i=e.directiveEnd;for(let o=1+e.directiveStylingLast;o0;){let l=t[i],d=Array.isArray(l),h=d?l[1]:l,m=h===null,v=r[i+1];v===xt&&(v=m?Xe:void 0);let y=m?yl(v,n):h===n?v:void 0;if(d&&!gs(y)&&(y=yl(l,n)),gs(y)&&(a=y,s))return a;let w=t[i+1];i=s?Vn(w):Sr(w)}if(e!==null){let l=o?e.residualClasses:e.residualStyles;l!=null&&(a=yl(l,n))}return a}function gs(t){return t!==void 0}function db(t,e){return t==null||t===""||(typeof e=="string"?t=t+e:typeof t=="object"&&(t=ke(Di(t)))),t}function fb(t,e){return(t.flags&(e?8:16))!==0}function Bn(t,e){Un("NgControlFlow");let r=Q(),n=yi(),i=r[n]!==xt?r[n]:-1,o=i!==-1?ih(r,nt+i):void 0,s=0;if(Lt(r,n,t)){let a=q(null);try{if(o!==void 0&&VC(o,s),t!==-1){let l=nt+t,d=ih(r,l),h=hb(r[j],l),m=ic(d,h.tView.ssrId),v=Qp(r,h,e,{dehydratedView:m});Kp(d,v,s,nc(h,m))}}finally{q(a)}}else if(o!==void 0){let a=LC(o,s);a!==void 0&&(a[tt]=e)}}function ih(t,e){return t[e]}function hb(t,e){return Pc(t,e)}function pb(t,e,r,n,i,o){let s=e.consts,a=br(s,i),l=Ci(e,t,2,n,a);return su(e,r,l,br(s,o)),l.attrs!==null&&hs(l,l.attrs,!1),l.mergedAttrs!==null&&hs(l,l.mergedAttrs,!0),e.queries!==null&&e.queries.elementStart(e,l),l}function u(t,e,r,n){let i=Q(),o=_e(),s=nt+t,a=i[ge],l=o.firstCreatePass?pb(s,o,i,e,r,n):o.data[s],d=mb(o,i,l,a,e,t);i[s]=d;let h=Ms(l);return jn(l,!0),Fp(a,d,l),!Hw(l)&&Rs()&&Ls(o,i,d,l),R0()===0&&dn(d,i),O0(),h&&(nu(o,i,l),tu(o,l,i)),n!==null&&ru(i,l),u}function f(){let t=Me();Lc()?Yh():(t=t.parent,jn(t,!1));let e=t;F0(e)&&L0(),k0();let r=_e();return r.firstCreatePass&&(ks(r,t),kc(t)&&r.queries.elementEnd(t)),e.classesWithoutHost!=null&&J0(e)&&nh(r,e,Q(),e.classesWithoutHost,!0),e.stylesWithoutHost!=null&&X0(e)&&nh(r,e,Q(),e.stylesWithoutHost,!1),f}function p(t,e,r,n){return u(t,e,r,n),f(),p}var mb=(t,e,r,n,i,o)=>(Os(!0),Tp(n,i,Z0()));function gb(t,e,r,n,i){let o=e.consts,s=br(o,n),a=Ci(e,t,8,"ng-container",s);s!==null&&hs(a,s,!0);let l=br(o,i);return su(e,r,a,l),e.queries!==null&&e.queries.elementStart(e,a),a}function Ue(t,e,r){let n=Q(),i=_e(),o=t+nt,s=i.firstCreatePass?gb(o,i,n,e,r):i.data[o];jn(s,!0);let a=vb(i,n,s,t);return n[o]=a,Rs()&&Ls(i,n,a,s),dn(a,n),Ms(s)&&(nu(i,n,s),tu(i,s,n)),r!=null&&ru(n,s),Ue}function Be(){let t=Me(),e=_e();return Lc()?Yh():(t=t.parent,jn(t,!1)),e.firstCreatePass&&(ks(e,t),kc(t)&&e.queries.elementEnd(t)),Be}var vb=(t,e,r,n)=>(Os(!0),GD(e[ge],""));function ie(){return Q()}var vs="en-US";var yb=vs;function Db(t){typeof t=="string"&&(yb=t.toLowerCase().replace(/_/g,"-"))}var Cb=(t,e,r)=>{};function A(t,e,r,n){let i=Q(),o=_e(),s=Me();return pm(o,i,i[ge],s,t,e,n),A}function wb(t,e,r,n){let i=t.cleanup;if(i!=null)for(let o=0;ol?a[l]:null}typeof s=="string"&&(o+=2)}return null}function pm(t,e,r,n,i,o,s){let a=Ms(n),d=t.firstCreatePass&&Zp(t),h=e[tt],m=Wp(e),v=!0;if(n.type&3||s){let U=ot(n,e),N=s?s(U):U,T=m.length,oe=s?X=>s(_t(X[n.index])):n.index,pe=null;if(!s&&a&&(pe=wb(t,e,i,n.index)),pe!==null){let X=pe.__ngLastListenerFn__||pe;X.__ngNextListenerFn__=o,pe.__ngLastListenerFn__=o,v=!1}else{o=sh(n,e,h,o),Cb(U,i,o);let X=r.listen(N,i,o);m.push(o,X),d&&d.push(i,oe,T,T+1)}}else o=sh(n,e,h,o);let y=n.outputs,w;if(v&&y!==null&&(w=y[i])){let U=w.length;if(U)for(let N=0;N-1?hn(t.index,e):e;cu(s,5);let a=oh(e,r,n,o),l=i.__ngNextListenerFn__;for(;l;)a=oh(e,r,l,o)&&a,l=l.__ngNextListenerFn__;return a}}function _(t=1){return W0(t)}function St(t,e,r,n,i){let o=Q(),s=hm(o,e,r,n);if(s!==xt){let a=_e(),l=Ns();ou(a,l,o,t,s,o[ge],i,!1)}return St}function mm(t,e,r,n){xw(t,e,r,n)}function gm(t){let e=Q(),r=_e(),n=Kh();jc(n+1);let i=du(r,n);if(t.dirty&&M0(e)===((i.metadata.flags&2)===2)){if(i.matches===null)t.reset([]);else{let o=Aw(e,n);t.reset(o,CD),t.notifyOnChanges()}return!0}return!1}function vm(){return _w(Q(),Kh())}function Hs(t){let e=j0();return S0(e,nt+t)}function c(t,e=""){let r=Q(),n=_e(),i=t+nt,o=n.firstCreatePass?Ci(n,i,1,e,null):n.data[i],s=bb(n,r,o,e,t);r[i]=s,Rs()&&Ls(n,r,s,o),jn(o,!1)}var bb=(t,e,r,n,i)=>(Os(!0),$D(e[ge],n));function se(t){return ht("",t,""),se}function ht(t,e,r){let n=Q(),i=hm(n,t,e,r);return i!==xt&&OC(n,Tr(),i),ht}function ae(t,e,r){um(e)&&(e=e());let n=Q(),i=yi();if(Lt(n,i,e)){let o=_e(),s=Ns();ou(o,s,n,t,e,n[ge],r,!1)}return ae}function ue(t,e){let r=um(t);return r&&t.set(e),r}function le(t,e){let r=Q(),n=_e(),i=Me();return pm(n,r,r[ge],i,t,e),le}function Eb(t,e,r){let n=_e();if(n.firstCreatePass){let i=un(t);Cc(r,n.data,n.blueprint,i,!0),Cc(e,n.data,n.blueprint,i,!1)}}function Cc(t,e,r,n,i){if(t=Oe(t),Array.isArray(t))for(let o=0;o>20;if(Dr(t)||!t.multi){let y=new kn(d,i,S),w=Al(l,e,i?h:h+v,m);w===-1?(Gl(os(a,s),o,l),Tl(o,t,e.length),e.push(l),a.directiveStart++,a.directiveEnd++,i&&(a.providerIndexes+=1048576),r.push(y),s.push(y)):(r[w]=y,s[w]=y)}else{let y=Al(l,e,h+v,m),w=Al(l,e,h,h+v),U=y>=0&&r[y],N=w>=0&&r[w];if(i&&!N||!i&&!U){Gl(os(a,s),o,l);let T=xb(i?Ib:_b,r.length,i,n,d);!i&&N&&(r[w].providerFactory=T),Tl(o,t,e.length,0),e.push(l),a.directiveStart++,a.directiveEnd++,i&&(a.providerIndexes+=1048576),r.push(T),s.push(T)}else{let T=ym(r[i?w:y],d,!i&&n);Tl(o,t,y>-1?y:w,T)}!i&&n&&N&&r[w].componentProviders++}}}function Tl(t,e,r,n){let i=Dr(e),o=h0(e);if(i||o){let l=(o?Oe(e.useClass):e).prototype.ngOnDestroy;if(l){let d=t.destroyHooks||(t.destroyHooks=[]);if(!i&&e.multi){let h=d.indexOf(r);h===-1?d.push(r,[n,l]):d[h+1].push(n,l)}else d.push(r,l)}}}function ym(t,e,r){return r&&t.componentProviders++,t.multi.push(e)-1}function Al(t,e,r,n){for(let i=r;i{r.providersResolver=(n,i)=>Eb(n,i?i(t):t,e)}}var Sb=(()=>{let e=class e{constructor(n){this._injector=n,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(n){if(!n.standalone)return null;if(!this.cachedInjectors.has(n)){let i=Nh(!1,n.type),o=i.length>0?Bs([i],this._injector,`Standalone[${n.type.name}]`):null;this.cachedInjectors.set(n,o)}return this.cachedInjectors.get(n)}ngOnDestroy(){try{for(let n of this.cachedInjectors.values())n!==null&&n.destroy()}finally{this.cachedInjectors.clear()}}};e.\u0275prov=E({token:e,providedIn:"environment",factory:()=>new e(I(Pe))});let t=e;return t})();function de(t){Un("NgStandalone"),t.getStandaloneInjector=e=>e.get(Sb).getOrCreateStandaloneInjector(t)}function B(t,e,r){let n=Vc()+t,i=Q();return i[n]===xt?hu(i,n,r?e.call(r):e()):Bw(i,n)}function $n(t,e,r,n){return Mb(Q(),Vc(),t,e,r,n)}function Dm(t,e,r,n,i){return Tb(Q(),Vc(),t,e,r,n,i)}function Cm(t,e){let r=t[e];return r===xt?void 0:r}function Mb(t,e,r,n,i,o){let s=e+r;return Lt(t,s,i)?hu(t,s+1,o?n.call(o,i):n(i)):Cm(t,s+1)}function Tb(t,e,r,n,i,o,s){let a=e+r;return $w(t,a,i,o)?hu(t,a+2,s?n.call(s,i,o):n(i,o)):Cm(t,a+2)}var Gs=(()=>{let e=class e{log(n){console.log(n)}warn(n){console.warn(n)}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"platform"});let t=e;return t})();var mu=new x(""),bi=new x(""),zs=(()=>{let e=class e{constructor(n,i,o){this._ngZone=n,this.registry=i,this._isZoneStable=!0,this._callbacks=[],this.taskTrackingZone=null,gu||(Ab(o),o.addToWindow(i)),this._watchAngularEvents(),n.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ee.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}isStable(){return this._isZoneStable&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;this._callbacks.length!==0;){let n=this._callbacks.pop();clearTimeout(n.timeoutId),n.doneCb()}});else{let n=this.getPendingTasks();this._callbacks=this._callbacks.filter(i=>i.updateCb&&i.updateCb(n)?(clearTimeout(i.timeoutId),!1):!0)}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(n=>({source:n.source,creationLocation:n.creationLocation,data:n.data})):[]}addCallback(n,i,o){let s=-1;i&&i>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(a=>a.timeoutId!==s),n()},i)),this._callbacks.push({doneCb:n,timeoutId:s,updateCb:o})}whenStable(n,i,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(n,i,o),this._runCallbacksIfReady()}registerApplication(n){this.registry.registerApplication(n,this)}unregisterApplication(n){this.registry.unregisterApplication(n)}findProviders(n,i,o){return[]}};e.\u0275fac=function(i){return new(i||e)(I(ee),I(qs),I(bi))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),qs=(()=>{let e=class e{constructor(){this._applications=new Map}registerApplication(n,i){this._applications.set(n,i)}unregisterApplication(n){this._applications.delete(n)}unregisterAllApplications(){this._applications.clear()}getTestability(n){return this._applications.get(n)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(n,i=!0){return gu?.findTestabilityInTree(this,n,i)??null}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"platform"});let t=e;return t})();function Ab(t){gu=t}var gu;function Hn(t){return!!t&&typeof t.then=="function"}function wm(t){return!!t&&typeof t.subscribe=="function"}var Ws=new x(""),bm=(()=>{let e=class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,i)=>{this.resolve=n,this.reject=i}),this.appInits=C(Ws,{optional:!0})??[]}runInitializers(){if(this.initialized)return;let n=[];for(let o of this.appInits){let s=o();if(Hn(s))n.push(s);else if(wm(s)){let a=new Promise((l,d)=>{s.subscribe({complete:l,error:d})});n.push(a)}}let i=()=>{this.done=!0,this.resolve()};Promise.all(n).then(()=>{i()}).catch(o=>{this.reject(o)}),n.length===0&&i(),this.initialized=!0}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Zs=new x("");function Nb(){Qd(()=>{throw new M(600,!1)})}function Rb(t){return t.isBoundToModule}var Ob=10;function kb(t,e,r){try{let n=r();return Hn(n)?n.catch(i=>{throw e.runOutsideAngular(()=>t.handleError(i)),i}):n}catch(n){throw e.runOutsideAngular(()=>t.handleError(n)),n}}var Ht=(()=>{let e=class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=C(yD),this.afterRenderManager=C(fm),this.zonelessEnabled=C(im),this.dirtyFlags=0,this.deferredDirtyFlags=0,this.externalTestViews=new Set,this.beforeRender=new be,this.afterTick=new be,this.componentTypes=[],this.components=[],this.isStable=C(Bt).hasPendingTasks.pipe(P(n=>!n)),this._injector=C(Pe)}get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}whenStable(){let n;return new Promise(i=>{n=this.isStable.subscribe({next:o=>{o&&i()}})}).finally(()=>{n.unsubscribe()})}get injector(){return this._injector}bootstrap(n,i){let o=n instanceof fs;if(!this._injector.get(bm).done){let y=!o&&Sh(n),w=!1;throw new M(405,w)}let a;o?a=n:a=this._injector.get(_r).resolveComponentFactory(n),this.componentTypes.push(a.componentType);let l=Rb(a)?void 0:this._injector.get(fn),d=i||a.selector,h=a.create(rt.NULL,[],d,l),m=h.location.nativeElement,v=h.injector.get(mu,null);return v?.registerApplication(m),h.onDestroy(()=>{this.detachView(h.hostView),Wo(this.components,h),v?.unregisterApplication(m)}),this._loadComponent(h),h}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){if(this._runningTick)throw new M(101,!1);let n=q(null);try{this._runningTick=!0,this.synchronize()}catch(i){this.internalErrorHandler(i)}finally{this._runningTick=!1,q(n),this.afterTick.next()}}synchronize(){let n=null;this._injector.destroyed||(n=this._injector.get(Ir,null,{optional:!0})),this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0;let i=0;for(;this.dirtyFlags!==0&&i++Ts(n))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(n){let i=n;this._views.push(i),i.attachToAppRef(this)}detachView(n){let i=n;Wo(this._views,i),i.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);let i=this._injector.get(Zs,[]);[...this._bootstrapListeners,...i].forEach(o=>o(n))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(n=>n()),this._views.slice().forEach(n=>n.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(n){return this._destroyListeners.push(n),()=>Wo(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new M(406,!1);let n=this._injector;n.destroy&&!n.destroyed&&n.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function Wo(t,e){let r=t.indexOf(e);r>-1&&t.splice(r,1)}function Pb(t,e,r,n){if(!r&&!Ts(t))return;em(t,e,r&&!n?0:1)}var bc=class{constructor(e,r){this.ngModuleFactory=e,this.componentFactories=r}},Ys=(()=>{let e=class e{compileModuleSync(n){return new mc(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){let i=this.compileModuleSync(n),o=Mh(n),s=Mp(o.declarations).reduce((a,l)=>{let d=cn(l);return d&&a.push(new xr(d)),a},[]);return new bc(i,s)}compileModuleAndAllComponentsAsync(n){return Promise.resolve(this.compileModuleAndAllComponentsSync(n))}clearCache(){}clearCacheFor(n){}getModuleId(n){}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();var Fb=(()=>{let e=class e{constructor(){this.zone=C(ee),this.changeDetectionScheduler=C(Er),this.applicationRef=C(Ht)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function Lb({ngZoneFactory:t,ignoreChangesOutsideZone:e,scheduleInRootZone:r}){return t??=()=>new ee(W(b({},Vb()),{scheduleInRootZone:r})),[{provide:ee,useFactory:t},{provide:yr,multi:!0,useFactory:()=>{let n=C(Fb,{optional:!0});return()=>n.initialize()}},{provide:yr,multi:!0,useFactory:()=>{let n=C(jb);return()=>{n.initialize()}}},e===!0?{provide:om,useValue:!0}:[],{provide:sm,useValue:r??mp}]}function Vb(t){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:t?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:t?.runCoalescing??!1}}var jb=(()=>{let e=class e{constructor(){this.subscription=new ye,this.initialized=!1,this.zone=C(ee),this.pendingTasks=C(Bt)}initialize(){if(this.initialized)return;this.initialized=!0;let n=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(n=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{ee.assertNotInAngularZone(),queueMicrotask(()=>{n!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(n),n=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{ee.assertInAngularZone(),n??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();var Ub=(()=>{let e=class e{constructor(){this.appRef=C(Ht),this.taskService=C(Bt),this.ngZone=C(ee),this.zonelessEnabled=C(im),this.disableScheduling=C(om,{optional:!0})??!1,this.zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run,this.schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}],this.subscriptions=new ye,this.angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(as):null,this.scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(C(sm,{optional:!0})??!1),this.cancelScheduledCallback=null,this.useMicrotaskScheduler=!1,this.runningTick=!1,this.pendingRenderTaskId=null,this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof Yl||!this.zoneIsDefined)}notify(n){if(!this.zonelessEnabled&&n===5)return;switch(n){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 7:{this.appRef.deferredDirtyFlags|=8;break}case 9:case 8:case 6:case 10:default:this.appRef.dirtyFlags|=8}if(!this.shouldScheduleTick())return;let i=this.useMicrotaskScheduler?Hf:gp;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>i(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>i(()=>this.tick()))}shouldScheduleTick(){return!(this.disableScheduling||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(as+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let n=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(i){throw this.taskService.remove(n),i}finally{this.cleanup()}this.useMicrotaskScheduler=!0,Hf(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(n)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let n=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(n)}}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function Bb(){return typeof $localize<"u"&&$localize.locale||vs}var vu=new x("",{providedIn:"root",factory:()=>C(vu,H.Optional|H.SkipSelf)||Bb()});var Em=new x("");function $o(t){return!!t.platformInjector}function $b(t){let e=$o(t)?t.r3Injector:t.moduleRef.injector,r=e.get(ee);return r.run(()=>{$o(t)?t.r3Injector.resolveInjectorInitializers():t.moduleRef.resolveInjectorInitializers();let n=e.get(Pt,null),i;if(r.runOutsideAngular(()=>{i=r.onError.subscribe({next:o=>{n.handleError(o)}})}),$o(t)){let o=()=>e.destroy(),s=t.platformInjector.get(Em);s.add(o),e.onDestroy(()=>{i.unsubscribe(),s.delete(o)})}else t.moduleRef.onDestroy(()=>{Wo(t.allPlatformModules,t.moduleRef),i.unsubscribe()});return kb(n,r,()=>{let o=e.get(bm);return o.runInitializers(),o.donePromise.then(()=>{let s=e.get(vu,vs);if(Db(s||vs),$o(t)){let a=e.get(Ht);return t.rootComponent!==void 0&&a.bootstrap(t.rootComponent),a}else return Hb(t.moduleRef,t.allPlatformModules),t.moduleRef})})})}function Hb(t,e){let r=t.injector.get(Ht);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(n=>r.bootstrap(n));else if(t.instance.ngDoBootstrap)t.instance.ngDoBootstrap(r);else throw new M(-403,!1);e.push(t)}var Zo=null;function Gb(t=[],e){return rt.create({name:e,providers:[{provide:Is,useValue:"platform"},{provide:Em,useValue:new Set([()=>Zo=null])},...t]})}function zb(t=[]){if(Zo)return Zo;let e=Gb(t);return Zo=e,Nb(),qb(e),e}function qb(t){t.get(Wc,null)?.forEach(r=>r())}var mn=(()=>{let e=class e{};e.__NG_ELEMENT_ID__=Wb;let t=e;return t})();function Wb(t){return Zb(Me(),Q(),(t&16)===16)}function Zb(t,e,r){if(Ss(t)&&!r){let n=hn(t.index,e);return new Fn(n,n)}else if(t.type&175){let n=e[Et];return new Fn(n,e)}return null}var Ec=class{constructor(){}supports(e){return dm(e)}create(e){return new _c(e)}},Yb=(t,e)=>e,_c=class{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||Yb}forEachItem(e){let r;for(r=this._itHead;r!==null;r=r._next)e(r)}forEachOperation(e){let r=this._itHead,n=this._removalsHead,i=0,o=null;for(;r||n;){let s=!n||r&&r.currentIndex{s=this._trackByFn(i,a),r===null||!Object.is(r.trackById,s)?(r=this._mismatch(r,a,s,i),n=!0):(n&&(r=this._verifyReinsertion(r,a,s,i)),Object.is(r.item,a)||this._addIdentityChange(r,a)),r=r._next,i++}),this.length=i;return this._truncate(r),this.collection=e,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let e;for(e=this._previousItHead=this._itHead;e!==null;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;e!==null;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;e!==null;e=e._nextMoved)e.previousIndex=e.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,r,n,i){let o;return e===null?o=this._itTail:(o=e._prev,this._remove(e)),e=this._unlinkedRecords===null?null:this._unlinkedRecords.get(n,null),e!==null?(Object.is(e.item,r)||this._addIdentityChange(e,r),this._reinsertAfter(e,o,i)):(e=this._linkedRecords===null?null:this._linkedRecords.get(n,i),e!==null?(Object.is(e.item,r)||this._addIdentityChange(e,r),this._moveAfter(e,o,i)):e=this._addAfter(new Ic(r,n),o,i)),e}_verifyReinsertion(e,r,n,i){let o=this._unlinkedRecords===null?null:this._unlinkedRecords.get(n,null);return o!==null?e=this._reinsertAfter(o,e._prev,i):e.currentIndex!=i&&(e.currentIndex=i,this._addToMoves(e,i)),e}_truncate(e){for(;e!==null;){let r=e._next;this._addToRemovals(this._unlink(e)),e=r}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,r,n){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(e);let i=e._prevRemoved,o=e._nextRemoved;return i===null?this._removalsHead=o:i._nextRemoved=o,o===null?this._removalsTail=i:o._prevRemoved=i,this._insertAfter(e,r,n),this._addToMoves(e,n),e}_moveAfter(e,r,n){return this._unlink(e),this._insertAfter(e,r,n),this._addToMoves(e,n),e}_addAfter(e,r,n){return this._insertAfter(e,r,n),this._additionsTail===null?this._additionsTail=this._additionsHead=e:this._additionsTail=this._additionsTail._nextAdded=e,e}_insertAfter(e,r,n){let i=r===null?this._itHead:r._next;return e._next=i,e._prev=r,i===null?this._itTail=e:i._prev=e,r===null?this._itHead=e:r._next=e,this._linkedRecords===null&&(this._linkedRecords=new ys),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){this._linkedRecords!==null&&this._linkedRecords.remove(e);let r=e._prev,n=e._next;return r===null?this._itHead=n:r._next=n,n===null?this._itTail=r:n._prev=r,e}_addToMoves(e,r){return e.previousIndex===r||(this._movesTail===null?this._movesTail=this._movesHead=e:this._movesTail=this._movesTail._nextMoved=e),e}_addToRemovals(e){return this._unlinkedRecords===null&&(this._unlinkedRecords=new ys),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,r){return e.item=r,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=e:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=e,e}},Ic=class{constructor(e,r){this.item=e,this.trackById=r,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}},xc=class{constructor(){this._head=null,this._tail=null}add(e){this._head===null?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,r){let n;for(n=this._head;n!==null;n=n._nextDup)if((r===null||r<=n.currentIndex)&&Object.is(n.trackById,e))return n;return null}remove(e){let r=e._prevDup,n=e._nextDup;return r===null?this._head=n:r._nextDup=n,n===null?this._tail=r:n._prevDup=r,this._head===null}},ys=class{constructor(){this.map=new Map}put(e){let r=e.trackById,n=this.map.get(r);n||(n=new xc,this.map.set(r,n)),n.add(e)}get(e,r){let n=e,i=this.map.get(n);return i?i.get(e,r):null}remove(e){let r=e.trackById;return this.map.get(r).remove(e)&&this.map.delete(r),e}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function ah(t,e,r){let n=t.previousIndex;if(n===null)return n;let i=0;return r&&n{let e=class e{constructor(n){this.factories=n}static create(n,i){if(i!=null){let o=i.factories.slice();n=n.concat(o)}return new e(n)}static extend(n){return{provide:e,useFactory:i=>e.create(n,i||lh()),deps:[[e,new Mc,new Es]]}}find(n){let i=this.factories.find(o=>o.supports(n));if(i!=null)return i;throw new M(901,!1)}};e.\u0275prov=E({token:e,providedIn:"root",factory:lh});let t=e;return t})();var _m=(()=>{let e=class e{constructor(n){}};e.\u0275fac=function(i){return new(i||e)(I(Ht))},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({});let t=e;return t})();function Im(t){try{let{rootComponent:e,appProviders:r,platformProviders:n}=t,i=zb(n),o=[Lb({}),{provide:Er,useExisting:Ub},...r||[]],s=new ms({providers:o,parent:i,debugName:"",runEnvironmentInitializers:!1});return $b({r3Injector:s.injector,platformInjector:i,rootComponent:e})}catch(e){return Promise.reject(e)}}var xm=new x("");function Gt(t){return typeof t=="boolean"?t:t!=null&&t!=="false"}function Ei(t,e){Un("NgSignals");let r=Wd(t);return e?.equal&&(r[At].equal=e.equal),r}function zt(t){let e=q(null);try{return t()}finally{q(e)}}function Sm(t){let e=cn(t);if(!e)return null;let r=new xr(e);return{get selector(){return r.selector},get type(){return r.componentType},get inputs(){return r.inputs},get outputs(){return r.outputs},get ngContentSelectors(){return r.ngContentSelectors},get isStandalone(){return e.standalone},get isSignal(){return e.signals}}}var K={production:!0,apiBaseUrl:"https://www.palmmedia.de/api/",loginUrl:"https://github.com/login/oauth/authorize",clientId:"ecab9484932b59a12fd4",redirectUri:"/pro",scope:null,paddleEnvironment:null,paddleVendorId:144162,paddleIndividualLicense:762579,paddleTeamLicense:762580,paddleEnterpriseLicense:762581,paddleIndividualLifetimeLicense:833943,paddleTeamLifetimeLicense:833944,paddleEnterpriseLifetimeLicense:833945};var Om=null;function Mt(){return Om}function km(t){Om??=t}var Qs=class{};var we=new x(""),xu=(()=>{let e=class e{historyGo(n){throw new Error("")}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(Kb),providedIn:"platform"});let t=e;return t})(),Pm=new x(""),Kb=(()=>{let e=class e extends xu{constructor(){super(),this._doc=C(we),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Mt().getBaseHref(this._doc)}onPopState(n){let i=Mt().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",n,!1),()=>i.removeEventListener("popstate",n)}onHashChange(n){let i=Mt().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",n,!1),()=>i.removeEventListener("hashchange",n)}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(n){this._location.pathname=n}pushState(n,i,o){this._history.pushState(n,i,o)}replaceState(n,i,o){this._history.replaceState(n,i,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(n=0){this._history.go(n)}getState(){return this._history.state}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>new e,providedIn:"platform"});let t=e;return t})();function Su(t,e){if(t.length==0)return e;if(e.length==0)return t;let r=0;return t.endsWith("/")&&r++,e.startsWith("/")&&r++,r==2?t+e.substring(1):r==1?t+e:t+"/"+e}function Mm(t){let e=t.match(/#|\?|$/),r=e&&e.index||t.length,n=r-(t[r-1]==="/"?1:0);return t.slice(0,n)+t.slice(r)}function qt(t){return t&&t[0]!=="?"?"?"+t:t}var Wt=(()=>{let e=class e{historyGo(n){throw new Error("")}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(Mu),providedIn:"root"});let t=e;return t})(),Fm=new x(""),Mu=(()=>{let e=class e extends Wt{constructor(n,i){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=i??this._platformLocation.getBaseHrefFromDOM()??C(we).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(n){this._removeListenerFns.push(this._platformLocation.onPopState(n),this._platformLocation.onHashChange(n))}getBaseHref(){return this._baseHref}prepareExternalUrl(n){return Su(this._baseHref,n)}path(n=!1){let i=this._platformLocation.pathname+qt(this._platformLocation.search),o=this._platformLocation.hash;return o&&n?`${i}${o}`:i}pushState(n,i,o,s){let a=this.prepareExternalUrl(o+qt(s));this._platformLocation.pushState(n,i,a)}replaceState(n,i,o,s){let a=this.prepareExternalUrl(o+qt(s));this._platformLocation.replaceState(n,i,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}};e.\u0275fac=function(i){return new(i||e)(I(xu),I(Fm,8))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Lm=(()=>{let e=class e extends Wt{constructor(n,i){super(),this._platformLocation=n,this._baseHref="",this._removeListenerFns=[],i!=null&&(this._baseHref=i)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(n){this._removeListenerFns.push(this._platformLocation.onPopState(n),this._platformLocation.onHashChange(n))}getBaseHref(){return this._baseHref}path(n=!1){let i=this._platformLocation.hash??"#";return i.length>0?i.substring(1):i}prepareExternalUrl(n){let i=Su(this._baseHref,n);return i.length>0?"#"+i:i}pushState(n,i,o,s){let a=this.prepareExternalUrl(o+qt(s));a.length==0&&(a=this._platformLocation.pathname),this._platformLocation.pushState(n,i,a)}replaceState(n,i,o,s){let a=this.prepareExternalUrl(o+qt(s));a.length==0&&(a=this._platformLocation.pathname),this._platformLocation.replaceState(n,i,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}};e.\u0275fac=function(i){return new(i||e)(I(xu),I(Fm,8))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Or=(()=>{let e=class e{constructor(n){this._subject=new he,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;let i=this._locationStrategy.getBaseHref();this._basePath=eE(Mm(Tm(i))),this._locationStrategy.onPopState(o=>{this._subject.emit({url:this.path(!0),pop:!0,state:o.state,type:o.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(n=!1){return this.normalize(this._locationStrategy.path(n))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(n,i=""){return this.path()==this.normalize(n+qt(i))}normalize(n){return e.stripTrailingSlash(Xb(this._basePath,Tm(n)))}prepareExternalUrl(n){return n&&n[0]!=="/"&&(n="/"+n),this._locationStrategy.prepareExternalUrl(n)}go(n,i="",o=null){this._locationStrategy.pushState(o,"",n,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+qt(i)),o)}replaceState(n,i="",o=null){this._locationStrategy.replaceState(o,"",n,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+qt(i)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(n=0){this._locationStrategy.historyGo?.(n)}onUrlChange(n){return this._urlChangeListeners.push(n),this._urlChangeSubscription??=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}),()=>{let i=this._urlChangeListeners.indexOf(n);this._urlChangeListeners.splice(i,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(n="",i){this._urlChangeListeners.forEach(o=>o(n,i))}subscribe(n,i,o){return this._subject.subscribe({next:n,error:i,complete:o})}};e.normalizeQueryParams=qt,e.joinWithSlash=Su,e.stripTrailingSlash=Mm,e.\u0275fac=function(i){return new(i||e)(I(Wt))},e.\u0275prov=E({token:e,factory:()=>Jb(),providedIn:"root"});let t=e;return t})();function Jb(){return new Or(I(Wt))}function Xb(t,e){if(!t||!e.startsWith(t))return e;let r=e.substring(t.length);return r===""||["/",";","?","#"].includes(r[0])?r:e}function Tm(t){return t.replace(/\/index.html$/,"")}function eE(t){if(new RegExp("^(https?:)?//").test(t)){let[,r]=t.split(/\/\/[^\/]+/);return r}return t}function Ks(t,e){e=encodeURIComponent(e);for(let r of t.split(";")){let n=r.indexOf("="),[i,o]=n==-1?[r,""]:[r.slice(0,n),r.slice(n+1)];if(i.trim()===e)return decodeURIComponent(o)}return null}var Cu=/\s+/,Am=[],kr=(()=>{let e=class e{constructor(n,i){this._ngEl=n,this._renderer=i,this.initialClasses=Am,this.stateMap=new Map}set klass(n){this.initialClasses=n!=null?n.trim().split(Cu):Am}set ngClass(n){this.rawClass=typeof n=="string"?n.trim().split(Cu):n}ngDoCheck(){for(let i of this.initialClasses)this._updateState(i,!0);let n=this.rawClass;if(Array.isArray(n)||n instanceof Set)for(let i of n)this._updateState(i,!0);else if(n!=null)for(let i of Object.keys(n))this._updateState(i,!!n[i]);this._applyStateDiff()}_updateState(n,i){let o=this.stateMap.get(n);o!==void 0?(o.enabled!==i&&(o.changed=!0,o.enabled=i),o.touched=!0):this.stateMap.set(n,{enabled:i,changed:!0,touched:!0})}_applyStateDiff(){for(let n of this.stateMap){let i=n[0],o=n[1];o.changed?(this._toggleClass(i,o.enabled),o.changed=!1):o.touched||(o.enabled&&this._toggleClass(i,!1),this.stateMap.delete(i)),o.touched=!1}}_toggleClass(n,i){n=n.trim(),n.length>0&&n.split(Cu).forEach(o=>{i?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}};e.\u0275fac=function(i){return new(i||e)(S(Ae),S(st))},e.\u0275dir=ne({type:e,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"},standalone:!0});let t=e;return t})();var wu=class{constructor(e,r,n,i){this.$implicit=e,this.ngForOf=r,this.index=n,this.count=i}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},Js=(()=>{let e=class e{set ngForOf(n){this._ngForOf=n,this._ngForOfDirty=!0}set ngForTrackBy(n){this._trackByFn=n}get ngForTrackBy(){return this._trackByFn}constructor(n,i,o){this._viewContainer=n,this._template=i,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(n){n&&(this._template=n)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let n=this._ngForOf;if(!this._differ&&n)if(0)try{}catch{}else this._differ=this._differs.find(n).create(this.ngForTrackBy)}if(this._differ){let n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}_applyChanges(n){let i=this._viewContainer;n.forEachOperation((o,s,a)=>{if(o.previousIndex==null)i.createEmbeddedView(this._template,new wu(o.item,this._ngForOf,-1,-1),a===null?void 0:a);else if(a==null)i.remove(s===null?void 0:s);else if(s!==null){let l=i.get(s);i.move(l,a),Nm(l,o)}});for(let o=0,s=i.length;o{let s=i.get(o.currentIndex);Nm(s,o)})}static ngTemplateContextGuard(n,i){return!0}};e.\u0275fac=function(i){return new(i||e)(S(pn),S(Ln),S(yu))},e.\u0275dir=ne({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0});let t=e;return t})();function Nm(t,e){t.context.$implicit=e.item}var Xs=(()=>{let e=class e{constructor(n,i){this._viewContainer=n,this._context=new bu,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=i}set ngIf(n){this._context.$implicit=this._context.ngIf=n,this._updateView()}set ngIfThen(n){Rm("ngIfThen",n),this._thenTemplateRef=n,this._thenViewRef=null,this._updateView()}set ngIfElse(n){Rm("ngIfElse",n),this._elseTemplateRef=n,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(n,i){return!0}};e.\u0275fac=function(i){return new(i||e)(S(pn),S(Ln))},e.\u0275dir=ne({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0});let t=e;return t})(),bu=class{constructor(){this.$implicit=null,this.ngIf=null}};function Rm(t,e){if(!!!(!e||e.createEmbeddedView))throw new Error(`${t} must be a TemplateRef, but received '${ke(e)}'.`)}var Vm=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({});let t=e;return t})(),Tu="browser",tE="server";function nE(t){return t===Tu}function ea(t){return t===tE}var jm=(()=>{let e=class e{};e.\u0275prov=E({token:e,providedIn:"root",factory:()=>nE(C(It))?new Eu(C(we),window):new _u});let t=e;return t})(),Eu=class{constructor(e,r){this.document=e,this.window=r,this.offset=()=>[0,0]}setOffset(e){Array.isArray(e)?this.offset=()=>e:this.offset=e}getScrollPosition(){return[this.window.scrollX,this.window.scrollY]}scrollToPosition(e){this.window.scrollTo(e[0],e[1])}scrollToAnchor(e){let r=rE(this.document,e);r&&(this.scrollToElement(r),r.focus())}setHistoryScrollRestoration(e){this.window.history.scrollRestoration=e}scrollToElement(e){let r=e.getBoundingClientRect(),n=r.left+this.window.pageXOffset,i=r.top+this.window.pageYOffset,o=this.offset();this.window.scrollTo(n-o[0],i-o[1])}};function rE(t,e){let r=t.getElementById(e)||t.getElementsByName(e)[0];if(r)return r;if(typeof t.createTreeWalker=="function"&&t.body&&typeof t.body.attachShadow=="function"){let n=t.createTreeWalker(t.body,NodeFilter.SHOW_ELEMENT),i=n.currentNode;for(;i;){let o=i.shadowRoot;if(o){let s=o.getElementById(e)||o.querySelector(`[name="${e}"]`);if(s)return s}i=n.nextNode()}}return null}var _u=class{setOffset(e){}getScrollPosition(){return[0,0]}scrollToPosition(e){}scrollToAnchor(e){}setHistoryScrollRestoration(e){}},Rr=class{};var Ii=class{},na=class{},Zt=class t{constructor(e){this.normalizedNames=new Map,this.lazyUpdate=null,e?typeof e=="string"?this.lazyInit=()=>{this.headers=new Map,e.split(` -`).forEach(r=>{let n=r.indexOf(":");if(n>0){let i=r.slice(0,n),o=i.toLowerCase(),s=r.slice(n+1).trim();this.maybeSetNormalizedName(i,o),this.headers.has(o)?this.headers.get(o).push(s):this.headers.set(o,[s])}})}:typeof Headers<"u"&&e instanceof Headers?(this.headers=new Map,e.forEach((r,n)=>{this.setHeaderEntries(n,r)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(e).forEach(([r,n])=>{this.setHeaderEntries(r,n)})}:this.headers=new Map}has(e){return this.init(),this.headers.has(e.toLowerCase())}get(e){this.init();let r=this.headers.get(e.toLowerCase());return r&&r.length>0?r[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(e){return this.init(),this.headers.get(e.toLowerCase())||null}append(e,r){return this.clone({name:e,value:r,op:"a"})}set(e,r){return this.clone({name:e,value:r,op:"s"})}delete(e,r){return this.clone({name:e,value:r,op:"d"})}maybeSetNormalizedName(e,r){this.normalizedNames.has(r)||this.normalizedNames.set(r,e)}init(){this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(e=>this.applyUpdate(e)),this.lazyUpdate=null))}copyFrom(e){e.init(),Array.from(e.headers.keys()).forEach(r=>{this.headers.set(r,e.headers.get(r)),this.normalizedNames.set(r,e.normalizedNames.get(r))})}clone(e){let r=new t;return r.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,r.lazyUpdate=(this.lazyUpdate||[]).concat([e]),r}applyUpdate(e){let r=e.name.toLowerCase();switch(e.op){case"a":case"s":let n=e.value;if(typeof n=="string"&&(n=[n]),n.length===0)return;this.maybeSetNormalizedName(e.name,r);let i=(e.op==="a"?this.headers.get(r):void 0)||[];i.push(...n),this.headers.set(r,i);break;case"d":let o=e.value;if(!o)this.headers.delete(r),this.normalizedNames.delete(r);else{let s=this.headers.get(r);if(!s)return;s=s.filter(a=>o.indexOf(a)===-1),s.length===0?(this.headers.delete(r),this.normalizedNames.delete(r)):this.headers.set(r,s)}break}}setHeaderEntries(e,r){let n=(Array.isArray(r)?r:[r]).map(o=>o.toString()),i=e.toLowerCase();this.headers.set(i,n),this.maybeSetNormalizedName(e,i)}forEach(e){this.init(),Array.from(this.normalizedNames.keys()).forEach(r=>e(this.normalizedNames.get(r),this.headers.get(r)))}};var Nu=class{encodeKey(e){return Bm(e)}encodeValue(e){return Bm(e)}decodeKey(e){return decodeURIComponent(e)}decodeValue(e){return decodeURIComponent(e)}};function iE(t,e){let r=new Map;return t.length>0&&t.replace(/^\?/,"").split("&").forEach(i=>{let o=i.indexOf("="),[s,a]=o==-1?[e.decodeKey(i),""]:[e.decodeKey(i.slice(0,o)),e.decodeValue(i.slice(o+1))],l=r.get(s)||[];l.push(a),r.set(s,l)}),r}var oE=/%(\d[a-f0-9])/gi,sE={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function Bm(t){return encodeURIComponent(t).replace(oE,(e,r)=>sE[r]??e)}function ta(t){return`${t}`}var vn=class t{constructor(e={}){if(this.updates=null,this.cloneFrom=null,this.encoder=e.encoder||new Nu,e.fromString){if(e.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=iE(e.fromString,this.encoder)}else e.fromObject?(this.map=new Map,Object.keys(e.fromObject).forEach(r=>{let n=e.fromObject[r],i=Array.isArray(n)?n.map(ta):[ta(n)];this.map.set(r,i)})):this.map=null}has(e){return this.init(),this.map.has(e)}get(e){this.init();let r=this.map.get(e);return r?r[0]:null}getAll(e){return this.init(),this.map.get(e)||null}keys(){return this.init(),Array.from(this.map.keys())}append(e,r){return this.clone({param:e,value:r,op:"a"})}appendAll(e){let r=[];return Object.keys(e).forEach(n=>{let i=e[n];Array.isArray(i)?i.forEach(o=>{r.push({param:n,value:o,op:"a"})}):r.push({param:n,value:i,op:"a"})}),this.clone(r)}set(e,r){return this.clone({param:e,value:r,op:"s"})}delete(e,r){return this.clone({param:e,value:r,op:"d"})}toString(){return this.init(),this.keys().map(e=>{let r=this.encoder.encodeKey(e);return this.map.get(e).map(n=>r+"="+this.encoder.encodeValue(n)).join("&")}).filter(e=>e!=="").join("&")}clone(e){let r=new t({encoder:this.encoder});return r.cloneFrom=this.cloneFrom||this,r.updates=(this.updates||[]).concat(e),r}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(e=>this.map.set(e,this.cloneFrom.map.get(e))),this.updates.forEach(e=>{switch(e.op){case"a":case"s":let r=(e.op==="a"?this.map.get(e.param):void 0)||[];r.push(ta(e.value)),this.map.set(e.param,r);break;case"d":if(e.value!==void 0){let n=this.map.get(e.param)||[],i=n.indexOf(ta(e.value));i!==-1&&n.splice(i,1),n.length>0?this.map.set(e.param,n):this.map.delete(e.param)}else{this.map.delete(e.param);break}}}),this.cloneFrom=this.updates=null)}};var Ru=class{constructor(){this.map=new Map}set(e,r){return this.map.set(e,r),this}get(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}delete(e){return this.map.delete(e),this}has(e){return this.map.has(e)}keys(){return this.map.keys()}};function aE(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function $m(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer}function Hm(t){return typeof Blob<"u"&&t instanceof Blob}function Gm(t){return typeof FormData<"u"&&t instanceof FormData}function lE(t){return typeof URLSearchParams<"u"&&t instanceof URLSearchParams}var _i=class t{constructor(e,r,n,i){this.url=r,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=e.toUpperCase();let o;if(aE(this.method)||i?(this.body=n!==void 0?n:null,o=i):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params),this.transferCache=o.transferCache),this.headers??=new Zt,this.context??=new Ru,!this.params)this.params=new vn,this.urlWithParams=r;else{let s=this.params.toString();if(s.length===0)this.urlWithParams=r;else{let a=r.indexOf("?"),l=a===-1?"?":av.set(y,e.setHeaders[y]),d)),e.setParams&&(h=Object.keys(e.setParams).reduce((v,y)=>v.set(y,e.setParams[y]),h)),new t(r,n,s,{params:h,headers:d,context:m,reportProgress:l,responseType:i,withCredentials:a,transferCache:o})}},yn=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}(yn||{}),xi=class{constructor(e,r=200,n="OK"){this.headers=e.headers||new Zt,this.status=e.status!==void 0?e.status:r,this.statusText=e.statusText||n,this.url=e.url||null,this.ok=this.status>=200&&this.status<300}},ra=class t extends xi{constructor(e={}){super(e),this.type=yn.ResponseHeader}clone(e={}){return new t({headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},Si=class t extends xi{constructor(e={}){super(e),this.type=yn.Response,this.body=e.body!==void 0?e.body:null}clone(e={}){return new t({body:e.body!==void 0?e.body:this.body,headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},gn=class extends xi{constructor(e){super(e,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${e.url||"(unknown url)"}`:this.message=`Http failure response for ${e.url||"(unknown url)"}: ${e.status} ${e.statusText}`,this.error=e.error||null}},Ym=200,cE=204;function Au(t,e){return{body:e,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials,transferCache:t.transferCache}}var Mi=(()=>{let e=class e{constructor(n){this.handler=n}request(n,i,o={}){let s;if(n instanceof _i)s=n;else{let d;o.headers instanceof Zt?d=o.headers:d=new Zt(o.headers);let h;o.params&&(o.params instanceof vn?h=o.params:h=new vn({fromObject:o.params})),s=new _i(n,i,o.body!==void 0?o.body:null,{headers:d,context:o.context,params:h,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}let a=R(s).pipe(Rt(d=>this.handler.handle(d)));if(n instanceof _i||o.observe==="events")return a;let l=a.pipe(Se(d=>d instanceof Si));switch(o.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return l.pipe(P(d=>{if(d.body!==null&&!(d.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return d.body}));case"blob":return l.pipe(P(d=>{if(d.body!==null&&!(d.body instanceof Blob))throw new Error("Response is not a Blob.");return d.body}));case"text":return l.pipe(P(d=>{if(d.body!==null&&typeof d.body!="string")throw new Error("Response is not a string.");return d.body}));case"json":default:return l.pipe(P(d=>d.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(n,i={}){return this.request("DELETE",n,i)}get(n,i={}){return this.request("GET",n,i)}head(n,i={}){return this.request("HEAD",n,i)}jsonp(n,i){return this.request("JSONP",n,{params:new vn().append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(n,i={}){return this.request("OPTIONS",n,i)}patch(n,i,o={}){return this.request("PATCH",n,Au(o,i))}post(n,i,o={}){return this.request("POST",n,Au(o,i))}put(n,i,o={}){return this.request("PUT",n,Au(o,i))}};e.\u0275fac=function(i){return new(i||e)(I(Ii))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),uE=/^\)\]\}',?\n/,dE="X-Request-URL";function zm(t){if(t.url)return t.url;let e=dE.toLocaleLowerCase();return t.headers.get(e)}var fE=(()=>{let e=class e{constructor(){this.fetchImpl=C(Ou,{optional:!0})?.fetch??fetch.bind(globalThis),this.ngZone=C(ee)}handle(n){return new Z(i=>{let o=new AbortController;return this.doRequest(n,o.signal,i).then(ku,s=>i.error(new gn({error:s}))),()=>o.abort()})}doRequest(n,i,o){return ao(this,null,function*(){let s=this.createRequestInit(n),a;try{let w=this.ngZone.runOutsideAngular(()=>this.fetchImpl(n.urlWithParams,b({signal:i},s)));hE(w),o.next({type:yn.Sent}),a=yield w}catch(w){o.error(new gn({error:w,status:w.status??0,statusText:w.statusText,url:n.urlWithParams,headers:w.headers}));return}let l=new Zt(a.headers),d=a.statusText,h=zm(a)??n.urlWithParams,m=a.status,v=null;if(n.reportProgress&&o.next(new ra({headers:l,status:m,statusText:d,url:h})),a.body){let w=a.headers.get("content-length"),U=[],N=a.body.getReader(),T=0,oe,pe,X=typeof Zone<"u"&&Zone.current;yield this.ngZone.runOutsideAngular(()=>ao(this,null,function*(){for(;;){let{done:me,value:Ke}=yield N.read();if(me)break;if(U.push(Ke),T+=Ke.length,n.reportProgress){pe=n.responseType==="text"?(pe??"")+(oe??=new TextDecoder).decode(Ke,{stream:!0}):void 0;let Xn=()=>o.next({type:yn.DownloadProgress,total:w?+w:void 0,loaded:T,partialText:pe});X?X.run(Xn):Xn()}}}));let Qe=this.concatChunks(U,T);try{let me=a.headers.get("Content-Type")??"";v=this.parseBody(n,Qe,me)}catch(me){o.error(new gn({error:me,headers:new Zt(a.headers),status:a.status,statusText:a.statusText,url:zm(a)??n.urlWithParams}));return}}m===0&&(m=v?Ym:0),m>=200&&m<300?(o.next(new Si({body:v,headers:l,status:m,statusText:d,url:h})),o.complete()):o.error(new gn({error:v,headers:l,status:m,statusText:d,url:h}))})}parseBody(n,i,o){switch(n.responseType){case"json":let s=new TextDecoder().decode(i).replace(uE,"");return s===""?null:JSON.parse(s);case"text":return new TextDecoder().decode(i);case"blob":return new Blob([i],{type:o});case"arraybuffer":return i.buffer}}createRequestInit(n){let i={},o=n.withCredentials?"include":void 0;if(n.headers.forEach((s,a)=>i[s]=a.join(",")),n.headers.has("Accept")||(i.Accept="application/json, text/plain, */*"),!n.headers.has("Content-Type")){let s=n.detectContentTypeHeader();s!==null&&(i["Content-Type"]=s)}return{body:n.serializeBody(),method:n.method,headers:i,credentials:o}}concatChunks(n,i){let o=new Uint8Array(i),s=0;for(let a of n)o.set(a,s),s+=a.length;return o}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Ou=class{};function ku(){}function hE(t){t.then(ku,ku)}function Qm(t,e){return e(t)}function pE(t,e){return(r,n)=>e.intercept(r,{handle:i=>t(i,n)})}function mE(t,e,r){return(n,i)=>it(r,()=>e(n,o=>t(o,i)))}var gE=new x(""),Pu=new x(""),vE=new x(""),Km=new x("",{providedIn:"root",factory:()=>!0});function yE(){let t=null;return(e,r)=>{t===null&&(t=(C(gE,{optional:!0})??[]).reduceRight(pE,Qm));let n=C(Bt);if(C(Km)){let o=n.add();return t(e,r).pipe(rn(()=>n.remove(o)))}else return t(e,r)}}var qm=(()=>{let e=class e extends Ii{constructor(n,i){super(),this.backend=n,this.injector=i,this.chain=null,this.pendingTasks=C(Bt),this.contributeToStability=C(Km)}handle(n){if(this.chain===null){let i=Array.from(new Set([...this.injector.get(Pu),...this.injector.get(vE,[])]));this.chain=i.reduceRight((o,s)=>mE(o,s,this.injector),Qm)}if(this.contributeToStability){let i=this.pendingTasks.add();return this.chain(n,o=>this.backend.handle(o)).pipe(rn(()=>this.pendingTasks.remove(i)))}else return this.chain(n,i=>this.backend.handle(i))}};e.\u0275fac=function(i){return new(i||e)(I(na),I(Pe))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();var DE=/^\)\]\}',?\n/;function CE(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}var Wm=(()=>{let e=class e{constructor(n){this.xhrFactory=n}handle(n){if(n.method==="JSONP")throw new M(-2800,!1);let i=this.xhrFactory;return(i.\u0275loadImpl?re(i.\u0275loadImpl()):R(null)).pipe(Ve(()=>new Z(s=>{let a=i.build();if(a.open(n.method,n.urlWithParams),n.withCredentials&&(a.withCredentials=!0),n.headers.forEach((N,T)=>a.setRequestHeader(N,T.join(","))),n.headers.has("Accept")||a.setRequestHeader("Accept","application/json, text/plain, */*"),!n.headers.has("Content-Type")){let N=n.detectContentTypeHeader();N!==null&&a.setRequestHeader("Content-Type",N)}if(n.responseType){let N=n.responseType.toLowerCase();a.responseType=N!=="json"?N:"text"}let l=n.serializeBody(),d=null,h=()=>{if(d!==null)return d;let N=a.statusText||"OK",T=new Zt(a.getAllResponseHeaders()),oe=CE(a)||n.url;return d=new ra({headers:T,status:a.status,statusText:N,url:oe}),d},m=()=>{let{headers:N,status:T,statusText:oe,url:pe}=h(),X=null;T!==cE&&(X=typeof a.response>"u"?a.responseText:a.response),T===0&&(T=X?Ym:0);let Qe=T>=200&&T<300;if(n.responseType==="json"&&typeof X=="string"){let me=X;X=X.replace(DE,"");try{X=X!==""?JSON.parse(X):null}catch(Ke){X=me,Qe&&(Qe=!1,X={error:Ke,text:X})}}Qe?(s.next(new Si({body:X,headers:N,status:T,statusText:oe,url:pe||void 0})),s.complete()):s.error(new gn({error:X,headers:N,status:T,statusText:oe,url:pe||void 0}))},v=N=>{let{url:T}=h(),oe=new gn({error:N,status:a.status||0,statusText:a.statusText||"Unknown Error",url:T||void 0});s.error(oe)},y=!1,w=N=>{y||(s.next(h()),y=!0);let T={type:yn.DownloadProgress,loaded:N.loaded};N.lengthComputable&&(T.total=N.total),n.responseType==="text"&&a.responseText&&(T.partialText=a.responseText),s.next(T)},U=N=>{let T={type:yn.UploadProgress,loaded:N.loaded};N.lengthComputable&&(T.total=N.total),s.next(T)};return a.addEventListener("load",m),a.addEventListener("error",v),a.addEventListener("timeout",v),a.addEventListener("abort",v),n.reportProgress&&(a.addEventListener("progress",w),l!==null&&a.upload&&a.upload.addEventListener("progress",U)),a.send(l),s.next({type:yn.Sent}),()=>{a.removeEventListener("error",v),a.removeEventListener("abort",v),a.removeEventListener("load",m),a.removeEventListener("timeout",v),n.reportProgress&&(a.removeEventListener("progress",w),l!==null&&a.upload&&a.upload.removeEventListener("progress",U)),a.readyState!==a.DONE&&a.abort()}})))}};e.\u0275fac=function(i){return new(i||e)(I(Rr))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Jm=new x(""),wE="XSRF-TOKEN",bE=new x("",{providedIn:"root",factory:()=>wE}),EE="X-XSRF-TOKEN",_E=new x("",{providedIn:"root",factory:()=>EE}),ia=class{},IE=(()=>{let e=class e{constructor(n,i,o){this.doc=n,this.platform=i,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if(this.platform==="server")return null;let n=this.doc.cookie||"";return n!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ks(n,this.cookieName),this.lastCookieString=n),this.lastToken}};e.\u0275fac=function(i){return new(i||e)(I(we),I(It),I(bE))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function xE(t,e){let r=t.url.toLowerCase();if(!C(Jm)||t.method==="GET"||t.method==="HEAD"||r.startsWith("http://")||r.startsWith("https://"))return e(t);let n=C(ia).getToken(),i=C(_E);return n!=null&&!t.headers.has(i)&&(t=t.clone({headers:t.headers.set(i,n)})),e(t)}var Xm=function(t){return t[t.Interceptors=0]="Interceptors",t[t.LegacyInterceptors=1]="LegacyInterceptors",t[t.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",t[t.NoXsrfProtection=3]="NoXsrfProtection",t[t.JsonpSupport=4]="JsonpSupport",t[t.RequestsMadeViaParent=5]="RequestsMadeViaParent",t[t.Fetch=6]="Fetch",t}(Xm||{});function SE(t,e){return{\u0275kind:t,\u0275providers:e}}function eg(...t){let e=[Mi,Wm,qm,{provide:Ii,useExisting:qm},{provide:na,useFactory:()=>C(fE,{optional:!0})??C(Wm)},{provide:Pu,useValue:xE,multi:!0},{provide:Jm,useValue:!0},{provide:ia,useClass:IE}];for(let r of t)e.push(...r.\u0275providers);return _s(e)}var Zm=new x("");function tg(){return SE(Xm.LegacyInterceptors,[{provide:Zm,useFactory:yE},{provide:Pu,useExisting:Zm,multi:!0}])}var Vu=class extends Qs{constructor(){super(...arguments),this.supportsDOMEvents=!0}},ju=class t extends Vu{static makeCurrent(){km(new t)}onAndCancel(e,r,n){return e.addEventListener(r,n),()=>{e.removeEventListener(r,n)}}dispatchEvent(e,r){e.dispatchEvent(r)}remove(e){e.remove()}createElement(e,r){return r=r||this.getDefaultDocument(),r.createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,r){return r==="window"?window:r==="document"?e:r==="body"?e.body:null}getBaseHref(e){let r=ME();return r==null?null:TE(r)}resetBaseElement(){Ti=null}getUserAgent(){return window.navigator.userAgent}getCookie(e){return Ks(document.cookie,e)}},Ti=null;function ME(){return Ti=Ti||document.querySelector("base"),Ti?Ti.getAttribute("href"):null}function TE(t){return new URL(t,document.baseURI).pathname}var Uu=class{addToWindow(e){Ct.getAngularTestability=(n,i=!0)=>{let o=e.findTestabilityInTree(n,i);if(o==null)throw new M(5103,!1);return o},Ct.getAllAngularTestabilities=()=>e.getAllTestabilities(),Ct.getAllAngularRootElements=()=>e.getAllRootElements();let r=n=>{let i=Ct.getAllAngularTestabilities(),o=i.length,s=function(){o--,o==0&&n()};i.forEach(a=>{a.whenStable(s)})};Ct.frameworkStabilizers||(Ct.frameworkStabilizers=[]),Ct.frameworkStabilizers.push(r)}findTestabilityInTree(e,r,n){if(r==null)return null;let i=e.getTestability(r);return i??(n?Mt().isShadowRoot(r)?this.findTestabilityInTree(e,r.host,!0):this.findTestabilityInTree(e,r.parentElement,!0):null)}},AE=(()=>{let e=class e{build(){return new XMLHttpRequest}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),oa=new x(""),sg=(()=>{let e=class e{constructor(n,i){this._zone=i,this._eventNameToPlugin=new Map,n.forEach(o=>{o.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,i,o){return this._findPluginFor(i).addEventListener(n,i,o)}getZone(){return this._zone}_findPluginFor(n){let i=this._eventNameToPlugin.get(n);if(i)return i;if(i=this._plugins.find(s=>s.supports(n)),!i)throw new M(5101,!1);return this._eventNameToPlugin.set(n,i),i}};e.\u0275fac=function(i){return new(i||e)(I(oa),I(ee))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Ai=class{constructor(e){this._doc=e}},Fu="ng-app-id",ag=(()=>{let e=class e{constructor(n,i,o,s={}){this.doc=n,this.appId=i,this.nonce=o,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=ea(s),this.resetHostNodes()}addStyles(n){for(let i of n)this.changeUsageCount(i,1)===1&&this.onStyleAdded(i)}removeStyles(n){for(let i of n)this.changeUsageCount(i,-1)<=0&&this.onStyleRemoved(i)}ngOnDestroy(){let n=this.styleNodesInDOM;n&&(n.forEach(i=>i.remove()),n.clear());for(let i of this.getAllStyles())this.onStyleRemoved(i);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(let i of this.getAllStyles())this.addStyleToHost(n,i)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(let i of this.hostNodes)this.addStyleToHost(i,n)}onStyleRemoved(n){let i=this.styleRef;i.get(n)?.elements?.forEach(o=>o.remove()),i.delete(n)}collectServerRenderedStyles(){let n=this.doc.head?.querySelectorAll(`style[${Fu}="${this.appId}"]`);if(n?.length){let i=new Map;return n.forEach(o=>{o.textContent!=null&&i.set(o.textContent,o)}),i}return null}changeUsageCount(n,i){let o=this.styleRef;if(o.has(n)){let s=o.get(n);return s.usage+=i,s.usage}return o.set(n,{usage:i,elements:[]}),i}getStyleElement(n,i){let o=this.styleNodesInDOM,s=o?.get(i);if(s?.parentNode===n)return o.delete(i),s.removeAttribute(Fu),s;{let a=this.doc.createElement("style");return this.nonce&&a.setAttribute("nonce",this.nonce),a.textContent=i,this.platformIsServer&&a.setAttribute(Fu,this.appId),n.appendChild(a),a}}addStyleToHost(n,i){let o=this.getStyleElement(n,i),s=this.styleRef,a=s.get(i)?.elements;a?a.push(o):s.set(i,{elements:[o],usage:1})}resetHostNodes(){let n=this.hostNodes;n.clear(),n.add(this.doc.head)}};e.\u0275fac=function(i){return new(i||e)(I(we),I(Ps),I(Zc,8),I(It))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Lu={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"},$u=/%COMP%/g,lg="%COMP%",NE=`_nghost-${lg}`,RE=`_ngcontent-${lg}`,OE=!0,kE=new x("",{providedIn:"root",factory:()=>OE});function PE(t){return RE.replace($u,t)}function FE(t){return NE.replace($u,t)}function cg(t,e){return e.map(r=>r.replace($u,t))}var rg=(()=>{let e=class e{constructor(n,i,o,s,a,l,d,h=null){this.eventManager=n,this.sharedStylesHost=i,this.appId=o,this.removeStylesOnCompDestroy=s,this.doc=a,this.platformId=l,this.ngZone=d,this.nonce=h,this.rendererByCompId=new Map,this.platformIsServer=ea(l),this.defaultRenderer=new Ni(n,a,d,this.platformIsServer)}createRenderer(n,i){if(!n||!i)return this.defaultRenderer;this.platformIsServer&&i.encapsulation===wt.ShadowDom&&(i=W(b({},i),{encapsulation:wt.Emulated}));let o=this.getOrCreateRenderer(n,i);return o instanceof sa?o.applyToHost(n):o instanceof Ri&&o.applyStyles(),o}getOrCreateRenderer(n,i){let o=this.rendererByCompId,s=o.get(i.id);if(!s){let a=this.doc,l=this.ngZone,d=this.eventManager,h=this.sharedStylesHost,m=this.removeStylesOnCompDestroy,v=this.platformIsServer;switch(i.encapsulation){case wt.Emulated:s=new sa(d,h,i,this.appId,m,a,l,v);break;case wt.ShadowDom:return new Bu(d,h,n,i,a,l,this.nonce,v);default:s=new Ri(d,h,i,m,a,l,v);break}o.set(i.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}};e.\u0275fac=function(i){return new(i||e)(I(sg),I(ag),I(Ps),I(kE),I(we),I(It),I(ee),I(Zc))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Ni=class{constructor(e,r,n,i){this.eventManager=e,this.doc=r,this.ngZone=n,this.platformIsServer=i,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(e,r){return r?this.doc.createElementNS(Lu[r]||r,e):this.doc.createElement(e)}createComment(e){return this.doc.createComment(e)}createText(e){return this.doc.createTextNode(e)}appendChild(e,r){(ig(e)?e.content:e).appendChild(r)}insertBefore(e,r,n){e&&(ig(e)?e.content:e).insertBefore(r,n)}removeChild(e,r){r.remove()}selectRootElement(e,r){let n=typeof e=="string"?this.doc.querySelector(e):e;if(!n)throw new M(-5104,!1);return r||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,r,n,i){if(i){r=i+":"+r;let o=Lu[i];o?e.setAttributeNS(o,r,n):e.setAttribute(r,n)}else e.setAttribute(r,n)}removeAttribute(e,r,n){if(n){let i=Lu[n];i?e.removeAttributeNS(i,r):e.removeAttribute(`${n}:${r}`)}else e.removeAttribute(r)}addClass(e,r){e.classList.add(r)}removeClass(e,r){e.classList.remove(r)}setStyle(e,r,n,i){i&(Ft.DashCase|Ft.Important)?e.style.setProperty(r,n,i&Ft.Important?"important":""):e.style[r]=n}removeStyle(e,r,n){n&Ft.DashCase?e.style.removeProperty(r):e.style[r]=""}setProperty(e,r,n){e!=null&&(e[r]=n)}setValue(e,r){e.nodeValue=r}listen(e,r,n){if(typeof e=="string"&&(e=Mt().getGlobalEventTarget(this.doc,e),!e))throw new Error(`Unsupported event target ${e} for event ${r}`);return this.eventManager.addEventListener(e,r,this.decoratePreventDefault(n))}decoratePreventDefault(e){return r=>{if(r==="__ngUnwrap__")return e;(this.platformIsServer?this.ngZone.runGuarded(()=>e(r)):e(r))===!1&&r.preventDefault()}}};function ig(t){return t.tagName==="TEMPLATE"&&t.content!==void 0}var Bu=class extends Ni{constructor(e,r,n,i,o,s,a,l){super(e,o,s,l),this.sharedStylesHost=r,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let d=cg(i.id,i.styles);for(let h of d){let m=document.createElement("style");a&&m.setAttribute("nonce",a),m.textContent=h,this.shadowRoot.appendChild(m)}}nodeOrShadowRoot(e){return e===this.hostEl?this.shadowRoot:e}appendChild(e,r){return super.appendChild(this.nodeOrShadowRoot(e),r)}insertBefore(e,r,n){return super.insertBefore(this.nodeOrShadowRoot(e),r,n)}removeChild(e,r){return super.removeChild(null,r)}parentNode(e){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(e)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},Ri=class extends Ni{constructor(e,r,n,i,o,s,a,l){super(e,o,s,a),this.sharedStylesHost=r,this.removeStylesOnCompDestroy=i,this.styles=l?cg(l,n.styles):n.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}},sa=class extends Ri{constructor(e,r,n,i,o,s,a,l){let d=i+"-"+n.id;super(e,r,n,o,s,a,l,d),this.contentAttr=PE(d),this.hostAttr=FE(d)}applyToHost(e){this.applyStyles(),this.setAttribute(e,this.hostAttr,"")}createElement(e,r){let n=super.createElement(e,r);return super.setAttribute(n,this.contentAttr,""),n}},LE=(()=>{let e=class e extends Ai{constructor(n){super(n)}supports(n){return!0}addEventListener(n,i,o){return n.addEventListener(i,o,!1),()=>this.removeEventListener(n,i,o)}removeEventListener(n,i,o){return n.removeEventListener(i,o)}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),VE=(()=>{let e=class e extends Ai{constructor(n){super(n),this.delegate=C(xm,{optional:!0})}supports(n){return this.delegate?this.delegate.supports(n):!1}addEventListener(n,i,o){return this.delegate.addEventListener(n,i,o)}removeEventListener(n,i,o){return this.delegate.removeEventListener(n,i,o)}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),og=["alt","control","meta","shift"],jE={"\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"},UE={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},BE=(()=>{let e=class e extends Ai{constructor(n){super(n)}supports(n){return e.parseEventName(n)!=null}addEventListener(n,i,o){let s=e.parseEventName(i),a=e.eventCallback(s.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Mt().onAndCancel(n,s.domEventName,a))}static parseEventName(n){let i=n.toLowerCase().split("."),o=i.shift();if(i.length===0||!(o==="keydown"||o==="keyup"))return null;let s=e._normalizeKey(i.pop()),a="",l=i.indexOf("code");if(l>-1&&(i.splice(l,1),a="code."),og.forEach(h=>{let m=i.indexOf(h);m>-1&&(i.splice(m,1),a+=h+".")}),a+=s,i.length!=0||s.length===0)return null;let d={};return d.domEventName=o,d.fullKey=a,d}static matchEventFullKeyCode(n,i){let o=jE[n.key]||n.key,s="";return i.indexOf("code.")>-1&&(o=n.code,s="code."),o==null||!o?!1:(o=o.toLowerCase(),o===" "?o="space":o==="."&&(o="dot"),og.forEach(a=>{if(a!==o){let l=UE[a];l(n)&&(s+=a+".")}}),s+=o,s===i)}static eventCallback(n,i,o){return s=>{e.matchEventFullKeyCode(s,n)&&o.runGuarded(()=>i(s))}}static _normalizeKey(n){return n==="esc"?"escape":n}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function ug(t,e){return Im(b({rootComponent:t},$E(e)))}function $E(t){return{appProviders:[...dg,...t?.providers??[]],platformProviders:qE}}function HE(){ju.makeCurrent()}function GE(){return new Pt}function zE(){return Ep(document),document}var qE=[{provide:It,useValue:Tu},{provide:Wc,useValue:HE,multi:!0},{provide:we,useFactory:zE,deps:[]}];var WE=new x(""),ZE=[{provide:bi,useClass:Uu,deps:[]},{provide:mu,useClass:zs,deps:[ee,qs,bi]},{provide:zs,useClass:zs,deps:[ee,qs,bi]}],dg=[{provide:Is,useValue:"root"},{provide:Pt,useFactory:GE,deps:[]},{provide:oa,useClass:LE,multi:!0,deps:[we,ee,It]},{provide:oa,useClass:BE,multi:!0,deps:[we]},{provide:oa,useClass:VE,multi:!0},rg,ag,sg,{provide:Ir,useExisting:rg},{provide:Rr,useClass:AE,deps:[]},[]],fg=(()=>{let e=class e{constructor(n){}static withServerTransition(n){return{ngModule:e,providers:[{provide:Ps,useValue:n.appId}]}}};e.\u0275fac=function(i){return new(i||e)(I(WE,12))},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({providers:[...dg,...ZE],imports:[Vm,_m]});let t=e;return t})();var hg=(()=>{let e=class e{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();var $="primary",qi=Symbol("RouteTitle"),Wu=class{constructor(e){this.params=e||{}}has(e){return Object.prototype.hasOwnProperty.call(this.params,e)}get(e){if(this.has(e)){let r=this.params[e];return Array.isArray(r)?r[0]:r}return null}getAll(e){if(this.has(e)){let r=this.params[e];return Array.isArray(r)?r:[r]}return[]}get keys(){return Object.keys(this.params)}};function Ur(t){return new Wu(t)}function QE(t,e,r){let n=r.path.split("/");if(n.length>t.length||r.pathMatch==="full"&&(e.hasChildren()||n.lengthn[o]===i)}else return t===e}function Ig(t){return t.length>0?t[t.length-1]:null}function Cn(t){return dl(t)?t:Hn(t)?re(Promise.resolve(t)):R(t)}var JE={exact:Sg,subset:Mg},xg={exact:XE,subset:e_,ignored:()=>!0};function pg(t,e,r){return JE[r.paths](t.root,e.root,r.matrixParams)&&xg[r.queryParams](t.queryParams,e.queryParams)&&!(r.fragment==="exact"&&t.fragment!==e.fragment)}function XE(t,e){return Tt(t,e)}function Sg(t,e,r){if(!zn(t.segments,e.segments)||!ca(t.segments,e.segments,r)||t.numberOfChildren!==e.numberOfChildren)return!1;for(let n in e.children)if(!t.children[n]||!Sg(t.children[n],e.children[n],r))return!1;return!0}function e_(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(r=>_g(t[r],e[r]))}function Mg(t,e,r){return Tg(t,e,e.segments,r)}function Tg(t,e,r,n){if(t.segments.length>r.length){let i=t.segments.slice(0,r.length);return!(!zn(i,r)||e.hasChildren()||!ca(i,r,n))}else if(t.segments.length===r.length){if(!zn(t.segments,r)||!ca(t.segments,r,n))return!1;for(let i in e.children)if(!t.children[i]||!Mg(t.children[i],e.children[i],n))return!1;return!0}else{let i=r.slice(0,t.segments.length),o=r.slice(t.segments.length);return!zn(t.segments,i)||!ca(t.segments,i,n)||!t.children[$]?!1:Tg(t.children[$],e,o,n)}}function ca(t,e,r){return e.every((n,i)=>xg[r](t[i].parameters,n.parameters))}var Qt=class{constructor(e=new J([],{}),r={},n=null){this.root=e,this.queryParams=r,this.fragment=n}get queryParamMap(){return this._queryParamMap??=Ur(this.queryParams),this._queryParamMap}toString(){return r_.serialize(this)}},J=class{constructor(e,r){this.segments=e,this.children=r,this.parent=null,Object.values(r).forEach(n=>n.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return ua(this)}},Gn=class{constructor(e,r){this.path=e,this.parameters=r}get parameterMap(){return this._parameterMap??=Ur(this.parameters),this._parameterMap}toString(){return Ng(this)}};function t_(t,e){return zn(t,e)&&t.every((r,n)=>Tt(r.parameters,e[n].parameters))}function zn(t,e){return t.length!==e.length?!1:t.every((r,n)=>r.path===e[n].path)}function n_(t,e){let r=[];return Object.entries(t.children).forEach(([n,i])=>{n===$&&(r=r.concat(e(i,n)))}),Object.entries(t.children).forEach(([n,i])=>{n!==$&&(r=r.concat(e(i,n)))}),r}var Wi=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>new Br,providedIn:"root"});let t=e;return t})(),Br=class{parse(e){let r=new Qu(e);return new Qt(r.parseRootSegment(),r.parseQueryParams(),r.parseFragment())}serialize(e){let r=`/${Oi(e.root,!0)}`,n=s_(e.queryParams),i=typeof e.fragment=="string"?`#${i_(e.fragment)}`:"";return`${r}${n}${i}`}},r_=new Br;function ua(t){return t.segments.map(e=>Ng(e)).join("/")}function Oi(t,e){if(!t.hasChildren())return ua(t);if(e){let r=t.children[$]?Oi(t.children[$],!1):"",n=[];return Object.entries(t.children).forEach(([i,o])=>{i!==$&&n.push(`${i}:${Oi(o,!1)}`)}),n.length>0?`${r}(${n.join("//")})`:r}else{let r=n_(t,(n,i)=>i===$?[Oi(t.children[$],!1)]:[`${i}:${Oi(n,!1)}`]);return Object.keys(t.children).length===1&&t.children[$]!=null?`${ua(t)}/${r[0]}`:`${ua(t)}/(${r.join("//")})`}}function Ag(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function aa(t){return Ag(t).replace(/%3B/gi,";")}function i_(t){return encodeURI(t)}function Yu(t){return Ag(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function da(t){return decodeURIComponent(t)}function mg(t){return da(t.replace(/\+/g,"%20"))}function Ng(t){return`${Yu(t.path)}${o_(t.parameters)}`}function o_(t){return Object.entries(t).map(([e,r])=>`;${Yu(e)}=${Yu(r)}`).join("")}function s_(t){let e=Object.entries(t).map(([r,n])=>Array.isArray(n)?n.map(i=>`${aa(r)}=${aa(i)}`).join("&"):`${aa(r)}=${aa(n)}`).filter(r=>r);return e.length?`?${e.join("&")}`:""}var a_=/^[^\/()?;#]+/;function Hu(t){let e=t.match(a_);return e?e[0]:""}var l_=/^[^\/()?;=#]+/;function c_(t){let e=t.match(l_);return e?e[0]:""}var u_=/^[^=?&#]+/;function d_(t){let e=t.match(u_);return e?e[0]:""}var f_=/^[^&#]+/;function h_(t){let e=t.match(f_);return e?e[0]:""}var Qu=class{constructor(e){this.url=e,this.remaining=e}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new J([],{}):new J([],this.parseChildren())}parseQueryParams(){let e={};if(this.consumeOptional("?"))do this.parseQueryParam(e);while(this.consumeOptional("&"));return e}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let e=[];for(this.peekStartsWith("(")||e.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),e.push(this.parseSegment());let r={};this.peekStartsWith("/(")&&(this.capture("/"),r=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(e.length>0||Object.keys(r).length>0)&&(n[$]=new J(e,r)),n}parseSegment(){let e=Hu(this.remaining);if(e===""&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(e),new Gn(da(e),this.parseMatrixParams())}parseMatrixParams(){let e={};for(;this.consumeOptional(";");)this.parseParam(e);return e}parseParam(e){let r=c_(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){let i=Hu(this.remaining);i&&(n=i,this.capture(n))}e[da(r)]=da(n)}parseQueryParam(e){let r=d_(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){let s=h_(this.remaining);s&&(n=s,this.capture(n))}let i=mg(r),o=mg(n);if(e.hasOwnProperty(i)){let s=e[i];Array.isArray(s)||(s=[s],e[i]=s),s.push(o)}else e[i]=o}parseParens(e){let r={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let n=Hu(this.remaining),i=this.remaining[n.length];if(i!=="/"&&i!==")"&&i!==";")throw new M(4010,!1);let o;n.indexOf(":")>-1?(o=n.slice(0,n.indexOf(":")),this.capture(o),this.capture(":")):e&&(o=$);let s=this.parseChildren();r[o]=Object.keys(s).length===1?s[$]:new J([],s),this.consumeOptional("//")}return r}peekStartsWith(e){return this.remaining.startsWith(e)}consumeOptional(e){return this.peekStartsWith(e)?(this.remaining=this.remaining.substring(e.length),!0):!1}capture(e){if(!this.consumeOptional(e))throw new M(4011,!1)}};function Rg(t){return t.segments.length>0?new J([],{[$]:t}):t}function Og(t){let e={};for(let[n,i]of Object.entries(t.children)){let o=Og(i);if(n===$&&o.segments.length===0&&o.hasChildren())for(let[s,a]of Object.entries(o.children))e[s]=a;else(o.segments.length>0||o.hasChildren())&&(e[n]=o)}let r=new J(t.segments,e);return p_(r)}function p_(t){if(t.numberOfChildren===1&&t.children[$]){let e=t.children[$];return new J(t.segments.concat(e.segments),e.children)}return t}function qn(t){return t instanceof Qt}function m_(t,e,r=null,n=null){let i=kg(t);return Pg(i,e,r,n)}function kg(t){let e;function r(o){let s={};for(let l of o.children){let d=r(l);s[l.outlet]=d}let a=new J(o.url,s);return o===t&&(e=a),a}let n=r(t.root),i=Rg(n);return e??i}function Pg(t,e,r,n){let i=t;for(;i.parent;)i=i.parent;if(e.length===0)return Gu(i,i,i,r,n);let o=g_(e);if(o.toRoot())return Gu(i,i,new J([],{}),r,n);let s=v_(o,i,t),a=s.processChildren?Fi(s.segmentGroup,s.index,o.commands):Lg(s.segmentGroup,s.index,o.commands);return Gu(i,s.segmentGroup,a,r,n)}function fa(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function ji(t){return typeof t=="object"&&t!=null&&t.outlets}function Gu(t,e,r,n,i){let o={};n&&Object.entries(n).forEach(([l,d])=>{o[l]=Array.isArray(d)?d.map(h=>`${h}`):`${d}`});let s;t===e?s=r:s=Fg(t,e,r);let a=Rg(Og(s));return new Qt(a,o,i)}function Fg(t,e,r){let n={};return Object.entries(t.children).forEach(([i,o])=>{o===e?n[i]=r:n[i]=Fg(o,e,r)}),new J(t.segments,n)}var ha=class{constructor(e,r,n){if(this.isAbsolute=e,this.numberOfDoubleDots=r,this.commands=n,e&&n.length>0&&fa(n[0]))throw new M(4003,!1);let i=n.find(ji);if(i&&i!==Ig(n))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function g_(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new ha(!0,0,t);let e=0,r=!1,n=t.reduce((i,o,s)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let a={};return Object.entries(o.outlets).forEach(([l,d])=>{a[l]=typeof d=="string"?d.split("/"):d}),[...i,{outlets:a}]}if(o.segmentPath)return[...i,o.segmentPath]}return typeof o!="string"?[...i,o]:s===0?(o.split("/").forEach((a,l)=>{l==0&&a==="."||(l==0&&a===""?r=!0:a===".."?e++:a!=""&&i.push(a))}),i):[...i,o]},[]);return new ha(r,e,n)}var Lr=class{constructor(e,r,n){this.segmentGroup=e,this.processChildren=r,this.index=n}};function v_(t,e,r){if(t.isAbsolute)return new Lr(e,!0,0);if(!r)return new Lr(e,!1,NaN);if(r.parent===null)return new Lr(r,!0,0);let n=fa(t.commands[0])?0:1,i=r.segments.length-1+n;return y_(r,i,t.numberOfDoubleDots)}function y_(t,e,r){let n=t,i=e,o=r;for(;o>i;){if(o-=i,n=n.parent,!n)throw new M(4005,!1);i=n.segments.length}return new Lr(n,!1,i-o)}function D_(t){return ji(t[0])?t[0].outlets:{[$]:t}}function Lg(t,e,r){if(t??=new J([],{}),t.segments.length===0&&t.hasChildren())return Fi(t,e,r);let n=C_(t,e,r),i=r.slice(n.commandIndex);if(n.match&&n.pathIndexo!==$)&&t.children[$]&&t.numberOfChildren===1&&t.children[$].segments.length===0){let o=Fi(t.children[$],e,r);return new J(t.segments,o.children)}return Object.entries(n).forEach(([o,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(i[o]=Lg(t.children[o],e,s))}),Object.entries(t.children).forEach(([o,s])=>{n[o]===void 0&&(i[o]=s)}),new J(t.segments,i)}}function C_(t,e,r){let n=0,i=e,o={match:!1,pathIndex:0,commandIndex:0};for(;i=r.length)return o;let s=t.segments[i],a=r[n];if(ji(a))break;let l=`${a}`,d=n0&&l===void 0)break;if(l&&d&&typeof d=="object"&&d.outlets===void 0){if(!vg(l,d,s))return o;n+=2}else{if(!vg(l,{},s))return o;n++}i++}return{match:!0,pathIndex:i,commandIndex:n}}function Ku(t,e,r){let n=t.segments.slice(0,e),i=0;for(;i{typeof n=="string"&&(n=[n]),n!==null&&(e[r]=Ku(new J([],{}),0,n))}),e}function gg(t){let e={};return Object.entries(t).forEach(([r,n])=>e[r]=`${n}`),e}function vg(t,e,r){return t==r.path&&Tt(e,r.parameters)}var Li="imperative",Ie=function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t}(Ie||{}),at=class{constructor(e,r){this.id=e,this.url=r}},$r=class extends at{constructor(e,r,n="imperative",i=null){super(e,r),this.type=Ie.NavigationStart,this.navigationTrigger=n,this.restoredState=i}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},Ye=class extends at{constructor(e,r,n){super(e,r),this.urlAfterRedirects=n,this.type=Ie.NavigationEnd}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},Ze=function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t}(Ze||{}),pa=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(pa||{}),Yt=class extends at{constructor(e,r,n,i){super(e,r),this.reason=n,this.code=i,this.type=Ie.NavigationCancel}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},Dn=class extends at{constructor(e,r,n,i){super(e,r),this.reason=n,this.code=i,this.type=Ie.NavigationSkipped}},Ui=class extends at{constructor(e,r,n,i){super(e,r),this.error=n,this.target=i,this.type=Ie.NavigationError}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},ma=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.RoutesRecognized}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Ju=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.GuardsCheckStart}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Xu=class extends at{constructor(e,r,n,i,o){super(e,r),this.urlAfterRedirects=n,this.state=i,this.shouldActivate=o,this.type=Ie.GuardsCheckEnd}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},ed=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.ResolveStart}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},td=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.ResolveEnd}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},nd=class{constructor(e){this.route=e,this.type=Ie.RouteConfigLoadStart}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},rd=class{constructor(e){this.route=e,this.type=Ie.RouteConfigLoadEnd}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},id=class{constructor(e){this.snapshot=e,this.type=Ie.ChildActivationStart}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},od=class{constructor(e){this.snapshot=e,this.type=Ie.ChildActivationEnd}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},sd=class{constructor(e){this.snapshot=e,this.type=Ie.ActivationStart}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ad=class{constructor(e){this.snapshot=e,this.type=Ie.ActivationEnd}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ga=class{constructor(e,r,n){this.routerEvent=e,this.position=r,this.anchor=n,this.type=Ie.Scroll}toString(){let e=this.position?`${this.position[0]}, ${this.position[1]}`:null;return`Scroll(anchor: '${this.anchor}', position: '${e}')`}},Bi=class{},Hr=class{constructor(e,r){this.url=e,this.navigationBehaviorOptions=r}};function b_(t,e){return t.providers&&!t._injector&&(t._injector=Bs(t.providers,e,`Route: ${t.path}`)),t._injector??e}function mt(t){return t.outlet||$}function E_(t,e){let r=t.filter(n=>mt(n)===e);return r.push(...t.filter(n=>mt(n)!==e)),r}function Zi(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let e=t.parent;e;e=e.parent){let r=e.routeConfig;if(r?._loadedInjector)return r._loadedInjector;if(r?._injector)return r._injector}return null}var ld=class{get injector(){return Zi(this.route?.snapshot)??this.rootInjector}set injector(e){}constructor(e){this.rootInjector=e,this.outlet=null,this.route=null,this.children=new Yi(this.rootInjector),this.attachRef=null}},Yi=(()=>{let e=class e{constructor(n){this.rootInjector=n,this.contexts=new Map}onChildOutletCreated(n,i){let o=this.getOrCreateContext(n);o.outlet=i,this.contexts.set(n,o)}onChildOutletDestroyed(n){let i=this.getContext(n);i&&(i.outlet=null,i.attachRef=null)}onOutletDeactivated(){let n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let i=this.getContext(n);return i||(i=new ld(this.rootInjector),this.contexts.set(n,i)),i}getContext(n){return this.contexts.get(n)||null}};e.\u0275fac=function(i){return new(i||e)(I(Pe))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),va=class{constructor(e){this._root=e}get root(){return this._root.value}parent(e){let r=this.pathFromRoot(e);return r.length>1?r[r.length-2]:null}children(e){let r=cd(e,this._root);return r?r.children.map(n=>n.value):[]}firstChild(e){let r=cd(e,this._root);return r&&r.children.length>0?r.children[0].value:null}siblings(e){let r=ud(e,this._root);return r.length<2?[]:r[r.length-2].children.map(i=>i.value).filter(i=>i!==e)}pathFromRoot(e){return ud(e,this._root).map(r=>r.value)}};function cd(t,e){if(t===e.value)return e;for(let r of e.children){let n=cd(t,r);if(n)return n}return null}function ud(t,e){if(t===e.value)return[e];for(let r of e.children){let n=ud(t,r);if(n.length)return n.unshift(e),n}return[]}var We=class{constructor(e,r){this.value=e,this.children=r}toString(){return`TreeNode(${this.value})`}};function Fr(t){let e={};return t&&t.children.forEach(r=>e[r.value.outlet]=r),e}var ya=class extends va{constructor(e,r){super(e),this.snapshot=r,Dd(this,e)}toString(){return this.snapshot.toString()}};function Vg(t){let e=__(t),r=new xe([new Gn("",{})]),n=new xe({}),i=new xe({}),o=new xe({}),s=new xe(""),a=new Kt(r,n,o,s,i,$,t,e.root);return a.snapshot=e.root,new ya(new We(a,[]),e)}function __(t){let e={},r={},n={},i="",o=new Vr([],e,n,i,r,$,t,null,{});return new Ca("",new We(o,[]))}var Kt=class{constructor(e,r,n,i,o,s,a,l){this.urlSubject=e,this.paramsSubject=r,this.queryParamsSubject=n,this.fragmentSubject=i,this.dataSubject=o,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(P(d=>d[qi]))??R(void 0),this.url=e,this.params=r,this.queryParams=n,this.fragment=i,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(P(e=>Ur(e))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(P(e=>Ur(e))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function Da(t,e,r="emptyOnly"){let n,{routeConfig:i}=t;return e!==null&&(r==="always"||i?.path===""||!e.component&&!e.routeConfig?.loadComponent)?n={params:b(b({},e.params),t.params),data:b(b({},e.data),t.data),resolve:b(b(b(b({},t.data),e.data),i?.data),t._resolvedData)}:n={params:b({},t.params),data:b({},t.data),resolve:b(b({},t.data),t._resolvedData??{})},i&&Ug(i)&&(n.resolve[qi]=i.title),n}var Vr=class{get title(){return this.data?.[qi]}constructor(e,r,n,i,o,s,a,l,d){this.url=e,this.params=r,this.queryParams=n,this.fragment=i,this.data=o,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=d}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=Ur(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Ur(this.queryParams),this._queryParamMap}toString(){let e=this.url.map(n=>n.toString()).join("/"),r=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${e}', path:'${r}')`}},Ca=class extends va{constructor(e,r){super(r),this.url=e,Dd(this,r)}toString(){return jg(this._root)}};function Dd(t,e){e.value._routerState=t,e.children.forEach(r=>Dd(t,r))}function jg(t){let e=t.children.length>0?` { ${t.children.map(jg).join(", ")} } `:"";return`${t.value}${e}`}function zu(t){if(t.snapshot){let e=t.snapshot,r=t._futureSnapshot;t.snapshot=r,Tt(e.queryParams,r.queryParams)||t.queryParamsSubject.next(r.queryParams),e.fragment!==r.fragment&&t.fragmentSubject.next(r.fragment),Tt(e.params,r.params)||t.paramsSubject.next(r.params),KE(e.url,r.url)||t.urlSubject.next(r.url),Tt(e.data,r.data)||t.dataSubject.next(r.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function dd(t,e){let r=Tt(t.params,e.params)&&t_(t.url,e.url),n=!t.parent!=!e.parent;return r&&!n&&(!t.parent||dd(t.parent,e.parent))}function Ug(t){return typeof t.title=="string"||t.title===null}var Cd=(()=>{let e=class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=$,this.activateEvents=new he,this.deactivateEvents=new he,this.attachEvents=new he,this.detachEvents=new he,this.parentContexts=C(Yi),this.location=C(pn),this.changeDetector=C(mn),this.inputBinder=C(Ia,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){let{firstChange:i,previousValue:o}=n.name;if(i)return;this.isTrackedInParentContexts(o)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(o)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(n){return this.parentContexts.getContext(n)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let n=this.parentContexts.getContext(this.name);n?.route&&(n.attachRef?this.attach(n.attachRef,n.route):this.activateWith(n.route,n.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new M(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new M(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new M(4012,!1);this.location.detach();let n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,i){this.activated=n,this._activatedRoute=i,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){let n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,i){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=n;let o=this.location,a=n.snapshot.component,l=this.parentContexts.getOrCreateContext(this.name).children,d=new fd(n,l,o.injector);this.activated=o.createComponent(a,{index:o.length,injector:d,environmentInjector:i}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}};e.\u0275fac=function(i){return new(i||e)},e.\u0275dir=ne({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Ut]});let t=e;return t})(),fd=class t{__ngOutletInjector(e){return new t(this.route,this.childContexts,e)}constructor(e,r,n){this.route=e,this.childContexts=r,this.parent=n}get(e,r){return e===Kt?this.route:e===Yi?this.childContexts:this.parent.get(e,r)}},Ia=new x(""),yg=(()=>{let e=class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(n){this.unsubscribeFromRouteData(n),this.subscribeToRouteData(n)}unsubscribeFromRouteData(n){this.outletDataSubscriptions.get(n)?.unsubscribe(),this.outletDataSubscriptions.delete(n)}subscribeToRouteData(n){let{activatedRoute:i}=n,o=ai([i.queryParams,i.params,i.data]).pipe(Ve(([s,a,l],d)=>(l=b(b(b({},s),a),l),d===0?R(l):Promise.resolve(l)))).subscribe(s=>{if(!n.isActivated||!n.activatedComponentRef||n.activatedRoute!==i||i.component===null){this.unsubscribeFromRouteData(n);return}let a=Sm(i.component);if(!a){this.unsubscribeFromRouteData(n);return}for(let{templateName:l}of a.inputs)n.activatedComponentRef.setInput(l,s[l])});this.outletDataSubscriptions.set(n,o)}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function I_(t,e,r){let n=$i(t,e._root,r?r._root:void 0);return new ya(n,e)}function $i(t,e,r){if(r&&t.shouldReuseRoute(e.value,r.value.snapshot)){let n=r.value;n._futureSnapshot=e.value;let i=x_(t,e,r);return new We(n,i)}else{if(t.shouldAttach(e.value)){let o=t.retrieve(e.value);if(o!==null){let s=o.route;return s.value._futureSnapshot=e.value,s.children=e.children.map(a=>$i(t,a)),s}}let n=S_(e.value),i=e.children.map(o=>$i(t,o));return new We(n,i)}}function x_(t,e,r){return e.children.map(n=>{for(let i of r.children)if(t.shouldReuseRoute(n.value,i.value.snapshot))return $i(t,n,i);return $i(t,n)})}function S_(t){return new Kt(new xe(t.url),new xe(t.params),new xe(t.queryParams),new xe(t.fragment),new xe(t.data),t.outlet,t.component,t)}var Hi=class{constructor(e,r){this.redirectTo=e,this.navigationBehaviorOptions=r}},Bg="ngNavigationCancelingError";function wa(t,e){let{redirectTo:r,navigationBehaviorOptions:n}=qn(e)?{redirectTo:e,navigationBehaviorOptions:void 0}:e,i=$g(!1,Ze.Redirect);return i.url=r,i.navigationBehaviorOptions=n,i}function $g(t,e){let r=new Error(`NavigationCancelingError: ${t||""}`);return r[Bg]=!0,r.cancellationCode=e,r}function M_(t){return Hg(t)&&qn(t.url)}function Hg(t){return!!t&&t[Bg]}var T_=(t,e,r,n)=>P(i=>(new hd(e,i.targetRouterState,i.currentRouterState,r,n).activate(t),i)),hd=class{constructor(e,r,n,i,o){this.routeReuseStrategy=e,this.futureState=r,this.currState=n,this.forwardEvent=i,this.inputBindingEnabled=o}activate(e){let r=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(r,n,e),zu(this.futureState.root),this.activateChildRoutes(r,n,e)}deactivateChildRoutes(e,r,n){let i=Fr(r);e.children.forEach(o=>{let s=o.value.outlet;this.deactivateRoutes(o,i[s],n),delete i[s]}),Object.values(i).forEach(o=>{this.deactivateRouteAndItsChildren(o,n)})}deactivateRoutes(e,r,n){let i=e.value,o=r?r.value:null;if(i===o)if(i.component){let s=n.getContext(i.outlet);s&&this.deactivateChildRoutes(e,r,s.children)}else this.deactivateChildRoutes(e,r,n);else o&&this.deactivateRouteAndItsChildren(r,n)}deactivateRouteAndItsChildren(e,r){e.value.component&&this.routeReuseStrategy.shouldDetach(e.value.snapshot)?this.detachAndStoreRouteSubtree(e,r):this.deactivateRouteAndOutlet(e,r)}detachAndStoreRouteSubtree(e,r){let n=r.getContext(e.value.outlet),i=n&&e.value.component?n.children:r,o=Fr(e);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,i);if(n&&n.outlet){let s=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(e.value.snapshot,{componentRef:s,route:e,contexts:a})}}deactivateRouteAndOutlet(e,r){let n=r.getContext(e.value.outlet),i=n&&e.value.component?n.children:r,o=Fr(e);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,i);n&&(n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated()),n.attachRef=null,n.route=null)}activateChildRoutes(e,r,n){let i=Fr(r);e.children.forEach(o=>{this.activateRoutes(o,i[o.value.outlet],n),this.forwardEvent(new ad(o.value.snapshot))}),e.children.length&&this.forwardEvent(new od(e.value.snapshot))}activateRoutes(e,r,n){let i=e.value,o=r?r.value:null;if(zu(i),i===o)if(i.component){let s=n.getOrCreateContext(i.outlet);this.activateChildRoutes(e,r,s.children)}else this.activateChildRoutes(e,r,n);else if(i.component){let s=n.getOrCreateContext(i.outlet);if(this.routeReuseStrategy.shouldAttach(i.snapshot)){let a=this.routeReuseStrategy.retrieve(i.snapshot);this.routeReuseStrategy.store(i.snapshot,null),s.children.onOutletReAttached(a.contexts),s.attachRef=a.componentRef,s.route=a.route.value,s.outlet&&s.outlet.attach(a.componentRef,a.route.value),zu(a.route.value),this.activateChildRoutes(e,null,s.children)}else s.attachRef=null,s.route=i,s.outlet&&s.outlet.activateWith(i,s.injector),this.activateChildRoutes(e,null,s.children)}else this.activateChildRoutes(e,null,n)}},ba=class{constructor(e){this.path=e,this.route=this.path[this.path.length-1]}},jr=class{constructor(e,r){this.component=e,this.route=r}};function A_(t,e,r){let n=t._root,i=e?e._root:null;return ki(n,i,r,[n.value])}function N_(t){let e=t.routeConfig?t.routeConfig.canActivateChild:null;return!e||e.length===0?null:{node:t,guards:e}}function zr(t,e){let r=Symbol(),n=e.get(t,r);return n===r?typeof t=="function"&&!fh(t)?t:e.get(t):n}function ki(t,e,r,n,i={canDeactivateChecks:[],canActivateChecks:[]}){let o=Fr(e);return t.children.forEach(s=>{R_(s,o[s.value.outlet],r,n.concat([s.value]),i),delete o[s.value.outlet]}),Object.entries(o).forEach(([s,a])=>Vi(a,r.getContext(s),i)),i}function R_(t,e,r,n,i={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,s=e?e.value:null,a=r?r.getContext(t.value.outlet):null;if(s&&o.routeConfig===s.routeConfig){let l=O_(s,o,o.routeConfig.runGuardsAndResolvers);l?i.canActivateChecks.push(new ba(n)):(o.data=s.data,o._resolvedData=s._resolvedData),o.component?ki(t,e,a?a.children:null,n,i):ki(t,e,r,n,i),l&&a&&a.outlet&&a.outlet.isActivated&&i.canDeactivateChecks.push(new jr(a.outlet.component,s))}else s&&Vi(e,a,i),i.canActivateChecks.push(new ba(n)),o.component?ki(t,null,a?a.children:null,n,i):ki(t,null,r,n,i);return i}function O_(t,e,r){if(typeof r=="function")return r(t,e);switch(r){case"pathParamsChange":return!zn(t.url,e.url);case"pathParamsOrQueryParamsChange":return!zn(t.url,e.url)||!Tt(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!dd(t,e)||!Tt(t.queryParams,e.queryParams);case"paramsChange":default:return!dd(t,e)}}function Vi(t,e,r){let n=Fr(t),i=t.value;Object.entries(n).forEach(([o,s])=>{i.component?e?Vi(s,e.children.getContext(o),r):Vi(s,null,r):Vi(s,e,r)}),i.component?e&&e.outlet&&e.outlet.isActivated?r.canDeactivateChecks.push(new jr(e.outlet.component,i)):r.canDeactivateChecks.push(new jr(null,i)):r.canDeactivateChecks.push(new jr(null,i))}function Qi(t){return typeof t=="function"}function k_(t){return typeof t=="boolean"}function P_(t){return t&&Qi(t.canLoad)}function F_(t){return t&&Qi(t.canActivate)}function L_(t){return t&&Qi(t.canActivateChild)}function V_(t){return t&&Qi(t.canDeactivate)}function j_(t){return t&&Qi(t.canMatch)}function Gg(t){return t instanceof Nt||t?.name==="EmptyError"}var la=Symbol("INITIAL_VALUE");function Gr(){return Ve(t=>ai(t.map(e=>e.pipe(Ot(1),gl(la)))).pipe(P(e=>{for(let r of e)if(r!==!0){if(r===la)return la;if(r===!1||U_(r))return r}return!0}),Se(e=>e!==la),Ot(1)))}function U_(t){return qn(t)||t instanceof Hi}function B_(t,e){return fe(r=>{let{targetSnapshot:n,currentSnapshot:i,guards:{canActivateChecks:o,canDeactivateChecks:s}}=r;return s.length===0&&o.length===0?R(W(b({},r),{guardsResult:!0})):$_(s,n,i,t).pipe(fe(a=>a&&k_(a)?H_(n,o,t,e):R(a)),P(a=>W(b({},r),{guardsResult:a})))})}function $_(t,e,r,n){return re(t).pipe(fe(i=>Z_(i.component,i.route,r,e,n)),vt(i=>i!==!0,!0))}function H_(t,e,r,n){return re(e).pipe(Rt(i=>lr(z_(i.route.parent,n),G_(i.route,n),W_(t,i.path,r),q_(t,i.route,r))),vt(i=>i!==!0,!0))}function G_(t,e){return t!==null&&e&&e(new sd(t)),R(!0)}function z_(t,e){return t!==null&&e&&e(new id(t)),R(!0)}function q_(t,e,r){let n=e.routeConfig?e.routeConfig.canActivate:null;if(!n||n.length===0)return R(!0);let i=n.map(o=>Fo(()=>{let s=Zi(e)??r,a=zr(o,s),l=F_(a)?a.canActivate(e,t):it(s,()=>a(e,t));return Cn(l).pipe(vt())}));return R(i).pipe(Gr())}function W_(t,e,r){let n=e[e.length-1],o=e.slice(0,e.length-1).reverse().map(s=>N_(s)).filter(s=>s!==null).map(s=>Fo(()=>{let a=s.guards.map(l=>{let d=Zi(s.node)??r,h=zr(l,d),m=L_(h)?h.canActivateChild(n,t):it(d,()=>h(n,t));return Cn(m).pipe(vt())});return R(a).pipe(Gr())}));return R(o).pipe(Gr())}function Z_(t,e,r,n,i){let o=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!o||o.length===0)return R(!0);let s=o.map(a=>{let l=Zi(e)??i,d=zr(a,l),h=V_(d)?d.canDeactivate(t,e,r,n):it(l,()=>d(t,e,r,n));return Cn(h).pipe(vt())});return R(s).pipe(Gr())}function Y_(t,e,r,n){let i=e.canLoad;if(i===void 0||i.length===0)return R(!0);let o=i.map(s=>{let a=zr(s,t),l=P_(a)?a.canLoad(e,r):it(t,()=>a(e,r));return Cn(l)});return R(o).pipe(Gr(),zg(n))}function zg(t){return al(Ee(e=>{if(typeof e!="boolean")throw wa(t,e)}),P(e=>e===!0))}function Q_(t,e,r,n){let i=e.canMatch;if(!i||i.length===0)return R(!0);let o=i.map(s=>{let a=zr(s,t),l=j_(a)?a.canMatch(e,r):it(t,()=>a(e,r));return Cn(l)});return R(o).pipe(Gr(),zg(n))}var Gi=class{constructor(e){this.segmentGroup=e||null}},zi=class extends Error{constructor(e){super(),this.urlTree=e}};function Pr(t){return ar(new Gi(t))}function K_(t){return ar(new M(4e3,!1))}function J_(t){return ar($g(!1,Ze.GuardRejected))}var pd=class{constructor(e,r){this.urlSerializer=e,this.urlTree=r}lineralizeSegments(e,r){let n=[],i=r.root;for(;;){if(n=n.concat(i.segments),i.numberOfChildren===0)return R(n);if(i.numberOfChildren>1||!i.children[$])return K_(`${e.redirectTo}`);i=i.children[$]}}applyRedirectCommands(e,r,n,i,o){if(typeof r!="string"){let a=r,{queryParams:l,fragment:d,routeConfig:h,url:m,outlet:v,params:y,data:w,title:U}=i,N=it(o,()=>a({params:y,data:w,queryParams:l,fragment:d,routeConfig:h,url:m,outlet:v,title:U}));if(N instanceof Qt)throw new zi(N);r=N}let s=this.applyRedirectCreateUrlTree(r,this.urlSerializer.parse(r),e,n);if(r[0]==="/")throw new zi(s);return s}applyRedirectCreateUrlTree(e,r,n,i){let o=this.createSegmentGroup(e,r.root,n,i);return new Qt(o,this.createQueryParams(r.queryParams,this.urlTree.queryParams),r.fragment)}createQueryParams(e,r){let n={};return Object.entries(e).forEach(([i,o])=>{if(typeof o=="string"&&o[0]===":"){let a=o.substring(1);n[i]=r[a]}else n[i]=o}),n}createSegmentGroup(e,r,n,i){let o=this.createSegments(e,r.segments,n,i),s={};return Object.entries(r.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(e,l,n,i)}),new J(o,s)}createSegments(e,r,n,i){return r.map(o=>o.path[0]===":"?this.findPosParam(e,o,i):this.findOrReturn(o,n))}findPosParam(e,r,n){let i=n[r.path.substring(1)];if(!i)throw new M(4001,!1);return i}findOrReturn(e,r){let n=0;for(let i of r){if(i.path===e.path)return r.splice(n),i;n++}return e}},md={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function X_(t,e,r,n,i){let o=qg(t,e,r);return o.matched?(n=b_(e,n),Q_(n,e,r,i).pipe(P(s=>s===!0?o:b({},md)))):R(o)}function qg(t,e,r){if(e.path==="**")return eI(r);if(e.path==="")return e.pathMatch==="full"&&(t.hasChildren()||r.length>0)?b({},md):{matched:!0,consumedSegments:[],remainingSegments:r,parameters:{},positionalParamSegments:{}};let i=(e.matcher||QE)(r,t,e);if(!i)return b({},md);let o={};Object.entries(i.posParams??{}).forEach(([a,l])=>{o[a]=l.path});let s=i.consumed.length>0?b(b({},o),i.consumed[i.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:i.consumed,remainingSegments:r.slice(i.consumed.length),parameters:s,positionalParamSegments:i.posParams??{}}}function eI(t){return{matched:!0,parameters:t.length>0?Ig(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function Dg(t,e,r,n){return r.length>0&&rI(t,r,n)?{segmentGroup:new J(e,nI(n,new J(r,t.children))),slicedSegments:[]}:r.length===0&&iI(t,r,n)?{segmentGroup:new J(t.segments,tI(t,r,n,t.children)),slicedSegments:r}:{segmentGroup:new J(t.segments,t.children),slicedSegments:r}}function tI(t,e,r,n){let i={};for(let o of r)if(xa(t,e,o)&&!n[mt(o)]){let s=new J([],{});i[mt(o)]=s}return b(b({},n),i)}function nI(t,e){let r={};r[$]=e;for(let n of t)if(n.path===""&&mt(n)!==$){let i=new J([],{});r[mt(n)]=i}return r}function rI(t,e,r){return r.some(n=>xa(t,e,n)&&mt(n)!==$)}function iI(t,e,r){return r.some(n=>xa(t,e,n))}function xa(t,e,r){return(t.hasChildren()||e.length>0)&&r.pathMatch==="full"?!1:r.path===""}function oI(t,e,r){return e.length===0&&!t.children[r]}var gd=class{};function sI(t,e,r,n,i,o,s="emptyOnly"){return new vd(t,e,r,n,i,s,o).recognize()}var aI=31,vd=class{constructor(e,r,n,i,o,s,a){this.injector=e,this.configLoader=r,this.rootComponentType=n,this.config=i,this.urlTree=o,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new pd(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(e){return new M(4002,`'${e.segmentGroup}'`)}recognize(){let e=Dg(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(e).pipe(P(({children:r,rootSnapshot:n})=>{let i=new We(n,r),o=new Ca("",i),s=m_(n,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(s),{state:o,tree:s}}))}match(e){let r=new Vr([],Object.freeze({}),Object.freeze(b({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),$,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,e,$,r).pipe(P(n=>({children:n,rootSnapshot:r})),tn(n=>{if(n instanceof zi)return this.urlTree=n.urlTree,this.match(n.urlTree.root);throw n instanceof Gi?this.noMatchError(n):n}))}processSegmentGroup(e,r,n,i,o){return n.segments.length===0&&n.hasChildren()?this.processChildren(e,r,n,o):this.processSegment(e,r,n,n.segments,i,!0,o).pipe(P(s=>s instanceof We?[s]:[]))}processChildren(e,r,n,i){let o=[];for(let s of Object.keys(n.children))s==="primary"?o.unshift(s):o.push(s);return re(o).pipe(Rt(s=>{let a=n.children[s],l=E_(r,s);return this.processSegmentGroup(e,l,a,s,i)}),ml((s,a)=>(s.push(...a),s)),nn(null),pl(),fe(s=>{if(s===null)return Pr(n);let a=Wg(s);return lI(a),R(a)}))}processSegment(e,r,n,i,o,s,a){return re(r).pipe(Rt(l=>this.processSegmentAgainstRoute(l._injector??e,r,l,n,i,o,s,a).pipe(tn(d=>{if(d instanceof Gi)return R(null);throw d}))),vt(l=>!!l),tn(l=>{if(Gg(l))return oI(n,i,o)?R(new gd):Pr(n);throw l}))}processSegmentAgainstRoute(e,r,n,i,o,s,a,l){return mt(n)!==s&&(s===$||!xa(i,o,n))?Pr(i):n.redirectTo===void 0?this.matchSegmentAgainstRoute(e,i,n,o,s,l):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(e,i,r,n,o,s,l):Pr(i)}expandSegmentAgainstRouteUsingRedirect(e,r,n,i,o,s,a){let{matched:l,parameters:d,consumedSegments:h,positionalParamSegments:m,remainingSegments:v}=qg(r,i,o);if(!l)return Pr(r);typeof i.redirectTo=="string"&&i.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>aI&&(this.allowRedirects=!1));let y=new Vr(o,d,Object.freeze(b({},this.urlTree.queryParams)),this.urlTree.fragment,Cg(i),mt(i),i.component??i._loadedComponent??null,i,wg(i)),w=Da(y,a,this.paramsInheritanceStrategy);y.params=Object.freeze(w.params),y.data=Object.freeze(w.data);let U=this.applyRedirects.applyRedirectCommands(h,i.redirectTo,m,y,e);return this.applyRedirects.lineralizeSegments(i,U).pipe(fe(N=>this.processSegment(e,n,r,N.concat(v),s,!1,a)))}matchSegmentAgainstRoute(e,r,n,i,o,s){let a=X_(r,n,i,e,this.urlSerializer);return n.path==="**"&&(r.children={}),a.pipe(Ve(l=>l.matched?(e=n._injector??e,this.getChildConfig(e,n,i).pipe(Ve(({routes:d})=>{let h=n._loadedInjector??e,{parameters:m,consumedSegments:v,remainingSegments:y}=l,w=new Vr(v,m,Object.freeze(b({},this.urlTree.queryParams)),this.urlTree.fragment,Cg(n),mt(n),n.component??n._loadedComponent??null,n,wg(n)),U=Da(w,s,this.paramsInheritanceStrategy);w.params=Object.freeze(U.params),w.data=Object.freeze(U.data);let{segmentGroup:N,slicedSegments:T}=Dg(r,v,y,d);if(T.length===0&&N.hasChildren())return this.processChildren(h,d,N,w).pipe(P(pe=>new We(w,pe)));if(d.length===0&&T.length===0)return R(new We(w,[]));let oe=mt(n)===o;return this.processSegment(h,d,N,T,oe?$:o,!0,w).pipe(P(pe=>new We(w,pe instanceof We?[pe]:[])))}))):Pr(r)))}getChildConfig(e,r,n){return r.children?R({routes:r.children,injector:e}):r.loadChildren?r._loadedRoutes!==void 0?R({routes:r._loadedRoutes,injector:r._loadedInjector}):Y_(e,r,n,this.urlSerializer).pipe(fe(i=>i?this.configLoader.loadChildren(e,r).pipe(Ee(o=>{r._loadedRoutes=o.routes,r._loadedInjector=o.injector})):J_(r))):R({routes:[],injector:e})}};function lI(t){t.sort((e,r)=>e.value.outlet===$?-1:r.value.outlet===$?1:e.value.outlet.localeCompare(r.value.outlet))}function cI(t){let e=t.value.routeConfig;return e&&e.path===""}function Wg(t){let e=[],r=new Set;for(let n of t){if(!cI(n)){e.push(n);continue}let i=e.find(o=>n.value.routeConfig===o.value.routeConfig);i!==void 0?(i.children.push(...n.children),r.add(i)):e.push(n)}for(let n of r){let i=Wg(n.children);e.push(new We(n.value,i))}return e.filter(n=>!r.has(n))}function Cg(t){return t.data||{}}function wg(t){return t.resolve||{}}function uI(t,e,r,n,i,o){return fe(s=>sI(t,e,r,n,s.extractedUrl,i,o).pipe(P(({state:a,tree:l})=>W(b({},s),{targetSnapshot:a,urlAfterRedirects:l}))))}function dI(t,e){return fe(r=>{let{targetSnapshot:n,guards:{canActivateChecks:i}}=r;if(!i.length)return R(r);let o=new Set(i.map(l=>l.route)),s=new Set;for(let l of o)if(!s.has(l))for(let d of Zg(l))s.add(d);let a=0;return re(s).pipe(Rt(l=>o.has(l)?fI(l,n,t,e):(l.data=Da(l,l.parent,t).resolve,R(void 0))),Ee(()=>a++),cr(1),fe(l=>a===s.size?R(r):He))})}function Zg(t){let e=t.children.map(r=>Zg(r)).flat();return[t,...e]}function fI(t,e,r,n){let i=t.routeConfig,o=t._resolve;return i?.title!==void 0&&!Ug(i)&&(o[qi]=i.title),hI(o,t,e,n).pipe(P(s=>(t._resolvedData=s,t.data=Da(t,t.parent,r).resolve,null)))}function hI(t,e,r,n){let i=Zu(t);if(i.length===0)return R({});let o={};return re(i).pipe(fe(s=>pI(t[s],e,r,n).pipe(vt(),Ee(a=>{if(a instanceof Hi)throw wa(new Br,a);o[s]=a}))),cr(1),hl(o),tn(s=>Gg(s)?He:ar(s)))}function pI(t,e,r,n){let i=Zi(e)??n,o=zr(t,i),s=o.resolve?o.resolve(e,r):it(i,()=>o(e,r));return Cn(s)}function qu(t){return Ve(e=>{let r=t(e);return r?re(r).pipe(P(()=>e)):R(e)})}var Yg=(()=>{let e=class e{buildTitle(n){let i,o=n.root;for(;o!==void 0;)i=this.getResolvedTitleForRoute(o)??i,o=o.children.find(s=>s.outlet===$);return i}getResolvedTitleForRoute(n){return n.data[qi]}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(mI),providedIn:"root"});let t=e;return t})(),mI=(()=>{let e=class e extends Yg{constructor(n){super(),this.title=n}updateTitle(n){let i=this.buildTitle(n);i!==void 0&&this.title.setTitle(i)}};e.\u0275fac=function(i){return new(i||e)(I(hg))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Ki=new x("",{providedIn:"root",factory:()=>({})}),gI=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["ng-component"]],standalone:!0,features:[de],decls:1,vars:0,template:function(i,o){i&1&&p(0,"router-outlet")},dependencies:[Cd],encapsulation:2});let t=e;return t})();function wd(t){let e=t.children&&t.children.map(wd),r=e?W(b({},t),{children:e}):b({},t);return!r.component&&!r.loadComponent&&(e||r.loadChildren)&&r.outlet&&r.outlet!==$&&(r.component=gI),r}var Ea=new x(""),bd=(()=>{let e=class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=C(Ys)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return R(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);let i=Cn(n.loadComponent()).pipe(P(Qg),Ee(s=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=s}),rn(()=>{this.componentLoaders.delete(n)})),o=new sr(i,()=>new be).pipe(or());return this.componentLoaders.set(n,o),o}loadChildren(n,i){if(this.childrenLoaders.get(i))return this.childrenLoaders.get(i);if(i._loadedRoutes)return R({routes:i._loadedRoutes,injector:i._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(i);let s=vI(i,this.compiler,n,this.onLoadEndListener).pipe(rn(()=>{this.childrenLoaders.delete(i)})),a=new sr(s,()=>new be).pipe(or());return this.childrenLoaders.set(i,a),a}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function vI(t,e,r,n){return Cn(t.loadChildren()).pipe(P(Qg),fe(i=>i instanceof pi||Array.isArray(i)?R(i):re(e.compileModuleAsync(i))),P(i=>{n&&n(t);let o,s,a=!1;return Array.isArray(i)?(s=i,a=!0):(o=i.create(r).injector,s=o.get(Ea,[],{optional:!0,self:!0}).flat()),{routes:s.map(wd),injector:o}}))}function yI(t){return t&&typeof t=="object"&&"default"in t}function Qg(t){return yI(t)?t.default:t}var Ed=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(DI),providedIn:"root"});let t=e;return t})(),DI=(()=>{let e=class e{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,i){return n}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Kg=new x(""),Jg=new x("");function CI(t,e,r){let n=t.get(Jg),i=t.get(we);return t.get(ee).runOutsideAngular(()=>{if(!i.startViewTransition||n.skipNextTransition)return n.skipNextTransition=!1,new Promise(d=>setTimeout(d));let o,s=new Promise(d=>{o=d}),a=i.startViewTransition(()=>(o(),wI(t))),{onViewTransitionCreated:l}=n;return l&&it(t,()=>l({transition:a,from:e,to:r})),s})}function wI(t){return new Promise(e=>{pu({read:()=>setTimeout(e)},{injector:t})})}var bI=new x(""),_d=(()=>{let e=class e{get hasRequestedNavigation(){return this.navigationId!==0}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new be,this.transitionAbortSubject=new be,this.configLoader=C(bd),this.environmentInjector=C(Pe),this.urlSerializer=C(Wi),this.rootContexts=C(Yi),this.location=C(Or),this.inputBindingEnabled=C(Ia,{optional:!0})!==null,this.titleStrategy=C(Yg),this.options=C(Ki,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=C(Ed),this.createViewTransition=C(Kg,{optional:!0}),this.navigationErrorHandler=C(bI,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>R(void 0),this.rootComponentType=null;let n=o=>this.events.next(new nd(o)),i=o=>this.events.next(new rd(o));this.configLoader.onLoadEndListener=i,this.configLoader.onLoadStartListener=n}complete(){this.transitions?.complete()}handleNavigationRequest(n){let i=++this.navigationId;this.transitions?.next(W(b(b({},this.transitions.value),n),{id:i}))}setupNavigations(n,i,o){return this.transitions=new xe({id:0,currentUrlTree:i,currentRawUrl:i,extractedUrl:this.urlHandlingStrategy.extract(i),urlAfterRedirects:this.urlHandlingStrategy.extract(i),rawUrl:i,extras:{},resolve:()=>{},reject:()=>{},promise:Promise.resolve(!0),source:Li,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Se(s=>s.id!==0),P(s=>W(b({},s),{extractedUrl:this.urlHandlingStrategy.extract(s.rawUrl)})),Ve(s=>{let a=!1,l=!1;return R(s).pipe(Ve(d=>{if(this.navigationId>s.id)return this.cancelNavigationTransition(s,"",Ze.SupersededByNewNavigation),He;this.currentTransition=s,this.currentNavigation={id:d.id,initialUrl:d.rawUrl,extractedUrl:d.extractedUrl,targetBrowserUrl:typeof d.extras.browserUrl=="string"?this.urlSerializer.parse(d.extras.browserUrl):d.extras.browserUrl,trigger:d.source,extras:d.extras,previousNavigation:this.lastSuccessfulNavigation?W(b({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let h=!n.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),m=d.extras.onSameUrlNavigation??n.onSameUrlNavigation;if(!h&&m!=="reload"){let v="";return this.events.next(new Dn(d.id,this.urlSerializer.serialize(d.rawUrl),v,pa.IgnoredSameUrlNavigation)),d.resolve(!1),He}if(this.urlHandlingStrategy.shouldProcessUrl(d.rawUrl))return R(d).pipe(Ve(v=>{let y=this.transitions?.getValue();return this.events.next(new $r(v.id,this.urlSerializer.serialize(v.extractedUrl),v.source,v.restoredState)),y!==this.transitions?.getValue()?He:Promise.resolve(v)}),uI(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,this.paramsInheritanceStrategy),Ee(v=>{s.targetSnapshot=v.targetSnapshot,s.urlAfterRedirects=v.urlAfterRedirects,this.currentNavigation=W(b({},this.currentNavigation),{finalUrl:v.urlAfterRedirects});let y=new ma(v.id,this.urlSerializer.serialize(v.extractedUrl),this.urlSerializer.serialize(v.urlAfterRedirects),v.targetSnapshot);this.events.next(y)}));if(h&&this.urlHandlingStrategy.shouldProcessUrl(d.currentRawUrl)){let{id:v,extractedUrl:y,source:w,restoredState:U,extras:N}=d,T=new $r(v,this.urlSerializer.serialize(y),w,U);this.events.next(T);let oe=Vg(this.rootComponentType).snapshot;return this.currentTransition=s=W(b({},d),{targetSnapshot:oe,urlAfterRedirects:y,extras:W(b({},N),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=y,R(s)}else{let v="";return this.events.next(new Dn(d.id,this.urlSerializer.serialize(d.extractedUrl),v,pa.IgnoredByUrlHandlingStrategy)),d.resolve(!1),He}}),Ee(d=>{let h=new Ju(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(h)}),P(d=>(this.currentTransition=s=W(b({},d),{guards:A_(d.targetSnapshot,d.currentSnapshot,this.rootContexts)}),s)),B_(this.environmentInjector,d=>this.events.next(d)),Ee(d=>{if(s.guardsResult=d.guardsResult,d.guardsResult&&typeof d.guardsResult!="boolean")throw wa(this.urlSerializer,d.guardsResult);let h=new Xu(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot,!!d.guardsResult);this.events.next(h)}),Se(d=>d.guardsResult?!0:(this.cancelNavigationTransition(d,"",Ze.GuardRejected),!1)),qu(d=>{if(d.guards.canActivateChecks.length)return R(d).pipe(Ee(h=>{let m=new ed(h.id,this.urlSerializer.serialize(h.extractedUrl),this.urlSerializer.serialize(h.urlAfterRedirects),h.targetSnapshot);this.events.next(m)}),Ve(h=>{let m=!1;return R(h).pipe(dI(this.paramsInheritanceStrategy,this.environmentInjector),Ee({next:()=>m=!0,complete:()=>{m||this.cancelNavigationTransition(h,"",Ze.NoDataFromResolver)}}))}),Ee(h=>{let m=new td(h.id,this.urlSerializer.serialize(h.extractedUrl),this.urlSerializer.serialize(h.urlAfterRedirects),h.targetSnapshot);this.events.next(m)}))}),qu(d=>{let h=m=>{let v=[];m.routeConfig?.loadComponent&&!m.routeConfig._loadedComponent&&v.push(this.configLoader.loadComponent(m.routeConfig).pipe(Ee(y=>{m.component=y}),P(()=>{})));for(let y of m.children)v.push(...h(y));return v};return ai(h(d.targetSnapshot.root)).pipe(nn(null),Ot(1))}),qu(()=>this.afterPreactivation()),Ve(()=>{let{currentSnapshot:d,targetSnapshot:h}=s,m=this.createViewTransition?.(this.environmentInjector,d.root,h.root);return m?re(m).pipe(P(()=>s)):R(s)}),P(d=>{let h=I_(n.routeReuseStrategy,d.targetSnapshot,d.currentRouterState);return this.currentTransition=s=W(b({},d),{targetRouterState:h}),this.currentNavigation.targetRouterState=h,s}),Ee(()=>{this.events.next(new Bi)}),T_(this.rootContexts,n.routeReuseStrategy,d=>this.events.next(d),this.inputBindingEnabled),Ot(1),Ee({next:d=>{a=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Ye(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects))),this.titleStrategy?.updateTitle(d.targetRouterState.snapshot),d.resolve(!0)},complete:()=>{a=!0}}),vl(this.transitionAbortSubject.pipe(Ee(d=>{throw d}))),rn(()=>{!a&&!l&&this.cancelNavigationTransition(s,"",Ze.SupersededByNewNavigation),this.currentTransition?.id===s.id&&(this.currentNavigation=null,this.currentTransition=null)}),tn(d=>{if(l=!0,Hg(d))this.events.next(new Yt(s.id,this.urlSerializer.serialize(s.extractedUrl),d.message,d.cancellationCode)),M_(d)?this.events.next(new Hr(d.url,d.navigationBehaviorOptions)):s.resolve(!1);else{let h=new Ui(s.id,this.urlSerializer.serialize(s.extractedUrl),d,s.targetSnapshot??void 0);try{let m=it(this.environmentInjector,()=>this.navigationErrorHandler?.(h));if(m instanceof Hi){let{message:v,cancellationCode:y}=wa(this.urlSerializer,m);this.events.next(new Yt(s.id,this.urlSerializer.serialize(s.extractedUrl),v,y)),this.events.next(new Hr(m.redirectTo,m.navigationBehaviorOptions))}else{this.events.next(h);let v=n.errorHandler(d);s.resolve(!!v)}}catch(m){this.options.resolveNavigationPromiseOnError?s.resolve(!1):s.reject(m)}}return He}))}))}cancelNavigationTransition(n,i,o){let s=new Yt(n.id,this.urlSerializer.serialize(n.extractedUrl),i,o);this.events.next(s),n.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let n=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),i=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return n.toString()!==i?.toString()&&!this.currentNavigation?.extras.skipLocationChange}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function EI(t){return t!==Li}var _I=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(II),providedIn:"root"});let t=e;return t})(),yd=class{shouldDetach(e){return!1}store(e,r){}shouldAttach(e){return!1}retrieve(e){return null}shouldReuseRoute(e,r){return e.routeConfig===r.routeConfig}},II=(()=>{let e=class e extends yd{};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Xg=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(xI),providedIn:"root"});let t=e;return t})(),xI=(()=>{let e=class e extends Xg{constructor(){super(...arguments),this.location=C(Or),this.urlSerializer=C(Wi),this.options=C(Ki,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=C(Ed),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new Qt,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=Vg(null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(n){return this.location.subscribe(i=>{i.type==="popstate"&&n(i.url,i.state)})}handleRouterEvent(n,i){if(n instanceof $r)this.stateMemento=this.createStateMemento();else if(n instanceof Dn)this.rawUrlTree=i.initialUrl;else if(n instanceof ma){if(this.urlUpdateStrategy==="eager"&&!i.extras.skipLocationChange){let o=this.urlHandlingStrategy.merge(i.finalUrl,i.initialUrl);this.setBrowserUrl(i.targetBrowserUrl??o,i)}}else n instanceof Bi?(this.currentUrlTree=i.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(i.finalUrl,i.initialUrl),this.routerState=i.targetRouterState,this.urlUpdateStrategy==="deferred"&&!i.extras.skipLocationChange&&this.setBrowserUrl(i.targetBrowserUrl??this.rawUrlTree,i)):n instanceof Yt&&(n.code===Ze.GuardRejected||n.code===Ze.NoDataFromResolver)?this.restoreHistory(i):n instanceof Ui?this.restoreHistory(i,!0):n instanceof Ye&&(this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId)}setBrowserUrl(n,i){let o=n instanceof Qt?this.urlSerializer.serialize(n):n;if(this.location.isCurrentPathEqualTo(o)||i.extras.replaceUrl){let s=this.browserPageId,a=b(b({},i.extras.state),this.generateNgRouterState(i.id,s));this.location.replaceState(o,"",a)}else{let s=b(b({},i.extras.state),this.generateNgRouterState(i.id,this.browserPageId+1));this.location.go(o,"",s)}}restoreHistory(n,i=!1){if(this.canceledNavigationResolution==="computed"){let o=this.browserPageId,s=this.currentPageId-o;s!==0?this.location.historyGo(s):this.currentUrlTree===n.finalUrl&&s===0&&(this.resetState(n),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(i&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,i){return this.canceledNavigationResolution==="computed"?{navigationId:n,\u0275routerPageId:i}:{navigationId:n}}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Pi=function(t){return t[t.COMPLETE=0]="COMPLETE",t[t.FAILED=1]="FAILED",t[t.REDIRECTING=2]="REDIRECTING",t}(Pi||{});function ev(t,e){t.events.pipe(Se(r=>r instanceof Ye||r instanceof Yt||r instanceof Ui||r instanceof Dn),P(r=>r instanceof Ye||r instanceof Dn?Pi.COMPLETE:(r instanceof Yt?r.code===Ze.Redirect||r.code===Ze.SupersededByNewNavigation:!1)?Pi.REDIRECTING:Pi.FAILED),Se(r=>r!==Pi.REDIRECTING),Ot(1)).subscribe(()=>{e()})}function SI(t){throw t}var MI={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},TI={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},gt=(()=>{let e=class e{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}constructor(){this.disposed=!1,this.console=C(Gs),this.stateManager=C(Xg),this.options=C(Ki,{optional:!0})||{},this.pendingTasks=C(Bt),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=C(_d),this.urlSerializer=C(Wi),this.location=C(Or),this.urlHandlingStrategy=C(Ed),this._events=new be,this.errorHandler=this.options.errorHandler||SI,this.navigated=!1,this.routeReuseStrategy=C(_I),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=C(Ea,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!C(Ia,{optional:!0}),this.eventsSubscription=new ye,this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:n=>{this.console.warn(n)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){let n=this.navigationTransitions.events.subscribe(i=>{try{let o=this.navigationTransitions.currentTransition,s=this.navigationTransitions.currentNavigation;if(o!==null&&s!==null){if(this.stateManager.handleRouterEvent(i,s),i instanceof Yt&&i.code!==Ze.Redirect&&i.code!==Ze.SupersededByNewNavigation)this.navigated=!0;else if(i instanceof Ye)this.navigated=!0;else if(i instanceof Hr){let a=i.navigationBehaviorOptions,l=this.urlHandlingStrategy.merge(i.url,o.currentRawUrl),d=b({browserUrl:o.extras.browserUrl,info:o.extras.info,skipLocationChange:o.extras.skipLocationChange,replaceUrl:o.extras.replaceUrl||this.urlUpdateStrategy==="eager"||EI(o.source)},a);this.scheduleNavigation(l,Li,null,d,{resolve:o.resolve,reject:o.reject,promise:o.promise})}}NI(i)&&this._events.next(i)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Li,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((n,i)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(n,"popstate",i)},0)})}navigateToSyncWithBrowser(n,i,o){let s={replaceUrl:!0},a=o?.navigationId?o:null;if(o){let d=b({},o);delete d.navigationId,delete d.\u0275routerPageId,Object.keys(d).length!==0&&(s.state=d)}let l=this.parseUrl(n);this.scheduleNavigation(l,i,a,s)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(wd),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,i={}){let{relativeTo:o,queryParams:s,fragment:a,queryParamsHandling:l,preserveFragment:d}=i,h=d?this.currentUrlTree.fragment:a,m=null;switch(l??this.options.defaultQueryParamsHandling){case"merge":m=b(b({},this.currentUrlTree.queryParams),s);break;case"preserve":m=this.currentUrlTree.queryParams;break;default:m=s||null}m!==null&&(m=this.removeEmptyProps(m));let v;try{let y=o?o.snapshot:this.routerState.snapshot.root;v=kg(y)}catch{(typeof n[0]!="string"||n[0][0]!=="/")&&(n=[]),v=this.currentUrlTree.root}return Pg(v,n,m,h??null)}navigateByUrl(n,i={skipLocationChange:!1}){let o=qn(n)?n:this.parseUrl(n),s=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(s,Li,null,i)}navigate(n,i={skipLocationChange:!1}){return AI(n),this.navigateByUrl(this.createUrlTree(n,i),i)}serializeUrl(n){return this.urlSerializer.serialize(n)}parseUrl(n){try{return this.urlSerializer.parse(n)}catch{return this.urlSerializer.parse("/")}}isActive(n,i){let o;if(i===!0?o=b({},MI):i===!1?o=b({},TI):o=i,qn(n))return pg(this.currentUrlTree,n,o);let s=this.parseUrl(n);return pg(this.currentUrlTree,s,o)}removeEmptyProps(n){return Object.entries(n).reduce((i,[o,s])=>(s!=null&&(i[o]=s),i),{})}scheduleNavigation(n,i,o,s,a){if(this.disposed)return Promise.resolve(!1);let l,d,h;a?(l=a.resolve,d=a.reject,h=a.promise):h=new Promise((v,y)=>{l=v,d=y});let m=this.pendingTasks.add();return ev(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(m))}),this.navigationTransitions.handleNavigationRequest({source:i,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:n,extras:s,resolve:l,reject:d,promise:h,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),h.catch(v=>Promise.reject(v))}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function AI(t){for(let e=0;e{let e=class e{constructor(n,i,o,s,a,l){this.router=n,this.route=i,this.tabIndexAttribute=o,this.renderer=s,this.el=a,this.locationStrategy=l,this.href=null,this.onChanges=new be,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1,this.routerLinkInput=null;let d=a.nativeElement.tagName?.toLowerCase();this.isAnchorElement=d==="a"||d==="area",this.isAnchorElement?this.subscription=n.events.subscribe(h=>{h instanceof Ye&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(n){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",n)}ngOnChanges(n){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(n){n==null?(this.routerLinkInput=null,this.setTabIndexIfNotOnNativeEl(null)):(qn(n)?this.routerLinkInput=n:this.routerLinkInput=Array.isArray(n)?n:[n],this.setTabIndexIfNotOnNativeEl("0"))}onClick(n,i,o,s,a){let l=this.urlTree;if(l===null||this.isAnchorElement&&(n!==0||i||o||s||a||typeof this.target=="string"&&this.target!="_self"))return!0;let d={skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info};return this.router.navigateByUrl(l,d),!this.isAnchorElement}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){let n=this.urlTree;this.href=n!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(n)):null;let i=this.href===null?null:xp(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",i)}applyAttributeValue(n,i){let o=this.renderer,s=this.el.nativeElement;i!==null?o.setAttribute(s,n,i):o.removeAttribute(s,n)}get urlTree(){return this.routerLinkInput===null?null:qn(this.routerLinkInput)?this.routerLinkInput:this.router.createUrlTree(this.routerLinkInput,{relativeTo:this.relativeTo!==void 0?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}};e.\u0275fac=function(i){return new(i||e)(S(gt),S(Kt),Hc("tabindex"),S(st),S(Ae),S(Wt))},e.\u0275dir=ne({type:e,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(i,o){i&1&&A("click",function(a){return o.onClick(a.button,a.ctrlKey,a.shiftKey,a.altKey,a.metaKey)}),i&2&&$t("target",o.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",Gt],skipLocationChange:[2,"skipLocationChange","skipLocationChange",Gt],replaceUrl:[2,"replaceUrl","replaceUrl",Gt],routerLink:"routerLink"},standalone:!0,features:[fu,Ut]});let t=e;return t})(),tv=(()=>{let e=class e{get isActive(){return this._isActive}constructor(n,i,o,s,a){this.router=n,this.element=i,this.renderer=o,this.cdr=s,this.link=a,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new he,this.routerEventsSubscription=n.events.subscribe(l=>{l instanceof Ye&&this.update()})}ngAfterContentInit(){R(this.links.changes,R(null)).pipe(en()).subscribe(n=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();let n=[...this.links.toArray(),this.link].filter(i=>!!i).map(i=>i.onChanges);this.linkInputChangesSubscription=re(n).pipe(en()).subscribe(i=>{this._isActive!==this.isLinkActive(this.router)(i)&&this.update()})}set routerLinkActive(n){let i=Array.isArray(n)?n:n.split(" ");this.classes=i.filter(o=>!!o)}ngOnChanges(n){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{let n=this.hasActiveLinks();this.classes.forEach(i=>{n?this.renderer.addClass(this.element.nativeElement,i):this.renderer.removeClass(this.element.nativeElement,i)}),n&&this.ariaCurrentWhenActive!==void 0?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this._isActive!==n&&(this._isActive=n,this.cdr.markForCheck(),this.isActiveChange.emit(n))})}isLinkActive(n){let i=RI(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>{let s=o.urlTree;return s?n.isActive(s,i):!1}}hasActiveLinks(){let n=this.isLinkActive(this.router);return this.link&&n(this.link)||this.links.some(n)}};e.\u0275fac=function(i){return new(i||e)(S(gt),S(Ae),S(st),S(mn),S(Ne,8))},e.\u0275dir=ne({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(i,o,s){if(i&1&&mm(s,Ne,5),i&2){let a;gm(a=vm())&&(o.links=a)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Ut]});let t=e;return t})();function RI(t){return!!t.paths}var _a=class{};var OI=(()=>{let e=class e{constructor(n,i,o,s,a){this.router=n,this.injector=o,this.preloadingStrategy=s,this.loader=a}setUpPreloading(){this.subscription=this.router.events.pipe(Se(n=>n instanceof Ye),Rt(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(n,i){let o=[];for(let s of i){s.providers&&!s._injector&&(s._injector=Bs(s.providers,n,`Route: ${s.path}`));let a=s._injector??n,l=s._loadedInjector??a;(s.loadChildren&&!s._loadedRoutes&&s.canLoad===void 0||s.loadComponent&&!s._loadedComponent)&&o.push(this.preloadConfig(a,s)),(s.children||s._loadedRoutes)&&o.push(this.processRoutes(l,s.children??s._loadedRoutes))}return re(o).pipe(en())}preloadConfig(n,i){return this.preloadingStrategy.preload(i,()=>{let o;i.loadChildren&&i.canLoad===void 0?o=this.loader.loadChildren(n,i):o=R(null);let s=o.pipe(fe(a=>a===null?R(void 0):(i._loadedRoutes=a.routes,i._loadedInjector=a.injector,this.processRoutes(a.injector??n,a.routes))));if(i.loadComponent&&!i._loadedComponent){let a=this.loader.loadComponent(i);return re([s,a]).pipe(en())}else return s})}};e.\u0275fac=function(i){return new(i||e)(I(gt),I(Ys),I(Pe),I(_a),I(bd))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),nv=new x(""),kI=(()=>{let e=class e{constructor(n,i,o,s,a={}){this.urlSerializer=n,this.transitions=i,this.viewportScroller=o,this.zone=s,this.options=a,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},a.scrollPositionRestoration||="disabled",a.anchorScrolling||="disabled"}init(){this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof $r?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=n.navigationTrigger,this.restoredId=n.restoredState?n.restoredState.navigationId:0):n instanceof Ye?(this.lastId=n.id,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.urlAfterRedirects).fragment)):n instanceof Dn&&n.code===pa.IgnoredSameUrlNavigation&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof ga&&(n.position?this.options.scrollPositionRestoration==="top"?this.viewportScroller.scrollToPosition([0,0]):this.options.scrollPositionRestoration==="enabled"&&this.viewportScroller.scrollToPosition(n.position):n.anchor&&this.options.anchorScrolling==="enabled"?this.viewportScroller.scrollToAnchor(n.anchor):this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(n,i){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new ga(n,this.lastSource==="popstate"?this.store[this.restoredId]:null,i))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}};e.\u0275fac=function(i){Vp()},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function PI(t){return t.routerState.root}function Ji(t,e){return{\u0275kind:t,\u0275providers:e}}function FI(){let t=C(rt);return e=>{let r=t.get(Ht);if(e!==r.components[0])return;let n=t.get(gt),i=t.get(rv);t.get(Id)===1&&n.initialNavigation(),t.get(iv,null,H.Optional)?.setUpPreloading(),t.get(nv,null,H.Optional)?.init(),n.resetRootComponentType(r.componentTypes[0]),i.closed||(i.next(),i.complete(),i.unsubscribe())}}var rv=new x("",{factory:()=>new be}),Id=new x("",{providedIn:"root",factory:()=>1});function LI(){return Ji(2,[{provide:Id,useValue:0},{provide:Ws,multi:!0,deps:[rt],useFactory:e=>{let r=e.get(Pm,Promise.resolve());return()=>r.then(()=>new Promise(n=>{let i=e.get(gt),o=e.get(rv);ev(i,()=>{n(!0)}),e.get(_d).afterPreactivation=()=>(n(!0),o.closed?R(void 0):o),i.initialNavigation()}))}}])}function VI(){return Ji(3,[{provide:Ws,multi:!0,useFactory:()=>{let e=C(gt);return()=>{e.setUpLocationChangeListener()}}},{provide:Id,useValue:2}])}var iv=new x("");function jI(t){return Ji(0,[{provide:iv,useExisting:OI},{provide:_a,useExisting:t}])}function UI(){return Ji(8,[yg,{provide:Ia,useExisting:yg}])}function BI(t){let e=[{provide:Kg,useValue:CI},{provide:Jg,useValue:b({skipNextTransition:!!t?.skipInitialTransition},t)}];return Ji(9,e)}var bg=new x("ROUTER_FORROOT_GUARD"),$I=[Or,{provide:Wi,useClass:Br},gt,Yi,{provide:Kt,useFactory:PI,deps:[gt]},bd,[]],xd=(()=>{let e=class e{constructor(n){}static forRoot(n,i){return{ngModule:e,providers:[$I,[],{provide:Ea,multi:!0,useValue:n},{provide:bg,useFactory:qI,deps:[[gt,new Es,new Mc]]},{provide:Ki,useValue:i||{}},i?.useHash?GI():zI(),HI(),i?.preloadingStrategy?jI(i.preloadingStrategy).\u0275providers:[],i?.initialNavigation?WI(i):[],i?.bindToComponentInputs?UI().\u0275providers:[],i?.enableViewTransitions?BI().\u0275providers:[],ZI()]}}static forChild(n){return{ngModule:e,providers:[{provide:Ea,multi:!0,useValue:n}]}}};e.\u0275fac=function(i){return new(i||e)(I(bg,8))},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({});let t=e;return t})();function HI(){return{provide:nv,useFactory:()=>{let t=C(jm),e=C(ee),r=C(Ki),n=C(_d),i=C(Wi);return r.scrollOffset&&t.setOffset(r.scrollOffset),new kI(i,n,t,e,r)}}}function GI(){return{provide:Wt,useClass:Lm}}function zI(){return{provide:Wt,useClass:Mu}}function qI(t){return"guarded"}function WI(t){return[t.initialNavigation==="disabled"?VI().\u0275providers:[],t.initialNavigation==="enabledBlocking"?LI().\u0275providers:[]]}var Eg=new x("");function ZI(){return[{provide:Eg,useFactory:FI},{provide:Zs,multi:!0,useExisting:Eg}]}var QI=()=>["/pro"],ov=(()=>{let e=class e{constructor(){this.years=new Date().getFullYear()-2009}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-footer"]],standalone:!0,features:[de],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5","portrait"],[1,"col-xs-12","col-md-8"],[3,"routerLink"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(i,o){i&1&&(u(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),p(5,"img",5),f(),u(6,"div",6)(7,"h2"),c(8,"Who's behind"),f(),u(9,"p"),c(10,"My name is Daniel Palme. I'm a software developer from Germany."),f(),u(11,"p"),c(12," Back in 2009 I wanted to create code coverage reports based on "),u(13,"i"),c(14,"PartCover"),f(),c(15," files."),p(16,"br"),c(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),p(18,"br"),c(19),u(20,"i"),c(21,"ReportGenerator"),f(),c(22,". "),f(),u(23,"p"),c(24," You can support the ongoing maintenance by buying a "),u(25,"a",7),c(26,"PRO license"),f(),c(27," or by becoming a "),p(28,"i",8),c(29,"\xA0"),u(30,"a",9),c(31,"GitHub sponsor"),f(),c(32,". "),f()()()()(),u(33,"div",2)(34,"div",3),p(35,"hr"),f()(),u(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),c(42,"GitHub"),f()(),u(43,"a",11),c(44,"Source code"),f(),p(45,"br"),u(46,"a",12),c(47,"Wiki"),f(),p(48,"br"),u(49,"a",13),c(50,"FAQ"),f()(),u(51,"div",14)(52,"p")(53,"b"),c(54,"Download"),f()(),u(55,"i"),c(56,"NuGet"),f(),p(57,"br"),u(58,"a",15),c(59,"ReportGenerator"),f(),p(60,"br"),u(61,"a",16),c(62,"dotnet-reportgenerator-globaltool"),f(),p(63,"br"),u(64,"a",17),c(65,"ReportGenerator.Core"),f(),p(66,"br")(67,"br"),u(68,"i"),c(69,"Integration"),f(),p(70,"br"),u(71,"a",18),c(72,"GitHub actions"),f(),p(73,"br"),u(74,"a",19),c(75,"Azure DevOps"),f()(),u(76,"div",20)(77,"p")(78,"b"),c(79,"Community"),f()(),u(80,"a",11),p(81,"i",21),c(82," GitHub"),f(),p(83,"br"),u(84,"a",22),p(85,"i",23),c(86," Twitter"),f(),p(87,"br")(88,"br"),u(89,"a",24),c(90,"Privacy"),f(),p(91,"br"),u(92,"a",25),c(93,"Imprint"),f()()()()()()),i&2&&(g(19),ht(" Fast forward ",o.years," years, I'm still maintaining "),g(6),D("routerLink",B(2,QI)))},dependencies:[Ne],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}.portrait[_ngcontent-%COMP%]{max-height:300px}"]});let t=e;return t})();var sv=()=>["/"],KI=t=>({show:t}),qr=()=>["link-active"],av=()=>({exact:!0}),JI=()=>["/features"],XI=()=>["/getstarted"],ex=()=>["/usage"],tx=()=>["/contact"],nx=()=>["/pro"],lv=(()=>{let e=class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[de],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(i,o){i&1&&(u(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),p(4,"img",4),u(5,"span",5),c(6,"ReportGenerator"),f()(),u(7,"button",6),A("click",function(){return o.toggle()}),p(8,"span",7),f(),u(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),c(13,"Home"),f()(),u(14,"li",10)(15,"a",11),c(16,"Features"),f()(),u(17,"li",12)(18,"a",13),c(19,"Get started"),f()(),u(20,"li",12)(21,"a",11),c(22,"Usage"),f()(),u(23,"li",12)(24,"a",11),c(25,"Contact"),f()(),u(26,"li",12)(27,"a",11)(28,"span",14),c(29,"PRO"),f()()()(),p(30,"hr",15),u(31,"ul",16)(32,"li",17)(33,"a",18),p(34,"i",19),u(35,"span",20),c(36,"GitHub"),f()()(),u(37,"li",17)(38,"a",21),p(39,"i",22),u(40,"span",20),c(41,"Twitter"),f()()()()()()()()),i&2&&(g(3),D("routerLink",B(17,sv)),g(4),$t("aria-expanded",o.isExpanded),g(2),D("ngClass",$n(18,KI,o.isExpanded)),g(2),D("routerLinkActive",B(20,qr))("routerLinkActiveOptions",B(21,av)),g(),D("routerLink",B(22,sv)),g(2),D("routerLinkActive",B(23,qr))("routerLinkActiveOptions",B(24,av)),g(),D("routerLink",B(25,JI)),g(2),D("routerLinkActive",B(26,qr)),g(),D("routerLink",B(27,XI)),g(2),D("routerLinkActive",B(28,qr)),g(),D("routerLink",B(29,ex)),g(2),D("routerLinkActive",B(30,qr)),g(),D("routerLink",B(31,tx)),g(2),D("routerLinkActive",B(32,qr)),g(),D("routerLink",B(33,nx)))},dependencies:[Ne,kr,tv],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]});let t=e;return t})();var cv=(()=>{let e=class e{constructor(n,i,o){this.dom=n,this.router=i,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(Se(n=>n instanceof Ye),P(()=>this.activatedRoute),P(n=>{for(;n.firstChild;)n=n.firstChild;return n}),Se(n=>n.outlet==="primary"),fe(n=>n.data)).subscribe(n=>{let i=`${window.location.protocol}//${window.location.hostname}`;n.canonical?this.updateCanonicalUrl(i+n.canonical):this.updateCanonicalUrl(i+this.router.url)})}updateCanonicalUrl(n){let i=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;o==null&&(o=this.dom.createElement("link"),i.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",n)}};e.\u0275fac=function(i){return new(i||e)(S(we),S(gt),S(Kt))},e.\u0275cmp=ce({type:e,selectors:[["app-root"]],standalone:!0,features:[de],decls:3,vars:0,template:function(i,o){i&1&&p(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[lv,Cd,ov],encapsulation:2});let t=e;return t})();var yv=(()=>{let e=class e{constructor(n,i){this._renderer=n,this._elementRef=i,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(n,i){this._renderer.setProperty(this._elementRef.nativeElement,n,i)}registerOnTouched(n){this.onTouched=n}registerOnChange(n){this.onChange=n}setDisabledState(n){this.setProperty("disabled",n)}};e.\u0275fac=function(i){return new(i||e)(S(st),S(Ae))},e.\u0275dir=ne({type:e});let t=e;return t})(),ka=(()=>{let e=class e extends yv{};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,features:[Fe]});let t=e;return t})(),io=new x("");var rx={provide:io,useExisting:Ge(()=>wn),multi:!0};function ix(){let t=Mt()?Mt().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}var ox=new x(""),wn=(()=>{let e=class e extends yv{constructor(n,i,o){super(n,i),this._compositionMode=o,this._composing=!1,this._compositionMode==null&&(this._compositionMode=!ix())}writeValue(n){let i=n??"";this.setProperty("value",i)}_handleInput(n){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(n)}_compositionStart(){this._composing=!0}_compositionEnd(n){this._composing=!1,this._compositionMode&&this.onChange(n)}};e.\u0275fac=function(i){return new(i||e)(S(st),S(Ae),S(ox,8))},e.\u0275dir=ne({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,o){i&1&&A("input",function(a){return o._handleInput(a.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(a){return o._compositionEnd(a.target.value)})},features:[pt([rx]),Fe]});let t=e;return t})();function Td(t){return t==null||(typeof t=="string"||Array.isArray(t))&&t.length===0}function sx(t){return t!=null&&typeof t.length=="number"}var Jr=new x(""),Dv=new x(""),ax=/^(?=.{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])?)*$/;function lx(t){return Td(t.value)?{required:!0}:null}function cx(t){return Td(t.value)||ax.test(t.value)?null:{email:!0}}function ux(t){return e=>sx(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}function dx(t){if(!t)return Sd;let e,r;return typeof t=="string"?(r="",t.charAt(0)!=="^"&&(r+="^"),r+=t,t.charAt(t.length-1)!=="$"&&(r+="$"),e=new RegExp(r)):(r=t.toString(),e=t),n=>{if(Td(n.value))return null;let i=n.value;return e.test(i)?null:{pattern:{requiredPattern:r,actualValue:i}}}}function Sd(t){return null}function Cv(t){return t!=null}function wv(t){return Hn(t)?re(t):t}function bv(t){let e={};return t.forEach(r=>{e=r!=null?b(b({},e),r):e}),Object.keys(e).length===0?null:e}function Ev(t,e){return e.map(r=>r(t))}function fx(t){return!t.validate}function _v(t){return t.map(e=>fx(e)?e:r=>e.validate(r))}function hx(t){if(!t)return null;let e=t.filter(Cv);return e.length==0?null:function(r){return bv(Ev(r,e))}}function Ad(t){return t!=null?hx(_v(t)):null}function px(t){if(!t)return null;let e=t.filter(Cv);return e.length==0?null:function(r){let n=Ev(r,e).map(wv);return fl(n).pipe(P(bv))}}function Nd(t){return t!=null?px(_v(t)):null}function uv(t,e){return t===null?[e]:Array.isArray(t)?[...t,e]:[t,e]}function mx(t){return t._rawValidators}function gx(t){return t._rawAsyncValidators}function Md(t){return t?Array.isArray(t)?t:[t]:[]}function Ma(t,e){return Array.isArray(t)?t.includes(e):t===e}function dv(t,e){let r=Md(e);return Md(t).forEach(i=>{Ma(r,i)||r.push(i)}),r}function fv(t,e){return Md(e).filter(r=>!Ma(t,r))}var Ta=class{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(e){this._rawValidators=e||[],this._composedValidatorFn=Ad(this._rawValidators)}_setAsyncValidators(e){this._rawAsyncValidators=e||[],this._composedAsyncValidatorFn=Nd(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(e){this._onDestroyCallbacks.push(e)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(e=>e()),this._onDestroyCallbacks=[]}reset(e=void 0){this.control&&this.control.reset(e)}hasError(e,r){return this.control?this.control.hasError(e,r):!1}getError(e,r){return this.control?this.control.getError(e,r):null}},Yr=class extends Ta{get formDirective(){return null}get path(){return null}},Qr=class extends Ta{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}},Aa=class{constructor(e){this._cd=e}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}},vx={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},eP=W(b({},vx),{"[class.ng-submitted]":"isSubmitted"}),Xr=(()=>{let e=class e extends Aa{constructor(n){super(n)}};e.\u0275fac=function(i){return new(i||e)(S(Qr,2))},e.\u0275dir=ne({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,o){i&2&&$s("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[Fe]});let t=e;return t})(),ei=(()=>{let e=class e extends Aa{constructor(n){super(n)}};e.\u0275fac=function(i){return new(i||e)(S(Yr,10))},e.\u0275dir=ne({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,o){i&2&&$s("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[Fe]});let t=e;return t})();var Xi="VALID",Sa="INVALID",Wr="PENDING",eo="DISABLED",Kr=class{},Na=class extends Kr{constructor(e,r){super(),this.value=e,this.source=r}},no=class extends Kr{constructor(e,r){super(),this.pristine=e,this.source=r}},ro=class extends Kr{constructor(e,r){super(),this.touched=e,this.source=r}},Zr=class extends Kr{constructor(e,r){super(),this.status=e,this.source=r}};function Iv(t){return(Pa(t)?t.validators:t)||null}function yx(t){return Array.isArray(t)?Ad(t):t||null}function xv(t,e){return(Pa(e)?e.asyncValidators:t)||null}function Dx(t){return Array.isArray(t)?Nd(t):t||null}function Pa(t){return t!=null&&!Array.isArray(t)&&typeof t=="object"}function Cx(t,e,r){let n=t.controls;if(!(e?Object.keys(n):n).length)throw new M(1e3,"");if(!n[r])throw new M(1001,"")}function wx(t,e,r){t._forEachChild((n,i)=>{if(r[i]===void 0)throw new M(1002,"")})}var Ra=class{constructor(e,r){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=null,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this._status=Ei(()=>this.statusReactive()),this.statusReactive=wi(void 0),this._pristine=Ei(()=>this.pristineReactive()),this.pristineReactive=wi(!0),this._touched=Ei(()=>this.touchedReactive()),this.touchedReactive=wi(!1),this._events=new be,this.events=this._events.asObservable(),this._onDisabledChange=[],this._assignValidators(e),this._assignAsyncValidators(r)}get validator(){return this._composedValidatorFn}set validator(e){this._rawValidators=this._composedValidatorFn=e}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(e){this._rawAsyncValidators=this._composedAsyncValidatorFn=e}get parent(){return this._parent}get status(){return zt(this.statusReactive)}set status(e){zt(()=>this.statusReactive.set(e))}get valid(){return this.status===Xi}get invalid(){return this.status===Sa}get pending(){return this.status==Wr}get disabled(){return this.status===eo}get enabled(){return this.status!==eo}get pristine(){return zt(this.pristineReactive)}set pristine(e){zt(()=>this.pristineReactive.set(e))}get dirty(){return!this.pristine}get touched(){return zt(this.touchedReactive)}set touched(e){zt(()=>this.touchedReactive.set(e))}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(e){this._assignValidators(e)}setAsyncValidators(e){this._assignAsyncValidators(e)}addValidators(e){this.setValidators(dv(e,this._rawValidators))}addAsyncValidators(e){this.setAsyncValidators(dv(e,this._rawAsyncValidators))}removeValidators(e){this.setValidators(fv(e,this._rawValidators))}removeAsyncValidators(e){this.setAsyncValidators(fv(e,this._rawAsyncValidators))}hasValidator(e){return Ma(this._rawValidators,e)}hasAsyncValidator(e){return Ma(this._rawAsyncValidators,e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(e={}){let r=this.touched===!1;this.touched=!0;let n=e.sourceControl??this;this._parent&&!e.onlySelf&&this._parent.markAsTouched(W(b({},e),{sourceControl:n})),r&&e.emitEvent!==!1&&this._events.next(new ro(!0,n))}markAllAsTouched(e={}){this.markAsTouched({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:this}),this._forEachChild(r=>r.markAllAsTouched(e))}markAsUntouched(e={}){let r=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let n=e.sourceControl??this;this._forEachChild(i=>{i.markAsUntouched({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:n})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e,n),r&&e.emitEvent!==!1&&this._events.next(new ro(!1,n))}markAsDirty(e={}){let r=this.pristine===!0;this.pristine=!1;let n=e.sourceControl??this;this._parent&&!e.onlySelf&&this._parent.markAsDirty(W(b({},e),{sourceControl:n})),r&&e.emitEvent!==!1&&this._events.next(new no(!1,n))}markAsPristine(e={}){let r=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let n=e.sourceControl??this;this._forEachChild(i=>{i.markAsPristine({onlySelf:!0,emitEvent:e.emitEvent})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e,n),r&&e.emitEvent!==!1&&this._events.next(new no(!0,n))}markAsPending(e={}){this.status=Wr;let r=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new Zr(this.status,r)),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.markAsPending(W(b({},e),{sourceControl:r}))}disable(e={}){let r=this._parentMarkedDirty(e.onlySelf);this.status=eo,this.errors=null,this._forEachChild(i=>{i.disable(W(b({},e),{onlySelf:!0}))}),this._updateValue();let n=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new Na(this.value,n)),this._events.next(new Zr(this.status,n)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(W(b({},e),{skipPristineCheck:r}),this),this._onDisabledChange.forEach(i=>i(!0))}enable(e={}){let r=this._parentMarkedDirty(e.onlySelf);this.status=Xi,this._forEachChild(n=>{n.enable(W(b({},e),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(W(b({},e),{skipPristineCheck:r}),this),this._onDisabledChange.forEach(n=>n(!1))}_updateAncestors(e,r){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine({},r),this._parent._updateTouched({},r))}setParent(e){this._parent=e}getRawValue(){return this.value}updateValueAndValidity(e={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let n=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Xi||this.status===Wr)&&this._runAsyncValidator(n,e.emitEvent)}let r=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new Na(this.value,r)),this._events.next(new Zr(this.status,r)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(W(b({},e),{sourceControl:r}))}_updateTreeValidity(e={emitEvent:!0}){this._forEachChild(r=>r._updateTreeValidity(e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?eo:Xi}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(e,r){if(this.asyncValidator){this.status=Wr,this._hasOwnPendingAsyncValidator={emitEvent:r!==!1};let n=wv(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(i=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(i,{emitEvent:r,shouldHaveEmitted:e})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let e=this._hasOwnPendingAsyncValidator?.emitEvent??!1;return this._hasOwnPendingAsyncValidator=null,e}return!1}setErrors(e,r={}){this.errors=e,this._updateControlsErrors(r.emitEvent!==!1,this,r.shouldHaveEmitted)}get(e){let r=e;return r==null||(Array.isArray(r)||(r=r.split(".")),r.length===0)?null:r.reduce((n,i)=>n&&n._find(i),this)}getError(e,r){let n=r?this.get(r):this;return n&&n.errors?n.errors[e]:null}hasError(e,r){return!!this.getError(e,r)}get root(){let e=this;for(;e._parent;)e=e._parent;return e}_updateControlsErrors(e,r,n){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),(e||n)&&this._events.next(new Zr(this.status,r)),this._parent&&this._parent._updateControlsErrors(e,r,n)}_initObservables(){this.valueChanges=new he,this.statusChanges=new he}_calculateStatus(){return this._allControlsDisabled()?eo:this.errors?Sa:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Wr)?Wr:this._anyControlsHaveStatus(Sa)?Sa:Xi}_anyControlsHaveStatus(e){return this._anyControls(r=>r.status===e)}_anyControlsDirty(){return this._anyControls(e=>e.dirty)}_anyControlsTouched(){return this._anyControls(e=>e.touched)}_updatePristine(e,r){let n=!this._anyControlsDirty(),i=this.pristine!==n;this.pristine=n,this._parent&&!e.onlySelf&&this._parent._updatePristine(e,r),i&&this._events.next(new no(this.pristine,r))}_updateTouched(e={},r){this.touched=this._anyControlsTouched(),this._events.next(new ro(this.touched,r)),this._parent&&!e.onlySelf&&this._parent._updateTouched(e,r)}_registerOnCollectionChange(e){this._onCollectionChange=e}_setUpdateStrategy(e){Pa(e)&&e.updateOn!=null&&(this._updateOn=e.updateOn)}_parentMarkedDirty(e){let r=this._parent&&this._parent.dirty;return!e&&!!r&&!this._parent._anyControlsDirty()}_find(e){return null}_assignValidators(e){this._rawValidators=Array.isArray(e)?e.slice():e,this._composedValidatorFn=yx(this._rawValidators)}_assignAsyncValidators(e){this._rawAsyncValidators=Array.isArray(e)?e.slice():e,this._composedAsyncValidatorFn=Dx(this._rawAsyncValidators)}},Oa=class extends Ra{constructor(e,r,n){super(Iv(r),xv(n,r)),this.controls=e,this._initObservables(),this._setUpdateStrategy(r),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(e,r){return this.controls[e]?this.controls[e]:(this.controls[e]=r,r.setParent(this),r._registerOnCollectionChange(this._onCollectionChange),r)}addControl(e,r,n={}){this.registerControl(e,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(e,r={}){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}setControl(e,r,n={}){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],r&&this.registerControl(e,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}contains(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}setValue(e,r={}){wx(this,!0,e),Object.keys(e).forEach(n=>{Cx(this,!0,n),this.controls[n].setValue(e[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r)}patchValue(e,r={}){e!=null&&(Object.keys(e).forEach(n=>{let i=this.controls[n];i&&i.patchValue(e[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r))}reset(e={},r={}){this._forEachChild((n,i)=>{n.reset(e?e[i]:null,{onlySelf:!0,emitEvent:r.emitEvent})}),this._updatePristine(r,this),this._updateTouched(r,this),this.updateValueAndValidity(r)}getRawValue(){return this._reduceChildren({},(e,r,n)=>(e[n]=r.getRawValue(),e))}_syncPendingControls(){let e=this._reduceChildren(!1,(r,n)=>n._syncPendingControls()?!0:r);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_forEachChild(e){Object.keys(this.controls).forEach(r=>{let n=this.controls[r];n&&e(n,r)})}_setUpControls(){this._forEachChild(e=>{e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(e){for(let[r,n]of Object.entries(this.controls))if(this.contains(r)&&e(n))return!0;return!1}_reduceValue(){let e={};return this._reduceChildren(e,(r,n,i)=>((n.enabled||this.disabled)&&(r[i]=n.value),r))}_reduceChildren(e,r){let n=e;return this._forEachChild((i,o)=>{n=r(n,i,o)}),n}_allControlsDisabled(){for(let e of Object.keys(this.controls))if(this.controls[e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(e){return this.controls.hasOwnProperty(e)?this.controls[e]:null}};var Fa=new x("CallSetDisabledState",{providedIn:"root",factory:()=>La}),La="always";function bx(t,e){return[...e.path,t]}function Sv(t,e,r=La){Mv(t,e),e.valueAccessor.writeValue(t.value),(t.disabled||r==="always")&&e.valueAccessor.setDisabledState?.(t.disabled),_x(t,e),xx(t,e),Ix(t,e),Ex(t,e)}function hv(t,e){t.forEach(r=>{r.registerOnValidatorChange&&r.registerOnValidatorChange(e)})}function Ex(t,e){if(e.valueAccessor.setDisabledState){let r=n=>{e.valueAccessor.setDisabledState(n)};t.registerOnDisabledChange(r),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(r)})}}function Mv(t,e){let r=mx(t);e.validator!==null?t.setValidators(uv(r,e.validator)):typeof r=="function"&&t.setValidators([r]);let n=gx(t);e.asyncValidator!==null?t.setAsyncValidators(uv(n,e.asyncValidator)):typeof n=="function"&&t.setAsyncValidators([n]);let i=()=>t.updateValueAndValidity();hv(e._rawValidators,i),hv(e._rawAsyncValidators,i)}function _x(t,e){e.valueAccessor.registerOnChange(r=>{t._pendingValue=r,t._pendingChange=!0,t._pendingDirty=!0,t.updateOn==="change"&&Tv(t,e)})}function Ix(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,t.updateOn==="blur"&&t._pendingChange&&Tv(t,e),t.updateOn!=="submit"&&t.markAsTouched()})}function Tv(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function xx(t,e){let r=(n,i)=>{e.valueAccessor.writeValue(n),i&&e.viewToModelUpdate(n)};t.registerOnChange(r),e._registerOnDestroy(()=>{t._unregisterOnChange(r)})}function Sx(t,e){t==null,Mv(t,e)}function Mx(t,e){if(!t.hasOwnProperty("model"))return!1;let r=t.model;return r.isFirstChange()?!0:!Object.is(e,r.currentValue)}function Tx(t){return Object.getPrototypeOf(t.constructor)===ka}function Ax(t,e){t._syncPendingControls(),e.forEach(r=>{let n=r.control;n.updateOn==="submit"&&n._pendingChange&&(r.viewToModelUpdate(n._pendingValue),n._pendingChange=!1)})}function Nx(t,e){if(!e)return null;Array.isArray(e);let r,n,i;return e.forEach(o=>{o.constructor===wn?r=o:Tx(o)?n=o:i=o}),i||n||r||null}var Rx={provide:Yr,useExisting:Ge(()=>Wn)},to=Promise.resolve(),Wn=(()=>{let e=class e extends Yr{get submitted(){return zt(this.submittedReactive)}constructor(n,i,o){super(),this.callSetDisabledState=o,this._submitted=Ei(()=>this.submittedReactive()),this.submittedReactive=wi(!1),this._directives=new Set,this.ngSubmit=new he,this.form=new Oa({},Ad(n),Nd(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(n){to.then(()=>{let i=this._findContainer(n.path);n.control=i.registerControl(n.name,n.control),Sv(n.control,n,this.callSetDisabledState),n.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(n)})}getControl(n){return this.form.get(n.path)}removeControl(n){to.then(()=>{let i=this._findContainer(n.path);i&&i.removeControl(n.name),this._directives.delete(n)})}addFormGroup(n){to.then(()=>{let i=this._findContainer(n.path),o=new Oa({});Sx(o,n),i.registerControl(n.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(n){to.then(()=>{let i=this._findContainer(n.path);i&&i.removeControl(n.name)})}getFormGroup(n){return this.form.get(n.path)}updateModel(n,i){to.then(()=>{this.form.get(n.path).setValue(i)})}setValue(n){this.control.setValue(n)}onSubmit(n){return this.submittedReactive.set(!0),Ax(this.form,this._directives),this.ngSubmit.emit(n),n?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(n=void 0){this.form.reset(n),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(n){return n.pop(),n.length?this.form.get(n):this.form}};e.\u0275fac=function(i){return new(i||e)(S(Jr,10),S(Dv,10),S(Fa,8))},e.\u0275dir=ne({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,o){i&1&&A("submit",function(a){return o.onSubmit(a)})("reset",function(){return o.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[pt([Rx]),Fe]});let t=e;return t})();function pv(t,e){let r=t.indexOf(e);r>-1&&t.splice(r,1)}function mv(t){return typeof t=="object"&&t!==null&&Object.keys(t).length===2&&"value"in t&&"disabled"in t}var Ox=class extends Ra{constructor(e=null,r,n){super(Iv(r),xv(n,r)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(e),this._setUpdateStrategy(r),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Pa(r)&&(r.nonNullable||r.initialValueIsDefault)&&(mv(e)?this.defaultValue=e.value:this.defaultValue=e)}setValue(e,r={}){this.value=this._pendingValue=e,this._onChange.length&&r.emitModelToViewChange!==!1&&this._onChange.forEach(n=>n(this.value,r.emitViewToModelChange!==!1)),this.updateValueAndValidity(r)}patchValue(e,r={}){this.setValue(e,r)}reset(e=this.defaultValue,r={}){this._applyFormState(e),this.markAsPristine(r),this.markAsUntouched(r),this.setValue(this.value,r),this._pendingChange=!1}_updateValue(){}_anyControls(e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(e){this._onChange.push(e)}_unregisterOnChange(e){pv(this._onChange,e)}registerOnDisabledChange(e){this._onDisabledChange.push(e)}_unregisterOnDisabledChange(e){pv(this._onDisabledChange,e)}_forEachChild(e){}_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(e){mv(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}};var kx={provide:Qr,useExisting:Ge(()=>Zn)},gv=Promise.resolve(),Zn=(()=>{let e=class e extends Qr{constructor(n,i,o,s,a,l){super(),this._changeDetectorRef=a,this.callSetDisabledState=l,this.control=new Ox,this._registered=!1,this.name="",this.update=new he,this._parent=n,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=Nx(this,s)}ngOnChanges(n){if(this._checkForErrors(),!this._registered||"name"in n){if(this._registered&&(this._checkName(),this.formDirective)){let i=n.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in n&&this._updateDisabled(n),Mx(n,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(n){this.viewModel=n,this.update.emit(n)}_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(){Sv(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(n){gv.then(()=>{this.control.setValue(n,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(n){let i=n.isDisabled.currentValue,o=i!==0&&Gt(i);gv.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(n){return this._parent?bx(n,this._parent):[n]}};e.\u0275fac=function(i){return new(i||e)(S(Yr,9),S(Jr,10),S(Dv,10),S(io,10),S(mn,8),S(Fa,8))},e.\u0275dir=ne({type:e,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"],features:[pt([kx]),Fe,Ut]});let t=e;return t})(),ti=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275dir=ne({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]});let t=e;return t})();var Px={provide:io,useExisting:Ge(()=>Rd),multi:!0};var Fx=(()=>{let e=class e{constructor(){this._accessors=[]}add(n,i){this._accessors.push([n,i])}remove(n){for(let i=this._accessors.length-1;i>=0;--i)if(this._accessors[i][1]===n){this._accessors.splice(i,1);return}}select(n){this._accessors.forEach(i=>{this._isSameGroup(i,n)&&i[1]!==n&&i[1].fireUncheck(n.value)})}_isSameGroup(n,i){return n[0].control?n[0]._parent===i._control._parent&&n[1].name===i.name:!1}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Rd=(()=>{let e=class e extends ka{constructor(n,i,o,s){super(n,i),this._registry=o,this._injector=s,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=C(Fa,{optional:!0})??La}ngOnInit(){this._control=this._injector.get(Qr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(n){this._state=n===this.value,this.setProperty("checked",this._state)}registerOnChange(n){this._fn=n,this.onChange=()=>{n(this.value),this._registry.select(this)}}setDisabledState(n){(this.setDisabledStateFired||n||this.callSetDisabledState==="whenDisabledForLegacyCode")&&this.setProperty("disabled",n),this.setDisabledStateFired=!0}fireUncheck(n){this.writeValue(n)}_checkName(){this.name&&this.formControlName&&(this.name,this.formControlName),!this.name&&this.formControlName&&(this.name=this.formControlName)}};e.\u0275fac=function(i){return new(i||e)(S(st),S(Ae),S(Fx),S(rt))},e.\u0275dir=ne({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(i,o){i&1&&A("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[pt([Px]),Fe]});let t=e;return t})();var Lx={provide:io,useExisting:Ge(()=>Va),multi:!0};function Av(t,e){return t==null?`${e}`:(e&&typeof e=="object"&&(e="Object"),`${t}: ${e}`.slice(0,50))}function Vx(t){return t.split(":")[0]}var Va=(()=>{let e=class e extends ka{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;let i=this._getOptionId(n),o=Av(i,n);this.setProperty("value",o)}registerOnChange(n){this.onChange=i=>{this.value=this._getOptionValue(i),n(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(n){for(let i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i),n))return i;return null}_getOptionValue(n){let i=Vx(n);return this._optionMap.has(i)?this._optionMap.get(i):n}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(i,o){i&1&&A("change",function(a){return o.onChange(a.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[pt([Lx]),Fe]});let t=e;return t})(),Nv=(()=>{let e=class e{constructor(n,i,o){this._element=n,this._renderer=i,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(n){this._select!=null&&(this._select._optionMap.set(this.id,n),this._setElementValue(Av(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._setElementValue(n),this._select&&this._select.writeValue(this._select.value)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}};e.\u0275fac=function(i){return new(i||e)(S(Ae),S(st),S(Va,9))},e.\u0275dir=ne({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}});let t=e;return t})(),jx={provide:io,useExisting:Ge(()=>Rv),multi:!0};function vv(t,e){return t==null?`${e}`:(typeof e=="string"&&(e=`'${e}'`),e&&typeof e=="object"&&(e="Object"),`${t}: ${e}`.slice(0,50))}function Ux(t){return t.split(":")[0]}var Rv=(()=>{let e=class e extends ka{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;let i;if(Array.isArray(n)){let o=n.map(s=>this._getOptionId(s));i=(s,a)=>{s._setSelected(o.indexOf(a.toString())>-1)}}else i=(o,s)=>{o._setSelected(!1)};this._optionMap.forEach(i)}registerOnChange(n){this.onChange=i=>{let o=[],s=i.selectedOptions;if(s!==void 0){let a=s;for(let l=0;l{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(i,o){i&1&&A("change",function(a){return o.onChange(a.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[pt([jx]),Fe]});let t=e;return t})(),Ov=(()=>{let e=class e{constructor(n,i,o){this._element=n,this._renderer=i,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(n){this._select!=null&&(this._value=n,this._setElementValue(vv(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._select?(this._value=n,this._setElementValue(vv(this.id,n)),this._select.writeValue(this._select.value)):this._setElementValue(n)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}_setSelected(n){this._renderer.setProperty(this._element.nativeElement,"selected",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}};e.\u0275fac=function(i){return new(i||e)(S(Ae),S(st),S(Rv,9))},e.\u0275dir=ne({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}});let t=e;return t})();function Bx(t){return typeof t=="number"?t:parseInt(t,10)}var ja=(()=>{let e=class e{constructor(){this._validator=Sd}ngOnChanges(n){if(this.inputName in n){let i=this.normalizeInput(n[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):Sd,this._onChange&&this._onChange()}}validate(n){return this._validator(n)}registerOnValidatorChange(n){this._onChange=n}enabled(n){return n!=null}};e.\u0275fac=function(i){return new(i||e)},e.\u0275dir=ne({type:e,features:[Ut]});let t=e;return t})();var $x={provide:Jr,useExisting:Ge(()=>Yn),multi:!0};var Yn=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Gt,this.createValidator=n=>lx}enabled(n){return n}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,o){i&2&&$t("required",o._enabled?"":null)},inputs:{required:"required"},features:[pt([$x]),Fe]});let t=e;return t})();var Hx={provide:Jr,useExisting:Ge(()=>oo),multi:!0},oo=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Gt,this.createValidator=n=>cx}enabled(n){return n}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[pt([Hx]),Fe]});let t=e;return t})();var Gx={provide:Jr,useExisting:Ge(()=>Od),multi:!0},Od=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=n=>Bx(n),this.createValidator=n=>ux(n)}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(i,o){i&2&&$t("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[pt([Gx]),Fe]});let t=e;return t})(),zx={provide:Jr,useExisting:Ge(()=>kd),multi:!0},kd=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=n=>n,this.createValidator=n=>dx(n)}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(i,o){i&2&&$t("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[pt([zx]),Fe]});let t=e;return t})();var qx=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({});let t=e;return t})();var bn=(()=>{let e=class e{static withConfig(n){return{ngModule:e,providers:[{provide:Fa,useValue:n.callSetDisabledState??La}]}}};e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({imports:[qx]});let t=e;return t})();var Ua=class{constructor(){this.name="",this.email="",this.message=""}};var Ba=(()=>{let e=class e{constructor(n){this.httpClient=n}postContactForm(n){return this.httpClient.post(`${K.apiBaseUrl}contact`,n)}};e.\u0275fac=function(i){return new(i||e)(I(Mi))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function Zx(t,e){if(t&1){let r=ie();u(0,"form",5,0),A("ngSubmit",function(){F(r);let i=_();return L(i.submit())}),u(2,"div",6)(3,"label",7),c(4,"Name "),u(5,"span",8),c(6,"*"),f()(),u(7,"input",9),le("ngModelChange",function(i){F(r);let o=_();return ue(o.contactViewModel.name,i)||(o.contactViewModel.name=i),L(i)}),f()(),u(8,"div",6)(9,"label",10),c(10,"Email address "),u(11,"span",8),c(12,"*"),f()(),u(13,"input",11),le("ngModelChange",function(i){F(r);let o=_();return ue(o.contactViewModel.email,i)||(o.contactViewModel.email=i),L(i)}),f()(),u(14,"div",6)(15,"label",12),c(16,"Message "),u(17,"span",8),c(18,"*"),f()(),u(19,"textarea",13),le("ngModelChange",function(i){F(r);let o=_();return ue(o.contactViewModel.message,i)||(o.contactViewModel.message=i),L(i)}),f()(),u(20,"button",14),c(21,"Submit"),f()()}if(t&2){let r=Hs(1),n=_();g(7),ae("ngModel",n.contactViewModel.name),g(6),ae("ngModel",n.contactViewModel.email),g(6),ae("ngModel",n.contactViewModel.message),g(),D("disabled",!r.valid||n.enableFormCountDown>0)}}function Yx(t,e){t&1&&(u(0,"p"),c(1,"Thanks for your message."),f())}function Qx(t,e){t&1&&(u(0,"p",4),c(1,"Something went wrong. Please try again later."),f())}var kv=(()=>{let e=class e{constructor(n){this.contactService=n,this.contactViewModel=new Ua,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,this.enableFormCountDown===0&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:n=>{console.log("Submitted form"),this.success=!0},error:n=>{console.error(n),this.error=!0},complete:()=>console.info("complete")})}};e.\u0275fac=function(i){return new(i||e)(S(Ba))},e.\u0275cmp=ce({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[de],decls:6,vars:3,consts:[["contactForm","ngForm"],[1,"container"],[1,"mb-4"],["method","post"],[1,"text-danger"],["method","post",3,"ngSubmit"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModelChange","ngModel"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModelChange","ngModel"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModelChange","ngModel"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(i,o){i&1&&(u(0,"div",1)(1,"h1",2),c(2,"Contact"),f(),k(3,Zx,22,4,"form",3)(4,Yx,2,0,"p")(5,Qx,2,0,"p",4),f()),i&2&&(g(3),Bn(!o.success&&!o.error?3:-1),g(),Bn(o.success?4:-1),g(),Bn(o.error?5:-1))},dependencies:[bn,ti,wn,Xr,ei,Yn,oo,Zn,Wn]});let t=e;return t})();var Pv=()=>["/pro"],Fv=(()=>{let e=class e{scrollToAnchor(n){return document.querySelector(n)?.scrollIntoView(!0),!1}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-features-component"]],standalone:!0,features:[de],decls:163,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"],["id","rawmode",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Settings#other-settings","target","_blank"]],template:function(i,o){i&1&&(u(0,"div",0)(1,"h1",1),c(2,"Features"),f(),u(3,"h2",2),c(4,"Coverage quotas"),f(),u(5,"p"),c(6," The overiew cards provide a quick "),u(7,"span",3),c(8,"overview"),f(),c(9," of your coverage quotas."),p(10,"br"),c(11," You can use them to get a glimpse into the different "),u(12,"a",4),c(13,"coverage metrics"),f(),c(14,"\xA0"),u(15,"a",4),p(16,"i",5),f(),c(17,": "),f(),u(18,"ul")(19,"li"),c(20,"Line coverage"),f(),u(21,"li"),c(22,"Branch coverage"),f(),u(23,"li"),c(24,"Method coverage "),u(25,"a",6)(26,"span",7),c(27,"PRO"),f()()()(),p(28,"img",8)(29,"br"),u(30,"h2",9),c(31,"Coverage history"),f(),u(32,"p"),c(33," The history chart helps you to understand how your coverage quotas are "),u(34,"span",3),c(35,"evolving over time"),f(),c(36,". "),f(),p(37,"img",10)(38,"br"),u(39,"h2",11),c(40,"Summary table / Overview"),f(),u(41,"p"),c(42," The summary table helps you to identify classes with "),u(43,"span",3),c(44,"low test coverage"),f(),c(45,"."),p(46,"br"),c(47," The table offers various "),u(48,"span",3),c(49,"filter and sorting"),f(),c(50," options for quick navigation. "),f(),p(51,"img",12)(52,"br"),u(53,"h2",13),c(54,"Details page"),f(),u(55,"p"),c(56," The details page visualizes your "),u(57,"span",3),c(58,"line and branch coverage"),f(),c(59,". "),f(),u(60,"ul")(61,"li"),c(62,"Colors indicate the coverage status of each line."),f(),u(63,"li"),c(64,"Branch indicators help you to identity uncovered conditions."),f()(),p(65,"img",14)(66,"br"),u(67,"h2",15),c(68,"Metrics"),f(),u(69,"p"),c(70," Depending on your "),u(71,"a",16),c(72,"coverage tool"),f(),c(73,", metrics are provided to get further insigths in your "),u(74,"span",3),c(75,"code quality"),f(),c(76,". "),f(),u(77,"ul")(78,"li"),c(79,"The "),u(80,"a",17),A("click",function(){return o.scrollToAnchor("#details")}),c(81,"details page"),f(),c(82," contains information about the metrics of all methods of a class."),f(),u(83,"li"),c(84,"The "),u(85,"a",17),A("click",function(){return o.scrollToAnchor("#summary")}),c(86,"summary table"),f(),c(87," shows the lowest metrics of all methods of a class "),u(88,"a",6)(89,"span",7),c(90,"PRO"),f()()()(),u(91,"b"),c(92,"Details page"),f(),p(93,"br")(94,"img",18)(95,"br")(96,"br"),u(97,"b"),c(98,"Summary table"),f(),p(99,"br")(100,"img",19)(101,"br"),u(102,"h2",20),c(103,"Risk Hotspots"),f(),u(104,"p"),c(105," Based on the "),u(106,"a",17),A("click",function(){return o.scrollToAnchor("#metrics")}),c(107,"metrics"),f(),c(108," you get a list of potential risk hotspots."),p(109,"br"),c(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),f(),u(111,"ul")(112,"li")(113,"a",21),c(114,"Cyclomatic complexity"),f(),c(115,"\xA0"),u(116,"a",21),p(117,"i",5),f()(),u(118,"li")(119,"a",22),c(120,"NPath complexity"),f(),c(121,"\xA0"),u(122,"a",22),p(123,"i",5),f()(),u(124,"li")(125,"a",23),c(126,"Crap score"),f(),c(127,"\xA0"),u(128,"a",23),p(129,"i",5),f()()(),p(130,"img",24),u(131,"h2",25),c(132,"Raw mode (for "),u(133,"i"),c(134,"Cobertura"),f(),c(135," and "),u(136,"i"),c(137,"dotCover"),f(),c(138,") "),u(139,"span",7),c(140,"PRO"),f()(),u(141,"p"),c(142,' With "raw mode" (settings:rawMode=true) you can disable that coverage data of nested or compiler generated classes is included in the parent class.'),p(143,"br"),c(144," This is useful to merge several "),u(145,"i"),c(146,"Cobertura"),f(),c(147," files into a single file, since the original class structure remains untouched. "),f(),u(148,"p"),c(149,"See "),u(150,"a",26),c(151,"Settings"),f(),c(152,"\xA0"),u(153,"a",26),p(154,"i",5),f()(),u(155,"p"),c(156,"Limitation: Raw mode is currently only supported for "),u(157,"i"),c(158,"Cobertura"),f(),c(159," and "),u(160,"i"),c(161,"dotCover"),f(),c(162," files."),f()()),i&2&&(g(25),D("routerLink",B(2,Pv)),g(63),D("routerLink",B(3,Pv)))},dependencies:[Ne]});let t=e;return t})();var Re={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.3.10"};var Kx=()=>["/usage"],Lv=(()=>{let e=class e{constructor(){this.versions=Re}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[de],decls:75,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/microsoft/codecoverage"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(i,o){i&1&&(u(0,"div",0)(1,"h1",1),c(2,"Get started"),f(),u(3,"h2"),c(4,"General"),f(),u(5,"p"),c(6,"In general you need a tool that instruments your test code and collects coverage information."),p(7,"br"),c(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),p(9,"br"),u(10,"em"),c(11,"ReportGenerator"),f(),c(12," uses this file and generates a report in HTML format (other formats are available)."),f(),u(13,"p"),c(14,"Use the online "),u(15,"a",2),c(16,"configuration tool"),f(),c(17," to get started quickly."),f(),u(18,"h2",3),c(19,".NET"),f(),u(20,"p"),c(21,"For .NET you can use "),u(22,"a",4),c(23,"Microsoft CodeCoverage"),f(),c(24,", "),u(25,"a",5),c(26,"coverlet"),f(),c(27," or "),u(28,"a",6),c(29,"altcover"),f(),c(30," for instrumenting your test code."),f(),u(31,"p"),c(32,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),f(),u(33,"p")(34,"strong"),c(35,"Add dependencies to your "),u(36,"code"),c(37,"*.csproj"),f(),c(38," file:"),f()(),u(39,"pre",7),c(40),f(),u(41,"p")(42,"strong"),c(43,"Execute tests and create coverage report"),f()(),u(44,"pre",7),c(45),f(),u(46,"h2",8),c(47,"Java"),f(),u(48,"p"),c(49,"For Java you can use "),u(50,"a",9),c(51,"JaCoCo"),f(),c(52,` for instrumenting your test code. +`).forEach(r=>{let n=r.indexOf(":");if(n>0){let i=r.slice(0,n),o=i.toLowerCase(),s=r.slice(n+1).trim();this.maybeSetNormalizedName(i,o),this.headers.has(o)?this.headers.get(o).push(s):this.headers.set(o,[s])}})}:typeof Headers<"u"&&e instanceof Headers?(this.headers=new Map,e.forEach((r,n)=>{this.setHeaderEntries(n,r)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(e).forEach(([r,n])=>{this.setHeaderEntries(r,n)})}:this.headers=new Map}has(e){return this.init(),this.headers.has(e.toLowerCase())}get(e){this.init();let r=this.headers.get(e.toLowerCase());return r&&r.length>0?r[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(e){return this.init(),this.headers.get(e.toLowerCase())||null}append(e,r){return this.clone({name:e,value:r,op:"a"})}set(e,r){return this.clone({name:e,value:r,op:"s"})}delete(e,r){return this.clone({name:e,value:r,op:"d"})}maybeSetNormalizedName(e,r){this.normalizedNames.has(r)||this.normalizedNames.set(r,e)}init(){this.lazyInit&&(this.lazyInit instanceof t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(e=>this.applyUpdate(e)),this.lazyUpdate=null))}copyFrom(e){e.init(),Array.from(e.headers.keys()).forEach(r=>{this.headers.set(r,e.headers.get(r)),this.normalizedNames.set(r,e.normalizedNames.get(r))})}clone(e){let r=new t;return r.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,r.lazyUpdate=(this.lazyUpdate||[]).concat([e]),r}applyUpdate(e){let r=e.name.toLowerCase();switch(e.op){case"a":case"s":let n=e.value;if(typeof n=="string"&&(n=[n]),n.length===0)return;this.maybeSetNormalizedName(e.name,r);let i=(e.op==="a"?this.headers.get(r):void 0)||[];i.push(...n),this.headers.set(r,i);break;case"d":let o=e.value;if(!o)this.headers.delete(r),this.normalizedNames.delete(r);else{let s=this.headers.get(r);if(!s)return;s=s.filter(a=>o.indexOf(a)===-1),s.length===0?(this.headers.delete(r),this.normalizedNames.delete(r)):this.headers.set(r,s)}break}}setHeaderEntries(e,r){let n=(Array.isArray(r)?r:[r]).map(o=>o.toString()),i=e.toLowerCase();this.headers.set(i,n),this.maybeSetNormalizedName(e,i)}forEach(e){this.init(),Array.from(this.normalizedNames.keys()).forEach(r=>e(this.normalizedNames.get(r),this.headers.get(r)))}};var Nu=class{encodeKey(e){return Bm(e)}encodeValue(e){return Bm(e)}decodeKey(e){return decodeURIComponent(e)}decodeValue(e){return decodeURIComponent(e)}};function iE(t,e){let r=new Map;return t.length>0&&t.replace(/^\?/,"").split("&").forEach(i=>{let o=i.indexOf("="),[s,a]=o==-1?[e.decodeKey(i),""]:[e.decodeKey(i.slice(0,o)),e.decodeValue(i.slice(o+1))],l=r.get(s)||[];l.push(a),r.set(s,l)}),r}var oE=/%(\d[a-f0-9])/gi,sE={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function Bm(t){return encodeURIComponent(t).replace(oE,(e,r)=>sE[r]??e)}function ta(t){return`${t}`}var vn=class t{constructor(e={}){if(this.updates=null,this.cloneFrom=null,this.encoder=e.encoder||new Nu,e.fromString){if(e.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=iE(e.fromString,this.encoder)}else e.fromObject?(this.map=new Map,Object.keys(e.fromObject).forEach(r=>{let n=e.fromObject[r],i=Array.isArray(n)?n.map(ta):[ta(n)];this.map.set(r,i)})):this.map=null}has(e){return this.init(),this.map.has(e)}get(e){this.init();let r=this.map.get(e);return r?r[0]:null}getAll(e){return this.init(),this.map.get(e)||null}keys(){return this.init(),Array.from(this.map.keys())}append(e,r){return this.clone({param:e,value:r,op:"a"})}appendAll(e){let r=[];return Object.keys(e).forEach(n=>{let i=e[n];Array.isArray(i)?i.forEach(o=>{r.push({param:n,value:o,op:"a"})}):r.push({param:n,value:i,op:"a"})}),this.clone(r)}set(e,r){return this.clone({param:e,value:r,op:"s"})}delete(e,r){return this.clone({param:e,value:r,op:"d"})}toString(){return this.init(),this.keys().map(e=>{let r=this.encoder.encodeKey(e);return this.map.get(e).map(n=>r+"="+this.encoder.encodeValue(n)).join("&")}).filter(e=>e!=="").join("&")}clone(e){let r=new t({encoder:this.encoder});return r.cloneFrom=this.cloneFrom||this,r.updates=(this.updates||[]).concat(e),r}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(e=>this.map.set(e,this.cloneFrom.map.get(e))),this.updates.forEach(e=>{switch(e.op){case"a":case"s":let r=(e.op==="a"?this.map.get(e.param):void 0)||[];r.push(ta(e.value)),this.map.set(e.param,r);break;case"d":if(e.value!==void 0){let n=this.map.get(e.param)||[],i=n.indexOf(ta(e.value));i!==-1&&n.splice(i,1),n.length>0?this.map.set(e.param,n):this.map.delete(e.param)}else{this.map.delete(e.param);break}}}),this.cloneFrom=this.updates=null)}};var Ru=class{constructor(){this.map=new Map}set(e,r){return this.map.set(e,r),this}get(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}delete(e){return this.map.delete(e),this}has(e){return this.map.has(e)}keys(){return this.map.keys()}};function aE(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function $m(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer}function Hm(t){return typeof Blob<"u"&&t instanceof Blob}function Gm(t){return typeof FormData<"u"&&t instanceof FormData}function lE(t){return typeof URLSearchParams<"u"&&t instanceof URLSearchParams}var _i=class t{constructor(e,r,n,i){this.url=r,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=e.toUpperCase();let o;if(aE(this.method)||i?(this.body=n!==void 0?n:null,o=i):o=n,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params),this.transferCache=o.transferCache),this.headers??=new Zt,this.context??=new Ru,!this.params)this.params=new vn,this.urlWithParams=r;else{let s=this.params.toString();if(s.length===0)this.urlWithParams=r;else{let a=r.indexOf("?"),l=a===-1?"?":av.set(y,e.setHeaders[y]),d)),e.setParams&&(h=Object.keys(e.setParams).reduce((v,y)=>v.set(y,e.setParams[y]),h)),new t(r,n,s,{params:h,headers:d,context:m,reportProgress:l,responseType:i,withCredentials:a,transferCache:o})}},yn=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}(yn||{}),xi=class{constructor(e,r=200,n="OK"){this.headers=e.headers||new Zt,this.status=e.status!==void 0?e.status:r,this.statusText=e.statusText||n,this.url=e.url||null,this.ok=this.status>=200&&this.status<300}},ra=class t extends xi{constructor(e={}){super(e),this.type=yn.ResponseHeader}clone(e={}){return new t({headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},Si=class t extends xi{constructor(e={}){super(e),this.type=yn.Response,this.body=e.body!==void 0?e.body:null}clone(e={}){return new t({body:e.body!==void 0?e.body:this.body,headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},gn=class extends xi{constructor(e){super(e,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${e.url||"(unknown url)"}`:this.message=`Http failure response for ${e.url||"(unknown url)"}: ${e.status} ${e.statusText}`,this.error=e.error||null}},Ym=200,cE=204;function Au(t,e){return{body:e,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials,transferCache:t.transferCache}}var Mi=(()=>{let e=class e{constructor(n){this.handler=n}request(n,i,o={}){let s;if(n instanceof _i)s=n;else{let d;o.headers instanceof Zt?d=o.headers:d=new Zt(o.headers);let h;o.params&&(o.params instanceof vn?h=o.params:h=new vn({fromObject:o.params})),s=new _i(n,i,o.body!==void 0?o.body:null,{headers:d,context:o.context,params:h,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}let a=R(s).pipe(Rt(d=>this.handler.handle(d)));if(n instanceof _i||o.observe==="events")return a;let l=a.pipe(Se(d=>d instanceof Si));switch(o.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return l.pipe(P(d=>{if(d.body!==null&&!(d.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return d.body}));case"blob":return l.pipe(P(d=>{if(d.body!==null&&!(d.body instanceof Blob))throw new Error("Response is not a Blob.");return d.body}));case"text":return l.pipe(P(d=>{if(d.body!==null&&typeof d.body!="string")throw new Error("Response is not a string.");return d.body}));case"json":default:return l.pipe(P(d=>d.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(n,i={}){return this.request("DELETE",n,i)}get(n,i={}){return this.request("GET",n,i)}head(n,i={}){return this.request("HEAD",n,i)}jsonp(n,i){return this.request("JSONP",n,{params:new vn().append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(n,i={}){return this.request("OPTIONS",n,i)}patch(n,i,o={}){return this.request("PATCH",n,Au(o,i))}post(n,i,o={}){return this.request("POST",n,Au(o,i))}put(n,i,o={}){return this.request("PUT",n,Au(o,i))}};e.\u0275fac=function(i){return new(i||e)(I(Ii))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),uE=/^\)\]\}',?\n/,dE="X-Request-URL";function zm(t){if(t.url)return t.url;let e=dE.toLocaleLowerCase();return t.headers.get(e)}var fE=(()=>{let e=class e{constructor(){this.fetchImpl=C(Ou,{optional:!0})?.fetch??fetch.bind(globalThis),this.ngZone=C(ee)}handle(n){return new Z(i=>{let o=new AbortController;return this.doRequest(n,o.signal,i).then(ku,s=>i.error(new gn({error:s}))),()=>o.abort()})}doRequest(n,i,o){return ao(this,null,function*(){let s=this.createRequestInit(n),a;try{let w=this.ngZone.runOutsideAngular(()=>this.fetchImpl(n.urlWithParams,b({signal:i},s)));hE(w),o.next({type:yn.Sent}),a=yield w}catch(w){o.error(new gn({error:w,status:w.status??0,statusText:w.statusText,url:n.urlWithParams,headers:w.headers}));return}let l=new Zt(a.headers),d=a.statusText,h=zm(a)??n.urlWithParams,m=a.status,v=null;if(n.reportProgress&&o.next(new ra({headers:l,status:m,statusText:d,url:h})),a.body){let w=a.headers.get("content-length"),U=[],N=a.body.getReader(),T=0,oe,pe,X=typeof Zone<"u"&&Zone.current;yield this.ngZone.runOutsideAngular(()=>ao(this,null,function*(){for(;;){let{done:me,value:Ke}=yield N.read();if(me)break;if(U.push(Ke),T+=Ke.length,n.reportProgress){pe=n.responseType==="text"?(pe??"")+(oe??=new TextDecoder).decode(Ke,{stream:!0}):void 0;let Xn=()=>o.next({type:yn.DownloadProgress,total:w?+w:void 0,loaded:T,partialText:pe});X?X.run(Xn):Xn()}}}));let Qe=this.concatChunks(U,T);try{let me=a.headers.get("Content-Type")??"";v=this.parseBody(n,Qe,me)}catch(me){o.error(new gn({error:me,headers:new Zt(a.headers),status:a.status,statusText:a.statusText,url:zm(a)??n.urlWithParams}));return}}m===0&&(m=v?Ym:0),m>=200&&m<300?(o.next(new Si({body:v,headers:l,status:m,statusText:d,url:h})),o.complete()):o.error(new gn({error:v,headers:l,status:m,statusText:d,url:h}))})}parseBody(n,i,o){switch(n.responseType){case"json":let s=new TextDecoder().decode(i).replace(uE,"");return s===""?null:JSON.parse(s);case"text":return new TextDecoder().decode(i);case"blob":return new Blob([i],{type:o});case"arraybuffer":return i.buffer}}createRequestInit(n){let i={},o=n.withCredentials?"include":void 0;if(n.headers.forEach((s,a)=>i[s]=a.join(",")),n.headers.has("Accept")||(i.Accept="application/json, text/plain, */*"),!n.headers.has("Content-Type")){let s=n.detectContentTypeHeader();s!==null&&(i["Content-Type"]=s)}return{body:n.serializeBody(),method:n.method,headers:i,credentials:o}}concatChunks(n,i){let o=new Uint8Array(i),s=0;for(let a of n)o.set(a,s),s+=a.length;return o}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Ou=class{};function ku(){}function hE(t){t.then(ku,ku)}function Qm(t,e){return e(t)}function pE(t,e){return(r,n)=>e.intercept(r,{handle:i=>t(i,n)})}function mE(t,e,r){return(n,i)=>it(r,()=>e(n,o=>t(o,i)))}var gE=new x(""),Pu=new x(""),vE=new x(""),Km=new x("",{providedIn:"root",factory:()=>!0});function yE(){let t=null;return(e,r)=>{t===null&&(t=(C(gE,{optional:!0})??[]).reduceRight(pE,Qm));let n=C(Bt);if(C(Km)){let o=n.add();return t(e,r).pipe(rn(()=>n.remove(o)))}else return t(e,r)}}var qm=(()=>{let e=class e extends Ii{constructor(n,i){super(),this.backend=n,this.injector=i,this.chain=null,this.pendingTasks=C(Bt),this.contributeToStability=C(Km)}handle(n){if(this.chain===null){let i=Array.from(new Set([...this.injector.get(Pu),...this.injector.get(vE,[])]));this.chain=i.reduceRight((o,s)=>mE(o,s,this.injector),Qm)}if(this.contributeToStability){let i=this.pendingTasks.add();return this.chain(n,o=>this.backend.handle(o)).pipe(rn(()=>this.pendingTasks.remove(i)))}else return this.chain(n,i=>this.backend.handle(i))}};e.\u0275fac=function(i){return new(i||e)(I(na),I(Pe))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();var DE=/^\)\]\}',?\n/;function CE(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}var Wm=(()=>{let e=class e{constructor(n){this.xhrFactory=n}handle(n){if(n.method==="JSONP")throw new M(-2800,!1);let i=this.xhrFactory;return(i.\u0275loadImpl?re(i.\u0275loadImpl()):R(null)).pipe(Ve(()=>new Z(s=>{let a=i.build();if(a.open(n.method,n.urlWithParams),n.withCredentials&&(a.withCredentials=!0),n.headers.forEach((N,T)=>a.setRequestHeader(N,T.join(","))),n.headers.has("Accept")||a.setRequestHeader("Accept","application/json, text/plain, */*"),!n.headers.has("Content-Type")){let N=n.detectContentTypeHeader();N!==null&&a.setRequestHeader("Content-Type",N)}if(n.responseType){let N=n.responseType.toLowerCase();a.responseType=N!=="json"?N:"text"}let l=n.serializeBody(),d=null,h=()=>{if(d!==null)return d;let N=a.statusText||"OK",T=new Zt(a.getAllResponseHeaders()),oe=CE(a)||n.url;return d=new ra({headers:T,status:a.status,statusText:N,url:oe}),d},m=()=>{let{headers:N,status:T,statusText:oe,url:pe}=h(),X=null;T!==cE&&(X=typeof a.response>"u"?a.responseText:a.response),T===0&&(T=X?Ym:0);let Qe=T>=200&&T<300;if(n.responseType==="json"&&typeof X=="string"){let me=X;X=X.replace(DE,"");try{X=X!==""?JSON.parse(X):null}catch(Ke){X=me,Qe&&(Qe=!1,X={error:Ke,text:X})}}Qe?(s.next(new Si({body:X,headers:N,status:T,statusText:oe,url:pe||void 0})),s.complete()):s.error(new gn({error:X,headers:N,status:T,statusText:oe,url:pe||void 0}))},v=N=>{let{url:T}=h(),oe=new gn({error:N,status:a.status||0,statusText:a.statusText||"Unknown Error",url:T||void 0});s.error(oe)},y=!1,w=N=>{y||(s.next(h()),y=!0);let T={type:yn.DownloadProgress,loaded:N.loaded};N.lengthComputable&&(T.total=N.total),n.responseType==="text"&&a.responseText&&(T.partialText=a.responseText),s.next(T)},U=N=>{let T={type:yn.UploadProgress,loaded:N.loaded};N.lengthComputable&&(T.total=N.total),s.next(T)};return a.addEventListener("load",m),a.addEventListener("error",v),a.addEventListener("timeout",v),a.addEventListener("abort",v),n.reportProgress&&(a.addEventListener("progress",w),l!==null&&a.upload&&a.upload.addEventListener("progress",U)),a.send(l),s.next({type:yn.Sent}),()=>{a.removeEventListener("error",v),a.removeEventListener("abort",v),a.removeEventListener("load",m),a.removeEventListener("timeout",v),n.reportProgress&&(a.removeEventListener("progress",w),l!==null&&a.upload&&a.upload.removeEventListener("progress",U)),a.readyState!==a.DONE&&a.abort()}})))}};e.\u0275fac=function(i){return new(i||e)(I(Rr))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Jm=new x(""),wE="XSRF-TOKEN",bE=new x("",{providedIn:"root",factory:()=>wE}),EE="X-XSRF-TOKEN",_E=new x("",{providedIn:"root",factory:()=>EE}),ia=class{},IE=(()=>{let e=class e{constructor(n,i,o){this.doc=n,this.platform=i,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if(this.platform==="server")return null;let n=this.doc.cookie||"";return n!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ks(n,this.cookieName),this.lastCookieString=n),this.lastToken}};e.\u0275fac=function(i){return new(i||e)(I(we),I(It),I(bE))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function xE(t,e){let r=t.url.toLowerCase();if(!C(Jm)||t.method==="GET"||t.method==="HEAD"||r.startsWith("http://")||r.startsWith("https://"))return e(t);let n=C(ia).getToken(),i=C(_E);return n!=null&&!t.headers.has(i)&&(t=t.clone({headers:t.headers.set(i,n)})),e(t)}var Xm=function(t){return t[t.Interceptors=0]="Interceptors",t[t.LegacyInterceptors=1]="LegacyInterceptors",t[t.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",t[t.NoXsrfProtection=3]="NoXsrfProtection",t[t.JsonpSupport=4]="JsonpSupport",t[t.RequestsMadeViaParent=5]="RequestsMadeViaParent",t[t.Fetch=6]="Fetch",t}(Xm||{});function SE(t,e){return{\u0275kind:t,\u0275providers:e}}function eg(...t){let e=[Mi,Wm,qm,{provide:Ii,useExisting:qm},{provide:na,useFactory:()=>C(fE,{optional:!0})??C(Wm)},{provide:Pu,useValue:xE,multi:!0},{provide:Jm,useValue:!0},{provide:ia,useClass:IE}];for(let r of t)e.push(...r.\u0275providers);return _s(e)}var Zm=new x("");function tg(){return SE(Xm.LegacyInterceptors,[{provide:Zm,useFactory:yE},{provide:Pu,useExisting:Zm,multi:!0}])}var Vu=class extends Qs{constructor(){super(...arguments),this.supportsDOMEvents=!0}},ju=class t extends Vu{static makeCurrent(){km(new t)}onAndCancel(e,r,n){return e.addEventListener(r,n),()=>{e.removeEventListener(r,n)}}dispatchEvent(e,r){e.dispatchEvent(r)}remove(e){e.remove()}createElement(e,r){return r=r||this.getDefaultDocument(),r.createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,r){return r==="window"?window:r==="document"?e:r==="body"?e.body:null}getBaseHref(e){let r=ME();return r==null?null:TE(r)}resetBaseElement(){Ti=null}getUserAgent(){return window.navigator.userAgent}getCookie(e){return Ks(document.cookie,e)}},Ti=null;function ME(){return Ti=Ti||document.querySelector("base"),Ti?Ti.getAttribute("href"):null}function TE(t){return new URL(t,document.baseURI).pathname}var Uu=class{addToWindow(e){Ct.getAngularTestability=(n,i=!0)=>{let o=e.findTestabilityInTree(n,i);if(o==null)throw new M(5103,!1);return o},Ct.getAllAngularTestabilities=()=>e.getAllTestabilities(),Ct.getAllAngularRootElements=()=>e.getAllRootElements();let r=n=>{let i=Ct.getAllAngularTestabilities(),o=i.length,s=function(){o--,o==0&&n()};i.forEach(a=>{a.whenStable(s)})};Ct.frameworkStabilizers||(Ct.frameworkStabilizers=[]),Ct.frameworkStabilizers.push(r)}findTestabilityInTree(e,r,n){if(r==null)return null;let i=e.getTestability(r);return i??(n?Mt().isShadowRoot(r)?this.findTestabilityInTree(e,r.host,!0):this.findTestabilityInTree(e,r.parentElement,!0):null)}},AE=(()=>{let e=class e{build(){return new XMLHttpRequest}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),oa=new x(""),sg=(()=>{let e=class e{constructor(n,i){this._zone=i,this._eventNameToPlugin=new Map,n.forEach(o=>{o.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,i,o){return this._findPluginFor(i).addEventListener(n,i,o)}getZone(){return this._zone}_findPluginFor(n){let i=this._eventNameToPlugin.get(n);if(i)return i;if(i=this._plugins.find(s=>s.supports(n)),!i)throw new M(5101,!1);return this._eventNameToPlugin.set(n,i),i}};e.\u0275fac=function(i){return new(i||e)(I(oa),I(ee))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Ai=class{constructor(e){this._doc=e}},Fu="ng-app-id",ag=(()=>{let e=class e{constructor(n,i,o,s={}){this.doc=n,this.appId=i,this.nonce=o,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=ea(s),this.resetHostNodes()}addStyles(n){for(let i of n)this.changeUsageCount(i,1)===1&&this.onStyleAdded(i)}removeStyles(n){for(let i of n)this.changeUsageCount(i,-1)<=0&&this.onStyleRemoved(i)}ngOnDestroy(){let n=this.styleNodesInDOM;n&&(n.forEach(i=>i.remove()),n.clear());for(let i of this.getAllStyles())this.onStyleRemoved(i);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(let i of this.getAllStyles())this.addStyleToHost(n,i)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(let i of this.hostNodes)this.addStyleToHost(i,n)}onStyleRemoved(n){let i=this.styleRef;i.get(n)?.elements?.forEach(o=>o.remove()),i.delete(n)}collectServerRenderedStyles(){let n=this.doc.head?.querySelectorAll(`style[${Fu}="${this.appId}"]`);if(n?.length){let i=new Map;return n.forEach(o=>{o.textContent!=null&&i.set(o.textContent,o)}),i}return null}changeUsageCount(n,i){let o=this.styleRef;if(o.has(n)){let s=o.get(n);return s.usage+=i,s.usage}return o.set(n,{usage:i,elements:[]}),i}getStyleElement(n,i){let o=this.styleNodesInDOM,s=o?.get(i);if(s?.parentNode===n)return o.delete(i),s.removeAttribute(Fu),s;{let a=this.doc.createElement("style");return this.nonce&&a.setAttribute("nonce",this.nonce),a.textContent=i,this.platformIsServer&&a.setAttribute(Fu,this.appId),n.appendChild(a),a}}addStyleToHost(n,i){let o=this.getStyleElement(n,i),s=this.styleRef,a=s.get(i)?.elements;a?a.push(o):s.set(i,{elements:[o],usage:1})}resetHostNodes(){let n=this.hostNodes;n.clear(),n.add(this.doc.head)}};e.\u0275fac=function(i){return new(i||e)(I(we),I(Ps),I(Zc,8),I(It))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Lu={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"},$u=/%COMP%/g,lg="%COMP%",NE=`_nghost-${lg}`,RE=`_ngcontent-${lg}`,OE=!0,kE=new x("",{providedIn:"root",factory:()=>OE});function PE(t){return RE.replace($u,t)}function FE(t){return NE.replace($u,t)}function cg(t,e){return e.map(r=>r.replace($u,t))}var rg=(()=>{let e=class e{constructor(n,i,o,s,a,l,d,h=null){this.eventManager=n,this.sharedStylesHost=i,this.appId=o,this.removeStylesOnCompDestroy=s,this.doc=a,this.platformId=l,this.ngZone=d,this.nonce=h,this.rendererByCompId=new Map,this.platformIsServer=ea(l),this.defaultRenderer=new Ni(n,a,d,this.platformIsServer)}createRenderer(n,i){if(!n||!i)return this.defaultRenderer;this.platformIsServer&&i.encapsulation===wt.ShadowDom&&(i=W(b({},i),{encapsulation:wt.Emulated}));let o=this.getOrCreateRenderer(n,i);return o instanceof sa?o.applyToHost(n):o instanceof Ri&&o.applyStyles(),o}getOrCreateRenderer(n,i){let o=this.rendererByCompId,s=o.get(i.id);if(!s){let a=this.doc,l=this.ngZone,d=this.eventManager,h=this.sharedStylesHost,m=this.removeStylesOnCompDestroy,v=this.platformIsServer;switch(i.encapsulation){case wt.Emulated:s=new sa(d,h,i,this.appId,m,a,l,v);break;case wt.ShadowDom:return new Bu(d,h,n,i,a,l,this.nonce,v);default:s=new Ri(d,h,i,m,a,l,v);break}o.set(i.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}};e.\u0275fac=function(i){return new(i||e)(I(sg),I(ag),I(Ps),I(kE),I(we),I(It),I(ee),I(Zc))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),Ni=class{constructor(e,r,n,i){this.eventManager=e,this.doc=r,this.ngZone=n,this.platformIsServer=i,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(e,r){return r?this.doc.createElementNS(Lu[r]||r,e):this.doc.createElement(e)}createComment(e){return this.doc.createComment(e)}createText(e){return this.doc.createTextNode(e)}appendChild(e,r){(ig(e)?e.content:e).appendChild(r)}insertBefore(e,r,n){e&&(ig(e)?e.content:e).insertBefore(r,n)}removeChild(e,r){r.remove()}selectRootElement(e,r){let n=typeof e=="string"?this.doc.querySelector(e):e;if(!n)throw new M(-5104,!1);return r||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,r,n,i){if(i){r=i+":"+r;let o=Lu[i];o?e.setAttributeNS(o,r,n):e.setAttribute(r,n)}else e.setAttribute(r,n)}removeAttribute(e,r,n){if(n){let i=Lu[n];i?e.removeAttributeNS(i,r):e.removeAttribute(`${n}:${r}`)}else e.removeAttribute(r)}addClass(e,r){e.classList.add(r)}removeClass(e,r){e.classList.remove(r)}setStyle(e,r,n,i){i&(Ft.DashCase|Ft.Important)?e.style.setProperty(r,n,i&Ft.Important?"important":""):e.style[r]=n}removeStyle(e,r,n){n&Ft.DashCase?e.style.removeProperty(r):e.style[r]=""}setProperty(e,r,n){e!=null&&(e[r]=n)}setValue(e,r){e.nodeValue=r}listen(e,r,n){if(typeof e=="string"&&(e=Mt().getGlobalEventTarget(this.doc,e),!e))throw new Error(`Unsupported event target ${e} for event ${r}`);return this.eventManager.addEventListener(e,r,this.decoratePreventDefault(n))}decoratePreventDefault(e){return r=>{if(r==="__ngUnwrap__")return e;(this.platformIsServer?this.ngZone.runGuarded(()=>e(r)):e(r))===!1&&r.preventDefault()}}};function ig(t){return t.tagName==="TEMPLATE"&&t.content!==void 0}var Bu=class extends Ni{constructor(e,r,n,i,o,s,a,l){super(e,o,s,l),this.sharedStylesHost=r,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let d=cg(i.id,i.styles);for(let h of d){let m=document.createElement("style");a&&m.setAttribute("nonce",a),m.textContent=h,this.shadowRoot.appendChild(m)}}nodeOrShadowRoot(e){return e===this.hostEl?this.shadowRoot:e}appendChild(e,r){return super.appendChild(this.nodeOrShadowRoot(e),r)}insertBefore(e,r,n){return super.insertBefore(this.nodeOrShadowRoot(e),r,n)}removeChild(e,r){return super.removeChild(null,r)}parentNode(e){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(e)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},Ri=class extends Ni{constructor(e,r,n,i,o,s,a,l){super(e,o,s,a),this.sharedStylesHost=r,this.removeStylesOnCompDestroy=i,this.styles=l?cg(l,n.styles):n.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}},sa=class extends Ri{constructor(e,r,n,i,o,s,a,l){let d=i+"-"+n.id;super(e,r,n,o,s,a,l,d),this.contentAttr=PE(d),this.hostAttr=FE(d)}applyToHost(e){this.applyStyles(),this.setAttribute(e,this.hostAttr,"")}createElement(e,r){let n=super.createElement(e,r);return super.setAttribute(n,this.contentAttr,""),n}},LE=(()=>{let e=class e extends Ai{constructor(n){super(n)}supports(n){return!0}addEventListener(n,i,o){return n.addEventListener(i,o,!1),()=>this.removeEventListener(n,i,o)}removeEventListener(n,i,o){return n.removeEventListener(i,o)}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),VE=(()=>{let e=class e extends Ai{constructor(n){super(n),this.delegate=C(xm,{optional:!0})}supports(n){return this.delegate?this.delegate.supports(n):!1}addEventListener(n,i,o){return this.delegate.addEventListener(n,i,o)}removeEventListener(n,i,o){return this.delegate.removeEventListener(n,i,o)}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})(),og=["alt","control","meta","shift"],jE={"\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"},UE={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},BE=(()=>{let e=class e extends Ai{constructor(n){super(n)}supports(n){return e.parseEventName(n)!=null}addEventListener(n,i,o){let s=e.parseEventName(i),a=e.eventCallback(s.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Mt().onAndCancel(n,s.domEventName,a))}static parseEventName(n){let i=n.toLowerCase().split("."),o=i.shift();if(i.length===0||!(o==="keydown"||o==="keyup"))return null;let s=e._normalizeKey(i.pop()),a="",l=i.indexOf("code");if(l>-1&&(i.splice(l,1),a="code."),og.forEach(h=>{let m=i.indexOf(h);m>-1&&(i.splice(m,1),a+=h+".")}),a+=s,i.length!=0||s.length===0)return null;let d={};return d.domEventName=o,d.fullKey=a,d}static matchEventFullKeyCode(n,i){let o=jE[n.key]||n.key,s="";return i.indexOf("code.")>-1&&(o=n.code,s="code."),o==null||!o?!1:(o=o.toLowerCase(),o===" "?o="space":o==="."&&(o="dot"),og.forEach(a=>{if(a!==o){let l=UE[a];l(n)&&(s+=a+".")}}),s+=o,s===i)}static eventCallback(n,i,o){return s=>{e.matchEventFullKeyCode(s,n)&&o.runGuarded(()=>i(s))}}static _normalizeKey(n){return n==="esc"?"escape":n}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function ug(t,e){return Im(b({rootComponent:t},$E(e)))}function $E(t){return{appProviders:[...dg,...t?.providers??[]],platformProviders:qE}}function HE(){ju.makeCurrent()}function GE(){return new Pt}function zE(){return Ep(document),document}var qE=[{provide:It,useValue:Tu},{provide:Wc,useValue:HE,multi:!0},{provide:we,useFactory:zE,deps:[]}];var WE=new x(""),ZE=[{provide:bi,useClass:Uu,deps:[]},{provide:mu,useClass:zs,deps:[ee,qs,bi]},{provide:zs,useClass:zs,deps:[ee,qs,bi]}],dg=[{provide:Is,useValue:"root"},{provide:Pt,useFactory:GE,deps:[]},{provide:oa,useClass:LE,multi:!0,deps:[we,ee,It]},{provide:oa,useClass:BE,multi:!0,deps:[we]},{provide:oa,useClass:VE,multi:!0},rg,ag,sg,{provide:Ir,useExisting:rg},{provide:Rr,useClass:AE,deps:[]},[]],fg=(()=>{let e=class e{constructor(n){}static withServerTransition(n){return{ngModule:e,providers:[{provide:Ps,useValue:n.appId}]}}};e.\u0275fac=function(i){return new(i||e)(I(WE,12))},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({providers:[...dg,...ZE],imports:[Vm,_m]});let t=e;return t})();var hg=(()=>{let e=class e{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}};e.\u0275fac=function(i){return new(i||e)(I(we))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();var $="primary",qi=Symbol("RouteTitle"),Wu=class{constructor(e){this.params=e||{}}has(e){return Object.prototype.hasOwnProperty.call(this.params,e)}get(e){if(this.has(e)){let r=this.params[e];return Array.isArray(r)?r[0]:r}return null}getAll(e){if(this.has(e)){let r=this.params[e];return Array.isArray(r)?r:[r]}return[]}get keys(){return Object.keys(this.params)}};function Ur(t){return new Wu(t)}function QE(t,e,r){let n=r.path.split("/");if(n.length>t.length||r.pathMatch==="full"&&(e.hasChildren()||n.lengthn[o]===i)}else return t===e}function Ig(t){return t.length>0?t[t.length-1]:null}function Cn(t){return dl(t)?t:Hn(t)?re(Promise.resolve(t)):R(t)}var JE={exact:Sg,subset:Mg},xg={exact:XE,subset:e_,ignored:()=>!0};function pg(t,e,r){return JE[r.paths](t.root,e.root,r.matrixParams)&&xg[r.queryParams](t.queryParams,e.queryParams)&&!(r.fragment==="exact"&&t.fragment!==e.fragment)}function XE(t,e){return Tt(t,e)}function Sg(t,e,r){if(!zn(t.segments,e.segments)||!ca(t.segments,e.segments,r)||t.numberOfChildren!==e.numberOfChildren)return!1;for(let n in e.children)if(!t.children[n]||!Sg(t.children[n],e.children[n],r))return!1;return!0}function e_(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(r=>_g(t[r],e[r]))}function Mg(t,e,r){return Tg(t,e,e.segments,r)}function Tg(t,e,r,n){if(t.segments.length>r.length){let i=t.segments.slice(0,r.length);return!(!zn(i,r)||e.hasChildren()||!ca(i,r,n))}else if(t.segments.length===r.length){if(!zn(t.segments,r)||!ca(t.segments,r,n))return!1;for(let i in e.children)if(!t.children[i]||!Mg(t.children[i],e.children[i],n))return!1;return!0}else{let i=r.slice(0,t.segments.length),o=r.slice(t.segments.length);return!zn(t.segments,i)||!ca(t.segments,i,n)||!t.children[$]?!1:Tg(t.children[$],e,o,n)}}function ca(t,e,r){return e.every((n,i)=>xg[r](t[i].parameters,n.parameters))}var Qt=class{constructor(e=new J([],{}),r={},n=null){this.root=e,this.queryParams=r,this.fragment=n}get queryParamMap(){return this._queryParamMap??=Ur(this.queryParams),this._queryParamMap}toString(){return r_.serialize(this)}},J=class{constructor(e,r){this.segments=e,this.children=r,this.parent=null,Object.values(r).forEach(n=>n.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return ua(this)}},Gn=class{constructor(e,r){this.path=e,this.parameters=r}get parameterMap(){return this._parameterMap??=Ur(this.parameters),this._parameterMap}toString(){return Ng(this)}};function t_(t,e){return zn(t,e)&&t.every((r,n)=>Tt(r.parameters,e[n].parameters))}function zn(t,e){return t.length!==e.length?!1:t.every((r,n)=>r.path===e[n].path)}function n_(t,e){let r=[];return Object.entries(t.children).forEach(([n,i])=>{n===$&&(r=r.concat(e(i,n)))}),Object.entries(t.children).forEach(([n,i])=>{n!==$&&(r=r.concat(e(i,n)))}),r}var Wi=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>new Br,providedIn:"root"});let t=e;return t})(),Br=class{parse(e){let r=new Qu(e);return new Qt(r.parseRootSegment(),r.parseQueryParams(),r.parseFragment())}serialize(e){let r=`/${Oi(e.root,!0)}`,n=s_(e.queryParams),i=typeof e.fragment=="string"?`#${i_(e.fragment)}`:"";return`${r}${n}${i}`}},r_=new Br;function ua(t){return t.segments.map(e=>Ng(e)).join("/")}function Oi(t,e){if(!t.hasChildren())return ua(t);if(e){let r=t.children[$]?Oi(t.children[$],!1):"",n=[];return Object.entries(t.children).forEach(([i,o])=>{i!==$&&n.push(`${i}:${Oi(o,!1)}`)}),n.length>0?`${r}(${n.join("//")})`:r}else{let r=n_(t,(n,i)=>i===$?[Oi(t.children[$],!1)]:[`${i}:${Oi(n,!1)}`]);return Object.keys(t.children).length===1&&t.children[$]!=null?`${ua(t)}/${r[0]}`:`${ua(t)}/(${r.join("//")})`}}function Ag(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function aa(t){return Ag(t).replace(/%3B/gi,";")}function i_(t){return encodeURI(t)}function Yu(t){return Ag(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function da(t){return decodeURIComponent(t)}function mg(t){return da(t.replace(/\+/g,"%20"))}function Ng(t){return`${Yu(t.path)}${o_(t.parameters)}`}function o_(t){return Object.entries(t).map(([e,r])=>`;${Yu(e)}=${Yu(r)}`).join("")}function s_(t){let e=Object.entries(t).map(([r,n])=>Array.isArray(n)?n.map(i=>`${aa(r)}=${aa(i)}`).join("&"):`${aa(r)}=${aa(n)}`).filter(r=>r);return e.length?`?${e.join("&")}`:""}var a_=/^[^\/()?;#]+/;function Hu(t){let e=t.match(a_);return e?e[0]:""}var l_=/^[^\/()?;=#]+/;function c_(t){let e=t.match(l_);return e?e[0]:""}var u_=/^[^=?&#]+/;function d_(t){let e=t.match(u_);return e?e[0]:""}var f_=/^[^&#]+/;function h_(t){let e=t.match(f_);return e?e[0]:""}var Qu=class{constructor(e){this.url=e,this.remaining=e}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new J([],{}):new J([],this.parseChildren())}parseQueryParams(){let e={};if(this.consumeOptional("?"))do this.parseQueryParam(e);while(this.consumeOptional("&"));return e}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let e=[];for(this.peekStartsWith("(")||e.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),e.push(this.parseSegment());let r={};this.peekStartsWith("/(")&&(this.capture("/"),r=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(e.length>0||Object.keys(r).length>0)&&(n[$]=new J(e,r)),n}parseSegment(){let e=Hu(this.remaining);if(e===""&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(e),new Gn(da(e),this.parseMatrixParams())}parseMatrixParams(){let e={};for(;this.consumeOptional(";");)this.parseParam(e);return e}parseParam(e){let r=c_(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){let i=Hu(this.remaining);i&&(n=i,this.capture(n))}e[da(r)]=da(n)}parseQueryParam(e){let r=d_(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){let s=h_(this.remaining);s&&(n=s,this.capture(n))}let i=mg(r),o=mg(n);if(e.hasOwnProperty(i)){let s=e[i];Array.isArray(s)||(s=[s],e[i]=s),s.push(o)}else e[i]=o}parseParens(e){let r={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let n=Hu(this.remaining),i=this.remaining[n.length];if(i!=="/"&&i!==")"&&i!==";")throw new M(4010,!1);let o;n.indexOf(":")>-1?(o=n.slice(0,n.indexOf(":")),this.capture(o),this.capture(":")):e&&(o=$);let s=this.parseChildren();r[o]=Object.keys(s).length===1?s[$]:new J([],s),this.consumeOptional("//")}return r}peekStartsWith(e){return this.remaining.startsWith(e)}consumeOptional(e){return this.peekStartsWith(e)?(this.remaining=this.remaining.substring(e.length),!0):!1}capture(e){if(!this.consumeOptional(e))throw new M(4011,!1)}};function Rg(t){return t.segments.length>0?new J([],{[$]:t}):t}function Og(t){let e={};for(let[n,i]of Object.entries(t.children)){let o=Og(i);if(n===$&&o.segments.length===0&&o.hasChildren())for(let[s,a]of Object.entries(o.children))e[s]=a;else(o.segments.length>0||o.hasChildren())&&(e[n]=o)}let r=new J(t.segments,e);return p_(r)}function p_(t){if(t.numberOfChildren===1&&t.children[$]){let e=t.children[$];return new J(t.segments.concat(e.segments),e.children)}return t}function qn(t){return t instanceof Qt}function m_(t,e,r=null,n=null){let i=kg(t);return Pg(i,e,r,n)}function kg(t){let e;function r(o){let s={};for(let l of o.children){let d=r(l);s[l.outlet]=d}let a=new J(o.url,s);return o===t&&(e=a),a}let n=r(t.root),i=Rg(n);return e??i}function Pg(t,e,r,n){let i=t;for(;i.parent;)i=i.parent;if(e.length===0)return Gu(i,i,i,r,n);let o=g_(e);if(o.toRoot())return Gu(i,i,new J([],{}),r,n);let s=v_(o,i,t),a=s.processChildren?Fi(s.segmentGroup,s.index,o.commands):Lg(s.segmentGroup,s.index,o.commands);return Gu(i,s.segmentGroup,a,r,n)}function fa(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function ji(t){return typeof t=="object"&&t!=null&&t.outlets}function Gu(t,e,r,n,i){let o={};n&&Object.entries(n).forEach(([l,d])=>{o[l]=Array.isArray(d)?d.map(h=>`${h}`):`${d}`});let s;t===e?s=r:s=Fg(t,e,r);let a=Rg(Og(s));return new Qt(a,o,i)}function Fg(t,e,r){let n={};return Object.entries(t.children).forEach(([i,o])=>{o===e?n[i]=r:n[i]=Fg(o,e,r)}),new J(t.segments,n)}var ha=class{constructor(e,r,n){if(this.isAbsolute=e,this.numberOfDoubleDots=r,this.commands=n,e&&n.length>0&&fa(n[0]))throw new M(4003,!1);let i=n.find(ji);if(i&&i!==Ig(n))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function g_(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new ha(!0,0,t);let e=0,r=!1,n=t.reduce((i,o,s)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let a={};return Object.entries(o.outlets).forEach(([l,d])=>{a[l]=typeof d=="string"?d.split("/"):d}),[...i,{outlets:a}]}if(o.segmentPath)return[...i,o.segmentPath]}return typeof o!="string"?[...i,o]:s===0?(o.split("/").forEach((a,l)=>{l==0&&a==="."||(l==0&&a===""?r=!0:a===".."?e++:a!=""&&i.push(a))}),i):[...i,o]},[]);return new ha(r,e,n)}var Lr=class{constructor(e,r,n){this.segmentGroup=e,this.processChildren=r,this.index=n}};function v_(t,e,r){if(t.isAbsolute)return new Lr(e,!0,0);if(!r)return new Lr(e,!1,NaN);if(r.parent===null)return new Lr(r,!0,0);let n=fa(t.commands[0])?0:1,i=r.segments.length-1+n;return y_(r,i,t.numberOfDoubleDots)}function y_(t,e,r){let n=t,i=e,o=r;for(;o>i;){if(o-=i,n=n.parent,!n)throw new M(4005,!1);i=n.segments.length}return new Lr(n,!1,i-o)}function D_(t){return ji(t[0])?t[0].outlets:{[$]:t}}function Lg(t,e,r){if(t??=new J([],{}),t.segments.length===0&&t.hasChildren())return Fi(t,e,r);let n=C_(t,e,r),i=r.slice(n.commandIndex);if(n.match&&n.pathIndexo!==$)&&t.children[$]&&t.numberOfChildren===1&&t.children[$].segments.length===0){let o=Fi(t.children[$],e,r);return new J(t.segments,o.children)}return Object.entries(n).forEach(([o,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(i[o]=Lg(t.children[o],e,s))}),Object.entries(t.children).forEach(([o,s])=>{n[o]===void 0&&(i[o]=s)}),new J(t.segments,i)}}function C_(t,e,r){let n=0,i=e,o={match:!1,pathIndex:0,commandIndex:0};for(;i=r.length)return o;let s=t.segments[i],a=r[n];if(ji(a))break;let l=`${a}`,d=n0&&l===void 0)break;if(l&&d&&typeof d=="object"&&d.outlets===void 0){if(!vg(l,d,s))return o;n+=2}else{if(!vg(l,{},s))return o;n++}i++}return{match:!0,pathIndex:i,commandIndex:n}}function Ku(t,e,r){let n=t.segments.slice(0,e),i=0;for(;i{typeof n=="string"&&(n=[n]),n!==null&&(e[r]=Ku(new J([],{}),0,n))}),e}function gg(t){let e={};return Object.entries(t).forEach(([r,n])=>e[r]=`${n}`),e}function vg(t,e,r){return t==r.path&&Tt(e,r.parameters)}var Li="imperative",Ie=function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t}(Ie||{}),at=class{constructor(e,r){this.id=e,this.url=r}},$r=class extends at{constructor(e,r,n="imperative",i=null){super(e,r),this.type=Ie.NavigationStart,this.navigationTrigger=n,this.restoredState=i}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},Ye=class extends at{constructor(e,r,n){super(e,r),this.urlAfterRedirects=n,this.type=Ie.NavigationEnd}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},Ze=function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t}(Ze||{}),pa=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(pa||{}),Yt=class extends at{constructor(e,r,n,i){super(e,r),this.reason=n,this.code=i,this.type=Ie.NavigationCancel}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},Dn=class extends at{constructor(e,r,n,i){super(e,r),this.reason=n,this.code=i,this.type=Ie.NavigationSkipped}},Ui=class extends at{constructor(e,r,n,i){super(e,r),this.error=n,this.target=i,this.type=Ie.NavigationError}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},ma=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.RoutesRecognized}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Ju=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.GuardsCheckStart}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Xu=class extends at{constructor(e,r,n,i,o){super(e,r),this.urlAfterRedirects=n,this.state=i,this.shouldActivate=o,this.type=Ie.GuardsCheckEnd}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},ed=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.ResolveStart}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},td=class extends at{constructor(e,r,n,i){super(e,r),this.urlAfterRedirects=n,this.state=i,this.type=Ie.ResolveEnd}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},nd=class{constructor(e){this.route=e,this.type=Ie.RouteConfigLoadStart}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},rd=class{constructor(e){this.route=e,this.type=Ie.RouteConfigLoadEnd}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},id=class{constructor(e){this.snapshot=e,this.type=Ie.ChildActivationStart}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},od=class{constructor(e){this.snapshot=e,this.type=Ie.ChildActivationEnd}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},sd=class{constructor(e){this.snapshot=e,this.type=Ie.ActivationStart}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ad=class{constructor(e){this.snapshot=e,this.type=Ie.ActivationEnd}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ga=class{constructor(e,r,n){this.routerEvent=e,this.position=r,this.anchor=n,this.type=Ie.Scroll}toString(){let e=this.position?`${this.position[0]}, ${this.position[1]}`:null;return`Scroll(anchor: '${this.anchor}', position: '${e}')`}},Bi=class{},Hr=class{constructor(e,r){this.url=e,this.navigationBehaviorOptions=r}};function b_(t,e){return t.providers&&!t._injector&&(t._injector=Bs(t.providers,e,`Route: ${t.path}`)),t._injector??e}function mt(t){return t.outlet||$}function E_(t,e){let r=t.filter(n=>mt(n)===e);return r.push(...t.filter(n=>mt(n)!==e)),r}function Zi(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let e=t.parent;e;e=e.parent){let r=e.routeConfig;if(r?._loadedInjector)return r._loadedInjector;if(r?._injector)return r._injector}return null}var ld=class{get injector(){return Zi(this.route?.snapshot)??this.rootInjector}set injector(e){}constructor(e){this.rootInjector=e,this.outlet=null,this.route=null,this.children=new Yi(this.rootInjector),this.attachRef=null}},Yi=(()=>{let e=class e{constructor(n){this.rootInjector=n,this.contexts=new Map}onChildOutletCreated(n,i){let o=this.getOrCreateContext(n);o.outlet=i,this.contexts.set(n,o)}onChildOutletDestroyed(n){let i=this.getContext(n);i&&(i.outlet=null,i.attachRef=null)}onOutletDeactivated(){let n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let i=this.getContext(n);return i||(i=new ld(this.rootInjector),this.contexts.set(n,i)),i}getContext(n){return this.contexts.get(n)||null}};e.\u0275fac=function(i){return new(i||e)(I(Pe))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),va=class{constructor(e){this._root=e}get root(){return this._root.value}parent(e){let r=this.pathFromRoot(e);return r.length>1?r[r.length-2]:null}children(e){let r=cd(e,this._root);return r?r.children.map(n=>n.value):[]}firstChild(e){let r=cd(e,this._root);return r&&r.children.length>0?r.children[0].value:null}siblings(e){let r=ud(e,this._root);return r.length<2?[]:r[r.length-2].children.map(i=>i.value).filter(i=>i!==e)}pathFromRoot(e){return ud(e,this._root).map(r=>r.value)}};function cd(t,e){if(t===e.value)return e;for(let r of e.children){let n=cd(t,r);if(n)return n}return null}function ud(t,e){if(t===e.value)return[e];for(let r of e.children){let n=ud(t,r);if(n.length)return n.unshift(e),n}return[]}var We=class{constructor(e,r){this.value=e,this.children=r}toString(){return`TreeNode(${this.value})`}};function Fr(t){let e={};return t&&t.children.forEach(r=>e[r.value.outlet]=r),e}var ya=class extends va{constructor(e,r){super(e),this.snapshot=r,Dd(this,e)}toString(){return this.snapshot.toString()}};function Vg(t){let e=__(t),r=new xe([new Gn("",{})]),n=new xe({}),i=new xe({}),o=new xe({}),s=new xe(""),a=new Kt(r,n,o,s,i,$,t,e.root);return a.snapshot=e.root,new ya(new We(a,[]),e)}function __(t){let e={},r={},n={},i="",o=new Vr([],e,n,i,r,$,t,null,{});return new Ca("",new We(o,[]))}var Kt=class{constructor(e,r,n,i,o,s,a,l){this.urlSubject=e,this.paramsSubject=r,this.queryParamsSubject=n,this.fragmentSubject=i,this.dataSubject=o,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(P(d=>d[qi]))??R(void 0),this.url=e,this.params=r,this.queryParams=n,this.fragment=i,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(P(e=>Ur(e))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(P(e=>Ur(e))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function Da(t,e,r="emptyOnly"){let n,{routeConfig:i}=t;return e!==null&&(r==="always"||i?.path===""||!e.component&&!e.routeConfig?.loadComponent)?n={params:b(b({},e.params),t.params),data:b(b({},e.data),t.data),resolve:b(b(b(b({},t.data),e.data),i?.data),t._resolvedData)}:n={params:b({},t.params),data:b({},t.data),resolve:b(b({},t.data),t._resolvedData??{})},i&&Ug(i)&&(n.resolve[qi]=i.title),n}var Vr=class{get title(){return this.data?.[qi]}constructor(e,r,n,i,o,s,a,l,d){this.url=e,this.params=r,this.queryParams=n,this.fragment=i,this.data=o,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=d}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=Ur(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Ur(this.queryParams),this._queryParamMap}toString(){let e=this.url.map(n=>n.toString()).join("/"),r=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${e}', path:'${r}')`}},Ca=class extends va{constructor(e,r){super(r),this.url=e,Dd(this,r)}toString(){return jg(this._root)}};function Dd(t,e){e.value._routerState=t,e.children.forEach(r=>Dd(t,r))}function jg(t){let e=t.children.length>0?` { ${t.children.map(jg).join(", ")} } `:"";return`${t.value}${e}`}function zu(t){if(t.snapshot){let e=t.snapshot,r=t._futureSnapshot;t.snapshot=r,Tt(e.queryParams,r.queryParams)||t.queryParamsSubject.next(r.queryParams),e.fragment!==r.fragment&&t.fragmentSubject.next(r.fragment),Tt(e.params,r.params)||t.paramsSubject.next(r.params),KE(e.url,r.url)||t.urlSubject.next(r.url),Tt(e.data,r.data)||t.dataSubject.next(r.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function dd(t,e){let r=Tt(t.params,e.params)&&t_(t.url,e.url),n=!t.parent!=!e.parent;return r&&!n&&(!t.parent||dd(t.parent,e.parent))}function Ug(t){return typeof t.title=="string"||t.title===null}var Cd=(()=>{let e=class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=$,this.activateEvents=new he,this.deactivateEvents=new he,this.attachEvents=new he,this.detachEvents=new he,this.parentContexts=C(Yi),this.location=C(pn),this.changeDetector=C(mn),this.inputBinder=C(Ia,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){let{firstChange:i,previousValue:o}=n.name;if(i)return;this.isTrackedInParentContexts(o)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(o)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(n){return this.parentContexts.getContext(n)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let n=this.parentContexts.getContext(this.name);n?.route&&(n.attachRef?this.attach(n.attachRef,n.route):this.activateWith(n.route,n.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new M(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new M(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new M(4012,!1);this.location.detach();let n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,i){this.activated=n,this._activatedRoute=i,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){let n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,i){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=n;let o=this.location,a=n.snapshot.component,l=this.parentContexts.getOrCreateContext(this.name).children,d=new fd(n,l,o.injector);this.activated=o.createComponent(a,{index:o.length,injector:d,environmentInjector:i}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}};e.\u0275fac=function(i){return new(i||e)},e.\u0275dir=ne({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Ut]});let t=e;return t})(),fd=class t{__ngOutletInjector(e){return new t(this.route,this.childContexts,e)}constructor(e,r,n){this.route=e,this.childContexts=r,this.parent=n}get(e,r){return e===Kt?this.route:e===Yi?this.childContexts:this.parent.get(e,r)}},Ia=new x(""),yg=(()=>{let e=class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(n){this.unsubscribeFromRouteData(n),this.subscribeToRouteData(n)}unsubscribeFromRouteData(n){this.outletDataSubscriptions.get(n)?.unsubscribe(),this.outletDataSubscriptions.delete(n)}subscribeToRouteData(n){let{activatedRoute:i}=n,o=ai([i.queryParams,i.params,i.data]).pipe(Ve(([s,a,l],d)=>(l=b(b(b({},s),a),l),d===0?R(l):Promise.resolve(l)))).subscribe(s=>{if(!n.isActivated||!n.activatedComponentRef||n.activatedRoute!==i||i.component===null){this.unsubscribeFromRouteData(n);return}let a=Sm(i.component);if(!a){this.unsubscribeFromRouteData(n);return}for(let{templateName:l}of a.inputs)n.activatedComponentRef.setInput(l,s[l])});this.outletDataSubscriptions.set(n,o)}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function I_(t,e,r){let n=$i(t,e._root,r?r._root:void 0);return new ya(n,e)}function $i(t,e,r){if(r&&t.shouldReuseRoute(e.value,r.value.snapshot)){let n=r.value;n._futureSnapshot=e.value;let i=x_(t,e,r);return new We(n,i)}else{if(t.shouldAttach(e.value)){let o=t.retrieve(e.value);if(o!==null){let s=o.route;return s.value._futureSnapshot=e.value,s.children=e.children.map(a=>$i(t,a)),s}}let n=S_(e.value),i=e.children.map(o=>$i(t,o));return new We(n,i)}}function x_(t,e,r){return e.children.map(n=>{for(let i of r.children)if(t.shouldReuseRoute(n.value,i.value.snapshot))return $i(t,n,i);return $i(t,n)})}function S_(t){return new Kt(new xe(t.url),new xe(t.params),new xe(t.queryParams),new xe(t.fragment),new xe(t.data),t.outlet,t.component,t)}var Hi=class{constructor(e,r){this.redirectTo=e,this.navigationBehaviorOptions=r}},Bg="ngNavigationCancelingError";function wa(t,e){let{redirectTo:r,navigationBehaviorOptions:n}=qn(e)?{redirectTo:e,navigationBehaviorOptions:void 0}:e,i=$g(!1,Ze.Redirect);return i.url=r,i.navigationBehaviorOptions=n,i}function $g(t,e){let r=new Error(`NavigationCancelingError: ${t||""}`);return r[Bg]=!0,r.cancellationCode=e,r}function M_(t){return Hg(t)&&qn(t.url)}function Hg(t){return!!t&&t[Bg]}var T_=(t,e,r,n)=>P(i=>(new hd(e,i.targetRouterState,i.currentRouterState,r,n).activate(t),i)),hd=class{constructor(e,r,n,i,o){this.routeReuseStrategy=e,this.futureState=r,this.currState=n,this.forwardEvent=i,this.inputBindingEnabled=o}activate(e){let r=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(r,n,e),zu(this.futureState.root),this.activateChildRoutes(r,n,e)}deactivateChildRoutes(e,r,n){let i=Fr(r);e.children.forEach(o=>{let s=o.value.outlet;this.deactivateRoutes(o,i[s],n),delete i[s]}),Object.values(i).forEach(o=>{this.deactivateRouteAndItsChildren(o,n)})}deactivateRoutes(e,r,n){let i=e.value,o=r?r.value:null;if(i===o)if(i.component){let s=n.getContext(i.outlet);s&&this.deactivateChildRoutes(e,r,s.children)}else this.deactivateChildRoutes(e,r,n);else o&&this.deactivateRouteAndItsChildren(r,n)}deactivateRouteAndItsChildren(e,r){e.value.component&&this.routeReuseStrategy.shouldDetach(e.value.snapshot)?this.detachAndStoreRouteSubtree(e,r):this.deactivateRouteAndOutlet(e,r)}detachAndStoreRouteSubtree(e,r){let n=r.getContext(e.value.outlet),i=n&&e.value.component?n.children:r,o=Fr(e);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,i);if(n&&n.outlet){let s=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(e.value.snapshot,{componentRef:s,route:e,contexts:a})}}deactivateRouteAndOutlet(e,r){let n=r.getContext(e.value.outlet),i=n&&e.value.component?n.children:r,o=Fr(e);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,i);n&&(n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated()),n.attachRef=null,n.route=null)}activateChildRoutes(e,r,n){let i=Fr(r);e.children.forEach(o=>{this.activateRoutes(o,i[o.value.outlet],n),this.forwardEvent(new ad(o.value.snapshot))}),e.children.length&&this.forwardEvent(new od(e.value.snapshot))}activateRoutes(e,r,n){let i=e.value,o=r?r.value:null;if(zu(i),i===o)if(i.component){let s=n.getOrCreateContext(i.outlet);this.activateChildRoutes(e,r,s.children)}else this.activateChildRoutes(e,r,n);else if(i.component){let s=n.getOrCreateContext(i.outlet);if(this.routeReuseStrategy.shouldAttach(i.snapshot)){let a=this.routeReuseStrategy.retrieve(i.snapshot);this.routeReuseStrategy.store(i.snapshot,null),s.children.onOutletReAttached(a.contexts),s.attachRef=a.componentRef,s.route=a.route.value,s.outlet&&s.outlet.attach(a.componentRef,a.route.value),zu(a.route.value),this.activateChildRoutes(e,null,s.children)}else s.attachRef=null,s.route=i,s.outlet&&s.outlet.activateWith(i,s.injector),this.activateChildRoutes(e,null,s.children)}else this.activateChildRoutes(e,null,n)}},ba=class{constructor(e){this.path=e,this.route=this.path[this.path.length-1]}},jr=class{constructor(e,r){this.component=e,this.route=r}};function A_(t,e,r){let n=t._root,i=e?e._root:null;return ki(n,i,r,[n.value])}function N_(t){let e=t.routeConfig?t.routeConfig.canActivateChild:null;return!e||e.length===0?null:{node:t,guards:e}}function zr(t,e){let r=Symbol(),n=e.get(t,r);return n===r?typeof t=="function"&&!fh(t)?t:e.get(t):n}function ki(t,e,r,n,i={canDeactivateChecks:[],canActivateChecks:[]}){let o=Fr(e);return t.children.forEach(s=>{R_(s,o[s.value.outlet],r,n.concat([s.value]),i),delete o[s.value.outlet]}),Object.entries(o).forEach(([s,a])=>Vi(a,r.getContext(s),i)),i}function R_(t,e,r,n,i={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,s=e?e.value:null,a=r?r.getContext(t.value.outlet):null;if(s&&o.routeConfig===s.routeConfig){let l=O_(s,o,o.routeConfig.runGuardsAndResolvers);l?i.canActivateChecks.push(new ba(n)):(o.data=s.data,o._resolvedData=s._resolvedData),o.component?ki(t,e,a?a.children:null,n,i):ki(t,e,r,n,i),l&&a&&a.outlet&&a.outlet.isActivated&&i.canDeactivateChecks.push(new jr(a.outlet.component,s))}else s&&Vi(e,a,i),i.canActivateChecks.push(new ba(n)),o.component?ki(t,null,a?a.children:null,n,i):ki(t,null,r,n,i);return i}function O_(t,e,r){if(typeof r=="function")return r(t,e);switch(r){case"pathParamsChange":return!zn(t.url,e.url);case"pathParamsOrQueryParamsChange":return!zn(t.url,e.url)||!Tt(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!dd(t,e)||!Tt(t.queryParams,e.queryParams);case"paramsChange":default:return!dd(t,e)}}function Vi(t,e,r){let n=Fr(t),i=t.value;Object.entries(n).forEach(([o,s])=>{i.component?e?Vi(s,e.children.getContext(o),r):Vi(s,null,r):Vi(s,e,r)}),i.component?e&&e.outlet&&e.outlet.isActivated?r.canDeactivateChecks.push(new jr(e.outlet.component,i)):r.canDeactivateChecks.push(new jr(null,i)):r.canDeactivateChecks.push(new jr(null,i))}function Qi(t){return typeof t=="function"}function k_(t){return typeof t=="boolean"}function P_(t){return t&&Qi(t.canLoad)}function F_(t){return t&&Qi(t.canActivate)}function L_(t){return t&&Qi(t.canActivateChild)}function V_(t){return t&&Qi(t.canDeactivate)}function j_(t){return t&&Qi(t.canMatch)}function Gg(t){return t instanceof Nt||t?.name==="EmptyError"}var la=Symbol("INITIAL_VALUE");function Gr(){return Ve(t=>ai(t.map(e=>e.pipe(Ot(1),gl(la)))).pipe(P(e=>{for(let r of e)if(r!==!0){if(r===la)return la;if(r===!1||U_(r))return r}return!0}),Se(e=>e!==la),Ot(1)))}function U_(t){return qn(t)||t instanceof Hi}function B_(t,e){return fe(r=>{let{targetSnapshot:n,currentSnapshot:i,guards:{canActivateChecks:o,canDeactivateChecks:s}}=r;return s.length===0&&o.length===0?R(W(b({},r),{guardsResult:!0})):$_(s,n,i,t).pipe(fe(a=>a&&k_(a)?H_(n,o,t,e):R(a)),P(a=>W(b({},r),{guardsResult:a})))})}function $_(t,e,r,n){return re(t).pipe(fe(i=>Z_(i.component,i.route,r,e,n)),vt(i=>i!==!0,!0))}function H_(t,e,r,n){return re(e).pipe(Rt(i=>lr(z_(i.route.parent,n),G_(i.route,n),W_(t,i.path,r),q_(t,i.route,r))),vt(i=>i!==!0,!0))}function G_(t,e){return t!==null&&e&&e(new sd(t)),R(!0)}function z_(t,e){return t!==null&&e&&e(new id(t)),R(!0)}function q_(t,e,r){let n=e.routeConfig?e.routeConfig.canActivate:null;if(!n||n.length===0)return R(!0);let i=n.map(o=>Fo(()=>{let s=Zi(e)??r,a=zr(o,s),l=F_(a)?a.canActivate(e,t):it(s,()=>a(e,t));return Cn(l).pipe(vt())}));return R(i).pipe(Gr())}function W_(t,e,r){let n=e[e.length-1],o=e.slice(0,e.length-1).reverse().map(s=>N_(s)).filter(s=>s!==null).map(s=>Fo(()=>{let a=s.guards.map(l=>{let d=Zi(s.node)??r,h=zr(l,d),m=L_(h)?h.canActivateChild(n,t):it(d,()=>h(n,t));return Cn(m).pipe(vt())});return R(a).pipe(Gr())}));return R(o).pipe(Gr())}function Z_(t,e,r,n,i){let o=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!o||o.length===0)return R(!0);let s=o.map(a=>{let l=Zi(e)??i,d=zr(a,l),h=V_(d)?d.canDeactivate(t,e,r,n):it(l,()=>d(t,e,r,n));return Cn(h).pipe(vt())});return R(s).pipe(Gr())}function Y_(t,e,r,n){let i=e.canLoad;if(i===void 0||i.length===0)return R(!0);let o=i.map(s=>{let a=zr(s,t),l=P_(a)?a.canLoad(e,r):it(t,()=>a(e,r));return Cn(l)});return R(o).pipe(Gr(),zg(n))}function zg(t){return al(Ee(e=>{if(typeof e!="boolean")throw wa(t,e)}),P(e=>e===!0))}function Q_(t,e,r,n){let i=e.canMatch;if(!i||i.length===0)return R(!0);let o=i.map(s=>{let a=zr(s,t),l=j_(a)?a.canMatch(e,r):it(t,()=>a(e,r));return Cn(l)});return R(o).pipe(Gr(),zg(n))}var Gi=class{constructor(e){this.segmentGroup=e||null}},zi=class extends Error{constructor(e){super(),this.urlTree=e}};function Pr(t){return ar(new Gi(t))}function K_(t){return ar(new M(4e3,!1))}function J_(t){return ar($g(!1,Ze.GuardRejected))}var pd=class{constructor(e,r){this.urlSerializer=e,this.urlTree=r}lineralizeSegments(e,r){let n=[],i=r.root;for(;;){if(n=n.concat(i.segments),i.numberOfChildren===0)return R(n);if(i.numberOfChildren>1||!i.children[$])return K_(`${e.redirectTo}`);i=i.children[$]}}applyRedirectCommands(e,r,n,i,o){if(typeof r!="string"){let a=r,{queryParams:l,fragment:d,routeConfig:h,url:m,outlet:v,params:y,data:w,title:U}=i,N=it(o,()=>a({params:y,data:w,queryParams:l,fragment:d,routeConfig:h,url:m,outlet:v,title:U}));if(N instanceof Qt)throw new zi(N);r=N}let s=this.applyRedirectCreateUrlTree(r,this.urlSerializer.parse(r),e,n);if(r[0]==="/")throw new zi(s);return s}applyRedirectCreateUrlTree(e,r,n,i){let o=this.createSegmentGroup(e,r.root,n,i);return new Qt(o,this.createQueryParams(r.queryParams,this.urlTree.queryParams),r.fragment)}createQueryParams(e,r){let n={};return Object.entries(e).forEach(([i,o])=>{if(typeof o=="string"&&o[0]===":"){let a=o.substring(1);n[i]=r[a]}else n[i]=o}),n}createSegmentGroup(e,r,n,i){let o=this.createSegments(e,r.segments,n,i),s={};return Object.entries(r.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(e,l,n,i)}),new J(o,s)}createSegments(e,r,n,i){return r.map(o=>o.path[0]===":"?this.findPosParam(e,o,i):this.findOrReturn(o,n))}findPosParam(e,r,n){let i=n[r.path.substring(1)];if(!i)throw new M(4001,!1);return i}findOrReturn(e,r){let n=0;for(let i of r){if(i.path===e.path)return r.splice(n),i;n++}return e}},md={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function X_(t,e,r,n,i){let o=qg(t,e,r);return o.matched?(n=b_(e,n),Q_(n,e,r,i).pipe(P(s=>s===!0?o:b({},md)))):R(o)}function qg(t,e,r){if(e.path==="**")return eI(r);if(e.path==="")return e.pathMatch==="full"&&(t.hasChildren()||r.length>0)?b({},md):{matched:!0,consumedSegments:[],remainingSegments:r,parameters:{},positionalParamSegments:{}};let i=(e.matcher||QE)(r,t,e);if(!i)return b({},md);let o={};Object.entries(i.posParams??{}).forEach(([a,l])=>{o[a]=l.path});let s=i.consumed.length>0?b(b({},o),i.consumed[i.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:i.consumed,remainingSegments:r.slice(i.consumed.length),parameters:s,positionalParamSegments:i.posParams??{}}}function eI(t){return{matched:!0,parameters:t.length>0?Ig(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function Dg(t,e,r,n){return r.length>0&&rI(t,r,n)?{segmentGroup:new J(e,nI(n,new J(r,t.children))),slicedSegments:[]}:r.length===0&&iI(t,r,n)?{segmentGroup:new J(t.segments,tI(t,r,n,t.children)),slicedSegments:r}:{segmentGroup:new J(t.segments,t.children),slicedSegments:r}}function tI(t,e,r,n){let i={};for(let o of r)if(xa(t,e,o)&&!n[mt(o)]){let s=new J([],{});i[mt(o)]=s}return b(b({},n),i)}function nI(t,e){let r={};r[$]=e;for(let n of t)if(n.path===""&&mt(n)!==$){let i=new J([],{});r[mt(n)]=i}return r}function rI(t,e,r){return r.some(n=>xa(t,e,n)&&mt(n)!==$)}function iI(t,e,r){return r.some(n=>xa(t,e,n))}function xa(t,e,r){return(t.hasChildren()||e.length>0)&&r.pathMatch==="full"?!1:r.path===""}function oI(t,e,r){return e.length===0&&!t.children[r]}var gd=class{};function sI(t,e,r,n,i,o,s="emptyOnly"){return new vd(t,e,r,n,i,s,o).recognize()}var aI=31,vd=class{constructor(e,r,n,i,o,s,a){this.injector=e,this.configLoader=r,this.rootComponentType=n,this.config=i,this.urlTree=o,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new pd(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(e){return new M(4002,`'${e.segmentGroup}'`)}recognize(){let e=Dg(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(e).pipe(P(({children:r,rootSnapshot:n})=>{let i=new We(n,r),o=new Ca("",i),s=m_(n,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(s),{state:o,tree:s}}))}match(e){let r=new Vr([],Object.freeze({}),Object.freeze(b({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),$,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,e,$,r).pipe(P(n=>({children:n,rootSnapshot:r})),tn(n=>{if(n instanceof zi)return this.urlTree=n.urlTree,this.match(n.urlTree.root);throw n instanceof Gi?this.noMatchError(n):n}))}processSegmentGroup(e,r,n,i,o){return n.segments.length===0&&n.hasChildren()?this.processChildren(e,r,n,o):this.processSegment(e,r,n,n.segments,i,!0,o).pipe(P(s=>s instanceof We?[s]:[]))}processChildren(e,r,n,i){let o=[];for(let s of Object.keys(n.children))s==="primary"?o.unshift(s):o.push(s);return re(o).pipe(Rt(s=>{let a=n.children[s],l=E_(r,s);return this.processSegmentGroup(e,l,a,s,i)}),ml((s,a)=>(s.push(...a),s)),nn(null),pl(),fe(s=>{if(s===null)return Pr(n);let a=Wg(s);return lI(a),R(a)}))}processSegment(e,r,n,i,o,s,a){return re(r).pipe(Rt(l=>this.processSegmentAgainstRoute(l._injector??e,r,l,n,i,o,s,a).pipe(tn(d=>{if(d instanceof Gi)return R(null);throw d}))),vt(l=>!!l),tn(l=>{if(Gg(l))return oI(n,i,o)?R(new gd):Pr(n);throw l}))}processSegmentAgainstRoute(e,r,n,i,o,s,a,l){return mt(n)!==s&&(s===$||!xa(i,o,n))?Pr(i):n.redirectTo===void 0?this.matchSegmentAgainstRoute(e,i,n,o,s,l):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(e,i,r,n,o,s,l):Pr(i)}expandSegmentAgainstRouteUsingRedirect(e,r,n,i,o,s,a){let{matched:l,parameters:d,consumedSegments:h,positionalParamSegments:m,remainingSegments:v}=qg(r,i,o);if(!l)return Pr(r);typeof i.redirectTo=="string"&&i.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>aI&&(this.allowRedirects=!1));let y=new Vr(o,d,Object.freeze(b({},this.urlTree.queryParams)),this.urlTree.fragment,Cg(i),mt(i),i.component??i._loadedComponent??null,i,wg(i)),w=Da(y,a,this.paramsInheritanceStrategy);y.params=Object.freeze(w.params),y.data=Object.freeze(w.data);let U=this.applyRedirects.applyRedirectCommands(h,i.redirectTo,m,y,e);return this.applyRedirects.lineralizeSegments(i,U).pipe(fe(N=>this.processSegment(e,n,r,N.concat(v),s,!1,a)))}matchSegmentAgainstRoute(e,r,n,i,o,s){let a=X_(r,n,i,e,this.urlSerializer);return n.path==="**"&&(r.children={}),a.pipe(Ve(l=>l.matched?(e=n._injector??e,this.getChildConfig(e,n,i).pipe(Ve(({routes:d})=>{let h=n._loadedInjector??e,{parameters:m,consumedSegments:v,remainingSegments:y}=l,w=new Vr(v,m,Object.freeze(b({},this.urlTree.queryParams)),this.urlTree.fragment,Cg(n),mt(n),n.component??n._loadedComponent??null,n,wg(n)),U=Da(w,s,this.paramsInheritanceStrategy);w.params=Object.freeze(U.params),w.data=Object.freeze(U.data);let{segmentGroup:N,slicedSegments:T}=Dg(r,v,y,d);if(T.length===0&&N.hasChildren())return this.processChildren(h,d,N,w).pipe(P(pe=>new We(w,pe)));if(d.length===0&&T.length===0)return R(new We(w,[]));let oe=mt(n)===o;return this.processSegment(h,d,N,T,oe?$:o,!0,w).pipe(P(pe=>new We(w,pe instanceof We?[pe]:[])))}))):Pr(r)))}getChildConfig(e,r,n){return r.children?R({routes:r.children,injector:e}):r.loadChildren?r._loadedRoutes!==void 0?R({routes:r._loadedRoutes,injector:r._loadedInjector}):Y_(e,r,n,this.urlSerializer).pipe(fe(i=>i?this.configLoader.loadChildren(e,r).pipe(Ee(o=>{r._loadedRoutes=o.routes,r._loadedInjector=o.injector})):J_(r))):R({routes:[],injector:e})}};function lI(t){t.sort((e,r)=>e.value.outlet===$?-1:r.value.outlet===$?1:e.value.outlet.localeCompare(r.value.outlet))}function cI(t){let e=t.value.routeConfig;return e&&e.path===""}function Wg(t){let e=[],r=new Set;for(let n of t){if(!cI(n)){e.push(n);continue}let i=e.find(o=>n.value.routeConfig===o.value.routeConfig);i!==void 0?(i.children.push(...n.children),r.add(i)):e.push(n)}for(let n of r){let i=Wg(n.children);e.push(new We(n.value,i))}return e.filter(n=>!r.has(n))}function Cg(t){return t.data||{}}function wg(t){return t.resolve||{}}function uI(t,e,r,n,i,o){return fe(s=>sI(t,e,r,n,s.extractedUrl,i,o).pipe(P(({state:a,tree:l})=>W(b({},s),{targetSnapshot:a,urlAfterRedirects:l}))))}function dI(t,e){return fe(r=>{let{targetSnapshot:n,guards:{canActivateChecks:i}}=r;if(!i.length)return R(r);let o=new Set(i.map(l=>l.route)),s=new Set;for(let l of o)if(!s.has(l))for(let d of Zg(l))s.add(d);let a=0;return re(s).pipe(Rt(l=>o.has(l)?fI(l,n,t,e):(l.data=Da(l,l.parent,t).resolve,R(void 0))),Ee(()=>a++),cr(1),fe(l=>a===s.size?R(r):He))})}function Zg(t){let e=t.children.map(r=>Zg(r)).flat();return[t,...e]}function fI(t,e,r,n){let i=t.routeConfig,o=t._resolve;return i?.title!==void 0&&!Ug(i)&&(o[qi]=i.title),hI(o,t,e,n).pipe(P(s=>(t._resolvedData=s,t.data=Da(t,t.parent,r).resolve,null)))}function hI(t,e,r,n){let i=Zu(t);if(i.length===0)return R({});let o={};return re(i).pipe(fe(s=>pI(t[s],e,r,n).pipe(vt(),Ee(a=>{if(a instanceof Hi)throw wa(new Br,a);o[s]=a}))),cr(1),hl(o),tn(s=>Gg(s)?He:ar(s)))}function pI(t,e,r,n){let i=Zi(e)??n,o=zr(t,i),s=o.resolve?o.resolve(e,r):it(i,()=>o(e,r));return Cn(s)}function qu(t){return Ve(e=>{let r=t(e);return r?re(r).pipe(P(()=>e)):R(e)})}var Yg=(()=>{let e=class e{buildTitle(n){let i,o=n.root;for(;o!==void 0;)i=this.getResolvedTitleForRoute(o)??i,o=o.children.find(s=>s.outlet===$);return i}getResolvedTitleForRoute(n){return n.data[qi]}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(mI),providedIn:"root"});let t=e;return t})(),mI=(()=>{let e=class e extends Yg{constructor(n){super(),this.title=n}updateTitle(n){let i=this.buildTitle(n);i!==void 0&&this.title.setTitle(i)}};e.\u0275fac=function(i){return new(i||e)(I(hg))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Ki=new x("",{providedIn:"root",factory:()=>({})}),gI=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["ng-component"]],standalone:!0,features:[de],decls:1,vars:0,template:function(i,o){i&1&&p(0,"router-outlet")},dependencies:[Cd],encapsulation:2});let t=e;return t})();function wd(t){let e=t.children&&t.children.map(wd),r=e?W(b({},t),{children:e}):b({},t);return!r.component&&!r.loadComponent&&(e||r.loadChildren)&&r.outlet&&r.outlet!==$&&(r.component=gI),r}var Ea=new x(""),bd=(()=>{let e=class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=C(Ys)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return R(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);let i=Cn(n.loadComponent()).pipe(P(Qg),Ee(s=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=s}),rn(()=>{this.componentLoaders.delete(n)})),o=new sr(i,()=>new be).pipe(or());return this.componentLoaders.set(n,o),o}loadChildren(n,i){if(this.childrenLoaders.get(i))return this.childrenLoaders.get(i);if(i._loadedRoutes)return R({routes:i._loadedRoutes,injector:i._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(i);let s=vI(i,this.compiler,n,this.onLoadEndListener).pipe(rn(()=>{this.childrenLoaders.delete(i)})),a=new sr(s,()=>new be).pipe(or());return this.childrenLoaders.set(i,a),a}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function vI(t,e,r,n){return Cn(t.loadChildren()).pipe(P(Qg),fe(i=>i instanceof pi||Array.isArray(i)?R(i):re(e.compileModuleAsync(i))),P(i=>{n&&n(t);let o,s,a=!1;return Array.isArray(i)?(s=i,a=!0):(o=i.create(r).injector,s=o.get(Ea,[],{optional:!0,self:!0}).flat()),{routes:s.map(wd),injector:o}}))}function yI(t){return t&&typeof t=="object"&&"default"in t}function Qg(t){return yI(t)?t.default:t}var Ed=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(DI),providedIn:"root"});let t=e;return t})(),DI=(()=>{let e=class e{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,i){return n}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Kg=new x(""),Jg=new x("");function CI(t,e,r){let n=t.get(Jg),i=t.get(we);return t.get(ee).runOutsideAngular(()=>{if(!i.startViewTransition||n.skipNextTransition)return n.skipNextTransition=!1,new Promise(d=>setTimeout(d));let o,s=new Promise(d=>{o=d}),a=i.startViewTransition(()=>(o(),wI(t))),{onViewTransitionCreated:l}=n;return l&&it(t,()=>l({transition:a,from:e,to:r})),s})}function wI(t){return new Promise(e=>{pu({read:()=>setTimeout(e)},{injector:t})})}var bI=new x(""),_d=(()=>{let e=class e{get hasRequestedNavigation(){return this.navigationId!==0}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new be,this.transitionAbortSubject=new be,this.configLoader=C(bd),this.environmentInjector=C(Pe),this.urlSerializer=C(Wi),this.rootContexts=C(Yi),this.location=C(Or),this.inputBindingEnabled=C(Ia,{optional:!0})!==null,this.titleStrategy=C(Yg),this.options=C(Ki,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=C(Ed),this.createViewTransition=C(Kg,{optional:!0}),this.navigationErrorHandler=C(bI,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>R(void 0),this.rootComponentType=null;let n=o=>this.events.next(new nd(o)),i=o=>this.events.next(new rd(o));this.configLoader.onLoadEndListener=i,this.configLoader.onLoadStartListener=n}complete(){this.transitions?.complete()}handleNavigationRequest(n){let i=++this.navigationId;this.transitions?.next(W(b(b({},this.transitions.value),n),{id:i}))}setupNavigations(n,i,o){return this.transitions=new xe({id:0,currentUrlTree:i,currentRawUrl:i,extractedUrl:this.urlHandlingStrategy.extract(i),urlAfterRedirects:this.urlHandlingStrategy.extract(i),rawUrl:i,extras:{},resolve:()=>{},reject:()=>{},promise:Promise.resolve(!0),source:Li,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Se(s=>s.id!==0),P(s=>W(b({},s),{extractedUrl:this.urlHandlingStrategy.extract(s.rawUrl)})),Ve(s=>{let a=!1,l=!1;return R(s).pipe(Ve(d=>{if(this.navigationId>s.id)return this.cancelNavigationTransition(s,"",Ze.SupersededByNewNavigation),He;this.currentTransition=s,this.currentNavigation={id:d.id,initialUrl:d.rawUrl,extractedUrl:d.extractedUrl,targetBrowserUrl:typeof d.extras.browserUrl=="string"?this.urlSerializer.parse(d.extras.browserUrl):d.extras.browserUrl,trigger:d.source,extras:d.extras,previousNavigation:this.lastSuccessfulNavigation?W(b({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let h=!n.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),m=d.extras.onSameUrlNavigation??n.onSameUrlNavigation;if(!h&&m!=="reload"){let v="";return this.events.next(new Dn(d.id,this.urlSerializer.serialize(d.rawUrl),v,pa.IgnoredSameUrlNavigation)),d.resolve(!1),He}if(this.urlHandlingStrategy.shouldProcessUrl(d.rawUrl))return R(d).pipe(Ve(v=>{let y=this.transitions?.getValue();return this.events.next(new $r(v.id,this.urlSerializer.serialize(v.extractedUrl),v.source,v.restoredState)),y!==this.transitions?.getValue()?He:Promise.resolve(v)}),uI(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,this.paramsInheritanceStrategy),Ee(v=>{s.targetSnapshot=v.targetSnapshot,s.urlAfterRedirects=v.urlAfterRedirects,this.currentNavigation=W(b({},this.currentNavigation),{finalUrl:v.urlAfterRedirects});let y=new ma(v.id,this.urlSerializer.serialize(v.extractedUrl),this.urlSerializer.serialize(v.urlAfterRedirects),v.targetSnapshot);this.events.next(y)}));if(h&&this.urlHandlingStrategy.shouldProcessUrl(d.currentRawUrl)){let{id:v,extractedUrl:y,source:w,restoredState:U,extras:N}=d,T=new $r(v,this.urlSerializer.serialize(y),w,U);this.events.next(T);let oe=Vg(this.rootComponentType).snapshot;return this.currentTransition=s=W(b({},d),{targetSnapshot:oe,urlAfterRedirects:y,extras:W(b({},N),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=y,R(s)}else{let v="";return this.events.next(new Dn(d.id,this.urlSerializer.serialize(d.extractedUrl),v,pa.IgnoredByUrlHandlingStrategy)),d.resolve(!1),He}}),Ee(d=>{let h=new Ju(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(h)}),P(d=>(this.currentTransition=s=W(b({},d),{guards:A_(d.targetSnapshot,d.currentSnapshot,this.rootContexts)}),s)),B_(this.environmentInjector,d=>this.events.next(d)),Ee(d=>{if(s.guardsResult=d.guardsResult,d.guardsResult&&typeof d.guardsResult!="boolean")throw wa(this.urlSerializer,d.guardsResult);let h=new Xu(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot,!!d.guardsResult);this.events.next(h)}),Se(d=>d.guardsResult?!0:(this.cancelNavigationTransition(d,"",Ze.GuardRejected),!1)),qu(d=>{if(d.guards.canActivateChecks.length)return R(d).pipe(Ee(h=>{let m=new ed(h.id,this.urlSerializer.serialize(h.extractedUrl),this.urlSerializer.serialize(h.urlAfterRedirects),h.targetSnapshot);this.events.next(m)}),Ve(h=>{let m=!1;return R(h).pipe(dI(this.paramsInheritanceStrategy,this.environmentInjector),Ee({next:()=>m=!0,complete:()=>{m||this.cancelNavigationTransition(h,"",Ze.NoDataFromResolver)}}))}),Ee(h=>{let m=new td(h.id,this.urlSerializer.serialize(h.extractedUrl),this.urlSerializer.serialize(h.urlAfterRedirects),h.targetSnapshot);this.events.next(m)}))}),qu(d=>{let h=m=>{let v=[];m.routeConfig?.loadComponent&&!m.routeConfig._loadedComponent&&v.push(this.configLoader.loadComponent(m.routeConfig).pipe(Ee(y=>{m.component=y}),P(()=>{})));for(let y of m.children)v.push(...h(y));return v};return ai(h(d.targetSnapshot.root)).pipe(nn(null),Ot(1))}),qu(()=>this.afterPreactivation()),Ve(()=>{let{currentSnapshot:d,targetSnapshot:h}=s,m=this.createViewTransition?.(this.environmentInjector,d.root,h.root);return m?re(m).pipe(P(()=>s)):R(s)}),P(d=>{let h=I_(n.routeReuseStrategy,d.targetSnapshot,d.currentRouterState);return this.currentTransition=s=W(b({},d),{targetRouterState:h}),this.currentNavigation.targetRouterState=h,s}),Ee(()=>{this.events.next(new Bi)}),T_(this.rootContexts,n.routeReuseStrategy,d=>this.events.next(d),this.inputBindingEnabled),Ot(1),Ee({next:d=>{a=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Ye(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects))),this.titleStrategy?.updateTitle(d.targetRouterState.snapshot),d.resolve(!0)},complete:()=>{a=!0}}),vl(this.transitionAbortSubject.pipe(Ee(d=>{throw d}))),rn(()=>{!a&&!l&&this.cancelNavigationTransition(s,"",Ze.SupersededByNewNavigation),this.currentTransition?.id===s.id&&(this.currentNavigation=null,this.currentTransition=null)}),tn(d=>{if(l=!0,Hg(d))this.events.next(new Yt(s.id,this.urlSerializer.serialize(s.extractedUrl),d.message,d.cancellationCode)),M_(d)?this.events.next(new Hr(d.url,d.navigationBehaviorOptions)):s.resolve(!1);else{let h=new Ui(s.id,this.urlSerializer.serialize(s.extractedUrl),d,s.targetSnapshot??void 0);try{let m=it(this.environmentInjector,()=>this.navigationErrorHandler?.(h));if(m instanceof Hi){let{message:v,cancellationCode:y}=wa(this.urlSerializer,m);this.events.next(new Yt(s.id,this.urlSerializer.serialize(s.extractedUrl),v,y)),this.events.next(new Hr(m.redirectTo,m.navigationBehaviorOptions))}else{this.events.next(h);let v=n.errorHandler(d);s.resolve(!!v)}}catch(m){this.options.resolveNavigationPromiseOnError?s.resolve(!1):s.reject(m)}}return He}))}))}cancelNavigationTransition(n,i,o){let s=new Yt(n.id,this.urlSerializer.serialize(n.extractedUrl),i,o);this.events.next(s),n.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let n=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),i=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return n.toString()!==i?.toString()&&!this.currentNavigation?.extras.skipLocationChange}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function EI(t){return t!==Li}var _I=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(II),providedIn:"root"});let t=e;return t})(),yd=class{shouldDetach(e){return!1}store(e,r){}shouldAttach(e){return!1}retrieve(e){return null}shouldReuseRoute(e,r){return e.routeConfig===r.routeConfig}},II=(()=>{let e=class e extends yd{};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Xg=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:()=>C(xI),providedIn:"root"});let t=e;return t})(),xI=(()=>{let e=class e extends Xg{constructor(){super(...arguments),this.location=C(Or),this.urlSerializer=C(Wi),this.options=C(Ki,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=C(Ed),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new Qt,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=Vg(null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(n){return this.location.subscribe(i=>{i.type==="popstate"&&n(i.url,i.state)})}handleRouterEvent(n,i){if(n instanceof $r)this.stateMemento=this.createStateMemento();else if(n instanceof Dn)this.rawUrlTree=i.initialUrl;else if(n instanceof ma){if(this.urlUpdateStrategy==="eager"&&!i.extras.skipLocationChange){let o=this.urlHandlingStrategy.merge(i.finalUrl,i.initialUrl);this.setBrowserUrl(i.targetBrowserUrl??o,i)}}else n instanceof Bi?(this.currentUrlTree=i.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(i.finalUrl,i.initialUrl),this.routerState=i.targetRouterState,this.urlUpdateStrategy==="deferred"&&!i.extras.skipLocationChange&&this.setBrowserUrl(i.targetBrowserUrl??this.rawUrlTree,i)):n instanceof Yt&&(n.code===Ze.GuardRejected||n.code===Ze.NoDataFromResolver)?this.restoreHistory(i):n instanceof Ui?this.restoreHistory(i,!0):n instanceof Ye&&(this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId)}setBrowserUrl(n,i){let o=n instanceof Qt?this.urlSerializer.serialize(n):n;if(this.location.isCurrentPathEqualTo(o)||i.extras.replaceUrl){let s=this.browserPageId,a=b(b({},i.extras.state),this.generateNgRouterState(i.id,s));this.location.replaceState(o,"",a)}else{let s=b(b({},i.extras.state),this.generateNgRouterState(i.id,this.browserPageId+1));this.location.go(o,"",s)}}restoreHistory(n,i=!1){if(this.canceledNavigationResolution==="computed"){let o=this.browserPageId,s=this.currentPageId-o;s!==0?this.location.historyGo(s):this.currentUrlTree===n.finalUrl&&s===0&&(this.resetState(n),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(i&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,i){return this.canceledNavigationResolution==="computed"?{navigationId:n,\u0275routerPageId:i}:{navigationId:n}}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Pi=function(t){return t[t.COMPLETE=0]="COMPLETE",t[t.FAILED=1]="FAILED",t[t.REDIRECTING=2]="REDIRECTING",t}(Pi||{});function ev(t,e){t.events.pipe(Se(r=>r instanceof Ye||r instanceof Yt||r instanceof Ui||r instanceof Dn),P(r=>r instanceof Ye||r instanceof Dn?Pi.COMPLETE:(r instanceof Yt?r.code===Ze.Redirect||r.code===Ze.SupersededByNewNavigation:!1)?Pi.REDIRECTING:Pi.FAILED),Se(r=>r!==Pi.REDIRECTING),Ot(1)).subscribe(()=>{e()})}function SI(t){throw t}var MI={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},TI={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},gt=(()=>{let e=class e{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}constructor(){this.disposed=!1,this.console=C(Gs),this.stateManager=C(Xg),this.options=C(Ki,{optional:!0})||{},this.pendingTasks=C(Bt),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=C(_d),this.urlSerializer=C(Wi),this.location=C(Or),this.urlHandlingStrategy=C(Ed),this._events=new be,this.errorHandler=this.options.errorHandler||SI,this.navigated=!1,this.routeReuseStrategy=C(_I),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=C(Ea,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!C(Ia,{optional:!0}),this.eventsSubscription=new ye,this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:n=>{this.console.warn(n)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){let n=this.navigationTransitions.events.subscribe(i=>{try{let o=this.navigationTransitions.currentTransition,s=this.navigationTransitions.currentNavigation;if(o!==null&&s!==null){if(this.stateManager.handleRouterEvent(i,s),i instanceof Yt&&i.code!==Ze.Redirect&&i.code!==Ze.SupersededByNewNavigation)this.navigated=!0;else if(i instanceof Ye)this.navigated=!0;else if(i instanceof Hr){let a=i.navigationBehaviorOptions,l=this.urlHandlingStrategy.merge(i.url,o.currentRawUrl),d=b({browserUrl:o.extras.browserUrl,info:o.extras.info,skipLocationChange:o.extras.skipLocationChange,replaceUrl:o.extras.replaceUrl||this.urlUpdateStrategy==="eager"||EI(o.source)},a);this.scheduleNavigation(l,Li,null,d,{resolve:o.resolve,reject:o.reject,promise:o.promise})}}NI(i)&&this._events.next(i)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Li,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((n,i)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(n,"popstate",i)},0)})}navigateToSyncWithBrowser(n,i,o){let s={replaceUrl:!0},a=o?.navigationId?o:null;if(o){let d=b({},o);delete d.navigationId,delete d.\u0275routerPageId,Object.keys(d).length!==0&&(s.state=d)}let l=this.parseUrl(n);this.scheduleNavigation(l,i,a,s)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(wd),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,i={}){let{relativeTo:o,queryParams:s,fragment:a,queryParamsHandling:l,preserveFragment:d}=i,h=d?this.currentUrlTree.fragment:a,m=null;switch(l??this.options.defaultQueryParamsHandling){case"merge":m=b(b({},this.currentUrlTree.queryParams),s);break;case"preserve":m=this.currentUrlTree.queryParams;break;default:m=s||null}m!==null&&(m=this.removeEmptyProps(m));let v;try{let y=o?o.snapshot:this.routerState.snapshot.root;v=kg(y)}catch{(typeof n[0]!="string"||n[0][0]!=="/")&&(n=[]),v=this.currentUrlTree.root}return Pg(v,n,m,h??null)}navigateByUrl(n,i={skipLocationChange:!1}){let o=qn(n)?n:this.parseUrl(n),s=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(s,Li,null,i)}navigate(n,i={skipLocationChange:!1}){return AI(n),this.navigateByUrl(this.createUrlTree(n,i),i)}serializeUrl(n){return this.urlSerializer.serialize(n)}parseUrl(n){try{return this.urlSerializer.parse(n)}catch{return this.urlSerializer.parse("/")}}isActive(n,i){let o;if(i===!0?o=b({},MI):i===!1?o=b({},TI):o=i,qn(n))return pg(this.currentUrlTree,n,o);let s=this.parseUrl(n);return pg(this.currentUrlTree,s,o)}removeEmptyProps(n){return Object.entries(n).reduce((i,[o,s])=>(s!=null&&(i[o]=s),i),{})}scheduleNavigation(n,i,o,s,a){if(this.disposed)return Promise.resolve(!1);let l,d,h;a?(l=a.resolve,d=a.reject,h=a.promise):h=new Promise((v,y)=>{l=v,d=y});let m=this.pendingTasks.add();return ev(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(m))}),this.navigationTransitions.handleNavigationRequest({source:i,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:n,extras:s,resolve:l,reject:d,promise:h,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),h.catch(v=>Promise.reject(v))}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})();function AI(t){for(let e=0;e{let e=class e{constructor(n,i,o,s,a,l){this.router=n,this.route=i,this.tabIndexAttribute=o,this.renderer=s,this.el=a,this.locationStrategy=l,this.href=null,this.onChanges=new be,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1,this.routerLinkInput=null;let d=a.nativeElement.tagName?.toLowerCase();this.isAnchorElement=d==="a"||d==="area",this.isAnchorElement?this.subscription=n.events.subscribe(h=>{h instanceof Ye&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(n){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",n)}ngOnChanges(n){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(n){n==null?(this.routerLinkInput=null,this.setTabIndexIfNotOnNativeEl(null)):(qn(n)?this.routerLinkInput=n:this.routerLinkInput=Array.isArray(n)?n:[n],this.setTabIndexIfNotOnNativeEl("0"))}onClick(n,i,o,s,a){let l=this.urlTree;if(l===null||this.isAnchorElement&&(n!==0||i||o||s||a||typeof this.target=="string"&&this.target!="_self"))return!0;let d={skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info};return this.router.navigateByUrl(l,d),!this.isAnchorElement}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){let n=this.urlTree;this.href=n!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(n)):null;let i=this.href===null?null:xp(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",i)}applyAttributeValue(n,i){let o=this.renderer,s=this.el.nativeElement;i!==null?o.setAttribute(s,n,i):o.removeAttribute(s,n)}get urlTree(){return this.routerLinkInput===null?null:qn(this.routerLinkInput)?this.routerLinkInput:this.router.createUrlTree(this.routerLinkInput,{relativeTo:this.relativeTo!==void 0?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}};e.\u0275fac=function(i){return new(i||e)(S(gt),S(Kt),Hc("tabindex"),S(st),S(Ae),S(Wt))},e.\u0275dir=ne({type:e,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(i,o){i&1&&A("click",function(a){return o.onClick(a.button,a.ctrlKey,a.shiftKey,a.altKey,a.metaKey)}),i&2&&$t("target",o.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",Gt],skipLocationChange:[2,"skipLocationChange","skipLocationChange",Gt],replaceUrl:[2,"replaceUrl","replaceUrl",Gt],routerLink:"routerLink"},standalone:!0,features:[fu,Ut]});let t=e;return t})(),tv=(()=>{let e=class e{get isActive(){return this._isActive}constructor(n,i,o,s,a){this.router=n,this.element=i,this.renderer=o,this.cdr=s,this.link=a,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new he,this.routerEventsSubscription=n.events.subscribe(l=>{l instanceof Ye&&this.update()})}ngAfterContentInit(){R(this.links.changes,R(null)).pipe(en()).subscribe(n=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();let n=[...this.links.toArray(),this.link].filter(i=>!!i).map(i=>i.onChanges);this.linkInputChangesSubscription=re(n).pipe(en()).subscribe(i=>{this._isActive!==this.isLinkActive(this.router)(i)&&this.update()})}set routerLinkActive(n){let i=Array.isArray(n)?n:n.split(" ");this.classes=i.filter(o=>!!o)}ngOnChanges(n){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{let n=this.hasActiveLinks();this.classes.forEach(i=>{n?this.renderer.addClass(this.element.nativeElement,i):this.renderer.removeClass(this.element.nativeElement,i)}),n&&this.ariaCurrentWhenActive!==void 0?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this._isActive!==n&&(this._isActive=n,this.cdr.markForCheck(),this.isActiveChange.emit(n))})}isLinkActive(n){let i=RI(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>{let s=o.urlTree;return s?n.isActive(s,i):!1}}hasActiveLinks(){let n=this.isLinkActive(this.router);return this.link&&n(this.link)||this.links.some(n)}};e.\u0275fac=function(i){return new(i||e)(S(gt),S(Ae),S(st),S(mn),S(Ne,8))},e.\u0275dir=ne({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(i,o,s){if(i&1&&mm(s,Ne,5),i&2){let a;gm(a=vm())&&(o.links=a)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Ut]});let t=e;return t})();function RI(t){return!!t.paths}var _a=class{};var OI=(()=>{let e=class e{constructor(n,i,o,s,a){this.router=n,this.injector=o,this.preloadingStrategy=s,this.loader=a}setUpPreloading(){this.subscription=this.router.events.pipe(Se(n=>n instanceof Ye),Rt(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(n,i){let o=[];for(let s of i){s.providers&&!s._injector&&(s._injector=Bs(s.providers,n,`Route: ${s.path}`));let a=s._injector??n,l=s._loadedInjector??a;(s.loadChildren&&!s._loadedRoutes&&s.canLoad===void 0||s.loadComponent&&!s._loadedComponent)&&o.push(this.preloadConfig(a,s)),(s.children||s._loadedRoutes)&&o.push(this.processRoutes(l,s.children??s._loadedRoutes))}return re(o).pipe(en())}preloadConfig(n,i){return this.preloadingStrategy.preload(i,()=>{let o;i.loadChildren&&i.canLoad===void 0?o=this.loader.loadChildren(n,i):o=R(null);let s=o.pipe(fe(a=>a===null?R(void 0):(i._loadedRoutes=a.routes,i._loadedInjector=a.injector,this.processRoutes(a.injector??n,a.routes))));if(i.loadComponent&&!i._loadedComponent){let a=this.loader.loadComponent(i);return re([s,a]).pipe(en())}else return s})}};e.\u0275fac=function(i){return new(i||e)(I(gt),I(Ys),I(Pe),I(_a),I(bd))},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),nv=new x(""),kI=(()=>{let e=class e{constructor(n,i,o,s,a={}){this.urlSerializer=n,this.transitions=i,this.viewportScroller=o,this.zone=s,this.options=a,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},a.scrollPositionRestoration||="disabled",a.anchorScrolling||="disabled"}init(){this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof $r?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=n.navigationTrigger,this.restoredId=n.restoredState?n.restoredState.navigationId:0):n instanceof Ye?(this.lastId=n.id,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.urlAfterRedirects).fragment)):n instanceof Dn&&n.code===pa.IgnoredSameUrlNavigation&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof ga&&(n.position?this.options.scrollPositionRestoration==="top"?this.viewportScroller.scrollToPosition([0,0]):this.options.scrollPositionRestoration==="enabled"&&this.viewportScroller.scrollToPosition(n.position):n.anchor&&this.options.anchorScrolling==="enabled"?this.viewportScroller.scrollToAnchor(n.anchor):this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(n,i){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new ga(n,this.lastSource==="popstate"?this.store[this.restoredId]:null,i))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}};e.\u0275fac=function(i){Vp()},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function PI(t){return t.routerState.root}function Ji(t,e){return{\u0275kind:t,\u0275providers:e}}function FI(){let t=C(rt);return e=>{let r=t.get(Ht);if(e!==r.components[0])return;let n=t.get(gt),i=t.get(rv);t.get(Id)===1&&n.initialNavigation(),t.get(iv,null,H.Optional)?.setUpPreloading(),t.get(nv,null,H.Optional)?.init(),n.resetRootComponentType(r.componentTypes[0]),i.closed||(i.next(),i.complete(),i.unsubscribe())}}var rv=new x("",{factory:()=>new be}),Id=new x("",{providedIn:"root",factory:()=>1});function LI(){return Ji(2,[{provide:Id,useValue:0},{provide:Ws,multi:!0,deps:[rt],useFactory:e=>{let r=e.get(Pm,Promise.resolve());return()=>r.then(()=>new Promise(n=>{let i=e.get(gt),o=e.get(rv);ev(i,()=>{n(!0)}),e.get(_d).afterPreactivation=()=>(n(!0),o.closed?R(void 0):o),i.initialNavigation()}))}}])}function VI(){return Ji(3,[{provide:Ws,multi:!0,useFactory:()=>{let e=C(gt);return()=>{e.setUpLocationChangeListener()}}},{provide:Id,useValue:2}])}var iv=new x("");function jI(t){return Ji(0,[{provide:iv,useExisting:OI},{provide:_a,useExisting:t}])}function UI(){return Ji(8,[yg,{provide:Ia,useExisting:yg}])}function BI(t){let e=[{provide:Kg,useValue:CI},{provide:Jg,useValue:b({skipNextTransition:!!t?.skipInitialTransition},t)}];return Ji(9,e)}var bg=new x("ROUTER_FORROOT_GUARD"),$I=[Or,{provide:Wi,useClass:Br},gt,Yi,{provide:Kt,useFactory:PI,deps:[gt]},bd,[]],xd=(()=>{let e=class e{constructor(n){}static forRoot(n,i){return{ngModule:e,providers:[$I,[],{provide:Ea,multi:!0,useValue:n},{provide:bg,useFactory:qI,deps:[[gt,new Es,new Mc]]},{provide:Ki,useValue:i||{}},i?.useHash?GI():zI(),HI(),i?.preloadingStrategy?jI(i.preloadingStrategy).\u0275providers:[],i?.initialNavigation?WI(i):[],i?.bindToComponentInputs?UI().\u0275providers:[],i?.enableViewTransitions?BI().\u0275providers:[],ZI()]}}static forChild(n){return{ngModule:e,providers:[{provide:Ea,multi:!0,useValue:n}]}}};e.\u0275fac=function(i){return new(i||e)(I(bg,8))},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({});let t=e;return t})();function HI(){return{provide:nv,useFactory:()=>{let t=C(jm),e=C(ee),r=C(Ki),n=C(_d),i=C(Wi);return r.scrollOffset&&t.setOffset(r.scrollOffset),new kI(i,n,t,e,r)}}}function GI(){return{provide:Wt,useClass:Lm}}function zI(){return{provide:Wt,useClass:Mu}}function qI(t){return"guarded"}function WI(t){return[t.initialNavigation==="disabled"?VI().\u0275providers:[],t.initialNavigation==="enabledBlocking"?LI().\u0275providers:[]]}var Eg=new x("");function ZI(){return[{provide:Eg,useFactory:FI},{provide:Zs,multi:!0,useExisting:Eg}]}var QI=()=>["/pro"],ov=(()=>{let e=class e{constructor(){this.years=new Date().getFullYear()-2009}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-footer"]],standalone:!0,features:[de],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5","portrait"],[1,"col-xs-12","col-md-8"],[3,"routerLink"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(i,o){i&1&&(u(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),p(5,"img",5),f(),u(6,"div",6)(7,"h2"),c(8,"Who's behind"),f(),u(9,"p"),c(10,"My name is Daniel Palme. I'm a software developer from Germany."),f(),u(11,"p"),c(12," Back in 2009 I wanted to create code coverage reports based on "),u(13,"i"),c(14,"PartCover"),f(),c(15," files."),p(16,"br"),c(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),p(18,"br"),c(19),u(20,"i"),c(21,"ReportGenerator"),f(),c(22,". "),f(),u(23,"p"),c(24," You can support the ongoing maintenance by buying a "),u(25,"a",7),c(26,"PRO license"),f(),c(27," or by becoming a "),p(28,"i",8),c(29,"\xA0"),u(30,"a",9),c(31,"GitHub sponsor"),f(),c(32,". "),f()()()()(),u(33,"div",2)(34,"div",3),p(35,"hr"),f()(),u(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),c(42,"GitHub"),f()(),u(43,"a",11),c(44,"Source code"),f(),p(45,"br"),u(46,"a",12),c(47,"Wiki"),f(),p(48,"br"),u(49,"a",13),c(50,"FAQ"),f()(),u(51,"div",14)(52,"p")(53,"b"),c(54,"Download"),f()(),u(55,"i"),c(56,"NuGet"),f(),p(57,"br"),u(58,"a",15),c(59,"ReportGenerator"),f(),p(60,"br"),u(61,"a",16),c(62,"dotnet-reportgenerator-globaltool"),f(),p(63,"br"),u(64,"a",17),c(65,"ReportGenerator.Core"),f(),p(66,"br")(67,"br"),u(68,"i"),c(69,"Integration"),f(),p(70,"br"),u(71,"a",18),c(72,"GitHub actions"),f(),p(73,"br"),u(74,"a",19),c(75,"Azure DevOps"),f()(),u(76,"div",20)(77,"p")(78,"b"),c(79,"Community"),f()(),u(80,"a",11),p(81,"i",21),c(82," GitHub"),f(),p(83,"br"),u(84,"a",22),p(85,"i",23),c(86," Twitter"),f(),p(87,"br")(88,"br"),u(89,"a",24),c(90,"Privacy"),f(),p(91,"br"),u(92,"a",25),c(93,"Imprint"),f()()()()()()),i&2&&(g(19),ht(" Fast forward ",o.years," years, I'm still maintaining "),g(6),D("routerLink",B(2,QI)))},dependencies:[Ne],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}.portrait[_ngcontent-%COMP%]{max-height:300px}"]});let t=e;return t})();var sv=()=>["/"],KI=t=>({show:t}),qr=()=>["link-active"],av=()=>({exact:!0}),JI=()=>["/features"],XI=()=>["/getstarted"],ex=()=>["/usage"],tx=()=>["/contact"],nx=()=>["/pro"],lv=(()=>{let e=class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[de],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(i,o){i&1&&(u(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),p(4,"img",4),u(5,"span",5),c(6,"ReportGenerator"),f()(),u(7,"button",6),A("click",function(){return o.toggle()}),p(8,"span",7),f(),u(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),c(13,"Home"),f()(),u(14,"li",10)(15,"a",11),c(16,"Features"),f()(),u(17,"li",12)(18,"a",13),c(19,"Get started"),f()(),u(20,"li",12)(21,"a",11),c(22,"Usage"),f()(),u(23,"li",12)(24,"a",11),c(25,"Contact"),f()(),u(26,"li",12)(27,"a",11)(28,"span",14),c(29,"PRO"),f()()()(),p(30,"hr",15),u(31,"ul",16)(32,"li",17)(33,"a",18),p(34,"i",19),u(35,"span",20),c(36,"GitHub"),f()()(),u(37,"li",17)(38,"a",21),p(39,"i",22),u(40,"span",20),c(41,"Twitter"),f()()()()()()()()),i&2&&(g(3),D("routerLink",B(17,sv)),g(4),$t("aria-expanded",o.isExpanded),g(2),D("ngClass",$n(18,KI,o.isExpanded)),g(2),D("routerLinkActive",B(20,qr))("routerLinkActiveOptions",B(21,av)),g(),D("routerLink",B(22,sv)),g(2),D("routerLinkActive",B(23,qr))("routerLinkActiveOptions",B(24,av)),g(),D("routerLink",B(25,JI)),g(2),D("routerLinkActive",B(26,qr)),g(),D("routerLink",B(27,XI)),g(2),D("routerLinkActive",B(28,qr)),g(),D("routerLink",B(29,ex)),g(2),D("routerLinkActive",B(30,qr)),g(),D("routerLink",B(31,tx)),g(2),D("routerLinkActive",B(32,qr)),g(),D("routerLink",B(33,nx)))},dependencies:[Ne,kr,tv],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]});let t=e;return t})();var cv=(()=>{let e=class e{constructor(n,i,o){this.dom=n,this.router=i,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(Se(n=>n instanceof Ye),P(()=>this.activatedRoute),P(n=>{for(;n.firstChild;)n=n.firstChild;return n}),Se(n=>n.outlet==="primary"),fe(n=>n.data)).subscribe(n=>{let i=`${window.location.protocol}//${window.location.hostname}`;n.canonical?this.updateCanonicalUrl(i+n.canonical):this.updateCanonicalUrl(i+this.router.url)})}updateCanonicalUrl(n){let i=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;o==null&&(o=this.dom.createElement("link"),i.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",n)}};e.\u0275fac=function(i){return new(i||e)(S(we),S(gt),S(Kt))},e.\u0275cmp=ce({type:e,selectors:[["app-root"]],standalone:!0,features:[de],decls:3,vars:0,template:function(i,o){i&1&&p(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[lv,Cd,ov],encapsulation:2});let t=e;return t})();var yv=(()=>{let e=class e{constructor(n,i){this._renderer=n,this._elementRef=i,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(n,i){this._renderer.setProperty(this._elementRef.nativeElement,n,i)}registerOnTouched(n){this.onTouched=n}registerOnChange(n){this.onChange=n}setDisabledState(n){this.setProperty("disabled",n)}};e.\u0275fac=function(i){return new(i||e)(S(st),S(Ae))},e.\u0275dir=ne({type:e});let t=e;return t})(),ka=(()=>{let e=class e extends yv{};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,features:[Fe]});let t=e;return t})(),io=new x("");var rx={provide:io,useExisting:Ge(()=>wn),multi:!0};function ix(){let t=Mt()?Mt().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}var ox=new x(""),wn=(()=>{let e=class e extends yv{constructor(n,i,o){super(n,i),this._compositionMode=o,this._composing=!1,this._compositionMode==null&&(this._compositionMode=!ix())}writeValue(n){let i=n??"";this.setProperty("value",i)}_handleInput(n){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(n)}_compositionStart(){this._composing=!0}_compositionEnd(n){this._composing=!1,this._compositionMode&&this.onChange(n)}};e.\u0275fac=function(i){return new(i||e)(S(st),S(Ae),S(ox,8))},e.\u0275dir=ne({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,o){i&1&&A("input",function(a){return o._handleInput(a.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(a){return o._compositionEnd(a.target.value)})},features:[pt([rx]),Fe]});let t=e;return t})();function Td(t){return t==null||(typeof t=="string"||Array.isArray(t))&&t.length===0}function sx(t){return t!=null&&typeof t.length=="number"}var Jr=new x(""),Dv=new x(""),ax=/^(?=.{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])?)*$/;function lx(t){return Td(t.value)?{required:!0}:null}function cx(t){return Td(t.value)||ax.test(t.value)?null:{email:!0}}function ux(t){return e=>sx(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}function dx(t){if(!t)return Sd;let e,r;return typeof t=="string"?(r="",t.charAt(0)!=="^"&&(r+="^"),r+=t,t.charAt(t.length-1)!=="$"&&(r+="$"),e=new RegExp(r)):(r=t.toString(),e=t),n=>{if(Td(n.value))return null;let i=n.value;return e.test(i)?null:{pattern:{requiredPattern:r,actualValue:i}}}}function Sd(t){return null}function Cv(t){return t!=null}function wv(t){return Hn(t)?re(t):t}function bv(t){let e={};return t.forEach(r=>{e=r!=null?b(b({},e),r):e}),Object.keys(e).length===0?null:e}function Ev(t,e){return e.map(r=>r(t))}function fx(t){return!t.validate}function _v(t){return t.map(e=>fx(e)?e:r=>e.validate(r))}function hx(t){if(!t)return null;let e=t.filter(Cv);return e.length==0?null:function(r){return bv(Ev(r,e))}}function Ad(t){return t!=null?hx(_v(t)):null}function px(t){if(!t)return null;let e=t.filter(Cv);return e.length==0?null:function(r){let n=Ev(r,e).map(wv);return fl(n).pipe(P(bv))}}function Nd(t){return t!=null?px(_v(t)):null}function uv(t,e){return t===null?[e]:Array.isArray(t)?[...t,e]:[t,e]}function mx(t){return t._rawValidators}function gx(t){return t._rawAsyncValidators}function Md(t){return t?Array.isArray(t)?t:[t]:[]}function Ma(t,e){return Array.isArray(t)?t.includes(e):t===e}function dv(t,e){let r=Md(e);return Md(t).forEach(i=>{Ma(r,i)||r.push(i)}),r}function fv(t,e){return Md(e).filter(r=>!Ma(t,r))}var Ta=class{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(e){this._rawValidators=e||[],this._composedValidatorFn=Ad(this._rawValidators)}_setAsyncValidators(e){this._rawAsyncValidators=e||[],this._composedAsyncValidatorFn=Nd(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(e){this._onDestroyCallbacks.push(e)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(e=>e()),this._onDestroyCallbacks=[]}reset(e=void 0){this.control&&this.control.reset(e)}hasError(e,r){return this.control?this.control.hasError(e,r):!1}getError(e,r){return this.control?this.control.getError(e,r):null}},Yr=class extends Ta{get formDirective(){return null}get path(){return null}},Qr=class extends Ta{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}},Aa=class{constructor(e){this._cd=e}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}},vx={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},eP=W(b({},vx),{"[class.ng-submitted]":"isSubmitted"}),Xr=(()=>{let e=class e extends Aa{constructor(n){super(n)}};e.\u0275fac=function(i){return new(i||e)(S(Qr,2))},e.\u0275dir=ne({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,o){i&2&&$s("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[Fe]});let t=e;return t})(),ei=(()=>{let e=class e extends Aa{constructor(n){super(n)}};e.\u0275fac=function(i){return new(i||e)(S(Yr,10))},e.\u0275dir=ne({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,o){i&2&&$s("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[Fe]});let t=e;return t})();var Xi="VALID",Sa="INVALID",Wr="PENDING",eo="DISABLED",Kr=class{},Na=class extends Kr{constructor(e,r){super(),this.value=e,this.source=r}},no=class extends Kr{constructor(e,r){super(),this.pristine=e,this.source=r}},ro=class extends Kr{constructor(e,r){super(),this.touched=e,this.source=r}},Zr=class extends Kr{constructor(e,r){super(),this.status=e,this.source=r}};function Iv(t){return(Pa(t)?t.validators:t)||null}function yx(t){return Array.isArray(t)?Ad(t):t||null}function xv(t,e){return(Pa(e)?e.asyncValidators:t)||null}function Dx(t){return Array.isArray(t)?Nd(t):t||null}function Pa(t){return t!=null&&!Array.isArray(t)&&typeof t=="object"}function Cx(t,e,r){let n=t.controls;if(!(e?Object.keys(n):n).length)throw new M(1e3,"");if(!n[r])throw new M(1001,"")}function wx(t,e,r){t._forEachChild((n,i)=>{if(r[i]===void 0)throw new M(1002,"")})}var Ra=class{constructor(e,r){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=null,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this._status=Ei(()=>this.statusReactive()),this.statusReactive=wi(void 0),this._pristine=Ei(()=>this.pristineReactive()),this.pristineReactive=wi(!0),this._touched=Ei(()=>this.touchedReactive()),this.touchedReactive=wi(!1),this._events=new be,this.events=this._events.asObservable(),this._onDisabledChange=[],this._assignValidators(e),this._assignAsyncValidators(r)}get validator(){return this._composedValidatorFn}set validator(e){this._rawValidators=this._composedValidatorFn=e}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(e){this._rawAsyncValidators=this._composedAsyncValidatorFn=e}get parent(){return this._parent}get status(){return zt(this.statusReactive)}set status(e){zt(()=>this.statusReactive.set(e))}get valid(){return this.status===Xi}get invalid(){return this.status===Sa}get pending(){return this.status==Wr}get disabled(){return this.status===eo}get enabled(){return this.status!==eo}get pristine(){return zt(this.pristineReactive)}set pristine(e){zt(()=>this.pristineReactive.set(e))}get dirty(){return!this.pristine}get touched(){return zt(this.touchedReactive)}set touched(e){zt(()=>this.touchedReactive.set(e))}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(e){this._assignValidators(e)}setAsyncValidators(e){this._assignAsyncValidators(e)}addValidators(e){this.setValidators(dv(e,this._rawValidators))}addAsyncValidators(e){this.setAsyncValidators(dv(e,this._rawAsyncValidators))}removeValidators(e){this.setValidators(fv(e,this._rawValidators))}removeAsyncValidators(e){this.setAsyncValidators(fv(e,this._rawAsyncValidators))}hasValidator(e){return Ma(this._rawValidators,e)}hasAsyncValidator(e){return Ma(this._rawAsyncValidators,e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(e={}){let r=this.touched===!1;this.touched=!0;let n=e.sourceControl??this;this._parent&&!e.onlySelf&&this._parent.markAsTouched(W(b({},e),{sourceControl:n})),r&&e.emitEvent!==!1&&this._events.next(new ro(!0,n))}markAllAsTouched(e={}){this.markAsTouched({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:this}),this._forEachChild(r=>r.markAllAsTouched(e))}markAsUntouched(e={}){let r=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let n=e.sourceControl??this;this._forEachChild(i=>{i.markAsUntouched({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:n})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e,n),r&&e.emitEvent!==!1&&this._events.next(new ro(!1,n))}markAsDirty(e={}){let r=this.pristine===!0;this.pristine=!1;let n=e.sourceControl??this;this._parent&&!e.onlySelf&&this._parent.markAsDirty(W(b({},e),{sourceControl:n})),r&&e.emitEvent!==!1&&this._events.next(new no(!1,n))}markAsPristine(e={}){let r=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let n=e.sourceControl??this;this._forEachChild(i=>{i.markAsPristine({onlySelf:!0,emitEvent:e.emitEvent})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e,n),r&&e.emitEvent!==!1&&this._events.next(new no(!0,n))}markAsPending(e={}){this.status=Wr;let r=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new Zr(this.status,r)),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.markAsPending(W(b({},e),{sourceControl:r}))}disable(e={}){let r=this._parentMarkedDirty(e.onlySelf);this.status=eo,this.errors=null,this._forEachChild(i=>{i.disable(W(b({},e),{onlySelf:!0}))}),this._updateValue();let n=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new Na(this.value,n)),this._events.next(new Zr(this.status,n)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(W(b({},e),{skipPristineCheck:r}),this),this._onDisabledChange.forEach(i=>i(!0))}enable(e={}){let r=this._parentMarkedDirty(e.onlySelf);this.status=Xi,this._forEachChild(n=>{n.enable(W(b({},e),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(W(b({},e),{skipPristineCheck:r}),this),this._onDisabledChange.forEach(n=>n(!1))}_updateAncestors(e,r){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine({},r),this._parent._updateTouched({},r))}setParent(e){this._parent=e}getRawValue(){return this.value}updateValueAndValidity(e={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let n=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Xi||this.status===Wr)&&this._runAsyncValidator(n,e.emitEvent)}let r=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new Na(this.value,r)),this._events.next(new Zr(this.status,r)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(W(b({},e),{sourceControl:r}))}_updateTreeValidity(e={emitEvent:!0}){this._forEachChild(r=>r._updateTreeValidity(e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?eo:Xi}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(e,r){if(this.asyncValidator){this.status=Wr,this._hasOwnPendingAsyncValidator={emitEvent:r!==!1};let n=wv(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(i=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(i,{emitEvent:r,shouldHaveEmitted:e})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let e=this._hasOwnPendingAsyncValidator?.emitEvent??!1;return this._hasOwnPendingAsyncValidator=null,e}return!1}setErrors(e,r={}){this.errors=e,this._updateControlsErrors(r.emitEvent!==!1,this,r.shouldHaveEmitted)}get(e){let r=e;return r==null||(Array.isArray(r)||(r=r.split(".")),r.length===0)?null:r.reduce((n,i)=>n&&n._find(i),this)}getError(e,r){let n=r?this.get(r):this;return n&&n.errors?n.errors[e]:null}hasError(e,r){return!!this.getError(e,r)}get root(){let e=this;for(;e._parent;)e=e._parent;return e}_updateControlsErrors(e,r,n){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),(e||n)&&this._events.next(new Zr(this.status,r)),this._parent&&this._parent._updateControlsErrors(e,r,n)}_initObservables(){this.valueChanges=new he,this.statusChanges=new he}_calculateStatus(){return this._allControlsDisabled()?eo:this.errors?Sa:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Wr)?Wr:this._anyControlsHaveStatus(Sa)?Sa:Xi}_anyControlsHaveStatus(e){return this._anyControls(r=>r.status===e)}_anyControlsDirty(){return this._anyControls(e=>e.dirty)}_anyControlsTouched(){return this._anyControls(e=>e.touched)}_updatePristine(e,r){let n=!this._anyControlsDirty(),i=this.pristine!==n;this.pristine=n,this._parent&&!e.onlySelf&&this._parent._updatePristine(e,r),i&&this._events.next(new no(this.pristine,r))}_updateTouched(e={},r){this.touched=this._anyControlsTouched(),this._events.next(new ro(this.touched,r)),this._parent&&!e.onlySelf&&this._parent._updateTouched(e,r)}_registerOnCollectionChange(e){this._onCollectionChange=e}_setUpdateStrategy(e){Pa(e)&&e.updateOn!=null&&(this._updateOn=e.updateOn)}_parentMarkedDirty(e){let r=this._parent&&this._parent.dirty;return!e&&!!r&&!this._parent._anyControlsDirty()}_find(e){return null}_assignValidators(e){this._rawValidators=Array.isArray(e)?e.slice():e,this._composedValidatorFn=yx(this._rawValidators)}_assignAsyncValidators(e){this._rawAsyncValidators=Array.isArray(e)?e.slice():e,this._composedAsyncValidatorFn=Dx(this._rawAsyncValidators)}},Oa=class extends Ra{constructor(e,r,n){super(Iv(r),xv(n,r)),this.controls=e,this._initObservables(),this._setUpdateStrategy(r),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(e,r){return this.controls[e]?this.controls[e]:(this.controls[e]=r,r.setParent(this),r._registerOnCollectionChange(this._onCollectionChange),r)}addControl(e,r,n={}){this.registerControl(e,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(e,r={}){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}setControl(e,r,n={}){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],r&&this.registerControl(e,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}contains(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}setValue(e,r={}){wx(this,!0,e),Object.keys(e).forEach(n=>{Cx(this,!0,n),this.controls[n].setValue(e[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r)}patchValue(e,r={}){e!=null&&(Object.keys(e).forEach(n=>{let i=this.controls[n];i&&i.patchValue(e[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r))}reset(e={},r={}){this._forEachChild((n,i)=>{n.reset(e?e[i]:null,{onlySelf:!0,emitEvent:r.emitEvent})}),this._updatePristine(r,this),this._updateTouched(r,this),this.updateValueAndValidity(r)}getRawValue(){return this._reduceChildren({},(e,r,n)=>(e[n]=r.getRawValue(),e))}_syncPendingControls(){let e=this._reduceChildren(!1,(r,n)=>n._syncPendingControls()?!0:r);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_forEachChild(e){Object.keys(this.controls).forEach(r=>{let n=this.controls[r];n&&e(n,r)})}_setUpControls(){this._forEachChild(e=>{e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(e){for(let[r,n]of Object.entries(this.controls))if(this.contains(r)&&e(n))return!0;return!1}_reduceValue(){let e={};return this._reduceChildren(e,(r,n,i)=>((n.enabled||this.disabled)&&(r[i]=n.value),r))}_reduceChildren(e,r){let n=e;return this._forEachChild((i,o)=>{n=r(n,i,o)}),n}_allControlsDisabled(){for(let e of Object.keys(this.controls))if(this.controls[e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(e){return this.controls.hasOwnProperty(e)?this.controls[e]:null}};var Fa=new x("CallSetDisabledState",{providedIn:"root",factory:()=>La}),La="always";function bx(t,e){return[...e.path,t]}function Sv(t,e,r=La){Mv(t,e),e.valueAccessor.writeValue(t.value),(t.disabled||r==="always")&&e.valueAccessor.setDisabledState?.(t.disabled),_x(t,e),xx(t,e),Ix(t,e),Ex(t,e)}function hv(t,e){t.forEach(r=>{r.registerOnValidatorChange&&r.registerOnValidatorChange(e)})}function Ex(t,e){if(e.valueAccessor.setDisabledState){let r=n=>{e.valueAccessor.setDisabledState(n)};t.registerOnDisabledChange(r),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(r)})}}function Mv(t,e){let r=mx(t);e.validator!==null?t.setValidators(uv(r,e.validator)):typeof r=="function"&&t.setValidators([r]);let n=gx(t);e.asyncValidator!==null?t.setAsyncValidators(uv(n,e.asyncValidator)):typeof n=="function"&&t.setAsyncValidators([n]);let i=()=>t.updateValueAndValidity();hv(e._rawValidators,i),hv(e._rawAsyncValidators,i)}function _x(t,e){e.valueAccessor.registerOnChange(r=>{t._pendingValue=r,t._pendingChange=!0,t._pendingDirty=!0,t.updateOn==="change"&&Tv(t,e)})}function Ix(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,t.updateOn==="blur"&&t._pendingChange&&Tv(t,e),t.updateOn!=="submit"&&t.markAsTouched()})}function Tv(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function xx(t,e){let r=(n,i)=>{e.valueAccessor.writeValue(n),i&&e.viewToModelUpdate(n)};t.registerOnChange(r),e._registerOnDestroy(()=>{t._unregisterOnChange(r)})}function Sx(t,e){t==null,Mv(t,e)}function Mx(t,e){if(!t.hasOwnProperty("model"))return!1;let r=t.model;return r.isFirstChange()?!0:!Object.is(e,r.currentValue)}function Tx(t){return Object.getPrototypeOf(t.constructor)===ka}function Ax(t,e){t._syncPendingControls(),e.forEach(r=>{let n=r.control;n.updateOn==="submit"&&n._pendingChange&&(r.viewToModelUpdate(n._pendingValue),n._pendingChange=!1)})}function Nx(t,e){if(!e)return null;Array.isArray(e);let r,n,i;return e.forEach(o=>{o.constructor===wn?r=o:Tx(o)?n=o:i=o}),i||n||r||null}var Rx={provide:Yr,useExisting:Ge(()=>Wn)},to=Promise.resolve(),Wn=(()=>{let e=class e extends Yr{get submitted(){return zt(this.submittedReactive)}constructor(n,i,o){super(),this.callSetDisabledState=o,this._submitted=Ei(()=>this.submittedReactive()),this.submittedReactive=wi(!1),this._directives=new Set,this.ngSubmit=new he,this.form=new Oa({},Ad(n),Nd(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(n){to.then(()=>{let i=this._findContainer(n.path);n.control=i.registerControl(n.name,n.control),Sv(n.control,n,this.callSetDisabledState),n.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(n)})}getControl(n){return this.form.get(n.path)}removeControl(n){to.then(()=>{let i=this._findContainer(n.path);i&&i.removeControl(n.name),this._directives.delete(n)})}addFormGroup(n){to.then(()=>{let i=this._findContainer(n.path),o=new Oa({});Sx(o,n),i.registerControl(n.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(n){to.then(()=>{let i=this._findContainer(n.path);i&&i.removeControl(n.name)})}getFormGroup(n){return this.form.get(n.path)}updateModel(n,i){to.then(()=>{this.form.get(n.path).setValue(i)})}setValue(n){this.control.setValue(n)}onSubmit(n){return this.submittedReactive.set(!0),Ax(this.form,this._directives),this.ngSubmit.emit(n),n?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(n=void 0){this.form.reset(n),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(n){return n.pop(),n.length?this.form.get(n):this.form}};e.\u0275fac=function(i){return new(i||e)(S(Jr,10),S(Dv,10),S(Fa,8))},e.\u0275dir=ne({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,o){i&1&&A("submit",function(a){return o.onSubmit(a)})("reset",function(){return o.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[pt([Rx]),Fe]});let t=e;return t})();function pv(t,e){let r=t.indexOf(e);r>-1&&t.splice(r,1)}function mv(t){return typeof t=="object"&&t!==null&&Object.keys(t).length===2&&"value"in t&&"disabled"in t}var Ox=class extends Ra{constructor(e=null,r,n){super(Iv(r),xv(n,r)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(e),this._setUpdateStrategy(r),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Pa(r)&&(r.nonNullable||r.initialValueIsDefault)&&(mv(e)?this.defaultValue=e.value:this.defaultValue=e)}setValue(e,r={}){this.value=this._pendingValue=e,this._onChange.length&&r.emitModelToViewChange!==!1&&this._onChange.forEach(n=>n(this.value,r.emitViewToModelChange!==!1)),this.updateValueAndValidity(r)}patchValue(e,r={}){this.setValue(e,r)}reset(e=this.defaultValue,r={}){this._applyFormState(e),this.markAsPristine(r),this.markAsUntouched(r),this.setValue(this.value,r),this._pendingChange=!1}_updateValue(){}_anyControls(e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(e){this._onChange.push(e)}_unregisterOnChange(e){pv(this._onChange,e)}registerOnDisabledChange(e){this._onDisabledChange.push(e)}_unregisterOnDisabledChange(e){pv(this._onDisabledChange,e)}_forEachChild(e){}_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(e){mv(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}};var kx={provide:Qr,useExisting:Ge(()=>Zn)},gv=Promise.resolve(),Zn=(()=>{let e=class e extends Qr{constructor(n,i,o,s,a,l){super(),this._changeDetectorRef=a,this.callSetDisabledState=l,this.control=new Ox,this._registered=!1,this.name="",this.update=new he,this._parent=n,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=Nx(this,s)}ngOnChanges(n){if(this._checkForErrors(),!this._registered||"name"in n){if(this._registered&&(this._checkName(),this.formDirective)){let i=n.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in n&&this._updateDisabled(n),Mx(n,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(n){this.viewModel=n,this.update.emit(n)}_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(){Sv(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(n){gv.then(()=>{this.control.setValue(n,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(n){let i=n.isDisabled.currentValue,o=i!==0&&Gt(i);gv.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(n){return this._parent?bx(n,this._parent):[n]}};e.\u0275fac=function(i){return new(i||e)(S(Yr,9),S(Jr,10),S(Dv,10),S(io,10),S(mn,8),S(Fa,8))},e.\u0275dir=ne({type:e,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"],features:[pt([kx]),Fe,Ut]});let t=e;return t})(),ti=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275dir=ne({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]});let t=e;return t})();var Px={provide:io,useExisting:Ge(()=>Rd),multi:!0};var Fx=(()=>{let e=class e{constructor(){this._accessors=[]}add(n,i){this._accessors.push([n,i])}remove(n){for(let i=this._accessors.length-1;i>=0;--i)if(this._accessors[i][1]===n){this._accessors.splice(i,1);return}}select(n){this._accessors.forEach(i=>{this._isSameGroup(i,n)&&i[1]!==n&&i[1].fireUncheck(n.value)})}_isSameGroup(n,i){return n[0].control?n[0]._parent===i._control._parent&&n[1].name===i.name:!1}};e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=E({token:e,factory:e.\u0275fac,providedIn:"root"});let t=e;return t})(),Rd=(()=>{let e=class e extends ka{constructor(n,i,o,s){super(n,i),this._registry=o,this._injector=s,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=C(Fa,{optional:!0})??La}ngOnInit(){this._control=this._injector.get(Qr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(n){this._state=n===this.value,this.setProperty("checked",this._state)}registerOnChange(n){this._fn=n,this.onChange=()=>{n(this.value),this._registry.select(this)}}setDisabledState(n){(this.setDisabledStateFired||n||this.callSetDisabledState==="whenDisabledForLegacyCode")&&this.setProperty("disabled",n),this.setDisabledStateFired=!0}fireUncheck(n){this.writeValue(n)}_checkName(){this.name&&this.formControlName&&(this.name,this.formControlName),!this.name&&this.formControlName&&(this.name=this.formControlName)}};e.\u0275fac=function(i){return new(i||e)(S(st),S(Ae),S(Fx),S(rt))},e.\u0275dir=ne({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(i,o){i&1&&A("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[pt([Px]),Fe]});let t=e;return t})();var Lx={provide:io,useExisting:Ge(()=>Va),multi:!0};function Av(t,e){return t==null?`${e}`:(e&&typeof e=="object"&&(e="Object"),`${t}: ${e}`.slice(0,50))}function Vx(t){return t.split(":")[0]}var Va=(()=>{let e=class e extends ka{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;let i=this._getOptionId(n),o=Av(i,n);this.setProperty("value",o)}registerOnChange(n){this.onChange=i=>{this.value=this._getOptionValue(i),n(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(n){for(let i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i),n))return i;return null}_getOptionValue(n){let i=Vx(n);return this._optionMap.has(i)?this._optionMap.get(i):n}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(i,o){i&1&&A("change",function(a){return o.onChange(a.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[pt([Lx]),Fe]});let t=e;return t})(),Nv=(()=>{let e=class e{constructor(n,i,o){this._element=n,this._renderer=i,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(n){this._select!=null&&(this._select._optionMap.set(this.id,n),this._setElementValue(Av(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._setElementValue(n),this._select&&this._select.writeValue(this._select.value)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}};e.\u0275fac=function(i){return new(i||e)(S(Ae),S(st),S(Va,9))},e.\u0275dir=ne({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}});let t=e;return t})(),jx={provide:io,useExisting:Ge(()=>Rv),multi:!0};function vv(t,e){return t==null?`${e}`:(typeof e=="string"&&(e=`'${e}'`),e&&typeof e=="object"&&(e="Object"),`${t}: ${e}`.slice(0,50))}function Ux(t){return t.split(":")[0]}var Rv=(()=>{let e=class e extends ka{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;let i;if(Array.isArray(n)){let o=n.map(s=>this._getOptionId(s));i=(s,a)=>{s._setSelected(o.indexOf(a.toString())>-1)}}else i=(o,s)=>{o._setSelected(!1)};this._optionMap.forEach(i)}registerOnChange(n){this.onChange=i=>{let o=[],s=i.selectedOptions;if(s!==void 0){let a=s;for(let l=0;l{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(i,o){i&1&&A("change",function(a){return o.onChange(a.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[pt([jx]),Fe]});let t=e;return t})(),Ov=(()=>{let e=class e{constructor(n,i,o){this._element=n,this._renderer=i,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(n){this._select!=null&&(this._value=n,this._setElementValue(vv(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._select?(this._value=n,this._setElementValue(vv(this.id,n)),this._select.writeValue(this._select.value)):this._setElementValue(n)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}_setSelected(n){this._renderer.setProperty(this._element.nativeElement,"selected",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}};e.\u0275fac=function(i){return new(i||e)(S(Ae),S(st),S(Rv,9))},e.\u0275dir=ne({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}});let t=e;return t})();function Bx(t){return typeof t=="number"?t:parseInt(t,10)}var ja=(()=>{let e=class e{constructor(){this._validator=Sd}ngOnChanges(n){if(this.inputName in n){let i=this.normalizeInput(n[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):Sd,this._onChange&&this._onChange()}}validate(n){return this._validator(n)}registerOnValidatorChange(n){this._onChange=n}enabled(n){return n!=null}};e.\u0275fac=function(i){return new(i||e)},e.\u0275dir=ne({type:e,features:[Ut]});let t=e;return t})();var $x={provide:Jr,useExisting:Ge(()=>Yn),multi:!0};var Yn=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Gt,this.createValidator=n=>lx}enabled(n){return n}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,o){i&2&&$t("required",o._enabled?"":null)},inputs:{required:"required"},features:[pt([$x]),Fe]});let t=e;return t})();var Hx={provide:Jr,useExisting:Ge(()=>oo),multi:!0},oo=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Gt,this.createValidator=n=>cx}enabled(n){return n}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[pt([Hx]),Fe]});let t=e;return t})();var Gx={provide:Jr,useExisting:Ge(()=>Od),multi:!0},Od=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=n=>Bx(n),this.createValidator=n=>ux(n)}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(i,o){i&2&&$t("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[pt([Gx]),Fe]});let t=e;return t})(),zx={provide:Jr,useExisting:Ge(()=>kd),multi:!0},kd=(()=>{let e=class e extends ja{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=n=>n,this.createValidator=n=>dx(n)}};e.\u0275fac=(()=>{let n;return function(o){return(n||(n=ft(e)))(o||e)}})(),e.\u0275dir=ne({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(i,o){i&2&&$t("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[pt([zx]),Fe]});let t=e;return t})();var qx=(()=>{let e=class e{};e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({});let t=e;return t})();var bn=(()=>{let e=class e{static withConfig(n){return{ngModule:e,providers:[{provide:Fa,useValue:n.callSetDisabledState??La}]}}};e.\u0275fac=function(i){return new(i||e)},e.\u0275mod=qe({type:e}),e.\u0275inj=ze({imports:[qx]});let t=e;return t})();var Ua=class{constructor(){this.name="",this.email="",this.message=""}};var Ba=(()=>{let e=class e{constructor(n){this.httpClient=n}postContactForm(n){return this.httpClient.post(`${K.apiBaseUrl}contact`,n)}};e.\u0275fac=function(i){return new(i||e)(I(Mi))},e.\u0275prov=E({token:e,factory:e.\u0275fac});let t=e;return t})();function Zx(t,e){if(t&1){let r=ie();u(0,"form",5,0),A("ngSubmit",function(){F(r);let i=_();return L(i.submit())}),u(2,"div",6)(3,"label",7),c(4,"Name "),u(5,"span",8),c(6,"*"),f()(),u(7,"input",9),le("ngModelChange",function(i){F(r);let o=_();return ue(o.contactViewModel.name,i)||(o.contactViewModel.name=i),L(i)}),f()(),u(8,"div",6)(9,"label",10),c(10,"Email address "),u(11,"span",8),c(12,"*"),f()(),u(13,"input",11),le("ngModelChange",function(i){F(r);let o=_();return ue(o.contactViewModel.email,i)||(o.contactViewModel.email=i),L(i)}),f()(),u(14,"div",6)(15,"label",12),c(16,"Message "),u(17,"span",8),c(18,"*"),f()(),u(19,"textarea",13),le("ngModelChange",function(i){F(r);let o=_();return ue(o.contactViewModel.message,i)||(o.contactViewModel.message=i),L(i)}),f()(),u(20,"button",14),c(21,"Submit"),f()()}if(t&2){let r=Hs(1),n=_();g(7),ae("ngModel",n.contactViewModel.name),g(6),ae("ngModel",n.contactViewModel.email),g(6),ae("ngModel",n.contactViewModel.message),g(),D("disabled",!r.valid||n.enableFormCountDown>0)}}function Yx(t,e){t&1&&(u(0,"p"),c(1,"Thanks for your message."),f())}function Qx(t,e){t&1&&(u(0,"p",4),c(1,"Something went wrong. Please try again later."),f())}var kv=(()=>{let e=class e{constructor(n){this.contactService=n,this.contactViewModel=new Ua,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,this.enableFormCountDown===0&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:n=>{console.log("Submitted form"),this.success=!0},error:n=>{console.error(n),this.error=!0},complete:()=>console.info("complete")})}};e.\u0275fac=function(i){return new(i||e)(S(Ba))},e.\u0275cmp=ce({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[de],decls:6,vars:3,consts:[["contactForm","ngForm"],[1,"container"],[1,"mb-4"],["method","post"],[1,"text-danger"],["method","post",3,"ngSubmit"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModelChange","ngModel"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModelChange","ngModel"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModelChange","ngModel"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(i,o){i&1&&(u(0,"div",1)(1,"h1",2),c(2,"Contact"),f(),k(3,Zx,22,4,"form",3)(4,Yx,2,0,"p")(5,Qx,2,0,"p",4),f()),i&2&&(g(3),Bn(!o.success&&!o.error?3:-1),g(),Bn(o.success?4:-1),g(),Bn(o.error?5:-1))},dependencies:[bn,ti,wn,Xr,ei,Yn,oo,Zn,Wn]});let t=e;return t})();var Pv=()=>["/pro"],Fv=(()=>{let e=class e{scrollToAnchor(n){return document.querySelector(n)?.scrollIntoView(!0),!1}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-features-component"]],standalone:!0,features:[de],decls:163,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"],["id","rawmode",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Settings#other-settings","target","_blank"]],template:function(i,o){i&1&&(u(0,"div",0)(1,"h1",1),c(2,"Features"),f(),u(3,"h2",2),c(4,"Coverage quotas"),f(),u(5,"p"),c(6," The overiew cards provide a quick "),u(7,"span",3),c(8,"overview"),f(),c(9," of your coverage quotas."),p(10,"br"),c(11," You can use them to get a glimpse into the different "),u(12,"a",4),c(13,"coverage metrics"),f(),c(14,"\xA0"),u(15,"a",4),p(16,"i",5),f(),c(17,": "),f(),u(18,"ul")(19,"li"),c(20,"Line coverage"),f(),u(21,"li"),c(22,"Branch coverage"),f(),u(23,"li"),c(24,"Method coverage "),u(25,"a",6)(26,"span",7),c(27,"PRO"),f()()()(),p(28,"img",8)(29,"br"),u(30,"h2",9),c(31,"Coverage history"),f(),u(32,"p"),c(33," The history chart helps you to understand how your coverage quotas are "),u(34,"span",3),c(35,"evolving over time"),f(),c(36,". "),f(),p(37,"img",10)(38,"br"),u(39,"h2",11),c(40,"Summary table / Overview"),f(),u(41,"p"),c(42," The summary table helps you to identify classes with "),u(43,"span",3),c(44,"low test coverage"),f(),c(45,"."),p(46,"br"),c(47," The table offers various "),u(48,"span",3),c(49,"filter and sorting"),f(),c(50," options for quick navigation. "),f(),p(51,"img",12)(52,"br"),u(53,"h2",13),c(54,"Details page"),f(),u(55,"p"),c(56," The details page visualizes your "),u(57,"span",3),c(58,"line and branch coverage"),f(),c(59,". "),f(),u(60,"ul")(61,"li"),c(62,"Colors indicate the coverage status of each line."),f(),u(63,"li"),c(64,"Branch indicators help you to identity uncovered conditions."),f()(),p(65,"img",14)(66,"br"),u(67,"h2",15),c(68,"Metrics"),f(),u(69,"p"),c(70," Depending on your "),u(71,"a",16),c(72,"coverage tool"),f(),c(73,", metrics are provided to get further insigths in your "),u(74,"span",3),c(75,"code quality"),f(),c(76,". "),f(),u(77,"ul")(78,"li"),c(79,"The "),u(80,"a",17),A("click",function(){return o.scrollToAnchor("#details")}),c(81,"details page"),f(),c(82," contains information about the metrics of all methods of a class."),f(),u(83,"li"),c(84,"The "),u(85,"a",17),A("click",function(){return o.scrollToAnchor("#summary")}),c(86,"summary table"),f(),c(87," shows the lowest metrics of all methods of a class "),u(88,"a",6)(89,"span",7),c(90,"PRO"),f()()()(),u(91,"b"),c(92,"Details page"),f(),p(93,"br")(94,"img",18)(95,"br")(96,"br"),u(97,"b"),c(98,"Summary table"),f(),p(99,"br")(100,"img",19)(101,"br"),u(102,"h2",20),c(103,"Risk Hotspots"),f(),u(104,"p"),c(105," Based on the "),u(106,"a",17),A("click",function(){return o.scrollToAnchor("#metrics")}),c(107,"metrics"),f(),c(108," you get a list of potential risk hotspots."),p(109,"br"),c(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),f(),u(111,"ul")(112,"li")(113,"a",21),c(114,"Cyclomatic complexity"),f(),c(115,"\xA0"),u(116,"a",21),p(117,"i",5),f()(),u(118,"li")(119,"a",22),c(120,"NPath complexity"),f(),c(121,"\xA0"),u(122,"a",22),p(123,"i",5),f()(),u(124,"li")(125,"a",23),c(126,"Crap score"),f(),c(127,"\xA0"),u(128,"a",23),p(129,"i",5),f()()(),p(130,"img",24),u(131,"h2",25),c(132,"Raw mode (for "),u(133,"i"),c(134,"Cobertura"),f(),c(135," and "),u(136,"i"),c(137,"dotCover"),f(),c(138,") "),u(139,"span",7),c(140,"PRO"),f()(),u(141,"p"),c(142,' With "raw mode" (settings:rawMode=true) you can disable that coverage data of nested or compiler generated classes is included in the parent class.'),p(143,"br"),c(144," This is useful to merge several "),u(145,"i"),c(146,"Cobertura"),f(),c(147," files into a single file, since the original class structure remains untouched. "),f(),u(148,"p"),c(149,"See "),u(150,"a",26),c(151,"Settings"),f(),c(152,"\xA0"),u(153,"a",26),p(154,"i",5),f()(),u(155,"p"),c(156,"Limitation: Raw mode is currently only supported for "),u(157,"i"),c(158,"Cobertura"),f(),c(159," and "),u(160,"i"),c(161,"dotCover"),f(),c(162," files."),f()()),i&2&&(g(25),D("routerLink",B(2,Pv)),g(63),D("routerLink",B(3,Pv)))},dependencies:[Ne]});let t=e;return t})();var Re={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.3.11"};var Kx=()=>["/usage"],Lv=(()=>{let e=class e{constructor(){this.versions=Re}};e.\u0275fac=function(i){return new(i||e)},e.\u0275cmp=ce({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[de],decls:75,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/microsoft/codecoverage"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(i,o){i&1&&(u(0,"div",0)(1,"h1",1),c(2,"Get started"),f(),u(3,"h2"),c(4,"General"),f(),u(5,"p"),c(6,"In general you need a tool that instruments your test code and collects coverage information."),p(7,"br"),c(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),p(9,"br"),u(10,"em"),c(11,"ReportGenerator"),f(),c(12," uses this file and generates a report in HTML format (other formats are available)."),f(),u(13,"p"),c(14,"Use the online "),u(15,"a",2),c(16,"configuration tool"),f(),c(17," to get started quickly."),f(),u(18,"h2",3),c(19,".NET"),f(),u(20,"p"),c(21,"For .NET you can use "),u(22,"a",4),c(23,"Microsoft CodeCoverage"),f(),c(24,", "),u(25,"a",5),c(26,"coverlet"),f(),c(27," or "),u(28,"a",6),c(29,"altcover"),f(),c(30," for instrumenting your test code."),f(),u(31,"p"),c(32,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),f(),u(33,"p")(34,"strong"),c(35,"Add dependencies to your "),u(36,"code"),c(37,"*.csproj"),f(),c(38," file:"),f()(),u(39,"pre",7),c(40),f(),u(41,"p")(42,"strong"),c(43,"Execute tests and create coverage report"),f()(),u(44,"pre",7),c(45),f(),u(46,"h2",8),c(47,"Java"),f(),u(48,"p"),c(49,"For Java you can use "),u(50,"a",9),c(51,"JaCoCo"),f(),c(52,` for instrumenting your test code. After adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report.`),f(),u(53,"p")(54,"strong"),c(55,"Add dependencies to your "),u(56,"code"),c(57,"pom.xml"),f(),c(58," file:"),f()(),u(59,"pre",7),c(60,` diff --git a/global.json b/global.json index 269d6988..7227be09 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.400", + "version": "8.0.403", "rollForward": "latestMajor" } } \ No newline at end of file diff --git a/src/AzureDevopsTask/ReportGenerator/task.json b/src/AzureDevopsTask/ReportGenerator/task.json index 1adc999a..99f28f74 100644 --- a/src/AzureDevopsTask/ReportGenerator/task.json +++ b/src/AzureDevopsTask/ReportGenerator/task.json @@ -13,7 +13,7 @@ "version": { "Major": 5, "Minor": 3, - "Patch": 10 + "Patch": 11 }, "instanceNameFormat": "ReportGenerator", "groups": [ diff --git a/src/AzureDevopsTask/vss-extension.json b/src/AzureDevopsTask/vss-extension.json index 26e7f216..d09f631b 100644 --- a/src/AzureDevopsTask/vss-extension.json +++ b/src/AzureDevopsTask/vss-extension.json @@ -2,7 +2,7 @@ "manifestVersion": 1, "id": "reportgenerator", "name": "ReportGenerator", - "version": "5.3.10", + "version": "5.3.11", "publisher": "Palmmedia", "public": true, "targets": [ diff --git a/src/Deployment/nuget/Readme_ReportGenerator.md b/src/Deployment/nuget/Readme_ReportGenerator.md index cd82eaed..0b0fd09c 100644 --- a/src/Deployment/nuget/Readme_ReportGenerator.md +++ b/src/Deployment/nuget/Readme_ReportGenerator.md @@ -13,13 +13,13 @@ ReportGenerator converts coverage reports generated by coverlet, OpenCover, dotC ### .NET Core ``` -dotnet $(UserProfile)\.nuget\packages\reportgenerator\5.3.10\tools\net8.0\ReportGenerator.dll [options] -$(UserProfile)\.nuget\packages\reportgenerator\5.3.10\tools\net8.0\ReportGenerator.exe [options] +dotnet $(UserProfile)\.nuget\packages\reportgenerator\5.3.11\tools\net8.0\ReportGenerator.dll [options] +$(UserProfile)\.nuget\packages\reportgenerator\5.3.11\tools\net8.0\ReportGenerator.exe [options] ``` ### .NET Framework ``` -$(UserProfile)\.nuget\packages\reportgenerator\5.3.10\tools\net47\ReportGenerator.exe [options] +$(UserProfile)\.nuget\packages\reportgenerator\5.3.11\tools\net47\ReportGenerator.exe [options] ``` ## Additional information diff --git a/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md b/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md index 0551ec33..bc54d3ee 100644 --- a/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md +++ b/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md @@ -13,12 +13,12 @@ ReportGenerator converts coverage reports generated by coverlet, OpenCover, dotC ### Installation ``` -dotnet tool install --global dotnet-reportgenerator-globaltool --version 5.3.10 +dotnet tool install --global dotnet-reportgenerator-globaltool --version 5.3.11 -dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version 5.3.10 +dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version 5.3.11 dotnet new tool-manifest -dotnet tool install dotnet-reportgenerator-globaltool --version 5.3.10 +dotnet tool install dotnet-reportgenerator-globaltool --version 5.3.11 ``` ### Execution diff --git a/src/Deployment/nuget/ReportGenerator.Core.nuspec b/src/Deployment/nuget/ReportGenerator.Core.nuspec index 3f831e4d..03955f73 100644 --- a/src/Deployment/nuget/ReportGenerator.Core.nuspec +++ b/src/Deployment/nuget/ReportGenerator.Core.nuspec @@ -28,9 +28,9 @@ https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage - - - + + + @@ -38,9 +38,9 @@ https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage - - - + + + diff --git a/src/Readme.txt b/src/Readme.txt index 810e5f1c..25bcd855 100644 --- a/src/Readme.txt +++ b/src/Readme.txt @@ -67,6 +67,10 @@ For further details take a look at LICENSE.txt. CHANGELOG +5.3.10.0 + + * New: Update dependencies (CVE-2024-43485) + 5.3.10.0 * New: #695 HTML reports: Performance and memory improvements (contributed by @afscrome) diff --git a/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj b/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj index f361c9c2..0deaade9 100644 --- a/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj +++ b/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj @@ -7,8 +7,8 @@ ReportGenerator Palmmedia.ReportGenerator Palmmedia.ReportGenerator.Console.NetCore.Program - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 diff --git a/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj b/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj index 1278098c..e196eb10 100644 --- a/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj +++ b/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj @@ -8,8 +8,8 @@ ReportGenerator.Console ReportGenerator.Console Copyright © 2022 - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 bin\$(Configuration)\ false diff --git a/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj b/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj index 8ee09bb1..a1ae124e 100644 --- a/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj +++ b/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj @@ -4,8 +4,8 @@ net7.0 false Palmmedia.ReportGenerator.Core.Test - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 false diff --git a/src/ReportGenerator.Core/ReportGenerator.Core.csproj b/src/ReportGenerator.Core/ReportGenerator.Core.csproj index 5a0acdb5..fffcbe18 100644 --- a/src/ReportGenerator.Core/ReportGenerator.Core.csproj +++ b/src/ReportGenerator.Core/ReportGenerator.Core.csproj @@ -7,8 +7,8 @@ false true ReportGenerator.Core - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 @@ -86,9 +86,9 @@ - - - + + + all runtime; build; native; contentfiles; analyzers diff --git a/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj b/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj index fff0899b..93fd5c53 100644 --- a/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj +++ b/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj @@ -2,8 +2,8 @@ net6.0;net7.0;net8.0 ReportGenerator.DotnetCorePluginLoader - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 True diff --git a/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj b/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj index f404e56e..bf0cd744 100644 --- a/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj +++ b/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj @@ -7,8 +7,8 @@ ReportGenerator Palmmedia.ReportGenerator Palmmedia.ReportGenerator.DotnetGlobalTool.Program - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 diff --git a/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj b/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj index 4ed95140..87408cd1 100644 --- a/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj +++ b/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj @@ -5,8 +5,8 @@ Palmmedia.ReportGenerator.MSBuild false true - 5.3.10.0 - 5.3.10.0 + 5.3.11.0 + 5.3.11.0 diff --git a/src/build.proj b/src/build.proj index b7d30923..58544857 100644 --- a/src/build.proj +++ b/src/build.proj @@ -22,7 +22,7 @@ - 5.3.10 + 5.3.11