From fad699a3794e31face8c7dfba4ff1558b9ac4570 Mon Sep 17 00:00:00 2001 From: Daniel Palme Date: Tue, 14 Nov 2023 19:50:40 +0100 Subject: [PATCH] Release 5.2.0 --- docs/404.html | 2 +- docs/contact.html | 2 +- docs/features.html | 2 +- docs/getstarted.html | 2 +- docs/index.html | 2 +- docs/main.2c819b7cfce8baa5.js | 1 + docs/main.4bcb4ed2cf277f51.js | 1 - docs/pro.html | 2 +- docs/usage.html | 2 +- 9 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 docs/main.2c819b7cfce8baa5.js delete mode 100644 docs/main.4bcb4ed2cf277f51.js diff --git a/docs/404.html b/docs/404.html index b379617e..252b713b 100644 --- a/docs/404.html +++ b/docs/404.html @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/docs/contact.html b/docs/contact.html index 364e6ad9..60697fbd 100644 --- a/docs/contact.html +++ b/docs/contact.html @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/docs/features.html b/docs/features.html index b11094bf..c30180a9 100644 --- a/docs/features.html +++ b/docs/features.html @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/docs/getstarted.html b/docs/getstarted.html index 88b277d3..55febc72 100644 --- a/docs/getstarted.html +++ b/docs/getstarted.html @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 686fe41c..e500ffc3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/docs/main.2c819b7cfce8baa5.js b/docs/main.2c819b7cfce8baa5.js new file mode 100644 index 00000000..fce53046 --- /dev/null +++ b/docs/main.2c819b7cfce8baa5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{139:()=>{let Re=null,Wr=1;function Se(e){const n=Re;return Re=e,n}function sg(e){if((!bi(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==Wr)){if(!e.producerMustRecompute(e)&&!nu(e))return e.dirty=!1,void(e.lastCleanEpoch=Wr);e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Wr}}function nu(e){Zr(e);for(let n=0;n0}function Zr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let pg=null;function Ce(e){return"function"==typeof e}function iu(e){const t=e(r=>{Error.call(r),r.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const su=iu(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function au(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class Et{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const i of t)i.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(Ce(r))try{r()}catch(i){n=i instanceof su?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{_g(i)}catch(s){n=n??[],s instanceof su?n=[...n,...s.errors]:n.push(s)}}if(n)throw new su(n)}}add(n){var t;if(n&&n!==this)if(this.closed)_g(n);else{if(n instanceof Et){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&au(t,n)}remove(n){const{_finalizers:t}=this;t&&au(t,n),n instanceof Et&&n._removeParent(this)}}Et.EMPTY=(()=>{const e=new Et;return e.closed=!0,e})();const vg=Et.EMPTY;function yg(e){return e instanceof Et||e&&"closed"in e&&Ce(e.remove)&&Ce(e.add)&&Ce(e.unsubscribe)}function _g(e){Ce(e)?e():e.unsubscribe()}const vr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},la={setTimeout(e,n,...t){const{delegate:r}=la;return r?.setTimeout?r.setTimeout(e,n,...t):setTimeout(e,n,...t)},clearTimeout(e){const{delegate:n}=la;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Cg(e){la.setTimeout(()=>{const{onUnhandledError:n}=vr;if(!n)throw e;n(e)})}function lu(){}const GM=cu("C",void 0,void 0);function cu(e,n,t){return{kind:e,value:n,error:t}}let yr=null;function ca(e){if(vr.useDeprecatedSynchronousErrorHandling){const n=!yr;if(n&&(yr={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:r}=yr;if(yr=null,t)throw r}}else e()}class uu extends Et{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,yg(n)&&n.add(this)):this.destination=XM}static create(n,t,r){return new ua(n,t,r)}next(n){this.isStopped?fu(function qM(e){return cu("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?fu(function zM(e){return cu("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?fu(GM,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const ZM=Function.prototype.bind;function du(e,n){return ZM.call(e,n)}class YM{constructor(n){this.partialObserver=n}next(n){const{partialObserver:t}=this;if(t.next)try{t.next(n)}catch(r){da(r)}}error(n){const{partialObserver:t}=this;if(t.error)try{t.error(n)}catch(r){da(r)}else da(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(t){da(t)}}}class ua extends uu{constructor(n,t,r){let o;if(super(),Ce(n)||!n)o={next:n??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&vr.useDeprecatedNextContext?(i=Object.create(n),i.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&du(n.next,i),error:n.error&&du(n.error,i),complete:n.complete&&du(n.complete,i)}):o=n}this.destination=new YM(o)}}function da(e){vr.useDeprecatedSynchronousErrorHandling?function WM(e){vr.useDeprecatedSynchronousErrorHandling&&yr&&(yr.errorThrown=!0,yr.error=e)}(e):Cg(e)}function fu(e,n){const{onStoppedNotification:t}=vr;t&&la.setTimeout(()=>t(e,n))}const XM={closed:!0,next:lu,error:function QM(e){throw e},complete:lu},hu="function"==typeof Symbol&&Symbol.observable||"@@observable";function qn(e){return e}function Dg(e){return 0===e.length?qn:1===e.length?e[0]:function(t){return e.reduce((r,o)=>o(r),t)}}let Te=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const r=new e;return r.source=this,r.operator=t,r}subscribe(t,r,o){const i=function e1(e){return e&&e instanceof uu||function KM(e){return e&&Ce(e.next)&&Ce(e.error)&&Ce(e.complete)}(e)&&yg(e)}(t)?t:new ua(t,r,o);return ca(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(r){t.error(r)}}forEach(t,r){return new(r=wg(r))((o,i)=>{const s=new ua({next:a=>{try{t(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(t){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(t)}[hu](){return this}pipe(...t){return Dg(t)(this)}toPromise(t){return new(t=wg(t))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=n=>new e(n),e})();function wg(e){var n;return null!==(n=e??vr.Promise)&&void 0!==n?n:Promise}const t1=iu(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let zt=(()=>{class e extends Te{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const r=new bg(this,this);return r.operator=t,r}_throwIfClosed(){if(this.closed)throw new t1}next(t){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(t)}})}error(t){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:r}=this;for(;r.length;)r.shift().error(t)}})}complete(){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:r,isStopped:o,observers:i}=this;return r||o?vg:(this.currentObservers=null,i.push(t),new Et(()=>{this.currentObservers=null,au(i,t)}))}_checkFinalizedStatuses(t){const{hasError:r,thrownError:o,isStopped:i}=this;r?t.error(o):i&&t.complete()}asObservable(){const t=new Te;return t.source=this,t}}return e.create=(n,t)=>new bg(n,t),e})();class bg extends zt{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,n)}error(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==r?r:vg}}function Eg(e){return Ce(e?.lift)}function $e(e){return n=>{if(Eg(n))return n.lift(function(t){try{return e(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function Ve(e,n,t,r,o){return new n1(e,n,t,r,o)}class n1 extends uu{constructor(n,t,r,o,i,s){super(n),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(a){try{t(a)}catch(l){n.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function K(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>{r.next(e.call(n,i,o++))}))})}function Wn(e){return this instanceof Wn?(this.v=e,this):new Wn(e)}function Tg(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function vu(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Ag=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function xg(e){return Ce(e?.then)}function Ng(e){return Ce(e[hu])}function Rg(e){return Symbol.asyncIterator&&Ce(e?.[Symbol.asyncIterator])}function Og(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Pg=function E1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function kg(e){return Ce(e?.[Pg])}function Fg(e){return function Sg(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=t.apply(e,n||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){r[g]&&(o[g]=function(m){return new Promise(function(v,_){i.push([g,m,v,_])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Wn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(r[g](m))}catch(v){d(i[0][3],v)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:r,done:o}=yield Wn(t.read());if(o)return yield Wn(void 0);yield yield Wn(r)}}finally{t.releaseLock()}})}function Lg(e){return Ce(e?.getReader)}function qt(e){if(e instanceof Te)return e;if(null!=e){if(Ng(e))return function I1(e){return new Te(n=>{const t=e[hu]();if(Ce(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Ag(e))return function M1(e){return new Te(n=>{for(let t=0;t{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,Cg)})}(e);if(Rg(e))return Vg(e);if(kg(e))return function T1(e){return new Te(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(Lg(e))return function A1(e){return Vg(Fg(e))}(e)}throw Og(e)}function Vg(e){return new Te(n=>{(function x1(e,n){var t,r,o,i;return function Ig(e,n,t,r){return new(t||(t=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof t?i:new t(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=Tg(e);!(r=yield t.next()).done;)if(n.next(r.value),n.closed)return}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=t.return)&&(yield i.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function An(e,n,t,r=0,o=!1){const i=n.schedule(function(){t(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Xe(e,n,t=1/0){return Ce(n)?Xe((r,o)=>K((i,s)=>n(r,i,o,s))(qt(e(r,o))),t):("number"==typeof n&&(t=n),$e((r,o)=>function N1(e,n,t,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&n.complete()},m=_=>c{i&&n.next(_),c++;let D=!1;qt(t(_,u++)).subscribe(Ve(n,I=>{o?.(I),i?m(I):n.next(I)},()=>{D=!0},void 0,()=>{if(D)try{for(c--;l.length&&cv(I)):v(I)}g()}catch(I){n.error(I)}}))};return e.subscribe(Ve(n,m,()=>{d=!0,g()})),()=>{a?.()}}(r,o,e,t)))}function Yr(e=1/0){return Xe(qn,e)}const an=new Te(e=>e.complete());function yu(e){return e[e.length-1]}function jg(e){return Ce(yu(e))?e.pop():void 0}function Ei(e){return function O1(e){return e&&Ce(e.schedule)}(yu(e))?e.pop():void 0}function Hg(e,n=0){return $e((t,r)=>{t.subscribe(Ve(r,o=>An(r,e,()=>r.next(o),n),()=>An(r,e,()=>r.complete(),n),o=>An(r,e,()=>r.error(o),n)))})}function Ug(e,n=0){return $e((t,r)=>{r.add(e.schedule(()=>t.subscribe(r),n))})}function Bg(e,n){if(!e)throw new Error("Iterable cannot be null");return new Te(t=>{An(t,n,()=>{const r=e[Symbol.asyncIterator]();An(t,n,()=>{r.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}function Oe(e,n){return n?function H1(e,n){if(null!=e){if(Ng(e))return function k1(e,n){return qt(e).pipe(Ug(n),Hg(n))}(e,n);if(Ag(e))return function L1(e,n){return new Te(t=>{let r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}(e,n);if(xg(e))return function F1(e,n){return qt(e).pipe(Ug(n),Hg(n))}(e,n);if(Rg(e))return Bg(e,n);if(kg(e))return function V1(e,n){return new Te(t=>{let r;return An(t,n,()=>{r=e[Pg](),An(t,n,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void t.error(s)}i?t.complete():t.next(o)},0,!0)}),()=>Ce(r?.return)&&r.return()})}(e,n);if(Lg(e))return function j1(e,n){return Bg(Fg(e),n)}(e,n)}throw Og(e)}(e,n):qt(e)}class kt extends zt{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:r}=this;if(n)throw t;return this._throwIfClosed(),r}next(n){super.next(this._value=n)}}function F(...e){return Oe(e,Ei(e))}function _r(e){return e<=0?()=>an:$e((n,t)=>{let r=0;n.subscribe(Ve(t,o=>{++r<=e&&(t.next(o),e<=r&&t.complete())}))})}function $g(e={}){const{connector:n=(()=>new zt),resetOnError:t=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},v=()=>{const _=s;m(),_?.unsubscribe()};return $e((_,D)=>{c++,!d&&!u&&g();const I=l=l??n();D.add(()=>{c--,0===c&&!d&&!u&&(a=_u(v,o))}),I.subscribe(D),s||(s=new ua({next:w=>I.next(w),error:w=>{d=!0,g(),a=_u(m,t,w),I.error(w)},complete:()=>{u=!0,g(),a=_u(m,r),I.complete()}}),Oe(_).subscribe(s))})(i)}}function _u(e,n,...t){return!0===n?(e(),null):!1===n?null:n(...t).pipe(_r(1)).subscribe(()=>e())}function Ft(e,n){return $e((t,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();t.subscribe(Ve(r,l=>{o?.unsubscribe();let c=0;const u=i++;qt(e(l,u)).subscribe(o=Ve(r,d=>r.next(n?n(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function $1(e,n){return e===n}function le(e){for(let n in e)if(e[n]===le)return n;throw Error("Could not find renamed property on target object.")}function fa(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function je(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(je).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const n=e.toString();if(null==n)return""+n;const t=n.indexOf("\n");return-1===t?n:n.substring(0,t)}function Cu(e,n){return null==e||""===e?null===n?"":n:null==n||""===n?e:e+" "+n}const G1=le({__forward_ref__:le});function he(e){return e.__forward_ref__=he,e.toString=function(){return je(this())},e}function j(e){return ha(e)?e():e}function ha(e){return"function"==typeof e&&e.hasOwnProperty(G1)&&e.__forward_ref__===he}function Du(e){return e&&!!e.\u0275providers}const Gg="https://g.co/ng/security#xss";class M extends Error{constructor(n,t){super(function Qr(e,n){return`NG0${Math.abs(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Ii=le({\u0275cmp:le}),wu=le({\u0275dir:le}),bu=le({\u0275pipe:le}),zg=le({\u0275mod:le}),xn=le({\u0275fac:le}),Mi=le({__NG_ELEMENT_ID__:le}),qg=le({__NG_ENV_ID__:le});function G(e){return"string"==typeof e?e:null==e?"":String(e)}function Eu(e,n){throw new M(-201,!1)}function gt(e,n){null==e&&function L(e,n,t,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${t} ${r} ${n} <=Actual]`))}(n,e,null,"!=")}function O(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function ln(e){return{providers:e.providers||[],imports:e.imports||[]}}function pa(e){return Wg(e,ma)||Wg(e,Zg)}function Wg(e,n){return e.hasOwnProperty(n)?e[n]:null}function ga(e){return e&&(e.hasOwnProperty(Iu)||e.hasOwnProperty(K1))?e[Iu]:null}const ma=le({\u0275prov:le}),Iu=le({\u0275inj:le}),Zg=le({ngInjectableDef:le}),K1=le({ngInjectorDef:le});var X=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}(X||{});let Mu;function Yg(){return Mu}function mt(e){const n=Mu;return Mu=e,n}function Qg(e,n,t){const r=pa(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:t&X.Optional?null:void 0!==n?n:void Eu(je(e))}const pe=globalThis;class N{constructor(n,t){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=O({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Si={},Nu="__NG_DI_FLAG__",va="ngTempTokenPath",n0=/\n/gm,Jg="__source";let Xr;function Yn(e){const n=Xr;return Xr=e,n}function s0(e,n=X.Default){if(void 0===Xr)throw new M(-203,!1);return null===Xr?Qg(e,void 0,n):Xr.get(e,n&X.Optional?null:void 0,n)}function k(e,n=X.Default){return(Yg()||s0)(j(e),n)}function A(e,n=X.Default){return k(e,ya(n))}function ya(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ru(e){const n=[];for(let t=0;tn){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&r?g:null;if(m&&-1!==em(m,c,0)||2&r&&c!==g){if(Zt(r))return!1;s=!0}}}}else{if(!s&&!Zt(r)&&!Zt(l))return!1;if(s&&Zt(l))continue;s=!1,r=l|1&r}}return Zt(r)||s}function Zt(e){return 0==(1&e)}function h0(e,n,t,r){if(null===n)return-1;let o=0;if(r||!t){let i=!1;for(;o-1)for(t++;t0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!Zt(s)&&(n+=am(i,o),o=""),r=s,i=i||!Zt(r);t++}return""!==o&&(n+=am(i,o)),n}function Mt(e){return Nn(()=>{const n=cm(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===_a.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Wt.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};um(t);const r=e.dependencies;return t.directiveDefs=Ca(r,!1),t.pipeDefs=Ca(r,!0),t.id=function E0(e){let n=0;const t=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery].join("|");for(const o of t)n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}(t),t})}function D0(e){return Q(e)||Ge(e)}function w0(e){return null!==e}function Rn(e){return Nn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function lm(e,n){if(null==e)return cn;const t={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),t[o]=r,n&&(n[o]=i)}return t}function $(e){return Nn(()=>{const n=cm(e);return um(n),n})}function Q(e){return e[Ii]||null}function Ge(e){return e[wu]||null}function Je(e){return e[bu]||null}function et(e,n){const t=e[zg]||null;if(!t&&!0===n)throw new Error(`Type ${je(e)} does not have '\u0275mod' property.`);return t}function cm(e){const n={};return{type:e.type,providersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:n,inputTransforms:null,inputConfig:e.inputs||cn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:lm(e.inputs,n),outputs:lm(e.outputs),debugInfo:null}}function um(e){e.features?.forEach(n=>n(e))}function Ca(e,n){if(!e)return null;const t=n?Je:D0;return()=>("function"==typeof e?e():e).map(r=>t(r)).filter(w0)}const Ae=0,T=1,H=2,we=3,Yt=4,tt=5,un=6,Jr=7,ge=8,it=9,Kr=10,z=11,xi=12,dm=13,eo=14,Me=15,Ni=16,to=17,dn=18,Ri=19,fm=20,Xn=21,Da=22,Cr=23,U=25,Pu=1,hm=2,ku=6,fn=7,no=9,Pe=11;function Ke(e){return Array.isArray(e)&&"object"==typeof e[Pu]}function Ye(e){return Array.isArray(e)&&!0===e[Pu]}function Fu(e){return 0!=(4&e.flags)}function Dr(e){return e.componentOffset>-1}function ba(e){return 1==(1&e.flags)}function Qt(e){return!!e.template}function Lu(e){return 0!=(512&e[H])}function wr(e,n){return e.hasOwnProperty(xn)?e[xn]:null}class T0{constructor(n,t,r){this.previousValue=n,this.currentValue=t,this.firstChange=r}isFirstChange(){return this.firstChange}}function Lt(){return vm}function vm(e){return e.type.prototype.ngOnChanges&&(e.setInput=x0),A0}function A0(){const e=_m(this),n=e?.current;if(n){const t=e.previous;if(t===cn)e.previous=n;else for(let r in n)t[r]=n[r];e.current=null,this.ngOnChanges(n)}}function x0(e,n,t,r){const o=this.declaredInputs[t],i=_m(e)||function N0(e,n){return e[ym]=n}(e,{previous:cn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new T0(l&&l.currentValue,n,a===cn),e[r]=n}Lt.ngInherit=!0;const ym="__ngSimpleChanges__";function _m(e){return e[ym]||null}const hn=function(e,n,t){};function me(e){for(;Array.isArray(e);)e=e[Ae];return e}function Pi(e,n){return me(n[e])}function st(e,n){return me(n[e.index])}function ki(e,n){return e.data[n]}function St(e,n){const t=n[e];return Ke(t)?t:t[Ae]}function Bu(e){return 128==(128&e[H])}function pn(e,n){return null==n?null:e[n]}function wm(e){e[to]=0}function F0(e){1024&e[H]||(e[H]|=1024,Bu(e)&&Ea(e))}function Em(e){9216&e[H]&&Ea(e)}function Ea(e){let n=e[we];for(;null!==n&&!(Ye(n)&&n[ku]||Ke(n)&&8192&n[H]);){if(Ye(n))n[ku]=!0;else if(n[H]|=8192,!Bu(n))break;n=n[we]}}function Ia(e,n){if(256==(256&e[H]))throw new M(911,!1);null===e[Xn]&&(e[Xn]=[]),e[Xn].push(n)}const B={lFrame:Pm(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Mm(){return B.bindingsEnabled}function b(){return B.lFrame.lView}function J(){return B.lFrame.tView}function re(e){return B.lFrame.contextLView=e,e[ge]}function oe(e){return B.lFrame.contextLView=null,e}function ue(){let e=Sm();for(;null!==e&&64===e.type;)e=e.parent;return e}function Sm(){return B.lFrame.currentTNode}function gn(e,n){const t=B.lFrame;t.currentTNode=e,t.isParent=n}function Gu(){return B.lFrame.isParent}function zu(){B.lFrame.isParent=!1}function at(){const e=B.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function mn(){return B.lFrame.bindingIndex++}function W0(e,n){const t=B.lFrame;t.bindingIndex=t.bindingRootIndex=e,qu(n)}function qu(e){B.lFrame.currentDirectiveIndex=e}function Nm(){return B.lFrame.currentQueryIndex}function Zu(e){B.lFrame.currentQueryIndex=e}function Y0(e){const n=e[T];return 2===n.type?n.declTNode:1===n.type?e[tt]:null}function Rm(e,n,t){if(t&X.SkipSelf){let o=n,i=e;for(;!(o=o.parent,null!==o||t&X.Host||(o=Y0(i),null===o||(i=i[eo],10&o.type))););if(null===o)return!1;n=o,e=i}const r=B.lFrame=Om();return r.currentTNode=n,r.lView=e,!0}function Yu(e){const n=Om(),t=e[T];B.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function Om(){const e=B.lFrame,n=null===e?null:e.child;return null===n?Pm(e):n}function Pm(e){const n={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:e,child:null,inI18n:!1};return null!==e&&(e.child=n),n}function km(){const e=B.lFrame;return B.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const Fm=km;function Qu(){const e=km();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function lt(){return B.lFrame.selectedIndex}function br(e){B.lFrame.selectedIndex=e}function De(){const e=B.lFrame;return ki(e.tView,e.selectedIndex)}let Vm=!0;function Ma(){return Vm}function Jn(e){Vm=e}function Sa(e,n){for(let t=n.directiveStart,r=n.directiveEnd;t=r)break}else n[l]<0&&(e[to]+=65536),(a>14>16&&(3&e[H])===n&&(e[H]+=16384,Hm(a,i)):Hm(a,i)}const io=-1;class Li{constructor(n,t,r){this.factory=n,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=r}}function Ku(e){return e!==io}function Vi(e){return 32767&e}function ji(e,n){let t=function aS(e){return e>>16}(e),r=n;for(;t>0;)r=r[eo],t--;return r}let ed=!0;function xa(e){const n=ed;return ed=e,n}const Um=255,Bm=5;let lS=0;const vn={};function Na(e,n){const t=$m(e,n);if(-1!==t)return t;const r=n[T];r.firstCreatePass&&(e.injectorIndex=n.length,td(r.data,e),td(n,null),td(r.blueprint,null));const o=Ra(e,n),i=e.injectorIndex;if(Ku(o)){const s=Vi(o),a=ji(o,n),l=a[T].data;for(let c=0;c<8;c++)n[i+c]=a[s+c]|l[s+c]}return n[i+8]=o,i}function td(e,n){e.push(0,0,0,0,0,0,0,0,n)}function $m(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function Ra(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,r=null,o=n;for(;null!==o;){if(r=Qm(o),null===r)return io;if(t++,o=o[eo],-1!==r.injectorIndex)return r.injectorIndex|t<<16}return io}function nd(e,n,t){!function cS(e,n,t){let r;"string"==typeof t?r=t.charCodeAt(0)||0:t.hasOwnProperty(Mi)&&(r=t[Mi]),null==r&&(r=t[Mi]=lS++);const o=r&Um;n.data[e+(o>>Bm)]|=1<=0?n&Um:hS:n}(t);if("function"==typeof i){if(!Rm(n,e,r))return r&X.Host?Gm(o,0,r):zm(n,t,r,o);try{let s;if(s=i(r),null!=s||r&X.Optional)return s;Eu()}finally{Fm()}}else if("number"==typeof i){let s=null,a=$m(e,n),l=io,c=r&X.Host?n[Me][tt]:null;for((-1===a||r&X.SkipSelf)&&(l=-1===a?Ra(e,n):n[a+8],l!==io&&Ym(r,!1)?(s=n[T],a=Vi(l),n=ji(l,n)):a=-1);-1!==a;){const u=n[T];if(Zm(i,a,u.data)){const d=dS(a,n,t,s,r,c);if(d!==vn)return d}l=n[a+8],l!==io&&Ym(r,n[T].data[a+8]===c)&&Zm(i,a,n)?(s=u,a=Vi(l),n=ji(l,n)):a=-1}}return o}function dS(e,n,t,r,o,i){const s=n[T],a=s.data[e+8],u=Oa(a,s,t,null==r?Dr(a)&&ed:r!=s&&0!=(3&a.type),o&X.Host&&i===a);return null!==u?Er(n,s,u,a):vn}function Oa(e,n,t,r,o){const i=e.providerIndexes,s=n.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=r?a:a+u;m=l&&v.type===t)return m}if(o){const m=s[l];if(m&&Qt(m)&&m.type===t)return l}return null}function Er(e,n,t,r){let o=e[t];const i=n.data;if(function rS(e){return e instanceof Li}(o)){const s=o;s.resolving&&function q1(e,n){const t=n?`. Dependency path: ${n.join(" > ")} > ${e}`:"";throw new M(-200,`Circular dependency in DI detected for ${e}${t}`)}(function ne(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():G(e)}(i[t]));const a=xa(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?mt(s.injectImpl):null;Rm(e,r,X.Default);try{o=e[t]=s.factory(void 0,i,e,r),n.firstCreatePass&&t>=r.directiveStart&&function tS(e,n,t){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=n.type.prototype;if(r){const s=vm(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),i&&((t.preOrderHooks??=[]).push(e,i),(t.preOrderCheckHooks??=[]).push(e,i))}(t,i[t],n)}finally{null!==c&&mt(c),xa(a),s.resolving=!1,Fm()}}return o}function Zm(e,n,t){return!!(t[n+(e>>Bm)]&1<{const n=e.prototype.constructor,t=n[xn]||rd(n),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[xn]||rd(o);if(i&&i!==t)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function rd(e){return ha(e)?()=>{const n=rd(j(e));return n&&n()}:wr(e)}function Qm(e){const n=e[T],t=n.type;return 2===t?n.declTNode:1===t?e[tt]:null}const co="__parameters__";function fo(e,n,t){return Nn(()=>{const r=function od(e){return function(...t){if(e){const r=e(...t);for(const o in r)this[o]=r[o]}}}(n);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(co)?l[co]:Object.defineProperty(l,co,{value:[]})[co];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function po(e,n){e.forEach(t=>Array.isArray(t)?po(t,n):n(t))}function Jm(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function ka(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function Tt(e,n,t){let r=go(e,n);return r>=0?e[1|r]=t:(r=~r,function Km(e,n,t,r){let o=e.length;if(o==n)e.push(t,r);else if(1===o)e.push(r,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=r}}(e,r,n,t)),r}function sd(e,n){const t=go(e,n);if(t>=0)return e[1|t]}function go(e,n){return function ev(e,n,t){let r=0,o=e.length>>t;for(;o!==r;){const i=r+(o-r>>1),s=e[i<n?o=i:r=i+1}return~(o<{t.push(s)};return po(n,s=>{const a=s;Ua(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&av(o,i),t}function av(e,n){for(let t=0;t{n(i,r)})}}function Ua(e,n,t,r){if(!(e=j(e)))return!1;let o=null,i=ga(e);const s=!i&&Q(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=ga(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)Ua(c,n,t,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{po(i.imports,u=>{Ua(u,n,t,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&av(c,n)}if(!a){const c=wr(o)||(()=>new o);n({provide:o,useFactory:c,deps:te},o),n({provide:cd,useValue:o,multi:!0},o),n({provide:vo,useValue:()=>k(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;dd(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function dd(e,n){for(let t of e)Du(t)&&(t=t.\u0275providers),Array.isArray(t)?dd(t,n):n(t)}const FS=le({provide:String,useValue:le});function fd(e){return null!==e&&"object"==typeof e&&FS in e}function Ir(e){return"function"==typeof e}const hd=new N("Set Injector scope."),Ba={},VS={};let pd;function $a(){return void 0===pd&&(pd=new Ha),pd}class At{}class Mr extends At{get destroyed(){return this._destroyed}constructor(n,t,r,o){super(),this.parent=t,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,md(n,s=>this.processProvider(s)),this.records.set(ov,yo(void 0,this)),o.has("environment")&&this.records.set(At,yo(void 0,this));const i=this.records.get(hd);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(cd,te,X.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const t of this._ngOnDestroyHooks)t.ngOnDestroy();const n=this._onDestroyHooks;this._onDestroyHooks=[];for(const t of n)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(n){return this.assertNotDestroyed(),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){this.assertNotDestroyed();const t=Yn(this),r=mt(void 0);try{return n()}finally{Yn(t),mt(r)}}get(n,t=Si,r=X.Default){if(this.assertNotDestroyed(),n.hasOwnProperty(qg))return n[qg](this);r=ya(r);const i=Yn(this),s=mt(void 0);try{if(!(r&X.SkipSelf)){let l=this.records.get(n);if(void 0===l){const c=function $S(e){return"function"==typeof e||"object"==typeof e&&e instanceof N}(n)&&pa(n);l=c&&this.injectableDefInScope(c)?yo(gd(n),Ba):null,this.records.set(n,l)}if(null!=l)return this.hydrate(n,l)}return(r&X.Self?$a():this.parent).get(n,t=r&X.Optional&&t===Si?null:t)}catch(a){if("NullInjectorError"===a.name){if((a[va]=a[va]||[]).unshift(je(n)),i)throw a;return function l0(e,n,t,r){const o=e[va];throw n[Jg]&&o.unshift(n[Jg]),e.message=function c0(e,n,t,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=je(n);if(Array.isArray(n))o=n.map(je).join(" -> ");else if("object"==typeof n){let i=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):je(a)))}o=`{${i.join(", ")}}`}return`${t}${r?"("+r+")":""}[${o}]: ${e.replace(n0,"\n ")}`}("\n"+e.message,o,t,r),e.ngTokenPath=o,e[va]=null,e}(a,n,"R3InjectorError",this.source)}throw a}finally{mt(s),Yn(i)}}resolveInjectorInitializers(){const n=Yn(this),t=mt(void 0);try{const o=this.get(vo,te,X.Self);for(const i of o)i()}finally{Yn(n),mt(t)}}toString(){const n=[],t=this.records;for(const r of t.keys())n.push(je(r));return`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new M(205,!1)}processProvider(n){let t=Ir(n=j(n))?n:j(n&&n.provide);const r=function HS(e){return fd(e)?yo(void 0,e.useValue):yo(uv(e),Ba)}(n);if(Ir(n)||!0!==n.multi)this.records.get(t);else{let o=this.records.get(t);o||(o=yo(void 0,Ba,!0),o.factory=()=>Ru(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,r)}hydrate(n,t){return t.value===Ba&&(t.value=VS,t.value=t.factory()),"object"==typeof t.value&&t.value&&function BS(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}injectableDefInScope(n){if(!n.providedIn)return!1;const t=j(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function gd(e){const n=pa(e),t=null!==n?n.factory:wr(e);if(null!==t)return t;if(e instanceof N)throw new M(204,!1);if(e instanceof Function)return function jS(e){const n=e.length;if(n>0)throw function Ui(e,n){const t=[];for(let r=0;rt.factory(e):()=>new e}(e);throw new M(204,!1)}function uv(e,n,t){let r;if(Ir(e)){const o=j(e);return wr(o)||gd(o)}if(fd(e))r=()=>j(e.useValue);else if(function cv(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...Ru(e.deps||[]));else if(function lv(e){return!(!e||!e.useExisting)}(e))r=()=>k(j(e.useExisting));else{const o=j(e&&(e.useClass||e.provide));if(!function US(e){return!!e.deps}(e))return wr(o)||gd(o);r=()=>new o(...Ru(e.deps))}return r}function yo(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function md(e,n){for(const t of e)Array.isArray(t)?md(t,n):t&&Du(t)?md(t.\u0275providers,n):n(t)}function pv(e,n=null,t=null,r){const o=gv(e,n,t,r);return o.resolveInjectorInitializers(),o}function gv(e,n=null,t=null,r,o=new Set){const i=[t||te,iv(e)];return r=r||("object"==typeof e?void 0:je(e)),new Mr(i,n||$a(),r||null,o)}let _d,_t=(()=>{class e{static#e=this.THROW_IF_NOT_FOUND=Si;static#t=this.NULL=new Ha;static create(t,r){if(Array.isArray(t))return pv({name:""},r,t,"");{const o=t.name??"";return pv({name:o},t.parent,t.providers,o)}}static#n=this.\u0275prov=O({token:e,providedIn:"any",factory:()=>k(ov)});static#r=this.__NG_ELEMENT_ID__=-1}return e})();const za=new N("AppId",{providedIn:"root",factory:()=>KS}),KS="ng",vv=new N("Platform Initializer"),Sr=new N("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),yv=new N("CSP nonce",{providedIn:"root",factory:()=>function er(){if(void 0!==_d)return _d;if(typeof document<"u")return document;throw new M(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});function xt(e){return e instanceof Function?e():e}function Ya(e){return 128==(128&e.flags)}var rr=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(rr||{});const cT=/^>|^->||--!>|)/g,dT="\u200b$1\u200b";const Ed=new Map;let fT=0;const Md="__ngContext__";function nt(e,n){Ke(n)?(e[Md]=n[Ri],function pT(e){Ed.set(e[Ri],e)}(n)):e[Md]=n}let Sd;function Td(e,n){return Sd(e,n)}function Wi(e){const n=e[we];return Ye(n)?n[we]:n}function Fv(e){return Vv(e[xi])}function Lv(e){return Vv(e[Yt])}function Vv(e){for(;null!==e&&!Ye(e);)e=e[Yt];return e}function Co(e,n,t,r,o){if(null!=r){let i,s=!1;Ye(r)?i=r:Ke(r)&&(s=!0,r=r[Ae]);const a=me(r);0===e&&null!==t?null==o?Bv(n,t,a):Tr(n,t,a,o||null,!0):1===e&&null!==t?Tr(n,t,a,o||null,!0):2===e?function nl(e,n,t){const r=el(e,n);r&&function OT(e,n,t,r){e.removeChild(n,t,r)}(e,r,n,t)}(n,a,s):3===e&&n.destroyNode(a),null!=i&&function FT(e,n,t,r,o){const i=t[fn];i!==me(t)&&Co(n,e,r,i,o);for(let a=Pe;an.replace(uT,dT))}(n))}function Ja(e,n,t){return e.createElement(n,t)}function Hv(e,n){const t=e[no],r=t.indexOf(n);t.splice(r,1)}function Zi(e,n){if(e.length<=Pe)return;const t=Pe+n,r=e[t];if(r){const o=r[Ni];null!==o&&o!==e&&Hv(o,r),n>0&&(e[t-1][Yt]=r[Yt]);const i=ka(e,Pe+n);!function IT(e,n){Qi(e,n,n[z],2,null,null),n[Ae]=null,n[tt]=null}(r[T],r);const s=i[dn];null!==s&&s.detachView(i[T]),r[we]=null,r[Yt]=null,r[H]&=-129}return r}function Ka(e,n){if(!(256&n[H])){const t=n[z];n[Cr]&&function dg(e){if(Zr(e),bi(e))for(let n=0;n=0?r[s]():r[-s].unsubscribe(),i+=2}else t[i].call(r[t[i+1]]);null!==r&&(n[Jr]=null);const o=n[Xn];if(null!==o){n[Xn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===Wt.None||i===Wt.Emulated)return null}return st(r,t)}}(e,n.parent,t)}function Tr(e,n,t,r,o){e.insertBefore(n,t,r,o)}function Bv(e,n,t){e.appendChild(n,t)}function $v(e,n,t,r,o){null!==r?Tr(e,n,t,r,o):Bv(e,n,t)}function el(e,n){return e.parentNode(n)}let Rd,ol,qv=function zv(e,n,t){return 40&e.type?st(e,t):null};function tl(e,n,t,r){const o=Nd(e,r,n),i=n[z],a=function Gv(e,n,t){return qv(e,n,t)}(r.parent||n[tt],r,n);if(null!=o)if(Array.isArray(t))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return ol}()?.createScriptURL(e)||e}class ny{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${Gg})`}}function or(e){return e instanceof ny?e.changingThisBreaksApplicationSecurity:e}function Xi(e,n){const t=function WT(e){return e instanceof ny&&e.getTypeName()||null}(e);if(null!=t&&t!==n){if("ResourceURL"===t&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${t} (see ${Gg})`)}return t===n}const XT=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var wo=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}(wo||{});function bo(e){const n=Ki();return n?n.sanitize(wo.URL,e)||"":Xi(e,"URL")?or(e):function Ld(e){return(e=String(e)).match(XT)?e:"unsafe:"+e}(G(e))}function cy(e){const n=Ki();if(n)return ty(n.sanitize(wo.RESOURCE_URL,e)||"");if(Xi(e,"ResourceURL"))return ty(or(e));throw new M(904,!1)}function Ki(){const e=b();return e&&e[Kr].sanitizer}let dy=(e,n,t)=>null;function Zd(e,n,t=!1){return dy(e,n,t)}class yA{}class py{}class CA{resolveComponentFactory(n){throw function _A(e){const n=Error(`No component factory found for ${je(e)}.`);return n.ngComponent=e,n}(n)}}let dl=(()=>{class e{static#e=this.NULL=new CA}return e})();function DA(){return Mo(ue(),b())}function Mo(e,n){return new Nt(st(e,n))}let Nt=(()=>{class e{constructor(t){this.nativeElement=t}static#e=this.__NG_ELEMENT_ID__=DA}return e})();function wA(e){return e instanceof Nt?e.nativeElement:e}class my{}let Fn=(()=>{class e{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function bA(){const e=b(),t=St(ue().index,e);return(Ke(t)?t:e)[z]}()}return e})(),EA=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>null})}return e})();class ns{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const IA=new ns("17.0.2"),Xd={};function fl(e){return!!Jd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function Jd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}class yy{constructor(){}supports(n){return fl(n)}create(n){return new xA(n)}}const AA=(e,n)=>n;class xA{constructor(n){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=n||AA}forEachItem(n){let t;for(t=this._itHead;null!==t;t=t._next)n(t)}forEachOperation(n){let t=this._itHead,r=this._removalsHead,o=0,i=null;for(;t||r;){const s=!r||t&&t.currentIndex{s=this._trackByFn(o,a),null!==t&&Object.is(t.trackById,s)?(r&&(t=this._verifyReinsertion(t,a,s,o)),Object.is(t.item,a)||this._addIdentityChange(t,a)):(t=this._mismatch(t,a,s,o),r=!0),t=t._next,o++}),this.length=o;return this._truncate(t),this.collection=n,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,t,r,o){let i;return null===n?i=this._itTail:(i=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._reinsertAfter(n,i,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._moveAfter(n,i,o)):n=this._addAfter(new NA(t,r),i,o),n}_verifyReinsertion(n,t,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?n=this._reinsertAfter(i,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const t=n._next;this._addToRemovals(this._unlink(n)),n=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,t,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,i=n._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(n,t,r),this._addToMoves(n,r),n}_moveAfter(n,t,r){return this._unlink(n),this._insertAfter(n,t,r),this._addToMoves(n,r),n}_addAfter(n,t,r){return this._insertAfter(n,t,r),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,t,r){const o=null===t?this._itHead:t._next;return n._next=o,n._prev=t,null===o?this._itTail=n:o._prev=n,null===t?this._itHead=n:t._next=n,null===this._linkedRecords&&(this._linkedRecords=new _y),this._linkedRecords.put(n),n.currentIndex=r,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const t=n._prev,r=n._next;return null===t?this._itHead=r:t._next=r,null===r?this._itTail=t:r._prev=t,n}_addToMoves(n,t){return n.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new _y),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,t){return n.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class NA{constructor(n,t){this.item=n,this.trackById=t,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}}class RA{constructor(){this._head=null,this._tail=null}add(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)}get(n,t){let r;for(r=this._head;null!==r;r=r._nextDup)if((null===t||t<=r.currentIndex)&&Object.is(r.trackById,n))return r;return null}remove(n){const t=n._prevDup,r=n._nextDup;return null===t?this._head=r:t._nextDup=r,null===r?this._tail=t:r._prevDup=t,null===this._head}}class _y{constructor(){this.map=new Map}put(n){const t=n.trackById;let r=this.map.get(t);r||(r=new RA,this.map.set(t,r)),r.add(n)}get(n,t){const o=this.map.get(n);return o?o.get(n,t):null}remove(n){const t=n.trackById;return this.map.get(t).remove(n)&&this.map.delete(t),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Cy(e,n,t){const r=e.previousIndex;if(null===r)return r;let o=0;return t&&r{if(t&&t.key===o)this._maybeAddToChanges(t,r),this._appendAfter=t,t=t._next;else{const i=this._getOrCreateRecordForKey(o,r);t=this._insertBeforeOrAppend(t,i)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let r=t;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const r=n._prev;return t._next=n,t._prev=r,n._prev=t,r&&(r._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new PA(n);return this._records.set(n,r),r.currentValue=t,this._addToAdditions(r),r}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(r=>t(n[r],r))}}class PA{constructor(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function wy(){return new hl([new yy])}let hl=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:wy});constructor(t){this.factories=t}static create(t,r){if(null!=r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||wy()),deps:[[e,new Va,new La]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(null!=r)return r;throw new M(901,!1)}}return e})();function by(){return new rs([new Dy])}let rs=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:by});constructor(t){this.factories=t}static create(t,r){if(r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||by()),deps:[[e,new Va,new La]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(r)return r;throw new M(901,!1)}}return e})();function os(e,n,t,r,o=!1){for(;null!==t;){const i=n[t.index];null!==i&&r.push(me(i)),Ye(i)&&Ey(i,r);const s=t.type;if(8&s)os(e,n,t.child,r);else if(32&s){const a=Td(t,n);let l;for(;l=a();)r.push(l)}else if(16&s){const a=Zv(n,t);if(Array.isArray(a))r.push(...a);else{const l=Wi(n[Me]);os(l[T],l,a,r,!0)}}t=o?t.projectionNext:t.next}return r}function Ey(e,n){for(let t=Pe;t!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{},consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Ea(e.lView)},consumerOnSignalRead(){this.lView[Cr]=this}};function Kd(e){return e.ngOriginalError}class Ln{constructor(){this._console=console}handleError(n){const t=this._findOriginalError(n);this._console.error("ERROR",n),t&&this._console.error("ORIGINAL ERROR",t)}_findOriginalError(n){let t=n&&Kd(n);for(;t&&Kd(t);)t=Kd(t);return t||null}}const Ty=new N("",{providedIn:"root",factory:()=>!1}),W={};function C(e){Ry(J(),b(),lt()+e,!1)}function Ry(e,n,t,r){if(!r)if(3==(3&n[H])){const i=e.preOrderCheckHooks;null!==i&&Ta(n,i,t)}else{const i=e.preOrderHooks;null!==i&&Aa(n,i,0,t)}br(t)}function S(e,n=X.Default){const t=b();return null===t?k(e,n):qm(ue(),t,j(e),n)}function gl(e,n,t,r,o,i,s,a,l,c,u){const d=n.blueprint.slice();return d[Ae]=o,d[H]=140|r,(null!==c||e&&2048&e[H])&&(d[H]|=2048),wm(d),d[we]=d[eo]=e,d[ge]=t,d[Kr]=s||e&&e[Kr],d[z]=a||e&&e[z],d[it]=l||e&&e[it]||null,d[tt]=i,d[Ri]=function hT(){return fT++}(),d[un]=u,d[fm]=c,d[Me]=2==n.type?e[Me]:d,d}function So(e,n,t,r,o){let i=e.data[n];if(null===i)i=function ef(e,n,t,r,o){const i=Sm(),s=Gu(),l=e.data[n]=function JA(e,n,t,r,o,i){let s=n?n.injectorIndex:-1,a=0;return function oo(){return null!==B.skipHydrationRootTNode}()&&(a|=128),{type:t,index:r,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:o,attrs:i,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?i:i&&i.parent,t,n,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,n,t,r,o),function q0(){return B.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=t,i.value=r,i.attrs=o;const s=function Fi(){const e=B.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return gn(i,!0),i}function is(e,n,t,r){if(0===t)return-1;const o=n.length;for(let i=0;iU&&Ry(e,n,U,!1),hn(s?2:0,o),t(r,o)}finally{br(i),hn(s?3:1,o)}}function tf(e,n,t){if(Fu(n)){const r=Se(null);try{const i=n.directiveEnd;for(let s=n.directiveStart;snull;function Ly(e,n,t,r){for(let o in e)if(e.hasOwnProperty(o)){t=null===t?{}:t;const i=e[o];null===r?Vy(t,n,o,i):r.hasOwnProperty(o)&&Vy(t,n,r[o],i)}return t}function Vy(e,n,t,r){e.hasOwnProperty(t)?e[t].push(n,r):e[t]=[n,r]}function Rt(e,n,t,r,o,i,s,a){const l=st(n,t);let u,c=n.inputs;!a&&null!=c&&(u=c[r])?(df(e,t,u,r,o),Dr(n)&&function tx(e,n){const t=St(n,e);16&t[H]||(t[H]|=64)}(t,n.index)):3&n.type&&(r=function ex(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,n.value||"",r):o,i.setProperty(l,r,o))}function af(e,n,t,r){if(Mm()){const o=null===r?null:{"":-1},i=function ax(e,n){const t=e.directiveRegistry;let r=null,o=null;if(t)for(let i=0;i0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,r,i)}}(e,n,r,is(e,t,o.hostVars,W),o)}function yn(e,n,t,r,o,i){const s=st(e,n);!function cf(e,n,t,r,o,i,s){if(null==i)e.removeAttribute(n,o,t);else{const a=null==s?G(i):s(i,r||"",o);e.setAttribute(n,o,a,t)}}(n[z],s,i,e.value,t,r,o)}function hx(e,n,t,r,o,i){const s=i[n];if(null!==s)for(let a=0;ae.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}(a,s),function VA(e){e.lView[Cr]!==e&&(e.lView=null,Iy.push(e))}(a)),Qu()}}function Zy(e,n){for(let t=Fv(e);null!==t;t=Lv(t)){t[ku]=!1;for(let r=Pe;r-1&&(Zi(n,r),ka(t,r))}this._attachedToViewContainer=!1}Ka(this._lView[T],this._lView)}onDestroy(n){Ia(this._lView,n)}markForCheck(){ss(this._cdRefInjectingView||this._lView)}detach(){this._lView[H]&=-129}reattach(){Em(this._lView),this._lView[H]|=128}detectChanges(){!function ff(e,n,t,r=!0){const o=n[Kr],i=o.rendererFactory,s=o.afterRenderEventManager;i.begin?.(),s?.begin();try{Wy(e,n,e.template,t),function mx(e){let n=0;for(;9216&e[H]||e[Cr]?.dirty;){if(100===n)throw new M(103,!1);n++,Qy(e,1)}}(n)}catch(l){throw r&&vl(n,l),l}finally{i.end?.(),o.inlineEffectRunner?.flush(),s?.end()}}(this._lView[T],this._lView,this.context,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function ST(e,n){Qi(e,n,n[z],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=n}}let ls=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Dx}return e})();function Dx(e){return function wx(e,n,t){if(Dr(e)&&!t){const r=St(e.index,n);return new as(r,r)}return 47&e.type?new as(n[Me],n):null}(ue(),b(),16==(16&e))}let yl=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Mx;static#t=this.__NG_ENV_ID__=t=>t}return e})();class Ix extends yl{constructor(n){super(),this._lView=n}onDestroy(n){return Ia(this._lView,n),()=>function $u(e,n){if(null===e[Xn])return;const t=e[Xn].indexOf(n);-1!==t&&e[Xn].splice(t,1)}(this._lView,n)}}function Mx(){return new Ix(b())}const Jy=new Set;function Ar(e){Jy.has(e)||(Jy.add(e),performance?.mark?.("mark_use_counter",{detail:{feature:e}}))}function hf(e){return n=>{setTimeout(e,void 0,n)}}const xe=class Ox extends zt{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,t,r){let o=n,i=t||(()=>null),s=r;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=hf(i),o&&(o=hf(o)),s&&(s=hf(s)));const a=super.subscribe({next:o,error:i,complete:s});return n instanceof Et&&n.add(a),a}};function Ky(...e){}class ae{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new xe(!1),this.onMicrotaskEmpty=new xe(!1),this.onStable=new xe(!1),this.onError=new xe(!1),typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();const o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&t,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function Px(){const e="function"==typeof pe.requestAnimationFrame;let n=pe[e?"requestAnimationFrame":"setTimeout"],t=pe[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&n&&t){const r=n[Zone.__symbol__("OriginalDelegate")];r&&(n=r);const o=t[Zone.__symbol__("OriginalDelegate")];o&&(t=o)}return{nativeRequestAnimationFrame:n,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function Lx(e){const n=()=>{!function Fx(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(pe,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,gf(e),e.isCheckStableRunning=!0,pf(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),gf(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,r,o,i,s,a)=>{if(function jx(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return t.invokeTask(o,i,s,a);try{return e_(e),t.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&n(),t_(e)}},onInvoke:(t,r,o,i,s,a,l)=>{try{return e_(e),t.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&n(),t_(e)}},onHasTask:(t,r,o,i)=>{t.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,gf(e),pf(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,r,o,i)=>(t.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ae.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(ae.isInAngularZone())throw new M(909,!1)}run(n,t,r){return this._inner.run(n,t,r)}runTask(n,t,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,n,kx,Ky,Ky);try{return i.runTask(s,t,r)}finally{i.cancelTask(s)}}runGuarded(n,t,r){return this._inner.runGuarded(n,t,r)}runOutsideAngular(n){return this._outer.run(n)}}const kx={};function pf(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function gf(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function e_(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function t_(e){e._nesting--,pf(e)}const n_=new N("",{providedIn:"root",factory:r_});function r_(){const e=A(ae);let n=!0;return function U1(...e){const n=Ei(e),t=function P1(e,n){return"number"==typeof yu(e)?e.pop():n}(e,1/0),r=e;return r.length?1===r.length?qt(r[0]):Yr(t)(Oe(r,n)):an}(new Te(o=>{n=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(n),o.complete()})}),new Te(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{!n&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(n=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ae.assertInAngularZone(),n&&(n=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe($g()))}var xr=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(xr||{});const o_={destroy(){}};function s_(e,n){!n&&function vd(e){if(!Yg()&&!function o0(){return Xr}())throw new M(-203,!1)}();const t=n?.injector??A(_t);if(!function tr(e){return"browser"===(e??A(_t)).get(Sr)}(t))return o_;Ar("NgAfterNextRender");const r=t.get(_l),o=r.handler??=new l_,i=n?.phase??xr.MixedReadWrite,s=()=>{o.unregister(l),a()},a=t.get(yl).onDestroy(s),l=new a_(t,i,()=>{s(),e()});return o.register(l),{destroy:s}}class a_{constructor(n,t,r){this.phase=t,this.callbackFn=r,this.zone=n.get(ae),this.errorHandler=n.get(Ln,null,{optional:!0})}invoke(){try{this.zone.runOutsideAngular(this.callbackFn)}catch(n){this.errorHandler?.handleError(n)}}}class l_{constructor(){this.executingCallbacks=!1,this.buckets={[xr.EarlyRead]:new Set,[xr.Write]:new Set,[xr.MixedReadWrite]:new Set,[xr.Read]:new Set},this.deferredCallbacks=new Set}validateBegin(){if(this.executingCallbacks)throw new M(102,!1)}register(n){(this.executingCallbacks?this.deferredCallbacks:this.buckets[n.phase]).add(n)}unregister(n){this.buckets[n.phase].delete(n),this.deferredCallbacks.delete(n)}execute(){this.executingCallbacks=!0;for(const n of Object.values(this.buckets))for(const t of n)t.invoke();this.executingCallbacks=!1;for(const n of this.deferredCallbacks)this.buckets[n.phase].add(n);this.deferredCallbacks.clear()}destroy(){for(const n of Object.values(this.buckets))n.clear();this.deferredCallbacks.clear()}}let _l=(()=>{class e{constructor(){this.renderDepth=0,this.handler=null,this.internalCallbacks=[]}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){if(this.renderDepth--,0===this.renderDepth){for(const t of this.internalCallbacks)t();this.internalCallbacks.length=0,this.handler?.execute()}}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new e})}return e})();function Ux(e,n){const t=St(n,e),r=t[T];!function Bx(e,n){for(let t=n.length;t0&&Xv(e,t,i.join(" "))}}(d,Ie,m,r),void 0!==t&&function Jx(e,n,t){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=n+=o.hostVars,o.hostAttrs=Ai(o.hostAttrs,t=Ai(t,o.hostAttrs))}}(r)}function Dl(e){return e===cn?{}:e===te?[]:e}function tN(e,n){const t=e.viewQuery;e.viewQuery=t?(r,o)=>{n(r,o),t(r,o)}:n}function nN(e,n){const t=e.contentQueries;e.contentQueries=t?(r,o,i)=>{n(r,o,i),t(r,o,i)}:n}function rN(e,n){const t=e.hostBindings;e.hostBindings=t?(r,o)=>{n(r,o),t(r,o)}:n}function g_(e){const n=e.inputConfig,t={};for(const r in n)if(n.hasOwnProperty(r)){const o=n[r];Array.isArray(o)&&o[2]&&(t[r]=o[2])}e.inputTransforms=t}function _n(e,n,t){return e[n]=t}function He(e,n,t){return!Object.is(e[n],t)&&(e[n]=t,!0)}function Xt(e,n,t,r){const o=b();return He(o,mn(),n)&&(J(),yn(De(),o,e,n,t,r)),Xt}function Ao(e,n,t,r){return He(e,mn(),t)?n+G(t)+r:W}function bl(e,n){return e<<17|n<<2}function ir(e){return e>>17&32767}function vf(e){return 2|e}function Rr(e){return(131068&e)>>2}function yf(e,n){return-131069&e|n<<2}function _f(e){return 1|e}function I_(e,n,t,r,o){const i=e[t+1],s=null===n;let a=r?ir(i):Rr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];pN(e[a],n)&&(l=!0,e[a+1]=r?_f(u):vf(u)),a=r?ir(u):Rr(u)}l&&(e[t+1]=r?vf(i):_f(i))}function pN(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&go(e,n)>=0}function E(e,n,t){const r=b();return He(r,mn(),n)&&Rt(J(),De(),r,e,n,r[z],t,!1),E}function Cf(e,n,t,r,o){const s=o?"class":"style";df(e,t,n.inputs[s],s,r)}function El(e,n){return function Jt(e,n,t,r){const o=b(),i=J(),s=function Pn(e){const n=B.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}(2);i.firstUpdatePass&&function P_(e,n,t,r){const o=e.data;if(null===o[t+1]){const i=o[lt()],s=function O_(e,n){return n>=e.expandoStartIndex}(e,t);(function V_(e,n){return 0!=(e.flags&(n?8:16))})(i,r)&&null===n&&!s&&(n=!1),n=function bN(e,n,t,r){const o=function Wu(e){const n=B.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let i=r?n.residualClasses:n.residualStyles;if(null===o)0===(r?n.classBindings:n.styleBindings)&&(t=ds(t=Df(null,e,n,t,r),n.attrs,r),i=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=Df(o,e,n,t,r),null===i){let l=function EN(e,n,t){const r=t?n.classBindings:n.styleBindings;if(0!==Rr(r))return e[ir(r)]}(e,n,r);void 0!==l&&Array.isArray(l)&&(l=Df(null,e,n,l[1],r),l=ds(l,n.attrs,r),function IN(e,n,t,r){e[ir(t?n.classBindings:n.styleBindings)]=r}(e,n,r,l))}else i=function MN(e,n,t){let r;const o=n.directiveEnd;for(let i=1+n.directiveStylingLast;i0)&&(c=!0)):u=t,o)if(0!==l){const g=ir(e[a+1]);e[r+1]=bl(g,a),0!==g&&(e[g+1]=yf(e[g+1],r)),e[a+1]=function uN(e,n){return 131071&e|n<<17}(e[a+1],r)}else e[r+1]=bl(a,0),0!==a&&(e[a+1]=yf(e[a+1],r)),a=r;else e[r+1]=bl(l,0),0===a?a=r:e[l+1]=yf(e[l+1],r),l=r;c&&(e[r+1]=vf(e[r+1])),I_(e,u,r,!0),I_(e,u,r,!1),function hN(e,n,t,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof n&&go(i,n)>=0&&(t[r+1]=_f(t[r+1]))}(n,u,e,r,i),s=bl(a,l),i?n.classBindings=s:n.styleBindings=s}(o,i,n,t,s,r)}}(i,e,s,r),n!==W&&He(o,s,n)&&function F_(e,n,t,r,o,i,s,a){if(!(3&n.type))return;const l=e.data,c=l[a+1],u=function dN(e){return 1==(1&e)}(c)?L_(l,n,t,o,Rr(c),s):void 0;Il(u)||(Il(i)||function cN(e){return 2==(2&e)}(c)&&(i=L_(l,null,t,o,a,s)),function LT(e,n,t,r,o){if(n)o?e.addClass(t,r):e.removeClass(t,r);else{let i=-1===r.indexOf("-")?void 0:rr.DashCase;null==o?e.removeStyle(t,r,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=rr.Important),e.setStyle(t,r,o,i))}}(r,s,Pi(lt(),t),o,i))}(i,i.data[lt()],o,o[z],e,o[s+1]=function xN(e,n){return null==e||""===e||("string"==typeof n?e+=n:"object"==typeof e&&(e=je(or(e)))),e}(n,t),r,s)}(e,n,null,!0),El}function Df(e,n,t,r,o){let i=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=t[o+1];g===W&&(g=d?te:void 0);let m=d?sd(g,r):u===r?g:void 0;if(c&&!Il(m)&&(m=sd(l,r)),Il(m)&&(a=m,s))return a;const v=e[o+1];o=s?ir(v):Rr(v)}if(null!==n){let l=i?n.residualClasses:n.residualStyles;null!=l&&(a=sd(l,r))}return a}function Il(e){return void 0!==e}let G_=(e,n)=>null;function Vo(e,n){return G_(e,n)}function gs(e,n,t,r){const o=n.tView,a=gl(e,o,t,4096&e[H]?4096:16,null,n,null,null,null,r?.injector??null,r?.dehydratedView??null);a[Ni]=e[n.index];const c=e[dn];return null!==c&&(a[dn]=c.createEmbeddedView(o)),mf(o,a,t),a}function jo(e,n){return!n||Ya(e)}function ms(e,n,t,r=!0){const o=n[T];if(function AT(e,n,t,r){const o=Pe+r,i=t.length;r>0&&(t[o-1][Yt]=n),r{class e{static#e=this.__NG_ELEMENT_ID__=uR}return e})();function uR(){return X_(ue(),b())}const dR=en,Y_=class extends dR{constructor(n,t,r){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=r}get element(){return Mo(this._hostTNode,this._hostLView)}get injector(){return new ze(this._hostTNode,this._hostLView)}get parentInjector(){const n=Ra(this._hostTNode,this._hostLView);if(Ku(n)){const t=ji(n,this._hostLView),r=Vi(n);return new ze(t[T].data[r+8],t)}return new ze(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=Q_(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-Pe}createEmbeddedView(n,t,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const s=Vo(this._lContainer,n.ssrId),a=n.createEmbeddedViewImpl(t||{},i,s);return this.insertImpl(a,o,jo(this._hostTNode,s)),a}createComponent(n,t,r,o,i){const s=n&&!function Hi(e){return"function"==typeof e}(n);let a;if(s)a=t;else{const v=t||{};a=v.index,r=v.injector,o=v.projectableNodes,i=v.environmentInjector||v.ngModuleRef}const l=s?n:new cs(Q(n)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const _=(s?c:this.parentInjector).get(At,null);_&&(i=_)}const u=Q(l.componentType??{}),d=Vo(this._lContainer,u?.id??null),m=l.create(c,o,d?.firstChild??null,i);return this.insertImpl(m.hostView,a,jo(this._hostTNode,d)),m}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,r){const o=n._lView;if(function k0(e){return Ye(e[we])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[we],c=new Y_(l,l[tt],l[we]);c.detach(c.indexOf(n))}}const i=this._adjustIndex(t),s=this._lContainer;return ms(s,o,i,r),n.attachToViewContainerRef(),Jm(xf(s),i,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=Q_(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),r=Zi(this._lContainer,t);r&&(ka(xf(this._lContainer),t),Ka(r[T],r))}detach(n){const t=this._adjustIndex(n,-1),r=Zi(this._lContainer,t);return r&&null!=ka(xf(this._lContainer),t)?new as(r):null}_adjustIndex(n,t=0){return n??this.length+t}};function Q_(e){return e[8]}function xf(e){return e[8]||(e[8]=[])}function X_(e,n){let t;const r=n[e.index];return Ye(r)?t=r:(t=By(r,n,null,e),n[e.index]=t,ml(n,t)),J_(t,n,e,r),new Y_(t,e,n)}let J_=function eC(e,n,t,r){if(e[fn])return;let o;o=8&t.type?me(r):function fR(e,n){const t=e[z],r=t.createComment(""),o=st(n,e);return Tr(t,el(t,o),r,function PT(e,n){return e.nextSibling(n)}(t,o),!1),r}(n,t),e[fn]=o},Nf=(e,n,t)=>!1;function q(e,n,t,r,o,i,s,a){const l=b(),c=J(),u=e+U,d=c.firstCreatePass?function mR(e,n,t,r,o,i,s,a,l){const c=n.consts,u=So(n,e,4,s||null,pn(c,a));af(n,t,u,pn(c,l)),Sa(n,u);const d=u.tView=sf(2,u,r,o,i,n.directiveRegistry,n.pipeRegistry,null,n.schemas,c,null);return null!==n.queries&&(n.queries.template(n,u),d.queries=n.queries.embeddedTView(u)),u}(u,c,l,n,t,r,o,i,s):c.data[u];gn(d,!1);const g=tC(c,l,d,e);Ma()&&tl(c,l,g,d),nt(g,l);const m=By(g,l,g,d);return l[u]=m,ml(l,m),function K_(e,n,t){return Nf(e,n,t)}(m,d,l),ba(d)&&nf(c,l,d),null!=s&&rf(l,d,a),q}let tC=function nC(e,n,t,r){return Jn(!0),n[z].createComment("")};function Ho(e,n,t){Ar("NgControlFlow");const r=b(),o=mn(),i=function Rf(e,n){return e[n]}(r,U+e);if(He(r,o,n)){const a=Se(null);try{if(function Af(e,n){const t=Zi(e,n);return void 0!==t&&Ka(t[T],t),t}(i,0),-1!==n){const l=function Of(e,n){return ki(e,n+U)}(r[T],n),c=Vo(i,l.tView.ssrId);ms(i,gs(r,l,t,{dehydratedView:c}),0,jo(l,c))}}finally{Se(a)}}else{const a=function Z_(e,n){const t=Pe+n;if(t(Jn(!0),Ja(r,o,function Lm(){return B.lFrame.currentNamespace}()));function Dt(e,n,t){const r=b(),o=J(),i=e+U,s=o.firstCreatePass?function aO(e,n,t,r,o){const i=n.consts,s=pn(i,r),a=So(n,e,8,"ng-container",s);return null!==s&&Cl(a,s,!0),af(n,t,a,pn(i,o)),null!==n.queries&&n.queries.elementStart(n,a),a}(i,o,r,n,t):o.data[i];gn(s,!0);const a=SC(o,r,s,e);return r[i]=a,Ma()&&tl(o,r,a,s),nt(a,r),ba(s)&&(nf(o,r,s),tf(o,s,r)),null!=t&&rf(r,s),Dt}function wt(){let e=ue();const n=J();return Gu()?zu():(e=e.parent,gn(e,!1)),n.firstCreatePass&&(Sa(n,e),Fu(e)&&n.queries.elementEnd(e)),wt}let SC=(e,n,t,r)=>(Jn(!0),Ad(n[z],""));function Fe(){return b()}const Zo="en-US";let RC=Zo;function Is(e){return!!e&&"function"==typeof e.then}function rD(e){return!!e&&"function"==typeof e.subscribe}function R(e,n,t,r){const o=b(),i=J(),s=ue();return function iD(e,n,t,r,o,i,s){const a=ba(r),c=e.firstCreatePass&&zy(e),u=n[ge],d=Gy(n);let g=!0;if(3&r.type||s){const _=st(r,n),D=s?s(_):_,I=d.length,w=s?V=>s(me(V[r.index])):r.index;let x=null;if(!s&&a&&(x=function sP(e,n,t,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,n,o,r.index)),null!==x)(x.__ngLastListenerFn__||x).__ngNextListenerFn__=i,x.__ngLastListenerFn__=i,g=!1;else{i=aD(r,n,u,i,!1);const V=t.listen(D,o,i);d.push(i,V),c&&c.push(o,w,I,I+1)}}else i=aD(r,n,u,i,!1);const m=r.outputs;let v;if(g&&null!==m&&(v=m[o])){const _=v.length;if(_)for(let D=0;D<_;D+=2){const Z=n[v[D]][v[D+1]].subscribe(i),Ie=d.length;d.push(i,Z),c&&c.push(o,r.index,Ie,-(Ie+1))}}}(i,o,o[z],s,e,n,r),R}function sD(e,n,t,r){try{return hn(6,n,t),!1!==t(r)}catch(o){return vl(e,o),!1}finally{hn(7,n,t)}}function aD(e,n,t,r,o){return function i(s){if(s===Function)return r;ss(e.componentOffset>-1?St(e.index,n):n);let l=sD(n,t,r,s),c=i.__ngNextListenerFn__;for(;c;)l=sD(n,t,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function P(e=1){return function Q0(e){return(B.lFrame.contextLView=function bm(e,n){for(;e>0;)n=n[eo],e--;return n}(e,B.lFrame.contextLView))[ge]}(e)}function jn(e,n,t,r,o){const i=b(),s=Ao(i,n,t,r);return s!==W&&Rt(J(),De(),i,e,s,i[z],o,!1),jn}function Gf(e){return function ro(e,n){return e[n]}(function z0(){return B.lFrame.contextLView}(),U+e)}function f(e,n=""){const t=b(),r=J(),o=e+U,i=r.firstCreatePass?So(r,o,1,n,null):r.data[o],s=MD(r,t,i,n,e);t[o]=s,Ma()&&tl(r,t,s,i),gn(i,!1)}let MD=(e,n,t,r,o)=>(Jn(!0),function Xa(e,n){return e.createText(n)}(n[z],r));function be(e){return Hn("",e,""),be}function Hn(e,n,t){const r=b(),o=Ao(r,e,n,t);return o!==W&&function Vn(e,n,t){const r=Pi(n,e);!function jv(e,n,t){e.setValue(n,t)}(e[z],r,t)}(r,lt(),o),Hn}function zf(e,n,t,r,o){if(e=j(e),Array.isArray(e))for(let i=0;i>20;if(Ir(e)||!e.multi){const m=new Li(c,o,S),v=Wf(l,n,o?u:u+g,d);-1===v?(nd(Na(a,s),i,l),qf(i,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(m),s.push(m)):(t[v]=m,s[v]=m)}else{const m=Wf(l,n,u+g,d),v=Wf(l,n,u,u+g),D=v>=0&&t[v];if(o&&!D||!o&&!(m>=0&&t[m])){nd(Na(a,s),i,l);const I=function IP(e,n,t,r,o){const i=new Li(e,t,S);return i.multi=[],i.index=n,i.componentProviders=0,kD(i,o,r&&!t),i}(o?EP:bP,t.length,o,r,c);!o&&D&&(t[v].providerFactory=I),qf(i,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(I),s.push(I)}else qf(i,e,m>-1?m:v,kD(t[o?v:m],c,!o&&r));!o&&r&&D&&t[v].componentProviders++}}}function qf(e,n,t,r){const o=Ir(n),i=function LS(e){return!!e.useClass}(n);if(o||i){const l=(i?j(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[r,l]):c[u+1].push(r,l)}else c.push(t,l)}}}function kD(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function Wf(e,n,t,r){for(let o=t;o{t.providersResolver=(r,o)=>function wP(e,n,t){const r=J();if(r.firstCreatePass){const o=Qt(e);zf(t,r.data,r.blueprint,o,!0),zf(n,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,n)}}class kr{}class FD{}class Yf extends kr{constructor(n,t,r){super(),this._parent=t,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new c_(this);const o=et(n);this._bootstrapComponents=xt(o.bootstrap),this._r3Injector=gv(n,t,[{provide:kr,useValue:this},{provide:dl,useValue:this.componentFactoryResolver},...r],je(n),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(n)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class Qf extends FD{constructor(n){super(),this.moduleType=n}create(n){return new Yf(this.moduleType,n,[])}}class LD extends kr{constructor(n){super(),this.componentFactoryResolver=new c_(this),this.instance=null;const t=new Mr([...n.providers,{provide:kr,useValue:this},{provide:dl,useValue:this.componentFactoryResolver}],n.parent||$a(),n.debugName,new Set(["environment"]));this.injector=t,n.runEnvironmentInitializers&&t.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}}function Xf(e,n,t=null){return new LD({providers:e,parent:n,debugName:t,runEnvironmentInitializers:!0}).injector}let TP=(()=>{class e{constructor(t){this._injector=t,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(t){if(!t.standalone)return null;if(!this.cachedInjectors.has(t)){const r=sv(0,t.type),o=r.length>0?Xf([r],this._injector,`Standalone[${t.type.name}]`):null;this.cachedInjectors.set(t,o)}return this.cachedInjectors.get(t)}ngOnDestroy(){try{for(const t of this.cachedInjectors.values())null!==t&&t.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=O({token:e,providedIn:"environment",factory:()=>new e(k(At))})}return e})();function Ot(e){Ar("NgStandalone"),e.getStandaloneInjector=n=>n.get(TP).getOrCreateStandaloneInjector(e)}function ee(e,n,t){const r=at()+e,o=b();return o[r]===W?_n(o,r,t?n.call(t):n()):function us(e,n){return e[n]}(o,r)}function Ms(e,n,t,r){return function qD(e,n,t,r,o,i){const s=n+t;return He(e,s,o)?_n(e,s+1,i?r.call(i,o):r(o)):Ss(e,s+1)}(b(),at(),e,n,t,r)}function zD(e,n,t,r,o){return function WD(e,n,t,r,o,i,s){const a=n+t;return function Nr(e,n,t,r){const o=He(e,n,t);return He(e,n+1,r)||o}(e,a,o,i)?_n(e,a+2,s?r.call(s,o,i):r(o,i)):Ss(e,a+2)}(b(),at(),e,n,t,r,o)}function Ss(e,n){const t=e[n];return t===W?void 0:t}function KP(){return this._results[Symbol.iterator]()}class Kf{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new xe)}constructor(n=!1){this._emitDistinctChangesOnly=n,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const t=Kf.prototype;t[Symbol.iterator]||(t[Symbol.iterator]=KP)}get(n){return this._results[n]}map(n){return this._results.map(n)}filter(n){return this._results.filter(n)}find(n){return this._results.find(n)}reduce(n,t){return this._results.reduce(n,t)}forEach(n){this._results.forEach(n)}some(n){return this._results.some(n)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(n,t){this.dirty=!1;const r=function yt(e){return e.flat(Number.POSITIVE_INFINITY)}(n);(this._changesDetected=!function _S(e,n,t){if(e.length!==n.length)return!1;for(let r=0;r{class e{static#e=this.__NG_ELEMENT_ID__=nk}return e})();const ek=Un,tk=class extends ek{constructor(n,t,r){super(),this._declarationLView=n,this._declarationTContainer=t,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,t){return this.createEmbeddedViewImpl(n,t)}createEmbeddedViewImpl(n,t,r){const o=gs(this._declarationLView,this._declarationTContainer,n,{injector:t,dehydratedView:r});return new as(o)}};function nk(){return Ul(ue(),b())}function Ul(e,n){return 4&e.type?new tk(n,e,Mo(e,n)):null}class eh{constructor(n){this.queryList=n,this.matches=null}clone(){return new eh(this.queryList)}setDirty(){this.queryList.setDirty()}}class th{constructor(n=[]){this.queries=n}createEmbeddedView(n){const t=n.queries;if(null!==t){const r=null!==n.contentQueries?n.contentQueries[0]:t.length,o=[];for(let i=0;i0)r.push(s[a/2]);else{const c=i[a+1],u=n[-l];for(let d=Pe;d{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,r)=>{this.resolve=t,this.reject=r}),this.appInits=A(ch,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const i=o();if(Is(i))t.push(i);else if(rD(i)){const s=new Promise((a,l)=>{i.subscribe({complete:a,error:l})});t.push(s)}}const r=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{r()}).catch(o=>{this.reject(o)}),0===t.length&&r(),this.initialized=!0}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Cw=(()=>{class e{log(t){console.log(t)}warn(t){console.warn(t)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();const Bn=new N("LocaleId",{providedIn:"root",factory:()=>A(Bn,X.Optional|X.SkipSelf)||function Rk(){return typeof $localize<"u"&&$localize.locale||Zo}()});let $l=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new kt(!1)}add(){this.hasPendingTasks.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),t}remove(t){this.pendingTasks.delete(t),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class Vk{constructor(n,t){this.ngModuleFactory=n,this.componentFactories=t}}let ww=(()=>{class e{compileModuleSync(t){return new Qf(t)}compileModuleAsync(t){return Promise.resolve(this.compileModuleSync(t))}compileModuleAndAllComponentsSync(t){const r=this.compileModuleSync(t),i=xt(et(t).declarations).reduce((s,a)=>{const l=Q(a);return l&&s.push(new cs(l)),s},[]);return new Vk(r,i)}compileModuleAndAllComponentsAsync(t){return Promise.resolve(this.compileModuleAndAllComponentsSync(t))}clearCache(){}clearCacheFor(t){}getModuleId(t){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Sw=new N(""),zl=new N("");let ph,fh=(()=>{class e{constructor(t,r,o){this._ngZone=t,this.registry=r,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,ph||(function cF(e){ph=e}(o),o.addToWindow(r)),this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(r=>!r.updateCb||!r.updateCb(t)||(clearTimeout(r.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,r,o){let i=-1;r&&r>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==i),t(this._didWork,this.getPendingTasks())},r)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:o})}whenStable(t,r,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(t,r,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,r,o){return[]}static#e=this.\u0275fac=function(r){return new(r||e)(k(ae),k(hh),k(zl))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),hh=(()=>{class e{constructor(){this._applications=new Map}registerApplication(t,r){this._applications.set(t,r)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,r=!0){return ph?.findTestabilityInTree(this,t,r)??null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),ar=null;const gh=new N("PlatformDestroyListeners"),mh=new N("appBootstrapListener");function pF(e){try{const{rootComponent:n,appProviders:t,platformProviders:r}=e,o=function hF(e=[]){if(ar)return ar;const n=function Nw(e=[],n){return _t.create({name:n,providers:[{provide:hd,useValue:"platform"},{provide:gh,useValue:new Set([()=>ar=null])},...e]})}(e);return ar=n,function Aw(){!function HM(e){pg=e}(()=>{throw new M(600,!1)})}(),function xw(e){e.get(vv,null)?.forEach(t=>t())}(n),n}(r),i=[_F(),...t||[]],a=new LD({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ae);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(Ln,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(gh);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function Pw(e,n,t){try{const r=t();return Is(r)?r.catch(o=>{throw n.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw n.runOutsideAngular(()=>e.handleError(r)),r}}(c,l,()=>{const m=a.get(uh);return m.runInitializers(),m.donePromise.then(()=>{!function OC(e){gt(e,"Expected localeId to be defined"),"string"==typeof e&&(RC=e.toLowerCase().replace(/_/g,"-"))}(a.get(Bn,Zo)||Zo);const _=a.get(Xo);return void 0!==n&&_.bootstrap(n),_})})})}catch(n){return Promise.reject(n)}}let Xo=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(Lw),this.zoneIsStable=A(n_),this.componentTypes=[],this.components=[],this.isStable=A($l).hasPendingTasks.pipe(Ft(t=>t?F(!1):this.zoneIsStable),function B1(e,n=qn){return e=e??$1,$e((t,r)=>{let o,i=!0;t.subscribe(Ve(r,s=>{const a=n(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),$g()),this._injector=A(At)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(t,r){const o=t instanceof py;if(!this._injector.get(uh).done)throw!o&&function Qn(e){const n=Q(e)||Ge(e)||Je(e);return null!==n&&n.standalone}(t),new M(405,!1);let s;s=o?t:this._injector.get(dl).resolveComponentFactory(t),this.componentTypes.push(s.componentType);const a=function dF(e){return e.isBoundToModule}(s)?void 0:this._injector.get(kr),c=s.create(_t.NULL,[],r||s.selector,a),u=c.location.nativeElement,d=c.injector.get(Sw,null);return d?.registerApplication(u),c.onDestroy(()=>{this.detachView(c.hostView),ql(this.components,c),d?.unregisterApplication(u)}),this._loadComponent(c),c}tick(){if(this._runningTick)throw new M(101,!1);try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this.internalErrorHandler(t)}finally{this._runningTick=!1}}attachView(t){const r=t;this._views.push(r),r.attachToAppRef(this)}detachView(t){const r=t;ql(this._views,r),r.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t);const r=this._injector.get(mh,[]);[...this._bootstrapListeners,...r].forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>ql(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new M(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function ql(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}const Lw=new N("",{providedIn:"root",factory:()=>A(Ln).handleError.bind(void 0)});function vF(){const e=A(ae),n=A(Ln);return t=>e.runOutsideAngular(()=>n.handleError(t))}let yF=(()=>{class e{constructor(){this.zone=A(ae),this.applicationRef=A(Xo)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Vw(e){return[{provide:ae,useFactory:e},{provide:vo,multi:!0,useFactory:()=>{const n=A(yF,{optional:!0});return()=>n.initialize()}},{provide:Lw,useFactory:vF},{provide:n_,useFactory:r_}]}function _F(e){return ud([[],Vw(()=>new ae(function Ow(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let IF=(()=>{class e{constructor(t){}static#e=this.\u0275fac=function(r){return new(r||e)(k(Xo))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Ko(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ye_apiBaseUrl="https://www.palmmedia.de/api/";let Sh=null;function lr(){return Sh}class YF{}const ft=new N("DocumentToken");let Th=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(XF),providedIn:"platform"})}return e})();const QF=new N("Location Initialized");let XF=(()=>{class e extends Th{constructor(){super(),this._doc=A(ft),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return lr().getBaseHref(this._doc)}onPopState(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",t,!1),()=>r.removeEventListener("popstate",t)}onHashChange(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",t,!1),()=>r.removeEventListener("hashchange",t)}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(t){this._location.pathname=t}pushState(t,r,o){this._history.pushState(t,r,o)}replaceState(t,r,o){this._history.replaceState(t,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new e,providedIn:"platform"})}return e})();function Ah(e,n){if(0==e.length)return n;if(0==n.length)return e;let t=0;return e.endsWith("/")&&t++,n.startsWith("/")&&t++,2==t?e+n.substring(1):1==t?e+n:e+"/"+n}function ab(e){const n=e.match(/#|\?|$/),t=n&&n.index||e.length;return e.slice(0,t-("/"===e[t-1]?1:0))+e.slice(t)}function $n(e){return e&&"?"!==e[0]?"?"+e:e}let Lr=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(cb),providedIn:"root"})}return e})();const lb=new N("appBaseHref");let cb=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??A(ft).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return Ah(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+$n(this._platformLocation.search),o=this._platformLocation.hash;return o&&t?`${r}${o}`:r}pushState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(lb,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),JF=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._baseHref="",this._removeListenerFns=[],null!=r&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){let r=this._platformLocation.hash;return null==r&&(r="#"),r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ah(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(lb,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),Os=(()=>{class e{constructor(t){this._subject=new xe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=t;const r=this._locationStrategy.getBaseHref();this._basePath=function t2(e){if(new RegExp("^(https?:)?//").test(e)){const[,t]=e.split(/\/\/[^\/]+/);return t}return e}(ab(ub(r))),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(t=!1){return this.normalize(this._locationStrategy.path(t))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(t,r=""){return this.path()==this.normalize(t+$n(r))}normalize(t){return e.stripTrailingSlash(function e2(e,n){if(!e||!n.startsWith(e))return n;const t=n.substring(e.length);return""===t||["/",";","?","#"].includes(t[0])?t:n}(this._basePath,ub(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._locationStrategy.prepareExternalUrl(t)}go(t,r="",o=null){this._locationStrategy.pushState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}replaceState(t,r="",o=null){this._locationStrategy.replaceState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(t=0){this._locationStrategy.historyGo?.(t)}onUrlChange(t){return this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)})),()=>{const r=this._urlChangeListeners.indexOf(t);this._urlChangeListeners.splice(r,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(t="",r){this._urlChangeListeners.forEach(o=>o(t,r))}subscribe(t,r,o){return this._subject.subscribe({next:t,error:r,complete:o})}static#e=this.normalizeQueryParams=$n;static#t=this.joinWithSlash=Ah;static#n=this.stripTrailingSlash=ab;static#r=this.\u0275fac=function(r){return new(r||e)(k(Lr))};static#o=this.\u0275prov=O({token:e,factory:()=>function KF(){return new Os(k(Lr))}(),providedIn:"root"})}return e})();function ub(e){return e.replace(/\/index.html$/,"")}function _b(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const r=t.indexOf("="),[o,i]=-1==r?[t,""]:[t.slice(0,r),t.slice(r+1)];if(o.trim()===n)return decodeURIComponent(i)}return null}const jh=/\s+/,Cb=[];let uc=(()=>{class e{constructor(t,r,o,i){this._iterableDiffers=t,this._keyValueDiffers=r,this._ngEl=o,this._renderer=i,this.initialClasses=Cb,this.stateMap=new Map}set klass(t){this.initialClasses=null!=t?t.trim().split(jh):Cb}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split(jh):t}ngDoCheck(){for(const r of this.initialClasses)this._updateState(r,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const r of t)this._updateState(r,!0);else if(null!=t)for(const r of Object.keys(t))this._updateState(r,!!t[r]);this._applyStateDiff()}_updateState(t,r){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(t,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const r=t[0],o=t[1];o.changed?(this._toggleClass(r,o.enabled),o.changed=!1):o.touched||(o.enabled&&this._toggleClass(r,!1),this.stateMap.delete(r)),o.touched=!1}}_toggleClass(t,r){(t=t.trim()).length>0&&t.split(jh).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static#e=this.\u0275fac=function(r){return new(r||e)(S(hl),S(rs),S(Nt),S(Fn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return e})();class H2{constructor(n,t,r,o){this.$implicit=n,this.ngForOf=t,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Hh=(()=>{class e{set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}constructor(t,r,o){this._viewContainer=t,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const t=this._ngForOf;!this._differ&&t&&(this._differ=this._differs.find(t).create(this.ngForTrackBy))}if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const r=this._viewContainer;t.forEachOperation((o,i,s)=>{if(null==o.previousIndex)r.createEmbeddedView(this._template,new H2(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)r.remove(null===i?void 0:i);else if(null!==i){const a=r.get(i);r.move(a,s),wb(a,o)}});for(let o=0,i=r.length;o{wb(r.get(o.currentIndex),o)})}static ngTemplateContextGuard(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un),S(hl))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return e})();function wb(e,n){e.context.$implicit=n.item}let Uh=(()=>{class e{constructor(t,r){this._viewContainer=t,this._context=new U2,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){bb("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){bb("ngIfElse",t),this._elseTemplateRef=t,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(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return e})();class U2{constructor(){this.$implicit=null,this.ngIf=null}}function bb(e,n){if(n&&!n.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${je(n)}'.`)}let hL=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Sb(e){return"server"===e}let vL=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new yL(k(ft),window)})}return e})();class yL{constructor(n,t){this.document=n,this.window=t,this.offset=()=>[0,0]}setOffset(n){this.offset=Array.isArray(n)?()=>n:n}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(n){this.supportsScrolling()&&this.window.scrollTo(n[0],n[1])}scrollToAnchor(n){if(!this.supportsScrolling())return;const t=function _L(e,n){const t=e.getElementById(n)||e.getElementsByName(n)[0];if(t)return t;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const r=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=r.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(n)||i.querySelector(`[name="${n}"]`);if(s)return s}o=r.nextNode()}}return null}(this.document,n);t&&(this.scrollToElement(t),t.focus())}setHistoryScrollRestoration(n){this.supportsScrolling()&&(this.window.history.scrollRestoration=n)}scrollToElement(n){const t=n.getBoundingClientRect(),r=t.left+this.window.pageXOffset,o=t.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(r-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class Tb{}const{isArray:$L}=Array,{getPrototypeOf:GL,prototype:zL,keys:qL}=Object;function Rb(e){if(1===e.length){const n=e[0];if($L(n))return{args:n,keys:null};if(function WL(e){return e&&"object"==typeof e&&GL(e)===zL}(n)){const t=qL(n);return{args:t.map(r=>n[r]),keys:t}}}return{args:e,keys:null}}const{isArray:ZL}=Array;function Ob(e){return K(n=>function YL(e,n){return ZL(n)?e(...n):e(n)}(e,n))}function Pb(e,n){return e.reduce((t,r,o)=>(t[r]=n[o],t),{})}function Zh(...e){const n=Ei(e),t=jg(e),{args:r,keys:o}=Rb(e);if(0===r.length)return Oe([],n);const i=new Te(function QL(e,n,t=qn){return r=>{kb(n,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Oe(e[l],n);let u=!1;c.subscribe(Ve(r,d=>{i[l]=d,u||(u=!0,a--),a||r.next(t(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}(r,n,o?s=>Pb(o,s):qn));return t?i.pipe(Ob(t)):i}function kb(e,n,t){e?An(t,e,n):n()}const hc=iu(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Yh(...e){return function XL(){return Yr(1)}()(Oe(e,Ei(e)))}function Fb(e){return new Te(n=>{qt(e()).subscribe(n)})}function pc(e,n){const t=Ce(e)?e:()=>e,r=o=>o.error(t());return new Te(n?o=>n.schedule(r,0,o):r)}function Qh(){return $e((e,n)=>{let t=null;e._refCount++;const r=Ve(n,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(t=null);const o=e._connection,i=t;t=null,o&&(!i||o===i)&&o.unsubscribe(),n.unsubscribe()});e.subscribe(r),r.closed||(t=e.connect())})}class Lb extends Te{constructor(n,t){super(),this.source=n,this.subjectFactory=t,this._subject=null,this._refCount=0,this._connection=null,Eg(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){const n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new Et;const t=this.getSubject();n.add(this.source.subscribe(Ve(t,void 0,()=>{this._teardown(),t.complete()},r=>{this._teardown(),t.error(r)},()=>this._teardown()))),n.closed&&(this._connection=null,n=Et.EMPTY)}return n}refCount(){return Qh()(this)}}function rn(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>e.call(n,i,o++)&&r.next(i)))})}function gc(e){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>{r||t.next(e),t.complete()}))})}function Vb(e=KL){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>r?t.complete():t.error(e())))})}function KL(){return new hc}function Vr(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,_r(1),t?gc(n):Vb(()=>new hc))}function ti(e,n){return Ce(n)?Xe(e,n,1):Xe(e,1)}function rt(e,n,t){const r=Ce(e)||n||t?{next:e,error:n,complete:t}:e;return r?$e((o,i)=>{var s;null===(s=r.subscribe)||void 0===s||s.call(r);let a=!0;o.subscribe(Ve(i,l=>{var c;null===(c=r.next)||void 0===c||c.call(r,l),i.next(l)},()=>{var l;a=!1,null===(l=r.complete)||void 0===l||l.call(r),i.complete()},l=>{var c;a=!1,null===(c=r.error)||void 0===c||c.call(r,l),i.error(l)},()=>{var l,c;a&&(null===(l=r.unsubscribe)||void 0===l||l.call(r)),null===(c=r.finalize)||void 0===c||c.call(r)}))}):qn}function ni(e){return $e((n,t)=>{let i,r=null,o=!1;r=n.subscribe(Ve(t,void 0,void 0,s=>{i=qt(e(s,ni(e)(n))),r?(r.unsubscribe(),r=null,i.subscribe(t)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(t))})}function Xh(e){return e<=0?()=>an:$e((n,t)=>{let r=[];n.subscribe(Ve(t,o=>{r.push(o),e{for(const o of r)t.next(o);t.complete()},void 0,()=>{r=null}))})}function Ls(e){return $e((n,t)=>{try{n.subscribe(t)}finally{t.add(e)}})}class iV extends YF{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Jh extends iV{static makeCurrent(){!function ZF(e){Sh||(Sh=e)}(new Jh)}onAndCancel(n,t,r){return n.addEventListener(t,r),()=>{n.removeEventListener(t,r)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function sV(){return Vs=Vs||document.querySelector("base"),Vs?Vs.getAttribute("href"):null}();return null==t?null:function aV(e){mc=mc||document.createElement("a"),mc.setAttribute("href",e);const n=mc.pathname;return"/"===n.charAt(0)?n:`/${n}`}(t)}resetBaseElement(){Vs=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return _b(document.cookie,n)}}let mc,Vs=null,cV=(()=>{class e{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Kh=new N("EventManagerPlugins");let jb=(()=>{class e{constructor(t,r){this._zone=r,this._eventNameToPlugin=new Map,t.forEach(o=>{o.manager=this}),this._plugins=t.slice().reverse()}addEventListener(t,r,o){return this._findPluginFor(r).addEventListener(t,r,o)}getZone(){return this._zone}_findPluginFor(t){let r=this._eventNameToPlugin.get(t);if(r)return r;if(r=this._plugins.find(i=>i.supports(t)),!r)throw new M(5101,!1);return this._eventNameToPlugin.set(t,r),r}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kh),k(ae))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class Hb{constructor(n){this._doc=n}}const ep="ng-app-id";let Ub=(()=>{class e{constructor(t,r,o,i={}){this.doc=t,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Sb(i),this.resetHostNodes()}addStyles(t){for(const r of t)1===this.changeUsageCount(r,1)&&this.onStyleAdded(r)}removeStyles(t){for(const r of t)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){const t=this.styleNodesInDOM;t&&(t.forEach(r=>r.remove()),t.clear());for(const r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(t){this.hostNodes.add(t);for(const r of this.getAllStyles())this.addStyleToHost(t,r)}removeHost(t){this.hostNodes.delete(t)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(t){for(const r of this.hostNodes)this.addStyleToHost(r,t)}onStyleRemoved(t){const r=this.styleRef;r.get(t)?.elements?.forEach(o=>o.remove()),r.delete(t)}collectServerRenderedStyles(){const t=this.doc.head?.querySelectorAll(`style[${ep}="${this.appId}"]`);if(t?.length){const r=new Map;return t.forEach(o=>{null!=o.textContent&&r.set(o.textContent,o)}),r}return null}changeUsageCount(t,r){const o=this.styleRef;if(o.has(t)){const i=o.get(t);return i.usage+=r,i.usage}return o.set(t,{usage:r,elements:[]}),r}getStyleElement(t,r){const o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===t)return o.delete(r),i.removeAttribute(ep),i;{const s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(ep,this.appId),t.appendChild(s),s}}addStyleToHost(t,r){const o=this.getStyleElement(t,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){const t=this.hostNodes;t.clear(),t.add(this.doc.head)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(za),k(yv,8),k(Sr))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const tp={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/MathML/"},np=/%COMP%/g,hV=new N("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!0});function $b(e,n){return n.map(t=>t.replace(np,e))}let Gb=(()=>{class e{constructor(t,r,o,i,s,a,l,c=null){this.eventManager=t,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=Sb(a),this.defaultRenderer=new rp(t,s,l,this.platformIsServer)}createRenderer(t,r){if(!t||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Wt.ShadowDom&&(r={...r,encapsulation:Wt.Emulated});const o=this.getOrCreateRenderer(t,r);return o instanceof qb?o.applyToHost(t):o instanceof op&&o.applyStyles(),o}getOrCreateRenderer(t,r){const o=this.rendererByCompId;let i=o.get(r.id);if(!i){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Wt.Emulated:i=new qb(l,c,r,this.appId,u,s,a,d);break;case Wt.ShadowDom:return new vV(l,c,t,r,s,a,this.nonce,d);default:i=new op(l,c,r,u,s,a,d)}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(r){return new(r||e)(k(jb),k(Ub),k(za),k(hV),k(ft),k(Sr),k(ae),k(yv))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class rp{constructor(n,t,r,o){this.eventManager=n,this.doc=t,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(n,t){return t?this.doc.createElementNS(tp[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(zb(n)?n.content:n).appendChild(t)}insertBefore(n,t,r){n&&(zb(n)?n.content:n).insertBefore(t,r)}removeChild(n,t){n&&n.removeChild(t)}selectRootElement(n,t){let r="string"==typeof n?this.doc.querySelector(n):n;if(!r)throw new M(-5104,!1);return t||(r.textContent=""),r}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,r,o){if(o){t=o+":"+t;const i=tp[o];i?n.setAttributeNS(i,t,r):n.setAttribute(t,r)}else n.setAttribute(t,r)}removeAttribute(n,t,r){if(r){const o=tp[r];o?n.removeAttributeNS(o,t):n.removeAttribute(`${r}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,r,o){o&(rr.DashCase|rr.Important)?n.style.setProperty(t,r,o&rr.Important?"important":""):n.style[t]=r}removeStyle(n,t,r){r&rr.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,r){n[t]=r}setValue(n,t){n.nodeValue=t}listen(n,t,r){if("string"==typeof n&&!(n=lr().getGlobalEventTarget(this.doc,n)))throw new Error(`Unsupported event target ${n} for event ${t}`);return this.eventManager.addEventListener(n,t,this.decoratePreventDefault(r))}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>n(t)):n(t))&&t.preventDefault()}}}function zb(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class vV extends rp{constructor(n,t,r,o,i,s,a,l){super(n,i,s,l),this.sharedStylesHost=t,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=$b(o.id,o.styles);for(const u of c){const d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,r){return super.insertBefore(this.nodeOrShadowRoot(n),t,r)}removeChild(n,t){return super.removeChild(this.nodeOrShadowRoot(n),t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class op extends rp{constructor(n,t,r,o,i,s,a,l){super(n,i,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o,this.styles=l?$b(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class qb extends op{constructor(n,t,r,o,i,s,a,l){const c=o+"-"+r.id;super(n,t,r,i,s,a,l,c),this.contentAttr=function pV(e){return"_ngcontent-%COMP%".replace(np,e)}(c),this.hostAttr=function gV(e){return"_nghost-%COMP%".replace(np,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const r=super.createElement(n,t);return super.setAttribute(r,this.contentAttr,""),r}}let yV=(()=>{class e extends Hb{constructor(t){super(t)}supports(t){return!0}addEventListener(t,r,o){return t.addEventListener(r,o,!1),()=>this.removeEventListener(t,r,o)}removeEventListener(t,r,o){return t.removeEventListener(r,o)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Wb=["alt","control","meta","shift"],_V={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},CV={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let DV=(()=>{class e extends Hb{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,r,o){const i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>lr().onAndCancel(t,i.domEventName,s))}static parseEventName(t){const r=t.toLowerCase().split("."),o=r.shift();if(0===r.length||"keydown"!==o&&"keyup"!==o)return null;const i=e._normalizeKey(r.pop());let s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),Wb.forEach(c=>{const u=r.indexOf(c);u>-1&&(r.splice(u,1),s+=c+".")}),s+=i,0!=r.length||0===i.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,r){let o=_V[t.key]||t.key,i="";return r.indexOf("code.")>-1&&(o=t.code,i="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),Wb.forEach(s=>{s!==o&&(0,CV[s])(t)&&(i+=s+".")}),i+=o,i===r)}static eventCallback(t,r,o){return i=>{e.matchEventFullKeyCode(i,t)&&o.runGuarded(()=>r(i))}}static _normalizeKey(t){return"esc"===t?"escape":t}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Zb(e){return{appProviders:[...Qb,...e?.providers??[]],platformProviders:MV}}const MV=[{provide:Sr,useValue:"browser"},{provide:vv,useValue:function bV(){Jh.makeCurrent()},multi:!0},{provide:ft,useFactory:function IV(){return function JS(e){_d=e}(document),document},deps:[]}],SV=new N(""),Yb=[{provide:zl,useClass:class lV{addToWindow(n){pe.getAngularTestability=(r,o=!0)=>{const i=n.findTestabilityInTree(r,o);if(null==i)throw new M(5103,!1);return i},pe.getAllAngularTestabilities=()=>n.getAllTestabilities(),pe.getAllAngularRootElements=()=>n.getAllRootElements(),pe.frameworkStabilizers||(pe.frameworkStabilizers=[]),pe.frameworkStabilizers.push(r=>{const o=pe.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(n,t,r){return null==t?null:n.getTestability(t)??(r?lr().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}},deps:[]},{provide:Sw,useClass:fh,deps:[ae,hh,zl]},{provide:fh,useClass:fh,deps:[ae,hh,zl]}],Qb=[{provide:hd,useValue:"root"},{provide:Ln,useFactory:function EV(){return new Ln},deps:[]},{provide:Kh,useClass:yV,multi:!0,deps:[ft,ae,Sr]},{provide:Kh,useClass:DV,multi:!0,deps:[ft]},Gb,Ub,jb,{provide:my,useExisting:Gb},{provide:Tb,useClass:cV,deps:[]},[]];let TV=(()=>{class e{constructor(t){}static withServerTransition(t){return{ngModule:e,providers:[{provide:za,useValue:t.appId}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(SV,12))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({providers:[...Qb,...Yb],imports:[hL,IF]})}return e})(),Xb=(()=>{class e{constructor(t){this._doc=t}getTitle(){return this._doc.title}setTitle(t){this._doc.title=t||""}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:function(r){let o=null;return o=r?new r:function xV(){return new Xb(k(ft))}(),o},providedIn:"root"})}return e})();typeof window<"u"&&window;const Y="primary",js=Symbol("RouteTitle");class kV{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t[0]:t}return null}getAll(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t:[t]}return[]}get keys(){return Object.keys(this.params)}}function ri(e){return new kV(e)}function FV(e,n,t){const r=t.path.split("/");if(r.length>e.length||"full"===t.pathMatch&&(n.hasChildren()||r.lengthr[i]===o)}return e===n}function nE(e){return e.length>0?e[e.length-1]:null}function ur(e){return function BL(e){return!!e&&(e instanceof Te||Ce(e.lift)&&Ce(e.subscribe))}(e)?e:Is(e)?Oe(Promise.resolve(e)):F(e)}const VV={exact:function iE(e,n,t){if(!jr(e.segments,n.segments)||!vc(e.segments,n.segments,t)||e.numberOfChildren!==n.numberOfChildren)return!1;for(const r in n.children)if(!e.children[r]||!iE(e.children[r],n.children[r],t))return!1;return!0},subset:sE},rE={exact:function jV(e,n){return wn(e,n)},subset:function HV(e,n){return Object.keys(n).length<=Object.keys(e).length&&Object.keys(n).every(t=>tE(e[t],n[t]))},ignored:()=>!0};function oE(e,n,t){return VV[t.paths](e.root,n.root,t.matrixParams)&&rE[t.queryParams](e.queryParams,n.queryParams)&&!("exact"===t.fragment&&e.fragment!==n.fragment)}function sE(e,n,t){return aE(e,n,n.segments,t)}function aE(e,n,t,r){if(e.segments.length>t.length){const o=e.segments.slice(0,t.length);return!(!jr(o,t)||n.hasChildren()||!vc(o,t,r))}if(e.segments.length===t.length){if(!jr(e.segments,t)||!vc(e.segments,t,r))return!1;for(const o in n.children)if(!e.children[o]||!sE(e.children[o],n.children[o],r))return!1;return!0}{const o=t.slice(0,e.segments.length),i=t.slice(e.segments.length);return!!(jr(e.segments,o)&&vc(e.segments,o,r)&&e.children[Y])&&aE(e.children[Y],n,i,r)}}function vc(e,n,t){return n.every((r,o)=>rE[t](e[o].parameters,r.parameters))}class oi{constructor(n=new de([],{}),t={},r=null){this.root=n,this.queryParams=t,this.fragment=r}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ri(this.queryParams)),this._queryParamMap}toString(){return $V.serialize(this)}}class de{constructor(n,t){this.segments=n,this.children=t,this.parent=null,Object.values(t).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return yc(this)}}class Hs{constructor(n,t){this.path=n,this.parameters=t}get parameterMap(){return this._parameterMap||(this._parameterMap=ri(this.parameters)),this._parameterMap}toString(){return uE(this)}}function jr(e,n){return e.length===n.length&&e.every((t,r)=>t.path===n[r].path)}let ii=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new ap,providedIn:"root"})}return e})();class ap{parse(n){const t=new e3(n);return new oi(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}serialize(n){const t=`/${Us(n.root,!0)}`,r=function qV(e){const n=Object.keys(e).map(t=>{const r=e[t];return Array.isArray(r)?r.map(o=>`${_c(t)}=${_c(o)}`).join("&"):`${_c(t)}=${_c(r)}`}).filter(t=>!!t);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${t}${r}${"string"==typeof n.fragment?`#${function GV(e){return encodeURI(e)}(n.fragment)}`:""}`}}const $V=new ap;function yc(e){return e.segments.map(n=>uE(n)).join("/")}function Us(e,n){if(!e.hasChildren())return yc(e);if(n){const t=e.children[Y]?Us(e.children[Y],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==Y&&r.push(`${o}:${Us(i,!1)}`)}),r.length>0?`${t}(${r.join("//")})`:t}{const t=function BV(e,n){let t=[];return Object.entries(e.children).forEach(([r,o])=>{r===Y&&(t=t.concat(n(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==Y&&(t=t.concat(n(o,r)))}),t}(e,(r,o)=>o===Y?[Us(e.children[Y],!1)]:[`${o}:${Us(r,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[Y]?`${yc(e)}/${t[0]}`:`${yc(e)}/(${t.join("//")})`}}function lE(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function _c(e){return lE(e).replace(/%3B/gi,";")}function lp(e){return lE(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Cc(e){return decodeURIComponent(e)}function cE(e){return Cc(e.replace(/\+/g,"%20"))}function uE(e){return`${lp(e.path)}${function zV(e){return Object.keys(e).map(n=>`;${lp(n)}=${lp(e[n])}`).join("")}(e.parameters)}`}const WV=/^[^\/()?;#]+/;function cp(e){const n=e.match(WV);return n?n[0]:""}const ZV=/^[^\/()?;=#]+/,QV=/^[^=?&#]+/,JV=/^[^&#]+/;class e3{constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new de([],{}):new de([],this.parseChildren())}parseQueryParams(){const n={};if(this.consumeOptional("?"))do{this.parseQueryParam(n)}while(this.consumeOptional("&"));return n}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(n.length>0||Object.keys(t).length>0)&&(r[Y]=new de(n,t)),r}parseSegment(){const n=cp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(n),new Hs(Cc(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const t=function YV(e){const n=e.match(ZV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const o=cp(this.remaining);o&&(r=o,this.capture(r))}n[Cc(t)]=Cc(r)}parseQueryParam(n){const t=function XV(e){const n=e.match(QV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const s=function KV(e){const n=e.match(JV);return n?n[0]:""}(this.remaining);s&&(r=s,this.capture(r))}const o=cE(t),i=cE(r);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(i)}else n[o]=i}parseParens(n){const t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const r=cp(this.remaining),o=this.remaining[r.length];if("/"!==o&&")"!==o&&";"!==o)throw new M(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):n&&(i=Y);const s=this.parseChildren();t[i]=1===Object.keys(s).length?s[Y]:new de([],s),this.consumeOptional("//")}return t}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return!!this.peekStartsWith(n)&&(this.remaining=this.remaining.substring(n.length),!0)}capture(n){if(!this.consumeOptional(n))throw new M(4011,!1)}}function dE(e){return e.segments.length>0?new de([],{[Y]:e}):e}function fE(e){const n={};for(const r of Object.keys(e.children)){const i=fE(e.children[r]);if(r===Y&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))n[s]=a;else(i.segments.length>0||i.hasChildren())&&(n[r]=i)}return function t3(e){if(1===e.numberOfChildren&&e.children[Y]){const n=e.children[Y];return new de(e.segments.concat(n.segments),n.children)}return e}(new de(e.segments,n))}function Hr(e){return e instanceof oi}function hE(e){let n;const o=dE(function t(i){const s={};for(const l of i.children){const c=t(l);s[l.outlet]=c}const a=new de(i.url,s);return i===e&&(n=a),a}(e.root));return n??o}function pE(e,n,t,r){let o=e;for(;o.parent;)o=o.parent;if(0===n.length)return up(o,o,o,t,r);const i=function r3(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new mE(!0,0,e);let n=0,t=!1;const r=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?t=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new mE(t,n,r)}(n);if(i.toRoot())return up(o,o,new de([],{}),t,r);const s=function o3(e,n,t){if(e.isAbsolute)return new wc(n,!0,0);if(!t)return new wc(n,!1,NaN);if(null===t.parent)return new wc(t,!0,0);const r=Dc(e.commands[0])?0:1;return function i3(e,n,t){let r=e,o=n,i=t;for(;i>o;){if(i-=o,r=r.parent,!r)throw new M(4005,!1);o=r.segments.length}return new wc(r,!1,o-i)}(t,t.segments.length-1+r,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?$s(s.segmentGroup,s.index,i.commands):vE(s.segmentGroup,s.index,i.commands);return up(o,s.segmentGroup,a,t,r)}function Dc(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function Bs(e){return"object"==typeof e&&null!=e&&e.outlets}function up(e,n,t,r,o){let s,i={};r&&Object.entries(r).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===n?t:gE(e,n,t);const a=dE(fE(s));return new oi(a,i,o)}function gE(e,n,t){const r={};return Object.entries(e.children).forEach(([o,i])=>{r[o]=i===n?t:gE(i,n,t)}),new de(e.segments,r)}class mE{constructor(n,t,r){if(this.isAbsolute=n,this.numberOfDoubleDots=t,this.commands=r,n&&r.length>0&&Dc(r[0]))throw new M(4003,!1);const o=r.find(Bs);if(o&&o!==nE(r))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wc{constructor(n,t,r){this.segmentGroup=n,this.processChildren=t,this.index=r}}function vE(e,n,t){if(e||(e=new de([],{})),0===e.segments.length&&e.hasChildren())return $s(e,n,t);const r=function a3(e,n,t){let r=0,o=n;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=t.length)return i;const s=e.segments[o],a=t[r];if(Bs(a))break;const l=`${a}`,c=r0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!_E(l,c,s))return i;r+=2}else{if(!_E(l,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(e,n,t),o=t.slice(r.commandIndex);if(r.match&&r.pathIndexi!==Y)&&e.children[Y]&&1===e.numberOfChildren&&0===e.children[Y].segments.length){const i=$s(e.children[Y],n,t);return new de(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=vE(e.children[i],n,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===r[i]&&(o[i]=s)}),new de(e.segments,o)}}function dp(e,n,t){const r=e.segments.slice(0,n);let o=0;for(;o{"string"==typeof r&&(r=[r]),null!==r&&(n[t]=dp(new de([],{}),0,r))}),n}function yE(e){const n={};return Object.entries(e).forEach(([t,r])=>n[t]=`${r}`),n}function _E(e,n,t){return e==t.path&&wn(n,t.parameters)}const Gs="imperative";class bn{constructor(n,t){this.id=n,this.url=t}}class bc extends bn{constructor(n,t,r="imperative",o=null){super(n,t),this.type=0,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class En extends bn{constructor(n,t,r){super(n,t),this.urlAfterRedirects=r,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class si extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ai extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=16}}class Ec extends bn{constructor(n,t,r,o){super(n,t),this.error=r,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class CE extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class c3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class u3 extends bn{constructor(n,t,r,o,i){super(n,t),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class d3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class f3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class h3{constructor(n){this.route=n,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class p3{constructor(n){this.route=n,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class g3{constructor(n){this.snapshot=n,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class m3{constructor(n){this.snapshot=n,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class v3{constructor(n){this.snapshot=n,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class y3{constructor(n){this.snapshot=n,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class DE{constructor(n,t,r){this.routerEvent=n,this.position=t,this.anchor=r,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class fp{}class hp{constructor(n){this.url=n}}class _3{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new zs,this.attachRef=null}}let zs=(()=>{class e{constructor(){this.contexts=new Map}onChildOutletCreated(t,r){const o=this.getOrCreateContext(t);o.outlet=r,this.contexts.set(t,o)}onChildOutletDestroyed(t){const r=this.getContext(t);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let r=this.getContext(t);return r||(r=new _3,this.contexts.set(t,r)),r}getContext(t){return this.contexts.get(t)||null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class wE{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const t=this.pathFromRoot(n);return t.length>1?t[t.length-2]:null}children(n){const t=pp(n,this._root);return t?t.children.map(r=>r.value):[]}firstChild(n){const t=pp(n,this._root);return t&&t.children.length>0?t.children[0].value:null}siblings(n){const t=gp(n,this._root);return t.length<2?[]:t[t.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return gp(n,this._root).map(t=>t.value)}}function pp(e,n){if(e===n.value)return n;for(const t of n.children){const r=pp(e,t);if(r)return r}return null}function gp(e,n){if(e===n.value)return[n];for(const t of n.children){const r=gp(e,t);if(r.length)return r.unshift(n),r}return[]}class on{constructor(n,t){this.value=n,this.children=t}toString(){return`TreeNode(${this.value})`}}function li(e){const n={};return e&&e.children.forEach(t=>n[t.value.outlet]=t),n}class bE extends wE{constructor(n,t){super(n),this.snapshot=t,yp(this,n)}toString(){return this.snapshot.toString()}}function EE(e,n){const t=function C3(e,n){const s=new vp([],{},{},"",{},Y,n,null,{});return new IE("",new on(s,[]))}(0,n),r=new kt([new Hs("",{})]),o=new kt({}),i=new kt({}),s=new kt({}),a=new kt(""),l=new Ur(r,o,s,a,i,Y,n,t.root);return l.snapshot=t.root,new bE(new on(l,[]),t)}class Ur{constructor(n,t,r,o,i,s,a,l){this.urlSubject=n,this.paramsSubject=t,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(K(c=>c[js]))??F(void 0),this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i}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._paramMap=this.params.pipe(K(n=>ri(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(n=>ri(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function mp(e,n,t="emptyOnly"){let r;const{routeConfig:o}=e;return r=null===n||"always"!==t&&""!==o?.path&&(n.component||n.routeConfig?.loadComponent)?{params:e.params,data:e.data,resolve:{...e.data,...e._resolvedData??{}}}:{params:{...n.params,...e.params},data:{...n.data,...e.data},resolve:{...e.data,...n.data,...o?.data,...e._resolvedData}},o&&SE(o)&&(r.resolve[js]=o.title),r}class vp{get title(){return this.data?.[js]}constructor(n,t,r,o,i,s,a,l,c){this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}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._paramMap=ri(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ri(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(r=>r.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class IE extends wE{constructor(n,t){super(t),this.url=n,yp(this,t)}toString(){return ME(this._root)}}function yp(e,n){n.value._routerState=e,n.children.forEach(t=>yp(e,t))}function ME(e){const n=e.children.length>0?` { ${e.children.map(ME).join(", ")} } `:"";return`${e.value}${n}`}function _p(e){if(e.snapshot){const n=e.snapshot,t=e._futureSnapshot;e.snapshot=t,wn(n.queryParams,t.queryParams)||e.queryParamsSubject.next(t.queryParams),n.fragment!==t.fragment&&e.fragmentSubject.next(t.fragment),wn(n.params,t.params)||e.paramsSubject.next(t.params),function LV(e,n){if(e.length!==n.length)return!1;for(let t=0;twn(t.parameters,n[r].parameters))}(e.url,n.url);return t&&!(!e.parent!=!n.parent)&&(!e.parent||Cp(e.parent,n.parent))}function SE(e){return"string"==typeof e.title||null===e.title}let Dp=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=Y,this.activateEvents=new xe,this.deactivateEvents=new xe,this.attachEvents=new xe,this.detachEvents=new xe,this.parentContexts=A(zs),this.location=A(en),this.changeDetector=A(ls),this.environmentInjector=A(At),this.inputBinder=A(Ic,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(t){if(t.name){const{firstChange:r,previousValue:o}=t.name;if(r)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(t){return this.parentContexts.getContext(t)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const t=this.parentContexts.getContext(this.name);t?.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.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();const t=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(t.instance),t}attach(t,r){this.activated=t,this._activatedRoute=r,this.location.insert(t.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(t.instance)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,r){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=t;const o=this.location,s=t.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new D3(t,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:l,environmentInjector:r??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Lt]})}return e})();class D3{constructor(n,t,r){this.route=n,this.childContexts=t,this.parent=r}get(n,t){return n===Ur?this.route:n===zs?this.childContexts:this.parent.get(n,t)}}const Ic=new N("");let TE=(()=>{class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(t){this.unsubscribeFromRouteData(t),this.subscribeToRouteData(t)}unsubscribeFromRouteData(t){this.outletDataSubscriptions.get(t)?.unsubscribe(),this.outletDataSubscriptions.delete(t)}subscribeToRouteData(t){const{activatedRoute:r}=t,o=Zh([r.queryParams,r.params,r.data]).pipe(Ft(([i,s,a],l)=>(a={...i,...s,...a},0===l?F(a):Promise.resolve(a)))).subscribe(i=>{if(!t.isActivated||!t.activatedComponentRef||t.activatedRoute!==r||null===r.component)return void this.unsubscribeFromRouteData(t);const s=function WF(e){const n=Q(e);if(!n)return null;const t=new cs(n);return{get selector(){return t.selector},get type(){return t.componentType},get inputs(){return t.inputs},get outputs(){return t.outputs},get ngContentSelectors(){return t.ngContentSelectors},get isStandalone(){return n.standalone},get isSignal(){return n.signals}}}(r.component);if(s)for(const{templateName:a}of s.inputs)t.activatedComponentRef.setInput(a,i[a]);else this.unsubscribeFromRouteData(t)});this.outletDataSubscriptions.set(t,o)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function qs(e,n,t){if(t&&e.shouldReuseRoute(n.value,t.value.snapshot)){const r=t.value;r._futureSnapshot=n.value;const o=function b3(e,n,t){return n.children.map(r=>{for(const o of t.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return qs(e,r,o);return qs(e,r)})}(e,n,t);return new on(r,o)}{if(e.shouldAttach(n.value)){const i=e.retrieve(n.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>qs(e,a)),s}}const r=function E3(e){return new Ur(new kt(e.url),new kt(e.params),new kt(e.queryParams),new kt(e.fragment),new kt(e.data),e.outlet,e.component,e)}(n.value),o=n.children.map(i=>qs(e,i));return new on(r,o)}}const wp="ngNavigationCancelingError";function AE(e,n){const{redirectTo:t,navigationBehaviorOptions:r}=Hr(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,o=xE(!1,0,n);return o.url=t,o.navigationBehaviorOptions=r,o}function xE(e,n,t){const r=new Error("NavigationCancelingError: "+(e||""));return r[wp]=!0,r.cancellationCode=n,t&&(r.url=t),r}function NE(e){return e&&e[wp]}let RE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Ot],decls:1,vars:0,template:function(r,o){1&r&&y(0,"router-outlet")},dependencies:[Dp],encapsulation:2})}return e})();function bp(e){const n=e.children&&e.children.map(bp),t=n?{...e,children:n}:{...e};return!t.component&&!t.loadComponent&&(n||t.loadChildren)&&t.outlet&&t.outlet!==Y&&(t.component=RE),t}function In(e){return e.outlet||Y}function Ws(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let n=e.parent;n;n=n.parent){const t=n.routeConfig;if(t?._loadedInjector)return t._loadedInjector;if(t?._injector)return t._injector}return null}class R3{constructor(n,t,r,o,i){this.routeReuseStrategy=n,this.futureState=t,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(n){const t=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(t,r,n),_p(this.futureState.root),this.activateChildRoutes(t,r,n)}deactivateChildRoutes(n,t,r){const o=li(t);n.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(o===i)if(o.component){const s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(n,t,s.children)}else this.deactivateChildRoutes(n,t,r);else i&&this.deactivateRouteAndItsChildren(t,r)}deactivateRouteAndItsChildren(n,t){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,t):this.deactivateRouteAndOutlet(n,t)}detachAndStoreRouteSubtree(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=li(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(r&&r.outlet){const s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=li(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(n,t,r){const o=li(t);n.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new y3(i.value.snapshot))}),n.children.length&&this.forwardEvent(new m3(n.value.snapshot))}activateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(_p(o),o===i)if(o.component){const s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(n,t,s.children)}else this.activateChildRoutes(n,t,r);else if(o.component){const s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const a=this.routeReuseStrategy.retrieve(o.snapshot);this.routeReuseStrategy.store(o.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),_p(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=Ws(o.snapshot);s.attachRef=null,s.route=o,s.injector=a,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,r)}}class OE{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Mc{constructor(n,t){this.component=n,this.route=t}}function O3(e,n,t){const r=e._root;return Zs(r,n?n._root:null,t,[r.value])}function ci(e,n){const t=Symbol(),r=n.get(e,t);return r===t?"function"!=typeof e||function X1(e){return null!==pa(e)}(e)?n.get(e):e:r}function Zs(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=li(n);return e.children.forEach(s=>{(function k3(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=n?n.value:null,a=t?t.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function F3(e,n,t){if("function"==typeof t)return t(e,n);switch(t){case"pathParamsChange":return!jr(e.url,n.url);case"pathParamsOrQueryParamsChange":return!jr(e.url,n.url)||!wn(e.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Cp(e,n)||!wn(e.queryParams,n.queryParams);default:return!Cp(e,n)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new OE(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Zs(e,n,i.component?a?a.children:null:t,r,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Mc(a.outlet.component,s))}else s&&Ys(n,a,o),o.canActivateChecks.push(new OE(r)),Zs(e,null,i.component?a?a.children:null:t,r,o)})(s,i[s.value.outlet],t,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Ys(a,t.getContext(s),o)),o}function Ys(e,n,t){const r=li(e),o=e.value;Object.entries(r).forEach(([i,s])=>{Ys(s,o.component?n?n.children.getContext(i):null:n,t)}),t.canDeactivateChecks.push(new Mc(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}function Qs(e){return"function"==typeof e}function PE(e){return e instanceof hc||"EmptyError"===e?.name}const Sc=Symbol("INITIAL_VALUE");function ui(){return Ft(e=>Zh(e.map(n=>n.pipe(_r(1),function JL(...e){const n=Ei(e);return $e((t,r)=>{(n?Yh(e,t,n):Yh(e,t)).subscribe(r)})}(Sc)))).pipe(K(n=>{for(const t of n)if(!0!==t){if(t===Sc)return Sc;if(!1===t||t instanceof oi)return t}return!0}),rn(n=>n!==Sc),_r(1)))}function kE(e){return function JM(...e){return Dg(e)}(rt(n=>{if(Hr(n))throw AE(0,n)}),K(n=>!0===n))}class Ep{constructor(n){this.segmentGroup=n||null}}class Ip extends Error{constructor(n){super(),this.urlTree=n}}function di(e){return pc(new Ep(e))}class nj{constructor(n,t){this.urlSerializer=n,this.urlTree=t}noMatchError(n){return new M(4002,!1)}lineralizeSegments(n,t){let r=[],o=t.root;for(;;){if(r=r.concat(o.segments),0===o.numberOfChildren)return F(r);if(o.numberOfChildren>1||!o.children[Y])return pc(new M(4e3,!1));o=o.children[Y]}}applyRedirectCommands(n,t,r){const o=this.applyRedirectCreateUrlTree(t,this.urlSerializer.parse(t),n,r);if(t.startsWith("/"))throw new Ip(o);return o}applyRedirectCreateUrlTree(n,t,r,o){const i=this.createSegmentGroup(n,t.root,r,o);return new oi(i,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}createQueryParams(n,t){const r={};return Object.entries(n).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);r[o]=t[a]}else r[o]=i}),r}createSegmentGroup(n,t,r,o){const i=this.createSegments(n,t.segments,r,o);let s={};return Object.entries(t.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,r,o)}),new de(i,s)}createSegments(n,t,r,o){return t.map(i=>i.path.startsWith(":")?this.findPosParam(n,i,o):this.findOrReturn(i,r))}findPosParam(n,t,r){const o=r[t.path.substring(1)];if(!o)throw new M(4001,!1);return o}findOrReturn(n,t){let r=0;for(const o of t){if(o.path===n.path)return t.splice(r),o;r++}return n}}const Mp={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function rj(e,n,t,r,o){const i=Sp(e,n,t);return i.matched?(r=function M3(e,n){return e.providers&&!e._injector&&(e._injector=Xf(e.providers,n,`Route: ${e.path}`)),e._injector??n}(n,r),function K3(e,n,t,r){const o=n.canMatch;return o&&0!==o.length?F(o.map(s=>{const a=ci(s,e);return ur(function B3(e){return e&&Qs(e.canMatch)}(a)?a.canMatch(n,t):e.runInContext(()=>a(n,t)))})).pipe(ui(),kE()):F(!0)}(r,n,t).pipe(K(s=>!0===s?i:{...Mp}))):F(i)}function Sp(e,n,t){if(""===n.path)return"full"===n.pathMatch&&(e.hasChildren()||t.length>0)?{...Mp}:{matched:!0,consumedSegments:[],remainingSegments:t,parameters:{},positionalParamSegments:{}};const o=(n.matcher||FV)(t,e,n);if(!o)return{...Mp};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:t.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function FE(e,n,t,r){return t.length>0&&function sj(e,n,t){return t.some(r=>Tc(e,n,r)&&In(r)!==Y)}(e,t,r)?{segmentGroup:new de(n,ij(r,new de(t,e.children))),slicedSegments:[]}:0===t.length&&function aj(e,n,t){return t.some(r=>Tc(e,n,r))}(e,t,r)?{segmentGroup:new de(e.segments,oj(e,0,t,r,e.children)),slicedSegments:t}:{segmentGroup:new de(e.segments,e.children),slicedSegments:t}}function oj(e,n,t,r,o){const i={};for(const s of r)if(Tc(e,t,s)&&!o[In(s)]){const a=new de([],{});i[In(s)]=a}return{...o,...i}}function ij(e,n){const t={};t[Y]=n;for(const r of e)if(""===r.path&&In(r)!==Y){const o=new de([],{});t[In(r)]=o}return t}function Tc(e,n,t){return(!(e.hasChildren()||n.length>0)||"full"!==t.pathMatch)&&""===t.path}class uj{}class hj{constructor(n,t,r,o,i,s,a){this.injector=n,this.configLoader=t,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new nj(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(n){return new M(4002,!1)}recognize(){const n=FE(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(K(t=>{const r=new vp([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},Y,this.rootComponentType,null,{}),o=new on(r,t),i=new IE("",o),s=function n3(e,n,t=null,r=null){return pE(hE(e),n,t,r)}(r,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),this.inheritParamsAndData(i._root,null),{state:i,tree:s}}))}match(n){return this.processSegmentGroup(this.injector,this.config,n,Y).pipe(ni(r=>{if(r instanceof Ip)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof Ep?this.noMatchError(r):r}))}inheritParamsAndData(n,t){const r=n.value,o=mp(r,t,this.paramsInheritanceStrategy);r.params=Object.freeze(o.params),r.data=Object.freeze(o.data),n.children.forEach(i=>this.inheritParamsAndData(i,r))}processSegmentGroup(n,t,r,o){return 0===r.segments.length&&r.hasChildren()?this.processChildren(n,t,r):this.processSegment(n,t,r,r.segments,o,!0).pipe(K(i=>i instanceof on?[i]:[]))}processChildren(n,t,r){const o=[];for(const i of Object.keys(r.children))"primary"===i?o.unshift(i):o.push(i);return Oe(o).pipe(ti(i=>{const s=r.children[i],a=function x3(e,n){const t=e.filter(r=>In(r)===n);return t.push(...e.filter(r=>In(r)!==n)),t}(t,i);return this.processSegmentGroup(n,a,s,i)}),function tV(e,n){return $e(function eV(e,n,t,r,o){return(i,s)=>{let a=t,l=n,c=0;i.subscribe(Ve(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),r&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,n,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),gc(null),function nV(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,Xh(1),t?gc(n):Vb(()=>new hc))}(),Xe(i=>{if(null===i)return di(r);const s=LE(i);return function pj(e){e.sort((n,t)=>n.value.outlet===Y?-1:t.value.outlet===Y?1:n.value.outlet.localeCompare(t.value.outlet))}(s),F(s)}))}processSegment(n,t,r,o,i,s){return Oe(t).pipe(ti(a=>this.processSegmentAgainstRoute(a._injector??n,t,a,r,o,i,s).pipe(ni(l=>{if(l instanceof Ep)return F(null);throw l}))),Vr(a=>!!a),ni(a=>{if(PE(a))return function cj(e,n,t){return 0===n.length&&!e.children[t]}(r,o,i)?F(new uj):di(r);throw a}))}processSegmentAgainstRoute(n,t,r,o,i,s,a){return function lj(e,n,t,r){return!!(In(e)===r||r!==Y&&Tc(n,t,e))&&("**"===e.path||Sp(n,e,t).matched)}(r,o,i,s)?void 0===r.redirectTo?this.matchSegmentAgainstRoute(n,o,r,i,s):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,o,t,r,i,s):di(o):di(o)}expandSegmentAgainstRouteUsingRedirect(n,t,r,o,i,s){const{matched:a,consumedSegments:l,positionalParamSegments:c,remainingSegments:u}="**"===o.path?VE(i):Sp(t,o,i);if(!a)return di(t);o.redirectTo.startsWith("/")&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>31&&(this.allowRedirects=!1));const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,c);return this.applyRedirects.lineralizeSegments(o,d).pipe(Xe(g=>this.processSegment(n,r,t,g.concat(u),s,!1)))}matchSegmentAgainstRoute(n,t,r,o,i){let s;return"**"===r.path?(s=F(VE(o)),t.children={}):s=rj(t,r,o,n),s.pipe(Ft(a=>a.matched?this.getChildConfig(n=r._injector??n,r,o).pipe(Ft(({routes:l})=>{const c=r._loadedInjector??n,{consumedSegments:u,remainingSegments:d,parameters:g}=a,m=new vp(u,g,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,function mj(e){return e.data||{}}(r),In(r),r.component??r._loadedComponent??null,r,function vj(e){return e.resolve||{}}(r)),{segmentGroup:v,slicedSegments:_}=FE(t,u,d,l);if(0===_.length&&v.hasChildren())return this.processChildren(c,l,v).pipe(K(I=>null===I?null:new on(m,I)));if(0===l.length&&0===_.length)return F(new on(m,[]));const D=In(r)===i;return this.processSegment(c,l,v,_,D?Y:i,!0).pipe(K(I=>new on(m,I instanceof on?[I]:[])))})):di(t)))}getChildConfig(n,t,r){return t.children?F({routes:t.children,injector:n}):t.loadChildren?void 0!==t._loadedRoutes?F({routes:t._loadedRoutes,injector:t._loadedInjector}):function J3(e,n,t,r){const o=n.canLoad;return void 0===o||0===o.length?F(!0):F(o.map(s=>{const a=ci(s,e);return ur(function V3(e){return e&&Qs(e.canLoad)}(a)?a.canLoad(n,t):e.runInContext(()=>a(n,t)))})).pipe(ui(),kE())}(n,t,r).pipe(Xe(o=>o?this.configLoader.loadChildren(n,t).pipe(rt(i=>{t._loadedRoutes=i.routes,t._loadedInjector=i.injector})):function tj(e){return pc(xE(!1,3))}())):F({routes:[],injector:n})}}function gj(e){const n=e.value.routeConfig;return n&&""===n.path}function LE(e){const n=[],t=new Set;for(const r of e){if(!gj(r)){n.push(r);continue}const o=n.find(i=>r.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...r.children),t.add(o)):n.push(r)}for(const r of t){const o=LE(r.children);n.push(new on(r.value,o))}return n.filter(r=>!t.has(r))}function VE(e){return{matched:!0,parameters:e.length>0?nE(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function _j(e,n){return Xe(t=>{const{targetSnapshot:r,guards:{canActivateChecks:o}}=t;if(!o.length)return F(t);const i=o.map(c=>c.route),s=new Set(i),a=jE(i[0].parent).slice(1);let l=0;return Oe(a).pipe(ti(c=>s.has(c)?function Cj(e,n,t,r){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!SE(o)&&(i[js]=o.title),function Dj(e,n,t,r){const o=sp(e);if(0===o.length)return F({});const i={};return Oe(o).pipe(Xe(s=>function wj(e,n,t,r){const o=Ws(n)??r,i=ci(e,o);return ur(i.resolve?i.resolve(n,t):o.runInContext(()=>i(n,t)))}(e[s],n,t,r).pipe(Vr(),rt(a=>{i[s]=a}))),Xh(1),function rV(e){return K(()=>e)}(i),ni(s=>PE(s)?an:pc(s)))}(i,e,n,r).pipe(K(s=>(e._resolvedData=s,e.data=mp(e,e.parent,t).resolve,null)))}(c,r,e,n):(c.data=mp(c,c.parent,e).resolve,F(void 0))),rt(()=>l++),Xh(1),Xe(c=>l===a.length?F(t):an))})}function jE(e){const n=e.children.map(t=>jE(t)).flat();return[e,...n]}function Tp(e){return Ft(n=>{const t=e(n);return t?Oe(t).pipe(K(()=>n)):F(n)})}let HE=(()=>{class e{buildTitle(t){let r,o=t.root;for(;void 0!==o;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===Y);return r}getResolvedTitleForRoute(t){return t.data[js]}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(bj),providedIn:"root"})}return e})(),bj=(()=>{class e extends HE{constructor(t){super(),this.title=t}updateTitle(t){const r=this.buildTitle(t);void 0!==r&&this.title.setTitle(r)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Xb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const fi=new N("",{providedIn:"root",factory:()=>({})}),hi=new N("ROUTES");let Ap=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(ww)}loadComponent(t){if(this.componentLoaders.get(t))return this.componentLoaders.get(t);if(t._loadedComponent)return F(t._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(t);const r=ur(t.loadComponent()).pipe(K(UE),rt(i=>{this.onLoadEndListener&&this.onLoadEndListener(t),t._loadedComponent=i}),Ls(()=>{this.componentLoaders.delete(t)})),o=new Lb(r,()=>new zt).pipe(Qh());return this.componentLoaders.set(t,o),o}loadChildren(t,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return F({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);const i=function Ej(e,n,t,r){return ur(e.loadChildren()).pipe(K(UE),Xe(o=>o instanceof FD||Array.isArray(o)?F(o):Oe(n.compileModuleAsync(o))),K(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(t).injector,s=i.get(hi,[],{optional:!0,self:!0}).flat()),{routes:s.map(bp),injector:i}}))}(r,this.compiler,t,this.onLoadEndListener).pipe(Ls(()=>{this.childrenLoaders.delete(r)})),s=new Lb(i,()=>new zt).pipe(Qh());return this.childrenLoaders.set(r,s),s}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function UE(e){return function Ij(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let xp=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Mj),providedIn:"root"})}return e})(),Mj=(()=>{class e{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const BE=new N(""),$E=new N("");function Sj(e,n,t){const r=e.get($E),o=e.get(ft);return e.get(ae).runOutsideAngular(()=>{if(!o.startViewTransition||r.skipNextTransition)return r.skipNextTransition=!1,Promise.resolve();let i;const s=new Promise(c=>{i=c}),a=o.startViewTransition(()=>(i(),function Tj(e){return new Promise(n=>{s_(n,{injector:e})})}(e))),{onViewTransitionCreated:l}=r;return l&&function GS(e,n){e instanceof Mr&&e.assertNotDestroyed();const r=Yn(e),o=mt(void 0);try{return n()}finally{Yn(r),mt(o)}}(e,()=>l({transition:a,from:n,to:t})),s})}let Ac=(()=>{class e{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new zt,this.transitionAbortSubject=new zt,this.configLoader=A(Ap),this.environmentInjector=A(At),this.urlSerializer=A(ii),this.rootContexts=A(zs),this.location=A(Os),this.inputBindingEnabled=null!==A(Ic,{optional:!0}),this.titleStrategy=A(HE),this.options=A(fi,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=A(xp),this.createViewTransition=A(BE,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>F(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=o=>this.events.next(new p3(o)),this.configLoader.onLoadStartListener=o=>this.events.next(new h3(o))}complete(){this.transitions?.complete()}handleNavigationRequest(t){const r=++this.navigationId;this.transitions?.next({...this.transitions.value,...t,id:r})}setupNavigations(t,r,o){return this.transitions=new kt({id:0,currentUrlTree:r,currentRawUrl:r,extractedUrl:this.urlHandlingStrategy.extract(r),urlAfterRedirects:this.urlHandlingStrategy.extract(r),rawUrl:r,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:Gs,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(rn(i=>0!==i.id),K(i=>({...i,extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Ft(i=>{this.currentTransition=i;let s=!1,a=!1;return F(i).pipe(rt(l=>{this.currentNavigation={id:l.id,initialUrl:l.rawUrl,extractedUrl:l.extractedUrl,trigger:l.source,extras:l.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ft(l=>{const c=!t.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl();if(!c&&"reload"!==(l.extras.onSameUrlNavigation??t.onSameUrlNavigation)){const d="";return this.events.next(new ai(l.id,this.urlSerializer.serialize(l.rawUrl),d,0)),l.resolve(null),an}if(this.urlHandlingStrategy.shouldProcessUrl(l.rawUrl))return F(l).pipe(Ft(d=>{const g=this.transitions?.getValue();return this.events.next(new bc(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),g!==this.transitions?.getValue()?an:Promise.resolve(d)}),function yj(e,n,t,r,o,i){return Xe(s=>function dj(e,n,t,r,o,i,s="emptyOnly"){return new hj(e,n,t,r,o,s,i).recognize()}(e,n,t,r,s.extractedUrl,o,i).pipe(K(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,t.config,this.urlSerializer,this.paramsInheritanceStrategy),rt(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:d.urlAfterRedirects};const g=new CE(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(g)}));if(c&&this.urlHandlingStrategy.shouldProcessUrl(l.currentRawUrl)){const{id:d,extractedUrl:g,source:m,restoredState:v,extras:_}=l,D=new bc(d,this.urlSerializer.serialize(g),m,v);this.events.next(D);const I=EE(0,this.rootComponentType).snapshot;return this.currentTransition=i={...l,targetSnapshot:I,urlAfterRedirects:g,extras:{..._,skipLocationChange:!1,replaceUrl:!1}},this.currentNavigation.finalUrl=g,F(i)}{const d="";return this.events.next(new ai(l.id,this.urlSerializer.serialize(l.extractedUrl),d,1)),l.resolve(null),an}}),rt(l=>{const c=new c3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(c)}),K(l=>(this.currentTransition=i={...l,guards:O3(l.targetSnapshot,l.currentSnapshot,this.rootContexts)},i)),function G3(e,n){return Xe(t=>{const{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=t;return 0===s.length&&0===i.length?F({...t,guardsResult:!0}):function z3(e,n,t,r){return Oe(e).pipe(Xe(o=>function X3(e,n,t,r,o){const i=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return i&&0!==i.length?F(i.map(a=>{const l=Ws(n)??o,c=ci(a,l);return ur(function U3(e){return e&&Qs(e.canDeactivate)}(c)?c.canDeactivate(e,n,t,r):l.runInContext(()=>c(e,n,t,r))).pipe(Vr())})).pipe(ui()):F(!0)}(o.component,o.route,t,n,r)),Vr(o=>!0!==o,!0))}(s,r,o,e).pipe(Xe(a=>a&&function L3(e){return"boolean"==typeof e}(a)?function q3(e,n,t,r){return Oe(n).pipe(ti(o=>Yh(function Z3(e,n){return null!==e&&n&&n(new g3(e)),F(!0)}(o.route.parent,r),function W3(e,n){return null!==e&&n&&n(new v3(e)),F(!0)}(o.route,r),function Q3(e,n,t){const r=n[n.length-1],i=n.slice(0,n.length-1).reverse().map(s=>function P3(e){const n=e.routeConfig?e.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:e,guards:n}:null}(s)).filter(s=>null!==s).map(s=>Fb(()=>F(s.guards.map(l=>{const c=Ws(s.node)??t,u=ci(l,c);return ur(function H3(e){return e&&Qs(e.canActivateChild)}(u)?u.canActivateChild(r,e):c.runInContext(()=>u(r,e))).pipe(Vr())})).pipe(ui())));return F(i).pipe(ui())}(e,o.path,t),function Y3(e,n,t){const r=n.routeConfig?n.routeConfig.canActivate:null;if(!r||0===r.length)return F(!0);const o=r.map(i=>Fb(()=>{const s=Ws(n)??t,a=ci(i,s);return ur(function j3(e){return e&&Qs(e.canActivate)}(a)?a.canActivate(n,e):s.runInContext(()=>a(n,e))).pipe(Vr())}));return F(o).pipe(ui())}(e,o.route,t))),Vr(o=>!0!==o,!0))}(r,i,e,n):F(a)),K(a=>({...t,guardsResult:a})))})}(this.environmentInjector,l=>this.events.next(l)),rt(l=>{if(i.guardsResult=l.guardsResult,Hr(l.guardsResult))throw AE(0,l.guardsResult);const c=new u3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot,!!l.guardsResult);this.events.next(c)}),rn(l=>!!l.guardsResult||(this.cancelNavigationTransition(l,"",3),!1)),Tp(l=>{if(l.guards.canActivateChecks.length)return F(l).pipe(rt(c=>{const u=new d3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),Ft(c=>{let u=!1;return F(c).pipe(_j(this.paramsInheritanceStrategy,this.environmentInjector),rt({next:()=>u=!0,complete:()=>{u||this.cancelNavigationTransition(c,"",2)}}))}),rt(c=>{const u=new f3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}))}),Tp(l=>{const c=u=>{const d=[];u.routeConfig?.loadComponent&&!u.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(u.routeConfig).pipe(rt(g=>{u.component=g}),K(()=>{})));for(const g of u.children)d.push(...c(g));return d};return Zh(c(l.targetSnapshot.root)).pipe(gc(),_r(1))}),Tp(()=>this.afterPreactivation()),Ft(()=>{const{currentSnapshot:l,targetSnapshot:c}=i,u=this.createViewTransition?.(this.environmentInjector,l.root,c.root);return u?Oe(u).pipe(K(()=>i)):F(i)}),K(l=>{const c=function w3(e,n,t){const r=qs(e,n._root,t?t._root:void 0);return new bE(r,n)}(t.routeReuseStrategy,l.targetSnapshot,l.currentRouterState);return this.currentTransition=i={...l,targetRouterState:c},this.currentNavigation.targetRouterState=c,i}),rt(()=>{this.events.next(new fp)}),((e,n,t,r)=>K(o=>(new R3(n,o.targetRouterState,o.currentRouterState,t,r).activate(e),o)))(this.rootContexts,t.routeReuseStrategy,l=>this.events.next(l),this.inputBindingEnabled),_r(1),rt({next:l=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new En(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects))),this.titleStrategy?.updateTitle(l.targetRouterState.snapshot),l.resolve(!0)},complete:()=>{s=!0}}),function oV(e){return $e((n,t)=>{qt(e).subscribe(Ve(t,()=>t.complete(),lu)),!t.closed&&n.subscribe(t)})}(this.transitionAbortSubject.pipe(rt(l=>{throw l}))),Ls(()=>{s||a||this.cancelNavigationTransition(i,"",1),this.currentNavigation?.id===i.id&&(this.currentNavigation=null)}),ni(l=>{if(a=!0,NE(l))this.events.next(new si(i.id,this.urlSerializer.serialize(i.extractedUrl),l.message,l.cancellationCode)),function I3(e){return NE(e)&&Hr(e.url)}(l)?this.events.next(new hp(l.url)):i.resolve(!1);else{this.events.next(new Ec(i.id,this.urlSerializer.serialize(i.extractedUrl),l,i.targetSnapshot??void 0));try{i.resolve(t.errorHandler(l))}catch(c){i.reject(c)}}return an}))}))}cancelNavigationTransition(t,r,o){const i=new si(t.id,this.urlSerializer.serialize(t.extractedUrl),r,o);this.events.next(i),t.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){return this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))).toString()!==this.currentTransition?.extractedUrl.toString()&&!this.currentTransition?.extras.skipLocationChange}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Aj(e){return e!==Gs}let xj=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Rj),providedIn:"root"})}return e})();class Nj{shouldDetach(n){return!1}store(n,t){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,t){return n.routeConfig===t.routeConfig}}let Rj=(()=>{class e extends Nj{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),GE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Oj),providedIn:"root"})}return e})(),Oj=(()=>{class e extends GE{constructor(){super(...arguments),this.location=A(Os),this.urlSerializer=A(ii),this.options=A(fi,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=A(xp),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new oi,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=EE(0,null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(t){return this.location.subscribe(r=>{"popstate"===r.type&&t(r.url,r.state)})}handleRouterEvent(t,r){if(t instanceof bc)this.stateMemento=this.createStateMemento();else if(t instanceof ai)this.rawUrlTree=r.initialUrl;else if(t instanceof CE){if("eager"===this.urlUpdateStrategy&&!r.extras.skipLocationChange){const o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(o,r)}}else t instanceof fp?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,"deferred"===this.urlUpdateStrategy&&(r.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,r))):t instanceof si&&(3===t.code||2===t.code)?this.restoreHistory(r):t instanceof Ec?this.restoreHistory(r,!0):t instanceof En&&(this.lastSuccessfulId=t.id,this.currentPageId=this.browserPageId)}setBrowserUrl(t,r){const o=this.urlSerializer.serialize(t);if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){const s={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId)};this.location.replaceState(o,"",s)}else{const i={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId+1)};this.location.go(o,"",i)}}restoreHistory(t,r=!1){if("computed"===this.canceledNavigationResolution){const i=this.currentPageId-this.browserPageId;0!==i?this.location.historyGo(i):this.currentUrlTree===t.finalUrl&&0===i&&(this.resetState(t),this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(r&&this.resetState(t),this.resetUrlToCurrentUrlTree())}resetState(t){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(t,r){return"computed"===this.canceledNavigationResolution?{navigationId:t,\u0275routerPageId:r}:{navigationId:t}}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var Xs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(Xs||{});function zE(e,n){e.events.pipe(rn(t=>t instanceof En||t instanceof si||t instanceof Ec||t instanceof ai),K(t=>t instanceof En||t instanceof ai?Xs.COMPLETE:t instanceof si&&(0===t.code||1===t.code)?Xs.REDIRECTING:Xs.FAILED),rn(t=>t!==Xs.REDIRECTING),_r(1)).subscribe(()=>{n()})}function Pj(e){throw e}const kj={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Fj={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Bt=(()=>{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.isNgZoneEnabled=!1,this.console=A(Cw),this.stateManager=A(GE),this.options=A(fi,{optional:!0})||{},this.pendingTasks=A($l),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=A(Ac),this.urlSerializer=A(ii),this.location=A(Os),this.urlHandlingStrategy=A(xp),this._events=new zt,this.errorHandler=this.options.errorHandler||Pj,this.navigated=!1,this.routeReuseStrategy=A(xj),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=A(hi,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!A(Ic,{optional:!0}),this.eventsSubscription=new Et,this.isNgZoneEnabled=A(ae)instanceof ae&&ae.isInAngularZone(),this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:t=>{this.console.warn(t)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const t=this.navigationTransitions.events.subscribe(r=>{try{const o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(null!==o&&null!==i)if(this.stateManager.handleRouterEvent(r,i),r instanceof si&&0!==r.code&&1!==r.code)this.navigated=!0;else if(r instanceof En)this.navigated=!0;else if(r instanceof hp){const s=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),a={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||Aj(o.source)};this.scheduleNavigation(s,Gs,null,a,{resolve:o.resolve,reject:o.reject,promise:o.promise})}(function Vj(e){return!(e instanceof fp||e instanceof hp)})(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(t)}resetRootComponentType(t){this.routerState.root.component=t,this.navigationTransitions.rootComponentType=t}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Gs,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription||(this.nonRouterCurrentEntryChangeSubscription=this.stateManager.registerNonRouterCurrentEntryChangeListener((t,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(t,"popstate",r)},0)}))}navigateToSyncWithBrowser(t,r,o){const i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){const l={...o};delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(i.state=l)}const a=this.parseUrl(t);this.scheduleNavigation(a,r,s,i)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(t){this.config=t.map(bp),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(t,r={}){const{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:l}=r,c=l?this.currentUrlTree.fragment:s;let d,u=null;switch(a){case"merge":u={...this.currentUrlTree.queryParams,...i};break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=i||null}null!==u&&(u=this.removeEmptyProps(u));try{d=hE(o?o.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof t[0]||!t[0].startsWith("/"))&&(t=[]),d=this.currentUrlTree.root}return pE(d,t,u,c??null)}navigateByUrl(t,r={skipLocationChange:!1}){const o=Hr(t)?t:this.parseUrl(t),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,Gs,null,r)}navigate(t,r={skipLocationChange:!1}){return function Lj(e){for(let n=0;n{const i=t[o];return null!=i&&(r[o]=i),r},{})}scheduleNavigation(t,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,l,c;s?(a=s.resolve,l=s.reject,c=s.promise):c=new Promise((d,g)=>{a=d,l=g});const u=this.pendingTasks.add();return zE(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:t,extras:i,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(d=>Promise.reject(d))}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Mn=(()=>{class e{constructor(t,r,o,i,s,a){this.router=t,this.route=r,this.tabIndexAttribute=o,this.renderer=i,this.el=s,this.locationStrategy=a,this.href=null,this.commands=null,this.onChanges=new zt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===l||"area"===l,this.isAnchorElement?this.subscription=t.events.subscribe(c=>{c instanceof En&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(t){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",t)}ngOnChanges(t){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(t){null!=t?(this.commands=Array.isArray(t)?t:[t],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(t,r,o,i,s){return!!(null===this.urlTree||this.isAnchorElement&&(0!==t||r||o||i||s||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const t=null===this.href?null:function uy(e,n,t){return function cA(e,n){return"src"===n&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===n&&("base"===e||"link"===e)?cy:bo}(n,t)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",t)}applyAttributeValue(t,r){const o=this.renderer,i=this.el.nativeElement;null!==r?o.setAttribute(i,t,r):o.removeAttribute(i,t)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Ur),function Pa(e){return function uS(e,n){if("class"===n)return e.classes;if("style"===n)return e.styles;const t=e.attrs;if(t){const r=t.length;let o=0;for(;o{class e{get isActive(){return this._isActive}constructor(t,r,o,i,s){this.router=t,this.element=r,this.renderer=o,this.cdr=i,this.link=s,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new xe,this.routerEventsSubscription=t.events.subscribe(a=>{a instanceof En&&this.update()})}ngAfterContentInit(){F(this.links.changes,F(null)).pipe(Yr()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const t=[...this.links.toArray(),this.link].filter(r=>!!r).map(r=>r.onChanges);this.linkInputChangesSubscription=Oe(t).pipe(Yr()).subscribe(r=>{this._isActive!==this.isLinkActive(this.router)(r)&&this.update()})}set routerLinkActive(t){const r=Array.isArray(t)?t:t.split(" ");this.classes=r.filter(o=>!!o)}ngOnChanges(t){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const t=this.hasActiveLinks();this._isActive!==t&&(this._isActive=t,this.cdr.markForCheck(),this.classes.forEach(r=>{t?this.renderer.addClass(this.element.nativeElement,r):this.renderer.removeClass(this.element.nativeElement,r)}),t&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(t))})}isLinkActive(t){const r=function jj(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>!!o.urlTree&&t.isActive(o.urlTree,r)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.links.some(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Nt),S(Fn),S(ls),S(Mn,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(r,o,i){if(1&r&&ew(i,Mn,5),2&r){let s;KD(s=function tw(){return function lk(e,n){return e[dn].queries[n].queryList}(b(),Nm())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Lt]})}return e})();class WE{}let Hj=(()=>{class e{constructor(t,r,o,i,s){this.router=t,this.injector=o,this.preloadingStrategy=i,this.loader=s}setUpPreloading(){this.subscription=this.router.events.pipe(rn(t=>t instanceof En),ti(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,r){const o=[];for(const i of r){i.providers&&!i._injector&&(i._injector=Xf(i.providers,t,`Route: ${i.path}`));const s=i._injector??t,a=i._loadedInjector??s;(i.loadChildren&&!i._loadedRoutes&&void 0===i.canLoad||i.loadComponent&&!i._loadedComponent)&&o.push(this.preloadConfig(s,i)),(i.children||i._loadedRoutes)&&o.push(this.processRoutes(a,i.children??i._loadedRoutes))}return Oe(o).pipe(Yr())}preloadConfig(t,r){return this.preloadingStrategy.preload(r,()=>{let o;o=r.loadChildren&&void 0===r.canLoad?this.loader.loadChildren(t,r):F(null);const i=o.pipe(Xe(s=>null===s?F(void 0):(r._loadedRoutes=s.routes,r._loadedInjector=s.injector,this.processRoutes(s.injector??t,s.routes))));return r.loadComponent&&!r._loadedComponent?Oe([i,this.loader.loadComponent(r)]).pipe(Yr()):i})}static#e=this.\u0275fac=function(r){return new(r||e)(k(Bt),k(ww),k(At),k(WE),k(Ap))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Np=new N("");let ZE=(()=>{class e{constructor(t,r,o,i,s={}){this.urlSerializer=t,this.transitions=r,this.viewportScroller=o,this.zone=i,this.options=s,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},s.scrollPositionRestoration=s.scrollPositionRestoration||"disabled",s.anchorScrolling=s.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof bc?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof En?(this.lastId=t.id,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.urlAfterRedirects).fragment)):t instanceof ai&&0===t.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof DE&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,r){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new DE(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,r))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){!function Oy(){throw new Error("invalid")}()};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Sn(e,n){return{\u0275kind:e,\u0275providers:n}}function QE(){const e=A(_t);return n=>{const t=e.get(Xo);if(n!==t.components[0])return;const r=e.get(Bt),o=e.get(XE);1===e.get(Rp)&&r.initialNavigation(),e.get(JE,null,X.Optional)?.setUpPreloading(),e.get(Np,null,X.Optional)?.init(),r.resetRootComponentType(t.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const XE=new N("",{factory:()=>new zt}),Rp=new N("",{providedIn:"root",factory:()=>1}),JE=new N("");function Gj(e){return Sn(0,[{provide:JE,useExisting:Hj},{provide:WE,useExisting:e}])}function qj(e){return Sn(9,[{provide:BE,useValue:Sj},{provide:$E,useValue:{skipNextTransition:!!e?.skipInitialTransition,...e}}])}const KE=new N("ROUTER_FORROOT_GUARD"),Wj=[Os,{provide:ii,useClass:ap},Bt,zs,{provide:Ur,useFactory:function YE(e){return e.routerState.root},deps:[Bt]},Ap,[]];let eI=(()=>{class e{constructor(t){}static forRoot(t,r){return{ngModule:e,providers:[Wj,[],{provide:hi,multi:!0,useValue:t},{provide:KE,useFactory:Xj,deps:[[Bt,new La,new Va]]},{provide:fi,useValue:r||{}},r?.useHash?{provide:Lr,useClass:JF}:{provide:Lr,useClass:cb},{provide:Np,useFactory:()=>{const e=A(vL),n=A(ae),t=A(fi),r=A(Ac),o=A(ii);return t.scrollOffset&&e.setOffset(t.scrollOffset),new ZE(o,r,e,n,t)}},r?.preloadingStrategy?Gj(r.preloadingStrategy).\u0275providers:[],r?.initialNavigation?Jj(r):[],r?.bindToComponentInputs?Sn(8,[TE,{provide:Ic,useExisting:TE}]).\u0275providers:[],r?.enableViewTransitions?qj().\u0275providers:[],[{provide:tI,useFactory:QE},{provide:mh,multi:!0,useExisting:tI}]]}}static forChild(t){return{ngModule:e,providers:[{provide:hi,multi:!0,useValue:t}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(KE,8))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Xj(e){return"guarded"}function Jj(e){return["disabled"===e.initialNavigation?Sn(3,[{provide:ch,multi:!0,useFactory:()=>{const n=A(Bt);return()=>{n.setUpLocationChangeListener()}}},{provide:Rp,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Sn(2,[{provide:Rp,useValue:0},{provide:ch,multi:!0,deps:[_t],useFactory:n=>{const t=n.get(QF,Promise.resolve());return()=>t.then(()=>new Promise(r=>{const o=n.get(Bt),i=n.get(XE);zE(o,()=>{r(!0)}),n.get(Ac).afterPreactivation=()=>(r(!0),i.closed?F(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const tI=new N(""),eH=()=>["/pro"];let tH=(()=>{class e{constructor(){this.years=(new Date).getFullYear()-2009}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Ot],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"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[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(r,o){1&r&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),y(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),y(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),y(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),y(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),y(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),y(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),y(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),y(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),y(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),y(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),y(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),y(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),y(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),y(81,"i",21),f(82," GitHub"),p(),y(83,"br"),h(84,"a",22),y(85,"i",23),f(86," Twitter"),p(),y(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),y(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&r&&(C(19),Hn(" Fast forward ",o.years," years, I'm still maintaining "),C(11),E("routerLink",ee(2,eH)))},dependencies:[Mn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}.portrait[_ngcontent-%COMP%]{max-height:300px}"]})}return e})();const nI=()=>["/"],nH=e=>({show:e}),pi=()=>["link-active"],rI=()=>({exact:!0}),rH=()=>["/features"],oH=()=>["/getstarted"],iH=()=>["/usage"],sH=()=>["/contact"],aH=()=>["/pro"];let lH=(()=>{class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Ot],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(r,o){1&r&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),y(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),y(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),y(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),y(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),y(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&r&&(C(3),E("routerLink",ee(17,nI)),C(4),Xt("aria-expanded",o.isExpanded),C(2),E("ngClass",Ms(18,nH,o.isExpanded)),C(2),E("routerLinkActive",ee(20,pi))("routerLinkActiveOptions",ee(21,rI)),C(1),E("routerLink",ee(22,nI)),C(2),E("routerLinkActive",ee(23,pi))("routerLinkActiveOptions",ee(24,rI)),C(1),E("routerLink",ee(25,rH)),C(2),E("routerLinkActive",ee(26,pi)),C(1),E("routerLink",ee(27,oH)),C(2),E("routerLinkActive",ee(28,pi)),C(1),E("routerLink",ee(29,iH)),C(2),E("routerLinkActive",ee(30,pi)),C(1),E("routerLink",ee(31,sH)),C(2),E("routerLinkActive",ee(32,pi)),C(1),E("routerLink",ee(33,aH)))},dependencies:[Mn,uc,qE],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}"]})}return e})(),cH=(()=>{class e{constructor(t,r,o){this.dom=t,this.router=r,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(rn(t=>t instanceof En),K(()=>this.activatedRoute),K(t=>{for(;t.firstChild;)t=t.firstChild;return t}),rn(t=>"primary"===t.outlet),Xe(t=>t.data)).subscribe(t=>{const r=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(t.canonical?r+t.canonical:r+this.router.url)})}updateCanonicalUrl(t){const r=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;null==o&&(o=this.dom.createElement("link"),r.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(ft),S(Bt),S(Ur))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-root"]],standalone:!0,features:[Ot],decls:3,vars:0,template:function(r,o){1&r&&y(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[lH,Dp,tH],encapsulation:2})}return e})(),oI=(()=>{class e{constructor(t,r){this._renderer=t,this._elementRef=r,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(t,r){this._renderer.setProperty(this._elementRef.nativeElement,t,r)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt))};static#t=this.\u0275dir=$({type:e})}return e})(),Br=(()=>{class e extends oI{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,features:[ce]})}return e})();const Tn=new N("NgValueAccessor"),fH={provide:Tn,useExisting:he(()=>gi),multi:!0},pH=new N("CompositionEventMode");let gi=(()=>{class e extends oI{constructor(t,r,o){super(t,r),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function hH(){const e=lr()?lr().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(pH,8))};static#t=this.\u0275dir=$({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(r,o){1&r&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[Ee([fH]),ce]})}return e})();function dr(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const ot=new N("NgValidators"),fr=new N("NgAsyncValidators"),gH=/^(?=.{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 cI(e){return dr(e.value)?{required:!0}:null}function dI(e){return dr(e.value)||gH.test(e.value)?null:{email:!0}}function xc(e){return null}function gI(e){return null!=e}function mI(e){return Is(e)?Oe(e):e}function vI(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function yI(e,n){return n.map(t=>t(e))}function _I(e){return e.map(n=>function mH(e){return!e.validate}(n)?n:t=>n.validate(t))}function Op(e){return null!=e?function CI(e){if(!e)return null;const n=e.filter(gI);return 0==n.length?null:function(t){return vI(yI(t,n))}}(_I(e)):null}function Pp(e){return null!=e?function DI(e){if(!e)return null;const n=e.filter(gI);return 0==n.length?null:function(t){return function uH(...e){const n=jg(e),{args:t,keys:r}=Rb(e),o=new Te(i=>{const{length:s}=t;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?Pb(r,a):a),i.complete())}))}});return n?o.pipe(Ob(n)):o}(yI(t,n).map(mI)).pipe(K(vI))}}(_I(e)):null}function wI(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function kp(e){return e?Array.isArray(e)?e:[e]:[]}function Nc(e,n){return Array.isArray(e)?e.includes(n):e===n}function II(e,n){const t=kp(n);return kp(e).forEach(o=>{Nc(t,o)||t.push(o)}),t}function MI(e,n){return kp(n).filter(t=>!Nc(e,t))}class SI{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(n){this._rawValidators=n||[],this._composedValidatorFn=Op(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Pp(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control&&this.control.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class pt extends SI{get formDirective(){return null}get path(){return null}}class hr extends SI{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class TI{constructor(n){this._cd=n}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Rc=(()=>{class e extends TI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(hr,2))};static#t=this.\u0275dir=$({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&El("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:[ce]})}return e})(),Oc=(()=>{class e extends TI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,10))};static#t=this.\u0275dir=$({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(r,o){2&r&&El("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:[ce]})}return e})();const Js="VALID",kc="INVALID",mi="PENDING",Ks="DISABLED";function Vp(e){return(Fc(e)?e.validators:e)||null}function jp(e,n){return(Fc(n)?n.asyncValidators:e)||null}function Fc(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class RI{constructor(n,t){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get valid(){return this.status===Js}get invalid(){return this.status===kc}get pending(){return this.status==mi}get disabled(){return this.status===Ks}get enabled(){return this.status!==Ks}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(II(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(II(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(MI(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(MI(n,this._rawAsyncValidators))}hasValidator(n){return Nc(this._rawValidators,n)}hasAsyncValidator(n){return Nc(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){this.touched=!0,this._parent&&!n.onlySelf&&this._parent.markAsTouched(n)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(n=>n.markAllAsTouched())}markAsUntouched(n={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}markAsDirty(n={}){this.pristine=!1,this._parent&&!n.onlySelf&&this._parent.markAsDirty(n)}markAsPristine(n={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=mi,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Ks,this.errors=null,this._forEachChild(r=>{r.disable({...n,onlySelf:!0})}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Js,this._forEachChild(r=>{r.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Js||this.status===mi)&&this._runAsyncValidator(n.emitEvent)),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(n)}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Ks:Js}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=mi,this._hasOwnPendingAsyncValidator=!0;const t=mI(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((r,o)=>r&&r._find(o),this)}getError(n,t){const r=t?this.get(t):this;return r&&r.errors?r.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(n)}_initObservables(){this.valueChanges=new xe,this.statusChanges=new xe}_calculateStatus(){return this._allControlsDisabled()?Ks:this.errors?kc:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(mi)?mi:this._anyControlsHaveStatus(kc)?kc:Js}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n={}){this.pristine=!this._anyControlsDirty(),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}_updateTouched(n={}){this.touched=this._anyControlsTouched(),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Fc(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function CH(e){return Array.isArray(e)?Op(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function DH(e){return Array.isArray(e)?Pp(e):e||null}(this._rawAsyncValidators)}}class Hp extends RI{constructor(n,t,r){super(Vp(t),jp(r,t)),this.controls=n,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,t){return this.controls[n]?this.controls[n]:(this.controls[n]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(n,t,r={}){this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}removeControl(n,t={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}setControl(n,t,r={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],t&&this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,t={}){(function NI(e,n,t){e._forEachChild((r,o)=>{if(void 0===t[o])throw new M(1002,"")})})(this,0,n),Object.keys(n).forEach(r=>{(function xI(e,n,t){const r=e.controls;if(!(n?Object.keys(r):r).length)throw new M(1e3,"");if(!r[t])throw new M(1001,"")})(this,!0,r),this.controls[r].setValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(n,t={}){null!=n&&(Object.keys(n).forEach(r=>{const o=this.controls[r];o&&o.patchValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t))}reset(n={},t={}){this._forEachChild((r,o)=>{r.reset(n?n[o]:null,{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(n,t,r)=>(n[r]=t.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(t,r)=>!!r._syncPendingControls()||t);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(t=>{const r=this.controls[t];r&&n(r,t)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const[t,r]of Object.entries(this.controls))if(this.contains(t)&&n(r))return!0;return!1}_reduceValue(){return this._reduceChildren({},(t,r,o)=>((r.enabled||this.disabled)&&(t[o]=r.value),t))}_reduceChildren(n,t){let r=n;return this._forEachChild((o,i)=>{r=t(r,o,i)}),r}_allControlsDisabled(){for(const n of Object.keys(this.controls))if(this.controls[n].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(n){return this.controls.hasOwnProperty(n)?this.controls[n]:null}}const vi=new N("CallSetDisabledState",{providedIn:"root",factory:()=>Lc}),Lc="always";function ea(e,n,t=Lc){Up(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function EH(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&OI(e,n)})}(e,n),function MH(e,n){const t=(r,o)=>{n.valueAccessor.writeValue(r),o&&n.viewToModelUpdate(r)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function IH(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&OI(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function bH(e,n){if(n.valueAccessor.setDisabledState){const t=r=>{n.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function Hc(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function Up(e,n){const t=function bI(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(wI(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const r=function EI(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(wI(r,n.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();Hc(n._rawValidators,o),Hc(n._rawAsyncValidators,o)}function OI(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const NH={provide:pt,useExisting:he(()=>yi)},ta=(()=>Promise.resolve())();let yi=(()=>{class e extends pt{constructor(t,r,o){super(),this.callSetDisabledState=o,this.submitted=!1,this._directives=new Set,this.ngSubmit=new xe,this.form=new Hp({},Op(t),Pp(r))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){ta.then(()=>{const r=this._findContainer(t.path);t.control=r.registerControl(t.name,t.control),ea(t.control,t,this.callSetDisabledState),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){ta.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name),this._directives.delete(t)})}addFormGroup(t){ta.then(()=>{const r=this._findContainer(t.path),o=new Hp({});(function PI(e,n){Up(e,n)})(o,t),r.registerControl(t.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){ta.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,r){ta.then(()=>{this.form.get(t.path).setValue(r)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,function kI(e,n){e._syncPendingControls(),n.forEach(t=>{const r=t.control;"submit"===r.updateOn&&r._pendingChange&&(t.viewToModelUpdate(r._pendingValue),r._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(t),"dialog"===t?.target?.method}onReset(){this.resetForm()}resetForm(t=void 0){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}static#e=this.\u0275fac=function(r){return new(r||e)(S(ot,10),S(fr,10),S(vi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(r,o){1&r&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Ee([NH]),ce]})}return e})();function FI(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function LI(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const VI=class extends RI{constructor(n=null,t,r){super(Vp(t),jp(r,t)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Fc(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=LI(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){FI(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){FI(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){LI(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},PH={provide:hr,useExisting:he(()=>na)},UI=(()=>Promise.resolve())();let na=(()=>{class e extends hr{constructor(t,r,o,i,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this.control=new VI,this._registered=!1,this.name="",this.update=new xe,this._parent=t,this._setValidators(r),this._setAsyncValidators(o),this.valueAccessor=function Gp(e,n){if(!n)return null;let t,r,o;return Array.isArray(n),n.forEach(i=>{i.constructor===gi?t=i:function AH(e){return Object.getPrototypeOf(e.constructor)===Br}(i)?r=i:o=i}),o||r||t||null}(0,i)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const r=t.name.previousValue;this.formDirective.removeControl({name:r,path:this._getPath(r)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function $p(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,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(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ea(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()}_updateValue(t){UI.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const r=t.isDisabled.currentValue,o=0!==r&&Ko(r);UI.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function Vc(e,n){return[...n.path,e]}(t,this._parent):[t]}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,9),S(ot,10),S(fr,10),S(Tn,10),S(ls,8),S(vi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[Ee([PH]),ce,Lt]})}return e})(),Bc=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return e})();const FH={provide:Tn,useExisting:he(()=>zp),multi:!0};let $I=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})(),LH=(()=>{class e{constructor(){this._accessors=[]}add(t,r){this._accessors.push([t,r])}remove(t){for(let r=this._accessors.length-1;r>=0;--r)if(this._accessors[r][1]===t)return void this._accessors.splice(r,1)}select(t){this._accessors.forEach(r=>{this._isSameGroup(r,t)&&r[1]!==t&&r[1].fireUncheck(t.value)})}_isSameGroup(t,r){return!!t[0].control&&t[0]._parent===r._control._parent&&t[1].name===r.name}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:$I})}return e})(),zp=(()=>{class e extends Br{constructor(t,r,o,i){super(t,r),this._registry=o,this._injector=i,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(vi,{optional:!0})??Lc}ngOnInit(){this._control=this._injector.get(hr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this.setProperty("checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}setDisabledState(t){(this.setDisabledStateFired||t||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",t),this.setDisabledStateFired=!0}fireUncheck(t){this.writeValue(t)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(LH),S(_t))};static#t=this.\u0275dir=$({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[Ee([FH]),ce]})}return e})();const GH={provide:Tn,useExisting:he(()=>$c),multi:!0};function YI(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let $c=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const o=YI(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=r=>{this.value=this._getOptionValue(r),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const r of this._optionMap.keys())if(this._compareWith(this._optionMap.get(r),t))return r;return null}_getOptionValue(t){const r=function zH(e){return e.split(":")[0]}(t);return this._optionMap.has(r)?this._optionMap.get(r):t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([GH]),ce]})}return e})(),QI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(YI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S($c,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();const qH={provide:Tn,useExisting:he(()=>Yp),multi:!0};function XI(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Yp=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let r;if(this.value=t,Array.isArray(t)){const o=t.map(i=>this._getOptionId(i));r=(i,s)=>{i._setSelected(o.indexOf(s.toString())>-1)}}else r=(o,i)=>{o._setSelected(!1)};this._optionMap.forEach(r)}registerOnChange(t){this.onChange=r=>{const o=[],i=r.selectedOptions;if(void 0!==i){const s=i;for(let a=0;a{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([qH]),ce]})}return e})(),JI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(XI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(XI(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S(Yp,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();let $r=(()=>{class e{constructor(){this._validator=xc}ngOnChanges(t){if(this.inputName in t){const r=this.normalizeInput(t[this.inputName].currentValue);this._enabled=this.enabled(r),this._validator=this._enabled?this.createValidator(r):xc,this._onChange&&this._onChange()}}validate(t){return this._validator(t)}registerOnValidatorChange(t){this._onChange=t}enabled(t){return null!=t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,features:[Lt]})}return e})();const QH={provide:ot,useExisting:he(()=>_i),multi:!0};let _i=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Ko,this.createValidator=t=>cI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("required",o._enabled?"":null)},inputs:{required:"required"},features:[Ee([QH]),ce]})}return e})();const JH={provide:ot,useExisting:he(()=>Gc),multi:!0};let Gc=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Ko,this.createValidator=t=>dI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[Ee([JH]),ce]})}return e})();const eU={provide:ot,useExisting:he(()=>Qp),multi:!0};let Qp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=t=>function KI(e){return"number"==typeof e?e:parseInt(e,10)}(t),this.createValidator=t=>function hI(e){return n=>function sI(e){return null!=e&&"number"==typeof e.length}(n.value)&&n.value.length>e?{maxlength:{requiredLength:e,actualLength:n.value.length}}:null}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[Ee([eU]),ce]})}return e})();const tU={provide:ot,useExisting:he(()=>Xp),multi:!0};let Xp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=t=>t,this.createValidator=t=>function pI(e){if(!e)return xc;let n,t;return"string"==typeof e?(t="","^"!==e.charAt(0)&&(t+="^"),t+=e,"$"!==e.charAt(e.length-1)&&(t+="$"),n=new RegExp(t)):(t=e.toString(),n=e),r=>{if(dr(r.value))return null;const o=r.value;return n.test(o)?null:{pattern:{requiredPattern:t,actualValue:o}}}}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[Ee([tU]),ce]})}return e})(),nU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[$I]})}return e})(),zc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:vi,useValue:t.callSetDisabledState??Lc}]}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[nU]})}return e})();class qc{}class Wc{}class $t{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?"string"==typeof n?this.lazyInit=()=>{this.headers=new Map,n.split("\n").forEach(t=>{const r=t.indexOf(":");if(r>0){const o=t.slice(0,r),i=o.toLowerCase(),s=t.slice(r+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((t,r)=>{this.setHeaderEntries(r,t)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([t,r])=>{this.setHeaderEntries(t,r)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const t=this.headers.get(n.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,t){return this.clone({name:n,value:t,op:"a"})}set(n,t){return this.clone({name:n,value:t,op:"s"})}delete(n,t){return this.clone({name:n,value:t,op:"d"})}maybeSetNormalizedName(n,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,n)}init(){this.lazyInit&&(this.lazyInit instanceof $t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(t=>{this.headers.set(t,n.headers.get(t)),this.normalizedNames.set(t,n.normalizedNames.get(t))})}clone(n){const t=new $t;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof $t?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([n]),t}applyUpdate(n){const t=n.name.toLowerCase();switch(n.op){case"a":case"s":let r=n.value;if("string"==typeof r&&(r=[r]),0===r.length)return;this.maybeSetNormalizedName(n.name,t);const o=("a"===n.op?this.headers.get(t):void 0)||[];o.push(...r),this.headers.set(t,o);break;case"d":const i=n.value;if(i){let s=this.headers.get(t);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,s)}else this.headers.delete(t),this.normalizedNames.delete(t)}}setHeaderEntries(n,t){const r=(Array.isArray(t)?t:[t]).map(i=>i.toString()),o=n.toLowerCase();this.headers.set(o,r),this.maybeSetNormalizedName(n,o)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>n(this.normalizedNames.get(t),this.headers.get(t)))}}class oU{encodeKey(n){return aM(n)}encodeValue(n){return aM(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const sU=/%(\d[a-f0-9])/gi,aU={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function aM(e){return encodeURIComponent(e).replace(sU,(n,t)=>aU[t]??n)}function Zc(e){return`${e}`}class pr{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new oU,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function iU(e,n){const t=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,i)),n.decodeValue(o.slice(i+1))],l=t.get(s)||[];l.push(a),t.set(s,l)}),t}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(t=>{const r=n.fromObject[t],o=Array.isArray(r)?r.map(Zc):[Zc(r)];this.map.set(t,o)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const t=this.map.get(n);return t?t[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,t){return this.clone({param:n,value:t,op:"a"})}appendAll(n){const t=[];return Object.keys(n).forEach(r=>{const o=n[r];Array.isArray(o)?o.forEach(i=>{t.push({param:r,value:i,op:"a"})}):t.push({param:r,value:o,op:"a"})}),this.clone(t)}set(n,t){return this.clone({param:n,value:t,op:"s"})}delete(n,t){return this.clone({param:n,value:t,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const t=this.encoder.encodeKey(n);return this.map.get(n).map(r=>t+"="+this.encoder.encodeValue(r)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const t=new pr({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat(n),t}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(n=>this.map.set(n,this.cloneFrom.map.get(n))),this.updates.forEach(n=>{switch(n.op){case"a":case"s":const t=("a"===n.op?this.map.get(n.param):void 0)||[];t.push(Zc(n.value)),this.map.set(n.param,t);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let r=this.map.get(n.param)||[];const o=r.indexOf(Zc(n.value));-1!==o&&r.splice(o,1),r.length>0?this.map.set(n.param,r):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class lU{constructor(){this.map=new Map}set(n,t){return this.map.set(n,t),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function lM(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function cM(e){return typeof Blob<"u"&&e instanceof Blob}function uM(e){return typeof FormData<"u"&&e instanceof FormData}class ra{constructor(n,t,r,o){let i;if(this.url=t,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function cU(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==r?r:null,i=o):i=r,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params),this.transferCache=i.transferCache),this.headers||(this.headers=new $t),this.context||(this.context=new lU),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=t;else{const a=t.indexOf("?");this.urlWithParams=t+(-1===a?"?":ad.set(g,n.setHeaders[g]),l)),n.setParams&&(c=Object.keys(n.setParams).reduce((d,g)=>d.set(g,n.setParams[g]),c)),new ra(t,r,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var gr=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(gr||{});class Jp{constructor(n,t=200,r="OK"){this.headers=n.headers||new $t,this.status=void 0!==n.status?n.status:t,this.statusText=n.statusText||r,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class Yc extends Jp{constructor(n={}){super(n),this.type=gr.ResponseHeader}clone(n={}){return new Yc({headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Gr extends Jp{constructor(n={}){super(n),this.type=gr.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Gr({body:void 0!==n.body?n.body:this.body,headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Ci extends Jp{constructor(n){super(n,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${n.url||"(unknown url)"}`:`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}}function Kp(e,n){return{body:n,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials,transferCache:e.transferCache}}let eg=(()=>{class e{constructor(t){this.handler=t}request(t,r,o={}){let i;if(t instanceof ra)i=t;else{let l,c;l=o.headers instanceof $t?o.headers:new $t(o.headers),o.params&&(c=o.params instanceof pr?o.params:new pr({fromObject:o.params})),i=new ra(t,r,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:c,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}const s=F(i).pipe(ti(l=>this.handler.handle(l)));if(t instanceof ra||"events"===o.observe)return s;const a=s.pipe(rn(l=>l instanceof Gr));switch(o.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return l.body}));case"blob":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof Blob))throw new Error("Response is not a Blob.");return l.body}));case"text":return a.pipe(K(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(K(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(t,r={}){return this.request("DELETE",t,r)}get(t,r={}){return this.request("GET",t,r)}head(t,r={}){return this.request("HEAD",t,r)}jsonp(t,r){return this.request("JSONP",t,{params:(new pr).append(r,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,r={}){return this.request("OPTIONS",t,r)}patch(t,r,o={}){return this.request("PATCH",t,Kp(o,r))}post(t,r,o={}){return this.request("POST",t,Kp(o,r))}put(t,r,o={}){return this.request("PUT",t,Kp(o,r))}static#e=this.\u0275fac=function(r){return new(r||e)(k(qc))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function fM(e,n){return n(e)}function gU(e,n){return(t,r)=>n.intercept(t,{handle:o=>e(o,r)})}const vU=new N(""),oa=new N(""),hM=new N(""),pM=new N("");function yU(){let e=null;return(n,t)=>{null===e&&(e=(A(vU,{optional:!0})??[]).reduceRight(gU,fM));const r=A($l),o=r.add();return e(n,t).pipe(Ls(()=>r.remove(o)))}}let gM=(()=>{class e extends qc{constructor(t,r){super(),this.backend=t,this.injector=r,this.chain=null,this.pendingTasks=A($l);const o=A(pM,{optional:!0});this.backend=o??t}handle(t){if(null===this.chain){const o=Array.from(new Set([...this.injector.get(oa),...this.injector.get(hM,[])]));this.chain=o.reduceRight((i,s)=>function mU(e,n,t){return(r,o)=>t.runInContext(()=>n(r,i=>e(i,o)))}(i,s,this.injector),fM)}const r=this.pendingTasks.add();return this.chain(t,o=>this.backend.handle(o)).pipe(Ls(()=>this.pendingTasks.remove(r)))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Wc),k(At))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const bU=/^\)\]\}',?\n/;let vM=(()=>{class e{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new M(-2800,!1);const r=this.xhrFactory;return(r.\u0275loadImpl?Oe(r.\u0275loadImpl()):F(null)).pipe(Ft(()=>new Te(i=>{const s=r.build();if(s.open(t.method,t.urlWithParams),t.withCredentials&&(s.withCredentials=!0),t.headers.forEach((_,D)=>s.setRequestHeader(_,D.join(","))),t.headers.has("Accept")||s.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const _=t.detectContentTypeHeader();null!==_&&s.setRequestHeader("Content-Type",_)}if(t.responseType){const _=t.responseType.toLowerCase();s.responseType="json"!==_?_:"text"}const a=t.serializeBody();let l=null;const c=()=>{if(null!==l)return l;const _=s.statusText||"OK",D=new $t(s.getAllResponseHeaders()),I=function EU(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(s)||t.url;return l=new Yc({headers:D,status:s.status,statusText:_,url:I}),l},u=()=>{let{headers:_,status:D,statusText:I,url:w}=c(),x=null;204!==D&&(x=typeof s.response>"u"?s.responseText:s.response),0===D&&(D=x?200:0);let V=D>=200&&D<300;if("json"===t.responseType&&"string"==typeof x){const Z=x;x=x.replace(bU,"");try{x=""!==x?JSON.parse(x):null}catch(Ie){x=Z,V&&(V=!1,x={error:Ie,text:x})}}V?(i.next(new Gr({body:x,headers:_,status:D,statusText:I,url:w||void 0})),i.complete()):i.error(new Ci({error:x,headers:_,status:D,statusText:I,url:w||void 0}))},d=_=>{const{url:D}=c(),I=new Ci({error:_,status:s.status||0,statusText:s.statusText||"Unknown Error",url:D||void 0});i.error(I)};let g=!1;const m=_=>{g||(i.next(c()),g=!0);let D={type:gr.DownloadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),"text"===t.responseType&&s.responseText&&(D.partialText=s.responseText),i.next(D)},v=_=>{let D={type:gr.UploadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),i.next(D)};return s.addEventListener("load",u),s.addEventListener("error",d),s.addEventListener("timeout",d),s.addEventListener("abort",d),t.reportProgress&&(s.addEventListener("progress",m),null!==a&&s.upload&&s.upload.addEventListener("progress",v)),s.send(a),i.next({type:gr.Sent}),()=>{s.removeEventListener("error",d),s.removeEventListener("abort",d),s.removeEventListener("load",u),s.removeEventListener("timeout",d),t.reportProgress&&(s.removeEventListener("progress",m),null!==a&&s.upload&&s.upload.removeEventListener("progress",v)),s.readyState!==s.DONE&&s.abort()}})))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Tb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const rg=new N("XSRF_ENABLED"),yM=new N("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),_M=new N("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class CM{}let SU=(()=>{class e{constructor(t,r,o){this.doc=t,this.platform=r,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=_b(t,this.cookieName),this.lastCookieString=t),this.lastToken}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Sr),k(yM))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function TU(e,n){const t=e.url.toLowerCase();if(!A(rg)||"GET"===e.method||"HEAD"===e.method||t.startsWith("http://")||t.startsWith("https://"))return n(e);const r=A(CM).getToken(),o=A(_M);return null!=r&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,r)})),n(e)}var mr=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(mr||{});const DM=new N("LEGACY_INTERCEPTOR_FN");class FU{constructor(){this.name="",this.email="",this.message=""}}let TM=(()=>{class e{constructor(t){this.httpClient=t}postContactForm(t){return this.httpClient.post(`${ye_apiBaseUrl}contact`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(eg))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function LU(e,n){if(1&e){const t=Fe();h(0,"form",4,5),R("ngSubmit",function(){return re(t),oe(P().submit())}),h(2,"div",6)(3,"label",7),f(4,"Name "),h(5,"span",8),f(6,"*"),p()(),h(7,"input",9),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.name=o)}),p()(),h(8,"div",6)(9,"label",10),f(10,"Email address "),h(11,"span",8),f(12,"*"),p()(),h(13,"input",11),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.email=o)}),p()(),h(14,"div",6)(15,"label",12),f(16,"Message "),h(17,"span",8),f(18,"*"),p()(),h(19,"textarea",13),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.message=o)}),p()(),h(20,"button",14),f(21,"Submit"),p()()}if(2&e){const t=Gf(1),r=P();C(7),E("ngModel",r.contactViewModel.name),C(6),E("ngModel",r.contactViewModel.email),C(6),E("ngModel",r.contactViewModel.message),C(1),E("disabled",!t.valid||r.enableFormCountDown>0)}}function VU(e,n){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function jU(e,n){1&e&&(h(0,"p",15),f(1,"Something went wrong. Please try again later."),p())}let HU=(()=>{class e{constructor(t){this.contactService=t,this.contactViewModel=new FU,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:t=>{console.log("Submitted form"),this.success=!0},error:t=>{console.error(t),this.error=!0},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(TM))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Ot],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post"],["class","text-danger"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),q(3,LU,22,4,"form",2)(4,VU,2,0,"p")(5,jU,2,0,"p",3),p()),2&r&&(C(3),Ho(3,o.success||o.error?-1:3),C(1),Ho(4,o.success?4:-1),C(1),Ho(5,o.error?5:-1))},dependencies:[zc,Bc,gi,Rc,Oc,_i,Gc,na,yi]})}return e})();const AM=()=>["/pro"];let UU=(()=>{class e{scrollToAnchor(t){return document.querySelector(t)?.scrollIntoView(!0),!1}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Ot],decls:131,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"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),y(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),y(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),y(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),y(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),y(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),y(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),y(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),y(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),y(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),y(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),y(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),y(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),y(129,"i",5),p()()(),y(130,"img",24),p()),2&r&&(C(25),E("routerLink",ee(2,AM)),C(63),E("routerLink",ee(3,AM)))},dependencies:[Mn]})}return e})();const Gt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},BU=()=>["/usage"];let $U=(()=>{class e{constructor(){this.versions=Gt}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Ot],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["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(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),y(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),y(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&r&&(C(15),E("routerLink",ee(5,BU)),C(22),Hn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),C(5),Hn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net8.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),C(20),Hn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),C(9),Hn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[Mn]})}return e})(),xM=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Ot],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),y(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),y(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),y(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),y(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),y(28,"i",15),f(29," Over 60 million downloads on Nuget"),p()()()()())},encapsulation:2})}return e})();const GU=()=>["/pro"],zU=()=>["/usage"],qU=()=>["/getstarted"],WU=()=>["/features"];let ZU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-home"]],standalone:!0,features:[Ot],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"div",2),y(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),y(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),y(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),y(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),y(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),y(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),y(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),y(85,"i",27),f(86," GitHub"),p()()()(),y(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),y(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),y(110,"img",33),p()(),h(111,"div",34)(112,"a",35),y(113,"img",36),p()()()()()),2&r&&(C(45),E("routerLink",ee(4,GU)),C(12),E("routerLink",ee(5,zU)),C(24),E("routerLink",ee(6,qU)),C(15),E("routerLink",ee(7,WU)))},dependencies:[Mn,xM],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]})}return e})(),YU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Ot],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),y(3,"i",2),f(4," The requested page does not exist.\n"),p())}})}return e})();class NM{constructor(){this.error=null,this.licenses=[]}}class QU{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let RM=(()=>{class e{initCodeFlow(){const o=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+o),location.href=o}validateStateAndExtractCode(){let t=location.href;const r=t.indexOf("?");r>-1&&(t=t.substring(r+1));const o=this.parseQueryString(t);return o.state&&o.code&&this.validateNonce(o.state)?o.code:null}createAndSaveNonce(){const t=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",t),t}validateNonce(t){let r;return typeof window.localStorage<"u"&&(r=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),r&&0!==r.length?r===t||(console.error("Validating nonce failed. Values do not match.",r,t),!1):(console.error("Validating nonce failed. No saved nonce available.",r,t),!1)}createNonce(){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let r=45,o="";const i=typeof self>"u"?null:self.crypto||self.msCrypto;if(i){let a=new Uint8Array(r);i.getRandomValues(a),a.map||(a.map=Array.prototype.map);const l=[];for(var s=0;s0&&(c=decodeURIComponent(a),u=decodeURIComponent(l),"/"===c.substring(0,1)&&(c=c.substring(1)),r[c]=u);return r}base64UrlEncode(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),OM=(()=>{class e{constructor(t){this.httpClient=t}getLicense(t){return this.httpClient.get(`${ye_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(t)}`)}getTrialLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/triallicense`,t)}getPaddleLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/paddlelicense`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(eg))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),XU=(()=>{class e{constructor(){this.isActive=!1,this.isActive=new Date["/contact"];function eB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(2);C(2),be(t.license.error),C(3),E("routerLink",ee(2,og))}}function tB(e,n){1&e&&(h(0,"div")(1,"p"),f(2,"Please become a "),h(3,"a",74),f(4,"GitHub sponsor"),p(),f(5," first."),p()())}function nB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function rB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function oB(e,n){if(1&e){const t=Fe();h(0,"div")(1,"label",75),f(2,"Thank you for becoming a sponsor. Here's your license:"),p(),h(3,"textarea",76),f(4),p(),h(5,"button",77),R("click",function(){return re(t),oe(P(2).copy())}),q(6,nB,3,0,"span",34)(7,rB,3,0,"span",34),p()()}if(2&e){const t=P(2);C(4),be(t.license.license),C(2),E("ngIf",!t.licenseCopied),C(1),E("ngIf",t.licenseCopied)}}function iB(e,n){if(1&e&&(h(0,"div",20),q(1,eB,8,3,"div",34)(2,tB,6,0,"div",34)(3,oB,8,3,"div",34),p()),2&e){const t=P();C(1),E("ngIf",t.license.error),C(1),E("ngIf",!t.license.error&&!t.license.isSponsor),C(1),E("ngIf",!t.license.error&&t.license.isSponsor&&t.license.license)}}const PM=e=>({active:e});function sB(e,n){if(1&e){const t=Fe();h(0,"span",80)(1,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!1)}),y(2,"i",82),f(3," Annual subscription"),p(),h(4,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!0)}),y(5,"i",83),f(6," Lifetime license"),p()()}if(2&e){const t=P();C(1),E("ngClass",Ms(2,PM,!t.lifetimeLicense)),C(3),E("ngClass",Ms(4,PM,t.lifetimeLicense))}}function aB(e,n){if(1&e){const t=Fe();h(0,"button",103),R("click",function(){return re(t),oe(P(2).requestTrial())}),y(1,"i",25),f(2," Start trial"),p()}2&e&&E("disabled",P(2).trialDisabled)}function lB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function cB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function uB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function dB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("individual"))}),y(1,"i",106),f(2," Buy now"),p()}}function fB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function hB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function pB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function gB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("team"))}),y(1,"i",106),f(2," Buy now"),p()}}function mB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function vB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function yB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function _B(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("enterprise"))}),y(1,"i",106),f(2," Buy now"),p()}}function CB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function DB(e,n){if(1&e&&(h(0,"div",2)(1,"div",84)(2,"div",85),y(3,"img",86),h(4,"h4",87),f(5,"Free"),y(6,"br"),f(7,"Trial"),p(),h(8,"p"),y(9,"i",88),f(10," Get full access"),y(11,"br")(12,"i",89),f(13," 10 day trial period "),p(),q(14,aB,3,1,"button",90)(15,lB,2,0,"button",91),p()(),h(16,"div",92)(17,"div",93),y(18,"img",94),h(19,"h4",87),f(20,"Individual"),y(21,"br"),f(22),p(),h(23,"p"),y(24,"i",95),f(25," Per developer license."),y(26,"br"),q(27,cB,3,0,"ng-container",34)(28,uB,3,0,"ng-container",34),p(),q(29,dB,3,0,"button",96)(30,fB,2,0,"button",91),p()(),h(31,"div",97)(32,"div",93),y(33,"img",98),h(34,"h4",87),f(35,"Team"),y(36,"br"),f(37),p(),h(38,"p"),y(39,"i",99),f(40," Up to 10 developers."),y(41,"br"),q(42,hB,3,0,"ng-container",34)(43,pB,3,0,"ng-container",34),p(),q(44,gB,3,0,"button",96)(45,mB,2,0,"button",91),p()(),h(46,"div",100)(47,"div",93),y(48,"img",101),h(49,"h4",87),f(50,"Enterprise"),y(51,"br"),f(52),p(),h(53,"p"),y(54,"i",102),f(55," Unlimited developers."),y(56,"br"),q(57,vB,3,0,"ng-container",34)(58,yB,3,0,"ng-container",34),p(),q(59,_B,3,0,"button",96)(60,CB,2,0,"button",91),p()()()),2&e){const t=P();C(14),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleIndividualLifetimeLicensePrice:t.paddleIndividualLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleTeamLifetimeLicensePrice:t.paddleTeamLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleEnterpriseLifetimeLicensePrice:t.paddleEnterpriseLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle)}}function wB(e,n){1&e&&(Dt(0),h(1,"div",70)(2,"span",71),f(3,"Loading..."),p()(),h(4,"span",108),f(5,"Your license is being generated. Please wait."),p(),wt())}function bB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(3);C(2),be(t.paddleLicense.error),C(3),E("routerLink",ee(2,og))}}function EB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function IB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function MB(e,n){if(1&e){const t=Fe();h(0,"div",112)(1,"textarea",113),f(2),p(),h(3,"button",77),R("click",function(){const i=re(t).$implicit;return oe(P(4).copyPaddle(i))}),q(4,EB,3,0,"span",34)(5,IB,3,0,"span",34),p()()}if(2&e){const t=n.$implicit,r=P(4);C(2),be(t),C(2),E("ngIf",-1===r.copiedPaddledLicenses.indexOf(t)),C(1),E("ngIf",r.copiedPaddledLicenses.indexOf(t)>-1)}}function SB(e,n){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),q(3,MB,6,3,"div",111),p()),2&e){const t=P(3);C(3),E("ngForOf",t.paddleLicense.licenses)}}function TB(e,n){if(1&e&&(h(0,"div",109),q(1,bB,8,3,"div",34)(2,SB,4,1,"div",34),p()),2&e){const t=P(2);C(1),E("ngIf",t.paddleLicense.error),C(1),E("ngIf",!t.paddleLicense.error)}}function AB(e,n){if(1&e&&(h(0,"div",2),q(1,wB,6,0,"ng-container",34)(2,TB,3,2,"div",107),p()),2&e){const t=P();C(1),E("ngIf",t.paddleLicenseRequested&&!t.paddleLicense),C(1),E("ngIf",t.paddleLicense)}}function xB(e,n){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const Di=()=>["/features"];let NB=(()=>{class e{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(t){this._lifetimeLicense=t,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(t,r,o){this.oauthService=t,this.licenseService=r,this.trackingService=o,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=i=>{this.paddleCheckoutComplete(i)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,i=>{this.paddleIndividualLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762580,i=>{this.paddleTeamLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762581,i=>{this.paddleEnterpriseLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(833943,i=>{this.paddleIndividualLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833944,i=>{this.paddleTeamLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833945,i=>{this.paddleEnterpriseLifetimeLicensePrice=i.price.gross})}ngOnInit(){const t=this.oauthService.validateStateAndExtractCode();null!==t?(console.log("Code received",t),this.licenseRequested=!0,this.licenseService.getLicense(t).subscribe({next:r=>{console.log("Received license response"),this.license=r,this.scrollToGithub()},error:r=>{console.error(r),this.license=new QU,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(t){console.error("Failed to copy license",t)}}copyPaddle(t){try{navigator.clipboard.writeText(t),this.copiedPaddledLicenses.push(t)}catch(r){console.error("Failed to copy paddle license",r)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:t=>{console.log("Received trial license response"),this.paddleLicense=t,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:t=>{console.error(t),this.paddleLicense=new NM,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(t){"enterprise"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:t,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(t){console.log("Checkout completed",t),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(t).subscribe({next:r=>{console.log("Received paddle license response"),this.paddleLicense=r,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:t.product.name,lifetimeLicense:this.lifetimeLicense}})},error:r=>{console.error(r),this.paddleLicense=new NM,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(RM),S(OM),S(XU))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Ot],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block position-relative",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5","testimonial"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block","position-relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[1,"position-relative","paddle-loading"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(r,o){if(1&r&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),y(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),y(19,"i",10),p()(),h(20,"td",11),y(21,"i",12),p(),h(22,"td",11),y(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),y(28,"i",10),p()(),h(29,"td",11),y(30,"i",12),p(),h(31,"td",11),y(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),y(37,"i",10),p()(),h(38,"td",11),y(39,"i",12),p(),h(40,"td",11),y(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),y(46,"i",10),p()(),h(47,"td",11),y(48,"i",12),p(),h(49,"td",11),y(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),y(55,"i",10),p()(),y(56,"td",11),h(57,"td",11),y(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),y(63,"i",10),p()(),y(64,"td",11),h(65,"td",11),y(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),y(72,"td",11),h(73,"td",11),y(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),y(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),y(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),y(111,"i",23),f(112," Become a GitHub sponsor"),p(),y(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),y(117,"i",25),f(118," Get license"),p(),q(119,JU,3,0,"div",26),p(),q(120,KU,2,0,"div",27)(121,iB,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),q(127,sB,7,6,"span",31),p(),q(128,DB,61,17,"div",32)(129,AB,3,2,"div",32),h(130,"div",33),q(131,xB,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),y(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),y(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),y(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),y(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),y(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),y(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),y(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),y(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&r){const i=Gf(206);C(18),E("routerLink",ee(18,Di)),C(9),E("routerLink",ee(19,Di)),C(9),E("routerLink",ee(20,Di)),C(9),E("routerLink",ee(21,Di)),C(9),E("routerLink",ee(22,Di)),C(8),E("routerLink",ee(23,Di)),C(35),E("routerLink",ee(24,og)),C(19),E("disabled",o.licenseRequested),C(3),E("ngIf",o.licenseRequested&&!o.license),C(1),E("ngIf",!o.license),C(1),E("ngIf",o.license),C(6),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",o.paddleLicenseRequested),C(2),E("ngIf",!o.lifetimeLicense),C(82),E("ngModel",o.requestTrialData.name),C(6),E("ngModel",o.requestTrialData.email),C(8),E("disabled",!i.valid)}},dependencies:[Mn,Hh,Uh,uc,zc,Bc,gi,Rc,Oc,_i,Qp,Gc,na,yi,xM],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}.paddle-loading[_ngcontent-%COMP%]{position:relative;left:35px;top:-20px}.testimonial[_ngcontent-%COMP%]{max-width:550px;margin:auto}"]})}return e})();class Xc{constructor(n,t,r,o,i,s){this.name=n,this.url=t,this.runtimes=r,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(n){return n.tool}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?'"':"";return`\r\n${r}-${n}:${t}${r}`}formatArguments(n,t){return this.formatArgument(n,t.filter(r=>null!=r&&0!==r.length&&0!==r.trim().length).join(";"))}}class RB extends Xc{formatExecutable(n){let t=`- task: ${n.tool}@${Gt.majorVersion}`;return t+="\r\n displayName: ReportGenerator",t+="\r\n inputs:",console.log("hello",t),t}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class OB{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(n){return this.sourcedirectories.splice(n,1),!1}addReport(){return this.reports.push(""),!1}removeReport(n){return this.reports.splice(n,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(n){return this.plugins.splice(n,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(n){return this.assemblyfilters.splice(n,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(n){return this.classfilters.splice(n,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(n){return this.filefilters.splice(n,1),!1}getUsage(n,t){const r=n.executables.find(a=>a.runtime==t);let o=void 0!==r?n.formatExecutable(r):"";o+=n.formatArguments("reports",this.reports),o+=n.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=n.formatArgument("reporttypes",i)),o+=n.formatArguments("sourcedirs",this.sourcedirectories),o+=n.formatArgument("historydir",this.historydir),o+=n.formatArguments("plugins",this.plugins),o+=n.formatArguments("assemblyfilters",this.assemblyfilters),o+=n.formatArguments("classfilters",this.classfilters),o+=n.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=n.formatArgument("verbosity",this.selectedverbosity)),o+=n.formatArgument("title",this.title),o+=n.formatArgument("tag",this.tag),o+=n.formatArgument("license",this.license),o}historyDirRequired(){for(let n=0;n-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class ig{constructor(n,t){this.tool=n,this.command=t}}function kB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return re(t),oe(P().selectedEnvironment=o)})("ngModelChange",function(){return re(t),oe(P().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=n.$implicit,r=P();C(2),E("ngModel",r.selectedEnvironment)("value",t)("checked",r.selectedEnvironment.name===t.name),C(2),be(t.name),C(3),be(t.description)}}function FB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return re(t),oe(P(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=P().$implicit,r=P(2);C(2),E("ngModel",r.selectedPackage)("value",t),C(2),be(t.name),C(3),be(t.description)}}function LB(e,n){if(1&e&&(Dt(0),q(1,FB,8,4,"div",40),wt()),2&e){const t=n.$implicit,r=P(2);C(1),E("ngIf",t.runtimes.indexOf(r.selectedEnvironment.name)>-1)}}function VB(e,n){if(1&e&&(Dt(0),h(1,"h4"),f(2,"NuGet Package"),p(),q(3,LB,2,1,"ng-container",39),wt()),2&e){const t=P();C(3),E("ngForOf",t.packages)}}function jB(e,n){if(1&e){const t=Fe();h(0,"span",45),R("click",function(){re(t);const o=P().index;return oe(P().configuration.removeReport(o))}),h(1,"a",46),y(2,"i",47),p()()}}const HB=e=>({"input-group":e});function UB(e,n){if(1&e){const t=Fe();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.reports[s]=o)}),p(),q(3,jB,3,0,"span",44),p()()}if(2&e){const t=n.index,r=P();C(1),E("ngClass",Ms(4,HB,t>0)),C(1),jn("name","report_",t,""),E("ngModel",r.configuration.reports[t]),C(1),E("ngIf",t>0)}}const BB=(e,n)=>({"btn-outline-primary":e,"btn-primary":n});function $B(e,n){if(1&e){const t=Fe();h(0,"button",48),R("click",function(){const i=re(t).$implicit,s=P();return oe(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const t=n.$implicit,r=P();E("ngClass",zD(2,BB,t!==r.configuration.selectedType,t===r.configuration.selectedType)),C(1),be(t)}}function GB(e,n){if(1&e){const t=Fe();h(0,"span",53),y(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return re(t),oe(P(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function zB(e,n){if(1&e&&(Dt(0),y(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),y(6,"i",56),p(),wt()),2&e){const t=P(2).$implicit;C(2),E("href",t.sampleReport,bo),C(3),E("href",t.sampleReport,bo)}}function qB(e,n){if(1&e){const t=Fe();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){re(t);const o=P().$implicit;return oe(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),q(5,GB,5,0,"span",52),y(6,"br"),h(7,"div",38),f(8),q(9,zB,7,2,"ng-container",5),p()()()}if(2&e){const t=P().$implicit,r=P();C(2),E("checked",t.checked),C(2),be(t.name),C(1),E("ngIf",t.checked&&t.requiresHistoryDir&&!r.configuration.historydir),C(3),Hn("",t.description," "),C(1),E("ngIf",t.sampleReport)}}function WB(e,n){if(1&e&&(Dt(0),q(1,qB,10,5,"div",49),wt()),2&e){const t=n.$implicit,r=P();C(1),E("ngIf",!r.configuration.selectedType||t.types.indexOf(r.configuration.selectedType)>-1)}}function ZB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeSourceDirectory(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","sourcedir_",t,""),E("ngModel",r.configuration.sourcedirectories[t])}}function YB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removePlugin(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","plugin_",t,""),E("ngModel",r.configuration.plugins[t])}}function QB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeAssemblyFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","assemblyfilter_",t,""),E("ngModel",r.configuration.assemblyfilters[t])}}function XB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeClassFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","classfilter_",t,""),E("ngModel",r.configuration.classfilters[t])}}function JB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeFileFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","filefilter_",t,""),E("ngModel",r.configuration.filefilters[t])}}function KB(e,n){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const t=n.$implicit;E("value",t),C(1),be(t)}}function e$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function t$(e,n){1&e&&(y(0,"i",65),f(1," Copied "))}function n$(e,n){1&e&&(y(0,"i",66),f(1," Copy "))}function r$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function o$(e,n){1&e&&(y(0,"i",65),f(1," Copied "))}function i$(e,n){1&e&&(y(0,"i",66),f(1," Copy "))}const s$=()=>["/pro"],a$=[{path:"",component:ZU,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:UU,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:$U,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{class e{constructor(){this.versions=Gt,this.lastResult="",this.usageCopied=!1,this.configuration=new OB,this.environments=[new Jc(".NET Core",".NET Core"),new Jc(".NET Framework","The full .NET framework"),new Jc("Azure DevOps",null),new Jc("Github Action",null)],this.packages=[new Xc("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new ig("Package Manager",`Install-Package ReportGenerator -Version ${Gt.version}`),new ig(".NET CLI",`dotnet add package ReportGenerator --version ${Gt.version}`)],[new ia(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net47\\ReportGenerator.exe`),new ia(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new Xc("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new ig(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Gt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Gt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Gt.version}`)],[new ia(".NET Core","reportgenerator")]),new RB("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new ia("Azure DevOps","reportgenerator")]),new PB("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new ia("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const t=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==t&&(this.lastResult=t,this.usageCopied=!1),t}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(t){console.error("Failed to copy license",t)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Ot],decls:219,vars:39,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-check","text-success"],[1,"fa-solid","fa-copy"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),q(8,kB,8,5,"div",4),y(9,"hr"),q(10,VB,4,1,"ng-container",5),y(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),y(16,"br"),f(17,"Globbing is supported."),p(),q(18,UB,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),y(21,"i",10),f(22," Add report"),p()(),y(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),y(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),q(39,$B,2,5,"button",14),y(40,"br"),q(41,WB,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),y(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),q(48,ZB,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),y(51,"i",10),f(52," Add source directory"),p()(),y(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),y(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),y(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),q(76,YB,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),y(79,"i",10),f(80," Add plugin"),p()(),y(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),y(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),y(91,"br"),f(92,"Wildcards are allowed."),y(93,"br"),h(94,"p"),f(95,"Examples:"),y(96,"br"),h(97,"code"),f(98,"+Included"),p(),y(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),q(102,QB,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),y(105,"i",10),f(106," Add assembly filter"),p()(),y(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),y(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),y(117,"br"),f(118,"Wildcards are allowed."),y(119,"br"),h(120,"p"),f(121,"Examples:"),y(122,"br"),h(123,"code"),f(124,"+Included"),p(),y(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),q(128,XB,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),y(131,"i",10),f(132," Add class filter"),p()(),y(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),y(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),y(143,"br"),f(144,"Wildcards are allowed."),y(145,"br"),h(146,"p"),f(147,"Examples:"),y(148,"br"),h(149,"code"),f(150,"+Included"),p(),y(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),q(154,JB,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),y(157,"i",10),f(158," Add file filter"),p()(),y(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),q(166,KB,2,2,"option",22),p()(),y(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),y(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),y(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),q(197,e$,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),q(203,t$,2,0)(204,n$,2,0),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),q(211,r$,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),q(217,o$,2,0)(218,i$,2,0),p()()()()()),2&r&&(C(8),E("ngForOf",o.environments),C(2),E("ngIf",o.severalPackagesAvailable()),C(8),E("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.targetdir),C(10),E("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),C(2),E("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),C(7),E("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),C(16),E("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),C(12),E("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.selectedverbosity),C(1),E("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),C(7),E("ngModel",o.configuration.title),C(7),E("ngModel",o.configuration.tag),C(6),E("routerLink",ee(38,s$)),C(3),E("ngModel",o.configuration.license),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),Ho(203,o.usageCopied?203:204),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),Ho(217,o.usageCopied?217:218))},dependencies:[zc,Bc,QI,JI,gi,$c,zp,Rc,Oc,_i,Xp,na,yi,Hh,Uh,uc,Mn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]})}return e})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:NB,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:HU,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:YU,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function wV(e,n){return pF({rootComponent:e,...Zb(n)})})(cH,{providers:[iv(TV,(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[eI.forRoot(a$,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),eI]})}return e})(),zc),RM,OM,TM,function AU(...e){const n=[eg,vM,gM,{provide:qc,useExisting:gM},{provide:Wc,useExisting:vM},{provide:oa,useValue:TU,multi:!0},{provide:rg,useValue:!0},{provide:CM,useClass:SU}];for(const t of e)n.push(...t.\u0275providers);return ud(n)}(function xU(){return function zr(e,n){return{\u0275kind:e,\u0275providers:n}}(mr.LegacyInterceptors,[{provide:DM,useFactory:yU},{provide:oa,useExisting:DM,multi:!0}])}())]}).catch(e=>console.error(e))}},Kc=>{Kc(Kc.s=139)}]); \ No newline at end of file diff --git a/docs/main.4bcb4ed2cf277f51.js b/docs/main.4bcb4ed2cf277f51.js deleted file mode 100644 index a94dfa82..00000000 --- a/docs/main.4bcb4ed2cf277f51.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{139:()=>{let Re=null,Wr=1;function Se(e){const n=Re;return Re=e,n}function sg(e){if((!bi(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==Wr)){if(!e.producerMustRecompute(e)&&!nu(e))return e.dirty=!1,void(e.lastCleanEpoch=Wr);e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Wr}}function nu(e){Zr(e);for(let n=0;n0}function Zr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let pg=null;function Ce(e){return"function"==typeof e}function iu(e){const t=e(r=>{Error.call(r),r.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const su=iu(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function au(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class Et{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const i of t)i.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(Ce(r))try{r()}catch(i){n=i instanceof su?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{_g(i)}catch(s){n=n??[],s instanceof su?n=[...n,...s.errors]:n.push(s)}}if(n)throw new su(n)}}add(n){var t;if(n&&n!==this)if(this.closed)_g(n);else{if(n instanceof Et){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&au(t,n)}remove(n){const{_finalizers:t}=this;t&&au(t,n),n instanceof Et&&n._removeParent(this)}}Et.EMPTY=(()=>{const e=new Et;return e.closed=!0,e})();const vg=Et.EMPTY;function yg(e){return e instanceof Et||e&&"closed"in e&&Ce(e.remove)&&Ce(e.add)&&Ce(e.unsubscribe)}function _g(e){Ce(e)?e():e.unsubscribe()}const vr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},la={setTimeout(e,n,...t){const{delegate:r}=la;return r?.setTimeout?r.setTimeout(e,n,...t):setTimeout(e,n,...t)},clearTimeout(e){const{delegate:n}=la;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Cg(e){la.setTimeout(()=>{const{onUnhandledError:n}=vr;if(!n)throw e;n(e)})}function lu(){}const GM=cu("C",void 0,void 0);function cu(e,n,t){return{kind:e,value:n,error:t}}let yr=null;function ca(e){if(vr.useDeprecatedSynchronousErrorHandling){const n=!yr;if(n&&(yr={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:r}=yr;if(yr=null,t)throw r}}else e()}class uu extends Et{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,yg(n)&&n.add(this)):this.destination=XM}static create(n,t,r){return new ua(n,t,r)}next(n){this.isStopped?fu(function qM(e){return cu("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?fu(function zM(e){return cu("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?fu(GM,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const ZM=Function.prototype.bind;function du(e,n){return ZM.call(e,n)}class YM{constructor(n){this.partialObserver=n}next(n){const{partialObserver:t}=this;if(t.next)try{t.next(n)}catch(r){da(r)}}error(n){const{partialObserver:t}=this;if(t.error)try{t.error(n)}catch(r){da(r)}else da(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(t){da(t)}}}class ua extends uu{constructor(n,t,r){let o;if(super(),Ce(n)||!n)o={next:n??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&vr.useDeprecatedNextContext?(i=Object.create(n),i.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&du(n.next,i),error:n.error&&du(n.error,i),complete:n.complete&&du(n.complete,i)}):o=n}this.destination=new YM(o)}}function da(e){vr.useDeprecatedSynchronousErrorHandling?function WM(e){vr.useDeprecatedSynchronousErrorHandling&&yr&&(yr.errorThrown=!0,yr.error=e)}(e):Cg(e)}function fu(e,n){const{onStoppedNotification:t}=vr;t&&la.setTimeout(()=>t(e,n))}const XM={closed:!0,next:lu,error:function QM(e){throw e},complete:lu},hu="function"==typeof Symbol&&Symbol.observable||"@@observable";function qn(e){return e}function Dg(e){return 0===e.length?qn:1===e.length?e[0]:function(t){return e.reduce((r,o)=>o(r),t)}}let Te=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const r=new e;return r.source=this,r.operator=t,r}subscribe(t,r,o){const i=function e1(e){return e&&e instanceof uu||function KM(e){return e&&Ce(e.next)&&Ce(e.error)&&Ce(e.complete)}(e)&&yg(e)}(t)?t:new ua(t,r,o);return ca(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(r){t.error(r)}}forEach(t,r){return new(r=wg(r))((o,i)=>{const s=new ua({next:a=>{try{t(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(t){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(t)}[hu](){return this}pipe(...t){return Dg(t)(this)}toPromise(t){return new(t=wg(t))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=n=>new e(n),e})();function wg(e){var n;return null!==(n=e??vr.Promise)&&void 0!==n?n:Promise}const t1=iu(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let zt=(()=>{class e extends Te{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const r=new bg(this,this);return r.operator=t,r}_throwIfClosed(){if(this.closed)throw new t1}next(t){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(t)}})}error(t){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:r}=this;for(;r.length;)r.shift().error(t)}})}complete(){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:r,isStopped:o,observers:i}=this;return r||o?vg:(this.currentObservers=null,i.push(t),new Et(()=>{this.currentObservers=null,au(i,t)}))}_checkFinalizedStatuses(t){const{hasError:r,thrownError:o,isStopped:i}=this;r?t.error(o):i&&t.complete()}asObservable(){const t=new Te;return t.source=this,t}}return e.create=(n,t)=>new bg(n,t),e})();class bg extends zt{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,n)}error(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==r?r:vg}}function Eg(e){return Ce(e?.lift)}function $e(e){return n=>{if(Eg(n))return n.lift(function(t){try{return e(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function Ve(e,n,t,r,o){return new n1(e,n,t,r,o)}class n1 extends uu{constructor(n,t,r,o,i,s){super(n),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(a){try{t(a)}catch(l){n.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function K(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>{r.next(e.call(n,i,o++))}))})}function Wn(e){return this instanceof Wn?(this.v=e,this):new Wn(e)}function Tg(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function vu(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Ag=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function xg(e){return Ce(e?.then)}function Ng(e){return Ce(e[hu])}function Rg(e){return Symbol.asyncIterator&&Ce(e?.[Symbol.asyncIterator])}function Og(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Pg=function E1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function kg(e){return Ce(e?.[Pg])}function Fg(e){return function Sg(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=t.apply(e,n||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){r[g]&&(o[g]=function(m){return new Promise(function(v,_){i.push([g,m,v,_])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Wn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(r[g](m))}catch(v){d(i[0][3],v)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:r,done:o}=yield Wn(t.read());if(o)return yield Wn(void 0);yield yield Wn(r)}}finally{t.releaseLock()}})}function Lg(e){return Ce(e?.getReader)}function qt(e){if(e instanceof Te)return e;if(null!=e){if(Ng(e))return function I1(e){return new Te(n=>{const t=e[hu]();if(Ce(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Ag(e))return function M1(e){return new Te(n=>{for(let t=0;t{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,Cg)})}(e);if(Rg(e))return Vg(e);if(kg(e))return function T1(e){return new Te(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(Lg(e))return function A1(e){return Vg(Fg(e))}(e)}throw Og(e)}function Vg(e){return new Te(n=>{(function x1(e,n){var t,r,o,i;return function Ig(e,n,t,r){return new(t||(t=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof t?i:new t(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=Tg(e);!(r=yield t.next()).done;)if(n.next(r.value),n.closed)return}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=t.return)&&(yield i.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function An(e,n,t,r=0,o=!1){const i=n.schedule(function(){t(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Xe(e,n,t=1/0){return Ce(n)?Xe((r,o)=>K((i,s)=>n(r,i,o,s))(qt(e(r,o))),t):("number"==typeof n&&(t=n),$e((r,o)=>function N1(e,n,t,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&n.complete()},m=_=>c{i&&n.next(_),c++;let D=!1;qt(t(_,u++)).subscribe(Ve(n,I=>{o?.(I),i?m(I):n.next(I)},()=>{D=!0},void 0,()=>{if(D)try{for(c--;l.length&&cv(I)):v(I)}g()}catch(I){n.error(I)}}))};return e.subscribe(Ve(n,m,()=>{d=!0,g()})),()=>{a?.()}}(r,o,e,t)))}function Yr(e=1/0){return Xe(qn,e)}const an=new Te(e=>e.complete());function yu(e){return e[e.length-1]}function jg(e){return Ce(yu(e))?e.pop():void 0}function Ei(e){return function O1(e){return e&&Ce(e.schedule)}(yu(e))?e.pop():void 0}function Hg(e,n=0){return $e((t,r)=>{t.subscribe(Ve(r,o=>An(r,e,()=>r.next(o),n),()=>An(r,e,()=>r.complete(),n),o=>An(r,e,()=>r.error(o),n)))})}function Ug(e,n=0){return $e((t,r)=>{r.add(e.schedule(()=>t.subscribe(r),n))})}function Bg(e,n){if(!e)throw new Error("Iterable cannot be null");return new Te(t=>{An(t,n,()=>{const r=e[Symbol.asyncIterator]();An(t,n,()=>{r.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}function Oe(e,n){return n?function H1(e,n){if(null!=e){if(Ng(e))return function k1(e,n){return qt(e).pipe(Ug(n),Hg(n))}(e,n);if(Ag(e))return function L1(e,n){return new Te(t=>{let r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}(e,n);if(xg(e))return function F1(e,n){return qt(e).pipe(Ug(n),Hg(n))}(e,n);if(Rg(e))return Bg(e,n);if(kg(e))return function V1(e,n){return new Te(t=>{let r;return An(t,n,()=>{r=e[Pg](),An(t,n,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void t.error(s)}i?t.complete():t.next(o)},0,!0)}),()=>Ce(r?.return)&&r.return()})}(e,n);if(Lg(e))return function j1(e,n){return Bg(Fg(e),n)}(e,n)}throw Og(e)}(e,n):qt(e)}class kt extends zt{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:r}=this;if(n)throw t;return this._throwIfClosed(),r}next(n){super.next(this._value=n)}}function F(...e){return Oe(e,Ei(e))}function _r(e){return e<=0?()=>an:$e((n,t)=>{let r=0;n.subscribe(Ve(t,o=>{++r<=e&&(t.next(o),e<=r&&t.complete())}))})}function $g(e={}){const{connector:n=(()=>new zt),resetOnError:t=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},v=()=>{const _=s;m(),_?.unsubscribe()};return $e((_,D)=>{c++,!d&&!u&&g();const I=l=l??n();D.add(()=>{c--,0===c&&!d&&!u&&(a=_u(v,o))}),I.subscribe(D),s||(s=new ua({next:w=>I.next(w),error:w=>{d=!0,g(),a=_u(m,t,w),I.error(w)},complete:()=>{u=!0,g(),a=_u(m,r),I.complete()}}),Oe(_).subscribe(s))})(i)}}function _u(e,n,...t){return!0===n?(e(),null):!1===n?null:n(...t).pipe(_r(1)).subscribe(()=>e())}function Ft(e,n){return $e((t,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();t.subscribe(Ve(r,l=>{o?.unsubscribe();let c=0;const u=i++;qt(e(l,u)).subscribe(o=Ve(r,d=>r.next(n?n(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function $1(e,n){return e===n}function le(e){for(let n in e)if(e[n]===le)return n;throw Error("Could not find renamed property on target object.")}function fa(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function je(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(je).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const n=e.toString();if(null==n)return""+n;const t=n.indexOf("\n");return-1===t?n:n.substring(0,t)}function Cu(e,n){return null==e||""===e?null===n?"":n:null==n||""===n?e:e+" "+n}const G1=le({__forward_ref__:le});function he(e){return e.__forward_ref__=he,e.toString=function(){return je(this())},e}function j(e){return ha(e)?e():e}function ha(e){return"function"==typeof e&&e.hasOwnProperty(G1)&&e.__forward_ref__===he}function Du(e){return e&&!!e.\u0275providers}const Gg="https://g.co/ng/security#xss";class M extends Error{constructor(n,t){super(function Qr(e,n){return`NG0${Math.abs(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Ii=le({\u0275cmp:le}),wu=le({\u0275dir:le}),bu=le({\u0275pipe:le}),zg=le({\u0275mod:le}),xn=le({\u0275fac:le}),Mi=le({__NG_ELEMENT_ID__:le}),qg=le({__NG_ENV_ID__:le});function G(e){return"string"==typeof e?e:null==e?"":String(e)}function Eu(e,n){throw new M(-201,!1)}function gt(e,n){null==e&&function L(e,n,t,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${t} ${r} ${n} <=Actual]`))}(n,e,null,"!=")}function O(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function ln(e){return{providers:e.providers||[],imports:e.imports||[]}}function pa(e){return Wg(e,ma)||Wg(e,Zg)}function Wg(e,n){return e.hasOwnProperty(n)?e[n]:null}function ga(e){return e&&(e.hasOwnProperty(Iu)||e.hasOwnProperty(K1))?e[Iu]:null}const ma=le({\u0275prov:le}),Iu=le({\u0275inj:le}),Zg=le({ngInjectableDef:le}),K1=le({ngInjectorDef:le});var X=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}(X||{});let Mu;function Yg(){return Mu}function mt(e){const n=Mu;return Mu=e,n}function Qg(e,n,t){const r=pa(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:t&X.Optional?null:void 0!==n?n:void Eu(je(e))}const pe=globalThis;class N{constructor(n,t){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=O({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Si={},Nu="__NG_DI_FLAG__",va="ngTempTokenPath",n0=/\n/gm,Jg="__source";let Xr;function Yn(e){const n=Xr;return Xr=e,n}function s0(e,n=X.Default){if(void 0===Xr)throw new M(-203,!1);return null===Xr?Qg(e,void 0,n):Xr.get(e,n&X.Optional?null:void 0,n)}function k(e,n=X.Default){return(Yg()||s0)(j(e),n)}function A(e,n=X.Default){return k(e,ya(n))}function ya(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ru(e){const n=[];for(let t=0;tn){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&r?g:null;if(m&&-1!==em(m,c,0)||2&r&&c!==g){if(Zt(r))return!1;s=!0}}}}else{if(!s&&!Zt(r)&&!Zt(l))return!1;if(s&&Zt(l))continue;s=!1,r=l|1&r}}return Zt(r)||s}function Zt(e){return 0==(1&e)}function h0(e,n,t,r){if(null===n)return-1;let o=0;if(r||!t){let i=!1;for(;o-1)for(t++;t0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!Zt(s)&&(n+=am(i,o),o=""),r=s,i=i||!Zt(r);t++}return""!==o&&(n+=am(i,o)),n}function Mt(e){return Nn(()=>{const n=cm(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===_a.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Wt.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};um(t);const r=e.dependencies;return t.directiveDefs=Ca(r,!1),t.pipeDefs=Ca(r,!0),t.id=function E0(e){let n=0;const t=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery].join("|");for(const o of t)n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}(t),t})}function D0(e){return Q(e)||Ge(e)}function w0(e){return null!==e}function Rn(e){return Nn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function lm(e,n){if(null==e)return cn;const t={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),t[o]=r,n&&(n[o]=i)}return t}function $(e){return Nn(()=>{const n=cm(e);return um(n),n})}function Q(e){return e[Ii]||null}function Ge(e){return e[wu]||null}function Je(e){return e[bu]||null}function et(e,n){const t=e[zg]||null;if(!t&&!0===n)throw new Error(`Type ${je(e)} does not have '\u0275mod' property.`);return t}function cm(e){const n={};return{type:e.type,providersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:n,inputTransforms:null,inputConfig:e.inputs||cn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:lm(e.inputs,n),outputs:lm(e.outputs),debugInfo:null}}function um(e){e.features?.forEach(n=>n(e))}function Ca(e,n){if(!e)return null;const t=n?Je:D0;return()=>("function"==typeof e?e():e).map(r=>t(r)).filter(w0)}const Ae=0,T=1,H=2,we=3,Yt=4,tt=5,un=6,Jr=7,ge=8,it=9,Kr=10,z=11,xi=12,dm=13,eo=14,Me=15,Ni=16,to=17,dn=18,Ri=19,fm=20,Xn=21,Da=22,Cr=23,U=25,Pu=1,hm=2,ku=6,fn=7,no=9,Pe=11;function Ke(e){return Array.isArray(e)&&"object"==typeof e[Pu]}function Ye(e){return Array.isArray(e)&&!0===e[Pu]}function Fu(e){return 0!=(4&e.flags)}function Dr(e){return e.componentOffset>-1}function ba(e){return 1==(1&e.flags)}function Qt(e){return!!e.template}function Lu(e){return 0!=(512&e[H])}function wr(e,n){return e.hasOwnProperty(xn)?e[xn]:null}class T0{constructor(n,t,r){this.previousValue=n,this.currentValue=t,this.firstChange=r}isFirstChange(){return this.firstChange}}function Lt(){return vm}function vm(e){return e.type.prototype.ngOnChanges&&(e.setInput=x0),A0}function A0(){const e=_m(this),n=e?.current;if(n){const t=e.previous;if(t===cn)e.previous=n;else for(let r in n)t[r]=n[r];e.current=null,this.ngOnChanges(n)}}function x0(e,n,t,r){const o=this.declaredInputs[t],i=_m(e)||function N0(e,n){return e[ym]=n}(e,{previous:cn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new T0(l&&l.currentValue,n,a===cn),e[r]=n}Lt.ngInherit=!0;const ym="__ngSimpleChanges__";function _m(e){return e[ym]||null}const hn=function(e,n,t){};function me(e){for(;Array.isArray(e);)e=e[Ae];return e}function Pi(e,n){return me(n[e])}function st(e,n){return me(n[e.index])}function ki(e,n){return e.data[n]}function St(e,n){const t=n[e];return Ke(t)?t:t[Ae]}function Bu(e){return 128==(128&e[H])}function pn(e,n){return null==n?null:e[n]}function wm(e){e[to]=0}function F0(e){1024&e[H]||(e[H]|=1024,Bu(e)&&Ea(e))}function Em(e){9216&e[H]&&Ea(e)}function Ea(e){let n=e[we];for(;null!==n&&!(Ye(n)&&n[ku]||Ke(n)&&8192&n[H]);){if(Ye(n))n[ku]=!0;else if(n[H]|=8192,!Bu(n))break;n=n[we]}}function Ia(e,n){if(256==(256&e[H]))throw new M(911,!1);null===e[Xn]&&(e[Xn]=[]),e[Xn].push(n)}const B={lFrame:Pm(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Mm(){return B.bindingsEnabled}function b(){return B.lFrame.lView}function J(){return B.lFrame.tView}function re(e){return B.lFrame.contextLView=e,e[ge]}function oe(e){return B.lFrame.contextLView=null,e}function ue(){let e=Sm();for(;null!==e&&64===e.type;)e=e.parent;return e}function Sm(){return B.lFrame.currentTNode}function gn(e,n){const t=B.lFrame;t.currentTNode=e,t.isParent=n}function Gu(){return B.lFrame.isParent}function zu(){B.lFrame.isParent=!1}function at(){const e=B.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function mn(){return B.lFrame.bindingIndex++}function W0(e,n){const t=B.lFrame;t.bindingIndex=t.bindingRootIndex=e,qu(n)}function qu(e){B.lFrame.currentDirectiveIndex=e}function Nm(){return B.lFrame.currentQueryIndex}function Zu(e){B.lFrame.currentQueryIndex=e}function Y0(e){const n=e[T];return 2===n.type?n.declTNode:1===n.type?e[tt]:null}function Rm(e,n,t){if(t&X.SkipSelf){let o=n,i=e;for(;!(o=o.parent,null!==o||t&X.Host||(o=Y0(i),null===o||(i=i[eo],10&o.type))););if(null===o)return!1;n=o,e=i}const r=B.lFrame=Om();return r.currentTNode=n,r.lView=e,!0}function Yu(e){const n=Om(),t=e[T];B.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function Om(){const e=B.lFrame,n=null===e?null:e.child;return null===n?Pm(e):n}function Pm(e){const n={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:e,child:null,inI18n:!1};return null!==e&&(e.child=n),n}function km(){const e=B.lFrame;return B.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const Fm=km;function Qu(){const e=km();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function lt(){return B.lFrame.selectedIndex}function br(e){B.lFrame.selectedIndex=e}function De(){const e=B.lFrame;return ki(e.tView,e.selectedIndex)}let Vm=!0;function Ma(){return Vm}function Jn(e){Vm=e}function Sa(e,n){for(let t=n.directiveStart,r=n.directiveEnd;t=r)break}else n[l]<0&&(e[to]+=65536),(a>14>16&&(3&e[H])===n&&(e[H]+=16384,Hm(a,i)):Hm(a,i)}const io=-1;class Li{constructor(n,t,r){this.factory=n,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=r}}function Ku(e){return e!==io}function Vi(e){return 32767&e}function ji(e,n){let t=function aS(e){return e>>16}(e),r=n;for(;t>0;)r=r[eo],t--;return r}let ed=!0;function xa(e){const n=ed;return ed=e,n}const Um=255,Bm=5;let lS=0;const vn={};function Na(e,n){const t=$m(e,n);if(-1!==t)return t;const r=n[T];r.firstCreatePass&&(e.injectorIndex=n.length,td(r.data,e),td(n,null),td(r.blueprint,null));const o=Ra(e,n),i=e.injectorIndex;if(Ku(o)){const s=Vi(o),a=ji(o,n),l=a[T].data;for(let c=0;c<8;c++)n[i+c]=a[s+c]|l[s+c]}return n[i+8]=o,i}function td(e,n){e.push(0,0,0,0,0,0,0,0,n)}function $m(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function Ra(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,r=null,o=n;for(;null!==o;){if(r=Qm(o),null===r)return io;if(t++,o=o[eo],-1!==r.injectorIndex)return r.injectorIndex|t<<16}return io}function nd(e,n,t){!function cS(e,n,t){let r;"string"==typeof t?r=t.charCodeAt(0)||0:t.hasOwnProperty(Mi)&&(r=t[Mi]),null==r&&(r=t[Mi]=lS++);const o=r&Um;n.data[e+(o>>Bm)]|=1<=0?n&Um:hS:n}(t);if("function"==typeof i){if(!Rm(n,e,r))return r&X.Host?Gm(o,0,r):zm(n,t,r,o);try{let s;if(s=i(r),null!=s||r&X.Optional)return s;Eu()}finally{Fm()}}else if("number"==typeof i){let s=null,a=$m(e,n),l=io,c=r&X.Host?n[Me][tt]:null;for((-1===a||r&X.SkipSelf)&&(l=-1===a?Ra(e,n):n[a+8],l!==io&&Ym(r,!1)?(s=n[T],a=Vi(l),n=ji(l,n)):a=-1);-1!==a;){const u=n[T];if(Zm(i,a,u.data)){const d=dS(a,n,t,s,r,c);if(d!==vn)return d}l=n[a+8],l!==io&&Ym(r,n[T].data[a+8]===c)&&Zm(i,a,n)?(s=u,a=Vi(l),n=ji(l,n)):a=-1}}return o}function dS(e,n,t,r,o,i){const s=n[T],a=s.data[e+8],u=Oa(a,s,t,null==r?Dr(a)&&ed:r!=s&&0!=(3&a.type),o&X.Host&&i===a);return null!==u?Er(n,s,u,a):vn}function Oa(e,n,t,r,o){const i=e.providerIndexes,s=n.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=r?a:a+u;m=l&&v.type===t)return m}if(o){const m=s[l];if(m&&Qt(m)&&m.type===t)return l}return null}function Er(e,n,t,r){let o=e[t];const i=n.data;if(function rS(e){return e instanceof Li}(o)){const s=o;s.resolving&&function q1(e,n){const t=n?`. Dependency path: ${n.join(" > ")} > ${e}`:"";throw new M(-200,`Circular dependency in DI detected for ${e}${t}`)}(function ne(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():G(e)}(i[t]));const a=xa(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?mt(s.injectImpl):null;Rm(e,r,X.Default);try{o=e[t]=s.factory(void 0,i,e,r),n.firstCreatePass&&t>=r.directiveStart&&function tS(e,n,t){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=n.type.prototype;if(r){const s=vm(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),i&&((t.preOrderHooks??=[]).push(e,i),(t.preOrderCheckHooks??=[]).push(e,i))}(t,i[t],n)}finally{null!==c&&mt(c),xa(a),s.resolving=!1,Fm()}}return o}function Zm(e,n,t){return!!(t[n+(e>>Bm)]&1<{const n=e.prototype.constructor,t=n[xn]||rd(n),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[xn]||rd(o);if(i&&i!==t)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function rd(e){return ha(e)?()=>{const n=rd(j(e));return n&&n()}:wr(e)}function Qm(e){const n=e[T],t=n.type;return 2===t?n.declTNode:1===t?e[tt]:null}const co="__parameters__";function fo(e,n,t){return Nn(()=>{const r=function od(e){return function(...t){if(e){const r=e(...t);for(const o in r)this[o]=r[o]}}}(n);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(co)?l[co]:Object.defineProperty(l,co,{value:[]})[co];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function po(e,n){e.forEach(t=>Array.isArray(t)?po(t,n):n(t))}function Jm(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function ka(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function Tt(e,n,t){let r=go(e,n);return r>=0?e[1|r]=t:(r=~r,function Km(e,n,t,r){let o=e.length;if(o==n)e.push(t,r);else if(1===o)e.push(r,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=r}}(e,r,n,t)),r}function sd(e,n){const t=go(e,n);if(t>=0)return e[1|t]}function go(e,n){return function ev(e,n,t){let r=0,o=e.length>>t;for(;o!==r;){const i=r+(o-r>>1),s=e[i<n?o=i:r=i+1}return~(o<{t.push(s)};return po(n,s=>{const a=s;Ua(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&av(o,i),t}function av(e,n){for(let t=0;t{n(i,r)})}}function Ua(e,n,t,r){if(!(e=j(e)))return!1;let o=null,i=ga(e);const s=!i&&Q(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=ga(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)Ua(c,n,t,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{po(i.imports,u=>{Ua(u,n,t,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&av(c,n)}if(!a){const c=wr(o)||(()=>new o);n({provide:o,useFactory:c,deps:te},o),n({provide:cd,useValue:o,multi:!0},o),n({provide:vo,useValue:()=>k(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;dd(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function dd(e,n){for(let t of e)Du(t)&&(t=t.\u0275providers),Array.isArray(t)?dd(t,n):n(t)}const FS=le({provide:String,useValue:le});function fd(e){return null!==e&&"object"==typeof e&&FS in e}function Ir(e){return"function"==typeof e}const hd=new N("Set Injector scope."),Ba={},VS={};let pd;function $a(){return void 0===pd&&(pd=new Ha),pd}class At{}class Mr extends At{get destroyed(){return this._destroyed}constructor(n,t,r,o){super(),this.parent=t,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,md(n,s=>this.processProvider(s)),this.records.set(ov,yo(void 0,this)),o.has("environment")&&this.records.set(At,yo(void 0,this));const i=this.records.get(hd);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(cd,te,X.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const t of this._ngOnDestroyHooks)t.ngOnDestroy();const n=this._onDestroyHooks;this._onDestroyHooks=[];for(const t of n)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(n){return this.assertNotDestroyed(),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){this.assertNotDestroyed();const t=Yn(this),r=mt(void 0);try{return n()}finally{Yn(t),mt(r)}}get(n,t=Si,r=X.Default){if(this.assertNotDestroyed(),n.hasOwnProperty(qg))return n[qg](this);r=ya(r);const i=Yn(this),s=mt(void 0);try{if(!(r&X.SkipSelf)){let l=this.records.get(n);if(void 0===l){const c=function $S(e){return"function"==typeof e||"object"==typeof e&&e instanceof N}(n)&&pa(n);l=c&&this.injectableDefInScope(c)?yo(gd(n),Ba):null,this.records.set(n,l)}if(null!=l)return this.hydrate(n,l)}return(r&X.Self?$a():this.parent).get(n,t=r&X.Optional&&t===Si?null:t)}catch(a){if("NullInjectorError"===a.name){if((a[va]=a[va]||[]).unshift(je(n)),i)throw a;return function l0(e,n,t,r){const o=e[va];throw n[Jg]&&o.unshift(n[Jg]),e.message=function c0(e,n,t,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=je(n);if(Array.isArray(n))o=n.map(je).join(" -> ");else if("object"==typeof n){let i=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):je(a)))}o=`{${i.join(", ")}}`}return`${t}${r?"("+r+")":""}[${o}]: ${e.replace(n0,"\n ")}`}("\n"+e.message,o,t,r),e.ngTokenPath=o,e[va]=null,e}(a,n,"R3InjectorError",this.source)}throw a}finally{mt(s),Yn(i)}}resolveInjectorInitializers(){const n=Yn(this),t=mt(void 0);try{const o=this.get(vo,te,X.Self);for(const i of o)i()}finally{Yn(n),mt(t)}}toString(){const n=[],t=this.records;for(const r of t.keys())n.push(je(r));return`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new M(205,!1)}processProvider(n){let t=Ir(n=j(n))?n:j(n&&n.provide);const r=function HS(e){return fd(e)?yo(void 0,e.useValue):yo(uv(e),Ba)}(n);if(Ir(n)||!0!==n.multi)this.records.get(t);else{let o=this.records.get(t);o||(o=yo(void 0,Ba,!0),o.factory=()=>Ru(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,r)}hydrate(n,t){return t.value===Ba&&(t.value=VS,t.value=t.factory()),"object"==typeof t.value&&t.value&&function BS(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}injectableDefInScope(n){if(!n.providedIn)return!1;const t=j(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function gd(e){const n=pa(e),t=null!==n?n.factory:wr(e);if(null!==t)return t;if(e instanceof N)throw new M(204,!1);if(e instanceof Function)return function jS(e){const n=e.length;if(n>0)throw function Ui(e,n){const t=[];for(let r=0;rt.factory(e):()=>new e}(e);throw new M(204,!1)}function uv(e,n,t){let r;if(Ir(e)){const o=j(e);return wr(o)||gd(o)}if(fd(e))r=()=>j(e.useValue);else if(function cv(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...Ru(e.deps||[]));else if(function lv(e){return!(!e||!e.useExisting)}(e))r=()=>k(j(e.useExisting));else{const o=j(e&&(e.useClass||e.provide));if(!function US(e){return!!e.deps}(e))return wr(o)||gd(o);r=()=>new o(...Ru(e.deps))}return r}function yo(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function md(e,n){for(const t of e)Array.isArray(t)?md(t,n):t&&Du(t)?md(t.\u0275providers,n):n(t)}function pv(e,n=null,t=null,r){const o=gv(e,n,t,r);return o.resolveInjectorInitializers(),o}function gv(e,n=null,t=null,r,o=new Set){const i=[t||te,iv(e)];return r=r||("object"==typeof e?void 0:je(e)),new Mr(i,n||$a(),r||null,o)}let _d,_t=(()=>{class e{static#e=this.THROW_IF_NOT_FOUND=Si;static#t=this.NULL=new Ha;static create(t,r){if(Array.isArray(t))return pv({name:""},r,t,"");{const o=t.name??"";return pv({name:o},t.parent,t.providers,o)}}static#n=this.\u0275prov=O({token:e,providedIn:"any",factory:()=>k(ov)});static#r=this.__NG_ELEMENT_ID__=-1}return e})();const za=new N("AppId",{providedIn:"root",factory:()=>KS}),KS="ng",vv=new N("Platform Initializer"),Sr=new N("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),yv=new N("CSP nonce",{providedIn:"root",factory:()=>function er(){if(void 0!==_d)return _d;if(typeof document<"u")return document;throw new M(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});function xt(e){return e instanceof Function?e():e}function Ya(e){return 128==(128&e.flags)}var rr=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(rr||{});const cT=/^>|^->||--!>|)/g,dT="\u200b$1\u200b";const Ed=new Map;let fT=0;const Md="__ngContext__";function nt(e,n){Ke(n)?(e[Md]=n[Ri],function pT(e){Ed.set(e[Ri],e)}(n)):e[Md]=n}let Sd;function Td(e,n){return Sd(e,n)}function Wi(e){const n=e[we];return Ye(n)?n[we]:n}function Fv(e){return Vv(e[xi])}function Lv(e){return Vv(e[Yt])}function Vv(e){for(;null!==e&&!Ye(e);)e=e[Yt];return e}function Co(e,n,t,r,o){if(null!=r){let i,s=!1;Ye(r)?i=r:Ke(r)&&(s=!0,r=r[Ae]);const a=me(r);0===e&&null!==t?null==o?Bv(n,t,a):Tr(n,t,a,o||null,!0):1===e&&null!==t?Tr(n,t,a,o||null,!0):2===e?function nl(e,n,t){const r=el(e,n);r&&function OT(e,n,t,r){e.removeChild(n,t,r)}(e,r,n,t)}(n,a,s):3===e&&n.destroyNode(a),null!=i&&function FT(e,n,t,r,o){const i=t[fn];i!==me(t)&&Co(n,e,r,i,o);for(let a=Pe;an.replace(uT,dT))}(n))}function Ja(e,n,t){return e.createElement(n,t)}function Hv(e,n){const t=e[no],r=t.indexOf(n);t.splice(r,1)}function Zi(e,n){if(e.length<=Pe)return;const t=Pe+n,r=e[t];if(r){const o=r[Ni];null!==o&&o!==e&&Hv(o,r),n>0&&(e[t-1][Yt]=r[Yt]);const i=ka(e,Pe+n);!function IT(e,n){Qi(e,n,n[z],2,null,null),n[Ae]=null,n[tt]=null}(r[T],r);const s=i[dn];null!==s&&s.detachView(i[T]),r[we]=null,r[Yt]=null,r[H]&=-129}return r}function Ka(e,n){if(!(256&n[H])){const t=n[z];n[Cr]&&function dg(e){if(Zr(e),bi(e))for(let n=0;n=0?r[s]():r[-s].unsubscribe(),i+=2}else t[i].call(r[t[i+1]]);null!==r&&(n[Jr]=null);const o=n[Xn];if(null!==o){n[Xn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===Wt.None||i===Wt.Emulated)return null}return st(r,t)}}(e,n.parent,t)}function Tr(e,n,t,r,o){e.insertBefore(n,t,r,o)}function Bv(e,n,t){e.appendChild(n,t)}function $v(e,n,t,r,o){null!==r?Tr(e,n,t,r,o):Bv(e,n,t)}function el(e,n){return e.parentNode(n)}let Rd,ol,qv=function zv(e,n,t){return 40&e.type?st(e,t):null};function tl(e,n,t,r){const o=Nd(e,r,n),i=n[z],a=function Gv(e,n,t){return qv(e,n,t)}(r.parent||n[tt],r,n);if(null!=o)if(Array.isArray(t))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return ol}()?.createScriptURL(e)||e}class ny{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${Gg})`}}function or(e){return e instanceof ny?e.changingThisBreaksApplicationSecurity:e}function Xi(e,n){const t=function WT(e){return e instanceof ny&&e.getTypeName()||null}(e);if(null!=t&&t!==n){if("ResourceURL"===t&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${t} (see ${Gg})`)}return t===n}const XT=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var wo=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}(wo||{});function bo(e){const n=Ki();return n?n.sanitize(wo.URL,e)||"":Xi(e,"URL")?or(e):function Ld(e){return(e=String(e)).match(XT)?e:"unsafe:"+e}(G(e))}function cy(e){const n=Ki();if(n)return ty(n.sanitize(wo.RESOURCE_URL,e)||"");if(Xi(e,"ResourceURL"))return ty(or(e));throw new M(904,!1)}function Ki(){const e=b();return e&&e[Kr].sanitizer}let dy=(e,n,t)=>null;function Zd(e,n,t=!1){return dy(e,n,t)}class yA{}class py{}class CA{resolveComponentFactory(n){throw function _A(e){const n=Error(`No component factory found for ${je(e)}.`);return n.ngComponent=e,n}(n)}}let dl=(()=>{class e{static#e=this.NULL=new CA}return e})();function DA(){return Mo(ue(),b())}function Mo(e,n){return new Nt(st(e,n))}let Nt=(()=>{class e{constructor(t){this.nativeElement=t}static#e=this.__NG_ELEMENT_ID__=DA}return e})();function wA(e){return e instanceof Nt?e.nativeElement:e}class my{}let Fn=(()=>{class e{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function bA(){const e=b(),t=St(ue().index,e);return(Ke(t)?t:e)[z]}()}return e})(),EA=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>null})}return e})();class ns{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const IA=new ns("17.0.1"),Xd={};function fl(e){return!!Jd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function Jd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}class yy{constructor(){}supports(n){return fl(n)}create(n){return new xA(n)}}const AA=(e,n)=>n;class xA{constructor(n){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=n||AA}forEachItem(n){let t;for(t=this._itHead;null!==t;t=t._next)n(t)}forEachOperation(n){let t=this._itHead,r=this._removalsHead,o=0,i=null;for(;t||r;){const s=!r||t&&t.currentIndex{s=this._trackByFn(o,a),null!==t&&Object.is(t.trackById,s)?(r&&(t=this._verifyReinsertion(t,a,s,o)),Object.is(t.item,a)||this._addIdentityChange(t,a)):(t=this._mismatch(t,a,s,o),r=!0),t=t._next,o++}),this.length=o;return this._truncate(t),this.collection=n,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,t,r,o){let i;return null===n?i=this._itTail:(i=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._reinsertAfter(n,i,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._moveAfter(n,i,o)):n=this._addAfter(new NA(t,r),i,o),n}_verifyReinsertion(n,t,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?n=this._reinsertAfter(i,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const t=n._next;this._addToRemovals(this._unlink(n)),n=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,t,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,i=n._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(n,t,r),this._addToMoves(n,r),n}_moveAfter(n,t,r){return this._unlink(n),this._insertAfter(n,t,r),this._addToMoves(n,r),n}_addAfter(n,t,r){return this._insertAfter(n,t,r),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,t,r){const o=null===t?this._itHead:t._next;return n._next=o,n._prev=t,null===o?this._itTail=n:o._prev=n,null===t?this._itHead=n:t._next=n,null===this._linkedRecords&&(this._linkedRecords=new _y),this._linkedRecords.put(n),n.currentIndex=r,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const t=n._prev,r=n._next;return null===t?this._itHead=r:t._next=r,null===r?this._itTail=t:r._prev=t,n}_addToMoves(n,t){return n.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new _y),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,t){return n.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class NA{constructor(n,t){this.item=n,this.trackById=t,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}}class RA{constructor(){this._head=null,this._tail=null}add(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)}get(n,t){let r;for(r=this._head;null!==r;r=r._nextDup)if((null===t||t<=r.currentIndex)&&Object.is(r.trackById,n))return r;return null}remove(n){const t=n._prevDup,r=n._nextDup;return null===t?this._head=r:t._nextDup=r,null===r?this._tail=t:r._prevDup=t,null===this._head}}class _y{constructor(){this.map=new Map}put(n){const t=n.trackById;let r=this.map.get(t);r||(r=new RA,this.map.set(t,r)),r.add(n)}get(n,t){const o=this.map.get(n);return o?o.get(n,t):null}remove(n){const t=n.trackById;return this.map.get(t).remove(n)&&this.map.delete(t),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Cy(e,n,t){const r=e.previousIndex;if(null===r)return r;let o=0;return t&&r{if(t&&t.key===o)this._maybeAddToChanges(t,r),this._appendAfter=t,t=t._next;else{const i=this._getOrCreateRecordForKey(o,r);t=this._insertBeforeOrAppend(t,i)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let r=t;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const r=n._prev;return t._next=n,t._prev=r,n._prev=t,r&&(r._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new PA(n);return this._records.set(n,r),r.currentValue=t,this._addToAdditions(r),r}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(r=>t(n[r],r))}}class PA{constructor(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function wy(){return new hl([new yy])}let hl=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:wy});constructor(t){this.factories=t}static create(t,r){if(null!=r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||wy()),deps:[[e,new Va,new La]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(null!=r)return r;throw new M(901,!1)}}return e})();function by(){return new rs([new Dy])}let rs=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:by});constructor(t){this.factories=t}static create(t,r){if(r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||by()),deps:[[e,new Va,new La]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(r)return r;throw new M(901,!1)}}return e})();function os(e,n,t,r,o=!1){for(;null!==t;){const i=n[t.index];null!==i&&r.push(me(i)),Ye(i)&&Ey(i,r);const s=t.type;if(8&s)os(e,n,t.child,r);else if(32&s){const a=Td(t,n);let l;for(;l=a();)r.push(l)}else if(16&s){const a=Zv(n,t);if(Array.isArray(a))r.push(...a);else{const l=Wi(n[Me]);os(l[T],l,a,r,!0)}}t=o?t.projectionNext:t.next}return r}function Ey(e,n){for(let t=Pe;t!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{},consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Ea(e.lView)},consumerOnSignalRead(){this.lView[Cr]=this}};function Kd(e){return e.ngOriginalError}class Ln{constructor(){this._console=console}handleError(n){const t=this._findOriginalError(n);this._console.error("ERROR",n),t&&this._console.error("ORIGINAL ERROR",t)}_findOriginalError(n){let t=n&&Kd(n);for(;t&&Kd(t);)t=Kd(t);return t||null}}const Ty=new N("",{providedIn:"root",factory:()=>!1}),W={};function C(e){Ry(J(),b(),lt()+e,!1)}function Ry(e,n,t,r){if(!r)if(3==(3&n[H])){const i=e.preOrderCheckHooks;null!==i&&Ta(n,i,t)}else{const i=e.preOrderHooks;null!==i&&Aa(n,i,0,t)}br(t)}function S(e,n=X.Default){const t=b();return null===t?k(e,n):qm(ue(),t,j(e),n)}function gl(e,n,t,r,o,i,s,a,l,c,u){const d=n.blueprint.slice();return d[Ae]=o,d[H]=140|r,(null!==c||e&&2048&e[H])&&(d[H]|=2048),wm(d),d[we]=d[eo]=e,d[ge]=t,d[Kr]=s||e&&e[Kr],d[z]=a||e&&e[z],d[it]=l||e&&e[it]||null,d[tt]=i,d[Ri]=function hT(){return fT++}(),d[un]=u,d[fm]=c,d[Me]=2==n.type?e[Me]:d,d}function So(e,n,t,r,o){let i=e.data[n];if(null===i)i=function ef(e,n,t,r,o){const i=Sm(),s=Gu(),l=e.data[n]=function JA(e,n,t,r,o,i){let s=n?n.injectorIndex:-1,a=0;return function oo(){return null!==B.skipHydrationRootTNode}()&&(a|=128),{type:t,index:r,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:o,attrs:i,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?i:i&&i.parent,t,n,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,n,t,r,o),function q0(){return B.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=t,i.value=r,i.attrs=o;const s=function Fi(){const e=B.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return gn(i,!0),i}function is(e,n,t,r){if(0===t)return-1;const o=n.length;for(let i=0;iU&&Ry(e,n,U,!1),hn(s?2:0,o),t(r,o)}finally{br(i),hn(s?3:1,o)}}function tf(e,n,t){if(Fu(n)){const r=Se(null);try{const i=n.directiveEnd;for(let s=n.directiveStart;snull;function Ly(e,n,t,r){for(let o in e)if(e.hasOwnProperty(o)){t=null===t?{}:t;const i=e[o];null===r?Vy(t,n,o,i):r.hasOwnProperty(o)&&Vy(t,n,r[o],i)}return t}function Vy(e,n,t,r){e.hasOwnProperty(t)?e[t].push(n,r):e[t]=[n,r]}function Rt(e,n,t,r,o,i,s,a){const l=st(n,t);let u,c=n.inputs;!a&&null!=c&&(u=c[r])?(df(e,t,u,r,o),Dr(n)&&function tx(e,n){const t=St(n,e);16&t[H]||(t[H]|=64)}(t,n.index)):3&n.type&&(r=function ex(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,n.value||"",r):o,i.setProperty(l,r,o))}function af(e,n,t,r){if(Mm()){const o=null===r?null:{"":-1},i=function ax(e,n){const t=e.directiveRegistry;let r=null,o=null;if(t)for(let i=0;i0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,r,i)}}(e,n,r,is(e,t,o.hostVars,W),o)}function yn(e,n,t,r,o,i){const s=st(e,n);!function cf(e,n,t,r,o,i,s){if(null==i)e.removeAttribute(n,o,t);else{const a=null==s?G(i):s(i,r||"",o);e.setAttribute(n,o,a,t)}}(n[z],s,i,e.value,t,r,o)}function hx(e,n,t,r,o,i){const s=i[n];if(null!==s)for(let a=0;ae.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}(a,s),function VA(e){e.lView[Cr]!==e&&(e.lView=null,Iy.push(e))}(a)),Qu()}}function Zy(e,n){for(let t=Fv(e);null!==t;t=Lv(t)){t[ku]=!1;for(let r=Pe;r-1&&(Zi(n,r),ka(t,r))}this._attachedToViewContainer=!1}Ka(this._lView[T],this._lView)}onDestroy(n){Ia(this._lView,n)}markForCheck(){ss(this._cdRefInjectingView||this._lView)}detach(){this._lView[H]&=-129}reattach(){Em(this._lView),this._lView[H]|=128}detectChanges(){!function ff(e,n,t,r=!0){const o=n[Kr],i=o.rendererFactory,s=o.afterRenderEventManager;i.begin?.(),s?.begin();try{Wy(e,n,e.template,t),function mx(e){let n=0;for(;9216&e[H]||e[Cr]?.dirty;){if(100===n)throw new M(103,!1);n++,Qy(e,1)}}(n)}catch(l){throw r&&vl(n,l),l}finally{i.end?.(),o.inlineEffectRunner?.flush(),s?.end()}}(this._lView[T],this._lView,this.context,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function ST(e,n){Qi(e,n,n[z],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=n}}let ls=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Dx}return e})();function Dx(e){return function wx(e,n,t){if(Dr(e)&&!t){const r=St(e.index,n);return new as(r,r)}return 47&e.type?new as(n[Me],n):null}(ue(),b(),16==(16&e))}let yl=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Mx;static#t=this.__NG_ENV_ID__=t=>t}return e})();class Ix extends yl{constructor(n){super(),this._lView=n}onDestroy(n){return Ia(this._lView,n),()=>function $u(e,n){if(null===e[Xn])return;const t=e[Xn].indexOf(n);-1!==t&&e[Xn].splice(t,1)}(this._lView,n)}}function Mx(){return new Ix(b())}function Ar(e,n){return performance?.mark?.(e,n)}function hf(e){return n=>{setTimeout(e,void 0,n)}}const xe=class Ox extends zt{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,t,r){let o=n,i=t||(()=>null),s=r;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=hf(i),o&&(o=hf(o)),s&&(s=hf(s)));const a=super.subscribe({next:o,error:i,complete:s});return n instanceof Et&&n.add(a),a}};function Jy(...e){}class ae{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new xe(!1),this.onMicrotaskEmpty=new xe(!1),this.onStable=new xe(!1),this.onError=new xe(!1),typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();const o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&t,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function Px(){const e="function"==typeof pe.requestAnimationFrame;let n=pe[e?"requestAnimationFrame":"setTimeout"],t=pe[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&n&&t){const r=n[Zone.__symbol__("OriginalDelegate")];r&&(n=r);const o=t[Zone.__symbol__("OriginalDelegate")];o&&(t=o)}return{nativeRequestAnimationFrame:n,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function Lx(e){const n=()=>{!function Fx(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(pe,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,gf(e),e.isCheckStableRunning=!0,pf(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),gf(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,r,o,i,s,a)=>{if(function jx(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return t.invokeTask(o,i,s,a);try{return Ky(e),t.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&n(),e_(e)}},onInvoke:(t,r,o,i,s,a,l)=>{try{return Ky(e),t.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&n(),e_(e)}},onHasTask:(t,r,o,i)=>{t.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,gf(e),pf(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,r,o,i)=>(t.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ae.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(ae.isInAngularZone())throw new M(909,!1)}run(n,t,r){return this._inner.run(n,t,r)}runTask(n,t,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,n,kx,Jy,Jy);try{return i.runTask(s,t,r)}finally{i.cancelTask(s)}}runGuarded(n,t,r){return this._inner.runGuarded(n,t,r)}runOutsideAngular(n){return this._outer.run(n)}}const kx={};function pf(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function gf(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Ky(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function e_(e){e._nesting--,pf(e)}const t_=new N("",{providedIn:"root",factory:n_});function n_(){const e=A(ae);let n=!0;return function U1(...e){const n=Ei(e),t=function P1(e,n){return"number"==typeof yu(e)?e.pop():n}(e,1/0),r=e;return r.length?1===r.length?qt(r[0]):Yr(t)(Oe(r,n)):an}(new Te(o=>{n=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(n),o.complete()})}),new Te(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{!n&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(n=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ae.assertInAngularZone(),n&&(n=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe($g()))}var xr=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(xr||{});const r_={destroy(){}};function i_(e,n){!n&&function vd(e){if(!Yg()&&!function o0(){return Xr}())throw new M(-203,!1)}();const t=n?.injector??A(_t);if(!function tr(e){return"browser"===(e??A(_t)).get(Sr)}(t))return r_;Ar("mark_use_counter",{detail:{feature:"NgAfterNextRender"}});const r=t.get(_l),o=r.handler??=new a_,i=n?.phase??xr.MixedReadWrite,s=()=>{o.unregister(l),a()},a=t.get(yl).onDestroy(s),l=new s_(t,i,()=>{s(),e()});return o.register(l),{destroy:s}}class s_{constructor(n,t,r){this.phase=t,this.callbackFn=r,this.zone=n.get(ae),this.errorHandler=n.get(Ln,null,{optional:!0})}invoke(){try{this.zone.runOutsideAngular(this.callbackFn)}catch(n){this.errorHandler?.handleError(n)}}}class a_{constructor(){this.executingCallbacks=!1,this.buckets={[xr.EarlyRead]:new Set,[xr.Write]:new Set,[xr.MixedReadWrite]:new Set,[xr.Read]:new Set},this.deferredCallbacks=new Set}validateBegin(){if(this.executingCallbacks)throw new M(102,!1)}register(n){(this.executingCallbacks?this.deferredCallbacks:this.buckets[n.phase]).add(n)}unregister(n){this.buckets[n.phase].delete(n),this.deferredCallbacks.delete(n)}execute(){this.executingCallbacks=!0;for(const n of Object.values(this.buckets))for(const t of n)t.invoke();this.executingCallbacks=!1;for(const n of this.deferredCallbacks)this.buckets[n.phase].add(n);this.deferredCallbacks.clear()}destroy(){for(const n of Object.values(this.buckets))n.clear();this.deferredCallbacks.clear()}}let _l=(()=>{class e{constructor(){this.renderDepth=0,this.handler=null,this.internalCallbacks=[]}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){if(this.renderDepth--,0===this.renderDepth){for(const t of this.internalCallbacks)t();this.internalCallbacks.length=0,this.handler?.execute()}}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new e})}return e})();function Ux(e,n){const t=St(n,e),r=t[T];!function Bx(e,n){for(let t=n.length;t0&&Xv(e,t,i.join(" "))}}(d,Ie,m,r),void 0!==t&&function Jx(e,n,t){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=n+=o.hostVars,o.hostAttrs=Ai(o.hostAttrs,t=Ai(t,o.hostAttrs))}}(r)}function Dl(e){return e===cn?{}:e===te?[]:e}function tN(e,n){const t=e.viewQuery;e.viewQuery=t?(r,o)=>{n(r,o),t(r,o)}:n}function nN(e,n){const t=e.contentQueries;e.contentQueries=t?(r,o,i)=>{n(r,o,i),t(r,o,i)}:n}function rN(e,n){const t=e.hostBindings;e.hostBindings=t?(r,o)=>{n(r,o),t(r,o)}:n}function p_(e){const n=e.inputConfig,t={};for(const r in n)if(n.hasOwnProperty(r)){const o=n[r];Array.isArray(o)&&o[2]&&(t[r]=o[2])}e.inputTransforms=t}function _n(e,n,t){return e[n]=t}function He(e,n,t){return!Object.is(e[n],t)&&(e[n]=t,!0)}function Xt(e,n,t,r){const o=b();return He(o,mn(),n)&&(J(),yn(De(),o,e,n,t,r)),Xt}function Ao(e,n,t,r){return He(e,mn(),t)?n+G(t)+r:W}function bl(e,n){return e<<17|n<<2}function ir(e){return e>>17&32767}function vf(e){return 2|e}function Rr(e){return(131068&e)>>2}function yf(e,n){return-131069&e|n<<2}function _f(e){return 1|e}function E_(e,n,t,r,o){const i=e[t+1],s=null===n;let a=r?ir(i):Rr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];pN(e[a],n)&&(l=!0,e[a+1]=r?_f(u):vf(u)),a=r?ir(u):Rr(u)}l&&(e[t+1]=r?vf(i):_f(i))}function pN(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&go(e,n)>=0}function E(e,n,t){const r=b();return He(r,mn(),n)&&Rt(J(),De(),r,e,n,r[z],t,!1),E}function Cf(e,n,t,r,o){const s=o?"class":"style";df(e,t,n.inputs[s],s,r)}function El(e,n){return function Jt(e,n,t,r){const o=b(),i=J(),s=function Pn(e){const n=B.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}(2);i.firstUpdatePass&&function O_(e,n,t,r){const o=e.data;if(null===o[t+1]){const i=o[lt()],s=function R_(e,n){return n>=e.expandoStartIndex}(e,t);(function L_(e,n){return 0!=(e.flags&(n?8:16))})(i,r)&&null===n&&!s&&(n=!1),n=function bN(e,n,t,r){const o=function Wu(e){const n=B.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let i=r?n.residualClasses:n.residualStyles;if(null===o)0===(r?n.classBindings:n.styleBindings)&&(t=ds(t=Df(null,e,n,t,r),n.attrs,r),i=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=Df(o,e,n,t,r),null===i){let l=function EN(e,n,t){const r=t?n.classBindings:n.styleBindings;if(0!==Rr(r))return e[ir(r)]}(e,n,r);void 0!==l&&Array.isArray(l)&&(l=Df(null,e,n,l[1],r),l=ds(l,n.attrs,r),function IN(e,n,t,r){e[ir(t?n.classBindings:n.styleBindings)]=r}(e,n,r,l))}else i=function MN(e,n,t){let r;const o=n.directiveEnd;for(let i=1+n.directiveStylingLast;i0)&&(c=!0)):u=t,o)if(0!==l){const g=ir(e[a+1]);e[r+1]=bl(g,a),0!==g&&(e[g+1]=yf(e[g+1],r)),e[a+1]=function uN(e,n){return 131071&e|n<<17}(e[a+1],r)}else e[r+1]=bl(a,0),0!==a&&(e[a+1]=yf(e[a+1],r)),a=r;else e[r+1]=bl(l,0),0===a?a=r:e[l+1]=yf(e[l+1],r),l=r;c&&(e[r+1]=vf(e[r+1])),E_(e,u,r,!0),E_(e,u,r,!1),function hN(e,n,t,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof n&&go(i,n)>=0&&(t[r+1]=_f(t[r+1]))}(n,u,e,r,i),s=bl(a,l),i?n.classBindings=s:n.styleBindings=s}(o,i,n,t,s,r)}}(i,e,s,r),n!==W&&He(o,s,n)&&function k_(e,n,t,r,o,i,s,a){if(!(3&n.type))return;const l=e.data,c=l[a+1],u=function dN(e){return 1==(1&e)}(c)?F_(l,n,t,o,Rr(c),s):void 0;Il(u)||(Il(i)||function cN(e){return 2==(2&e)}(c)&&(i=F_(l,null,t,o,a,s)),function LT(e,n,t,r,o){if(n)o?e.addClass(t,r):e.removeClass(t,r);else{let i=-1===r.indexOf("-")?void 0:rr.DashCase;null==o?e.removeStyle(t,r,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=rr.Important),e.setStyle(t,r,o,i))}}(r,s,Pi(lt(),t),o,i))}(i,i.data[lt()],o,o[z],e,o[s+1]=function xN(e,n){return null==e||""===e||("string"==typeof n?e+=n:"object"==typeof e&&(e=je(or(e)))),e}(n,t),r,s)}(e,n,null,!0),El}function Df(e,n,t,r,o){let i=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=t[o+1];g===W&&(g=d?te:void 0);let m=d?sd(g,r):u===r?g:void 0;if(c&&!Il(m)&&(m=sd(l,r)),Il(m)&&(a=m,s))return a;const v=e[o+1];o=s?ir(v):Rr(v)}if(null!==n){let l=i?n.residualClasses:n.residualStyles;null!=l&&(a=sd(l,r))}return a}function Il(e){return void 0!==e}let $_=(e,n)=>null;function Vo(e,n){return $_(e,n)}function gs(e,n,t,r){const o=n.tView,a=gl(e,o,t,4096&e[H]?4096:16,null,n,null,null,null,r?.injector??null,r?.dehydratedView??null);a[Ni]=e[n.index];const c=e[dn];return null!==c&&(a[dn]=c.createEmbeddedView(o)),mf(o,a,t),a}function jo(e,n){return!n||Ya(e)}function ms(e,n,t,r=!0){const o=n[T];if(function AT(e,n,t,r){const o=Pe+r,i=t.length;r>0&&(t[o-1][Yt]=n),r{class e{static#e=this.__NG_ELEMENT_ID__=uR}return e})();function uR(){return Q_(ue(),b())}const dR=en,Z_=class extends dR{constructor(n,t,r){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=r}get element(){return Mo(this._hostTNode,this._hostLView)}get injector(){return new ze(this._hostTNode,this._hostLView)}get parentInjector(){const n=Ra(this._hostTNode,this._hostLView);if(Ku(n)){const t=ji(n,this._hostLView),r=Vi(n);return new ze(t[T].data[r+8],t)}return new ze(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=Y_(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-Pe}createEmbeddedView(n,t,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const s=Vo(this._lContainer,n.ssrId),a=n.createEmbeddedViewImpl(t||{},i,s);return this.insertImpl(a,o,jo(this._hostTNode,s)),a}createComponent(n,t,r,o,i){const s=n&&!function Hi(e){return"function"==typeof e}(n);let a;if(s)a=t;else{const v=t||{};a=v.index,r=v.injector,o=v.projectableNodes,i=v.environmentInjector||v.ngModuleRef}const l=s?n:new cs(Q(n)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const _=(s?c:this.parentInjector).get(At,null);_&&(i=_)}const u=Q(l.componentType??{}),d=Vo(this._lContainer,u?.id??null),m=l.create(c,o,d?.firstChild??null,i);return this.insertImpl(m.hostView,a,jo(this._hostTNode,d)),m}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,r){const o=n._lView;if(function k0(e){return Ye(e[we])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[we],c=new Z_(l,l[tt],l[we]);c.detach(c.indexOf(n))}}const i=this._adjustIndex(t),s=this._lContainer;return ms(s,o,i,r),n.attachToViewContainerRef(),Jm(xf(s),i,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=Y_(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),r=Zi(this._lContainer,t);r&&(ka(xf(this._lContainer),t),Ka(r[T],r))}detach(n){const t=this._adjustIndex(n,-1),r=Zi(this._lContainer,t);return r&&null!=ka(xf(this._lContainer),t)?new as(r):null}_adjustIndex(n,t=0){return n??this.length+t}};function Y_(e){return e[8]}function xf(e){return e[8]||(e[8]=[])}function Q_(e,n){let t;const r=n[e.index];return Ye(r)?t=r:(t=By(r,n,null,e),n[e.index]=t,ml(n,t)),X_(t,n,e,r),new Z_(t,e,n)}let X_=function K_(e,n,t,r){if(e[fn])return;let o;o=8&t.type?me(r):function fR(e,n){const t=e[z],r=t.createComment(""),o=st(n,e);return Tr(t,el(t,o),r,function PT(e,n){return e.nextSibling(n)}(t,o),!1),r}(n,t),e[fn]=o},Nf=(e,n,t)=>!1;function q(e,n,t,r,o,i,s,a){const l=b(),c=J(),u=e+U,d=c.firstCreatePass?function mR(e,n,t,r,o,i,s,a,l){const c=n.consts,u=So(n,e,4,s||null,pn(c,a));af(n,t,u,pn(c,l)),Sa(n,u);const d=u.tView=sf(2,u,r,o,i,n.directiveRegistry,n.pipeRegistry,null,n.schemas,c,null);return null!==n.queries&&(n.queries.template(n,u),d.queries=n.queries.embeddedTView(u)),u}(u,c,l,n,t,r,o,i,s):c.data[u];gn(d,!1);const g=eC(c,l,d,e);Ma()&&tl(c,l,g,d),nt(g,l);const m=By(g,l,g,d);return l[u]=m,ml(l,m),function J_(e,n,t){return Nf(e,n,t)}(m,d,l),ba(d)&&nf(c,l,d),null!=s&&rf(l,d,a),q}let eC=function tC(e,n,t,r){return Jn(!0),n[z].createComment("")};const nC={detail:{feature:"NgControlFlow"}};function Ho(e,n,t){Ar("mark_use_counter",nC);const r=b(),o=mn(),i=function Rf(e,n){return e[n]}(r,U+e);if(He(r,o,n)){const a=Se(null);try{if(function Af(e,n){const t=Zi(e,n);return void 0!==t&&Ka(t[T],t),t}(i,0),-1!==n){const l=function Of(e,n){return ki(e,n+U)}(r[T],n),c=Vo(i,l.tView.ssrId);ms(i,gs(r,l,t,{dehydratedView:c}),0,jo(l,c))}}finally{Se(a)}}else{const a=function W_(e,n){const t=Pe+n;if(t(Jn(!0),Ja(r,o,function Lm(){return B.lFrame.currentNamespace}()));function Dt(e,n,t){const r=b(),o=J(),i=e+U,s=o.firstCreatePass?function aO(e,n,t,r,o){const i=n.consts,s=pn(i,r),a=So(n,e,8,"ng-container",s);return null!==s&&Cl(a,s,!0),af(n,t,a,pn(i,o)),null!==n.queries&&n.queries.elementStart(n,a),a}(i,o,r,n,t):o.data[i];gn(s,!0);const a=SC(o,r,s,e);return r[i]=a,Ma()&&tl(o,r,a,s),nt(a,r),ba(s)&&(nf(o,r,s),tf(o,s,r)),null!=t&&rf(r,s),Dt}function wt(){let e=ue();const n=J();return Gu()?zu():(e=e.parent,gn(e,!1)),n.firstCreatePass&&(Sa(n,e),Fu(e)&&n.queries.elementEnd(e)),wt}let SC=(e,n,t,r)=>(Jn(!0),Ad(n[z],""));function Fe(){return b()}const Zo="en-US";let RC=Zo;function Is(e){return!!e&&"function"==typeof e.then}function rD(e){return!!e&&"function"==typeof e.subscribe}function R(e,n,t,r){const o=b(),i=J(),s=ue();return function iD(e,n,t,r,o,i,s){const a=ba(r),c=e.firstCreatePass&&zy(e),u=n[ge],d=Gy(n);let g=!0;if(3&r.type||s){const _=st(r,n),D=s?s(_):_,I=d.length,w=s?V=>s(me(V[r.index])):r.index;let x=null;if(!s&&a&&(x=function sP(e,n,t,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,n,o,r.index)),null!==x)(x.__ngLastListenerFn__||x).__ngNextListenerFn__=i,x.__ngLastListenerFn__=i,g=!1;else{i=aD(r,n,u,i,!1);const V=t.listen(D,o,i);d.push(i,V),c&&c.push(o,w,I,I+1)}}else i=aD(r,n,u,i,!1);const m=r.outputs;let v;if(g&&null!==m&&(v=m[o])){const _=v.length;if(_)for(let D=0;D<_;D+=2){const Z=n[v[D]][v[D+1]].subscribe(i),Ie=d.length;d.push(i,Z),c&&c.push(o,r.index,Ie,-(Ie+1))}}}(i,o,o[z],s,e,n,r),R}function sD(e,n,t,r){try{return hn(6,n,t),!1!==t(r)}catch(o){return vl(e,o),!1}finally{hn(7,n,t)}}function aD(e,n,t,r,o){return function i(s){if(s===Function)return r;ss(e.componentOffset>-1?St(e.index,n):n);let l=sD(n,t,r,s),c=i.__ngNextListenerFn__;for(;c;)l=sD(n,t,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function P(e=1){return function Q0(e){return(B.lFrame.contextLView=function bm(e,n){for(;e>0;)n=n[eo],e--;return n}(e,B.lFrame.contextLView))[ge]}(e)}function jn(e,n,t,r,o){const i=b(),s=Ao(i,n,t,r);return s!==W&&Rt(J(),De(),i,e,s,i[z],o,!1),jn}function Gf(e){return function ro(e,n){return e[n]}(function z0(){return B.lFrame.contextLView}(),U+e)}function f(e,n=""){const t=b(),r=J(),o=e+U,i=r.firstCreatePass?So(r,o,1,n,null):r.data[o],s=MD(r,t,i,n,e);t[o]=s,Ma()&&tl(r,t,s,i),gn(i,!1)}let MD=(e,n,t,r,o)=>(Jn(!0),function Xa(e,n){return e.createText(n)}(n[z],r));function be(e){return Hn("",e,""),be}function Hn(e,n,t){const r=b(),o=Ao(r,e,n,t);return o!==W&&function Vn(e,n,t){const r=Pi(n,e);!function jv(e,n,t){e.setValue(n,t)}(e[z],r,t)}(r,lt(),o),Hn}function zf(e,n,t,r,o){if(e=j(e),Array.isArray(e))for(let i=0;i>20;if(Ir(e)||!e.multi){const m=new Li(c,o,S),v=Wf(l,n,o?u:u+g,d);-1===v?(nd(Na(a,s),i,l),qf(i,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(m),s.push(m)):(t[v]=m,s[v]=m)}else{const m=Wf(l,n,u+g,d),v=Wf(l,n,u,u+g),D=v>=0&&t[v];if(o&&!D||!o&&!(m>=0&&t[m])){nd(Na(a,s),i,l);const I=function IP(e,n,t,r,o){const i=new Li(e,t,S);return i.multi=[],i.index=n,i.componentProviders=0,kD(i,o,r&&!t),i}(o?EP:bP,t.length,o,r,c);!o&&D&&(t[v].providerFactory=I),qf(i,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(I),s.push(I)}else qf(i,e,m>-1?m:v,kD(t[o?v:m],c,!o&&r));!o&&r&&D&&t[v].componentProviders++}}}function qf(e,n,t,r){const o=Ir(n),i=function LS(e){return!!e.useClass}(n);if(o||i){const l=(i?j(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[r,l]):c[u+1].push(r,l)}else c.push(t,l)}}}function kD(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function Wf(e,n,t,r){for(let o=t;o{t.providersResolver=(r,o)=>function wP(e,n,t){const r=J();if(r.firstCreatePass){const o=Qt(e);zf(t,r.data,r.blueprint,o,!0),zf(n,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,n)}}class kr{}class FD{}class Yf extends kr{constructor(n,t,r){super(),this._parent=t,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new l_(this);const o=et(n);this._bootstrapComponents=xt(o.bootstrap),this._r3Injector=gv(n,t,[{provide:kr,useValue:this},{provide:dl,useValue:this.componentFactoryResolver},...r],je(n),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(n)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class Qf extends FD{constructor(n){super(),this.moduleType=n}create(n){return new Yf(this.moduleType,n,[])}}class LD extends kr{constructor(n){super(),this.componentFactoryResolver=new l_(this),this.instance=null;const t=new Mr([...n.providers,{provide:kr,useValue:this},{provide:dl,useValue:this.componentFactoryResolver}],n.parent||$a(),n.debugName,new Set(["environment"]));this.injector=t,n.runEnvironmentInitializers&&t.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}}function Xf(e,n,t=null){return new LD({providers:e,parent:n,debugName:t,runEnvironmentInitializers:!0}).injector}let TP=(()=>{class e{constructor(t){this._injector=t,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(t){if(!t.standalone)return null;if(!this.cachedInjectors.has(t)){const r=sv(0,t.type),o=r.length>0?Xf([r],this._injector,`Standalone[${t.type.name}]`):null;this.cachedInjectors.set(t,o)}return this.cachedInjectors.get(t)}ngOnDestroy(){try{for(const t of this.cachedInjectors.values())null!==t&&t.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=O({token:e,providedIn:"environment",factory:()=>new e(k(At))})}return e})();const AP={detail:{feature:"NgStandalone"}};function Ot(e){Ar("mark_use_counter",AP),e.getStandaloneInjector=n=>n.get(TP).getOrCreateStandaloneInjector(e)}function ee(e,n,t){const r=at()+e,o=b();return o[r]===W?_n(o,r,t?n.call(t):n()):function us(e,n){return e[n]}(o,r)}function Ms(e,n,t,r){return function qD(e,n,t,r,o,i){const s=n+t;return He(e,s,o)?_n(e,s+1,i?r.call(i,o):r(o)):Ss(e,s+1)}(b(),at(),e,n,t,r)}function zD(e,n,t,r,o){return function WD(e,n,t,r,o,i,s){const a=n+t;return function Nr(e,n,t,r){const o=He(e,n,t);return He(e,n+1,r)||o}(e,a,o,i)?_n(e,a+2,s?r.call(s,o,i):r(o,i)):Ss(e,a+2)}(b(),at(),e,n,t,r,o)}function Ss(e,n){const t=e[n];return t===W?void 0:t}function ek(){return this._results[Symbol.iterator]()}class Kf{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new xe)}constructor(n=!1){this._emitDistinctChangesOnly=n,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const t=Kf.prototype;t[Symbol.iterator]||(t[Symbol.iterator]=ek)}get(n){return this._results[n]}map(n){return this._results.map(n)}filter(n){return this._results.filter(n)}find(n){return this._results.find(n)}reduce(n,t){return this._results.reduce(n,t)}forEach(n){this._results.forEach(n)}some(n){return this._results.some(n)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(n,t){this.dirty=!1;const r=function yt(e){return e.flat(Number.POSITIVE_INFINITY)}(n);(this._changesDetected=!function _S(e,n,t){if(e.length!==n.length)return!1;for(let r=0;r{class e{static#e=this.__NG_ELEMENT_ID__=rk}return e})();const tk=Un,nk=class extends tk{constructor(n,t,r){super(),this._declarationLView=n,this._declarationTContainer=t,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,t){return this.createEmbeddedViewImpl(n,t)}createEmbeddedViewImpl(n,t,r){const o=gs(this._declarationLView,this._declarationTContainer,n,{injector:t,dehydratedView:r});return new as(o)}};function rk(){return Ul(ue(),b())}function Ul(e,n){return 4&e.type?new nk(n,e,Mo(e,n)):null}class eh{constructor(n){this.queryList=n,this.matches=null}clone(){return new eh(this.queryList)}setDirty(){this.queryList.setDirty()}}class th{constructor(n=[]){this.queries=n}createEmbeddedView(n){const t=n.queries;if(null!==t){const r=null!==n.contentQueries?n.contentQueries[0]:t.length,o=[];for(let i=0;i0)r.push(s[a/2]);else{const c=i[a+1],u=n[-l];for(let d=Pe;d{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,r)=>{this.resolve=t,this.reject=r}),this.appInits=A(ch,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const i=o();if(Is(i))t.push(i);else if(rD(i)){const s=new Promise((a,l)=>{i.subscribe({complete:a,error:l})});t.push(s)}}const r=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{r()}).catch(o=>{this.reject(o)}),0===t.length&&r(),this.initialized=!0}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Cw=(()=>{class e{log(t){console.log(t)}warn(t){console.warn(t)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();const Bn=new N("LocaleId",{providedIn:"root",factory:()=>A(Bn,X.Optional|X.SkipSelf)||function Ok(){return typeof $localize<"u"&&$localize.locale||Zo}()});let $l=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new kt(!1)}add(){this.hasPendingTasks.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),t}remove(t){this.pendingTasks.delete(t),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class jk{constructor(n,t){this.ngModuleFactory=n,this.componentFactories=t}}let ww=(()=>{class e{compileModuleSync(t){return new Qf(t)}compileModuleAsync(t){return Promise.resolve(this.compileModuleSync(t))}compileModuleAndAllComponentsSync(t){const r=this.compileModuleSync(t),i=xt(et(t).declarations).reduce((s,a)=>{const l=Q(a);return l&&s.push(new cs(l)),s},[]);return new jk(r,i)}compileModuleAndAllComponentsAsync(t){return Promise.resolve(this.compileModuleAndAllComponentsSync(t))}clearCache(){}clearCacheFor(t){}getModuleId(t){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Sw=new N(""),zl=new N("");let ph,fh=(()=>{class e{constructor(t,r,o){this._ngZone=t,this.registry=r,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,ph||(function uF(e){ph=e}(o),o.addToWindow(r)),this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(r=>!r.updateCb||!r.updateCb(t)||(clearTimeout(r.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,r,o){let i=-1;r&&r>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==i),t(this._didWork,this.getPendingTasks())},r)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:o})}whenStable(t,r,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(t,r,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,r,o){return[]}static#e=this.\u0275fac=function(r){return new(r||e)(k(ae),k(hh),k(zl))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),hh=(()=>{class e{constructor(){this._applications=new Map}registerApplication(t,r){this._applications.set(t,r)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,r=!0){return ph?.findTestabilityInTree(this,t,r)??null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),ar=null;const gh=new N("PlatformDestroyListeners"),mh=new N("appBootstrapListener");function gF(e){try{const{rootComponent:n,appProviders:t,platformProviders:r}=e,o=function pF(e=[]){if(ar)return ar;const n=function Nw(e=[],n){return _t.create({name:n,providers:[{provide:hd,useValue:"platform"},{provide:gh,useValue:new Set([()=>ar=null])},...e]})}(e);return ar=n,function Aw(){!function HM(e){pg=e}(()=>{throw new M(600,!1)})}(),function xw(e){e.get(vv,null)?.forEach(t=>t())}(n),n}(r),i=[CF(),...t||[]],a=new LD({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ae);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(Ln,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(gh);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function Pw(e,n,t){try{const r=t();return Is(r)?r.catch(o=>{throw n.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw n.runOutsideAngular(()=>e.handleError(r)),r}}(c,l,()=>{const m=a.get(uh);return m.runInitializers(),m.donePromise.then(()=>{!function OC(e){gt(e,"Expected localeId to be defined"),"string"==typeof e&&(RC=e.toLowerCase().replace(/_/g,"-"))}(a.get(Bn,Zo)||Zo);const _=a.get(Xo);return void 0!==n&&_.bootstrap(n),_})})})}catch(n){return Promise.reject(n)}}let Xo=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(Lw),this.zoneIsStable=A(t_),this.componentTypes=[],this.components=[],this.isStable=A($l).hasPendingTasks.pipe(Ft(t=>t?F(!1):this.zoneIsStable),function B1(e,n=qn){return e=e??$1,$e((t,r)=>{let o,i=!0;t.subscribe(Ve(r,s=>{const a=n(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),$g()),this._injector=A(At)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(t,r){const o=t instanceof py;if(!this._injector.get(uh).done)throw!o&&function Qn(e){const n=Q(e)||Ge(e)||Je(e);return null!==n&&n.standalone}(t),new M(405,!1);let s;s=o?t:this._injector.get(dl).resolveComponentFactory(t),this.componentTypes.push(s.componentType);const a=function fF(e){return e.isBoundToModule}(s)?void 0:this._injector.get(kr),c=s.create(_t.NULL,[],r||s.selector,a),u=c.location.nativeElement,d=c.injector.get(Sw,null);return d?.registerApplication(u),c.onDestroy(()=>{this.detachView(c.hostView),ql(this.components,c),d?.unregisterApplication(u)}),this._loadComponent(c),c}tick(){if(this._runningTick)throw new M(101,!1);try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this.internalErrorHandler(t)}finally{this._runningTick=!1}}attachView(t){const r=t;this._views.push(r),r.attachToAppRef(this)}detachView(t){const r=t;ql(this._views,r),r.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t);const r=this._injector.get(mh,[]);[...this._bootstrapListeners,...r].forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>ql(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new M(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function ql(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}const Lw=new N("",{providedIn:"root",factory:()=>A(Ln).handleError.bind(void 0)});function yF(){const e=A(ae),n=A(Ln);return t=>e.runOutsideAngular(()=>n.handleError(t))}let _F=(()=>{class e{constructor(){this.zone=A(ae),this.applicationRef=A(Xo)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Vw(e){return[{provide:ae,useFactory:e},{provide:vo,multi:!0,useFactory:()=>{const n=A(_F,{optional:!0});return()=>n.initialize()}},{provide:Lw,useFactory:yF},{provide:t_,useFactory:n_}]}function CF(e){return ud([[],Vw(()=>new ae(function Ow(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let MF=(()=>{class e{constructor(t){}static#e=this.\u0275fac=function(r){return new(r||e)(k(Xo))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Ko(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ye_apiBaseUrl="https://www.palmmedia.de/api/";let Sh=null;function lr(){return Sh}class QF{}const ft=new N("DocumentToken");let Th=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(JF),providedIn:"platform"})}return e})();const XF=new N("Location Initialized");let JF=(()=>{class e extends Th{constructor(){super(),this._doc=A(ft),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return lr().getBaseHref(this._doc)}onPopState(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",t,!1),()=>r.removeEventListener("popstate",t)}onHashChange(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",t,!1),()=>r.removeEventListener("hashchange",t)}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(t){this._location.pathname=t}pushState(t,r,o){this._history.pushState(t,r,o)}replaceState(t,r,o){this._history.replaceState(t,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new e,providedIn:"platform"})}return e})();function Ah(e,n){if(0==e.length)return n;if(0==n.length)return e;let t=0;return e.endsWith("/")&&t++,n.startsWith("/")&&t++,2==t?e+n.substring(1):1==t?e+n:e+"/"+n}function ab(e){const n=e.match(/#|\?|$/),t=n&&n.index||e.length;return e.slice(0,t-("/"===e[t-1]?1:0))+e.slice(t)}function $n(e){return e&&"?"!==e[0]?"?"+e:e}let Lr=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(cb),providedIn:"root"})}return e})();const lb=new N("appBaseHref");let cb=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??A(ft).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return Ah(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+$n(this._platformLocation.search),o=this._platformLocation.hash;return o&&t?`${r}${o}`:r}pushState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(lb,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),KF=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._baseHref="",this._removeListenerFns=[],null!=r&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){let r=this._platformLocation.hash;return null==r&&(r="#"),r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ah(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(lb,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),Os=(()=>{class e{constructor(t){this._subject=new xe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=t;const r=this._locationStrategy.getBaseHref();this._basePath=function n2(e){if(new RegExp("^(https?:)?//").test(e)){const[,t]=e.split(/\/\/[^\/]+/);return t}return e}(ab(ub(r))),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(t=!1){return this.normalize(this._locationStrategy.path(t))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(t,r=""){return this.path()==this.normalize(t+$n(r))}normalize(t){return e.stripTrailingSlash(function t2(e,n){if(!e||!n.startsWith(e))return n;const t=n.substring(e.length);return""===t||["/",";","?","#"].includes(t[0])?t:n}(this._basePath,ub(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._locationStrategy.prepareExternalUrl(t)}go(t,r="",o=null){this._locationStrategy.pushState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}replaceState(t,r="",o=null){this._locationStrategy.replaceState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(t=0){this._locationStrategy.historyGo?.(t)}onUrlChange(t){return this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)})),()=>{const r=this._urlChangeListeners.indexOf(t);this._urlChangeListeners.splice(r,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(t="",r){this._urlChangeListeners.forEach(o=>o(t,r))}subscribe(t,r,o){return this._subject.subscribe({next:t,error:r,complete:o})}static#e=this.normalizeQueryParams=$n;static#t=this.joinWithSlash=Ah;static#n=this.stripTrailingSlash=ab;static#r=this.\u0275fac=function(r){return new(r||e)(k(Lr))};static#o=this.\u0275prov=O({token:e,factory:()=>function e2(){return new Os(k(Lr))}(),providedIn:"root"})}return e})();function ub(e){return e.replace(/\/index.html$/,"")}function _b(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const r=t.indexOf("="),[o,i]=-1==r?[t,""]:[t.slice(0,r),t.slice(r+1)];if(o.trim()===n)return decodeURIComponent(i)}return null}const jh=/\s+/,Cb=[];let uc=(()=>{class e{constructor(t,r,o,i){this._iterableDiffers=t,this._keyValueDiffers=r,this._ngEl=o,this._renderer=i,this.initialClasses=Cb,this.stateMap=new Map}set klass(t){this.initialClasses=null!=t?t.trim().split(jh):Cb}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split(jh):t}ngDoCheck(){for(const r of this.initialClasses)this._updateState(r,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const r of t)this._updateState(r,!0);else if(null!=t)for(const r of Object.keys(t))this._updateState(r,!!t[r]);this._applyStateDiff()}_updateState(t,r){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(t,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const r=t[0],o=t[1];o.changed?(this._toggleClass(r,o.enabled),o.changed=!1):o.touched||(o.enabled&&this._toggleClass(r,!1),this.stateMap.delete(r)),o.touched=!1}}_toggleClass(t,r){(t=t.trim()).length>0&&t.split(jh).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static#e=this.\u0275fac=function(r){return new(r||e)(S(hl),S(rs),S(Nt),S(Fn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return e})();class U2{constructor(n,t,r,o){this.$implicit=n,this.ngForOf=t,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Hh=(()=>{class e{set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}constructor(t,r,o){this._viewContainer=t,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const t=this._ngForOf;!this._differ&&t&&(this._differ=this._differs.find(t).create(this.ngForTrackBy))}if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const r=this._viewContainer;t.forEachOperation((o,i,s)=>{if(null==o.previousIndex)r.createEmbeddedView(this._template,new U2(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)r.remove(null===i?void 0:i);else if(null!==i){const a=r.get(i);r.move(a,s),wb(a,o)}});for(let o=0,i=r.length;o{wb(r.get(o.currentIndex),o)})}static ngTemplateContextGuard(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un),S(hl))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return e})();function wb(e,n){e.context.$implicit=n.item}let Uh=(()=>{class e{constructor(t,r){this._viewContainer=t,this._context=new B2,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){bb("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){bb("ngIfElse",t),this._elseTemplateRef=t,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(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return e})();class B2{constructor(){this.$implicit=null,this.ngIf=null}}function bb(e,n){if(n&&!n.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${je(n)}'.`)}let pL=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Sb(e){return"server"===e}let yL=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new _L(k(ft),window)})}return e})();class _L{constructor(n,t){this.document=n,this.window=t,this.offset=()=>[0,0]}setOffset(n){this.offset=Array.isArray(n)?()=>n:n}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(n){this.supportsScrolling()&&this.window.scrollTo(n[0],n[1])}scrollToAnchor(n){if(!this.supportsScrolling())return;const t=function CL(e,n){const t=e.getElementById(n)||e.getElementsByName(n)[0];if(t)return t;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const r=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=r.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(n)||i.querySelector(`[name="${n}"]`);if(s)return s}o=r.nextNode()}}return null}(this.document,n);t&&(this.scrollToElement(t),t.focus())}setHistoryScrollRestoration(n){this.supportsScrolling()&&(this.window.history.scrollRestoration=n)}scrollToElement(n){const t=n.getBoundingClientRect(),r=t.left+this.window.pageXOffset,o=t.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(r-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class Tb{}const{isArray:GL}=Array,{getPrototypeOf:zL,prototype:qL,keys:WL}=Object;function Rb(e){if(1===e.length){const n=e[0];if(GL(n))return{args:n,keys:null};if(function ZL(e){return e&&"object"==typeof e&&zL(e)===qL}(n)){const t=WL(n);return{args:t.map(r=>n[r]),keys:t}}}return{args:e,keys:null}}const{isArray:YL}=Array;function Ob(e){return K(n=>function QL(e,n){return YL(n)?e(...n):e(n)}(e,n))}function Pb(e,n){return e.reduce((t,r,o)=>(t[r]=n[o],t),{})}function Zh(...e){const n=Ei(e),t=jg(e),{args:r,keys:o}=Rb(e);if(0===r.length)return Oe([],n);const i=new Te(function XL(e,n,t=qn){return r=>{kb(n,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Oe(e[l],n);let u=!1;c.subscribe(Ve(r,d=>{i[l]=d,u||(u=!0,a--),a||r.next(t(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}(r,n,o?s=>Pb(o,s):qn));return t?i.pipe(Ob(t)):i}function kb(e,n,t){e?An(t,e,n):n()}const hc=iu(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Yh(...e){return function JL(){return Yr(1)}()(Oe(e,Ei(e)))}function Fb(e){return new Te(n=>{qt(e()).subscribe(n)})}function pc(e,n){const t=Ce(e)?e:()=>e,r=o=>o.error(t());return new Te(n?o=>n.schedule(r,0,o):r)}function Qh(){return $e((e,n)=>{let t=null;e._refCount++;const r=Ve(n,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(t=null);const o=e._connection,i=t;t=null,o&&(!i||o===i)&&o.unsubscribe(),n.unsubscribe()});e.subscribe(r),r.closed||(t=e.connect())})}class Lb extends Te{constructor(n,t){super(),this.source=n,this.subjectFactory=t,this._subject=null,this._refCount=0,this._connection=null,Eg(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){const n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new Et;const t=this.getSubject();n.add(this.source.subscribe(Ve(t,void 0,()=>{this._teardown(),t.complete()},r=>{this._teardown(),t.error(r)},()=>this._teardown()))),n.closed&&(this._connection=null,n=Et.EMPTY)}return n}refCount(){return Qh()(this)}}function rn(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>e.call(n,i,o++)&&r.next(i)))})}function gc(e){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>{r||t.next(e),t.complete()}))})}function Vb(e=eV){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>r?t.complete():t.error(e())))})}function eV(){return new hc}function Vr(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,_r(1),t?gc(n):Vb(()=>new hc))}function ti(e,n){return Ce(n)?Xe(e,n,1):Xe(e,1)}function rt(e,n,t){const r=Ce(e)||n||t?{next:e,error:n,complete:t}:e;return r?$e((o,i)=>{var s;null===(s=r.subscribe)||void 0===s||s.call(r);let a=!0;o.subscribe(Ve(i,l=>{var c;null===(c=r.next)||void 0===c||c.call(r,l),i.next(l)},()=>{var l;a=!1,null===(l=r.complete)||void 0===l||l.call(r),i.complete()},l=>{var c;a=!1,null===(c=r.error)||void 0===c||c.call(r,l),i.error(l)},()=>{var l,c;a&&(null===(l=r.unsubscribe)||void 0===l||l.call(r)),null===(c=r.finalize)||void 0===c||c.call(r)}))}):qn}function ni(e){return $e((n,t)=>{let i,r=null,o=!1;r=n.subscribe(Ve(t,void 0,void 0,s=>{i=qt(e(s,ni(e)(n))),r?(r.unsubscribe(),r=null,i.subscribe(t)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(t))})}function Xh(e){return e<=0?()=>an:$e((n,t)=>{let r=[];n.subscribe(Ve(t,o=>{r.push(o),e{for(const o of r)t.next(o);t.complete()},void 0,()=>{r=null}))})}function Ls(e){return $e((n,t)=>{try{n.subscribe(t)}finally{t.add(e)}})}class sV extends QF{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Jh extends sV{static makeCurrent(){!function YF(e){Sh||(Sh=e)}(new Jh)}onAndCancel(n,t,r){return n.addEventListener(t,r),()=>{n.removeEventListener(t,r)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function aV(){return Vs=Vs||document.querySelector("base"),Vs?Vs.getAttribute("href"):null}();return null==t?null:function lV(e){mc=mc||document.createElement("a"),mc.setAttribute("href",e);const n=mc.pathname;return"/"===n.charAt(0)?n:`/${n}`}(t)}resetBaseElement(){Vs=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return _b(document.cookie,n)}}let mc,Vs=null,uV=(()=>{class e{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Kh=new N("EventManagerPlugins");let jb=(()=>{class e{constructor(t,r){this._zone=r,this._eventNameToPlugin=new Map,t.forEach(o=>{o.manager=this}),this._plugins=t.slice().reverse()}addEventListener(t,r,o){return this._findPluginFor(r).addEventListener(t,r,o)}getZone(){return this._zone}_findPluginFor(t){let r=this._eventNameToPlugin.get(t);if(r)return r;if(r=this._plugins.find(i=>i.supports(t)),!r)throw new M(5101,!1);return this._eventNameToPlugin.set(t,r),r}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kh),k(ae))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class Hb{constructor(n){this._doc=n}}const ep="ng-app-id";let Ub=(()=>{class e{constructor(t,r,o,i={}){this.doc=t,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Sb(i),this.resetHostNodes()}addStyles(t){for(const r of t)1===this.changeUsageCount(r,1)&&this.onStyleAdded(r)}removeStyles(t){for(const r of t)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){const t=this.styleNodesInDOM;t&&(t.forEach(r=>r.remove()),t.clear());for(const r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(t){this.hostNodes.add(t);for(const r of this.getAllStyles())this.addStyleToHost(t,r)}removeHost(t){this.hostNodes.delete(t)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(t){for(const r of this.hostNodes)this.addStyleToHost(r,t)}onStyleRemoved(t){const r=this.styleRef;r.get(t)?.elements?.forEach(o=>o.remove()),r.delete(t)}collectServerRenderedStyles(){const t=this.doc.head?.querySelectorAll(`style[${ep}="${this.appId}"]`);if(t?.length){const r=new Map;return t.forEach(o=>{null!=o.textContent&&r.set(o.textContent,o)}),r}return null}changeUsageCount(t,r){const o=this.styleRef;if(o.has(t)){const i=o.get(t);return i.usage+=r,i.usage}return o.set(t,{usage:r,elements:[]}),r}getStyleElement(t,r){const o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===t)return o.delete(r),i.removeAttribute(ep),i;{const s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(ep,this.appId),t.appendChild(s),s}}addStyleToHost(t,r){const o=this.getStyleElement(t,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){const t=this.hostNodes;t.clear(),t.add(this.doc.head)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(za),k(yv,8),k(Sr))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const tp={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/MathML/"},np=/%COMP%/g,pV=new N("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!0});function $b(e,n){return n.map(t=>t.replace(np,e))}let Gb=(()=>{class e{constructor(t,r,o,i,s,a,l,c=null){this.eventManager=t,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=Sb(a),this.defaultRenderer=new rp(t,s,l,this.platformIsServer)}createRenderer(t,r){if(!t||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Wt.ShadowDom&&(r={...r,encapsulation:Wt.Emulated});const o=this.getOrCreateRenderer(t,r);return o instanceof qb?o.applyToHost(t):o instanceof op&&o.applyStyles(),o}getOrCreateRenderer(t,r){const o=this.rendererByCompId;let i=o.get(r.id);if(!i){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Wt.Emulated:i=new qb(l,c,r,this.appId,u,s,a,d);break;case Wt.ShadowDom:return new yV(l,c,t,r,s,a,this.nonce,d);default:i=new op(l,c,r,u,s,a,d)}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(r){return new(r||e)(k(jb),k(Ub),k(za),k(pV),k(ft),k(Sr),k(ae),k(yv))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class rp{constructor(n,t,r,o){this.eventManager=n,this.doc=t,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(n,t){return t?this.doc.createElementNS(tp[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(zb(n)?n.content:n).appendChild(t)}insertBefore(n,t,r){n&&(zb(n)?n.content:n).insertBefore(t,r)}removeChild(n,t){n&&n.removeChild(t)}selectRootElement(n,t){let r="string"==typeof n?this.doc.querySelector(n):n;if(!r)throw new M(-5104,!1);return t||(r.textContent=""),r}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,r,o){if(o){t=o+":"+t;const i=tp[o];i?n.setAttributeNS(i,t,r):n.setAttribute(t,r)}else n.setAttribute(t,r)}removeAttribute(n,t,r){if(r){const o=tp[r];o?n.removeAttributeNS(o,t):n.removeAttribute(`${r}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,r,o){o&(rr.DashCase|rr.Important)?n.style.setProperty(t,r,o&rr.Important?"important":""):n.style[t]=r}removeStyle(n,t,r){r&rr.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,r){n[t]=r}setValue(n,t){n.nodeValue=t}listen(n,t,r){if("string"==typeof n&&!(n=lr().getGlobalEventTarget(this.doc,n)))throw new Error(`Unsupported event target ${n} for event ${t}`);return this.eventManager.addEventListener(n,t,this.decoratePreventDefault(r))}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>n(t)):n(t))&&t.preventDefault()}}}function zb(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class yV extends rp{constructor(n,t,r,o,i,s,a,l){super(n,i,s,l),this.sharedStylesHost=t,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=$b(o.id,o.styles);for(const u of c){const d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,r){return super.insertBefore(this.nodeOrShadowRoot(n),t,r)}removeChild(n,t){return super.removeChild(this.nodeOrShadowRoot(n),t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class op extends rp{constructor(n,t,r,o,i,s,a,l){super(n,i,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o,this.styles=l?$b(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class qb extends op{constructor(n,t,r,o,i,s,a,l){const c=o+"-"+r.id;super(n,t,r,i,s,a,l,c),this.contentAttr=function gV(e){return"_ngcontent-%COMP%".replace(np,e)}(c),this.hostAttr=function mV(e){return"_nghost-%COMP%".replace(np,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const r=super.createElement(n,t);return super.setAttribute(r,this.contentAttr,""),r}}let _V=(()=>{class e extends Hb{constructor(t){super(t)}supports(t){return!0}addEventListener(t,r,o){return t.addEventListener(r,o,!1),()=>this.removeEventListener(t,r,o)}removeEventListener(t,r,o){return t.removeEventListener(r,o)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Wb=["alt","control","meta","shift"],CV={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},DV={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let wV=(()=>{class e extends Hb{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,r,o){const i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>lr().onAndCancel(t,i.domEventName,s))}static parseEventName(t){const r=t.toLowerCase().split("."),o=r.shift();if(0===r.length||"keydown"!==o&&"keyup"!==o)return null;const i=e._normalizeKey(r.pop());let s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),Wb.forEach(c=>{const u=r.indexOf(c);u>-1&&(r.splice(u,1),s+=c+".")}),s+=i,0!=r.length||0===i.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,r){let o=CV[t.key]||t.key,i="";return r.indexOf("code.")>-1&&(o=t.code,i="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),Wb.forEach(s=>{s!==o&&(0,DV[s])(t)&&(i+=s+".")}),i+=o,i===r)}static eventCallback(t,r,o){return i=>{e.matchEventFullKeyCode(i,t)&&o.runGuarded(()=>r(i))}}static _normalizeKey(t){return"esc"===t?"escape":t}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Zb(e){return{appProviders:[...Qb,...e?.providers??[]],platformProviders:SV}}const SV=[{provide:Sr,useValue:"browser"},{provide:vv,useValue:function EV(){Jh.makeCurrent()},multi:!0},{provide:ft,useFactory:function MV(){return function JS(e){_d=e}(document),document},deps:[]}],TV=new N(""),Yb=[{provide:zl,useClass:class cV{addToWindow(n){pe.getAngularTestability=(r,o=!0)=>{const i=n.findTestabilityInTree(r,o);if(null==i)throw new M(5103,!1);return i},pe.getAllAngularTestabilities=()=>n.getAllTestabilities(),pe.getAllAngularRootElements=()=>n.getAllRootElements(),pe.frameworkStabilizers||(pe.frameworkStabilizers=[]),pe.frameworkStabilizers.push(r=>{const o=pe.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(n,t,r){return null==t?null:n.getTestability(t)??(r?lr().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}},deps:[]},{provide:Sw,useClass:fh,deps:[ae,hh,zl]},{provide:fh,useClass:fh,deps:[ae,hh,zl]}],Qb=[{provide:hd,useValue:"root"},{provide:Ln,useFactory:function IV(){return new Ln},deps:[]},{provide:Kh,useClass:_V,multi:!0,deps:[ft,ae,Sr]},{provide:Kh,useClass:wV,multi:!0,deps:[ft]},Gb,Ub,jb,{provide:my,useExisting:Gb},{provide:Tb,useClass:uV,deps:[]},[]];let AV=(()=>{class e{constructor(t){}static withServerTransition(t){return{ngModule:e,providers:[{provide:za,useValue:t.appId}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(TV,12))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({providers:[...Qb,...Yb],imports:[pL,MF]})}return e})(),Xb=(()=>{class e{constructor(t){this._doc=t}getTitle(){return this._doc.title}setTitle(t){this._doc.title=t||""}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:function(r){let o=null;return o=r?new r:function NV(){return new Xb(k(ft))}(),o},providedIn:"root"})}return e})();typeof window<"u"&&window;const Y="primary",js=Symbol("RouteTitle");class FV{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t[0]:t}return null}getAll(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t:[t]}return[]}get keys(){return Object.keys(this.params)}}function ri(e){return new FV(e)}function LV(e,n,t){const r=t.path.split("/");if(r.length>e.length||"full"===t.pathMatch&&(n.hasChildren()||r.lengthr[i]===o)}return e===n}function nE(e){return e.length>0?e[e.length-1]:null}function ur(e){return function $L(e){return!!e&&(e instanceof Te||Ce(e.lift)&&Ce(e.subscribe))}(e)?e:Is(e)?Oe(Promise.resolve(e)):F(e)}const jV={exact:function iE(e,n,t){if(!jr(e.segments,n.segments)||!vc(e.segments,n.segments,t)||e.numberOfChildren!==n.numberOfChildren)return!1;for(const r in n.children)if(!e.children[r]||!iE(e.children[r],n.children[r],t))return!1;return!0},subset:sE},rE={exact:function HV(e,n){return wn(e,n)},subset:function UV(e,n){return Object.keys(n).length<=Object.keys(e).length&&Object.keys(n).every(t=>tE(e[t],n[t]))},ignored:()=>!0};function oE(e,n,t){return jV[t.paths](e.root,n.root,t.matrixParams)&&rE[t.queryParams](e.queryParams,n.queryParams)&&!("exact"===t.fragment&&e.fragment!==n.fragment)}function sE(e,n,t){return aE(e,n,n.segments,t)}function aE(e,n,t,r){if(e.segments.length>t.length){const o=e.segments.slice(0,t.length);return!(!jr(o,t)||n.hasChildren()||!vc(o,t,r))}if(e.segments.length===t.length){if(!jr(e.segments,t)||!vc(e.segments,t,r))return!1;for(const o in n.children)if(!e.children[o]||!sE(e.children[o],n.children[o],r))return!1;return!0}{const o=t.slice(0,e.segments.length),i=t.slice(e.segments.length);return!!(jr(e.segments,o)&&vc(e.segments,o,r)&&e.children[Y])&&aE(e.children[Y],n,i,r)}}function vc(e,n,t){return n.every((r,o)=>rE[t](e[o].parameters,r.parameters))}class oi{constructor(n=new de([],{}),t={},r=null){this.root=n,this.queryParams=t,this.fragment=r}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ri(this.queryParams)),this._queryParamMap}toString(){return GV.serialize(this)}}class de{constructor(n,t){this.segments=n,this.children=t,this.parent=null,Object.values(t).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return yc(this)}}class Hs{constructor(n,t){this.path=n,this.parameters=t}get parameterMap(){return this._parameterMap||(this._parameterMap=ri(this.parameters)),this._parameterMap}toString(){return uE(this)}}function jr(e,n){return e.length===n.length&&e.every((t,r)=>t.path===n[r].path)}let ii=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new ap,providedIn:"root"})}return e})();class ap{parse(n){const t=new t3(n);return new oi(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}serialize(n){const t=`/${Us(n.root,!0)}`,r=function WV(e){const n=Object.keys(e).map(t=>{const r=e[t];return Array.isArray(r)?r.map(o=>`${_c(t)}=${_c(o)}`).join("&"):`${_c(t)}=${_c(r)}`}).filter(t=>!!t);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${t}${r}${"string"==typeof n.fragment?`#${function zV(e){return encodeURI(e)}(n.fragment)}`:""}`}}const GV=new ap;function yc(e){return e.segments.map(n=>uE(n)).join("/")}function Us(e,n){if(!e.hasChildren())return yc(e);if(n){const t=e.children[Y]?Us(e.children[Y],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==Y&&r.push(`${o}:${Us(i,!1)}`)}),r.length>0?`${t}(${r.join("//")})`:t}{const t=function $V(e,n){let t=[];return Object.entries(e.children).forEach(([r,o])=>{r===Y&&(t=t.concat(n(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==Y&&(t=t.concat(n(o,r)))}),t}(e,(r,o)=>o===Y?[Us(e.children[Y],!1)]:[`${o}:${Us(r,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[Y]?`${yc(e)}/${t[0]}`:`${yc(e)}/(${t.join("//")})`}}function lE(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function _c(e){return lE(e).replace(/%3B/gi,";")}function lp(e){return lE(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Cc(e){return decodeURIComponent(e)}function cE(e){return Cc(e.replace(/\+/g,"%20"))}function uE(e){return`${lp(e.path)}${function qV(e){return Object.keys(e).map(n=>`;${lp(n)}=${lp(e[n])}`).join("")}(e.parameters)}`}const ZV=/^[^\/()?;#]+/;function cp(e){const n=e.match(ZV);return n?n[0]:""}const YV=/^[^\/()?;=#]+/,XV=/^[^=?&#]+/,KV=/^[^&#]+/;class t3{constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new de([],{}):new de([],this.parseChildren())}parseQueryParams(){const n={};if(this.consumeOptional("?"))do{this.parseQueryParam(n)}while(this.consumeOptional("&"));return n}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(n.length>0||Object.keys(t).length>0)&&(r[Y]=new de(n,t)),r}parseSegment(){const n=cp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(n),new Hs(Cc(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const t=function QV(e){const n=e.match(YV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const o=cp(this.remaining);o&&(r=o,this.capture(r))}n[Cc(t)]=Cc(r)}parseQueryParam(n){const t=function JV(e){const n=e.match(XV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const s=function e3(e){const n=e.match(KV);return n?n[0]:""}(this.remaining);s&&(r=s,this.capture(r))}const o=cE(t),i=cE(r);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(i)}else n[o]=i}parseParens(n){const t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const r=cp(this.remaining),o=this.remaining[r.length];if("/"!==o&&")"!==o&&";"!==o)throw new M(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):n&&(i=Y);const s=this.parseChildren();t[i]=1===Object.keys(s).length?s[Y]:new de([],s),this.consumeOptional("//")}return t}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return!!this.peekStartsWith(n)&&(this.remaining=this.remaining.substring(n.length),!0)}capture(n){if(!this.consumeOptional(n))throw new M(4011,!1)}}function dE(e){return e.segments.length>0?new de([],{[Y]:e}):e}function fE(e){const n={};for(const r of Object.keys(e.children)){const i=fE(e.children[r]);if(r===Y&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))n[s]=a;else(i.segments.length>0||i.hasChildren())&&(n[r]=i)}return function n3(e){if(1===e.numberOfChildren&&e.children[Y]){const n=e.children[Y];return new de(e.segments.concat(n.segments),n.children)}return e}(new de(e.segments,n))}function Hr(e){return e instanceof oi}function hE(e){let n;const o=dE(function t(i){const s={};for(const l of i.children){const c=t(l);s[l.outlet]=c}const a=new de(i.url,s);return i===e&&(n=a),a}(e.root));return n??o}function pE(e,n,t,r){let o=e;for(;o.parent;)o=o.parent;if(0===n.length)return up(o,o,o,t,r);const i=function o3(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new mE(!0,0,e);let n=0,t=!1;const r=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?t=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new mE(t,n,r)}(n);if(i.toRoot())return up(o,o,new de([],{}),t,r);const s=function i3(e,n,t){if(e.isAbsolute)return new wc(n,!0,0);if(!t)return new wc(n,!1,NaN);if(null===t.parent)return new wc(t,!0,0);const r=Dc(e.commands[0])?0:1;return function s3(e,n,t){let r=e,o=n,i=t;for(;i>o;){if(i-=o,r=r.parent,!r)throw new M(4005,!1);o=r.segments.length}return new wc(r,!1,o-i)}(t,t.segments.length-1+r,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?$s(s.segmentGroup,s.index,i.commands):vE(s.segmentGroup,s.index,i.commands);return up(o,s.segmentGroup,a,t,r)}function Dc(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function Bs(e){return"object"==typeof e&&null!=e&&e.outlets}function up(e,n,t,r,o){let s,i={};r&&Object.entries(r).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===n?t:gE(e,n,t);const a=dE(fE(s));return new oi(a,i,o)}function gE(e,n,t){const r={};return Object.entries(e.children).forEach(([o,i])=>{r[o]=i===n?t:gE(i,n,t)}),new de(e.segments,r)}class mE{constructor(n,t,r){if(this.isAbsolute=n,this.numberOfDoubleDots=t,this.commands=r,n&&r.length>0&&Dc(r[0]))throw new M(4003,!1);const o=r.find(Bs);if(o&&o!==nE(r))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wc{constructor(n,t,r){this.segmentGroup=n,this.processChildren=t,this.index=r}}function vE(e,n,t){if(e||(e=new de([],{})),0===e.segments.length&&e.hasChildren())return $s(e,n,t);const r=function l3(e,n,t){let r=0,o=n;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=t.length)return i;const s=e.segments[o],a=t[r];if(Bs(a))break;const l=`${a}`,c=r0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!_E(l,c,s))return i;r+=2}else{if(!_E(l,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(e,n,t),o=t.slice(r.commandIndex);if(r.match&&r.pathIndexi!==Y)&&e.children[Y]&&1===e.numberOfChildren&&0===e.children[Y].segments.length){const i=$s(e.children[Y],n,t);return new de(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=vE(e.children[i],n,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===r[i]&&(o[i]=s)}),new de(e.segments,o)}}function dp(e,n,t){const r=e.segments.slice(0,n);let o=0;for(;o{"string"==typeof r&&(r=[r]),null!==r&&(n[t]=dp(new de([],{}),0,r))}),n}function yE(e){const n={};return Object.entries(e).forEach(([t,r])=>n[t]=`${r}`),n}function _E(e,n,t){return e==t.path&&wn(n,t.parameters)}const Gs="imperative";class bn{constructor(n,t){this.id=n,this.url=t}}class bc extends bn{constructor(n,t,r="imperative",o=null){super(n,t),this.type=0,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class En extends bn{constructor(n,t,r){super(n,t),this.urlAfterRedirects=r,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class si extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ai extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=16}}class Ec extends bn{constructor(n,t,r,o){super(n,t),this.error=r,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class CE extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class u3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class d3 extends bn{constructor(n,t,r,o,i){super(n,t),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class f3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class h3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class p3{constructor(n){this.route=n,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class g3{constructor(n){this.route=n,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class m3{constructor(n){this.snapshot=n,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class v3{constructor(n){this.snapshot=n,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class y3{constructor(n){this.snapshot=n,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _3{constructor(n){this.snapshot=n,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class DE{constructor(n,t,r){this.routerEvent=n,this.position=t,this.anchor=r,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class fp{}class hp{constructor(n){this.url=n}}class C3{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new zs,this.attachRef=null}}let zs=(()=>{class e{constructor(){this.contexts=new Map}onChildOutletCreated(t,r){const o=this.getOrCreateContext(t);o.outlet=r,this.contexts.set(t,o)}onChildOutletDestroyed(t){const r=this.getContext(t);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let r=this.getContext(t);return r||(r=new C3,this.contexts.set(t,r)),r}getContext(t){return this.contexts.get(t)||null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class wE{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const t=this.pathFromRoot(n);return t.length>1?t[t.length-2]:null}children(n){const t=pp(n,this._root);return t?t.children.map(r=>r.value):[]}firstChild(n){const t=pp(n,this._root);return t&&t.children.length>0?t.children[0].value:null}siblings(n){const t=gp(n,this._root);return t.length<2?[]:t[t.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return gp(n,this._root).map(t=>t.value)}}function pp(e,n){if(e===n.value)return n;for(const t of n.children){const r=pp(e,t);if(r)return r}return null}function gp(e,n){if(e===n.value)return[n];for(const t of n.children){const r=gp(e,t);if(r.length)return r.unshift(n),r}return[]}class on{constructor(n,t){this.value=n,this.children=t}toString(){return`TreeNode(${this.value})`}}function li(e){const n={};return e&&e.children.forEach(t=>n[t.value.outlet]=t),n}class bE extends wE{constructor(n,t){super(n),this.snapshot=t,yp(this,n)}toString(){return this.snapshot.toString()}}function EE(e,n){const t=function D3(e,n){const s=new vp([],{},{},"",{},Y,n,null,{});return new IE("",new on(s,[]))}(0,n),r=new kt([new Hs("",{})]),o=new kt({}),i=new kt({}),s=new kt({}),a=new kt(""),l=new Ur(r,o,s,a,i,Y,n,t.root);return l.snapshot=t.root,new bE(new on(l,[]),t)}class Ur{constructor(n,t,r,o,i,s,a,l){this.urlSubject=n,this.paramsSubject=t,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(K(c=>c[js]))??F(void 0),this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i}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._paramMap=this.params.pipe(K(n=>ri(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(n=>ri(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function mp(e,n,t="emptyOnly"){let r;const{routeConfig:o}=e;return r=null===n||"always"!==t&&""!==o?.path&&(n.component||n.routeConfig?.loadComponent)?{params:e.params,data:e.data,resolve:{...e.data,...e._resolvedData??{}}}:{params:{...n.params,...e.params},data:{...n.data,...e.data},resolve:{...e.data,...n.data,...o?.data,...e._resolvedData}},o&&SE(o)&&(r.resolve[js]=o.title),r}class vp{get title(){return this.data?.[js]}constructor(n,t,r,o,i,s,a,l,c){this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}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._paramMap=ri(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ri(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(r=>r.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class IE extends wE{constructor(n,t){super(t),this.url=n,yp(this,t)}toString(){return ME(this._root)}}function yp(e,n){n.value._routerState=e,n.children.forEach(t=>yp(e,t))}function ME(e){const n=e.children.length>0?` { ${e.children.map(ME).join(", ")} } `:"";return`${e.value}${n}`}function _p(e){if(e.snapshot){const n=e.snapshot,t=e._futureSnapshot;e.snapshot=t,wn(n.queryParams,t.queryParams)||e.queryParamsSubject.next(t.queryParams),n.fragment!==t.fragment&&e.fragmentSubject.next(t.fragment),wn(n.params,t.params)||e.paramsSubject.next(t.params),function VV(e,n){if(e.length!==n.length)return!1;for(let t=0;twn(t.parameters,n[r].parameters))}(e.url,n.url);return t&&!(!e.parent!=!n.parent)&&(!e.parent||Cp(e.parent,n.parent))}function SE(e){return"string"==typeof e.title||null===e.title}let Dp=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=Y,this.activateEvents=new xe,this.deactivateEvents=new xe,this.attachEvents=new xe,this.detachEvents=new xe,this.parentContexts=A(zs),this.location=A(en),this.changeDetector=A(ls),this.environmentInjector=A(At),this.inputBinder=A(Ic,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(t){if(t.name){const{firstChange:r,previousValue:o}=t.name;if(r)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(t){return this.parentContexts.getContext(t)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const t=this.parentContexts.getContext(this.name);t?.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.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();const t=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(t.instance),t}attach(t,r){this.activated=t,this._activatedRoute=r,this.location.insert(t.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(t.instance)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,r){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=t;const o=this.location,s=t.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new w3(t,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:l,environmentInjector:r??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Lt]})}return e})();class w3{constructor(n,t,r){this.route=n,this.childContexts=t,this.parent=r}get(n,t){return n===Ur?this.route:n===zs?this.childContexts:this.parent.get(n,t)}}const Ic=new N("");let TE=(()=>{class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(t){this.unsubscribeFromRouteData(t),this.subscribeToRouteData(t)}unsubscribeFromRouteData(t){this.outletDataSubscriptions.get(t)?.unsubscribe(),this.outletDataSubscriptions.delete(t)}subscribeToRouteData(t){const{activatedRoute:r}=t,o=Zh([r.queryParams,r.params,r.data]).pipe(Ft(([i,s,a],l)=>(a={...i,...s,...a},0===l?F(a):Promise.resolve(a)))).subscribe(i=>{if(!t.isActivated||!t.activatedComponentRef||t.activatedRoute!==r||null===r.component)return void this.unsubscribeFromRouteData(t);const s=function ZF(e){const n=Q(e);if(!n)return null;const t=new cs(n);return{get selector(){return t.selector},get type(){return t.componentType},get inputs(){return t.inputs},get outputs(){return t.outputs},get ngContentSelectors(){return t.ngContentSelectors},get isStandalone(){return n.standalone},get isSignal(){return n.signals}}}(r.component);if(s)for(const{templateName:a}of s.inputs)t.activatedComponentRef.setInput(a,i[a]);else this.unsubscribeFromRouteData(t)});this.outletDataSubscriptions.set(t,o)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function qs(e,n,t){if(t&&e.shouldReuseRoute(n.value,t.value.snapshot)){const r=t.value;r._futureSnapshot=n.value;const o=function E3(e,n,t){return n.children.map(r=>{for(const o of t.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return qs(e,r,o);return qs(e,r)})}(e,n,t);return new on(r,o)}{if(e.shouldAttach(n.value)){const i=e.retrieve(n.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>qs(e,a)),s}}const r=function I3(e){return new Ur(new kt(e.url),new kt(e.params),new kt(e.queryParams),new kt(e.fragment),new kt(e.data),e.outlet,e.component,e)}(n.value),o=n.children.map(i=>qs(e,i));return new on(r,o)}}const wp="ngNavigationCancelingError";function AE(e,n){const{redirectTo:t,navigationBehaviorOptions:r}=Hr(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,o=xE(!1,0,n);return o.url=t,o.navigationBehaviorOptions=r,o}function xE(e,n,t){const r=new Error("NavigationCancelingError: "+(e||""));return r[wp]=!0,r.cancellationCode=n,t&&(r.url=t),r}function NE(e){return e&&e[wp]}let RE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Ot],decls:1,vars:0,template:function(r,o){1&r&&y(0,"router-outlet")},dependencies:[Dp],encapsulation:2})}return e})();function bp(e){const n=e.children&&e.children.map(bp),t=n?{...e,children:n}:{...e};return!t.component&&!t.loadComponent&&(n||t.loadChildren)&&t.outlet&&t.outlet!==Y&&(t.component=RE),t}function In(e){return e.outlet||Y}function Ws(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let n=e.parent;n;n=n.parent){const t=n.routeConfig;if(t?._loadedInjector)return t._loadedInjector;if(t?._injector)return t._injector}return null}class O3{constructor(n,t,r,o,i){this.routeReuseStrategy=n,this.futureState=t,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(n){const t=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(t,r,n),_p(this.futureState.root),this.activateChildRoutes(t,r,n)}deactivateChildRoutes(n,t,r){const o=li(t);n.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(o===i)if(o.component){const s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(n,t,s.children)}else this.deactivateChildRoutes(n,t,r);else i&&this.deactivateRouteAndItsChildren(t,r)}deactivateRouteAndItsChildren(n,t){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,t):this.deactivateRouteAndOutlet(n,t)}detachAndStoreRouteSubtree(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=li(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(r&&r.outlet){const s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=li(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(n,t,r){const o=li(t);n.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new _3(i.value.snapshot))}),n.children.length&&this.forwardEvent(new v3(n.value.snapshot))}activateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(_p(o),o===i)if(o.component){const s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(n,t,s.children)}else this.activateChildRoutes(n,t,r);else if(o.component){const s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const a=this.routeReuseStrategy.retrieve(o.snapshot);this.routeReuseStrategy.store(o.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),_p(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=Ws(o.snapshot);s.attachRef=null,s.route=o,s.injector=a,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,r)}}class OE{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Mc{constructor(n,t){this.component=n,this.route=t}}function P3(e,n,t){const r=e._root;return Zs(r,n?n._root:null,t,[r.value])}function ci(e,n){const t=Symbol(),r=n.get(e,t);return r===t?"function"!=typeof e||function X1(e){return null!==pa(e)}(e)?n.get(e):e:r}function Zs(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=li(n);return e.children.forEach(s=>{(function F3(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=n?n.value:null,a=t?t.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function L3(e,n,t){if("function"==typeof t)return t(e,n);switch(t){case"pathParamsChange":return!jr(e.url,n.url);case"pathParamsOrQueryParamsChange":return!jr(e.url,n.url)||!wn(e.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Cp(e,n)||!wn(e.queryParams,n.queryParams);default:return!Cp(e,n)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new OE(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Zs(e,n,i.component?a?a.children:null:t,r,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Mc(a.outlet.component,s))}else s&&Ys(n,a,o),o.canActivateChecks.push(new OE(r)),Zs(e,null,i.component?a?a.children:null:t,r,o)})(s,i[s.value.outlet],t,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Ys(a,t.getContext(s),o)),o}function Ys(e,n,t){const r=li(e),o=e.value;Object.entries(r).forEach(([i,s])=>{Ys(s,o.component?n?n.children.getContext(i):null:n,t)}),t.canDeactivateChecks.push(new Mc(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}function Qs(e){return"function"==typeof e}function PE(e){return e instanceof hc||"EmptyError"===e?.name}const Sc=Symbol("INITIAL_VALUE");function ui(){return Ft(e=>Zh(e.map(n=>n.pipe(_r(1),function KL(...e){const n=Ei(e);return $e((t,r)=>{(n?Yh(e,t,n):Yh(e,t)).subscribe(r)})}(Sc)))).pipe(K(n=>{for(const t of n)if(!0!==t){if(t===Sc)return Sc;if(!1===t||t instanceof oi)return t}return!0}),rn(n=>n!==Sc),_r(1)))}function kE(e){return function JM(...e){return Dg(e)}(rt(n=>{if(Hr(n))throw AE(0,n)}),K(n=>!0===n))}class Ep{constructor(n){this.segmentGroup=n||null}}class Ip extends Error{constructor(n){super(),this.urlTree=n}}function di(e){return pc(new Ep(e))}class rj{constructor(n,t){this.urlSerializer=n,this.urlTree=t}noMatchError(n){return new M(4002,!1)}lineralizeSegments(n,t){let r=[],o=t.root;for(;;){if(r=r.concat(o.segments),0===o.numberOfChildren)return F(r);if(o.numberOfChildren>1||!o.children[Y])return pc(new M(4e3,!1));o=o.children[Y]}}applyRedirectCommands(n,t,r){const o=this.applyRedirectCreateUrlTree(t,this.urlSerializer.parse(t),n,r);if(t.startsWith("/"))throw new Ip(o);return o}applyRedirectCreateUrlTree(n,t,r,o){const i=this.createSegmentGroup(n,t.root,r,o);return new oi(i,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}createQueryParams(n,t){const r={};return Object.entries(n).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);r[o]=t[a]}else r[o]=i}),r}createSegmentGroup(n,t,r,o){const i=this.createSegments(n,t.segments,r,o);let s={};return Object.entries(t.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,r,o)}),new de(i,s)}createSegments(n,t,r,o){return t.map(i=>i.path.startsWith(":")?this.findPosParam(n,i,o):this.findOrReturn(i,r))}findPosParam(n,t,r){const o=r[t.path.substring(1)];if(!o)throw new M(4001,!1);return o}findOrReturn(n,t){let r=0;for(const o of t){if(o.path===n.path)return t.splice(r),o;r++}return n}}const Mp={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function oj(e,n,t,r,o){const i=Sp(e,n,t);return i.matched?(r=function S3(e,n){return e.providers&&!e._injector&&(e._injector=Xf(e.providers,n,`Route: ${e.path}`)),e._injector??n}(n,r),function ej(e,n,t,r){const o=n.canMatch;return o&&0!==o.length?F(o.map(s=>{const a=ci(s,e);return ur(function $3(e){return e&&Qs(e.canMatch)}(a)?a.canMatch(n,t):e.runInContext(()=>a(n,t)))})).pipe(ui(),kE()):F(!0)}(r,n,t).pipe(K(s=>!0===s?i:{...Mp}))):F(i)}function Sp(e,n,t){if(""===n.path)return"full"===n.pathMatch&&(e.hasChildren()||t.length>0)?{...Mp}:{matched:!0,consumedSegments:[],remainingSegments:t,parameters:{},positionalParamSegments:{}};const o=(n.matcher||LV)(t,e,n);if(!o)return{...Mp};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:t.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function FE(e,n,t,r){return t.length>0&&function aj(e,n,t){return t.some(r=>Tc(e,n,r)&&In(r)!==Y)}(e,t,r)?{segmentGroup:new de(n,sj(r,new de(t,e.children))),slicedSegments:[]}:0===t.length&&function lj(e,n,t){return t.some(r=>Tc(e,n,r))}(e,t,r)?{segmentGroup:new de(e.segments,ij(e,0,t,r,e.children)),slicedSegments:t}:{segmentGroup:new de(e.segments,e.children),slicedSegments:t}}function ij(e,n,t,r,o){const i={};for(const s of r)if(Tc(e,t,s)&&!o[In(s)]){const a=new de([],{});i[In(s)]=a}return{...o,...i}}function sj(e,n){const t={};t[Y]=n;for(const r of e)if(""===r.path&&In(r)!==Y){const o=new de([],{});t[In(r)]=o}return t}function Tc(e,n,t){return(!(e.hasChildren()||n.length>0)||"full"!==t.pathMatch)&&""===t.path}class dj{}class pj{constructor(n,t,r,o,i,s,a){this.injector=n,this.configLoader=t,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new rj(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(n){return new M(4002,!1)}recognize(){const n=FE(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(K(t=>{const r=new vp([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},Y,this.rootComponentType,null,{}),o=new on(r,t),i=new IE("",o),s=function r3(e,n,t=null,r=null){return pE(hE(e),n,t,r)}(r,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),this.inheritParamsAndData(i._root,null),{state:i,tree:s}}))}match(n){return this.processSegmentGroup(this.injector,this.config,n,Y).pipe(ni(r=>{if(r instanceof Ip)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof Ep?this.noMatchError(r):r}))}inheritParamsAndData(n,t){const r=n.value,o=mp(r,t,this.paramsInheritanceStrategy);r.params=Object.freeze(o.params),r.data=Object.freeze(o.data),n.children.forEach(i=>this.inheritParamsAndData(i,r))}processSegmentGroup(n,t,r,o){return 0===r.segments.length&&r.hasChildren()?this.processChildren(n,t,r):this.processSegment(n,t,r,r.segments,o,!0).pipe(K(i=>i instanceof on?[i]:[]))}processChildren(n,t,r){const o=[];for(const i of Object.keys(r.children))"primary"===i?o.unshift(i):o.push(i);return Oe(o).pipe(ti(i=>{const s=r.children[i],a=function N3(e,n){const t=e.filter(r=>In(r)===n);return t.push(...e.filter(r=>In(r)!==n)),t}(t,i);return this.processSegmentGroup(n,a,s,i)}),function nV(e,n){return $e(function tV(e,n,t,r,o){return(i,s)=>{let a=t,l=n,c=0;i.subscribe(Ve(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),r&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,n,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),gc(null),function rV(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,Xh(1),t?gc(n):Vb(()=>new hc))}(),Xe(i=>{if(null===i)return di(r);const s=LE(i);return function gj(e){e.sort((n,t)=>n.value.outlet===Y?-1:t.value.outlet===Y?1:n.value.outlet.localeCompare(t.value.outlet))}(s),F(s)}))}processSegment(n,t,r,o,i,s){return Oe(t).pipe(ti(a=>this.processSegmentAgainstRoute(a._injector??n,t,a,r,o,i,s).pipe(ni(l=>{if(l instanceof Ep)return F(null);throw l}))),Vr(a=>!!a),ni(a=>{if(PE(a))return function uj(e,n,t){return 0===n.length&&!e.children[t]}(r,o,i)?F(new dj):di(r);throw a}))}processSegmentAgainstRoute(n,t,r,o,i,s,a){return function cj(e,n,t,r){return!!(In(e)===r||r!==Y&&Tc(n,t,e))&&("**"===e.path||Sp(n,e,t).matched)}(r,o,i,s)?void 0===r.redirectTo?this.matchSegmentAgainstRoute(n,o,r,i,s):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,o,t,r,i,s):di(o):di(o)}expandSegmentAgainstRouteUsingRedirect(n,t,r,o,i,s){const{matched:a,consumedSegments:l,positionalParamSegments:c,remainingSegments:u}="**"===o.path?VE(i):Sp(t,o,i);if(!a)return di(t);o.redirectTo.startsWith("/")&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>31&&(this.allowRedirects=!1));const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,c);return this.applyRedirects.lineralizeSegments(o,d).pipe(Xe(g=>this.processSegment(n,r,t,g.concat(u),s,!1)))}matchSegmentAgainstRoute(n,t,r,o,i){let s;return"**"===r.path?(s=F(VE(o)),t.children={}):s=oj(t,r,o,n),s.pipe(Ft(a=>a.matched?this.getChildConfig(n=r._injector??n,r,o).pipe(Ft(({routes:l})=>{const c=r._loadedInjector??n,{consumedSegments:u,remainingSegments:d,parameters:g}=a,m=new vp(u,g,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,function vj(e){return e.data||{}}(r),In(r),r.component??r._loadedComponent??null,r,function yj(e){return e.resolve||{}}(r)),{segmentGroup:v,slicedSegments:_}=FE(t,u,d,l);if(0===_.length&&v.hasChildren())return this.processChildren(c,l,v).pipe(K(I=>null===I?null:new on(m,I)));if(0===l.length&&0===_.length)return F(new on(m,[]));const D=In(r)===i;return this.processSegment(c,l,v,_,D?Y:i,!0).pipe(K(I=>new on(m,I instanceof on?[I]:[])))})):di(t)))}getChildConfig(n,t,r){return t.children?F({routes:t.children,injector:n}):t.loadChildren?void 0!==t._loadedRoutes?F({routes:t._loadedRoutes,injector:t._loadedInjector}):function K3(e,n,t,r){const o=n.canLoad;return void 0===o||0===o.length?F(!0):F(o.map(s=>{const a=ci(s,e);return ur(function j3(e){return e&&Qs(e.canLoad)}(a)?a.canLoad(n,t):e.runInContext(()=>a(n,t)))})).pipe(ui(),kE())}(n,t,r).pipe(Xe(o=>o?this.configLoader.loadChildren(n,t).pipe(rt(i=>{t._loadedRoutes=i.routes,t._loadedInjector=i.injector})):function nj(e){return pc(xE(!1,3))}())):F({routes:[],injector:n})}}function mj(e){const n=e.value.routeConfig;return n&&""===n.path}function LE(e){const n=[],t=new Set;for(const r of e){if(!mj(r)){n.push(r);continue}const o=n.find(i=>r.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...r.children),t.add(o)):n.push(r)}for(const r of t){const o=LE(r.children);n.push(new on(r.value,o))}return n.filter(r=>!t.has(r))}function VE(e){return{matched:!0,parameters:e.length>0?nE(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function Cj(e,n){return Xe(t=>{const{targetSnapshot:r,guards:{canActivateChecks:o}}=t;if(!o.length)return F(t);const i=o.map(c=>c.route),s=new Set(i),a=jE(i[0].parent).slice(1);let l=0;return Oe(a).pipe(ti(c=>s.has(c)?function Dj(e,n,t,r){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!SE(o)&&(i[js]=o.title),function wj(e,n,t,r){const o=sp(e);if(0===o.length)return F({});const i={};return Oe(o).pipe(Xe(s=>function bj(e,n,t,r){const o=Ws(n)??r,i=ci(e,o);return ur(i.resolve?i.resolve(n,t):o.runInContext(()=>i(n,t)))}(e[s],n,t,r).pipe(Vr(),rt(a=>{i[s]=a}))),Xh(1),function oV(e){return K(()=>e)}(i),ni(s=>PE(s)?an:pc(s)))}(i,e,n,r).pipe(K(s=>(e._resolvedData=s,e.data=mp(e,e.parent,t).resolve,null)))}(c,r,e,n):(c.data=mp(c,c.parent,e).resolve,F(void 0))),rt(()=>l++),Xh(1),Xe(c=>l===a.length?F(t):an))})}function jE(e){const n=e.children.map(t=>jE(t)).flat();return[e,...n]}function Tp(e){return Ft(n=>{const t=e(n);return t?Oe(t).pipe(K(()=>n)):F(n)})}let HE=(()=>{class e{buildTitle(t){let r,o=t.root;for(;void 0!==o;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===Y);return r}getResolvedTitleForRoute(t){return t.data[js]}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Ej),providedIn:"root"})}return e})(),Ej=(()=>{class e extends HE{constructor(t){super(),this.title=t}updateTitle(t){const r=this.buildTitle(t);void 0!==r&&this.title.setTitle(r)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Xb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const fi=new N("",{providedIn:"root",factory:()=>({})}),hi=new N("ROUTES");let Ap=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(ww)}loadComponent(t){if(this.componentLoaders.get(t))return this.componentLoaders.get(t);if(t._loadedComponent)return F(t._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(t);const r=ur(t.loadComponent()).pipe(K(UE),rt(i=>{this.onLoadEndListener&&this.onLoadEndListener(t),t._loadedComponent=i}),Ls(()=>{this.componentLoaders.delete(t)})),o=new Lb(r,()=>new zt).pipe(Qh());return this.componentLoaders.set(t,o),o}loadChildren(t,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return F({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);const i=function Ij(e,n,t,r){return ur(e.loadChildren()).pipe(K(UE),Xe(o=>o instanceof FD||Array.isArray(o)?F(o):Oe(n.compileModuleAsync(o))),K(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(t).injector,s=i.get(hi,[],{optional:!0,self:!0}).flat()),{routes:s.map(bp),injector:i}}))}(r,this.compiler,t,this.onLoadEndListener).pipe(Ls(()=>{this.childrenLoaders.delete(r)})),s=new Lb(i,()=>new zt).pipe(Qh());return this.childrenLoaders.set(r,s),s}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function UE(e){return function Mj(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let xp=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Sj),providedIn:"root"})}return e})(),Sj=(()=>{class e{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const BE=new N(""),$E=new N("");function Tj(e,n,t){const r=e.get($E),o=e.get(ft);return e.get(ae).runOutsideAngular(()=>{if(!o.startViewTransition||r.skipNextTransition)return r.skipNextTransition=!1,Promise.resolve();let i;const s=new Promise(c=>{i=c}),a=o.startViewTransition(()=>(i(),function Aj(e){return new Promise(n=>{i_(n,{injector:e})})}(e))),{onViewTransitionCreated:l}=r;return l&&function GS(e,n){e instanceof Mr&&e.assertNotDestroyed();const r=Yn(e),o=mt(void 0);try{return n()}finally{Yn(r),mt(o)}}(e,()=>l({transition:a,from:n,to:t})),s})}let Ac=(()=>{class e{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new zt,this.transitionAbortSubject=new zt,this.configLoader=A(Ap),this.environmentInjector=A(At),this.urlSerializer=A(ii),this.rootContexts=A(zs),this.location=A(Os),this.inputBindingEnabled=null!==A(Ic,{optional:!0}),this.titleStrategy=A(HE),this.options=A(fi,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=A(xp),this.createViewTransition=A(BE,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>F(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=o=>this.events.next(new g3(o)),this.configLoader.onLoadStartListener=o=>this.events.next(new p3(o))}complete(){this.transitions?.complete()}handleNavigationRequest(t){const r=++this.navigationId;this.transitions?.next({...this.transitions.value,...t,id:r})}setupNavigations(t,r,o){return this.transitions=new kt({id:0,currentUrlTree:r,currentRawUrl:r,extractedUrl:this.urlHandlingStrategy.extract(r),urlAfterRedirects:this.urlHandlingStrategy.extract(r),rawUrl:r,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:Gs,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(rn(i=>0!==i.id),K(i=>({...i,extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Ft(i=>{this.currentTransition=i;let s=!1,a=!1;return F(i).pipe(rt(l=>{this.currentNavigation={id:l.id,initialUrl:l.rawUrl,extractedUrl:l.extractedUrl,trigger:l.source,extras:l.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ft(l=>{const c=!t.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl();if(!c&&"reload"!==(l.extras.onSameUrlNavigation??t.onSameUrlNavigation)){const d="";return this.events.next(new ai(l.id,this.urlSerializer.serialize(l.rawUrl),d,0)),l.resolve(null),an}if(this.urlHandlingStrategy.shouldProcessUrl(l.rawUrl))return F(l).pipe(Ft(d=>{const g=this.transitions?.getValue();return this.events.next(new bc(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),g!==this.transitions?.getValue()?an:Promise.resolve(d)}),function _j(e,n,t,r,o,i){return Xe(s=>function fj(e,n,t,r,o,i,s="emptyOnly"){return new pj(e,n,t,r,o,s,i).recognize()}(e,n,t,r,s.extractedUrl,o,i).pipe(K(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,t.config,this.urlSerializer,this.paramsInheritanceStrategy),rt(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:d.urlAfterRedirects};const g=new CE(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(g)}));if(c&&this.urlHandlingStrategy.shouldProcessUrl(l.currentRawUrl)){const{id:d,extractedUrl:g,source:m,restoredState:v,extras:_}=l,D=new bc(d,this.urlSerializer.serialize(g),m,v);this.events.next(D);const I=EE(0,this.rootComponentType).snapshot;return this.currentTransition=i={...l,targetSnapshot:I,urlAfterRedirects:g,extras:{..._,skipLocationChange:!1,replaceUrl:!1}},this.currentNavigation.finalUrl=g,F(i)}{const d="";return this.events.next(new ai(l.id,this.urlSerializer.serialize(l.extractedUrl),d,1)),l.resolve(null),an}}),rt(l=>{const c=new u3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(c)}),K(l=>(this.currentTransition=i={...l,guards:P3(l.targetSnapshot,l.currentSnapshot,this.rootContexts)},i)),function z3(e,n){return Xe(t=>{const{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=t;return 0===s.length&&0===i.length?F({...t,guardsResult:!0}):function q3(e,n,t,r){return Oe(e).pipe(Xe(o=>function J3(e,n,t,r,o){const i=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return i&&0!==i.length?F(i.map(a=>{const l=Ws(n)??o,c=ci(a,l);return ur(function B3(e){return e&&Qs(e.canDeactivate)}(c)?c.canDeactivate(e,n,t,r):l.runInContext(()=>c(e,n,t,r))).pipe(Vr())})).pipe(ui()):F(!0)}(o.component,o.route,t,n,r)),Vr(o=>!0!==o,!0))}(s,r,o,e).pipe(Xe(a=>a&&function V3(e){return"boolean"==typeof e}(a)?function W3(e,n,t,r){return Oe(n).pipe(ti(o=>Yh(function Y3(e,n){return null!==e&&n&&n(new m3(e)),F(!0)}(o.route.parent,r),function Z3(e,n){return null!==e&&n&&n(new y3(e)),F(!0)}(o.route,r),function X3(e,n,t){const r=n[n.length-1],i=n.slice(0,n.length-1).reverse().map(s=>function k3(e){const n=e.routeConfig?e.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:e,guards:n}:null}(s)).filter(s=>null!==s).map(s=>Fb(()=>F(s.guards.map(l=>{const c=Ws(s.node)??t,u=ci(l,c);return ur(function U3(e){return e&&Qs(e.canActivateChild)}(u)?u.canActivateChild(r,e):c.runInContext(()=>u(r,e))).pipe(Vr())})).pipe(ui())));return F(i).pipe(ui())}(e,o.path,t),function Q3(e,n,t){const r=n.routeConfig?n.routeConfig.canActivate:null;if(!r||0===r.length)return F(!0);const o=r.map(i=>Fb(()=>{const s=Ws(n)??t,a=ci(i,s);return ur(function H3(e){return e&&Qs(e.canActivate)}(a)?a.canActivate(n,e):s.runInContext(()=>a(n,e))).pipe(Vr())}));return F(o).pipe(ui())}(e,o.route,t))),Vr(o=>!0!==o,!0))}(r,i,e,n):F(a)),K(a=>({...t,guardsResult:a})))})}(this.environmentInjector,l=>this.events.next(l)),rt(l=>{if(i.guardsResult=l.guardsResult,Hr(l.guardsResult))throw AE(0,l.guardsResult);const c=new d3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot,!!l.guardsResult);this.events.next(c)}),rn(l=>!!l.guardsResult||(this.cancelNavigationTransition(l,"",3),!1)),Tp(l=>{if(l.guards.canActivateChecks.length)return F(l).pipe(rt(c=>{const u=new f3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),Ft(c=>{let u=!1;return F(c).pipe(Cj(this.paramsInheritanceStrategy,this.environmentInjector),rt({next:()=>u=!0,complete:()=>{u||this.cancelNavigationTransition(c,"",2)}}))}),rt(c=>{const u=new h3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}))}),Tp(l=>{const c=u=>{const d=[];u.routeConfig?.loadComponent&&!u.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(u.routeConfig).pipe(rt(g=>{u.component=g}),K(()=>{})));for(const g of u.children)d.push(...c(g));return d};return Zh(c(l.targetSnapshot.root)).pipe(gc(),_r(1))}),Tp(()=>this.afterPreactivation()),Ft(()=>{const{currentSnapshot:l,targetSnapshot:c}=i,u=this.createViewTransition?.(this.environmentInjector,l.root,c.root);return u?Oe(u).pipe(K(()=>i)):F(i)}),K(l=>{const c=function b3(e,n,t){const r=qs(e,n._root,t?t._root:void 0);return new bE(r,n)}(t.routeReuseStrategy,l.targetSnapshot,l.currentRouterState);return this.currentTransition=i={...l,targetRouterState:c},this.currentNavigation.targetRouterState=c,i}),rt(()=>{this.events.next(new fp)}),((e,n,t,r)=>K(o=>(new O3(n,o.targetRouterState,o.currentRouterState,t,r).activate(e),o)))(this.rootContexts,t.routeReuseStrategy,l=>this.events.next(l),this.inputBindingEnabled),_r(1),rt({next:l=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new En(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects))),this.titleStrategy?.updateTitle(l.targetRouterState.snapshot),l.resolve(!0)},complete:()=>{s=!0}}),function iV(e){return $e((n,t)=>{qt(e).subscribe(Ve(t,()=>t.complete(),lu)),!t.closed&&n.subscribe(t)})}(this.transitionAbortSubject.pipe(rt(l=>{throw l}))),Ls(()=>{s||a||this.cancelNavigationTransition(i,"",1),this.currentNavigation?.id===i.id&&(this.currentNavigation=null)}),ni(l=>{if(a=!0,NE(l))this.events.next(new si(i.id,this.urlSerializer.serialize(i.extractedUrl),l.message,l.cancellationCode)),function M3(e){return NE(e)&&Hr(e.url)}(l)?this.events.next(new hp(l.url)):i.resolve(!1);else{this.events.next(new Ec(i.id,this.urlSerializer.serialize(i.extractedUrl),l,i.targetSnapshot??void 0));try{i.resolve(t.errorHandler(l))}catch(c){i.reject(c)}}return an}))}))}cancelNavigationTransition(t,r,o){const i=new si(t.id,this.urlSerializer.serialize(t.extractedUrl),r,o);this.events.next(i),t.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){return this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))).toString()!==this.currentTransition?.extractedUrl.toString()&&!this.currentTransition?.extras.skipLocationChange}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function xj(e){return e!==Gs}let Nj=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Oj),providedIn:"root"})}return e})();class Rj{shouldDetach(n){return!1}store(n,t){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,t){return n.routeConfig===t.routeConfig}}let Oj=(()=>{class e extends Rj{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),GE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Pj),providedIn:"root"})}return e})(),Pj=(()=>{class e extends GE{constructor(){super(...arguments),this.location=A(Os),this.urlSerializer=A(ii),this.options=A(fi,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=A(xp),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new oi,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=EE(0,null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(t){return this.location.subscribe(r=>{"popstate"===r.type&&t(r.url,r.state)})}handleRouterEvent(t,r){if(t instanceof bc)this.stateMemento=this.createStateMemento();else if(t instanceof ai)this.rawUrlTree=r.initialUrl;else if(t instanceof CE){if("eager"===this.urlUpdateStrategy&&!r.extras.skipLocationChange){const o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(o,r)}}else t instanceof fp?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,"deferred"===this.urlUpdateStrategy&&(r.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,r))):t instanceof si&&(3===t.code||2===t.code)?this.restoreHistory(r):t instanceof Ec?this.restoreHistory(r,!0):t instanceof En&&(this.lastSuccessfulId=t.id,this.currentPageId=this.browserPageId)}setBrowserUrl(t,r){const o=this.urlSerializer.serialize(t);if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){const s={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId)};this.location.replaceState(o,"",s)}else{const i={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId+1)};this.location.go(o,"",i)}}restoreHistory(t,r=!1){if("computed"===this.canceledNavigationResolution){const i=this.currentPageId-this.browserPageId;0!==i?this.location.historyGo(i):this.currentUrlTree===t.finalUrl&&0===i&&(this.resetState(t),this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(r&&this.resetState(t),this.resetUrlToCurrentUrlTree())}resetState(t){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(t,r){return"computed"===this.canceledNavigationResolution?{navigationId:t,\u0275routerPageId:r}:{navigationId:t}}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var Xs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(Xs||{});function zE(e,n){e.events.pipe(rn(t=>t instanceof En||t instanceof si||t instanceof Ec||t instanceof ai),K(t=>t instanceof En||t instanceof ai?Xs.COMPLETE:t instanceof si&&(0===t.code||1===t.code)?Xs.REDIRECTING:Xs.FAILED),rn(t=>t!==Xs.REDIRECTING),_r(1)).subscribe(()=>{n()})}function kj(e){throw e}const Fj={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Lj={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Bt=(()=>{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.isNgZoneEnabled=!1,this.console=A(Cw),this.stateManager=A(GE),this.options=A(fi,{optional:!0})||{},this.pendingTasks=A($l),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=A(Ac),this.urlSerializer=A(ii),this.location=A(Os),this.urlHandlingStrategy=A(xp),this._events=new zt,this.errorHandler=this.options.errorHandler||kj,this.navigated=!1,this.routeReuseStrategy=A(Nj),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=A(hi,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!A(Ic,{optional:!0}),this.eventsSubscription=new Et,this.isNgZoneEnabled=A(ae)instanceof ae&&ae.isInAngularZone(),this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:t=>{this.console.warn(t)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const t=this.navigationTransitions.events.subscribe(r=>{try{const o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(null!==o&&null!==i)if(this.stateManager.handleRouterEvent(r,i),r instanceof si&&0!==r.code&&1!==r.code)this.navigated=!0;else if(r instanceof En)this.navigated=!0;else if(r instanceof hp){const s=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),a={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||xj(o.source)};this.scheduleNavigation(s,Gs,null,a,{resolve:o.resolve,reject:o.reject,promise:o.promise})}(function jj(e){return!(e instanceof fp||e instanceof hp)})(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(t)}resetRootComponentType(t){this.routerState.root.component=t,this.navigationTransitions.rootComponentType=t}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Gs,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription||(this.nonRouterCurrentEntryChangeSubscription=this.stateManager.registerNonRouterCurrentEntryChangeListener((t,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(t,"popstate",r)},0)}))}navigateToSyncWithBrowser(t,r,o){const i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){const l={...o};delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(i.state=l)}const a=this.parseUrl(t);this.scheduleNavigation(a,r,s,i)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(t){this.config=t.map(bp),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(t,r={}){const{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:l}=r,c=l?this.currentUrlTree.fragment:s;let d,u=null;switch(a){case"merge":u={...this.currentUrlTree.queryParams,...i};break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=i||null}null!==u&&(u=this.removeEmptyProps(u));try{d=hE(o?o.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof t[0]||!t[0].startsWith("/"))&&(t=[]),d=this.currentUrlTree.root}return pE(d,t,u,c??null)}navigateByUrl(t,r={skipLocationChange:!1}){const o=Hr(t)?t:this.parseUrl(t),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,Gs,null,r)}navigate(t,r={skipLocationChange:!1}){return function Vj(e){for(let n=0;n{const i=t[o];return null!=i&&(r[o]=i),r},{})}scheduleNavigation(t,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,l,c;s?(a=s.resolve,l=s.reject,c=s.promise):c=new Promise((d,g)=>{a=d,l=g});const u=this.pendingTasks.add();return zE(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:t,extras:i,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(d=>Promise.reject(d))}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Mn=(()=>{class e{constructor(t,r,o,i,s,a){this.router=t,this.route=r,this.tabIndexAttribute=o,this.renderer=i,this.el=s,this.locationStrategy=a,this.href=null,this.commands=null,this.onChanges=new zt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===l||"area"===l,this.isAnchorElement?this.subscription=t.events.subscribe(c=>{c instanceof En&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(t){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",t)}ngOnChanges(t){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(t){null!=t?(this.commands=Array.isArray(t)?t:[t],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(t,r,o,i,s){return!!(null===this.urlTree||this.isAnchorElement&&(0!==t||r||o||i||s||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const t=null===this.href?null:function uy(e,n,t){return function cA(e,n){return"src"===n&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===n&&("base"===e||"link"===e)?cy:bo}(n,t)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",t)}applyAttributeValue(t,r){const o=this.renderer,i=this.el.nativeElement;null!==r?o.setAttribute(i,t,r):o.removeAttribute(i,t)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Ur),function Pa(e){return function uS(e,n){if("class"===n)return e.classes;if("style"===n)return e.styles;const t=e.attrs;if(t){const r=t.length;let o=0;for(;o{class e{get isActive(){return this._isActive}constructor(t,r,o,i,s){this.router=t,this.element=r,this.renderer=o,this.cdr=i,this.link=s,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new xe,this.routerEventsSubscription=t.events.subscribe(a=>{a instanceof En&&this.update()})}ngAfterContentInit(){F(this.links.changes,F(null)).pipe(Yr()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const t=[...this.links.toArray(),this.link].filter(r=>!!r).map(r=>r.onChanges);this.linkInputChangesSubscription=Oe(t).pipe(Yr()).subscribe(r=>{this._isActive!==this.isLinkActive(this.router)(r)&&this.update()})}set routerLinkActive(t){const r=Array.isArray(t)?t:t.split(" ");this.classes=r.filter(o=>!!o)}ngOnChanges(t){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const t=this.hasActiveLinks();this._isActive!==t&&(this._isActive=t,this.cdr.markForCheck(),this.classes.forEach(r=>{t?this.renderer.addClass(this.element.nativeElement,r):this.renderer.removeClass(this.element.nativeElement,r)}),t&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(t))})}isLinkActive(t){const r=function Hj(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>!!o.urlTree&&t.isActive(o.urlTree,r)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.links.some(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Nt),S(Fn),S(ls),S(Mn,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(r,o,i){if(1&r&&ew(i,Mn,5),2&r){let s;KD(s=function tw(){return function ck(e,n){return e[dn].queries[n].queryList}(b(),Nm())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Lt]})}return e})();class WE{}let Uj=(()=>{class e{constructor(t,r,o,i,s){this.router=t,this.injector=o,this.preloadingStrategy=i,this.loader=s}setUpPreloading(){this.subscription=this.router.events.pipe(rn(t=>t instanceof En),ti(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,r){const o=[];for(const i of r){i.providers&&!i._injector&&(i._injector=Xf(i.providers,t,`Route: ${i.path}`));const s=i._injector??t,a=i._loadedInjector??s;(i.loadChildren&&!i._loadedRoutes&&void 0===i.canLoad||i.loadComponent&&!i._loadedComponent)&&o.push(this.preloadConfig(s,i)),(i.children||i._loadedRoutes)&&o.push(this.processRoutes(a,i.children??i._loadedRoutes))}return Oe(o).pipe(Yr())}preloadConfig(t,r){return this.preloadingStrategy.preload(r,()=>{let o;o=r.loadChildren&&void 0===r.canLoad?this.loader.loadChildren(t,r):F(null);const i=o.pipe(Xe(s=>null===s?F(void 0):(r._loadedRoutes=s.routes,r._loadedInjector=s.injector,this.processRoutes(s.injector??t,s.routes))));return r.loadComponent&&!r._loadedComponent?Oe([i,this.loader.loadComponent(r)]).pipe(Yr()):i})}static#e=this.\u0275fac=function(r){return new(r||e)(k(Bt),k(ww),k(At),k(WE),k(Ap))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Np=new N("");let ZE=(()=>{class e{constructor(t,r,o,i,s={}){this.urlSerializer=t,this.transitions=r,this.viewportScroller=o,this.zone=i,this.options=s,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},s.scrollPositionRestoration=s.scrollPositionRestoration||"disabled",s.anchorScrolling=s.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof bc?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof En?(this.lastId=t.id,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.urlAfterRedirects).fragment)):t instanceof ai&&0===t.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof DE&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,r){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new DE(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,r))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){!function Oy(){throw new Error("invalid")}()};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Sn(e,n){return{\u0275kind:e,\u0275providers:n}}function QE(){const e=A(_t);return n=>{const t=e.get(Xo);if(n!==t.components[0])return;const r=e.get(Bt),o=e.get(XE);1===e.get(Rp)&&r.initialNavigation(),e.get(JE,null,X.Optional)?.setUpPreloading(),e.get(Np,null,X.Optional)?.init(),r.resetRootComponentType(t.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const XE=new N("",{factory:()=>new zt}),Rp=new N("",{providedIn:"root",factory:()=>1}),JE=new N("");function zj(e){return Sn(0,[{provide:JE,useExisting:Uj},{provide:WE,useExisting:e}])}function Wj(e){return Sn(9,[{provide:BE,useValue:Tj},{provide:$E,useValue:{skipNextTransition:!!e?.skipInitialTransition,...e}}])}const KE=new N("ROUTER_FORROOT_GUARD"),Zj=[Os,{provide:ii,useClass:ap},Bt,zs,{provide:Ur,useFactory:function YE(e){return e.routerState.root},deps:[Bt]},Ap,[]];let eI=(()=>{class e{constructor(t){}static forRoot(t,r){return{ngModule:e,providers:[Zj,[],{provide:hi,multi:!0,useValue:t},{provide:KE,useFactory:Jj,deps:[[Bt,new La,new Va]]},{provide:fi,useValue:r||{}},r?.useHash?{provide:Lr,useClass:KF}:{provide:Lr,useClass:cb},{provide:Np,useFactory:()=>{const e=A(yL),n=A(ae),t=A(fi),r=A(Ac),o=A(ii);return t.scrollOffset&&e.setOffset(t.scrollOffset),new ZE(o,r,e,n,t)}},r?.preloadingStrategy?zj(r.preloadingStrategy).\u0275providers:[],r?.initialNavigation?Kj(r):[],r?.bindToComponentInputs?Sn(8,[TE,{provide:Ic,useExisting:TE}]).\u0275providers:[],r?.enableViewTransitions?Wj().\u0275providers:[],[{provide:tI,useFactory:QE},{provide:mh,multi:!0,useExisting:tI}]]}}static forChild(t){return{ngModule:e,providers:[{provide:hi,multi:!0,useValue:t}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(KE,8))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Jj(e){return"guarded"}function Kj(e){return["disabled"===e.initialNavigation?Sn(3,[{provide:ch,multi:!0,useFactory:()=>{const n=A(Bt);return()=>{n.setUpLocationChangeListener()}}},{provide:Rp,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Sn(2,[{provide:Rp,useValue:0},{provide:ch,multi:!0,deps:[_t],useFactory:n=>{const t=n.get(XF,Promise.resolve());return()=>t.then(()=>new Promise(r=>{const o=n.get(Bt),i=n.get(XE);zE(o,()=>{r(!0)}),n.get(Ac).afterPreactivation=()=>(r(!0),i.closed?F(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const tI=new N(""),tH=()=>["/pro"];let nH=(()=>{class e{constructor(){this.years=(new Date).getFullYear()-2009}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Ot],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"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[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(r,o){1&r&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),y(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),y(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),y(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),y(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),y(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),y(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),y(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),y(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),y(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),y(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),y(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),y(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),y(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),y(81,"i",21),f(82," GitHub"),p(),y(83,"br"),h(84,"a",22),y(85,"i",23),f(86," Twitter"),p(),y(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),y(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&r&&(C(19),Hn(" Fast forward ",o.years," years, I'm still maintaining "),C(11),E("routerLink",ee(2,tH)))},dependencies:[Mn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}.portrait[_ngcontent-%COMP%]{max-height:300px}"]})}return e})();const nI=()=>["/"],rH=e=>({show:e}),pi=()=>["link-active"],rI=()=>({exact:!0}),oH=()=>["/features"],iH=()=>["/getstarted"],sH=()=>["/usage"],aH=()=>["/contact"],lH=()=>["/pro"];let cH=(()=>{class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Ot],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(r,o){1&r&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),y(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),y(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),y(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),y(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),y(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&r&&(C(3),E("routerLink",ee(17,nI)),C(4),Xt("aria-expanded",o.isExpanded),C(2),E("ngClass",Ms(18,rH,o.isExpanded)),C(2),E("routerLinkActive",ee(20,pi))("routerLinkActiveOptions",ee(21,rI)),C(1),E("routerLink",ee(22,nI)),C(2),E("routerLinkActive",ee(23,pi))("routerLinkActiveOptions",ee(24,rI)),C(1),E("routerLink",ee(25,oH)),C(2),E("routerLinkActive",ee(26,pi)),C(1),E("routerLink",ee(27,iH)),C(2),E("routerLinkActive",ee(28,pi)),C(1),E("routerLink",ee(29,sH)),C(2),E("routerLinkActive",ee(30,pi)),C(1),E("routerLink",ee(31,aH)),C(2),E("routerLinkActive",ee(32,pi)),C(1),E("routerLink",ee(33,lH)))},dependencies:[Mn,uc,qE],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}"]})}return e})(),uH=(()=>{class e{constructor(t,r,o){this.dom=t,this.router=r,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(rn(t=>t instanceof En),K(()=>this.activatedRoute),K(t=>{for(;t.firstChild;)t=t.firstChild;return t}),rn(t=>"primary"===t.outlet),Xe(t=>t.data)).subscribe(t=>{const r=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(t.canonical?r+t.canonical:r+this.router.url)})}updateCanonicalUrl(t){const r=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;null==o&&(o=this.dom.createElement("link"),r.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(ft),S(Bt),S(Ur))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-root"]],standalone:!0,features:[Ot],decls:3,vars:0,template:function(r,o){1&r&&y(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[cH,Dp,nH],encapsulation:2})}return e})(),oI=(()=>{class e{constructor(t,r){this._renderer=t,this._elementRef=r,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(t,r){this._renderer.setProperty(this._elementRef.nativeElement,t,r)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt))};static#t=this.\u0275dir=$({type:e})}return e})(),Br=(()=>{class e extends oI{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,features:[ce]})}return e})();const Tn=new N("NgValueAccessor"),hH={provide:Tn,useExisting:he(()=>gi),multi:!0},gH=new N("CompositionEventMode");let gi=(()=>{class e extends oI{constructor(t,r,o){super(t,r),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function pH(){const e=lr()?lr().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(gH,8))};static#t=this.\u0275dir=$({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(r,o){1&r&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[Ee([hH]),ce]})}return e})();function dr(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const ot=new N("NgValidators"),fr=new N("NgAsyncValidators"),mH=/^(?=.{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 cI(e){return dr(e.value)?{required:!0}:null}function dI(e){return dr(e.value)||mH.test(e.value)?null:{email:!0}}function xc(e){return null}function gI(e){return null!=e}function mI(e){return Is(e)?Oe(e):e}function vI(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function yI(e,n){return n.map(t=>t(e))}function _I(e){return e.map(n=>function vH(e){return!e.validate}(n)?n:t=>n.validate(t))}function Op(e){return null!=e?function CI(e){if(!e)return null;const n=e.filter(gI);return 0==n.length?null:function(t){return vI(yI(t,n))}}(_I(e)):null}function Pp(e){return null!=e?function DI(e){if(!e)return null;const n=e.filter(gI);return 0==n.length?null:function(t){return function dH(...e){const n=jg(e),{args:t,keys:r}=Rb(e),o=new Te(i=>{const{length:s}=t;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?Pb(r,a):a),i.complete())}))}});return n?o.pipe(Ob(n)):o}(yI(t,n).map(mI)).pipe(K(vI))}}(_I(e)):null}function wI(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function kp(e){return e?Array.isArray(e)?e:[e]:[]}function Nc(e,n){return Array.isArray(e)?e.includes(n):e===n}function II(e,n){const t=kp(n);return kp(e).forEach(o=>{Nc(t,o)||t.push(o)}),t}function MI(e,n){return kp(n).filter(t=>!Nc(e,t))}class SI{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(n){this._rawValidators=n||[],this._composedValidatorFn=Op(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Pp(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control&&this.control.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class pt extends SI{get formDirective(){return null}get path(){return null}}class hr extends SI{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class TI{constructor(n){this._cd=n}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Rc=(()=>{class e extends TI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(hr,2))};static#t=this.\u0275dir=$({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&El("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:[ce]})}return e})(),Oc=(()=>{class e extends TI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,10))};static#t=this.\u0275dir=$({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(r,o){2&r&&El("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:[ce]})}return e})();const Js="VALID",kc="INVALID",mi="PENDING",Ks="DISABLED";function Vp(e){return(Fc(e)?e.validators:e)||null}function jp(e,n){return(Fc(n)?n.asyncValidators:e)||null}function Fc(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class RI{constructor(n,t){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get valid(){return this.status===Js}get invalid(){return this.status===kc}get pending(){return this.status==mi}get disabled(){return this.status===Ks}get enabled(){return this.status!==Ks}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(II(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(II(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(MI(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(MI(n,this._rawAsyncValidators))}hasValidator(n){return Nc(this._rawValidators,n)}hasAsyncValidator(n){return Nc(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){this.touched=!0,this._parent&&!n.onlySelf&&this._parent.markAsTouched(n)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(n=>n.markAllAsTouched())}markAsUntouched(n={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}markAsDirty(n={}){this.pristine=!1,this._parent&&!n.onlySelf&&this._parent.markAsDirty(n)}markAsPristine(n={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=mi,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Ks,this.errors=null,this._forEachChild(r=>{r.disable({...n,onlySelf:!0})}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Js,this._forEachChild(r=>{r.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Js||this.status===mi)&&this._runAsyncValidator(n.emitEvent)),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(n)}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Ks:Js}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=mi,this._hasOwnPendingAsyncValidator=!0;const t=mI(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((r,o)=>r&&r._find(o),this)}getError(n,t){const r=t?this.get(t):this;return r&&r.errors?r.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(n)}_initObservables(){this.valueChanges=new xe,this.statusChanges=new xe}_calculateStatus(){return this._allControlsDisabled()?Ks:this.errors?kc:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(mi)?mi:this._anyControlsHaveStatus(kc)?kc:Js}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n={}){this.pristine=!this._anyControlsDirty(),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}_updateTouched(n={}){this.touched=this._anyControlsTouched(),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Fc(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function DH(e){return Array.isArray(e)?Op(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function wH(e){return Array.isArray(e)?Pp(e):e||null}(this._rawAsyncValidators)}}class Hp extends RI{constructor(n,t,r){super(Vp(t),jp(r,t)),this.controls=n,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,t){return this.controls[n]?this.controls[n]:(this.controls[n]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(n,t,r={}){this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}removeControl(n,t={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}setControl(n,t,r={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],t&&this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,t={}){(function NI(e,n,t){e._forEachChild((r,o)=>{if(void 0===t[o])throw new M(1002,"")})})(this,0,n),Object.keys(n).forEach(r=>{(function xI(e,n,t){const r=e.controls;if(!(n?Object.keys(r):r).length)throw new M(1e3,"");if(!r[t])throw new M(1001,"")})(this,!0,r),this.controls[r].setValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(n,t={}){null!=n&&(Object.keys(n).forEach(r=>{const o=this.controls[r];o&&o.patchValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t))}reset(n={},t={}){this._forEachChild((r,o)=>{r.reset(n?n[o]:null,{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(n,t,r)=>(n[r]=t.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(t,r)=>!!r._syncPendingControls()||t);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(t=>{const r=this.controls[t];r&&n(r,t)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const[t,r]of Object.entries(this.controls))if(this.contains(t)&&n(r))return!0;return!1}_reduceValue(){return this._reduceChildren({},(t,r,o)=>((r.enabled||this.disabled)&&(t[o]=r.value),t))}_reduceChildren(n,t){let r=n;return this._forEachChild((o,i)=>{r=t(r,o,i)}),r}_allControlsDisabled(){for(const n of Object.keys(this.controls))if(this.controls[n].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(n){return this.controls.hasOwnProperty(n)?this.controls[n]:null}}const vi=new N("CallSetDisabledState",{providedIn:"root",factory:()=>Lc}),Lc="always";function ea(e,n,t=Lc){Up(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function IH(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&OI(e,n)})}(e,n),function SH(e,n){const t=(r,o)=>{n.valueAccessor.writeValue(r),o&&n.viewToModelUpdate(r)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function MH(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&OI(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function EH(e,n){if(n.valueAccessor.setDisabledState){const t=r=>{n.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function Hc(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function Up(e,n){const t=function bI(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(wI(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const r=function EI(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(wI(r,n.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();Hc(n._rawValidators,o),Hc(n._rawAsyncValidators,o)}function OI(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const RH={provide:pt,useExisting:he(()=>yi)},ta=(()=>Promise.resolve())();let yi=(()=>{class e extends pt{constructor(t,r,o){super(),this.callSetDisabledState=o,this.submitted=!1,this._directives=new Set,this.ngSubmit=new xe,this.form=new Hp({},Op(t),Pp(r))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){ta.then(()=>{const r=this._findContainer(t.path);t.control=r.registerControl(t.name,t.control),ea(t.control,t,this.callSetDisabledState),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){ta.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name),this._directives.delete(t)})}addFormGroup(t){ta.then(()=>{const r=this._findContainer(t.path),o=new Hp({});(function PI(e,n){Up(e,n)})(o,t),r.registerControl(t.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){ta.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,r){ta.then(()=>{this.form.get(t.path).setValue(r)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,function kI(e,n){e._syncPendingControls(),n.forEach(t=>{const r=t.control;"submit"===r.updateOn&&r._pendingChange&&(t.viewToModelUpdate(r._pendingValue),r._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(t),"dialog"===t?.target?.method}onReset(){this.resetForm()}resetForm(t=void 0){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}static#e=this.\u0275fac=function(r){return new(r||e)(S(ot,10),S(fr,10),S(vi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(r,o){1&r&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Ee([RH]),ce]})}return e})();function FI(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function LI(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const VI=class extends RI{constructor(n=null,t,r){super(Vp(t),jp(r,t)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Fc(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=LI(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){FI(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){FI(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){LI(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},kH={provide:hr,useExisting:he(()=>na)},UI=(()=>Promise.resolve())();let na=(()=>{class e extends hr{constructor(t,r,o,i,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this.control=new VI,this._registered=!1,this.name="",this.update=new xe,this._parent=t,this._setValidators(r),this._setAsyncValidators(o),this.valueAccessor=function Gp(e,n){if(!n)return null;let t,r,o;return Array.isArray(n),n.forEach(i=>{i.constructor===gi?t=i:function xH(e){return Object.getPrototypeOf(e.constructor)===Br}(i)?r=i:o=i}),o||r||t||null}(0,i)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const r=t.name.previousValue;this.formDirective.removeControl({name:r,path:this._getPath(r)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function $p(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,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(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ea(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()}_updateValue(t){UI.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const r=t.isDisabled.currentValue,o=0!==r&&Ko(r);UI.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function Vc(e,n){return[...n.path,e]}(t,this._parent):[t]}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,9),S(ot,10),S(fr,10),S(Tn,10),S(ls,8),S(vi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[Ee([kH]),ce,Lt]})}return e})(),Bc=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return e})();const LH={provide:Tn,useExisting:he(()=>zp),multi:!0};let $I=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})(),VH=(()=>{class e{constructor(){this._accessors=[]}add(t,r){this._accessors.push([t,r])}remove(t){for(let r=this._accessors.length-1;r>=0;--r)if(this._accessors[r][1]===t)return void this._accessors.splice(r,1)}select(t){this._accessors.forEach(r=>{this._isSameGroup(r,t)&&r[1]!==t&&r[1].fireUncheck(t.value)})}_isSameGroup(t,r){return!!t[0].control&&t[0]._parent===r._control._parent&&t[1].name===r.name}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:$I})}return e})(),zp=(()=>{class e extends Br{constructor(t,r,o,i){super(t,r),this._registry=o,this._injector=i,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(vi,{optional:!0})??Lc}ngOnInit(){this._control=this._injector.get(hr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this.setProperty("checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}setDisabledState(t){(this.setDisabledStateFired||t||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",t),this.setDisabledStateFired=!0}fireUncheck(t){this.writeValue(t)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(VH),S(_t))};static#t=this.\u0275dir=$({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[Ee([LH]),ce]})}return e})();const zH={provide:Tn,useExisting:he(()=>$c),multi:!0};function YI(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let $c=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const o=YI(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=r=>{this.value=this._getOptionValue(r),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const r of this._optionMap.keys())if(this._compareWith(this._optionMap.get(r),t))return r;return null}_getOptionValue(t){const r=function qH(e){return e.split(":")[0]}(t);return this._optionMap.has(r)?this._optionMap.get(r):t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([zH]),ce]})}return e})(),QI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(YI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S($c,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();const WH={provide:Tn,useExisting:he(()=>Yp),multi:!0};function XI(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Yp=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let r;if(this.value=t,Array.isArray(t)){const o=t.map(i=>this._getOptionId(i));r=(i,s)=>{i._setSelected(o.indexOf(s.toString())>-1)}}else r=(o,i)=>{o._setSelected(!1)};this._optionMap.forEach(r)}registerOnChange(t){this.onChange=r=>{const o=[],i=r.selectedOptions;if(void 0!==i){const s=i;for(let a=0;a{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([WH]),ce]})}return e})(),JI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(XI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(XI(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S(Yp,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();let $r=(()=>{class e{constructor(){this._validator=xc}ngOnChanges(t){if(this.inputName in t){const r=this.normalizeInput(t[this.inputName].currentValue);this._enabled=this.enabled(r),this._validator=this._enabled?this.createValidator(r):xc,this._onChange&&this._onChange()}}validate(t){return this._validator(t)}registerOnValidatorChange(t){this._onChange=t}enabled(t){return null!=t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,features:[Lt]})}return e})();const XH={provide:ot,useExisting:he(()=>_i),multi:!0};let _i=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Ko,this.createValidator=t=>cI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("required",o._enabled?"":null)},inputs:{required:"required"},features:[Ee([XH]),ce]})}return e})();const KH={provide:ot,useExisting:he(()=>Gc),multi:!0};let Gc=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Ko,this.createValidator=t=>dI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[Ee([KH]),ce]})}return e})();const tU={provide:ot,useExisting:he(()=>Qp),multi:!0};let Qp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=t=>function KI(e){return"number"==typeof e?e:parseInt(e,10)}(t),this.createValidator=t=>function hI(e){return n=>function sI(e){return null!=e&&"number"==typeof e.length}(n.value)&&n.value.length>e?{maxlength:{requiredLength:e,actualLength:n.value.length}}:null}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[Ee([tU]),ce]})}return e})();const nU={provide:ot,useExisting:he(()=>Xp),multi:!0};let Xp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=t=>t,this.createValidator=t=>function pI(e){if(!e)return xc;let n,t;return"string"==typeof e?(t="","^"!==e.charAt(0)&&(t+="^"),t+=e,"$"!==e.charAt(e.length-1)&&(t+="$"),n=new RegExp(t)):(t=e.toString(),n=e),r=>{if(dr(r.value))return null;const o=r.value;return n.test(o)?null:{pattern:{requiredPattern:t,actualValue:o}}}}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[Ee([nU]),ce]})}return e})(),rU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[$I]})}return e})(),zc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:vi,useValue:t.callSetDisabledState??Lc}]}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[rU]})}return e})();class qc{}class Wc{}class $t{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?"string"==typeof n?this.lazyInit=()=>{this.headers=new Map,n.split("\n").forEach(t=>{const r=t.indexOf(":");if(r>0){const o=t.slice(0,r),i=o.toLowerCase(),s=t.slice(r+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((t,r)=>{this.setHeaderEntries(r,t)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([t,r])=>{this.setHeaderEntries(t,r)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const t=this.headers.get(n.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,t){return this.clone({name:n,value:t,op:"a"})}set(n,t){return this.clone({name:n,value:t,op:"s"})}delete(n,t){return this.clone({name:n,value:t,op:"d"})}maybeSetNormalizedName(n,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,n)}init(){this.lazyInit&&(this.lazyInit instanceof $t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(t=>{this.headers.set(t,n.headers.get(t)),this.normalizedNames.set(t,n.normalizedNames.get(t))})}clone(n){const t=new $t;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof $t?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([n]),t}applyUpdate(n){const t=n.name.toLowerCase();switch(n.op){case"a":case"s":let r=n.value;if("string"==typeof r&&(r=[r]),0===r.length)return;this.maybeSetNormalizedName(n.name,t);const o=("a"===n.op?this.headers.get(t):void 0)||[];o.push(...r),this.headers.set(t,o);break;case"d":const i=n.value;if(i){let s=this.headers.get(t);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,s)}else this.headers.delete(t),this.normalizedNames.delete(t)}}setHeaderEntries(n,t){const r=(Array.isArray(t)?t:[t]).map(i=>i.toString()),o=n.toLowerCase();this.headers.set(o,r),this.maybeSetNormalizedName(n,o)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>n(this.normalizedNames.get(t),this.headers.get(t)))}}class iU{encodeKey(n){return aM(n)}encodeValue(n){return aM(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const aU=/%(\d[a-f0-9])/gi,lU={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function aM(e){return encodeURIComponent(e).replace(aU,(n,t)=>lU[t]??n)}function Zc(e){return`${e}`}class pr{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new iU,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function sU(e,n){const t=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,i)),n.decodeValue(o.slice(i+1))],l=t.get(s)||[];l.push(a),t.set(s,l)}),t}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(t=>{const r=n.fromObject[t],o=Array.isArray(r)?r.map(Zc):[Zc(r)];this.map.set(t,o)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const t=this.map.get(n);return t?t[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,t){return this.clone({param:n,value:t,op:"a"})}appendAll(n){const t=[];return Object.keys(n).forEach(r=>{const o=n[r];Array.isArray(o)?o.forEach(i=>{t.push({param:r,value:i,op:"a"})}):t.push({param:r,value:o,op:"a"})}),this.clone(t)}set(n,t){return this.clone({param:n,value:t,op:"s"})}delete(n,t){return this.clone({param:n,value:t,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const t=this.encoder.encodeKey(n);return this.map.get(n).map(r=>t+"="+this.encoder.encodeValue(r)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const t=new pr({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat(n),t}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(n=>this.map.set(n,this.cloneFrom.map.get(n))),this.updates.forEach(n=>{switch(n.op){case"a":case"s":const t=("a"===n.op?this.map.get(n.param):void 0)||[];t.push(Zc(n.value)),this.map.set(n.param,t);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let r=this.map.get(n.param)||[];const o=r.indexOf(Zc(n.value));-1!==o&&r.splice(o,1),r.length>0?this.map.set(n.param,r):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class cU{constructor(){this.map=new Map}set(n,t){return this.map.set(n,t),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function lM(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function cM(e){return typeof Blob<"u"&&e instanceof Blob}function uM(e){return typeof FormData<"u"&&e instanceof FormData}class ra{constructor(n,t,r,o){let i;if(this.url=t,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function uU(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==r?r:null,i=o):i=r,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params),this.transferCache=i.transferCache),this.headers||(this.headers=new $t),this.context||(this.context=new cU),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=t;else{const a=t.indexOf("?");this.urlWithParams=t+(-1===a?"?":ad.set(g,n.setHeaders[g]),l)),n.setParams&&(c=Object.keys(n.setParams).reduce((d,g)=>d.set(g,n.setParams[g]),c)),new ra(t,r,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var gr=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(gr||{});class Jp{constructor(n,t=200,r="OK"){this.headers=n.headers||new $t,this.status=void 0!==n.status?n.status:t,this.statusText=n.statusText||r,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class Yc extends Jp{constructor(n={}){super(n),this.type=gr.ResponseHeader}clone(n={}){return new Yc({headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Gr extends Jp{constructor(n={}){super(n),this.type=gr.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Gr({body:void 0!==n.body?n.body:this.body,headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Ci extends Jp{constructor(n){super(n,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${n.url||"(unknown url)"}`:`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}}function Kp(e,n){return{body:n,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials,transferCache:e.transferCache}}let eg=(()=>{class e{constructor(t){this.handler=t}request(t,r,o={}){let i;if(t instanceof ra)i=t;else{let l,c;l=o.headers instanceof $t?o.headers:new $t(o.headers),o.params&&(c=o.params instanceof pr?o.params:new pr({fromObject:o.params})),i=new ra(t,r,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:c,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}const s=F(i).pipe(ti(l=>this.handler.handle(l)));if(t instanceof ra||"events"===o.observe)return s;const a=s.pipe(rn(l=>l instanceof Gr));switch(o.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return l.body}));case"blob":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof Blob))throw new Error("Response is not a Blob.");return l.body}));case"text":return a.pipe(K(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(K(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(t,r={}){return this.request("DELETE",t,r)}get(t,r={}){return this.request("GET",t,r)}head(t,r={}){return this.request("HEAD",t,r)}jsonp(t,r){return this.request("JSONP",t,{params:(new pr).append(r,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,r={}){return this.request("OPTIONS",t,r)}patch(t,r,o={}){return this.request("PATCH",t,Kp(o,r))}post(t,r,o={}){return this.request("POST",t,Kp(o,r))}put(t,r,o={}){return this.request("PUT",t,Kp(o,r))}static#e=this.\u0275fac=function(r){return new(r||e)(k(qc))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function fM(e,n){return n(e)}function mU(e,n){return(t,r)=>n.intercept(t,{handle:o=>e(o,r)})}const yU=new N(""),oa=new N(""),hM=new N(""),pM=new N("");function _U(){let e=null;return(n,t)=>{null===e&&(e=(A(yU,{optional:!0})??[]).reduceRight(mU,fM));const r=A($l),o=r.add();return e(n,t).pipe(Ls(()=>r.remove(o)))}}let gM=(()=>{class e extends qc{constructor(t,r){super(),this.backend=t,this.injector=r,this.chain=null,this.pendingTasks=A($l);const o=A(pM,{optional:!0});this.backend=o??t}handle(t){if(null===this.chain){const o=Array.from(new Set([...this.injector.get(oa),...this.injector.get(hM,[])]));this.chain=o.reduceRight((i,s)=>function vU(e,n,t){return(r,o)=>t.runInContext(()=>n(r,i=>e(i,o)))}(i,s,this.injector),fM)}const r=this.pendingTasks.add();return this.chain(t,o=>this.backend.handle(o)).pipe(Ls(()=>this.pendingTasks.remove(r)))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Wc),k(At))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const EU=/^\)\]\}',?\n/;let vM=(()=>{class e{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new M(-2800,!1);const r=this.xhrFactory;return(r.\u0275loadImpl?Oe(r.\u0275loadImpl()):F(null)).pipe(Ft(()=>new Te(i=>{const s=r.build();if(s.open(t.method,t.urlWithParams),t.withCredentials&&(s.withCredentials=!0),t.headers.forEach((_,D)=>s.setRequestHeader(_,D.join(","))),t.headers.has("Accept")||s.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const _=t.detectContentTypeHeader();null!==_&&s.setRequestHeader("Content-Type",_)}if(t.responseType){const _=t.responseType.toLowerCase();s.responseType="json"!==_?_:"text"}const a=t.serializeBody();let l=null;const c=()=>{if(null!==l)return l;const _=s.statusText||"OK",D=new $t(s.getAllResponseHeaders()),I=function IU(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(s)||t.url;return l=new Yc({headers:D,status:s.status,statusText:_,url:I}),l},u=()=>{let{headers:_,status:D,statusText:I,url:w}=c(),x=null;204!==D&&(x=typeof s.response>"u"?s.responseText:s.response),0===D&&(D=x?200:0);let V=D>=200&&D<300;if("json"===t.responseType&&"string"==typeof x){const Z=x;x=x.replace(EU,"");try{x=""!==x?JSON.parse(x):null}catch(Ie){x=Z,V&&(V=!1,x={error:Ie,text:x})}}V?(i.next(new Gr({body:x,headers:_,status:D,statusText:I,url:w||void 0})),i.complete()):i.error(new Ci({error:x,headers:_,status:D,statusText:I,url:w||void 0}))},d=_=>{const{url:D}=c(),I=new Ci({error:_,status:s.status||0,statusText:s.statusText||"Unknown Error",url:D||void 0});i.error(I)};let g=!1;const m=_=>{g||(i.next(c()),g=!0);let D={type:gr.DownloadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),"text"===t.responseType&&s.responseText&&(D.partialText=s.responseText),i.next(D)},v=_=>{let D={type:gr.UploadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),i.next(D)};return s.addEventListener("load",u),s.addEventListener("error",d),s.addEventListener("timeout",d),s.addEventListener("abort",d),t.reportProgress&&(s.addEventListener("progress",m),null!==a&&s.upload&&s.upload.addEventListener("progress",v)),s.send(a),i.next({type:gr.Sent}),()=>{s.removeEventListener("error",d),s.removeEventListener("abort",d),s.removeEventListener("load",u),s.removeEventListener("timeout",d),t.reportProgress&&(s.removeEventListener("progress",m),null!==a&&s.upload&&s.upload.removeEventListener("progress",v)),s.readyState!==s.DONE&&s.abort()}})))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Tb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const rg=new N("XSRF_ENABLED"),yM=new N("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),_M=new N("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class CM{}let TU=(()=>{class e{constructor(t,r,o){this.doc=t,this.platform=r,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=_b(t,this.cookieName),this.lastCookieString=t),this.lastToken}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Sr),k(yM))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function AU(e,n){const t=e.url.toLowerCase();if(!A(rg)||"GET"===e.method||"HEAD"===e.method||t.startsWith("http://")||t.startsWith("https://"))return n(e);const r=A(CM).getToken(),o=A(_M);return null!=r&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,r)})),n(e)}var mr=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(mr||{});const DM=new N("LEGACY_INTERCEPTOR_FN");class LU{constructor(){this.name="",this.email="",this.message=""}}let TM=(()=>{class e{constructor(t){this.httpClient=t}postContactForm(t){return this.httpClient.post(`${ye_apiBaseUrl}contact`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(eg))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function VU(e,n){if(1&e){const t=Fe();h(0,"form",4,5),R("ngSubmit",function(){return re(t),oe(P().submit())}),h(2,"div",6)(3,"label",7),f(4,"Name "),h(5,"span",8),f(6,"*"),p()(),h(7,"input",9),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.name=o)}),p()(),h(8,"div",6)(9,"label",10),f(10,"Email address "),h(11,"span",8),f(12,"*"),p()(),h(13,"input",11),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.email=o)}),p()(),h(14,"div",6)(15,"label",12),f(16,"Message "),h(17,"span",8),f(18,"*"),p()(),h(19,"textarea",13),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.message=o)}),p()(),h(20,"button",14),f(21,"Submit"),p()()}if(2&e){const t=Gf(1),r=P();C(7),E("ngModel",r.contactViewModel.name),C(6),E("ngModel",r.contactViewModel.email),C(6),E("ngModel",r.contactViewModel.message),C(1),E("disabled",!t.valid||r.enableFormCountDown>0)}}function jU(e,n){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function HU(e,n){1&e&&(h(0,"p",15),f(1,"Something went wrong. Please try again later."),p())}let UU=(()=>{class e{constructor(t){this.contactService=t,this.contactViewModel=new LU,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:t=>{console.log("Submitted form"),this.success=!0},error:t=>{console.error(t),this.error=!0},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(TM))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Ot],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post"],["class","text-danger"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),q(3,VU,22,4,"form",2)(4,jU,2,0,"p")(5,HU,2,0,"p",3),p()),2&r&&(C(3),Ho(3,o.success||o.error?-1:3),C(1),Ho(4,o.success?4:-1),C(1),Ho(5,o.error?5:-1))},dependencies:[zc,Bc,gi,Rc,Oc,_i,Gc,na,yi]})}return e})();const AM=()=>["/pro"];let BU=(()=>{class e{scrollToAnchor(t){return document.querySelector(t)?.scrollIntoView(!0),!1}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Ot],decls:131,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"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),y(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),y(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),y(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),y(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),y(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),y(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),y(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),y(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),y(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),y(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),y(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),y(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),y(129,"i",5),p()()(),y(130,"img",24),p()),2&r&&(C(25),E("routerLink",ee(2,AM)),C(63),E("routerLink",ee(3,AM)))},dependencies:[Mn]})}return e})();const Gt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},$U=()=>["/usage"];let GU=(()=>{class e{constructor(){this.versions=Gt}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Ot],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["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(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),y(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),y(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&r&&(C(15),E("routerLink",ee(5,$U)),C(22),Hn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),C(5),Hn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net8.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),C(20),Hn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),C(9),Hn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[Mn]})}return e})(),xM=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Ot],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),y(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),y(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),y(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),y(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),y(28,"i",15),f(29," Over 60 million downloads on Nuget"),p()()()()())},encapsulation:2})}return e})();const zU=()=>["/pro"],qU=()=>["/usage"],WU=()=>["/getstarted"],ZU=()=>["/features"];let YU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-home"]],standalone:!0,features:[Ot],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"div",2),y(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),y(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),y(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),y(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),y(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),y(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),y(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),y(85,"i",27),f(86," GitHub"),p()()()(),y(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),y(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),y(110,"img",33),p()(),h(111,"div",34)(112,"a",35),y(113,"img",36),p()()()()()),2&r&&(C(45),E("routerLink",ee(4,zU)),C(12),E("routerLink",ee(5,qU)),C(24),E("routerLink",ee(6,WU)),C(15),E("routerLink",ee(7,ZU)))},dependencies:[Mn,xM],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]})}return e})(),QU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Ot],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),y(3,"i",2),f(4," The requested page does not exist.\n"),p())}})}return e})();class NM{constructor(){this.error=null,this.licenses=[]}}class XU{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let RM=(()=>{class e{initCodeFlow(){const o=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+o),location.href=o}validateStateAndExtractCode(){let t=location.href;const r=t.indexOf("?");r>-1&&(t=t.substring(r+1));const o=this.parseQueryString(t);return o.state&&o.code&&this.validateNonce(o.state)?o.code:null}createAndSaveNonce(){const t=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",t),t}validateNonce(t){let r;return typeof window.localStorage<"u"&&(r=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),r&&0!==r.length?r===t||(console.error("Validating nonce failed. Values do not match.",r,t),!1):(console.error("Validating nonce failed. No saved nonce available.",r,t),!1)}createNonce(){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let r=45,o="";const i=typeof self>"u"?null:self.crypto||self.msCrypto;if(i){let a=new Uint8Array(r);i.getRandomValues(a),a.map||(a.map=Array.prototype.map);const l=[];for(var s=0;s0&&(c=decodeURIComponent(a),u=decodeURIComponent(l),"/"===c.substring(0,1)&&(c=c.substring(1)),r[c]=u);return r}base64UrlEncode(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),OM=(()=>{class e{constructor(t){this.httpClient=t}getLicense(t){return this.httpClient.get(`${ye_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(t)}`)}getTrialLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/triallicense`,t)}getPaddleLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/paddlelicense`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(eg))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),JU=(()=>{class e{constructor(){this.isActive=!1,this.isActive=new Date["/contact"];function tB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(2);C(2),be(t.license.error),C(3),E("routerLink",ee(2,og))}}function nB(e,n){1&e&&(h(0,"div")(1,"p"),f(2,"Please become a "),h(3,"a",74),f(4,"GitHub sponsor"),p(),f(5," first."),p()())}function rB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function oB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function iB(e,n){if(1&e){const t=Fe();h(0,"div")(1,"label",75),f(2,"Thank you for becoming a sponsor. Here's your license:"),p(),h(3,"textarea",76),f(4),p(),h(5,"button",77),R("click",function(){return re(t),oe(P(2).copy())}),q(6,rB,3,0,"span",34)(7,oB,3,0,"span",34),p()()}if(2&e){const t=P(2);C(4),be(t.license.license),C(2),E("ngIf",!t.licenseCopied),C(1),E("ngIf",t.licenseCopied)}}function sB(e,n){if(1&e&&(h(0,"div",20),q(1,tB,8,3,"div",34)(2,nB,6,0,"div",34)(3,iB,8,3,"div",34),p()),2&e){const t=P();C(1),E("ngIf",t.license.error),C(1),E("ngIf",!t.license.error&&!t.license.isSponsor),C(1),E("ngIf",!t.license.error&&t.license.isSponsor&&t.license.license)}}const PM=e=>({active:e});function aB(e,n){if(1&e){const t=Fe();h(0,"span",80)(1,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!1)}),y(2,"i",82),f(3," Annual subscription"),p(),h(4,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!0)}),y(5,"i",83),f(6," Lifetime license"),p()()}if(2&e){const t=P();C(1),E("ngClass",Ms(2,PM,!t.lifetimeLicense)),C(3),E("ngClass",Ms(4,PM,t.lifetimeLicense))}}function lB(e,n){if(1&e){const t=Fe();h(0,"button",103),R("click",function(){return re(t),oe(P(2).requestTrial())}),y(1,"i",25),f(2," Start trial"),p()}2&e&&E("disabled",P(2).trialDisabled)}function cB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function uB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function dB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function fB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("individual"))}),y(1,"i",106),f(2," Buy now"),p()}}function hB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function pB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function gB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function mB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("team"))}),y(1,"i",106),f(2," Buy now"),p()}}function vB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function yB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function _B(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function CB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("enterprise"))}),y(1,"i",106),f(2," Buy now"),p()}}function DB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function wB(e,n){if(1&e&&(h(0,"div",2)(1,"div",84)(2,"div",85),y(3,"img",86),h(4,"h4",87),f(5,"Free"),y(6,"br"),f(7,"Trial"),p(),h(8,"p"),y(9,"i",88),f(10," Get full access"),y(11,"br")(12,"i",89),f(13," 10 day trial period "),p(),q(14,lB,3,1,"button",90)(15,cB,2,0,"button",91),p()(),h(16,"div",92)(17,"div",93),y(18,"img",94),h(19,"h4",87),f(20,"Individual"),y(21,"br"),f(22),p(),h(23,"p"),y(24,"i",95),f(25," Per developer license."),y(26,"br"),q(27,uB,3,0,"ng-container",34)(28,dB,3,0,"ng-container",34),p(),q(29,fB,3,0,"button",96)(30,hB,2,0,"button",91),p()(),h(31,"div",97)(32,"div",93),y(33,"img",98),h(34,"h4",87),f(35,"Team"),y(36,"br"),f(37),p(),h(38,"p"),y(39,"i",99),f(40," Up to 10 developers."),y(41,"br"),q(42,pB,3,0,"ng-container",34)(43,gB,3,0,"ng-container",34),p(),q(44,mB,3,0,"button",96)(45,vB,2,0,"button",91),p()(),h(46,"div",100)(47,"div",93),y(48,"img",101),h(49,"h4",87),f(50,"Enterprise"),y(51,"br"),f(52),p(),h(53,"p"),y(54,"i",102),f(55," Unlimited developers."),y(56,"br"),q(57,yB,3,0,"ng-container",34)(58,_B,3,0,"ng-container",34),p(),q(59,CB,3,0,"button",96)(60,DB,2,0,"button",91),p()()()),2&e){const t=P();C(14),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleIndividualLifetimeLicensePrice:t.paddleIndividualLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleTeamLifetimeLicensePrice:t.paddleTeamLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleEnterpriseLifetimeLicensePrice:t.paddleEnterpriseLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle)}}function bB(e,n){1&e&&(Dt(0),h(1,"div",70)(2,"span",71),f(3,"Loading..."),p()(),h(4,"span",108),f(5,"Your license is being generated. Please wait."),p(),wt())}function EB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(3);C(2),be(t.paddleLicense.error),C(3),E("routerLink",ee(2,og))}}function IB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function MB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function SB(e,n){if(1&e){const t=Fe();h(0,"div",112)(1,"textarea",113),f(2),p(),h(3,"button",77),R("click",function(){const i=re(t).$implicit;return oe(P(4).copyPaddle(i))}),q(4,IB,3,0,"span",34)(5,MB,3,0,"span",34),p()()}if(2&e){const t=n.$implicit,r=P(4);C(2),be(t),C(2),E("ngIf",-1===r.copiedPaddledLicenses.indexOf(t)),C(1),E("ngIf",r.copiedPaddledLicenses.indexOf(t)>-1)}}function TB(e,n){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),q(3,SB,6,3,"div",111),p()),2&e){const t=P(3);C(3),E("ngForOf",t.paddleLicense.licenses)}}function AB(e,n){if(1&e&&(h(0,"div",109),q(1,EB,8,3,"div",34)(2,TB,4,1,"div",34),p()),2&e){const t=P(2);C(1),E("ngIf",t.paddleLicense.error),C(1),E("ngIf",!t.paddleLicense.error)}}function xB(e,n){if(1&e&&(h(0,"div",2),q(1,bB,6,0,"ng-container",34)(2,AB,3,2,"div",107),p()),2&e){const t=P();C(1),E("ngIf",t.paddleLicenseRequested&&!t.paddleLicense),C(1),E("ngIf",t.paddleLicense)}}function NB(e,n){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const Di=()=>["/features"];let RB=(()=>{class e{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(t){this._lifetimeLicense=t,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(t,r,o){this.oauthService=t,this.licenseService=r,this.trackingService=o,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=i=>{this.paddleCheckoutComplete(i)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,i=>{this.paddleIndividualLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762580,i=>{this.paddleTeamLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762581,i=>{this.paddleEnterpriseLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(833943,i=>{this.paddleIndividualLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833944,i=>{this.paddleTeamLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833945,i=>{this.paddleEnterpriseLifetimeLicensePrice=i.price.gross})}ngOnInit(){const t=this.oauthService.validateStateAndExtractCode();null!==t?(console.log("Code received",t),this.licenseRequested=!0,this.licenseService.getLicense(t).subscribe({next:r=>{console.log("Received license response"),this.license=r,this.scrollToGithub()},error:r=>{console.error(r),this.license=new XU,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(t){console.error("Failed to copy license",t)}}copyPaddle(t){try{navigator.clipboard.writeText(t),this.copiedPaddledLicenses.push(t)}catch(r){console.error("Failed to copy paddle license",r)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:t=>{console.log("Received trial license response"),this.paddleLicense=t,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:t=>{console.error(t),this.paddleLicense=new NM,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(t){"enterprise"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:t,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(t){console.log("Checkout completed",t),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(t).subscribe({next:r=>{console.log("Received paddle license response"),this.paddleLicense=r,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:t.product.name,lifetimeLicense:this.lifetimeLicense}})},error:r=>{console.error(r),this.paddleLicense=new NM,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(RM),S(OM),S(JU))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Ot],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block position-relative",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5","testimonial"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block","position-relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[1,"position-relative","paddle-loading"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(r,o){if(1&r&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),y(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),y(19,"i",10),p()(),h(20,"td",11),y(21,"i",12),p(),h(22,"td",11),y(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),y(28,"i",10),p()(),h(29,"td",11),y(30,"i",12),p(),h(31,"td",11),y(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),y(37,"i",10),p()(),h(38,"td",11),y(39,"i",12),p(),h(40,"td",11),y(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),y(46,"i",10),p()(),h(47,"td",11),y(48,"i",12),p(),h(49,"td",11),y(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),y(55,"i",10),p()(),y(56,"td",11),h(57,"td",11),y(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),y(63,"i",10),p()(),y(64,"td",11),h(65,"td",11),y(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),y(72,"td",11),h(73,"td",11),y(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),y(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),y(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),y(111,"i",23),f(112," Become a GitHub sponsor"),p(),y(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),y(117,"i",25),f(118," Get license"),p(),q(119,KU,3,0,"div",26),p(),q(120,eB,2,0,"div",27)(121,sB,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),q(127,aB,7,6,"span",31),p(),q(128,wB,61,17,"div",32)(129,xB,3,2,"div",32),h(130,"div",33),q(131,NB,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),y(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),y(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),y(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),y(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),y(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),y(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),y(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),y(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&r){const i=Gf(206);C(18),E("routerLink",ee(18,Di)),C(9),E("routerLink",ee(19,Di)),C(9),E("routerLink",ee(20,Di)),C(9),E("routerLink",ee(21,Di)),C(9),E("routerLink",ee(22,Di)),C(8),E("routerLink",ee(23,Di)),C(35),E("routerLink",ee(24,og)),C(19),E("disabled",o.licenseRequested),C(3),E("ngIf",o.licenseRequested&&!o.license),C(1),E("ngIf",!o.license),C(1),E("ngIf",o.license),C(6),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",o.paddleLicenseRequested),C(2),E("ngIf",!o.lifetimeLicense),C(82),E("ngModel",o.requestTrialData.name),C(6),E("ngModel",o.requestTrialData.email),C(8),E("disabled",!i.valid)}},dependencies:[Mn,Hh,Uh,uc,zc,Bc,gi,Rc,Oc,_i,Qp,Gc,na,yi,xM],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}.paddle-loading[_ngcontent-%COMP%]{position:relative;left:35px;top:-20px}.testimonial[_ngcontent-%COMP%]{max-width:550px;margin:auto}"]})}return e})();class Xc{constructor(n,t,r,o,i,s){this.name=n,this.url=t,this.runtimes=r,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(n){return n.tool}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?'"':"";return`\r\n${r}-${n}:${t}${r}`}formatArguments(n,t){return this.formatArgument(n,t.filter(r=>null!=r&&0!==r.length&&0!==r.trim().length).join(";"))}}class OB extends Xc{formatExecutable(n){let t=`- task: ${n.tool}@${Gt.majorVersion}`;return t+="\r\n displayName: ReportGenerator",t+="\r\n inputs:",console.log("hello",t),t}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class PB{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(n){return this.sourcedirectories.splice(n,1),!1}addReport(){return this.reports.push(""),!1}removeReport(n){return this.reports.splice(n,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(n){return this.plugins.splice(n,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(n){return this.assemblyfilters.splice(n,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(n){return this.classfilters.splice(n,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(n){return this.filefilters.splice(n,1),!1}getUsage(n,t){const r=n.executables.find(a=>a.runtime==t);let o=void 0!==r?n.formatExecutable(r):"";o+=n.formatArguments("reports",this.reports),o+=n.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=n.formatArgument("reporttypes",i)),o+=n.formatArguments("sourcedirs",this.sourcedirectories),o+=n.formatArgument("historydir",this.historydir),o+=n.formatArguments("plugins",this.plugins),o+=n.formatArguments("assemblyfilters",this.assemblyfilters),o+=n.formatArguments("classfilters",this.classfilters),o+=n.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=n.formatArgument("verbosity",this.selectedverbosity)),o+=n.formatArgument("title",this.title),o+=n.formatArgument("tag",this.tag),o+=n.formatArgument("license",this.license),o}historyDirRequired(){for(let n=0;n-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class ig{constructor(n,t){this.tool=n,this.command=t}}function FB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return re(t),oe(P().selectedEnvironment=o)})("ngModelChange",function(){return re(t),oe(P().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=n.$implicit,r=P();C(2),E("ngModel",r.selectedEnvironment)("value",t)("checked",r.selectedEnvironment.name===t.name),C(2),be(t.name),C(3),be(t.description)}}function LB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return re(t),oe(P(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=P().$implicit,r=P(2);C(2),E("ngModel",r.selectedPackage)("value",t),C(2),be(t.name),C(3),be(t.description)}}function VB(e,n){if(1&e&&(Dt(0),q(1,LB,8,4,"div",40),wt()),2&e){const t=n.$implicit,r=P(2);C(1),E("ngIf",t.runtimes.indexOf(r.selectedEnvironment.name)>-1)}}function jB(e,n){if(1&e&&(Dt(0),h(1,"h4"),f(2,"NuGet Package"),p(),q(3,VB,2,1,"ng-container",39),wt()),2&e){const t=P();C(3),E("ngForOf",t.packages)}}function HB(e,n){if(1&e){const t=Fe();h(0,"span",45),R("click",function(){re(t);const o=P().index;return oe(P().configuration.removeReport(o))}),h(1,"a",46),y(2,"i",47),p()()}}const UB=e=>({"input-group":e});function BB(e,n){if(1&e){const t=Fe();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.reports[s]=o)}),p(),q(3,HB,3,0,"span",44),p()()}if(2&e){const t=n.index,r=P();C(1),E("ngClass",Ms(4,UB,t>0)),C(1),jn("name","report_",t,""),E("ngModel",r.configuration.reports[t]),C(1),E("ngIf",t>0)}}const $B=(e,n)=>({"btn-outline-primary":e,"btn-primary":n});function GB(e,n){if(1&e){const t=Fe();h(0,"button",48),R("click",function(){const i=re(t).$implicit,s=P();return oe(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const t=n.$implicit,r=P();E("ngClass",zD(2,$B,t!==r.configuration.selectedType,t===r.configuration.selectedType)),C(1),be(t)}}function zB(e,n){if(1&e){const t=Fe();h(0,"span",53),y(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return re(t),oe(P(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function qB(e,n){if(1&e&&(Dt(0),y(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),y(6,"i",56),p(),wt()),2&e){const t=P(2).$implicit;C(2),E("href",t.sampleReport,bo),C(3),E("href",t.sampleReport,bo)}}function WB(e,n){if(1&e){const t=Fe();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){re(t);const o=P().$implicit;return oe(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),q(5,zB,5,0,"span",52),y(6,"br"),h(7,"div",38),f(8),q(9,qB,7,2,"ng-container",5),p()()()}if(2&e){const t=P().$implicit,r=P();C(2),E("checked",t.checked),C(2),be(t.name),C(1),E("ngIf",t.checked&&t.requiresHistoryDir&&!r.configuration.historydir),C(3),Hn("",t.description," "),C(1),E("ngIf",t.sampleReport)}}function ZB(e,n){if(1&e&&(Dt(0),q(1,WB,10,5,"div",49),wt()),2&e){const t=n.$implicit,r=P();C(1),E("ngIf",!r.configuration.selectedType||t.types.indexOf(r.configuration.selectedType)>-1)}}function YB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeSourceDirectory(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","sourcedir_",t,""),E("ngModel",r.configuration.sourcedirectories[t])}}function QB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removePlugin(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","plugin_",t,""),E("ngModel",r.configuration.plugins[t])}}function XB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeAssemblyFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","assemblyfilter_",t,""),E("ngModel",r.configuration.assemblyfilters[t])}}function JB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeClassFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","classfilter_",t,""),E("ngModel",r.configuration.classfilters[t])}}function KB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeFileFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","filefilter_",t,""),E("ngModel",r.configuration.filefilters[t])}}function e$(e,n){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const t=n.$implicit;E("value",t),C(1),be(t)}}function t$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function n$(e,n){1&e&&(y(0,"i",65),f(1," Copied "))}function r$(e,n){1&e&&(y(0,"i",66),f(1," Copy "))}function o$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function i$(e,n){1&e&&(y(0,"i",65),f(1," Copied "))}function s$(e,n){1&e&&(y(0,"i",66),f(1," Copy "))}const a$=()=>["/pro"],l$=[{path:"",component:YU,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:BU,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:GU,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{class e{constructor(){this.versions=Gt,this.lastResult="",this.usageCopied=!1,this.configuration=new PB,this.environments=[new Jc(".NET Core",".NET Core"),new Jc(".NET Framework","The full .NET framework"),new Jc("Azure DevOps",null),new Jc("Github Action",null)],this.packages=[new Xc("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new ig("Package Manager",`Install-Package ReportGenerator -Version ${Gt.version}`),new ig(".NET CLI",`dotnet add package ReportGenerator --version ${Gt.version}`)],[new ia(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net47\\ReportGenerator.exe`),new ia(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new Xc("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new ig(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Gt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Gt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Gt.version}`)],[new ia(".NET Core","reportgenerator")]),new OB("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new ia("Azure DevOps","reportgenerator")]),new kB("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new ia("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const t=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==t&&(this.lastResult=t,this.usageCopied=!1),t}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(t){console.error("Failed to copy license",t)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Ot],decls:219,vars:39,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-check","text-success"],[1,"fa-solid","fa-copy"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),q(8,FB,8,5,"div",4),y(9,"hr"),q(10,jB,4,1,"ng-container",5),y(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),y(16,"br"),f(17,"Globbing is supported."),p(),q(18,BB,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),y(21,"i",10),f(22," Add report"),p()(),y(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),y(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),q(39,GB,2,5,"button",14),y(40,"br"),q(41,ZB,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),y(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),q(48,YB,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),y(51,"i",10),f(52," Add source directory"),p()(),y(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),y(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),y(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),q(76,QB,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),y(79,"i",10),f(80," Add plugin"),p()(),y(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),y(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),y(91,"br"),f(92,"Wildcards are allowed."),y(93,"br"),h(94,"p"),f(95,"Examples:"),y(96,"br"),h(97,"code"),f(98,"+Included"),p(),y(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),q(102,XB,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),y(105,"i",10),f(106," Add assembly filter"),p()(),y(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),y(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),y(117,"br"),f(118,"Wildcards are allowed."),y(119,"br"),h(120,"p"),f(121,"Examples:"),y(122,"br"),h(123,"code"),f(124,"+Included"),p(),y(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),q(128,JB,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),y(131,"i",10),f(132," Add class filter"),p()(),y(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),y(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),y(143,"br"),f(144,"Wildcards are allowed."),y(145,"br"),h(146,"p"),f(147,"Examples:"),y(148,"br"),h(149,"code"),f(150,"+Included"),p(),y(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),q(154,KB,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),y(157,"i",10),f(158," Add file filter"),p()(),y(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),q(166,e$,2,2,"option",22),p()(),y(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),y(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),y(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),q(197,t$,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),q(203,n$,2,0)(204,r$,2,0),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),q(211,o$,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),q(217,i$,2,0)(218,s$,2,0),p()()()()()),2&r&&(C(8),E("ngForOf",o.environments),C(2),E("ngIf",o.severalPackagesAvailable()),C(8),E("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.targetdir),C(10),E("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),C(2),E("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),C(7),E("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),C(16),E("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),C(12),E("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.selectedverbosity),C(1),E("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),C(7),E("ngModel",o.configuration.title),C(7),E("ngModel",o.configuration.tag),C(6),E("routerLink",ee(38,a$)),C(3),E("ngModel",o.configuration.license),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),Ho(203,o.usageCopied?203:204),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),Ho(217,o.usageCopied?217:218))},dependencies:[zc,Bc,QI,JI,gi,$c,zp,Rc,Oc,_i,Xp,na,yi,Hh,Uh,uc,Mn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]})}return e})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:RB,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:UU,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:QU,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function bV(e,n){return gF({rootComponent:e,...Zb(n)})})(uH,{providers:[iv(AV,(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[eI.forRoot(l$,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),eI]})}return e})(),zc),RM,OM,TM,function xU(...e){const n=[eg,vM,gM,{provide:qc,useExisting:gM},{provide:Wc,useExisting:vM},{provide:oa,useValue:AU,multi:!0},{provide:rg,useValue:!0},{provide:CM,useClass:TU}];for(const t of e)n.push(...t.\u0275providers);return ud(n)}(function NU(){return function zr(e,n){return{\u0275kind:e,\u0275providers:n}}(mr.LegacyInterceptors,[{provide:DM,useFactory:_U},{provide:oa,useExisting:DM,multi:!0}])}())]}).catch(e=>console.error(e))}},Kc=>{Kc(Kc.s=139)}]); \ No newline at end of file diff --git a/docs/pro.html b/docs/pro.html index 41187afa..fd2f79de 100644 --- a/docs/pro.html +++ b/docs/pro.html @@ -12,5 +12,5 @@ - + \ No newline at end of file diff --git a/docs/usage.html b/docs/usage.html index 49dd61e8..84975a38 100644 --- a/docs/usage.html +++ b/docs/usage.html @@ -12,5 +12,5 @@ - + \ No newline at end of file