From e3eb37c13785a16d50287d813fa37b6747588417 Mon Sep 17 00:00:00 2001 From: shreyakhajanchi <92910380+shreyakhajanchi@users.noreply.github.com> Date: Fri, 10 Nov 2023 12:33:33 +0530 Subject: [PATCH] added pulse check to check BE health (#647) * added health check * minor change * addressing comments * addressing comments * ng build files --- ui/dist/ui/index.html | 4 +- ui/dist/ui/main.5614d3df47e8a559.js | 1 - ui/dist/ui/main.df84b5efa11daeaf.js | 1 + ...23ef69.css => styles.6d8ba0a3d523f825.css} | 2 +- ui/src/app/components/home/home.component.ts | 5 +- .../infodialog/infodialog.component.html | 3 +- .../backend-health.service.spec.ts | 16 ++++ .../backend-health/backend-health.service.ts | 75 +++++++++++++++++++ ui/src/app/services/fetch/fetch.service.ts | 3 + ui/src/styles.scss | 5 +- webv2/routes.go | 1 + webv2/web.go | 4 + 12 files changed, 112 insertions(+), 8 deletions(-) delete mode 100644 ui/dist/ui/main.5614d3df47e8a559.js create mode 100644 ui/dist/ui/main.df84b5efa11daeaf.js rename ui/dist/ui/{styles.77cd407a0323ef69.css => styles.6d8ba0a3d523f825.css} (93%) create mode 100644 ui/src/app/services/backend-health/backend-health.service.spec.ts create mode 100644 ui/src/app/services/backend-health/backend-health.service.ts diff --git a/ui/dist/ui/index.html b/ui/dist/ui/index.html index b0f0d539d..677cd3c87 100644 --- a/ui/dist/ui/index.html +++ b/ui/dist/ui/index.html @@ -7,9 +7,9 @@ - + - + \ No newline at end of file diff --git a/ui/dist/ui/main.5614d3df47e8a559.js b/ui/dist/ui/main.5614d3df47e8a559.js deleted file mode 100644 index ac69f3af6..000000000 --- a/ui/dist/ui/main.5614d3df47e8a559.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkui=self.webpackChunkui||[]).push([[179],{640:(Zl,G,Te)=>{"use strict";function H(t){return"function"==typeof t}function R(t){const e=t(i=>{Error.call(i),i.stack=(new Error).stack});return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}const A=R(t=>function(e){t(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((i,o)=>`${o+1}) ${i.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e});function x(t,n){if(t){const e=t.indexOf(n);0<=e&&t.splice(e,1)}}class k{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:e}=this;if(e)if(this._parentage=null,Array.isArray(e))for(const r of e)r.remove(this);else e.remove(this);const{initialTeardown:i}=this;if(H(i))try{i()}catch(r){n=r instanceof A?r.errors:[r]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const r of o)try{U(r)}catch(s){n=null!=n?n:[],s instanceof A?n=[...n,...s.errors]:n.push(s)}}if(n)throw new A(n)}}add(n){var e;if(n&&n!==this)if(this.closed)U(n);else{if(n instanceof k){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(e=this._finalizers)&&void 0!==e?e:[]).push(n)}}_hasParent(n){const{_parentage:e}=this;return e===n||Array.isArray(e)&&e.includes(n)}_addParent(n){const{_parentage:e}=this;this._parentage=Array.isArray(e)?(e.push(n),e):e?[e,n]:n}_removeParent(n){const{_parentage:e}=this;e===n?this._parentage=null:Array.isArray(e)&&x(e,n)}remove(n){const{_finalizers:e}=this;e&&x(e,n),n instanceof k&&n._removeParent(this)}}k.EMPTY=(()=>{const t=new k;return t.closed=!0,t})();const $=k.EMPTY;function q(t){return t instanceof k||t&&"closed"in t&&H(t.remove)&&H(t.add)&&H(t.unsubscribe)}function U(t){H(t)?t():t.unsubscribe()}const z={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},T={setTimeout(t,n,...e){const{delegate:i}=T;return(null==i?void 0:i.setTimeout)?i.setTimeout(t,n,...e):setTimeout(t,n,...e)},clearTimeout(t){const{delegate:n}=T;return((null==n?void 0:n.clearTimeout)||clearTimeout)(t)},delegate:void 0};function L(t){T.setTimeout(()=>{const{onUnhandledError:n}=z;if(!n)throw t;n(t)})}function S(){}const P=W("C",void 0,void 0);function W(t,n,e){return{kind:t,value:n,error:e}}let te=null;function J(t){if(z.useDeprecatedSynchronousErrorHandling){const n=!te;if(n&&(te={errorThrown:!1,error:null}),t(),n){const{errorThrown:e,error:i}=te;if(te=null,e)throw i}}else t()}class he extends k{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,q(n)&&n.add(this)):this.destination=ge}static create(n,e,i){return new at(n,e,i)}next(n){this.isStopped?w(function B(t){return W("N",t,void 0)}(n),this):this._next(n)}error(n){this.isStopped?w(function I(t){return W("E",void 0,t)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?w(P,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 Ie=Function.prototype.bind;function ue(t,n){return Ie.call(t,n)}class Ve{constructor(n){this.partialObserver=n}next(n){const{partialObserver:e}=this;if(e.next)try{e.next(n)}catch(i){j(i)}}error(n){const{partialObserver:e}=this;if(e.error)try{e.error(n)}catch(i){j(i)}else j(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(e){j(e)}}}class at extends he{constructor(n,e,i){let o;if(super(),H(n)||!n)o={next:null!=n?n:void 0,error:null!=e?e:void 0,complete:null!=i?i:void 0};else{let r;this&&z.useDeprecatedNextContext?(r=Object.create(n),r.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&ue(n.next,r),error:n.error&&ue(n.error,r),complete:n.complete&&ue(n.complete,r)}):o=n}this.destination=new Ve(o)}}function j(t){z.useDeprecatedSynchronousErrorHandling?function ye(t){z.useDeprecatedSynchronousErrorHandling&&te&&(te.errorThrown=!0,te.error=t)}(t):L(t)}function w(t,n){const{onStoppedNotification:e}=z;e&&T.setTimeout(()=>e(t,n))}const ge={closed:!0,next:S,error:function fe(t){throw t},complete:S},bt="function"==typeof Symbol&&Symbol.observable||"@@observable";function Me(t){return t}let Ue=(()=>{class t{constructor(e){e&&(this._subscribe=e)}lift(e){const i=new t;return i.source=this,i.operator=e,i}subscribe(e,i,o){const r=function ut(t){return t&&t instanceof he||function re(t){return t&&H(t.next)&&H(t.error)&&H(t.complete)}(t)&&q(t)}(e)?e:new at(e,i,o);return J(()=>{const{operator:s,source:a}=this;r.add(s?s.call(r,a):a?this._subscribe(r):this._trySubscribe(r))}),r}_trySubscribe(e){try{return this._subscribe(e)}catch(i){e.error(i)}}forEach(e,i){return new(i=ae(i))((o,r)=>{const s=new at({next:a=>{try{e(a)}catch(l){r(l),s.unsubscribe()}},error:r,complete:o});this.subscribe(s)})}_subscribe(e){var i;return null===(i=this.source)||void 0===i?void 0:i.subscribe(e)}[bt](){return this}pipe(...e){return function Oe(t){return 0===t.length?Me:1===t.length?t[0]:function(e){return t.reduce((i,o)=>o(i),e)}}(e)(this)}toPromise(e){return new(e=ae(e))((i,o)=>{let r;this.subscribe(s=>r=s,s=>o(s),()=>i(r))})}}return t.create=n=>new t(n),t})();function ae(t){var n;return null!==(n=null!=t?t:z.Promise)&&void 0!==n?n:Promise}const qe=R(t=>function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let ie=(()=>{class t extends Ue{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(e){const i=new vn(this,this);return i.operator=e,i}_throwIfClosed(){if(this.closed)throw new qe}next(e){J(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const i of this.currentObservers)i.next(e)}})}error(e){J(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=e;const{observers:i}=this;for(;i.length;)i.shift().error(e)}})}complete(){J(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:e}=this;for(;e.length;)e.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var e;return(null===(e=this.observers)||void 0===e?void 0:e.length)>0}_trySubscribe(e){return this._throwIfClosed(),super._trySubscribe(e)}_subscribe(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)}_innerSubscribe(e){const{hasError:i,isStopped:o,observers:r}=this;return i||o?$:(this.currentObservers=null,r.push(e),new k(()=>{this.currentObservers=null,x(r,e)}))}_checkFinalizedStatuses(e){const{hasError:i,thrownError:o,isStopped:r}=this;i?e.error(o):r&&e.complete()}asObservable(){const e=new Ue;return e.source=this,e}}return t.create=(n,e)=>new vn(n,e),t})();class vn extends ie{constructor(n,e){super(),this.destination=n,this.source=e}next(n){var e,i;null===(i=null===(e=this.destination)||void 0===e?void 0:e.next)||void 0===i||i.call(e,n)}error(n){var e,i;null===(i=null===(e=this.destination)||void 0===e?void 0:e.error)||void 0===i||i.call(e,n)}complete(){var n,e;null===(e=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===e||e.call(n)}_subscribe(n){var e,i;return null!==(i=null===(e=this.source)||void 0===e?void 0:e.subscribe(n))&&void 0!==i?i:$}}function ei(t){return H(null==t?void 0:t.lift)}function nt(t){return n=>{if(ei(n))return n.lift(function(e){try{return t(e,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function st(t,n,e,i,o){return new zn(t,n,e,i,o)}class zn extends he{constructor(n,e,i,o,r,s){super(n),this.onFinalize=r,this.shouldUnsubscribe=s,this._next=e?function(a){try{e(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=i?function(){try{i()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:e}=this;super.unsubscribe(),!e&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function je(t,n){return nt((e,i)=>{let o=0;e.subscribe(st(i,r=>{i.next(t.call(n,r,o++))}))})}function Ui(t){return this instanceof Ui?(this.v=t,this):new Ui(t)}function yn(t,n,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,i=e.apply(t,n||[]),r=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(v){i[v]&&(o[v]=function(C){return new Promise(function(M,V){r.push([v,C,M,V])>1||a(v,C)})})}function a(v,C){try{!function l(v){v.value instanceof Ui?Promise.resolve(v.value.v).then(u,p):g(r[0][2],v)}(i[v](C))}catch(M){g(r[0][3],M)}}function u(v){a("next",v)}function p(v){a("throw",v)}function g(v,C){v(C),r.shift(),r.length&&a(r[0][0],r[0][1])}}function Ta(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=function Xt(t){var n="function"==typeof Symbol&&Symbol.iterator,e=n&&t[n],i=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(t),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(r){e[r]=t[r]&&function(s){return new Promise(function(a,l){!function o(r,s,a,l){Promise.resolve(l).then(function(u){r({value:u,done:a})},s)}(a,l,(s=t[r](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Xp=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function jv(t){return H(null==t?void 0:t.then)}function Hv(t){return H(t[bt])}function Uv(t){return Symbol.asyncIterator&&H(null==t?void 0:t[Symbol.asyncIterator])}function zv(t){return new TypeError(`You provided ${null!==t&&"object"==typeof t?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const $v=function CI(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Gv(t){return H(null==t?void 0:t[$v])}function Wv(t){return yn(this,arguments,function*(){const e=t.getReader();try{for(;;){const{value:i,done:o}=yield Ui(e.read());if(o)return yield Ui(void 0);yield yield Ui(i)}}finally{e.releaseLock()}})}function qv(t){return H(null==t?void 0:t.getReader)}function yi(t){if(t instanceof Ue)return t;if(null!=t){if(Hv(t))return function wI(t){return new Ue(n=>{const e=t[bt]();if(H(e.subscribe))return e.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(t);if(Xp(t))return function DI(t){return new Ue(n=>{for(let e=0;e{t.then(e=>{n.closed||(n.next(e),n.complete())},e=>n.error(e)).then(null,L)})}(t);if(Uv(t))return Kv(t);if(Gv(t))return function MI(t){return new Ue(n=>{for(const e of t)if(n.next(e),n.closed)return;n.complete()})}(t);if(qv(t))return function xI(t){return Kv(Wv(t))}(t)}throw zv(t)}function Kv(t){return new Ue(n=>{(function TI(t,n){var e,i,o,r;return function Re(t,n,e,i){return new(e||(e=Promise))(function(r,s){function a(p){try{u(i.next(p))}catch(g){s(g)}}function l(p){try{u(i.throw(p))}catch(g){s(g)}}function u(p){p.done?r(p.value):function o(r){return r instanceof e?r:new e(function(s){s(r)})}(p.value).then(a,l)}u((i=i.apply(t,n||[])).next())})}(this,void 0,void 0,function*(){try{for(e=Ta(t);!(i=yield e.next()).done;)if(n.next(i.value),n.closed)return}catch(s){o={error:s}}finally{try{i&&!i.done&&(r=e.return)&&(yield r.call(e))}finally{if(o)throw o.error}}n.complete()})})(t,n).catch(e=>n.error(e))})}function kr(t,n,e,i=0,o=!1){const r=n.schedule(function(){e(),o?t.add(this.schedule(null,i)):this.unsubscribe()},i);if(t.add(r),!o)return r}function $n(t,n,e=1/0){return H(n)?$n((i,o)=>je((r,s)=>n(i,r,o,s))(yi(t(i,o))),e):("number"==typeof n&&(e=n),nt((i,o)=>function kI(t,n,e,i,o,r,s,a){const l=[];let u=0,p=0,g=!1;const v=()=>{g&&!l.length&&!u&&n.complete()},C=V=>u{r&&n.next(V),u++;let K=!1;yi(e(V,p++)).subscribe(st(n,Y=>{null==o||o(Y),r?C(Y):n.next(Y)},()=>{K=!0},void 0,()=>{if(K)try{for(u--;l.length&&uM(Y)):M(Y)}v()}catch(Y){n.error(Y)}}))};return t.subscribe(st(n,C,()=>{g=!0,v()})),()=>{null==a||a()}}(i,o,t,e)))}function Ql(t=1/0){return $n(Me,t)}const yo=new Ue(t=>t.complete());function Zv(t){return t&&H(t.schedule)}function Jp(t){return t[t.length-1]}function Qv(t){return H(Jp(t))?t.pop():void 0}function Yl(t){return Zv(Jp(t))?t.pop():void 0}function Yv(t,n=0){return nt((e,i)=>{e.subscribe(st(i,o=>kr(i,t,()=>i.next(o),n),()=>kr(i,t,()=>i.complete(),n),o=>kr(i,t,()=>i.error(o),n)))})}function Xv(t,n=0){return nt((e,i)=>{i.add(t.schedule(()=>e.subscribe(i),n))})}function Jv(t,n){if(!t)throw new Error("Iterable cannot be null");return new Ue(e=>{kr(e,n,()=>{const i=t[Symbol.asyncIterator]();kr(e,n,()=>{i.next().then(o=>{o.done?e.complete():e.next(o.value)})},0,!0)})})}function ui(t,n){return n?function NI(t,n){if(null!=t){if(Hv(t))return function OI(t,n){return yi(t).pipe(Xv(n),Yv(n))}(t,n);if(Xp(t))return function PI(t,n){return new Ue(e=>{let i=0;return n.schedule(function(){i===t.length?e.complete():(e.next(t[i++]),e.closed||this.schedule())})})}(t,n);if(jv(t))return function AI(t,n){return yi(t).pipe(Xv(n),Yv(n))}(t,n);if(Uv(t))return Jv(t,n);if(Gv(t))return function RI(t,n){return new Ue(e=>{let i;return kr(e,n,()=>{i=t[$v](),kr(e,n,()=>{let o,r;try{({value:o,done:r}=i.next())}catch(s){return void e.error(s)}r?e.complete():e.next(o)},0,!0)}),()=>H(null==i?void 0:i.return)&&i.return()})}(t,n);if(qv(t))return function FI(t,n){return Jv(Wv(t),n)}(t,n)}throw zv(t)}(t,n):yi(t)}function Tn(...t){const n=Yl(t),e=function II(t,n){return"number"==typeof Jp(t)?t.pop():n}(t,1/0),i=t;return i.length?1===i.length?yi(i[0]):Ql(e)(ui(i,n)):yo}function ey(t={}){const{connector:n=(()=>new ie),resetOnError:e=!0,resetOnComplete:i=!0,resetOnRefCountZero:o=!0}=t;return r=>{let s,a,l,u=0,p=!1,g=!1;const v=()=>{null==a||a.unsubscribe(),a=void 0},C=()=>{v(),s=l=void 0,p=g=!1},M=()=>{const V=s;C(),null==V||V.unsubscribe()};return nt((V,K)=>{u++,!g&&!p&&v();const Y=l=null!=l?l:n();K.add(()=>{u--,0===u&&!g&&!p&&(a=ef(M,o))}),Y.subscribe(K),!s&&u>0&&(s=new at({next:ee=>Y.next(ee),error:ee=>{g=!0,v(),a=ef(C,e,ee),Y.error(ee)},complete:()=>{p=!0,v(),a=ef(C,i),Y.complete()}}),yi(V).subscribe(s))})(r)}}function ef(t,n,...e){if(!0===n)return void t();if(!1===n)return;const i=new at({next:()=>{i.unsubscribe(),t()}});return yi(n(...e)).subscribe(i)}function ln(t){for(let n in t)if(t[n]===ln)return n;throw Error("Could not find renamed property on target object.")}function tf(t,n){for(const e in n)n.hasOwnProperty(e)&&!t.hasOwnProperty(e)&&(t[e]=n[e])}function tn(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(tn).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const n=t.toString();if(null==n)return""+n;const e=n.indexOf("\n");return-1===e?n:n.substring(0,e)}function nf(t,n){return null==t||""===t?null===n?"":n:null==n||""===n?t:t+" "+n}const LI=ln({__forward_ref__:ln});function zt(t){return t.__forward_ref__=zt,t.toString=function(){return tn(this())},t}function Mt(t){return ty(t)?t():t}function ty(t){return"function"==typeof t&&t.hasOwnProperty(LI)&&t.__forward_ref__===zt}class Qe extends Error{constructor(n,e){super(function rf(t,n){return`NG0${Math.abs(t)}${n?": "+n:""}`}(n,e)),this.code=n}}function Dt(t){return"string"==typeof t?t:null==t?"":String(t)}function Ii(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():Dt(t)}function $d(t,n){const e=n?` in ${n}`:"";throw new Qe(-201,`No provider for ${Ii(t)} found${e}`)}function io(t,n){null==t&&function mn(t,n,e,i){throw new Error(`ASSERTION ERROR: ${t}`+(null==i?"":` [Expected=> ${e} ${i} ${n} <=Actual]`))}(n,t,null,"!=")}function Be(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function it(t){return{providers:t.providers||[],imports:t.imports||[]}}function sf(t){return ny(t,Gd)||ny(t,oy)}function ny(t,n){return t.hasOwnProperty(n)?t[n]:null}function iy(t){return t&&(t.hasOwnProperty(af)||t.hasOwnProperty($I))?t[af]:null}const Gd=ln({\u0275prov:ln}),af=ln({\u0275inj:ln}),oy=ln({ngInjectableDef:ln}),$I=ln({ngInjectorDef:ln});var yt=(()=>((yt=yt||{})[yt.Default=0]="Default",yt[yt.Host=1]="Host",yt[yt.Self=2]="Self",yt[yt.SkipSelf=4]="SkipSelf",yt[yt.Optional=8]="Optional",yt))();let lf;function as(t){const n=lf;return lf=t,n}function ry(t,n,e){const i=sf(t);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:e&yt.Optional?null:void 0!==n?n:void $d(tn(t),"Injector")}function ls(t){return{toString:t}.toString()}var Uo=(()=>((Uo=Uo||{})[Uo.OnPush=0]="OnPush",Uo[Uo.Default=1]="Default",Uo))(),zo=(()=>{return(t=zo||(zo={}))[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",zo;var t})();const WI="undefined"!=typeof globalThis&&globalThis,qI="undefined"!=typeof window&&window,KI="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,on=WI||"undefined"!=typeof global&&global||qI||KI,Ea={},cn=[],Wd=ln({\u0275cmp:ln}),cf=ln({\u0275dir:ln}),df=ln({\u0275pipe:ln}),sy=ln({\u0275mod:ln}),Ir=ln({\u0275fac:ln}),Xl=ln({__NG_ELEMENT_ID__:ln});let ZI=0;function Ae(t){return ls(()=>{const e={},i={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===Uo.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||cn,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||zo.Emulated,id:"c",styles:t.styles||cn,_:null,setInput:null,schemas:t.schemas||null,tView:null},o=t.directives,r=t.features,s=t.pipes;return i.id+=ZI++,i.inputs=dy(t.inputs,e),i.outputs=dy(t.outputs),r&&r.forEach(a=>a(i)),i.directiveDefs=o?()=>("function"==typeof o?o():o).map(ay):null,i.pipeDefs=s?()=>("function"==typeof s?s():s).map(ly):null,i})}function ay(t){return Ci(t)||function cs(t){return t[cf]||null}(t)}function ly(t){return function Gs(t){return t[df]||null}(t)}const cy={};function ot(t){return ls(()=>{const n={type:t.type,bootstrap:t.bootstrap||cn,declarations:t.declarations||cn,imports:t.imports||cn,exports:t.exports||cn,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&(cy[t.id]=t.type),n})}function dy(t,n){if(null==t)return Ea;const e={};for(const i in t)if(t.hasOwnProperty(i)){let o=t[i],r=o;Array.isArray(o)&&(r=o[1],o=o[0]),e[o]=i,n&&(n[o]=r)}return e}const oe=Ae;function zi(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function Ci(t){return t[Wd]||null}function Co(t,n){const e=t[sy]||null;if(!e&&!0===n)throw new Error(`Type ${tn(t)} does not have '\u0275mod' property.`);return e}function ar(t){return Array.isArray(t)&&"object"==typeof t[1]}function Go(t){return Array.isArray(t)&&!0===t[1]}function pf(t){return 0!=(8&t.flags)}function Qd(t){return 2==(2&t.flags)}function Yd(t){return 1==(1&t.flags)}function Wo(t){return null!==t.template}function tO(t){return 0!=(512&t[2])}function Zs(t,n){return t.hasOwnProperty(Ir)?t[Ir]:null}class oO{constructor(n,e,i){this.previousValue=n,this.currentValue=e,this.firstChange=i}isFirstChange(){return this.firstChange}}function nn(){return hy}function hy(t){return t.type.prototype.ngOnChanges&&(t.setInput=sO),rO}function rO(){const t=fy(this),n=null==t?void 0:t.current;if(n){const e=t.previous;if(e===Ea)t.previous=n;else for(let i in n)e[i]=n[i];t.current=null,this.ngOnChanges(n)}}function sO(t,n,e,i){const o=fy(t)||function aO(t,n){return t[py]=n}(t,{previous:Ea,current:null}),r=o.current||(o.current={}),s=o.previous,a=this.declaredInputs[e],l=s[a];r[a]=new oO(l&&l.currentValue,n,s===Ea),t[i]=n}nn.ngInherit=!0;const py="__ngSimpleChanges__";function fy(t){return t[py]||null}let bf;function Pn(t){return!!t.listen}const my={createRenderer:(t,n)=>function vf(){return void 0!==bf?bf:"undefined"!=typeof document?document:void 0}()};function Gn(t){for(;Array.isArray(t);)t=t[0];return t}function Xd(t,n){return Gn(n[t])}function So(t,n){return Gn(n[t.index])}function yf(t,n){return t.data[n]}function Ra(t,n){return t[n]}function ro(t,n){const e=n[t];return ar(e)?e:e[0]}function gy(t){return 4==(4&t[2])}function Cf(t){return 128==(128&t[2])}function ds(t,n){return null==n?null:t[n]}function _y(t){t[18]=0}function wf(t,n){t[5]+=n;let e=t,i=t[3];for(;null!==i&&(1===n&&1===e[5]||-1===n&&0===e[5]);)i[5]+=n,e=i,i=i[3]}const Ct={lFrame:My(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function by(){return Ct.bindingsEnabled}function De(){return Ct.lFrame.lView}function Gt(){return Ct.lFrame.tView}function se(t){return Ct.lFrame.contextLView=t,t[8]}function ti(){let t=vy();for(;null!==t&&64===t.type;)t=t.parent;return t}function vy(){return Ct.lFrame.currentTNode}function lr(t,n){const e=Ct.lFrame;e.currentTNode=t,e.isParent=n}function Df(){return Ct.lFrame.isParent}function Sf(){Ct.lFrame.isParent=!1}function Jd(){return Ct.isInCheckNoChangesMode}function eu(t){Ct.isInCheckNoChangesMode=t}function Oi(){const t=Ct.lFrame;let n=t.bindingRootIndex;return-1===n&&(n=t.bindingRootIndex=t.tView.bindingStartIndex),n}function Or(){return Ct.lFrame.bindingIndex}function Fa(){return Ct.lFrame.bindingIndex++}function Ar(t){const n=Ct.lFrame,e=n.bindingIndex;return n.bindingIndex=n.bindingIndex+t,e}function SO(t,n){const e=Ct.lFrame;e.bindingIndex=e.bindingRootIndex=t,Mf(n)}function Mf(t){Ct.lFrame.currentDirectiveIndex=t}function xf(t){const n=Ct.lFrame.currentDirectiveIndex;return-1===n?null:t[n]}function wy(){return Ct.lFrame.currentQueryIndex}function Tf(t){Ct.lFrame.currentQueryIndex=t}function xO(t){const n=t[1];return 2===n.type?n.declTNode:1===n.type?t[6]:null}function Dy(t,n,e){if(e&yt.SkipSelf){let o=n,r=t;for(;!(o=o.parent,null!==o||e&yt.Host||(o=xO(r),null===o||(r=r[15],10&o.type))););if(null===o)return!1;n=o,t=r}const i=Ct.lFrame=Sy();return i.currentTNode=n,i.lView=t,!0}function tu(t){const n=Sy(),e=t[1];Ct.lFrame=n,n.currentTNode=e.firstChild,n.lView=t,n.tView=e,n.contextLView=t,n.bindingIndex=e.bindingStartIndex,n.inI18n=!1}function Sy(){const t=Ct.lFrame,n=null===t?null:t.child;return null===n?My(t):n}function My(t){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:t,child:null,inI18n:!1};return null!==t&&(t.child=n),n}function xy(){const t=Ct.lFrame;return Ct.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const Ty=xy;function nu(){const t=xy();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Ai(){return Ct.lFrame.selectedIndex}function us(t){Ct.lFrame.selectedIndex=t}function Rn(){const t=Ct.lFrame;return yf(t.tView,t.selectedIndex)}function hn(){Ct.lFrame.currentNamespace="svg"}function Qs(){!function IO(){Ct.lFrame.currentNamespace=null}()}function iu(t,n){for(let e=n.directiveStart,i=n.directiveEnd;e=i)break}else n[l]<0&&(t[18]+=65536),(a>11>16&&(3&t[2])===n){t[2]+=2048;try{r.call(a)}finally{}}}else try{r.call(a)}finally{}}class ic{constructor(n,e,i){this.factory=n,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=i}}function su(t,n,e){const i=Pn(t);let o=0;for(;on){s=r-1;break}}}for(;r>16}(t),i=n;for(;e>0;)i=i[15],e--;return i}let Of=!0;function lu(t){const n=Of;return Of=t,n}let VO=0;function rc(t,n){const e=Pf(t,n);if(-1!==e)return e;const i=n[1];i.firstCreatePass&&(t.injectorIndex=n.length,Af(i.data,t),Af(n,null),Af(i.blueprint,null));const o=cu(t,n),r=t.injectorIndex;if(Oy(o)){const s=Na(o),a=La(o,n),l=a[1].data;for(let u=0;u<8;u++)n[r+u]=a[s+u]|l[s+u]}return n[r+8]=o,r}function Af(t,n){t.push(0,0,0,0,0,0,0,0,n)}function Pf(t,n){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===n[t.injectorIndex+8]?-1:t.injectorIndex}function cu(t,n){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let e=0,i=null,o=n;for(;null!==o;){const r=o[1],s=r.type;if(i=2===s?r.declTNode:1===s?o[6]:null,null===i)return-1;if(e++,o=o[15],-1!==i.injectorIndex)return i.injectorIndex|e<<16}return-1}function du(t,n,e){!function jO(t,n,e){let i;"string"==typeof e?i=e.charCodeAt(0)||0:e.hasOwnProperty(Xl)&&(i=e[Xl]),null==i&&(i=e[Xl]=VO++);const o=255&i;n.data[t+(o>>5)]|=1<=0?255&n:UO:n}(e);if("function"==typeof r){if(!Dy(n,t,i))return i&yt.Host?Ry(o,e,i):Fy(n,e,i,o);try{const s=r(i);if(null!=s||i&yt.Optional)return s;$d(e)}finally{Ty()}}else if("number"==typeof r){let s=null,a=Pf(t,n),l=-1,u=i&yt.Host?n[16][6]:null;for((-1===a||i&yt.SkipSelf)&&(l=-1===a?cu(t,n):n[a+8],-1!==l&&Vy(i,!1)?(s=n[1],a=Na(l),n=La(l,n)):a=-1);-1!==a;){const p=n[1];if(By(r,a,p.data)){const g=zO(a,n,e,s,i,u);if(g!==Ly)return g}l=n[a+8],-1!==l&&Vy(i,n[1].data[a+8]===u)&&By(r,a,n)?(s=p,a=Na(l),n=La(l,n)):a=-1}}}return Fy(n,e,i,o)}const Ly={};function UO(){return new Ba(ti(),De())}function zO(t,n,e,i,o,r){const s=n[1],a=s.data[t+8],p=uu(a,s,e,null==i?Qd(a)&&Of:i!=s&&0!=(3&a.type),o&yt.Host&&r===a);return null!==p?sc(n,s,p,a):Ly}function uu(t,n,e,i,o){const r=t.providerIndexes,s=n.data,a=1048575&r,l=t.directiveStart,p=r>>20,v=o?a+p:t.directiveEnd;for(let C=i?a:a+p;C=l&&M.type===e)return C}if(o){const C=s[l];if(C&&Wo(C)&&C.type===e)return l}return null}function sc(t,n,e,i){let o=t[e];const r=n.data;if(function RO(t){return t instanceof ic}(o)){const s=o;s.resolving&&function BI(t,n){const e=n?`. Dependency path: ${n.join(" > ")} > ${t}`:"";throw new Qe(-200,`Circular dependency in DI detected for ${t}${e}`)}(Ii(r[e]));const a=lu(s.canSeeViewProviders);s.resolving=!0;const l=s.injectImpl?as(s.injectImpl):null;Dy(t,i,yt.Default);try{o=t[e]=s.factory(void 0,r,t,i),n.firstCreatePass&&e>=i.directiveStart&&function AO(t,n,e){const{ngOnChanges:i,ngOnInit:o,ngDoCheck:r}=n.type.prototype;if(i){const s=hy(n);(e.preOrderHooks||(e.preOrderHooks=[])).push(t,s),(e.preOrderCheckHooks||(e.preOrderCheckHooks=[])).push(t,s)}o&&(e.preOrderHooks||(e.preOrderHooks=[])).push(0-t,o),r&&((e.preOrderHooks||(e.preOrderHooks=[])).push(t,r),(e.preOrderCheckHooks||(e.preOrderCheckHooks=[])).push(t,r))}(e,r[e],n)}finally{null!==l&&as(l),lu(a),s.resolving=!1,Ty()}}return o}function By(t,n,e){return!!(e[n+(t>>5)]&1<{const n=t.prototype.constructor,e=n[Ir]||Rf(n),i=Object.prototype;let o=Object.getPrototypeOf(t.prototype).constructor;for(;o&&o!==i;){const r=o[Ir]||Rf(o);if(r&&r!==e)return r;o=Object.getPrototypeOf(o)}return r=>new r})}function Rf(t){return ty(t)?()=>{const n=Rf(Mt(t));return n&&n()}:Zs(t)}function Di(t){return function HO(t,n){if("class"===n)return t.classes;if("style"===n)return t.styles;const e=t.attrs;if(e){const i=e.length;let o=0;for(;o{const i=function Ff(t){return function(...e){if(t){const i=t(...e);for(const o in i)this[o]=i[o]}}}(n);function o(...r){if(this instanceof o)return i.apply(this,r),this;const s=new o(...r);return a.annotation=s,a;function a(l,u,p){const g=l.hasOwnProperty(ja)?l[ja]:Object.defineProperty(l,ja,{value:[]})[ja];for(;g.length<=p;)g.push(null);return(g[p]=g[p]||[]).push(s),l}}return e&&(o.prototype=Object.create(e.prototype)),o.prototype.ngMetadataName=t,o.annotationCls=o,o})}class _e{constructor(n,e){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=Be({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const WO=new _e("AnalyzeForEntryComponents");function Mo(t,n){void 0===n&&(n=t);for(let e=0;eArray.isArray(e)?cr(e,n):n(e))}function Hy(t,n,e){n>=t.length?t.push(e):t.splice(n,0,e)}function hu(t,n){return n>=t.length-1?t.pop():t.splice(n,1)[0]}function cc(t,n){const e=[];for(let i=0;i=0?t[1|i]=e:(i=~i,function ZO(t,n,e,i){let o=t.length;if(o==n)t.push(e,i);else if(1===o)t.push(i,t[0]),t[0]=e;else{for(o--,t.push(t[o-1],t[o]);o>n;)t[o]=t[o-2],o--;t[n]=e,t[n+1]=i}}(t,i,n,e)),i}function Lf(t,n){const e=za(t,n);if(e>=0)return t[1|e]}function za(t,n){return function $y(t,n,e){let i=0,o=t.length>>e;for(;o!==i;){const r=i+(o-i>>1),s=t[r<n?o=r:i=r+1}return~(o<({token:t})),-1),qo=pc(Ua("Optional"),8),$a=pc(Ua("SkipSelf"),4);let _u;function Wa(t){var n;return(null===(n=function Uf(){if(void 0===_u&&(_u=null,on.trustedTypes))try{_u=on.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return _u}())||void 0===n?void 0:n.createHTML(t))||t}class Ys{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class y2 extends Ys{getTypeName(){return"HTML"}}class C2 extends Ys{getTypeName(){return"Style"}}class w2 extends Ys{getTypeName(){return"Script"}}class D2 extends Ys{getTypeName(){return"URL"}}class S2 extends Ys{getTypeName(){return"ResourceURL"}}function ao(t){return t instanceof Ys?t.changingThisBreaksApplicationSecurity:t}function dr(t,n){const e=nC(t);if(null!=e&&e!==n){if("ResourceURL"===e&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${e} (see https://g.co/ng/security#xss)`)}return e===n}function nC(t){return t instanceof Ys&&t.getTypeName()||null}class I2{constructor(n){this.inertDocumentHelper=n}getInertBodyElement(n){n=""+n;try{const e=(new window.DOMParser).parseFromString(Wa(n),"text/html").body;return null===e?this.inertDocumentHelper.getInertBodyElement(n):(e.removeChild(e.firstChild),e)}catch(e){return null}}}class O2{constructor(n){if(this.defaultDoc=n,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const e=this.inertDocument.createElement("html");this.inertDocument.appendChild(e);const i=this.inertDocument.createElement("body");e.appendChild(i)}}getInertBodyElement(n){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=Wa(n),e;const i=this.inertDocument.createElement("body");return i.innerHTML=Wa(n),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(i),i}stripCustomNsAttrs(n){const e=n.attributes;for(let o=e.length-1;0mc(n.trim())).join(", ")),this.buf.push(" ",s,'="',cC(l),'"')}var t;return this.buf.push(">"),!0}endElement(n){const e=n.nodeName.toLowerCase();$f.hasOwnProperty(e)&&!rC.hasOwnProperty(e)&&(this.buf.push(""))}chars(n){this.buf.push(cC(n))}checkClobberedElement(n,e){if(e&&(n.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${n.outerHTML}`);return e}}const L2=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,B2=/([^\#-~ |!])/g;function cC(t){return t.replace(/&/g,"&").replace(L2,function(n){return"&#"+(1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320)+65536)+";"}).replace(B2,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(//g,">")}let vu;function dC(t,n){let e=null;try{vu=vu||function iC(t){const n=new O2(t);return function A2(){try{return!!(new window.DOMParser).parseFromString(Wa(""),"text/html")}catch(t){return!1}}()?new I2(n):n}(t);let i=n?String(n):"";e=vu.getInertBodyElement(i);let o=5,r=i;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,i=r,r=e.innerHTML,e=vu.getInertBodyElement(i)}while(i!==r);return Wa((new N2).sanitizeChildren(qf(e)||e))}finally{if(e){const i=qf(e)||e;for(;i.firstChild;)i.removeChild(i.firstChild)}}}function qf(t){return"content"in t&&function V2(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Yt=(()=>((Yt=Yt||{})[Yt.NONE=0]="NONE",Yt[Yt.HTML=1]="HTML",Yt[Yt.STYLE=2]="STYLE",Yt[Yt.SCRIPT=3]="SCRIPT",Yt[Yt.URL=4]="URL",Yt[Yt.RESOURCE_URL=5]="RESOURCE_URL",Yt))();function Gi(t){const n=function _c(){const t=De();return t&&t[12]}();return n?n.sanitize(Yt.URL,t)||"":dr(t,"URL")?ao(t):mc(Dt(t))}const pC="__ngContext__";function Si(t,n){t[pC]=n}function Zf(t){const n=function bc(t){return t[pC]||null}(t);return n?Array.isArray(n)?n:n.lView:null}function Yf(t){return t.ngOriginalError}function nA(t,...n){t.error(...n)}class ps{constructor(){this._console=console}handleError(n){const e=this._findOriginalError(n),i=function tA(t){return t&&t.ngErrorLogger||nA}(n);i(this._console,"ERROR",n),e&&i(this._console,"ORIGINAL ERROR",e)}_findOriginalError(n){let e=n&&Yf(n);for(;e&&Yf(e);)e=Yf(e);return e||null}}const hA=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(on))();function hr(t){return t instanceof Function?t():t}var lo=(()=>((lo=lo||{})[lo.Important=1]="Important",lo[lo.DashCase=2]="DashCase",lo))();function Jf(t,n){return undefined(t,n)}function vc(t){const n=t[3];return Go(n)?n[3]:n}function em(t){return wC(t[13])}function tm(t){return wC(t[4])}function wC(t){for(;null!==t&&!Go(t);)t=t[4];return t}function Ka(t,n,e,i,o){if(null!=i){let r,s=!1;Go(i)?r=i:ar(i)&&(s=!0,i=i[0]);const a=Gn(i);0===t&&null!==e?null==o?kC(n,e,a):Xs(n,e,a,o||null,!0):1===t&&null!==e?Xs(n,e,a,o||null,!0):2===t?function FC(t,n,e){const i=yu(t,n);i&&function xA(t,n,e,i){Pn(t)?t.removeChild(n,e,i):n.removeChild(e)}(t,i,n,e)}(n,a,s):3===t&&n.destroyNode(a),null!=r&&function EA(t,n,e,i,o){const r=e[7];r!==Gn(e)&&Ka(n,t,i,r,o);for(let a=10;a0&&(t[e-1][4]=i[4]);const r=hu(t,10+n);!function bA(t,n){yc(t,n,n[11],2,null,null),n[0]=null,n[6]=null}(i[1],i);const s=r[19];null!==s&&s.detachView(r[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function MC(t,n){if(!(256&n[2])){const e=n[11];Pn(e)&&e.destroyNode&&yc(t,n,e,3,null,null),function CA(t){let n=t[13];if(!n)return rm(t[1],t);for(;n;){let e=null;if(ar(n))e=n[13];else{const i=n[10];i&&(e=i)}if(!e){for(;n&&!n[4]&&n!==t;)ar(n)&&rm(n[1],n),n=n[3];null===n&&(n=t),ar(n)&&rm(n[1],n),e=n&&n[4]}n=e}}(n)}}function rm(t,n){if(!(256&n[2])){n[2]&=-129,n[2]|=256,function MA(t,n){let e;if(null!=t&&null!=(e=t.destroyHooks))for(let i=0;i=0?i[o=u]():i[o=-u].unsubscribe(),r+=2}else{const s=i[o=e[r+1]];e[r].call(s)}if(null!==i){for(let r=o+1;rr?"":o[g+1].toLowerCase();const C=8&i?v:null;if(C&&-1!==BC(C,u,0)||2&i&&u!==v){if(Ko(i))return!1;s=!0}}}}else{if(!s&&!Ko(i)&&!Ko(l))return!1;if(s&&Ko(l))continue;s=!1,i=l|1&i}}return Ko(i)||s}function Ko(t){return 0==(1&t)}function RA(t,n,e,i){if(null===n)return-1;let o=0;if(i||!e){let r=!1;for(;o-1)for(e++;e0?'="'+a+'"':"")+"]"}else 8&i?o+="."+s:4&i&&(o+=" "+s);else""!==o&&!Ko(s)&&(n+=UC(r,o),o=""),i=s,r=r||!Ko(i);e++}return""!==o&&(n+=UC(r,o)),n}const St={};function f(t){zC(Gt(),De(),Ai()+t,Jd())}function zC(t,n,e,i){if(!i)if(3==(3&n[2])){const r=t.preOrderCheckHooks;null!==r&&ou(n,r,e)}else{const r=t.preOrderHooks;null!==r&&ru(n,r,0,e)}us(e)}function Du(t,n){return t<<17|n<<2}function Zo(t){return t>>17&32767}function dm(t){return 2|t}function Pr(t){return(131068&t)>>2}function um(t,n){return-131069&t|n<<2}function hm(t){return 1|t}function e0(t,n){const e=t.contentQueries;if(null!==e)for(let i=0;i20&&zC(t,n,20,Jd()),e(i,o)}finally{us(r)}}function n0(t,n,e){if(pf(n)){const o=n.directiveEnd;for(let r=n.directiveStart;r0;){const e=t[--n];if("number"==typeof e&&e<0)return e}return 0})(a)!=l&&a.push(l),a.push(i,o,s)}}function u0(t,n){null!==t.hostBindings&&t.hostBindings(1,n)}function h0(t,n){n.flags|=2,(t.components||(t.components=[])).push(n.index)}function fP(t,n,e){if(e){if(n.exportAs)for(let i=0;i0&&xm(e)}}function xm(t){for(let i=em(t);null!==i;i=tm(i))for(let o=10;o0&&xm(r)}const e=t[1].components;if(null!==e)for(let i=0;i0&&xm(o)}}function CP(t,n){const e=ro(n,t),i=e[1];(function wP(t,n){for(let e=n.length;ePromise.resolve(null))();function _0(t){return t[7]||(t[7]=[])}function b0(t){return t.cleanup||(t.cleanup=[])}function v0(t,n,e){return(null===t||Wo(t))&&(e=function fO(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(e[n.index])),e[11]}function y0(t,n){const e=t[9],i=e?e.get(ps,null):null;i&&i.handleError(n)}function C0(t,n,e,i,o){for(let r=0;rthis.processProvider(a,n,e)),cr([n],a=>this.processInjectorType(a,[],r)),this.records.set(Om,Xa(void 0,this));const s=this.records.get(Am);this.scope=null!=s?s.value:null,this.source=o||("object"==typeof n?null:tn(n))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(n=>n.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(n,e=dc,i=yt.Default){this.assertNotDestroyed();const o=qy(this),r=as(void 0);try{if(!(i&yt.SkipSelf)){let a=this.records.get(n);if(void 0===a){const l=function BP(t){return"function"==typeof t||"object"==typeof t&&t instanceof _e}(n)&&sf(n);a=l&&this.injectableDefInScope(l)?Xa(Rm(n),Dc):null,this.records.set(n,a)}if(null!=a)return this.hydrate(n,a)}return(i&yt.Self?D0():this.parent).get(n,e=i&yt.Optional&&e===dc?null:e)}catch(s){if("NullInjectorError"===s.name){if((s[fu]=s[fu]||[]).unshift(tn(n)),o)throw s;return function l2(t,n,e,i){const o=t[fu];throw n[Wy]&&o.unshift(n[Wy]),t.message=function c2(t,n,e,i=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let o=tn(n);if(Array.isArray(n))o=n.map(tn).join(" -> ");else if("object"==typeof n){let r=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];r.push(s+":"+("string"==typeof a?JSON.stringify(a):tn(a)))}o=`{${r.join(", ")}}`}return`${e}${i?"("+i+")":""}[${o}]: ${t.replace(n2,"\n ")}`}("\n"+t.message,o,e,i),t.ngTokenPath=o,t[fu]=null,t}(s,n,"R3InjectorError",this.source)}throw s}finally{as(r),qy(o)}}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(n=>this.get(n))}toString(){const n=[];return this.records.forEach((i,o)=>n.push(tn(o))),`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Qe(205,!1)}processInjectorType(n,e,i){if(!(n=Mt(n)))return!1;let o=iy(n);const r=null==o&&n.ngModule||void 0,s=void 0===r?n:r,a=-1!==i.indexOf(s);if(void 0!==r&&(o=iy(r)),null==o)return!1;if(null!=o.imports&&!a){let p;i.push(s);try{cr(o.imports,g=>{this.processInjectorType(g,e,i)&&(void 0===p&&(p=[]),p.push(g))})}finally{}if(void 0!==p)for(let g=0;gthis.processProvider(M,v,C||cn))}}this.injectorDefTypes.add(s);const l=Zs(s)||(()=>new s);this.records.set(s,Xa(l,Dc));const u=o.providers;if(null!=u&&!a){const p=n;cr(u,g=>this.processProvider(g,p,u))}return void 0!==r&&void 0!==n.providers}processProvider(n,e,i){let o=Ja(n=Mt(n))?n:Mt(n&&n.provide);const r=function AP(t,n,e){return T0(t)?Xa(void 0,t.useValue):Xa(x0(t),Dc)}(n);if(Ja(n)||!0!==n.multi)this.records.get(o);else{let s=this.records.get(o);s||(s=Xa(void 0,Dc,!0),s.factory=()=>jf(s.multi),this.records.set(o,s)),o=n,s.multi.push(n)}this.records.set(o,r)}hydrate(n,e){return e.value===Dc&&(e.value=EP,e.value=e.factory()),"object"==typeof e.value&&e.value&&function LP(t){return null!==t&&"object"==typeof t&&"function"==typeof t.ngOnDestroy}(e.value)&&this.onDestroy.add(e.value),e.value}injectableDefInScope(n){if(!n.providedIn)return!1;const e=Mt(n.providedIn);return"string"==typeof e?"any"===e||e===this.scope:this.injectorDefTypes.has(e)}}function Rm(t){const n=sf(t),e=null!==n?n.factory:Zs(t);if(null!==e)return e;if(t instanceof _e)throw new Qe(204,!1);if(t instanceof Function)return function OP(t){const n=t.length;if(n>0)throw cc(n,"?"),new Qe(204,!1);const e=function UI(t){const n=t&&(t[Gd]||t[oy]);if(n){const e=function zI(t){if(t.hasOwnProperty("name"))return t.name;const n=(""+t).match(/^function\s*([^\s(]+)/);return null===n?"":n[1]}(t);return console.warn(`DEPRECATED: DI is instantiating a token "${e}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${e}" class.`),n}return null}(t);return null!==e?()=>e.factory(t):()=>new t}(t);throw new Qe(204,!1)}function x0(t,n,e){let i;if(Ja(t)){const o=Mt(t);return Zs(o)||Rm(o)}if(T0(t))i=()=>Mt(t.useValue);else if(function RP(t){return!(!t||!t.useFactory)}(t))i=()=>t.useFactory(...jf(t.deps||[]));else if(function PP(t){return!(!t||!t.useExisting)}(t))i=()=>Q(Mt(t.useExisting));else{const o=Mt(t&&(t.useClass||t.provide));if(!function NP(t){return!!t.deps}(t))return Zs(o)||Rm(o);i=()=>new o(...jf(t.deps))}return i}function Xa(t,n,e=!1){return{factory:t,value:n,multi:e?[]:void 0}}function T0(t){return null!==t&&"object"==typeof t&&r2 in t}function Ja(t){return"function"==typeof t}let pn=(()=>{class t{static create(e,i){var o;if(Array.isArray(e))return S0({name:""},i,e,"");{const r=null!==(o=e.name)&&void 0!==o?o:"";return S0({name:r},e.parent,e.providers,r)}}}return t.THROW_IF_NOT_FOUND=dc,t.NULL=new w0,t.\u0275prov=Be({token:t,providedIn:"any",factory:()=>Q(Om)}),t.__NG_ELEMENT_ID__=-1,t})();function WP(t,n){iu(Zf(t)[1],ti())}function Ce(t){let n=function V0(t){return Object.getPrototypeOf(t.prototype).constructor}(t.type),e=!0;const i=[t];for(;n;){let o;if(Wo(t))o=n.\u0275cmp||n.\u0275dir;else{if(n.\u0275cmp)throw new Qe(903,"");o=n.\u0275dir}if(o){if(e){i.push(o);const s=t;s.inputs=Lm(t.inputs),s.declaredInputs=Lm(t.declaredInputs),s.outputs=Lm(t.outputs);const a=o.hostBindings;a&&QP(t,a);const l=o.viewQuery,u=o.contentQueries;if(l&&KP(t,l),u&&ZP(t,u),tf(t.inputs,o.inputs),tf(t.declaredInputs,o.declaredInputs),tf(t.outputs,o.outputs),Wo(o)&&o.data.animation){const p=t.data;p.animation=(p.animation||[]).concat(o.data.animation)}}const r=o.features;if(r)for(let s=0;s=0;i--){const o=t[i];o.hostVars=n+=o.hostVars,o.hostAttrs=au(o.hostAttrs,e=au(e,o.hostAttrs))}}(i)}function Lm(t){return t===Ea?{}:t===cn?[]:t}function KP(t,n){const e=t.viewQuery;t.viewQuery=e?(i,o)=>{n(i,o),e(i,o)}:n}function ZP(t,n){const e=t.contentQueries;t.contentQueries=e?(i,o,r)=>{n(i,o,r),e(i,o,r)}:n}function QP(t,n){const e=t.hostBindings;t.hostBindings=e?(i,o)=>{n(i,o),e(i,o)}:n}let Eu=null;function el(){if(!Eu){const t=on.Symbol;if(t&&t.iterator)Eu=t.iterator;else{const n=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Gn(Ze[i.index])):i.index;if(Pn(e)){let Ze=null;if(!a&&l&&(Ze=function xR(t,n,e,i){const o=t.cleanup;if(null!=o)for(let r=0;rl?a[l]:null}"string"==typeof s&&(r+=2)}return null}(t,n,o,i.index)),null!==Ze)(Ze.__ngLastListenerFn__||Ze).__ngNextListenerFn__=r,Ze.__ngLastListenerFn__=r,C=!1;else{r=Gm(i,n,g,r,!1);const Pt=e.listen(Y,o,r);v.push(r,Pt),p&&p.push(o,ke,ee,ee+1)}}else r=Gm(i,n,g,r,!0),Y.addEventListener(o,r,s),v.push(r),p&&p.push(o,ke,ee,s)}else r=Gm(i,n,g,r,!1);const M=i.outputs;let V;if(C&&null!==M&&(V=M[o])){const K=V.length;if(K)for(let Y=0;Y0;)n=n[15],t--;return n}(t,Ct.lFrame.contextLView))[8]}(t)}function TR(t,n){let e=null;const i=function FA(t){const n=t.attrs;if(null!=n){const e=n.indexOf(5);if(0==(1&e))return n[e+1]}return null}(t);for(let o=0;o=0}const ii={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function v1(t){return t.substring(ii.key,ii.keyEnd)}function y1(t,n){const e=ii.textEnd;return e===n?-1:(n=ii.keyEnd=function RR(t,n,e){for(;n32;)n++;return n}(t,ii.key=n,e),ul(t,n,e))}function ul(t,n,e){for(;n=0;e=y1(n,e))so(t,v1(n),!0)}function Yo(t,n,e,i){const o=De(),r=Gt(),s=Ar(2);r.firstUpdatePass&&x1(r,t,s,i),n!==St&&Mi(o,s,n)&&k1(r,r.data[Ai()],o,o[11],t,o[s+1]=function GR(t,n){return null==t||("string"==typeof n?t+=n:"object"==typeof t&&(t=tn(ao(t)))),t}(n,e),i,s)}function M1(t,n){return n>=t.expandoStartIndex}function x1(t,n,e,i){const o=t.data;if(null===o[e+1]){const r=o[Ai()],s=M1(t,e);I1(r,i)&&null===n&&!s&&(n=!1),n=function VR(t,n,e,i){const o=xf(t);let r=i?n.residualClasses:n.residualStyles;if(null===o)0===(i?n.classBindings:n.styleBindings)&&(e=kc(e=qm(null,t,n,e,i),n.attrs,i),r=null);else{const s=n.directiveStylingLast;if(-1===s||t[s]!==o)if(e=qm(o,t,n,e,i),null===r){let l=function jR(t,n,e){const i=e?n.classBindings:n.styleBindings;if(0!==Pr(i))return t[Zo(i)]}(t,n,i);void 0!==l&&Array.isArray(l)&&(l=qm(null,t,n,l[1],i),l=kc(l,n.attrs,i),function HR(t,n,e,i){t[Zo(e?n.classBindings:n.styleBindings)]=i}(t,n,i,l))}else r=function UR(t,n,e){let i;const o=n.directiveEnd;for(let r=1+n.directiveStylingLast;r0)&&(u=!0)}else p=e;if(o)if(0!==l){const v=Zo(t[a+1]);t[i+1]=Du(v,a),0!==v&&(t[v+1]=um(t[v+1],i)),t[a+1]=function UA(t,n){return 131071&t|n<<17}(t[a+1],i)}else t[i+1]=Du(a,0),0!==a&&(t[a+1]=um(t[a+1],i)),a=i;else t[i+1]=Du(l,0),0===a?a=i:t[l+1]=um(t[l+1],i),l=i;u&&(t[i+1]=dm(t[i+1])),b1(t,p,i,!0),b1(t,p,i,!1),function ER(t,n,e,i,o){const r=o?t.residualClasses:t.residualStyles;null!=r&&"string"==typeof n&&za(r,n)>=0&&(e[i+1]=hm(e[i+1]))}(n,p,t,i,r),s=Du(a,l),r?n.classBindings=s:n.styleBindings=s}(o,r,n,e,s,i)}}function qm(t,n,e,i,o){let r=null;const s=e.directiveEnd;let a=e.directiveStylingLast;for(-1===a?a=e.directiveStart:a++;a0;){const l=t[o],u=Array.isArray(l),p=u?l[1]:l,g=null===p;let v=e[o+1];v===St&&(v=g?cn:void 0);let C=g?Lf(v,i):p===i?v:void 0;if(u&&!Au(C)&&(C=Lf(l,i)),Au(C)&&(a=C,s))return a;const M=t[o+1];o=s?Zo(M):Pr(M)}if(null!==n){let l=r?n.residualClasses:n.residualStyles;null!=l&&(a=Lf(l,i))}return a}function Au(t){return void 0!==t}function I1(t,n){return 0!=(t.flags&(n?16:32))}function h(t,n=""){const e=De(),i=Gt(),o=t+20,r=i.firstCreatePass?Za(i,o,1,n,null):i.data[o],s=e[o]=function nm(t,n){return Pn(t)?t.createText(n):t.createTextNode(n)}(e[11],n);Cu(i,e,s,r),lr(r,!1)}function Ee(t){return Se("",t,""),Ee}function Se(t,n,e){const i=De(),o=nl(i,t,n,e);return o!==St&&Rr(i,Ai(),o),Se}function hl(t,n,e,i,o){const r=De(),s=function il(t,n,e,i,o,r){const a=Js(t,Or(),e,o);return Ar(2),a?n+Dt(e)+i+Dt(o)+r:St}(r,t,n,e,i,o);return s!==St&&Rr(r,Ai(),s),hl}function Km(t,n,e,i,o,r,s){const a=De(),l=function ol(t,n,e,i,o,r,s,a){const u=Iu(t,Or(),e,o,s);return Ar(3),u?n+Dt(e)+i+Dt(o)+r+Dt(s)+a:St}(a,t,n,e,i,o,r,s);return l!==St&&Rr(a,Ai(),l),Km}function Zm(t,n,e,i,o,r,s,a,l){const u=De(),p=function rl(t,n,e,i,o,r,s,a,l,u){const g=xo(t,Or(),e,o,s,l);return Ar(4),g?n+Dt(e)+i+Dt(o)+r+Dt(s)+a+Dt(l)+u:St}(u,t,n,e,i,o,r,s,a,l);return p!==St&&Rr(u,Ai(),p),Zm}function N1(t,n,e){!function Xo(t,n,e,i){const o=Gt(),r=Ar(2);o.firstUpdatePass&&x1(o,null,r,i);const s=De();if(e!==St&&Mi(s,r,e)){const a=o.data[Ai()];if(I1(a,i)&&!M1(o,r)){let l=i?a.classesWithoutHost:a.stylesWithoutHost;null!==l&&(e=nf(l,e||"")),zm(o,a,s,e,i)}else!function $R(t,n,e,i,o,r,s,a){o===St&&(o=cn);let l=0,u=0,p=0>20;if(Ja(t)||!t.multi){const C=new ic(l,o,b),M=eg(a,n,o?p:p+v,g);-1===M?(du(rc(u,s),r,a),Jm(r,t,n.length),n.push(a),u.directiveStart++,u.directiveEnd++,o&&(u.providerIndexes+=1048576),e.push(C),s.push(C)):(e[M]=C,s[M]=C)}else{const C=eg(a,n,p+v,g),M=eg(a,n,p,p+v),V=C>=0&&e[C],K=M>=0&&e[M];if(o&&!K||!o&&!V){du(rc(u,s),r,a);const Y=function cN(t,n,e,i,o){const r=new ic(t,e,b);return r.multi=[],r.index=n,r.componentProviders=0,bw(r,o,i&&!e),r}(o?lN:aN,e.length,o,i,l);!o&&K&&(e[M].providerFactory=Y),Jm(r,t,n.length,0),n.push(a),u.directiveStart++,u.directiveEnd++,o&&(u.providerIndexes+=1048576),e.push(Y),s.push(Y)}else Jm(r,t,C>-1?C:M,bw(e[o?M:C],l,!o&&i));!o&&i&&K&&e[M].componentProviders++}}}function Jm(t,n,e,i){const o=Ja(n),r=function FP(t){return!!t.useClass}(n);if(o||r){const l=(r?Mt(n.useClass):n).prototype.ngOnDestroy;if(l){const u=t.destroyHooks||(t.destroyHooks=[]);if(!o&&n.multi){const p=u.indexOf(e);-1===p?u.push(e,[i,l]):u[p+1].push(i,l)}else u.push(e,l)}}}function bw(t,n,e){return e&&t.componentProviders++,t.multi.push(n)-1}function eg(t,n,e,i){for(let o=e;o{e.providersResolver=(i,o)=>function sN(t,n,e){const i=Gt();if(i.firstCreatePass){const o=Wo(t);Xm(e,i.data,i.blueprint,o,!0),Xm(n,i.data,i.blueprint,o,!1)}}(i,o?o(t):t,n)}}class vw{}class hN{resolveComponentFactory(n){throw function uN(t){const n=Error(`No component factory found for ${tn(t)}. Did you add it to @NgModule.entryComponents?`);return n.ngComponent=t,n}(n)}}let gs=(()=>{class t{}return t.NULL=new hN,t})();function pN(){return ml(ti(),De())}function ml(t,n){return new He(So(t,n))}let He=(()=>{class t{constructor(e){this.nativeElement=e}}return t.__NG_ELEMENT_ID__=pN,t})();function fN(t){return t instanceof He?t.nativeElement:t}class Rc{}let Nr=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>function gN(){const t=De(),e=ro(ti().index,t);return function mN(t){return t[11]}(ar(e)?e:t)}(),t})(),_N=(()=>{class t{}return t.\u0275prov=Be({token:t,providedIn:"root",factory:()=>null}),t})();class na{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const bN=new na("13.2.7"),ng={};function Bu(t,n,e,i,o=!1){for(;null!==e;){const r=n[e.index];if(null!==r&&i.push(Gn(r)),Go(r))for(let a=10;a-1&&(om(n,i),hu(e,i))}this._attachedToViewContainer=!1}MC(this._lView[1],this._lView)}onDestroy(n){a0(this._lView[1],this._lView,null,n)}markForCheck(){Tm(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Em(this._lView[1],this._lView,this.context)}checkNoChanges(){!function SP(t,n,e){eu(!0);try{Em(t,n,e)}finally{eu(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Qe(902,"");this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function yA(t,n){yc(t,n,n[11],2,null,null)}(this._lView[1],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new Qe(902,"");this._appRef=n}}class vN extends Fc{constructor(n){super(n),this._view=n}detectChanges(){g0(this._view)}checkNoChanges(){!function MP(t){eu(!0);try{g0(t)}finally{eu(!1)}}(this._view)}get context(){return null}}class Cw extends gs{constructor(n){super(),this.ngModule=n}resolveComponentFactory(n){const e=Ci(n);return new ig(e,this.ngModule)}}function ww(t){const n=[];for(let e in t)t.hasOwnProperty(e)&&n.push({propName:t[e],templateName:e});return n}class ig extends vw{constructor(n,e){super(),this.componentDef=n,this.ngModule=e,this.componentType=n.type,this.selector=function jA(t){return t.map(VA).join(",")}(n.selectors),this.ngContentSelectors=n.ngContentSelectors?n.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return ww(this.componentDef.inputs)}get outputs(){return ww(this.componentDef.outputs)}create(n,e,i,o){const r=(o=o||this.ngModule)?function CN(t,n){return{get:(e,i,o)=>{const r=t.get(e,ng,o);return r!==ng||i===ng?r:n.get(e,i,o)}}}(n,o.injector):n,s=r.get(Rc,my),a=r.get(_N,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",p=i?function s0(t,n,e){if(Pn(t))return t.selectRootElement(n,e===zo.ShadowDom);let i="string"==typeof n?t.querySelector(n):n;return i.textContent="",i}(l,i,this.componentDef.encapsulation):im(s.createRenderer(null,this.componentDef),u,function yN(t){const n=t.toLowerCase();return"svg"===n?"svg":"math"===n?"math":null}(u)),g=this.componentDef.onPush?576:528,v=function B0(t,n){return{components:[],scheduler:t||hA,clean:xP,playerHandler:n||null,flags:0}}(),C=xu(0,null,null,1,0,null,null,null,null,null),M=Cc(null,C,v,g,null,null,s,l,a,r);let V,K;tu(M);try{const Y=function N0(t,n,e,i,o,r){const s=e[1];e[20]=t;const l=Za(s,20,2,"#host",null),u=l.mergedAttrs=n.hostAttrs;null!==u&&(ku(l,u,!0),null!==t&&(su(o,t,u),null!==l.classes&&cm(o,t,l.classes),null!==l.styles&&LC(o,t,l.styles)));const p=i.createRenderer(t,n),g=Cc(e,o0(n),null,n.onPush?64:16,e[20],l,i,p,r||null,null);return s.firstCreatePass&&(du(rc(l,e),s,n.type),h0(s,l),p0(l,e.length,1)),Tu(e,g),e[20]=g}(p,this.componentDef,M,s,l);if(p)if(i)su(l,p,["ng-version",bN.full]);else{const{attrs:ee,classes:ke}=function HA(t){const n=[],e=[];let i=1,o=2;for(;i0&&cm(l,p,ke.join(" "))}if(K=yf(C,20),void 0!==e){const ee=K.projection=[];for(let ke=0;kel(s,n)),n.contentQueries){const l=ti();n.contentQueries(1,s,l.directiveStart)}const a=ti();return!r.firstCreatePass||null===n.hostBindings&&null===n.hostAttrs||(us(a.index),d0(e[1],a,0,a.directiveStart,a.directiveEnd,n),u0(n,s)),s}(Y,this.componentDef,M,v,[WP]),wc(C,M,null)}finally{nu()}return new DN(this.componentType,V,ml(K,M),M,K)}}class DN extends class dN{}{constructor(n,e,i,o,r){super(),this.location=i,this._rootLView=o,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new vN(o),this.componentType=n}get injector(){return new Ba(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(n){this.hostView.onDestroy(n)}}class Lr{}class Dw{}const gl=new Map;class xw extends Lr{constructor(n,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Cw(this);const i=Co(n);this._bootstrapComponents=hr(i.bootstrap),this._r3Injector=M0(n,e,[{provide:Lr,useValue:this},{provide:gs,useValue:this.componentFactoryResolver}],tn(n)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(n)}get(n,e=pn.THROW_IF_NOT_FOUND,i=yt.Default){return n===pn||n===Lr||n===Om?this:this._r3Injector.get(n,e,i)}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class og extends Dw{constructor(n){super(),this.moduleType=n,null!==Co(n)&&function MN(t){const n=new Set;!function e(i){const o=Co(i,!0),r=o.id;null!==r&&(function Sw(t,n,e){if(n&&n!==e)throw new Error(`Duplicate module registered for ${t} - ${tn(n)} vs ${tn(n.name)}`)}(r,gl.get(r),i),gl.set(r,i));const s=hr(o.imports);for(const a of s)n.has(a)||(n.add(a),e(a))}(t)}(n)}create(n){return new xw(this.moduleType,n)}}function Jo(t,n,e){const i=Oi()+t,o=De();return o[i]===St?fr(o,i,e?n.call(e):n()):Mc(o,i)}function Kt(t,n,e,i){return Ow(De(),Oi(),t,n,e,i)}function Tw(t,n,e,i,o){return function Aw(t,n,e,i,o,r,s){const a=n+e;return Js(t,a,o,r)?fr(t,a+2,s?i.call(s,o,r):i(o,r)):Nc(t,a+2)}(De(),Oi(),t,n,e,i,o)}function kw(t,n,e,i,o,r){return function Pw(t,n,e,i,o,r,s,a){const l=n+e;return Iu(t,l,o,r,s)?fr(t,l+3,a?i.call(a,o,r,s):i(o,r,s)):Nc(t,l+3)}(De(),Oi(),t,n,e,i,o,r)}function Nc(t,n){const e=t[n];return e===St?void 0:e}function Ow(t,n,e,i,o,r){const s=n+e;return Mi(t,s,o)?fr(t,s+1,r?i.call(r,o):i(o)):Nc(t,s+1)}function _s(t,n){const e=Gt();let i;const o=t+20;e.firstCreatePass?(i=function IN(t,n){if(n)for(let e=n.length-1;e>=0;e--){const i=n[e];if(t===i.name)return i}}(n,e.pipeRegistry),e.data[o]=i,i.onDestroy&&(e.destroyHooks||(e.destroyHooks=[])).push(o,i.onDestroy)):i=e.data[o];const r=i.factory||(i.factory=Zs(i.type)),s=as(b);try{const a=lu(!1),l=r();return lu(a),function oR(t,n,e,i){e>=t.data.length&&(t.data[e]=null,t.blueprint[e]=null),n[e]=i}(e,De(),o,l),l}finally{as(s)}}function bs(t,n,e){const i=t+20,o=De(),r=Ra(o,i);return function Lc(t,n){return t[1].data[n].pure}(o,i)?Ow(o,Oi(),n,r.transform,e,r):r.transform(e)}function rg(t){return n=>{setTimeout(t,void 0,n)}}const Pe=class FN extends ie{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,e,i){var o,r,s;let a=n,l=e||(()=>null),u=i;if(n&&"object"==typeof n){const g=n;a=null===(o=g.next)||void 0===o?void 0:o.bind(g),l=null===(r=g.error)||void 0===r?void 0:r.bind(g),u=null===(s=g.complete)||void 0===s?void 0:s.bind(g)}this.__isAsync&&(l=rg(l),a&&(a=rg(a)),u&&(u=rg(u)));const p=super.subscribe({next:a,error:l,complete:u});return n instanceof k&&n.add(p),p}};function NN(){return this._results[el()]()}class vs{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 e=el(),i=vs.prototype;i[e]||(i[e]=NN)}get changes(){return this._changes||(this._changes=new Pe)}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,e){return this._results.reduce(n,e)}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,e){const i=this;i.dirty=!1;const o=Mo(n);(this._changesDetected=!function qO(t,n,e){if(t.length!==n.length)return!1;for(let i=0;i{class t{}return t.__NG_ELEMENT_ID__=VN,t})();const LN=rn,BN=class extends LN{constructor(n,e,i){super(),this._declarationLView=n,this._declarationTContainer=e,this.elementRef=i}createEmbeddedView(n){const e=this._declarationTContainer.tViews,i=Cc(this._declarationLView,e,n,16,null,e.declTNode,null,null,null,null);i[17]=this._declarationLView[this._declarationTContainer.index];const r=this._declarationLView[19];return null!==r&&(i[19]=r.createEmbeddedView(e)),wc(e,i,n),new Fc(i)}};function VN(){return Vu(ti(),De())}function Vu(t,n){return 4&t.type?new BN(n,t,ml(t,n)):null}let sn=(()=>{class t{}return t.__NG_ELEMENT_ID__=jN,t})();function jN(){return Bw(ti(),De())}const HN=sn,Nw=class extends HN{constructor(n,e,i){super(),this._lContainer=n,this._hostTNode=e,this._hostLView=i}get element(){return ml(this._hostTNode,this._hostLView)}get injector(){return new Ba(this._hostTNode,this._hostLView)}get parentInjector(){const n=cu(this._hostTNode,this._hostLView);if(Oy(n)){const e=La(n,this._hostLView),i=Na(n);return new Ba(e[1].data[i+8],e)}return new Ba(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const e=Lw(this._lContainer);return null!==e&&e[n]||null}get length(){return this._lContainer.length-10}createEmbeddedView(n,e,i){const o=n.createEmbeddedView(e||{});return this.insert(o,i),o}createComponent(n,e,i,o,r){const s=n&&!function lc(t){return"function"==typeof t}(n);let a;if(s)a=e;else{const g=e||{};a=g.index,i=g.injector,o=g.projectableNodes,r=g.ngModuleRef}const l=s?n:new ig(Ci(n)),u=i||this.parentInjector;if(!r&&null==l.ngModule){const v=(s?u:this.parentInjector).get(Lr,null);v&&(r=v)}const p=l.create(u,o,void 0,r);return this.insert(p.hostView,a),p}insert(n,e){const i=n._lView,o=i[1];if(function gO(t){return Go(t[3])}(i)){const p=this.indexOf(n);if(-1!==p)this.detach(p);else{const g=i[3],v=new Nw(g,g[6],g[3]);v.detach(v.indexOf(n))}}const r=this._adjustIndex(e),s=this._lContainer;!function wA(t,n,e,i){const o=10+i,r=e.length;i>0&&(e[o-1][4]=n),i0)i.push(s[a/2]);else{const u=r[a+1],p=n[-l];for(let g=10;g{class t{constructor(e){this.appInits=e,this.resolve=Uu,this.reject=Uu,this.initialized=!1,this.done=!1,this.donePromise=new Promise((i,o)=>{this.resolve=i,this.reject=o})}runInitializers(){if(this.initialized)return;const e=[],i=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let o=0;o{r.subscribe({complete:a,error:l})});e.push(s)}}Promise.all(e).then(()=>{i()}).catch(o=>{this.reject(o)}),0===e.length&&i(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Q(_g,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const jc=new _e("AppId",{providedIn:"root",factory:function sD(){return`${vg()}${vg()}${vg()}`}});function vg(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const aD=new _e("Platform Initializer"),Hc=new _e("Platform ID"),lD=new _e("appBootstrapListener");let cD=(()=>{class t{log(e){console.log(e)}warn(e){console.warn(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const Br=new _e("LocaleId",{providedIn:"root",factory:()=>hc(Br,yt.Optional|yt.SkipSelf)||function p3(){return"undefined"!=typeof $localize&&$localize.locale||Pu}()});class m3{constructor(n,e){this.ngModuleFactory=n,this.componentFactories=e}}let dD=(()=>{class t{compileModuleSync(e){return new og(e)}compileModuleAsync(e){return Promise.resolve(this.compileModuleSync(e))}compileModuleAndAllComponentsSync(e){const i=this.compileModuleSync(e),r=hr(Co(e).declarations).reduce((s,a)=>{const l=Ci(a);return l&&s.push(new ig(l)),s},[]);return new m3(i,r)}compileModuleAndAllComponentsAsync(e){return Promise.resolve(this.compileModuleAndAllComponentsSync(e))}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const _3=(()=>Promise.resolve(0))();function yg(t){"undefined"==typeof Zone?_3.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Je{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:e=!1,shouldCoalesceRunChangeDetection:i=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Pe(!1),this.onMicrotaskEmpty=new Pe(!1),this.onStable=new Pe(!1),this.onError=new Pe(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");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=!i&&e,o.shouldCoalesceRunChangeDetection=i,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function b3(){let t=on.requestAnimationFrame,n=on.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&n){const e=t[Zone.__symbol__("OriginalDelegate")];e&&(t=e);const i=n[Zone.__symbol__("OriginalDelegate")];i&&(n=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:n}}().nativeRequestAnimationFrame,function C3(t){const n=()=>{!function y3(t){t.isCheckStableRunning||-1!==t.lastRequestAnimationFrameId||(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(on,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,wg(t),t.isCheckStableRunning=!0,Cg(t),t.isCheckStableRunning=!1},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),wg(t))}(t)};t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(e,i,o,r,s,a)=>{try{return uD(t),e.invokeTask(o,r,s,a)}finally{(t.shouldCoalesceEventChangeDetection&&"eventTask"===r.type||t.shouldCoalesceRunChangeDetection)&&n(),hD(t)}},onInvoke:(e,i,o,r,s,a,l)=>{try{return uD(t),e.invoke(o,r,s,a,l)}finally{t.shouldCoalesceRunChangeDetection&&n(),hD(t)}},onHasTask:(e,i,o,r)=>{e.hasTask(o,r),i===o&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,wg(t),Cg(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,i,o,r)=>(e.handleError(o,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(o)}static isInAngularZone(){return"undefined"!=typeof Zone&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Je.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Je.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(n,e,i){return this._inner.run(n,e,i)}runTask(n,e,i,o){const r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+o,n,v3,Uu,Uu);try{return r.runTask(s,e,i)}finally{r.cancelTask(s)}}runGuarded(n,e,i){return this._inner.runGuarded(n,e,i)}runOutsideAngular(n){return this._outer.run(n)}}const v3={};function Cg(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function wg(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&-1!==t.lastRequestAnimationFrameId)}function uD(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function hD(t){t._nesting--,Cg(t)}class w3{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Pe,this.onMicrotaskEmpty=new Pe,this.onStable=new Pe,this.onError=new Pe}run(n,e,i){return n.apply(e,i)}runGuarded(n,e,i){return n.apply(e,i)}runOutsideAngular(n){return n()}runTask(n,e,i,o){return n.apply(e,i)}}let Dg=(()=>{class t{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?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:()=>{Je.assertNotInAngularZone(),yg(()=>{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())yg(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(i=>!i.updateCb||!i.updateCb(e)||(clearTimeout(i.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,i,o){let r=-1;i&&i>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==r),e(this._didWork,this.getPendingTasks())},i)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:o})}whenStable(e,i,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(e,i,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,i,o){return[]}}return t.\u0275fac=function(e){return new(e||t)(Q(Je))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),pD=(()=>{class t{constructor(){this._applications=new Map,Sg.addToWindow(this)}registerApplication(e,i){this._applications.set(e,i)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,i=!0){return Sg.findTestabilityInTree(this,e,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();class D3{addToWindow(n){}findTestabilityInTree(n,e,i){return null}}let er,Sg=new D3;const fD=new _e("AllowMultipleToken");class mD{constructor(n,e){this.name=n,this.token=e}}function gD(t,n,e=[]){const i=`Platform: ${n}`,o=new _e(i);return(r=[])=>{let s=_D();if(!s||s.injector.get(fD,!1))if(t)t(e.concat(r).concat({provide:o,useValue:!0}));else{const a=e.concat(r).concat({provide:o,useValue:!0},{provide:Am,useValue:"platform"});!function T3(t){if(er&&!er.destroyed&&!er.injector.get(fD,!1))throw new Qe(400,"");er=t.get(bD);const n=t.get(aD,null);n&&n.forEach(e=>e())}(pn.create({providers:a,name:i}))}return function k3(t){const n=_D();if(!n)throw new Qe(401,"");return n}()}}function _D(){return er&&!er.destroyed?er:null}let bD=(()=>{class t{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,i){const a=function E3(t,n){let e;return e="noop"===t?new w3:("zone.js"===t?void 0:t)||new Je({enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:!!(null==n?void 0:n.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==n?void 0:n.ngZoneRunCoalescing)}),e}(i?i.ngZone:void 0,{ngZoneEventCoalescing:i&&i.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:i&&i.ngZoneRunCoalescing||!1}),l=[{provide:Je,useValue:a}];return a.run(()=>{const u=pn.create({providers:l,parent:this.injector,name:e.moduleType.name}),p=e.create(u),g=p.injector.get(ps,null);if(!g)throw new Qe(402,"");return a.runOutsideAngular(()=>{const v=a.onError.subscribe({next:C=>{g.handleError(C)}});p.onDestroy(()=>{Mg(this._modules,p),v.unsubscribe()})}),function I3(t,n,e){try{const i=e();return xc(i)?i.catch(o=>{throw n.runOutsideAngular(()=>t.handleError(o)),o}):i}catch(i){throw n.runOutsideAngular(()=>t.handleError(i)),i}}(g,a,()=>{const v=p.injector.get(bg);return v.runInitializers(),v.donePromise.then(()=>(function mF(t){io(t,"Expected localeId to be defined"),"string"==typeof t&&(K1=t.toLowerCase().replace(/_/g,"-"))}(p.injector.get(Br,Pu)||Pu),this._moduleDoBootstrap(p),p))})})}bootstrapModule(e,i=[]){const o=vD({},i);return function M3(t,n,e){const i=new og(e);return Promise.resolve(i)}(0,0,e).then(r=>this.bootstrapModuleFactory(r,o))}_moduleDoBootstrap(e){const i=e.injector.get(zu);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(o=>i.bootstrap(o));else{if(!e.instance.ngDoBootstrap)throw new Qe(403,"");e.instance.ngDoBootstrap(i)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Qe(404,"");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Q(pn))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();function vD(t,n){return Array.isArray(n)?n.reduce(vD,t):Object.assign(Object.assign({},t),n)}let zu=(()=>{class t{constructor(e,i,o,r,s){this._zone=e,this._injector=i,this._exceptionHandler=o,this._componentFactoryResolver=r,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const a=new Ue(u=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{u.next(this._stable),u.complete()})}),l=new Ue(u=>{let p;this._zone.runOutsideAngular(()=>{p=this._zone.onStable.subscribe(()=>{Je.assertNotInAngularZone(),yg(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,u.next(!0))})})});const g=this._zone.onUnstable.subscribe(()=>{Je.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{u.next(!1)}))});return()=>{p.unsubscribe(),g.unsubscribe()}});this.isStable=Tn(a,l.pipe(ey()))}bootstrap(e,i){if(!this._initStatus.done)throw new Qe(405,"");let o;o=e instanceof vw?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(o.componentType);const r=function x3(t){return t.isBoundToModule}(o)?void 0:this._injector.get(Lr),a=o.create(pn.NULL,[],i||o.selector,r),l=a.location.nativeElement,u=a.injector.get(Dg,null),p=u&&a.injector.get(pD);return u&&p&&p.registerApplication(l,u),a.onDestroy(()=>{this.detachView(a.hostView),Mg(this.components,a),p&&p.unregisterApplication(l)}),this._loadComponent(a),a}tick(){if(this._runningTick)throw new Qe(101,"");try{this._runningTick=!0;for(let e of this._views)e.detectChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const i=e;this._views.push(i),i.attachToAppRef(this)}detachView(e){const i=e;Mg(this._views,i),i.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(lD,[]).concat(this._bootstrapListeners).forEach(o=>o(e))}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Q(Je),Q(pn),Q(ps),Q(gs),Q(bg))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function Mg(t,n){const e=t.indexOf(n);e>-1&&t.splice(e,1)}let CD=!0,At=(()=>{class t{}return t.__NG_ELEMENT_ID__=P3,t})();function P3(t){return function R3(t,n,e){if(Qd(t)&&!e){const i=ro(t.index,n);return new Fc(i,i)}return 47&t.type?new Fc(n[16],n):null}(ti(),De(),16==(16&t))}class xD{constructor(){}supports(n){return Sc(n)}create(n){return new j3(n)}}const V3=(t,n)=>n;class j3{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||V3}forEachItem(n){let e;for(e=this._itHead;null!==e;e=e._next)n(e)}forEachOperation(n){let e=this._itHead,i=this._removalsHead,o=0,r=null;for(;e||i;){const s=!i||e&&e.currentIndex{s=this._trackByFn(o,a),null!==e&&Object.is(e.trackById,s)?(i&&(e=this._verifyReinsertion(e,a,s,o)),Object.is(e.item,a)||this._addIdentityChange(e,a)):(e=this._mismatch(e,a,s,o),i=!0),e=e._next,o++}),this.length=o;return this._truncate(e),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,e,i,o){let r;return null===n?r=this._itTail:(r=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(i,null))?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._reinsertAfter(n,r,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(i,o))?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._moveAfter(n,r,o)):n=this._addAfter(new H3(e,i),r,o),n}_verifyReinsertion(n,e,i,o){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(i,null);return null!==r?n=this._reinsertAfter(r,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const e=n._next;this._addToRemovals(this._unlink(n)),n=e}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,e,i){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,r=n._nextRemoved;return null===o?this._removalsHead=r:o._nextRemoved=r,null===r?this._removalsTail=o:r._prevRemoved=o,this._insertAfter(n,e,i),this._addToMoves(n,i),n}_moveAfter(n,e,i){return this._unlink(n),this._insertAfter(n,e,i),this._addToMoves(n,i),n}_addAfter(n,e,i){return this._insertAfter(n,e,i),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,e,i){const o=null===e?this._itHead:e._next;return n._next=o,n._prev=e,null===o?this._itTail=n:o._prev=n,null===e?this._itHead=n:e._next=n,null===this._linkedRecords&&(this._linkedRecords=new TD),this._linkedRecords.put(n),n.currentIndex=i,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const e=n._prev,i=n._next;return null===e?this._itHead=i:e._next=i,null===i?this._itTail=e:i._prev=e,n}_addToMoves(n,e){return n.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new TD),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,e){return n.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class H3{constructor(n,e){this.item=n,this.trackById=e,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 U3{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,e){let i;for(i=this._head;null!==i;i=i._nextDup)if((null===e||e<=i.currentIndex)&&Object.is(i.trackById,n))return i;return null}remove(n){const e=n._prevDup,i=n._nextDup;return null===e?this._head=i:e._nextDup=i,null===i?this._tail=e:i._prevDup=e,null===this._head}}class TD{constructor(){this.map=new Map}put(n){const e=n.trackById;let i=this.map.get(e);i||(i=new U3,this.map.set(e,i)),i.add(n)}get(n,e){const o=this.map.get(n);return o?o.get(n,e):null}remove(n){const e=n.trackById;return this.map.get(e).remove(n)&&this.map.delete(e),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function kD(t,n,e){const i=t.previousIndex;if(null===i)return i;let o=0;return e&&i{if(e&&e.key===o)this._maybeAddToChanges(e,i),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(o,i);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let i=e;null!==i;i=i._nextRemoved)i===this._mapHead&&(this._mapHead=null),this._records.delete(i.key),i._nextRemoved=i._next,i.previousValue=i.currentValue,i.currentValue=null,i._prev=null,i._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,e){if(n){const i=n._prev;return e._next=n,e._prev=i,n._prev=e,i&&(i._next=e),n===this._mapHead&&(this._mapHead=e),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(n,e){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,e);const r=o._prev,s=o._next;return r&&(r._next=s),s&&(s._prev=r),o._next=null,o._prev=null,o}const i=new $3(n);return this._records.set(n,i),i.currentValue=e,this._addToAdditions(i),i}_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,e){Object.is(e,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=e,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,e){n instanceof Map?n.forEach(e):Object.keys(n).forEach(i=>e(n[i],i))}}class $3{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 ID(){return new ko([new xD])}let ko=(()=>{class t{constructor(e){this.factories=e}static create(e,i){if(null!=i){const o=i.factories.slice();e=e.concat(o)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||ID()),deps:[[t,new $a,new qo]]}}find(e){const i=this.factories.find(o=>o.supports(e));if(null!=i)return i;throw new Qe(901,"")}}return t.\u0275prov=Be({token:t,providedIn:"root",factory:ID}),t})();function OD(){return new Uc([new ED])}let Uc=(()=>{class t{constructor(e){this.factories=e}static create(e,i){if(i){const o=i.factories.slice();e=e.concat(o)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||OD()),deps:[[t,new $a,new qo]]}}find(e){const i=this.factories.find(r=>r.supports(e));if(i)return i;throw new Qe(901,"")}}return t.\u0275prov=Be({token:t,providedIn:"root",factory:OD}),t})();const q3=gD(null,"core",[{provide:Hc,useValue:"unknown"},{provide:bD,deps:[pn]},{provide:pD,deps:[]},{provide:cD,deps:[]}]);let K3=(()=>{class t{constructor(e){}}return t.\u0275fac=function(e){return new(e||t)(Q(zu))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),Wu=null;function _r(){return Wu}const ht=new _e("DocumentToken");let oa=(()=>{class t{historyGo(e){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:function(){return function X3(){return Q(AD)}()},providedIn:"platform"}),t})();const J3=new _e("Location Initialized");let AD=(()=>{class t extends oa{constructor(e){super(),this._doc=e,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return _r().getBaseHref(this._doc)}onPopState(e){const i=_r().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",e,!1),()=>i.removeEventListener("popstate",e)}onHashChange(e){const i=_r().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",e,!1),()=>i.removeEventListener("hashchange",e)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(e){this.location.pathname=e}pushState(e,i,o){PD()?this._history.pushState(e,i,o):this.location.hash=o}replaceState(e,i,o){PD()?this._history.replaceState(e,i,o):this.location.hash=o}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:function(){return function eL(){return new AD(Q(ht))}()},providedIn:"platform"}),t})();function PD(){return!!window.history.pushState}function Ig(t,n){if(0==t.length)return n;if(0==n.length)return t;let e=0;return t.endsWith("/")&&e++,n.startsWith("/")&&e++,2==e?t+n.substring(1):1==e?t+n:t+"/"+n}function RD(t){const n=t.match(/#|\?|$/),e=n&&n.index||t.length;return t.slice(0,e-("/"===t[e-1]?1:0))+t.slice(e)}function Vr(t){return t&&"?"!==t[0]?"?"+t:t}let bl=(()=>{class t{historyGo(e){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:function(){return function tL(t){const n=Q(ht).location;return new FD(Q(oa),n&&n.origin||"")}()},providedIn:"root"}),t})();const Og=new _e("appBaseHref");let FD=(()=>{class t extends bl{constructor(e,i){if(super(),this._platformLocation=e,this._removeListenerFns=[],null==i&&(i=this._platformLocation.getBaseHrefFromDOM()),null==i)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=i}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return Ig(this._baseHref,e)}path(e=!1){const i=this._platformLocation.pathname+Vr(this._platformLocation.search),o=this._platformLocation.hash;return o&&e?`${i}${o}`:i}pushState(e,i,o,r){const s=this.prepareExternalUrl(o+Vr(r));this._platformLocation.pushState(e,i,s)}replaceState(e,i,o,r){const s=this.prepareExternalUrl(o+Vr(r));this._platformLocation.replaceState(e,i,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(e=0){var i,o;null===(o=(i=this._platformLocation).historyGo)||void 0===o||o.call(i,e)}}return t.\u0275fac=function(e){return new(e||t)(Q(oa),Q(Og,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),nL=(()=>{class t extends bl{constructor(e,i){super(),this._platformLocation=e,this._baseHref="",this._removeListenerFns=[],null!=i&&(this._baseHref=i)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}path(e=!1){let i=this._platformLocation.hash;return null==i&&(i="#"),i.length>0?i.substring(1):i}prepareExternalUrl(e){const i=Ig(this._baseHref,e);return i.length>0?"#"+i:i}pushState(e,i,o,r){let s=this.prepareExternalUrl(o+Vr(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(e,i,s)}replaceState(e,i,o,r){let s=this.prepareExternalUrl(o+Vr(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(e,i,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(e=0){var i,o;null===(o=(i=this._platformLocation).historyGo)||void 0===o||o.call(i,e)}}return t.\u0275fac=function(e){return new(e||t)(Q(oa),Q(Og,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),zc=(()=>{class t{constructor(e,i){this._subject=new Pe,this._urlChangeListeners=[],this._platformStrategy=e;const o=this._platformStrategy.getBaseHref();this._platformLocation=i,this._baseHref=RD(ND(o)),this._platformStrategy.onPopState(r=>{this._subject.emit({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}path(e=!1){return this.normalize(this._platformStrategy.path(e))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,i=""){return this.path()==this.normalize(e+Vr(i))}normalize(e){return t.stripTrailingSlash(function oL(t,n){return t&&n.startsWith(t)?n.substring(t.length):n}(this._baseHref,ND(e)))}prepareExternalUrl(e){return e&&"/"!==e[0]&&(e="/"+e),this._platformStrategy.prepareExternalUrl(e)}go(e,i="",o=null){this._platformStrategy.pushState(o,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Vr(i)),o)}replaceState(e,i="",o=null){this._platformStrategy.replaceState(o,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Vr(i)),o)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(e=0){var i,o;null===(o=(i=this._platformStrategy).historyGo)||void 0===o||o.call(i,e)}onUrlChange(e){this._urlChangeListeners.push(e),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}))}_notifyUrlChangeListeners(e="",i){this._urlChangeListeners.forEach(o=>o(e,i))}subscribe(e,i,o){return this._subject.subscribe({next:e,error:i,complete:o})}}return t.normalizeQueryParams=Vr,t.joinWithSlash=Ig,t.stripTrailingSlash=RD,t.\u0275fac=function(e){return new(e||t)(Q(bl),Q(oa))},t.\u0275prov=Be({token:t,factory:function(){return function iL(){return new zc(Q(bl),Q(oa))}()},providedIn:"root"}),t})();function ND(t){return t.replace(/\/index.html$/,"")}function GD(t,n){n=encodeURIComponent(n);for(const e of t.split(";")){const i=e.indexOf("="),[o,r]=-1==i?[e,""]:[e.slice(0,i),e.slice(i+1)];if(o.trim()===n)return decodeURIComponent(r)}return null}let nr=(()=>{class t{constructor(e,i,o,r){this._iterableDiffers=e,this._keyValueDiffers=i,this._ngEl=o,this._renderer=r,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(e){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof e?e.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(e){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof e?e.split(/\s+/):e,this._rawClass&&(Sc(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const e=this._iterableDiffer.diff(this._rawClass);e&&this._applyIterableChanges(e)}else if(this._keyValueDiffer){const e=this._keyValueDiffer.diff(this._rawClass);e&&this._applyKeyValueChanges(e)}}_applyKeyValueChanges(e){e.forEachAddedItem(i=>this._toggleClass(i.key,i.currentValue)),e.forEachChangedItem(i=>this._toggleClass(i.key,i.currentValue)),e.forEachRemovedItem(i=>{i.previousValue&&this._toggleClass(i.key,!1)})}_applyIterableChanges(e){e.forEachAddedItem(i=>{if("string"!=typeof i.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${tn(i.item)}`);this._toggleClass(i.item,!0)}),e.forEachRemovedItem(i=>this._toggleClass(i.item,!1))}_applyClasses(e){e&&(Array.isArray(e)||e instanceof Set?e.forEach(i=>this._toggleClass(i,!0)):Object.keys(e).forEach(i=>this._toggleClass(i,!!e[i])))}_removeClasses(e){e&&(Array.isArray(e)||e instanceof Set?e.forEach(i=>this._toggleClass(i,!1)):Object.keys(e).forEach(i=>this._toggleClass(i,!1)))}_toggleClass(e,i){(e=e.trim())&&e.split(/\s+/g).forEach(o=>{i?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}}return t.\u0275fac=function(e){return new(e||t)(b(ko),b(Uc),b(He),b(Nr))},t.\u0275dir=oe({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class UL{constructor(n,e,i,o){this.$implicit=n,this.ngForOf=e,this.index=i,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 ri=(()=>{class t{constructor(e,i,o){this._viewContainer=e,this._template=i,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;!this._differ&&e&&(this._differ=this._differs.find(e).create(this.ngForTrackBy))}if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const i=this._viewContainer;e.forEachOperation((o,r,s)=>{if(null==o.previousIndex)i.createEmbeddedView(this._template,new UL(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)i.remove(null===r?void 0:r);else if(null!==r){const a=i.get(r);i.move(a,s),WD(a,o)}});for(let o=0,r=i.length;o{WD(i.get(o.currentIndex),o)})}static ngTemplateContextGuard(e,i){return!0}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn),b(ko))},t.\u0275dir=oe({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();function WD(t,n){t.context.$implicit=n.item}let Et=(()=>{class t{constructor(e,i){this._viewContainer=e,this._context=new zL,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=i}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){qD("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){qD("ngIfElse",e),this._elseTemplateRef=e,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(e,i){return!0}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn))},t.\u0275dir=oe({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class zL{constructor(){this.$implicit=null,this.ngIf=null}}function qD(t,n){if(n&&!n.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${tn(n)}'.`)}class Hg{constructor(n,e){this._viewContainerRef=n,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(n){n&&!this._created?this.create():!n&&this._created&&this.destroy()}}let vl=(()=>{class t{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(e){this._ngSwitch=e,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(e){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(e)}_matchCase(e){const i=e==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||i,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),i}_updateDefaultCases(e){if(this._defaultViews&&e!==this._defaultUsed){this._defaultUsed=e;for(let i=0;i{class t{constructor(e,i,o){this.ngSwitch=o,o._addCase(),this._view=new Hg(e,i)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn),b(vl,9))},t.\u0275dir=oe({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),KD=(()=>{class t{constructor(e,i,o){o._addDefault(new Hg(e,i))}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn),b(vl,9))},t.\u0275dir=oe({type:t,selectors:[["","ngSwitchDefault",""]]}),t})(),Ug=(()=>{class t{constructor(e,i,o){this._ngEl=e,this._differs=i,this._renderer=o,this._ngStyle=null,this._differ=null}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){const e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,i){const[o,r]=e.split(".");null!=(i=null!=i&&r?`${i}${r}`:i)?this._renderer.setStyle(this._ngEl.nativeElement,o,i):this._renderer.removeStyle(this._ngEl.nativeElement,o)}_applyChanges(e){e.forEachRemovedItem(i=>this._setStyle(i.key,null)),e.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),e.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Uc),b(Nr))},t.\u0275dir=oe({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})();function ir(t,n){return new Qe(2100,"")}class WL{createSubscription(n,e){return n.subscribe({next:e,error:i=>{throw i}})}dispose(n){n.unsubscribe()}onDestroy(n){n.unsubscribe()}}class qL{createSubscription(n,e){return n.then(e,i=>{throw i})}dispose(n){}onDestroy(n){}}const KL=new qL,ZL=new WL;let zg=(()=>{class t{constructor(e){this._ref=e,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(e){return this._obj?e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue:(e&&this._subscribe(e),this._latestValue)}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,i=>this._updateLatestValue(e,i))}_selectStrategy(e){if(xc(e))return KL;if(s1(e))return ZL;throw ir()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,i){e===this._obj&&(this._latestValue=i,this._ref.markForCheck())}}return t.\u0275fac=function(e){return new(e||t)(b(At,16))},t.\u0275pipe=zi({name:"async",type:t,pure:!1}),t})(),QD=(()=>{class t{transform(e){if(null==e)return null;if("string"!=typeof e)throw ir();return e.toUpperCase()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275pipe=zi({name:"uppercase",type:t,pure:!0}),t})(),YD=(()=>{class t{constructor(e){this.differs=e,this.keyValues=[],this.compareFn=XD}transform(e,i=XD){if(!e||!(e instanceof Map)&&"object"!=typeof e)return null;this.differ||(this.differ=this.differs.find(e).create());const o=this.differ.diff(e),r=i!==this.compareFn;return o&&(this.keyValues=[],o.forEachItem(s=>{this.keyValues.push(function s5(t,n){return{key:t,value:n}}(s.key,s.currentValue))})),(o||r)&&(this.keyValues.sort(i),this.compareFn=i),this.keyValues}}return t.\u0275fac=function(e){return new(e||t)(b(Uc,16))},t.\u0275pipe=zi({name:"keyvalue",type:t,pure:!1}),t})();function XD(t,n){const e=t.key,i=n.key;if(e===i)return 0;if(void 0===e)return 1;if(void 0===i)return-1;if(null===e)return 1;if(null===i)return-1;if("string"==typeof e&&"string"==typeof i)return e{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const JD="browser";let m5=(()=>{class t{}return t.\u0275prov=Be({token:t,providedIn:"root",factory:()=>new g5(Q(ht),window)}),t})();class g5{constructor(n,e){this.document=n,this.window=e,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 e=function _5(t,n){const e=t.getElementById(n)||t.getElementsByName(n)[0];if(e)return e;if("function"==typeof t.createTreeWalker&&t.body&&(t.body.createShadowRoot||t.body.attachShadow)){const i=t.createTreeWalker(t.body,NodeFilter.SHOW_ELEMENT);let o=i.currentNode;for(;o;){const r=o.shadowRoot;if(r){const s=r.getElementById(n)||r.querySelector(`[name="${n}"]`);if(s)return s}o=i.nextNode()}}return null}(this.document,n);e&&(this.scrollToElement(e),e.focus())}setHistoryScrollRestoration(n){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=n)}}scrollToElement(n){const e=n.getBoundingClientRect(),i=e.left+this.window.pageXOffset,o=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(i-r[0],o-r[1])}supportScrollRestoration(){try{if(!this.supportsScrolling())return!1;const n=eS(this.window.history)||eS(Object.getPrototypeOf(this.window.history));return!(!n||!n.writable&&!n.set)}catch(n){return!1}}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch(n){return!1}}}function eS(t){return Object.getOwnPropertyDescriptor(t,"scrollRestoration")}class tS{}class Wg extends class b5 extends class Y3{}{constructor(){super(...arguments),this.supportsDOMEvents=!0}}{static makeCurrent(){!function Q3(t){Wu||(Wu=t)}(new Wg)}onAndCancel(n,e,i){return n.addEventListener(e,i,!1),()=>{n.removeEventListener(e,i,!1)}}dispatchEvent(n,e){n.dispatchEvent(e)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,e){return(e=e||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,e){return"window"===e?window:"document"===e?n:"body"===e?n.body:null}getBaseHref(n){const e=function v5(){return Wc=Wc||document.querySelector("base"),Wc?Wc.getAttribute("href"):null}();return null==e?null:function y5(t){ih=ih||document.createElement("a"),ih.setAttribute("href",t);const n=ih.pathname;return"/"===n.charAt(0)?n:`/${n}`}(e)}resetBaseElement(){Wc=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return GD(document.cookie,n)}}let ih,Wc=null;const nS=new _e("TRANSITION_ID"),w5=[{provide:_g,useFactory:function C5(t,n,e){return()=>{e.get(bg).donePromise.then(()=>{const i=_r(),o=n.querySelectorAll(`style[ng-transition="${t}"]`);for(let r=0;r{const r=n.findTestabilityInTree(i,o);if(null==r)throw new Error("Could not find testability for element.");return r},on.getAllAngularTestabilities=()=>n.getAllTestabilities(),on.getAllAngularRootElements=()=>n.getAllRootElements(),on.frameworkStabilizers||(on.frameworkStabilizers=[]),on.frameworkStabilizers.push(i=>{const o=on.getAllAngularTestabilities();let r=o.length,s=!1;const a=function(l){s=s||l,r--,0==r&&i(s)};o.forEach(function(l){l.whenStable(a)})})}findTestabilityInTree(n,e,i){if(null==e)return null;const o=n.getTestability(e);return null!=o?o:i?_r().isShadowRoot(e)?this.findTestabilityInTree(n,e.host,!0):this.findTestabilityInTree(n,e.parentElement,!0):null}}let D5=(()=>{class t{build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const oh=new _e("EventManagerPlugins");let rh=(()=>{class t{constructor(e,i){this._zone=i,this._eventNameToPlugin=new Map,e.forEach(o=>o.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,i,o){return this._findPluginFor(i).addEventListener(e,i,o)}addGlobalEventListener(e,i,o){return this._findPluginFor(i).addGlobalEventListener(e,i,o)}getZone(){return this._zone}_findPluginFor(e){const i=this._eventNameToPlugin.get(e);if(i)return i;const o=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(e){const i=new Set;e.forEach(o=>{this._stylesSet.has(o)||(this._stylesSet.add(o),i.add(o))}),this.onStylesAdded(i)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),qc=(()=>{class t extends oS{constructor(e){super(),this._doc=e,this._hostNodes=new Map,this._hostNodes.set(e.head,[])}_addStylesToHost(e,i,o){e.forEach(r=>{const s=this._doc.createElement("style");s.textContent=r,o.push(i.appendChild(s))})}addHost(e){const i=[];this._addStylesToHost(this._stylesSet,e,i),this._hostNodes.set(e,i)}removeHost(e){const i=this._hostNodes.get(e);i&&i.forEach(rS),this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach((i,o)=>{this._addStylesToHost(e,o,i)})}ngOnDestroy(){this._hostNodes.forEach(e=>e.forEach(rS))}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();function rS(t){_r().remove(t)}const Kg={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/"},Zg=/%COMP%/g;function sh(t,n,e){for(let i=0;i{if("__ngUnwrap__"===n)return t;!1===t(n)&&(n.preventDefault(),n.returnValue=!1)}}let ah=(()=>{class t{constructor(e,i,o){this.eventManager=e,this.sharedStylesHost=i,this.appId=o,this.rendererByCompId=new Map,this.defaultRenderer=new Qg(e)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;switch(i.encapsulation){case zo.Emulated:{let o=this.rendererByCompId.get(i.id);return o||(o=new E5(this.eventManager,this.sharedStylesHost,i,this.appId),this.rendererByCompId.set(i.id,o)),o.applyToHost(e),o}case 1:case zo.ShadowDom:return new I5(this.eventManager,this.sharedStylesHost,e,i);default:if(!this.rendererByCompId.has(i.id)){const o=sh(i.id,i.styles,[]);this.sharedStylesHost.addStyles(o),this.rendererByCompId.set(i.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Q(rh),Q(qc),Q(jc))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();class Qg{constructor(n){this.eventManager=n,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(n,e){return e?document.createElementNS(Kg[e]||e,n):document.createElement(n)}createComment(n){return document.createComment(n)}createText(n){return document.createTextNode(n)}appendChild(n,e){n.appendChild(e)}insertBefore(n,e,i){n&&n.insertBefore(e,i)}removeChild(n,e){n&&n.removeChild(e)}selectRootElement(n,e){let i="string"==typeof n?document.querySelector(n):n;if(!i)throw new Error(`The selector "${n}" did not match any elements`);return e||(i.textContent=""),i}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,e,i,o){if(o){e=o+":"+e;const r=Kg[o];r?n.setAttributeNS(r,e,i):n.setAttribute(e,i)}else n.setAttribute(e,i)}removeAttribute(n,e,i){if(i){const o=Kg[i];o?n.removeAttributeNS(o,e):n.removeAttribute(`${i}:${e}`)}else n.removeAttribute(e)}addClass(n,e){n.classList.add(e)}removeClass(n,e){n.classList.remove(e)}setStyle(n,e,i,o){o&(lo.DashCase|lo.Important)?n.style.setProperty(e,i,o&lo.Important?"important":""):n.style[e]=i}removeStyle(n,e,i){i&lo.DashCase?n.style.removeProperty(e):n.style[e]=""}setProperty(n,e,i){n[e]=i}setValue(n,e){n.nodeValue=e}listen(n,e,i){return"string"==typeof n?this.eventManager.addGlobalEventListener(n,e,lS(i)):this.eventManager.addEventListener(n,e,lS(i))}}class E5 extends Qg{constructor(n,e,i,o){super(n),this.component=i;const r=sh(o+"-"+i.id,i.styles,[]);e.addStyles(r),this.contentAttr=function x5(t){return"_ngcontent-%COMP%".replace(Zg,t)}(o+"-"+i.id),this.hostAttr=function T5(t){return"_nghost-%COMP%".replace(Zg,t)}(o+"-"+i.id)}applyToHost(n){super.setAttribute(n,this.hostAttr,"")}createElement(n,e){const i=super.createElement(n,e);return super.setAttribute(i,this.contentAttr,""),i}}class I5 extends Qg{constructor(n,e,i,o){super(n),this.sharedStylesHost=e,this.hostEl=i,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=sh(o.id,o.styles,[]);for(let s=0;s{class t extends iS{constructor(e){super(e)}supports(e){return!0}addEventListener(e,i,o){return e.addEventListener(i,o,!1),()=>this.removeEventListener(e,i,o)}removeEventListener(e,i,o){return e.removeEventListener(i,o)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const dS=["alt","control","meta","shift"],P5={"\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"},uS={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},R5={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let F5=(()=>{class t extends iS{constructor(e){super(e)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,i,o){const r=t.parseEventName(i),s=t.eventCallback(r.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>_r().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const i=e.toLowerCase().split("."),o=i.shift();if(0===i.length||"keydown"!==o&&"keyup"!==o)return null;const r=t._normalizeKey(i.pop());let s="";if(dS.forEach(l=>{const u=i.indexOf(l);u>-1&&(i.splice(u,1),s+=l+".")}),s+=r,0!=i.length||0===r.length)return null;const a={};return a.domEventName=o,a.fullKey=s,a}static getEventFullKey(e){let i="",o=function N5(t){let n=t.key;if(null==n){if(n=t.keyIdentifier,null==n)return"Unidentified";n.startsWith("U+")&&(n=String.fromCharCode(parseInt(n.substring(2),16)),3===t.location&&uS.hasOwnProperty(n)&&(n=uS[n]))}return P5[n]||n}(e);return o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),dS.forEach(r=>{r!=o&&R5[r](e)&&(i+=r+".")}),i+=o,i}static eventCallback(e,i,o){return r=>{t.getEventFullKey(r)===e&&o.runGuarded(()=>i(r))}}static _normalizeKey(e){return"esc"===e?"escape":e}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const j5=gD(q3,"browser",[{provide:Hc,useValue:JD},{provide:aD,useValue:function L5(){Wg.makeCurrent(),qg.init()},multi:!0},{provide:ht,useFactory:function V5(){return function hO(t){bf=t}(document),document},deps:[]}]),H5=[{provide:Am,useValue:"root"},{provide:ps,useFactory:function B5(){return new ps},deps:[]},{provide:oh,useClass:O5,multi:!0,deps:[ht,Je,Hc]},{provide:oh,useClass:F5,multi:!0,deps:[ht]},{provide:ah,useClass:ah,deps:[rh,qc,jc]},{provide:Rc,useExisting:ah},{provide:oS,useExisting:qc},{provide:qc,useClass:qc,deps:[ht]},{provide:Dg,useClass:Dg,deps:[Je]},{provide:rh,useClass:rh,deps:[oh,Je]},{provide:tS,useClass:D5,deps:[]}];let hS=(()=>{class t{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:jc,useValue:e.appId},{provide:nS,useExisting:jc},w5]}}}return t.\u0275fac=function(e){return new(e||t)(Q(t,12))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:H5,imports:[qi,K3]}),t})();"undefined"!=typeof window&&window;let Xg=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:function(e){let i=null;return i=e?new(e||t):Q(mS),i},providedIn:"root"}),t})(),mS=(()=>{class t extends Xg{constructor(e){super(),this._doc=e}sanitize(e,i){if(null==i)return null;switch(e){case Yt.NONE:return i;case Yt.HTML:return dr(i,"HTML")?ao(i):dC(this._doc,String(i)).toString();case Yt.STYLE:return dr(i,"Style")?ao(i):i;case Yt.SCRIPT:if(dr(i,"Script"))return ao(i);throw new Error("unsafe value used in a script context");case Yt.URL:return nC(i),dr(i,"URL")?ao(i):mc(String(i));case Yt.RESOURCE_URL:if(dr(i,"ResourceURL"))return ao(i);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${e} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(e){return function M2(t){return new y2(t)}(e)}bypassSecurityTrustStyle(e){return function x2(t){return new C2(t)}(e)}bypassSecurityTrustScript(e){return function T2(t){return new w2(t)}(e)}bypassSecurityTrustUrl(e){return function k2(t){return new D2(t)}(e)}bypassSecurityTrustResourceUrl(e){return function E2(t){return new S2(t)}(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:function(e){let i=null;return i=e?new e:function Y5(t){return new mS(t.get(ht))}(Q(pn)),i},providedIn:"root"}),t})();class gS{}const Hr="*";function Oo(t,n){return{type:7,name:t,definitions:n,options:{}}}function si(t,n=null){return{type:4,styles:n,timings:t}}function _S(t,n=null){return{type:3,steps:t,options:n}}function bS(t,n=null){return{type:2,steps:t,options:n}}function Vt(t){return{type:6,styles:t,offset:null}}function jn(t,n,e){return{type:0,name:t,styles:n,options:e}}function Kn(t,n,e=null){return{type:1,expr:t,animation:n,options:e}}function Jg(t=null){return{type:9,options:t}}function e_(t,n,e=null){return{type:11,selector:t,animation:n,options:e}}function vS(t){Promise.resolve(null).then(t)}class Kc{constructor(n=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=n+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}onStart(n){this._onStartFns.push(n)}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){vS(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(n=>n()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this._started=!1}setPosition(n){this._position=this.totalTime?n*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(n){const e="start"==n?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}}class yS{constructor(n){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=n;let e=0,i=0,o=0;const r=this.players.length;0==r?vS(()=>this._onFinish()):this.players.forEach(s=>{s.onDone(()=>{++e==r&&this._onFinish()}),s.onDestroy(()=>{++i==r&&this._onDestroy()}),s.onStart(()=>{++o==r&&this._onStart()})}),this.totalTime=this.players.reduce((s,a)=>Math.max(s,a.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this.players.forEach(n=>n.init())}onStart(n){this._onStartFns.push(n)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(n=>n()),this._onStartFns=[])}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(n=>n.play())}pause(){this.players.forEach(n=>n.pause())}restart(){this.players.forEach(n=>n.restart())}finish(){this._onFinish(),this.players.forEach(n=>n.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(n=>n.destroy()),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this.players.forEach(n=>n.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(n){const e=n*this.totalTime;this.players.forEach(i=>{const o=i.totalTime?Math.min(1,e/i.totalTime):1;i.setPosition(o)})}getPosition(){const n=this.players.reduce((e,i)=>null===e||i.totalTime>e.totalTime?i:e,null);return null!=n?n.getPosition():0}beforeDestroy(){this.players.forEach(n=>{n.beforeDestroy&&n.beforeDestroy()})}triggerCallback(n){const e="start"==n?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}}const jt=!1;function CS(t){return new Qe(3e3,jt)}function R4(){return"undefined"!=typeof window&&void 0!==window.document}function n_(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function Cs(t){switch(t.length){case 0:return new Kc;case 1:return t[0];default:return new yS(t)}}function wS(t,n,e,i,o={},r={}){const s=[],a=[];let l=-1,u=null;if(i.forEach(p=>{const g=p.offset,v=g==l,C=v&&u||{};Object.keys(p).forEach(M=>{let V=M,K=p[M];if("offset"!==M)switch(V=n.normalizePropertyName(V,s),K){case"!":K=o[M];break;case Hr:K=r[M];break;default:K=n.normalizeStyleValue(M,V,K,s)}C[V]=K}),v||a.push(C),u=C,l=g}),s.length)throw function D4(t){return new Qe(3502,jt)}();return a}function i_(t,n,e,i){switch(n){case"start":t.onStart(()=>i(e&&o_(e,"start",t)));break;case"done":t.onDone(()=>i(e&&o_(e,"done",t)));break;case"destroy":t.onDestroy(()=>i(e&&o_(e,"destroy",t)))}}function o_(t,n,e){const i=e.totalTime,r=r_(t.element,t.triggerName,t.fromState,t.toState,n||t.phaseName,null==i?t.totalTime:i,!!e.disabled),s=t._data;return null!=s&&(r._data=s),r}function r_(t,n,e,i,o="",r=0,s){return{element:t,triggerName:n,fromState:e,toState:i,phaseName:o,totalTime:r,disabled:!!s}}function uo(t,n,e){let i;return t instanceof Map?(i=t.get(n),i||t.set(n,i=e)):(i=t[n],i||(i=t[n]=e)),i}function DS(t){const n=t.indexOf(":");return[t.substring(1,n),t.substr(n+1)]}let s_=(t,n)=>!1,SS=(t,n,e)=>[],MS=null;function a_(t){const n=t.parentNode||t.host;return n===MS?null:n}(n_()||"undefined"!=typeof Element)&&(R4()?(MS=(()=>document.documentElement)(),s_=(t,n)=>{for(;n;){if(n===t)return!0;n=a_(n)}return!1}):s_=(t,n)=>t.contains(n),SS=(t,n,e)=>{if(e)return Array.from(t.querySelectorAll(n));const i=t.querySelector(n);return i?[i]:[]});let ra=null,xS=!1;function TS(t){ra||(ra=function N4(){return"undefined"!=typeof document?document.body:null}()||{},xS=!!ra.style&&"WebkitAppearance"in ra.style);let n=!0;return ra.style&&!function F4(t){return"ebkit"==t.substring(1,6)}(t)&&(n=t in ra.style,!n&&xS&&(n="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in ra.style)),n}const kS=s_,ES=SS;let IS=(()=>{class t{validateStyleProperty(e){return TS(e)}matchesElement(e,i){return!1}containsElement(e,i){return kS(e,i)}getParentElement(e){return a_(e)}query(e,i,o){return ES(e,i,o)}computeStyle(e,i,o){return o||""}animate(e,i,o,r,s,a=[],l){return new Kc(o,r)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),l_=(()=>{class t{}return t.NOOP=new IS,t})();const c_="ng-enter",ch="ng-leave",dh="ng-trigger",uh=".ng-trigger",AS="ng-animating",d_=".ng-animating";function sa(t){if("number"==typeof t)return t;const n=t.match(/^(-?[\.\d]+)(m?s)/);return!n||n.length<2?0:u_(parseFloat(n[1]),n[2])}function u_(t,n){return"s"===n?1e3*t:t}function hh(t,n,e){return t.hasOwnProperty("duration")?t:function V4(t,n,e){let o,r=0,s="";if("string"==typeof t){const a=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===a)return n.push(CS()),{duration:0,delay:0,easing:""};o=u_(parseFloat(a[1]),a[2]);const l=a[3];null!=l&&(r=u_(parseFloat(l),a[4]));const u=a[5];u&&(s=u)}else o=t;if(!e){let a=!1,l=n.length;o<0&&(n.push(function e4(){return new Qe(3100,jt)}()),a=!0),r<0&&(n.push(function t4(){return new Qe(3101,jt)}()),a=!0),a&&n.splice(l,0,CS())}return{duration:o,delay:r,easing:s}}(t,n,e)}function yl(t,n={}){return Object.keys(t).forEach(e=>{n[e]=t[e]}),n}function ws(t,n,e={}){if(n)for(let i in t)e[i]=t[i];else yl(t,e);return e}function RS(t,n,e){return e?n+":"+e+";":""}function FS(t){let n="";for(let e=0;e{const o=p_(i);e&&!e.hasOwnProperty(i)&&(e[i]=t.style[o]),t.style[o]=n[i]}),n_()&&FS(t))}function aa(t,n){t.style&&(Object.keys(n).forEach(e=>{const i=p_(e);t.style[i]=""}),n_()&&FS(t))}function Zc(t){return Array.isArray(t)?1==t.length?t[0]:bS(t):t}const h_=new RegExp("{{\\s*(.+?)\\s*}}","g");function NS(t){let n=[];if("string"==typeof t){let e;for(;e=h_.exec(t);)n.push(e[1]);h_.lastIndex=0}return n}function ph(t,n,e){const i=t.toString(),o=i.replace(h_,(r,s)=>{let a=n[s];return n.hasOwnProperty(s)||(e.push(function o4(t){return new Qe(3003,jt)}()),a=""),a.toString()});return o==i?t:o}function fh(t){const n=[];let e=t.next();for(;!e.done;)n.push(e.value),e=t.next();return n}const H4=/-+([a-z0-9])/g;function p_(t){return t.replace(H4,(...n)=>n[1].toUpperCase())}function U4(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ho(t,n,e){switch(n.type){case 7:return t.visitTrigger(n,e);case 0:return t.visitState(n,e);case 1:return t.visitTransition(n,e);case 2:return t.visitSequence(n,e);case 3:return t.visitGroup(n,e);case 4:return t.visitAnimate(n,e);case 5:return t.visitKeyframes(n,e);case 6:return t.visitStyle(n,e);case 8:return t.visitReference(n,e);case 9:return t.visitAnimateChild(n,e);case 10:return t.visitAnimateRef(n,e);case 11:return t.visitQuery(n,e);case 12:return t.visitStagger(n,e);default:throw function r4(t){return new Qe(3004,jt)}()}}function LS(t,n){return window.getComputedStyle(t)[n]}function K4(t,n){const e=[];return"string"==typeof t?t.split(/\s*,\s*/).forEach(i=>function Z4(t,n,e){if(":"==t[0]){const l=function Q4(t,n){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(e,i)=>parseFloat(i)>parseFloat(e);case":decrement":return(e,i)=>parseFloat(i) *"}}(t,e);if("function"==typeof l)return void n.push(l);t=l}const i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==i||i.length<4)return e.push(function b4(t){return new Qe(3015,jt)}()),n;const o=i[1],r=i[2],s=i[3];n.push(BS(o,s));"<"==r[0]&&!("*"==o&&"*"==s)&&n.push(BS(s,o))}(i,e,n)):e.push(t),e}const bh=new Set(["true","1"]),vh=new Set(["false","0"]);function BS(t,n){const e=bh.has(t)||vh.has(t),i=bh.has(n)||vh.has(n);return(o,r)=>{let s="*"==t||t==o,a="*"==n||n==r;return!s&&e&&"boolean"==typeof o&&(s=o?bh.has(t):vh.has(t)),!a&&i&&"boolean"==typeof r&&(a=r?bh.has(n):vh.has(n)),s&&a}}const Y4=new RegExp("s*:selfs*,?","g");function f_(t,n,e,i){return new X4(t).build(n,e,i)}class X4{constructor(n){this._driver=n}build(n,e,i){const o=new tB(e);this._resetContextStyleTimingState(o);const r=ho(this,Zc(n),o);return o.unsupportedCSSPropertiesFound.size&&o.unsupportedCSSPropertiesFound.keys(),r}_resetContextStyleTimingState(n){n.currentQuerySelector="",n.collectedStyles={},n.collectedStyles[""]={},n.currentTime=0}visitTrigger(n,e){let i=e.queryCount=0,o=e.depCount=0;const r=[],s=[];return"@"==n.name.charAt(0)&&e.errors.push(function a4(){return new Qe(3006,jt)}()),n.definitions.forEach(a=>{if(this._resetContextStyleTimingState(e),0==a.type){const l=a,u=l.name;u.toString().split(/\s*,\s*/).forEach(p=>{l.name=p,r.push(this.visitState(l,e))}),l.name=u}else if(1==a.type){const l=this.visitTransition(a,e);i+=l.queryCount,o+=l.depCount,s.push(l)}else e.errors.push(function l4(){return new Qe(3007,jt)}())}),{type:7,name:n.name,states:r,transitions:s,queryCount:i,depCount:o,options:null}}visitState(n,e){const i=this.visitStyle(n.styles,e),o=n.options&&n.options.params||null;if(i.containsDynamicStyles){const r=new Set,s=o||{};i.styles.forEach(a=>{if(yh(a)){const l=a;Object.keys(l).forEach(u=>{NS(l[u]).forEach(p=>{s.hasOwnProperty(p)||r.add(p)})})}}),r.size&&(fh(r.values()),e.errors.push(function c4(t,n){return new Qe(3008,jt)}()))}return{type:0,name:n.name,style:i,options:o?{params:o}:null}}visitTransition(n,e){e.queryCount=0,e.depCount=0;const i=ho(this,Zc(n.animation),e);return{type:1,matchers:K4(n.expr,e.errors),animation:i,queryCount:e.queryCount,depCount:e.depCount,options:la(n.options)}}visitSequence(n,e){return{type:2,steps:n.steps.map(i=>ho(this,i,e)),options:la(n.options)}}visitGroup(n,e){const i=e.currentTime;let o=0;const r=n.steps.map(s=>{e.currentTime=i;const a=ho(this,s,e);return o=Math.max(o,e.currentTime),a});return e.currentTime=o,{type:3,steps:r,options:la(n.options)}}visitAnimate(n,e){const i=function iB(t,n){let e=null;if(t.hasOwnProperty("duration"))e=t;else if("number"==typeof t)return m_(hh(t,n).duration,0,"");const i=t;if(i.split(/\s+/).some(r=>"{"==r.charAt(0)&&"{"==r.charAt(1))){const r=m_(0,0,"");return r.dynamic=!0,r.strValue=i,r}return e=e||hh(i,n),m_(e.duration,e.delay,e.easing)}(n.timings,e.errors);e.currentAnimateTimings=i;let o,r=n.styles?n.styles:Vt({});if(5==r.type)o=this.visitKeyframes(r,e);else{let s=n.styles,a=!1;if(!s){a=!0;const u={};i.easing&&(u.easing=i.easing),s=Vt(u)}e.currentTime+=i.duration+i.delay;const l=this.visitStyle(s,e);l.isEmptyStep=a,o=l}return e.currentAnimateTimings=null,{type:4,timings:i,style:o,options:null}}visitStyle(n,e){const i=this._makeStyleAst(n,e);return this._validateStyleAst(i,e),i}_makeStyleAst(n,e){const i=[];Array.isArray(n.styles)?n.styles.forEach(s=>{"string"==typeof s?s==Hr?i.push(s):e.errors.push(function d4(t){return new Qe(3002,jt)}()):i.push(s)}):i.push(n.styles);let o=!1,r=null;return i.forEach(s=>{if(yh(s)){const a=s,l=a.easing;if(l&&(r=l,delete a.easing),!o)for(let u in a)if(a[u].toString().indexOf("{{")>=0){o=!0;break}}}),{type:6,styles:i,easing:r,offset:n.offset,containsDynamicStyles:o,options:null}}_validateStyleAst(n,e){const i=e.currentAnimateTimings;let o=e.currentTime,r=e.currentTime;i&&r>0&&(r-=i.duration+i.delay),n.styles.forEach(s=>{"string"!=typeof s&&Object.keys(s).forEach(a=>{if(!this._driver.validateStyleProperty(a))return delete s[a],void e.unsupportedCSSPropertiesFound.add(a);const l=e.collectedStyles[e.currentQuerySelector],u=l[a];let p=!0;u&&(r!=o&&r>=u.startTime&&o<=u.endTime&&(e.errors.push(function u4(t,n,e,i,o){return new Qe(3010,jt)}()),p=!1),r=u.startTime),p&&(l[a]={startTime:r,endTime:o}),e.options&&function j4(t,n,e){const i=n.params||{},o=NS(t);o.length&&o.forEach(r=>{i.hasOwnProperty(r)||e.push(function n4(t){return new Qe(3001,jt)}())})}(s[a],e.options,e.errors)})})}visitKeyframes(n,e){const i={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push(function h4(){return new Qe(3011,jt)}()),i;let r=0;const s=[];let a=!1,l=!1,u=0;const p=n.steps.map(Y=>{const ee=this._makeStyleAst(Y,e);let ke=null!=ee.offset?ee.offset:function nB(t){if("string"==typeof t)return null;let n=null;if(Array.isArray(t))t.forEach(e=>{if(yh(e)&&e.hasOwnProperty("offset")){const i=e;n=parseFloat(i.offset),delete i.offset}});else if(yh(t)&&t.hasOwnProperty("offset")){const e=t;n=parseFloat(e.offset),delete e.offset}return n}(ee.styles),Ze=0;return null!=ke&&(r++,Ze=ee.offset=ke),l=l||Ze<0||Ze>1,a=a||Ze0&&r{const ke=v>0?ee==C?1:v*ee:s[ee],Ze=ke*K;e.currentTime=M+V.delay+Ze,V.duration=Ze,this._validateStyleAst(Y,e),Y.offset=ke,i.styles.push(Y)}),i}visitReference(n,e){return{type:8,animation:ho(this,Zc(n.animation),e),options:la(n.options)}}visitAnimateChild(n,e){return e.depCount++,{type:9,options:la(n.options)}}visitAnimateRef(n,e){return{type:10,animation:this.visitReference(n.animation,e),options:la(n.options)}}visitQuery(n,e){const i=e.currentQuerySelector,o=n.options||{};e.queryCount++,e.currentQuery=n;const[r,s]=function J4(t){const n=!!t.split(/\s*,\s*/).find(e=>":self"==e);return n&&(t=t.replace(Y4,"")),t=t.replace(/@\*/g,uh).replace(/@\w+/g,e=>uh+"-"+e.substr(1)).replace(/:animating/g,d_),[t,n]}(n.selector);e.currentQuerySelector=i.length?i+" "+r:r,uo(e.collectedStyles,e.currentQuerySelector,{});const a=ho(this,Zc(n.animation),e);return e.currentQuery=null,e.currentQuerySelector=i,{type:11,selector:r,limit:o.limit||0,optional:!!o.optional,includeSelf:s,animation:a,originalSelector:n.selector,options:la(n.options)}}visitStagger(n,e){e.currentQuery||e.errors.push(function g4(){return new Qe(3013,jt)}());const i="full"===n.timings?{duration:0,delay:0,easing:"full"}:hh(n.timings,e.errors,!0);return{type:12,animation:ho(this,Zc(n.animation),e),timings:i,options:null}}}class tB{constructor(n){this.errors=n,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null,this.unsupportedCSSPropertiesFound=new Set}}function yh(t){return!Array.isArray(t)&&"object"==typeof t}function la(t){return t?(t=yl(t)).params&&(t.params=function eB(t){return t?yl(t):null}(t.params)):t={},t}function m_(t,n,e){return{duration:t,delay:n,easing:e}}function g_(t,n,e,i,o,r,s=null,a=!1){return{type:1,element:t,keyframes:n,preStyleProps:e,postStyleProps:i,duration:o,delay:r,totalTime:o+r,easing:s,subTimeline:a}}class Ch{constructor(){this._map=new Map}get(n){return this._map.get(n)||[]}append(n,e){let i=this._map.get(n);i||this._map.set(n,i=[]),i.push(...e)}has(n){return this._map.has(n)}clear(){this._map.clear()}}const sB=new RegExp(":enter","g"),lB=new RegExp(":leave","g");function __(t,n,e,i,o,r={},s={},a,l,u=[]){return(new cB).buildKeyframes(t,n,e,i,o,r,s,a,l,u)}class cB{buildKeyframes(n,e,i,o,r,s,a,l,u,p=[]){u=u||new Ch;const g=new b_(n,e,u,o,r,p,[]);g.options=l,g.currentTimeline.setStyles([s],null,g.errors,l),ho(this,i,g);const v=g.timelines.filter(C=>C.containsAnimation());if(Object.keys(a).length){let C;for(let M=v.length-1;M>=0;M--){const V=v[M];if(V.element===e){C=V;break}}C&&!C.allowOnlyTimelineStyles()&&C.setStyles([a],null,g.errors,l)}return v.length?v.map(C=>C.buildKeyframes()):[g_(e,[],[],[],0,0,"",!1)]}visitTrigger(n,e){}visitState(n,e){}visitTransition(n,e){}visitAnimateChild(n,e){const i=e.subInstructions.get(e.element);if(i){const o=e.createSubContext(n.options),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(i,o,o.options);r!=s&&e.transformIntoNewTimeline(s)}e.previousNode=n}visitAnimateRef(n,e){const i=e.createSubContext(n.options);i.transformIntoNewTimeline(),this.visitReference(n.animation,i),e.transformIntoNewTimeline(i.currentTimeline.currentTime),e.previousNode=n}_visitSubInstructions(n,e,i){let r=e.currentTimeline.currentTime;const s=null!=i.duration?sa(i.duration):null,a=null!=i.delay?sa(i.delay):null;return 0!==s&&n.forEach(l=>{const u=e.appendInstructionToTimeline(l,s,a);r=Math.max(r,u.duration+u.delay)}),r}visitReference(n,e){e.updateOptions(n.options,!0),ho(this,n.animation,e),e.previousNode=n}visitSequence(n,e){const i=e.subContextCount;let o=e;const r=n.options;if(r&&(r.params||r.delay)&&(o=e.createSubContext(r),o.transformIntoNewTimeline(),null!=r.delay)){6==o.previousNode.type&&(o.currentTimeline.snapshotCurrentStyles(),o.previousNode=wh);const s=sa(r.delay);o.delayNextStep(s)}n.steps.length&&(n.steps.forEach(s=>ho(this,s,o)),o.currentTimeline.applyStylesToKeyframe(),o.subContextCount>i&&o.transformIntoNewTimeline()),e.previousNode=n}visitGroup(n,e){const i=[];let o=e.currentTimeline.currentTime;const r=n.options&&n.options.delay?sa(n.options.delay):0;n.steps.forEach(s=>{const a=e.createSubContext(n.options);r&&a.delayNextStep(r),ho(this,s,a),o=Math.max(o,a.currentTimeline.currentTime),i.push(a.currentTimeline)}),i.forEach(s=>e.currentTimeline.mergeTimelineCollectedStyles(s)),e.transformIntoNewTimeline(o),e.previousNode=n}_visitTiming(n,e){if(n.dynamic){const i=n.strValue;return hh(e.params?ph(i,e.params,e.errors):i,e.errors)}return{duration:n.duration,delay:n.delay,easing:n.easing}}visitAnimate(n,e){const i=e.currentAnimateTimings=this._visitTiming(n.timings,e),o=e.currentTimeline;i.delay&&(e.incrementTime(i.delay),o.snapshotCurrentStyles());const r=n.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(i.duration),this.visitStyle(r,e),o.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=n}visitStyle(n,e){const i=e.currentTimeline,o=e.currentAnimateTimings;!o&&i.getCurrentStyleProperties().length&&i.forwardFrame();const r=o&&o.easing||n.easing;n.isEmptyStep?i.applyEmptyStep(r):i.setStyles(n.styles,r,e.errors,e.options),e.previousNode=n}visitKeyframes(n,e){const i=e.currentAnimateTimings,o=e.currentTimeline.duration,r=i.duration,a=e.createSubContext().currentTimeline;a.easing=i.easing,n.styles.forEach(l=>{a.forwardTime((l.offset||0)*r),a.setStyles(l.styles,l.easing,e.errors,e.options),a.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(a),e.transformIntoNewTimeline(o+r),e.previousNode=n}visitQuery(n,e){const i=e.currentTimeline.currentTime,o=n.options||{},r=o.delay?sa(o.delay):0;r&&(6===e.previousNode.type||0==i&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=wh);let s=i;const a=e.invokeQuery(n.selector,n.originalSelector,n.limit,n.includeSelf,!!o.optional,e.errors);e.currentQueryTotal=a.length;let l=null;a.forEach((u,p)=>{e.currentQueryIndex=p;const g=e.createSubContext(n.options,u);r&&g.delayNextStep(r),u===e.element&&(l=g.currentTimeline),ho(this,n.animation,g),g.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,g.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),l&&(e.currentTimeline.mergeTimelineCollectedStyles(l),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=n}visitStagger(n,e){const i=e.parentContext,o=e.currentTimeline,r=n.timings,s=Math.abs(r.duration),a=s*(e.currentQueryTotal-1);let l=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":l=a-l;break;case"full":l=i.currentStaggerTime}const p=e.currentTimeline;l&&p.delayNextStep(l);const g=p.currentTime;ho(this,n.animation,e),e.previousNode=n,i.currentStaggerTime=o.currentTime-g+(o.startTime-i.currentTimeline.startTime)}}const wh={};class b_{constructor(n,e,i,o,r,s,a,l){this._driver=n,this.element=e,this.subInstructions=i,this._enterClassName=o,this._leaveClassName=r,this.errors=s,this.timelines=a,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=wh,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=l||new Dh(this._driver,e,0),a.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(n,e){if(!n)return;const i=n;let o=this.options;null!=i.duration&&(o.duration=sa(i.duration)),null!=i.delay&&(o.delay=sa(i.delay));const r=i.params;if(r){let s=o.params;s||(s=this.options.params={}),Object.keys(r).forEach(a=>{(!e||!s.hasOwnProperty(a))&&(s[a]=ph(r[a],s,this.errors))})}}_copyOptions(){const n={};if(this.options){const e=this.options.params;if(e){const i=n.params={};Object.keys(e).forEach(o=>{i[o]=e[o]})}}return n}createSubContext(n=null,e,i){const o=e||this.element,r=new b_(this._driver,o,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(o,i||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(n),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(n){return this.previousNode=wh,this.currentTimeline=this.currentTimeline.fork(this.element,n),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(n,e,i){const o={duration:null!=e?e:n.duration,delay:this.currentTimeline.currentTime+(null!=i?i:0)+n.delay,easing:""},r=new dB(this._driver,n.element,n.keyframes,n.preStyleProps,n.postStyleProps,o,n.stretchStartingKeyframe);return this.timelines.push(r),o}incrementTime(n){this.currentTimeline.forwardTime(this.currentTimeline.duration+n)}delayNextStep(n){n>0&&this.currentTimeline.delayNextStep(n)}invokeQuery(n,e,i,o,r,s){let a=[];if(o&&a.push(this.element),n.length>0){n=(n=n.replace(sB,"."+this._enterClassName)).replace(lB,"."+this._leaveClassName);let u=this._driver.query(this.element,n,1!=i);0!==i&&(u=i<0?u.slice(u.length+i,u.length):u.slice(0,i)),a.push(...u)}return!r&&0==a.length&&s.push(function _4(t){return new Qe(3014,jt)}()),a}}class Dh{constructor(n,e,i,o){this._driver=n,this.element=e,this.startTime=i,this._elementTimelineStylesLookup=o,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(n){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+n),e&&this.snapshotCurrentStyles()):this.startTime+=n}fork(n,e){return this.applyStylesToKeyframe(),new Dh(this._driver,n,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(n){this.applyStylesToKeyframe(),this.duration=n,this._loadKeyframe()}_updateStyle(n,e){this._localTimelineStyles[n]=e,this._globalTimelineStyles[n]=e,this._styleSummary[n]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(n){n&&(this._previousKeyframe.easing=n),Object.keys(this._globalTimelineStyles).forEach(e=>{this._backFill[e]=this._globalTimelineStyles[e]||Hr,this._currentKeyframe[e]=Hr}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(n,e,i,o){e&&(this._previousKeyframe.easing=e);const r=o&&o.params||{},s=function uB(t,n){const e={};let i;return t.forEach(o=>{"*"===o?(i=i||Object.keys(n),i.forEach(r=>{e[r]=Hr})):ws(o,!1,e)}),e}(n,this._globalTimelineStyles);Object.keys(s).forEach(a=>{const l=ph(s[a],r,i);this._pendingStyles[a]=l,this._localTimelineStyles.hasOwnProperty(a)||(this._backFill[a]=this._globalTimelineStyles.hasOwnProperty(a)?this._globalTimelineStyles[a]:Hr),this._updateStyle(a,l)})}applyStylesToKeyframe(){const n=this._pendingStyles,e=Object.keys(n);0!=e.length&&(this._pendingStyles={},e.forEach(i=>{this._currentKeyframe[i]=n[i]}),Object.keys(this._localTimelineStyles).forEach(i=>{this._currentKeyframe.hasOwnProperty(i)||(this._currentKeyframe[i]=this._localTimelineStyles[i])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(n=>{const e=this._localTimelineStyles[n];this._pendingStyles[n]=e,this._updateStyle(n,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const n=[];for(let e in this._currentKeyframe)n.push(e);return n}mergeTimelineCollectedStyles(n){Object.keys(n._styleSummary).forEach(e=>{const i=this._styleSummary[e],o=n._styleSummary[e];(!i||o.time>i.time)&&this._updateStyle(e,o.value)})}buildKeyframes(){this.applyStylesToKeyframe();const n=new Set,e=new Set,i=1===this._keyframes.size&&0===this.duration;let o=[];this._keyframes.forEach((a,l)=>{const u=ws(a,!0);Object.keys(u).forEach(p=>{const g=u[p];"!"==g?n.add(p):g==Hr&&e.add(p)}),i||(u.offset=l/this.duration),o.push(u)});const r=n.size?fh(n.values()):[],s=e.size?fh(e.values()):[];if(i){const a=o[0],l=yl(a);a.offset=0,l.offset=1,o=[a,l]}return g_(this.element,o,r,s,this.duration,this.startTime,this.easing,!1)}}class dB extends Dh{constructor(n,e,i,o,r,s,a=!1){super(n,e,s.delay),this.keyframes=i,this.preStyleProps=o,this.postStyleProps=r,this._stretchStartingKeyframe=a,this.timings={duration:s.duration,delay:s.delay,easing:s.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let n=this.keyframes,{delay:e,duration:i,easing:o}=this.timings;if(this._stretchStartingKeyframe&&e){const r=[],s=i+e,a=e/s,l=ws(n[0],!1);l.offset=0,r.push(l);const u=ws(n[0],!1);u.offset=HS(a),r.push(u);const p=n.length-1;for(let g=1;g<=p;g++){let v=ws(n[g],!1);v.offset=HS((e+v.offset*i)/s),r.push(v)}i=s,e=0,o="",n=r}return g_(this.element,n,this.preStyleProps,this.postStyleProps,i,e,o,!0)}}function HS(t,n=3){const e=Math.pow(10,n-1);return Math.round(t*e)/e}class v_{}class hB extends v_{normalizePropertyName(n,e){return p_(n)}normalizeStyleValue(n,e,i,o){let r="";const s=i.toString().trim();if(pB[e]&&0!==i&&"0"!==i)if("number"==typeof i)r="px";else{const a=i.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&0==a[1].length&&o.push(function s4(t,n){return new Qe(3005,jt)}())}return s+r}}const pB=(()=>function fB(t){const n={};return t.forEach(e=>n[e]=!0),n}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function US(t,n,e,i,o,r,s,a,l,u,p,g,v){return{type:0,element:t,triggerName:n,isRemovalTransition:o,fromState:e,fromStyles:r,toState:i,toStyles:s,timelines:a,queriedElements:l,preStyleProps:u,postStyleProps:p,totalTime:g,errors:v}}const y_={};class zS{constructor(n,e,i){this._triggerName=n,this.ast=e,this._stateStyles=i}match(n,e,i,o){return function mB(t,n,e,i,o){return t.some(r=>r(n,e,i,o))}(this.ast.matchers,n,e,i,o)}buildStyles(n,e,i){const o=this._stateStyles["*"],r=this._stateStyles[n],s=o?o.buildStyles(e,i):{};return r?r.buildStyles(e,i):s}build(n,e,i,o,r,s,a,l,u,p){const g=[],v=this.ast.options&&this.ast.options.params||y_,M=this.buildStyles(i,a&&a.params||y_,g),V=l&&l.params||y_,K=this.buildStyles(o,V,g),Y=new Set,ee=new Map,ke=new Map,Ze="void"===o,Pt={params:Object.assign(Object.assign({},v),V)},xn=p?[]:__(n,e,this.ast.animation,r,s,M,K,Pt,u,g);let On=0;if(xn.forEach(go=>{On=Math.max(go.duration+go.delay,On)}),g.length)return US(e,this._triggerName,i,o,Ze,M,K,[],[],ee,ke,On,g);xn.forEach(go=>{const _o=go.element,Wl=uo(ee,_o,{});go.preStyleProps.forEach(sr=>Wl[sr]=!0);const ss=uo(ke,_o,{});go.postStyleProps.forEach(sr=>ss[sr]=!0),_o!==e&&Y.add(_o)});const mo=fh(Y.values());return US(e,this._triggerName,i,o,Ze,M,K,xn,mo,ee,ke,On)}}class gB{constructor(n,e,i){this.styles=n,this.defaultParams=e,this.normalizer=i}buildStyles(n,e){const i={},o=yl(this.defaultParams);return Object.keys(n).forEach(r=>{const s=n[r];null!=s&&(o[r]=s)}),this.styles.styles.forEach(r=>{if("string"!=typeof r){const s=r;Object.keys(s).forEach(a=>{let l=s[a];l.length>1&&(l=ph(l,o,e));const u=this.normalizer.normalizePropertyName(a,e);l=this.normalizer.normalizeStyleValue(a,u,l,e),i[u]=l})}}),i}}class bB{constructor(n,e,i){this.name=n,this.ast=e,this._normalizer=i,this.transitionFactories=[],this.states={},e.states.forEach(o=>{this.states[o.name]=new gB(o.style,o.options&&o.options.params||{},i)}),$S(this.states,"true","1"),$S(this.states,"false","0"),e.transitions.forEach(o=>{this.transitionFactories.push(new zS(n,o,this.states))}),this.fallbackTransition=function vB(t,n,e){return new zS(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(s,a)=>!0],options:null,queryCount:0,depCount:0},n)}(n,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(n,e,i,o){return this.transitionFactories.find(s=>s.match(n,e,i,o))||null}matchStyles(n,e,i){return this.fallbackTransition.buildStyles(n,e,i)}}function $S(t,n,e){t.hasOwnProperty(n)?t.hasOwnProperty(e)||(t[e]=t[n]):t.hasOwnProperty(e)&&(t[n]=t[e])}const yB=new Ch;class CB{constructor(n,e,i){this.bodyNode=n,this._driver=e,this._normalizer=i,this._animations={},this._playersById={},this.players=[]}register(n,e){const i=[],r=f_(this._driver,e,i,[]);if(i.length)throw function S4(t){return new Qe(3503,jt)}();this._animations[n]=r}_buildPlayer(n,e,i){const o=n.element,r=wS(0,this._normalizer,0,n.keyframes,e,i);return this._driver.animate(o,r,n.duration,n.delay,n.easing,[],!0)}create(n,e,i={}){const o=[],r=this._animations[n];let s;const a=new Map;if(r?(s=__(this._driver,e,r,c_,ch,{},{},i,yB,o),s.forEach(p=>{const g=uo(a,p.element,{});p.postStyleProps.forEach(v=>g[v]=null)})):(o.push(function M4(){return new Qe(3300,jt)}()),s=[]),o.length)throw function x4(t){return new Qe(3504,jt)}();a.forEach((p,g)=>{Object.keys(p).forEach(v=>{p[v]=this._driver.computeStyle(g,v,Hr)})});const u=Cs(s.map(p=>{const g=a.get(p.element);return this._buildPlayer(p,{},g)}));return this._playersById[n]=u,u.onDestroy(()=>this.destroy(n)),this.players.push(u),u}destroy(n){const e=this._getPlayer(n);e.destroy(),delete this._playersById[n];const i=this.players.indexOf(e);i>=0&&this.players.splice(i,1)}_getPlayer(n){const e=this._playersById[n];if(!e)throw function T4(t){return new Qe(3301,jt)}();return e}listen(n,e,i,o){const r=r_(e,"","","");return i_(this._getPlayer(n),i,r,o),()=>{}}command(n,e,i,o){if("register"==i)return void this.register(n,o[0]);if("create"==i)return void this.create(n,e,o[0]||{});const r=this._getPlayer(n);switch(i){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(o[0]));break;case"destroy":this.destroy(n)}}}const GS="ng-animate-queued",C_="ng-animate-disabled",xB=[],WS={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},TB={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Ao="__ng_removed";class w_{constructor(n,e=""){this.namespaceId=e;const i=n&&n.hasOwnProperty("value");if(this.value=function OB(t){return null!=t?t:null}(i?n.value:n),i){const r=yl(n);delete r.value,this.options=r}else this.options={};this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(n){const e=n.params;if(e){const i=this.options.params;Object.keys(e).forEach(o=>{null==i[o]&&(i[o]=e[o])})}}}const Qc="void",D_=new w_(Qc);class kB{constructor(n,e,i){this.id=n,this.hostElement=e,this._engine=i,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+n,Po(e,this._hostClassName)}listen(n,e,i,o){if(!this._triggers.hasOwnProperty(e))throw function k4(t,n){return new Qe(3302,jt)}();if(null==i||0==i.length)throw function E4(t){return new Qe(3303,jt)}();if(!function AB(t){return"start"==t||"done"==t}(i))throw function I4(t,n){return new Qe(3400,jt)}();const r=uo(this._elementListeners,n,[]),s={name:e,phase:i,callback:o};r.push(s);const a=uo(this._engine.statesByElement,n,{});return a.hasOwnProperty(e)||(Po(n,dh),Po(n,dh+"-"+e),a[e]=D_),()=>{this._engine.afterFlush(()=>{const l=r.indexOf(s);l>=0&&r.splice(l,1),this._triggers[e]||delete a[e]})}}register(n,e){return!this._triggers[n]&&(this._triggers[n]=e,!0)}_getTrigger(n){const e=this._triggers[n];if(!e)throw function O4(t){return new Qe(3401,jt)}();return e}trigger(n,e,i,o=!0){const r=this._getTrigger(e),s=new S_(this.id,e,n);let a=this._engine.statesByElement.get(n);a||(Po(n,dh),Po(n,dh+"-"+e),this._engine.statesByElement.set(n,a={}));let l=a[e];const u=new w_(i,this.id);if(!(i&&i.hasOwnProperty("value"))&&l&&u.absorbOptions(l.options),a[e]=u,l||(l=D_),u.value!==Qc&&l.value===u.value){if(!function FB(t,n){const e=Object.keys(t),i=Object.keys(n);if(e.length!=i.length)return!1;for(let o=0;o{aa(n,K),br(n,Y)})}return}const v=uo(this._engine.playersByElement,n,[]);v.forEach(V=>{V.namespaceId==this.id&&V.triggerName==e&&V.queued&&V.destroy()});let C=r.matchTransition(l.value,u.value,n,u.params),M=!1;if(!C){if(!o)return;C=r.fallbackTransition,M=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:e,transition:C,fromState:l,toState:u,player:s,isFallbackTransition:M}),M||(Po(n,GS),s.onStart(()=>{Cl(n,GS)})),s.onDone(()=>{let V=this.players.indexOf(s);V>=0&&this.players.splice(V,1);const K=this._engine.playersByElement.get(n);if(K){let Y=K.indexOf(s);Y>=0&&K.splice(Y,1)}}),this.players.push(s),v.push(s),s}deregister(n){delete this._triggers[n],this._engine.statesByElement.forEach((e,i)=>{delete e[n]}),this._elementListeners.forEach((e,i)=>{this._elementListeners.set(i,e.filter(o=>o.name!=n))})}clearElementCache(n){this._engine.statesByElement.delete(n),this._elementListeners.delete(n);const e=this._engine.playersByElement.get(n);e&&(e.forEach(i=>i.destroy()),this._engine.playersByElement.delete(n))}_signalRemovalForInnerTriggers(n,e){const i=this._engine.driver.query(n,uh,!0);i.forEach(o=>{if(o[Ao])return;const r=this._engine.fetchNamespacesByElement(o);r.size?r.forEach(s=>s.triggerLeaveAnimation(o,e,!1,!0)):this.clearElementCache(o)}),this._engine.afterFlushAnimationsDone(()=>i.forEach(o=>this.clearElementCache(o)))}triggerLeaveAnimation(n,e,i,o){const r=this._engine.statesByElement.get(n),s=new Map;if(r){const a=[];if(Object.keys(r).forEach(l=>{if(s.set(l,r[l].value),this._triggers[l]){const u=this.trigger(n,l,Qc,o);u&&a.push(u)}}),a.length)return this._engine.markElementAsRemoved(this.id,n,!0,e,s),i&&Cs(a).onDone(()=>this._engine.processLeaveNode(n)),!0}return!1}prepareLeaveAnimationListeners(n){const e=this._elementListeners.get(n),i=this._engine.statesByElement.get(n);if(e&&i){const o=new Set;e.forEach(r=>{const s=r.name;if(o.has(s))return;o.add(s);const l=this._triggers[s].fallbackTransition,u=i[s]||D_,p=new w_(Qc),g=new S_(this.id,s,n);this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:s,transition:l,fromState:u,toState:p,player:g,isFallbackTransition:!0})})}}removeNode(n,e){const i=this._engine;if(n.childElementCount&&this._signalRemovalForInnerTriggers(n,e),this.triggerLeaveAnimation(n,e,!0))return;let o=!1;if(i.totalAnimations){const r=i.players.length?i.playersByQueriedElement.get(n):[];if(r&&r.length)o=!0;else{let s=n;for(;s=s.parentNode;)if(i.statesByElement.get(s)){o=!0;break}}}if(this.prepareLeaveAnimationListeners(n),o)i.markElementAsRemoved(this.id,n,!1,e);else{const r=n[Ao];(!r||r===WS)&&(i.afterFlush(()=>this.clearElementCache(n)),i.destroyInnerAnimations(n),i._onRemovalComplete(n,e))}}insertNode(n,e){Po(n,this._hostClassName)}drainQueuedTransitions(n){const e=[];return this._queue.forEach(i=>{const o=i.player;if(o.destroyed)return;const r=i.element,s=this._elementListeners.get(r);s&&s.forEach(a=>{if(a.name==i.triggerName){const l=r_(r,i.triggerName,i.fromState.value,i.toState.value);l._data=n,i_(i.player,a.phase,l,a.callback)}}),o.markedForDestroy?this._engine.afterFlush(()=>{o.destroy()}):e.push(i)}),this._queue=[],e.sort((i,o)=>{const r=i.transition.ast.depCount,s=o.transition.ast.depCount;return 0==r||0==s?r-s:this._engine.driver.containsElement(i.element,o.element)?1:-1})}destroy(n){this.players.forEach(e=>e.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,n)}elementContainsData(n){let e=!1;return this._elementListeners.has(n)&&(e=!0),e=!!this._queue.find(i=>i.element===n)||e,e}}class EB{constructor(n,e,i){this.bodyNode=n,this.driver=e,this._normalizer=i,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(o,r)=>{}}_onRemovalComplete(n,e){this.onRemovalComplete(n,e)}get queuedPlayers(){const n=[];return this._namespaceList.forEach(e=>{e.players.forEach(i=>{i.queued&&n.push(i)})}),n}createNamespace(n,e){const i=new kB(n,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?this._balanceNamespaceList(i,e):(this.newHostElements.set(e,i),this.collectEnterElement(e)),this._namespaceLookup[n]=i}_balanceNamespaceList(n,e){const i=this._namespaceList,o=this.namespacesByHostElement,r=i.length-1;if(r>=0){let s=!1;if(void 0!==this.driver.getParentElement){let a=this.driver.getParentElement(e);for(;a;){const l=o.get(a);if(l){const u=i.indexOf(l);i.splice(u+1,0,n),s=!0;break}a=this.driver.getParentElement(a)}}else for(let a=r;a>=0;a--)if(this.driver.containsElement(i[a].hostElement,e)){i.splice(a+1,0,n),s=!0;break}s||i.unshift(n)}else i.push(n);return o.set(e,n),n}register(n,e){let i=this._namespaceLookup[n];return i||(i=this.createNamespace(n,e)),i}registerTrigger(n,e,i){let o=this._namespaceLookup[n];o&&o.register(e,i)&&this.totalAnimations++}destroy(n,e){if(!n)return;const i=this._fetchNamespace(n);this.afterFlush(()=>{this.namespacesByHostElement.delete(i.hostElement),delete this._namespaceLookup[n];const o=this._namespaceList.indexOf(i);o>=0&&this._namespaceList.splice(o,1)}),this.afterFlushAnimationsDone(()=>i.destroy(e))}_fetchNamespace(n){return this._namespaceLookup[n]}fetchNamespacesByElement(n){const e=new Set,i=this.statesByElement.get(n);if(i){const o=Object.keys(i);for(let r=0;r=0&&this.collectedLeaveElements.splice(s,1)}if(n){const s=this._fetchNamespace(n);s&&s.insertNode(e,i)}o&&this.collectEnterElement(e)}collectEnterElement(n){this.collectedEnterElements.push(n)}markElementAsDisabled(n,e){e?this.disabledNodes.has(n)||(this.disabledNodes.add(n),Po(n,C_)):this.disabledNodes.has(n)&&(this.disabledNodes.delete(n),Cl(n,C_))}removeNode(n,e,i,o){if(Sh(e)){const r=n?this._fetchNamespace(n):null;if(r?r.removeNode(e,o):this.markElementAsRemoved(n,e,!1,o),i){const s=this.namespacesByHostElement.get(e);s&&s.id!==n&&s.removeNode(e,o)}}else this._onRemovalComplete(e,o)}markElementAsRemoved(n,e,i,o,r){this.collectedLeaveElements.push(e),e[Ao]={namespaceId:n,setForRemoval:o,hasAnimation:i,removedBeforeQueried:!1,previousTriggersValues:r}}listen(n,e,i,o,r){return Sh(e)?this._fetchNamespace(n).listen(e,i,o,r):()=>{}}_buildInstruction(n,e,i,o,r){return n.transition.build(this.driver,n.element,n.fromState.value,n.toState.value,i,o,n.fromState.options,n.toState.options,e,r)}destroyInnerAnimations(n){let e=this.driver.query(n,uh,!0);e.forEach(i=>this.destroyActiveAnimationsForElement(i)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(n,d_,!0),e.forEach(i=>this.finishActiveQueriedAnimationOnElement(i)))}destroyActiveAnimationsForElement(n){const e=this.playersByElement.get(n);e&&e.forEach(i=>{i.queued?i.markedForDestroy=!0:i.destroy()})}finishActiveQueriedAnimationOnElement(n){const e=this.playersByQueriedElement.get(n);e&&e.forEach(i=>i.finish())}whenRenderingDone(){return new Promise(n=>{if(this.players.length)return Cs(this.players).onDone(()=>n());n()})}processLeaveNode(n){var e;const i=n[Ao];if(i&&i.setForRemoval){if(n[Ao]=WS,i.namespaceId){this.destroyInnerAnimations(n);const o=this._fetchNamespace(i.namespaceId);o&&o.clearElementCache(n)}this._onRemovalComplete(n,i.setForRemoval)}(null===(e=n.classList)||void 0===e?void 0:e.contains(C_))&&this.markElementAsDisabled(n,!1),this.driver.query(n,".ng-animate-disabled",!0).forEach(o=>{this.markElementAsDisabled(o,!1)})}flush(n=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((i,o)=>this._balanceNamespaceList(i,o)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let i=0;ii()),this._flushFns=[],this._whenQuietFns.length){const i=this._whenQuietFns;this._whenQuietFns=[],e.length?Cs(e).onDone(()=>{i.forEach(o=>o())}):i.forEach(o=>o())}}reportError(n){throw function A4(t){return new Qe(3402,jt)}()}_flushAnimations(n,e){const i=new Ch,o=[],r=new Map,s=[],a=new Map,l=new Map,u=new Map,p=new Set;this.disabledNodes.forEach(Ye=>{p.add(Ye);const dt=this.driver.query(Ye,".ng-animate-queued",!0);for(let _t=0;_t{const _t=c_+V++;M.set(dt,_t),Ye.forEach(qt=>Po(qt,_t))});const K=[],Y=new Set,ee=new Set;for(let Ye=0;YeY.add(qt)):ee.add(dt))}const ke=new Map,Ze=ZS(v,Array.from(Y));Ze.forEach((Ye,dt)=>{const _t=ch+V++;ke.set(dt,_t),Ye.forEach(qt=>Po(qt,_t))}),n.push(()=>{C.forEach((Ye,dt)=>{const _t=M.get(dt);Ye.forEach(qt=>Cl(qt,_t))}),Ze.forEach((Ye,dt)=>{const _t=ke.get(dt);Ye.forEach(qt=>Cl(qt,_t))}),K.forEach(Ye=>{this.processLeaveNode(Ye)})});const Pt=[],xn=[];for(let Ye=this._namespaceList.length-1;Ye>=0;Ye--)this._namespaceList[Ye].drainQueuedTransitions(e).forEach(_t=>{const qt=_t.player,gi=_t.element;if(Pt.push(qt),this.collectedEnterElements.length){const Vi=gi[Ao];if(Vi&&Vi.setForMove){if(Vi.previousTriggersValues&&Vi.previousTriggersValues.has(_t.triggerName)){const Sa=Vi.previousTriggersValues.get(_t.triggerName),Us=this.statesByElement.get(_t.element);Us&&Us[_t.triggerName]&&(Us[_t.triggerName].value=Sa)}return void qt.destroy()}}const Tr=!g||!this.driver.containsElement(g,gi),bo=ke.get(gi),Hs=M.get(gi),An=this._buildInstruction(_t,i,Hs,bo,Tr);if(An.errors&&An.errors.length)return void xn.push(An);if(Tr)return qt.onStart(()=>aa(gi,An.fromStyles)),qt.onDestroy(()=>br(gi,An.toStyles)),void o.push(qt);if(_t.isFallbackTransition)return qt.onStart(()=>aa(gi,An.fromStyles)),qt.onDestroy(()=>br(gi,An.toStyles)),void o.push(qt);const bI=[];An.timelines.forEach(Vi=>{Vi.stretchStartingKeyframe=!0,this.disabledNodes.has(Vi.element)||bI.push(Vi)}),An.timelines=bI,i.append(gi,An.timelines),s.push({instruction:An,player:qt,element:gi}),An.queriedElements.forEach(Vi=>uo(a,Vi,[]).push(qt)),An.preStyleProps.forEach((Vi,Sa)=>{const Us=Object.keys(Vi);if(Us.length){let Ma=l.get(Sa);Ma||l.set(Sa,Ma=new Set),Us.forEach(Vv=>Ma.add(Vv))}}),An.postStyleProps.forEach((Vi,Sa)=>{const Us=Object.keys(Vi);let Ma=u.get(Sa);Ma||u.set(Sa,Ma=new Set),Us.forEach(Vv=>Ma.add(Vv))})});if(xn.length){const Ye=[];xn.forEach(dt=>{Ye.push(function P4(t,n){return new Qe(3505,jt)}())}),Pt.forEach(dt=>dt.destroy()),this.reportError(Ye)}const On=new Map,mo=new Map;s.forEach(Ye=>{const dt=Ye.element;i.has(dt)&&(mo.set(dt,dt),this._beforeAnimationBuild(Ye.player.namespaceId,Ye.instruction,On))}),o.forEach(Ye=>{const dt=Ye.element;this._getPreviousPlayers(dt,!1,Ye.namespaceId,Ye.triggerName,null).forEach(qt=>{uo(On,dt,[]).push(qt),qt.destroy()})});const go=K.filter(Ye=>YS(Ye,l,u)),_o=new Map;KS(_o,this.driver,ee,u,Hr).forEach(Ye=>{YS(Ye,l,u)&&go.push(Ye)});const ss=new Map;C.forEach((Ye,dt)=>{KS(ss,this.driver,new Set(Ye),l,"!")}),go.forEach(Ye=>{const dt=_o.get(Ye),_t=ss.get(Ye);_o.set(Ye,Object.assign(Object.assign({},dt),_t))});const sr=[],ql=[],Kl={};s.forEach(Ye=>{const{element:dt,player:_t,instruction:qt}=Ye;if(i.has(dt)){if(p.has(dt))return _t.onDestroy(()=>br(dt,qt.toStyles)),_t.disabled=!0,_t.overrideTotalTime(qt.totalTime),void o.push(_t);let gi=Kl;if(mo.size>1){let bo=dt;const Hs=[];for(;bo=bo.parentNode;){const An=mo.get(bo);if(An){gi=An;break}Hs.push(bo)}Hs.forEach(An=>mo.set(An,gi))}const Tr=this._buildAnimation(_t.namespaceId,qt,On,r,ss,_o);if(_t.setRealPlayer(Tr),gi===Kl)sr.push(_t);else{const bo=this.playersByElement.get(gi);bo&&bo.length&&(_t.parentPlayer=Cs(bo)),o.push(_t)}}else aa(dt,qt.fromStyles),_t.onDestroy(()=>br(dt,qt.toStyles)),ql.push(_t),p.has(dt)&&o.push(_t)}),ql.forEach(Ye=>{const dt=r.get(Ye.element);if(dt&&dt.length){const _t=Cs(dt);Ye.setRealPlayer(_t)}}),o.forEach(Ye=>{Ye.parentPlayer?Ye.syncPlayerEvents(Ye.parentPlayer):Ye.destroy()});for(let Ye=0;Ye!Tr.destroyed);gi.length?PB(this,dt,gi):this.processLeaveNode(dt)}return K.length=0,sr.forEach(Ye=>{this.players.push(Ye),Ye.onDone(()=>{Ye.destroy();const dt=this.players.indexOf(Ye);this.players.splice(dt,1)}),Ye.play()}),sr}elementContainsData(n,e){let i=!1;const o=e[Ao];return o&&o.setForRemoval&&(i=!0),this.playersByElement.has(e)&&(i=!0),this.playersByQueriedElement.has(e)&&(i=!0),this.statesByElement.has(e)&&(i=!0),this._fetchNamespace(n).elementContainsData(e)||i}afterFlush(n){this._flushFns.push(n)}afterFlushAnimationsDone(n){this._whenQuietFns.push(n)}_getPreviousPlayers(n,e,i,o,r){let s=[];if(e){const a=this.playersByQueriedElement.get(n);a&&(s=a)}else{const a=this.playersByElement.get(n);if(a){const l=!r||r==Qc;a.forEach(u=>{u.queued||!l&&u.triggerName!=o||s.push(u)})}}return(i||o)&&(s=s.filter(a=>!(i&&i!=a.namespaceId||o&&o!=a.triggerName))),s}_beforeAnimationBuild(n,e,i){const r=e.element,s=e.isRemovalTransition?void 0:n,a=e.isRemovalTransition?void 0:e.triggerName;for(const l of e.timelines){const u=l.element,p=u!==r,g=uo(i,u,[]);this._getPreviousPlayers(u,p,s,a,e.toState).forEach(C=>{const M=C.getRealPlayer();M.beforeDestroy&&M.beforeDestroy(),C.destroy(),g.push(C)})}aa(r,e.fromStyles)}_buildAnimation(n,e,i,o,r,s){const a=e.triggerName,l=e.element,u=[],p=new Set,g=new Set,v=e.timelines.map(M=>{const V=M.element;p.add(V);const K=V[Ao];if(K&&K.removedBeforeQueried)return new Kc(M.duration,M.delay);const Y=V!==l,ee=function RB(t){const n=[];return QS(t,n),n}((i.get(V)||xB).map(On=>On.getRealPlayer())).filter(On=>!!On.element&&On.element===V),ke=r.get(V),Ze=s.get(V),Pt=wS(0,this._normalizer,0,M.keyframes,ke,Ze),xn=this._buildPlayer(M,Pt,ee);if(M.subTimeline&&o&&g.add(V),Y){const On=new S_(n,a,V);On.setRealPlayer(xn),u.push(On)}return xn});u.forEach(M=>{uo(this.playersByQueriedElement,M.element,[]).push(M),M.onDone(()=>function IB(t,n,e){let i;if(t instanceof Map){if(i=t.get(n),i){if(i.length){const o=i.indexOf(e);i.splice(o,1)}0==i.length&&t.delete(n)}}else if(i=t[n],i){if(i.length){const o=i.indexOf(e);i.splice(o,1)}0==i.length&&delete t[n]}return i}(this.playersByQueriedElement,M.element,M))}),p.forEach(M=>Po(M,AS));const C=Cs(v);return C.onDestroy(()=>{p.forEach(M=>Cl(M,AS)),br(l,e.toStyles)}),g.forEach(M=>{uo(o,M,[]).push(C)}),C}_buildPlayer(n,e,i){return e.length>0?this.driver.animate(n.element,e,n.duration,n.delay,n.easing,i):new Kc(n.duration,n.delay)}}class S_{constructor(n,e,i){this.namespaceId=n,this.triggerName=e,this.element=i,this._player=new Kc,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(n){this._containsRealPlayer||(this._player=n,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(i=>i_(n,e,void 0,i))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(n.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(n){this.totalTime=n}syncPlayerEvents(n){const e=this._player;e.triggerCallback&&n.onStart(()=>e.triggerCallback("start")),n.onDone(()=>this.finish()),n.onDestroy(()=>this.destroy())}_queueEvent(n,e){uo(this._queuedCallbacks,n,[]).push(e)}onDone(n){this.queued&&this._queueEvent("done",n),this._player.onDone(n)}onStart(n){this.queued&&this._queueEvent("start",n),this._player.onStart(n)}onDestroy(n){this.queued&&this._queueEvent("destroy",n),this._player.onDestroy(n)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(n){this.queued||this._player.setPosition(n)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(n){const e=this._player;e.triggerCallback&&e.triggerCallback(n)}}function Sh(t){return t&&1===t.nodeType}function qS(t,n){const e=t.style.display;return t.style.display=null!=n?n:"none",e}function KS(t,n,e,i,o){const r=[];e.forEach(l=>r.push(qS(l)));const s=[];i.forEach((l,u)=>{const p={};l.forEach(g=>{const v=p[g]=n.computeStyle(u,g,o);(!v||0==v.length)&&(u[Ao]=TB,s.push(u))}),t.set(u,p)});let a=0;return e.forEach(l=>qS(l,r[a++])),s}function ZS(t,n){const e=new Map;if(t.forEach(a=>e.set(a,[])),0==n.length)return e;const o=new Set(n),r=new Map;function s(a){if(!a)return 1;let l=r.get(a);if(l)return l;const u=a.parentNode;return l=e.has(u)?u:o.has(u)?1:s(u),r.set(a,l),l}return n.forEach(a=>{const l=s(a);1!==l&&e.get(l).push(a)}),e}function Po(t,n){var e;null===(e=t.classList)||void 0===e||e.add(n)}function Cl(t,n){var e;null===(e=t.classList)||void 0===e||e.remove(n)}function PB(t,n,e){Cs(e).onDone(()=>t.processLeaveNode(n))}function QS(t,n){for(let e=0;eo.add(r)):n.set(t,i),e.delete(t),!0}class Mh{constructor(n,e,i){this.bodyNode=n,this._driver=e,this._normalizer=i,this._triggerCache={},this.onRemovalComplete=(o,r)=>{},this._transitionEngine=new EB(n,e,i),this._timelineEngine=new CB(n,e,i),this._transitionEngine.onRemovalComplete=(o,r)=>this.onRemovalComplete(o,r)}registerTrigger(n,e,i,o,r){const s=n+"-"+o;let a=this._triggerCache[s];if(!a){const l=[],p=f_(this._driver,r,l,[]);if(l.length)throw function w4(t,n){return new Qe(3404,jt)}();a=function _B(t,n,e){return new bB(t,n,e)}(o,p,this._normalizer),this._triggerCache[s]=a}this._transitionEngine.registerTrigger(e,o,a)}register(n,e){this._transitionEngine.register(n,e)}destroy(n,e){this._transitionEngine.destroy(n,e)}onInsert(n,e,i,o){this._transitionEngine.insertNode(n,e,i,o)}onRemove(n,e,i,o){this._transitionEngine.removeNode(n,e,o||!1,i)}disableAnimations(n,e){this._transitionEngine.markElementAsDisabled(n,e)}process(n,e,i,o){if("@"==i.charAt(0)){const[r,s]=DS(i);this._timelineEngine.command(r,e,s,o)}else this._transitionEngine.trigger(n,e,i,o)}listen(n,e,i,o,r){if("@"==i.charAt(0)){const[s,a]=DS(i);return this._timelineEngine.listen(s,e,a,r)}return this._transitionEngine.listen(n,e,i,o,r)}flush(n=-1){this._transitionEngine.flush(n)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}let LB=(()=>{class t{constructor(e,i,o){this._element=e,this._startStyles=i,this._endStyles=o,this._state=0;let r=t.initialStylesByElement.get(e);r||t.initialStylesByElement.set(e,r={}),this._initialStyles=r}start(){this._state<1&&(this._startStyles&&br(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(br(this._element,this._initialStyles),this._endStyles&&(br(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(aa(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(aa(this._element,this._endStyles),this._endStyles=null),br(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function M_(t){let n=null;const e=Object.keys(t);for(let i=0;in()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const n=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,n,this.options),this._finalKeyframe=n.length?n[n.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(n,e,i){return n.animate(e,i)}onStart(n){this._onStartFns.push(n)}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(n=>n()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}setPosition(n){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=n*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const n={};if(this.hasStarted()){const e=this._finalKeyframe;Object.keys(e).forEach(i=>{"offset"!=i&&(n[i]=this._finished?e[i]:LS(this.element,i))})}this.currentSnapshot=n}triggerCallback(n){const e="start"==n?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}}class VB{validateStyleProperty(n){return TS(n)}matchesElement(n,e){return!1}containsElement(n,e){return kS(n,e)}getParentElement(n){return a_(n)}query(n,e,i){return ES(n,e,i)}computeStyle(n,e,i){return window.getComputedStyle(n)[e]}animate(n,e,i,o,r,s=[]){const l={duration:i,delay:o,fill:0==o?"both":"forwards"};r&&(l.easing=r);const u={},p=s.filter(v=>v instanceof XS);(function z4(t,n){return 0===t||0===n})(i,o)&&p.forEach(v=>{let C=v.currentSnapshot;Object.keys(C).forEach(M=>u[M]=C[M])}),e=function $4(t,n,e){const i=Object.keys(e);if(i.length&&n.length){let r=n[0],s=[];if(i.forEach(a=>{r.hasOwnProperty(a)||s.push(a),r[a]=e[a]}),s.length)for(var o=1;ows(v,!1)),u);const g=function NB(t,n){let e=null,i=null;return Array.isArray(n)&&n.length?(e=M_(n[0]),n.length>1&&(i=M_(n[n.length-1]))):n&&(e=M_(n)),e||i?new LB(t,e,i):null}(n,e);return new XS(n,e,l,g)}}let jB=(()=>{class t extends gS{constructor(e,i){super(),this._nextAnimationId=0,this._renderer=e.createRenderer(i.body,{id:"0",encapsulation:zo.None,styles:[],data:{animation:[]}})}build(e){const i=this._nextAnimationId.toString();this._nextAnimationId++;const o=Array.isArray(e)?bS(e):e;return JS(this._renderer,null,i,"register",[o]),new HB(i,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Q(Rc),Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();class HB extends class X5{}{constructor(n,e){super(),this._id=n,this._renderer=e}create(n,e){return new UB(this._id,n,e||{},this._renderer)}}class UB{constructor(n,e,i,o){this.id=n,this.element=e,this._renderer=o,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",i)}_listen(n,e){return this._renderer.listen(this.element,`@@${this.id}:${n}`,e)}_command(n,...e){return JS(this._renderer,this.element,this.id,n,e)}onDone(n){this._listen("done",n)}onStart(n){this._listen("start",n)}onDestroy(n){this._listen("destroy",n)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset"),this._started=!1}setPosition(n){this._command("setPosition",n)}getPosition(){var n,e;return null!==(e=null===(n=this._renderer.engine.players[+this.id])||void 0===n?void 0:n.getPosition())&&void 0!==e?e:0}}function JS(t,n,e,i,o){return t.setProperty(n,`@@${e}:${i}`,o)}const eM="@.disabled";let zB=(()=>{class t{constructor(e,i,o){this.delegate=e,this.engine=i,this._zone=o,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),i.onRemovalComplete=(r,s)=>{const a=null==s?void 0:s.parentNode(r);a&&s.removeChild(a,r)}}createRenderer(e,i){const r=this.delegate.createRenderer(e,i);if(!(e&&i&&i.data&&i.data.animation)){let p=this._rendererCache.get(r);return p||(p=new tM("",r,this.engine),this._rendererCache.set(r,p)),p}const s=i.id,a=i.id+"-"+this._currentId;this._currentId++,this.engine.register(a,e);const l=p=>{Array.isArray(p)?p.forEach(l):this.engine.registerTrigger(s,a,e,p.name,p)};return i.data.animation.forEach(l),new $B(this,a,r,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(e,i,o){e>=0&&ei(o)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(r=>{const[s,a]=r;s(a)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([i,o]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}return t.\u0275fac=function(e){return new(e||t)(Q(Rc),Q(Mh),Q(Je))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();class tM{constructor(n,e,i){this.namespaceId=n,this.delegate=e,this.engine=i,this.destroyNode=this.delegate.destroyNode?o=>e.destroyNode(o):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(n,e){return this.delegate.createElement(n,e)}createComment(n){return this.delegate.createComment(n)}createText(n){return this.delegate.createText(n)}appendChild(n,e){this.delegate.appendChild(n,e),this.engine.onInsert(this.namespaceId,e,n,!1)}insertBefore(n,e,i,o=!0){this.delegate.insertBefore(n,e,i),this.engine.onInsert(this.namespaceId,e,n,o)}removeChild(n,e,i){this.engine.onRemove(this.namespaceId,e,this.delegate,i)}selectRootElement(n,e){return this.delegate.selectRootElement(n,e)}parentNode(n){return this.delegate.parentNode(n)}nextSibling(n){return this.delegate.nextSibling(n)}setAttribute(n,e,i,o){this.delegate.setAttribute(n,e,i,o)}removeAttribute(n,e,i){this.delegate.removeAttribute(n,e,i)}addClass(n,e){this.delegate.addClass(n,e)}removeClass(n,e){this.delegate.removeClass(n,e)}setStyle(n,e,i,o){this.delegate.setStyle(n,e,i,o)}removeStyle(n,e,i){this.delegate.removeStyle(n,e,i)}setProperty(n,e,i){"@"==e.charAt(0)&&e==eM?this.disableAnimations(n,!!i):this.delegate.setProperty(n,e,i)}setValue(n,e){this.delegate.setValue(n,e)}listen(n,e,i){return this.delegate.listen(n,e,i)}disableAnimations(n,e){this.engine.disableAnimations(n,e)}}class $B extends tM{constructor(n,e,i,o){super(e,i,o),this.factory=n,this.namespaceId=e}setProperty(n,e,i){"@"==e.charAt(0)?"."==e.charAt(1)&&e==eM?this.disableAnimations(n,i=void 0===i||!!i):this.engine.process(this.namespaceId,n,e.substr(1),i):this.delegate.setProperty(n,e,i)}listen(n,e,i){if("@"==e.charAt(0)){const o=function GB(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(n);let r=e.substr(1),s="";return"@"!=r.charAt(0)&&([r,s]=function WB(t){const n=t.indexOf(".");return[t.substring(0,n),t.substr(n+1)]}(r)),this.engine.listen(this.namespaceId,o,r,s,a=>{this.factory.scheduleListenerCallback(a._data||-1,i,a)})}return this.delegate.listen(n,e,i)}}let qB=(()=>{class t extends Mh{constructor(e,i,o){super(e.body,i,o)}ngOnDestroy(){this.flush()}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(l_),Q(v_))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const gn=new _e("AnimationModuleType"),nM=[{provide:gS,useClass:jB},{provide:v_,useFactory:function KB(){return new hB}},{provide:Mh,useClass:qB},{provide:Rc,useFactory:function ZB(t,n,e){return new zB(t,n,e)},deps:[ah,Mh,Je]}],iM=[{provide:l_,useFactory:()=>new VB},{provide:gn,useValue:"BrowserAnimations"},...nM],QB=[{provide:l_,useClass:IS},{provide:gn,useValue:"NoopAnimations"},...nM];let YB=(()=>{class t{static withConfig(e){return{ngModule:t,providers:e.disableAnimations?QB:iM}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:iM,imports:[hS]}),t})();const XB=new _e("cdk-dir-doc",{providedIn:"root",factory:function JB(){return hc(ht)}}),eV=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;let x_,ai=(()=>{class t{constructor(e){if(this.value="ltr",this.change=new Pe,e){const o=e.documentElement?e.documentElement.dir:null;this.value=function tV(t){const n=(null==t?void 0:t.toLowerCase())||"";return"auto"===n&&"undefined"!=typeof navigator&&(null==navigator?void 0:navigator.language)?eV.test(navigator.language)?"rtl":"ltr":"rtl"===n?"rtl":"ltr"}((e.body?e.body.dir:null)||o||"ltr")}}ngOnDestroy(){this.change.complete()}}return t.\u0275fac=function(e){return new(e||t)(Q(XB,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Yc=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();try{x_="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(t){x_=!1}let wl,dn=(()=>{class t{constructor(e){this._platformId=e,this.isBrowser=this._platformId?function f5(t){return t===JD}(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!x_)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return t.\u0275fac=function(e){return new(e||t)(Q(Hc))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const rM=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function sM(){if(wl)return wl;if("object"!=typeof document||!document)return wl=new Set(rM),wl;let t=document.createElement("input");return wl=new Set(rM.filter(n=>(t.setAttribute("type",n),t.type===n))),wl}let Xc,Th,da,T_;function ca(t){return function nV(){if(null==Xc&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>Xc=!0}))}finally{Xc=Xc||!1}return Xc}()?t:!!t.capture}function aM(){if(null==da){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return da=!1,da;if("scrollBehavior"in document.documentElement.style)da=!0;else{const t=Element.prototype.scrollTo;da=!!t&&!/\{\s*\[native code\]\s*\}/.test(t.toString())}}return da}function Jc(){if("object"!=typeof document||!document)return 0;if(null==Th){const t=document.createElement("div"),n=t.style;t.dir="rtl",n.width="1px",n.overflow="auto",n.visibility="hidden",n.pointerEvents="none",n.position="absolute";const e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",t.appendChild(e),document.body.appendChild(t),Th=0,0===t.scrollLeft&&(t.scrollLeft=1,Th=0===t.scrollLeft?1:2),t.remove()}return Th}function lM(t){if(function iV(){if(null==T_){const t="undefined"!=typeof document?document.head:null;T_=!(!t||!t.createShadowRoot&&!t.attachShadow)}return T_}()){const n=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&n instanceof ShadowRoot)return n}return null}function k_(){let t="undefined"!=typeof document&&document?document.activeElement:null;for(;t&&t.shadowRoot;){const n=t.shadowRoot.activeElement;if(n===t)break;t=n}return t}function Ds(t){return t.composedPath?t.composedPath()[0]:t.target}function E_(){return"undefined"!=typeof __karma__&&!!__karma__||"undefined"!=typeof jasmine&&!!jasmine||"undefined"!=typeof jest&&!!jest||"undefined"!=typeof Mocha&&!!Mocha}class vt extends ie{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const e=super._subscribe(n);return!e.closed&&n.next(this._value),e}getValue(){const{hasError:n,thrownError:e,_value:i}=this;if(n)throw e;return this._throwIfClosed(),i}next(n){super.next(this._value=n)}}function We(...t){return ui(t,Yl(t))}function fi(t,...n){return n.length?n.some(e=>t[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}function Zt(t,n,e){const i=H(t)||n||e?{next:t,error:n,complete:e}:t;return i?nt((o,r)=>{var s;null===(s=i.subscribe)||void 0===s||s.call(i);let a=!0;o.subscribe(st(r,l=>{var u;null===(u=i.next)||void 0===u||u.call(i,l),r.next(l)},()=>{var l;a=!1,null===(l=i.complete)||void 0===l||l.call(i),r.complete()},l=>{var u;a=!1,null===(u=i.error)||void 0===u||u.call(i,l),r.error(l)},()=>{var l,u;a&&(null===(l=i.unsubscribe)||void 0===l||l.call(i)),null===(u=i.finalize)||void 0===u||u.call(i)}))}):Me}class mV extends k{constructor(n,e){super()}schedule(n,e=0){return this}}const Ih={setInterval(t,n,...e){const{delegate:i}=Ih;return(null==i?void 0:i.setInterval)?i.setInterval(t,n,...e):setInterval(t,n,...e)},clearInterval(t){const{delegate:n}=Ih;return((null==n?void 0:n.clearInterval)||clearInterval)(t)},delegate:void 0};class P_ extends mV{constructor(n,e){super(n,e),this.scheduler=n,this.work=e,this.pending=!1}schedule(n,e=0){var i;if(this.closed)return this;this.state=n;const o=this.id,r=this.scheduler;return null!=o&&(this.id=this.recycleAsyncId(r,o,e)),this.pending=!0,this.delay=e,this.id=null!==(i=this.id)&&void 0!==i?i:this.requestAsyncId(r,this.id,e),this}requestAsyncId(n,e,i=0){return Ih.setInterval(n.flush.bind(n,this),i)}recycleAsyncId(n,e,i=0){if(null!=i&&this.delay===i&&!1===this.pending)return e;null!=e&&Ih.clearInterval(e)}execute(n,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const i=this._execute(n,e);if(i)return i;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(n,e){let o,i=!1;try{this.work(n)}catch(r){i=!0,o=r||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),o}unsubscribe(){if(!this.closed){const{id:n,scheduler:e}=this,{actions:i}=e;this.work=this.state=this.scheduler=null,this.pending=!1,x(i,this),null!=n&&(this.id=this.recycleAsyncId(e,n,null)),this.delay=null,super.unsubscribe()}}}const cM={now:()=>(cM.delegate||Date).now(),delegate:void 0};class ed{constructor(n,e=ed.now){this.schedulerActionCtor=n,this.now=e}schedule(n,e=0,i){return new this.schedulerActionCtor(this,n).schedule(i,e)}}ed.now=cM.now;class R_ extends ed{constructor(n,e=ed.now){super(n,e),this.actions=[],this._active=!1}flush(n){const{actions:e}=this;if(this._active)return void e.push(n);let i;this._active=!0;do{if(i=n.execute(n.state,n.delay))break}while(n=e.shift());if(this._active=!1,i){for(;n=e.shift();)n.unsubscribe();throw i}}}const td=new R_(P_),gV=td;function Oh(t,n=td){return nt((e,i)=>{let o=null,r=null,s=null;const a=()=>{if(o){o.unsubscribe(),o=null;const u=r;r=null,i.next(u)}};function l(){const u=s+t,p=n.now();if(p{r=u,s=n.now(),o||(o=n.schedule(l,t),i.add(o))},()=>{a(),i.complete()},void 0,()=>{r=o=null}))})}function It(t,n){return nt((e,i)=>{let o=0;e.subscribe(st(i,r=>t.call(n,r,o++)&&i.next(r)))})}function Ot(t){return t<=0?()=>yo:nt((n,e)=>{let i=0;n.subscribe(st(e,o=>{++i<=t&&(e.next(o),t<=i&&e.complete())}))})}function F_(t){return It((n,e)=>t<=e)}function nd(t,n=Me){return t=null!=t?t:_V,nt((e,i)=>{let o,r=!0;e.subscribe(st(i,s=>{const a=n(s);(r||!t(o,a))&&(r=!1,o=a,i.next(s))}))})}function _V(t,n){return t===n}function tt(t){return nt((n,e)=>{yi(t).subscribe(st(e,()=>e.complete(),S)),!e.closed&&n.subscribe(e)})}function Xe(t){return null!=t&&"false"!=`${t}`}function Zn(t,n=0){return function bV(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):n}function Ah(t){return Array.isArray(t)?t:[t]}function Qn(t){return null==t?"":"string"==typeof t?t:`${t}px`}function zr(t){return t instanceof He?t.nativeElement:t}let dM=(()=>{class t{create(e){return"undefined"==typeof MutationObserver?null:new MutationObserver(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),yV=(()=>{class t{constructor(e){this._mutationObserverFactory=e,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((e,i)=>this._cleanupObserver(i))}observe(e){const i=zr(e);return new Ue(o=>{const s=this._observeElement(i).subscribe(o);return()=>{s.unsubscribe(),this._unobserveElement(i)}})}_observeElement(e){if(this._observedElements.has(e))this._observedElements.get(e).count++;else{const i=new ie,o=this._mutationObserverFactory.create(r=>i.next(r));o&&o.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:o,stream:i,count:1})}return this._observedElements.get(e).stream}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){const{observer:i,stream:o}=this._observedElements.get(e);i&&i.disconnect(),o.complete(),this._observedElements.delete(e)}}}return t.\u0275fac=function(e){return new(e||t)(Q(dM))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),N_=(()=>{class t{constructor(e,i,o){this._contentObserver=e,this._elementRef=i,this._ngZone=o,this.event=new Pe,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(e){this._debounce=Zn(e),this._subscribe()}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const e=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?e.pipe(Oh(this.debounce)):e).subscribe(this.event)})}_unsubscribe(){var e;null===(e=this._currentSubscription)||void 0===e||e.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(yV),b(He),b(Je))},t.\u0275dir=oe({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),Ph=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[dM]}),t})();function Rh(t,n){return(t.getAttribute(n)||"").match(/\S+/g)||[]}const hM="cdk-describedby-message",Fh="cdk-describedby-host";let pM=0,DV=(()=>{class t{constructor(e,i){this._platform=i,this._messageRegistry=new Map,this._messagesContainer=null,this._id=""+pM++,this._document=e}describe(e,i,o){if(!this._canBeDescribed(e,i))return;const r=L_(i,o);"string"!=typeof i?(fM(i),this._messageRegistry.set(r,{messageElement:i,referenceCount:0})):this._messageRegistry.has(r)||this._createMessageElement(i,o),this._isElementDescribedByMessage(e,r)||this._addMessageReference(e,r)}removeDescription(e,i,o){var r;if(!i||!this._isElementNode(e))return;const s=L_(i,o);if(this._isElementDescribedByMessage(e,s)&&this._removeMessageReference(e,s),"string"==typeof i){const a=this._messageRegistry.get(s);a&&0===a.referenceCount&&this._deleteMessageElement(s)}0===(null===(r=this._messagesContainer)||void 0===r?void 0:r.childNodes.length)&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){var e;const i=this._document.querySelectorAll(`[${Fh}="${this._id}"]`);for(let o=0;o0!=o.indexOf(hM));e.setAttribute("aria-describedby",i.join(" "))}_addMessageReference(e,i){const o=this._messageRegistry.get(i);(function CV(t,n,e){const i=Rh(t,n);i.some(o=>o.trim()==e.trim())||(i.push(e.trim()),t.setAttribute(n,i.join(" ")))})(e,"aria-describedby",o.messageElement.id),e.setAttribute(Fh,this._id),o.referenceCount++}_removeMessageReference(e,i){const o=this._messageRegistry.get(i);o.referenceCount--,function wV(t,n,e){const o=Rh(t,n).filter(r=>r!=e.trim());o.length?t.setAttribute(n,o.join(" ")):t.removeAttribute(n)}(e,"aria-describedby",o.messageElement.id),e.removeAttribute(Fh)}_isElementDescribedByMessage(e,i){const o=Rh(e,"aria-describedby"),r=this._messageRegistry.get(i),s=r&&r.messageElement.id;return!!s&&-1!=o.indexOf(s)}_canBeDescribed(e,i){if(!this._isElementNode(e))return!1;if(i&&"object"==typeof i)return!0;const o=null==i?"":`${i}`.trim(),r=e.getAttribute("aria-label");return!(!o||r&&r.trim()===o)}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(dn))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function L_(t,n){return"string"==typeof t?`${n||""}/${t}`:t}function fM(t){t.id||(t.id=`${hM}-${pM++}`)}class mM{constructor(n){this._items=n,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new ie,this._typeaheadSubscription=k.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._skipPredicateFn=e=>e.disabled,this._pressedLetters=[],this.tabOut=new ie,this.change=new ie,n instanceof vs&&n.changes.subscribe(e=>{if(this._activeItem){const o=e.toArray().indexOf(this._activeItem);o>-1&&o!==this._activeItemIndex&&(this._activeItemIndex=o)}})}skipPredicate(n){return this._skipPredicateFn=n,this}withWrap(n=!0){return this._wrap=n,this}withVerticalOrientation(n=!0){return this._vertical=n,this}withHorizontalOrientation(n){return this._horizontal=n,this}withAllowedModifierKeys(n){return this._allowedModifierKeys=n,this}withTypeAhead(n=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe(Zt(e=>this._pressedLetters.push(e)),Oh(n),It(()=>this._pressedLetters.length>0),je(()=>this._pressedLetters.join(""))).subscribe(e=>{const i=this._getItemsArray();for(let o=1;o!n[r]||this._allowedModifierKeys.indexOf(r)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&o){this.setNextItemActive();break}return;case 38:if(this._vertical&&o){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&o){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&o){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&o){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&o){this.setLastItemActive();break}return;default:return void((o||fi(n,"shiftKey"))&&(n.key&&1===n.key.length?this._letterKeyStream.next(n.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))))}this._pressedLetters=[],n.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(n){const e=this._getItemsArray(),i="number"==typeof n?n:e.indexOf(n),o=e[i];this._activeItem=null==o?null:o,this._activeItemIndex=i}_setActiveItemByDelta(n){this._wrap?this._setActiveInWrapMode(n):this._setActiveInDefaultMode(n)}_setActiveInWrapMode(n){const e=this._getItemsArray();for(let i=1;i<=e.length;i++){const o=(this._activeItemIndex+n*i+e.length)%e.length;if(!this._skipPredicateFn(e[o]))return void this.setActiveItem(o)}}_setActiveInDefaultMode(n){this._setActiveItemByIndex(this._activeItemIndex+n,n)}_setActiveItemByIndex(n,e){const i=this._getItemsArray();if(i[n]){for(;this._skipPredicateFn(i[n]);)if(!i[n+=e])return;this.setActiveItem(n)}}_getItemsArray(){return this._items instanceof vs?this._items.toArray():this._items}}class gM extends mM{setActiveItem(n){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(n),this.activeItem&&this.activeItem.setActiveStyles()}}class Nh extends mM{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(n){return this._origin=n,this}setActiveItem(n){super.setActiveItem(n),this.activeItem&&this.activeItem.focus(this._origin)}}let B_=(()=>{class t{constructor(e){this._platform=e}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return function MV(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}isTabbable(e){if(!this._platform.isBrowser)return!1;const i=function SV(t){try{return t.frameElement}catch(n){return null}}(function PV(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}(e));if(i&&(-1===bM(i)||!this.isVisible(i)))return!1;let o=e.nodeName.toLowerCase(),r=bM(e);return e.hasAttribute("contenteditable")?-1!==r:!("iframe"===o||"object"===o||this._platform.WEBKIT&&this._platform.IOS&&!function OV(t){let n=t.nodeName.toLowerCase(),e="input"===n&&t.type;return"text"===e||"password"===e||"select"===n||"textarea"===n}(e))&&("audio"===o?!!e.hasAttribute("controls")&&-1!==r:"video"===o?-1!==r&&(null!==r||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}isFocusable(e,i){return function AV(t){return!function TV(t){return function EV(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function xV(t){let n=t.nodeName.toLowerCase();return"input"===n||"select"===n||"button"===n||"textarea"===n}(t)||function kV(t){return function IV(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||_M(t))}(e)&&!this.isDisabled(e)&&((null==i?void 0:i.ignoreVisibility)||this.isVisible(e))}}return t.\u0275fac=function(e){return new(e||t)(Q(dn))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function _M(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;let n=t.getAttribute("tabindex");return!(!n||isNaN(parseInt(n,10)))}function bM(t){if(!_M(t))return null;const n=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(n)?-1:n}class RV{constructor(n,e,i,o,r=!1){this._element=n,this._checker=e,this._ngZone=i,this._document=o,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,r||this.attachAnchors()}get enabled(){return this._enabled}set enabled(n){this._enabled=n,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}destroy(){const n=this._startAnchor,e=this._endAnchor;n&&(n.removeEventListener("focus",this.startAnchorListener),n.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(n){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(n)))})}focusFirstTabbableElementWhenReady(n){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(n)))})}focusLastTabbableElementWhenReady(n){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(n)))})}_getRegionBoundary(n){const e=this._element.querySelectorAll(`[cdk-focus-region-${n}], [cdkFocusRegion${n}], [cdk-focus-${n}]`);return"start"==n?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(n){const e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){const i=this._getFirstTabbableElement(e);return null==i||i.focus(n),!!i}return e.focus(n),!0}return this.focusFirstTabbableElement(n)}focusFirstTabbableElement(n){const e=this._getRegionBoundary("start");return e&&e.focus(n),!!e}focusLastTabbableElement(n){const e=this._getRegionBoundary("end");return e&&e.focus(n),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(n){if(this._checker.isFocusable(n)&&this._checker.isTabbable(n))return n;const e=n.children;for(let i=0;i=0;i--){const o=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(o)return o}return null}_createAnchor(){const n=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,n),n.classList.add("cdk-visually-hidden"),n.classList.add("cdk-focus-trap-anchor"),n.setAttribute("aria-hidden","true"),n}_toggleAnchorTabIndex(n,e){n?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(n){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}_executeOnStable(n){this._ngZone.isStable?n():this._ngZone.onStable.pipe(Ot(1)).subscribe(n)}}let vM=(()=>{class t{constructor(e,i,o){this._checker=e,this._ngZone=i,this._document=o}create(e,i=!1){return new RV(e,this._checker,this._ngZone,this._document,i)}}return t.\u0275fac=function(e){return new(e||t)(Q(B_),Q(Je),Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function V_(t){return 0===t.buttons||0===t.offsetX&&0===t.offsetY}function j_(t){const n=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!(!n||-1!==n.identifier||null!=n.radiusX&&1!==n.radiusX||null!=n.radiusY&&1!==n.radiusY)}const FV=new _e("cdk-input-modality-detector-options"),NV={ignoreKeys:[18,17,224,91,16]},Sl=ca({passive:!0,capture:!0});let LV=(()=>{class t{constructor(e,i,o,r){this._platform=e,this._mostRecentTarget=null,this._modality=new vt(null),this._lastTouchMs=0,this._onKeydown=s=>{var a,l;(null===(l=null===(a=this._options)||void 0===a?void 0:a.ignoreKeys)||void 0===l?void 0:l.some(u=>u===s.keyCode))||(this._modality.next("keyboard"),this._mostRecentTarget=Ds(s))},this._onMousedown=s=>{Date.now()-this._lastTouchMs<650||(this._modality.next(V_(s)?"keyboard":"mouse"),this._mostRecentTarget=Ds(s))},this._onTouchstart=s=>{j_(s)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Ds(s))},this._options=Object.assign(Object.assign({},NV),r),this.modalityDetected=this._modality.pipe(F_(1)),this.modalityChanged=this.modalityDetected.pipe(nd()),e.isBrowser&&i.runOutsideAngular(()=>{o.addEventListener("keydown",this._onKeydown,Sl),o.addEventListener("mousedown",this._onMousedown,Sl),o.addEventListener("touchstart",this._onTouchstart,Sl)})}get mostRecentModality(){return this._modality.value}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,Sl),document.removeEventListener("mousedown",this._onMousedown,Sl),document.removeEventListener("touchstart",this._onTouchstart,Sl))}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(Je),Q(ht),Q(FV,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const BV=new _e("liveAnnouncerElement",{providedIn:"root",factory:function VV(){return null}}),jV=new _e("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let H_=(()=>{class t{constructor(e,i,o,r){this._ngZone=i,this._defaultOptions=r,this._document=o,this._liveElement=e||this._createLiveElement()}announce(e,...i){const o=this._defaultOptions;let r,s;return 1===i.length&&"number"==typeof i[0]?s=i[0]:[r,s]=i,this.clear(),clearTimeout(this._previousTimeout),r||(r=o&&o.politeness?o.politeness:"polite"),null==s&&o&&(s=o.duration),this._liveElement.setAttribute("aria-live",r),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(a=>this._currentResolve=a)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=e,"number"==typeof s&&(this._previousTimeout=setTimeout(()=>this.clear(),s)),this._currentResolve(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){var e,i;clearTimeout(this._previousTimeout),null===(e=this._liveElement)||void 0===e||e.remove(),this._liveElement=null,null===(i=this._currentResolve)||void 0===i||i.call(this),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){const e="cdk-live-announcer-element",i=this._document.getElementsByClassName(e),o=this._document.createElement("div");for(let r=0;r{class t{constructor(e,i,o,r,s){this._ngZone=e,this._platform=i,this._inputModalityDetector=o,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new ie,this._rootNodeFocusAndBlurListener=a=>{const l=Ds(a),u="focus"===a.type?this._onFocus:this._onBlur;for(let p=l;p;p=p.parentElement)u.call(this,a,p)},this._document=r,this._detectionMode=(null==s?void 0:s.detectionMode)||0}monitor(e,i=!1){const o=zr(e);if(!this._platform.isBrowser||1!==o.nodeType)return We(null);const r=lM(o)||this._getDocument(),s=this._elementInfo.get(o);if(s)return i&&(s.checkChildren=!0),s.subject;const a={checkChildren:i,subject:new ie,rootNode:r};return this._elementInfo.set(o,a),this._registerGlobalListeners(a),a.subject}stopMonitoring(e){const i=zr(e),o=this._elementInfo.get(i);o&&(o.subject.complete(),this._setClasses(i),this._elementInfo.delete(i),this._removeGlobalListeners(o))}focusVia(e,i,o){const r=zr(e);r===this._getDocument().activeElement?this._getClosestElementsInfo(r).forEach(([a,l])=>this._originChanged(a,i,l)):(this._setOrigin(i),"function"==typeof r.focus&&r.focus(o))}ngOnDestroy(){this._elementInfo.forEach((e,i)=>this.stopMonitoring(i))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}_shouldBeAttributedToTouch(e){return 1===this._detectionMode||!!(null==e?void 0:e.contains(this._inputModalityDetector._mostRecentTarget))}_setClasses(e,i){e.classList.toggle("cdk-focused",!!i),e.classList.toggle("cdk-touch-focused","touch"===i),e.classList.toggle("cdk-keyboard-focused","keyboard"===i),e.classList.toggle("cdk-mouse-focused","mouse"===i),e.classList.toggle("cdk-program-focused","program"===i)}_setOrigin(e,i=!1){this._ngZone.runOutsideAngular(()=>{this._origin=e,this._originFromTouchInteraction="touch"===e&&i,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(e,i){const o=this._elementInfo.get(i),r=Ds(e);!o||!o.checkChildren&&i!==r||this._originChanged(i,this._getFocusOrigin(r),o)}_onBlur(e,i){const o=this._elementInfo.get(i);!o||o.checkChildren&&e.relatedTarget instanceof Node&&i.contains(e.relatedTarget)||(this._setClasses(i),this._emitOrigin(o.subject,null))}_emitOrigin(e,i){this._ngZone.run(()=>e.next(i))}_registerGlobalListeners(e){if(!this._platform.isBrowser)return;const i=e.rootNode,o=this._rootNodeFocusListenerCount.get(i)||0;o||this._ngZone.runOutsideAngular(()=>{i.addEventListener("focus",this._rootNodeFocusAndBlurListener,Lh),i.addEventListener("blur",this._rootNodeFocusAndBlurListener,Lh)}),this._rootNodeFocusListenerCount.set(i,o+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(tt(this._stopInputModalityDetector)).subscribe(r=>{this._setOrigin(r,!0)}))}_removeGlobalListeners(e){const i=e.rootNode;if(this._rootNodeFocusListenerCount.has(i)){const o=this._rootNodeFocusListenerCount.get(i);o>1?this._rootNodeFocusListenerCount.set(i,o-1):(i.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Lh),i.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Lh),this._rootNodeFocusListenerCount.delete(i))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(e,i,o){this._setClasses(e,i),this._emitOrigin(o.subject,i),this._lastFocusOrigin=i}_getClosestElementsInfo(e){const i=[];return this._elementInfo.forEach((o,r)=>{(r===e||o.checkChildren&&r.contains(e))&&i.push([r,o])}),i}}return t.\u0275fac=function(e){return new(e||t)(Q(Je),Q(dn),Q(LV),Q(ht,8),Q(HV,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),UV=(()=>{class t{constructor(e,i){this._elementRef=e,this._focusMonitor=i,this.cdkFocusChange=new Pe}ngAfterViewInit(){const e=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(e,1===e.nodeType&&e.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(i=>this.cdkFocusChange.emit(i))}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Ro))},t.\u0275dir=oe({type:t,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"}}),t})();const CM="cdk-high-contrast-black-on-white",wM="cdk-high-contrast-white-on-black",U_="cdk-high-contrast-active";let DM=(()=>{class t{constructor(e,i){this._platform=e,this._document=i}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);const i=this._document.defaultView||window,o=i&&i.getComputedStyle?i.getComputedStyle(e):null,r=(o&&o.backgroundColor||"").replace(/ /g,"");switch(e.remove(),r){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const e=this._document.body.classList;e.remove(U_),e.remove(CM),e.remove(wM),this._hasCheckedHighContrastMode=!0;const i=this.getHighContrastMode();1===i?(e.add(U_),e.add(CM)):2===i&&(e.add(U_),e.add(wM))}}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),SM=(()=>{class t{constructor(e){e._applyBodyHighContrastModeCssClasses()}}return t.\u0275fac=function(e){return new(e||t)(Q(DM))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Ph]]}),t})();function id(...t){return function zV(){return Ql(1)}()(ui(t,Yl(t)))}function Nn(...t){const n=Yl(t);return nt((e,i)=>{(n?id(t,e,n):id(t,e)).subscribe(i)})}function $V(t,n){if(1&t&&E(0,"mat-pseudo-checkbox",4),2&t){const e=D();m("state",e.selected?"checked":"unchecked")("disabled",e.disabled)}}function GV(t,n){if(1&t&&(d(0,"span",5),h(1),c()),2&t){const e=D();f(1),Se("(",e.group.label,")")}}const WV=["*"],KV=new _e("mat-sanity-checks",{providedIn:"root",factory:function qV(){return!0}});let ft=(()=>{class t{constructor(e,i,o){this._sanityChecks=i,this._document=o,this._hasDoneGlobalChecks=!1,e._applyBodyHighContrastModeCssClasses(),this._hasDoneGlobalChecks||(this._hasDoneGlobalChecks=!0)}_checkIsEnabled(e){return!E_()&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[e])}}return t.\u0275fac=function(e){return new(e||t)(Q(DM),Q(KV,8),Q(ht))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Yc],Yc]}),t})();function pa(t){return class extends t{constructor(...n){super(...n),this._disabled=!1}get disabled(){return this._disabled}set disabled(n){this._disabled=Xe(n)}}}function $r(t,n){return class extends t{constructor(...e){super(...e),this.defaultColor=n,this.color=n}get color(){return this._color}set color(e){const i=e||this.defaultColor;i!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),i&&this._elementRef.nativeElement.classList.add(`mat-${i}`),this._color=i)}}}function vr(t){return class extends t{constructor(...n){super(...n),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(n){this._disableRipple=Xe(n)}}}function Ml(t,n=0){return class extends t{constructor(...e){super(...e),this._tabIndex=n,this.defaultTabIndex=n}get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(e){this._tabIndex=null!=e?Zn(e):this.defaultTabIndex}}}function z_(t){return class extends t{constructor(...n){super(...n),this.stateChanges=new ie,this.errorState=!1}updateErrorState(){const n=this.errorState,r=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);r!==n&&(this.errorState=r,this.stateChanges.next())}}}let od=(()=>{class t{isErrorState(e,i){return!!(e&&e.invalid&&(e.touched||i&&i.submitted))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),xM=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();class XV{constructor(n,e,i){this._renderer=n,this.element=e,this.config=i,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const TM={enterDuration:225,exitDuration:150},$_=ca({passive:!0}),kM=["mousedown","touchstart"],EM=["mouseup","mouseleave","touchend","touchcancel"];class IM{constructor(n,e,i,o){this._target=n,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,o.isBrowser&&(this._containerElement=zr(i))}fadeInRipple(n,e,i={}){const o=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),r=Object.assign(Object.assign({},TM),i.animation);i.centered&&(n=o.left+o.width/2,e=o.top+o.height/2);const s=i.radius||function t6(t,n,e){const i=Math.max(Math.abs(t-e.left),Math.abs(t-e.right)),o=Math.max(Math.abs(n-e.top),Math.abs(n-e.bottom));return Math.sqrt(i*i+o*o)}(n,e,o),a=n-o.left,l=e-o.top,u=r.enterDuration,p=document.createElement("div");p.classList.add("mat-ripple-element"),p.style.left=a-s+"px",p.style.top=l-s+"px",p.style.height=2*s+"px",p.style.width=2*s+"px",null!=i.color&&(p.style.backgroundColor=i.color),p.style.transitionDuration=`${u}ms`,this._containerElement.appendChild(p),function e6(t){window.getComputedStyle(t).getPropertyValue("opacity")}(p),p.style.transform="scale(1)";const g=new XV(this,p,i);return g.state=0,this._activeRipples.add(g),i.persistent||(this._mostRecentTransientRipple=g),this._runTimeoutOutsideZone(()=>{const v=g===this._mostRecentTransientRipple;g.state=1,!i.persistent&&(!v||!this._isPointerDown)&&g.fadeOut()},u),g}fadeOutRipple(n){const e=this._activeRipples.delete(n);if(n===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),!e)return;const i=n.element,o=Object.assign(Object.assign({},TM),n.config.animation);i.style.transitionDuration=`${o.exitDuration}ms`,i.style.opacity="0",n.state=2,this._runTimeoutOutsideZone(()=>{n.state=3,i.remove()},o.exitDuration)}fadeOutAll(){this._activeRipples.forEach(n=>n.fadeOut())}fadeOutAllNonPersistent(){this._activeRipples.forEach(n=>{n.config.persistent||n.fadeOut()})}setupTriggerEvents(n){const e=zr(n);!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(kM))}handleEvent(n){"mousedown"===n.type?this._onMousedown(n):"touchstart"===n.type?this._onTouchStart(n):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(EM),this._pointerUpEventsRegistered=!0)}_onMousedown(n){const e=V_(n),i=this._lastTouchStartEvent&&Date.now(){!n.config.persistent&&(1===n.state||n.config.terminateOnPointerUp&&0===n.state)&&n.fadeOut()}))}_runTimeoutOutsideZone(n,e=0){this._ngZone.runOutsideAngular(()=>setTimeout(n,e))}_registerEvents(n){this._ngZone.runOutsideAngular(()=>{n.forEach(e=>{this._triggerElement.addEventListener(e,this,$_)})})}_removeTriggerEvents(){this._triggerElement&&(kM.forEach(n=>{this._triggerElement.removeEventListener(n,this,$_)}),this._pointerUpEventsRegistered&&EM.forEach(n=>{this._triggerElement.removeEventListener(n,this,$_)}))}}const OM=new _e("mat-ripple-global-options");let or=(()=>{class t{constructor(e,i,o,r,s){this._elementRef=e,this._animationMode=s,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=r||{},this._rippleRenderer=new IM(this,i,e,o)}get disabled(){return this._disabled}set disabled(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(e,i=0,o){return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,i,Object.assign(Object.assign({},this.rippleConfig),o)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),e))}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(dn),b(OM,8),b(gn,8))},t.\u0275dir=oe({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-ripple-unbounded",i.unbounded)},inputs:{color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],radius:["matRippleRadius","radius"],animation:["matRippleAnimation","animation"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"]},exportAs:["matRipple"]}),t})(),fa=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})(),AM=(()=>{class t{constructor(e){this._animationMode=e,this.state="unchecked",this.disabled=!1}}return t.\u0275fac=function(e){return new(e||t)(b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(e,i){2&e&&rt("mat-pseudo-checkbox-indeterminate","indeterminate"===i.state)("mat-pseudo-checkbox-checked","checked"===i.state)("mat-pseudo-checkbox-disabled",i.disabled)("_mat-animation-noopable","NoopAnimations"===i._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(e,i){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t})(),G_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft]]}),t})();const W_=new _e("MAT_OPTION_PARENT_COMPONENT"),q_=new _e("MatOptgroup");let n6=0;class PM{constructor(n,e=!1){this.source=n,this.isUserInput=e}}let i6=(()=>{class t{constructor(e,i,o,r){this._element=e,this._changeDetectorRef=i,this._parent=o,this.group=r,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+n6++,this.onSelectionChange=new Pe,this._stateChanges=new ie}get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(e){this._disabled=Xe(e)}get disableRipple(){return!(!this._parent||!this._parent.disableRipple)}get active(){return this._active}get viewValue(){return(this._getHostElement().textContent||"").trim()}select(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}deselect(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}focus(e,i){const o=this._getHostElement();"function"==typeof o.focus&&o.focus(i)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(e){(13===e.keyCode||32===e.keyCode)&&!fi(e)&&(this._selectViaInteraction(),e.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getAriaSelected(){return this.selected||!this.multiple&&null}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue=e,this._stateChanges.next())}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(e=!1){this.onSelectionChange.emit(new PM(this,e))}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t,inputs:{value:"value",id:"id",disabled:"disabled"},outputs:{onSelectionChange:"onSelectionChange"}}),t})(),_i=(()=>{class t extends i6{constructor(e,i,o,r){super(e,i,o,r)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(W_,8),b(q_,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(e,i){1&e&&N("click",function(){return i._selectViaInteraction()})("keydown",function(r){return i._handleKeydown(r)}),2&e&&(Fr("id",i.id),et("tabindex",i._getTabIndex())("aria-selected",i._getAriaSelected())("aria-disabled",i.disabled.toString()),rt("mat-selected",i.selected)("mat-option-multiple",i.multiple)("mat-active",i.active)("mat-option-disabled",i.disabled))},exportAs:["matOption"],features:[Ce],ngContentSelectors:WV,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(e,i){1&e&&(Jt(),_(0,$V,1,2,"mat-pseudo-checkbox",0),d(1,"span",1),ct(2),c(),_(3,GV,2,1,"span",2),E(4,"div",3)),2&e&&(m("ngIf",i.multiple),f(3),m("ngIf",i.group&&i.group._inert),f(1),m("matRippleTrigger",i._getHostElement())("matRippleDisabled",i.disabled||i.disableRipple))},directives:[AM,Et,or],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t})();function K_(t,n,e){if(e.length){let i=n.toArray(),o=e.toArray(),r=0;for(let s=0;se+i?Math.max(0,t-i+n):e}let Bh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,qi,ft,G_]]}),t})();const o6=["*",[["mat-toolbar-row"]]],r6=["*","mat-toolbar-row"],s6=$r(class{constructor(t){this._elementRef=t}});let a6=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),t})(),l6=(()=>{class t extends s6{constructor(e,i,o){super(e),this._platform=i,this._document=o}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(dn),b(ht))},t.\u0275cmp=Ae({type:t,selectors:[["mat-toolbar"]],contentQueries:function(e,i,o){if(1&e&&mt(o,a6,5),2&e){let r;Fe(r=Ne())&&(i._toolbarRows=r)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(e,i){2&e&&rt("mat-toolbar-multiple-rows",i._toolbarRows.length>0)("mat-toolbar-single-row",0===i._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[Ce],ngContentSelectors:r6,decls:2,vars:0,template:function(e,i){1&e&&(Jt(o6),ct(0),ct(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),t})(),FM=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();const NM=["mat-button",""],LM=["*"],u6=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],h6=$r(pa(vr(class{constructor(t){this._elementRef=t}})));let Ht=(()=>{class t extends h6{constructor(e,i,o){super(e),this._focusMonitor=i,this._animationMode=o,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const r of u6)this._hasHostAttributes(r)&&this._getHostElement().classList.add(r);e.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(e,i){e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...e){return e.some(i=>this._getHostElement().hasAttribute(i))}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Ro),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(e,i){if(1&e&&Tt(or,5),2&e){let o;Fe(o=Ne())&&(i.ripple=o.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(e,i){2&e&&(et("disabled",i.disabled||null),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)("mat-button-disabled",i.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[Ce],attrs:NM,ngContentSelectors:LM,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(e,i){1&e&&(Jt(),d(0,"span",0),ct(1),c(),E(2,"span",1)(3,"span",2)),2&e&&(f(2),rt("mat-button-ripple-round",i.isRoundButton||i.isIconButton),m("matRippleDisabled",i._isRippleDisabled())("matRippleCentered",i.isIconButton)("matRippleTrigger",i._getHostElement()))},directives:[or],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),t})(),BM=(()=>{class t extends Ht{constructor(e,i,o,r){super(i,e,o),this._ngZone=r,this._haltDisabledEvents=s=>{this.disabled&&(s.preventDefault(),s.stopImmediatePropagation())}}ngAfterViewInit(){super.ngAfterViewInit(),this._ngZone?this._ngZone.runOutsideAngular(()=>{this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}):this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}ngOnDestroy(){super.ngOnDestroy(),this._elementRef.nativeElement.removeEventListener("click",this._haltDisabledEvents)}}return t.\u0275fac=function(e){return new(e||t)(b(Ro),b(He),b(gn,8),b(Je,8))},t.\u0275cmp=Ae({type:t,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(e,i){2&e&&(et("tabindex",i.disabled?-1:i.tabIndex)("disabled",i.disabled||null)("aria-disabled",i.disabled.toString()),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)("mat-button-disabled",i.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[Ce],attrs:NM,ngContentSelectors:LM,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(e,i){1&e&&(Jt(),d(0,"span",0),ct(1),c(),E(2,"span",1)(3,"span",2)),2&e&&(f(2),rt("mat-button-ripple-round",i.isRoundButton||i.isIconButton),m("matRippleDisabled",i._isRippleDisabled())("matRippleCentered",i.isIconButton)("matRippleTrigger",i._getHostElement()))},directives:[or],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),t})(),Z_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,ft],ft]}),t})();function sd(t,n){const e=H(t)?t:()=>t,i=o=>o.error(e());return new Ue(n?o=>n.schedule(i,0,o):i)}const{isArray:p6}=Array,{getPrototypeOf:f6,prototype:m6,keys:g6}=Object;function VM(t){if(1===t.length){const n=t[0];if(p6(n))return{args:n,keys:null};if(function _6(t){return t&&"object"==typeof t&&f6(t)===m6}(n)){const e=g6(n);return{args:e.map(i=>n[i]),keys:e}}}return{args:t,keys:null}}const{isArray:b6}=Array;function Q_(t){return je(n=>function v6(t,n){return b6(n)?t(...n):t(n)}(t,n))}function jM(t,n){return t.reduce((e,i,o)=>(e[i]=n[o],e),{})}function Y_(...t){const n=Qv(t),{args:e,keys:i}=VM(t),o=new Ue(r=>{const{length:s}=e;if(!s)return void r.complete();const a=new Array(s);let l=s,u=s;for(let p=0;p{g||(g=!0,u--),a[p]=v},()=>l--,void 0,()=>{(!l||!g)&&(u||r.next(i?jM(i,a):a),r.complete())}))}});return n?o.pipe(Q_(n)):o}function wn(t){return nt((n,e)=>{let r,i=null,o=!1;i=n.subscribe(st(e,void 0,void 0,s=>{r=yi(t(s,wn(t)(n))),i?(i.unsubscribe(),i=null,r.subscribe(e)):o=!0})),o&&(i.unsubscribe(),i=null,r.subscribe(e))})}function X_(t){return nt((n,e)=>{try{n.subscribe(e)}finally{e.add(t)}})}function xl(t,n){return H(n)?$n(t,n,1):$n(t,1)}class HM{}class UM{}class Gr{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?this.lazyInit="string"==typeof n?()=>{this.headers=new Map,n.split("\n").forEach(e=>{const i=e.indexOf(":");if(i>0){const o=e.slice(0,i),r=o.toLowerCase(),s=e.slice(i+1).trim();this.maybeSetNormalizedName(o,r),this.headers.has(r)?this.headers.get(r).push(s):this.headers.set(r,[s])}})}:()=>{this.headers=new Map,Object.keys(n).forEach(e=>{let i=n[e];const o=e.toLowerCase();"string"==typeof i&&(i=[i]),i.length>0&&(this.headers.set(o,i),this.maybeSetNormalizedName(e,o))})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const e=this.headers.get(n.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,e){return this.clone({name:n,value:e,op:"a"})}set(n,e){return this.clone({name:n,value:e,op:"s"})}delete(n,e){return this.clone({name:n,value:e,op:"d"})}maybeSetNormalizedName(n,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,n)}init(){this.lazyInit&&(this.lazyInit instanceof Gr?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(e=>{this.headers.set(e,n.headers.get(e)),this.normalizedNames.set(e,n.normalizedNames.get(e))})}clone(n){const e=new Gr;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof Gr?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([n]),e}applyUpdate(n){const e=n.name.toLowerCase();switch(n.op){case"a":case"s":let i=n.value;if("string"==typeof i&&(i=[i]),0===i.length)return;this.maybeSetNormalizedName(n.name,e);const o=("a"===n.op?this.headers.get(e):void 0)||[];o.push(...i),this.headers.set(e,o);break;case"d":const r=n.value;if(r){let s=this.headers.get(e);if(!s)return;s=s.filter(a=>-1===r.indexOf(a)),0===s.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,s)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>n(this.normalizedNames.get(e),this.headers.get(e)))}}class y6{encodeKey(n){return zM(n)}encodeValue(n){return zM(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const w6=/%(\d[a-f0-9])/gi,D6={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function zM(t){return encodeURIComponent(t).replace(w6,(n,e)=>{var i;return null!==(i=D6[e])&&void 0!==i?i:n})}function $M(t){return`${t}`}class Ms{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new y6,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function C6(t,n){const e=new Map;return t.length>0&&t.replace(/^\?/,"").split("&").forEach(o=>{const r=o.indexOf("="),[s,a]=-1==r?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,r)),n.decodeValue(o.slice(r+1))],l=e.get(s)||[];l.push(a),e.set(s,l)}),e}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(e=>{const i=n.fromObject[e];this.map.set(e,Array.isArray(i)?i:[i])})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const e=this.map.get(n);return e?e[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,e){return this.clone({param:n,value:e,op:"a"})}appendAll(n){const e=[];return Object.keys(n).forEach(i=>{const o=n[i];Array.isArray(o)?o.forEach(r=>{e.push({param:i,value:r,op:"a"})}):e.push({param:i,value:o,op:"a"})}),this.clone(e)}set(n,e){return this.clone({param:n,value:e,op:"s"})}delete(n,e){return this.clone({param:n,value:e,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const e=this.encoder.encodeKey(n);return this.map.get(n).map(i=>e+"="+this.encoder.encodeValue(i)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const e=new Ms({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(n),e}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 e=("a"===n.op?this.map.get(n.param):void 0)||[];e.push($M(n.value)),this.map.set(n.param,e);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let i=this.map.get(n.param)||[];const o=i.indexOf($M(n.value));-1!==o&&i.splice(o,1),i.length>0?this.map.set(n.param,i):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class S6{constructor(){this.map=new Map}set(n,e){return this.map.set(n,e),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function GM(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function WM(t){return"undefined"!=typeof Blob&&t instanceof Blob}function qM(t){return"undefined"!=typeof FormData&&t instanceof FormData}class ad{constructor(n,e,i,o){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function M6(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==i?i:null,r=o):r=i,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params)),this.headers||(this.headers=new Gr),this.context||(this.context=new S6),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=e;else{const a=e.indexOf("?");this.urlWithParams=e+(-1===a?"?":av.set(C,n.setHeaders[C]),u)),n.setParams&&(p=Object.keys(n.setParams).reduce((v,C)=>v.set(C,n.setParams[C]),p)),new ad(i,o,s,{params:p,headers:u,context:g,reportProgress:l,responseType:r,withCredentials:a})}}var Yn=(()=>((Yn=Yn||{})[Yn.Sent=0]="Sent",Yn[Yn.UploadProgress=1]="UploadProgress",Yn[Yn.ResponseHeader=2]="ResponseHeader",Yn[Yn.DownloadProgress=3]="DownloadProgress",Yn[Yn.Response=4]="Response",Yn[Yn.User=5]="User",Yn))();class J_{constructor(n,e=200,i="OK"){this.headers=n.headers||new Gr,this.status=void 0!==n.status?n.status:e,this.statusText=n.statusText||i,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class eb extends J_{constructor(n={}){super(n),this.type=Yn.ResponseHeader}clone(n={}){return new eb({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 Vh extends J_{constructor(n={}){super(n),this.type=Yn.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Vh({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 KM extends J_{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 tb(t,n){return{body:n,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let jh=(()=>{class t{constructor(e){this.handler=e}request(e,i,o={}){let r;if(e instanceof ad)r=e;else{let l,u;l=o.headers instanceof Gr?o.headers:new Gr(o.headers),o.params&&(u=o.params instanceof Ms?o.params:new Ms({fromObject:o.params})),r=new ad(e,i,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:u,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials})}const s=We(r).pipe(xl(l=>this.handler.handle(l)));if(e instanceof ad||"events"===o.observe)return s;const a=s.pipe(It(l=>l instanceof Vh));switch(o.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return a.pipe(je(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(je(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(je(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(je(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(e,i={}){return this.request("DELETE",e,i)}get(e,i={}){return this.request("GET",e,i)}head(e,i={}){return this.request("HEAD",e,i)}jsonp(e,i){return this.request("JSONP",e,{params:(new Ms).append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,i={}){return this.request("OPTIONS",e,i)}patch(e,i,o={}){return this.request("PATCH",e,tb(o,i))}post(e,i,o={}){return this.request("POST",e,tb(o,i))}put(e,i,o={}){return this.request("PUT",e,tb(o,i))}}return t.\u0275fac=function(e){return new(e||t)(Q(HM))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();class ZM{constructor(n,e){this.next=n,this.interceptor=e}handle(n){return this.interceptor.intercept(n,this.next)}}const nb=new _e("HTTP_INTERCEPTORS");let T6=(()=>{class t{intercept(e,i){return i.handle(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const k6=/^\)\]\}',?\n/;let QM=(()=>{class t{constructor(e){this.xhrFactory=e}handle(e){if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new Ue(i=>{const o=this.xhrFactory.build();if(o.open(e.method,e.urlWithParams),e.withCredentials&&(o.withCredentials=!0),e.headers.forEach((C,M)=>o.setRequestHeader(C,M.join(","))),e.headers.has("Accept")||o.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){const C=e.detectContentTypeHeader();null!==C&&o.setRequestHeader("Content-Type",C)}if(e.responseType){const C=e.responseType.toLowerCase();o.responseType="json"!==C?C:"text"}const r=e.serializeBody();let s=null;const a=()=>{if(null!==s)return s;const C=o.statusText||"OK",M=new Gr(o.getAllResponseHeaders()),V=function E6(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(o)||e.url;return s=new eb({headers:M,status:o.status,statusText:C,url:V}),s},l=()=>{let{headers:C,status:M,statusText:V,url:K}=a(),Y=null;204!==M&&(Y=void 0===o.response?o.responseText:o.response),0===M&&(M=Y?200:0);let ee=M>=200&&M<300;if("json"===e.responseType&&"string"==typeof Y){const ke=Y;Y=Y.replace(k6,"");try{Y=""!==Y?JSON.parse(Y):null}catch(Ze){Y=ke,ee&&(ee=!1,Y={error:Ze,text:Y})}}ee?(i.next(new Vh({body:Y,headers:C,status:M,statusText:V,url:K||void 0})),i.complete()):i.error(new KM({error:Y,headers:C,status:M,statusText:V,url:K||void 0}))},u=C=>{const{url:M}=a(),V=new KM({error:C,status:o.status||0,statusText:o.statusText||"Unknown Error",url:M||void 0});i.error(V)};let p=!1;const g=C=>{p||(i.next(a()),p=!0);let M={type:Yn.DownloadProgress,loaded:C.loaded};C.lengthComputable&&(M.total=C.total),"text"===e.responseType&&!!o.responseText&&(M.partialText=o.responseText),i.next(M)},v=C=>{let M={type:Yn.UploadProgress,loaded:C.loaded};C.lengthComputable&&(M.total=C.total),i.next(M)};return o.addEventListener("load",l),o.addEventListener("error",u),o.addEventListener("timeout",u),o.addEventListener("abort",u),e.reportProgress&&(o.addEventListener("progress",g),null!==r&&o.upload&&o.upload.addEventListener("progress",v)),o.send(r),i.next({type:Yn.Sent}),()=>{o.removeEventListener("error",u),o.removeEventListener("abort",u),o.removeEventListener("load",l),o.removeEventListener("timeout",u),e.reportProgress&&(o.removeEventListener("progress",g),null!==r&&o.upload&&o.upload.removeEventListener("progress",v)),o.readyState!==o.DONE&&o.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(Q(tS))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const ib=new _e("XSRF_COOKIE_NAME"),ob=new _e("XSRF_HEADER_NAME");class YM{}let I6=(()=>{class t{constructor(e,i,o){this.doc=e,this.platform=i,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=GD(e,this.cookieName),this.lastCookieString=e),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(Hc),Q(ib))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),rb=(()=>{class t{constructor(e,i){this.tokenService=e,this.headerName=i}intercept(e,i){const o=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||o.startsWith("http://")||o.startsWith("https://"))return i.handle(e);const r=this.tokenService.getToken();return null!==r&&!e.headers.has(this.headerName)&&(e=e.clone({headers:e.headers.set(this.headerName,r)})),i.handle(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(YM),Q(ob))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),O6=(()=>{class t{constructor(e,i){this.backend=e,this.injector=i,this.chain=null}handle(e){if(null===this.chain){const i=this.injector.get(nb,[]);this.chain=i.reduceRight((o,r)=>new ZM(o,r),this.backend)}return this.chain.handle(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(UM),Q(pn))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),A6=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:rb,useClass:T6}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:ib,useValue:e.cookieName}:[],e.headerName?{provide:ob,useValue:e.headerName}:[]]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[rb,{provide:nb,useExisting:rb,multi:!0},{provide:YM,useClass:I6},{provide:ib,useValue:"XSRF-TOKEN"},{provide:ob,useValue:"X-XSRF-TOKEN"}]}),t})(),P6=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[jh,{provide:HM,useClass:O6},QM,{provide:UM,useExisting:QM}],imports:[[A6.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();const R6=["*"];let Hh;function ld(t){var n;return(null===(n=function F6(){if(void 0===Hh&&(Hh=null,"undefined"!=typeof window)){const t=window;void 0!==t.trustedTypes&&(Hh=t.trustedTypes.createPolicy("angular#components",{createHTML:n=>n}))}return Hh}())||void 0===n?void 0:n.createHTML(t))||t}function XM(t){return Error(`Unable to find icon with the name "${t}"`)}function JM(t){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${t}".`)}function ex(t){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${t}".`)}class ma{constructor(n,e,i){this.url=n,this.svgText=e,this.options=i}}let Uh=(()=>{class t{constructor(e,i,o,r){this._httpClient=e,this._sanitizer=i,this._errorHandler=r,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass="material-icons",this._document=o}addSvgIcon(e,i,o){return this.addSvgIconInNamespace("",e,i,o)}addSvgIconLiteral(e,i,o){return this.addSvgIconLiteralInNamespace("",e,i,o)}addSvgIconInNamespace(e,i,o,r){return this._addSvgIconConfig(e,i,new ma(o,null,r))}addSvgIconResolver(e){return this._resolvers.push(e),this}addSvgIconLiteralInNamespace(e,i,o,r){const s=this._sanitizer.sanitize(Yt.HTML,o);if(!s)throw ex(o);const a=ld(s);return this._addSvgIconConfig(e,i,new ma("",a,r))}addSvgIconSet(e,i){return this.addSvgIconSetInNamespace("",e,i)}addSvgIconSetLiteral(e,i){return this.addSvgIconSetLiteralInNamespace("",e,i)}addSvgIconSetInNamespace(e,i,o){return this._addSvgIconSetConfig(e,new ma(i,null,o))}addSvgIconSetLiteralInNamespace(e,i,o){const r=this._sanitizer.sanitize(Yt.HTML,i);if(!r)throw ex(i);const s=ld(r);return this._addSvgIconSetConfig(e,new ma("",s,o))}registerFontClassAlias(e,i=e){return this._fontCssClassesByAlias.set(e,i),this}classNameForFontAlias(e){return this._fontCssClassesByAlias.get(e)||e}setDefaultFontSetClass(e){return this._defaultFontSetClass=e,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(e){const i=this._sanitizer.sanitize(Yt.RESOURCE_URL,e);if(!i)throw JM(e);const o=this._cachedIconsByUrl.get(i);return o?We(zh(o)):this._loadSvgIconFromConfig(new ma(e,null)).pipe(Zt(r=>this._cachedIconsByUrl.set(i,r)),je(r=>zh(r)))}getNamedSvgIcon(e,i=""){const o=tx(i,e);let r=this._svgIconConfigs.get(o);if(r)return this._getSvgFromConfig(r);if(r=this._getIconConfigFromResolvers(i,e),r)return this._svgIconConfigs.set(o,r),this._getSvgFromConfig(r);const s=this._iconSetConfigs.get(i);return s?this._getSvgFromIconSetConfigs(e,s):sd(XM(o))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(e){return e.svgText?We(zh(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(je(i=>zh(i)))}_getSvgFromIconSetConfigs(e,i){const o=this._extractIconWithNameFromAnySet(e,i);return o?We(o):Y_(i.filter(s=>!s.svgText).map(s=>this._loadSvgIconSetFromConfig(s).pipe(wn(a=>{const u=`Loading icon set URL: ${this._sanitizer.sanitize(Yt.RESOURCE_URL,s.url)} failed: ${a.message}`;return this._errorHandler.handleError(new Error(u)),We(null)})))).pipe(je(()=>{const s=this._extractIconWithNameFromAnySet(e,i);if(!s)throw XM(e);return s}))}_extractIconWithNameFromAnySet(e,i){for(let o=i.length-1;o>=0;o--){const r=i[o];if(r.svgText&&r.svgText.toString().indexOf(e)>-1){const s=this._svgElementFromConfig(r),a=this._extractSvgIconFromSet(s,e,r.options);if(a)return a}}return null}_loadSvgIconFromConfig(e){return this._fetchIcon(e).pipe(Zt(i=>e.svgText=i),je(()=>this._svgElementFromConfig(e)))}_loadSvgIconSetFromConfig(e){return e.svgText?We(null):this._fetchIcon(e).pipe(Zt(i=>e.svgText=i))}_extractSvgIconFromSet(e,i,o){const r=e.querySelector(`[id="${i}"]`);if(!r)return null;const s=r.cloneNode(!0);if(s.removeAttribute("id"),"svg"===s.nodeName.toLowerCase())return this._setSvgAttributes(s,o);if("symbol"===s.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(s),o);const a=this._svgElementFromString(ld(""));return a.appendChild(s),this._setSvgAttributes(a,o)}_svgElementFromString(e){const i=this._document.createElement("DIV");i.innerHTML=e;const o=i.querySelector("svg");if(!o)throw Error(" tag not found");return o}_toSvgElement(e){const i=this._svgElementFromString(ld("")),o=e.attributes;for(let r=0;rld(p)),X_(()=>this._inProgressUrlFetches.delete(a)),ey());return this._inProgressUrlFetches.set(a,u),u}_addSvgIconConfig(e,i,o){return this._svgIconConfigs.set(tx(e,i),o),this}_addSvgIconSetConfig(e,i){const o=this._iconSetConfigs.get(e);return o?o.push(i):this._iconSetConfigs.set(e,[i]),this}_svgElementFromConfig(e){if(!e.svgElement){const i=this._svgElementFromString(e.svgText);this._setSvgAttributes(i,e.options),e.svgElement=i}return e.svgElement}_getIconConfigFromResolvers(e,i){for(let o=0;on?n.pathname+n.search:""}}}),nx=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],U6=nx.map(t=>`[${t}]`).join(", "),z6=/^url\(['"]?#(.*?)['"]?\)$/;let _n=(()=>{class t extends V6{constructor(e,i,o,r,s){super(e),this._iconRegistry=i,this._location=r,this._errorHandler=s,this._inline=!1,this._currentIconFetch=k.EMPTY,o||e.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(e){this._inline=Xe(e)}get svgIcon(){return this._svgIcon}set svgIcon(e){e!==this._svgIcon&&(e?this._updateSvgIcon(e):this._svgIcon&&this._clearSvgElement(),this._svgIcon=e)}get fontSet(){return this._fontSet}set fontSet(e){const i=this._cleanupFontValue(e);i!==this._fontSet&&(this._fontSet=i,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(e){const i=this._cleanupFontValue(e);i!==this._fontIcon&&(this._fontIcon=i,this._updateFontIconClasses())}_splitIconName(e){if(!e)return["",""];const i=e.split(":");switch(i.length){case 1:return["",i[0]];case 2:return i;default:throw Error(`Invalid icon name: "${e}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){const e=this._elementsWithExternalReferences;if(e&&e.size){const i=this._location.getPathname();i!==this._previousPath&&(this._previousPath=i,this._prependPathToReferences(i))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(e){this._clearSvgElement();const i=this._location.getPathname();this._previousPath=i,this._cacheChildrenWithExternalReferences(e),this._prependPathToReferences(i),this._elementRef.nativeElement.appendChild(e)}_clearSvgElement(){const e=this._elementRef.nativeElement;let i=e.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();i--;){const o=e.childNodes[i];(1!==o.nodeType||"svg"===o.nodeName.toLowerCase())&&o.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;const e=this._elementRef.nativeElement,i=this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet):this._iconRegistry.getDefaultFontSetClass();i!=this._previousFontSetClass&&(this._previousFontSetClass&&e.classList.remove(this._previousFontSetClass),i&&e.classList.add(i),this._previousFontSetClass=i),this.fontIcon!=this._previousFontIconClass&&(this._previousFontIconClass&&e.classList.remove(this._previousFontIconClass),this.fontIcon&&e.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(e){return"string"==typeof e?e.trim().split(" ")[0]:e}_prependPathToReferences(e){const i=this._elementsWithExternalReferences;i&&i.forEach((o,r)=>{o.forEach(s=>{r.setAttribute(s.name,`url('${e}#${s.value}')`)})})}_cacheChildrenWithExternalReferences(e){const i=e.querySelectorAll(U6),o=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let r=0;r{const a=i[r],l=a.getAttribute(s),u=l?l.match(z6):null;if(u){let p=o.get(a);p||(p=[],o.set(a,p)),p.push({name:s,value:u[1]})}})}_updateSvgIcon(e){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),e){const[i,o]=this._splitIconName(e);i&&(this._svgNamespace=i),o&&(this._svgName=o),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(o,i).pipe(Ot(1)).subscribe(r=>this._setSvgElement(r),r=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${i}:${o}! ${r.message}`))})}}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Uh),Di("aria-hidden"),b(j6),b(ps))},t.\u0275cmp=Ae({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:7,hostBindings:function(e,i){2&e&&(et("data-mat-icon-type",i._usingFontIcon()?"font":"svg")("data-mat-icon-name",i._svgName||i.fontIcon)("data-mat-icon-namespace",i._svgNamespace||i.fontSet),rt("mat-icon-inline",i.inline)("mat-icon-no-color","primary"!==i.color&&"accent"!==i.color&&"warn"!==i.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[Ce],ngContentSelectors:R6,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),ct(0))},styles:[".mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}\n"],encapsulation:2,changeDetection:0}),t})(),ix=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();const $6=["*",[["mat-card-footer"]]],G6=["*","mat-card-footer"],W6=[[["","mat-card-avatar",""],["","matCardAvatar",""]],[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],"*"],q6=["[mat-card-avatar], [matCardAvatar]","mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","*"];let ox=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),t})(),rx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-card-subtitle"],["","mat-card-subtitle",""],["","matCardSubtitle",""]],hostAttrs:[1,"mat-card-subtitle"]}),t})(),$h=(()=>{class t{constructor(e){this._animationMode=e}}return t.\u0275fac=function(e){return new(e||t)(b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(e,i){2&e&&rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)},exportAs:["matCard"],ngContentSelectors:G6,decls:2,vars:0,template:function(e,i){1&e&&(Jt($6),ct(0),ct(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}._mat-animation-noopable.mat-card{transition:none;animation:none}.mat-card .mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card .mat-divider-horizontal{left:auto;right:0}.mat-card .mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card .mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px;display:block;overflow:hidden}.mat-card-image img{width:100%}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}\n"],encapsulation:2,changeDetection:0}),t})(),K6=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["mat-card-header"]],hostAttrs:[1,"mat-card-header"],ngContentSelectors:q6,decls:4,vars:0,consts:[[1,"mat-card-header-text"]],template:function(e,i){1&e&&(Jt(W6),ct(0),d(1,"div",0),ct(2,1),c(),ct(3,2))},encapsulation:2,changeDetection:0}),t})(),sx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();const Z6=["addListener","removeListener"],Q6=["addEventListener","removeEventListener"],Y6=["on","off"];function Ki(t,n,e,i){if(H(e)&&(i=e,e=void 0),i)return Ki(t,n,e).pipe(Q_(i));const[o,r]=function e8(t){return H(t.addEventListener)&&H(t.removeEventListener)}(t)?Q6.map(s=>a=>t[s](n,a,e)):function X6(t){return H(t.addListener)&&H(t.removeListener)}(t)?Z6.map(ax(t,n)):function J6(t){return H(t.on)&&H(t.off)}(t)?Y6.map(ax(t,n)):[];if(!o&&Xp(t))return $n(s=>Ki(s,n,e))(yi(t));if(!o)throw new TypeError("Invalid event target");return new Ue(s=>{const a=(...l)=>s.next(1r(a)})}function ax(t,n){return e=>i=>t[e](n,i)}const t8=["primaryValueBar"],n8=$r(class{constructor(t){this._elementRef=t}},"primary"),i8=new _e("mat-progress-bar-location",{providedIn:"root",factory:function o8(){const t=hc(ht),n=t?t.location:null;return{getPathname:()=>n?n.pathname+n.search:""}}}),r8=new _e("MAT_PROGRESS_BAR_DEFAULT_OPTIONS");let s8=0,lx=(()=>{class t extends n8{constructor(e,i,o,r,s,a){super(e),this._ngZone=i,this._animationMode=o,this._changeDetectorRef=a,this._isNoopAnimation=!1,this._value=0,this._bufferValue=0,this.animationEnd=new Pe,this._animationEndSubscription=k.EMPTY,this.mode="determinate",this.progressbarId="mat-progress-bar-"+s8++;const l=r?r.getPathname().split("#")[0]:"";this._rectangleFillValue=`url('${l}#${this.progressbarId}')`,this._isNoopAnimation="NoopAnimations"===o,s&&(s.color&&(this.color=this.defaultColor=s.color),this.mode=s.mode||this.mode)}get value(){return this._value}set value(e){var i;this._value=cx(Zn(e)||0),null===(i=this._changeDetectorRef)||void 0===i||i.markForCheck()}get bufferValue(){return this._bufferValue}set bufferValue(e){var i;this._bufferValue=cx(e||0),null===(i=this._changeDetectorRef)||void 0===i||i.markForCheck()}_primaryTransform(){return{transform:`scale3d(${this.value/100}, 1, 1)`}}_bufferTransform(){return"buffer"===this.mode?{transform:`scale3d(${this.bufferValue/100}, 1, 1)`}:null}ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{const e=this._primaryValueBar.nativeElement;this._animationEndSubscription=Ki(e,"transitionend").pipe(It(i=>i.target===e)).subscribe(()=>{0!==this.animationEnd.observers.length&&("determinate"===this.mode||"buffer"===this.mode)&&this._ngZone.run(()=>this.animationEnd.next({value:this.value}))})})}ngOnDestroy(){this._animationEndSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(gn,8),b(i8,8),b(r8,8),b(At))},t.\u0275cmp=Ae({type:t,selectors:[["mat-progress-bar"]],viewQuery:function(e,i){if(1&e&&Tt(t8,5),2&e){let o;Fe(o=Ne())&&(i._primaryValueBar=o.first)}},hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-progress-bar"],hostVars:4,hostBindings:function(e,i){2&e&&(et("aria-valuenow","indeterminate"===i.mode||"query"===i.mode?null:i.value)("mode",i.mode),rt("_mat-animation-noopable",i._isNoopAnimation))},inputs:{color:"color",value:"value",bufferValue:"bufferValue",mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],features:[Ce],decls:10,vars:4,consts:[["aria-hidden","true"],["width","100%","height","4","focusable","false",1,"mat-progress-bar-background","mat-progress-bar-element"],["x","4","y","0","width","8","height","4","patternUnits","userSpaceOnUse",3,"id"],["cx","2","cy","2","r","2"],["width","100%","height","100%"],[1,"mat-progress-bar-buffer","mat-progress-bar-element",3,"ngStyle"],[1,"mat-progress-bar-primary","mat-progress-bar-fill","mat-progress-bar-element",3,"ngStyle"],["primaryValueBar",""],[1,"mat-progress-bar-secondary","mat-progress-bar-fill","mat-progress-bar-element"]],template:function(e,i){1&e&&(d(0,"div",0),hn(),d(1,"svg",1)(2,"defs")(3,"pattern",2),E(4,"circle",3),c()(),E(5,"rect",4),c(),Qs(),E(6,"div",5)(7,"div",6,7)(9,"div",8),c()),2&e&&(f(3),m("id",i.progressbarId),f(2),et("fill",i._rectangleFillValue),f(1),m("ngStyle",i._bufferTransform()),f(1),m("ngStyle",i._primaryTransform()))},directives:[Ug],styles:['.mat-progress-bar{display:block;height:4px;overflow:hidden;position:relative;transition:opacity 250ms linear;width:100%}._mat-animation-noopable.mat-progress-bar{transition:none;animation:none}.mat-progress-bar .mat-progress-bar-element,.mat-progress-bar .mat-progress-bar-fill::after{height:100%;position:absolute;width:100%}.mat-progress-bar .mat-progress-bar-background{width:calc(100% + 10px)}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-background{display:none}.mat-progress-bar .mat-progress-bar-buffer{transform-origin:top left;transition:transform 250ms ease}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-buffer{border-top:solid 5px;opacity:.5}.mat-progress-bar .mat-progress-bar-secondary{display:none}.mat-progress-bar .mat-progress-bar-fill{animation:none;transform-origin:top left;transition:transform 250ms ease}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-fill{border-top:solid 4px}.mat-progress-bar .mat-progress-bar-fill::after{animation:none;content:"";display:inline-block;left:0}.mat-progress-bar[dir=rtl],[dir=rtl] .mat-progress-bar{transform:rotateY(180deg)}.mat-progress-bar[mode=query]{transform:rotateZ(180deg)}.mat-progress-bar[mode=query][dir=rtl],[dir=rtl] .mat-progress-bar[mode=query]{transform:rotateZ(180deg) rotateY(180deg)}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-fill,.mat-progress-bar[mode=query] .mat-progress-bar-fill{transition:none}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-primary,.mat-progress-bar[mode=query] .mat-progress-bar-primary{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-primary-indeterminate-translate 2000ms infinite linear;left:-145.166611%}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-primary.mat-progress-bar-fill::after,.mat-progress-bar[mode=query] .mat-progress-bar-primary.mat-progress-bar-fill::after{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-primary-indeterminate-scale 2000ms infinite linear}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-secondary,.mat-progress-bar[mode=query] .mat-progress-bar-secondary{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-secondary-indeterminate-translate 2000ms infinite linear;left:-54.888891%;display:block}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-secondary.mat-progress-bar-fill::after,.mat-progress-bar[mode=query] .mat-progress-bar-secondary.mat-progress-bar-fill::after{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-secondary-indeterminate-scale 2000ms infinite linear}.mat-progress-bar[mode=buffer] .mat-progress-bar-background{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-background-scroll 250ms infinite linear;display:block}.mat-progress-bar._mat-animation-noopable .mat-progress-bar-fill,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-buffer,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-primary,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-primary.mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-secondary,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-secondary.mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-background{animation:none;transition-duration:1ms}@keyframes mat-progress-bar-primary-indeterminate-translate{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.67142%)}100%{transform:translateX(200.611057%)}}@keyframes mat-progress-bar-primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes mat-progress-bar-secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.386165%)}100%{transform:translateX(160.277782%)}}@keyframes mat-progress-bar-secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes mat-progress-bar-background-scroll{to{transform:translateX(-8px)}}\n'],encapsulation:2,changeDetection:0}),t})();function cx(t,n=0,e=100){return Math.max(n,Math.min(e,t))}let dx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft],ft]}),t})();function Gh(t){return t&&"function"==typeof t.connect}class ux{applyChanges(n,e,i,o,r){n.forEachOperation((s,a,l)=>{let u,p;if(null==s.previousIndex){const g=i(s,a,l);u=e.createEmbeddedView(g.templateRef,g.context,g.index),p=1}else null==l?(e.remove(a),p=3):(u=e.get(a),e.move(u,l),p=2);r&&r({context:null==u?void 0:u.context,operation:p,record:s})})}detach(){}}class Tl{constructor(n=!1,e,i=!0){this._multiple=n,this._emitChanges=i,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new ie,e&&e.length&&(n?e.forEach(o=>this._markSelected(o)):this._markSelected(e[0]),this._selectedToEmit.length=0)}get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}select(...n){this._verifyValueAssignment(n),n.forEach(e=>this._markSelected(e)),this._emitChangeEvent()}deselect(...n){this._verifyValueAssignment(n),n.forEach(e=>this._unmarkSelected(e)),this._emitChangeEvent()}toggle(n){this.isSelected(n)?this.deselect(n):this.select(n)}clear(){this._unmarkAll(),this._emitChangeEvent()}isSelected(n){return this._selection.has(n)}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(n){this._multiple&&this.selected&&this._selected.sort(n)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(n){this.isSelected(n)||(this._multiple||this._unmarkAll(),this._selection.add(n),this._emitChanges&&this._selectedToEmit.push(n))}_unmarkSelected(n){this.isSelected(n)&&(this._selection.delete(n),this._emitChanges&&this._deselectedToEmit.push(n))}_unmarkAll(){this.isEmpty()||this._selection.forEach(n=>this._unmarkSelected(n))}_verifyValueAssignment(n){}}let sb=(()=>{class t{constructor(){this._listeners=[]}notify(e,i){for(let o of this._listeners)o(e,i)}listen(e){return this._listeners.push(e),()=>{this._listeners=this._listeners.filter(i=>e!==i)}}ngOnDestroy(){this._listeners=[]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const cd=new _e("_ViewRepeater");let px=(()=>{class t{constructor(e,i){this._renderer=e,this._elementRef=i,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}}return t.\u0275fac=function(e){return new(e||t)(b(Nr),b(He))},t.\u0275dir=oe({type:t}),t})(),ga=(()=>{class t extends px{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,features:[Ce]}),t})();const Zi=new _e("NgValueAccessor"),c8={provide:Zi,useExisting:zt(()=>Dn),multi:!0},u8=new _e("CompositionEventMode");let Dn=(()=>{class t extends px{constructor(e,i,o){super(e,i),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function d8(){const t=_r()?_r().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(e){this.setProperty("value",null==e?"":e)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}}return t.\u0275fac=function(e){return new(e||t)(b(Nr),b(He),b(u8,8))},t.\u0275dir=oe({type:t,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(e,i){1&e&&N("input",function(r){return i._handleInput(r.target.value)})("blur",function(){return i.onTouched()})("compositionstart",function(){return i._compositionStart()})("compositionend",function(r){return i._compositionEnd(r.target.value)})},features:[ze([c8]),Ce]}),t})();function xs(t){return null==t||0===t.length}function mx(t){return null!=t&&"number"==typeof t.length}const bi=new _e("NgValidators"),Ts=new _e("NgAsyncValidators"),h8=/^(?=.{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])?)*$/;class de{static min(n){return function gx(t){return n=>{if(xs(n.value)||xs(t))return null;const e=parseFloat(n.value);return!isNaN(e)&&e{if(xs(n.value)||xs(t))return null;const e=parseFloat(n.value);return!isNaN(e)&&e>t?{max:{max:t,actual:n.value}}:null}}(n)}static required(n){return bx(n)}static requiredTrue(n){return function vx(t){return!0===t.value?null:{required:!0}}(n)}static email(n){return function yx(t){return xs(t.value)||h8.test(t.value)?null:{email:!0}}(n)}static minLength(n){return Cx(n)}static maxLength(n){return wx(n)}static pattern(n){return Dx(n)}static nullValidator(n){return null}static compose(n){return Ex(n)}static composeAsync(n){return Ix(n)}}function bx(t){return xs(t.value)?{required:!0}:null}function Cx(t){return n=>xs(n.value)||!mx(n.value)?null:n.value.lengthmx(n.value)&&n.value.length>t?{maxlength:{requiredLength:t,actualLength:n.value.length}}:null}function Dx(t){if(!t)return Wh;let n,e;return"string"==typeof t?(e="","^"!==t.charAt(0)&&(e+="^"),e+=t,"$"!==t.charAt(t.length-1)&&(e+="$"),n=new RegExp(e)):(e=t.toString(),n=t),i=>{if(xs(i.value))return null;const o=i.value;return n.test(o)?null:{pattern:{requiredPattern:e,actualValue:o}}}}function Wh(t){return null}function Sx(t){return null!=t}function Mx(t){const n=xc(t)?ui(t):t;return $m(n),n}function xx(t){let n={};return t.forEach(e=>{n=null!=e?Object.assign(Object.assign({},n),e):n}),0===Object.keys(n).length?null:n}function Tx(t,n){return n.map(e=>e(t))}function kx(t){return t.map(n=>function p8(t){return!t.validate}(n)?n:e=>n.validate(e))}function Ex(t){if(!t)return null;const n=t.filter(Sx);return 0==n.length?null:function(e){return xx(Tx(e,n))}}function ab(t){return null!=t?Ex(kx(t)):null}function Ix(t){if(!t)return null;const n=t.filter(Sx);return 0==n.length?null:function(e){return Y_(Tx(e,n).map(Mx)).pipe(je(xx))}}function lb(t){return null!=t?Ix(kx(t)):null}function Ox(t,n){return null===t?[n]:Array.isArray(t)?[...t,n]:[t,n]}function Ax(t){return t._rawValidators}function Px(t){return t._rawAsyncValidators}function cb(t){return t?Array.isArray(t)?t:[t]:[]}function qh(t,n){return Array.isArray(t)?t.includes(n):t===n}function Rx(t,n){const e=cb(n);return cb(t).forEach(o=>{qh(e,o)||e.push(o)}),e}function Fx(t,n){return cb(n).filter(e=>!qh(t,e))}class Nx{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=ab(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=lb(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){this.control&&this.control.reset(n)}hasError(n,e){return!!this.control&&this.control.hasError(n,e)}getError(n,e){return this.control?this.control.getError(n,e):null}}class rr extends Nx{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Ni extends Nx{get formDirective(){return null}get path(){return null}}class Lx{constructor(n){this._cd=n}is(n){var e,i,o;return"submitted"===n?!!(null===(e=this._cd)||void 0===e?void 0:e.submitted):!!(null===(o=null===(i=this._cd)||void 0===i?void 0:i.control)||void 0===o?void 0:o[n])}}let bn=(()=>{class t extends Lx{constructor(e){super(e)}}return t.\u0275fac=function(e){return new(e||t)(b(rr,2))},t.\u0275dir=oe({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,i){2&e&&rt("ng-untouched",i.is("untouched"))("ng-touched",i.is("touched"))("ng-pristine",i.is("pristine"))("ng-dirty",i.is("dirty"))("ng-valid",i.is("valid"))("ng-invalid",i.is("invalid"))("ng-pending",i.is("pending"))},features:[Ce]}),t})(),Hn=(()=>{class t extends Lx{constructor(e){super(e)}}return t.\u0275fac=function(e){return new(e||t)(b(Ni,10))},t.\u0275dir=oe({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(e,i){2&e&&rt("ng-untouched",i.is("untouched"))("ng-touched",i.is("touched"))("ng-pristine",i.is("pristine"))("ng-dirty",i.is("dirty"))("ng-valid",i.is("valid"))("ng-invalid",i.is("invalid"))("ng-pending",i.is("pending"))("ng-submitted",i.is("submitted"))},features:[Ce]}),t})();function Zh(t,n){return[...n.path,t]}function dd(t,n){hb(t,n),n.valueAccessor.writeValue(t.value),function C8(t,n){n.valueAccessor.registerOnChange(e=>{t._pendingValue=e,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Vx(t,n)})}(t,n),function D8(t,n){const e=(i,o)=>{n.valueAccessor.writeValue(i),o&&n.viewToModelUpdate(i)};t.registerOnChange(e),n._registerOnDestroy(()=>{t._unregisterOnChange(e)})}(t,n),function w8(t,n){n.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Vx(t,n),"submit"!==t.updateOn&&t.markAsTouched()})}(t,n),function y8(t,n){if(n.valueAccessor.setDisabledState){const e=i=>{n.valueAccessor.setDisabledState(i)};t.registerOnDisabledChange(e),n._registerOnDestroy(()=>{t._unregisterOnDisabledChange(e)})}}(t,n)}function Qh(t,n,e=!0){const i=()=>{};n.valueAccessor&&(n.valueAccessor.registerOnChange(i),n.valueAccessor.registerOnTouched(i)),Xh(t,n),t&&(n._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function Yh(t,n){t.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(n)})}function hb(t,n){const e=Ax(t);null!==n.validator?t.setValidators(Ox(e,n.validator)):"function"==typeof e&&t.setValidators([e]);const i=Px(t);null!==n.asyncValidator?t.setAsyncValidators(Ox(i,n.asyncValidator)):"function"==typeof i&&t.setAsyncValidators([i]);const o=()=>t.updateValueAndValidity();Yh(n._rawValidators,o),Yh(n._rawAsyncValidators,o)}function Xh(t,n){let e=!1;if(null!==t){if(null!==n.validator){const o=Ax(t);if(Array.isArray(o)&&o.length>0){const r=o.filter(s=>s!==n.validator);r.length!==o.length&&(e=!0,t.setValidators(r))}}if(null!==n.asyncValidator){const o=Px(t);if(Array.isArray(o)&&o.length>0){const r=o.filter(s=>s!==n.asyncValidator);r.length!==o.length&&(e=!0,t.setAsyncValidators(r))}}}const i=()=>{};return Yh(n._rawValidators,i),Yh(n._rawAsyncValidators,i),e}function Vx(t,n){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function jx(t,n){hb(t,n)}function pb(t,n){if(!t.hasOwnProperty("model"))return!1;const e=t.model;return!!e.isFirstChange()||!Object.is(n,e.currentValue)}function Ux(t,n){t._syncPendingControls(),n.forEach(e=>{const i=e.control;"submit"===i.updateOn&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function fb(t,n){if(!n)return null;let e,i,o;return Array.isArray(n),n.forEach(r=>{r.constructor===Dn?e=r:function x8(t){return Object.getPrototypeOf(t.constructor)===ga}(r)?i=r:o=r}),o||i||e||null}function mb(t,n){const e=t.indexOf(n);e>-1&&t.splice(e,1)}const ud="VALID",Jh="INVALID",kl="PENDING",hd="DISABLED";function _b(t){return(ep(t)?t.validators:t)||null}function zx(t){return Array.isArray(t)?ab(t):t||null}function bb(t,n){return(ep(n)?n.asyncValidators:t)||null}function $x(t){return Array.isArray(t)?lb(t):t||null}function ep(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}const vb=t=>t instanceof X,tp=t=>t instanceof an,Gx=t=>t instanceof po;function Wx(t){return vb(t)?t.value:t.getRawValue()}function qx(t,n){const e=tp(t),i=t.controls;if(!(e?Object.keys(i):i).length)throw new Qe(1e3,"");if(!i[n])throw new Qe(1001,"")}function Kx(t,n){tp(t),t._forEachChild((i,o)=>{if(void 0===n[o])throw new Qe(1002,"")})}class yb{constructor(n,e){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=n,this._rawAsyncValidators=e,this._composedValidatorFn=zx(this._rawValidators),this._composedAsyncValidatorFn=$x(this._rawAsyncValidators)}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===ud}get invalid(){return this.status===Jh}get pending(){return this.status==kl}get disabled(){return this.status===hd}get enabled(){return this.status!==hd}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._rawValidators=n,this._composedValidatorFn=zx(n)}setAsyncValidators(n){this._rawAsyncValidators=n,this._composedAsyncValidatorFn=$x(n)}addValidators(n){this.setValidators(Rx(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(Rx(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(Fx(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(Fx(n,this._rawAsyncValidators))}hasValidator(n){return qh(this._rawValidators,n)}hasAsyncValidator(n){return qh(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(e=>{e.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(e=>{e.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=kl,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const e=this._parentMarkedDirty(n.onlySelf);this.status=hd,this.errors=null,this._forEachChild(i=>{i.disable(Object.assign(Object.assign({},n),{onlySelf:!0}))}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},n),{skipPristineCheck:e})),this._onDisabledChange.forEach(i=>i(!0))}enable(n={}){const e=this._parentMarkedDirty(n.onlySelf);this.status=ud,this._forEachChild(i=>{i.enable(Object.assign(Object.assign({},n),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},n),{skipPristineCheck:e})),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ud||this.status===kl)&&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(e=>e._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?hd:ud}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=kl,this._hasOwnPendingAsyncValidator=!0;const e=Mx(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(i=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(i,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,e={}){this.errors=n,this._updateControlsErrors(!1!==e.emitEvent)}get(n){return function T8(t,n,e){if(null==n||(Array.isArray(n)||(n=n.split(e)),Array.isArray(n)&&0===n.length))return null;let i=t;return n.forEach(o=>{i=tp(i)?i.controls.hasOwnProperty(o)?i.controls[o]:null:Gx(i)&&i.at(o)||null}),i}(this,n,".")}getError(n,e){const i=e?this.get(e):this;return i&&i.errors?i.errors[n]:null}hasError(n,e){return!!this.getError(n,e)}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 Pe,this.statusChanges=new Pe}_calculateStatus(){return this._allControlsDisabled()?hd:this.errors?Jh:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(kl)?kl:this._anyControlsHaveStatus(Jh)?Jh:ud}_anyControlsHaveStatus(n){return this._anyControls(e=>e.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)}_isBoxedValue(n){return"object"==typeof n&&null!==n&&2===Object.keys(n).length&&"value"in n&&"disabled"in n}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){ep(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class X extends yb{constructor(n=null,e,i){super(_b(e),bb(i,e)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),ep(e)&&e.initialValueIsDefault&&(this.defaultValue=this._isBoxedValue(n)?n.value:n)}setValue(n,e={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(i=>i(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(n,e={}){this.setValue(n,e)}reset(n=this.defaultValue,e={}){this._applyFormState(n),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){mb(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){mb(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){this._isBoxedValue(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}}class an extends yb{constructor(n,e,i){super(_b(e),bb(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,e){return this.controls[n]?this.controls[n]:(this.controls[n]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(n,e,i={}){this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(n,e={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(n,e,i={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],e&&this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,e={}){Kx(this,n),Object.keys(n).forEach(i=>{qx(this,i),this.controls[i].setValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){null!=n&&(Object.keys(n).forEach(i=>{this.controls[i]&&this.controls[i].patchValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n={},e={}){this._forEachChild((i,o)=>{i.reset(n[o],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(n,e,i)=>(n[i]=Wx(e),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(e,i)=>!!i._syncPendingControls()||e);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(e=>{const i=this.controls[e];i&&n(i,e)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const e of Object.keys(this.controls)){const i=this.controls[e];if(this.contains(e)&&n(i))return!0}return!1}_reduceValue(){return this._reduceChildren({},(n,e,i)=>((e.enabled||this.disabled)&&(n[i]=e.value),n))}_reduceChildren(n,e){let i=n;return this._forEachChild((o,r)=>{i=e(i,o,r)}),i}_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}}class po extends yb{constructor(n,e,i){super(_b(e),bb(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(n){return this.controls[n]}push(n,e={}){this.controls.push(n),this._registerControl(n),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(n,e,i={}){this.controls.splice(n,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(n,e={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(n,e,i={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),e&&(this.controls.splice(n,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(n,e={}){Kx(this,n),n.forEach((i,o)=>{qx(this,o),this.at(o).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){null!=n&&(n.forEach((i,o)=>{this.at(o)&&this.at(o).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n=[],e={}){this._forEachChild((i,o)=>{i.reset(n[o],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(n=>Wx(n))}clear(n={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:n.emitEvent}))}_syncPendingControls(){let n=this.controls.reduce((e,i)=>!!i._syncPendingControls()||e,!1);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){this.controls.forEach((e,i)=>{n(e,i)})}_updateValue(){this.value=this.controls.filter(n=>n.enabled||this.disabled).map(n=>n.value)}_anyControls(n){return this.controls.some(e=>e.enabled&&n(e))}_setUpControls(){this._forEachChild(n=>this._registerControl(n))}_allControlsDisabled(){for(const n of this.controls)if(n.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(n){n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)}}const k8={provide:Ni,useExisting:zt(()=>ks)},pd=(()=>Promise.resolve(null))();let ks=(()=>{class t extends Ni{constructor(e,i){super(),this.submitted=!1,this._directives=new Set,this.ngSubmit=new Pe,this.form=new an({},ab(e),lb(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){pd.then(()=>{const i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),dd(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){pd.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){pd.then(()=>{const i=this._findContainer(e.path),o=new an({});jx(o,e),i.registerControl(e.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){pd.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){pd.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submitted=!0,Ux(this.form,this._directives),this.ngSubmit.emit(e),!1}onReset(){this.resetForm()}resetForm(e){this.form.reset(e),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}}return t.\u0275fac=function(e){return new(e||t)(b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(e,i){1&e&&N("submit",function(r){return i.onSubmit(r)})("reset",function(){return i.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ze([k8]),Ce]}),t})(),Zx=(()=>{class t extends Ni{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Zh(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,features:[Ce]}),t})();const I8={provide:rr,useExisting:zt(()=>El)},Yx=(()=>Promise.resolve(null))();let El=(()=>{class t extends rr{constructor(e,i,o,r,s){super(),this._changeDetectorRef=s,this.control=new X,this._registered=!1,this.update=new Pe,this._parent=e,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=fb(0,r)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){const i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),pb(e,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(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){dd(this.control,this),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(e){Yx.then(()=>{var i;this.control.setValue(e,{emitViewToModelChange:!1}),null===(i=this._changeDetectorRef)||void 0===i||i.markForCheck()})}_updateDisabled(e){const i=e.isDisabled.currentValue,o=""===i||i&&"false"!==i;Yx.then(()=>{var r;o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),null===(r=this._changeDetectorRef)||void 0===r||r.markForCheck()})}_getPath(e){return this._parent?Zh(e,this._parent):[e]}}return t.\u0275fac=function(e){return new(e||t)(b(Ni,9),b(bi,10),b(Ts,10),b(Zi,10),b(At,8))},t.\u0275dir=oe({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[ze([I8]),Ce,nn]}),t})(),xi=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const O8={provide:Zi,useExisting:zt(()=>Cb),multi:!0};let Cb=(()=>{class t extends ga{writeValue(e){this.setProperty("value",null==e?"":e)}registerOnChange(e){this.onChange=i=>{e(""==i?null:parseFloat(i))}}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(e,i){1&e&&N("input",function(r){return i.onChange(r.target.value)})("blur",function(){return i.onTouched()})},features:[ze([O8]),Ce]}),t})(),Xx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const wb=new _e("NgModelWithFormControlWarning"),F8={provide:rr,useExisting:zt(()=>Il)};let Il=(()=>{class t extends rr{constructor(e,i,o,r){super(),this._ngModelWarningConfig=r,this.update=new Pe,this._ngModelWarningSent=!1,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=fb(0,o)}set isDisabled(e){}ngOnChanges(e){if(this._isControlChanged(e)){const i=e.form.previousValue;i&&Qh(i,this,!1),dd(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}pb(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&Qh(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}}return t._ngModelWarningSentOnce=!1,t.\u0275fac=function(e){return new(e||t)(b(bi,10),b(Ts,10),b(Zi,10),b(wb,8))},t.\u0275dir=oe({type:t,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[ze([F8]),Ce,nn]}),t})();const N8={provide:Ni,useExisting:zt(()=>Sn)};let Sn=(()=>{class t extends Ni{constructor(e,i){super(),this.validators=e,this.asyncValidators=i,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new Pe,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Xh(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){const i=this.form.get(e.path);return dd(i,e),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){Qh(e.control||null,e,!1),mb(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this.submitted=!0,Ux(this.form,this.directives),this.ngSubmit.emit(e),!1}onReset(){this.resetForm()}resetForm(e){this.form.reset(e),this.submitted=!1}_updateDomValue(){this.directives.forEach(e=>{const i=e.control,o=this.form.get(e.path);i!==o&&(Qh(i||null,e),vb(o)&&(dd(o,e),e.control=o))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){const i=this.form.get(e.path);jx(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){const i=this.form.get(e.path);i&&function S8(t,n){return Xh(t,n)}(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){hb(this.form,this),this._oldForm&&Xh(this._oldForm,this)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["","formGroup",""]],hostBindings:function(e,i){1&e&&N("submit",function(r){return i.onSubmit(r)})("reset",function(){return i.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ze([N8]),Ce,nn]}),t})();const L8={provide:Ni,useExisting:zt(()=>fd)};let fd=(()=>{class t extends Zx{constructor(e,i,o){super(),this._parent=e,this._setValidators(i),this._setAsyncValidators(o)}_checkParentType(){tT(this._parent)}}return t.\u0275fac=function(e){return new(e||t)(b(Ni,13),b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["","formGroupName",""]],inputs:{name:["formGroupName","name"]},features:[ze([L8]),Ce]}),t})();const B8={provide:Ni,useExisting:zt(()=>md)};let md=(()=>{class t extends Ni{constructor(e,i,o){super(),this._parent=e,this._setValidators(i),this._setAsyncValidators(o)}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return Zh(null==this.name?this.name:this.name.toString(),this._parent)}_checkParentType(){tT(this._parent)}}return t.\u0275fac=function(e){return new(e||t)(b(Ni,13),b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["","formArrayName",""]],inputs:{name:["formArrayName","name"]},features:[ze([B8]),Ce]}),t})();function tT(t){return!(t instanceof fd||t instanceof Sn||t instanceof md)}const V8={provide:rr,useExisting:zt(()=>Xn)};let Xn=(()=>{class t extends rr{constructor(e,i,o,r,s){super(),this._ngModelWarningConfig=s,this._added=!1,this.update=new Pe,this._ngModelWarningSent=!1,this._parent=e,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=fb(0,r)}set isDisabled(e){}ngOnChanges(e){this._added||this._setUpControl(),pb(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return Zh(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}return t._ngModelWarningSentOnce=!1,t.\u0275fac=function(e){return new(e||t)(b(Ni,13),b(bi,10),b(Ts,10),b(Zi,10),b(wb,8))},t.\u0275dir=oe({type:t,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[ze([V8]),Ce,nn]}),t})();function oT(t){return"number"==typeof t?t:parseInt(t,10)}let _a=(()=>{class t{constructor(){this._validator=Wh}ngOnChanges(e){if(this.inputName in e){const i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):Wh,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return null!=e}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,features:[nn]}),t})();const Z8={provide:bi,useExisting:zt(()=>fo),multi:!0};let fo=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=e=>function W8(t){return null!=t&&!1!==t&&"false"!=`${t}`}(e),this.createValidator=e=>bx}enabled(e){return e}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(e,i){2&e&&et("required",i._enabled?"":null)},inputs:{required:"required"},features:[ze([Z8]),Ce]}),t})();const X8={provide:bi,useExisting:zt(()=>xb),multi:!0};let xb=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="minlength",this.normalizeInput=e=>oT(e),this.createValidator=e=>Cx(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","minlength","","formControlName",""],["","minlength","","formControl",""],["","minlength","","ngModel",""]],hostVars:1,hostBindings:function(e,i){2&e&&et("minlength",i._enabled?i.minlength:null)},inputs:{minlength:"minlength"},features:[ze([X8]),Ce]}),t})();const J8={provide:bi,useExisting:zt(()=>Tb),multi:!0};let Tb=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=e=>oT(e),this.createValidator=e=>wx(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(e,i){2&e&&et("maxlength",i._enabled?i.maxlength:null)},inputs:{maxlength:"maxlength"},features:[ze([J8]),Ce]}),t})();const ej={provide:bi,useExisting:zt(()=>kb),multi:!0};let kb=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=e=>e,this.createValidator=e=>Dx(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(e,i){2&e&&et("pattern",i._enabled?i.pattern:null)},inputs:{pattern:"pattern"},features:[ze([ej]),Ce]}),t})(),cT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Xx]]}),t})(),tj=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[cT]}),t})(),Eb=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:wb,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[cT]}),t})(),Es=(()=>{class t{group(e,i=null){const o=this._reduceControls(e);let a,r=null,s=null;return null!=i&&(function nj(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(i)?(r=null!=i.validators?i.validators:null,s=null!=i.asyncValidators?i.asyncValidators:null,a=null!=i.updateOn?i.updateOn:void 0):(r=null!=i.validator?i.validator:null,s=null!=i.asyncValidator?i.asyncValidator:null)),new an(o,{asyncValidators:s,updateOn:a,validators:r})}control(e,i,o){return new X(e,i,o)}array(e,i,o){const r=e.map(s=>this._createControl(s));return new po(r,i,o)}_reduceControls(e){const i={};return Object.keys(e).forEach(o=>{i[o]=this._createControl(e[o])}),i}_createControl(e){return vb(e)||tp(e)||Gx(e)?e:Array.isArray(e)?this.control(e[0],e.length>1?e[1]:null,e.length>2?e[2]:null):this.control(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:Eb}),t})(),dT=(()=>{class t{constructor(){this._vertical=!1,this._inset=!1}get vertical(){return this._vertical}set vertical(e){this._vertical=Xe(e)}get inset(){return this._inset}set inset(e){this._inset=Xe(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(e,i){2&e&&(et("aria-orientation",i.vertical?"vertical":"horizontal"),rt("mat-divider-vertical",i.vertical)("mat-divider-horizontal",!i.vertical)("mat-divider-inset",i.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(e,i){},styles:[".mat-divider{display:block;margin:0;border-top-width:1px;border-top-style:solid}.mat-divider.mat-divider-vertical{border-top:0;border-right-width:1px;border-right-style:solid}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}\n"],encapsulation:2,changeDetection:0}),t})(),Ib=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})(),hT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[xM,fa,ft,G_,qi],xM,ft,G_,Ib]}),t})();const gj=["connectionContainer"],_j=["inputContainer"],bj=["label"];function vj(t,n){1&t&&(be(0),d(1,"div",14),E(2,"div",15)(3,"div",16)(4,"div",17),c(),d(5,"div",18),E(6,"div",15)(7,"div",16)(8,"div",17),c(),ve())}function yj(t,n){if(1&t){const e=pe();d(0,"div",19),N("cdkObserveContent",function(){return se(e),D().updateOutlineGap()}),ct(1,1),c()}2&t&&m("cdkObserveContentDisabled","outline"!=D().appearance)}function Cj(t,n){if(1&t&&(be(0),ct(1,2),d(2,"span"),h(3),c(),ve()),2&t){const e=D(2);f(3),Ee(e._control.placeholder)}}function wj(t,n){1&t&&ct(0,3,["*ngSwitchCase","true"])}function Dj(t,n){1&t&&(d(0,"span",23),h(1," *"),c())}function Sj(t,n){if(1&t){const e=pe();d(0,"label",20,21),N("cdkObserveContent",function(){return se(e),D().updateOutlineGap()}),_(2,Cj,4,1,"ng-container",12),_(3,wj,1,0,"ng-content",12),_(4,Dj,2,0,"span",22),c()}if(2&t){const e=D();rt("mat-empty",e._control.empty&&!e._shouldAlwaysFloat())("mat-form-field-empty",e._control.empty&&!e._shouldAlwaysFloat())("mat-accent","accent"==e.color)("mat-warn","warn"==e.color),m("cdkObserveContentDisabled","outline"!=e.appearance)("id",e._labelId)("ngSwitch",e._hasLabel()),et("for",e._control.id)("aria-owns",e._control.id),f(2),m("ngSwitchCase",!1),f(1),m("ngSwitchCase",!0),f(1),m("ngIf",!e.hideRequiredMarker&&e._control.required&&!e._control.disabled)}}function Mj(t,n){1&t&&(d(0,"div",24),ct(1,4),c())}function xj(t,n){if(1&t&&(d(0,"div",25),E(1,"span",26),c()),2&t){const e=D();f(1),rt("mat-accent","accent"==e.color)("mat-warn","warn"==e.color)}}function Tj(t,n){1&t&&(d(0,"div"),ct(1,5),c()),2&t&&m("@transitionMessages",D()._subscriptAnimationState)}function kj(t,n){if(1&t&&(d(0,"div",30),h(1),c()),2&t){const e=D(2);m("id",e._hintLabelId),f(1),Ee(e.hintLabel)}}function Ej(t,n){if(1&t&&(d(0,"div",27),_(1,kj,2,2,"div",28),ct(2,6),E(3,"div",29),ct(4,7),c()),2&t){const e=D();m("@transitionMessages",e._subscriptAnimationState),f(1),m("ngIf",e.hintLabel)}}const Ij=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Oj=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"];let Aj=0;const pT=new _e("MatError");let Ob=(()=>{class t{constructor(e,i){this.id="mat-error-"+Aj++,e||i.nativeElement.setAttribute("aria-live","polite")}}return t.\u0275fac=function(e){return new(e||t)(Di("aria-live"),b(He))},t.\u0275dir=oe({type:t,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(e,i){2&e&&et("id",i.id)},inputs:{id:"id"},features:[ze([{provide:pT,useExisting:t}])]}),t})();const Pj={transitionMessages:Oo("transitionMessages",[jn("enter",Vt({opacity:1,transform:"translateY(0%)"})),Kn("void => enter",[Vt({opacity:0,transform:"translateY(-5px)"}),si("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let gd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t}),t})(),Rj=0;const fT=new _e("MatHint");let np=(()=>{class t{constructor(){this.align="start",this.id="mat-hint-"+Rj++}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-hint"]],hostAttrs:[1,"mat-hint"],hostVars:4,hostBindings:function(e,i){2&e&&(et("id",i.id)("align",null),rt("mat-form-field-hint-end","end"===i.align))},inputs:{align:"align",id:"id"},features:[ze([{provide:fT,useExisting:t}])]}),t})(),Mn=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-label"]]}),t})(),Fj=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-placeholder"]]}),t})();const Nj=new _e("MatPrefix"),mT=new _e("MatSuffix");let Ab=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["","matSuffix",""]],features:[ze([{provide:mT,useExisting:t}])]}),t})(),gT=0;const Bj=$r(class{constructor(t){this._elementRef=t}},"primary"),Vj=new _e("MAT_FORM_FIELD_DEFAULT_OPTIONS"),ip=new _e("MatFormField");let En=(()=>{class t extends Bj{constructor(e,i,o,r,s,a,l){super(e),this._changeDetectorRef=i,this._dir=o,this._defaults=r,this._platform=s,this._ngZone=a,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new ie,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+gT++,this._labelId="mat-form-field-label-"+gT++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==l,this.appearance=r&&r.appearance?r.appearance:"legacy",this._hideRequiredMarker=!(!r||null==r.hideRequiredMarker)&&r.hideRequiredMarker}get appearance(){return this._appearance}set appearance(e){const i=this._appearance;this._appearance=e||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&i!==e&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=Xe(e)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(e){this._explicitFormFieldControl=e}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const e=this._control;e.controlType&&this._elementRef.nativeElement.classList.add(`mat-form-field-type-${e.controlType}`),e.stateChanges.pipe(Nn(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),e.ngControl&&e.ngControl.valueChanges&&e.ngControl.valueChanges.pipe(tt(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe(tt(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),Tn(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Nn(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Nn(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(tt(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(e){const i=this._control?this._control.ngControl:null;return i&&i[e]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}_shouldLabelFloat(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,Ki(this._label.nativeElement,"transitionend").pipe(Ot(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push(...this._control.userAriaDescribedBy.split(" ")),"hint"===this._getDisplayedMessages()){const i=this._hintChildren?this._hintChildren.find(r=>"start"===r.align):null,o=this._hintChildren?this._hintChildren.find(r=>"end"===r.align):null;i?e.push(i.id):this._hintLabel&&e.push(this._hintLabelId),o&&e.push(o.id)}else this._errorChildren&&e.push(...this._errorChildren.map(i=>i.id));this._control.setDescribedByIds(e)}}_validateControlChild(){}updateOutlineGap(){const e=this._label?this._label.nativeElement:null,i=this._connectionContainerRef.nativeElement,o=".mat-form-field-outline-start",r=".mat-form-field-outline-gap";if("outline"!==this.appearance||!this._platform.isBrowser)return;if(!e||!e.children.length||!e.textContent.trim()){const p=i.querySelectorAll(`${o}, ${r}`);for(let g=0;g0?.75*M+10:0}for(let p=0;p{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,Ph],ft]}),t})();function op(t=0,n,e=gV){let i=-1;return null!=n&&(Zv(n)?e=n:i=n),new Ue(o=>{let r=function Hj(t){return t instanceof Date&&!isNaN(t)}(t)?+t-e.now():t;r<0&&(r=0);let s=0;return e.schedule(function(){o.closed||(o.next(s++),0<=i?this.schedule(void 0,i):o.complete())},r)})}function Pb(t,n=td){return function jj(t){return nt((n,e)=>{let i=!1,o=null,r=null,s=!1;const a=()=>{if(null==r||r.unsubscribe(),r=null,i){i=!1;const u=o;o=null,e.next(u)}s&&e.complete()},l=()=>{r=null,s&&e.complete()};n.subscribe(st(e,u=>{i=!0,o=u,r||yi(t(u)).subscribe(r=st(e,a,l))},()=>{s=!0,(!i||!r||r.closed)&&e.complete()}))})}(()=>op(t,n))}const bT=ca({passive:!0});let Uj=(()=>{class t{constructor(e,i){this._platform=e,this._ngZone=i,this._monitoredElements=new Map}monitor(e){if(!this._platform.isBrowser)return yo;const i=zr(e),o=this._monitoredElements.get(i);if(o)return o.subject;const r=new ie,s="cdk-text-field-autofilled",a=l=>{"cdk-text-field-autofill-start"!==l.animationName||i.classList.contains(s)?"cdk-text-field-autofill-end"===l.animationName&&i.classList.contains(s)&&(i.classList.remove(s),this._ngZone.run(()=>r.next({target:l.target,isAutofilled:!1}))):(i.classList.add(s),this._ngZone.run(()=>r.next({target:l.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{i.addEventListener("animationstart",a,bT),i.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(i,{subject:r,unlisten:()=>{i.removeEventListener("animationstart",a,bT)}}),r}stopMonitoring(e){const i=zr(e),o=this._monitoredElements.get(i);o&&(o.unlisten(),o.subject.complete(),i.classList.remove("cdk-text-field-autofill-monitored"),i.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(i))}ngOnDestroy(){this._monitoredElements.forEach((e,i)=>this.stopMonitoring(i))}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(Je))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),vT=(()=>{class t{constructor(e,i,o,r){this._elementRef=e,this._platform=i,this._ngZone=o,this._destroyed=new ie,this._enabled=!0,this._previousMinRows=-1,this._isViewInited=!1,this._handleFocusEvent=s=>{this._hasFocus="focus"===s.type},this._document=r,this._textareaElement=this._elementRef.nativeElement}get minRows(){return this._minRows}set minRows(e){this._minRows=Zn(e),this._setMinHeight()}get maxRows(){return this._maxRows}set maxRows(e){this._maxRows=Zn(e),this._setMaxHeight()}get enabled(){return this._enabled}set enabled(e){e=Xe(e),this._enabled!==e&&((this._enabled=e)?this.resizeToFitContent(!0):this.reset())}get placeholder(){return this._textareaElement.placeholder}set placeholder(e){this._cachedPlaceholderHeight=void 0,e?this._textareaElement.setAttribute("placeholder",e):this._textareaElement.removeAttribute("placeholder"),this._cacheTextareaPlaceholderHeight()}_setMinHeight(){const e=this.minRows&&this._cachedLineHeight?this.minRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.minHeight=e)}_setMaxHeight(){const e=this.maxRows&&this._cachedLineHeight?this.maxRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.maxHeight=e)}ngAfterViewInit(){this._platform.isBrowser&&(this._initialHeight=this._textareaElement.style.height,this.resizeToFitContent(),this._ngZone.runOutsideAngular(()=>{Ki(this._getWindow(),"resize").pipe(Pb(16),tt(this._destroyed)).subscribe(()=>this.resizeToFitContent(!0)),this._textareaElement.addEventListener("focus",this._handleFocusEvent),this._textareaElement.addEventListener("blur",this._handleFocusEvent)}),this._isViewInited=!0,this.resizeToFitContent(!0))}ngOnDestroy(){this._textareaElement.removeEventListener("focus",this._handleFocusEvent),this._textareaElement.removeEventListener("blur",this._handleFocusEvent),this._destroyed.next(),this._destroyed.complete()}_cacheTextareaLineHeight(){if(this._cachedLineHeight)return;let e=this._textareaElement.cloneNode(!1);e.rows=1,e.style.position="absolute",e.style.visibility="hidden",e.style.border="none",e.style.padding="0",e.style.height="",e.style.minHeight="",e.style.maxHeight="",e.style.overflow="hidden",this._textareaElement.parentNode.appendChild(e),this._cachedLineHeight=e.clientHeight,e.remove(),this._setMinHeight(),this._setMaxHeight()}_measureScrollHeight(){const e=this._textareaElement,i=e.style.marginBottom||"",o=this._platform.FIREFOX,r=o&&this._hasFocus,s=o?"cdk-textarea-autosize-measuring-firefox":"cdk-textarea-autosize-measuring";r&&(e.style.marginBottom=`${e.clientHeight}px`),e.classList.add(s);const a=e.scrollHeight-4;return e.classList.remove(s),r&&(e.style.marginBottom=i),a}_cacheTextareaPlaceholderHeight(){if(!this._isViewInited||null!=this._cachedPlaceholderHeight)return;if(!this.placeholder)return void(this._cachedPlaceholderHeight=0);const e=this._textareaElement.value;this._textareaElement.value=this._textareaElement.placeholder,this._cachedPlaceholderHeight=this._measureScrollHeight(),this._textareaElement.value=e}ngDoCheck(){this._platform.isBrowser&&this.resizeToFitContent()}resizeToFitContent(e=!1){if(!this._enabled||(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),!this._cachedLineHeight))return;const i=this._elementRef.nativeElement,o=i.value;if(!e&&this._minRows===this._previousMinRows&&o===this._previousValue)return;const r=this._measureScrollHeight(),s=Math.max(r,this._cachedPlaceholderHeight||0);i.style.height=`${s}px`,this._ngZone.runOutsideAngular(()=>{"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(()=>this._scrollToCaretPosition(i)):setTimeout(()=>this._scrollToCaretPosition(i))}),this._previousValue=o,this._previousMinRows=this._minRows}reset(){void 0!==this._initialHeight&&(this._textareaElement.style.height=this._initialHeight)}_noopInputHandler(){}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollToCaretPosition(e){const{selectionStart:i,selectionEnd:o}=e;!this._destroyed.isStopped&&this._hasFocus&&e.setSelectionRange(i,o)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(dn),b(Je),b(ht,8))},t.\u0275dir=oe({type:t,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(e,i){1&e&&N("input",function(){return i._noopInputHandler()})},inputs:{minRows:["cdkAutosizeMinRows","minRows"],maxRows:["cdkAutosizeMaxRows","maxRows"],enabled:["cdkTextareaAutosize","enabled"],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"]}),t})(),yT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const zj=new _e("MAT_INPUT_VALUE_ACCESSOR"),$j=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Gj=0;const Wj=z_(class{constructor(t,n,e,i){this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=e,this.ngControl=i}});let li=(()=>{class t extends Wj{constructor(e,i,o,r,s,a,l,u,p,g){super(a,r,s,o),this._elementRef=e,this._platform=i,this._autofillMonitor=u,this._formField=g,this._uid="mat-input-"+Gj++,this.focused=!1,this.stateChanges=new ie,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(M=>sM().has(M)),this._iOSKeyupListener=M=>{const V=M.target;!V.value&&0===V.selectionStart&&0===V.selectionEnd&&(V.setSelectionRange(1,1),V.setSelectionRange(0,0))};const v=this._elementRef.nativeElement,C=v.nodeName.toLowerCase();this._inputValueAccessor=l||v,this._previousNativeValue=this.value,this.id=this.id,i.IOS&&p.runOutsideAngular(()=>{e.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===C,this._isTextarea="textarea"===C,this._isInFormField=!!g,this._isNativeSelect&&(this.controlType=v.multiple?"mat-native-select-multiple":"mat-native-select")}get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(e){this._disabled=Xe(e),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(e){this._id=e||this._uid}get required(){var e,i,o,r;return null!==(r=null!==(e=this._required)&&void 0!==e?e:null===(o=null===(i=this.ngControl)||void 0===i?void 0:i.control)||void 0===o?void 0:o.hasValidator(de.required))&&void 0!==r&&r}set required(e){this._required=Xe(e)}get type(){return this._type}set type(e){this._type=e||"text",this._validateType(),!this._isTextarea&&sM().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(e){this._readonly=Xe(e)}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(e=>{this.autofilled=e.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener)}ngDoCheck(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(e){this._elementRef.nativeElement.focus(e)}_focusChanged(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){var e,i;const o=(null===(i=null===(e=this._formField)||void 0===e?void 0:e._hideControlPlaceholder)||void 0===i?void 0:i.call(e))?null:this.placeholder;if(o!==this._previousPlaceholder){const r=this._elementRef.nativeElement;this._previousPlaceholder=o,o?r.setAttribute("placeholder",o):r.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}_validateType(){$j.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let e=this._elementRef.nativeElement.validity;return e&&e.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const e=this._elementRef.nativeElement,i=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&i&&i.label)}return this.focused||!this.empty}setDescribedByIds(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const e=this._elementRef.nativeElement;return this._isNativeSelect&&(e.multiple||e.size>1)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(dn),b(rr,10),b(ks,8),b(Sn,8),b(od),b(zj,10),b(Uj),b(Je),b(ip,8))},t.\u0275dir=oe({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:12,hostBindings:function(e,i){1&e&&N("focus",function(){return i._focusChanged(!0)})("blur",function(){return i._focusChanged(!1)})("input",function(){return i._onInput()}),2&e&&(Fr("disabled",i.disabled)("required",i.required),et("id",i.id)("data-placeholder",i.placeholder)("name",i.name||null)("readonly",i.readonly&&!i._isNativeSelect||null)("aria-invalid",i.empty&&i.required?null:i.errorState)("aria-required",i.required),rt("mat-input-server",i._isServer)("mat-native-select-inline",i._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[ze([{provide:gd,useExisting:t}]),Ce,nn]}),t})(),CT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[od],imports:[[yT,_d,ft],yT,_d]}),t})();const bd={schedule(t){let n=requestAnimationFrame,e=cancelAnimationFrame;const{delegate:i}=bd;i&&(n=i.requestAnimationFrame,e=i.cancelAnimationFrame);const o=n(r=>{e=void 0,t(r)});return new k(()=>null==e?void 0:e(o))},requestAnimationFrame(...t){const{delegate:n}=bd;return((null==n?void 0:n.requestAnimationFrame)||requestAnimationFrame)(...t)},cancelAnimationFrame(...t){const{delegate:n}=bd;return((null==n?void 0:n.cancelAnimationFrame)||cancelAnimationFrame)(...t)},delegate:void 0};new class Kj extends R_{flush(n){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let o;n=n||i.shift();do{if(o=n.execute(n.state,n.delay))break}while((n=i[0])&&n.id===e&&i.shift());if(this._active=!1,o){for(;(n=i[0])&&n.id===e&&i.shift();)n.unsubscribe();throw o}}}(class qj extends P_{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}requestAsyncId(n,e,i=0){return null!==i&&i>0?super.requestAsyncId(n,e,i):(n.actions.push(this),n._scheduled||(n._scheduled=bd.requestAnimationFrame(()=>n.flush(void 0))))}recycleAsyncId(n,e,i=0){var o;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(n,e,i);const{actions:r}=n;null!=e&&(null===(o=r[r.length-1])||void 0===o?void 0:o.id)!==e&&(bd.cancelAnimationFrame(e),n._scheduled=void 0)}});let Rb,Qj=1;const rp={};function wT(t){return t in rp&&(delete rp[t],!0)}const Yj={setImmediate(t){const n=Qj++;return rp[n]=!0,Rb||(Rb=Promise.resolve()),Rb.then(()=>wT(n)&&t()),n},clearImmediate(t){wT(t)}},{setImmediate:Xj,clearImmediate:Jj}=Yj,sp={setImmediate(...t){const{delegate:n}=sp;return((null==n?void 0:n.setImmediate)||Xj)(...t)},clearImmediate(t){const{delegate:n}=sp;return((null==n?void 0:n.clearImmediate)||Jj)(t)},delegate:void 0},Fb=new class t7 extends R_{flush(n){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let o;n=n||i.shift();do{if(o=n.execute(n.state,n.delay))break}while((n=i[0])&&n.id===e&&i.shift());if(this._active=!1,o){for(;(n=i[0])&&n.id===e&&i.shift();)n.unsubscribe();throw o}}}(class e7 extends P_{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}requestAsyncId(n,e,i=0){return null!==i&&i>0?super.requestAsyncId(n,e,i):(n.actions.push(this),n._scheduled||(n._scheduled=sp.setImmediate(n.flush.bind(n,void 0))))}recycleAsyncId(n,e,i=0){var o;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(n,e,i);const{actions:r}=n;null!=e&&(null===(o=r[r.length-1])||void 0===o?void 0:o.id)!==e&&(sp.clearImmediate(e),n._scheduled===e&&(n._scheduled=void 0))}});let vd=(()=>{class t{constructor(e,i,o){this._ngZone=e,this._platform=i,this._scrolled=new ie,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=o}register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){const i=this.scrollContainers.get(e);i&&(i.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=20){return this._platform.isBrowser?new Ue(i=>{this._globalSubscription||this._addGlobalListener();const o=e>0?this._scrolled.pipe(Pb(e)).subscribe(i):this._scrolled.subscribe(i);return this._scrolledCount++,()=>{o.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):We()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((e,i)=>this.deregister(i)),this._scrolled.complete()}ancestorScrolled(e,i){const o=this.getAncestorScrollContainers(e);return this.scrolled(i).pipe(It(r=>!r||o.indexOf(r)>-1))}getAncestorScrollContainers(e){const i=[];return this.scrollContainers.forEach((o,r)=>{this._scrollableContainsElement(r,e)&&i.push(r)}),i}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(e,i){let o=zr(i),r=e.getElementRef().nativeElement;do{if(o==r)return!0}while(o=o.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>Ki(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.\u0275fac=function(e){return new(e||t)(Q(Je),Q(dn),Q(ht,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),yd=(()=>{class t{constructor(e,i,o,r){this.elementRef=e,this.scrollDispatcher=i,this.ngZone=o,this.dir=r,this._destroyed=new ie,this._elementScrolled=new Ue(s=>this.ngZone.runOutsideAngular(()=>Ki(this.elementRef.nativeElement,"scroll").pipe(tt(this._destroyed)).subscribe(s)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){const i=this.elementRef.nativeElement,o=this.dir&&"rtl"==this.dir.value;null==e.left&&(e.left=o?e.end:e.start),null==e.right&&(e.right=o?e.start:e.end),null!=e.bottom&&(e.top=i.scrollHeight-i.clientHeight-e.bottom),o&&0!=Jc()?(null!=e.left&&(e.right=i.scrollWidth-i.clientWidth-e.left),2==Jc()?e.left=e.right:1==Jc()&&(e.left=e.right?-e.right:e.right)):null!=e.right&&(e.left=i.scrollWidth-i.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){const i=this.elementRef.nativeElement;aM()?i.scrollTo(e):(null!=e.top&&(i.scrollTop=e.top),null!=e.left&&(i.scrollLeft=e.left))}measureScrollOffset(e){const i="left",o="right",r=this.elementRef.nativeElement;if("top"==e)return r.scrollTop;if("bottom"==e)return r.scrollHeight-r.clientHeight-r.scrollTop;const s=this.dir&&"rtl"==this.dir.value;return"start"==e?e=s?o:i:"end"==e&&(e=s?i:o),s&&2==Jc()?e==i?r.scrollWidth-r.clientWidth-r.scrollLeft:r.scrollLeft:s&&1==Jc()?e==i?r.scrollLeft+r.scrollWidth-r.clientWidth:-r.scrollLeft:e==i?r.scrollLeft:r.scrollWidth-r.clientWidth-r.scrollLeft}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(vd),b(Je),b(ai,8))},t.\u0275dir=oe({type:t,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]}),t})(),yr=(()=>{class t{constructor(e,i,o){this._platform=e,this._change=new ie,this._changeListener=r=>{this._change.next(r)},this._document=o,i.runOutsideAngular(()=>{if(e.isBrowser){const r=this._getWindow();r.addEventListener("resize",this._changeListener),r.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){const e=this.getViewportScrollPosition(),{width:i,height:o}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+o,right:e.left+i,height:o,width:i}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const e=this._document,i=this._getWindow(),o=e.documentElement,r=o.getBoundingClientRect();return{top:-r.top||e.body.scrollTop||i.scrollY||o.scrollTop||0,left:-r.left||e.body.scrollLeft||i.scrollX||o.scrollLeft||0}}change(e=20){return e>0?this._change.pipe(Pb(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(Je),Q(ht,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Is=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),Nb=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Yc,Is],Yc,Is]}),t})();class Lb{attach(n){return this._attachedHost=n,n.attach(this)}detach(){let n=this._attachedHost;null!=n&&(this._attachedHost=null,n.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(n){this._attachedHost=n}}class Ol extends Lb{constructor(n,e,i,o){super(),this.component=n,this.viewContainerRef=e,this.injector=i,this.componentFactoryResolver=o}}class Wr extends Lb{constructor(n,e,i){super(),this.templateRef=n,this.viewContainerRef=e,this.context=i}get origin(){return this.templateRef.elementRef}attach(n,e=this.context){return this.context=e,super.attach(n)}detach(){return this.context=void 0,super.detach()}}class r7 extends Lb{constructor(n){super(),this.element=n instanceof He?n.nativeElement:n}}class ap{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(n){return n instanceof Ol?(this._attachedPortal=n,this.attachComponentPortal(n)):n instanceof Wr?(this._attachedPortal=n,this.attachTemplatePortal(n)):this.attachDomPortal&&n instanceof r7?(this._attachedPortal=n,this.attachDomPortal(n)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(n){this._disposeFn=n}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class s7 extends ap{constructor(n,e,i,o,r){super(),this.outletElement=n,this._componentFactoryResolver=e,this._appRef=i,this._defaultInjector=o,this.attachDomPortal=s=>{const a=s.element,l=this._document.createComment("dom-portal");a.parentNode.insertBefore(l,a),this.outletElement.appendChild(a),this._attachedPortal=s,super.setDisposeFn(()=>{l.parentNode&&l.parentNode.replaceChild(a,l)})},this._document=r}attachComponentPortal(n){const i=(n.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(n.component);let o;return n.viewContainerRef?(o=n.viewContainerRef.createComponent(i,n.viewContainerRef.length,n.injector||n.viewContainerRef.injector),this.setDisposeFn(()=>o.destroy())):(o=i.create(n.injector||this._defaultInjector||pn.NULL),this._appRef.attachView(o.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(o.hostView),o.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(o)),this._attachedPortal=n,o}attachTemplatePortal(n){let e=n.viewContainerRef,i=e.createEmbeddedView(n.templateRef,n.context);return i.rootNodes.forEach(o=>this.outletElement.appendChild(o)),i.detectChanges(),this.setDisposeFn(()=>{let o=e.indexOf(i);-1!==o&&e.remove(o)}),this._attachedPortal=n,i}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(n){return n.hostView.rootNodes[0]}}let a7=(()=>{class t extends Wr{constructor(e,i){super(e,i)}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(sn))},t.\u0275dir=oe({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[Ce]}),t})(),Os=(()=>{class t extends ap{constructor(e,i,o){super(),this._componentFactoryResolver=e,this._viewContainerRef=i,this._isInitialized=!1,this.attached=new Pe,this.attachDomPortal=r=>{const s=r.element,a=this._document.createComment("dom-portal");r.setAttachedHost(this),s.parentNode.insertBefore(a,s),this._getRootNode().appendChild(s),this._attachedPortal=r,super.setDisposeFn(()=>{a.parentNode&&a.parentNode.replaceChild(s,a)})},this._document=o}get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedPortal=null,this._attachedRef=null}attachComponentPortal(e){e.setAttachedHost(this);const i=null!=e.viewContainerRef?e.viewContainerRef:this._viewContainerRef,r=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component),s=i.createComponent(r,i.length,e.injector||i.injector);return i!==this._viewContainerRef&&this._getRootNode().appendChild(s.hostView.rootNodes[0]),super.setDisposeFn(()=>s.destroy()),this._attachedPortal=e,this._attachedRef=s,this.attached.emit(s),s}attachTemplatePortal(e){e.setAttachedHost(this);const i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context);return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i}_getRootNode(){const e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}}return t.\u0275fac=function(e){return new(e||t)(b(gs),b(sn),b(ht))},t.\u0275dir=oe({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[Ce]}),t})(),Cd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const DT=aM();class c7{constructor(n,e){this._viewportRuler=n,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const n=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=n.style.left||"",this._previousHTMLStyles.top=n.style.top||"",n.style.left=Qn(-this._previousScrollPosition.left),n.style.top=Qn(-this._previousScrollPosition.top),n.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const n=this._document.documentElement,i=n.style,o=this._document.body.style,r=i.scrollBehavior||"",s=o.scrollBehavior||"";this._isEnabled=!1,i.left=this._previousHTMLStyles.left,i.top=this._previousHTMLStyles.top,n.classList.remove("cdk-global-scrollblock"),DT&&(i.scrollBehavior=o.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),DT&&(i.scrollBehavior=r,o.scrollBehavior=s)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const e=this._document.body,i=this._viewportRuler.getViewportSize();return e.scrollHeight>i.height||e.scrollWidth>i.width}}class d7{constructor(n,e,i,o){this._scrollDispatcher=n,this._ngZone=e,this._viewportRuler=i,this._config=o,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(n){this._overlayRef=n}enable(){if(this._scrollSubscription)return;const n=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=n.subscribe(()=>{const e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=n.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class ST{enable(){}disable(){}attach(){}}function Bb(t,n){return n.some(e=>t.bottome.bottom||t.righte.right)}function MT(t,n){return n.some(e=>t.tope.bottom||t.lefte.right)}class u7{constructor(n,e,i,o){this._scrollDispatcher=n,this._viewportRuler=e,this._ngZone=i,this._config=o,this._scrollSubscription=null}attach(n){this._overlayRef=n}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:i,height:o}=this._viewportRuler.getViewportSize();Bb(e,[{width:i,height:o,bottom:o,right:i,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let h7=(()=>{class t{constructor(e,i,o,r){this._scrollDispatcher=e,this._viewportRuler=i,this._ngZone=o,this.noop=()=>new ST,this.close=s=>new d7(this._scrollDispatcher,this._ngZone,this._viewportRuler,s),this.block=()=>new c7(this._viewportRuler,this._document),this.reposition=s=>new u7(this._scrollDispatcher,this._viewportRuler,this._ngZone,s),this._document=r}}return t.\u0275fac=function(e){return new(e||t)(Q(vd),Q(yr),Q(Je),Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();class Al{constructor(n){if(this.scrollStrategy=new ST,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,n){const e=Object.keys(n);for(const i of e)void 0!==n[i]&&(this[i]=n[i])}}}class p7{constructor(n,e){this.connectionPair=n,this.scrollableViewProperties=e}}class f7{constructor(n,e,i,o,r,s,a,l,u){this._portalOutlet=n,this._host=e,this._pane=i,this._config=o,this._ngZone=r,this._keyboardDispatcher=s,this._document=a,this._location=l,this._outsideClickDispatcher=u,this._backdropElement=null,this._backdropClick=new ie,this._attachments=new ie,this._detachments=new ie,this._locationChanges=k.EMPTY,this._backdropClickHandler=p=>this._backdropClick.next(p),this._backdropTransitionendHandler=p=>{this._disposeBackdrop(p.target)},this._keydownEvents=new ie,this._outsidePointerEvents=new ie,o.scrollStrategy&&(this._scrollStrategy=o.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=o.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(n){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const e=this._portalOutlet.attach(n);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const n=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),n}dispose(){var n;const e=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),null===(n=this._host)||void 0===n||n.remove(),this._previousHostParent=this._pane=this._host=null,e&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(n){n!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=n,this.hasAttached()&&(n.attach(this),this.updatePosition()))}updateSize(n){this._config=Object.assign(Object.assign({},this._config),n),this._updateElementSize()}setDirection(n){this._config=Object.assign(Object.assign({},this._config),{direction:n}),this._updateElementDirection()}addPanelClass(n){this._pane&&this._toggleClasses(this._pane,n,!0)}removePanelClass(n){this._pane&&this._toggleClasses(this._pane,n,!1)}getDirection(){const n=this._config.direction;return n?"string"==typeof n?n:n.value:"ltr"}updateScrollStrategy(n){n!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=n,this.hasAttached()&&(n.attach(this),n.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const n=this._pane.style;n.width=Qn(this._config.width),n.height=Qn(this._config.height),n.minWidth=Qn(this._config.minWidth),n.minHeight=Qn(this._config.minHeight),n.maxWidth=Qn(this._config.maxWidth),n.maxHeight=Qn(this._config.maxHeight)}_togglePointerEvents(n){this._pane.style.pointerEvents=n?"":"none"}_attachBackdrop(){const n="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(n)})}):this._backdropElement.classList.add(n)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const n=this._backdropElement;!n||(n.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{n.addEventListener("transitionend",this._backdropTransitionendHandler)}),n.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(n)},500)))}_toggleClasses(n,e,i){const o=Ah(e||[]).filter(r=>!!r);o.length&&(i?n.classList.add(...o):n.classList.remove(...o))}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const n=this._ngZone.onStable.pipe(tt(Tn(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),n.unsubscribe())})})}_disposeScrollStrategy(){const n=this._scrollStrategy;n&&(n.disable(),n.detach&&n.detach())}_disposeBackdrop(n){n&&(n.removeEventListener("click",this._backdropClickHandler),n.removeEventListener("transitionend",this._backdropTransitionendHandler),n.remove(),this._backdropElement===n&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}let Vb=(()=>{class t{constructor(e,i){this._platform=i,this._document=e}ngOnDestroy(){var e;null===(e=this._containerElement)||void 0===e||e.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const e="cdk-overlay-container";if(this._platform.isBrowser||E_()){const o=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let r=0;r{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const n=this._originRect,e=this._overlayRect,i=this._viewportRect,o=this._containerRect,r=[];let s;for(let a of this._preferredPositions){let l=this._getOriginPoint(n,o,a),u=this._getOverlayPoint(l,e,a),p=this._getOverlayFit(u,e,i,a);if(p.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(a,l);this._canFitWithFlexibleDimensions(p,u,i)?r.push({position:a,origin:l,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(l,a)}):(!s||s.overlayFit.visibleAreal&&(l=p,a=u)}return this._isPushed=!1,void this._applyPosition(a.position,a.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(s.position,s.originPoint);this._applyPosition(s.position,s.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&ba(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(xT),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const n=this._lastPosition;if(n){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const e=this._getOriginPoint(this._originRect,this._containerRect,n);this._applyPosition(n,e)}else this.apply()}withScrollableContainers(n){return this._scrollables=n,this}withPositions(n){return this._preferredPositions=n,-1===n.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(n){return this._viewportMargin=n,this}withFlexibleDimensions(n=!0){return this._hasFlexibleDimensions=n,this}withGrowAfterOpen(n=!0){return this._growAfterOpen=n,this}withPush(n=!0){return this._canPush=n,this}withLockedPosition(n=!0){return this._positionLocked=n,this}setOrigin(n){return this._origin=n,this}withDefaultOffsetX(n){return this._offsetX=n,this}withDefaultOffsetY(n){return this._offsetY=n,this}withTransformOriginOn(n){return this._transformOriginSelector=n,this}_getOriginPoint(n,e,i){let o,r;if("center"==i.originX)o=n.left+n.width/2;else{const s=this._isRtl()?n.right:n.left,a=this._isRtl()?n.left:n.right;o="start"==i.originX?s:a}return e.left<0&&(o-=e.left),r="center"==i.originY?n.top+n.height/2:"top"==i.originY?n.top:n.bottom,e.top<0&&(r-=e.top),{x:o,y:r}}_getOverlayPoint(n,e,i){let o,r;return o="center"==i.overlayX?-e.width/2:"start"===i.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==i.overlayY?-e.height/2:"top"==i.overlayY?0:-e.height,{x:n.x+o,y:n.y+r}}_getOverlayFit(n,e,i,o){const r=kT(e);let{x:s,y:a}=n,l=this._getOffset(o,"x"),u=this._getOffset(o,"y");l&&(s+=l),u&&(a+=u);let v=0-a,C=a+r.height-i.height,M=this._subtractOverflows(r.width,0-s,s+r.width-i.width),V=this._subtractOverflows(r.height,v,C),K=M*V;return{visibleArea:K,isCompletelyWithinViewport:r.width*r.height===K,fitsInViewportVertically:V===r.height,fitsInViewportHorizontally:M==r.width}}_canFitWithFlexibleDimensions(n,e,i){if(this._hasFlexibleDimensions){const o=i.bottom-e.y,r=i.right-e.x,s=TT(this._overlayRef.getConfig().minHeight),a=TT(this._overlayRef.getConfig().minWidth),u=n.fitsInViewportHorizontally||null!=a&&a<=r;return(n.fitsInViewportVertically||null!=s&&s<=o)&&u}return!1}_pushOverlayOnScreen(n,e,i){if(this._previousPushAmount&&this._positionLocked)return{x:n.x+this._previousPushAmount.x,y:n.y+this._previousPushAmount.y};const o=kT(e),r=this._viewportRect,s=Math.max(n.x+o.width-r.width,0),a=Math.max(n.y+o.height-r.height,0),l=Math.max(r.top-i.top-n.y,0),u=Math.max(r.left-i.left-n.x,0);let p=0,g=0;return p=o.width<=r.width?u||-s:n.xM&&!this._isInitialRender&&!this._growAfterOpen&&(s=n.y-M/2)}if("end"===e.overlayX&&!o||"start"===e.overlayX&&o)v=i.width-n.x+this._viewportMargin,p=n.x-this._viewportMargin;else if("start"===e.overlayX&&!o||"end"===e.overlayX&&o)g=n.x,p=i.right-n.x;else{const C=Math.min(i.right-n.x+i.left,n.x),M=this._lastBoundingBoxSize.width;p=2*C,g=n.x-C,p>M&&!this._isInitialRender&&!this._growAfterOpen&&(g=n.x-M/2)}return{top:s,left:g,bottom:a,right:v,width:p,height:r}}_setBoundingBoxStyles(n,e){const i=this._calculateBoundingBoxRect(n,e);!this._isInitialRender&&!this._growAfterOpen&&(i.height=Math.min(i.height,this._lastBoundingBoxSize.height),i.width=Math.min(i.width,this._lastBoundingBoxSize.width));const o={};if(this._hasExactPosition())o.top=o.left="0",o.bottom=o.right=o.maxHeight=o.maxWidth="",o.width=o.height="100%";else{const r=this._overlayRef.getConfig().maxHeight,s=this._overlayRef.getConfig().maxWidth;o.height=Qn(i.height),o.top=Qn(i.top),o.bottom=Qn(i.bottom),o.width=Qn(i.width),o.left=Qn(i.left),o.right=Qn(i.right),o.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",o.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",r&&(o.maxHeight=Qn(r)),s&&(o.maxWidth=Qn(s))}this._lastBoundingBoxSize=i,ba(this._boundingBox.style,o)}_resetBoundingBoxStyles(){ba(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){ba(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(n,e){const i={},o=this._hasExactPosition(),r=this._hasFlexibleDimensions,s=this._overlayRef.getConfig();if(o){const p=this._viewportRuler.getViewportScrollPosition();ba(i,this._getExactOverlayY(e,n,p)),ba(i,this._getExactOverlayX(e,n,p))}else i.position="static";let a="",l=this._getOffset(e,"x"),u=this._getOffset(e,"y");l&&(a+=`translateX(${l}px) `),u&&(a+=`translateY(${u}px)`),i.transform=a.trim(),s.maxHeight&&(o?i.maxHeight=Qn(s.maxHeight):r&&(i.maxHeight="")),s.maxWidth&&(o?i.maxWidth=Qn(s.maxWidth):r&&(i.maxWidth="")),ba(this._pane.style,i)}_getExactOverlayY(n,e,i){let o={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,n);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,i)),"bottom"===n.overlayY?o.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":o.top=Qn(r.y),o}_getExactOverlayX(n,e,i){let s,o={left:"",right:""},r=this._getOverlayPoint(e,this._overlayRect,n);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,i)),s=this._isRtl()?"end"===n.overlayX?"left":"right":"end"===n.overlayX?"right":"left","right"===s?o.right=this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)+"px":o.left=Qn(r.x),o}_getScrollVisibility(){const n=this._getOriginRect(),e=this._pane.getBoundingClientRect(),i=this._scrollables.map(o=>o.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:MT(n,i),isOriginOutsideView:Bb(n,i),isOverlayClipped:MT(e,i),isOverlayOutsideView:Bb(e,i)}}_subtractOverflows(n,...e){return e.reduce((i,o)=>i-Math.max(o,0),n)}_getNarrowedViewportRect(){const n=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,i=this._viewportRuler.getViewportScrollPosition();return{top:i.top+this._viewportMargin,left:i.left+this._viewportMargin,right:i.left+n-this._viewportMargin,bottom:i.top+e-this._viewportMargin,width:n-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(n,e){return"x"===e?null==n.offsetX?this._offsetX:n.offsetX:null==n.offsetY?this._offsetY:n.offsetY}_validatePositions(){}_addPanelClasses(n){this._pane&&Ah(n).forEach(e=>{""!==e&&-1===this._appliedPanelClasses.indexOf(e)&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(n=>{this._pane.classList.remove(n)}),this._appliedPanelClasses=[])}_getOriginRect(){const n=this._origin;if(n instanceof He)return n.nativeElement.getBoundingClientRect();if(n instanceof Element)return n.getBoundingClientRect();const e=n.width||0,i=n.height||0;return{top:n.y,bottom:n.y+i,left:n.x,right:n.x+e,height:i,width:e}}}function ba(t,n){for(let e in n)n.hasOwnProperty(e)&&(t[e]=n[e]);return t}function TT(t){if("number"!=typeof t&&null!=t){const[n,e]=t.split(m7);return e&&"px"!==e?null:parseFloat(n)}return t||null}function kT(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}const ET="cdk-global-overlay-wrapper";class _7{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(n){const e=n.getConfig();this._overlayRef=n,this._width&&!e.width&&n.updateSize({width:this._width}),this._height&&!e.height&&n.updateSize({height:this._height}),n.hostElement.classList.add(ET),this._isDisposed=!1}top(n=""){return this._bottomOffset="",this._topOffset=n,this._alignItems="flex-start",this}left(n=""){return this._rightOffset="",this._leftOffset=n,this._justifyContent="flex-start",this}bottom(n=""){return this._topOffset="",this._bottomOffset=n,this._alignItems="flex-end",this}right(n=""){return this._leftOffset="",this._rightOffset=n,this._justifyContent="flex-end",this}width(n=""){return this._overlayRef?this._overlayRef.updateSize({width:n}):this._width=n,this}height(n=""){return this._overlayRef?this._overlayRef.updateSize({height:n}):this._height=n,this}centerHorizontally(n=""){return this.left(n),this._justifyContent="center",this}centerVertically(n=""){return this.top(n),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const n=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,i=this._overlayRef.getConfig(),{width:o,height:r,maxWidth:s,maxHeight:a}=i,l=!("100%"!==o&&"100vw"!==o||s&&"100%"!==s&&"100vw"!==s),u=!("100%"!==r&&"100vh"!==r||a&&"100%"!==a&&"100vh"!==a);n.position=this._cssPosition,n.marginLeft=l?"0":this._leftOffset,n.marginTop=u?"0":this._topOffset,n.marginBottom=this._bottomOffset,n.marginRight=this._rightOffset,l?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=u?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const n=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,i=e.style;e.classList.remove(ET),i.justifyContent=i.alignItems=n.marginTop=n.marginBottom=n.marginLeft=n.marginRight=n.position="",this._overlayRef=null,this._isDisposed=!0}}let b7=(()=>{class t{constructor(e,i,o,r){this._viewportRuler=e,this._document=i,this._platform=o,this._overlayContainer=r}global(){return new _7}flexibleConnectedTo(e){return new g7(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.\u0275fac=function(e){return new(e||t)(Q(yr),Q(ht),Q(dn),Q(Vb))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),IT=(()=>{class t{constructor(e){this._attachedOverlays=[],this._document=e}ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){const i=this._attachedOverlays.indexOf(e);i>-1&&this._attachedOverlays.splice(i,1),0===this._attachedOverlays.length&&this.detach()}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),v7=(()=>{class t extends IT{constructor(e,i){super(e),this._ngZone=i,this._keydownListener=o=>{const r=this._attachedOverlays;for(let s=r.length-1;s>-1;s--)if(r[s]._keydownEvents.observers.length>0){const a=r[s]._keydownEvents;this._ngZone?this._ngZone.run(()=>a.next(o)):a.next(o);break}}}add(e){super.add(e),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(Je,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),y7=(()=>{class t extends IT{constructor(e,i,o){super(e),this._platform=i,this._ngZone=o,this._cursorStyleIsSet=!1,this._pointerDownListener=r=>{this._pointerDownEventTarget=Ds(r)},this._clickListener=r=>{const s=Ds(r),a="click"===r.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:s;this._pointerDownEventTarget=null;const l=this._attachedOverlays.slice();for(let u=l.length-1;u>-1;u--){const p=l[u];if(p._outsidePointerEvents.observers.length<1||!p.hasAttached())continue;if(p.overlayElement.contains(s)||p.overlayElement.contains(a))break;const g=p._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>g.next(r)):g.next(r)}}}add(e){if(super.add(e),!this._isAttached){const i=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(i)):this._addEventListeners(i),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=i.style.cursor,i.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const e=this._document.body;e.removeEventListener("pointerdown",this._pointerDownListener,!0),e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(e){e.addEventListener("pointerdown",this._pointerDownListener,!0),e.addEventListener("click",this._clickListener,!0),e.addEventListener("auxclick",this._clickListener,!0),e.addEventListener("contextmenu",this._clickListener,!0)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(dn),Q(Je,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),C7=0,Qi=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v){this.scrollStrategies=e,this._overlayContainer=i,this._componentFactoryResolver=o,this._positionBuilder=r,this._keyboardDispatcher=s,this._injector=a,this._ngZone=l,this._document=u,this._directionality=p,this._location=g,this._outsideClickDispatcher=v}create(e){const i=this._createHostElement(),o=this._createPaneElement(i),r=this._createPortalOutlet(o),s=new Al(e);return s.direction=s.direction||this._directionality.value,new f7(r,i,o,s,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}position(){return this._positionBuilder}_createPaneElement(e){const i=this._document.createElement("div");return i.id="cdk-overlay-"+C7++,i.classList.add("cdk-overlay-pane"),e.appendChild(i),i}_createHostElement(){const e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}_createPortalOutlet(e){return this._appRef||(this._appRef=this._injector.get(zu)),new s7(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Q(h7),Q(Vb),Q(gs),Q(b7),Q(v7),Q(pn),Q(Je),Q(ht),Q(ai),Q(zc),Q(y7))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const w7=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],OT=new _e("cdk-connected-overlay-scroll-strategy");let AT=(()=>{class t{constructor(e){this.elementRef=e}}return t.\u0275fac=function(e){return new(e||t)(b(He))},t.\u0275dir=oe({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t})(),PT=(()=>{class t{constructor(e,i,o,r,s){this._overlay=e,this._dir=s,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=k.EMPTY,this._attachSubscription=k.EMPTY,this._detachSubscription=k.EMPTY,this._positionSubscription=k.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Pe,this.positionChange=new Pe,this.attach=new Pe,this.detach=new Pe,this.overlayKeydown=new Pe,this.overlayOutsideClick=new Pe,this._templatePortal=new Wr(i,o),this._scrollStrategyFactory=r,this.scrollStrategy=this._scrollStrategyFactory()}get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(e){this._hasBackdrop=Xe(e)}get lockPosition(){return this._lockPosition}set lockPosition(e){this._lockPosition=Xe(e)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(e){this._flexibleDimensions=Xe(e)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(e){this._growAfterOpen=Xe(e)}get push(){return this._push}set push(e){this._push=Xe(e)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=w7);const e=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(i=>{this.overlayKeydown.next(i),27===i.keyCode&&!this.disableClose&&!fi(i)&&(i.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(i=>{this.overlayOutsideClick.next(i)})}_buildConfig(){const e=this._position=this.positionStrategy||this._createPositionStrategy(),i=new Al({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(i.width=this.width),(this.height||0===this.height)&&(i.height=this.height),(this.minWidth||0===this.minWidth)&&(i.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(i.minHeight=this.minHeight),this.backdropClass&&(i.backdropClass=this.backdropClass),this.panelClass&&(i.panelClass=this.panelClass),i}_updatePositionStrategy(e){const i=this.positions.map(o=>({originX:o.originX,originY:o.originY,overlayX:o.overlayX,overlayY:o.overlayY,offsetX:o.offsetX||this.offsetX,offsetY:o.offsetY||this.offsetY,panelClass:o.panelClass||void 0}));return e.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(i).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const e=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(e),e}_getFlexibleConnectedPositionStrategyOrigin(){return this.origin instanceof AT?this.origin.elementRef:this.origin}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(e=>{this.backdropClick.emit(e)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function l7(t,n=!1){return nt((e,i)=>{let o=0;e.subscribe(st(i,r=>{const s=t(r,o++);(s||n)&&i.next(r),!s&&i.complete()}))})}(()=>this.positionChange.observers.length>0)).subscribe(e=>{this.positionChange.emit(e),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(Qi),b(rn),b(sn),b(OT),b(ai,8))},t.\u0275dir=oe({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[nn]}),t})();const S7={provide:OT,deps:[Qi],useFactory:function D7(t){return()=>t.scrollStrategies.reposition()}};let Pl=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[Qi,S7],imports:[[Yc,Cd,Nb],Nb]}),t})();function wd(t){return new Ue(n=>{yi(t()).subscribe(n)})}function Li(t,n){return nt((e,i)=>{let o=null,r=0,s=!1;const a=()=>s&&!o&&i.complete();e.subscribe(st(i,l=>{null==o||o.unsubscribe();let u=0;const p=r++;yi(t(l,p)).subscribe(o=st(i,g=>i.next(n?n(l,g,p,u++):g),()=>{o=null,a()}))},()=>{s=!0,a()}))})}const M7=["trigger"],x7=["panel"];function T7(t,n){if(1&t&&(d(0,"span",8),h(1),c()),2&t){const e=D();f(1),Ee(e.placeholder)}}function k7(t,n){if(1&t&&(d(0,"span",12),h(1),c()),2&t){const e=D(2);f(1),Ee(e.triggerValue)}}function E7(t,n){1&t&&ct(0,0,["*ngSwitchCase","true"])}function I7(t,n){1&t&&(d(0,"span",9),_(1,k7,2,1,"span",10),_(2,E7,1,0,"ng-content",11),c()),2&t&&(m("ngSwitch",!!D().customTrigger),f(2),m("ngSwitchCase",!0))}function O7(t,n){if(1&t){const e=pe();d(0,"div",13)(1,"div",14,15),N("@transformPanel.done",function(o){return se(e),D()._panelDoneAnimatingStream.next(o.toState)})("keydown",function(o){return se(e),D()._handleKeydown(o)}),ct(3,1),c()()}if(2&t){const e=D();m("@transformPanelWrap",void 0),f(1),N1("mat-select-panel ",e._getPanelTheme(),""),pi("transform-origin",e._transformOrigin)("font-size",e._triggerFontSize,"px"),m("ngClass",e.panelClass)("@transformPanel",e.multiple?"showing-multiple":"showing"),et("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}const A7=[[["mat-select-trigger"]],"*"],P7=["mat-select-trigger","*"],RT={transformPanelWrap:Oo("transformPanelWrap",[Kn("* => void",e_("@transformPanel",[Jg()],{optional:!0}))]),transformPanel:Oo("transformPanel",[jn("void",Vt({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),jn("showing",Vt({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),jn("showing-multiple",Vt({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),Kn("void => *",si("120ms cubic-bezier(0, 0, 0.2, 1)")),Kn("* => void",si("100ms 25ms linear",Vt({opacity:0})))])};let FT=0;const LT=new _e("mat-select-scroll-strategy"),L7=new _e("MAT_SELECT_CONFIG"),B7={provide:LT,deps:[Qi],useFactory:function N7(t){return()=>t.scrollStrategies.reposition()}};class V7{constructor(n,e){this.source=n,this.value=e}}const j7=vr(Ml(pa(z_(class{constructor(t,n,e,i,o){this._elementRef=t,this._defaultErrorStateMatcher=n,this._parentForm=e,this._parentFormGroup=i,this.ngControl=o}})))),H7=new _e("MatSelectTrigger");let U7=(()=>{class t extends j7{constructor(e,i,o,r,s,a,l,u,p,g,v,C,M,V){var K,Y,ee;super(s,r,l,u,g),this._viewportRuler=e,this._changeDetectorRef=i,this._ngZone=o,this._dir=a,this._parentFormField=p,this._liveAnnouncer=M,this._defaultOptions=V,this._panelOpen=!1,this._compareWith=(ke,Ze)=>ke===Ze,this._uid="mat-select-"+FT++,this._triggerAriaLabelledBy=null,this._destroy=new ie,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+FT++,this._panelDoneAnimatingStream=new ie,this._overlayPanelClass=(null===(K=this._defaultOptions)||void 0===K?void 0:K.overlayPanelClass)||"",this._focused=!1,this.controlType="mat-select",this._multiple=!1,this._disableOptionCentering=null!==(ee=null===(Y=this._defaultOptions)||void 0===Y?void 0:Y.disableOptionCentering)&&void 0!==ee&&ee,this.ariaLabel="",this.optionSelectionChanges=wd(()=>{const ke=this.options;return ke?ke.changes.pipe(Nn(ke),Li(()=>Tn(...ke.map(Ze=>Ze.onSelectionChange)))):this._ngZone.onStable.pipe(Ot(1),Li(()=>this.optionSelectionChanges))}),this.openedChange=new Pe,this._openedStream=this.openedChange.pipe(It(ke=>ke),je(()=>{})),this._closedStream=this.openedChange.pipe(It(ke=>!ke),je(()=>{})),this.selectionChange=new Pe,this.valueChange=new Pe,this.ngControl&&(this.ngControl.valueAccessor=this),null!=(null==V?void 0:V.typeaheadDebounceInterval)&&(this._typeaheadDebounceInterval=V.typeaheadDebounceInterval),this._scrollStrategyFactory=C,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(v)||0,this.id=this.id}get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}get required(){var e,i,o,r;return null!==(r=null!==(e=this._required)&&void 0!==e?e:null===(o=null===(i=this.ngControl)||void 0===i?void 0:i.control)||void 0===o?void 0:o.hasValidator(de.required))&&void 0!==r&&r}set required(e){this._required=Xe(e),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(e){this._multiple=Xe(e)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(e){this._disableOptionCentering=Xe(e)}get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(e){this._typeaheadDebounceInterval=Zn(e)}get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}ngOnInit(){this._selectionModel=new Tl(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(nd(),tt(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe(tt(this._destroy)).subscribe(e=>{e.added.forEach(i=>i.select()),e.removed.forEach(i=>i.deselect())}),this.options.changes.pipe(Nn(null),tt(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const e=this._getTriggerAriaLabelledby(),i=this.ngControl;if(e!==this._triggerAriaLabelledBy){const o=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?o.setAttribute("aria-labelledby",e):o.removeAttribute("aria-labelledby")}i&&(this._previousControl!==i.control&&(void 0!==this._previousControl&&null!==i.disabled&&i.disabled!==this.disabled&&(this.disabled=i.disabled),this._previousControl=i.control),this.updateErrorState())}ngOnChanges(e){e.disabled&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){var e,i;return this.multiple?(null===(e=this._selectionModel)||void 0===e?void 0:e.selected)||[]:null===(i=this._selectionModel)||void 0===i?void 0:i.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const e=this._selectionModel.selected.map(i=>i.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){const i=e.keyCode,o=40===i||38===i||37===i||39===i,r=13===i||32===i,s=this._keyManager;if(!s.isTyping()&&r&&!fi(e)||(this.multiple||e.altKey)&&o)e.preventDefault(),this.open();else if(!this.multiple){const a=this.selected;s.onKeydown(e);const l=this.selected;l&&a!==l&&this._liveAnnouncer.announce(l.viewValue,1e4)}}_handleOpenKeydown(e){const i=this._keyManager,o=e.keyCode,r=40===o||38===o,s=i.isTyping();if(r&&e.altKey)e.preventDefault(),this.close();else if(s||13!==o&&32!==o||!i.activeItem||fi(e))if(!s&&this._multiple&&65===o&&e.ctrlKey){e.preventDefault();const a=this.options.some(l=>!l.disabled&&!l.selected);this.options.forEach(l=>{l.disabled||(a?l.select():l.deselect())})}else{const a=i.activeItemIndex;i.onKeydown(e),this._multiple&&r&&e.shiftKey&&i.activeItem&&i.activeItemIndex!==a&&i.activeItem._selectViaInteraction()}else e.preventDefault(),i.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Ot(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this._selectionModel.selected.forEach(i=>i.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(i=>this._selectOptionByValue(i)),this._sortValues();else{const i=this._selectOptionByValue(e);i?this._keyManager.updateActiveItem(i):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){const i=this.options.find(o=>{if(this._selectionModel.isSelected(o))return!1;try{return null!=o.value&&this._compareWith(o.value,e)}catch(r){return!1}});return i&&this._selectionModel.select(i),i}_assignValue(e){return!!(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e,!0)}_initKeyManager(){this._keyManager=new gM(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(tt(this._destroy)).subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.pipe(tt(this._destroy)).subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const e=Tn(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(tt(e)).subscribe(i=>{this._onSelect(i.source,i.isUserInput),i.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Tn(...this.options.map(i=>i._stateChanges)).pipe(tt(e)).subscribe(()=>{this._changeDetectorRef.markForCheck(),this.stateChanges.next()})}_onSelect(e,i){const o=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(o!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),i&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),i&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),o!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const e=this.options.toArray();this._selectionModel.sort((i,o)=>this.sortComparator?this.sortComparator(i,o,e):e.indexOf(i)-e.indexOf(o)),this.stateChanges.next()}}_propagateChanges(e){let i=null;i=this.multiple?this.selected.map(o=>o.value):this.selected?this.selected.value:e,this._value=i,this.valueChange.emit(i),this._onChange(i),this.selectionChange.emit(this._getChangeEvent(i)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}_canOpen(){var e;return!this._panelOpen&&!this.disabled&&(null===(e=this.options)||void 0===e?void 0:e.length)>0}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){var e;if(this.ariaLabel)return null;const i=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();return this.ariaLabelledby?(i?i+" ":"")+this.ariaLabelledby:i}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){var e;if(this.ariaLabel)return null;const i=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();let o=(i?i+" ":"")+this._valueId;return this.ariaLabelledby&&(o+=" "+this.ariaLabelledby),o}_panelDoneAnimating(e){this.openedChange.emit(e)}setDescribedByIds(e){this._ariaDescribedby=e.join(" ")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return t.\u0275fac=function(e){return new(e||t)(b(yr),b(At),b(Je),b(od),b(He),b(ai,8),b(ks,8),b(Sn,8),b(ip,8),b(rr,10),Di("tabindex"),b(LT),b(H_),b(L7,8))},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&(Tt(M7,5),Tt(x7,5),Tt(PT,5)),2&e){let o;Fe(o=Ne())&&(i.trigger=o.first),Fe(o=Ne())&&(i.panel=o.first),Fe(o=Ne())&&(i._overlayDir=o.first)}},inputs:{panelClass:"panelClass",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:"typeaheadDebounceInterval",sortComparator:"sortComparator",id:"id"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[Ce,nn]}),t})(),Yi=(()=>{class t extends U7{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(e,i,o){const r=this._getItemHeight();return Math.min(Math.max(0,r*e-i+r/2),o)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe(tt(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(e){const i=K_(e,this.options,this.optionGroups),o=this._getItemHeight();this.panel.nativeElement.scrollTop=0===e&&1===i?0:RM((e+i)*o,o,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(e){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(e)}_getChangeEvent(e){return new V7(this,e)}_calculateOverlayOffsetX(){const e=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),i=this._viewportRuler.getViewportSize(),o=this._isRtl(),r=this.multiple?56:32;let s;if(this.multiple)s=40;else if(this.disableOptionCentering)s=16;else{let u=this._selectionModel.selected[0]||this.options.first;s=u&&u.group?32:16}o||(s*=-1);const a=0-(e.left+s-(o?r:0)),l=e.right+s-i.width+(o?0:r);a>0?s+=a+8:l>0&&(s-=l+8),this._overlayDir.offsetX=Math.round(s),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(e,i,o){const r=this._getItemHeight(),s=(r-this._triggerRect.height)/2,a=Math.floor(256/r);let l;return this.disableOptionCentering?0:(l=0===this._scrollTop?e*r:this._scrollTop===o?(e-(this._getItemCount()-a))*r+(r-(this._getItemCount()*r-256)%r):i-r/2,Math.round(-1*l-s))}_checkOverlayWithinViewport(e){const i=this._getItemHeight(),o=this._viewportRuler.getViewportSize(),r=this._triggerRect.top-8,s=o.height-this._triggerRect.bottom-8,a=Math.abs(this._offsetY),u=Math.min(this._getItemCount()*i,256)-a-this._triggerRect.height;u>s?this._adjustPanelUp(u,s):a>r?this._adjustPanelDown(a,r,e):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(e,i){const o=Math.round(e-i);this._scrollTop-=o,this._offsetY-=o,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(e,i,o){const r=Math.round(e-i);if(this._scrollTop+=r,this._offsetY+=r,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=o)return this._scrollTop=o,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const e=this._getItemHeight(),i=this._getItemCount(),o=Math.min(i*e,256),s=i*e-o;let a;a=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),a+=K_(a,this.options,this.optionGroups);const l=o/2;this._scrollTop=this._calculateOverlayScroll(a,l,s),this._offsetY=this._calculateOverlayOffsetY(a,l,s),this._checkOverlayWithinViewport(s)}_getOriginBasedOnOption(){const e=this._getItemHeight(),i=(e-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-i+e/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-select"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,H7,5),mt(o,_i,5),mt(o,q_,5)),2&e){let r;Fe(r=Ne())&&(i.customTrigger=r.first),Fe(r=Ne())&&(i.options=r),Fe(r=Ne())&&(i.optionGroups=r)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(e,i){1&e&&N("keydown",function(r){return i._handleKeydown(r)})("focus",function(){return i._onFocus()})("blur",function(){return i._onBlur()}),2&e&&(et("id",i.id)("tabindex",i.tabIndex)("aria-controls",i.panelOpen?i.id+"-panel":null)("aria-expanded",i.panelOpen)("aria-label",i.ariaLabel||null)("aria-required",i.required.toString())("aria-disabled",i.disabled.toString())("aria-invalid",i.errorState)("aria-describedby",i._ariaDescribedby||null)("aria-activedescendant",i._getAriaActiveDescendant()),rt("mat-select-disabled",i.disabled)("mat-select-invalid",i.errorState)("mat-select-required",i.required)("mat-select-empty",i.empty)("mat-select-multiple",i.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[ze([{provide:gd,useExisting:t},{provide:W_,useExisting:t}]),Ce],ngContentSelectors:P7,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(e,i){if(1&e&&(Jt(A7),d(0,"div",0,1),N("click",function(){return i.toggle()}),d(3,"div",2),_(4,T7,2,1,"span",3),_(5,I7,3,2,"span",4),c(),d(6,"div",5),E(7,"div",6),c()(),_(8,O7,4,14,"ng-template",7),N("backdropClick",function(){return i.close()})("attach",function(){return i._onAttached()})("detach",function(){return i.close()})),2&e){const o=$t(1);et("aria-owns",i.panelOpen?i.id+"-panel":null),f(3),m("ngSwitch",i.empty),et("id",i._valueId),f(1),m("ngSwitchCase",!0),f(1),m("ngSwitchCase",!1),f(3),m("cdkConnectedOverlayPanelClass",i._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",i._scrollStrategy)("cdkConnectedOverlayOrigin",o)("cdkConnectedOverlayOpen",i.panelOpen)("cdkConnectedOverlayPositions",i._positions)("cdkConnectedOverlayMinWidth",null==i._triggerRect?null:i._triggerRect.width)("cdkConnectedOverlayOffsetY",i._offsetY)}},directives:[AT,vl,nh,KD,PT,nr],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{height:16px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-form-field.mat-focused .mat-select-arrow{transform:translateX(0)}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}\n'],encapsulation:2,data:{animation:[RT.transformPanelWrap,RT.transformPanel]},changeDetection:0}),t})(),BT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[B7],imports:[[qi,Pl,Bh,ft],Is,_d,Bh,ft]}),t})();function jb(t){return je(()=>t)}function VT(t,n){return n?e=>id(n.pipe(Ot(1),function z7(){return nt((t,n)=>{t.subscribe(st(n,S))})}()),e.pipe(VT(t))):$n((e,i)=>yi(t(e,i)).pipe(Ot(1),jb(e)))}function Hb(t,n=td){const e=op(t,n);return VT(()=>e)}const $7=["mat-menu-item",""];function G7(t,n){1&t&&(hn(),d(0,"svg",2),E(1,"polygon",3),c())}const jT=["*"];function W7(t,n){if(1&t){const e=pe();d(0,"div",0),N("keydown",function(o){return se(e),D()._handleKeydown(o)})("click",function(){return se(e),D().closed.emit("click")})("@transformMenu.start",function(o){return se(e),D()._onAnimationStart(o)})("@transformMenu.done",function(o){return se(e),D()._onAnimationDone(o)}),d(1,"div",1),ct(2),c()()}if(2&t){const e=D();m("id",e.panelId)("ngClass",e._classList)("@transformMenu",e._panelAnimationState),et("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}const cp={transformMenu:Oo("transformMenu",[jn("void",Vt({opacity:0,transform:"scale(0.8)"})),Kn("void => enter",si("120ms cubic-bezier(0, 0, 0.2, 1)",Vt({opacity:1,transform:"scale(1)"}))),Kn("* => void",si("100ms 25ms linear",Vt({opacity:0})))]),fadeInItems:Oo("fadeInItems",[jn("showing",Vt({opacity:1})),Kn("void => *",[Vt({opacity:0}),si("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},q7=new _e("MatMenuContent"),Ub=new _e("MAT_MENU_PANEL"),K7=vr(pa(class{}));let qr=(()=>{class t extends K7{constructor(e,i,o,r,s){var a;super(),this._elementRef=e,this._document=i,this._focusMonitor=o,this._parentMenu=r,this._changeDetectorRef=s,this.role="menuitem",this._hovered=new ie,this._focused=new ie,this._highlighted=!1,this._triggersSubmenu=!1,null===(a=null==r?void 0:r.addItem)||void 0===a||a.call(r,this)}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){var e;const i=this._elementRef.nativeElement.cloneNode(!0),o=i.querySelectorAll("mat-icon, .material-icons");for(let r=0;r{class t{constructor(e,i,o,r){this._elementRef=e,this._ngZone=i,this._defaultOptions=o,this._changeDetectorRef=r,this._xPosition=this._defaultOptions.xPosition,this._yPosition=this._defaultOptions.yPosition,this._directDescendantItems=new vs,this._tabSubscription=k.EMPTY,this._classList={},this._panelAnimationState="void",this._animationDone=new ie,this.overlayPanelClass=this._defaultOptions.overlayPanelClass||"",this.backdropClass=this._defaultOptions.backdropClass,this._overlapTrigger=this._defaultOptions.overlapTrigger,this._hasBackdrop=this._defaultOptions.hasBackdrop,this.closed=new Pe,this.close=this.closed,this.panelId="mat-menu-panel-"+Q7++}get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}get overlapTrigger(){return this._overlapTrigger}set overlapTrigger(e){this._overlapTrigger=Xe(e)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(e){this._hasBackdrop=Xe(e)}set panelClass(e){const i=this._previousPanelClass;i&&i.length&&i.split(" ").forEach(o=>{this._classList[o]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(o=>{this._classList[o]=!0}),this._elementRef.nativeElement.className="")}get classList(){return this.panelClass}set classList(e){this.panelClass=e}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new Nh(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._tabSubscription=this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(Nn(this._directDescendantItems),Li(e=>Tn(...e.map(i=>i._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{var i;const o=this._keyManager;if("enter"===this._panelAnimationState&&(null===(i=o.activeItem)||void 0===i?void 0:i._hasFocus())){const r=e.toArray(),s=Math.max(0,Math.min(r.length-1,o.activeItemIndex||0));r[s]&&!r[s].disabled?o.setActiveItem(s):o.setNextItemActive()}})}ngOnDestroy(){this._directDescendantItems.destroy(),this._tabSubscription.unsubscribe(),this.closed.complete()}_hovered(){return this._directDescendantItems.changes.pipe(Nn(this._directDescendantItems),Li(i=>Tn(...i.map(o=>o._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){const i=e.keyCode,o=this._keyManager;switch(i){case 27:fi(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&"ltr"===this.direction&&this.closed.emit("keydown");break;case 39:this.parentMenu&&"rtl"===this.direction&&this.closed.emit("keydown");break;default:return(38===i||40===i)&&o.setFocusOrigin("keyboard"),void o.onKeydown(e)}e.stopPropagation()}focusFirstItem(e="program"){this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{let i=null;if(this._directDescendantItems.length&&(i=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),!i||!i.contains(document.activeElement)){const o=this._keyManager;o.setFocusOrigin(e).setFirstItemActive(),!o.activeItem&&i&&i.focus()}})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){const i=Math.min(this._baseElevation+e,24),o=`${this._elevationPrefix}${i}`,r=Object.keys(this._classList).find(s=>s.startsWith(this._elevationPrefix));(!r||r===this._previousElevation)&&(this._previousElevation&&(this._classList[this._previousElevation]=!1),this._classList[o]=!0,this._previousElevation=o)}setPositionClasses(e=this.xPosition,i=this.yPosition){var o;const r=this._classList;r["mat-menu-before"]="before"===e,r["mat-menu-after"]="after"===e,r["mat-menu-above"]="above"===i,r["mat-menu-below"]="below"===i,null===(o=this._changeDetectorRef)||void 0===o||o.markForCheck()}_startAnimation(){this._panelAnimationState="enter"}_resetAnimation(){this._panelAnimationState="void"}_onAnimationDone(e){this._animationDone.next(e),this._isAnimating=!1}_onAnimationStart(e){this._isAnimating=!0,"enter"===e.toState&&0===this._keyManager.activeItemIndex&&(e.element.scrollTop=0)}_updateDirectDescendants(){this._allItems.changes.pipe(Nn(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(i=>i._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(HT),b(At))},t.\u0275dir=oe({type:t,contentQueries:function(e,i,o){if(1&e&&(mt(o,q7,5),mt(o,qr,5),mt(o,qr,4)),2&e){let r;Fe(r=Ne())&&(i.lazyContent=r.first),Fe(r=Ne())&&(i._allItems=r),Fe(r=Ne())&&(i.items=r)}},viewQuery:function(e,i){if(1&e&&Tt(rn,5),2&e){let o;Fe(o=Ne())&&(i.templateRef=o.first)}},inputs:{backdropClass:"backdropClass",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:"overlapTrigger",hasBackdrop:"hasBackdrop",panelClass:["class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"}}),t})(),Fl=(()=>{class t extends Sd{constructor(e,i,o,r){super(e,i,o,r),this._elevationPrefix="mat-elevation-z",this._baseElevation=4}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(HT),b(At))},t.\u0275cmp=Ae({type:t,selectors:[["mat-menu"]],hostVars:3,hostBindings:function(e,i){2&e&&et("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},exportAs:["matMenu"],features:[ze([{provide:Ub,useExisting:t}]),Ce],ngContentSelectors:jT,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-menu-panel",3,"id","ngClass","keydown","click"],[1,"mat-menu-content"]],template:function(e,i){1&e&&(Jt(),_(0,W7,3,6,"ng-template"))},directives:[nr],styles:['mat-menu{display:none}.mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]::before{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.cdk-high-contrast-active .mat-menu-item{margin-top:1px}.cdk-high-contrast-active .mat-menu-item.cdk-program-focused,.cdk-high-contrast-active .mat-menu-item.cdk-keyboard-focused,.cdk-high-contrast-active .mat-menu-item-highlighted{outline:dotted 1px}.mat-menu-item-submenu-trigger{padding-right:32px}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}.mat-menu-submenu-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);width:5px;height:10px;fill:currentColor}[dir=rtl] .mat-menu-submenu-icon{right:auto;left:16px;transform:translateY(-50%) scaleX(-1)}.cdk-high-contrast-active .mat-menu-submenu-icon{fill:CanvasText}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\n'],encapsulation:2,data:{animation:[cp.transformMenu,cp.fadeInItems]},changeDetection:0}),t})();const UT=new _e("mat-menu-scroll-strategy"),X7={provide:UT,deps:[Qi],useFactory:function Y7(t){return()=>t.scrollStrategies.reposition()}},$T=ca({passive:!0});let J7=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p){this._overlay=e,this._element=i,this._viewContainerRef=o,this._menuItemInstance=a,this._dir=l,this._focusMonitor=u,this._ngZone=p,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=k.EMPTY,this._hoverSubscription=k.EMPTY,this._menuCloseSubscription=k.EMPTY,this._handleTouchStart=g=>{j_(g)||(this._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new Pe,this.onMenuOpen=this.menuOpened,this.menuClosed=new Pe,this.onMenuClose=this.menuClosed,this._scrollStrategy=r,this._parentMaterialMenu=s instanceof Sd?s:void 0,i.nativeElement.addEventListener("touchstart",this._handleTouchStart,$T),a&&(a._triggersSubmenu=this.triggersSubmenu())}get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){e!==this._menu&&(this._menu=e,this._menuCloseSubscription.unsubscribe(),e&&(this._menuCloseSubscription=e.close.subscribe(i=>{this._destroyMenu(i),("click"===i||"tab"===i)&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(i)})))}ngAfterContentInit(){this._checkMenu(),this._handleHover()}ngOnDestroy(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,$T),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}triggersSubmenu(){return!(!this._menuItemInstance||!this._parentMaterialMenu)}toggleMenu(){return this._menuOpen?this.closeMenu():this.openMenu()}openMenu(){if(this._menuOpen)return;this._checkMenu();const e=this._createOverlay(),i=e.getConfig(),o=i.positionStrategy;this._setPosition(o),i.hasBackdrop=null==this.menu.hasBackdrop?!this.triggersSubmenu():this.menu.hasBackdrop,e.attach(this._getPortal()),this.menu.lazyContent&&this.menu.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this.closeMenu()),this._initMenu(),this.menu instanceof Sd&&(this.menu._startAnimation(),this.menu._directDescendantItems.changes.pipe(tt(this.menu.close)).subscribe(()=>{o.withLockedPosition(!1).reapplyLastPosition(),o.withLockedPosition(!0)}))}closeMenu(){this.menu.close.emit()}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}updatePosition(){var e;null===(e=this._overlayRef)||void 0===e||e.updatePosition()}_destroyMenu(e){if(!this._overlayRef||!this.menuOpen)return;const i=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===e||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,i instanceof Sd?(i._resetAnimation(),i.lazyContent?i._animationDone.pipe(It(o=>"void"===o.toState),Ot(1),tt(i.lazyContent._attached)).subscribe({next:()=>i.lazyContent.detach(),complete:()=>this._setIsMenuOpen(!1)}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),i.lazyContent&&i.lazyContent.detach())}_initMenu(){this.menu.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,this.menu.direction=this.dir,this._setMenuElevation(),this.menu.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}_setMenuElevation(){if(this.menu.setElevation){let e=0,i=this.menu.parentMenu;for(;i;)e++,i=i.parentMenu;this.menu.setElevation(e)}}_setIsMenuOpen(e){this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(e)}_checkMenu(){}_createOverlay(){if(!this._overlayRef){const e=this._getOverlayConfig();this._subscribeToPositions(e.positionStrategy),this._overlayRef=this._overlay.create(e),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}_getOverlayConfig(){return new Al({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:this.menu.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this.menu.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}_subscribeToPositions(e){this.menu.setPositionClasses&&e.positionChanges.subscribe(i=>{const o="start"===i.connectionPair.overlayX?"after":"before",r="top"===i.connectionPair.overlayY?"below":"above";this._ngZone?this._ngZone.run(()=>this.menu.setPositionClasses(o,r)):this.menu.setPositionClasses(o,r)})}_setPosition(e){let[i,o]="before"===this.menu.xPosition?["end","start"]:["start","end"],[r,s]="above"===this.menu.yPosition?["bottom","top"]:["top","bottom"],[a,l]=[r,s],[u,p]=[i,o],g=0;this.triggersSubmenu()?(p=i="before"===this.menu.xPosition?"start":"end",o=u="end"===i?"start":"end",g="bottom"===r?8:-8):this.menu.overlapTrigger||(a="top"===r?"bottom":"top",l="top"===s?"bottom":"top"),e.withPositions([{originX:i,originY:a,overlayX:u,overlayY:r,offsetY:g},{originX:o,originY:a,overlayX:p,overlayY:r,offsetY:g},{originX:i,originY:l,overlayX:u,overlayY:s,offsetY:-g},{originX:o,originY:l,overlayX:p,overlayY:s,offsetY:-g}])}_menuClosingActions(){const e=this._overlayRef.backdropClick(),i=this._overlayRef.detachments();return Tn(e,this._parentMaterialMenu?this._parentMaterialMenu.closed:We(),this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(It(s=>s!==this._menuItemInstance),It(()=>this._menuOpen)):We(),i)}_handleMousedown(e){V_(e)||(this._openedBy=0===e.button?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){const i=e.keyCode;(13===i||32===i)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(39===i&&"ltr"===this.dir||37===i&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe(It(e=>e===this._menuItemInstance&&!e.disabled),Hb(0,Fb)).subscribe(()=>{this._openedBy="mouse",this.menu instanceof Sd&&this.menu._isAnimating?this.menu._animationDone.pipe(Ot(1),Hb(0,Fb),tt(this._parentMaterialMenu._hovered())).subscribe(()=>this.openMenu()):this.openMenu()}))}_getPortal(){return(!this._portal||this._portal.templateRef!==this.menu.templateRef)&&(this._portal=new Wr(this.menu.templateRef,this._viewContainerRef)),this._portal}}return t.\u0275fac=function(e){return new(e||t)(b(Qi),b(He),b(sn),b(UT),b(Ub,8),b(qr,10),b(ai,8),b(Ro),b(Je))},t.\u0275dir=oe({type:t,hostAttrs:["aria-haspopup","true"],hostVars:2,hostBindings:function(e,i){1&e&&N("click",function(r){return i._handleClick(r)})("mousedown",function(r){return i._handleMousedown(r)})("keydown",function(r){return i._handleKeydown(r)}),2&e&&et("aria-expanded",i.menuOpen||null)("aria-controls",i.menuOpen?i.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:["mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:["matMenuTriggerFor","menu"],menuData:["matMenuTriggerData","menuData"],restoreFocus:["matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"}}),t})(),Nl=(()=>{class t extends J7{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-menu-trigger"],exportAs:["matMenuTrigger"],features:[Ce]}),t})(),GT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[X7],imports:[[qi,ft,fa,Pl],Is,ft]}),t})();const eH=[[["caption"]],[["colgroup"],["col"]]],tH=["caption","colgroup, col"];function $b(t){return class extends t{constructor(...n){super(...n),this._sticky=!1,this._hasStickyChanged=!1}get sticky(){return this._sticky}set sticky(n){const e=this._sticky;this._sticky=Xe(n),this._hasStickyChanged=e!==this._sticky}hasStickyChanged(){const n=this._hasStickyChanged;return this._hasStickyChanged=!1,n}resetStickyChanged(){this._hasStickyChanged=!1}}}const Ll=new _e("CDK_TABLE");let Bl=(()=>{class t{constructor(e){this.template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["","cdkCellDef",""]]}),t})(),Vl=(()=>{class t{constructor(e){this.template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["","cdkHeaderCellDef",""]]}),t})(),dp=(()=>{class t{constructor(e){this.template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["","cdkFooterCellDef",""]]}),t})();class rH{}const sH=$b(rH);let Kr=(()=>{class t extends sH{constructor(e){super(),this._table=e,this._stickyEnd=!1}get name(){return this._name}set name(e){this._setNameInput(e)}get stickyEnd(){return this._stickyEnd}set stickyEnd(e){const i=this._stickyEnd;this._stickyEnd=Xe(e),this._hasStickyChanged=i!==this._stickyEnd}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}}return t.\u0275fac=function(e){return new(e||t)(b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkColumnDef",""]],contentQueries:function(e,i,o){if(1&e&&(mt(o,Bl,5),mt(o,Vl,5),mt(o,dp,5)),2&e){let r;Fe(r=Ne())&&(i.cell=r.first),Fe(r=Ne())&&(i.headerCell=r.first),Fe(r=Ne())&&(i.footerCell=r.first)}},inputs:{sticky:"sticky",name:["cdkColumnDef","name"],stickyEnd:"stickyEnd"},features:[ze([{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:t}]),Ce]}),t})();class Gb{constructor(n,e){e.nativeElement.classList.add(...n._columnCssClassName)}}let Wb=(()=>{class t extends Gb{constructor(e,i){super(e,i)}}return t.\u0275fac=function(e){return new(e||t)(b(Kr),b(He))},t.\u0275dir=oe({type:t,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[Ce]}),t})(),qb=(()=>{class t extends Gb{constructor(e,i){var o;if(super(e,i),1===(null===(o=e._table)||void 0===o?void 0:o._elementRef.nativeElement.nodeType)){const r=e._table._elementRef.nativeElement.getAttribute("role");i.nativeElement.setAttribute("role","grid"===r||"treegrid"===r?"gridcell":"cell")}}}return t.\u0275fac=function(e){return new(e||t)(b(Kr),b(He))},t.\u0275dir=oe({type:t,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[Ce]}),t})();class qT{constructor(){this.tasks=[],this.endTasks=[]}}const Kb=new _e("_COALESCED_STYLE_SCHEDULER");let KT=(()=>{class t{constructor(e){this._ngZone=e,this._currentSchedule=null,this._destroyed=new ie}schedule(e){this._createScheduleIfNeeded(),this._currentSchedule.tasks.push(e)}scheduleEnd(e){this._createScheduleIfNeeded(),this._currentSchedule.endTasks.push(e)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_createScheduleIfNeeded(){this._currentSchedule||(this._currentSchedule=new qT,this._getScheduleObservable().pipe(tt(this._destroyed)).subscribe(()=>{for(;this._currentSchedule.tasks.length||this._currentSchedule.endTasks.length;){const e=this._currentSchedule;this._currentSchedule=new qT;for(const i of e.tasks)i();for(const i of e.endTasks)i()}this._currentSchedule=null}))}_getScheduleObservable(){return this._ngZone.isStable?ui(Promise.resolve(void 0)):this._ngZone.onStable.pipe(Ot(1))}}return t.\u0275fac=function(e){return new(e||t)(Q(Je))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),Zb=(()=>{class t{constructor(e,i){this.template=e,this._differs=i}ngOnChanges(e){if(!this._columnsDiffer){const i=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(i).create(),this._columnsDiffer.diff(i)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof Md?e.headerCell.template:this instanceof xd?e.footerCell.template:e.cell.template}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(ko))},t.\u0275dir=oe({type:t,features:[nn]}),t})();class aH extends Zb{}const lH=$b(aH);let Md=(()=>{class t extends lH{constructor(e,i,o){super(e,i),this._table=o}ngOnChanges(e){super.ngOnChanges(e)}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(ko),b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:["cdkHeaderRowDef","columns"],sticky:["cdkHeaderRowDefSticky","sticky"]},features:[Ce,nn]}),t})();class cH extends Zb{}const dH=$b(cH);let xd=(()=>{class t extends dH{constructor(e,i,o){super(e,i),this._table=o}ngOnChanges(e){super.ngOnChanges(e)}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(ko),b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:["cdkFooterRowDef","columns"],sticky:["cdkFooterRowDefSticky","sticky"]},features:[Ce,nn]}),t})(),up=(()=>{class t extends Zb{constructor(e,i,o){super(e,i),this._table=o}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(ko),b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkRowDef",""]],inputs:{columns:["cdkRowDefColumns","columns"],when:["cdkRowDefWhen","when"]},features:[Ce]}),t})(),Zr=(()=>{class t{constructor(e){this._viewContainer=e,t.mostRecentCellOutlet=this}ngOnDestroy(){t.mostRecentCellOutlet===this&&(t.mostRecentCellOutlet=null)}}return t.mostRecentCellOutlet=null,t.\u0275fac=function(e){return new(e||t)(b(sn))},t.\u0275dir=oe({type:t,selectors:[["","cdkCellOutlet",""]]}),t})(),Qb=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["cdk-header-row"],["tr","cdk-header-row",""]],hostAttrs:["role","row",1,"cdk-header-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&To(0,0)},directives:[Zr],encapsulation:2}),t})(),Xb=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&To(0,0)},directives:[Zr],encapsulation:2}),t})(),hp=(()=>{class t{constructor(e){this.templateRef=e,this._contentClassName="cdk-no-data-row"}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["ng-template","cdkNoDataRow",""]]}),t})();const ZT=["top","bottom","left","right"];class uH{constructor(n,e,i,o,r=!0,s=!0,a){this._isNativeHtmlTable=n,this._stickCellCss=e,this.direction=i,this._coalescedStyleScheduler=o,this._isBrowser=r,this._needsPositionStickyOnElement=s,this._positionListener=a,this._cachedCellWidths=[],this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(n,e){const i=[];for(const o of n)if(o.nodeType===o.ELEMENT_NODE){i.push(o);for(let r=0;r{for(const o of i)this._removeStickyStyle(o,e)})}updateStickyColumns(n,e,i,o=!0){if(!n.length||!this._isBrowser||!e.some(v=>v)&&!i.some(v=>v))return void(this._positionListener&&(this._positionListener.stickyColumnsUpdated({sizes:[]}),this._positionListener.stickyEndColumnsUpdated({sizes:[]})));const r=n[0],s=r.children.length,a=this._getCellWidths(r,o),l=this._getStickyStartColumnPositions(a,e),u=this._getStickyEndColumnPositions(a,i),p=e.lastIndexOf(!0),g=i.indexOf(!0);this._coalescedStyleScheduler.schedule(()=>{const v="rtl"===this.direction,C=v?"right":"left",M=v?"left":"right";for(const V of n)for(let K=0;Ke[K]?V:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:-1===g?[]:a.slice(g).map((V,K)=>i[K+g]?V:null).reverse()}))})}stickRows(n,e,i){if(!this._isBrowser)return;const o="bottom"===i?n.slice().reverse():n,r="bottom"===i?e.slice().reverse():e,s=[],a=[],l=[];for(let p=0,g=0;p{var p,g;for(let v=0;v{e.some(o=>!o)?this._removeStickyStyle(i,["bottom"]):this._addStickyStyle(i,"bottom",0,!1)})}_removeStickyStyle(n,e){for(const o of e)n.style[o]="",n.classList.remove(this._borderCellCss[o]);ZT.some(o=>-1===e.indexOf(o)&&n.style[o])?n.style.zIndex=this._getCalculatedZIndex(n):(n.style.zIndex="",this._needsPositionStickyOnElement&&(n.style.position=""),n.classList.remove(this._stickCellCss))}_addStickyStyle(n,e,i,o){n.classList.add(this._stickCellCss),o&&n.classList.add(this._borderCellCss[e]),n.style[e]=`${i}px`,n.style.zIndex=this._getCalculatedZIndex(n),this._needsPositionStickyOnElement&&(n.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(n){const e={top:100,bottom:10,left:1,right:1};let i=0;for(const o of ZT)n.style[o]&&(i+=e[o]);return i?`${i}`:""}_getCellWidths(n,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;const i=[],o=n.children;for(let r=0;r0;r--)e[r]&&(i[r]=o,o+=n[r]);return i}}const Jb=new _e("CDK_SPL");let pp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","rowOutlet",""]]}),t})(),fp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","headerRowOutlet",""]]}),t})(),mp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","footerRowOutlet",""]]}),t})(),gp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","noDataRowOutlet",""]]}),t})(),_p=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v,C){this._differs=e,this._changeDetectorRef=i,this._elementRef=o,this._dir=s,this._platform=l,this._viewRepeater=u,this._coalescedStyleScheduler=p,this._viewportRuler=g,this._stickyPositioningListener=v,this._ngZone=C,this._onDestroy=new ie,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.contentChanged=new Pe,this.viewChange=new vt({start:0,end:Number.MAX_VALUE}),r||this._elementRef.nativeElement.setAttribute("role","table"),this._document=a,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&this._switchDataSource(e)}get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=Xe(e),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}get fixedLayout(){return this._fixedLayout}set fixedLayout(e){this._fixedLayout=Xe(e),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}ngOnInit(){this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create((e,i)=>this.trackBy?this.trackBy(i.dataIndex,i.data):i),this._viewportRuler.change().pipe(tt(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentChecked(){this._cacheRowDefs(),this._cacheColumnDefs();const i=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||i,this._forceRecalculateCellWidths=i,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}ngOnDestroy(){[this._rowOutlet.viewContainer,this._headerRowOutlet.viewContainer,this._footerRowOutlet.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._onDestroy.next(),this._onDestroy.complete(),Gh(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();const e=this._dataDiffer.diff(this._renderRows);if(!e)return this._updateNoDataRow(),void this.contentChanged.next();const i=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,i,(o,r,s)=>this._getEmbeddedViewArgs(o.item,s),o=>o.item.data,o=>{1===o.operation&&o.context&&this._renderCellTemplateForItem(o.record.item.rowDef,o.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(o=>{i.get(o.currentIndex).context.$implicit=o.item.data}),this._updateNoDataRow(),this._ngZone&&Je.isInAngularZone()?this._ngZone.onStable.pipe(Ot(1),tt(this._onDestroy)).subscribe(()=>{this.updateStickyColumnStyles()}):this.updateStickyColumnStyles(),this.contentChanged.next()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){const e=this._getRenderedRows(this._headerRowOutlet),o=this._elementRef.nativeElement.querySelector("thead");o&&(o.style.display=e.length?"":"none");const r=this._headerRowDefs.map(s=>s.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,r,"top"),this._headerRowDefs.forEach(s=>s.resetStickyChanged())}updateStickyFooterRowStyles(){const e=this._getRenderedRows(this._footerRowOutlet),o=this._elementRef.nativeElement.querySelector("tfoot");o&&(o.style.display=e.length?"":"none");const r=this._footerRowDefs.map(s=>s.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,r,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,r),this._footerRowDefs.forEach(s=>s.resetStickyChanged())}updateStickyColumnStyles(){const e=this._getRenderedRows(this._headerRowOutlet),i=this._getRenderedRows(this._rowOutlet),o=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...i,...o],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((r,s)=>{this._addStickyColumnStyles([r],this._headerRowDefs[s])}),this._rowDefs.forEach(r=>{const s=[];for(let a=0;a{this._addStickyColumnStyles([r],this._footerRowDefs[s])}),Array.from(this._columnDefsByName.values()).forEach(r=>r.resetStickyChanged())}_getAllRenderRows(){const e=[],i=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let o=0;o{const a=o&&o.has(s)?o.get(s):[];if(a.length){const l=a.shift();return l.dataIndex=i,l}return{data:e,rowDef:s,dataIndex:i}})}_cacheColumnDefs(){this._columnDefsByName.clear(),bp(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(i=>{this._columnDefsByName.has(i.name),this._columnDefsByName.set(i.name,i)})}_cacheRowDefs(){this._headerRowDefs=bp(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=bp(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=bp(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);const e=this._rowDefs.filter(i=>!i.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){const e=(s,a)=>s||!!a.getColumnsDiff(),i=this._rowDefs.reduce(e,!1);i&&this._forceRenderDataRows();const o=this._headerRowDefs.reduce(e,!1);o&&this._forceRenderHeaderRows();const r=this._footerRowDefs.reduce(e,!1);return r&&this._forceRenderFooterRows(),i||o||r}_switchDataSource(e){this._data=[],Gh(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;Gh(this.dataSource)?e=this.dataSource.connect(this):function zb(t){return!!t&&(t instanceof Ue||H(t.lift)&&H(t.subscribe))}(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=We(this.dataSource)),this._renderChangeSubscription=e.pipe(tt(this._onDestroy)).subscribe(i=>{this._data=i||[],this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,i)=>this._renderRow(this._headerRowOutlet,e,i)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,i)=>this._renderRow(this._footerRowOutlet,e,i)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,i){const o=Array.from(i.columns||[]).map(a=>this._columnDefsByName.get(a)),r=o.map(a=>a.sticky),s=o.map(a=>a.stickyEnd);this._stickyStyler.updateStickyColumns(e,r,s,!this._fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){const i=[];for(let o=0;o!r.when||r.when(i,e));else{let r=this._rowDefs.find(s=>s.when&&s.when(i,e))||this._defaultRowDef;r&&o.push(r)}return o}_getEmbeddedViewArgs(e,i){return{templateRef:e.rowDef.template,context:{$implicit:e.data},index:i}}_renderRow(e,i,o,r={}){const s=e.viewContainer.createEmbeddedView(i.template,r,o);return this._renderCellTemplateForItem(i,r),s}_renderCellTemplateForItem(e,i){for(let o of this._getCellTemplates(e))Zr.mostRecentCellOutlet&&Zr.mostRecentCellOutlet._viewContainer.createEmbeddedView(o,i);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){const e=this._rowOutlet.viewContainer;for(let i=0,o=e.length;i{const o=this._columnDefsByName.get(i);return e.extractCellTemplate(o)}):[]}_applyNativeTableSections(){const e=this._document.createDocumentFragment(),i=[{tag:"thead",outlets:[this._headerRowOutlet]},{tag:"tbody",outlets:[this._rowOutlet,this._noDataRowOutlet]},{tag:"tfoot",outlets:[this._footerRowOutlet]}];for(const o of i){const r=this._document.createElement(o.tag);r.setAttribute("role","rowgroup");for(const s of o.outlets)r.appendChild(s.elementRef.nativeElement);e.appendChild(r)}this._elementRef.nativeElement.appendChild(e)}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){const e=(i,o)=>i||o.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){this._stickyStyler=new uH(this._isNativeHtmlTable,this.stickyCssClass,this._dir?this._dir.value:"ltr",this._coalescedStyleScheduler,this._platform.isBrowser,this.needsPositionStickyOnElement,this._stickyPositioningListener),(this._dir?this._dir.change:We()).pipe(tt(this._onDestroy)).subscribe(i=>{this._stickyStyler.direction=i,this.updateStickyColumnStyles()})}_getOwnDefs(e){return e.filter(i=>!i._table||i._table===this)}_updateNoDataRow(){const e=this._customNoDataRow||this._noDataRow;if(!e)return;const i=0===this._rowOutlet.viewContainer.length;if(i===this._isShowingNoDataRow)return;const o=this._noDataRowOutlet.viewContainer;if(i){const r=o.createEmbeddedView(e.templateRef),s=r.rootNodes[0];1===r.rootNodes.length&&(null==s?void 0:s.nodeType)===this._document.ELEMENT_NODE&&(s.setAttribute("role","row"),s.classList.add(e._contentClassName))}else o.clear();this._isShowingNoDataRow=i}}return t.\u0275fac=function(e){return new(e||t)(b(ko),b(At),b(He),Di("role"),b(ai,8),b(ht),b(dn),b(cd),b(Kb),b(yr),b(Jb,12),b(Je,8))},t.\u0275cmp=Ae({type:t,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(e,i,o){if(1&e&&(mt(o,hp,5),mt(o,Kr,5),mt(o,up,5),mt(o,Md,5),mt(o,xd,5)),2&e){let r;Fe(r=Ne())&&(i._noDataRow=r.first),Fe(r=Ne())&&(i._contentColumnDefs=r),Fe(r=Ne())&&(i._contentRowDefs=r),Fe(r=Ne())&&(i._contentHeaderRowDefs=r),Fe(r=Ne())&&(i._contentFooterRowDefs=r)}},viewQuery:function(e,i){if(1&e&&(Tt(pp,7),Tt(fp,7),Tt(mp,7),Tt(gp,7)),2&e){let o;Fe(o=Ne())&&(i._rowOutlet=o.first),Fe(o=Ne())&&(i._headerRowOutlet=o.first),Fe(o=Ne())&&(i._footerRowOutlet=o.first),Fe(o=Ne())&&(i._noDataRowOutlet=o.first)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(e,i){2&e&&rt("cdk-table-fixed-layout",i.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:"multiTemplateDataRows",fixedLayout:"fixedLayout"},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[ze([{provide:Ll,useExisting:t},{provide:cd,useClass:ux},{provide:Kb,useClass:KT},{provide:Jb,useValue:null}])],ngContentSelectors:tH,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(e,i){1&e&&(Jt(eH),ct(0),ct(1,1),To(2,0)(3,1)(4,2)(5,3))},directives:[fp,pp,gp,mp],styles:[".cdk-table-fixed-layout{table-layout:fixed}\n"],encapsulation:2}),t})();function bp(t,n){return t.concat(Array.from(n))}let pH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Nb]]}),t})();const fH=[[["caption"]],[["colgroup"],["col"]]],mH=["caption","colgroup, col"];let As=(()=>{class t extends _p{constructor(){super(...arguments),this.stickyCssClass="mat-table-sticky",this.needsPositionStickyOnElement=!1}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-table"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-table-fixed-layout",i.fixedLayout)},exportAs:["matTable"],features:[ze([{provide:cd,useClass:ux},{provide:_p,useExisting:t},{provide:Ll,useExisting:t},{provide:Kb,useClass:KT},{provide:Jb,useValue:null}]),Ce],ngContentSelectors:mH,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(e,i){1&e&&(Jt(fH),ct(0),ct(1,1),To(2,0)(3,1)(4,2)(5,3))},directives:[fp,pp,gp,mp],styles:["mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}\n"],encapsulation:2}),t})(),Qr=(()=>{class t extends Bl{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matCellDef",""]],features:[ze([{provide:Bl,useExisting:t}]),Ce]}),t})(),Yr=(()=>{class t extends Vl{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matHeaderCellDef",""]],features:[ze([{provide:Vl,useExisting:t}]),Ce]}),t})(),Xr=(()=>{class t extends Kr{get name(){return this._name}set name(e){this._setNameInput(e)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[ze([{provide:Kr,useExisting:t},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:t}]),Ce]}),t})(),Jr=(()=>{class t extends Wb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[Ce]}),t})(),es=(()=>{class t extends qb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[Ce]}),t})(),Ps=(()=>{class t extends Md{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[ze([{provide:Md,useExisting:t}]),Ce]}),t})(),Rs=(()=>{class t extends up{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[ze([{provide:up,useExisting:t}]),Ce]}),t})(),Fs=(()=>{class t extends Qb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[ze([{provide:Qb,useExisting:t}]),Ce],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&To(0,0)},directives:[Zr],encapsulation:2}),t})(),Ns=(()=>{class t extends Xb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[ze([{provide:Xb,useExisting:t}]),Ce],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&To(0,0)},directives:[Zr],encapsulation:2}),t})(),vp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[pH,ft],ft]}),t})();const YT=new _e("CdkAccordion");let xH=0,TH=(()=>{class t{constructor(e,i,o){this.accordion=e,this._changeDetectorRef=i,this._expansionDispatcher=o,this._openCloseAllSubscription=k.EMPTY,this.closed=new Pe,this.opened=new Pe,this.destroyed=new Pe,this.expandedChange=new Pe,this.id="cdk-accordion-child-"+xH++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=o.listen((r,s)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===s&&this.id!==r&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}get expanded(){return this._expanded}set expanded(e){e=Xe(e),this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e)}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}}return t.\u0275fac=function(e){return new(e||t)(b(YT,12),b(At),b(sb))},t.\u0275dir=oe({type:t,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[ze([{provide:YT,useValue:void 0}])]}),t})(),kH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const EH=["body"];function IH(t,n){}const OH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],AH=["mat-expansion-panel-header","*","mat-action-row"];function PH(t,n){1&t&&E(0,"span",2),2&t&&m("@indicatorRotate",D()._getExpandedState())}const RH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],FH=["mat-panel-title","mat-panel-description","*"],XT=new _e("MAT_ACCORDION"),JT="225ms cubic-bezier(0.4,0.0,0.2,1)",ek={indicatorRotate:Oo("indicatorRotate",[jn("collapsed, void",Vt({transform:"rotate(0deg)"})),jn("expanded",Vt({transform:"rotate(180deg)"})),Kn("expanded <=> collapsed, void => collapsed",si(JT))]),bodyExpansion:Oo("bodyExpansion",[jn("collapsed, void",Vt({height:"0px",visibility:"hidden"})),jn("expanded",Vt({height:"*",visibility:"visible"})),Kn("expanded <=> collapsed, void => collapsed",si(JT))])};let NH=(()=>{class t{constructor(e){this._template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["ng-template","matExpansionPanelContent",""]]}),t})(),LH=0;const tk=new _e("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let nk=(()=>{class t extends TH{constructor(e,i,o,r,s,a,l){super(e,i,o),this._viewContainerRef=r,this._animationMode=a,this._hideToggle=!1,this.afterExpand=new Pe,this.afterCollapse=new Pe,this._inputChanges=new ie,this._headerId="mat-expansion-panel-header-"+LH++,this._bodyAnimationDone=new ie,this.accordion=e,this._document=s,this._bodyAnimationDone.pipe(nd((u,p)=>u.fromState===p.fromState&&u.toState===p.toState)).subscribe(u=>{"void"!==u.fromState&&("expanded"===u.toState?this.afterExpand.emit():"collapsed"===u.toState&&this.afterCollapse.emit())}),l&&(this.hideToggle=l.hideToggle)}get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=Xe(e)}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this.opened.pipe(Nn(null),It(()=>this.expanded&&!this._portal),Ot(1)).subscribe(()=>{this._portal=new Wr(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._bodyAnimationDone.complete(),this._inputChanges.complete()}_containsFocus(){if(this._body){const e=this._document.activeElement,i=this._body.nativeElement;return e===i||i.contains(e)}return!1}}return t.\u0275fac=function(e){return new(e||t)(b(XT,12),b(At),b(sb),b(sn),b(ht),b(gn,8),b(tk,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(e,i,o){if(1&e&&mt(o,NH,5),2&e){let r;Fe(r=Ne())&&(i._lazyContent=r.first)}},viewQuery:function(e,i){if(1&e&&Tt(EH,5),2&e){let o;Fe(o=Ne())&&(i._body=o.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(e,i){2&e&&rt("mat-expanded",i.expanded)("_mat-animation-noopable","NoopAnimations"===i._animationMode)("mat-expansion-panel-spacing",i._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[ze([{provide:XT,useValue:void 0}]),Ce,nn],ngContentSelectors:AH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(e,i){1&e&&(Jt(OH),ct(0),d(1,"div",0,1),N("@bodyExpansion.done",function(r){return i._bodyAnimationDone.next(r)}),d(3,"div",2),ct(4,1),_(5,IH,0,0,"ng-template",3),c(),ct(6,2),c()),2&e&&(f(1),m("@bodyExpansion",i._getExpandedState())("id",i.id),et("aria-labelledby",i._headerId),f(4),m("cdkPortalOutlet",i._portal))},directives:[Os],styles:['.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-content[style*="visibility: hidden"] *{visibility:hidden !important}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}\n'],encapsulation:2,data:{animation:[ek.bodyExpansion]},changeDetection:0}),t})();class BH{}const VH=Ml(BH);let jH=(()=>{class t extends VH{constructor(e,i,o,r,s,a,l){super(),this.panel=e,this._element=i,this._focusMonitor=o,this._changeDetectorRef=r,this._animationMode=a,this._parentChangeSubscription=k.EMPTY;const u=e.accordion?e.accordion._stateChanges.pipe(It(p=>!(!p.hideToggle&&!p.togglePosition))):yo;this.tabIndex=parseInt(l||"")||0,this._parentChangeSubscription=Tn(e.opened,e.closed,u,e._inputChanges.pipe(It(p=>!!(p.hideToggle||p.disabled||p.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(It(()=>e._containsFocus())).subscribe(()=>o.focusVia(i,"program")),s&&(this.expandedHeight=s.expandedHeight,this.collapsedHeight=s.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:fi(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}focus(e,i){e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}return t.\u0275fac=function(e){return new(e||t)(b(nk,1),b(He),b(Ro),b(At),b(tk,8),b(gn,8),Di("tabindex"))},t.\u0275cmp=Ae({type:t,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(e,i){1&e&&N("click",function(){return i._toggle()})("keydown",function(r){return i._keydown(r)}),2&e&&(et("id",i.panel._headerId)("tabindex",i.tabIndex)("aria-controls",i._getPanelId())("aria-expanded",i._isExpanded())("aria-disabled",i.panel.disabled),pi("height",i._getHeaderHeight()),rt("mat-expanded",i._isExpanded())("mat-expansion-toggle-indicator-after","after"===i._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===i._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===i._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[Ce],ngContentSelectors:FH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(e,i){1&e&&(Jt(RH),d(0,"span",0),ct(1),ct(2,1),ct(3,2),c(),_(4,PH,1,1,"span",1)),2&e&&(f(4),m("ngIf",i._showToggle()))},directives:[Et],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}.cdk-high-contrast-active .mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}\n'],encapsulation:2,data:{animation:[ek.indicatorRotate]},changeDetection:0}),t})(),HH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]}),t})(),ik=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,kH,Cd]]}),t})();const UH=["*"],ok=new _e("MatChipRemove"),rk=new _e("MatChipAvatar"),sk=new _e("MatChipTrailingIcon");class zH{constructor(n){this._elementRef=n}}const $H=Ml($r(vr(zH),"primary"),-1);let Td=(()=>{class t extends $H{constructor(e,i,o,r,s,a,l,u){super(e),this._ngZone=i,this._changeDetectorRef=s,this._hasFocus=!1,this.chipListSelectable=!0,this._chipListMultiple=!1,this._chipListDisabled=!1,this._selected=!1,this._selectable=!0,this._disabled=!1,this._removable=!0,this._onFocus=new ie,this._onBlur=new ie,this.selectionChange=new Pe,this.destroyed=new Pe,this.removed=new Pe,this._addHostClassName(),this._chipRippleTarget=a.createElement("div"),this._chipRippleTarget.classList.add("mat-chip-ripple"),this._elementRef.nativeElement.appendChild(this._chipRippleTarget),this._chipRipple=new IM(this,i,this._chipRippleTarget,o),this._chipRipple.setupTriggerEvents(e),this.rippleConfig=r||{},this._animationsDisabled="NoopAnimations"===l,this.tabIndex=null!=u&&parseInt(u)||-1}get rippleDisabled(){return this.disabled||this.disableRipple||this._animationsDisabled||!!this.rippleConfig.disabled}get selected(){return this._selected}set selected(e){const i=Xe(e);i!==this._selected&&(this._selected=i,this._dispatchSelectionChange())}get value(){return void 0!==this._value?this._value:this._elementRef.nativeElement.textContent}set value(e){this._value=e}get selectable(){return this._selectable&&this.chipListSelectable}set selectable(e){this._selectable=Xe(e)}get disabled(){return this._chipListDisabled||this._disabled}set disabled(e){this._disabled=Xe(e)}get removable(){return this._removable}set removable(e){this._removable=Xe(e)}get ariaSelected(){return this.selectable&&(this._chipListMultiple||this.selected)?this.selected.toString():null}_addHostClassName(){const e="mat-basic-chip",i=this._elementRef.nativeElement;i.hasAttribute(e)||i.tagName.toLowerCase()===e?i.classList.add(e):i.classList.add("mat-standard-chip")}ngOnDestroy(){this.destroyed.emit({chip:this}),this._chipRipple._removeTriggerEvents()}select(){this._selected||(this._selected=!0,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}deselect(){this._selected&&(this._selected=!1,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}selectViaInteraction(){this._selected||(this._selected=!0,this._dispatchSelectionChange(!0),this._changeDetectorRef.markForCheck())}toggleSelected(e=!1){return this._selected=!this.selected,this._dispatchSelectionChange(e),this._changeDetectorRef.markForCheck(),this.selected}focus(){this._hasFocus||(this._elementRef.nativeElement.focus(),this._onFocus.next({chip:this})),this._hasFocus=!0}remove(){this.removable&&this.removed.emit({chip:this})}_handleClick(e){this.disabled&&e.preventDefault()}_handleKeydown(e){if(!this.disabled)switch(e.keyCode){case 46:case 8:this.remove(),e.preventDefault();break;case 32:this.selectable&&this.toggleSelected(!0),e.preventDefault()}}_blur(){this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{this._ngZone.run(()=>{this._hasFocus=!1,this._onBlur.next({chip:this})})})}_dispatchSelectionChange(e=!1){this.selectionChange.emit({source:this,isUserInput:e,selected:this._selected})}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(dn),b(OM,8),b(At),b(ht),b(gn,8),Di("tabindex"))},t.\u0275dir=oe({type:t,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(e,i,o){if(1&e&&(mt(o,rk,5),mt(o,sk,5),mt(o,ok,5)),2&e){let r;Fe(r=Ne())&&(i.avatar=r.first),Fe(r=Ne())&&(i.trailingIcon=r.first),Fe(r=Ne())&&(i.removeIcon=r.first)}},hostAttrs:["role","option",1,"mat-chip","mat-focus-indicator"],hostVars:14,hostBindings:function(e,i){1&e&&N("click",function(r){return i._handleClick(r)})("keydown",function(r){return i._handleKeydown(r)})("focus",function(){return i.focus()})("blur",function(){return i._blur()}),2&e&&(et("tabindex",i.disabled?null:i.tabIndex)("disabled",i.disabled||null)("aria-disabled",i.disabled.toString())("aria-selected",i.ariaSelected),rt("mat-chip-selected",i.selected)("mat-chip-with-avatar",i.avatar)("mat-chip-with-trailing-icon",i.trailingIcon||i.removeIcon)("mat-chip-disabled",i.disabled)("_mat-animation-noopable",i._animationsDisabled))},inputs:{color:"color",disableRipple:"disableRipple",tabIndex:"tabIndex",selected:"selected",value:"value",selectable:"selectable",disabled:"disabled",removable:"removable"},outputs:{selectionChange:"selectionChange",destroyed:"destroyed",removed:"removed"},exportAs:["matChip"],features:[Ce]}),t})(),ak=(()=>{class t{constructor(e,i){this._parentChip=e,"BUTTON"===i.nativeElement.nodeName&&i.nativeElement.setAttribute("type","button")}_handleClick(e){const i=this._parentChip;i.removable&&!i.disabled&&i.remove(),e.stopPropagation(),e.preventDefault()}}return t.\u0275fac=function(e){return new(e||t)(b(Td),b(He))},t.\u0275dir=oe({type:t,selectors:[["","matChipRemove",""]],hostAttrs:[1,"mat-chip-remove","mat-chip-trailing-icon"],hostBindings:function(e,i){1&e&&N("click",function(r){return i._handleClick(r)})},features:[ze([{provide:ok,useExisting:t}])]}),t})();const lk=new _e("mat-chips-default-options");let qH=0,ck=(()=>{class t{constructor(e,i){this._elementRef=e,this._defaultOptions=i,this.focused=!1,this._addOnBlur=!1,this.separatorKeyCodes=this._defaultOptions.separatorKeyCodes,this.chipEnd=new Pe,this.placeholder="",this.id="mat-chip-list-input-"+qH++,this._disabled=!1,this.inputElement=this._elementRef.nativeElement}set chipList(e){e&&(this._chipList=e,this._chipList.registerInput(this))}get addOnBlur(){return this._addOnBlur}set addOnBlur(e){this._addOnBlur=Xe(e)}get disabled(){return this._disabled||this._chipList&&this._chipList.disabled}set disabled(e){this._disabled=Xe(e)}get empty(){return!this.inputElement.value}ngOnChanges(){this._chipList.stateChanges.next()}ngOnDestroy(){this.chipEnd.complete()}ngAfterContentInit(){this._focusLastChipOnBackspace=this.empty}_keydown(e){if(e){if(9===e.keyCode&&!fi(e,"shiftKey")&&this._chipList._allowFocusEscape(),8===e.keyCode&&this._focusLastChipOnBackspace)return this._chipList._keyManager.setLastItemActive(),void e.preventDefault();this._focusLastChipOnBackspace=!1}this._emitChipEnd(e)}_keyup(e){!this._focusLastChipOnBackspace&&8===e.keyCode&&this.empty&&(this._focusLastChipOnBackspace=!0,e.preventDefault())}_blur(){this.addOnBlur&&this._emitChipEnd(),this.focused=!1,this._chipList.focused||this._chipList._blur(),this._chipList.stateChanges.next()}_focus(){this.focused=!0,this._focusLastChipOnBackspace=this.empty,this._chipList.stateChanges.next()}_emitChipEnd(e){!this.inputElement.value&&!!e&&this._chipList._keydown(e),(!e||this._isSeparatorKey(e))&&(this.chipEnd.emit({input:this.inputElement,value:this.inputElement.value,chipInput:this}),null==e||e.preventDefault())}_onInput(){this._chipList.stateChanges.next()}focus(e){this.inputElement.focus(e)}clear(){this.inputElement.value="",this._focusLastChipOnBackspace=!0}_isSeparatorKey(e){return!fi(e)&&new Set(this.separatorKeyCodes).has(e.keyCode)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(lk))},t.\u0275dir=oe({type:t,selectors:[["input","matChipInputFor",""]],hostAttrs:[1,"mat-chip-input","mat-input-element"],hostVars:5,hostBindings:function(e,i){1&e&&N("keydown",function(r){return i._keydown(r)})("keyup",function(r){return i._keyup(r)})("blur",function(){return i._blur()})("focus",function(){return i._focus()})("input",function(){return i._onInput()}),2&e&&(Fr("id",i.id),et("disabled",i.disabled||null)("placeholder",i.placeholder||null)("aria-invalid",i._chipList&&i._chipList.ngControl?i._chipList.ngControl.invalid:null)("aria-required",i._chipList&&i._chipList.required||null))},inputs:{chipList:["matChipInputFor","chipList"],addOnBlur:["matChipInputAddOnBlur","addOnBlur"],separatorKeyCodes:["matChipInputSeparatorKeyCodes","separatorKeyCodes"],placeholder:"placeholder",id:"id",disabled:"disabled"},outputs:{chipEnd:"matChipInputTokenEnd"},exportAs:["matChipInput","matChipInputFor"],features:[nn]}),t})();const KH=z_(class{constructor(t,n,e,i){this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=e,this.ngControl=i}});let ZH=0;class QH{constructor(n,e){this.source=n,this.value=e}}let dk=(()=>{class t extends KH{constructor(e,i,o,r,s,a,l){super(a,r,s,l),this._elementRef=e,this._changeDetectorRef=i,this._dir=o,this.controlType="mat-chip-list",this._lastDestroyedChipIndex=null,this._destroyed=new ie,this._uid="mat-chip-list-"+ZH++,this._tabIndex=0,this._userTabIndex=null,this._onTouched=()=>{},this._onChange=()=>{},this._multiple=!1,this._compareWith=(u,p)=>u===p,this._disabled=!1,this.ariaOrientation="horizontal",this._selectable=!0,this.change=new Pe,this.valueChange=new Pe,this.ngControl&&(this.ngControl.valueAccessor=this)}get selected(){var e,i;return this.multiple?(null===(e=this._selectionModel)||void 0===e?void 0:e.selected)||[]:null===(i=this._selectionModel)||void 0===i?void 0:i.selected[0]}get role(){return this.empty?null:"listbox"}get multiple(){return this._multiple}set multiple(e){this._multiple=Xe(e),this._syncChipsState()}get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this.writeValue(e),this._value=e}get id(){return this._chipInput?this._chipInput.id:this._uid}get required(){var e,i,o,r;return null!==(r=null!==(e=this._required)&&void 0!==e?e:null===(o=null===(i=this.ngControl)||void 0===i?void 0:i.control)||void 0===o?void 0:o.hasValidator(de.required))&&void 0!==r&&r}set required(e){this._required=Xe(e),this.stateChanges.next()}get placeholder(){return this._chipInput?this._chipInput.placeholder:this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}get focused(){return this._chipInput&&this._chipInput.focused||this._hasFocusedChip()}get empty(){return(!this._chipInput||this._chipInput.empty)&&(!this.chips||0===this.chips.length)}get shouldLabelFloat(){return!this.empty||this.focused}get disabled(){return this.ngControl?!!this.ngControl.disabled:this._disabled}set disabled(e){this._disabled=Xe(e),this._syncChipsState()}get selectable(){return this._selectable}set selectable(e){this._selectable=Xe(e),this.chips&&this.chips.forEach(i=>i.chipListSelectable=this._selectable)}set tabIndex(e){this._userTabIndex=e,this._tabIndex=e}get chipSelectionChanges(){return Tn(...this.chips.map(e=>e.selectionChange))}get chipFocusChanges(){return Tn(...this.chips.map(e=>e._onFocus))}get chipBlurChanges(){return Tn(...this.chips.map(e=>e._onBlur))}get chipRemoveChanges(){return Tn(...this.chips.map(e=>e.destroyed))}ngAfterContentInit(){this._keyManager=new Nh(this.chips).withWrap().withVerticalOrientation().withHomeAndEnd().withHorizontalOrientation(this._dir?this._dir.value:"ltr"),this._dir&&this._dir.change.pipe(tt(this._destroyed)).subscribe(e=>this._keyManager.withHorizontalOrientation(e)),this._keyManager.tabOut.pipe(tt(this._destroyed)).subscribe(()=>{this._allowFocusEscape()}),this.chips.changes.pipe(Nn(null),tt(this._destroyed)).subscribe(()=>{this.disabled&&Promise.resolve().then(()=>{this._syncChipsState()}),this._resetChips(),this._initializeSelection(),this._updateTabIndex(),this._updateFocusForDestroyedChips(),this.stateChanges.next()})}ngOnInit(){this._selectionModel=new Tl(this.multiple,void 0,!1),this.stateChanges.next()}ngDoCheck(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==this._disabled&&(this.disabled=!!this.ngControl.disabled))}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete(),this.stateChanges.complete(),this._dropSubscriptions()}registerInput(e){this._chipInput=e,this._elementRef.nativeElement.setAttribute("data-mat-chip-input",e.id)}setDescribedByIds(e){this._ariaDescribedby=e.join(" ")}writeValue(e){this.chips&&this._setSelectionByValue(e,!1)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this.stateChanges.next()}onContainerClick(e){this._originatesFromChip(e)||this.focus()}focus(e){this.disabled||this._chipInput&&this._chipInput.focused||(this.chips.length>0?(this._keyManager.setFirstItemActive(),this.stateChanges.next()):(this._focusInput(e),this.stateChanges.next()))}_focusInput(e){this._chipInput&&this._chipInput.focus(e)}_keydown(e){const i=e.target;i&&i.classList.contains("mat-chip")&&(this._keyManager.onKeydown(e),this.stateChanges.next())}_updateTabIndex(){this._tabIndex=this._userTabIndex||(0===this.chips.length?-1:0)}_updateFocusForDestroyedChips(){if(null!=this._lastDestroyedChipIndex)if(this.chips.length){const e=Math.min(this._lastDestroyedChipIndex,this.chips.length-1);this._keyManager.setActiveItem(e)}else this.focus();this._lastDestroyedChipIndex=null}_isValidIndex(e){return e>=0&&eo.deselect()),Array.isArray(e))e.forEach(o=>this._selectValue(o,i)),this._sortValues();else{const o=this._selectValue(e,i);o&&i&&this._keyManager.setActiveItem(o)}}_selectValue(e,i=!0){const o=this.chips.find(r=>null!=r.value&&this._compareWith(r.value,e));return o&&(i?o.selectViaInteraction():o.select(),this._selectionModel.select(o)),o}_initializeSelection(){Promise.resolve().then(()=>{(this.ngControl||this._value)&&(this._setSelectionByValue(this.ngControl?this.ngControl.value:this._value,!1),this.stateChanges.next())})}_clearSelection(e){this._selectionModel.clear(),this.chips.forEach(i=>{i!==e&&i.deselect()}),this.stateChanges.next()}_sortValues(){this._multiple&&(this._selectionModel.clear(),this.chips.forEach(e=>{e.selected&&this._selectionModel.select(e)}),this.stateChanges.next())}_propagateChanges(e){let i=null;i=Array.isArray(this.selected)?this.selected.map(o=>o.value):this.selected?this.selected.value:e,this._value=i,this.change.emit(new QH(this,i)),this.valueChange.emit(i),this._onChange(i),this._changeDetectorRef.markForCheck()}_blur(){this._hasFocusedChip()||this._keyManager.setActiveItem(-1),this.disabled||(this._chipInput?setTimeout(()=>{this.focused||this._markAsTouched()}):this._markAsTouched())}_markAsTouched(){this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next()}_allowFocusEscape(){-1!==this._tabIndex&&(this._tabIndex=-1,setTimeout(()=>{this._tabIndex=this._userTabIndex||0,this._changeDetectorRef.markForCheck()}))}_resetChips(){this._dropSubscriptions(),this._listenToChipsFocus(),this._listenToChipsSelection(),this._listenToChipsRemoved()}_dropSubscriptions(){this._chipFocusSubscription&&(this._chipFocusSubscription.unsubscribe(),this._chipFocusSubscription=null),this._chipBlurSubscription&&(this._chipBlurSubscription.unsubscribe(),this._chipBlurSubscription=null),this._chipSelectionSubscription&&(this._chipSelectionSubscription.unsubscribe(),this._chipSelectionSubscription=null),this._chipRemoveSubscription&&(this._chipRemoveSubscription.unsubscribe(),this._chipRemoveSubscription=null)}_listenToChipsSelection(){this._chipSelectionSubscription=this.chipSelectionChanges.subscribe(e=>{e.source.selected?this._selectionModel.select(e.source):this._selectionModel.deselect(e.source),this.multiple||this.chips.forEach(i=>{!this._selectionModel.isSelected(i)&&i.selected&&i.deselect()}),e.isUserInput&&this._propagateChanges()})}_listenToChipsFocus(){this._chipFocusSubscription=this.chipFocusChanges.subscribe(e=>{let i=this.chips.toArray().indexOf(e.chip);this._isValidIndex(i)&&this._keyManager.updateActiveItem(i),this.stateChanges.next()}),this._chipBlurSubscription=this.chipBlurChanges.subscribe(()=>{this._blur(),this.stateChanges.next()})}_listenToChipsRemoved(){this._chipRemoveSubscription=this.chipRemoveChanges.subscribe(e=>{const i=e.chip,o=this.chips.toArray().indexOf(e.chip);this._isValidIndex(o)&&i._hasFocus&&(this._lastDestroyedChipIndex=o)})}_originatesFromChip(e){let i=e.target;for(;i&&i!==this._elementRef.nativeElement;){if(i.classList.contains("mat-chip"))return!0;i=i.parentElement}return!1}_hasFocusedChip(){return this.chips&&this.chips.some(e=>e._hasFocus)}_syncChipsState(){this.chips&&this.chips.forEach(e=>{e._chipListDisabled=this._disabled,e._chipListMultiple=this.multiple})}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(ai,8),b(ks,8),b(Sn,8),b(od),b(rr,10))},t.\u0275cmp=Ae({type:t,selectors:[["mat-chip-list"]],contentQueries:function(e,i,o){if(1&e&&mt(o,Td,5),2&e){let r;Fe(r=Ne())&&(i.chips=r)}},hostAttrs:[1,"mat-chip-list"],hostVars:15,hostBindings:function(e,i){1&e&&N("focus",function(){return i.focus()})("blur",function(){return i._blur()})("keydown",function(r){return i._keydown(r)}),2&e&&(Fr("id",i._uid),et("tabindex",i.disabled?null:i._tabIndex)("aria-describedby",i._ariaDescribedby||null)("aria-required",i.role?i.required:null)("aria-disabled",i.disabled.toString())("aria-invalid",i.errorState)("aria-multiselectable",i.multiple)("role",i.role)("aria-orientation",i.ariaOrientation),rt("mat-chip-list-disabled",i.disabled)("mat-chip-list-invalid",i.errorState)("mat-chip-list-required",i.required))},inputs:{errorStateMatcher:"errorStateMatcher",multiple:"multiple",compareWith:"compareWith",value:"value",required:"required",placeholder:"placeholder",disabled:"disabled",ariaOrientation:["aria-orientation","ariaOrientation"],selectable:"selectable",tabIndex:"tabIndex"},outputs:{change:"change",valueChange:"valueChange"},exportAs:["matChipList"],features:[ze([{provide:gd,useExisting:t}]),Ce],ngContentSelectors:UH,decls:2,vars:0,consts:[[1,"mat-chip-list-wrapper"]],template:function(e,i){1&e&&(Jt(),d(0,"div",0),ct(1),c())},styles:['.mat-chip{position:relative;box-sizing:border-box;-webkit-tap-highlight-color:transparent;border:none;-webkit-appearance:none;-moz-appearance:none}.mat-standard-chip{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:inline-flex;padding:7px 12px;border-radius:16px;align-items:center;cursor:default;min-height:32px;height:1px}._mat-animation-noopable.mat-standard-chip{transition:none;animation:none}.mat-standard-chip .mat-chip-remove{border:none;-webkit-appearance:none;-moz-appearance:none;padding:0;background:none}.mat-standard-chip .mat-chip-remove.mat-icon,.mat-standard-chip .mat-chip-remove .mat-icon{width:18px;height:18px;font-size:18px}.mat-standard-chip::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;opacity:0;content:"";pointer-events:none;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-standard-chip:hover::after{opacity:.12}.mat-standard-chip:focus{outline:none}.mat-standard-chip:focus::after{opacity:.16}.cdk-high-contrast-active .mat-standard-chip{outline:solid 1px}.cdk-high-contrast-active .mat-standard-chip:focus{outline:dotted 2px}.cdk-high-contrast-active .mat-standard-chip.mat-chip-selected{outline-width:3px}.mat-standard-chip.mat-chip-disabled::after{opacity:0}.mat-standard-chip.mat-chip-disabled .mat-chip-remove,.mat-standard-chip.mat-chip-disabled .mat-chip-trailing-icon{cursor:default}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar,.mat-standard-chip.mat-chip-with-avatar{padding-top:0;padding-bottom:0}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-right:8px;padding-left:0}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-left:8px;padding-right:0}.mat-standard-chip.mat-chip-with-trailing-icon{padding-top:7px;padding-bottom:7px;padding-right:8px;padding-left:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon{padding-left:8px;padding-right:12px}.mat-standard-chip.mat-chip-with-avatar{padding-left:0;padding-right:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-avatar{padding-right:0;padding-left:12px}.mat-standard-chip .mat-chip-avatar{width:24px;height:24px;margin-right:8px;margin-left:4px}[dir=rtl] .mat-standard-chip .mat-chip-avatar{margin-left:8px;margin-right:4px}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{width:18px;height:18px;cursor:pointer}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{margin-left:8px;margin-right:0}[dir=rtl] .mat-standard-chip .mat-chip-remove,[dir=rtl] .mat-standard-chip .mat-chip-trailing-icon{margin-right:8px;margin-left:0}.mat-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit;overflow:hidden;transform:translateZ(0)}.mat-chip-list-wrapper{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;margin:-4px}.mat-chip-list-wrapper input.mat-input-element,.mat-chip-list-wrapper .mat-standard-chip{margin:4px}.mat-chip-list-stacked .mat-chip-list-wrapper{flex-direction:column;align-items:flex-start}.mat-chip-list-stacked .mat-chip-list-wrapper .mat-standard-chip{width:100%}.mat-chip-avatar{border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden;object-fit:cover}input.mat-chip-input{width:150px;margin:4px;flex:1 0 150px}\n'],encapsulation:2,changeDetection:0}),t})(),ev=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[od,{provide:lk,useValue:{separatorKeyCodes:[13]}}],imports:[[ft]]}),t})();class uk extends class YH{constructor(){this.expansionModel=new Tl(!0)}toggle(n){this.expansionModel.toggle(this._trackByValue(n))}expand(n){this.expansionModel.select(this._trackByValue(n))}collapse(n){this.expansionModel.deselect(this._trackByValue(n))}isExpanded(n){return this.expansionModel.isSelected(this._trackByValue(n))}toggleDescendants(n){this.expansionModel.isSelected(this._trackByValue(n))?this.collapseDescendants(n):this.expandDescendants(n)}collapseAll(){this.expansionModel.clear()}expandDescendants(n){let e=[n];e.push(...this.getDescendants(n)),this.expansionModel.select(...e.map(i=>this._trackByValue(i)))}collapseDescendants(n){let e=[n];e.push(...this.getDescendants(n)),this.expansionModel.deselect(...e.map(i=>this._trackByValue(i)))}_trackByValue(n){return this.trackBy?this.trackBy(n):n}}{constructor(n,e,i){super(),this.getLevel=n,this.isExpandable=e,this.options=i,this.options&&(this.trackBy=this.options.trackBy)}getDescendants(n){const i=[];for(let o=this.dataNodes.indexOf(n)+1;othis._trackByValue(n)))}}let n9=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),hk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[n9,ft],ft]}),t})();class d9{constructor(n,e,i,o){this.transformFunction=n,this.getLevel=e,this.isExpandable=i,this.getChildren=o}_flattenNode(n,e,i,o){const r=this.transformFunction(n,e);if(i.push(r),this.isExpandable(r)){const s=this.getChildren(n);s&&(Array.isArray(s)?this._flattenChildren(s,e,i,o):s.pipe(Ot(1)).subscribe(a=>{this._flattenChildren(a,e,i,o)}))}return i}_flattenChildren(n,e,i,o){n.forEach((r,s)=>{let a=o.slice();a.push(s!=n.length-1),this._flattenNode(r,e+1,i,a)})}flattenNodes(n){let e=[];return n.forEach(i=>this._flattenNode(i,0,e,[])),e}expandFlattenedNodes(n,e){let i=[],o=[];return o[0]=!0,n.forEach(r=>{let s=!0;for(let a=0;a<=this.getLevel(r);a++)s=s&&o[a];s&&i.push(r),this.isExpandable(r)&&(o[this.getLevel(r)+1]=e.isExpanded(r))}),i}}class pk extends class a8{}{constructor(n,e,i){super(),this._treeControl=n,this._treeFlattener=e,this._flattenedData=new vt([]),this._expandedData=new vt([]),this._data=new vt([]),i&&(this.data=i)}get data(){return this._data.value}set data(n){this._data.next(n),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}connect(n){return Tn(n.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(je(()=>(this._expandedData.next(this._treeFlattener.expandFlattenedNodes(this._flattenedData.value,this._treeControl)),this._expandedData.value)))}disconnect(){}}function u9(t,n){1&t&&ct(0)}const fk=["*"];function h9(t,n){}const p9=function(t){return{animationDuration:t}},f9=function(t,n){return{value:t,params:n}},m9=["tabListContainer"],g9=["tabList"],_9=["tabListInner"],b9=["nextPaginator"],v9=["previousPaginator"],y9=["tabBodyWrapper"],C9=["tabHeader"];function w9(t,n){}function D9(t,n){1&t&&_(0,w9,0,0,"ng-template",10),2&t&&m("cdkPortalOutlet",D().$implicit.templateLabel)}function S9(t,n){1&t&&h(0),2&t&&Ee(D().$implicit.textLabel)}function M9(t,n){if(1&t){const e=pe();d(0,"div",6),N("click",function(){const o=se(e),r=o.$implicit,s=o.index,a=D(),l=$t(1);return a._handleClick(r,l,s)})("cdkFocusChange",function(o){const s=se(e).index;return D()._tabFocusChanged(o,s)}),d(1,"div",7),_(2,D9,1,1,"ng-template",8),_(3,S9,1,1,"ng-template",null,9,Bc),c()()}if(2&t){const e=n.$implicit,i=n.index,o=$t(4),r=D();rt("mat-tab-label-active",r.selectedIndex===i),m("id",r._getTabLabelId(i))("ngClass",e.labelClass)("disabled",e.disabled)("matRippleDisabled",e.disabled||r.disableRipple),et("tabIndex",r._getTabIndex(e,i))("aria-posinset",i+1)("aria-setsize",r._tabs.length)("aria-controls",r._getTabContentId(i))("aria-selected",r.selectedIndex===i)("aria-label",e.ariaLabel||null)("aria-labelledby",!e.ariaLabel&&e.ariaLabelledby?e.ariaLabelledby:null),f(2),m("ngIf",e.templateLabel)("ngIfElse",o)}}function x9(t,n){if(1&t){const e=pe();d(0,"mat-tab-body",11),N("_onCentered",function(){return se(e),D()._removeTabBodyWrapperHeight()})("_onCentering",function(o){return se(e),D()._setTabBodyWrapperHeight(o)}),c()}if(2&t){const e=n.$implicit,i=n.index,o=D();rt("mat-tab-body-active",o.selectedIndex===i),m("id",o._getTabContentId(i))("ngClass",e.bodyClass)("content",e.content)("position",e.position)("origin",e.origin)("animationDuration",o.animationDuration),et("tabindex",null!=o.contentTabIndex&&o.selectedIndex===i?o.contentTabIndex:null)("aria-labelledby",o._getTabLabelId(i))}}const T9=new _e("MatInkBarPositioner",{providedIn:"root",factory:function k9(){return n=>({left:n?(n.offsetLeft||0)+"px":"0",width:n?(n.offsetWidth||0)+"px":"0"})}});let mk=(()=>{class t{constructor(e,i,o,r){this._elementRef=e,this._ngZone=i,this._inkBarPositioner=o,this._animationMode=r}alignToElement(e){this.show(),this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{const i=this._inkBarPositioner(e),o=this._elementRef.nativeElement;o.style.left=i.left,o.style.width=i.width})}show(){this._elementRef.nativeElement.style.visibility="visible"}hide(){this._elementRef.nativeElement.style.visibility="hidden"}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(T9),b(gn,8))},t.\u0275dir=oe({type:t,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(e,i){2&e&&rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)}}),t})();const E9=new _e("MatTabContent"),gk=new _e("MatTabLabel"),_k=new _e("MAT_TAB");let bk=(()=>{class t extends a7{constructor(e,i,o){super(e,i),this._closestTab=o}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(sn),b(_k,8))},t.\u0275dir=oe({type:t,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[ze([{provide:gk,useExisting:t}]),Ce]}),t})();const I9=pa(class{}),vk=new _e("MAT_TAB_GROUP");let wp=(()=>{class t extends I9{constructor(e,i){super(),this._viewContainerRef=e,this._closestTabGroup=i,this.textLabel="",this._contentPortal=null,this._stateChanges=new ie,this.position=null,this.origin=null,this.isActive=!1}get templateLabel(){return this._templateLabel}set templateLabel(e){this._setTemplateLabelInput(e)}get content(){return this._contentPortal}ngOnChanges(e){(e.hasOwnProperty("textLabel")||e.hasOwnProperty("disabled"))&&this._stateChanges.next()}ngOnDestroy(){this._stateChanges.complete()}ngOnInit(){this._contentPortal=new Wr(this._explicitContent||this._implicitContent,this._viewContainerRef)}_setTemplateLabelInput(e){e&&e._closestTab===this&&(this._templateLabel=e)}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(vk,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,gk,5),mt(o,E9,7,rn)),2&e){let r;Fe(r=Ne())&&(i.templateLabel=r.first),Fe(r=Ne())&&(i._explicitContent=r.first)}},viewQuery:function(e,i){if(1&e&&Tt(rn,7),2&e){let o;Fe(o=Ne())&&(i._implicitContent=o.first)}},inputs:{disabled:"disabled",textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass"},exportAs:["matTab"],features:[ze([{provide:_k,useExisting:t}]),Ce,nn],ngContentSelectors:fk,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),_(0,u9,1,0,"ng-template"))},encapsulation:2}),t})();const O9={translateTab:Oo("translateTab",[jn("center, void, left-origin-center, right-origin-center",Vt({transform:"none"})),jn("left",Vt({transform:"translate3d(-100%, 0, 0)",minHeight:"1px"})),jn("right",Vt({transform:"translate3d(100%, 0, 0)",minHeight:"1px"})),Kn("* => left, * => right, left => center, right => center",si("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),Kn("void => left-origin-center",[Vt({transform:"translate3d(-100%, 0, 0)"}),si("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),Kn("void => right-origin-center",[Vt({transform:"translate3d(100%, 0, 0)"}),si("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])};let A9=(()=>{class t extends Os{constructor(e,i,o,r){super(e,i,r),this._host=o,this._centeringSub=k.EMPTY,this._leavingSub=k.EMPTY}ngOnInit(){super.ngOnInit(),this._centeringSub=this._host._beforeCentering.pipe(Nn(this._host._isCenterPosition(this._host._position))).subscribe(e=>{e&&!this.hasAttached()&&this.attach(this._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(()=>{this.detach()})}ngOnDestroy(){super.ngOnDestroy(),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(gs),b(sn),b(zt(()=>yk)),b(ht))},t.\u0275dir=oe({type:t,selectors:[["","matTabBodyHost",""]],features:[Ce]}),t})(),P9=(()=>{class t{constructor(e,i,o){this._elementRef=e,this._dir=i,this._dirChangeSubscription=k.EMPTY,this._translateTabComplete=new ie,this._onCentering=new Pe,this._beforeCentering=new Pe,this._afterLeavingCenter=new Pe,this._onCentered=new Pe(!0),this.animationDuration="500ms",i&&(this._dirChangeSubscription=i.change.subscribe(r=>{this._computePositionAnimationState(r),o.markForCheck()})),this._translateTabComplete.pipe(nd((r,s)=>r.fromState===s.fromState&&r.toState===s.toState)).subscribe(r=>{this._isCenterPosition(r.toState)&&this._isCenterPosition(this._position)&&this._onCentered.emit(),this._isCenterPosition(r.fromState)&&!this._isCenterPosition(this._position)&&this._afterLeavingCenter.emit()})}set position(e){this._positionIndex=e,this._computePositionAnimationState()}ngOnInit(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}ngOnDestroy(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}_onTranslateTabStarted(e){const i=this._isCenterPosition(e.toState);this._beforeCentering.emit(i),i&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_isCenterPosition(e){return"center"==e||"left-origin-center"==e||"right-origin-center"==e}_computePositionAnimationState(e=this._getLayoutDirection()){this._position=this._positionIndex<0?"ltr"==e?"left":"right":this._positionIndex>0?"ltr"==e?"right":"left":"center"}_computePositionFromOrigin(e){const i=this._getLayoutDirection();return"ltr"==i&&e<=0||"rtl"==i&&e>0?"left-origin-center":"right-origin-center"}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(ai,8),b(At))},t.\u0275dir=oe({type:t,inputs:{_content:["content","_content"],origin:"origin",animationDuration:"animationDuration",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),t})(),yk=(()=>{class t extends P9{constructor(e,i,o){super(e,i,o)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(ai,8),b(At))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab-body"]],viewQuery:function(e,i){if(1&e&&Tt(Os,5),2&e){let o;Fe(o=Ne())&&(i._portalHost=o.first)}},hostAttrs:[1,"mat-tab-body"],features:[Ce],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(e,i){1&e&&(d(0,"div",0,1),N("@translateTab.start",function(r){return i._onTranslateTabStarted(r)})("@translateTab.done",function(r){return i._translateTabComplete.next(r)}),_(2,h9,0,0,"ng-template",2),c()),2&e&&m("@translateTab",Tw(3,f9,i._position,Kt(1,p9,i.animationDuration)))},directives:[A9],styles:['.mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}.mat-tab-body-content[style*="visibility: hidden"]{display:none}\n'],encapsulation:2,data:{animation:[O9.translateTab]}}),t})();const Ck=new _e("MAT_TABS_CONFIG"),R9=pa(class{});let wk=(()=>{class t extends R9{constructor(e){super(),this.elementRef=e}focus(){this.elementRef.nativeElement.focus()}getOffsetLeft(){return this.elementRef.nativeElement.offsetLeft}getOffsetWidth(){return this.elementRef.nativeElement.offsetWidth}}return t.\u0275fac=function(e){return new(e||t)(b(He))},t.\u0275dir=oe({type:t,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(e,i){2&e&&(et("aria-disabled",!!i.disabled),rt("mat-tab-disabled",i.disabled))},inputs:{disabled:"disabled"},features:[Ce]}),t})();const Dk=ca({passive:!0});let L9=(()=>{class t{constructor(e,i,o,r,s,a,l){this._elementRef=e,this._changeDetectorRef=i,this._viewportRuler=o,this._dir=r,this._ngZone=s,this._platform=a,this._animationMode=l,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new ie,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new ie,this.disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new Pe,this.indexFocused=new Pe,s.runOutsideAngular(()=>{Ki(e.nativeElement,"mouseleave").pipe(tt(this._destroyed)).subscribe(()=>{this._stopInterval()})})}get selectedIndex(){return this._selectedIndex}set selectedIndex(e){e=Zn(e),this._selectedIndex!=e&&(this._selectedIndexChanged=!0,this._selectedIndex=e,this._keyManager&&this._keyManager.updateActiveItem(e))}ngAfterViewInit(){Ki(this._previousPaginator.nativeElement,"touchstart",Dk).pipe(tt(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("before")}),Ki(this._nextPaginator.nativeElement,"touchstart",Dk).pipe(tt(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("after")})}ngAfterContentInit(){const e=this._dir?this._dir.change:We("ltr"),i=this._viewportRuler.change(150),o=()=>{this.updatePagination(),this._alignInkBarToSelectedTab()};this._keyManager=new Nh(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap(),this._keyManager.updateActiveItem(this._selectedIndex),this._ngZone.onStable.pipe(Ot(1)).subscribe(o),Tn(e,i,this._items.changes,this._itemsResized()).pipe(tt(this._destroyed)).subscribe(()=>{this._ngZone.run(()=>{Promise.resolve().then(()=>{this._scrollDistance=Math.max(0,Math.min(this._getMaxScrollDistance(),this._scrollDistance)),o()})}),this._keyManager.withHorizontalOrientation(this._getLayoutDirection())}),this._keyManager.change.pipe(tt(this._destroyed)).subscribe(r=>{this.indexFocused.emit(r),this._setTabFocus(r)})}_itemsResized(){return"function"!=typeof ResizeObserver?yo:this._items.changes.pipe(Nn(this._items),Li(e=>new Ue(i=>this._ngZone.runOutsideAngular(()=>{const o=new ResizeObserver(()=>{i.next()});return e.forEach(r=>{o.observe(r.elementRef.nativeElement)}),()=>{o.disconnect()}}))),F_(1))}ngAfterContentChecked(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}_handleKeydown(e){if(!fi(e))switch(e.keyCode){case 13:case 32:this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(e));break;default:this._keyManager.onKeydown(e)}}_onContentChanges(){const e=this._elementRef.nativeElement.textContent;e!==this._currentTextContent&&(this._currentTextContent=e||"",this._ngZone.run(()=>{this.updatePagination(),this._alignInkBarToSelectedTab(),this._changeDetectorRef.markForCheck()}))}updatePagination(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}get focusIndex(){return this._keyManager?this._keyManager.activeItemIndex:0}set focusIndex(e){!this._isValidIndex(e)||this.focusIndex===e||!this._keyManager||this._keyManager.setActiveItem(e)}_isValidIndex(e){if(!this._items)return!0;const i=this._items?this._items.toArray()[e]:null;return!!i&&!i.disabled}_setTabFocus(e){if(this._showPaginationControls&&this._scrollToLabel(e),this._items&&this._items.length){this._items.toArray()[e].focus();const i=this._tabListContainer.nativeElement;i.scrollLeft="ltr"==this._getLayoutDirection()?0:i.scrollWidth-i.offsetWidth}}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_updateTabScrollPosition(){if(this.disablePagination)return;const e=this.scrollDistance,i="ltr"===this._getLayoutDirection()?-e:e;this._tabList.nativeElement.style.transform=`translateX(${Math.round(i)}px)`,(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}get scrollDistance(){return this._scrollDistance}set scrollDistance(e){this._scrollTo(e)}_scrollHeader(e){return this._scrollTo(this._scrollDistance+("before"==e?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}_handlePaginatorClick(e){this._stopInterval(),this._scrollHeader(e)}_scrollToLabel(e){if(this.disablePagination)return;const i=this._items?this._items.toArray()[e]:null;if(!i)return;const o=this._tabListContainer.nativeElement.offsetWidth,{offsetLeft:r,offsetWidth:s}=i.elementRef.nativeElement;let a,l;"ltr"==this._getLayoutDirection()?(a=r,l=a+s):(l=this._tabListInner.nativeElement.offsetWidth-r,a=l-s);const u=this.scrollDistance,p=this.scrollDistance+o;ap&&(this.scrollDistance+=l-p+60)}_checkPaginationEnabled(){if(this.disablePagination)this._showPaginationControls=!1;else{const e=this._tabListInner.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;e||(this.scrollDistance=0),e!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=e}}_checkScrollingControls(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}_getMaxScrollDistance(){return this._tabListInner.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}_alignInkBarToSelectedTab(){const e=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,i=e?e.elementRef.nativeElement:null;i?this._inkBar.alignToElement(i):this._inkBar.hide()}_stopInterval(){this._stopScrolling.next()}_handlePaginatorPress(e,i){i&&null!=i.button&&0!==i.button||(this._stopInterval(),op(650,100).pipe(tt(Tn(this._stopScrolling,this._destroyed))).subscribe(()=>{const{maxScrollDistance:o,distance:r}=this._scrollHeader(e);(0===r||r>=o)&&this._stopInterval()}))}_scrollTo(e){if(this.disablePagination)return{maxScrollDistance:0,distance:0};const i=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(i,e)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:i,distance:this._scrollDistance}}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(yr),b(ai,8),b(Je),b(dn),b(gn,8))},t.\u0275dir=oe({type:t,inputs:{disablePagination:"disablePagination"}}),t})(),B9=(()=>{class t extends L9{constructor(e,i,o,r,s,a,l){super(e,i,o,r,s,a,l),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=Xe(e)}_itemSelected(e){e.preventDefault()}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(yr),b(ai,8),b(Je),b(dn),b(gn,8))},t.\u0275dir=oe({type:t,inputs:{disableRipple:"disableRipple"},features:[Ce]}),t})(),V9=(()=>{class t extends B9{constructor(e,i,o,r,s,a,l){super(e,i,o,r,s,a,l)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(yr),b(ai,8),b(Je),b(dn),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab-header"]],contentQueries:function(e,i,o){if(1&e&&mt(o,wk,4),2&e){let r;Fe(r=Ne())&&(i._items=r)}},viewQuery:function(e,i){if(1&e&&(Tt(mk,7),Tt(m9,7),Tt(g9,7),Tt(_9,7),Tt(b9,5),Tt(v9,5)),2&e){let o;Fe(o=Ne())&&(i._inkBar=o.first),Fe(o=Ne())&&(i._tabListContainer=o.first),Fe(o=Ne())&&(i._tabList=o.first),Fe(o=Ne())&&(i._tabListInner=o.first),Fe(o=Ne())&&(i._nextPaginator=o.first),Fe(o=Ne())&&(i._previousPaginator=o.first)}},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(e,i){2&e&&rt("mat-tab-header-pagination-controls-enabled",i._showPaginationControls)("mat-tab-header-rtl","rtl"==i._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[Ce],ngContentSelectors:fk,decls:14,vars:10,consts:[["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","disabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["tabListInner",""],["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","disabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(e,i){1&e&&(Jt(),d(0,"button",0,1),N("click",function(){return i._handlePaginatorClick("before")})("mousedown",function(r){return i._handlePaginatorPress("before",r)})("touchend",function(){return i._stopInterval()}),E(2,"div",2),c(),d(3,"div",3,4),N("keydown",function(r){return i._handleKeydown(r)}),d(5,"div",5,6),N("cdkObserveContent",function(){return i._onContentChanges()}),d(7,"div",7,8),ct(9),c(),E(10,"mat-ink-bar"),c()(),d(11,"button",9,10),N("mousedown",function(r){return i._handlePaginatorPress("after",r)})("click",function(){return i._handlePaginatorClick("after")})("touchend",function(){return i._stopInterval()}),E(13,"div",2),c()),2&e&&(rt("mat-tab-header-pagination-disabled",i._disableScrollBefore),m("matRippleDisabled",i._disableScrollBefore||i.disableRipple)("disabled",i._disableScrollBefore||null),f(5),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode),f(6),rt("mat-tab-header-pagination-disabled",i._disableScrollAfter),m("matRippleDisabled",i._disableScrollAfter||i.disableRipple)("disabled",i._disableScrollAfter||null))},directives:[or,N_,mk],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-ink-bar{transition:none;animation:none}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}._mat-animation-noopable.mat-tab-list{transition:none;animation:none}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{min-width:72px}}\n"],encapsulation:2}),t})(),j9=0;class H9{}const U9=$r(vr(class{constructor(t){this._elementRef=t}}),"primary");let z9=(()=>{class t extends U9{constructor(e,i,o,r){var s;super(e),this._changeDetectorRef=i,this._animationMode=r,this._tabs=new vs,this._indexToSelect=0,this._lastFocusedTabIndex=null,this._tabBodyWrapperHeight=0,this._tabsSubscription=k.EMPTY,this._tabLabelSubscription=k.EMPTY,this._selectedIndex=null,this.headerPosition="above",this.selectedIndexChange=new Pe,this.focusChange=new Pe,this.animationDone=new Pe,this.selectedTabChange=new Pe(!0),this._groupId=j9++,this.animationDuration=o&&o.animationDuration?o.animationDuration:"500ms",this.disablePagination=!(!o||null==o.disablePagination)&&o.disablePagination,this.dynamicHeight=!(!o||null==o.dynamicHeight)&&o.dynamicHeight,this.contentTabIndex=null!==(s=null==o?void 0:o.contentTabIndex)&&void 0!==s?s:null}get dynamicHeight(){return this._dynamicHeight}set dynamicHeight(e){this._dynamicHeight=Xe(e)}get selectedIndex(){return this._selectedIndex}set selectedIndex(e){this._indexToSelect=Zn(e,null)}get animationDuration(){return this._animationDuration}set animationDuration(e){this._animationDuration=/^\d+$/.test(e+"")?e+"ms":e}get contentTabIndex(){return this._contentTabIndex}set contentTabIndex(e){this._contentTabIndex=Zn(e,null)}get backgroundColor(){return this._backgroundColor}set backgroundColor(e){const i=this._elementRef.nativeElement;i.classList.remove(`mat-background-${this.backgroundColor}`),e&&i.classList.add(`mat-background-${e}`),this._backgroundColor=e}ngAfterContentChecked(){const e=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=e){const i=null==this._selectedIndex;if(!i){this.selectedTabChange.emit(this._createChangeEvent(e));const o=this._tabBodyWrapper.nativeElement;o.style.minHeight=o.clientHeight+"px"}Promise.resolve().then(()=>{this._tabs.forEach((o,r)=>o.isActive=r===e),i||(this.selectedIndexChange.emit(e),this._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach((i,o)=>{i.position=o-e,null!=this._selectedIndex&&0==i.position&&!i.origin&&(i.origin=e-this._selectedIndex)}),this._selectedIndex!==e&&(this._selectedIndex=e,this._lastFocusedTabIndex=null,this._changeDetectorRef.markForCheck())}ngAfterContentInit(){this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(()=>{const e=this._clampTabIndex(this._indexToSelect);if(e===this._selectedIndex){const i=this._tabs.toArray();let o;for(let r=0;r{i[e].isActive=!0,this.selectedTabChange.emit(this._createChangeEvent(e))})}this._changeDetectorRef.markForCheck()})}_subscribeToAllTabChanges(){this._allTabs.changes.pipe(Nn(this._allTabs)).subscribe(e=>{this._tabs.reset(e.filter(i=>i._closestTabGroup===this||!i._closestTabGroup)),this._tabs.notifyOnChanges()})}ngOnDestroy(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe()}realignInkBar(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}updatePagination(){this._tabHeader&&this._tabHeader.updatePagination()}focusTab(e){const i=this._tabHeader;i&&(i.focusIndex=e)}_focusChanged(e){this._lastFocusedTabIndex=e,this.focusChange.emit(this._createChangeEvent(e))}_createChangeEvent(e){const i=new H9;return i.index=e,this._tabs&&this._tabs.length&&(i.tab=this._tabs.toArray()[e]),i}_subscribeToTabLabels(){this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=Tn(...this._tabs.map(e=>e._stateChanges)).subscribe(()=>this._changeDetectorRef.markForCheck())}_clampTabIndex(e){return Math.min(this._tabs.length-1,Math.max(e||0,0))}_getTabLabelId(e){return`mat-tab-label-${this._groupId}-${e}`}_getTabContentId(e){return`mat-tab-content-${this._groupId}-${e}`}_setTabBodyWrapperHeight(e){if(!this._dynamicHeight||!this._tabBodyWrapperHeight)return;const i=this._tabBodyWrapper.nativeElement;i.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(i.style.height=e+"px")}_removeTabBodyWrapperHeight(){const e=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=e.clientHeight,e.style.height="",this.animationDone.emit()}_handleClick(e,i,o){e.disabled||(this.selectedIndex=i.focusIndex=o)}_getTabIndex(e,i){var o;return e.disabled?null:i===(null!==(o=this._lastFocusedTabIndex)&&void 0!==o?o:this.selectedIndex)?0:-1}_tabFocusChanged(e,i){e&&"mouse"!==e&&"touch"!==e&&(this._tabHeader.focusIndex=i)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(Ck,8),b(gn,8))},t.\u0275dir=oe({type:t,inputs:{dynamicHeight:"dynamicHeight",selectedIndex:"selectedIndex",headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:"contentTabIndex",disablePagination:"disablePagination",backgroundColor:"backgroundColor"},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},features:[Ce]}),t})(),rv=(()=>{class t extends z9{constructor(e,i,o,r){super(e,i,o,r)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(Ck,8),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab-group"]],contentQueries:function(e,i,o){if(1&e&&mt(o,wp,5),2&e){let r;Fe(r=Ne())&&(i._allTabs=r)}},viewQuery:function(e,i){if(1&e&&(Tt(y9,5),Tt(C9,5)),2&e){let o;Fe(o=Ne())&&(i._tabBodyWrapper=o.first),Fe(o=Ne())&&(i._tabHeader=o.first)}},hostAttrs:[1,"mat-tab-group"],hostVars:4,hostBindings:function(e,i){2&e&&rt("mat-tab-group-dynamic-height",i.dynamicHeight)("mat-tab-group-inverted-header","below"===i.headerPosition)},inputs:{color:"color",disableRipple:"disableRipple"},exportAs:["matTabGroup"],features:[ze([{provide:vk,useExisting:t}]),Ce],decls:6,vars:7,consts:[[3,"selectedIndex","disableRipple","disablePagination","indexFocused","selectFocusedIndex"],["tabHeader",""],["class","mat-tab-label mat-focus-indicator","role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",3,"id","mat-tab-label-active","ngClass","disabled","matRippleDisabled","click","cdkFocusChange",4,"ngFor","ngForOf"],[1,"mat-tab-body-wrapper"],["tabBodyWrapper",""],["role","tabpanel",3,"id","mat-tab-body-active","ngClass","content","position","origin","animationDuration","_onCentered","_onCentering",4,"ngFor","ngForOf"],["role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",1,"mat-tab-label","mat-focus-indicator",3,"id","ngClass","disabled","matRippleDisabled","click","cdkFocusChange"],[1,"mat-tab-label-content"],[3,"ngIf","ngIfElse"],["tabTextLabel",""],[3,"cdkPortalOutlet"],["role","tabpanel",3,"id","ngClass","content","position","origin","animationDuration","_onCentered","_onCentering"]],template:function(e,i){1&e&&(d(0,"mat-tab-header",0,1),N("indexFocused",function(r){return i._focusChanged(r)})("selectFocusedIndex",function(r){return i.selectedIndex=r}),_(2,M9,5,15,"div",2),c(),d(3,"div",3,4),_(5,x9,1,10,"mat-tab-body",5),c()),2&e&&(m("selectedIndex",i.selectedIndex||0)("disableRipple",i.disableRipple)("disablePagination",i.disablePagination),f(2),m("ngForOf",i._tabs),f(1),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode),f(2),m("ngForOf",i._tabs))},directives:[V9,yk,ri,wk,or,UV,nr,Et,Os],styles:[".mat-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-tab-group.mat-tab-group-inverted-header{flex-direction:column-reverse}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{padding:0 12px}}@media(max-width: 959px){.mat-tab-label{padding:0 12px}}.mat-tab-group[mat-stretch-tabs]>.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-tab-body-wrapper{transition:none;animation:none}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}\n"],encapsulation:2}),t})(),Mk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,Cd,fa,Ph,SM],ft]}),t})();function xk(...t){const n=Yl(t),e=Qv(t),{args:i,keys:o}=VM(t);if(0===i.length)return ui([],n);const r=new Ue(function $9(t,n,e=Me){return i=>{Tk(n,()=>{const{length:o}=t,r=new Array(o);let s=o,a=o;for(let l=0;l{const u=ui(t[l],n);let p=!1;u.subscribe(st(i,g=>{r[l]=g,p||(p=!0,a--),a||i.next(e(r.slice()))},()=>{--s||i.complete()}))},i)},i)}}(i,n,o?s=>jM(o,s):Me));return e?r.pipe(Q_(e)):r}function Tk(t,n,e){t?kr(e,t,n):n()}const kk=new Set;let jl,G9=(()=>{class t{constructor(e){this._platform=e,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):q9}matchMedia(e){return(this._platform.WEBKIT||this._platform.BLINK)&&function W9(t){if(!kk.has(t))try{jl||(jl=document.createElement("style"),jl.setAttribute("type","text/css"),document.head.appendChild(jl)),jl.sheet&&(jl.sheet.insertRule(`@media ${t} {body{ }}`,0),kk.add(t))}catch(n){console.error(n)}}(e),this._matchMedia(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(dn))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function q9(t){return{matches:"all"===t||""===t,media:t,addListener:()=>{},removeListener:()=>{}}}let sv=(()=>{class t{constructor(e,i){this._mediaMatcher=e,this._zone=i,this._queries=new Map,this._destroySubject=new ie}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(e){return Ek(Ah(e)).some(o=>this._registerQuery(o).mql.matches)}observe(e){let r=xk(Ek(Ah(e)).map(s=>this._registerQuery(s).observable));return r=id(r.pipe(Ot(1)),r.pipe(F_(1),Oh(0))),r.pipe(je(s=>{const a={matches:!1,breakpoints:{}};return s.forEach(({matches:l,query:u})=>{a.matches=a.matches||l,a.breakpoints[u]=l}),a}))}_registerQuery(e){if(this._queries.has(e))return this._queries.get(e);const i=this._mediaMatcher.matchMedia(e),r={observable:new Ue(s=>{const a=l=>this._zone.run(()=>s.next(l));return i.addListener(a),()=>{i.removeListener(a)}}).pipe(Nn(i),je(({matches:s})=>({query:e,matches:s})),tt(this._destroySubject)),mql:i};return this._queries.set(e,r),r}}return t.\u0275fac=function(e){return new(e||t)(Q(G9),Q(Je))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function Ek(t){return t.map(n=>n.split(",")).reduce((n,e)=>n.concat(e)).map(n=>n.trim())}function K9(t,n){if(1&t){const e=pe();d(0,"div",2)(1,"button",3),N("click",function(){return se(e),D().action()}),h(2),c()()}if(2&t){const e=D();f(2),Ee(e.data.action)}}function Z9(t,n){}const Ok=new _e("MatSnackBarData");class Dp{constructor(){this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"}}const Q9=Math.pow(2,31)-1;class av{constructor(n,e){this._overlayRef=e,this._afterDismissed=new ie,this._afterOpened=new ie,this._onAction=new ie,this._dismissedByAction=!1,this.containerInstance=n,n._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete(),this.dismiss()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(n){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(n,Q9))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}}let Y9=(()=>{class t{constructor(e,i){this.snackBarRef=e,this.data=i}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}}return t.\u0275fac=function(e){return new(e||t)(b(av),b(Ok))},t.\u0275cmp=Ae({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[[1,"mat-simple-snack-bar-content"],["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(e,i){1&e&&(d(0,"span",0),h(1),c(),_(2,K9,3,1,"div",1)),2&e&&(f(1),Ee(i.data.message),f(1),m("ngIf",i.hasAction))},directives:[Ht,Et],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}.mat-simple-snack-bar-content{overflow:hidden;text-overflow:ellipsis}\n"],encapsulation:2,changeDetection:0}),t})();const X9={snackBarState:Oo("state",[jn("void, hidden",Vt({transform:"scale(0.8)",opacity:0})),jn("visible",Vt({transform:"scale(1)",opacity:1})),Kn("* => visible",si("150ms cubic-bezier(0, 0, 0.2, 1)")),Kn("* => void, * => hidden",si("75ms cubic-bezier(0.4, 0.0, 1, 1)",Vt({opacity:0})))])};let J9=(()=>{class t extends ap{constructor(e,i,o,r,s){super(),this._ngZone=e,this._elementRef=i,this._changeDetectorRef=o,this._platform=r,this.snackBarConfig=s,this._announceDelay=150,this._destroyed=!1,this._onAnnounce=new ie,this._onExit=new ie,this._onEnter=new ie,this._animationState="void",this.attachDomPortal=a=>(this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachDomPortal(a)),this._live="assertive"!==s.politeness||s.announcementMessage?"off"===s.politeness?"off":"polite":"assertive",this._platform.FIREFOX&&("polite"===this._live&&(this._role="status"),"assertive"===this._live&&(this._role="alert"))}attachComponentPortal(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(e)}attachTemplatePortal(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(e)}onAnimationEnd(e){const{fromState:i,toState:o}=e;if(("void"===o&&"void"!==i||"hidden"===o)&&this._completeExit(),"visible"===o){const r=this._onEnter;this._ngZone.run(()=>{r.next(),r.complete()})}}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}exit(){return this._ngZone.run(()=>{this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId)}),this._onExit}ngOnDestroy(){this._destroyed=!0,this._completeExit()}_completeExit(){this._ngZone.onMicrotaskEmpty.pipe(Ot(1)).subscribe(()=>{this._ngZone.run(()=>{this._onExit.next(),this._onExit.complete()})})}_applySnackBarClasses(){const e=this._elementRef.nativeElement,i=this.snackBarConfig.panelClass;i&&(Array.isArray(i)?i.forEach(o=>e.classList.add(o)):e.classList.add(i)),"center"===this.snackBarConfig.horizontalPosition&&e.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&e.classList.add("mat-snack-bar-top")}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{const e=this._elementRef.nativeElement.querySelector("[aria-hidden]"),i=this._elementRef.nativeElement.querySelector("[aria-live]");if(e&&i){let o=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&e.contains(document.activeElement)&&(o=document.activeElement),e.removeAttribute("aria-hidden"),i.appendChild(e),null==o||o.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}}return t.\u0275fac=function(e){return new(e||t)(b(Je),b(He),b(At),b(dn),b(Dp))},t.\u0275cmp=Ae({type:t,selectors:[["snack-bar-container"]],viewQuery:function(e,i){if(1&e&&Tt(Os,7),2&e){let o;Fe(o=Ne())&&(i._portalOutlet=o.first)}},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(e,i){1&e&&Tc("@state.done",function(r){return i.onAnimationEnd(r)}),2&e&&Ec("@state",i._animationState)},features:[Ce],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(e,i){1&e&&(d(0,"div",0),_(1,Z9,0,0,"ng-template",1),c(),E(2,"div")),2&e&&(f(2),et("aria-live",i._live)("role",i._role))},directives:[Os],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[X9.snackBarState]}}),t})(),lv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Pl,Cd,qi,Z_,ft],ft]}),t})();const Ak=new _e("mat-snack-bar-default-options",{providedIn:"root",factory:function eU(){return new Dp}});let tU=(()=>{class t{constructor(e,i,o,r,s,a){this._overlay=e,this._live=i,this._injector=o,this._breakpointObserver=r,this._parentSnackBar=s,this._defaultConfig=a,this._snackBarRefAtThisLevel=null}get _openedSnackBarRef(){const e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}openFromComponent(e,i){return this._attach(e,i)}openFromTemplate(e,i){return this._attach(e,i)}open(e,i="",o){const r=Object.assign(Object.assign({},this._defaultConfig),o);return r.data={message:e,action:i},r.announcementMessage===e&&(r.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,r)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(e,i){const r=pn.create({parent:i&&i.viewContainerRef&&i.viewContainerRef.injector||this._injector,providers:[{provide:Dp,useValue:i}]}),s=new Ol(this.snackBarContainerComponent,i.viewContainerRef,r),a=e.attach(s);return a.instance.snackBarConfig=i,a.instance}_attach(e,i){const o=Object.assign(Object.assign(Object.assign({},new Dp),this._defaultConfig),i),r=this._createOverlay(o),s=this._attachSnackBarContainer(r,o),a=new av(s,r);if(e instanceof rn){const l=new Wr(e,null,{$implicit:o.data,snackBarRef:a});a.instance=s.attachTemplatePortal(l)}else{const l=this._createInjector(o,a),u=new Ol(e,void 0,l),p=s.attachComponentPortal(u);a.instance=p.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(tt(r.detachments())).subscribe(l=>{r.overlayElement.classList.toggle(this.handsetCssClass,l.matches)}),o.announcementMessage&&s._onAnnounce.subscribe(()=>{this._live.announce(o.announcementMessage,o.politeness)}),this._animateSnackBar(a,o),this._openedSnackBarRef=a,this._openedSnackBarRef}_animateSnackBar(e,i){e.afterDismissed().subscribe(()=>{this._openedSnackBarRef==e&&(this._openedSnackBarRef=null),i.announcementMessage&&this._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter(),i.duration&&i.duration>0&&e.afterOpened().subscribe(()=>e._dismissAfter(i.duration))}_createOverlay(e){const i=new Al;i.direction=e.direction;let o=this._overlay.position().global();const r="rtl"===e.direction,s="left"===e.horizontalPosition||"start"===e.horizontalPosition&&!r||"end"===e.horizontalPosition&&r,a=!s&&"center"!==e.horizontalPosition;return s?o.left("0"):a?o.right("0"):o.centerHorizontally(),"top"===e.verticalPosition?o.top("0"):o.bottom("0"),i.positionStrategy=o,this._overlay.create(i)}_createInjector(e,i){return pn.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:av,useValue:i},{provide:Ok,useValue:e.data}]})}}return t.\u0275fac=function(e){return new(e||t)(Q(Qi),Q(H_),Q(pn),Q(sv),Q(t,12),Q(Ak))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),nU=(()=>{class t extends tU{constructor(e,i,o,r,s,a){super(e,i,o,r,s,a),this.simpleSnackBarComponent=Y9,this.snackBarContainerComponent=J9,this.handsetCssClass="mat-snack-bar-handset"}}return t.\u0275fac=function(e){return new(e||t)(Q(Qi),Q(H_),Q(pn),Q(sv),Q(t,12),Q(Ak))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:lv}),t})();function iU(t,n){}class cv{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.delayFocusTrap=!0,this.closeOnNavigation=!0}}const oU={dialogContainer:Oo("dialogContainer",[jn("void, exit",Vt({opacity:0,transform:"scale(0.7)"})),jn("enter",Vt({transform:"none"})),Kn("* => enter",_S([si("150ms cubic-bezier(0, 0, 0.2, 1)",Vt({transform:"none",opacity:1})),e_("@*",Jg(),{optional:!0})])),Kn("* => void, * => exit",_S([si("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Vt({opacity:0})),e_("@*",Jg(),{optional:!0})]))])};let rU=(()=>{class t extends ap{constructor(e,i,o,r,s,a,l,u){super(),this._elementRef=e,this._focusTrapFactory=i,this._changeDetectorRef=o,this._config=s,this._interactivityChecker=a,this._ngZone=l,this._focusMonitor=u,this._animationStateChanged=new Pe,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=p=>(this._portalOutlet.hasAttached(),this._portalOutlet.attachDomPortal(p)),this._ariaLabelledBy=s.ariaLabelledBy||null,this._document=r}_initializeWithAttachedContent(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=k_())}attachComponentPortal(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(e)}attachTemplatePortal(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(e)}_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const o=()=>{e.removeEventListener("blur",o),e.removeEventListener("mousedown",o),e.removeAttribute("tabindex")};e.addEventListener("blur",o),e.addEventListener("mousedown",o)})),e.focus(i)}_focusByCssSelector(e,i){let o=this._elementRef.nativeElement.querySelector(e);o&&this._forceFocus(o,i)}_trapFocus(){const e=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||e.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(i=>{i||this._focusDialogContainer()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}}_restoreFocus(){const e=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&e&&"function"==typeof e.focus){const i=k_(),o=this._elementRef.nativeElement;(!i||i===this._document.body||i===o||o.contains(i))&&(this._focusMonitor?(this._focusMonitor.focusVia(e,this._closeInteractionType),this._closeInteractionType=null):e.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const e=this._elementRef.nativeElement,i=k_();return e===i||e.contains(i)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(vM),b(At),b(ht,8),b(cv),b(B_),b(Je),b(Ro))},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&Tt(Os,7),2&e){let o;Fe(o=Ne())&&(i._portalOutlet=o.first)}},features:[Ce]}),t})(),sU=(()=>{class t extends rU{constructor(){super(...arguments),this._state="enter"}_onAnimationDone({toState:e,totalTime:i}){"enter"===e?(this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:i})):"exit"===e&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:i}))}_onAnimationStart({toState:e,totalTime:i}){"enter"===e?this._animationStateChanged.next({state:"opening",totalTime:i}):("exit"===e||"void"===e)&&this._animationStateChanged.next({state:"closing",totalTime:i})}_startExitAnimation(){this._state="exit",this._changeDetectorRef.markForCheck()}_initializeWithAttachedContent(){super._initializeWithAttachedContent(),this._config.delayFocusTrap||this._trapFocus()}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(e,i){1&e&&Tc("@dialogContainer.start",function(r){return i._onAnimationStart(r)})("@dialogContainer.done",function(r){return i._onAnimationDone(r)}),2&e&&(Fr("id",i._id),et("role",i._config.role)("aria-labelledby",i._config.ariaLabel?null:i._ariaLabelledBy)("aria-label",i._config.ariaLabel)("aria-describedby",i._config.ariaDescribedBy||null),Ec("@dialogContainer",i._state))},features:[Ce],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(e,i){1&e&&_(0,iU,0,0,"ng-template",0)},directives:[Os],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[oU.dialogContainer]}}),t})(),aU=0;class Ti{constructor(n,e,i="mat-dialog-"+aU++){this._overlayRef=n,this._containerInstance=e,this.id=i,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new ie,this._afterClosed=new ie,this._beforeClosed=new ie,this._state=0,e._id=i,e._animationStateChanged.pipe(It(o=>"opened"===o.state),Ot(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe(It(o=>"closed"===o.state),Ot(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),n.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._afterClosed.next(this._result),this._afterClosed.complete(),this.componentInstance=null,this._overlayRef.dispose()}),n.keydownEvents().pipe(It(o=>27===o.keyCode&&!this.disableClose&&!fi(o))).subscribe(o=>{o.preventDefault(),dv(this,"keyboard")}),n.backdropClick().subscribe(()=>{this.disableClose?this._containerInstance._recaptureFocus():dv(this,"mouse")})}close(n){this._result=n,this._containerInstance._animationStateChanged.pipe(It(e=>"closing"===e.state),Ot(1)).subscribe(e=>{this._beforeClosed.next(n),this._beforeClosed.complete(),this._overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._afterClosed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._overlayRef.backdropClick()}keydownEvents(){return this._overlayRef.keydownEvents()}updatePosition(n){let e=this._getPositionStrategy();return n&&(n.left||n.right)?n.left?e.left(n.left):e.right(n.right):e.centerHorizontally(),n&&(n.top||n.bottom)?n.top?e.top(n.top):e.bottom(n.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this}updateSize(n="",e=""){return this._overlayRef.updateSize({width:n,height:e}),this._overlayRef.updatePosition(),this}addPanelClass(n){return this._overlayRef.addPanelClass(n),this}removePanelClass(n){return this._overlayRef.removePanelClass(n),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._overlayRef.dispose()}_getPositionStrategy(){return this._overlayRef.getConfig().positionStrategy}}function dv(t,n,e){return void 0!==t._containerInstance&&(t._containerInstance._closeInteractionType=n),t.close(e)}const Xi=new _e("MatDialogData"),lU=new _e("mat-dialog-default-options"),Pk=new _e("mat-dialog-scroll-strategy"),dU={provide:Pk,deps:[Qi],useFactory:function cU(t){return()=>t.scrollStrategies.block()}};let uU=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g){this._overlay=e,this._injector=i,this._defaultOptions=o,this._parentDialog=r,this._overlayContainer=s,this._dialogRefConstructor=l,this._dialogContainerType=u,this._dialogDataToken=p,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new ie,this._afterOpenedAtThisLevel=new ie,this._ariaHiddenElements=new Map,this.afterAllClosed=wd(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Nn(void 0))),this._scrollStrategy=a}get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}open(e,i){i=function hU(t,n){return Object.assign(Object.assign({},n),t)}(i,this._defaultOptions||new cv),i.id&&this.getDialogById(i.id);const o=this._createOverlay(i),r=this._attachDialogContainer(o,i),s=this._attachDialogContent(e,r,o,i);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(s),s.afterClosed().subscribe(()=>this._removeOpenDialog(s)),this.afterOpened.next(s),r._initializeWithAttachedContent(),s}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_createOverlay(e){const i=this._getOverlayConfig(e);return this._overlay.create(i)}_getOverlayConfig(e){const i=new Al({positionStrategy:this._overlay.position().global(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,disposeOnNavigation:e.closeOnNavigation});return e.backdropClass&&(i.backdropClass=e.backdropClass),i}_attachDialogContainer(e,i){const r=pn.create({parent:i&&i.viewContainerRef&&i.viewContainerRef.injector||this._injector,providers:[{provide:cv,useValue:i}]}),s=new Ol(this._dialogContainerType,i.viewContainerRef,r,i.componentFactoryResolver);return e.attach(s).instance}_attachDialogContent(e,i,o,r){const s=new this._dialogRefConstructor(o,i,r.id);if(e instanceof rn)i.attachTemplatePortal(new Wr(e,null,{$implicit:r.data,dialogRef:s}));else{const a=this._createInjector(r,s,i),l=i.attachComponentPortal(new Ol(e,r.viewContainerRef,a,r.componentFactoryResolver));s.componentInstance=l.instance}return s.updateSize(r.width,r.height).updatePosition(r.position),s}_createInjector(e,i,o){const r=e&&e.viewContainerRef&&e.viewContainerRef.injector,s=[{provide:this._dialogContainerType,useValue:o},{provide:this._dialogDataToken,useValue:e.data},{provide:this._dialogRefConstructor,useValue:i}];return e.direction&&(!r||!r.get(ai,null,yt.Optional))&&s.push({provide:ai,useValue:{value:e.direction,change:We()}}),pn.create({parent:r||this._injector,providers:s})}_removeOpenDialog(e){const i=this.openDialogs.indexOf(e);i>-1&&(this.openDialogs.splice(i,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((o,r)=>{o?r.setAttribute("aria-hidden",o):r.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const e=this._overlayContainer.getContainerElement();if(e.parentElement){const i=e.parentElement.children;for(let o=i.length-1;o>-1;o--){let r=i[o];r!==e&&"SCRIPT"!==r.nodeName&&"STYLE"!==r.nodeName&&!r.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(r,r.getAttribute("aria-hidden")),r.setAttribute("aria-hidden","true"))}}}_closeDialogs(e){let i=e.length;for(;i--;)e[i].close()}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t}),t})(),ns=(()=>{class t extends uU{constructor(e,i,o,r,s,a,l,u){super(e,i,r,a,l,s,Ti,sU,Xi,u)}}return t.\u0275fac=function(e){return new(e||t)(Q(Qi),Q(pn),Q(zc,8),Q(lU,8),Q(Pk),Q(t,12),Q(Vb),Q(gn,8))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),pU=0,Ji=(()=>{class t{constructor(e,i,o){this.dialogRef=e,this._elementRef=i,this._dialog=o,this.type="button"}ngOnInit(){this.dialogRef||(this.dialogRef=Rk(this._elementRef,this._dialog.openDialogs))}ngOnChanges(e){const i=e._matDialogClose||e._matDialogCloseResult;i&&(this.dialogResult=i.currentValue)}_onButtonClick(e){dv(this.dialogRef,0===e.screenX&&0===e.screenY?"keyboard":"mouse",this.dialogResult)}}return t.\u0275fac=function(e){return new(e||t)(b(Ti,8),b(He),b(ns))},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(e,i){1&e&&N("click",function(r){return i._onButtonClick(r)}),2&e&&et("aria-label",i.ariaLabel||null)("type",i.type)},inputs:{ariaLabel:["aria-label","ariaLabel"],type:"type",dialogResult:["mat-dialog-close","dialogResult"],_matDialogClose:["matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[nn]}),t})(),fU=(()=>{class t{constructor(e,i,o){this._dialogRef=e,this._elementRef=i,this._dialog=o,this.id="mat-dialog-title-"+pU++}ngOnInit(){this._dialogRef||(this._dialogRef=Rk(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{const e=this._dialogRef._containerInstance;e&&!e._ariaLabelledBy&&(e._ariaLabelledBy=this.id)})}}return t.\u0275fac=function(e){return new(e||t)(b(Ti,8),b(He),b(ns))},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(e,i){2&e&&Fr("id",i.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t})(),wr=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t})(),Dr=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-dialog-actions"]}),t})();function Rk(t,n){let e=t.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-dialog-container");)e=e.parentElement;return e?n.find(i=>i.id===e.id):null}let Fk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[ns,dU],imports:[[Pl,Cd,ft],ft]}),t})();const mU=["tooltip"],Nk="tooltip-panel",Lk=ca({passive:!0}),Bk=new _e("mat-tooltip-scroll-strategy"),vU={provide:Bk,deps:[Qi],useFactory:function bU(t){return()=>t.scrollStrategies.reposition({scrollThrottle:20})}},yU=new _e("mat-tooltip-default-options",{providedIn:"root",factory:function CU(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}});let wU=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v,C){this._overlay=e,this._elementRef=i,this._scrollDispatcher=o,this._viewContainerRef=r,this._ngZone=s,this._platform=a,this._ariaDescriber=l,this._focusMonitor=u,this._dir=g,this._defaultOptions=v,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this._showDelay=this._defaultOptions.showDelay,this._hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new ie,this._scrollStrategy=p,this._document=C,v&&(v.position&&(this.position=v.position),v.touchGestures&&(this.touchGestures=v.touchGestures)),g.change.pipe(tt(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})}get position(){return this._position}set position(e){var i;e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(i=this._tooltipInstance)||void 0===i||i.show(0),this._overlayRef.updatePosition()))}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=Zn(e)}get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=Zn(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}get message(){return this._message}set message(e){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(tt(this._destroyed)).subscribe(e=>{e?"keyboard"===e&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const e=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([i,o])=>{e.removeEventListener(i,o,Lk)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay){if(this.disabled||!this.message||this._isTooltipVisible()&&!this._tooltipInstance._showTimeoutId&&!this._tooltipInstance._hideTimeoutId)return;const i=this._createOverlay();this._detach(),this._portal=this._portal||new Ol(this._tooltipComponent,this._viewContainerRef);const o=this._tooltipInstance=i.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(tt(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(e)}hide(e=this.hideDelay){this._tooltipInstance&&this._tooltipInstance.hide(e)}toggle(){this._isTooltipVisible()?this.hide():this.show()}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(){var e;if(this._overlayRef)return this._overlayRef;const i=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),o=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(i);return o.positionChanges.pipe(tt(this._destroyed)).subscribe(r=>{this._updateCurrentPositionClass(r.connectionPair),this._tooltipInstance&&r.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:o,panelClass:`${this._cssClassPrefix}-${Nk}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(tt(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(tt(this._destroyed)).subscribe(()=>{var r;return null===(r=this._tooltipInstance)||void 0===r?void 0:r._handleBodyInteraction()}),this._overlayRef.keydownEvents().pipe(tt(this._destroyed)).subscribe(r=>{this._isTooltipVisible()&&27===r.keyCode&&!fi(r)&&(r.preventDefault(),r.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),(null===(e=this._defaultOptions)||void 0===e?void 0:e.disableTooltipInteractivity)&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){const i=e.getConfig().positionStrategy,o=this._getOrigin(),r=this._getOverlayPosition();i.withPositions([this._addOffset(Object.assign(Object.assign({},o.main),r.main)),this._addOffset(Object.assign(Object.assign({},o.fallback),r.fallback))])}_addOffset(e){return e}_getOrigin(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let o;"above"==i||"below"==i?o={originX:"center",originY:"above"==i?"top":"bottom"}:"before"==i||"left"==i&&e||"right"==i&&!e?o={originX:"start",originY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(o={originX:"end",originY:"center"});const{x:r,y:s}=this._invertPosition(o.originX,o.originY);return{main:o,fallback:{originX:r,originY:s}}}_getOverlayPosition(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let o;"above"==i?o={overlayX:"center",overlayY:"bottom"}:"below"==i?o={overlayX:"center",overlayY:"top"}:"before"==i||"left"==i&&e||"right"==i&&!e?o={overlayX:"end",overlayY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(o={overlayX:"start",overlayY:"center"});const{x:r,y:s}=this._invertPosition(o.overlayX,o.overlayY);return{main:o,fallback:{overlayX:r,overlayY:s}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(Ot(1),tt(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}_invertPosition(e,i){return"above"===this.position||"below"===this.position?"top"===i?i="bottom":"bottom"===i&&(i="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:i}}_updateCurrentPositionClass(e){const{overlayY:i,originX:o,originY:r}=e;let s;if(s="center"===i?this._dir&&"rtl"===this._dir.value?"end"===o?"left":"right":"start"===o?"left":"right":"bottom"===i&&"top"===r?"above":"below",s!==this._currentPosition){const a=this._overlayRef;if(a){const l=`${this._cssClassPrefix}-${Nk}-`;a.removePanelClass(l+this._currentPosition),a.addPanelClass(l+s)}this._currentPosition=s}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",()=>{this._setupPointerExitEventsIfNeeded(),this.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",()=>{this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const e=[];if(this._platformSupportsMouseEvents())e.push(["mouseleave",i=>{var o;const r=i.relatedTarget;(!r||!(null===(o=this._overlayRef)||void 0===o?void 0:o.overlayElement.contains(r)))&&this.hide()}],["wheel",i=>this._wheelListener(i)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const i=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};e.push(["touchend",i],["touchcancel",i])}this._addListeners(e),this._passiveListeners.push(...e)}_addListeners(e){e.forEach(([i,o])=>{this._elementRef.nativeElement.addEventListener(i,o,Lk)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(e){if(this._isTooltipVisible()){const i=this._document.elementFromPoint(e.clientX,e.clientY),o=this._elementRef.nativeElement;i!==o&&!o.contains(i)&&this.hide()}}_disableNativeGesturesIfNecessary(){const e=this.touchGestures;if("off"!==e){const i=this._elementRef.nativeElement,o=i.style;("on"===e||"INPUT"!==i.nodeName&&"TEXTAREA"!==i.nodeName)&&(o.userSelect=o.msUserSelect=o.webkitUserSelect=o.MozUserSelect="none"),("on"===e||!i.draggable)&&(o.webkitUserDrag="none"),o.touchAction="none",o.webkitTapHighlightColor="transparent"}}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t,inputs:{position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),t})(),ki=(()=>{class t extends wU{constructor(e,i,o,r,s,a,l,u,p,g,v,C){super(e,i,o,r,s,a,l,u,p,g,v,C),this._tooltipComponent=SU}}return t.\u0275fac=function(e){return new(e||t)(b(Qi),b(He),b(vd),b(sn),b(Je),b(dn),b(DV),b(Ro),b(Bk),b(ai,8),b(yU,8),b(ht))},t.\u0275dir=oe({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[Ce]}),t})(),DU=(()=>{class t{constructor(e,i){this._changeDetectorRef=e,this._visibility="initial",this._closeOnInteraction=!1,this._isVisible=!1,this._onHide=new ie,this._animationsDisabled="NoopAnimations"===i}show(e){clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:e}){(!e||!this._triggerElement.contains(e))&&this.hide(this._mouseLeaveHideDelay)}_onShow(){}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){const i=this._tooltip.nativeElement,o=this._showAnimation,r=this._hideAnimation;if(i.classList.remove(e?r:o),i.classList.add(e?o:r),this._isVisible=e,e&&!this._animationsDisabled&&"function"==typeof getComputedStyle){const s=getComputedStyle(i);("0s"===s.getPropertyValue("animation-duration")||"none"===s.getPropertyValue("animation-name"))&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(i.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(gn,8))},t.\u0275dir=oe({type:t}),t})(),SU=(()=>{class t extends DU{constructor(e,i,o){super(e,o),this._breakpointObserver=i,this._isHandset=this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)"),this._showAnimation="mat-tooltip-show",this._hideAnimation="mat-tooltip-hide"}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(sv),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tooltip-component"]],viewQuery:function(e,i){if(1&e&&Tt(mU,7),2&e){let o;Fe(o=Ne())&&(i._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(e,i){1&e&&N("mouseleave",function(r){return i._handleMouseLeave(r)}),2&e&&pi("zoom",i.isVisible()?1:null)},features:[Ce],decls:4,vars:6,consts:[[1,"mat-tooltip",3,"ngClass","animationend"],["tooltip",""]],template:function(e,i){if(1&e&&(d(0,"div",0,1),N("animationend",function(r){return i._handleAnimationEnd(r)}),_s(2,"async"),h(3),c()),2&e){let o;rt("mat-tooltip-handset",null==(o=bs(2,4,i._isHandset))?null:o.matches),m("ngClass",i.tooltipClass),f(3),Ee(i.message)}},directives:[nr],pipes:[zg],styles:[".mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis;transform:scale(0)}.mat-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}.mat-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-tooltip-show{0%{opacity:0;transform:scale(0)}50%{opacity:.5;transform:scale(0.99)}100%{opacity:1;transform:scale(1)}}@keyframes mat-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}.mat-tooltip-show{animation:mat-tooltip-show 200ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-tooltip-hide{animation:mat-tooltip-hide 100ms cubic-bezier(0, 0, 0.2, 1) forwards}\n"],encapsulation:2,changeDetection:0}),t})(),Vk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[vU],imports:[[SM,qi,Pl,ft],ft,Is]}),t})();const MU=["input"],xU=function(t){return{enterDuration:t}},TU=["*"],kU=new _e("mat-checkbox-default-options",{providedIn:"root",factory:jk});function jk(){return{color:"accent",clickAction:"check-indeterminate"}}let EU=0;const Hk=jk(),IU={provide:Zi,useExisting:zt(()=>uv),multi:!0};class OU{}const AU=Ml($r(vr(pa(class{constructor(t){this._elementRef=t}}))));let uv=(()=>{class t extends AU{constructor(e,i,o,r,s,a,l){super(e),this._changeDetectorRef=i,this._focusMonitor=o,this._ngZone=r,this._animationMode=a,this._options=l,this.ariaLabel="",this.ariaLabelledby=null,this._uniqueId="mat-checkbox-"+ ++EU,this.id=this._uniqueId,this.labelPosition="after",this.name=null,this.change=new Pe,this.indeterminateChange=new Pe,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||Hk,this.color=this.defaultColor=this._options.color||Hk.color,this.tabIndex=parseInt(s)||0}get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(e){this._required=Xe(e)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{e||Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}ngAfterViewChecked(){}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}get checked(){return this._checked}set checked(e){const i=Xe(e);i!=this.checked&&(this._checked=i,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(e){const i=Xe(e);i!==this.disabled&&(this._disabled=i,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(e){const i=e!=this._indeterminate;this._indeterminate=Xe(e),i&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(e){this.checked=!!e}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}_getAriaChecked(){return this.checked?"true":this.indeterminate?"mixed":"false"}_transitionCheckState(e){let i=this._currentCheckState,o=this._elementRef.nativeElement;if(i!==e&&(this._currentAnimationClass.length>0&&o.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(i,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){o.classList.add(this._currentAnimationClass);const r=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{o.classList.remove(r)},1e3)})}}_emitChangeEvent(){const e=new OU;e.source=this,e.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(e),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_onInputClick(e){var i;const o=null===(i=this._options)||void 0===i?void 0:i.clickAction;e.stopPropagation(),this.disabled||"noop"===o?!this.disabled&&"noop"===o&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==o&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this._checked=!this._checked,this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}focus(e,i){e?this._focusMonitor.focusVia(this._inputElement,e,i):this._inputElement.nativeElement.focus(i)}_onInteractionEvent(e){e.stopPropagation()}_getAnimationClassForCheckStateTransition(e,i){if("NoopAnimations"===this._animationMode)return"";let o="";switch(e){case 0:if(1===i)o="unchecked-checked";else{if(3!=i)return"";o="unchecked-indeterminate"}break;case 2:o=1===i?"unchecked-checked":"unchecked-indeterminate";break;case 1:o=2===i?"checked-unchecked":"checked-indeterminate";break;case 3:o=1===i?"indeterminate-checked":"indeterminate-unchecked"}return`mat-checkbox-anim-${o}`}_syncIndeterminate(e){const i=this._inputElement;i&&(i.nativeElement.indeterminate=e)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(Ro),b(Je),Di("tabindex"),b(gn,8),b(kU,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-checkbox"]],viewQuery:function(e,i){if(1&e&&(Tt(MU,5),Tt(or,5)),2&e){let o;Fe(o=Ne())&&(i._inputElement=o.first),Fe(o=Ne())&&(i.ripple=o.first)}},hostAttrs:[1,"mat-checkbox"],hostVars:14,hostBindings:function(e,i){2&e&&(Fr("id",i.id),et("tabindex",null)("aria-label",null)("aria-labelledby",null),rt("mat-checkbox-indeterminate",i.indeterminate)("mat-checkbox-checked",i.checked)("mat-checkbox-disabled",i.disabled)("mat-checkbox-label-before","before"==i.labelPosition)("_mat-animation-noopable","NoopAnimations"===i._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],id:"id",required:"required",labelPosition:"labelPosition",name:"name",value:"value",checked:"checked",disabled:"disabled",indeterminate:"indeterminate"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[ze([IU]),Ce],ngContentSelectors:TU,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(e,i){if(1&e&&(Jt(),d(0,"label",0,1)(2,"span",2)(3,"input",3,4),N("change",function(r){return i._onInteractionEvent(r)})("click",function(r){return i._onInputClick(r)}),c(),d(5,"span",5),E(6,"span",6),c(),E(7,"span",7),d(8,"span",8),hn(),d(9,"svg",9),E(10,"path",10),c(),Qs(),E(11,"span",11),c()(),d(12,"span",12,13),N("cdkObserveContent",function(){return i._onLabelTextChange()}),d(14,"span",14),h(15,"\xa0"),c(),ct(16),c()()),2&e){const o=$t(1),r=$t(13);et("for",i.inputId),f(2),rt("mat-checkbox-inner-container-no-side-margin",!r.textContent||!r.textContent.trim()),f(1),m("id",i.inputId)("required",i.required)("checked",i.checked)("disabled",i.disabled)("tabIndex",i.tabIndex),et("value",i.value)("name",i.name)("aria-label",i.ariaLabel||null)("aria-labelledby",i.ariaLabelledby)("aria-checked",i._getAriaChecked())("aria-describedby",i.ariaDescribedby),f(2),m("matRippleTrigger",o)("matRippleDisabled",i._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Kt(19,xU,"NoopAnimations"===i._animationMode?0:150))}},directives:[or,N_],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),t})(),Uk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),zk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,ft,Ph,Uk],ft,Uk]}),t})();const Sp=["*"],FU=["content"];function NU(t,n){if(1&t){const e=pe();d(0,"div",2),N("click",function(){return se(e),D()._onBackdropClicked()}),c()}2&t&&rt("mat-drawer-shown",D()._isShowingBackdrop())}function LU(t,n){1&t&&(d(0,"mat-drawer-content"),ct(1,2),c())}const BU=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],VU=["mat-drawer","mat-drawer-content","*"];function jU(t,n){if(1&t){const e=pe();d(0,"div",2),N("click",function(){return se(e),D()._onBackdropClicked()}),c()}2&t&&rt("mat-drawer-shown",D()._isShowingBackdrop())}function HU(t,n){1&t&&(d(0,"mat-sidenav-content"),ct(1,2),c())}const UU=[[["mat-sidenav"]],[["mat-sidenav-content"]],"*"],zU=["mat-sidenav","mat-sidenav-content","*"],$k={transformDrawer:Oo("transform",[jn("open, open-instant",Vt({transform:"none",visibility:"visible"})),jn("void",Vt({"box-shadow":"none",visibility:"hidden"})),Kn("void => open-instant",si("0ms")),Kn("void <=> open, open-instant => void",si("400ms cubic-bezier(0.25, 0.8, 0.25, 1)"))])},GU=new _e("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:function WU(){return!1}}),hv=new _e("MAT_DRAWER_CONTAINER");let Mp=(()=>{class t extends yd{constructor(e,i,o,r,s){super(o,r,s),this._changeDetectorRef=e,this._container=i}ngAfterContentInit(){this._container._contentMarginChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(zt(()=>Wk)),b(He),b(vd),b(Je))},t.\u0275cmp=Ae({type:t,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:4,hostBindings:function(e,i){2&e&&pi("margin-left",i._container._contentMargins.left,"px")("margin-right",i._container._contentMargins.right,"px")},features:[ze([{provide:yd,useExisting:t}]),Ce],ngContentSelectors:Sp,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),ct(0))},encapsulation:2,changeDetection:0}),t})(),Gk=(()=>{class t{constructor(e,i,o,r,s,a,l,u){this._elementRef=e,this._focusTrapFactory=i,this._focusMonitor=o,this._platform=r,this._ngZone=s,this._interactivityChecker=a,this._doc=l,this._container=u,this._elementFocusedBeforeDrawerWasOpened=null,this._enableAnimations=!1,this._position="start",this._mode="over",this._disableClose=!1,this._opened=!1,this._animationStarted=new ie,this._animationEnd=new ie,this._animationState="void",this.openedChange=new Pe(!0),this._openedStream=this.openedChange.pipe(It(p=>p),je(()=>{})),this.openedStart=this._animationStarted.pipe(It(p=>p.fromState!==p.toState&&0===p.toState.indexOf("open")),jb(void 0)),this._closedStream=this.openedChange.pipe(It(p=>!p),je(()=>{})),this.closedStart=this._animationStarted.pipe(It(p=>p.fromState!==p.toState&&"void"===p.toState),jb(void 0)),this._destroyed=new ie,this.onPositionChanged=new Pe,this._modeChanged=new ie,this.openedChange.subscribe(p=>{p?(this._doc&&(this._elementFocusedBeforeDrawerWasOpened=this._doc.activeElement),this._takeFocus()):this._isFocusWithinDrawer()&&this._restoreFocus(this._openedVia||"program")}),this._ngZone.runOutsideAngular(()=>{Ki(this._elementRef.nativeElement,"keydown").pipe(It(p=>27===p.keyCode&&!this.disableClose&&!fi(p)),tt(this._destroyed)).subscribe(p=>this._ngZone.run(()=>{this.close(),p.stopPropagation(),p.preventDefault()}))}),this._animationEnd.pipe(nd((p,g)=>p.fromState===g.fromState&&p.toState===g.toState)).subscribe(p=>{const{fromState:g,toState:v}=p;(0===v.indexOf("open")&&"void"===g||"void"===v&&0===g.indexOf("open"))&&this.openedChange.emit(this._opened)})}get position(){return this._position}set position(e){(e="end"===e?"end":"start")!==this._position&&(this._isAttached&&this._updatePositionInParent(e),this._position=e,this.onPositionChanged.emit())}get mode(){return this._mode}set mode(e){this._mode=e,this._updateFocusTrapState(),this._modeChanged.next()}get disableClose(){return this._disableClose}set disableClose(e){this._disableClose=Xe(e)}get autoFocus(){const e=this._autoFocus;return null==e?"side"===this.mode?"dialog":"first-tabbable":e}set autoFocus(e){("true"===e||"false"===e||null==e)&&(e=Xe(e)),this._autoFocus=e}get opened(){return this._opened}set opened(e){this.toggle(Xe(e))}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const o=()=>{e.removeEventListener("blur",o),e.removeEventListener("mousedown",o),e.removeAttribute("tabindex")};e.addEventListener("blur",o),e.addEventListener("mousedown",o)})),e.focus(i)}_focusByCssSelector(e,i){let o=this._elementRef.nativeElement.querySelector(e);o&&this._forceFocus(o,i)}_takeFocus(){if(!this._focusTrap)return;const e=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(i=>{!i&&"function"==typeof this._elementRef.nativeElement.focus&&e.focus()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus)}}_restoreFocus(e){"dialog"!==this.autoFocus&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,e):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}_isFocusWithinDrawer(){const e=this._doc.activeElement;return!!e&&this._elementRef.nativeElement.contains(e)}ngAfterViewInit(){this._isAttached=!0,this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState(),"end"===this._position&&this._updatePositionInParent("end")}ngAfterContentChecked(){this._platform.isBrowser&&(this._enableAnimations=!0)}ngOnDestroy(){var e;this._focusTrap&&this._focusTrap.destroy(),null===(e=this._anchor)||void 0===e||e.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}open(e){return this.toggle(!0,e)}close(){return this.toggle(!1)}_closeViaBackdropClick(){return this._setOpen(!1,!0,"mouse")}toggle(e=!this.opened,i){e&&i&&(this._openedVia=i);const o=this._setOpen(e,!e&&this._isFocusWithinDrawer(),this._openedVia||"program");return e||(this._openedVia=null),o}_setOpen(e,i,o){return this._opened=e,e?this._animationState=this._enableAnimations?"open":"open-instant":(this._animationState="void",i&&this._restoreFocus(o)),this._updateFocusTrapState(),new Promise(r=>{this.openedChange.pipe(Ot(1)).subscribe(s=>r(s?"open":"close"))})}_getWidth(){return this._elementRef.nativeElement&&this._elementRef.nativeElement.offsetWidth||0}_updateFocusTrapState(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&"side"!==this.mode)}_updatePositionInParent(e){const i=this._elementRef.nativeElement,o=i.parentNode;"end"===e?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),o.insertBefore(this._anchor,i)),o.appendChild(i)):this._anchor&&this._anchor.parentNode.insertBefore(i,this._anchor)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(vM),b(Ro),b(dn),b(Je),b(B_),b(ht,8),b(hv,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-drawer"]],viewQuery:function(e,i){if(1&e&&Tt(FU,5),2&e){let o;Fe(o=Ne())&&(i._content=o.first)}},hostAttrs:["tabIndex","-1",1,"mat-drawer"],hostVars:12,hostBindings:function(e,i){1&e&&Tc("@transform.start",function(r){return i._animationStarted.next(r)})("@transform.done",function(r){return i._animationEnd.next(r)}),2&e&&(et("align",null),Ec("@transform",i._animationState),rt("mat-drawer-end","end"===i.position)("mat-drawer-over","over"===i.mode)("mat-drawer-push","push"===i.mode)("mat-drawer-side","side"===i.mode)("mat-drawer-opened",i.opened))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:Sp,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(e,i){1&e&&(Jt(),d(0,"div",0,1),ct(2),c())},directives:[yd],encapsulation:2,data:{animation:[$k.transformDrawer]},changeDetection:0}),t})(),Wk=(()=>{class t{constructor(e,i,o,r,s,a=!1,l){this._dir=e,this._element=i,this._ngZone=o,this._changeDetectorRef=r,this._animationMode=l,this._drawers=new vs,this.backdropClick=new Pe,this._destroyed=new ie,this._doCheckSubject=new ie,this._contentMargins={left:null,right:null},this._contentMarginChanges=new ie,e&&e.change.pipe(tt(this._destroyed)).subscribe(()=>{this._validateDrawers(),this.updateContentMargins()}),s.change().pipe(tt(this._destroyed)).subscribe(()=>this.updateContentMargins()),this._autosize=a}get start(){return this._start}get end(){return this._end}get autosize(){return this._autosize}set autosize(e){this._autosize=Xe(e)}get hasBackdrop(){return null==this._backdropOverride?!this._start||"side"!==this._start.mode||!this._end||"side"!==this._end.mode:this._backdropOverride}set hasBackdrop(e){this._backdropOverride=null==e?null:Xe(e)}get scrollable(){return this._userContent||this._content}ngAfterContentInit(){this._allDrawers.changes.pipe(Nn(this._allDrawers),tt(this._destroyed)).subscribe(e=>{this._drawers.reset(e.filter(i=>!i._container||i._container===this)),this._drawers.notifyOnChanges()}),this._drawers.changes.pipe(Nn(null)).subscribe(()=>{this._validateDrawers(),this._drawers.forEach(e=>{this._watchDrawerToggle(e),this._watchDrawerPosition(e),this._watchDrawerMode(e)}),(!this._drawers.length||this._isDrawerOpen(this._start)||this._isDrawerOpen(this._end))&&this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(()=>{this._doCheckSubject.pipe(Oh(10),tt(this._destroyed)).subscribe(()=>this.updateContentMargins())})}ngOnDestroy(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}open(){this._drawers.forEach(e=>e.open())}close(){this._drawers.forEach(e=>e.close())}updateContentMargins(){let e=0,i=0;if(this._left&&this._left.opened)if("side"==this._left.mode)e+=this._left._getWidth();else if("push"==this._left.mode){const o=this._left._getWidth();e+=o,i-=o}if(this._right&&this._right.opened)if("side"==this._right.mode)i+=this._right._getWidth();else if("push"==this._right.mode){const o=this._right._getWidth();i+=o,e-=o}e=e||null,i=i||null,(e!==this._contentMargins.left||i!==this._contentMargins.right)&&(this._contentMargins={left:e,right:i},this._ngZone.run(()=>this._contentMarginChanges.next(this._contentMargins)))}ngDoCheck(){this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(()=>this._doCheckSubject.next())}_watchDrawerToggle(e){e._animationStarted.pipe(It(i=>i.fromState!==i.toState),tt(this._drawers.changes)).subscribe(i=>{"open-instant"!==i.toState&&"NoopAnimations"!==this._animationMode&&this._element.nativeElement.classList.add("mat-drawer-transition"),this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),"side"!==e.mode&&e.openedChange.pipe(tt(this._drawers.changes)).subscribe(()=>this._setContainerClass(e.opened))}_watchDrawerPosition(e){!e||e.onPositionChanged.pipe(tt(this._drawers.changes)).subscribe(()=>{this._ngZone.onMicrotaskEmpty.pipe(Ot(1)).subscribe(()=>{this._validateDrawers()})})}_watchDrawerMode(e){e&&e._modeChanged.pipe(tt(Tn(this._drawers.changes,this._destroyed))).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()})}_setContainerClass(e){const i=this._element.nativeElement.classList,o="mat-drawer-container-has-open";e?i.add(o):i.remove(o)}_validateDrawers(){this._start=this._end=null,this._drawers.forEach(e=>{"end"==e.position?this._end=e:this._start=e}),this._right=this._left=null,this._dir&&"rtl"===this._dir.value?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}_isPushed(){return this._isDrawerOpen(this._start)&&"over"!=this._start.mode||this._isDrawerOpen(this._end)&&"over"!=this._end.mode}_onBackdropClicked(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}_closeModalDrawersViaBackdrop(){[this._start,this._end].filter(e=>e&&!e.disableClose&&this._canHaveBackdrop(e)).forEach(e=>e._closeViaBackdropClick())}_isShowingBackdrop(){return this._isDrawerOpen(this._start)&&this._canHaveBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._canHaveBackdrop(this._end)}_canHaveBackdrop(e){return"side"!==e.mode||!!this._backdropOverride}_isDrawerOpen(e){return null!=e&&e.opened}}return t.\u0275fac=function(e){return new(e||t)(b(ai,8),b(He),b(Je),b(At),b(yr),b(GU),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-drawer-container"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,Mp,5),mt(o,Gk,5)),2&e){let r;Fe(r=Ne())&&(i._content=r.first),Fe(r=Ne())&&(i._allDrawers=r)}},viewQuery:function(e,i){if(1&e&&Tt(Mp,5),2&e){let o;Fe(o=Ne())&&(i._userContent=o.first)}},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-drawer-container-explicit-backdrop",i._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[ze([{provide:hv,useExisting:t}])],ngContentSelectors:VU,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(e,i){1&e&&(Jt(BU),_(0,NU,1,2,"div",0),ct(1),ct(2,1),_(3,LU,2,0,"mat-drawer-content",1)),2&e&&(m("ngIf",i.hasBackdrop),f(3),m("ngIf",!i._content))},directives:[Mp,Et],styles:['.mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer[style*="visibility: hidden"]{display:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n'],encapsulation:2,changeDetection:0}),t})(),pv=(()=>{class t extends Mp{constructor(e,i,o,r,s){super(e,i,o,r,s)}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(zt(()=>Kk)),b(He),b(vd),b(Je))},t.\u0275cmp=Ae({type:t,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],hostVars:4,hostBindings:function(e,i){2&e&&pi("margin-left",i._container._contentMargins.left,"px")("margin-right",i._container._contentMargins.right,"px")},features:[ze([{provide:yd,useExisting:t}]),Ce],ngContentSelectors:Sp,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),ct(0))},encapsulation:2,changeDetection:0}),t})(),qk=(()=>{class t extends Gk{constructor(){super(...arguments),this._fixedInViewport=!1,this._fixedTopGap=0,this._fixedBottomGap=0}get fixedInViewport(){return this._fixedInViewport}set fixedInViewport(e){this._fixedInViewport=Xe(e)}get fixedTopGap(){return this._fixedTopGap}set fixedTopGap(e){this._fixedTopGap=Zn(e)}get fixedBottomGap(){return this._fixedBottomGap}set fixedBottomGap(e){this._fixedBottomGap=Zn(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-sidenav"]],hostAttrs:["tabIndex","-1",1,"mat-drawer","mat-sidenav"],hostVars:17,hostBindings:function(e,i){2&e&&(et("align",null),pi("top",i.fixedInViewport?i.fixedTopGap:null,"px")("bottom",i.fixedInViewport?i.fixedBottomGap:null,"px"),rt("mat-drawer-end","end"===i.position)("mat-drawer-over","over"===i.mode)("mat-drawer-push","push"===i.mode)("mat-drawer-side","side"===i.mode)("mat-drawer-opened",i.opened)("mat-sidenav-fixed",i.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[Ce],ngContentSelectors:Sp,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(e,i){1&e&&(Jt(),d(0,"div",0,1),ct(2),c())},directives:[yd],encapsulation:2,data:{animation:[$k.transformDrawer]},changeDetection:0}),t})(),Kk=(()=>{class t extends Wk{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-sidenav-container"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,pv,5),mt(o,qk,5)),2&e){let r;Fe(r=Ne())&&(i._content=r.first),Fe(r=Ne())&&(i._allDrawers=r)}},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-drawer-container-explicit-backdrop",i._backdropOverride)},exportAs:["matSidenavContainer"],features:[ze([{provide:hv,useExisting:t}]),Ce],ngContentSelectors:zU,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(e,i){1&e&&(Jt(UU),_(0,jU,1,2,"div",0),ct(1),ct(2,1),_(3,HU,2,0,"mat-sidenav-content",1)),2&e&&(m("ngIf",i.hasBackdrop),f(3),m("ngIf",!i._content))},directives:[pv,Et],styles:['.mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer[style*="visibility: hidden"]{display:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n'],encapsulation:2,changeDetection:0}),t})(),Zk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,Is],Is,ft]}),t})();const qU=["panel"];function KU(t,n){if(1&t&&(d(0,"div",0,1),ct(2),c()),2&t){const e=n.id,i=D();m("id",i.id)("ngClass",i._classList),et("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby(e))}}const ZU=["*"];let QU=0;class YU{constructor(n,e){this.source=n,this.option=e}}const XU=vr(class{}),Qk=new _e("mat-autocomplete-default-options",{providedIn:"root",factory:function JU(){return{autoActiveFirstOption:!1}}});let ez=(()=>{class t extends XU{constructor(e,i,o,r){super(),this._changeDetectorRef=e,this._elementRef=i,this._activeOptionChanges=k.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new Pe,this.opened=new Pe,this.closed=new Pe,this.optionActivated=new Pe,this._classList={},this.id="mat-autocomplete-"+QU++,this.inertGroups=(null==r?void 0:r.SAFARI)||!1,this._autoActiveFirstOption=!!o.autoActiveFirstOption}get isOpen(){return this._isOpen&&this.showPanel}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(e){this._autoActiveFirstOption=Xe(e)}set classList(e){this._classList=e&&e.length?function vV(t,n=/\s+/){const e=[];if(null!=t){const i=Array.isArray(t)?t:`${t}`.split(n);for(const o of i){const r=`${o}`.trim();r&&e.push(r)}}return e}(e).reduce((i,o)=>(i[o]=!0,i),{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}ngAfterContentInit(){this._keyManager=new gM(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(e=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[e]||null})}),this._setVisibility()}ngOnDestroy(){this._activeOptionChanges.unsubscribe()}_setScrollTop(e){this.panel&&(this.panel.nativeElement.scrollTop=e)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(e){const i=new YU(this,e);this.optionSelected.emit(i)}_getPanelAriaLabelledby(e){return this.ariaLabel?null:this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_setVisibilityClasses(e){e[this._visibleClass]=this.showPanel,e[this._hiddenClass]=!this.showPanel}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(He),b(Qk),b(dn))},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&(Tt(rn,7),Tt(qU,5)),2&e){let o;Fe(o=Ne())&&(i.template=o.first),Fe(o=Ne())&&(i.panel=o.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",panelWidth:"panelWidth",classList:["class","classList"]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[Ce]}),t})(),tz=(()=>{class t extends ez{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,q_,5),mt(o,_i,5)),2&e){let r;Fe(r=Ne())&&(i.optionGroups=r),Fe(r=Ne())&&(i.options=r)}},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[ze([{provide:W_,useExisting:t}]),Ce],ngContentSelectors:ZU,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(e,i){1&e&&(Jt(),_(0,KU,3,4,"ng-template"))},directives:[nr],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t})();const Yk=new _e("mat-autocomplete-scroll-strategy"),iz={provide:Yk,deps:[Qi],useFactory:function nz(t){return()=>t.scrollStrategies.reposition()}},oz={provide:Zi,useExisting:zt(()=>Xk),multi:!0};let rz=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v){this._element=e,this._overlay=i,this._viewContainerRef=o,this._zone=r,this._changeDetectorRef=s,this._dir=l,this._formField=u,this._document=p,this._viewportRuler=g,this._defaults=v,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=k.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new ie,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=wd(()=>{const C=this.autocomplete?this.autocomplete.options:null;return C?C.changes.pipe(Nn(C),Li(()=>Tn(...C.map(M=>M.onSelectionChange)))):this._zone.onStable.pipe(Ot(1),Li(()=>this.optionSelections))}),this._scrollStrategy=a}get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(e){this._autocompleteDisabled=Xe(e)}ngAfterViewInit(){const e=this._getWindow();void 0!==e&&this._zone.runOutsideAngular(()=>e.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const e=this._getWindow();void 0!==e&&e.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return Tn(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(It(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(It(()=>this._overlayAttached)):We()).pipe(je(e=>e instanceof PM?e:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return Tn(Ki(this._document,"click"),Ki(this._document,"auxclick"),Ki(this._document,"touchend")).pipe(It(e=>{const i=Ds(e),o=this._formField?this._formField._elementRef.nativeElement:null,r=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&i!==this._element.nativeElement&&this._document.activeElement!==this._element.nativeElement&&(!o||!o.contains(i))&&(!r||!r.contains(i))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(i)}))}writeValue(e){Promise.resolve().then(()=>this._setTriggerValue(e))}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this._element.nativeElement.disabled=e}_handleKeydown(e){const i=e.keyCode,o=fi(e);if(27===i&&!o&&e.preventDefault(),this.activeOption&&13===i&&this.panelOpen&&!o)this.activeOption._selectViaInteraction(),this._resetActiveItem(),e.preventDefault();else if(this.autocomplete){const r=this.autocomplete._keyManager.activeItem,s=38===i||40===i;9===i||s&&!o&&this.panelOpen?this.autocomplete._keyManager.onKeydown(e):s&&this._canOpen()&&this.openPanel(),(s||this.autocomplete._keyManager.activeItem!==r)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}_handleInput(e){let i=e.target,o=i.value;"number"===i.type&&(o=""==o?null:parseFloat(o)),this._previousValue!==o&&(this._previousValue=o,this._onChange(o),this._canOpen()&&this._document.activeElement===e.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this.openPanel()}_floatLabel(e=!1){this._formField&&"auto"===this._formField.floatLabel&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){return Tn(this._zone.onStable.pipe(Ot(1)),this.autocomplete.options.changes.pipe(Zt(()=>this._positionStrategy.reapplyLastPosition()),Hb(0))).pipe(Li(()=>(this._zone.run(()=>{const o=this.panelOpen;this._resetActiveItem(),this.autocomplete._setVisibility(),this._changeDetectorRef.detectChanges(),this.panelOpen&&(this._overlayRef.updatePosition(),o!==this.panelOpen&&this.autocomplete.opened.emit())}),this.panelClosingActions)),Ot(1)).subscribe(o=>this._setValueAndClose(o))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_setTriggerValue(e){const i=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(e):e,o=null!=i?i:"";this._formField?this._formField._control.value=o:this._element.nativeElement.value=o,this._previousValue=o}_setValueAndClose(e){const i=e&&e.source;i&&(this._clearPreviousSelectedOption(i),this._setTriggerValue(i.value),this._onChange(i.value),this.autocomplete._emitSelectEvent(i),this._element.nativeElement.focus()),this.closePanel()}_clearPreviousSelectedOption(e){this.autocomplete.options.forEach(i=>{i!==e&&i.selected&&i.deselect()})}_attachOverlay(){var e;let i=this._overlayRef;i?(this._positionStrategy.setOrigin(this._getConnectedElement()),i.updateSize({width:this._getPanelWidth()})):(this._portal=new Wr(this.autocomplete.template,this._viewContainerRef,{id:null===(e=this._formField)||void 0===e?void 0:e.getLabelId()}),i=this._overlay.create(this._getOverlayConfig()),this._overlayRef=i,i.keydownEvents().subscribe(r=>{(27===r.keyCode&&!fi(r)||38===r.keyCode&&fi(r,"altKey"))&&(this._closeKeyEventStream.next(),this._resetActiveItem(),r.stopPropagation(),r.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&i&&i.updateSize({width:this._getPanelWidth()})})),i&&!i.hasAttached()&&(i.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const o=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&o!==this.panelOpen&&this.autocomplete.opened.emit()}_getOverlayConfig(){var e;return new Al({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(e=this._defaults)||void 0===e?void 0:e.overlayPanelClass})}_getOverlayPosition(){const e=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(e),this._positionStrategy=e,e}_setStrategyPositions(e){const i=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],o=this._aboveClass,r=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:o},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:o}];let s;s="above"===this.position?r:"below"===this.position?i:[...i,...r],e.withPositions(s)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const e=this.autocomplete;e.autoActiveFirstOption?e._keyManager.setFirstItemActive():e._keyManager.setActiveItem(-1)}_canOpen(){const e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this._autocompleteDisabled}_getWindow(){var e;return(null===(e=this._document)||void 0===e?void 0:e.defaultView)||window}_scrollToOption(e){const i=this.autocomplete,o=K_(e,i.options,i.optionGroups);if(0===e&&1===o)i._setScrollTop(0);else if(i.panel){const r=i.options.toArray()[e];if(r){const s=r._getHostElement(),a=RM(s.offsetTop,s.offsetHeight,i._getScrollTop(),i.panel.nativeElement.offsetHeight);i._setScrollTop(a)}}}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Qi),b(sn),b(Je),b(At),b(Yk),b(ai,8),b(ip,9),b(ht,8),b(yr),b(Qk,8))},t.\u0275dir=oe({type:t,inputs:{autocomplete:["matAutocomplete","autocomplete"],position:["matAutocompletePosition","position"],connectedTo:["matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"]},features:[nn]}),t})(),Xk=(()=>{class t extends rz{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(e,i){1&e&&N("focusin",function(){return i._handleFocus()})("blur",function(){return i._onTouched()})("input",function(r){return i._handleInput(r)})("keydown",function(r){return i._handleKeydown(r)})("click",function(){return i._handleClick()}),2&e&&et("autocomplete",i.autocompleteAttribute)("role",i.autocompleteDisabled?null:"combobox")("aria-autocomplete",i.autocompleteDisabled?null:"list")("aria-activedescendant",i.panelOpen&&i.activeOption?i.activeOption.id:null)("aria-expanded",i.autocompleteDisabled?null:i.panelOpen.toString())("aria-owns",i.autocompleteDisabled||!i.panelOpen||null==i.autocomplete?null:i.autocomplete.id)("aria-haspopup",i.autocompleteDisabled?null:"listbox")},exportAs:["matAutocompleteTrigger"],features:[ze([oz]),Ce]}),t})(),Jk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[iz],imports:[[Pl,Bh,ft,qi],Is,Bh,ft]}),t})();const sz=[FM,Z_,ix,sx,dx,hT,_d,CT,BT,Eb,GT,vp,ik,ev,vp,hk,Mk,lv,Fk,Ib,Vk,zk,Zk,Jk];let az=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[sz,FM,Z_,ix,sx,dx,hT,_d,CT,BT,Eb,GT,vp,ik,ev,vp,hk,Mk,lv,Fk,Ib,Vk,zk,Zk,Jk]}),t})();const lz=["input"],cz=function(t){return{enterDuration:t}},dz=["*"],uz=new _e("mat-radio-default-options",{providedIn:"root",factory:function hz(){return{color:"accent"}}});let eE=0;const pz={provide:Zi,useExisting:zt(()=>xp),multi:!0};class tE{constructor(n,e){this.source=n,this.value=e}}const nE=new _e("MatRadioGroup");let fz=(()=>{class t{constructor(e){this._changeDetector=e,this._value=null,this._name="mat-radio-group-"+eE++,this._selected=null,this._isInitialized=!1,this._labelPosition="after",this._disabled=!1,this._required=!1,this._controlValueAccessorChangeFn=()=>{},this.onTouched=()=>{},this.change=new Pe}get name(){return this._name}set name(e){this._name=e,this._updateRadioButtonNames()}get labelPosition(){return this._labelPosition}set labelPosition(e){this._labelPosition="before"===e?"before":"after",this._markRadiosForCheck()}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,this._updateSelectedRadioFromValue(),this._checkSelectedRadioButton())}_checkSelectedRadioButton(){this._selected&&!this._selected.checked&&(this._selected.checked=!0)}get selected(){return this._selected}set selected(e){this._selected=e,this.value=e?e.value:null,this._checkSelectedRadioButton()}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e),this._markRadiosForCheck()}get required(){return this._required}set required(e){this._required=Xe(e),this._markRadiosForCheck()}ngAfterContentInit(){this._isInitialized=!0}_touch(){this.onTouched&&this.onTouched()}_updateRadioButtonNames(){this._radios&&this._radios.forEach(e=>{e.name=this.name,e._markForCheck()})}_updateSelectedRadioFromValue(){this._radios&&(null===this._selected||this._selected.value!==this._value)&&(this._selected=null,this._radios.forEach(i=>{i.checked=this.value===i.value,i.checked&&(this._selected=i)}))}_emitChangeEvent(){this._isInitialized&&this.change.emit(new tE(this._selected,this._value))}_markRadiosForCheck(){this._radios&&this._radios.forEach(e=>e._markForCheck())}writeValue(e){this.value=e,this._changeDetector.markForCheck()}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetector.markForCheck()}}return t.\u0275fac=function(e){return new(e||t)(b(At))},t.\u0275dir=oe({type:t,inputs:{color:"color",name:"name",labelPosition:"labelPosition",value:"value",selected:"selected",disabled:"disabled",required:"required"},outputs:{change:"change"}}),t})(),xp=(()=>{class t extends fz{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["mat-radio-group"]],contentQueries:function(e,i,o){if(1&e&&mt(o,Tp,5),2&e){let r;Fe(r=Ne())&&(i._radios=r)}},hostAttrs:["role","radiogroup",1,"mat-radio-group"],exportAs:["matRadioGroup"],features:[ze([pz,{provide:nE,useExisting:t}]),Ce]}),t})();class mz{constructor(n){this._elementRef=n}}const gz=vr(Ml(mz));let _z=(()=>{class t extends gz{constructor(e,i,o,r,s,a,l,u){super(i),this._changeDetector=o,this._focusMonitor=r,this._radioDispatcher=s,this._providerOverride=l,this._uniqueId="mat-radio-"+ ++eE,this.id=this._uniqueId,this.change=new Pe,this._checked=!1,this._value=null,this._removeUniqueSelectionListener=()=>{},this.radioGroup=e,this._noopAnimations="NoopAnimations"===a,u&&(this.tabIndex=Zn(u,0)),this._removeUniqueSelectionListener=s.listen((p,g)=>{p!==this.id&&g===this.name&&(this.checked=!1)})}get checked(){return this._checked}set checked(e){const i=Xe(e);this._checked!==i&&(this._checked=i,i&&this.radioGroup&&this.radioGroup.value!==this.value?this.radioGroup.selected=this:!i&&this.radioGroup&&this.radioGroup.value===this.value&&(this.radioGroup.selected=null),i&&this._radioDispatcher.notify(this.id,this.name),this._changeDetector.markForCheck())}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,null!==this.radioGroup&&(this.checked||(this.checked=this.radioGroup.value===e),this.checked&&(this.radioGroup.selected=this)))}get labelPosition(){return this._labelPosition||this.radioGroup&&this.radioGroup.labelPosition||"after"}set labelPosition(e){this._labelPosition=e}get disabled(){return this._disabled||null!==this.radioGroup&&this.radioGroup.disabled}set disabled(e){this._setDisabled(Xe(e))}get required(){return this._required||this.radioGroup&&this.radioGroup.required}set required(e){this._required=Xe(e)}get color(){return this._color||this.radioGroup&&this.radioGroup.color||this._providerOverride&&this._providerOverride.color||"accent"}set color(e){this._color=e}get inputId(){return`${this.id||this._uniqueId}-input`}focus(e,i){i?this._focusMonitor.focusVia(this._inputElement,i,e):this._inputElement.nativeElement.focus(e)}_markForCheck(){this._changeDetector.markForCheck()}ngOnInit(){this.radioGroup&&(this.checked=this.radioGroup.value===this._value,this.checked&&(this.radioGroup.selected=this),this.name=this.radioGroup.name)}ngDoCheck(){this._updateTabIndex()}ngAfterViewInit(){this._updateTabIndex(),this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{!e&&this.radioGroup&&this.radioGroup._touch()})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._removeUniqueSelectionListener()}_emitChangeEvent(){this.change.emit(new tE(this,this._value))}_isRippleDisabled(){return this.disableRipple||this.disabled}_onInputClick(e){e.stopPropagation()}_onInputInteraction(e){if(e.stopPropagation(),!this.checked&&!this.disabled){const i=this.radioGroup&&this.value!==this.radioGroup.value;this.checked=!0,this._emitChangeEvent(),this.radioGroup&&(this.radioGroup._controlValueAccessorChangeFn(this.value),i&&this.radioGroup._emitChangeEvent())}}_setDisabled(e){this._disabled!==e&&(this._disabled=e,this._changeDetector.markForCheck())}_updateTabIndex(){var e;const i=this.radioGroup;let o;if(o=i&&i.selected&&!this.disabled?i.selected===this?this.tabIndex:-1:this.tabIndex,o!==this._previousTabIndex){const r=null===(e=this._inputElement)||void 0===e?void 0:e.nativeElement;r&&(r.setAttribute("tabindex",o+""),this._previousTabIndex=o)}}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&Tt(lz,5),2&e){let o;Fe(o=Ne())&&(i._inputElement=o.first)}},inputs:{id:"id",name:"name",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],checked:"checked",value:"value",labelPosition:"labelPosition",disabled:"disabled",required:"required",color:"color"},outputs:{change:"change"},features:[Ce]}),t})(),Tp=(()=>{class t extends _z{constructor(e,i,o,r,s,a,l,u){super(e,i,o,r,s,a,l,u)}}return t.\u0275fac=function(e){return new(e||t)(b(nE,8),b(He),b(At),b(Ro),b(sb),b(gn,8),b(uz,8),Di("tabindex"))},t.\u0275cmp=Ae({type:t,selectors:[["mat-radio-button"]],hostAttrs:[1,"mat-radio-button"],hostVars:17,hostBindings:function(e,i){1&e&&N("focus",function(){return i._inputElement.nativeElement.focus()}),2&e&&(et("tabindex",null)("id",i.id)("aria-label",null)("aria-labelledby",null)("aria-describedby",null),rt("mat-radio-checked",i.checked)("mat-radio-disabled",i.disabled)("_mat-animation-noopable",i._noopAnimations)("mat-primary","primary"===i.color)("mat-accent","accent"===i.color)("mat-warn","warn"===i.color))},inputs:{disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matRadioButton"],features:[Ce],ngContentSelectors:dz,decls:13,vars:19,consts:[[1,"mat-radio-label"],["label",""],[1,"mat-radio-container"],[1,"mat-radio-outer-circle"],[1,"mat-radio-inner-circle"],["type","radio",1,"mat-radio-input",3,"id","checked","disabled","required","change","click"],["input",""],["mat-ripple","",1,"mat-radio-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-radio-persistent-ripple"],[1,"mat-radio-label-content"],[2,"display","none"]],template:function(e,i){if(1&e&&(Jt(),d(0,"label",0,1)(2,"span",2),E(3,"span",3)(4,"span",4),d(5,"input",5,6),N("change",function(r){return i._onInputInteraction(r)})("click",function(r){return i._onInputClick(r)}),c(),d(7,"span",7),E(8,"span",8),c()(),d(9,"span",9)(10,"span",10),h(11,"\xa0"),c(),ct(12),c()()),2&e){const o=$t(1);et("for",i.inputId),f(5),m("id",i.inputId)("checked",i.checked)("disabled",i.disabled)("required",i.required),et("name",i.name)("value",i.value)("aria-label",i.ariaLabel)("aria-labelledby",i.ariaLabelledby)("aria-describedby",i.ariaDescribedby),f(2),m("matRippleTrigger",o)("matRippleDisabled",i._isRippleDisabled())("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",Kt(17,cz,i._noopAnimations?0:150)),f(2),rt("mat-radio-label-before","before"==i.labelPosition)}},directives:[or],styles:[".mat-radio-button{display:inline-block;-webkit-tap-highlight-color:transparent;outline:0}.mat-radio-label{-webkit-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%}.mat-radio-container{box-sizing:border-box;display:inline-block;position:relative;width:20px;height:20px;flex-shrink:0}.mat-radio-outer-circle{box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;transition:border-color ease 280ms;width:20px;border-width:2px;border-style:solid;border-radius:50%}._mat-animation-noopable .mat-radio-outer-circle{transition:none}.mat-radio-inner-circle{border-radius:50%;box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;opacity:0;transition:transform ease 280ms,background-color ease 280ms,opacity linear 1ms 280ms;width:20px;transform:scale(0.001);-webkit-print-color-adjust:exact;color-adjust:exact}.mat-radio-checked .mat-radio-inner-circle{transform:scale(0.5);opacity:1;transition:transform ease 280ms,background-color ease 280ms}.cdk-high-contrast-active .mat-radio-checked .mat-radio-inner-circle{border:solid 10px}._mat-animation-noopable .mat-radio-inner-circle{transition:none}.mat-radio-label-content{-webkit-user-select:auto;user-select:auto;display:inline-block;order:0;line-height:inherit;padding-left:8px;padding-right:0}[dir=rtl] .mat-radio-label-content{padding-right:8px;padding-left:0}.mat-radio-label-content.mat-radio-label-before{order:-1;padding-left:0;padding-right:8px}[dir=rtl] .mat-radio-label-content.mat-radio-label-before{padding-right:0;padding-left:8px}.mat-radio-disabled,.mat-radio-disabled .mat-radio-label{cursor:default}.mat-radio-button .mat-radio-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-radio-button .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple){opacity:.16}.mat-radio-persistent-ripple{width:100%;height:100%;transform:none;top:0;left:0}.mat-radio-container:hover .mat-radio-persistent-ripple{opacity:.04}.mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-persistent-ripple,.mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-persistent-ripple{opacity:.12}.mat-radio-persistent-ripple,.mat-radio-disabled .mat-radio-container:hover .mat-radio-persistent-ripple{opacity:0}@media(hover: none){.mat-radio-container:hover .mat-radio-persistent-ripple{display:none}}.mat-radio-input{opacity:0;position:absolute;top:0;left:0;margin:0;width:100%;height:100%;cursor:inherit;z-index:-1}.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-ripple,.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-ripple{outline:solid 3px}.cdk-high-contrast-active .mat-radio-disabled{opacity:.5}\n"],encapsulation:2,changeDetection:0}),t})(),bz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,ft],ft]}),t})();class vz{constructor(n,e){this._document=e;const i=this._textarea=this._document.createElement("textarea"),o=i.style;o.position="fixed",o.top=o.opacity="0",o.left="-999em",i.setAttribute("aria-hidden","true"),i.value=n,this._document.body.appendChild(i)}copy(){const n=this._textarea;let e=!1;try{if(n){const i=this._document.activeElement;n.select(),n.setSelectionRange(0,n.value.length),e=this._document.execCommand("copy"),i&&i.focus()}}catch(i){}return e}destroy(){const n=this._textarea;n&&(n.remove(),this._textarea=void 0)}}let yz=(()=>{class t{constructor(e){this._document=e}copy(e){const i=this.beginCopy(e),o=i.copy();return i.destroy(),o}beginCopy(e){return new vz(e,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const Cz=new _e("CDK_COPY_TO_CLIPBOARD_CONFIG");let fv=(()=>{class t{constructor(e,i,o){this._clipboard=e,this._ngZone=i,this.text="",this.attempts=1,this.copied=new Pe,this._pending=new Set,o&&null!=o.attempts&&(this.attempts=o.attempts)}copy(e=this.attempts){if(e>1){let i=e;const o=this._clipboard.beginCopy(this.text);this._pending.add(o);const r=()=>{const s=o.copy();s||!--i||this._destroyed?(this._currentTimeout=null,this._pending.delete(o),o.destroy(),this.copied.emit(s)):this._currentTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(r,1))};r()}else this.copied.emit(this._clipboard.copy(this.text))}ngOnDestroy(){this._currentTimeout&&clearTimeout(this._currentTimeout),this._pending.forEach(e=>e.destroy()),this._pending.clear(),this._destroyed=!0}}return t.\u0275fac=function(e){return new(e||t)(b(yz),b(Je),b(Cz,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkCopyToClipboard",""]],hostBindings:function(e,i){1&e&&N("click",function(){return i.copy()})},inputs:{text:["cdkCopyToClipboard","text"],attempts:["cdkCopyToClipboardAttempts","attempts"]},outputs:{copied:"cdkCopyToClipboardCopied"}}),t})(),wz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const kp=R(t=>function(){t(this),this.name="EmptyError",this.message="no elements in sequence"});function iE(){return nt((t,n)=>{let e=null;t._refCount++;const i=st(n,void 0,void 0,void 0,()=>{if(!t||t._refCount<=0||0<--t._refCount)return void(e=null);const o=t._connection,r=e;e=null,o&&(!r||o===r)&&o.unsubscribe(),n.unsubscribe()});t.subscribe(i),i.closed||(e=t.connect())})}class Dz extends Ue{constructor(n,e){super(),this.source=n,this.subjectFactory=e,this._subject=null,this._refCount=0,this._connection=null,ei(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,null==n||n.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new k;const e=this.getSubject();n.add(this.source.subscribe(st(e,void 0,()=>{this._teardown(),e.complete()},i=>{this._teardown(),e.error(i)},()=>this._teardown()))),n.closed&&(this._connection=null,n=k.EMPTY)}return n}refCount(){return iE()(this)}}function Sz(t,n,e,i,o){return(r,s)=>{let a=e,l=n,u=0;r.subscribe(st(s,p=>{const g=u++;l=a?t(l,p,g):(a=!0,p),i&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}function oE(t,n){return nt(Sz(t,n,arguments.length>=2,!0))}function mv(t){return t<=0?()=>yo:nt((n,e)=>{let i=[];n.subscribe(st(e,o=>{i.push(o),t{for(const o of i)e.next(o);e.complete()},void 0,()=>{i=null}))})}function rE(t=Mz){return nt((n,e)=>{let i=!1;n.subscribe(st(e,o=>{i=!0,e.next(o)},()=>i?e.complete():e.error(t())))})}function Mz(){return new kp}function sE(t){return nt((n,e)=>{let i=!1;n.subscribe(st(e,o=>{i=!0,e.next(o)},()=>{i||e.next(t),e.complete()}))})}function Hl(t,n){const e=arguments.length>=2;return i=>i.pipe(t?It((o,r)=>t(o,r,i)):Me,Ot(1),e?sE(n):rE(()=>new kp))}class is{constructor(n,e){this.id=n,this.url=e}}class gv extends is{constructor(n,e,i="imperative",o=null){super(n,e),this.navigationTrigger=i,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Ed extends is{constructor(n,e,i){super(n,e),this.urlAfterRedirects=i}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class aE extends is{constructor(n,e,i){super(n,e),this.reason=i}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class Tz extends is{constructor(n,e,i){super(n,e),this.error=i}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class kz extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Ez extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Iz extends is{constructor(n,e,i,o,r){super(n,e),this.urlAfterRedirects=i,this.state=o,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class Oz extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Az extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class lE{constructor(n){this.route=n}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class cE{constructor(n){this.route=n}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class Pz{constructor(n){this.snapshot=n}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Rz{constructor(n){this.snapshot=n}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Fz{constructor(n){this.snapshot=n}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Nz{constructor(n){this.snapshot=n}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class dE{constructor(n,e,i){this.routerEvent=n,this.position=e,this.anchor=i}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const Nt="primary";class Lz{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const e=this.params[n];return Array.isArray(e)?e[0]:e}return null}getAll(n){if(this.has(n)){const e=this.params[n];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function Ul(t){return new Lz(t)}const uE="ngNavigationCancelingError";function _v(t){const n=Error("NavigationCancelingError: "+t);return n[uE]=!0,n}function Vz(t,n,e){const i=e.path.split("/");if(i.length>t.length||"full"===e.pathMatch&&(n.hasChildren()||i.lengthi[r]===o)}return t===n}function pE(t){return Array.prototype.concat.apply([],t)}function fE(t){return t.length>0?t[t.length-1]:null}function vi(t,n){for(const e in t)t.hasOwnProperty(e)&&n(t[e],e)}function Mr(t){return $m(t)?t:xc(t)?ui(Promise.resolve(t)):We(t)}const Uz={exact:function _E(t,n,e){if(!ya(t.segments,n.segments)||!Ep(t.segments,n.segments,e)||t.numberOfChildren!==n.numberOfChildren)return!1;for(const i in n.children)if(!t.children[i]||!_E(t.children[i],n.children[i],e))return!1;return!0},subset:bE},mE={exact:function zz(t,n){return Sr(t,n)},subset:function $z(t,n){return Object.keys(n).length<=Object.keys(t).length&&Object.keys(n).every(e=>hE(t[e],n[e]))},ignored:()=>!0};function gE(t,n,e){return Uz[e.paths](t.root,n.root,e.matrixParams)&&mE[e.queryParams](t.queryParams,n.queryParams)&&!("exact"===e.fragment&&t.fragment!==n.fragment)}function bE(t,n,e){return vE(t,n,n.segments,e)}function vE(t,n,e,i){if(t.segments.length>e.length){const o=t.segments.slice(0,e.length);return!(!ya(o,e)||n.hasChildren()||!Ep(o,e,i))}if(t.segments.length===e.length){if(!ya(t.segments,e)||!Ep(t.segments,e,i))return!1;for(const o in n.children)if(!t.children[o]||!bE(t.children[o],n.children[o],i))return!1;return!0}{const o=e.slice(0,t.segments.length),r=e.slice(t.segments.length);return!!(ya(t.segments,o)&&Ep(t.segments,o,i)&&t.children[Nt])&&vE(t.children[Nt],n,r,i)}}function Ep(t,n,e){return n.every((i,o)=>mE[e](t[o].parameters,i.parameters))}class va{constructor(n,e,i){this.root=n,this.queryParams=e,this.fragment=i}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Ul(this.queryParams)),this._queryParamMap}toString(){return qz.serialize(this)}}class Ut{constructor(n,e){this.segments=n,this.children=e,this.parent=null,vi(e,(i,o)=>i.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Ip(this)}}class Id{constructor(n,e){this.path=n,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=Ul(this.parameters)),this._parameterMap}toString(){return SE(this)}}function ya(t,n){return t.length===n.length&&t.every((e,i)=>e.path===n[i].path)}class yE{}class CE{parse(n){const e=new n$(n);return new va(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(n){const e=`/${Od(n.root,!0)}`,i=function Qz(t){const n=Object.keys(t).map(e=>{const i=t[e];return Array.isArray(i)?i.map(o=>`${Op(e)}=${Op(o)}`).join("&"):`${Op(e)}=${Op(i)}`}).filter(e=>!!e);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${e}${i}${"string"==typeof n.fragment?`#${function Kz(t){return encodeURI(t)}(n.fragment)}`:""}`}}const qz=new CE;function Ip(t){return t.segments.map(n=>SE(n)).join("/")}function Od(t,n){if(!t.hasChildren())return Ip(t);if(n){const e=t.children[Nt]?Od(t.children[Nt],!1):"",i=[];return vi(t.children,(o,r)=>{r!==Nt&&i.push(`${r}:${Od(o,!1)}`)}),i.length>0?`${e}(${i.join("//")})`:e}{const e=function Wz(t,n){let e=[];return vi(t.children,(i,o)=>{o===Nt&&(e=e.concat(n(i,o)))}),vi(t.children,(i,o)=>{o!==Nt&&(e=e.concat(n(i,o)))}),e}(t,(i,o)=>o===Nt?[Od(t.children[Nt],!1)]:[`${o}:${Od(i,!1)}`]);return 1===Object.keys(t.children).length&&null!=t.children[Nt]?`${Ip(t)}/${e[0]}`:`${Ip(t)}/(${e.join("//")})`}}function wE(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Op(t){return wE(t).replace(/%3B/gi,";")}function bv(t){return wE(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Ap(t){return decodeURIComponent(t)}function DE(t){return Ap(t.replace(/\+/g,"%20"))}function SE(t){return`${bv(t.path)}${function Zz(t){return Object.keys(t).map(n=>`;${bv(n)}=${bv(t[n])}`).join("")}(t.parameters)}`}const Yz=/^[^\/()?;=#]+/;function Pp(t){const n=t.match(Yz);return n?n[0]:""}const Xz=/^[^=?&#]+/,e$=/^[^&#]+/;class n${constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ut([],{}):new Ut([],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 e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let i={};return this.peekStartsWith("(")&&(i=this.parseParens(!1)),(n.length>0||Object.keys(e).length>0)&&(i[Nt]=new Ut(n,e)),i}parseSegment(){const n=Pp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(n),new Id(Ap(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const e=Pp(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){const o=Pp(this.remaining);o&&(i=o,this.capture(i))}n[Ap(e)]=Ap(i)}parseQueryParam(n){const e=function Jz(t){const n=t.match(Xz);return n?n[0]:""}(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){const s=function t$(t){const n=t.match(e$);return n?n[0]:""}(this.remaining);s&&(i=s,this.capture(i))}const o=DE(e),r=DE(i);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(r)}else n[o]=r}parseParens(n){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const i=Pp(this.remaining),o=this.remaining[i.length];if("/"!==o&&")"!==o&&";"!==o)throw new Error(`Cannot parse url '${this.url}'`);let r;i.indexOf(":")>-1?(r=i.substr(0,i.indexOf(":")),this.capture(r),this.capture(":")):n&&(r=Nt);const s=this.parseChildren();e[r]=1===Object.keys(s).length?s[Nt]:new Ut([],s),this.consumeOptional("//")}return e}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 Error(`Expected "${n}".`)}}class ME{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const e=this.pathFromRoot(n);return e.length>1?e[e.length-2]:null}children(n){const e=vv(n,this._root);return e?e.children.map(i=>i.value):[]}firstChild(n){const e=vv(n,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(n){const e=yv(n,this._root);return e.length<2?[]:e[e.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return yv(n,this._root).map(e=>e.value)}}function vv(t,n){if(t===n.value)return n;for(const e of n.children){const i=vv(t,e);if(i)return i}return null}function yv(t,n){if(t===n.value)return[n];for(const e of n.children){const i=yv(t,e);if(i.length)return i.unshift(n),i}return[]}class os{constructor(n,e){this.value=n,this.children=e}toString(){return`TreeNode(${this.value})`}}function zl(t){const n={};return t&&t.children.forEach(e=>n[e.value.outlet]=e),n}class xE extends ME{constructor(n,e){super(n),this.snapshot=e,Cv(this,n)}toString(){return this.snapshot.toString()}}function TE(t,n){const e=function i$(t,n){const s=new Rp([],{},{},"",{},Nt,n,null,t.root,-1,{});return new EE("",new os(s,[]))}(t,n),i=new vt([new Id("",{})]),o=new vt({}),r=new vt({}),s=new vt({}),a=new vt(""),l=new $l(i,o,s,a,r,Nt,n,e.root);return l.snapshot=e.root,new xE(new os(l,[]),e)}class $l{constructor(n,e,i,o,r,s,a,l){this.url=n,this.params=e,this.queryParams=i,this.fragment=o,this.data=r,this.outlet=s,this.component=a,this._futureSnapshot=l}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(je(n=>Ul(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(je(n=>Ul(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function kE(t,n="emptyOnly"){const e=t.pathFromRoot;let i=0;if("always"!==n)for(i=e.length-1;i>=1;){const o=e[i],r=e[i-1];if(o.routeConfig&&""===o.routeConfig.path)i--;else{if(r.component)break;i--}}return function o$(t){return t.reduce((n,e)=>({params:Object.assign(Object.assign({},n.params),e.params),data:Object.assign(Object.assign({},n.data),e.data),resolve:Object.assign(Object.assign({},n.resolve),e._resolvedData)}),{params:{},data:{},resolve:{}})}(e.slice(i))}class Rp{constructor(n,e,i,o,r,s,a,l,u,p,g){this.url=n,this.params=e,this.queryParams=i,this.fragment=o,this.data=r,this.outlet=s,this.component=a,this.routeConfig=l,this._urlSegment=u,this._lastPathIndex=p,this._resolve=g}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=Ul(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Ul(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(i=>i.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class EE extends ME{constructor(n,e){super(e),this.url=n,Cv(this,e)}toString(){return IE(this._root)}}function Cv(t,n){n.value._routerState=t,n.children.forEach(e=>Cv(t,e))}function IE(t){const n=t.children.length>0?` { ${t.children.map(IE).join(", ")} } `:"";return`${t.value}${n}`}function wv(t){if(t.snapshot){const n=t.snapshot,e=t._futureSnapshot;t.snapshot=e,Sr(n.queryParams,e.queryParams)||t.queryParams.next(e.queryParams),n.fragment!==e.fragment&&t.fragment.next(e.fragment),Sr(n.params,e.params)||t.params.next(e.params),function jz(t,n){if(t.length!==n.length)return!1;for(let e=0;eSr(e.parameters,n[i].parameters))}(t.url,n.url);return e&&!(!t.parent!=!n.parent)&&(!t.parent||Dv(t.parent,n.parent))}function Ad(t,n,e){if(e&&t.shouldReuseRoute(n.value,e.value.snapshot)){const i=e.value;i._futureSnapshot=n.value;const o=function s$(t,n,e){return n.children.map(i=>{for(const o of e.children)if(t.shouldReuseRoute(i.value,o.value.snapshot))return Ad(t,i,o);return Ad(t,i)})}(t,n,e);return new os(i,o)}{if(t.shouldAttach(n.value)){const r=t.retrieve(n.value);if(null!==r){const s=r.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>Ad(t,a)),s}}const i=function a$(t){return new $l(new vt(t.url),new vt(t.params),new vt(t.queryParams),new vt(t.fragment),new vt(t.data),t.outlet,t.component,t)}(n.value),o=n.children.map(r=>Ad(t,r));return new os(i,o)}}function Fp(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function Pd(t){return"object"==typeof t&&null!=t&&t.outlets}function Sv(t,n,e,i,o){let r={};if(i&&vi(i,(a,l)=>{r[l]=Array.isArray(a)?a.map(u=>`${u}`):`${a}`}),t===n)return new va(e,r,o);const s=OE(t,n,e);return new va(s,r,o)}function OE(t,n,e){const i={};return vi(t.children,(o,r)=>{i[r]=o===n?e:OE(o,n,e)}),new Ut(t.segments,i)}class AE{constructor(n,e,i){if(this.isAbsolute=n,this.numberOfDoubleDots=e,this.commands=i,n&&i.length>0&&Fp(i[0]))throw new Error("Root segment cannot have matrix parameters");const o=i.find(Pd);if(o&&o!==fE(i))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Mv{constructor(n,e,i){this.segmentGroup=n,this.processChildren=e,this.index=i}}function PE(t,n,e){if(t||(t=new Ut([],{})),0===t.segments.length&&t.hasChildren())return Np(t,n,e);const i=function p$(t,n,e){let i=0,o=n;const r={match:!1,pathIndex:0,commandIndex:0};for(;o=e.length)return r;const s=t.segments[o],a=e[i];if(Pd(a))break;const l=`${a}`,u=i0&&void 0===l)break;if(l&&u&&"object"==typeof u&&void 0===u.outlets){if(!FE(l,u,s))return r;i+=2}else{if(!FE(l,{},s))return r;i++}o++}return{match:!0,pathIndex:o,commandIndex:i}}(t,n,e),o=e.slice(i.commandIndex);if(i.match&&i.pathIndex{"string"==typeof r&&(r=[r]),null!==r&&(o[s]=PE(t.children[s],n,r))}),vi(t.children,(r,s)=>{void 0===i[s]&&(o[s]=r)}),new Ut(t.segments,o)}}function xv(t,n,e){const i=t.segments.slice(0,n);let o=0;for(;o{"string"==typeof e&&(e=[e]),null!==e&&(n[i]=xv(new Ut([],{}),0,e))}),n}function RE(t){const n={};return vi(t,(e,i)=>n[i]=`${e}`),n}function FE(t,n,e){return t==e.path&&Sr(n,e.parameters)}class g${constructor(n,e,i,o){this.routeReuseStrategy=n,this.futureState=e,this.currState=i,this.forwardEvent=o}activate(n){const e=this.futureState._root,i=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,i,n),wv(this.futureState.root),this.activateChildRoutes(e,i,n)}deactivateChildRoutes(n,e,i){const o=zl(e);n.children.forEach(r=>{const s=r.value.outlet;this.deactivateRoutes(r,o[s],i),delete o[s]}),vi(o,(r,s)=>{this.deactivateRouteAndItsChildren(r,i)})}deactivateRoutes(n,e,i){const o=n.value,r=e?e.value:null;if(o===r)if(o.component){const s=i.getContext(o.outlet);s&&this.deactivateChildRoutes(n,e,s.children)}else this.deactivateChildRoutes(n,e,i);else r&&this.deactivateRouteAndItsChildren(e,i)}deactivateRouteAndItsChildren(n,e){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,e):this.deactivateRouteAndOutlet(n,e)}detachAndStoreRouteSubtree(n,e){const i=e.getContext(n.value.outlet),o=i&&n.value.component?i.children:e,r=zl(n);for(const s of Object.keys(r))this.deactivateRouteAndItsChildren(r[s],o);if(i&&i.outlet){const s=i.outlet.detach(),a=i.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,e){const i=e.getContext(n.value.outlet),o=i&&n.value.component?i.children:e,r=zl(n);for(const s of Object.keys(r))this.deactivateRouteAndItsChildren(r[s],o);i&&i.outlet&&(i.outlet.deactivate(),i.children.onOutletDeactivated(),i.attachRef=null,i.resolver=null,i.route=null)}activateChildRoutes(n,e,i){const o=zl(e);n.children.forEach(r=>{this.activateRoutes(r,o[r.value.outlet],i),this.forwardEvent(new Nz(r.value.snapshot))}),n.children.length&&this.forwardEvent(new Rz(n.value.snapshot))}activateRoutes(n,e,i){const o=n.value,r=e?e.value:null;if(wv(o),o===r)if(o.component){const s=i.getOrCreateContext(o.outlet);this.activateChildRoutes(n,e,s.children)}else this.activateChildRoutes(n,e,i);else if(o.component){const s=i.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),wv(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=function _$(t){for(let n=t.parent;n;n=n.parent){const e=n.routeConfig;if(e&&e._loadedConfig)return e._loadedConfig;if(e&&e.component)return null}return null}(o.snapshot),l=a?a.module.componentFactoryResolver:null;s.attachRef=null,s.route=o,s.resolver=l,s.outlet&&s.outlet.activateWith(o,l),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,i)}}class Tv{constructor(n,e){this.routes=n,this.module=e}}function Ls(t){return"function"==typeof t}function Ca(t){return t instanceof va}const Rd=Symbol("INITIAL_VALUE");function Fd(){return Li(t=>xk(t.map(n=>n.pipe(Ot(1),Nn(Rd)))).pipe(oE((n,e)=>{let i=!1;return e.reduce((o,r,s)=>o!==Rd?o:(r===Rd&&(i=!0),i||!1!==r&&s!==e.length-1&&!Ca(r)?o:r),n)},Rd),It(n=>n!==Rd),je(n=>Ca(n)?n:!0===n),Ot(1)))}class D${constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Nd,this.attachRef=null}}class Nd{constructor(){this.contexts=new Map}onChildOutletCreated(n,e){const i=this.getOrCreateContext(n);i.outlet=e,this.contexts.set(n,i)}onChildOutletDestroyed(n){const e=this.getContext(n);e&&(e.outlet=null,e.attachRef=null)}onOutletDeactivated(){const n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let e=this.getContext(n);return e||(e=new D$,this.contexts.set(n,e)),e}getContext(n){return this.contexts.get(n)||null}}let Lp=(()=>{class t{constructor(e,i,o,r,s){this.parentContexts=e,this.location=i,this.resolver=o,this.changeDetector=s,this.activated=null,this._activatedRoute=null,this.activateEvents=new Pe,this.deactivateEvents=new Pe,this.attachEvents=new Pe,this.detachEvents=new Pe,this.name=r||Nt,e.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const e=this.parentContexts.getContext(this.name);e&&e.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,i){this.activated=e,this._activatedRoute=i,this.location.insert(e.hostView),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){const e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,i){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=e;const s=(i=i||this.resolver).resolveComponentFactory(e._futureSnapshot.routeConfig.component),a=this.parentContexts.getOrCreateContext(this.name).children,l=new S$(e,a,this.location.injector);this.activated=this.location.createComponent(s,this.location.length,l),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}return t.\u0275fac=function(e){return new(e||t)(b(Nd),b(sn),b(gs),Di("name"),b(At))},t.\u0275dir=oe({type:t,selectors:[["router-outlet"]],outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"]}),t})();class S${constructor(n,e,i){this.route=n,this.childContexts=e,this.parent=i}get(n,e){return n===$l?this.route:n===Nd?this.childContexts:this.parent.get(n,e)}}let NE=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["ng-component"]],decls:1,vars:0,template:function(e,i){1&e&&E(0,"router-outlet")},directives:[Lp],encapsulation:2}),t})();function LE(t,n=""){for(let e=0;eFo(i)===n);return e.push(...t.filter(i=>Fo(i)!==n)),e}const VE={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function Bp(t,n,e){var i;if(""===n.path)return"full"===n.pathMatch&&(t.hasChildren()||e.length>0)?Object.assign({},VE):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};const r=(n.matcher||Vz)(e,t,n);if(!r)return Object.assign({},VE);const s={};vi(r.posParams,(l,u)=>{s[u]=l.path});const a=r.consumed.length>0?Object.assign(Object.assign({},s),r.consumed[r.consumed.length-1].parameters):s;return{matched:!0,consumedSegments:r.consumed,remainingSegments:e.slice(r.consumed.length),parameters:a,positionalParamSegments:null!==(i=r.posParams)&&void 0!==i?i:{}}}function Vp(t,n,e,i,o="corrected"){if(e.length>0&&function E$(t,n,e){return e.some(i=>jp(t,n,i)&&Fo(i)!==Nt)}(t,e,i)){const s=new Ut(n,function k$(t,n,e,i){const o={};o[Nt]=i,i._sourceSegment=t,i._segmentIndexShift=n.length;for(const r of e)if(""===r.path&&Fo(r)!==Nt){const s=new Ut([],{});s._sourceSegment=t,s._segmentIndexShift=n.length,o[Fo(r)]=s}return o}(t,n,i,new Ut(e,t.children)));return s._sourceSegment=t,s._segmentIndexShift=n.length,{segmentGroup:s,slicedSegments:[]}}if(0===e.length&&function I$(t,n,e){return e.some(i=>jp(t,n,i))}(t,e,i)){const s=new Ut(t.segments,function T$(t,n,e,i,o,r){const s={};for(const a of i)if(jp(t,e,a)&&!o[Fo(a)]){const l=new Ut([],{});l._sourceSegment=t,l._segmentIndexShift="legacy"===r?t.segments.length:n.length,s[Fo(a)]=l}return Object.assign(Object.assign({},o),s)}(t,n,e,i,t.children,o));return s._sourceSegment=t,s._segmentIndexShift=n.length,{segmentGroup:s,slicedSegments:e}}const r=new Ut(t.segments,t.children);return r._sourceSegment=t,r._segmentIndexShift=n.length,{segmentGroup:r,slicedSegments:e}}function jp(t,n,e){return(!(t.hasChildren()||n.length>0)||"full"!==e.pathMatch)&&""===e.path}function jE(t,n,e,i){return!!(Fo(t)===i||i!==Nt&&jp(n,e,t))&&("**"===t.path||Bp(n,t,e).matched)}function HE(t,n,e){return 0===n.length&&!t.children[e]}class Hp{constructor(n){this.segmentGroup=n||null}}class UE{constructor(n){this.urlTree=n}}function Ld(t){return sd(new Hp(t))}function zE(t){return sd(new UE(t))}class R${constructor(n,e,i,o,r){this.configLoader=e,this.urlSerializer=i,this.urlTree=o,this.config=r,this.allowRedirects=!0,this.ngModule=n.get(Lr)}apply(){const n=Vp(this.urlTree.root,[],[],this.config).segmentGroup,e=new Ut(n.segments,n.children);return this.expandSegmentGroup(this.ngModule,this.config,e,Nt).pipe(je(r=>this.createUrlTree(Ev(r),this.urlTree.queryParams,this.urlTree.fragment))).pipe(wn(r=>{if(r instanceof UE)return this.allowRedirects=!1,this.match(r.urlTree);throw r instanceof Hp?this.noMatchError(r):r}))}match(n){return this.expandSegmentGroup(this.ngModule,this.config,n.root,Nt).pipe(je(o=>this.createUrlTree(Ev(o),n.queryParams,n.fragment))).pipe(wn(o=>{throw o instanceof Hp?this.noMatchError(o):o}))}noMatchError(n){return new Error(`Cannot match any routes. URL Segment: '${n.segmentGroup}'`)}createUrlTree(n,e,i){const o=n.segments.length>0?new Ut([],{[Nt]:n}):n;return new va(o,e,i)}expandSegmentGroup(n,e,i,o){return 0===i.segments.length&&i.hasChildren()?this.expandChildren(n,e,i).pipe(je(r=>new Ut([],r))):this.expandSegment(n,i,e,i.segments,o,!0)}expandChildren(n,e,i){const o=[];for(const r of Object.keys(i.children))"primary"===r?o.unshift(r):o.push(r);return ui(o).pipe(xl(r=>{const s=i.children[r],a=BE(e,r);return this.expandSegmentGroup(n,a,s,r).pipe(je(l=>({segment:l,outlet:r})))}),oE((r,s)=>(r[s.outlet]=s.segment,r),{}),function xz(t,n){const e=arguments.length>=2;return i=>i.pipe(t?It((o,r)=>t(o,r,i)):Me,mv(1),e?sE(n):rE(()=>new kp))}())}expandSegment(n,e,i,o,r,s){return ui(i).pipe(xl(a=>this.expandSegmentAgainstRoute(n,e,i,a,o,r,s).pipe(wn(u=>{if(u instanceof Hp)return We(null);throw u}))),Hl(a=>!!a),wn((a,l)=>{if(a instanceof kp||"EmptyError"===a.name)return HE(e,o,r)?We(new Ut([],{})):Ld(e);throw a}))}expandSegmentAgainstRoute(n,e,i,o,r,s,a){return jE(o,e,r,s)?void 0===o.redirectTo?this.matchSegmentAgainstRoute(n,e,o,r,s):a&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s):Ld(e):Ld(e)}expandSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s){return"**"===o.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(n,i,o,s):this.expandRegularSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s)}expandWildCardWithParamsAgainstRouteUsingRedirect(n,e,i,o){const r=this.applyRedirectCommands([],i.redirectTo,{});return i.redirectTo.startsWith("/")?zE(r):this.lineralizeSegments(i,r).pipe($n(s=>{const a=new Ut(s,{});return this.expandSegment(n,a,e,s,o,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s){const{matched:a,consumedSegments:l,remainingSegments:u,positionalParamSegments:p}=Bp(e,o,r);if(!a)return Ld(e);const g=this.applyRedirectCommands(l,o.redirectTo,p);return o.redirectTo.startsWith("/")?zE(g):this.lineralizeSegments(o,g).pipe($n(v=>this.expandSegment(n,e,i,v.concat(u),s,!1)))}matchSegmentAgainstRoute(n,e,i,o,r){if("**"===i.path)return i.loadChildren?(i._loadedConfig?We(i._loadedConfig):this.configLoader.load(n.injector,i)).pipe(je(g=>(i._loadedConfig=g,new Ut(o,{})))):We(new Ut(o,{}));const{matched:s,consumedSegments:a,remainingSegments:l}=Bp(e,i,o);return s?this.getChildConfig(n,i,o).pipe($n(p=>{const g=p.module,v=p.routes,{segmentGroup:C,slicedSegments:M}=Vp(e,a,l,v),V=new Ut(C.segments,C.children);if(0===M.length&&V.hasChildren())return this.expandChildren(g,v,V).pipe(je(ke=>new Ut(a,ke)));if(0===v.length&&0===M.length)return We(new Ut(a,{}));const K=Fo(i)===r;return this.expandSegment(g,V,v,M,K?Nt:r,!0).pipe(je(ee=>new Ut(a.concat(ee.segments),ee.children)))})):Ld(e)}getChildConfig(n,e,i){return e.children?We(new Tv(e.children,n)):e.loadChildren?void 0!==e._loadedConfig?We(e._loadedConfig):this.runCanLoadGuards(n.injector,e,i).pipe($n(o=>o?this.configLoader.load(n.injector,e).pipe(je(r=>(e._loadedConfig=r,r))):function A$(t){return sd(_v(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`))}(e))):We(new Tv([],n))}runCanLoadGuards(n,e,i){const o=e.canLoad;return o&&0!==o.length?We(o.map(s=>{const a=n.get(s);let l;if(function v$(t){return t&&Ls(t.canLoad)}(a))l=a.canLoad(e,i);else{if(!Ls(a))throw new Error("Invalid CanLoad guard");l=a(e,i)}return Mr(l)})).pipe(Fd(),Zt(s=>{if(!Ca(s))return;const a=_v(`Redirecting to "${this.urlSerializer.serialize(s)}"`);throw a.url=s,a}),je(s=>!0===s)):We(!0)}lineralizeSegments(n,e){let i=[],o=e.root;for(;;){if(i=i.concat(o.segments),0===o.numberOfChildren)return We(i);if(o.numberOfChildren>1||!o.children[Nt])return sd(new Error(`Only absolute redirects can have named outlets. redirectTo: '${n.redirectTo}'`));o=o.children[Nt]}}applyRedirectCommands(n,e,i){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),n,i)}applyRedirectCreatreUrlTree(n,e,i,o){const r=this.createSegmentGroup(n,e.root,i,o);return new va(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(n,e){const i={};return vi(n,(o,r)=>{if("string"==typeof o&&o.startsWith(":")){const a=o.substring(1);i[r]=e[a]}else i[r]=o}),i}createSegmentGroup(n,e,i,o){const r=this.createSegments(n,e.segments,i,o);let s={};return vi(e.children,(a,l)=>{s[l]=this.createSegmentGroup(n,a,i,o)}),new Ut(r,s)}createSegments(n,e,i,o){return e.map(r=>r.path.startsWith(":")?this.findPosParam(n,r,o):this.findOrReturn(r,i))}findPosParam(n,e,i){const o=i[e.path.substring(1)];if(!o)throw new Error(`Cannot redirect to '${n}'. Cannot find '${e.path}'.`);return o}findOrReturn(n,e){let i=0;for(const o of e){if(o.path===n.path)return e.splice(i),o;i++}return n}}function Ev(t){const n={};for(const i of Object.keys(t.children)){const r=Ev(t.children[i]);(r.segments.length>0||r.hasChildren())&&(n[i]=r)}return function F$(t){if(1===t.numberOfChildren&&t.children[Nt]){const n=t.children[Nt];return new Ut(t.segments.concat(n.segments),n.children)}return t}(new Ut(t.segments,n))}class $E{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Up{constructor(n,e){this.component=n,this.route=e}}function L$(t,n,e){const i=t._root;return Bd(i,n?n._root:null,e,[i.value])}function zp(t,n,e){const i=function V$(t){if(!t)return null;for(let n=t.parent;n;n=n.parent){const e=n.routeConfig;if(e&&e._loadedConfig)return e._loadedConfig}return null}(n);return(i?i.module.injector:e).get(t)}function Bd(t,n,e,i,o={canDeactivateChecks:[],canActivateChecks:[]}){const r=zl(n);return t.children.forEach(s=>{(function j$(t,n,e,i,o={canDeactivateChecks:[],canActivateChecks:[]}){const r=t.value,s=n?n.value:null,a=e?e.getContext(t.value.outlet):null;if(s&&r.routeConfig===s.routeConfig){const l=function H$(t,n,e){if("function"==typeof e)return e(t,n);switch(e){case"pathParamsChange":return!ya(t.url,n.url);case"pathParamsOrQueryParamsChange":return!ya(t.url,n.url)||!Sr(t.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Dv(t,n)||!Sr(t.queryParams,n.queryParams);default:return!Dv(t,n)}}(s,r,r.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new $E(i)):(r.data=s.data,r._resolvedData=s._resolvedData),Bd(t,n,r.component?a?a.children:null:e,i,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Up(a.outlet.component,s))}else s&&Vd(n,a,o),o.canActivateChecks.push(new $E(i)),Bd(t,null,r.component?a?a.children:null:e,i,o)})(s,r[s.value.outlet],e,i.concat([s.value]),o),delete r[s.value.outlet]}),vi(r,(s,a)=>Vd(s,e.getContext(a),o)),o}function Vd(t,n,e){const i=zl(t),o=t.value;vi(i,(r,s)=>{Vd(r,o.component?n?n.children.getContext(s):null:n,e)}),e.canDeactivateChecks.push(new Up(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}class Q${}function GE(t){return new Ue(n=>n.error(t))}class X${constructor(n,e,i,o,r,s){this.rootComponentType=n,this.config=e,this.urlTree=i,this.url=o,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=s}recognize(){const n=Vp(this.urlTree.root,[],[],this.config.filter(s=>void 0===s.redirectTo),this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,n,Nt);if(null===e)return null;const i=new Rp([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},Nt,this.rootComponentType,null,this.urlTree.root,-1,{}),o=new os(i,e),r=new EE(this.url,o);return this.inheritParamsAndData(r._root),r}inheritParamsAndData(n){const e=n.value,i=kE(e,this.paramsInheritanceStrategy);e.params=Object.freeze(i.params),e.data=Object.freeze(i.data),n.children.forEach(o=>this.inheritParamsAndData(o))}processSegmentGroup(n,e,i){return 0===e.segments.length&&e.hasChildren()?this.processChildren(n,e):this.processSegment(n,e,e.segments,i)}processChildren(n,e){const i=[];for(const r of Object.keys(e.children)){const s=e.children[r],a=BE(n,r),l=this.processSegmentGroup(a,s,r);if(null===l)return null;i.push(...l)}const o=WE(i);return function J$(t){t.sort((n,e)=>n.value.outlet===Nt?-1:e.value.outlet===Nt?1:n.value.outlet.localeCompare(e.value.outlet))}(o),o}processSegment(n,e,i,o){for(const r of n){const s=this.processSegmentAgainstRoute(r,e,i,o);if(null!==s)return s}return HE(e,i,o)?[]:null}processSegmentAgainstRoute(n,e,i,o){if(n.redirectTo||!jE(n,e,i,o))return null;let r,s=[],a=[];if("**"===n.path){const C=i.length>0?fE(i).parameters:{};r=new Rp(i,C,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ZE(n),Fo(n),n.component,n,qE(e),KE(e)+i.length,QE(n))}else{const C=Bp(e,n,i);if(!C.matched)return null;s=C.consumedSegments,a=C.remainingSegments,r=new Rp(s,C.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,ZE(n),Fo(n),n.component,n,qE(e),KE(e)+s.length,QE(n))}const l=function eG(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(n),{segmentGroup:u,slicedSegments:p}=Vp(e,s,a,l.filter(C=>void 0===C.redirectTo),this.relativeLinkResolution);if(0===p.length&&u.hasChildren()){const C=this.processChildren(l,u);return null===C?null:[new os(r,C)]}if(0===l.length&&0===p.length)return[new os(r,[])];const g=Fo(n)===o,v=this.processSegment(l,u,p,g?Nt:o);return null===v?null:[new os(r,v)]}}function tG(t){const n=t.value.routeConfig;return n&&""===n.path&&void 0===n.redirectTo}function WE(t){const n=[],e=new Set;for(const i of t){if(!tG(i)){n.push(i);continue}const o=n.find(r=>i.value.routeConfig===r.value.routeConfig);void 0!==o?(o.children.push(...i.children),e.add(o)):n.push(i)}for(const i of e){const o=WE(i.children);n.push(new os(i.value,o))}return n.filter(i=>!e.has(i))}function qE(t){let n=t;for(;n._sourceSegment;)n=n._sourceSegment;return n}function KE(t){let n=t,e=n._segmentIndexShift?n._segmentIndexShift:0;for(;n._sourceSegment;)n=n._sourceSegment,e+=n._segmentIndexShift?n._segmentIndexShift:0;return e-1}function ZE(t){return t.data||{}}function QE(t){return t.resolve||{}}function YE(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function Iv(t){return Li(n=>{const e=t(n);return e?ui(e).pipe(je(()=>n)):We(n)})}class cG extends class lG{shouldDetach(n){return!1}store(n,e){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,e){return n.routeConfig===e.routeConfig}}{}const Ov=new _e("ROUTES");class XE{constructor(n,e,i,o){this.injector=n,this.compiler=e,this.onLoadStartListener=i,this.onLoadEndListener=o}load(n,e){if(e._loader$)return e._loader$;this.onLoadStartListener&&this.onLoadStartListener(e);const o=this.loadModuleFactory(e.loadChildren).pipe(je(r=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=r.create(n);return new Tv(pE(s.injector.get(Ov,void 0,yt.Self|yt.Optional)).map(kv),s)}),wn(r=>{throw e._loader$=void 0,r}));return e._loader$=new Dz(o,()=>new ie).pipe(iE()),e._loader$}loadModuleFactory(n){return Mr(n()).pipe($n(e=>e instanceof Dw?We(e):ui(this.compiler.compileModuleAsync(e))))}}class uG{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,e){return n}}function hG(t){throw t}function pG(t,n,e){return n.parse("/")}function JE(t,n){return We(null)}const fG={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},mG={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Jn=(()=>{class t{constructor(e,i,o,r,s,a,l){this.rootComponentType=e,this.urlSerializer=i,this.rootContexts=o,this.location=r,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.disposed=!1,this.navigationId=0,this.currentPageId=0,this.isNgZoneEnabled=!1,this.events=new ie,this.errorHandler=hG,this.malformedUriErrorHandler=pG,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:JE,afterPreactivation:JE},this.urlHandlingStrategy=new uG,this.routeReuseStrategy=new cG,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.canceledNavigationResolution="replace",this.ngModule=s.get(Lr),this.console=s.get(cD);const g=s.get(Je);this.isNgZoneEnabled=g instanceof Je&&Je.isInAngularZone(),this.resetConfig(l),this.currentUrlTree=function Hz(){return new va(new Ut([],{}),{},null)}(),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new XE(s,a,v=>this.triggerEvent(new lE(v)),v=>this.triggerEvent(new cE(v))),this.routerState=TE(this.currentUrlTree,this.rootComponentType),this.transitions=new vt({id:0,targetPageId:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}get browserPageId(){var e;return null===(e=this.location.getState())||void 0===e?void 0:e.\u0275routerPageId}setupNavigations(e){const i=this.events;return e.pipe(It(o=>0!==o.id),je(o=>Object.assign(Object.assign({},o),{extractedUrl:this.urlHandlingStrategy.extract(o.rawUrl)})),Li(o=>{let r=!1,s=!1;return We(o).pipe(Zt(a=>{this.currentNavigation={id:a.id,initialUrl:a.currentRawUrl,extractedUrl:a.extractedUrl,trigger:a.source,extras:a.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign(Object.assign({},this.lastSuccessfulNavigation),{previousNavigation:null}):null}}),Li(a=>{const l=this.browserUrlTree.toString(),u=!this.navigated||a.extractedUrl.toString()!==l||l!==this.currentUrlTree.toString();if(("reload"===this.onSameUrlNavigation||u)&&this.urlHandlingStrategy.shouldProcessUrl(a.rawUrl))return eI(a.source)&&(this.browserUrlTree=a.extractedUrl),We(a).pipe(Li(g=>{const v=this.transitions.getValue();return i.next(new gv(g.id,this.serializeUrl(g.extractedUrl),g.source,g.restoredState)),v!==this.transitions.getValue()?yo:Promise.resolve(g)}),function N$(t,n,e,i){return Li(o=>function P$(t,n,e,i,o){return new R$(t,n,e,i,o).apply()}(t,n,e,o.extractedUrl,i).pipe(je(r=>Object.assign(Object.assign({},o),{urlAfterRedirects:r}))))}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),Zt(g=>{this.currentNavigation=Object.assign(Object.assign({},this.currentNavigation),{finalUrl:g.urlAfterRedirects})}),function nG(t,n,e,i,o){return $n(r=>function Y$(t,n,e,i,o="emptyOnly",r="legacy"){try{const s=new X$(t,n,e,i,o,r).recognize();return null===s?GE(new Q$):We(s)}catch(s){return GE(s)}}(t,n,r.urlAfterRedirects,e(r.urlAfterRedirects),i,o).pipe(je(s=>Object.assign(Object.assign({},r),{targetSnapshot:s}))))}(this.rootComponentType,this.config,g=>this.serializeUrl(g),this.paramsInheritanceStrategy,this.relativeLinkResolution),Zt(g=>{if("eager"===this.urlUpdateStrategy){if(!g.extras.skipLocationChange){const C=this.urlHandlingStrategy.merge(g.urlAfterRedirects,g.rawUrl);this.setBrowserUrl(C,g)}this.browserUrlTree=g.urlAfterRedirects}const v=new kz(g.id,this.serializeUrl(g.extractedUrl),this.serializeUrl(g.urlAfterRedirects),g.targetSnapshot);i.next(v)}));if(u&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:v,extractedUrl:C,source:M,restoredState:V,extras:K}=a,Y=new gv(v,this.serializeUrl(C),M,V);i.next(Y);const ee=TE(C,this.rootComponentType).snapshot;return We(Object.assign(Object.assign({},a),{targetSnapshot:ee,urlAfterRedirects:C,extras:Object.assign(Object.assign({},K),{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=a.rawUrl,a.resolve(null),yo}),Iv(a=>{const{targetSnapshot:l,id:u,extractedUrl:p,rawUrl:g,extras:{skipLocationChange:v,replaceUrl:C}}=a;return this.hooks.beforePreactivation(l,{navigationId:u,appliedUrlTree:p,rawUrlTree:g,skipLocationChange:!!v,replaceUrl:!!C})}),Zt(a=>{const l=new Ez(a.id,this.serializeUrl(a.extractedUrl),this.serializeUrl(a.urlAfterRedirects),a.targetSnapshot);this.triggerEvent(l)}),je(a=>Object.assign(Object.assign({},a),{guards:L$(a.targetSnapshot,a.currentSnapshot,this.rootContexts)})),function U$(t,n){return $n(e=>{const{targetSnapshot:i,currentSnapshot:o,guards:{canActivateChecks:r,canDeactivateChecks:s}}=e;return 0===s.length&&0===r.length?We(Object.assign(Object.assign({},e),{guardsResult:!0})):function z$(t,n,e,i){return ui(t).pipe($n(o=>function Z$(t,n,e,i,o){const r=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return r&&0!==r.length?We(r.map(a=>{const l=zp(a,n,o);let u;if(function w$(t){return t&&Ls(t.canDeactivate)}(l))u=Mr(l.canDeactivate(t,n,e,i));else{if(!Ls(l))throw new Error("Invalid CanDeactivate guard");u=Mr(l(t,n,e,i))}return u.pipe(Hl())})).pipe(Fd()):We(!0)}(o.component,o.route,e,n,i)),Hl(o=>!0!==o,!0))}(s,i,o,t).pipe($n(a=>a&&function b$(t){return"boolean"==typeof t}(a)?function $$(t,n,e,i){return ui(n).pipe(xl(o=>id(function W$(t,n){return null!==t&&n&&n(new Pz(t)),We(!0)}(o.route.parent,i),function G$(t,n){return null!==t&&n&&n(new Fz(t)),We(!0)}(o.route,i),function K$(t,n,e){const i=n[n.length-1],r=n.slice(0,n.length-1).reverse().map(s=>function B$(t){const n=t.routeConfig?t.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:t,guards:n}:null}(s)).filter(s=>null!==s).map(s=>wd(()=>We(s.guards.map(l=>{const u=zp(l,s.node,e);let p;if(function C$(t){return t&&Ls(t.canActivateChild)}(u))p=Mr(u.canActivateChild(i,t));else{if(!Ls(u))throw new Error("Invalid CanActivateChild guard");p=Mr(u(i,t))}return p.pipe(Hl())})).pipe(Fd())));return We(r).pipe(Fd())}(t,o.path,e),function q$(t,n,e){const i=n.routeConfig?n.routeConfig.canActivate:null;if(!i||0===i.length)return We(!0);const o=i.map(r=>wd(()=>{const s=zp(r,n,e);let a;if(function y$(t){return t&&Ls(t.canActivate)}(s))a=Mr(s.canActivate(n,t));else{if(!Ls(s))throw new Error("Invalid CanActivate guard");a=Mr(s(n,t))}return a.pipe(Hl())}));return We(o).pipe(Fd())}(t,o.route,e))),Hl(o=>!0!==o,!0))}(i,r,t,n):We(a)),je(a=>Object.assign(Object.assign({},e),{guardsResult:a})))})}(this.ngModule.injector,a=>this.triggerEvent(a)),Zt(a=>{if(Ca(a.guardsResult)){const u=_v(`Redirecting to "${this.serializeUrl(a.guardsResult)}"`);throw u.url=a.guardsResult,u}const l=new Iz(a.id,this.serializeUrl(a.extractedUrl),this.serializeUrl(a.urlAfterRedirects),a.targetSnapshot,!!a.guardsResult);this.triggerEvent(l)}),It(a=>!!a.guardsResult||(this.restoreHistory(a),this.cancelNavigationTransition(a,""),!1)),Iv(a=>{if(a.guards.canActivateChecks.length)return We(a).pipe(Zt(l=>{const u=new Oz(l.id,this.serializeUrl(l.extractedUrl),this.serializeUrl(l.urlAfterRedirects),l.targetSnapshot);this.triggerEvent(u)}),Li(l=>{let u=!1;return We(l).pipe(function iG(t,n){return $n(e=>{const{targetSnapshot:i,guards:{canActivateChecks:o}}=e;if(!o.length)return We(e);let r=0;return ui(o).pipe(xl(s=>function oG(t,n,e,i){return function rG(t,n,e,i){const o=YE(t);if(0===o.length)return We({});const r={};return ui(o).pipe($n(s=>function sG(t,n,e,i){const o=zp(t,n,i);return Mr(o.resolve?o.resolve(n,e):o(n,e))}(t[s],n,e,i).pipe(Zt(a=>{r[s]=a}))),mv(1),$n(()=>YE(r).length===o.length?We(r):yo))}(t._resolve,t,n,i).pipe(je(r=>(t._resolvedData=r,t.data=Object.assign(Object.assign({},t.data),kE(t,e).resolve),null)))}(s.route,i,t,n)),Zt(()=>r++),mv(1),$n(s=>r===o.length?We(e):yo))})}(this.paramsInheritanceStrategy,this.ngModule.injector),Zt({next:()=>u=!0,complete:()=>{u||(this.restoreHistory(l),this.cancelNavigationTransition(l,"At least one route resolver didn't emit any value."))}}))}),Zt(l=>{const u=new Az(l.id,this.serializeUrl(l.extractedUrl),this.serializeUrl(l.urlAfterRedirects),l.targetSnapshot);this.triggerEvent(u)}))}),Iv(a=>{const{targetSnapshot:l,id:u,extractedUrl:p,rawUrl:g,extras:{skipLocationChange:v,replaceUrl:C}}=a;return this.hooks.afterPreactivation(l,{navigationId:u,appliedUrlTree:p,rawUrlTree:g,skipLocationChange:!!v,replaceUrl:!!C})}),je(a=>{const l=function r$(t,n,e){const i=Ad(t,n._root,e?e._root:void 0);return new xE(i,n)}(this.routeReuseStrategy,a.targetSnapshot,a.currentRouterState);return Object.assign(Object.assign({},a),{targetRouterState:l})}),Zt(a=>{this.currentUrlTree=a.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(a.urlAfterRedirects,a.rawUrl),this.routerState=a.targetRouterState,"deferred"===this.urlUpdateStrategy&&(a.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,a),this.browserUrlTree=a.urlAfterRedirects)}),((t,n,e)=>je(i=>(new g$(n,i.targetRouterState,i.currentRouterState,e).activate(t),i)))(this.rootContexts,this.routeReuseStrategy,a=>this.triggerEvent(a)),Zt({next(){r=!0},complete(){r=!0}}),X_(()=>{var a;r||s||this.cancelNavigationTransition(o,`Navigation ID ${o.id} is not equal to the current navigation id ${this.navigationId}`),(null===(a=this.currentNavigation)||void 0===a?void 0:a.id)===o.id&&(this.currentNavigation=null)}),wn(a=>{if(s=!0,function Bz(t){return t&&t[uE]}(a)){const l=Ca(a.url);l||(this.navigated=!0,this.restoreHistory(o,!0));const u=new aE(o.id,this.serializeUrl(o.extractedUrl),a.message);i.next(u),l?setTimeout(()=>{const p=this.urlHandlingStrategy.merge(a.url,this.rawUrlTree),g={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||eI(o.source)};this.scheduleNavigation(p,"imperative",null,g,{resolve:o.resolve,reject:o.reject,promise:o.promise})},0):o.resolve(!1)}else{this.restoreHistory(o,!0);const l=new Tz(o.id,this.serializeUrl(o.extractedUrl),a);i.next(l);try{o.resolve(this.errorHandler(a))}catch(u){o.reject(u)}}return yo}))}))}resetRootComponentType(e){this.rootComponentType=e,this.routerState.root.component=this.rootComponentType}setTransition(e){this.transitions.next(Object.assign(Object.assign({},this.transitions.value),e))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(e=>{const i="popstate"===e.type?"popstate":"hashchange";"popstate"===i&&setTimeout(()=>{var o;const r={replaceUrl:!0},s=(null===(o=e.state)||void 0===o?void 0:o.navigationId)?e.state:null;if(s){const l=Object.assign({},s);delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(r.state=l)}const a=this.parseUrl(e.url);this.scheduleNavigation(a,i,s,r)},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(e){this.events.next(e)}resetConfig(e){LE(e),this.config=e.map(kv),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.transitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}createUrlTree(e,i={}){const{relativeTo:o,queryParams:r,fragment:s,queryParamsHandling:a,preserveFragment:l}=i,u=o||this.routerState.root,p=l?this.currentUrlTree.fragment:s;let g=null;switch(a){case"merge":g=Object.assign(Object.assign({},this.currentUrlTree.queryParams),r);break;case"preserve":g=this.currentUrlTree.queryParams;break;default:g=r||null}return null!==g&&(g=this.removeEmptyProps(g)),function l$(t,n,e,i,o){if(0===e.length)return Sv(n.root,n.root,n.root,i,o);const r=function c$(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new AE(!0,0,t);let n=0,e=!1;const i=t.reduce((o,r,s)=>{if("object"==typeof r&&null!=r){if(r.outlets){const a={};return vi(r.outlets,(l,u)=>{a[u]="string"==typeof l?l.split("/"):l}),[...o,{outlets:a}]}if(r.segmentPath)return[...o,r.segmentPath]}return"string"!=typeof r?[...o,r]:0===s?(r.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?e=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,r]},[]);return new AE(e,n,i)}(e);if(r.toRoot())return Sv(n.root,n.root,new Ut([],{}),i,o);const s=function d$(t,n,e){if(t.isAbsolute)return new Mv(n.root,!0,0);if(-1===e.snapshot._lastPathIndex){const r=e.snapshot._urlSegment;return new Mv(r,r===n.root,0)}const i=Fp(t.commands[0])?0:1;return function u$(t,n,e){let i=t,o=n,r=e;for(;r>o;){if(r-=o,i=i.parent,!i)throw new Error("Invalid number of '../'");o=i.segments.length}return new Mv(i,!1,o-r)}(e.snapshot._urlSegment,e.snapshot._lastPathIndex+i,t.numberOfDoubleDots)}(r,n,t),a=s.processChildren?Np(s.segmentGroup,s.index,r.commands):PE(s.segmentGroup,s.index,r.commands);return Sv(n.root,s.segmentGroup,a,i,o)}(u,this.currentUrlTree,e,g,null!=p?p:null)}navigateByUrl(e,i={skipLocationChange:!1}){const o=Ca(e)?e:this.parseUrl(e),r=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,i)}navigate(e,i={skipLocationChange:!1}){return function gG(t){for(let n=0;n{const r=e[o];return null!=r&&(i[o]=r),i},{})}processNavigations(){this.navigations.subscribe(e=>{this.navigated=!0,this.lastSuccessfulId=e.id,this.currentPageId=e.targetPageId,this.events.next(new Ed(e.id,this.serializeUrl(e.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,e.resolve(!0)},e=>{this.console.warn(`Unhandled Navigation Error: ${e}`)})}scheduleNavigation(e,i,o,r,s){var a,l;if(this.disposed)return Promise.resolve(!1);let u,p,g;s?(u=s.resolve,p=s.reject,g=s.promise):g=new Promise((M,V)=>{u=M,p=V});const v=++this.navigationId;let C;return"computed"===this.canceledNavigationResolution?(0===this.currentPageId&&(o=this.location.getState()),C=o&&o.\u0275routerPageId?o.\u0275routerPageId:r.replaceUrl||r.skipLocationChange?null!==(a=this.browserPageId)&&void 0!==a?a:0:(null!==(l=this.browserPageId)&&void 0!==l?l:0)+1):C=0,this.setTransition({id:v,targetPageId:C,source:i,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:e,extras:r,resolve:u,reject:p,promise:g,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),g.catch(M=>Promise.reject(M))}setBrowserUrl(e,i){const o=this.urlSerializer.serialize(e),r=Object.assign(Object.assign({},i.extras.state),this.generateNgRouterState(i.id,i.targetPageId));this.location.isCurrentPathEqualTo(o)||i.extras.replaceUrl?this.location.replaceState(o,"",r):this.location.go(o,"",r)}restoreHistory(e,i=!1){var o,r;if("computed"===this.canceledNavigationResolution){const s=this.currentPageId-e.targetPageId;"popstate"!==e.source&&"eager"!==this.urlUpdateStrategy&&this.currentUrlTree!==(null===(o=this.currentNavigation)||void 0===o?void 0:o.finalUrl)||0===s?this.currentUrlTree===(null===(r=this.currentNavigation)||void 0===r?void 0:r.finalUrl)&&0===s&&(this.resetState(e),this.browserUrlTree=e.currentUrlTree,this.resetUrlToCurrentUrlTree()):this.location.historyGo(s)}else"replace"===this.canceledNavigationResolution&&(i&&this.resetState(e),this.resetUrlToCurrentUrlTree())}resetState(e){this.routerState=e.currentRouterState,this.currentUrlTree=e.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}cancelNavigationTransition(e,i){const o=new aE(e.id,this.serializeUrl(e.extractedUrl),i);this.triggerEvent(o),e.resolve(!1)}generateNgRouterState(e,i){return"computed"===this.canceledNavigationResolution?{navigationId:e,\u0275routerPageId:i}:{navigationId:e}}}return t.\u0275fac=function(e){ea()},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();function eI(t){return"imperative"!==t}let Bs=(()=>{class t{constructor(e,i,o,r,s){this.router=e,this.route=i,this.tabIndexAttribute=o,this.renderer=r,this.el=s,this.commands=null,this.onChanges=new ie,this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(e){if(null!=this.tabIndexAttribute)return;const i=this.renderer,o=this.el.nativeElement;null!==e?i.setAttribute(o,"tabindex",e):i.removeAttribute(o,"tabindex")}ngOnChanges(e){this.onChanges.next(this)}set routerLink(e){null!=e?(this.commands=Array.isArray(e)?e:[e],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(){if(null===this.urlTree)return!0;const e={skipLocationChange:Gl(this.skipLocationChange),replaceUrl:Gl(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,e),!0}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:Gl(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b($l),Di("tabindex"),b(Nr),b(He))},t.\u0275dir=oe({type:t,selectors:[["","routerLink","",5,"a",5,"area"]],hostBindings:function(e,i){1&e&&N("click",function(){return i.onClick()})},inputs:{queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state",relativeTo:"relativeTo",routerLink:"routerLink"},features:[nn]}),t})(),jd=(()=>{class t{constructor(e,i,o){this.router=e,this.route=i,this.locationStrategy=o,this.commands=null,this.href=null,this.onChanges=new ie,this.subscription=e.events.subscribe(r=>{r instanceof Ed&&this.updateTargetUrlAndHref()})}set routerLink(e){this.commands=null!=e?Array.isArray(e)?e:[e]:null}ngOnChanges(e){this.updateTargetUrlAndHref(),this.onChanges.next(this)}ngOnDestroy(){this.subscription.unsubscribe()}onClick(e,i,o,r,s){if(0!==e||i||o||r||s||"string"==typeof this.target&&"_self"!=this.target||null===this.urlTree)return!0;const a={skipLocationChange:Gl(this.skipLocationChange),replaceUrl:Gl(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,a),!1}updateTargetUrlAndHref(){this.href=null!==this.urlTree?this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null}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:Gl(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b($l),b(bl))},t.\u0275dir=oe({type:t,selectors:[["a","routerLink",""],["area","routerLink",""]],hostVars:2,hostBindings:function(e,i){1&e&&N("click",function(r){return i.onClick(r.button,r.ctrlKey,r.shiftKey,r.altKey,r.metaKey)}),2&e&&et("target",i.target)("href",i.href,Gi)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state",relativeTo:"relativeTo",routerLink:"routerLink"},features:[nn]}),t})();function Gl(t){return""===t||!!t}class tI{}class nI{preload(n,e){return We(null)}}let iI=(()=>{class t{constructor(e,i,o,r){this.router=e,this.injector=o,this.preloadingStrategy=r,this.loader=new XE(o,i,l=>e.triggerEvent(new lE(l)),l=>e.triggerEvent(new cE(l)))}setUpPreloading(){this.subscription=this.router.events.pipe(It(e=>e instanceof Ed),xl(()=>this.preload())).subscribe(()=>{})}preload(){const e=this.injector.get(Lr);return this.processRoutes(e,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(e,i){const o=[];for(const r of i)if(r.loadChildren&&!r.canLoad&&r._loadedConfig){const s=r._loadedConfig;o.push(this.processRoutes(s.module,s.routes))}else r.loadChildren&&!r.canLoad?o.push(this.preloadConfig(e,r)):r.children&&o.push(this.processRoutes(e,r.children));return ui(o).pipe(Ql(),je(r=>{}))}preloadConfig(e,i){return this.preloadingStrategy.preload(i,()=>(i._loadedConfig?We(i._loadedConfig):this.loader.load(e.injector,i)).pipe($n(r=>(i._loadedConfig=r,this.processRoutes(r.module,r.routes)))))}}return t.\u0275fac=function(e){return new(e||t)(Q(Jn),Q(dD),Q(pn),Q(tI))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})(),Av=(()=>{class t{constructor(e,i,o={}){this.router=e,this.viewportScroller=i,this.options=o,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},o.scrollPositionRestoration=o.scrollPositionRestoration||"disabled",o.anchorScrolling=o.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(e=>{e instanceof gv?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=e.navigationTrigger,this.restoredId=e.restoredState?e.restoredState.navigationId:0):e instanceof Ed&&(this.lastId=e.id,this.scheduleScrollEvent(e,this.router.parseUrl(e.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(e=>{e instanceof dE&&(e.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(e.position):e.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(e.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(e,i){this.router.triggerEvent(new dE(e,"popstate"===this.lastSource?this.store[this.restoredId]:null,i))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}return t.\u0275fac=function(e){ea()},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();const wa=new _e("ROUTER_CONFIGURATION"),oI=new _e("ROUTER_FORROOT_GUARD"),yG=[zc,{provide:yE,useClass:CE},{provide:Jn,useFactory:function MG(t,n,e,i,o,r,s={},a,l){const u=new Jn(null,t,n,e,i,o,pE(r));return a&&(u.urlHandlingStrategy=a),l&&(u.routeReuseStrategy=l),function xG(t,n){t.errorHandler&&(n.errorHandler=t.errorHandler),t.malformedUriErrorHandler&&(n.malformedUriErrorHandler=t.malformedUriErrorHandler),t.onSameUrlNavigation&&(n.onSameUrlNavigation=t.onSameUrlNavigation),t.paramsInheritanceStrategy&&(n.paramsInheritanceStrategy=t.paramsInheritanceStrategy),t.relativeLinkResolution&&(n.relativeLinkResolution=t.relativeLinkResolution),t.urlUpdateStrategy&&(n.urlUpdateStrategy=t.urlUpdateStrategy),t.canceledNavigationResolution&&(n.canceledNavigationResolution=t.canceledNavigationResolution)}(s,u),s.enableTracing&&u.events.subscribe(p=>{var g,v;null===(g=console.group)||void 0===g||g.call(console,`Router Event: ${p.constructor.name}`),console.log(p.toString()),console.log(p),null===(v=console.groupEnd)||void 0===v||v.call(console)}),u},deps:[yE,Nd,zc,pn,dD,Ov,wa,[class dG{},new qo],[class aG{},new qo]]},Nd,{provide:$l,useFactory:function TG(t){return t.routerState.root},deps:[Jn]},iI,nI,class vG{preload(n,e){return e().pipe(wn(()=>We(null)))}},{provide:wa,useValue:{enableTracing:!1}}];function CG(){return new mD("Router",Jn)}let rI=(()=>{class t{constructor(e,i){}static forRoot(e,i){return{ngModule:t,providers:[yG,sI(e),{provide:oI,useFactory:SG,deps:[[Jn,new qo,new $a]]},{provide:wa,useValue:i||{}},{provide:bl,useFactory:DG,deps:[oa,[new mu(Og),new qo],wa]},{provide:Av,useFactory:wG,deps:[Jn,m5,wa]},{provide:tI,useExisting:i&&i.preloadingStrategy?i.preloadingStrategy:nI},{provide:mD,multi:!0,useFactory:CG},[Pv,{provide:_g,multi:!0,useFactory:kG,deps:[Pv]},{provide:aI,useFactory:EG,deps:[Pv]},{provide:lD,multi:!0,useExisting:aI}]]}}static forChild(e){return{ngModule:t,providers:[sI(e)]}}}return t.\u0275fac=function(e){return new(e||t)(Q(oI,8),Q(Jn,8))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();function wG(t,n,e){return e.scrollOffset&&n.setOffset(e.scrollOffset),new Av(t,n,e)}function DG(t,n,e={}){return e.useHash?new nL(t,n):new FD(t,n)}function SG(t){return"guarded"}function sI(t){return[{provide:WO,multi:!0,useValue:t},{provide:Ov,multi:!0,useValue:t}]}let Pv=(()=>{class t{constructor(e){this.injector=e,this.initNavigation=!1,this.destroyed=!1,this.resultOfPreactivationDone=new ie}appInitializer(){return this.injector.get(J3,Promise.resolve(null)).then(()=>{if(this.destroyed)return Promise.resolve(!0);let i=null;const o=new Promise(a=>i=a),r=this.injector.get(Jn),s=this.injector.get(wa);return"disabled"===s.initialNavigation?(r.setUpLocationChangeListener(),i(!0)):"enabled"===s.initialNavigation||"enabledBlocking"===s.initialNavigation?(r.hooks.afterPreactivation=()=>this.initNavigation?We(null):(this.initNavigation=!0,i(!0),this.resultOfPreactivationDone),r.initialNavigation()):i(!0),o})}bootstrapListener(e){const i=this.injector.get(wa),o=this.injector.get(iI),r=this.injector.get(Av),s=this.injector.get(Jn),a=this.injector.get(zu);e===a.components[0]&&(("enabledNonBlocking"===i.initialNavigation||void 0===i.initialNavigation)&&s.initialNavigation(),o.setUpPreloading(),r.init(),s.resetRootComponentType(a.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}ngOnDestroy(){this.destroyed=!0}}return t.\u0275fac=function(e){return new(e||t)(Q(pn))},t.\u0275prov=Be({token:t,factory:t.\u0275fac}),t})();function kG(t){return t.appInitializer.bind(t)}function EG(t){return t.bootstrapListener.bind(t)}const aI=new _e("Router Initializer");var mi=(()=>{return(t=mi||(mi={})).DirectConnect="directConnect",t.DumpFile="dumpFile",t.SessionFile="sessionFile",t.ResumeSession="resumeSession",mi;var t})(),In=(()=>{return(t=In||(In={})).Type="inputType",t.Config="config",t.SourceDbName="sourceDbName",In;var t})(),xr=(()=>{return(t=xr||(xr={})).MySQL="MySQL",t.Postgres="Postgres",t.SQLServer="SQL Server",t.Oracle="Oracle",xr;var t})(),Qt=(()=>{return(t=Qt||(Qt={})).DbName="databaseName",t.Tables="tables",t.Table="tableName",t.Indexes="indexes",t.Index="indexName",Qt;var t})(),No=(()=>{return(t=No||(No={})).schemaOnly="Schema",t.dataOnly="Data",t.schemaAndData="Schema And Data",No;var t})(),Vs=(()=>{return(t=Vs||(Vs={})).Table="table",t.Index="index",Vs;var t})(),ci=(()=>{return(t=ci||(ci={})).bulkMigration="bulk",t.lowDowntimeMigration="lowdt",ci;var t})(),le=(()=>{return(t=le||(le={})).MigrationMode="migrationMode",t.MigrationType="migrationType",t.IsTargetDetailSet="isTargetDetailSet",t.IsSourceConnectionProfileSet="isSourceConnectionProfileSet",t.IsSourceDetailsSet="isSourceDetailsSet",t.IsTargetConnectionProfileSet="isTargetConnectionProfileSet",t.IsMigrationDetailSet="isMigrationDetailSet",t.IsMigrationInProgress="isMigrationInProgress",t.HasDataMigrationStarted="hasDataMigrationStarted",t.HasSchemaMigrationStarted="hasSchemaMigrationStarted",t.SchemaProgressMessage="schemaProgressMessage",t.DataProgressMessage="dataProgressMessage",t.DataMigrationProgress="dataMigrationProgress",t.SchemaMigrationProgress="schemaMigrationProgress",t.HasForeignKeyUpdateStarted="hasForeignKeyUpdateStarted",t.ForeignKeyProgressMessage="foreignKeyProgressMessage",t.ForeignKeyUpdateProgress="foreignKeyUpdateProgress",t.GeneratingResources="generatingResources",t.NumberOfShards="numberOfShards",t.NumberOfInstances="numberOfInstances",t.isForeignKeySkipped="isForeignKeySkipped",le;var t})(),Wt=(()=>{return(t=Wt||(Wt={})).TargetDB="targetDb",t.Dialect="dialect",t.SourceConnProfile="sourceConnProfile",t.TargetConnProfile="targetConnProfile",t.ReplicationSlot="replicationSlot",t.Publication="publication",Wt;var t})();var js=(()=>{return(t=js||(js={}))[t.SchemaMigrationComplete=1]="SchemaMigrationComplete",t[t.SchemaCreationInProgress=2]="SchemaCreationInProgress",t[t.DataMigrationComplete=3]="DataMigrationComplete",t[t.DataWriteInProgress=4]="DataWriteInProgress",t[t.ForeignKeyUpdateInProgress=5]="ForeignKeyUpdateInProgress",t[t.ForeignKeyUpdateComplete=6]="ForeignKeyUpdateComplete",js;var t})();const lI=[{value:"google_standard_sql",displayName:"Google Standard SQL Dialect"},{value:"postgresql",displayName:"PostgreSQL Dialect"}],di={StorageMaxLength:0x8000000000000000,StringMaxLength:2621440,ByteMaxLength:10485760,DataTypes:["STRING","BYTES","VARCHAR"]},cI_GoogleStandardSQL=["BOOL","BYTES","DATE","FLOAT64","INT64","STRING","TIMESTAMP","NUMERIC","JSON"],cI_PostgreSQL=["BOOL","BYTEA","DATE","FLOAT8","INT8","VARCHAR","TIMESTAMPTZ","NUMERIC","JSONB"];var Lo=(()=>{return(t=Lo||(Lo={})).DirectConnectForm="directConnectForm",t.IsConnectionSuccessful="isConnectionSuccessful",Lo;var t})();function $p(t){return"mysql"==t||"mysqldump"==t?xr.MySQL:"postgres"===t||"pgdump"===t||"pg_dump"===t?xr.Postgres:"oracle"===t?xr.Oracle:"sqlserver"===t?xr.SQLServer:t}function dI(t){var n=document.createElement("a");let e=JSON.stringify(t).replace(/9223372036854776000/g,"9223372036854775807");n.href="data:text/json;charset=utf-8,"+encodeURIComponent(e),n.download=`${t.SessionName}_${t.DatabaseType}_${t.DatabaseName}.json`,n.click()}let Bi=(()=>{class t{constructor(e){this.http=e,this.url=window.location.origin}connectTodb(e,i){const{dbEngine:o,isSharded:r,hostName:s,port:a,dbName:l,userName:u,password:p}=e;return this.http.post(`${this.url}/connect`,{Driver:o,IsSharded:r,Host:s,Port:a,Database:l,User:u,Password:p,Dialect:i},{observe:"response"})}getLastSessionDetails(){return this.http.get(`${this.url}/GetLatestSessionDetails`)}getSchemaConversionFromDirectConnect(){return this.http.get(`${this.url}/convert/infoschema`)}getSchemaConversionFromDump(e){return this.http.post(`${this.url}/convert/dump`,e)}setSourceDBDetailsForDump(e){return this.http.post(`${this.url}/SetSourceDBDetailsForDump`,e)}setSourceDBDetailsForDirectConnect(e){const{dbEngine:i,hostName:o,port:r,dbName:s,userName:a,password:l}=e;return this.http.post(`${this.url}/SetSourceDBDetailsForDirectConnect`,{Driver:i,Host:o,Port:r,Database:s,User:a,Password:l})}setShardsSourceDBDetailsForBulk(e){const{dbConfigs:i,isRestoredSession:o}=e;let r=[];return i.forEach(s=>{r.push({Driver:s.dbEngine,Host:s.hostName,Port:s.port,Database:s.dbName,User:s.userName,Password:s.password,DataShardId:s.shardId})}),this.http.post(`${this.url}/SetShardsSourceDBDetailsForBulk`,{DbConfigs:r,IsRestoredSession:o})}setShardSourceDBDetailsForDataflow(e){return this.http.post(`${this.url}/SetShardsSourceDBDetailsForDataflow`,{MigrationProfile:e})}setDataflowDetailsForShardedMigrations(e){return this.http.post(`${this.url}/SetDataflowDetailsForShardedMigrations`,{DataflowConfig:e})}getSourceProfile(){return this.http.get(`${this.url}/GetSourceProfileConfig`)}getSchemaConversionFromSessionFile(e){return this.http.post(`${this.url}/convert/session`,e)}getDStructuredReport(){return this.http.get(`${this.url}/downloadStructuredReport`)}getDTextReport(){return this.http.get(`${this.url}/downloadTextReport`)}getDSpannerDDL(){return this.http.get(`${this.url}/downloadDDL`)}getIssueDescription(){return this.http.get(`${this.url}/issueDescription`)}getConversionRate(){return this.http.get(`${this.url}/conversion`)}getConnectionProfiles(e){return this.http.get(`${this.url}/GetConnectionProfiles?source=${e}`)}getGeneratedResources(){return this.http.get(`${this.url}/GetGeneratedResources`)}getStaticIps(){return this.http.get(`${this.url}/GetStaticIps`)}createConnectionProfile(e){return this.http.post(`${this.url}/CreateConnectionProfile`,e)}getSummary(){return this.http.get(`${this.url}/summary`)}getDdl(){return this.http.get(`${this.url}/ddl`)}getTypeMap(){return this.http.get(`${this.url}/typemap`)}getSpannerDefaultTypeMap(){return this.http.get(`${this.url}/spannerDefaultTypeMap`)}reviewTableUpdate(e,i){return this.http.post(`${this.url}/typemap/reviewTableSchema?table=${e}`,i)}updateTable(e,i){return this.http.post(`${this.url}/typemap/table?table=${e}`,i)}removeInterleave(e){return this.http.post(`${this.url}/removeParent?tableId=${e}`,{})}restoreTables(e){return this.http.post(`${this.url}/restore/tables`,e)}restoreTable(e){return this.http.post(`${this.url}/restore/table?table=${e}`,{})}dropTable(e){return this.http.post(`${this.url}/drop/table?table=${e}`,{})}dropTables(e){return this.http.post(`${this.url}/drop/tables`,e)}updatePk(e){return this.http.post(`${this.url}/primaryKey`,e)}updateFk(e,i){return this.http.post(`${this.url}/update/fks?table=${e}`,i)}addColumn(e,i){return this.http.post(`${this.url}/AddColumn?table=${e}`,i)}removeFk(e,i){return this.http.post(`${this.url}/drop/fk?table=${e}`,{Id:i})}getTableWithErrors(){return this.http.get(`${this.url}/GetTableWithErrors`)}getSessions(){return this.http.get(`${this.url}/GetSessions`)}getConvForSession(e){return this.http.get(`${this.url}/GetSession/${e}`,{responseType:"blob"})}resumeSession(e){return this.http.post(`${this.url}/ResumeSession/${e}`,{})}saveSession(e){return this.http.post(`${this.url}/SaveRemoteSession`,e)}getSpannerConfig(){return this.http.get(`${this.url}/GetConfig`)}setSpannerConfig(e){return this.http.post(`${this.url}/SetSpannerConfig`,e)}getIsOffline(){return this.http.get(`${this.url}/IsOffline`)}updateIndex(e,i){return this.http.post(`${this.url}/update/indexes?table=${e}`,i)}dropIndex(e,i){return this.http.post(`${this.url}/drop/secondaryindex?table=${e}`,{Id:i})}restoreIndex(e,i){return this.http.post(`${this.url}/restore/secondaryIndex?tableId=${e}&indexId=${i}`,{})}getInterleaveStatus(e){return this.http.get(`${this.url}/setparent?table=${e}&update=false`)}setInterleave(e){return this.http.get(`${this.url}/setparent?table=${e}&update=true`)}getSourceDestinationSummary(){return this.http.get(`${this.url}/GetSourceDestinationSummary`)}migrate(e){return this.http.post(`${this.url}/Migrate`,e)}getProgress(){return this.http.get(`${this.url}/GetProgress`)}uploadFile(e){return this.http.post(`${this.url}/uploadFile`,e)}cleanUpStreamingJobs(){return this.http.post(`${this.url}/CleanUpStreamingJobs`,{})}applyRule(e){return this.http.post(`${this.url}/applyrule`,e)}dropRule(e){return this.http.post(`${this.url}/dropRule?id=${e}`,{})}getStandardTypeToPGSQLTypemap(){return this.http.get(`${this.url}/typemap/GetStandardTypeToPGSQLTypemap`)}getPGSQLToStandardTypeTypemap(){return this.http.get(`${this.url}/typemap/GetPGSQLToStandardTypeTypemap`)}}return t.\u0275fac=function(e){return new(e||t)(Q(jh))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Bo=(()=>{class t{constructor(e){this.snackBar=e}openSnackBar(e,i,o){o||(o=10),this.snackBar.open(e,i,{duration:1e3*o})}openSnackBarWithoutTimeout(e,i){this.snackBar.open(e,i)}}return t.\u0275fac=function(e){return new(e||t)(Q(nU))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Vo=(()=>{class t{constructor(){this.spannerConfigSub=new vt(!1),this.datebaseLoaderSub=new vt({type:"",databaseName:""}),this.viewAssesmentSub=new vt({srcDbType:"",connectionDetail:"",conversionRates:{good:0,ok:0,bad:0}}),this.tabToSpannerSub=new vt(!1),this.cancelDbLoadSub=new vt(!1),this.spannerConfig=this.spannerConfigSub.asObservable(),this.databaseLoader=this.datebaseLoaderSub.asObservable(),this.viewAssesment=this.viewAssesmentSub.asObservable(),this.tabToSpanner=this.tabToSpannerSub.asObservable(),this.cancelDbLoad=this.cancelDbLoadSub.asObservable()}openSpannerConfig(){this.spannerConfigSub.next(!0)}openDatabaseLoader(e,i){this.datebaseLoaderSub.next({type:e,databaseName:i})}closeDatabaseLoader(){this.datebaseLoaderSub.next({type:"",databaseName:""})}setViewAssesmentData(e){this.viewAssesmentSub.next(e)}setTabToSpanner(){this.tabToSpannerSub.next(!0)}cancelDbLoading(){this.cancelDbLoadSub.next(!0)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Rv=(()=>{class t{constructor(){this.reviewTableChangesSub=new vt({Changes:[],DDL:""}),this.tableUpdateDetailSub=new vt({tableName:"",tableId:"",updateDetail:{UpdateCols:{}}}),this.reviewTableChanges=this.reviewTableChangesSub.asObservable(),this.tableUpdateDetail=this.tableUpdateDetailSub.asObservable()}setTableReviewChanges(e){this.reviewTableChangesSub.next(e)}setTableUpdateDetail(e){this.tableUpdateDetailSub.next(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Da=(()=>{class t{constructor(e){this.fetch=e,this.standardTypeToPGSQLTypeMapSub=new vt(new Map),this.pgSQLToStandardTypeTypeMapSub=new vt(new Map),this.standardTypeToPGSQLTypeMap=this.standardTypeToPGSQLTypeMapSub.asObservable(),this.pgSQLToStandardTypeTypeMap=this.pgSQLToStandardTypeTypeMapSub.asObservable()}getStandardTypeToPGSQLTypemap(){return this.fetch.getStandardTypeToPGSQLTypemap().subscribe({next:e=>{this.standardTypeToPGSQLTypeMapSub.next(new Map(Object.entries(e)))}})}getPGSQLToStandardTypeTypemap(){return this.fetch.getPGSQLToStandardTypeTypemap().subscribe({next:e=>{this.pgSQLToStandardTypeTypeMapSub.next(new Map(Object.entries(e)))}})}createTreeNode(e,i,o="",r=""){var s,a,l;let u=Object.keys(e.SpSchema).filter(C=>e.SpSchema[C].Name.toLocaleLowerCase().includes(o.toLocaleLowerCase())),p=Object.keys(e.SrcSchema).filter(C=>-1==u.indexOf(C)&&e.SrcSchema[C].Name.replace(/[^A-Za-z0-9_]/g,"_").includes(o.toLocaleLowerCase())),g=this.getDeletedIndexes(e),v={name:`Tables (${u.length})`,type:Qt.Tables,parent:"",pos:-1,isSpannerNode:!0,id:"",parentId:"",children:u.map(C=>{var M;let V=e.SpSchema[C];return{name:V.Name,status:i[C],type:Qt.Table,parent:""!=V.ParentId?null===(M=e.SpSchema[V.ParentId])||void 0===M?void 0:M.Name:"",pos:-1,isSpannerNode:!0,id:C,parentId:V.ParentId,children:[{name:`Indexes (${V.Indexes?V.Indexes.length:0})`,status:"",type:Qt.Indexes,parent:e.SpSchema[C].Name,pos:-1,isSpannerNode:!0,id:"",parentId:C,children:V.Indexes?V.Indexes.map((K,Y)=>({name:K.Name,type:Qt.Index,parent:e.SpSchema[C].Name,pos:Y,isSpannerNode:!0,id:K.Id,parentId:C})):[]}]}})};return"asc"===r||""===r?null===(s=v.children)||void 0===s||s.sort((C,M)=>C.name>M.name?1:M.name>C.name?-1:0):"desc"===r&&(null===(a=v.children)||void 0===a||a.sort((C,M)=>M.name>C.name?1:C.name>M.name?-1:0)),p.forEach(C=>{var M;null===(M=v.children)||void 0===M||M.push({name:e.SrcSchema[C].Name.replace(/[^A-Za-z0-9_]/g,"_"),status:"DARK",type:Qt.Table,pos:-1,isSpannerNode:!0,children:[],isDeleted:!0,id:C,parent:"",parentId:""})}),null===(l=v.children)||void 0===l||l.forEach((C,M)=>{g[C.id]&&g[C.id].forEach(V=>{var K,Y;null===(K=v.children[M].children[0].children)||void 0===K||K.push({name:V.Name.replace(/[^A-Za-z0-9_]/g,"_"),type:Qt.Index,parent:null===(Y=e.SpSchema[C.name])||void 0===Y?void 0:Y.Name,pos:M,isSpannerNode:!0,isDeleted:!0,id:V.Id,parentId:C.id})})}),[{name:e.DatabaseName,children:[v],type:Qt.DbName,parent:"",pos:-1,isSpannerNode:!0,id:"",parentId:""}]}createTreeNodeForSource(e,i,o="",r=""){var s,a;let l=Object.keys(e.SrcSchema).filter(p=>e.SrcSchema[p].Name.toLocaleLowerCase().includes(o.toLocaleLowerCase())),u={name:`Tables (${l.length})`,type:Qt.Tables,pos:-1,isSpannerNode:!1,id:"",parent:"",parentId:"",children:l.map(p=>{var g;let v=e.SrcSchema[p];return{name:v.Name,status:i[p]?i[p]:"NONE",type:Qt.Table,parent:"",pos:-1,isSpannerNode:!1,id:p,parentId:"",children:[{name:`Indexes (${(null===(g=v.Indexes)||void 0===g?void 0:g.length)||"0"})`,status:"",type:Qt.Indexes,parent:"",pos:-1,isSpannerNode:!1,id:"",parentId:"",children:v.Indexes?v.Indexes.map((C,M)=>({name:C.Name,type:Qt.Index,parent:e.SrcSchema[p].Name,isSpannerNode:!1,pos:M,id:C.Id,parentId:p})):[]}]}})};return"asc"===r||""===r?null===(s=u.children)||void 0===s||s.sort((p,g)=>p.name>g.name?1:g.name>p.name?-1:0):"desc"===r&&(null===(a=u.children)||void 0===a||a.sort((p,g)=>g.name>p.name?1:p.name>g.name?-1:0)),[{name:e.DatabaseName,children:[u],type:Qt.DbName,isSpannerNode:!1,parent:"",pos:-1,id:"",parentId:""}]}getColumnMapping(e,i){let u,o=this.getSpannerTableNameFromId(e,i),r=i.SrcSchema[e].ColIds,s=i.SpSchema[e]?i.SpSchema[e].ColIds:null,a=i.SrcSchema[e].PrimaryKeys,l=s?i.SpSchema[e].PrimaryKeys:null;this.standardTypeToPGSQLTypeMap.subscribe(v=>{u=v});const p=di.StorageMaxLength,g=i.SrcSchema[e].ColIds.map((v,C)=>{var M,V;let K;o&&i.SpSchema[e].PrimaryKeys.forEach(ke=>{ke.ColId==v&&(K=ke.Order)});let Y=o?null===(M=i.SpSchema[e])||void 0===M?void 0:M.ColDefs[v]:null,ee=Y?u.get(Y.T.Name):"";return{spOrder:Y?C+1:"",srcOrder:C+1,spColName:Y?Y.Name:"",spDataType:Y?"postgresql"===i.SpDialect?void 0===ee?Y.T.Name:ee:Y.T.Name:"",srcColName:i.SrcSchema[e].ColDefs[v].Name,srcDataType:i.SrcSchema[e].ColDefs[v].Type.Name,spIsPk:!(!Y||!o)&&-1!==(null===(V=i.SpSchema[e].PrimaryKeys)||void 0===V?void 0:V.map(ke=>ke.ColId).indexOf(v)),srcIsPk:!!a&&-1!==a.map(ke=>ke.ColId).indexOf(v),spIsNotNull:!(!Y||!o)&&Y.NotNull,srcIsNotNull:i.SrcSchema[e].ColDefs[v].NotNull,srcId:v,spId:Y?v:"",spColMaxLength:0!=(null==Y?void 0:Y.T.Len)?(null==Y?void 0:Y.T.Len)!=p?null==Y?void 0:Y.T.Len:"MAX":"",srcColMaxLength:null!=i.SrcSchema[e].ColDefs[v].Type.Mods?i.SrcSchema[e].ColDefs[v].Type.Mods[0]:""}});return s&&s.forEach((v,C)=>{var M;if(r.indexOf(v)<0){let V=i.SpSchema[e].ColDefs[v],K=o?null===(M=i.SpSchema[e])||void 0===M?void 0:M.ColDefs[v]:null,Y=K?u.get(K.T.Name):"";g.push({spOrder:C+1,srcOrder:"",spColName:V.Name,spDataType:K?"postgresql"===i.SpDialect?void 0===Y?K.T.Name:Y:K.T.Name:"",srcColName:"",srcDataType:"",spIsPk:!!l&&-1!==l.map(ee=>ee.ColId).indexOf(v),srcIsPk:!1,spIsNotNull:V.NotNull,srcIsNotNull:!1,srcId:"",spId:v,srcColMaxLength:"",spColMaxLength:null==K?void 0:K.T.Len})}}),g}getPkMapping(e){let i=e.filter(o=>o.spIsPk||o.srcIsPk);return JSON.parse(JSON.stringify(i))}getFkMapping(e,i){var o;let r=null===(o=i.SrcSchema[e])||void 0===o?void 0:o.ForeignKeys;return r?r.map(s=>{let a=this.getSpannerFkFromId(i,e,s.Id),l=a?a.ColIds.map(M=>i.SpSchema[e].ColDefs[M].Name):[],u=a?a.ColIds:[],p=s.ColIds.map(M=>i.SrcSchema[e].ColDefs[M].Name),g=a?a.ReferColumnIds.map(M=>i.SpSchema[s.ReferTableId].ColDefs[M].Name):[],v=a?a.ReferColumnIds:[],C=s.ReferColumnIds.map(M=>i.SrcSchema[s.ReferTableId].ColDefs[M].Name);return{srcFkId:s.Id,spFkId:null==a?void 0:a.Id,spName:a?a.Name:"",srcName:s.Name,spColumns:l,srcColumns:p,spReferTable:a?i.SpSchema[a.ReferTableId].Name:"",srcReferTable:i.SrcSchema[s.ReferTableId].Name,spReferColumns:g,srcReferColumns:C,spColIds:u,spReferColumnIds:v,spReferTableId:a?a.ReferTableId:""}}):[]}getIndexMapping(e,i,o){let r=this.getSourceIndexFromId(i,e,o),s=this.getSpannerIndexFromId(i,e,o),a=r?r.Keys.map(p=>p.ColId):[],l=s?s.Keys.map(p=>p.ColId):[],u=r?r.Keys.map(p=>{let g=this.getSpannerIndexKeyFromColId(i,e,o,p.ColId);return{srcColId:p.ColId,spColId:g?g.ColId:void 0,srcColName:i.SrcSchema[e].ColDefs[p.ColId].Name,srcOrder:p.Order,srcDesc:p.Desc,spColName:g?i.SpSchema[e].ColDefs[g.ColId].Name:"",spOrder:g?g.Order:void 0,spDesc:g?g.Desc:void 0}}):[];return l.forEach(p=>{if(-1==a.indexOf(p)){let g=this.getSpannerIndexKeyFromColId(i,e,o,p);u.push({srcColName:"",srcOrder:"",srcColId:void 0,srcDesc:void 0,spColName:i.SpSchema[e].ColDefs[p].Name,spOrder:g?g.Order:void 0,spDesc:g?g.Desc:void 0,spColId:g?g.ColId:void 0})}}),u}getSpannerFkFromId(e,i,o){var r,s;let a=null;return null===(s=null===(r=e.SpSchema[i])||void 0===r?void 0:r.ForeignKeys)||void 0===s||s.forEach(l=>{l.Id==o&&(a=l)}),a}getSourceIndexFromId(e,i,o){var r,s;let a=null;return null===(s=null===(r=e.SrcSchema[i])||void 0===r?void 0:r.Indexes)||void 0===s||s.forEach(l=>{l.Id==o&&(a=l)}),a}getSpannerIndexFromId(e,i,o){var r,s;let a=null;return null===(s=null===(r=e.SpSchema[i])||void 0===r?void 0:r.Indexes)||void 0===s||s.forEach(l=>{l.Id==o&&(a=l)}),a}getSpannerIndexKeyFromColId(e,i,o,r){var s;let a=null,l=(null===(s=e.SpSchema[i])||void 0===s?void 0:s.Indexes)?e.SpSchema[i].Indexes.filter(u=>u.Id==o):null;if(l&&l.length>0){let u=l[0].Keys.filter(p=>p.ColId==r);a=u.length>0?u[0]:null}return a}getSourceIndexKeyFromColId(e,i,o,r){var s;let a=null,l=(null===(s=e.SrcSchema[i])||void 0===s?void 0:s.Indexes)?e.SrcSchema[i].Indexes.filter(u=>u.Id==o):null;if(l&&l.length>0){let u=l[0].Keys.filter(p=>p.ColId==r);a=u.length>0?u[0]:null}return a}getSpannerColDefFromId(e,i,o){let r=null;return Object.keys(o.SpSchema[e].ColDefs).forEach(s=>{o.SpSchema[e].ColDefs[s].Id==i&&(r=o.SpSchema[e].ColDefs[s])}),r}getSourceTableNameFromId(e,i){let o="";return Object.keys(i.SrcSchema).forEach(r=>{i.SrcSchema[r].Id===e&&(o=i.SrcSchema[r].Name)}),o}getSpannerTableNameFromId(e,i){let o=null;return Object.keys(i.SpSchema).forEach(r=>{i.SpSchema[r].Id===e&&(o=i.SpSchema[r].Name)}),o}getTableIdFromSpName(e,i){let o="";return Object.keys(i.SpSchema).forEach(r=>{i.SpSchema[r].Name===e&&(o=i.SpSchema[r].Id)}),o}getColIdFromSpannerColName(e,i,o){let r="";return Object.keys(o.SpSchema[i].ColDefs).forEach(s=>{o.SpSchema[i].ColDefs[s].Name===e&&(r=o.SpSchema[i].ColDefs[s].Id)}),r}getDeletedIndexes(e){let i={};return Object.keys(e.SpSchema).forEach(o=>{var r;let s=e.SpSchema[o],a=e.SrcSchema[o],l=s&&s.Indexes?s.Indexes.map(p=>p.Id):[],u=a&&a.Indexes?null===(r=a.Indexes)||void 0===r?void 0:r.filter(p=>!l.includes(p.Id)):null;s&&a&&u&&u.length>0&&(i[o]=u)}),i}}return t.\u0275fac=function(e){return new(e||t)(Q(Bi))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Ln=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.snackbar=i,this.clickEvent=o,this.tableUpdatePubSub=r,this.conversion=s,this.convSubject=new vt({}),this.conversionRateSub=new vt({}),this.typeMapSub=new vt({}),this.defaultTypeMapSub=new vt({}),this.summarySub=new vt(new Map),this.ddlSub=new vt({}),this.tableInterleaveStatusSub=new vt({}),this.sessionsSub=new vt({}),this.configSub=new vt({}),this.currentSessionSub=new vt({}),this.isOfflineSub=new vt(!1),this.ruleMapSub=new vt([]),this.rule=this.ruleMapSub.asObservable(),this.conv=this.convSubject.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.conversionRate=this.conversionRateSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.typeMap=this.typeMapSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.defaultTypeMap=this.defaultTypeMapSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.summary=this.summarySub.asObservable(),this.ddl=this.ddlSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.tableInterleaveStatus=this.tableInterleaveStatusSub.asObservable(),this.sessions=this.sessionsSub.asObservable(),this.config=this.configSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.isOffline=this.isOfflineSub.asObservable(),this.currentSession=this.currentSessionSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.getLastSessionDetails(),this.getConfig(),this.updateIsOffline()}resetStore(){this.convSubject.next({}),this.conversionRateSub.next({}),this.typeMapSub.next({}),this.defaultTypeMapSub.next({}),this.summarySub.next(new Map),this.ddlSub.next({}),this.tableInterleaveStatusSub.next({})}getDdl(){this.fetch.getDdl().subscribe(e=>{this.ddlSub.next(e)})}getSchemaConversionFromDb(){this.fetch.getSchemaConversionFromDirectConnect().subscribe({next:e=>{this.convSubject.next(e),this.ruleMapSub.next(null==e?void 0:e.Rules)},error:e=>{this.clickEvent.closeDatabaseLoader(),this.snackbar.openSnackBar(e.error,"Close")}})}getAllSessions(){this.fetch.getSessions().subscribe({next:e=>{this.sessionsSub.next(e)},error:e=>{this.snackbar.openSnackBar("Unable to fetch sessions.","Close")}})}getLastSessionDetails(){this.fetch.getLastSessionDetails().subscribe({next:e=>{this.convSubject.next(e),this.ruleMapSub.next(null==e?void 0:e.Rules)},error:e=>{this.snackbar.openSnackBar(e.error,"Close")}})}getSchemaConversionFromDump(e){return this.fetch.getSchemaConversionFromDump(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules)},error:i=>{this.clickEvent.closeDatabaseLoader(),this.snackbar.openSnackBar(i.error,"Close")}})}getSchemaConversionFromSession(e){return this.fetch.getSchemaConversionFromSessionFile(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules)},error:i=>{this.snackbar.openSnackBar(i.error,"Close"),this.clickEvent.closeDatabaseLoader()}})}getSchemaConversionFromResumeSession(e){this.fetch.resumeSession(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules)},error:i=>{this.snackbar.openSnackBar(i.error,"Close")}})}getConversionRate(){this.fetch.getConversionRate().subscribe(e=>{this.conversionRateSub.next(e)})}getRateTypemapAndSummary(){return Y_({rates:this.fetch.getConversionRate(),typeMap:this.fetch.getTypeMap(),defaultTypeMap:this.fetch.getSpannerDefaultTypeMap(),summary:this.fetch.getSummary(),ddl:this.fetch.getDdl()}).pipe(wn(e=>We(e))).subscribe(({rates:e,typeMap:i,defaultTypeMap:o,summary:r,ddl:s})=>{this.conversionRateSub.next(e),this.typeMapSub.next(i),this.defaultTypeMapSub.next(o),this.summarySub.next(new Map(Object.entries(r))),this.ddlSub.next(s)})}getSummary(){return this.fetch.getSummary().subscribe({next:e=>{this.summarySub.next(new Map(Object.entries(e)))}})}reviewTableUpdate(e,i){return this.fetch.reviewTableUpdate(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>{if(o.error)return o.error;{let r;return this.conversion.standardTypeToPGSQLTypeMap.subscribe(s=>{r=s}),this.conv.subscribe(s=>{o.Changes.forEach(a=>{a.InterleaveColumnChanges.forEach(l=>{if("postgresql"===s.SpDialect){let u=r.get(l.Type),p=r.get(l.UpdateType);l.Type=void 0===u?l.Type:u,l.UpdateType=void 0===p?l.UpdateType:p}di.DataTypes.indexOf(l.Type.toString())>-1&&(l.Type+=this.updateColumnSize(l.Size)),di.DataTypes.indexOf(l.UpdateType.toString())>-1&&(l.UpdateType+=this.updateColumnSize(l.UpdateSize))})})}),this.tableUpdatePubSub.setTableReviewChanges(o),""}}))}updateColumnSize(e){return e===di.StorageMaxLength?"(MAX)":"("+e+")"}updateTable(e,i){return this.fetch.updateTable(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}removeInterleave(e){return this.fetch.removeInterleave(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>(this.getDdl(),i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),""))))}restoreTables(e){return this.fetch.restoreTables(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Selected tables restored successfully","Close",5),"")))}restoreTable(e){return this.fetch.restoreTable(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Table restored successfully","Close",5),"")))}dropTable(e){return this.fetch.dropTable(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Table skipped successfully","Close",5),"")))}dropTables(e){return this.fetch.dropTables(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Selected tables skipped successfully","Close",5),"")))}updatePk(e){return this.fetch.updatePk(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>i.error?i.error:(this.convSubject.next(i),this.getDdl(),"")))}updateFkNames(e,i){return this.fetch.updateFk(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}dropFk(e,i){return this.fetch.removeFk(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}getConfig(){this.fetch.getSpannerConfig().subscribe(e=>{this.configSub.next(e)})}updateConfig(e){this.configSub.next(e)}updateIsOffline(){this.fetch.getIsOffline().subscribe(e=>{this.isOfflineSub.next(e)})}addColumn(e,i){this.fetch.addColumn(e,i).subscribe({next:o=>{this.convSubject.next(o),this.getDdl(),this.snackbar.openSnackBar("Added new column.","Close",5)},error:o=>{this.snackbar.openSnackBar(o.error,"Close")}})}applyRule(e){this.fetch.applyRule(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules),this.getDdl(),this.snackbar.openSnackBar("Added new rule.","Close",5)},error:i=>{this.snackbar.openSnackBar(i.error,"Close")}})}updateIndex(e,i){return this.fetch.updateIndex(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}dropIndex(e,i){return this.fetch.dropIndex(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>o.error?(this.snackbar.openSnackBar(o.error,"Close"),o.error):(this.convSubject.next(o),this.getDdl(),this.ruleMapSub.next(null==o?void 0:o.Rules),this.snackbar.openSnackBar("Index skipped successfully","Close",5),"")))}restoreIndex(e,i){return this.fetch.restoreIndex(e,i).pipe(wn(o=>We({error:o.error})),Zt(console.log),je(o=>o.error?(this.snackbar.openSnackBar(o.error,"Close"),o.error):(this.convSubject.next(o),this.snackbar.openSnackBar("Index restored successfully","Close",5),"")))}getInterleaveConversionForATable(e){this.fetch.getInterleaveStatus(e).subscribe(i=>{this.tableInterleaveStatusSub.next(i)})}setInterleave(e){this.fetch.setInterleave(e).subscribe(i=>{this.convSubject.next(i.sessionState),this.getDdl(),i.sessionState&&this.convSubject.next(i.sessionState)})}uploadFile(e){return this.fetch.uploadFile(e).pipe(wn(i=>We({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar("File upload failed","Close"),i.error):(this.snackbar.openSnackBar("File uploaded successfully","Close",5),"")))}dropRule(e){return this.fetch.dropRule(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules),this.getDdl(),this.snackbar.openSnackBar("Rule deleted successfully","Close",5)},error:i=>{this.snackbar.openSnackBar(i.error,"Close")}})}}return t.\u0275fac=function(e){return new(e||t)(Q(Bi),Q(Bo),Q(Vo),Q(Rv),Q(Da))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Gp=(()=>{class t{constructor(){this.isLoadingSub=new vt(!1),this.isLoading=this.isLoadingSub.asObservable()}startLoader(){this.isLoadingSub.next(!0)}stopLoader(){this.isLoadingSub.next(!1)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function OG(t,n){if(1&t&&(d(0,"mat-option",18),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function AG(t,n){if(1&t&&(d(0,"mat-option",18),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function PG(t,n){1&t&&(d(0,"b"),h(1,"Note: For sharded migrations, please enter below the details of the shard you want Spanner migration tool to read the schema from. The complete connection configuration of all the shards will be taken in later, during data migration."),c())}function RG(t,n){if(1&t&&(d(0,"div",19)(1,"div",20)(2,"mat-form-field",21)(3,"mat-label"),h(4,"Sharded Migration"),c(),d(5,"mat-select",22),_(6,AG,2,2,"mat-option",6),c()(),d(7,"mat-icon",23),h(8,"info"),c(),d(9,"mat-chip",24),h(10," Preview "),c()(),E(11,"br"),_(12,PG,2,0,"b",25),c()),2&t){const e=D();f(6),m("ngForOf",e.shardedResponseList),f(3),m("removable",!1),f(3),m("ngIf",e.connectForm.value.isSharded)}}function FG(t,n){if(1&t&&(d(0,"mat-option",18),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function NG(t,n){1&t&&(d(0,"mat-icon",26),h(1," check_circle "),c())}let LG=(()=>{class t{constructor(e,i,o,r,s,a){this.router=e,this.fetch=i,this.data=o,this.loader=r,this.snackbarService=s,this.clickEvent=a,this.connectForm=new an({dbEngine:new X("",[de.required]),isSharded:new X(!1),hostName:new X("",[de.required]),port:new X("",[de.required,de.pattern("^[0-9]+$")]),userName:new X("",[de.required]),password:new X(""),dbName:new X("",[de.required]),dialect:new X("",[de.required])}),this.dbEngineList=[{value:"mysql",displayName:"MySQL"},{value:"sqlserver",displayName:"SQL Server"},{value:"oracle",displayName:"Oracle"},{value:"postgres",displayName:"PostgreSQL"}],this.isTestConnectionSuccessful=!1,this.connectRequest=null,this.getSchemaRequest=null,this.shardedResponseList=[{value:!1,displayName:"No"},{value:!0,displayName:"Yes"}],this.dialect=lI}ngOnInit(){null!=localStorage.getItem(Lo.DirectConnectForm)&&this.connectForm.setValue(JSON.parse(localStorage.getItem(Lo.DirectConnectForm))),null!=localStorage.getItem(Lo.IsConnectionSuccessful)&&(this.isTestConnectionSuccessful="true"===localStorage.getItem(Lo.IsConnectionSuccessful)),this.clickEvent.cancelDbLoad.subscribe({next:e=>{e&&this.connectRequest&&(this.connectRequest.unsubscribe(),this.getSchemaRequest&&this.getSchemaRequest.unsubscribe())}})}testConn(){this.clickEvent.openDatabaseLoader("test-connection",this.connectForm.value.dbName);const{dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l,dialect:u}=this.connectForm.value;localStorage.setItem(Lo.DirectConnectForm,JSON.stringify(this.connectForm.value)),this.connectRequest=this.fetch.connectTodb({dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l},u).subscribe({next:()=>{this.snackbarService.openSnackBar("SUCCESS! Spanner migration tool was able to successfully ping source database","Close",3),localStorage.setItem(Lo.IsConnectionSuccessful,"true"),this.clickEvent.closeDatabaseLoader()},error:g=>{this.isTestConnectionSuccessful=!1,this.snackbarService.openSnackBar(g.error,"Close"),localStorage.setItem(Lo.IsConnectionSuccessful,"false"),this.clickEvent.closeDatabaseLoader()}})}connectToDb(){this.clickEvent.openDatabaseLoader("direct",this.connectForm.value.dbName),window.scroll(0,0),this.data.resetStore(),localStorage.clear();const{dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l,dialect:u}=this.connectForm.value;localStorage.setItem(Lo.DirectConnectForm,JSON.stringify(this.connectForm.value)),this.connectRequest=this.fetch.connectTodb({dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l},u).subscribe({next:()=>{this.getSchemaRequest=this.data.getSchemaConversionFromDb(),this.data.conv.subscribe(g=>{localStorage.setItem(In.Config,JSON.stringify({dbEngine:e,hostName:o,port:r,userName:s,password:a,dbName:l})),localStorage.setItem(In.Type,mi.DirectConnect),localStorage.setItem(In.SourceDbName,$p(e)),this.clickEvent.closeDatabaseLoader(),localStorage.removeItem(Lo.DirectConnectForm),this.router.navigate(["/workspace"])})},error:g=>{this.snackbarService.openSnackBar(g.error,"Close"),this.clickEvent.closeDatabaseLoader()}})}refreshDbSpecifcConnectionOptions(){this.connectForm.value.isSharded=!1}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b(Bi),b(Ln),b(Gp),b(Bo),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-direct-connection"]],decls:54,vars:8,consts:[[1,"connect-load-database-container"],[1,"form-container"],[3,"formGroup"],[1,"primary-header"],["appearance","outline",1,"full-width"],["formControlName","dbEngine",3,"selectionChange"],[3,"value",4,"ngFor","ngForOf"],["class","shardingConfig",4,"ngIf"],["matInput","","placeholder","127.0.0.1","name","hostName","type","text","formControlName","hostName"],["matInput","","placeholder","3306","name","port","type","text","formControlName","port"],["matInput","","placeholder","root","name","userName","type","text","formControlName","userName"],["matInput","","name","password","type","password","formControlName","password"],["matInput","","name","dbname","type","text","formControlName","dbName"],["matSelect","","name","dialect","formControlName","dialect","appearance","outline"],["class","success","matTooltip","Source Connection Successful","matTooltipPosition","above",4,"ngIf"],["mat-raised-button","","type","submit","color","accent",3,"disabled","click"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["mat-raised-button","",3,"routerLink"],[3,"value"],[1,"shardingConfig"],[1,"flex-container"],["appearance","outline",1,"flex-item"],["formControlName","isSharded"],["matTooltip","Configure multiple source database instances (shards) and consolidate them by migrating to a single Cloud Spanner instance to take advantage of Spanner's horizontal scalability and consistency semantics.",1,"flex-item","configure"],[1,"flex-item","rounded-chip",3,"removable"],[4,"ngIf"],["matTooltip","Source Connection Successful","matTooltipPosition","above",1,"success"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"form",2)(3,"h3",3),h(4,"Connect to Source Database"),c(),d(5,"mat-form-field",4)(6,"mat-label"),h(7,"Database Engine"),c(),d(8,"mat-select",5),N("selectionChange",function(){return i.refreshDbSpecifcConnectionOptions()}),_(9,OG,2,2,"mat-option",6),c()(),_(10,RG,13,3,"div",7),E(11,"br"),d(12,"h3",3),h(13,"Connection Detail"),c(),d(14,"mat-form-field",4)(15,"mat-label"),h(16,"Hostname"),c(),E(17,"input",8),c(),d(18,"mat-form-field",4)(19,"mat-label"),h(20,"Port"),c(),E(21,"input",9),d(22,"mat-error"),h(23," Only numbers are allowed. "),c()(),E(24,"br"),d(25,"mat-form-field",4)(26,"mat-label"),h(27,"User name"),c(),E(28,"input",10),c(),d(29,"mat-form-field",4)(30,"mat-label"),h(31,"Password"),c(),E(32,"input",11),c(),E(33,"br"),d(34,"mat-form-field",4)(35,"mat-label"),h(36,"Database Name"),c(),E(37,"input",12),c(),E(38,"br"),d(39,"h3",3),h(40,"Spanner Dialect"),c(),d(41,"mat-form-field",4)(42,"mat-label"),h(43,"Select a spanner dialect"),c(),d(44,"mat-select",13),_(45,FG,2,2,"mat-option",6),c()(),E(46,"br"),_(47,NG,2,0,"mat-icon",14),d(48,"button",15),N("click",function(){return i.testConn()}),h(49," Test Connection "),c(),d(50,"button",16),N("click",function(){return i.connectToDb()}),h(51," Connect "),c(),d(52,"button",17),h(53,"Cancel"),c()()()()),2&e&&(f(2),m("formGroup",i.connectForm),f(7),m("ngForOf",i.dbEngineList),f(1),m("ngIf","mysql"===i.connectForm.value.dbEngine),f(35),m("ngForOf",i.dialect),f(2),m("ngIf",i.isTestConnectionSuccessful),f(1),m("disabled",!i.connectForm.valid),f(2),m("disabled",!i.connectForm.valid||!i.isTestConnectionSuccessful),f(2),m("routerLink","/"))},directives:[xi,Hn,Sn,En,Mn,Yi,bn,Xn,ri,_i,Et,_n,ki,Td,li,Dn,Ob,Ht,Bs],styles:[".connect-load-database-container[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin-bottom:0}.configure[_ngcontent-%COMP%]{color:#1967d2}.flex-container[_ngcontent-%COMP%]{display:flex;align-items:center}.flex-item[_ngcontent-%COMP%]{margin-right:8px}.rounded-chip[_ngcontent-%COMP%]{background-color:#fff;color:#0f33ab;border-radius:16px;padding:6px 12px;border:1px solid black;cursor:not-allowed;pointer-events:none}"]}),t})();function BG(t,n){if(1&t){const e=pe();d(0,"button",7),N("click",function(){return se(e),D().onConfirm()}),h(1," Continue "),c()}}let jo=(()=>{class t{constructor(e,i){this.dialogRef=e,this.data=i,void 0===i.title&&(i.title="Update can not be saved")}ngOnInit(){}onConfirm(){this.dialogRef.close(!0)}onDismiss(){this.dialogRef.close(!1)}getIconFromMessageType(){switch(this.data.type){case"warning":return"warning";case"error":return"error";case"success":return"check_circle";default:return"message"}}}return t.\u0275fac=function(e){return new(e||t)(b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-infodialog"]],decls:10,vars:3,consts:[[1,"dialog-container"],["mat-dialog-title",""],["mat-dialog-content",""],[1,"dialog-message"],["mat-dialog-actions","",1,"dialog-action"],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","color","primary",3,"click",4,"ngIf"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h1",1),h(2),c(),d(3,"div",2)(4,"p",3),h(5),c()(),d(6,"div",4)(7,"button",5),h(8,"CANCEL"),c(),_(9,BG,2,0,"button",6),c()()),2&e&&(f(2),Ee(i.data.title),f(3),Se(" ",i.data.message," "),f(4),m("ngIf","error"!=i.data.type))},directives:[fU,wr,Dr,Ht,Ji,Et],styles:[""]}),t})();function VG(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function jG(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function HG(t,n){if(1&t){const e=pe();d(0,"mat-form-field",24)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.sessionName=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"sessionName")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.sessionName)}}function UG(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Session Name"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("sessionName")}),_(5,VG,2,0,"mat-icon",22),_(6,jG,2,0,"mat-icon",22),c()(),_(7,HG,4,1,"mat-form-field",23),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.sessionName),f(1),m("ngIf",!e.displayFilter.sessionName),f(1),m("ngIf",e.displayFilter.sessionName)}}function zG(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.SessionName)}}function $G(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function GG(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function WG(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.editorName=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"editorName")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.editorName)}}function qG(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Editor"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("editorName")}),_(5,$G,2,0,"mat-icon",22),_(6,GG,2,0,"mat-icon",22),c()(),_(7,WG,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.editorName),f(1),m("ngIf",!e.displayFilter.editorName),f(1),m("ngIf",e.displayFilter.editorName)}}function KG(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.EditorName)}}function ZG(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function QG(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function YG(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.databaseType=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"databaseType")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.databaseType)}}function XG(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Database Type"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("databaseType")}),_(5,ZG,2,0,"mat-icon",22),_(6,QG,2,0,"mat-icon",22),c()(),_(7,YG,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.databaseType),f(1),m("ngIf",!e.displayFilter.databaseType),f(1),m("ngIf",e.displayFilter.databaseType)}}function JG(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.DatabaseType)}}function eW(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function tW(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function nW(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.databaseName=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"databaseName")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.databaseName)}}function iW(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Database Name"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("databaseName")}),_(5,eW,2,0,"mat-icon",22),_(6,tW,2,0,"mat-icon",22),c()(),_(7,nW,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.databaseName),f(1),m("ngIf",!e.displayFilter.databaseName),f(1),m("ngIf",e.displayFilter.databaseName)}}function oW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.DatabaseName)}}function rW(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function sW(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function aW(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.dialect=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"dialect")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.dialect)}}function lW(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Spanner Dialect"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("dialect")}),_(5,rW,2,0,"mat-icon",22),_(6,sW,2,0,"mat-icon",22),c()(),_(7,aW,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.dialect),f(1),m("ngIf",!e.displayFilter.dialect),f(1),m("ngIf",e.displayFilter.dialect)}}function cW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.Dialect)}}function dW(t,n){1&t&&(d(0,"th",19),h(1,"Notes"),c())}function uW(t,n){if(1&t){const e=pe();d(0,"button",34),N("click",function(){se(e);const o=D(2).index,r=D(2);return r.notesToggle[o]=!r.notesToggle[o]}),h(1," ... "),c()}}function hW(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e)}}function pW(t,n){if(1&t&&(d(0,"div"),_(1,hW,2,1,"p",35),c()),2&t){const e=D(2).$implicit;f(1),m("ngForOf",e.Notes)}}function fW(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D(2).$implicit;f(1),Ee(null==e.Notes||null==e.Notes[0]?null:e.Notes[0].substring(0,20))}}function mW(t,n){if(1&t&&(d(0,"div",30),_(1,uW,2,0,"button",31),_(2,pW,2,1,"div",32),_(3,fW,2,1,"ng-template",null,33,Bc),c()),2&t){const e=$t(4),i=D(),o=i.$implicit,r=i.index,s=D(2);f(1),m("ngIf",(null==o.Notes?null:o.Notes.length)>1||(null==o.Notes[0]?null:o.Notes[0].length)>20),f(1),m("ngIf",s.notesToggle[r])("ngIfElse",e)}}function gW(t,n){if(1&t&&(d(0,"td",26),_(1,mW,5,3,"div",29),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.Notes)}}function _W(t,n){1&t&&(d(0,"th",19),h(1,"Created At"),c())}function bW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit,i=D(2);f(1),Ee(i.convertDateTime(e.CreateTimestamp))}}function vW(t,n){1&t&&E(0,"th",19)}function yW(t,n){if(1&t){const e=pe();d(0,"td",26)(1,"button",36),N("click",function(){const r=se(e).$implicit;return D(2).resumeFromSessionFile(r.VersionId)}),h(2," Resume "),c(),d(3,"button",36),N("click",function(){const r=se(e).$implicit;return D(2).downloadSessionFile(r.VersionId,r.SessionName,r.DatabaseType,r.DatabaseName)}),h(4," Download "),c()()}}function CW(t,n){1&t&&E(0,"tr",37)}function wW(t,n){1&t&&E(0,"tr",38)}function DW(t,n){if(1&t&&(d(0,"div",5)(1,"table",6),be(2,7),_(3,UG,8,3,"th",8),_(4,zG,2,1,"td",9),ve(),be(5,10),_(6,qG,8,3,"th",8),_(7,KG,2,1,"td",9),ve(),be(8,11),_(9,XG,8,3,"th",8),_(10,JG,2,1,"td",9),ve(),be(11,12),_(12,iW,8,3,"th",8),_(13,oW,2,1,"td",9),ve(),be(14,13),_(15,lW,8,3,"th",8),_(16,cW,2,1,"td",9),ve(),be(17,14),_(18,dW,2,0,"th",8),_(19,gW,2,1,"td",9),ve(),be(20,15),_(21,_W,2,0,"th",8),_(22,bW,2,1,"td",9),ve(),be(23,16),_(24,vW,1,0,"th",8),_(25,yW,5,0,"td",9),ve(),_(26,CW,1,0,"tr",17),_(27,wW,1,0,"tr",18),c()()),2&t){const e=D();f(1),m("dataSource",e.filteredDataSource),f(25),m("matHeaderRowDef",e.displayedColumns)("matHeaderRowDefSticky",!0),f(1),m("matRowDefColumns",e.displayedColumns)}}function SW(t,n){if(1&t){const e=pe();d(0,"div",39),hn(),d(1,"svg",40),E(2,"rect",41)(3,"path",42),c(),Qs(),d(4,"button",43),N("click",function(){return se(e),D().openSpannerConfigDialog()}),h(5," Configure Spanner Details "),c(),d(6,"span"),h(7,"Do not have any previous session to display. "),d(8,"u"),h(9," OR "),c(),E(10,"br"),h(11," Invalid Spanner configuration. "),c()()}}let MW=(()=>{class t{constructor(e,i,o,r){this.fetch=e,this.data=i,this.router=o,this.clickEvent=r,this.displayedColumns=["SessionName","EditorName","DatabaseType","DatabaseName","Dialect","Notes","CreateTimestamp","Action"],this.notesToggle=[],this.dataSource=[],this.filteredDataSource=[],this.filterColumnsValue={sessionName:"",editorName:"",databaseType:"",databaseName:"",dialect:""},this.displayFilter={sessionName:!1,editorName:!1,databaseType:!1,databaseName:!1,dialect:!1}}ngOnInit(){this.data.getAllSessions(),this.data.sessions.subscribe({next:e=>{null!=e?(this.filteredDataSource=e,this.dataSource=e):(this.filteredDataSource=[],this.dataSource=[])}})}toggleFilterDisplay(e){this.displayFilter[e]=!this.displayFilter[e]}updateFilterValue(e,i){e.stopPropagation(),this.filterColumnsValue[i]=e.target.value,this.applyFilter()}applyFilter(){this.filteredDataSource=this.dataSource.filter(e=>!!e.SessionName.toLowerCase().includes(this.filterColumnsValue.sessionName.toLowerCase())).filter(e=>!!e.EditorName.toLowerCase().includes(this.filterColumnsValue.editorName.toLowerCase())).filter(e=>!!e.DatabaseType.toLowerCase().includes(this.filterColumnsValue.databaseType.toLowerCase())).filter(e=>!!e.DatabaseName.toLowerCase().includes(this.filterColumnsValue.databaseName.toLowerCase())).filter(e=>!!e.Dialect.toLowerCase().includes(this.filterColumnsValue.dialect.toLowerCase()))}downloadSessionFile(e,i,o,r){this.fetch.getConvForSession(e).subscribe(s=>{var a=document.createElement("a");a.href=URL.createObjectURL(s),a.download=`${i}_${o}_${r}.json`,a.click()})}resumeFromSessionFile(e){this.data.resetStore(),this.data.getSchemaConversionFromResumeSession(e),this.data.conv.subscribe(i=>{localStorage.setItem(In.Config,e),localStorage.setItem(In.Type,mi.ResumeSession),this.router.navigate(["/workspace"])})}openSpannerConfigDialog(){this.clickEvent.openSpannerConfig()}convertDateTime(e){return(e=(e=new Date(e).toString()).substring(e.indexOf(" ")+1)).substring(0,e.indexOf("("))}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Ln),b(Jn),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-session-listing"]],decls:8,vars:2,consts:[[1,"sessions-wrapper"],[1,"primary-header"],[1,"summary"],["class","session-container mat-elevation-z3",4,"ngIf"],["class","mat-elevation-z3 warning-container",4,"ngIf"],[1,"session-container","mat-elevation-z3"],["mat-table","",3,"dataSource"],["matColumnDef","SessionName"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","EditorName"],["matColumnDef","DatabaseType"],["matColumnDef","DatabaseName"],["matColumnDef","Dialect"],["matColumnDef","Notes"],["matColumnDef","CreateTimestamp"],["matColumnDef","Action"],["mat-header-row","",4,"matHeaderRowDef","matHeaderRowDefSticky"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],[1,"table-header-container"],["mat-icon-button","",3,"click"],[4,"ngIf"],["appearance","standard","class","full-width",4,"ngIf"],["appearance","standard",1,"full-width"],["matInput","","autocomplete","off",3,"ngModel","ngModelChange","keyup"],["mat-cell",""],["appearance","standard",4,"ngIf"],["appearance","standard"],["class","notes-wrapper",4,"ngIf"],[1,"notes-wrapper"],["class","notes-toggle-button",3,"click",4,"ngIf"],[4,"ngIf","ngIfElse"],["short",""],[1,"notes-toggle-button",3,"click"],[4,"ngFor","ngForOf"],["mat-button","","color","primary",3,"click"],["mat-header-row",""],["mat-row",""],[1,"mat-elevation-z3","warning-container"],["width","49","height","48","viewBox","0 0 49 48","fill","none","xmlns","http://www.w3.org/2000/svg"],["x","0.907227","width","48","height","48","rx","4","fill","#E6ECFA"],["fill-rule","evenodd","clip-rule","evenodd","d","M17.9072 15C16.8027 15 15.9072 15.8954 15.9072 17V31C15.9072 32.1046 16.8027 33 17.9072 33H31.9072C33.0118 33 33.9072 32.1046 33.9072 31V17C33.9072 15.8954 33.0118 15 31.9072 15H17.9072ZM20.9072 18H18.9072V20H20.9072V18ZM21.9072 18H23.9072V20H21.9072V18ZM20.9072 23H18.9072V25H20.9072V23ZM21.9072 23H23.9072V25H21.9072V23ZM20.9072 28H18.9072V30H20.9072V28ZM21.9072 28H23.9072V30H21.9072V28ZM30.9072 18H24.9072V20H30.9072V18ZM24.9072 23H30.9072V25H24.9072V23ZM30.9072 28H24.9072V30H30.9072V28Z","fill","#3367D6"],["mat-button","","color","primary",1,"spanner-config-button",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h3",1),h(2,"Session history"),c(),d(3,"div",2),h(4," Choose a session to resume an existing migration session, or download the session file. "),c(),E(5,"br"),_(6,DW,28,4,"div",3),_(7,SW,12,0,"div",4),c()),2&e&&(f(6),m("ngIf",i.dataSource.length>0),f(1),m("ngIf",0===i.dataSource.length))},directives:[Et,As,Xr,Yr,Jr,Ht,_n,En,Mn,li,Dn,bn,El,Qr,es,ri,Ps,Fs,Rs,Ns],styles:[".session-container[_ngcontent-%COMP%]{max-height:500px;overflow:auto}.session-container[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:13px}table[_ngcontent-%COMP%]{width:100%}table[_ngcontent-%COMP%] .table-header-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.sessions-wrapper[_ngcontent-%COMP%]{margin-top:20px}.sessions-wrapper[_ngcontent-%COMP%] .warning-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:center;height:57vh;text-align:center}.sessions-wrapper[_ngcontent-%COMP%] .warning-container[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{margin-bottom:10px}.sessions-wrapper[_ngcontent-%COMP%] .warning-container[_ngcontent-%COMP%] .spanner-config-button[_ngcontent-%COMP%]{text-decoration:underline}.mat-column-Notes[_ngcontent-%COMP%]{max-width:200px;padding-right:10px}.notes-toggle-button[_ngcontent-%COMP%]{float:right;margin-right:32px;background-color:#f5f5f5;border:none;border-radius:2px;padding:0 5px 5px}.notes-toggle-button[_ngcontent-%COMP%]:hover{background-color:#ebe7e7;cursor:pointer}.notes-wrapper[_ngcontent-%COMP%]{margin-top:10px}.mat-column-SessionName[_ngcontent-%COMP%], .mat-column-EditorName[_ngcontent-%COMP%], .mat-column-DatabaseType[_ngcontent-%COMP%], .mat-column-DatabaseName[_ngcontent-%COMP%], .mat-column-Dialect[_ngcontent-%COMP%]{width:13vw;min-width:150px}.mat-column-Action[_ngcontent-%COMP%], .mat-column-Notes[_ngcontent-%COMP%], .mat-column-CreateTimestamp[_ngcontent-%COMP%]{width:15vw;min-width:150px}.mat-form-field[_ngcontent-%COMP%]{width:80%}"]}),t})(),xW=(()=>{class t{constructor(e,i){this.dialog=e,this.router=i}ngOnInit(){null!=localStorage.getItem(le.IsMigrationInProgress)&&"true"===localStorage.getItem(le.IsMigrationInProgress)&&(this.dialog.open(jo,{data:{title:"Redirecting to prepare migration page",message:"Another migration already in progress",type:"error"},maxWidth:"500px"}),this.router.navigate(["/prepare-migration"]))}}return t.\u0275fac=function(e){return new(e||t)(b(ns),b(Jn))},t.\u0275cmp=Ae({type:t,selectors:[["app-home"]],decls:21,vars:4,consts:[[1,"container"],[1,"primary-header"],[1,"summary","global-font-color","body-font-size"],["href","https://github.com/GoogleCloudPlatform/spanner-migration-tool#readme","target","_blank"],[1,"btn-source-select"],["mat-raised-button","","color","primary",1,"split-button-left",3,"routerLink"],["mat-raised-button","","color","primary",1,"split-button-right",3,"matMenuTriggerFor"],["aria-hidden","false","aria-label","More options"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"routerLink"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"h3",1),h(2,"Get started with Spanner migration tool"),c(),d(3,"div",2),h(4," Spanner migration tool (formerly known as HarbourBridge) is a stand-alone open source tool for Cloud Spanner evaluation and migration, using data from an existing PostgreSQL, MySQL, SQL Server, Oracle or DynamoDB database. "),d(5,"a",3),h(6,"Learn More"),c(),h(7,". "),c(),d(8,"div",4)(9,"button",5),h(10," Connect to database "),c(),d(11,"button",6)(12,"mat-icon",7),h(13,"expand_more"),c()(),d(14,"mat-menu",8,9)(16,"button",10),h(17,"Load database dump"),c(),d(18,"button",10),h(19,"Load session file"),c()()(),E(20,"app-session-listing"),c()),2&e){const o=$t(15);f(9),m("routerLink","/source/direct-connection"),f(2),m("matMenuTriggerFor",o),f(5),m("routerLink","/source/load-dump"),f(2),m("routerLink","/source/load-session")}},directives:[Ht,Bs,Nl,_n,Fl,qr,MW],styles:[".container[_ngcontent-%COMP%]{padding:7px 27px}.container[_ngcontent-%COMP%] .summary[_ngcontent-%COMP%]{width:500px;font-weight:lighter}.container[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 5px}.container[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border-color:#fff;margin-bottom:20px}.container[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%]{margin:20px 0;padding-bottom:5px}.container[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-left[_ngcontent-%COMP%]{border-top-right-radius:0;border-bottom-right-radius:0}.container[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-right[_ngcontent-%COMP%]{width:30px!important;min-width:unset!important;padding:0 2px;border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px solid #fafafa}"]}),t})(),Ei=(()=>{class t{constructor(){this.sidenavOpenSub=new vt(!1),this.sidenavComponentSub=new vt(""),this.sidenavRuleTypeSub=new vt(""),this.sidenavAddIndexTableSub=new vt(""),this.setSidenavDatabaseNameSub=new vt(""),this.ruleDataSub=new vt({}),this.displayRuleFlagSub=new vt(!1),this.setMiddleColumn=new vt(!1),this.isSidenav=this.sidenavOpenSub.asObservable(),this.sidenavComponent=this.sidenavComponentSub.asObservable(),this.sidenavRuleType=this.sidenavRuleTypeSub.asObservable(),this.sidenavAddIndexTable=this.sidenavAddIndexTableSub.asObservable(),this.sidenavDatabaseName=this.setSidenavDatabaseNameSub.asObservable(),this.ruleData=this.ruleDataSub.asObservable(),this.displayRuleFlag=this.displayRuleFlagSub.asObservable(),this.setMiddleColumnComponent=this.setMiddleColumn.asObservable()}openSidenav(){this.sidenavOpenSub.next(!0)}closeSidenav(){this.sidenavOpenSub.next(!1)}setSidenavComponent(e){this.sidenavComponentSub.next(e)}setSidenavRuleType(e){this.sidenavRuleTypeSub.next(e)}setSidenavAddIndexTable(e){this.sidenavAddIndexTableSub.next(e)}setSidenavDatabaseName(e){this.setSidenavDatabaseNameSub.next(e)}setRuleData(e){this.ruleDataSub.next(e)}setDisplayRuleFlag(e){this.displayRuleFlagSub.next(e)}setMiddleColComponent(e){this.setMiddleColumn.next(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),uI=(()=>{class t{constructor(e){this.sidenav=e}ngOnInit(){}closeInstructionSidenav(){this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-instruction"]],decls:150,vars:0,consts:[[1,"instructions-div"],[1,"instruction-header-div"],["mat-icon-button","",3,"click"],["src","../../../assets/icons/google-spanner-logo.png",1,"instructions-icon"],[1,"textCenter"],[1,"instructions-main-heading"],[1,"instructions-sub-heading"],[1,"instructions-command"],["href","https://github.com/GoogleCloudPlatform/spanner-migration-tool",1,"instructionsLink"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"button",2),N("click",function(){return i.closeInstructionSidenav()}),d(3,"mat-icon"),h(4,"close"),c()()(),E(5,"img",3),d(6,"h1",4),h(7,"Spanner migration tool User Manual"),c(),E(8,"br")(9,"br"),d(10,"h3",5),h(11,"1 \xa0 \xa0 \xa0Introduction"),c(),d(12,"p"),h(13," Spanner migration tool (formerly known as HarbourBridge) is a stand-alone open source tool for Cloud Spanner evaluation, using data from an existing PostgreSQL or MySQL database. The tool ingests schema and data from either a pg_dump/mysqldump file or directly from the source database, automatically builds a Spanner schema, and creates a new Spanner database populated with data from the source database. "),E(14,"br")(15,"br")(16,"br"),h(17," Spanner migration tool is designed to simplify Spanner evaluation, and in particular to bootstrap the process by getting moderate-size PostgreSQL/MySQL datasets into Spanner (up to a few tens of GB). Many features of PostgreSQL/MySQL, especially those that don't map directly to Spanner features, are ignored, e.g. (non-primary) indexes, functions, and sequences. Types such as integers, floats, char/text, bools, timestamps, and (some) array types, map fairly directly to Spanner, but many other types do not and instead are mapped to Spanner's STRING(MAX). "),c(),E(18,"br"),d(19,"h4",6),h(20,"1.1 \xa0 \xa0 \xa0Spanner migration tool UI"),c(),d(21,"p"),h(22," Spanner migration tool UI is designed to focus on generating spanner schema from either a pg_dump/mysqldump file or directly from the source database and providing edit functionality to the spanner schema and thereby creating a new spanner database populated with new data. UI gives the provision to edit column name, edit data type, edit constraints, drop foreign key and drop secondary index of spanner schema. "),c(),E(23,"br"),d(24,"h3",5),h(25,"2 \xa0 \xa0 \xa0Key Features of UI"),c(),d(26,"ul")(27,"li"),h(28,"Connecting to a new database"),c(),d(29,"li"),h(30,"Load dump file"),c(),d(31,"li"),h(32,"Load session file"),c(),d(33,"li"),h(34,"Storing session for each conversion"),c(),d(35,"li"),h(36,"Edit data type globally for each table in schema"),c(),d(37,"li"),h(38,"Edit data type, column name, constraint for a particular table"),c(),d(39,"li"),h(40,"Edit foreign key and secondary index name"),c(),d(41,"li"),h(42,"Drop a column from a table"),c(),d(43,"li"),h(44,"Drop foreign key from a table"),c(),d(45,"li"),h(46,"Drop secondary index from a table"),c(),d(47,"li"),h(48,"Convert foreign key into interleave table"),c(),d(49,"li"),h(50,"Search a table"),c(),d(51,"li"),h(52,"Download schema, report and session files"),c()(),E(53,"br"),d(54,"h3",5),h(55,"3 \xa0 \xa0 \xa0UI Setup"),c(),d(56,"ul")(57,"li"),h(58,"Install go in local"),c(),d(59,"li"),h(60," Clone Spanner migration tool project and run following command in the terminal: "),E(61,"br"),d(62,"span",7),h(63,"go run main.go --web"),c()(),d(64,"li"),h(65,"Open "),d(66,"span",7),h(67,"http://localhost:8080"),c(),h(68,"in browser"),c()(),E(69,"br"),d(70,"h3",5),h(71," 4 \xa0 \xa0 \xa0Different modes to select source database "),c(),d(72,"h4",6),h(73,"4.1 \xa0 \xa0 \xa0Connect to Database"),c(),d(74,"ul")(75,"li"),h(76,"Enter database details in connect to database dialog box"),c(),d(77,"li"),h(78," Input Fields: database type, database host, database port, database user, database name, database password "),c()(),d(79,"h4",6),h(80,"4.2 \xa0 \xa0 \xa0Load Database Dump"),c(),d(81,"ul")(82,"li"),h(83,"Enter dump file path in load database dialog box"),c(),d(84,"li"),h(85,"Input Fields: database type, file path"),c()(),d(86,"h4",6),h(87,"4.3 \xa0 \xa0 \xa0Import Schema File"),c(),d(88,"ul")(89,"li"),h(90,"Enter session file path in load session dialog box"),c(),d(91,"li"),h(92,"Input Fields: database type, session file path"),c()(),d(93,"h3",5),h(94,"5 \xa0 \xa0 \xa0Session Table"),c(),d(95,"ul")(96,"li"),h(97,"Session table is used to store the previous sessions of schema conversion"),c()(),d(98,"h3",5),h(99,"6 \xa0 \xa0 \xa0Edit Global Data Type"),c(),d(100,"ul")(101,"li"),h(102,"Click on edit global data type button on the screen"),c(),d(103,"li"),h(104,"Select required spanner data type from the dropdown available for each source data type"),c(),d(105,"li"),h(106,"Click on next button after making all the changes"),c()(),d(107,"h3",5),h(108," 7 \xa0 \xa0 \xa0Edit Spanner Schema for a particular table "),c(),d(109,"ul")(110,"li"),h(111,"Expand any table"),c(),d(112,"li"),h(113,"Click on edit spanner schema button"),c(),d(114,"li"),h(115,"Edit column name/ data type/ constraint of spanner schema"),c(),d(116,"li"),h(117,"Edit name of secondary index or foreign key"),c(),d(118,"li"),h(119,"Select to convert foreign key to interleave or use as is (if option is available)"),c(),d(120,"li"),h(121,"Drop a column by unselecting any checkbox"),c(),d(122,"li"),h(123," Drop a foreign key or secondary index by expanding foreign keys or secondary indexes tab inside table "),c(),d(124,"li"),h(125,"Click on save changes button to save the changes"),c(),d(126,"li"),h(127," If current table is involved in foreign key/secondary indexes relationship with other table then user will be prompt to delete foreign key or secondary indexes and then proceed with save changes "),c()(),d(128,"p"),h(129,"- Warning before deleting secondary index from a table"),c(),d(130,"p"),h(131,"- Error on saving changes"),c(),d(132,"p"),h(133,"- Changes saved successfully after resolving all errors"),c(),d(134,"h3",5),h(135,"8 \xa0 \xa0 \xa0Download Session File"),c(),d(136,"ul")(137,"li"),h(138,"Save all the changes done in spanner schema table wise or globally"),c(),d(139,"li"),h(140,"Click on download session file button on the top right corner"),c(),d(141,"li"),h(142,"Save the generated session file with all the changes in local machine"),c()(),d(143,"h3",5),h(144,"9 \xa0 \xa0 \xa0How to use Session File"),c(),d(145,"p"),h(146," Please refer below link to get more information on how to use session file with Spanner migration tool "),c(),d(147,"a",8),h(148,"Refer this to use Session File"),c(),E(149,"br"),c())},directives:[Ht,_n],styles:[".instructions-div[_ngcontent-%COMP%]{padding:5px 20px 20px}.instructions-div[_ngcontent-%COMP%] .instruction-header-div[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.instructions-icon[_ngcontent-%COMP%]{height:200px;display:block;margin-left:auto;margin-right:auto}.textCenter[_ngcontent-%COMP%]{text-align:center}.instructions-main-heading[_ngcontent-%COMP%]{font-size:1.25rem;color:#4285f4;font-weight:700}.instructions-sub-heading[_ngcontent-%COMP%]{font-size:1rem;color:#4285f4;font-weight:700}.instructions-command[_ngcontent-%COMP%]{background-color:#8080806b;border-radius:5px;padding:0 5px}.instructions-img-width[_ngcontent-%COMP%]{width:800px}.instructionsLink[_ngcontent-%COMP%]{color:#4285f4;text-decoration:underline}"]}),t})();function TW(t,n){if(1&t&&(hn(),E(0,"circle",4)),2&t){const e=D(),i=$t(1);pi("animation-name","mat-progress-spinner-stroke-rotate-"+e._spinnerAnimationLabel)("stroke-dashoffset",e._getStrokeDashOffset(),"px")("stroke-dasharray",e._getStrokeCircumference(),"px")("stroke-width",e._getCircleStrokeWidth(),"%")("transform-origin",e._getCircleTransformOrigin(i)),et("r",e._getCircleRadius())}}function kW(t,n){if(1&t&&(hn(),E(0,"circle",4)),2&t){const e=D(),i=$t(1);pi("stroke-dashoffset",e._getStrokeDashOffset(),"px")("stroke-dasharray",e._getStrokeCircumference(),"px")("stroke-width",e._getCircleStrokeWidth(),"%")("transform-origin",e._getCircleTransformOrigin(i)),et("r",e._getCircleRadius())}}const IW=$r(class{constructor(t){this._elementRef=t}},"primary"),OW=new _e("mat-progress-spinner-default-options",{providedIn:"root",factory:function AW(){return{diameter:100}}});class eo extends IW{constructor(n,e,i,o,r,s,a,l){super(n),this._document=i,this._diameter=100,this._value=0,this._resizeSubscription=k.EMPTY,this.mode="determinate";const u=eo._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),u.has(i.head)||u.set(i.head,new Set([100])),this._noopAnimations="NoopAnimations"===o&&!!r&&!r._forceAnimations,"mat-spinner"===n.nativeElement.nodeName.toLowerCase()&&(this.mode="indeterminate"),r&&(r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth)),e.isBrowser&&e.SAFARI&&a&&s&&l&&(this._resizeSubscription=a.change(150).subscribe(()=>{"indeterminate"===this.mode&&l.run(()=>s.markForCheck())}))}get diameter(){return this._diameter}set diameter(n){this._diameter=Zn(n),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(n){this._strokeWidth=Zn(n)}get value(){return"determinate"===this.mode?this._value:0}set value(n){this._value=Math.max(0,Math.min(100,Zn(n)))}ngOnInit(){const n=this._elementRef.nativeElement;this._styleRoot=lM(n)||this._document.head,this._attachStyleNode(),n.classList.add("mat-progress-spinner-indeterminate-animation")}ngOnDestroy(){this._resizeSubscription.unsubscribe()}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const n=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${n} ${n}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_getCircleTransformOrigin(n){var e;const i=50*(null!==(e=n.currentScale)&&void 0!==e?e:1);return`${i}% ${i}%`}_attachStyleNode(){const n=this._styleRoot,e=this._diameter,i=eo._diameters;let o=i.get(n);if(!o||!o.has(e)){const r=this._document.createElement("style");r.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),r.textContent=this._getAnimationText(),n.appendChild(r),o||(o=new Set,i.set(n,o)),o.add(e)}}_getAnimationText(){const n=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*n).replace(/END_VALUE/g,""+.2*n).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}eo._diameters=new WeakMap,eo.\u0275fac=function(n){return new(n||eo)(b(He),b(dn),b(ht,8),b(gn,8),b(OW),b(At),b(yr),b(Je))},eo.\u0275cmp=Ae({type:eo,selectors:[["mat-progress-spinner"],["mat-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner","mat-spinner"],hostVars:10,hostBindings:function(n,e){2&n&&(et("aria-valuemin","determinate"===e.mode?0:null)("aria-valuemax","determinate"===e.mode?100:null)("aria-valuenow","determinate"===e.mode?e.value:null)("mode",e.mode),pi("width",e.diameter,"px")("height",e.diameter,"px"),rt("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color",diameter:"diameter",strokeWidth:"strokeWidth",mode:"mode",value:"value"},exportAs:["matProgressSpinner"],features:[Ce],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(n,e){1&n&&(hn(),d(0,"svg",0,1),_(2,TW,1,11,"circle",2),_(3,kW,1,9,"circle",3),c()),2&n&&(pi("width",e.diameter,"px")("height",e.diameter,"px"),m("ngSwitch","indeterminate"===e.mode),et("viewBox",e._getViewBox()),f(2),m("ngSwitchCase",!0),f(1),m("ngSwitchCase",!1))},directives:[vl,nh],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}\n"],encapsulation:2,changeDetection:0});let RW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft,qi],ft]}),t})();function FW(t,n){if(1&t&&(d(0,"mat-option",17),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function NW(t,n){1&t&&E(0,"mat-spinner",18),2&t&&m("diameter",25)}function LW(t,n){1&t&&(d(0,"mat-icon",19),h(1,"check_circle"),c())}function BW(t,n){1&t&&(d(0,"mat-icon",20),h(1,"cancel"),c())}function VW(t,n){if(1&t&&(d(0,"mat-option",17),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}let jW=(()=>{class t{constructor(e,i,o){this.data=e,this.router=i,this.clickEvent=o,this.connectForm=new an({dbEngine:new X("mysqldump",[de.required]),filePath:new X("",[de.required]),dialect:new X("",[de.required])}),this.dbEngineList=[{value:"mysqldump",displayName:"MySQL"},{value:"pg_dump",displayName:"PostgreSQL"}],this.dialect=lI,this.fileToUpload=null,this.uploadStart=!1,this.uploadSuccess=!1,this.uploadFail=!1,this.getSchemaRequest=null}ngOnInit(){this.clickEvent.cancelDbLoad.subscribe({next:e=>{e&&this.getSchemaRequest&&this.getSchemaRequest.unsubscribe()}})}convertFromDump(){this.clickEvent.openDatabaseLoader("dump",""),this.data.resetStore(),localStorage.clear();const{dbEngine:e,filePath:i,dialect:o}=this.connectForm.value,a={Config:{Driver:e,Path:i},SpannerDetails:{Dialect:o}};this.getSchemaRequest=this.data.getSchemaConversionFromDump(a),this.data.conv.subscribe(l=>{localStorage.setItem(In.Config,JSON.stringify(a)),localStorage.setItem(In.Type,mi.DumpFile),localStorage.setItem(In.SourceDbName,$p(e)),this.clickEvent.closeDatabaseLoader(),this.router.navigate(["/workspace"])})}handleFileInput(e){var i;let o=e.target.files;o&&(this.fileToUpload=o.item(0),this.connectForm.patchValue({filePath:null===(i=this.fileToUpload)||void 0===i?void 0:i.name}),this.fileToUpload&&this.uploadFile())}uploadFile(){var e;if(this.fileToUpload){this.uploadStart=!0,this.uploadFail=!1,this.uploadSuccess=!1;const i=new FormData;i.append("myFile",this.fileToUpload,null===(e=this.fileToUpload)||void 0===e?void 0:e.name),this.data.uploadFile(i).subscribe(o=>{""==o?this.uploadSuccess=!0:this.uploadFail=!0})}}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Jn),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-load-dump"]],decls:36,vars:8,consts:[[1,"connect-load-database-container"],[1,"form-container"],[3,"formGroup","ngSubmit"],[1,"primary-header"],["appearance","outline",1,"full-width"],["matSelect","","name","dbEngine","formControlName","dbEngine","appearance","outline"],[3,"value",4,"ngFor","ngForOf"],["matInput","","placeholder","File path","name","filePath","type","text","formControlName","filePath","readonly","",3,"click"],["matSuffix","",3,"diameter",4,"ngIf"],["matSuffix","","class","success",4,"ngIf"],["matSuffix","","class","danger",4,"ngIf"],["mat-stroked-button","","type","button",3,"click"],["hidden","","type","file",3,"change"],["file",""],["matSelect","","name","dialect","formControlName","dialect","appearance","outline"],["mat-raised-button","","type","submit","color","primary",3,"disabled"],["mat-raised-button","",3,"routerLink"],[3,"value"],["matSuffix","",3,"diameter"],["matSuffix","",1,"success"],["matSuffix","",1,"danger"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"div",1)(2,"form",2),N("ngSubmit",function(){return i.convertFromDump()}),d(3,"h3",3),h(4,"Load from database dump"),c(),d(5,"mat-form-field",4)(6,"mat-label"),h(7,"Database Engine"),c(),d(8,"mat-select",5),_(9,FW,2,2,"mat-option",6),c()(),d(10,"h3",3),h(11,"Dump File"),c(),d(12,"mat-form-field",4)(13,"mat-label"),h(14,"File path"),c(),d(15,"input",7),N("click",function(){return se(o),$t(22).click()}),c(),_(16,NW,1,1,"mat-spinner",8),_(17,LW,2,0,"mat-icon",9),_(18,BW,2,0,"mat-icon",10),c(),d(19,"button",11),N("click",function(){return se(o),$t(22).click()}),h(20,"Upload File"),c(),d(21,"input",12,13),N("change",function(s){return i.handleFileInput(s)}),c(),E(23,"br"),d(24,"h3",3),h(25,"Spanner Dialect"),c(),d(26,"mat-form-field",4)(27,"mat-label"),h(28,"Select a spanner dialect"),c(),d(29,"mat-select",14),_(30,VW,2,2,"mat-option",6),c()(),E(31,"br"),d(32,"button",15),h(33," Convert "),c(),d(34,"button",16),h(35,"Cancel"),c()()()()}2&e&&(f(2),m("formGroup",i.connectForm),f(7),m("ngForOf",i.dbEngineList),f(7),m("ngIf",i.uploadStart&&!i.uploadSuccess&&!i.uploadFail),f(1),m("ngIf",i.uploadStart&&i.uploadSuccess),f(1),m("ngIf",i.uploadStart&&i.uploadFail),f(12),m("ngForOf",i.dialect),f(2),m("disabled",!i.connectForm.valid||!i.uploadSuccess),f(2),m("routerLink","/"))},directives:[xi,Hn,Sn,En,Mn,Yi,bn,Xn,ri,_i,li,Dn,Et,eo,Ab,_n,Ht,Bs],styles:[""]}),t})();function HW(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function UW(t,n){1&t&&E(0,"mat-spinner",17),2&t&&m("diameter",25)}function zW(t,n){1&t&&(d(0,"mat-icon",18),h(1,"check_circle"),c())}function $W(t,n){1&t&&(d(0,"mat-icon",19),h(1,"cancel"),c())}let GW=(()=>{class t{constructor(e,i,o){this.data=e,this.router=i,this.clickEvent=o,this.connectForm=new an({dbEngine:new X("mysql",[de.required]),filePath:new X("",[de.required])}),this.dbEngineList=[{value:"mysql",displayName:"MySQL"},{value:"sqlserver",displayName:"SQL Server"},{value:"oracle",displayName:"Oracle"},{value:"postgres",displayName:"PostgreSQL"}],this.fileToUpload=null,this.uploadStart=!1,this.uploadSuccess=!1,this.uploadFail=!1,this.getSchemaRequest=null}ngOnInit(){this.clickEvent.cancelDbLoad.subscribe({next:e=>{e&&this.getSchemaRequest&&this.getSchemaRequest.unsubscribe()}})}convertFromSessionFile(){this.clickEvent.openDatabaseLoader("session",""),this.data.resetStore(),localStorage.clear();const{dbEngine:e,filePath:i}=this.connectForm.value,o={driver:e,filePath:i};this.getSchemaRequest=this.data.getSchemaConversionFromSession(o),this.data.conv.subscribe(r=>{localStorage.setItem(In.Config,JSON.stringify(o)),localStorage.setItem(In.Type,mi.SessionFile),localStorage.setItem(In.SourceDbName,$p(e)),this.clickEvent.closeDatabaseLoader(),this.router.navigate(["/workspace"])})}handleFileInput(e){var i;let o=e.target.files;o&&(this.fileToUpload=o.item(0),this.connectForm.patchValue({filePath:null===(i=this.fileToUpload)||void 0===i?void 0:i.name}),this.fileToUpload&&this.uploadFile())}uploadFile(){var e;if(this.fileToUpload){this.uploadStart=!0,this.uploadFail=!1,this.uploadSuccess=!1;const i=new FormData;i.append("myFile",this.fileToUpload,null===(e=this.fileToUpload)||void 0===e?void 0:e.name),this.data.uploadFile(i).subscribe(o=>{""==o?this.uploadSuccess=!0:this.uploadFail=!0})}}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Jn),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-load-session"]],decls:28,vars:7,consts:[[1,"connect-load-database-container"],[1,"form-container"],[3,"formGroup","ngSubmit"],[1,"primary-header"],["appearance","outline",1,"full-width"],["matSelect","","name","dbEngine","formControlName","dbEngine","appearance","outline"],[3,"value",4,"ngFor","ngForOf"],["matInput","","placeholder","File path","name","filePath","type","text","formControlName","filePath","readonly","",3,"click"],["matSuffix","",3,"diameter",4,"ngIf"],["matSuffix","","class","success",4,"ngIf"],["matSuffix","","class","danger",4,"ngIf"],["mat-stroked-button","","type","button",3,"click"],["hidden","","type","file",3,"change"],["file",""],["mat-raised-button","","type","submit","color","primary",3,"disabled"],["mat-raised-button","",3,"routerLink"],[3,"value"],["matSuffix","",3,"diameter"],["matSuffix","",1,"success"],["matSuffix","",1,"danger"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"div",1)(2,"form",2),N("ngSubmit",function(){return i.convertFromSessionFile()}),d(3,"h3",3),h(4,"Load from session"),c(),d(5,"mat-form-field",4)(6,"mat-label"),h(7,"Database Engine"),c(),d(8,"mat-select",5),_(9,HW,2,2,"mat-option",6),c()(),d(10,"h3",3),h(11,"Session File"),c(),d(12,"mat-form-field",4)(13,"mat-label"),h(14,"File path"),c(),d(15,"input",7),N("click",function(){return se(o),$t(22).click()}),c(),_(16,UW,1,1,"mat-spinner",8),_(17,zW,2,0,"mat-icon",9),_(18,$W,2,0,"mat-icon",10),c(),d(19,"button",11),N("click",function(){return se(o),$t(22).click()}),h(20,"Upload File"),c(),d(21,"input",12,13),N("change",function(s){return i.handleFileInput(s)}),c(),E(23,"br"),d(24,"button",14),h(25," Convert "),c(),d(26,"button",15),h(27,"Cancel"),c()()()()}2&e&&(f(2),m("formGroup",i.connectForm),f(7),m("ngForOf",i.dbEngineList),f(7),m("ngIf",i.uploadStart&&!i.uploadSuccess&&!i.uploadFail),f(1),m("ngIf",i.uploadStart&&i.uploadSuccess),f(1),m("ngIf",i.uploadStart&&i.uploadFail),f(6),m("disabled",!i.connectForm.valid||!i.uploadSuccess),f(2),m("routerLink","/"))},directives:[xi,Hn,Sn,En,Mn,Yi,bn,Xn,ri,_i,li,Dn,Et,eo,Ab,_n,Ht,Bs],styles:[""]}),t})();function WW(t,n){if(1&t&&(d(0,"h3"),h(1),c()),2&t){const e=D();f(1),Se("Reading schema for ",e.databaseName," database. Please wait...")}}function qW(t,n){1&t&&(d(0,"h4"),h(1,"Tip: Spanner migration tool will read the information schema at source and automatically map it to Cloud Spanner"),c())}function KW(t,n){if(1&t&&(d(0,"h3"),h(1),c()),2&t){const e=D();f(1),Se("Testing connection to ",e.databaseName," database...")}}function ZW(t,n){1&t&&(d(0,"h4"),h(1,"Tip: Spanner migration tool is attempting to ping the source database, it will retry a couple of times before timing out."),c())}function QW(t,n){1&t&&(d(0,"h3"),h(1,"Loading the dump file..."),c())}function YW(t,n){1&t&&(d(0,"h3"),h(1,"Loading the session file..."),c())}let XW=(()=>{class t{constructor(e,i){this.router=e,this.clickEvent=i,this.loaderType="",this.databaseName="",this.timeElapsed=0,this.timeElapsedInterval=setInterval(()=>{this.timeElapsed+=1},1e3)}ngOnInit(){this.timeElapsed=0}ngOnDestroy(){clearInterval(this.timeElapsedInterval)}cancelDbLoad(){this.clickEvent.cancelDbLoading(),this.clickEvent.closeDatabaseLoader(),this.router.navigate(["/"])}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-database-loader"]],inputs:{loaderType:"loaderType",databaseName:"databaseName"},decls:12,vars:7,consts:[[1,"container","content-height"],["src","../../../assets/gifs/database-loader.gif","alt","database-loader-gif",1,"loader-gif"],[4,"ngIf"],["mat-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0),E(1,"img",1),_(2,WW,2,1,"h3",2),_(3,qW,2,0,"h4",2),_(4,KW,2,1,"h3",2),_(5,ZW,2,0,"h4",2),_(6,QW,2,0,"h3",2),_(7,YW,2,0,"h3",2),d(8,"h5"),h(9),c(),d(10,"button",3),N("click",function(){return i.cancelDbLoad()}),h(11,"Cancel"),c()()),2&e&&(f(2),m("ngIf","direct"===i.loaderType),f(1),m("ngIf","direct"===i.loaderType),f(1),m("ngIf","test-connection"===i.loaderType),f(1),m("ngIf","test-connection"===i.loaderType),f(1),m("ngIf","dump"===i.loaderType),f(1),m("ngIf","session"===i.loaderType),f(2),Se("",i.timeElapsed," seconds have elapsed"))},directives:[Et,Ht],styles:[".container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:center}.container[_ngcontent-%COMP%] .loader-gif[_ngcontent-%COMP%]{width:10rem;height:10rem}"]}),t})();function JW(t,n){1&t&&(d(0,"div"),E(1,"router-outlet"),c())}function eq(t,n){if(1&t&&(d(0,"div"),E(1,"app-database-loader",1),c()),2&t){const e=D();f(1),m("loaderType",e.loaderType)("databaseName",e.databaseName)}}let tq=(()=>{class t{constructor(e){this.clickevent=e,this.isDatabaseLoading=!1,this.loaderType="",this.databaseName=""}ngOnInit(){this.clickevent.databaseLoader.subscribe(e=>{this.loaderType=e.type,this.databaseName=e.databaseName,this.isDatabaseLoading=""!==this.loaderType})}}return t.\u0275fac=function(e){return new(e||t)(b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-source-selection"]],decls:2,vars:2,consts:[[4,"ngIf"],[3,"loaderType","databaseName"]],template:function(e,i){1&e&&(_(0,JW,2,0,"div",0),_(1,eq,2,2,"div",0)),2&e&&(m("ngIf",!i.isDatabaseLoading),f(1),m("ngIf",i.isDatabaseLoading))},directives:[Et,Lp,XW],styles:[".mat-card-class[_ngcontent-%COMP%]{padding:0 20px}"]}),t})();var hI=Te(650);function nq(t,n){if(1&t&&(d(0,"h2"),h(1),c()),2&t){const e=D();f(1),Se("Skip ",e.eligibleTables.length," table(s)?")}}function iq(t,n){if(1&t&&(d(0,"h2"),h(1),c()),2&t){const e=D();f(1),Se("Restore ",e.eligibleTables.length," table(s) and all associated indexes?")}}function oq(t,n){1&t&&(d(0,"span",9),h(1," Confirm skip by typing the following below: "),d(2,"b"),h(3,"SKIP"),c(),E(4,"br"),c())}function rq(t,n){1&t&&(d(0,"span",9),h(1," Confirm restoration by typing the following below: "),d(2,"b"),h(3,"RESTORE"),c(),E(4,"br"),c())}function sq(t,n){if(1&t&&(d(0,"div")(1,"b"),h(2,"Note:"),c(),h(3),E(4,"br"),d(5,"b"),h(6,"Already skipped tables:"),c(),h(7),c()),2&t){const e=D();f(3),hl(" You selected ",e.data.tables.length," tables. ",e.ineligibleTables.length," table(s) will not be skipped since they are already skipped."),f(4),Se(" ",e.ineligibleTables," ")}}function aq(t,n){if(1&t&&(d(0,"div")(1,"b"),h(2,"Note:"),c(),h(3),E(4,"br"),d(5,"b"),h(6,"Already active tables:"),c(),h(7),c()),2&t){const e=D();f(3),hl(" You selected ",e.data.tables.length," tables. ",e.ineligibleTables.length," table(s) will not be restored since they are already active."),f(4),Se(" ",e.ineligibleTables," ")}}let pI=(()=>{class t{constructor(e,i){this.data=e,this.dialogRef=i,this.eligibleTables=[],this.ineligibleTables=[];let o="";"SKIP"==this.data.operation?(o="SKIP",this.data.tables.forEach(r=>{r.isDeleted?this.ineligibleTables.push(r.TableName):this.eligibleTables.push(r.TableName)})):(o="RESTORE",this.data.tables.forEach(r=>{r.isDeleted?this.eligibleTables.push(r.TableName):this.ineligibleTables.push(r.TableName)})),this.confirmationInput=new X("",[de.required,de.pattern(o)]),i.disableClose=!0}confirm(){this.dialogRef.close(this.data.operation)}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-bulk-drop-restore-table-dialog"]],decls:19,vars:8,consts:[["mat-dialog-content",""],[4,"ngIf"],[1,"form-container"],["class","form-custom-label",4,"ngIf"],["appearance","outline"],["matInput","","type","text",3,"formControl"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[1,"form-custom-label"]],template:function(e,i){1&e&&(d(0,"div",0),_(1,nq,2,1,"h2",1),_(2,iq,2,1,"h2",1),d(3,"mat-dialog-content")(4,"div",2)(5,"form"),_(6,oq,5,0,"span",3),_(7,rq,5,0,"span",3),d(8,"mat-form-field",4)(9,"mat-label"),h(10,"Confirm"),c(),E(11,"input",5),c(),_(12,sq,8,3,"div",1),_(13,aq,8,3,"div",1),c()()(),d(14,"div",6)(15,"button",7),h(16,"Cancel"),c(),d(17,"button",8),N("click",function(){return i.confirm()}),h(18," Confirm "),c()()()),2&e&&(f(1),m("ngIf","SKIP"==i.data.operation),f(1),m("ngIf","RESTORE"==i.data.operation),f(4),m("ngIf","SKIP"==i.data.operation),f(1),m("ngIf","RESTORE"==i.data.operation),f(4),m("formControl",i.confirmationInput),f(1),m("ngIf","SKIP"==i.data.operation&&0!=i.ineligibleTables.length),f(1),m("ngIf","RESTORE"==i.data.operation&&0!=i.ineligibleTables.length),f(4),m("disabled",!i.confirmationInput.valid))},directives:[wr,Et,xi,Hn,ks,En,Mn,li,Dn,bn,Il,Dr,Ht,Ji],styles:[".alert-container[_ngcontent-%COMP%]{padding:.5rem;display:flex;align-items:center;margin-bottom:1rem;background-color:#f8f4f4}.alert-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#f3b300;margin-right:20px}.form-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%}.buttons-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:flex-end}"]}),t})();const fI=function(t){return{"blue-font-color":t}};function lq(t,n){if(1&t&&(d(0,"span",24),h(1),c()),2&t){const e=D();m("ngClass",Kt(2,fI,"source"===e.selectedTab)),f(1),Se(" ",e.srcDbName.toUpperCase()," ")}}function cq(t,n){1&t&&(d(0,"th",25),h(1,"Status"),c())}function dq(t,n){1&t&&(hn(),d(0,"svg",30),E(1,"path",31),c())}function uq(t,n){1&t&&(d(0,"mat-icon",32),h(1," work "),c())}function hq(t,n){1&t&&(d(0,"mat-icon",33),h(1," work_history "),c())}function pq(t,n){if(1&t&&(d(0,"td",26),_(1,dq,2,0,"svg",27),_(2,uq,2,0,"mat-icon",28),_(3,hq,2,0,"mat-icon",29),c()),2&t){const e=n.$implicit;f(1),m("ngIf","EXCELLENT"===e.status||"NONE"===e.status),f(1),m("ngIf","OK"===e.status||"GOOD"===e.status),f(1),m("ngIf","POOR"===e.status)}}function fq(t,n){1&t&&(d(0,"mat-icon",37),h(1,"arrow_upward"),c())}function mq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_upward"),c())}function gq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_downward"),c())}function _q(t,n){if(1&t){const e=pe();d(0,"th",34),N("click",function(){return se(e),D().srcTableSort()}),d(1,"div")(2,"span"),h(3," Object Name "),c(),_(4,fq,2,0,"mat-icon",35),_(5,mq,2,0,"mat-icon",36),_(6,gq,2,0,"mat-icon",36),c()()}if(2&t){const e=D();f(4),m("ngIf",""===e.srcSortOrder),f(1),m("ngIf","asc"===e.srcSortOrder),f(1),m("ngIf","desc"===e.srcSortOrder)}}function bq(t,n){1&t&&(hn(),d(0,"svg",47),E(1,"path",48),c())}function vq(t,n){1&t&&(hn(),d(0,"svg",49),E(1,"path",50),c())}function yq(t,n){1&t&&(hn(),d(0,"svg",51),E(1,"path",52),c())}function Cq(t,n){1&t&&(hn(),d(0,"svg",53),E(1,"path",54),c())}function wq(t,n){if(1&t&&(d(0,"span",55)(1,"mat-icon",56),h(2,"more_vert"),c(),d(3,"mat-menu",null,57)(5,"button",58)(6,"span"),h(7,"Add Index"),c()()()()),2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}function Dq(t,n){if(1&t){const e=pe();d(0,"td",39)(1,"button",40),N("click",function(){const r=se(e).$implicit;return D().srcTreeControl.toggle(r)}),_(2,bq,2,0,"svg",41),_(3,vq,2,0,"ng-template",null,42,Bc),c(),d(5,"span",43),N("click",function(){const r=se(e).$implicit;return D().objectSelected(r)}),d(6,"span"),_(7,yq,2,0,"svg",44),_(8,Cq,2,0,"svg",45),d(9,"span"),h(10),c()(),_(11,wq,8,1,"span",46),c()()}if(2&t){const e=n.$implicit,i=$t(4),o=D();f(1),pi("visibility",e.expandable?"":"hidden")("margin-left",10*e.level,"px"),f(1),m("ngIf",o.srcTreeControl.isExpanded(e))("ngIfElse",i),f(5),m("ngIf",o.isTableNode(e.type)),f(1),m("ngIf",o.isIndexNode(e.type)),f(2),Ee(e.name),f(1),m("ngIf",o.isIndexNode(e.type)&&e.isSpannerNode)}}function Sq(t,n){1&t&&E(0,"tr",59)}const mI=function(t){return{"selected-row":t}};function Mq(t,n){if(1&t&&E(0,"tr",60),2&t){const e=n.$implicit,i=D();m("ngClass",Kt(1,mI,i.shouldHighlight(e)))}}function xq(t,n){if(1&t&&(d(0,"span",24),h(1," SPANNER DRAFT "),c()),2&t){const e=D();m("ngClass",Kt(1,fI,"spanner"===e.selectedTab))}}function Tq(t,n){1&t&&(d(0,"th",25),h(1,"Status"),c())}function kq(t,n){1&t&&(hn(),d(0,"svg",30),E(1,"path",31),c())}function Eq(t,n){1&t&&(d(0,"mat-icon",32),h(1," work "),c())}function Iq(t,n){1&t&&(d(0,"mat-icon",33),h(1," work_history "),c())}function Oq(t,n){1&t&&(d(0,"mat-icon",62),h(1," delete "),c())}function Aq(t,n){if(1&t&&(d(0,"td",26),_(1,kq,2,0,"svg",27),_(2,Eq,2,0,"mat-icon",28),_(3,Iq,2,0,"mat-icon",29),_(4,Oq,2,0,"mat-icon",61),c()),2&t){const e=n.$implicit;f(1),m("ngIf","EXCELLENT"===e.status||"NONE"===e.status),f(1),m("ngIf","OK"===e.status||"GOOD"===e.status),f(1),m("ngIf","POOR"===e.status),f(1),m("ngIf","DARK"===e.status||1==e.isDeleted)}}function Pq(t,n){1&t&&(d(0,"mat-icon",64),h(1,"arrow_upward"),c())}function Rq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_upward"),c())}function Fq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_downward"),c())}function Nq(t,n){if(1&t){const e=pe();d(0,"th",34),N("click",function(){return se(e),D().spannerTableSort()}),d(1,"div")(2,"span"),h(3," Object Name "),c(),_(4,Pq,2,0,"mat-icon",63),_(5,Rq,2,0,"mat-icon",36),_(6,Fq,2,0,"mat-icon",36),c()()}if(2&t){const e=D();f(4),m("ngIf",""===e.spannerSortOrder),f(1),m("ngIf","asc"===e.spannerSortOrder),f(1),m("ngIf","desc"===e.spannerSortOrder)}}function Lq(t,n){if(1&t){const e=pe();d(0,"mat-checkbox",69),N("change",function(){se(e);const o=D().$implicit;return D().selectionToggle(o)}),c()}if(2&t){const e=D().$implicit;m("checked",D().checklistSelection.isSelected(e))}}function Bq(t,n){1&t&&(hn(),d(0,"svg",47),E(1,"path",48),c())}function Vq(t,n){1&t&&(hn(),d(0,"svg",49),E(1,"path",50),c())}function jq(t,n){1&t&&(hn(),d(0,"svg",51),E(1,"path",52),c())}function Hq(t,n){1&t&&(hn(),d(0,"svg",53),E(1,"path",54),c())}function Uq(t,n){if(1&t){const e=pe();d(0,"span",55)(1,"mat-icon",70),h(2,"more_vert"),c(),d(3,"mat-menu",71,57)(5,"button",72),N("click",function(){se(e);const o=D().$implicit;return D().openAddIndexForm(o.parent)}),d(6,"span"),h(7,"Add Index"),c()()()()}if(2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}const zq=function(){return{sidebar_link:!0}},$q=function(t){return{"gray-out":t}};function Gq(t,n){if(1&t){const e=pe();d(0,"td",65),_(1,Lq,1,1,"mat-checkbox",66),d(2,"button",40),N("click",function(){const r=se(e).$implicit;return D().treeControl.toggle(r)}),_(3,Bq,2,0,"svg",41),_(4,Vq,2,0,"ng-template",null,42,Bc),c(),d(6,"span",67),N("click",function(){const r=se(e).$implicit;return D().objectSelected(r)}),d(7,"span"),_(8,jq,2,0,"svg",44),_(9,Hq,2,0,"svg",45),d(10,"span",68),h(11),c()(),_(12,Uq,8,1,"span",46),c()()}if(2&t){const e=n.$implicit,i=$t(5),o=D();m("ngClass",Jo(13,zq)),f(1),m("ngIf",!o.isIndexLikeNode(e)),f(1),pi("visibility",e.expandable?"":"hidden")("margin-left",10*e.level,"px"),f(1),m("ngIf",o.treeControl.isExpanded(e))("ngIfElse",i),f(3),m("ngClass",Kt(14,$q,e.isDeleted)),f(2),m("ngIf",o.isTableNode(e.type)),f(1),m("ngIf",o.isIndexNode(e.type)),f(2),Ee(e.name),f(1),m("ngIf",o.isIndexNode(e.type))}}function Wq(t,n){1&t&&E(0,"tr",59)}function qq(t,n){if(1&t&&E(0,"tr",60),2&t){const e=n.$implicit,i=D();m("ngClass",Kt(1,mI,i.shouldHighlight(e)))}}const Nv=function(t){return[t]};let Kq=(()=>{class t{constructor(e,i,o,r,s){this.conversion=e,this.dialog=i,this.data=o,this.sidenav=r,this.clickEvent=s,this.isLeftColumnCollapse=!1,this.currentSelectedObject=null,this.srcSortOrder="",this.spannerSortOrder="",this.srcSearchText="",this.spannerSearchText="",this.selectedTab="spanner",this.selectedDatabase=new Pe,this.selectObject=new Pe,this.updateSpannerTable=new Pe,this.updateSrcTable=new Pe,this.leftCollaspe=new Pe,this.updateSidebar=new Pe,this.spannerTree=[],this.srcTree=[],this.srcDbName="",this.selectedIndex=1,this.transformer=(a,l)=>({expandable:!!a.children&&a.children.length>0,name:a.name,status:a.status,type:a.type,parent:a.parent,parentId:a.parentId,pos:a.pos,isSpannerNode:a.isSpannerNode,level:l,isDeleted:!!a.isDeleted,id:a.id}),this.treeControl=new uk(a=>a.level,a=>a.expandable),this.srcTreeControl=new uk(a=>a.level,a=>a.expandable),this.treeFlattener=new d9(this.transformer,a=>a.level,a=>a.expandable,a=>a.children),this.dataSource=new pk(this.treeControl,this.treeFlattener),this.srcDataSource=new pk(this.srcTreeControl,this.treeFlattener),this.checklistSelection=new Tl(!0,[]),this.displayedColumns=["status","name"]}ngOnInit(){this.clickEvent.tabToSpanner.subscribe({next:e=>{this.setSpannerTab()}})}ngOnChanges(e){var i,o;let r=null===(i=null==e?void 0:e.spannerTree)||void 0===i?void 0:i.currentValue,s=null===(o=null==e?void 0:e.srcTree)||void 0===o?void 0:o.currentValue;s&&(this.srcDataSource.data=s,this.srcTreeControl.expand(this.srcTreeControl.dataNodes[0]),this.srcTreeControl.expand(this.srcTreeControl.dataNodes[1])),r&&(this.dataSource.data=r,this.treeControl.expand(this.treeControl.dataNodes[0]),this.treeControl.expand(this.treeControl.dataNodes[1]))}filterSpannerTable(){this.updateSpannerTable.emit({text:this.spannerSearchText,order:this.spannerSortOrder})}filterSrcTable(){this.updateSrcTable.emit({text:this.srcSearchText,order:this.srcSortOrder})}srcTableSort(){this.srcSortOrder=""===this.srcSortOrder?"asc":"asc"===this.srcSortOrder?"desc":"",this.updateSrcTable.emit({text:this.srcSearchText,order:this.srcSortOrder})}spannerTableSort(){this.spannerSortOrder=""===this.spannerSortOrder?"asc":"asc"===this.spannerSortOrder?"desc":"",this.updateSpannerTable.emit({text:this.spannerSearchText,order:this.spannerSortOrder})}objectSelected(e){this.currentSelectedObject=e,(e.type===Qt.Index||e.type===Qt.Table)&&this.selectObject.emit(e)}leftColumnToggle(){this.isLeftColumnCollapse=!this.isLeftColumnCollapse,this.leftCollaspe.emit()}isTableNode(e){return new RegExp("^tables").test(e)}isIndexNode(e){return new RegExp("^indexes").test(e)}isIndexLikeNode(e){return e.type==Qt.Index||e.type==Qt.Indexes}openAddIndexForm(e){this.sidenav.setSidenavAddIndexTable(e),this.sidenav.setSidenavRuleType("addIndex"),this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("rule"),this.sidenav.setRuleData([]),this.sidenav.setDisplayRuleFlag(!1)}shouldHighlight(e){var i;return e.name===(null===(i=this.currentSelectedObject)||void 0===i?void 0:i.name)&&(e.type===Qt.Table||e.type===Qt.Index)}onTabChanged(){"spanner"==this.selectedTab?(this.selectedTab="source",this.selectedIndex=0):(this.selectedTab="spanner",this.selectedIndex=1),this.selectedDatabase.emit(this.selectedTab),this.currentSelectedObject=null,this.selectObject.emit(void 0)}setSpannerTab(){this.selectedIndex=1}checkDropSelection(){return 0!=this.countSelectionByCategory().eligibleForDrop}checkRestoreSelection(){return 0!=this.countSelectionByCategory().eligibleForRestore}countSelectionByCategory(){let i=0,o=0;return this.checklistSelection.selected.forEach(r=>{r.isDeleted?o+=1:i+=1}),{eligibleForDrop:i,eligibleForRestore:o}}dropSelected(){var i=[];this.checklistSelection.selected.forEach(s=>{""!=s.id&&s.type==Qt.Table&&i.push({TableId:s.id,TableName:s.name,isDeleted:s.isDeleted})});let o=this.dialog.open(pI,{width:"35vw",minWidth:"450px",maxWidth:"600px",maxHeight:"90vh",data:{tables:i,operation:"SKIP"}});var r={TableList:[]};i.forEach(s=>{r.TableList.push(s.TableId)}),o.afterClosed().subscribe(s=>{"SKIP"==s&&(this.data.dropTables(r).pipe(Ot(1)).subscribe(a=>{""===a&&(this.data.getConversionRate(),this.updateSidebar.emit(!0))}),this.checklistSelection.clear())})}restoreSelected(){var i=[];this.checklistSelection.selected.forEach(s=>{""!=s.id&&s.type==Qt.Table&&i.push({TableId:s.id,TableName:s.name,isDeleted:s.isDeleted})});let o=this.dialog.open(pI,{width:"35vw",minWidth:"450px",maxWidth:"600px",data:{tables:i,operation:"RESTORE"}});var r={TableList:[]};i.forEach(s=>{r.TableList.push(s.TableId)}),o.afterClosed().subscribe(s=>{"RESTORE"==s&&(this.data.restoreTables(r).pipe(Ot(1)).subscribe(a=>{this.data.getConversionRate(),this.data.getDdl()}),this.checklistSelection.clear())})}selectionToggle(e){this.checklistSelection.toggle(e);const i=this.treeControl.getDescendants(e);this.checklistSelection.isSelected(e)?this.checklistSelection.select(...i):this.checklistSelection.deselect(...i)}}return t.\u0275fac=function(e){return new(e||t)(b(Da),b(ns),b(Ln),b(Ei),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-object-explorer"]],inputs:{spannerTree:"spannerTree",srcTree:"srcTree",srcDbName:"srcDbName"},outputs:{selectedDatabase:"selectedDatabase",selectObject:"selectObject",updateSpannerTable:"updateSpannerTable",updateSrcTable:"updateSrcTable",leftCollaspe:"leftCollaspe",updateSidebar:"updateSidebar"},features:[nn],decls:59,vars:20,consts:[[1,"container"],[3,"ngClass","selectedIndex","selectedTabChange"],["mat-tab-label",""],[1,"filter-wrapper"],[1,"left"],[1,"material-icons","filter-icon"],[1,"filter-text"],[1,"right"],["placeholder","Filter by table name",3,"ngModel","ngModelChange"],[1,"explorer-table"],["mat-table","",3,"dataSource"],["matColumnDef","status"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","name"],["mat-header-cell","","class","mat-header-cell-name cursor-pointer",3,"click",4,"matHeaderCellDef"],["mat-cell","","class","sidebar_link",4,"matCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",3,"ngClass",4,"matRowDef","matRowDefColumns"],["clas","delete-selected-btn"],["mat-button","","color","primary",1,"icon","drop",3,"disabled","click"],["clas","restore-selected-btn"],["mat-cell","",3,"ngClass",4,"matCellDef"],["id","left-column-toggle-button",3,"click"],[3,"ngClass"],["mat-header-cell",""],["mat-cell",""],["class","icon success","matTooltip","Can be converted automatically","matTooltipPosition","above","xmlns","http://www.w3.org/2000/svg","width","24","height","24","fill","black",4,"ngIf"],["class","work","matTooltip","Requires minimal conversion changes","matTooltipPosition","above",4,"ngIf"],["class","work_history","matTooltip","Requires high complexity conversion changes","matTooltipPosition","above",4,"ngIf"],["matTooltip","Can be converted automatically","matTooltipPosition","above","xmlns","http://www.w3.org/2000/svg","width","24","height","24","fill","black",1,"icon","success"],["d","m10.4 17.6-2-4.4-4.4-2 4.4-2 2-4.4 2 4.4 4.4 2-4.4 2Zm6.4 1.6-1-2.2-2.2-1 2.2-1 1-2.2 1 2.2 2.2 1-2.2 1Z"],["matTooltip","Requires minimal conversion changes","matTooltipPosition","above",1,"work"],["matTooltip","Requires high complexity conversion changes","matTooltipPosition","above",1,"work_history"],["mat-header-cell","",1,"mat-header-cell-name","cursor-pointer",3,"click"],["class","src-unsorted-icon sort-icon",4,"ngIf"],["class","sort-icon",4,"ngIf"],[1,"src-unsorted-icon","sort-icon"],[1,"sort-icon"],["mat-cell","",1,"sidebar_link"],["mat-icon-button","",3,"click"],["width","12","height","6","viewBox","0 0 12 6","fill","none","xmlns","http://www.w3.org/2000/svg",4,"ngIf","ngIfElse"],["collaps",""],[1,"sidebar_link",3,"click"],["width","18","height","18","viewBox","0 0 18 18","fill","none","xmlns","http://www.w3.org/2000/svg",4,"ngIf"],["width","12","height","14","viewBox","0 0 12 14","fill","none","xmlns","http://www.w3.org/2000/svg",4,"ngIf"],["class","actions",4,"ngIf"],["width","12","height","6","viewBox","0 0 12 6","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M12 0L0 0L6 6L12 0Z","fill","black","fill-opacity","0.54"],["width","6","height","12","viewBox","0 0 6 12","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M-5.24537e-07 2.62268e-07L0 12L6 6L-5.24537e-07 2.62268e-07Z","fill","black","fill-opacity","0.54"],["width","18","height","18","viewBox","0 0 18 18","fill","none","xmlns","http://www.w3.org/2000/svg"],["d","M0 0V18H18V0H0ZM16 2V6H2V2H16ZM7.33 11V8H10.66V11H7.33ZM10.67 13V16H7.34V13H10.67ZM5.33 11H2V8H5.33V11ZM12.67 8H16V11H12.67V8ZM2 13H5.33V16H2V13ZM12.67 16V13H16V16H12.67Z","fill","black","fill-opacity","0.54"],["width","12","height","14","viewBox","0 0 12 14","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M11.005 14C11.555 14 12 13.554 12 13.002V5L10 3V12H2V14H11.005ZM0 0.996C0 0.446 0.438 0 1.003 0H7L9 2.004V10.004C9 10.554 8.554 11 8.002 11H0.998C0.867035 11.0003 0.737304 10.9747 0.616233 10.9248C0.495162 10.8748 0.385128 10.8015 0.292428 10.709C0.199729 10.6165 0.126186 10.5066 0.0760069 10.3856C0.0258282 10.2646 -2.64036e-07 10.135 0 10.004V0.996ZM6 1L5 5.5H2L6 1ZM3 10L4 5.5H7L3 10Z","fill","black","fill-opacity","0.54"],[1,"actions"],[3,"matMenuTriggerFor"],["menu","matMenu"],["mat-menu-item",""],["mat-header-row",""],["mat-row","",3,"ngClass"],["class","icon dark","matTooltip","Deleted","matTooltipPosition","above",4,"ngIf"],["matTooltip","Deleted","matTooltipPosition","above",1,"icon","dark"],["class","spanner-unsorted-icon sort-icon",4,"ngIf"],[1,"spanner-unsorted-icon","sort-icon"],["mat-cell","",3,"ngClass"],["class","checklist-node",3,"checked","change",4,"ngIf"],[1,"sidebar_link",3,"ngClass","click"],[1,"object-name"],[1,"checklist-node",3,"checked","change"],[1,"add-index-icon",3,"matMenuTriggerFor"],["xPosition","before"],["mat-menu-item","",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-tab-group",1),N("selectedTabChange",function(){return i.onTabChanged()}),d(2,"mat-tab"),_(3,lq,2,4,"ng-template",2),d(4,"div",3)(5,"div",4)(6,"span",5),h(7,"filter_list"),c(),d(8,"span",6),h(9,"Filter"),c()(),d(10,"div",7)(11,"input",8),N("ngModelChange",function(r){return i.srcSearchText=r})("ngModelChange",function(){return i.filterSrcTable()}),c()()(),d(12,"div",9)(13,"table",10),be(14,11),_(15,cq,2,0,"th",12),_(16,pq,4,3,"td",13),ve(),be(17,14),_(18,_q,7,3,"th",15),_(19,Dq,12,10,"td",16),ve(),_(20,Sq,1,0,"tr",17),_(21,Mq,1,3,"tr",18),c()()(),d(22,"mat-tab"),_(23,xq,2,3,"ng-template",2),d(24,"div",3)(25,"div",4)(26,"span",5),h(27,"filter_list"),c(),d(28,"span",6),h(29,"Filter"),c()(),d(30,"div",7)(31,"input",8),N("ngModelChange",function(r){return i.spannerSearchText=r})("ngModelChange",function(){return i.filterSpannerTable()}),c()(),d(32,"div",19)(33,"button",20),N("click",function(){return i.dropSelected()}),d(34,"mat-icon"),h(35,"delete"),c(),d(36,"span"),h(37,"SKIP"),c()()(),d(38,"div",21)(39,"button",20),N("click",function(){return i.restoreSelected()}),d(40,"mat-icon"),h(41,"undo"),c(),d(42,"span"),h(43,"RESTORE"),c()()()(),d(44,"div",9)(45,"table",10),be(46,11),_(47,Tq,2,0,"th",12),_(48,Aq,5,4,"td",13),ve(),be(49,14),_(50,Nq,7,3,"th",15),_(51,Gq,13,16,"td",22),ve(),_(52,Wq,1,0,"tr",17),_(53,qq,1,3,"tr",18),c()()()(),d(54,"button",23),N("click",function(){return i.leftColumnToggle()}),d(55,"mat-icon",24),h(56,"first_page"),c(),d(57,"mat-icon",24),h(58,"last_page"),c()()()),2&e&&(f(1),m("ngClass",Kt(14,Nv,i.isLeftColumnCollapse?"hidden":"display"))("selectedIndex",i.selectedIndex),f(10),m("ngModel",i.srcSearchText),f(2),m("dataSource",i.srcDataSource),f(7),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns),f(10),m("ngModel",i.spannerSearchText),f(2),m("disabled",!i.checkDropSelection()),f(6),m("disabled",!i.checkRestoreSelection()),f(6),m("dataSource",i.dataSource),f(7),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns),f(2),m("ngClass",Kt(16,Nv,i.isLeftColumnCollapse?"hidden":"display")),f(2),m("ngClass",Kt(18,Nv,i.isLeftColumnCollapse?"display":"hidden")))},directives:[rv,nr,wp,bk,Dn,bn,El,As,Xr,Yr,Jr,Qr,es,Et,ki,_n,Ht,Nl,Fl,qr,Ps,Fs,Rs,Ns,uv],styles:[".container[_ngcontent-%COMP%]{position:relative;background-color:#fff}.container[_ngcontent-%COMP%] .filter-wrapper[_ngcontent-%COMP%]{padding:0 10px}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%]{height:35px}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%] .spanner-unsorted-icon[_ngcontent-%COMP%]{visibility:hidden}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%]:hover .spanner-unsorted-icon[_ngcontent-%COMP%]{visibility:visible;opacity:.7}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%] .src-unsorted-icon[_ngcontent-%COMP%]{visibility:hidden}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%]:hover .src-unsorted-icon[_ngcontent-%COMP%]{visibility:visible;opacity:.7}.container[_ngcontent-%COMP%] .sort-icon[_ngcontent-%COMP%]{font-size:1.1rem;display:flex;align-items:center;justify-content:flex-end}.container[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]{padding-right:0!important}.selected-row[_ngcontent-%COMP%]{background-color:#61b3ff4a}.explorer-table[_ngcontent-%COMP%]{height:calc(100vh - 320px);width:100%;overflow:auto}.mat-table[_ngcontent-%COMP%]{width:100%}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%]{cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;height:40px}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{margin-right:10px}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{height:40px;margin-left:14px}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%] .add-index-icon[_ngcontent-%COMP%]{margin-top:7px}.mat-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-row[_ngcontent-%COMP%]{height:29px}.mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]{font-family:Roboto;font-size:13px;font-style:normal;font-weight:500;line-height:18px;background:#f5f5f5}.mat-table[_ngcontent-%COMP%] .mat-column-status[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:medium}.mat-table[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:20px}.filter-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;height:48px}.filter-wrapper[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{width:30%;display:flex;align-items:center}.filter-wrapper[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] .material-icons[_ngcontent-%COMP%]{margin-right:5px}.filter-wrapper[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{width:70%}.filter-wrapper[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:70%;border:none;outline:none;background-color:transparent}#left-column-toggle-button[_ngcontent-%COMP%]{z-index:100;position:absolute;right:4px;top:10px;border:none;background-color:inherit}#left-column-toggle-button[_ngcontent-%COMP%]:hover{cursor:pointer}.mat-column-status[_ngcontent-%COMP%]{width:80px} .column-left .mat-tab-label-container{margin-right:40px} .column-left .mat-tab-header-pagination-controls-enabled .mat-tab-label-container{margin-right:0} .column-left .mat-tab-header-pagination-after{margin-right:40px}"]}),t})();function Zq(t,n){1&t&&(d(0,"div",9)(1,"mat-icon"),h(2,"warning"),c(),d(3,"span"),h(4,"This operation cannot be undone"),c()())}let gI=(()=>{class t{constructor(e,i){this.data=e,this.dialogRef=i,this.ObjectDetailNodeType=Vs,this.confirmationInput=new X("",[de.required,de.pattern(`^${e.name}$`)]),i.disableClose=!0}delete(){this.dialogRef.close(this.data.type)}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-drop-index-dialog"]],decls:19,vars:7,consts:[["mat-dialog-content",""],["class","alert-container",4,"ngIf"],[1,"form-container"],[1,"form-custom-label"],["appearance","outline"],["matInput","","type","text",3,"formControl"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[1,"alert-container"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h2"),h(2),c(),_(3,Zq,5,0,"div",1),d(4,"div",2)(5,"form")(6,"span",3),h(7," Confirm deletion by typing the following below: "),d(8,"b"),h(9),c()(),d(10,"mat-form-field",4)(11,"mat-label"),h(12),c(),E(13,"input",5),c()()()(),d(14,"div",6)(15,"button",7),h(16,"Cancel"),c(),d(17,"button",8),N("click",function(){return i.delete()}),h(18," Confirm "),c()()),2&e&&(f(2),hl("Skip ",i.data.type," (",i.data.name,")?"),f(1),m("ngIf","Index"===i.data.type),f(6),Ee(i.data.name),f(3),Se("",i.data.type==i.ObjectDetailNodeType.Table?"Table":"Index"," Name"),f(1),m("formControl",i.confirmationInput),f(4),m("disabled",!i.confirmationInput.valid))},directives:[wr,Et,_n,xi,Hn,ks,En,Mn,li,Dn,bn,Il,Dr,Ht,Ji],styles:[".alert-container[_ngcontent-%COMP%]{padding:.5rem;display:flex;align-items:center;margin-bottom:1rem;background-color:#f8f4f4}.alert-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#f3b300;margin-right:20px}.form-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%}.buttons-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:flex-end}"]}),t})();function Qq(t,n){if(1&t&&(d(0,"mat-option",12),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function Yq(t,n){1&t&&(d(0,"div")(1,"mat-form-field",2)(2,"mat-label"),h(3,"Length"),c(),E(4,"input",13),c(),E(5,"br"),c())}function Xq(t,n){if(1&t&&(d(0,"mat-option",12),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}let Jq=(()=>{class t{constructor(e,i,o,r){this.formBuilder=e,this.dataService=i,this.dialogRef=o,this.data=r,this.dialect="",this.datatypes=[],this.selectedDatatype="",this.tableId="",this.selectedNull=!0,this.dataTypesWithColLen=di.DataTypes,this.isColumnNullable=[{value:!1,displayName:"No"},{value:!0,displayName:"Yes"}],this.dialect=r.dialect,this.tableId=r.tableId,this.addNewColumnForm=this.formBuilder.group({name:["",[de.required,de.minLength(1),de.maxLength(128),de.pattern("^[a-zA-Z][a-zA-Z0-9_]*$")]],datatype:[],length:["",de.pattern("^[0-9]+$")],isNullable:[]})}ngOnInit(){this.datatypes="google_standard_sql"==this.dialect?cI_GoogleStandardSQL:cI_PostgreSQL}changeValidator(){var e,i;this.addNewColumnForm.controls.length.clearValidators(),"BYTES"===this.selectedDatatype?null===(e=this.addNewColumnForm.get("length"))||void 0===e||e.addValidators([de.required,de.max(di.ByteMaxLength)]):("VARCHAR"===this.selectedDatatype||"STRING"===this.selectedDatatype)&&(null===(i=this.addNewColumnForm.get("length"))||void 0===i||i.addValidators([de.required,de.max(di.StringMaxLength)])),this.addNewColumnForm.controls.length.updateValueAndValidity()}addNewColumn(){let e=this.addNewColumnForm.value,i={Name:e.name,Datatype:this.selectedDatatype,Length:parseInt(e.length),IsNullable:this.selectedNull};this.dataService.addColumn(this.tableId,i),this.dialogRef.close()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-add-new-column"]],decls:26,vars:7,consts:[["mat-dialog-content",""],[1,"add-new-column-form",3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","placeholder","Column Name","type","text","formControlName","name"],["appearance","outline"],["formControlName","datatype","required","true",1,"input-field",3,"ngModel","ngModelChange","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],["formControlName","isNullable","required","true",3,"ngModel","ngModelChange"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[3,"value"],["matInput","","placeholder","Length","type","text","formControlName","length"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Column Details"),c(),d(4,"mat-form-field",2)(5,"mat-label"),h(6,"Name"),c(),E(7,"input",3),c(),E(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"Datatype"),c(),d(12,"mat-select",5),N("ngModelChange",function(r){return i.selectedDatatype=r})("selectionChange",function(){return i.changeValidator()}),_(13,Qq,2,2,"mat-option",6),c()(),E(14,"br"),_(15,Yq,6,0,"div",7),d(16,"mat-form-field",4)(17,"mat-label"),h(18,"IsNullable"),c(),d(19,"mat-select",8),N("ngModelChange",function(r){return i.selectedNull=r}),_(20,Xq,2,2,"mat-option",6),c()()(),d(21,"div",9)(22,"button",10),h(23,"CANCEL"),c(),d(24,"button",11),N("click",function(){return i.addNewColumn()}),h(25," ADD "),c()()()),2&e&&(f(1),m("formGroup",i.addNewColumnForm),f(11),m("ngModel",i.selectedDatatype),f(1),m("ngForOf",i.datatypes),f(2),m("ngIf",i.dataTypesWithColLen.indexOf(i.selectedDatatype)>-1),f(4),m("ngModel",i.selectedNull),f(1),m("ngForOf",i.isColumnNullable),f(4),m("disabled",!i.addNewColumnForm.valid))},directives:[wr,xi,Hn,Sn,En,Mn,li,Dn,bn,Xn,Yi,fo,ri,_i,Et,Dr,Ht,Ji],styles:[""]}),t})();function eK(t,n){1&t&&(d(0,"span"),h(1," To view and modify an object details, click on the object name on the Spanner draft panel. "),c())}function tK(t,n){if(1&t&&(d(0,"span"),h(1),c()),2&t){const e=D(2);f(1),Se(" To view an object details, click on the object name on the ",e.srcDbName," panel. ")}}const Wp=function(t){return[t]};function nK(t,n){if(1&t){const e=pe();d(0,"div",2)(1,"div",3)(2,"h3",4),h(3,"OBJECT VIEWER"),c(),d(4,"button",5),N("click",function(){return se(e),D().middleColumnToggle()}),d(5,"mat-icon",6),h(6,"first_page"),c(),d(7,"mat-icon",6),h(8,"last_page"),c()()(),E(9,"mat-divider"),d(10,"div",7)(11,"div",8),hn(),d(12,"svg",9),E(13,"path",10),c()(),Qs(),d(14,"div",11),_(15,eK,2,0,"span",12),_(16,tK,2,1,"span",12),c()()()}if(2&t){const e=D();f(5),m("ngClass",Kt(4,Wp,e.isMiddleColumnCollapse?"display":"hidden")),f(2),m("ngClass",Kt(6,Wp,e.isMiddleColumnCollapse?"hidden":"display")),f(8),m("ngIf","spanner"==e.currentDatabase),f(1),m("ngIf","source"==e.currentDatabase)}}function iK(t,n){1&t&&(d(0,"mat-icon",23),h(1," table_chart"),c())}function oK(t,n){1&t&&(hn(),d(0,"svg",24),E(1,"path",25),c())}function rK(t,n){if(1&t&&(d(0,"span"),h(1),_s(2,"uppercase"),c()),2&t){const e=D(2);f(1),Se("( TABLE: ",bs(2,1,e.currentObject.parent)," ) ")}}function sK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).dropIndex()}),d(1,"mat-icon"),h(2,"delete"),c(),d(3,"span"),h(4,"SKIP INDEX"),c()()}}function aK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).restoreIndex()}),d(1,"mat-icon"),h(2,"undo"),c(),d(3,"span"),h(4," RESTORE INDEX"),c()()}}function lK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).dropTable()}),d(1,"mat-icon"),h(2,"delete"),c(),d(3,"span"),h(4,"SKIP TABLE"),c()()}}function cK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).restoreSpannerTable()}),d(1,"mat-icon"),h(2,"undo"),c(),d(3,"span"),h(4," RESTORE TABLE"),c()()}}function dK(t,n){if(1&t&&(d(0,"div",27),h(1," Interleaved: "),d(2,"div",28),h(3),c()()),2&t){const e=D(2);f(3),Se(" ",e.interleaveParentName," ")}}function uK(t,n){1&t&&(d(0,"span"),h(1,"COLUMNS "),c())}function hK(t,n){if(1&t&&(d(0,"th",74),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function pK(t,n){1&t&&(d(0,"th",75),h(1,"S No."),c())}function fK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcOrder").value," ")}}function mK(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function gK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColName").value," ")}}function _K(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function bK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcDataType").value," ")}}function vK(t,n){1&t&&(d(0,"th",75),h(1,"Max Length"),c())}function yK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColMaxLength").value," ")}}function CK(t,n){1&t&&(d(0,"th",75),h(1,"Pk"),c())}function wK(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function DK(t,n){if(1&t&&(d(0,"td",76),_(1,wK,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("srcIsPk").value)}}function SK(t,n){1&t&&(d(0,"th",75),h(1,"Nullable"),c())}function MK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcIsNotNull").value?"Not Null":""," ")}}function xK(t,n){1&t&&E(0,"tr",79)}function TK(t,n){1&t&&E(0,"tr",79)}const kK=function(t){return{"scr-column-data-edit-mode":t}};function EK(t,n){if(1&t&&E(0,"tr",80),2&t){const e=D(3);m("ngClass",Kt(1,kK,e.isEditMode))}}function IK(t,n){if(1&t){const e=pe();d(0,"button",84),N("click",function(){return se(e),D(5).toggleEdit()}),d(1,"mat-icon",85),h(2,"edit"),c(),h(3," EDIT "),c()}}function OK(t,n){if(1&t&&(d(0,"div"),_(1,IK,4,0,"button",83),c()),2&t){const e=D(4);f(1),m("ngIf",e.currentObject.isSpannerNode)}}function AK(t,n){if(1&t){const e=pe();d(0,"button",84),N("click",function(){return se(e),D(5).addNewColumn()}),d(1,"mat-icon",85),h(2,"edit"),c(),h(3," ADD COLUMN "),c()}}function PK(t,n){if(1&t&&(d(0,"div"),_(1,AK,4,0,"button",83),c()),2&t){const e=D(4);f(1),m("ngIf",e.currentObject.isSpannerNode)}}function RK(t,n){if(1&t&&(d(0,"th",81)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,OK,2,1,"div",12),_(5,PK,2,1,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isEditMode&&!e.currentObject.isDeleted),f(1),m("ngIf",!e.isEditMode&&!e.currentObject.isDeleted&&!1)}}function FK(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function NK(t,n){if(1&t&&(d(0,"div"),E(1,"input",86),c()),2&t){const e=D().$implicit;let i;f(1),m("formControl",e.get("spColName"))("matTooltipDisabled",!(null!=(i=e.get("spColName"))&&i.hasError("pattern")))}}function LK(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spColName").value)}}function BK(t,n){if(1&t&&(d(0,"td",76),_(1,NK,2,2,"div",12),_(2,LK,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isEditMode&&""!==e.get("spDataType").value&&""!==e.get("srcId").value),f(1),m("ngIf",!i.isEditMode||""===e.get("srcId").value)}}function VK(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function jK(t,n){if(1&t&&(d(0,"span",90),h(1,"warning"),c()),2&t){const e=D().index;m("matTooltip",D(3).spTableSuggestion[e])}}function HK(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayT),f(1),Se(" ",e.DisplayT," ")}}function UK(t,n){1&t&&(d(0,"mat-option",98),h(1," STRING "),c())}function zK(t,n){1&t&&(d(0,"mat-option",99),h(1," VARCHAR "),c())}function $K(t,n){if(1&t){const e=pe();d(0,"mat-form-field",91)(1,"mat-select",92,93),N("selectionChange",function(){se(e);const o=$t(2),r=D().index;return D(3).spTableEditSuggestionHandler(r,o.value)}),_(3,HK,2,2,"mat-option",94),_(4,UK,2,0,"mat-option",95),_(5,zK,2,0,"mat-option",96),c()()}if(2&t){const e=D().$implicit,i=D(3);f(1),m("formControl",e.get("spDataType")),f(2),m("ngForOf",i.typeMap[e.get("srcDataType").value]),f(1),m("ngIf",""==e.get("srcDataType").value&&!i.isPostgreSQLDialect),f(1),m("ngIf",""==e.get("srcDataType").value&&i.isPostgreSQLDialect)}}function GK(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spDataType").value)}}function WK(t,n){if(1&t&&(d(0,"td",76)(1,"div",87),_(2,jK,2,1,"span",88),_(3,$K,6,4,"mat-form-field",89),_(4,GK,2,1,"p",12),c()()),2&t){const e=n.$implicit,i=n.index,o=D(3);f(2),m("ngIf",o.isSpTableSuggesstionDisplay[i]&&""!==e.get("spDataType").value),f(1),m("ngIf",o.isEditMode&&""!==e.get("spDataType").value&&""!==e.get("srcId").value),f(1),m("ngIf",!o.isEditMode||""===e.get("srcId").value)}}function qK(t,n){1&t&&(d(0,"th",75),h(1,"Max Length"),c())}function KK(t,n){if(1&t&&(d(0,"div"),E(1,"input",100),c()),2&t){const e=D(2).$implicit;f(1),m("formControl",e.get("spColMaxLength"))}}function ZK(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D(2).$implicit;f(1),Se(" ",e.get("spColMaxLength").value," ")}}function QK(t,n){if(1&t&&(d(0,"div"),_(1,KK,2,1,"div",12),_(2,ZK,2,1,"p",12),c()),2&t){const e=D().$implicit,i=D(3);f(1),m("ngIf",i.isEditMode&&""!=e.get("srcDataType").value&&e.get("spId").value!==i.shardIdCol),f(1),m("ngIf",!i.isEditMode||e.get("spId").value===i.shardIdCol)}}function YK(t,n){if(1&t&&(d(0,"td",76),_(1,QK,3,2,"div",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.dataTypesWithColLen.indexOf(e.get("spDataType").value)>-1)}}function XK(t,n){1&t&&(d(0,"th",75),h(1,"Pk"),c())}function JK(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function eZ(t,n){if(1&t&&(d(0,"td",76),_(1,JK,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spIsPk").value)}}function tZ(t,n){1&t&&(d(0,"span"),h(1,"Not Null"),c())}function nZ(t,n){1&t&&(d(0,"span"),h(1,"Nullable"),c())}function iZ(t,n){if(1&t&&(d(0,"th",75),_(1,tZ,2,0,"span",12),_(2,nZ,2,0,"span",12),c()),2&t){const e=D(3);f(1),m("ngIf",e.isEditMode),f(1),m("ngIf",!e.isEditMode)}}function oZ(t,n){if(1&t&&(d(0,"div"),E(1,"mat-checkbox",102),c()),2&t){const e=D().$implicit;f(1),m("formControl",e.get("spIsNotNull"))}}function rZ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Se(" ",e.get("spIsNotNull").value?"Not Null":""," ")}}function sZ(t,n){if(1&t&&(d(0,"td",76)(1,"div",101),_(2,oZ,2,1,"div",12),_(3,rZ,2,1,"p",12),c()()),2&t){const e=n.$implicit,i=D(3);f(2),m("ngIf",i.isEditMode&&""!==e.get("spDataType").value&&e.get("spId").value!==i.shardIdCol),f(1),m("ngIf",!i.isEditMode||e.get("spId").value===i.shardIdCol)}}function aZ(t,n){1&t&&E(0,"th",75)}function lZ(t,n){if(1&t){const e=pe();d(0,"div",105)(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",109),N("click",function(){se(e);const o=D().$implicit;return D(3).dropColumn(o)}),d(6,"span"),h(7,"Drop Column"),c()()()()}if(2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}const qp=function(t){return{"drop-button-left-border":t}};function cZ(t,n){if(1&t&&(d(0,"td",103),_(1,lZ,8,1,"div",104),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isEditMode)),f(1),m("ngIf",i.isEditMode&&i.currentObject.isSpannerNode&&""!==e.get("spDataType").value&&e.get("spId").value!==i.shardIdCol)}}function dZ(t,n){1&t&&E(0,"tr",79)}function uZ(t,n){1&t&&E(0,"tr",79)}function hZ(t,n){1&t&&E(0,"tr",110)}function pZ(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function fZ(t,n){if(1&t){const e=pe();d(0,"div",111)(1,"mat-form-field",112)(2,"mat-label"),h(3,"Column Name"),c(),d(4,"mat-select",113),N("selectionChange",function(o){return se(e),D(3).setColumn(o.value)}),_(5,pZ,2,2,"mat-option",94),c()(),d(6,"button",114),N("click",function(){return se(e),D(3).restoreColumn()}),d(7,"mat-icon"),h(8,"add"),c(),h(9," RESTORE COLUMN "),c()()}if(2&t){const e=D(3);m("formGroup",e.addColumnForm),f(5),m("ngForOf",e.droppedSourceColumns)}}function mZ(t,n){1&t&&(d(0,"span"),h(1,"PRIMARY KEY "),c())}function gZ(t,n){if(1&t&&(d(0,"th",115),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function _Z(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",84),N("click",function(){return se(e),D(4).togglePkEdit()}),d(2,"mat-icon",85),h(3,"edit"),c(),h(4," EDIT "),c()()}}function bZ(t,n){if(1&t&&(d(0,"th",74)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,_Z,5,0,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isPkEditMode&&e.pkDataSource.length>0&&e.currentObject.isSpannerNode&&!e.currentObject.isDeleted)}}function vZ(t,n){1&t&&(d(0,"th",75),h(1,"Order"),c())}function yZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcOrder").value," ")}}function CZ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function wZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColName").value," ")}}function DZ(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function SZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcDataType").value," ")}}function MZ(t,n){1&t&&(d(0,"th",75),h(1,"PK"),c())}function xZ(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function TZ(t,n){if(1&t&&(d(0,"td",76),_(1,xZ,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("srcIsPk").value)}}function kZ(t,n){1&t&&(d(0,"th",75),h(1,"Nullable"),c())}function EZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcIsNotNull").value?"Not Null":""," ")}}function IZ(t,n){1&t&&(d(0,"th",75),h(1,"Order"),c())}function OZ(t,n){if(1&t&&(d(0,"div"),E(1,"input",116),c()),2&t){const e=D().$implicit;let i;f(1),m("formControl",e.get("spOrder"))("matTooltipDisabled",!(null!=(i=e.get("spOrder"))&&i.hasError("pattern")))}}function AZ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spOrder").value)}}function PZ(t,n){if(1&t&&(d(0,"td",76),_(1,OZ,2,2,"div",12),_(2,AZ,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isPkEditMode&&""!==e.get("spColName").value),f(1),m("ngIf",!i.isPkEditMode)}}function RZ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function FZ(t,n){if(1&t&&(d(0,"td",76)(1,"p"),h(2),c()()),2&t){const e=n.$implicit;f(2),Ee(e.get("spColName").value)}}function NZ(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function LZ(t,n){if(1&t&&(d(0,"span",90),h(1,"warning"),c()),2&t){const e=D().index;m("matTooltip",D(3).spTableSuggestion[e])}}function BZ(t,n){if(1&t&&(d(0,"td",76)(1,"div",87),_(2,LZ,2,1,"span",88),d(3,"p"),h(4),c()()()),2&t){const e=n.$implicit,i=n.index,o=D(3);f(2),m("ngIf",o.isSpTableSuggesstionDisplay[i]&&""!==e.get("spColName").value),f(2),Ee(e.get("spDataType").value)}}function VZ(t,n){1&t&&(d(0,"th",75),h(1,"Pk"),c())}function jZ(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function HZ(t,n){if(1&t&&(d(0,"td",76),_(1,jZ,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spIsPk").value)}}function UZ(t,n){1&t&&(d(0,"th",75),h(1,"Nullable"),c())}function zZ(t,n){if(1&t&&(d(0,"td",76)(1,"div",101)(2,"p"),h(3),c()()()),2&t){const e=n.$implicit;f(3),Se(" ",e.get("spIsNotNull").value?"Not Null":""," ")}}function $Z(t,n){1&t&&E(0,"th",75)}function GZ(t,n){if(1&t){const e=pe();d(0,"div",105)(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",117),N("click",function(){se(e);const o=D().$implicit;return D(3).dropPk(o)}),d(6,"span"),h(7,"Remove primary key"),c()()()()}if(2&t){const e=$t(4),i=D(4);f(1),m("matMenuTriggerFor",e),f(4),m("disabled",!i.isPkEditMode)}}function WZ(t,n){if(1&t&&(d(0,"td",103),_(1,GZ,8,2,"div",104),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isPkEditMode)),f(1),m("ngIf",i.isPkEditMode&&i.currentObject.isSpannerNode&&""!==e.get("spColName").value)}}function qZ(t,n){1&t&&E(0,"tr",79)}function KZ(t,n){1&t&&E(0,"tr",79)}function ZZ(t,n){1&t&&E(0,"tr",110)}function QZ(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function YZ(t,n){if(1&t){const e=pe();d(0,"div",118)(1,"mat-form-field",112)(2,"mat-label"),h(3,"Column Name"),c(),d(4,"mat-select",113),N("selectionChange",function(o){return se(e),D(3).setPkColumn(o.value)}),_(5,QZ,2,2,"mat-option",94),c()(),d(6,"button",114),N("click",function(){return se(e),D(3).addPkColumn()}),d(7,"mat-icon"),h(8,"add"),c(),h(9," ADD COLUMN "),c()()}if(2&t){const e=D(3);m("formGroup",e.addPkColumnForm),f(5),m("ngForOf",e.pkColumnNames)}}function XZ(t,n){1&t&&(d(0,"span"),h(1,"FOREIGN KEY"),c())}function JZ(t,n){if(1&t&&(d(0,"th",119),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function eQ(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",84),N("click",function(){return se(e),D(4).toggleFkEdit()}),d(2,"mat-icon",85),h(3,"edit"),c(),h(4," EDIT "),c()()}}function tQ(t,n){if(1&t&&(d(0,"th",115)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,eQ,5,0,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isFkEditMode&&e.fkDataSource.length>0&&e.currentObject.isSpannerNode&&!e.currentObject.isDeleted)}}function nQ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function iQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcName").value," ")}}function oQ(t,n){1&t&&(d(0,"th",75),h(1,"Columns"),c())}function rQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColumns").value," ")}}function sQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Table"),c())}function aQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcReferTable").value," ")}}function lQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Columns"),c())}function cQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcReferColumns").value," ")}}function dQ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function uQ(t,n){if(1&t&&(d(0,"div"),E(1,"input",86),c()),2&t){const e=D().$implicit;let i;f(1),m("formControl",e.get("spName"))("matTooltipDisabled",!(null!=(i=e.get("spName"))&&i.hasError("pattern")))}}function hQ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spName").value)}}function pQ(t,n){if(1&t&&(d(0,"td",76),_(1,uQ,2,2,"div",12),_(2,hQ,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isFkEditMode&&""!==e.get("spReferTable").value),f(1),m("ngIf",!i.isFkEditMode)}}function fQ(t,n){1&t&&(d(0,"th",75),h(1,"Columns"),c())}function mQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("spColumns").value," ")}}function gQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Table"),c())}function _Q(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("spReferTable").value," ")}}function bQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Columns"),c())}function vQ(t,n){if(1&t&&(d(0,"td",76)(1,"div",120),h(2),c()()),2&t){const e=n.$implicit;f(2),Se(" ",e.get("spReferColumns").value," ")}}function yQ(t,n){1&t&&E(0,"th",75)}function CQ(t,n){if(1&t){const e=pe();d(0,"button",117),N("click",function(){return se(e),D(5).setInterleave()}),d(1,"span"),h(2,"Convert to interleave"),c()()}2&t&&m("disabled",""===D(2).$implicit.get("spName").value)}function wQ(t,n){if(1&t){const e=pe();d(0,"div",105)(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",117),N("click",function(){se(e);const o=D().$implicit;return D(3).dropFk(o)}),d(6,"span"),h(7,"Drop Foreign Key"),c()(),_(8,CQ,3,1,"button",121),c()()}if(2&t){const e=$t(4),i=D().$implicit,o=D(3);f(1),m("matMenuTriggerFor",e),f(4),m("disabled",""===i.get("spName").value),f(3),m("ngIf",o.interleaveStatus.tableInterleaveStatus&&o.interleaveStatus.tableInterleaveStatus.Possible)}}function DQ(t,n){if(1&t&&(d(0,"td",103),_(1,wQ,9,3,"div",104),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isFkEditMode)),f(1),m("ngIf",i.isFkEditMode&&i.currentObject.isSpannerNode&&""!==e.get("spReferTable").value)}}function SQ(t,n){1&t&&E(0,"tr",79)}function MQ(t,n){1&t&&E(0,"tr",79)}function xQ(t,n){1&t&&E(0,"tr",110)}function TQ(t,n){if(1&t){const e=pe();d(0,"button",125),N("click",function(){return se(e),D(4).setInterleave()}),h(1," Convert to Interleave "),c()}}function kQ(t,n){if(1&t){const e=pe();d(0,"button",125),N("click",function(){return se(e),D(4).removeInterleave()}),h(1," Convert Back to Foreign Key "),c()}}function EQ(t,n){if(1&t&&(d(0,"div"),h(1," This table is interleaved with "),d(2,"span",126),h(3),c(),h(4,". Click on the above button to convert back to foreign key. "),c()),2&t){const e=D(4);f(3),Ee(e.interleaveParentName)}}function IQ(t,n){if(1&t&&(d(0,"mat-tab",122)(1,"div",123),_(2,TQ,2,0,"button",124),_(3,kQ,2,0,"button",124),E(4,"br"),_(5,EQ,5,1,"div",12),c()()),2&t){const e=D(3);f(2),m("ngIf",e.interleaveStatus.tableInterleaveStatus&&e.interleaveStatus.tableInterleaveStatus.Possible&&null===e.interleaveParentName),f(1),m("ngIf",e.interleaveStatus.tableInterleaveStatus&&!e.interleaveStatus.tableInterleaveStatus.Possible||null!==e.interleaveParentName),f(2),m("ngIf",e.interleaveStatus.tableInterleaveStatus&&!e.interleaveStatus.tableInterleaveStatus.Possible||null!==e.interleaveParentName)}}function OQ(t,n){1&t&&(d(0,"span"),h(1,"SQL"),c())}function AQ(t,n){if(1&t&&(d(0,"mat-tab"),_(1,OQ,2,0,"ng-template",30),d(2,"div",127)(3,"pre")(4,"code"),h(5),c()()()()),2&t){const e=D(3);f(5),Ee(e.ddlStmts[e.currentObject.id])}}const PQ=function(t){return{"height-on-edit":t}},RQ=function(){return["srcDatabase"]},FQ=function(){return["spDatabase"]},Lv=function(){return["srcDatabase","spDatabase"]};function NQ(t,n){if(1&t){const e=pe();d(0,"mat-tab-group",29),N("selectedTabChange",function(o){return se(e),D(2).tabChanged(o)}),d(1,"mat-tab"),_(2,uK,2,0,"ng-template",30),d(3,"div",31)(4,"div",32)(5,"table",33),be(6,34),_(7,hK,2,1,"th",35),ve(),be(8,36),_(9,pK,2,0,"th",37),_(10,fK,2,1,"td",38),ve(),be(11,39),_(12,mK,2,0,"th",37),_(13,gK,2,1,"td",38),ve(),be(14,40),_(15,_K,2,0,"th",41),_(16,bK,2,1,"td",38),ve(),be(17,42),_(18,vK,2,0,"th",41),_(19,yK,2,1,"td",38),ve(),be(20,43),_(21,CK,2,0,"th",37),_(22,DK,2,1,"td",38),ve(),be(23,44),_(24,SK,2,0,"th",41),_(25,MK,2,1,"td",38),ve(),_(26,xK,1,0,"tr",45),_(27,TK,1,0,"tr",45),_(28,EK,1,3,"tr",46),c(),d(29,"table",33),be(30,47),_(31,RK,6,2,"th",48),ve(),be(32,49),_(33,FK,2,0,"th",41),_(34,BK,3,2,"td",38),ve(),be(35,50),_(36,VK,2,0,"th",41),_(37,WK,5,3,"td",38),ve(),be(38,51),_(39,qK,2,0,"th",41),_(40,YK,2,1,"td",38),ve(),be(41,52),_(42,XK,2,0,"th",37),_(43,eZ,2,1,"td",38),ve(),be(44,53),_(45,iZ,3,2,"th",41),_(46,sZ,4,2,"td",38),ve(),be(47,54),_(48,aZ,1,0,"th",41),_(49,cZ,2,4,"td",55),ve(),_(50,dZ,1,0,"tr",45),_(51,uZ,1,0,"tr",45),_(52,hZ,1,0,"tr",56),c()(),_(53,fZ,10,2,"div",57),c()(),d(54,"mat-tab"),_(55,mZ,2,0,"ng-template",30),d(56,"div",58)(57,"table",33),be(58,34),_(59,gZ,2,1,"th",59),ve(),be(60,47),_(61,bZ,5,1,"th",35),ve(),be(62,36),_(63,vZ,2,0,"th",37),_(64,yZ,2,1,"td",38),ve(),be(65,39),_(66,CZ,2,0,"th",37),_(67,wZ,2,1,"td",38),ve(),be(68,40),_(69,DZ,2,0,"th",41),_(70,SZ,2,1,"td",38),ve(),be(71,43),_(72,MZ,2,0,"th",37),_(73,TZ,2,1,"td",38),ve(),be(74,44),_(75,kZ,2,0,"th",41),_(76,EZ,2,1,"td",38),ve(),be(77,60),_(78,IZ,2,0,"th",37),_(79,PZ,3,2,"td",38),ve(),be(80,49),_(81,RZ,2,0,"th",41),_(82,FZ,3,1,"td",38),ve(),be(83,50),_(84,NZ,2,0,"th",41),_(85,BZ,5,2,"td",38),ve(),be(86,52),_(87,VZ,2,0,"th",37),_(88,HZ,2,1,"td",38),ve(),be(89,53),_(90,UZ,2,0,"th",41),_(91,zZ,4,1,"td",38),ve(),be(92,54),_(93,$Z,1,0,"th",41),_(94,WZ,2,4,"td",55),ve(),_(95,qZ,1,0,"tr",45),_(96,KZ,1,0,"tr",45),_(97,ZZ,1,0,"tr",56),c(),_(98,YZ,10,2,"div",61),c()(),d(99,"mat-tab"),_(100,XZ,2,0,"ng-template",30),d(101,"div",62)(102,"table",33),be(103,34),_(104,JZ,2,1,"th",63),ve(),be(105,47),_(106,tQ,5,1,"th",59),ve(),be(107,64),_(108,nQ,2,0,"th",37),_(109,iQ,2,1,"td",38),ve(),be(110,65),_(111,oQ,2,0,"th",37),_(112,rQ,2,1,"td",38),ve(),be(113,66),_(114,sQ,2,0,"th",37),_(115,aQ,2,1,"td",38),ve(),be(116,67),_(117,lQ,2,0,"th",37),_(118,cQ,2,1,"td",38),ve(),be(119,68),_(120,dQ,2,0,"th",41),_(121,pQ,3,2,"td",38),ve(),be(122,69),_(123,fQ,2,0,"th",37),_(124,mQ,2,1,"td",38),ve(),be(125,70),_(126,gQ,2,0,"th",37),_(127,_Q,2,1,"td",38),ve(),be(128,71),_(129,bQ,2,0,"th",37),_(130,vQ,3,1,"td",38),ve(),be(131,72),_(132,yQ,1,0,"th",41),_(133,DQ,2,4,"td",55),ve(),_(134,SQ,1,0,"tr",45),_(135,MQ,1,0,"tr",45),_(136,xQ,1,0,"tr",56),c()()(),_(137,IQ,6,3,"mat-tab",73),_(138,AQ,6,1,"mat-tab",12),c()}if(2&t){const e=D(2);m("ngClass",Kt(21,PQ,e.isEditMode||e.isPkEditMode||e.isFkEditMode)),f(5),m("dataSource",e.srcDataSource),f(21),m("matHeaderRowDef",Jo(23,RQ)),f(1),m("matHeaderRowDef",e.srcDisplayedColumns),f(1),m("matRowDefColumns",e.srcDisplayedColumns),f(1),m("dataSource",e.spDataSource),f(21),m("matHeaderRowDef",Jo(24,FQ)),f(1),m("matHeaderRowDef",e.spDisplayedColumns),f(1),m("matRowDefColumns",e.spDisplayedColumns),f(1),m("ngIf",e.isEditMode&&0!=e.droppedSourceColumns.length),f(4),m("dataSource",e.pkDataSource),f(38),m("matHeaderRowDef",Jo(25,Lv)),f(1),m("matHeaderRowDef",e.displayedPkColumns),f(1),m("matRowDefColumns",e.displayedPkColumns),f(1),m("ngIf",e.isPkEditMode),f(4),m("dataSource",e.fkDataSource),f(32),m("matHeaderRowDef",Jo(26,Lv)),f(1),m("matHeaderRowDef",e.displayedFkColumns),f(1),m("matRowDefColumns",e.displayedFkColumns),f(1),m("ngIf",(e.interleaveStatus.tableInterleaveStatus&&e.interleaveStatus.tableInterleaveStatus.Possible||null!==e.interleaveParentName)&&e.currentObject.isSpannerNode),f(1),m("ngIf",e.currentObject.isSpannerNode&&!e.currentObject.isDeleted)}}function LQ(t,n){if(1&t&&(d(0,"th",138),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function BQ(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",84),N("click",function(){return se(e),D(4).toggleIndexEdit()}),d(2,"mat-icon",85),h(3,"edit"),c(),h(4," EDIT "),c()()}}function VQ(t,n){if(1&t&&(d(0,"th",119)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,BQ,5,0,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isIndexEditMode&&!e.currentObject.isDeleted&&e.currentObject.isSpannerNode)}}function jQ(t,n){1&t&&(d(0,"th",75),h(1,"Column"),c())}function HQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColName").value," ")}}function UQ(t,n){1&t&&(d(0,"th",75),h(1,"Sort By"),c())}function zQ(t,n){1&t&&(d(0,"p"),h(1,"Desc"),c())}function $Q(t,n){1&t&&(d(0,"p"),h(1,"Asc"),c())}function GQ(t,n){if(1&t&&(d(0,"td",76),_(1,zQ,2,0,"p",12),_(2,$Q,2,0,"p",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("srcDesc").value),f(1),m("ngIf",!1===e.get("srcDesc").value)}}function WQ(t,n){1&t&&(d(0,"th",75),h(1,"Column Order"),c())}function qQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcOrder").value," ")}}function KQ(t,n){1&t&&(d(0,"th",75),h(1,"Column"),c())}function ZQ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spColName").value)}}function QQ(t,n){if(1&t&&(d(0,"td",76),_(1,ZQ,2,1,"p",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spColName").value)}}function YQ(t,n){1&t&&(d(0,"th",75),h(1,"Sort By"),c())}function XQ(t,n){1&t&&(d(0,"p"),h(1,"Desc"),c())}function JQ(t,n){1&t&&(d(0,"p"),h(1,"Asc"),c())}function eY(t,n){if(1&t&&(d(0,"td",76),_(1,XQ,2,0,"p",12),_(2,JQ,2,0,"p",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spDesc").value),f(1),m("ngIf",!1===e.get("spDesc").value)}}function tY(t,n){1&t&&(d(0,"th",75),h(1,"Column Order"),c())}function nY(t,n){if(1&t&&(d(0,"div"),E(1,"input",139),c()),2&t){const e=D().$implicit;f(1),m("formControl",e.get("spOrder"))}}function iY(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spOrder").value)}}function oY(t,n){if(1&t&&(d(0,"td",76),_(1,nY,2,1,"div",12),_(2,iY,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isIndexEditMode&&e.get("spColName").value),f(1),m("ngIf",!i.isIndexEditMode)}}function rY(t,n){1&t&&E(0,"th",75)}function sY(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",109),N("click",function(){se(e);const o=D().index;return D(3).dropIndexKey(o)}),d(6,"span"),h(7,"Drop Index Key"),c()()()()}if(2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}function aY(t,n){if(1&t&&(d(0,"td",103),_(1,sY,8,1,"div",12),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isIndexEditMode)),f(1),m("ngIf",i.isIndexEditMode&&e.get("spColName").value)}}function lY(t,n){1&t&&E(0,"tr",79)}function cY(t,n){1&t&&E(0,"tr",79)}function dY(t,n){1&t&&E(0,"tr",140)}function uY(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function hY(t,n){if(1&t){const e=pe();d(0,"div",141)(1,"mat-form-field",142)(2,"mat-label"),h(3,"Column Name"),c(),d(4,"mat-select",143),_(5,uY,2,2,"mat-option",94),c()(),d(6,"mat-form-field",144)(7,"mat-label"),h(8,"Sort By"),c(),d(9,"mat-select",145)(10,"mat-option",146),h(11,"Ascending"),c(),d(12,"mat-option",147),h(13,"Descending"),c()()(),d(14,"button",148),N("click",function(){return se(e),D(3).addIndexKey()}),d(15,"mat-icon"),h(16,"add"),c(),d(17,"span"),h(18," ADD COLUMN"),c()()()}if(2&t){const e=D(3);m("formGroup",e.addIndexKeyForm),f(5),m("ngForOf",e.indexColumnNames),f(9),m("disabled",!e.addIndexKeyForm.valid)}}function pY(t,n){if(1&t&&(d(0,"div",128)(1,"table",33),be(2,34),_(3,LQ,2,1,"th",129),ve(),be(4,47),_(5,VQ,5,1,"th",63),ve(),be(6,130),_(7,jQ,2,0,"th",37),_(8,HQ,2,1,"td",38),ve(),be(9,131),_(10,UQ,2,0,"th",41),_(11,GQ,3,2,"td",38),ve(),be(12,132),_(13,WQ,2,0,"th",37),_(14,qQ,2,1,"td",38),ve(),be(15,133),_(16,KQ,2,0,"th",41),_(17,QQ,2,1,"td",38),ve(),be(18,134),_(19,YQ,2,0,"th",41),_(20,eY,3,2,"td",38),ve(),be(21,135),_(22,tY,2,0,"th",37),_(23,oY,3,2,"td",38),ve(),be(24,54),_(25,rY,1,0,"th",41),_(26,aY,2,4,"td",55),ve(),_(27,lY,1,0,"tr",45),_(28,cY,1,0,"tr",45),_(29,dY,1,0,"tr",136),c(),_(30,hY,19,3,"div",137),c()),2&t){const e=D(2);f(1),m("dataSource",e.spDataSource),f(26),m("matHeaderRowDef",Jo(5,Lv)),f(1),m("matHeaderRowDef",e.indexDisplayedColumns),f(1),m("matRowDefColumns",e.indexDisplayedColumns),f(1),m("ngIf",e.isIndexEditMode&&e.indexColumnNames.length>0)}}function fY(t,n){1&t&&E(0,"mat-divider")}function mY(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).toggleEdit()}),h(1," CANCEL "),c()}}function gY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",150),N("click",function(){return se(e),D(2).saveColumnTable()}),h(2," SAVE & CONVERT "),c(),_(3,mY,2,0,"button",151),c()}if(2&t){const e=D(2);f(1),m("disabled",!e.spRowArray.valid),f(2),m("ngIf",e.currentObject.isSpannerNode)}}function _Y(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).togglePkEdit()}),h(1," CANCEL "),c()}}function bY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",150),N("click",function(){return se(e),D(2).savePk()}),h(2," SAVE & CONVERT "),c(),_(3,_Y,2,0,"button",151),c()}if(2&t){const e=D(2);f(1),m("disabled",!e.pkArray.valid),f(2),m("ngIf",e.currentObject.isSpannerNode)}}function vY(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).toggleFkEdit()}),h(1," CANCEL "),c()}}function yY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",125),N("click",function(){return se(e),D(2).saveFk()}),h(2,"SAVE & CONVERT"),c(),_(3,vY,2,0,"button",151),c()}if(2&t){const e=D(2);f(3),m("ngIf",e.currentObject.isSpannerNode)}}function CY(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).toggleIndexEdit()}),h(1," CANCEL "),c()}}function wY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",125),N("click",function(){return se(e),D(2).saveIndex()}),h(2,"SAVE & CONVERT"),c(),_(3,CY,2,0,"button",151),c()}if(2&t){const e=D(2);f(3),m("ngIf",e.currentObject.isSpannerNode)}}function DY(t,n){if(1&t){const e=pe();d(0,"div",13)(1,"div",3)(2,"span")(3,"h3",4),_(4,iK,2,0,"mat-icon",14),_(5,oK,2,0,"svg",15),d(6,"span",16),h(7),c(),_(8,rK,3,3,"span",12),_(9,sK,5,0,"button",17),_(10,aK,5,0,"button",17),_(11,lK,5,0,"button",17),_(12,cK,5,0,"button",17),c(),_(13,dK,4,1,"div",18),c(),d(14,"button",5),N("click",function(){return se(e),D().middleColumnToggle()}),d(15,"mat-icon",6),h(16,"first_page"),c(),d(17,"mat-icon",6),h(18,"last_page"),c()()(),_(19,NQ,139,27,"mat-tab-group",19),_(20,pY,31,6,"div",20),d(21,"div",21),_(22,fY,1,0,"mat-divider",12),_(23,gY,4,2,"div",22),_(24,bY,4,2,"div",22),_(25,yY,4,1,"div",22),_(26,wY,4,1,"div",22),c()()}if(2&t){const e=D();f(4),m("ngIf",e.currentObject.type===e.ObjectExplorerNodeType.Table),f(1),m("ngIf",e.currentObject.type===e.ObjectExplorerNodeType.Index),f(2),Ee(" "+e.currentObject.name+" "),f(1),m("ngIf",""!=e.currentObject.parent),f(1),m("ngIf",e.currentObject.isSpannerNode&&!e.currentObject.isDeleted&&"indexName"===e.currentObject.type),f(1),m("ngIf",e.currentObject.isSpannerNode&&e.currentObject.isDeleted&&e.currentObject.type==e.ObjectExplorerNodeType.Index),f(1),m("ngIf",e.currentObject.isSpannerNode&&"indexName"!==e.currentObject.type&&!e.currentObject.isDeleted),f(1),m("ngIf",e.currentObject.isSpannerNode&&e.currentObject.isDeleted&&e.currentObject.type==e.ObjectExplorerNodeType.Table),f(1),m("ngIf",e.interleaveParentName&&e.currentObject.isSpannerNode),f(2),m("ngClass",Kt(18,Wp,e.isMiddleColumnCollapse?"display":"hidden")),f(2),m("ngClass",Kt(20,Wp,e.isMiddleColumnCollapse?"hidden":"display")),f(2),m("ngIf","tableName"===e.currentObject.type),f(1),m("ngIf","indexName"===e.currentObject.type),f(2),m("ngIf",e.isEditMode||e.isPkEditMode||e.isFkEditMode),f(1),m("ngIf",e.isEditMode&&0===e.currentTabIndex),f(1),m("ngIf",e.isPkEditMode&&1===e.currentTabIndex),f(1),m("ngIf",e.isFkEditMode&&2===e.currentTabIndex),f(1),m("ngIf",e.isIndexEditMode&&-1===e.currentTabIndex)}}let SY=(()=>{class t{constructor(e,i,o,r,s,a){this.data=e,this.dialog=i,this.snackbar=o,this.conversion=r,this.sidenav=s,this.tableUpdatePubSub=a,this.currentObject=null,this.typeMap={},this.defaultTypeMap={},this.ddlStmts={},this.fkData=[],this.tableData=[],this.currentDatabase="spanner",this.indexData=[],this.srcDbName=localStorage.getItem(In.SourceDbName),this.updateSidebar=new Pe,this.ObjectExplorerNodeType=Qt,this.conv={},this.interleaveParentName=null,this.localTableData=[],this.localIndexData=[],this.isMiddleColumnCollapse=!1,this.isPostgreSQLDialect=!1,this.srcDisplayedColumns=["srcOrder","srcColName","srcDataType","srcColMaxLength","srcIsPk","srcIsNotNull"],this.spDisplayedColumns=["spColName","spDataType","spColMaxLength","spIsPk","spIsNotNull","dropButton"],this.displayedFkColumns=["srcName","srcColumns","srcReferTable","srcReferColumns","spName","spColumns","spReferTable","spReferColumns","dropButton"],this.displayedPkColumns=["srcOrder","srcColName","srcDataType","srcIsPk","srcIsNotNull","spOrder","spColName","spDataType","spIsPk","spIsNotNull","dropButton"],this.indexDisplayedColumns=["srcIndexColName","srcSortBy","srcIndexOrder","spIndexColName","spSortBy","spIndexOrder","dropButton"],this.spDataSource=[],this.srcDataSource=[],this.fkDataSource=[],this.pkDataSource=[],this.pkData=[],this.isPkEditMode=!1,this.isEditMode=!1,this.isFkEditMode=!1,this.isIndexEditMode=!1,this.isObjectSelected=!1,this.srcRowArray=new po([]),this.spRowArray=new po([]),this.pkArray=new po([]),this.fkArray=new po([]),this.isSpTableSuggesstionDisplay=[],this.spTableSuggestion=[],this.currentTabIndex=0,this.addedColumnName="",this.droppedColumns=[],this.droppedSourceColumns=[],this.pkColumnNames=[],this.indexColumnNames=[],this.shardIdCol="",this.addColumnForm=new an({columnName:new X("",[de.required])}),this.addIndexKeyForm=new an({columnName:new X("",[de.required]),ascOrDesc:new X("",[de.required])}),this.addedPkColumnName="",this.addPkColumnForm=new an({columnName:new X("",[de.required])}),this.pkObj={},this.dataTypesWithColLen=di.DataTypes}ngOnInit(){this.data.conv.subscribe({next:e=>{this.conv=e,this.isPostgreSQLDialect="postgresql"===this.conv.SpDialect}})}ngOnChanges(e){var i,o,r,s,a,l,u,p;this.fkData=(null===(i=e.fkData)||void 0===i?void 0:i.currentValue)||this.fkData,this.currentObject=(null===(o=e.currentObject)||void 0===o?void 0:o.currentValue)||this.currentObject,this.tableData=(null===(r=e.tableData)||void 0===r?void 0:r.currentValue)||this.tableData,this.indexData=(null===(s=e.indexData)||void 0===s?void 0:s.currentValue)||this.indexData,this.currentDatabase=(null===(a=e.currentDatabase)||void 0===a?void 0:a.currentValue)||this.currentDatabase,this.currentTabIndex=(null===(l=this.currentObject)||void 0===l?void 0:l.type)===Qt.Table?0:-1,this.isObjectSelected=!!this.currentObject,this.pkData=this.conversion.getPkMapping(this.tableData),this.interleaveParentName=this.getInterleaveParentFromConv(),this.isEditMode=!1,this.isFkEditMode=!1,this.isIndexEditMode=!1,this.isPkEditMode=!1,this.srcRowArray=new po([]),this.spRowArray=new po([]),this.droppedColumns=[],this.droppedSourceColumns=[],this.pkColumnNames=[],this.interleaveParentName=this.getInterleaveParentFromConv(),this.localTableData=JSON.parse(JSON.stringify(this.tableData)),this.localIndexData=JSON.parse(JSON.stringify(this.indexData)),(null===(u=this.currentObject)||void 0===u?void 0:u.type)===Qt.Table?(this.checkIsInterleave(),this.interleaveObj=this.data.tableInterleaveStatus.subscribe(g=>{this.interleaveStatus=g}),this.setSrcTableRows(),this.setSpTableRows(),this.setColumnsToAdd(),this.setAddPkColumnList(),this.setPkOrder(),this.setPkRows(),this.setFkRows(),this.updateSpTableSuggestion(),this.setShardIdColumn()):(null===(p=this.currentObject)||void 0===p?void 0:p.type)===Qt.Index&&(this.indexOrderValidation(),this.setIndexRows()),this.data.getSummary()}setSpTableRows(){this.spRowArray=new po([]),this.localTableData.forEach(e=>{var i,o,r,s;if(e.spOrder){let a=new an({srcOrder:new X(e.srcOrder),srcColName:new X(e.srcColName),srcDataType:new X(e.srcDataType),srcIsPk:new X(e.srcIsPk),srcIsNotNull:new X(e.srcIsNotNull),srcColMaxLength:new X(e.srcColMaxLength),spOrder:new X(e.srcOrder),spColName:new X(e.spColName,[de.required,de.pattern("^[a-zA-Z]([a-zA-Z0-9/_]*[a-zA-Z0-9])?")]),spDataType:new X(e.spDataType),spIsPk:new X(e.spIsPk),spIsNotNull:new X(e.spIsNotNull),spId:new X(e.spId),srcId:new X(e.srcId),spColMaxLength:new X(e.spColMaxLength,[de.required])});this.dataTypesWithColLen.indexOf(e.spDataType.toString())>-1?(null===(i=a.get("spColMaxLength"))||void 0===i||i.setValidators([de.required,de.pattern("([1-9][0-9]*|MAX)")]),void 0===e.spColMaxLength?null===(o=a.get("spColMaxLength"))||void 0===o||o.setValue("MAX"):"MAX"!==e.spColMaxLength&&(("STRING"===e.spDataType||"VARCHAR"===e.spDataType)&&e.spColMaxLength>di.StringMaxLength?null===(r=a.get("spColMaxLength"))||void 0===r||r.setValue("MAX"):"BYTES"===e.spDataType&&e.spColMaxLength>di.ByteMaxLength&&(null===(s=a.get("spColMaxLength"))||void 0===s||s.setValue("MAX")))):a.controls.spColMaxLength.clearValidators(),a.controls.spColMaxLength.updateValueAndValidity(),this.spRowArray.push(a)}}),this.spDataSource=this.spRowArray.controls}setSrcTableRows(){this.srcRowArray=new po([]),this.localTableData.forEach(e=>{this.srcRowArray.push(new an(""!=e.spColName?{srcOrder:new X(e.srcOrder),srcColName:new X(e.srcColName),srcDataType:new X(e.srcDataType),srcIsPk:new X(e.srcIsPk),srcIsNotNull:new X(e.srcIsNotNull),srcColMaxLength:new X(e.srcColMaxLength),spOrder:new X(e.spOrder),spColName:new X(e.spColName),spDataType:new X(e.spDataType),spIsPk:new X(e.spIsPk),spIsNotNull:new X(e.spIsNotNull),spId:new X(e.spId),srcId:new X(e.srcId),spColMaxLength:new X(e.spColMaxLength)}:{srcOrder:new X(e.srcOrder),srcColName:new X(e.srcColName),srcDataType:new X(e.srcDataType),srcIsPk:new X(e.srcIsPk),srcIsNotNull:new X(e.srcIsNotNull),srcColMaxLength:new X(e.srcColMaxLength),spOrder:new X(e.srcOrder),spColName:new X(e.srcColName),spDataType:new X(this.defaultTypeMap[e.srcDataType].Name),spIsPk:new X(e.srcIsPk),spIsNotNull:new X(e.srcIsNotNull),spColMaxLength:new X(e.srcColMaxLength)}))}),this.srcDataSource=this.srcRowArray.controls}setColumnsToAdd(){this.localTableData.forEach(e=>{e.spColName||this.srcRowArray.value.forEach(i=>{e.srcColName==i.srcColName&&""!=i.srcColName&&(this.droppedColumns.push(i),this.droppedSourceColumns.push(i.srcColName))})})}toggleEdit(){this.currentTabIndex=0,this.isEditMode?(this.localTableData=JSON.parse(JSON.stringify(this.tableData)),this.setSpTableRows(),this.isEditMode=!1):this.isEditMode=!0}saveColumnTable(){this.isEditMode=!1;let i,e={UpdateCols:{}};this.conversion.pgSQLToStandardTypeTypeMap.subscribe(o=>{i=o}),this.spRowArray.value.forEach((o,r)=>{for(let s=0;sdi.StringMaxLength||"BYTES"===o.spDataType&&o.spColMaxLength>di.ByteMaxLength)&&(o.spColMaxLength="MAX"),"number"==typeof o.spColMaxLength&&(o.spColMaxLength=o.spColMaxLength.toString()),"STRING"!=o.spDataType&&"BYTES"!=o.spDataType&&"VARCHAR"!=o.spDataType&&(o.spColMaxLength=""),o.srcId==this.tableData[s].srcId&&""!=this.tableData[s].srcId){e.UpdateCols[this.tableData[s].srcId]={Add:""==this.tableData[s].spId,Rename:a.spColName!==o.spColName?o.spColName:"",NotNull:o.spIsNotNull?"ADDED":"REMOVED",Removed:!1,ToType:"postgresql"===this.conv.SpDialect?void 0===l?o.spDataType:l:o.spDataType,MaxColLength:o.spColMaxLength};break}o.spId==this.tableData[s].spId&&(e.UpdateCols[this.tableData[s].spId]={Add:""==this.tableData[s].spId,Rename:a.spColName!==o.spColName?o.spColName:"",NotNull:o.spIsNotNull?"ADDED":"REMOVED",Removed:!1,ToType:"postgresql"===this.conv.SpDialect?void 0===l?o.spDataType:l:o.spDataType,MaxColLength:o.spColMaxLength})}}),this.droppedColumns.forEach(o=>{e.UpdateCols[o.spId]={Add:!1,Rename:"",NotNull:"",Removed:!0,ToType:"",MaxColLength:""}}),this.data.reviewTableUpdate(this.currentObject.id,e).subscribe({next:o=>{""==o?(this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("reviewChanges"),this.tableUpdatePubSub.setTableUpdateDetail({tableName:this.currentObject.name,tableId:this.currentObject.id,updateDetail:e}),this.isEditMode=!0):(this.dialog.open(jo,{data:{message:o,type:"error"},maxWidth:"500px"}),this.isEditMode=!0)}})}addNewColumn(){var e;this.dialog.open(Jq,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{dialect:this.conv.SpDialect,tableId:null===(e=this.currentObject)||void 0===e?void 0:e.id}})}setColumn(e){this.addedColumnName=e}restoreColumn(){let e=this.tableData.map(r=>r.srcColName).indexOf(this.addedColumnName),i=this.droppedColumns.map(r=>r.srcColName).indexOf(this.addedColumnName);this.localTableData[e].spColName=this.droppedColumns[i].spColName,this.localTableData[e].spDataType=this.droppedColumns[i].spDataType,this.localTableData[e].spOrder=-1,this.localTableData[e].spIsPk=this.droppedColumns[i].spIsPk,this.localTableData[e].spIsNotNull=this.droppedColumns[i].spIsNotNull,this.localTableData[e].spColMaxLength=this.droppedColumns[i].spColMaxLength;let o=this.droppedColumns.map(r=>r.spColName).indexOf(this.addedColumnName);o>-1&&(this.droppedColumns.splice(o,1),this.droppedSourceColumns.indexOf(this.addedColumnName)>-1&&this.droppedSourceColumns.splice(this.droppedSourceColumns.indexOf(this.addedColumnName),1)),this.setSpTableRows()}dropColumn(e){let i=e.get("srcColName").value,o=e.get("srcId").value,r=e.get("spId").value,s=""!=o?o:r,a=e.get("spColName").value,l=this.getAssociatedIndexs(s);if(this.checkIfPkColumn(s)||0!=l.length){let u="",p="",g="";this.checkIfPkColumn(s)&&(u=" Primary key"),0!=l.length&&(p=` Index ${l}`),""!=u&&""!=p&&(g=" and"),this.dialog.open(jo,{data:{message:`Column ${a} is a part of${u}${g}${p}. Remove the dependencies from respective tabs before dropping the Column. `,type:"error"},maxWidth:"500px"})}else this.spRowArray.value.forEach((u,p)=>{u.spId===r&&this.droppedColumns.push(u)}),this.dropColumnFromUI(r),""!==i&&this.droppedSourceColumns.push(i)}checkIfPkColumn(e){let i=!1;return null!=this.conv.SpSchema[this.currentObject.id].PrimaryKeys&&this.conv.SpSchema[this.currentObject.id].PrimaryKeys.map(o=>o.ColId).includes(e)&&(i=!0),i}setShardIdColumn(){void 0!==this.conv.SpSchema[this.currentObject.id]&&(this.shardIdCol=this.conv.SpSchema[this.currentObject.id].ShardIdColumn)}getAssociatedIndexs(e){let i=[];return null!=this.conv.SpSchema[this.currentObject.id].Indexes&&this.conv.SpSchema[this.currentObject.id].Indexes.forEach(o=>{o.Keys.map(r=>r.ColId).includes(e)&&i.push(o.Name)}),i}dropColumnFromUI(e){this.localTableData.forEach((i,o)=>{i.spId==e&&(i.spColName="",i.spDataType="",i.spIsNotNull=!1,i.spIsPk=!1,i.spOrder="",i.spColMaxLength="")}),this.setSpTableRows()}updateSpTableSuggestion(){this.isSpTableSuggesstionDisplay=[],this.spTableSuggestion=[],this.localTableData.forEach(e=>{var i;const r=e.spDataType;let s="";null===(i=this.typeMap[e.srcDataType])||void 0===i||i.forEach(a=>{r==a.DiplayT&&(s=a.Brief)}),this.isSpTableSuggesstionDisplay.push(""!==s),this.spTableSuggestion.push(s)})}spTableEditSuggestionHandler(e,i){let r="";this.typeMap[this.localTableData[e].srcDataType].forEach(s=>{i==s.T&&(r=s.Brief)}),this.isSpTableSuggesstionDisplay[e]=""!==r,this.spTableSuggestion[e]=r}setPkRows(){this.pkArray=new po([]),this.pkOrderValidation();var e=new Array,i=new Array;this.pkData.forEach(o=>{o.srcIsPk&&e.push({srcColName:o.srcColName,srcDataType:o.srcDataType,srcIsNotNull:o.srcIsNotNull,srcIsPk:o.srcIsPk,srcOrder:o.srcOrder,srcId:o.srcId}),o.spIsPk&&i.push({spColName:o.spColName,spDataType:o.spDataType,spIsNotNull:o.spIsNotNull,spIsPk:o.spIsPk,spOrder:o.spOrder,spId:o.spId})}),i.sort((o,r)=>o.spOrder-r.spOrder);for(let o=0;oMath.min(e.length,i.length))for(let o=Math.min(e.length,i.length);oMath.min(e.length,i.length))for(let o=Math.min(e.length,i.length);or.spColName).indexOf(this.addedPkColumnName),i=this.localTableData[e],o=1;this.localTableData[e].spIsPk=!0,this.pkData=[],this.pkData=this.conversion.getPkMapping(this.localTableData),e=this.pkData.findIndex(r=>r.srcId===i.srcId||r.spId==i.spId),this.pkArray.value.forEach(r=>{r.spIsPk&&(o+=1);for(let s=0;s{i.spIsPk&&e.push(i.spColName)});for(let i=0;i{var r;if(this.pkData[o].spId===this.conv.SpSchema[this.currentObject.id].PrimaryKeys[o].ColId)this.pkData[o].spOrder=this.conv.SpSchema[this.currentObject.id].PrimaryKeys[o].Order;else{let s=this.conv.SpSchema[this.currentObject.id].PrimaryKeys.map(a=>a.ColId).indexOf(i.spId);i.spOrder=null===(r=this.conv.SpSchema[this.currentObject.id].PrimaryKeys[s])||void 0===r?void 0:r.Order}}):this.pkData.forEach((i,o)=>{var r,s;let a=null===(r=this.conv.SpSchema[this.currentObject.id])||void 0===r?void 0:r.PrimaryKeys.map(l=>l.ColId).indexOf(i.spId);-1!==a&&(i.spOrder=null===(s=this.conv.SpSchema[this.currentObject.id])||void 0===s?void 0:s.PrimaryKeys[a].Order)})}pkOrderValidation(){let e=this.pkData.filter(i=>i.spIsPk).map(i=>Number(i.spOrder));if(e.sort((i,o)=>i-o),e[e.length-1]>e.length&&e.forEach((i,o)=>{this.pkData.forEach(r=>{r.spOrder==i&&(r.spOrder=o+1)})}),0==e[0]&&e[e.length-1]<=e.length){let i;for(let o=0;o{o.spOrder{o.spIsPk&&i.push({ColId:o.spId,Desc:void 0!==this.conv.SpSchema[this.currentObject.id].PrimaryKeys.find(({ColId:r})=>r===o.spId)&&this.conv.SpSchema[this.currentObject.id].PrimaryKeys.find(({ColId:r})=>r===o.spId).Desc,Order:parseInt(o.spOrder)})}),this.pkObj.TableId=e,this.pkObj.Columns=i}togglePkEdit(){this.currentTabIndex=1,this.isPkEditMode?(this.localTableData=JSON.parse(JSON.stringify(this.tableData)),this.pkData=this.conversion.getPkMapping(this.tableData),this.setAddPkColumnList(),this.setPkOrder(),this.setPkRows(),this.isPkEditMode=!1):this.isPkEditMode=!0}savePk(){var e,i,o;if(this.pkArray.value.forEach(r=>{for(let s=0;s{a&&this.data.removeInterleave(""!=this.conv.SpSchema[this.currentObject.id].ParentId?this.currentObject.id:this.conv.SpSchema[r].Id).pipe(Ot(1)).subscribe(u=>{this.updatePk()})}):this.updatePk()}}updatePk(){this.isPkEditMode=!1,this.data.updatePk(this.pkObj).subscribe({next:e=>{""==e?this.isEditMode=!1:(this.dialog.open(jo,{data:{message:e,type:"error"},maxWidth:"500px"}),this.isPkEditMode=!0)}})}dropPk(e){let i=this.localTableData.map(s=>s.spColName).indexOf(e.value.spColName);this.localTableData[i].spId==(this.conv.SyntheticPKeys[this.currentObject.id]?this.conv.SyntheticPKeys[this.currentObject.id].ColId:"")?this.dialog.open(jo,{data:{message:"Removing this synthetic id column from primary key will drop the column from the table",title:"Confirm removal of synthetic id",type:"warning"},maxWidth:"500px"}).afterClosed().subscribe(a=>{a&&this.dropPkHelper(i,e.value.spOrder)}):this.dropPkHelper(i,e.value.spOrder)}dropPkHelper(e,i){this.localTableData[e].spIsPk=!1,this.pkData=[],this.pkData=this.conversion.getPkMapping(this.localTableData),this.pkArray.value.forEach(o=>{for(let r=0;r{o.spOrder>i&&(o.spOrder=Number(o.spOrder)-1)}),this.setAddPkColumnList(),this.setPkRows()}setFkRows(){this.fkArray=new po([]);var e=new Array,i=new Array;this.fkData.forEach(o=>{e.push({srcName:o.srcName,srcColumns:o.srcColumns,srcRefTable:o.srcReferTable,srcRefColumns:o.srcReferColumns,Id:o.srcFkId}),""!=o.spName&&i.push({spName:o.spName,spColumns:o.spColumns,spRefTable:o.spReferTable,spRefColumns:o.spReferColumns,Id:o.spFkId,spColIds:o.spColIds,spReferColumnIds:o.spReferColumnIds,spReferTableId:o.spReferTableId})});for(let o=0;oMath.min(e.length,i.length))for(let o=Math.min(e.length,i.length);o{e.push({Name:i.spName,ColIds:i.spColIds,ReferTableId:i.spReferTableId,ReferColumnIds:i.spReferColumnIds,Id:i.spFkId})}),this.data.updateFkNames(this.currentObject.id,e).subscribe({next:i=>{""==i?this.isFkEditMode=!1:this.dialog.open(jo,{data:{message:i,type:"error"},maxWidth:"500px"})}})}dropFk(e){this.fkData.forEach(i=>{i.spName==e.get("spName").value&&(i.spName="",i.spColumns=[],i.spReferTable="",i.spReferColumns=[],i.spColIds=[],i.spReferColumnIds=[],i.spReferTableId="")}),this.setFkRows()}getRemovedFkIndex(e){let i=-1;return this.fkArray.value.forEach((o,r)=>{o.spName===e.get("spName").value&&(i=r)}),i}removeInterleave(){this.data.removeInterleave(this.currentObject.id).pipe(Ot(1)).subscribe(i=>{""===i&&this.snackbar.openSnackBar("Interleave removed and foreign key restored successfully","Close",5)})}checkIsInterleave(){var e,i;this.currentObject&&!(null===(e=this.currentObject)||void 0===e?void 0:e.isDeleted)&&(null===(i=this.currentObject)||void 0===i?void 0:i.isSpannerNode)&&this.data.getInterleaveConversionForATable(this.currentObject.id)}setInterleave(){this.data.setInterleave(this.currentObject.id)}getInterleaveParentFromConv(){var e,i;return(null===(e=this.currentObject)||void 0===e?void 0:e.type)===Qt.Table&&this.currentObject.isSpannerNode&&!this.currentObject.isDeleted&&""!=this.conv.SpSchema[this.currentObject.id].ParentId?null===(i=this.conv.SpSchema[this.conv.SpSchema[this.currentObject.id].ParentId])||void 0===i?void 0:i.Name:null}setIndexRows(){var e,i;this.spRowArray=new po([]);const o=this.localIndexData.map(r=>r.spColName?r.spColName:"").filter(r=>""!=r);this.indexColumnNames=null===(i=null===(e=this.conv.SpSchema[this.currentObject.parentId])||void 0===e?void 0:e.ColIds)||void 0===i?void 0:i.filter(r=>{var s,a;return!o.includes(null===(a=null===(s=this.conv.SpSchema[this.currentObject.parentId])||void 0===s?void 0:s.ColDefs[r])||void 0===a?void 0:a.Name)}).map(r=>{var s,a;return null===(a=null===(s=this.conv.SpSchema[this.currentObject.parentId])||void 0===s?void 0:s.ColDefs[r])||void 0===a?void 0:a.Name}),this.localIndexData.forEach(r=>{this.spRowArray.push(new an({srcOrder:new X(r.srcOrder),srcColName:new X(r.srcColName),srcDesc:new X(r.srcDesc),spOrder:new X(r.spOrder),spColName:new X(r.spColName,[de.required,de.pattern("^[a-zA-Z]([a-zA-Z0-9/_]*[a-zA-Z0-9])?")]),spDesc:new X(r.spDesc)}))}),this.spDataSource=this.spRowArray.controls}setIndexOrder(){this.spRowArray.value.forEach(e=>{for(let i=0;i""!=i.spColName).map(i=>Number(i.spOrder));if(e.sort((i,o)=>i-o),e[e.length-1]>e.length&&e.forEach((i,o)=>{this.localIndexData.forEach(r=>{""!=r.spColName&&r.spOrder==i&&(r.spOrder=o+1)})}),0==e[0]&&e[e.length-1]<=e.length){let i;for(let o=0;o{o.spOrder!!s.spColId).map(s=>({ColId:s.spColId,Desc:s.spDesc,Order:s.spOrder})),Id:this.currentObject.id}),0==r[0].Keys.length?this.dropIndex():(this.data.updateIndex(null===(o=this.currentObject)||void 0===o?void 0:o.parentId,r).subscribe({next:s=>{""==s?this.isEditMode=!1:(this.dialog.open(jo,{data:{message:s,type:"error"},maxWidth:"500px"}),this.isIndexEditMode=!0)}}),this.addIndexKeyForm.controls.columnName.setValue(""),this.addIndexKeyForm.controls.ascOrDesc.setValue(""),this.addIndexKeyForm.markAsUntouched(),this.data.getSummary(),this.isIndexEditMode=!1)}dropIndex(){var e;this.dialog.open(gI,{width:"35vw",minWidth:"450px",maxWidth:"600px",data:{name:null===(e=this.currentObject)||void 0===e?void 0:e.name,type:Vs.Index}}).afterClosed().subscribe(o=>{o===Vs.Index&&(this.data.dropIndex(this.currentObject.parentId,this.currentObject.id).pipe(Ot(1)).subscribe(r=>{""===r&&(this.isObjectSelected=!1,this.updateSidebar.emit(!0))}),this.currentObject=null)})}restoreIndex(){this.data.restoreIndex(this.currentObject.parentId,this.currentObject.id).pipe(Ot(1)).subscribe(o=>{""===o&&(this.isObjectSelected=!1)}),this.currentObject=null}dropIndexKey(e){this.localIndexData[e].srcColName?(this.localIndexData[e].spColName="",this.localIndexData[e].spColId="",this.localIndexData[e].spDesc="",this.localIndexData[e].spOrder=""):this.localIndexData.splice(e,1),this.setIndexRows()}addIndexKey(){let e=0;this.localIndexData.forEach(i=>{i.spColName&&(e+=1)}),this.localIndexData.push({spColName:this.addIndexKeyForm.value.columnName,spDesc:"desc"===this.addIndexKeyForm.value.ascOrDesc,spOrder:e+1,srcColName:"",srcDesc:void 0,srcOrder:"",srcColId:void 0,spColId:this.currentObject?this.conversion.getColIdFromSpannerColName(this.addIndexKeyForm.value.columnName,this.currentObject.parentId,this.conv):""}),this.setIndexRows()}restoreSpannerTable(){this.data.restoreTable(this.currentObject.id).pipe(Ot(1)).subscribe(e=>{""===e&&(this.isObjectSelected=!1),this.data.getConversionRate(),this.data.getDdl()}),this.currentObject=null}dropTable(){var e;this.dialog.open(gI,{width:"35vw",minWidth:"450px",maxWidth:"600px",data:{name:null===(e=this.currentObject)||void 0===e?void 0:e.name,type:Vs.Table}}).afterClosed().subscribe(o=>{o===Vs.Table&&(this.data.dropTable(this.currentObject.id).pipe(Ot(1)).subscribe(s=>{""===s&&(this.isObjectSelected=!1,this.data.getConversionRate(),this.updateSidebar.emit(!0))}),this.currentObject=null)})}tabChanged(e){this.currentTabIndex=e.index}middleColumnToggle(){this.isMiddleColumnCollapse=!this.isMiddleColumnCollapse,this.sidenav.setMiddleColComponent(this.isMiddleColumnCollapse)}tableInterleaveWith(e){if(""!=this.conv.SpSchema[e].ParentId)return this.conv.SpSchema[e].ParentId;let i="";return Object.keys(this.conv.SpSchema).forEach(o=>{""!=this.conv.SpSchema[o].ParentId&&this.conv.SpSchema[o].ParentId==e&&(i=o)}),i}isPKPrefixModified(e,i){let o,r;this.conv.SpSchema[e].ParentId!=i?(o=this.pkObj.Columns,r=this.conv.SpSchema[i].PrimaryKeys):(r=this.pkObj.Columns,o=this.conv.SpSchema[i].PrimaryKeys);for(let s=0;s{class t{constructor(e,i){this.data=e,this.clickEvent=i,this.changeIssuesLabel=new Pe,this.summaryRows=[],this.summary=new Map,this.filteredSummaryRows=[],this.separatorKeysCodes=[],this.summaryCount=0,this.totalNoteCount=0,this.totalWarningCount=0,this.totalSuggestionCount=0,this.totalErrorCount=0,this.filterInput=new X,this.options=["read","unread","warning","suggestion","note","error"],this.obsFilteredOptions=new Ue,this.searchFilters=["unread","warning","note","suggestion","error"],this.currentObject=null}ngOnInit(){this.data.summary.subscribe({next:e=>{if(this.summary=e,this.currentObject){let i=this.currentObject.id;"indexName"==this.currentObject.type&&(i=this.currentObject.parentId);let o=this.summary.get(i);o?(this.summaryRows=[],this.initiateSummaryCollection(o),this.applyFilters(),this.summaryCount=o.NotesCount+o.WarningsCount+o.ErrorsCount+o.SuggestionsCount,this.changeIssuesLabel.emit(o.NotesCount+o.WarningsCount+o.ErrorsCount+o.SuggestionsCount)):(this.summaryCount=0,this.changeIssuesLabel.emit(0))}else this.initialiseSummaryCollectionForAllTables(this.summary),this.summaryCount=this.totalNoteCount+this.totalErrorCount+this.totalSuggestionCount+this.totalWarningCount,this.changeIssuesLabel.emit(this.summaryCount)}}),this.registerAutoCompleteChange()}initialiseSummaryCollectionForAllTables(e){this.summaryRows=[],this.totalErrorCount=0,this.totalNoteCount=0,this.totalSuggestionCount=0,this.totalWarningCount=0;for(const i of e.values())this.initiateSummaryCollection(i);this.applyFilters()}ngOnChanges(e){var i;if(this.currentObject=(null===(i=null==e?void 0:e.currentObject)||void 0===i?void 0:i.currentValue)||this.currentObject,this.summaryRows=[],this.currentObject){let o=this.currentObject.id;"indexName"==this.currentObject.type&&(o=this.currentObject.parentId);let r=this.summary.get(o);r?(this.summaryRows=[],this.initiateSummaryCollection(r),this.applyFilters(),this.summaryCount=r.NotesCount+r.WarningsCount+r.ErrorsCount+r.SuggestionsCount,this.changeIssuesLabel.emit(r.NotesCount+r.WarningsCount+r.ErrorsCount+r.SuggestionsCount)):(this.summaryCount=0,this.changeIssuesLabel.emit(0))}else this.summaryCount=0,this.changeIssuesLabel.emit(0)}initiateSummaryCollection(e){this.totalErrorCount+=e.ErrorsCount,this.totalNoteCount+=e.NotesCount,this.totalWarningCount+=e.WarningsCount,this.totalSuggestionCount+=e.SuggestionsCount,e.Errors.forEach(i=>{this.summaryRows.push({type:"error",content:i.description,isRead:!1})}),e.Warnings.forEach(i=>{this.summaryRows.push({type:"warning",content:i.description,isRead:!1})}),e.Suggestions.forEach(i=>{this.summaryRows.push({type:"suggestion",content:i.description,isRead:!1})}),e.Notes.forEach(i=>{this.summaryRows.push({type:"note",content:i.description,isRead:!1})})}applyFilters(){let e=[],i=[];this.searchFilters.includes("read")&&i.push(o=>o.isRead),this.searchFilters.includes("unread")&&i.push(o=>!o.isRead),this.searchFilters.includes("warning")&&e.push(o=>"warning"==o.type),this.searchFilters.includes("note")&&e.push(o=>"note"==o.type),this.searchFilters.includes("suggestion")&&e.push(o=>"suggestion"==o.type),this.searchFilters.includes("error")&&e.push(o=>"error"==o.type),this.filteredSummaryRows=this.summaryRows.filter(o=>(!i.length||i.some(r=>r(o)))&&(!e.length||e.some(r=>r(o))))}addFilter(e){e&&!this.searchFilters.includes(e)&&this.searchFilters.push(e),this.applyFilters(),this.registerAutoCompleteChange()}removeFilter(e){const i=this.searchFilters.indexOf(e);i>=0&&this.searchFilters.splice(i,1),this.applyFilters()}toggleRead(e){e.isRead=!e.isRead,this.applyFilters()}registerAutoCompleteChange(){this.obsFilteredOptions=this.filterInput.valueChanges.pipe(Nn(""),je(e=>this.autoCompleteOnChangeFilter(e)))}autoCompleteOnChangeFilter(e){return this.options.filter(i=>i.toLowerCase().includes(e))}spannerTab(){this.clickEvent.setTabToSpanner()}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-summary"]],inputs:{currentObject:"currentObject"},outputs:{changeIssuesLabel:"changeIssuesLabel"},features:[nn],decls:29,vars:11,consts:[[1,"container"],[1,"filter"],[1,"columns"],[1,"left"],[1,"material-icons","filter-icon"],[1,"filter-text"],[1,"right"],["chipList",""],["class","primary",3,"removed",4,"ngFor","ngForOf"],[3,"formControl","matChipInputFor","matChipInputSeparatorKeyCodes","matChipInputAddOnBlur","matAutocomplete"],["auto","matAutocomplete"],[3,"value","click",4,"ngFor","ngForOf"],[1,"header"],["class","content",4,"ngIf"],["class","no-issue-container",4,"ngIf"],[1,"primary",3,"removed"],["matChipRemove",""],[3,"value","click"],[1,"content"],["class","summary-row",4,"ngFor","ngForOf"],[1,"summary-row"],["matTooltip","Error: Please resolve them to proceed with the migration","matTooltipPosition","above","class","danger",4,"ngIf"],["matTooltip","Warning : Changes made because of differences in source and spanner capabilities.","matTooltipPosition","above","class","warning",4,"ngIf"],["matTooltip","Suggestion : We highly recommend you make these changes or else it will impact your DB performance.","matTooltipPosition","above","class","suggestion",4,"ngIf"],["matTooltip","Note : This is informational and you dont need to do anything.","matTooltipPosition","above","class","success",4,"ngIf"],[1,"middle"],[3,"matMenuTriggerFor"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"click",4,"ngIf"],["matTooltip","Error: Please resolve them to proceed with the migration","matTooltipPosition","above",1,"danger"],["matTooltip","Warning : Changes made because of differences in source and spanner capabilities.","matTooltipPosition","above",1,"warning"],["matTooltip","Suggestion : We highly recommend you make these changes or else it will impact your DB performance.","matTooltipPosition","above",1,"suggestion"],["matTooltip","Note : This is informational and you dont need to do anything.","matTooltipPosition","above",1,"success"],["mat-menu-item","",3,"click"],[1,"no-issue-container"],[1,"no-issue-icon-container"],["width","36","height","36","viewBox","0 0 24 20","fill","none","xmlns","http://www.w3.org/2000/svg"],["d","M16.8332 0.69873C16.0051 7.45842 16.2492 9.44782 10.4672 10.2012C16.1511 11.1242 16.2329 13.2059 16.8332 19.7037C17.6237 13.1681 17.4697 11.2106 23.1986 10.2012C17.4247 9.45963 17.6194 7.4505 16.8332 0.69873ZM4.23739 0.872955C3.79064 4.52078 3.92238 5.59467 0.802246 6.00069C3.86944 6.49885 3.91349 7.62218 4.23739 11.1284C4.66397 7.60153 4.581 6.54497 7.67271 6.00069C4.55696 5.60052 4.66178 4.51623 4.23739 0.872955ZM7.36426 11.1105C7.05096 13.6683 7.14331 14.4212 4.95554 14.7061C7.10612 15.0553 7.13705 15.8431 7.36426 18.3017C7.66333 15.8288 7.60521 15.088 9.77298 14.7061C7.58818 14.4255 7.66177 13.6653 7.36426 11.1105Z","fill","#3367D6"],[1,"no-issue-message"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"div")(2,"div",1)(3,"div",2)(4,"div",3)(5,"span",4),h(6,"filter_list"),c(),d(7,"span",5),h(8,"Filter"),c()(),d(9,"div",6)(10,"mat-form-field")(11,"mat-chip-list",null,7),_(13,MY,5,1,"mat-chip",8),E(14,"input",9),d(15,"mat-autocomplete",null,10),_(17,xY,2,2,"mat-option",11),_s(18,"async"),c()()()()()(),d(19,"div",12)(20,"div",2)(21,"div",3)(22,"span"),h(23," Status "),c()(),d(24,"div",6)(25,"span"),h(26," Summary "),c()()()(),_(27,RY,2,1,"div",13),_(28,FY,8,0,"div",14),c()()),2&e){const o=$t(12),r=$t(16);f(13),m("ngForOf",i.searchFilters),f(1),m("formControl",i.filterInput)("matChipInputFor",o)("matChipInputSeparatorKeyCodes",i.separatorKeysCodes)("matChipInputAddOnBlur",!1)("matAutocomplete",r),f(3),m("ngForOf",bs(18,9,i.obsFilteredOptions)),f(10),m("ngIf",0!==i.summaryCount),f(1),m("ngIf",0===i.summaryCount)}},directives:[En,dk,ri,Td,ak,_n,Dn,ck,Xk,bn,Il,tz,_i,Et,ki,Nl,Fl,qr],pipes:[zg],styles:[".container[_ngcontent-%COMP%]{height:calc(100vh - 271px);position:relative;overflow-y:auto;background-color:#fff}.container[_ngcontent-%COMP%] .no-object-container[_ngcontent-%COMP%]{height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.container[_ngcontent-%COMP%] .no-object-container[_ngcontent-%COMP%] .no-object-icon-container[_ngcontent-%COMP%]{padding:10px;background-color:#3367d61f;border-radius:3px;margin:20px}.container[_ngcontent-%COMP%] .no-object-container[_ngcontent-%COMP%] .no-object-message[_ngcontent-%COMP%]{width:80%;max-width:500px;text-align:center}.container[_ngcontent-%COMP%] .no-issue-container[_ngcontent-%COMP%]{width:100%;position:absolute;top:50%;display:flex;flex-direction:column;justify-content:center;align-items:center}.container[_ngcontent-%COMP%] .no-issue-container[_ngcontent-%COMP%] .no-issue-icon-container[_ngcontent-%COMP%]{padding:10px;background-color:#3367d61f;border-radius:3px;margin:20px}.container[_ngcontent-%COMP%] .no-issue-container[_ngcontent-%COMP%] .no-issue-message[_ngcontent-%COMP%]{width:80%;max-width:500px;text-align:center}h3[_ngcontent-%COMP%]{margin-bottom:0;padding-left:15px}.filter[_ngcontent-%COMP%]{display:flex;flex:1;min-height:65px;padding:0 15px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%]{display:flex;flex:1}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{order:1;position:relative;padding-top:20px;width:100px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{position:absolute;font-size:20px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{position:absolute;margin-left:30px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{order:2;width:100%}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;min-height:22px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .mat-chip-input[_ngcontent-%COMP%]{width:60px;height:24px;flex:0}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .primary[_ngcontent-%COMP%]{background-color:#3f51b5;color:#fff}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .primary[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:#fff;opacity:.4}.filter[_ngcontent-%COMP%] .mat-form-field-underline{display:none}.filter[_ngcontent-%COMP%] .mat-chip[_ngcontent-%COMP%]{min-height:24px;font-weight:lighter}.header[_ngcontent-%COMP%]{display:flex;flex:1;padding:5px 0;background-color:#f5f5f5;text-align:center}.header[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%]{display:flex;flex:1}.header[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{width:60px;order:1}.header[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{flex:1;order:2}.summary-row[_ngcontent-%COMP%]{display:flex;flex:1;padding:10px 0;border-bottom:1px solid #ccc}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%]{display:flex;flex:1}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{width:60px;order:1;text-align:center;padding-top:5px}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .middle[_ngcontent-%COMP%]{flex:1;order:2}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{width:30px;order:3;cursor:pointer}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:18px}"]}),t})();function LY(t,n){1&t&&(d(0,"th",19),h(1,"Order"),c())}function BY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.index;f(1),Ee(e+1)}}function VY(t,n){1&t&&(d(0,"th",19),h(1,"Rule name"),c())}function jY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null==e?null:e.Name)}}function HY(t,n){1&t&&(d(0,"th",19),h(1,"Rule type"),c())}function UY(t,n){1&t&&(d(0,"div"),h(1,"Add Index"),c())}function zY(t,n){1&t&&(d(0,"div"),h(1,"Global Datatype Change"),c())}function $Y(t,n){1&t&&(d(0,"div"),h(1,"Column default max length change"),c())}function GY(t,n){1&t&&(d(0,"div"),h(1,"Add shard id column as primary key"),c())}function WY(t,n){if(1&t&&(d(0,"td",20),_(1,UY,2,0,"div",21),_(2,zY,2,0,"div",21),_(3,$Y,2,0,"div",21),_(4,GY,2,0,"div",21),c()),2&t){const e=n.$implicit;f(1),m("ngIf","add_index"===(null==e?null:e.Type)),f(1),m("ngIf","global_datatype_change"===(null==e?null:e.Type)),f(1),m("ngIf","edit_column_max_length"===(null==e?null:e.Type)),f(1),m("ngIf","add_shard_id_primary_key"===(null==e?null:e.Type))}}function qY(t,n){1&t&&(d(0,"th",19),h(1,"Object type"),c())}function KY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null==e?null:e.ObjectType)}}function ZY(t,n){1&t&&(d(0,"th",19),h(1,"Associated object"),c())}function QY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null==e?null:e.AssociatedObjects)}}function YY(t,n){1&t&&(d(0,"th",19),h(1,"Enabled"),c())}function XY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null!=e&&e.Enabled?"Yes":"No")}}function JY(t,n){1&t&&(d(0,"th",19),h(1,"View Rule"),c())}function eX(t,n){if(1&t){const e=pe();d(0,"td",20)(1,"button",22),N("click",function(){const r=se(e).$implicit;return D().viewSidenavRule(null==r?null:r.Id)}),h(2,"View"),c()()}}function tX(t,n){1&t&&E(0,"tr",23)}function nX(t,n){1&t&&E(0,"tr",24)}function iX(t,n){1&t&&(d(0,"div",25)(1,"mat-icon",26),h(2,"settings"),c(),d(3,"span",27),h(4,'No rules added yet. Add one by clicking "Add rule".'),c()())}let oX=(()=>{class t{constructor(e,i){this.sidenavService=e,this.data=i,this.dataSource=[],this.currentDataSource=[],this.displayedColumns=["order","name","type","objectType","associatedObject","enabled","view"],this.currentObject=null,this.lengthOfRules=new Pe}ngOnInit(){this.dataSource=[],this.data.rule.subscribe({next:e=>{this.currentDataSource=e,this.updateRules()}})}ngOnChanges(){this.updateRules()}updateRules(){var e,i;if(this.currentDataSource){let o=[],r=[];o=this.currentDataSource.filter(s=>"global_datatype_change"===(null==s?void 0:s.Type)||"add_shard_id_primary_key"===(null==s?void 0:s.Type)||"edit_column_max_length"===(null==s?void 0:s.Type)&&"All table"===(null==s?void 0:s.AssociatedObjects)),this.currentObject&&("tableName"===(null===(e=this.currentObject)||void 0===e?void 0:e.type)||"indexName"===(null===(i=this.currentObject)||void 0===i?void 0:i.type))&&(r=this.currentDataSource.filter(s=>{var a,l,u,p;return(null==s?void 0:s.AssociatedObjects)===(null===(a=this.currentObject)||void 0===a?void 0:a.id)||(null==s?void 0:s.AssociatedObjects)===(null===(l=this.currentObject)||void 0===l?void 0:l.parentId)||(null==s?void 0:s.AssociatedObjects)===(null===(u=this.currentObject)||void 0===u?void 0:u.name)||(null==s?void 0:s.AssociatedObjects)===(null===(p=this.currentObject)||void 0===p?void 0:p.parent)}).map(s=>{var a,l;let u="";return"tableName"===(null===(a=this.currentObject)||void 0===a?void 0:a.type)?u=this.currentObject.name:"indexName"===(null===(l=this.currentObject)||void 0===l?void 0:l.type)&&(u=this.currentObject.parent),s.AssociatedObjects=u,s})),this.dataSource=[...o,...r],this.lengthOfRules.emit(this.dataSource.length)}else this.dataSource=[],this.lengthOfRules.emit(0)}openSidenav(){this.sidenavService.openSidenav(),this.sidenavService.setSidenavComponent("rule"),this.sidenavService.setSidenavRuleType(""),this.sidenavService.setRuleData({}),this.sidenavService.setDisplayRuleFlag(!1)}viewSidenavRule(e){let i=[];for(let o=0;o{class t{constructor(e,i,o,r,s,a,l){this.data=e,this.conversion=i,this.dialog=o,this.sidenav=r,this.router=s,this.clickEvent=a,this.fetch=l,this.fkData=[],this.tableData=[],this.indexData=[],this.typeMap=!1,this.defaultTypeMap=!1,this.conversionRates={},this.isLeftColumnCollapse=!1,this.isRightColumnCollapse=!0,this.isMiddleColumnCollapse=!0,this.isOfflineStatus=!1,this.spannerTree=[],this.srcTree=[],this.issuesAndSuggestionsLabel="ISSUES AND SUGGESTIONS",this.rulesLabel="RULES (0)",this.objectExplorerInitiallyRender=!1,this.srcDbName=localStorage.getItem(In.SourceDbName),this.conversionRateCount={good:0,ok:0,bad:0},this.conversionRatePercentages={good:0,ok:0,bad:0},this.currentDatabase="spanner",this.dialect="",this.currentObject=null}ngOnInit(){this.conversion.getStandardTypeToPGSQLTypemap(),this.conversion.getPGSQLToStandardTypeTypemap(),this.ddlsumconvObj=this.data.getRateTypemapAndSummary(),this.typemapObj=this.data.typeMap.subscribe(e=>{this.typeMap=e}),this.defaultTypemapObj=this.data.defaultTypeMap.subscribe(e=>{this.defaultTypeMap=e}),this.ddlObj=this.data.ddl.subscribe(e=>{this.ddlStmts=e}),this.sidenav.setMiddleColumnComponent.subscribe(e=>{this.isMiddleColumnCollapse=!e}),this.convObj=this.data.conv.subscribe(e=>{var i,o;Object.keys(e.SrcSchema).length<=0&&this.router.navigate(["/"]);const r=this.isIndexAddedOrRemoved(e);e&&this.conv&&Object.keys(null==e?void 0:e.SpSchema).length!=Object.keys(null===(i=this.conv)||void 0===i?void 0:i.SpSchema).length&&(this.conv=e,this.reRenderObjectExplorerSpanner(),this.reRenderObjectExplorerSrc()),this.conv=e,this.conv.DatabaseType&&(this.srcDbName=$p(this.conv.DatabaseType)),r&&this.conversionRates&&this.reRenderObjectExplorerSpanner(),!this.objectExplorerInitiallyRender&&this.conversionRates&&(this.reRenderObjectExplorerSpanner(),this.reRenderObjectExplorerSrc(),this.objectExplorerInitiallyRender=!0),this.currentObject&&this.currentObject.type===Qt.Table&&(this.fkData=this.currentObject?this.conversion.getFkMapping(this.currentObject.id,e):[],this.tableData=this.currentObject?this.conversion.getColumnMapping(this.currentObject.id,e):[]),this.currentObject&&(null===(o=this.currentObject)||void 0===o?void 0:o.type)===Qt.Index&&!r&&(this.indexData=this.conversion.getIndexMapping(this.currentObject.parentId,this.conv,this.currentObject.id)),this.dialect="postgresql"===this.conv.SpDialect?"PostgreSQL":"Google Standard SQL"}),this.converObj=this.data.conversionRate.subscribe(e=>{this.conversionRates=e,this.updateConversionRatePercentages(),this.conv?(this.reRenderObjectExplorerSpanner(),this.reRenderObjectExplorerSrc(),this.objectExplorerInitiallyRender=!0):this.objectExplorerInitiallyRender=!1}),this.data.isOffline.subscribe({next:e=>{this.isOfflineStatus=e}})}ngOnDestroy(){this.typemapObj.unsubscribe(),this.convObj.unsubscribe(),this.ddlObj.unsubscribe(),this.ddlsumconvObj.unsubscribe()}updateConversionRatePercentages(){let e=Object.keys(this.conversionRates).length;this.conversionRateCount={good:0,ok:0,bad:0},this.conversionRatePercentages={good:0,ok:0,bad:0};for(const i in this.conversionRates)"NONE"===this.conversionRates[i]||"EXCELLENT"===this.conversionRates[i]?this.conversionRateCount.good+=1:"GOOD"===this.conversionRates[i]||"OK"===this.conversionRates[i]?this.conversionRateCount.ok+=1:this.conversionRateCount.bad+=1;if(e>0)for(let i in this.conversionRatePercentages)this.conversionRatePercentages[i]=Number((this.conversionRateCount[i]/e*100).toFixed(2))}reRenderObjectExplorerSpanner(){this.spannerTree=this.conversion.createTreeNode(this.conv,this.conversionRates)}reRenderObjectExplorerSrc(){this.srcTree=this.conversion.createTreeNodeForSource(this.conv,this.conversionRates)}reRenderSidebar(){this.reRenderObjectExplorerSpanner()}changeCurrentObject(e){(null==e?void 0:e.type)===Qt.Table?(this.currentObject=e,this.tableData=this.currentObject?this.conversion.getColumnMapping(this.currentObject.id,this.conv):[],this.fkData=[],this.fkData=this.currentObject?this.conversion.getFkMapping(this.currentObject.id,this.conv):[]):(null==e?void 0:e.type)===Qt.Index?(this.currentObject=e,this.indexData=this.conversion.getIndexMapping(e.parentId,this.conv,e.id)):this.currentObject=null}changeCurrentDatabase(e){this.currentDatabase=e}updateIssuesLabel(e){setTimeout(()=>{this.issuesAndSuggestionsLabel=`ISSUES AND SUGGESTIONS (${e})`})}updateRulesLabel(e){setTimeout(()=>{this.rulesLabel=`RULES (${e})`})}leftColumnToggle(){this.isLeftColumnCollapse=!this.isLeftColumnCollapse}middleColumnToggle(){this.isMiddleColumnCollapse=!this.isMiddleColumnCollapse}rightColumnToggle(){this.isRightColumnCollapse=!this.isRightColumnCollapse}openAssessment(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("assessment");let e="";if(localStorage.getItem(In.Type)==mi.DirectConnect){let r=JSON.parse(localStorage.getItem(In.Config));e=(null==r?void 0:r.hostName)+" : "+(null==r?void 0:r.port)}else e=this.conv.DatabaseName;this.clickEvent.setViewAssesmentData({srcDbType:this.srcDbName,connectionDetail:e,conversionRates:this.conversionRateCount})}openSaveSessionSidenav(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("saveSession"),this.sidenav.setSidenavDatabaseName(this.conv.DatabaseName)}downloadSession(){dI(this.conv)}downloadArtifacts(){let e=new hI,i=`${this.conv.DatabaseName}`;this.fetch.getDStructuredReport().subscribe({next:o=>{let r=JSON.stringify(o).replace(/9223372036854776000/g,"9223372036854775807");e.file(i+"_migration_structuredReport.json",r),this.fetch.getDTextReport().subscribe({next:a=>{e.file(i+"_migration_textReport.txt",a),this.fetch.getDSpannerDDL().subscribe({next:l=>{e.file(i+"_spannerDDL.txt",l);let u=JSON.stringify(this.conv).replace(/9223372036854776000/g,"9223372036854775807");e.file(`${this.conv.SessionName}_${this.conv.DatabaseType}_${i}.json`,u),e.generateAsync({type:"blob"}).then(g=>{var v=document.createElement("a");v.href=URL.createObjectURL(g),v.download=`${i}_artifacts`,v.click()})}})}})}})}downloadStructuredReport(){var e=document.createElement("a");this.fetch.getDStructuredReport().subscribe({next:i=>{let o=JSON.stringify(i).replace(/9223372036854776000/g,"9223372036854775807");e.href="data:text/json;charset=utf-8,"+encodeURIComponent(o),e.download=`${this.conv.DatabaseName}_migration_structuredReport.json`,e.click()}})}downloadTextReport(){var e=document.createElement("a");this.fetch.getDTextReport().subscribe({next:i=>{e.href="data:text;charset=utf-8,"+encodeURIComponent(i),e.download=`${this.conv.DatabaseName}_migration_textReport.txt`,e.click()}})}downloadDDL(){var e=document.createElement("a");this.fetch.getDSpannerDDL().subscribe({next:i=>{e.href="data:text;charset=utf-8,"+encodeURIComponent(i),e.download=`${this.conv.DatabaseName}_spannerDDL.txt`,e.click()}})}updateSpannerTable(e){this.spannerTree=this.conversion.createTreeNode(this.conv,this.conversionRates,e.text,e.order)}updateSrcTable(e){this.srcTree=this.conversion.createTreeNodeForSource(this.conv,this.conversionRates,e.text,e.order)}isIndexAddedOrRemoved(e){if(this.conv){let i=0,o=0;return Object.entries(this.conv.SpSchema).forEach(r=>{i+=r[1].Indexes?r[1].Indexes.length:0}),Object.entries(e.SpSchema).forEach(r=>{o+=r[1].Indexes?r[1].Indexes.length:0}),i!==o}return!1}prepareMigration(){this.fetch.getTableWithErrors().subscribe({next:e=>{if(null!=e&&0!=e.length){console.log(e.map(o=>o.Name).join(", "));let i="Please fix the errors for the following tables to move ahead: "+e.map(o=>o.Name).join(", ");this.dialog.open(jo,{data:{message:i,type:"error",title:"Error in Spanner Draft"},maxWidth:"500px"})}else this.isOfflineStatus?this.dialog.open(jo,{data:{message:"Please configure spanner project id and instance id to proceed",type:"error",title:"Configure Spanner"},maxWidth:"500px"}):0==Object.keys(this.conv.SpSchema).length?this.dialog.open(jo,{data:{message:"Please restore some table(s) to proceed with the migration",type:"error",title:"All tables skipped"},maxWidth:"500px"}):this.router.navigate(["/prepare-migration"])}})}spannerTab(){this.clickEvent.setTabToSpanner()}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Da),b(ns),b(Ei),b(Jn),b(Vo),b(Bi))},t.\u0275cmp=Ae({type:t,selectors:[["app-workspace"]],decls:57,vars:59,consts:[[1,"header"],[1,"breadcrumb","vertical-center"],["mat-button","",1,"breadcrumb_source",3,"routerLink"],["mat-button","",1,"breadcrumb_workspace",3,"routerLink"],[1,"header_action"],["matTooltip","Connect to a spanner instance to run migration",3,"matTooltipDisabled"],["mat-button","",3,"click"],["mat-button","",3,"click",4,"ngIf"],[1,"artifactsButtons"],["mat-raised-button","","color","primary",1,"split-button-left",3,"click"],["mat-raised-button","","color","primary",1,"split-button-right",3,"matMenuTriggerFor"],["aria-hidden","false","aria-label","More options"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"click"],[1,"container"],[1,"summary"],[1,"spanner-tab-link",3,"click"],[1,"columns"],[1,"column-left",3,"ngClass"],[3,"spannerTree","srcTree","srcDbName","selectedDatabase","selectObject","updateSpannerTable","updateSrcTable","leftCollaspe","middleCollapse"],[1,"column-middle",3,"ngClass"],[3,"currentObject","tableData","indexData","typeMap","ddlStmts","fkData","currentDatabase","defaultTypeMap","updateSidebar"],[1,"column-right",3,"ngClass"],["mat-dialog-close",""],[3,"ngClass","label"],[3,"currentObject","changeIssuesLabel"],[3,"currentObject","lengthOfRules"],["id","right-column-toggle-button",3,"click"],[3,"ngClass"]],template:function(e,i){if(1&e&&(d(0,"div")(1,"div",0)(2,"div",1)(3,"a",2),h(4,"Select Source"),c(),d(5,"span"),h(6,">"),c(),d(7,"a",3)(8,"b"),h(9),c()()(),d(10,"div",4)(11,"span",5)(12,"button",6),N("click",function(){return i.prepareMigration()}),h(13," PREPARE MIGRATION "),c()(),d(14,"button",6),N("click",function(){return i.openAssessment()}),h(15,"VIEW ASSESSMENT"),c(),_(16,rX,2,0,"button",7),d(17,"span",8)(18,"button",9),N("click",function(){return i.downloadArtifacts()}),h(19," DOWNLOAD ARTIFACTS "),c(),d(20,"button",10)(21,"mat-icon",11),h(22,"expand_more"),c()(),d(23,"mat-menu",12,13)(25,"button",14),N("click",function(){return i.downloadTextReport()}),h(26,"Download Text Report"),c(),d(27,"button",14),N("click",function(){return i.downloadStructuredReport()}),h(28,"Download Structured Report"),c(),d(29,"button",14),N("click",function(){return i.downloadSession()}),h(30,"Download Session File"),c(),d(31,"button",14),N("click",function(){return i.downloadDDL()}),h(32,"Download Spanner DDL"),c()()()()(),d(33,"div",15)(34,"div",16),h(35),E(36,"br"),h(37," To make schema changes go to "),d(38,"a",17),N("click",function(){return i.spannerTab()}),h(39,"Spanner Draft"),c(),h(40," pane. "),c()(),d(41,"div",18)(42,"div",19)(43,"app-object-explorer",20),N("selectedDatabase",function(r){return i.changeCurrentDatabase(r)})("selectObject",function(r){return i.changeCurrentObject(r)})("updateSpannerTable",function(r){return i.updateSpannerTable(r)})("updateSrcTable",function(r){return i.updateSrcTable(r)})("leftCollaspe",function(){return i.leftColumnToggle()})("middleCollapse",function(){return i.middleColumnToggle()}),c()(),d(44,"div",21)(45,"app-object-detail",22),N("updateSidebar",function(){return i.reRenderSidebar()}),c()(),d(46,"div",23)(47,"mat-tab-group",24)(48,"mat-tab",25)(49,"app-summary",26),N("changeIssuesLabel",function(r){return i.updateIssuesLabel(r)}),c()(),d(50,"mat-tab",25)(51,"app-rule",27),N("lengthOfRules",function(r){return i.updateRulesLabel(r)}),c()()(),d(52,"button",28),N("click",function(){return i.rightColumnToggle()}),d(53,"mat-icon",29),h(54,"first_page"),c(),d(55,"mat-icon",29),h(56,"last_page"),c()()()()()),2&e){const o=$t(24);f(3),m("routerLink","/"),f(4),m("routerLink","/workspace"),f(2),Se("Configure Schema (",i.dialect," Dialect)"),f(2),m("matTooltipDisabled",!i.isOfflineStatus),f(5),m("ngIf",!i.isOfflineStatus),f(4),m("matMenuTriggerFor",o),f(15),Zm(" Estimation for ",i.srcDbName.toUpperCase()," to Spanner conversion: ",i.conversionRatePercentages.good,"% of tables can be converted automatically, ",i.conversionRatePercentages.ok,"% requires minimal conversion changes and ",i.conversionRatePercentages.bad,"% requires high complexity conversion changes. "),f(7),m("ngClass",Kt(32,Hd,i.isLeftColumnCollapse?"left-column-collapse":"left-column-expand")),f(1),m("spannerTree",i.spannerTree)("srcTree",i.srcTree)("srcDbName",i.srcDbName),f(1),m("ngClass",function Ew(t,n,e,i,o,r,s,a){const l=Oi()+t,u=De(),p=xo(u,l,e,i,o,r);return Mi(u,l+4,s)||p?fr(u,l+5,a?n.call(a,e,i,o,r,s):n(e,i,o,r,s)):Mc(u,l+5)}(34,sX,i.isLeftColumnCollapse,!i.isLeftColumnCollapse,!i.isMiddleColumnCollapse,i.isRightColumnCollapse,!i.isRightColumnCollapse)),f(1),m("currentObject",i.currentObject)("tableData",i.tableData)("indexData",i.indexData)("typeMap",i.typeMap)("ddlStmts",i.ddlStmts)("fkData",i.fkData)("currentDatabase",i.currentDatabase)("defaultTypeMap",i.defaultTypeMap),f(1),m("ngClass",function Iw(t,n,e,i,o,r,s,a,l){const u=Oi()+t,p=De(),g=xo(p,u,e,i,o,r);return Js(p,u+4,s,a)||g?fr(p,u+6,l?n.call(l,e,i,o,r,s,a):n(e,i,o,r,s,a)):Mc(p,u+6)}(40,aX,!i.isRightColumnCollapse&&!i.isLeftColumnCollapse,!i.isRightColumnCollapse&&i.isLeftColumnCollapse,i.isRightColumnCollapse,!i.isMiddleColumnCollapse,i.isMiddleColumnCollapse,!i.isMiddleColumnCollapse)),f(2),m("ngClass",Kt(49,_I,Kt(47,Hd,i.updateIssuesLabel)))("label",i.issuesAndSuggestionsLabel),f(1),m("currentObject",i.currentObject),f(1),m("ngClass",Kt(53,_I,Kt(51,Hd,i.updateRulesLabel)))("label",i.rulesLabel),f(1),m("currentObject",i.currentObject),f(2),m("ngClass",Kt(55,Hd,i.isRightColumnCollapse?"display":"hidden")),f(2),m("ngClass",Kt(57,Hd,i.isRightColumnCollapse?"hidden":"display"))}},directives:[BM,jd,ki,Ht,Et,Nl,_n,Fl,qr,nr,Kq,SY,rv,Ji,wp,NY,oX],styles:["app-object-detail[_ngcontent-%COMP%]{height:100%}.vertical-center[_ngcontent-%COMP%]{display:flex;align-items:center}.columns[_ngcontent-%COMP%]{display:flex;flex-direction:row;width:100%;border-top:1px solid #d3d3d3;border-bottom:1px solid #d3d3d3;height:calc(100vh - 222px)}.artifactsButtons[_ngcontent-%COMP%]{white-space:nowrap}.container[_ngcontent-%COMP%]{padding:7px 20px;margin-bottom:20px}.container[_ngcontent-%COMP%] .summary[_ngcontent-%COMP%]{font-weight:lighter}.container[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 5px}.column-left[_ngcontent-%COMP%]{overflow:auto}.column-middle[_ngcontent-%COMP%]{width:48%;border-left:1px solid #d3d3d3;border-right:1px solid #d3d3d3;overflow:auto}.column-right[_ngcontent-%COMP%]{width:26%;position:relative;overflow:auto}.left-column-collapse[_ngcontent-%COMP%]{width:3%}.left-column-expand[_ngcontent-%COMP%]{width:26%}.middle-column-collapse[_ngcontent-%COMP%]{width:48%}.middle-column-expand[_ngcontent-%COMP%]{width:71%}.right-column-half-expand[_ngcontent-%COMP%]{width:80%}.right-column-collapse[_ngcontent-%COMP%]{width:26%}.right-column-full-expand[_ngcontent-%COMP%]{width:97%}.middle-column-hide[_ngcontent-%COMP%]{width:0%}.middle-column-full[_ngcontent-%COMP%]{width:100%}#right-column-toggle-button[_ngcontent-%COMP%]{border:none;background-color:inherit;position:absolute;top:10px;right:7px;z-index:100}#right-column-toggle-button[_ngcontent-%COMP%]:hover{cursor:pointer} .column-right .mat-tab-label .mat-tab-label-content{font-size:.8rem} .column-right .mat-tab-label{min-width:25px!important;padding:10px} .column-right .mat-tab-label.mat-tab-label-active{min-width:25px!important;padding:7px} .column-right .mat-tab-label-container{margin-right:40px} .column-right .mat-tab-header-pagination-controls-enabled .mat-tab-label-container{margin-right:0} .column-right .mat-tab-header-pagination-after{margin-right:40px}.split-button-left[_ngcontent-%COMP%]{border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:none;padding-right:1px}.split-button-right[_ngcontent-%COMP%]{box-shadow:none;width:30px!important;min-width:unset!important;padding:0 2px;border-top-left-radius:0;border-bottom-left-radius:0;margin-right:7px}"]}),t})(),cX=(()=>{class t{constructor(e,i,o){this.formBuilder=e,this.dialogRef=i,this.data=o,this.region="",this.spannerInstance="",this.dialect="",this.region=o.Region,this.spannerInstance=o.Instance,this.dialect=o.Dialect,this.targetDetailsForm=this.formBuilder.group({targetDb:["",de.required]}),this.targetDetailsForm.setValue({targetDb:localStorage.getItem(Wt.TargetDB)})}ngOnInit(){}updateTargetDetails(){let e=this.targetDetailsForm.value;localStorage.setItem(Wt.TargetDB,e.targetDb),localStorage.setItem(Wt.Dialect,e.dialect),localStorage.setItem(le.IsTargetDetailSet,"true"),this.dialogRef.close()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-target-details-form"]],decls:30,vars:5,consts:[["mat-dialog-content",""],[1,"target-detail-form",3,"formGroup"],["matTooltip","Schema & Schema and data migration: Specify new database name or existing database with empty schema. Data migration: Specify existing database with tables already created",1,"configure"],["appearance","outline",1,"full-width"],["matInput","","placeholder","Target Database","type","text","formControlName","targetDb","ng-value","targetDetails.TargetDB"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Spanner Database Details"),d(4,"mat-icon",2),h(5," info"),c()(),d(6,"mat-form-field",3)(7,"mat-label"),h(8,"Spanner Database"),c(),E(9,"input",4),c(),E(10,"br")(11,"br"),d(12,"b"),h(13,"Region:"),c(),h(14),E(15,"br")(16,"br"),d(17,"b"),h(18,"Spanner Instance:"),c(),h(19),E(20,"br")(21,"br"),d(22,"b"),h(23,"Dialect:"),c(),h(24),c(),d(25,"div",5)(26,"button",6),h(27,"Cancel"),c(),d(28,"button",7),N("click",function(){return i.updateTargetDetails()}),h(29," Save "),c()()()),2&e&&(f(1),m("formGroup",i.targetDetailsForm),f(13),Se(" ",i.region," "),f(5),Se(" ",i.spannerInstance," "),f(5),Se(" ",i.dialect," "),f(4),m("disabled",!i.targetDetailsForm.valid))},directives:[wr,xi,Hn,Sn,_n,ki,En,Mn,li,Dn,bn,Xn,Dr,Ht,Ji],styles:[""]}),t})();function uX(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",10),N("change",function(){const r=se(e).$implicit;return D().onItemChange(r.value)}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function hX(t,n){if(1&t&&(d(0,"mat-option",14),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayName),f(1),Se(" ",e.DisplayName," ")}}function pX(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",11)(2,"mat-label"),h(3,"Select connection profile"),c(),d(4,"mat-select",12),_(5,hX,2,2,"mat-option",13),c()()()),2&t){const e=D();f(5),m("ngForOf",e.profileList)}}function fX(t,n){1&t&&(d(0,"div")(1,"mat-form-field",15)(2,"mat-label"),h(3,"Connection profile name"),c(),E(4,"input",16),c()())}function mX(t,n){1&t&&(d(0,"div")(1,"mat-form-field",11)(2,"mat-label"),h(3,"Replication slot"),c(),E(4,"input",17),c(),E(5,"br"),d(6,"mat-form-field",11)(7,"mat-label"),h(8,"Publication name"),c(),E(9,"input",18),c()())}function gX(t,n){if(1&t&&(d(0,"li",24)(1,"span",25),h(2),c(),d(3,"span")(4,"mat-icon",26),h(5,"file_copy"),c()()()),2&t){const e=n.$implicit;f(2),Ee(e),f(2),m("cdkCopyToClipboard",e)}}function _X(t,n){if(1&t&&(d(0,"div",27)(1,"span",25),h(2,"Test connection failed"),c(),d(3,"mat-icon",28),h(4," error "),c()()),2&t){const e=D(3);f(3),m("matTooltip",e.errorMsg)}}function bX(t,n){1&t&&(d(0,"mat-icon",29),h(1," check_circle "),c())}function vX(t,n){if(1&t){const e=pe();d(0,"div")(1,"div")(2,"b"),h(3,"Copy the public IPs below, and use them to configure the network firewall to accept connections from them."),c(),d(4,"a",19),h(5,"Learn More"),c()(),E(6,"br"),_(7,gX,6,2,"li",20),_(8,_X,5,1,"div",21),E(9,"br"),d(10,"button",22),N("click",function(){return se(e),D(2).testConnection()}),h(11,"Test Connection"),c(),_(12,bX,2,0,"mat-icon",23),c()}if(2&t){const e=D(2);f(7),m("ngForOf",e.ipList),f(1),m("ngIf",!e.testSuccess&&""!=e.errorMsg),f(2),m("disabled",!e.connectionProfileForm.valid),f(2),m("ngIf",e.testSuccess)}}function yX(t,n){if(1&t&&(d(0,"div"),_(1,vX,13,4,"div",6),c()),2&t){const e=D();f(1),m("ngIf",e.isSource)}}let CX=(()=>{class t{constructor(e,i,o,r,s){var a,l;this.fetch=e,this.snack=i,this.formBuilder=o,this.dialogRef=r,this.data=s,this.selectedProfile="",this.profileType="Source",this.profileList=[],this.ipList=[],this.selectedOption="new",this.profileOptions=[{value:"new",display:"Create a new connection profile"},{value:"existing",display:"Choose an existing connection profile"}],this.profileName="",this.errorMsg="",this.isSource=!1,this.sourceDatabaseType="",this.testSuccess=!1,this.testingSourceConnection=!1,this.isSource=s.IsSource,this.sourceDatabaseType=s.SourceDatabaseType,this.isSource||(this.profileType="Target"),this.connectionProfileForm=this.formBuilder.group({profileOption:["",de.required],newProfile:["",[de.pattern("^[a-z][a-z0-9-]{0,59}$")]],existingProfile:[],replicationSlot:[],publication:[]}),"postgres"==this.sourceDatabaseType&&this.isSource&&(null===(a=this.connectionProfileForm.get("replicationSlot"))||void 0===a||a.addValidators([de.required]),this.connectionProfileForm.controls.replicationSlot.updateValueAndValidity(),null===(l=this.connectionProfileForm.get("publication"))||void 0===l||l.addValidators([de.required]),this.connectionProfileForm.controls.publication.updateValueAndValidity()),this.getConnectionProfilesAndIps()}onItemChange(e){var i,o;this.selectedOption=e,"new"==this.selectedOption?(null===(i=this.connectionProfileForm.get("newProfile"))||void 0===i||i.setValidators([de.required]),this.connectionProfileForm.controls.existingProfile.clearValidators(),this.connectionProfileForm.controls.newProfile.updateValueAndValidity(),this.connectionProfileForm.controls.existingProfile.updateValueAndValidity()):(this.connectionProfileForm.controls.newProfile.clearValidators(),null===(o=this.connectionProfileForm.get("existingProfile"))||void 0===o||o.addValidators([de.required]),this.connectionProfileForm.controls.newProfile.updateValueAndValidity(),this.connectionProfileForm.controls.existingProfile.updateValueAndValidity())}testConnection(){this.testingSourceConnection=!0,this.fetch.createConnectionProfile({Id:this.connectionProfileForm.value.newProfile,IsSource:this.isSource,ValidateOnly:!0}).subscribe({next:()=>{this.testingSourceConnection=!1,this.testSuccess=!0},error:o=>{this.testingSourceConnection=!1,this.testSuccess=!1,this.errorMsg=o.error}})}createConnectionProfile(){let e=this.connectionProfileForm.value;this.isSource&&(localStorage.setItem(Wt.ReplicationSlot,e.replicationSlot),localStorage.setItem(Wt.Publication,e.publication)),"new"===this.selectedOption?this.fetch.createConnectionProfile({Id:e.newProfile,IsSource:this.isSource,ValidateOnly:!1}).subscribe({next:()=>{this.isSource?(localStorage.setItem(le.IsSourceConnectionProfileSet,"true"),localStorage.setItem(Wt.SourceConnProfile,e.newProfile)):(localStorage.setItem(le.IsTargetConnectionProfileSet,"true"),localStorage.setItem(Wt.TargetConnProfile,e.newProfile)),this.dialogRef.close()},error:o=>{this.snack.openSnackBar(o.error,"Close"),this.dialogRef.close()}}):(this.isSource?(localStorage.setItem(le.IsSourceConnectionProfileSet,"true"),localStorage.setItem(Wt.SourceConnProfile,e.existingProfile)):(localStorage.setItem(le.IsTargetConnectionProfileSet,"true"),localStorage.setItem(Wt.TargetConnProfile,e.existingProfile)),this.dialogRef.close())}ngOnInit(){}getConnectionProfilesAndIps(){this.fetch.getConnectionProfiles(this.isSource).subscribe({next:e=>{this.profileList=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}}),this.isSource&&this.fetch.getStaticIps().subscribe({next:e=>{this.ipList=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Bo),b(Es),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-connection-profile-form"]],decls:19,vars:9,consts:[["mat-dialog-content",""],[1,"conn-profile-form",3,"formGroup"],[1,"mat-h3","header-title"],[1,"radio-button-container"],["formControlName","profileOption",3,"ngModel","ngModelChange"],[3,"value","change",4,"ngFor","ngForOf"],[4,"ngIf"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[3,"value","change"],["appearance","outline"],["formControlName","existingProfile","required","true","ng-value","selectedProfile",1,"input-field"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["appearance","outline","hintLabel","Name can include lower case letters, numbers and hyphens. Must start with a letter."],["matInput","","placeholder","Connection profile name","type","text","formControlName","newProfile","required","true"],["matInput","","placeholder","Replication slot","type","text","formControlName","replicationSlot","required","true"],["matInput","","placeholder","Publication name","type","text","formControlName","publication","required","true"],["href","https://cloud.google.com/datastream/docs/network-connectivity-options#ipallowlists"],["class","connection-form-container",4,"ngFor","ngForOf"],["class","failure",4,"ngIf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["class","success","matTooltip","Test connection successful","matTooltipPosition","above",4,"ngIf"],[1,"connection-form-container"],[1,"left-text"],["matTooltip","Copy",1,"icon","copy",3,"cdkCopyToClipboard"],[1,"failure"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"],["matTooltip","Test connection successful","matTooltipPosition","above",1,"success"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"span",2),h(3),c(),E(4,"br"),d(5,"div",3)(6,"mat-radio-group",4),N("ngModelChange",function(r){return i.selectedOption=r}),_(7,uX,2,2,"mat-radio-button",5),c()(),E(8,"br"),_(9,pX,6,1,"div",6),_(10,fX,5,0,"div",6),E(11,"br"),_(12,mX,10,0,"div",6),_(13,yX,2,1,"div",6),d(14,"div",7)(15,"button",8),h(16,"Cancel"),c(),d(17,"button",9),N("click",function(){return i.createConnectionProfile()}),h(18," Save "),c()()()()),2&e&&(f(1),m("formGroup",i.connectionProfileForm),f(2),Se("",i.profileType," Connection Profile"),f(3),m("ngModel",i.selectedOption),f(1),m("ngForOf",i.profileOptions),f(2),m("ngIf","existing"===i.selectedOption),f(1),m("ngIf","new"===i.selectedOption),f(2),m("ngIf",i.isSource&&"postgres"==i.sourceDatabaseType),f(1),m("ngIf","new"===i.selectedOption),f(4),m("disabled",!i.connectionProfileForm.valid||!i.testSuccess&&"new"===i.selectedOption&&i.isSource))},directives:[wr,xi,Hn,Sn,xp,bn,Xn,ri,Tp,Et,En,Mn,Yi,fo,_i,li,Dn,_n,ki,fv,Ht,Dr,Ji],styles:[".icon[_ngcontent-%COMP%]{font-size:15px}.connection-form-container[_ngcontent-%COMP%]{display:block}.left-text[_ngcontent-%COMP%]{width:40%;display:inline-block}"]}),t})();function wX(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",6),N("change",function(){const r=se(e).$implicit;return D().onItemChange(r.value)}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function DX(t,n){1&t&&E(0,"mat-spinner",19),2&t&&m("diameter",25)}function SX(t,n){1&t&&(d(0,"mat-icon",20),h(1,"check_circle"),c())}function MX(t,n){1&t&&(d(0,"mat-icon",21),h(1,"cancel"),c())}function xX(t,n){if(1&t&&(d(0,"div",22)(1,"span",23),h(2,"Source database connection failed"),c(),d(3,"mat-icon",24),h(4," error "),c()()),2&t){const e=D(2);f(3),m("matTooltip",e.errorMsg)}}function TX(t,n){if(1&t){const e=pe();d(0,"div")(1,"form",7),N("ngSubmit",function(){return se(e),D().setSourceDBDetailsForDump()}),d(2,"h4",8),h(3,"Load from database dump"),c(),h(4," Dump File "),d(5,"mat-form-field",9)(6,"mat-label"),h(7,"File path"),c(),d(8,"input",10),N("click",function(){return se(e),$t(13).click()}),c(),_(9,DX,1,1,"mat-spinner",11),_(10,SX,2,0,"mat-icon",12),_(11,MX,2,0,"mat-icon",13),c(),d(12,"input",14,15),N("change",function(o){return se(e),D().handleFileInput(o)}),c(),E(14,"br"),d(15,"button",16),h(16,"CANCEL"),c(),d(17,"button",17),h(18," SAVE "),c(),_(19,xX,5,1,"div",18),c()()}if(2&t){const e=D();f(1),m("formGroup",e.dumpFileForm),f(8),m("ngIf",e.uploadStart&&!e.uploadSuccess&&!e.uploadFail),f(1),m("ngIf",e.uploadStart&&e.uploadSuccess),f(1),m("ngIf",e.uploadStart&&e.uploadFail),f(6),m("disabled",!e.dumpFileForm.valid||!e.uploadSuccess),f(2),m("ngIf",""!=e.errorMsg)}}function kX(t,n){if(1&t&&(d(0,"div",22)(1,"span",23),h(2,"Source database connection failed"),c(),d(3,"mat-icon",24),h(4," error "),c()()),2&t){const e=D(2);f(3),m("matTooltip",e.errorMsg)}}function EX(t,n){if(1&t){const e=pe();d(0,"div")(1,"form",7),N("ngSubmit",function(){return se(e),D().setSourceDBDetailsForDirectConnect()}),d(2,"h4",8),h(3,"Connect to Source Database"),c(),h(4," Connection Detail "),d(5,"mat-form-field",25)(6,"mat-label"),h(7,"Hostname"),c(),E(8,"input",26),c(),d(9,"mat-form-field",25)(10,"mat-label"),h(11,"Port"),c(),E(12,"input",27),d(13,"mat-error"),h(14," Only numbers are allowed. "),c()(),E(15,"br"),d(16,"mat-form-field",25)(17,"mat-label"),h(18,"User name"),c(),E(19,"input",28),c(),d(20,"mat-form-field",25)(21,"mat-label"),h(22,"Password"),c(),E(23,"input",29),c(),E(24,"br"),d(25,"mat-form-field",25)(26,"mat-label"),h(27,"Database Name"),c(),E(28,"input",30),c(),E(29,"br"),d(30,"button",16),h(31,"CANCEL"),c(),d(32,"button",17),h(33," SAVE "),c(),_(34,kX,5,1,"div",18),c()()}if(2&t){const e=D();f(1),m("formGroup",e.directConnectForm),f(31),m("disabled",!e.directConnectForm.valid),f(2),m("ngIf",""!=e.errorMsg)}}let IX=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.dataService=i,this.snack=o,this.dialogRef=r,this.data=s,this.inputOptions=[{value:mi.DumpFile,display:"Connect via dump file"},{value:mi.DirectConnect,display:"Connect via direct connection"}],this.selectedOption=mi.DirectConnect,this.sourceDatabaseEngine="",this.errorMsg="",this.fileToUpload=null,this.uploadStart=!1,this.uploadSuccess=!1,this.uploadFail=!1,this.dumpFileForm=new an({filePath:new X("",[de.required])}),this.directConnectForm=new an({hostName:new X("",[de.required]),port:new X("",[de.required]),userName:new X("",[de.required]),dbName:new X("",[de.required]),password:new X("")}),this.sourceDatabaseEngine=s}ngOnInit(){}setSourceDBDetailsForDump(){const{filePath:e}=this.dumpFileForm.value;this.fetch.setSourceDBDetailsForDump({Driver:this.sourceDatabaseEngine,Path:e}).subscribe({next:()=>{localStorage.setItem(le.IsSourceDetailsSet,"true"),this.dialogRef.close()},error:o=>{this.errorMsg=o.error}})}setSourceDBDetailsForDirectConnect(){const{hostName:e,port:i,userName:o,password:r,dbName:s}=this.directConnectForm.value;this.fetch.setSourceDBDetailsForDirectConnect({dbEngine:this.sourceDatabaseEngine,isSharded:!1,hostName:e,port:i,userName:o,password:r,dbName:s}).subscribe({next:()=>{localStorage.setItem(le.IsSourceDetailsSet,"true"),this.dialogRef.close()},error:l=>{this.errorMsg=l.error}})}handleFileInput(e){var i;let o=e.target.files;o&&(this.fileToUpload=o.item(0),this.dumpFileForm.patchValue({filePath:null===(i=this.fileToUpload)||void 0===i?void 0:i.name}),this.fileToUpload&&this.uploadFile())}uploadFile(){var e;if(this.fileToUpload){this.uploadStart=!0,this.uploadFail=!1,this.uploadSuccess=!1;const i=new FormData;i.append("myFile",this.fileToUpload,null===(e=this.fileToUpload)||void 0===e?void 0:e.name),this.dataService.uploadFile(i).subscribe(o=>{""==o?this.uploadSuccess=!0:this.uploadFail=!0})}}onItemChange(e){this.selectedOption=e,this.errorMsg=""}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Ln),b(Bo),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-source-details-form"]],decls:7,vars:4,consts:[[1,"radio-button-container"],[1,"radio-button-group",3,"ngModel","ngModelChange"],[3,"value","change",4,"ngFor","ngForOf"],[1,"connect-load-database-container"],[1,"form-container"],[4,"ngIf"],[3,"value","change"],[3,"formGroup","ngSubmit"],[1,"primary-header"],["appearance","outline"],["matInput","","placeholder","File path","name","filePath","type","text","formControlName","filePath","readonly","",3,"click"],["matSuffix","",3,"diameter",4,"ngIf"],["matSuffix","","class","success",4,"ngIf"],["matSuffix","","class","danger",4,"ngIf"],["hidden","","type","file",3,"change"],["file",""],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","type","submit","color","primary",3,"disabled"],["class","failure",4,"ngIf"],["matSuffix","",3,"diameter"],["matSuffix","",1,"success"],["matSuffix","",1,"danger"],[1,"failure"],[1,"left-text"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"],["appearance","outline",1,"full-width"],["matInput","","placeholder","127.0.0.1","name","hostName","type","text","formControlName","hostName"],["matInput","","placeholder","3306","name","port","type","text","formControlName","port"],["matInput","","placeholder","root","name","userName","type","text","formControlName","userName"],["matInput","","name","password","type","password","formControlName","password"],["matInput","","name","dbname","type","text","formControlName","dbName"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-radio-group",1),N("ngModelChange",function(r){return i.selectedOption=r}),_(2,wX,2,2,"mat-radio-button",2),c()(),d(3,"div",3)(4,"div",4),_(5,TX,20,6,"div",5),_(6,EX,35,3,"div",5),c()()),2&e&&(f(1),m("ngModel",i.selectedOption),f(1),m("ngForOf",i.inputOptions),f(3),m("ngIf","dumpFile"===i.selectedOption),f(1),m("ngIf","directConnect"===i.selectedOption))},directives:[xp,bn,El,ri,Tp,Et,xi,Hn,Sn,En,Mn,li,Dn,Xn,eo,Ab,_n,Ht,Ji,ki,Ob],styles:[""]}),t})();function OX(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",6),E(3,"mat-spinner",7),c(),d(4,"span",8),h(5,"Cleaning up resources"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}let AX=(()=>{class t{constructor(e,i,o,r){this.data=e,this.fetch=i,this.snack=o,this.dialogRef=r,this.sourceAndTargetDetails={SpannerDatabaseName:"",SpannerDatabaseUrl:"",SourceDatabaseName:"",SourceDatabaseType:""},this.cleaningUp=!1,this.sourceAndTargetDetails={SourceDatabaseName:e.SourceDatabaseName,SourceDatabaseType:e.SourceDatabaseType,SpannerDatabaseName:e.SpannerDatabaseName,SpannerDatabaseUrl:e.SpannerDatabaseUrl}}ngOnInit(){}cleanUpJobs(){this.cleaningUp=!0,this.fetch.cleanUpStreamingJobs().subscribe({next:()=>{this.cleaningUp=!1,this.snack.openSnackBar("Dataflow and datastream jobs will be cleaned up","Close"),this.dialogRef.close()},error:e=>{this.cleaningUp=!1,this.snack.openSnackBar(e.error,"Close")}})}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Bi),b(Bo),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-end-migration"]],decls:45,vars:7,consts:[["target","_blank",3,"href"],["href","https://github.com/GoogleCloudPlatform/professional-services-data-validator","target","_blank"],[4,"ngIf"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close","",3,"disabled"],["mat-raised-button","","color","primary",3,"disabled","click"],[1,"spinner"],[3,"diameter"],[1,"spinner-small-text"]],template:function(e,i){1&e&&(d(0,"h2"),h(1,"End Migration"),c(),d(2,"div")(3,"b"),h(4,"Source database:"),c(),h(5),E(6,"br"),d(7,"b"),h(8,"Spanner database:"),c(),d(9,"a",0),h(10),c()(),E(11,"br"),d(12,"div")(13,"b"),h(14,"Please follow these steps to complete the migration:"),c(),d(15,"ol")(16,"li"),h(17,"Validate that the schema has been created on Spanner as per the configuration"),c(),d(18,"li"),h(19,"Validate the data has been copied from the Source to Spanner. You can use the "),d(20,"a",1),h(21,"Data Validation Tool"),c(),h(22," to help with this process."),c(),d(23,"li"),h(24,"Stop the writes to the source database. "),d(25,"b"),h(26,"This will initiate a period of downtime."),c()(),d(27,"li"),h(28,"Wait for any incremental writes on source since the validation started on Spanner to catch up with the source. This can be done by periodically checking the Spanner Database for the most recent updates on source."),c(),d(29,"li"),h(30,"Once the Source and Spanner are in sync, start the application with Spanner as the Database."),c(),d(31,"li"),h(32,"Perform smoke tests on your application to ensure it is working properly on Spanner"),c(),d(33,"li"),h(34,"Cutover the traffic to the application with Spanner as the Database. "),d(35,"b"),h(36,"This marks the end of the period of downtime"),c()(),d(37,"li"),h(38,"Cleanup the migration jobs by clicking the button below."),c()()(),_(39,OX,7,1,"div",2),d(40,"div",3)(41,"button",4),h(42,"Cancel"),c(),d(43,"button",5),N("click",function(){return i.cleanUpJobs()}),h(44,"Clean Up"),c()()),2&e&&(f(5),hl(" ",i.sourceAndTargetDetails.SourceDatabaseName,"(",i.sourceAndTargetDetails.SourceDatabaseType,") "),f(4),m("href",i.sourceAndTargetDetails.SpannerDatabaseUrl,Gi),f(1),Ee(i.sourceAndTargetDetails.SpannerDatabaseName),f(29),m("ngIf",i.cleaningUp),f(2),m("disabled",i.cleaningUp),f(2),m("disabled",i.cleaningUp))},directives:[Et,eo,Dr,Ht,Ji],styles:[""]}),t})(),PX=(()=>{class t{constructor(e,i){this.data=e,this.dialofRef=i,this.dataflowForm=new an({network:new X(""),subnetwork:new X(""),numWorkers:new X("1",[de.required,de.pattern("^[1-9][0-9]*$")]),maxWorkers:new X("50",[de.required,de.pattern("^[1-9][0-9]*$")]),serviceAccountEmail:new X(""),hostProjectId:new X(e.GCPProjectID,de.required)})}ngOnInit(){}updateDataflowDetails(){let e=this.dataflowForm.value;localStorage.setItem("network",e.network),localStorage.setItem("subnetwork",e.subnetwork),localStorage.setItem("hostProjectId",e.hostProjectId),localStorage.setItem("maxWorkers",e.maxWorkers),localStorage.setItem("numWorkers",e.numWorkers),localStorage.setItem("serviceAccountEmail",e.serviceAccountEmail),localStorage.setItem("isDataflowConfigSet","true"),this.dialofRef.close()}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-dataflow-form"]],decls:38,vars:6,consts:[["mat-dialog-content",""],[1,"dataflow-form",3,"formGroup"],["appearance","outline","matTooltip","Edit to run Dataflow in a shared VPC","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","Host ProjectID","type","text","formControlName","hostProjectId"],["appearance","outline",1,"full-width"],["matInput","","placeholder","VPC Network Name","type","text","formControlName","network"],["matInput","","placeholder","VPC Subnetwork Name","type","text","formControlName","subnetwork"],["appearance","outline","matTooltip","Set maximum workers for the dataflow job(s). Default value: 50","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","50","type","text","formControlName","maxWorkers"],["appearance","outline","matTooltip","Set initial number of workers for the dataflow job(s). Default value: 1","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","1","type","text","formControlName","numWorkers"],["appearance","outline","matTooltip","Set the service account to run the dataflow job(s) as","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","Service Account Email","type","text","formControlName","serviceAccountEmail"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Dataflow Details"),c(),d(4,"mat-form-field",2)(5,"mat-label"),h(6,"Host ProjectID"),c(),E(7,"input",3),c(),E(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"VPC Network"),c(),E(12,"input",5),c(),E(13,"br"),d(14,"mat-form-field",4)(15,"mat-label"),h(16,"VPC Subnetwork"),c(),E(17,"input",6),c(),E(18,"br"),d(19,"mat-form-field",7)(20,"mat-label"),h(21,"Max Workers"),c(),E(22,"input",8),c(),E(23,"br"),d(24,"mat-form-field",9)(25,"mat-label"),h(26,"Number of Workers"),c(),E(27,"input",10),c(),E(28,"br"),d(29,"mat-form-field",11)(30,"mat-label"),h(31,"Service Account Email"),c(),E(32,"input",12),c()(),d(33,"div",13)(34,"button",14),h(35,"Cancel"),c(),d(36,"button",15),N("click",function(){return i.updateDataflowDetails()}),h(37," Save "),c()()()),2&e&&(f(1),m("formGroup",i.dataflowForm),f(3),m("matTooltipPosition","right"),f(15),m("matTooltipPosition","right"),f(5),m("matTooltipPosition","right"),f(5),m("matTooltipPosition","right"),f(7),m("disabled",!i.dataflowForm.valid))},directives:[wr,xi,Hn,Sn,En,ki,Mn,li,Dn,bn,Xn,Dr,Ht,Ji],styles:[""]}),t})(),RX=(()=>{class t{constructor(e,i){this.data=e,this.dialofRef=i,this.gcloudCmd=e}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-equivalent-gcloud-command"]],decls:12,vars:2,consts:[["mat-dialog-content",""],["matTooltip","This is the gcloud command to launch the dataflow job with the same parameters. Can be used to re-run a dataflow job manually in case of failure.",1,"configure"],[1,"left-text"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","color","primary",3,"cdkCopyToClipboard"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h2"),h(2,"Equivalent gcloud command line"),d(3,"mat-icon",1),h(4," info"),c()(),d(5,"span",2),h(6),c(),d(7,"div",3)(8,"button",4),h(9,"Close"),c(),d(10,"button",5),h(11,"Copy"),c()()()),2&e&&(f(6),Ee(i.gcloudCmd),f(4),m("cdkCopyToClipboard",i.gcloudCmd))},directives:[wr,_n,ki,Dr,Ht,Ji,fv],styles:[""]}),t})();function FX(t,n){if(1&t&&(d(0,"mat-option",14),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function NX(t,n){1&t&&(d(0,"div",15)(1,"mat-form-field",4)(2,"mat-label"),h(3,"Paste JSON Configuration"),c(),E(4,"textarea",16,17),c()())}function LX(t,n){1&t&&(d(0,"div",18)(1,"mat-form-field",19)(2,"mat-label"),h(3,"Hostname"),c(),E(4,"input",20),c(),d(5,"mat-form-field",19)(6,"mat-label"),h(7,"Port"),c(),E(8,"input",21),d(9,"mat-error"),h(10," Only numbers are allowed. "),c()(),E(11,"br"),d(12,"mat-form-field",19)(13,"mat-label"),h(14,"User name"),c(),E(15,"input",22),c(),d(16,"mat-form-field",19)(17,"mat-label"),h(18,"Password"),c(),E(19,"input",23),c(),E(20,"br"),d(21,"mat-form-field",19)(22,"mat-label"),h(23,"Database Name"),c(),E(24,"input",24),c(),E(25,"br"),d(26,"mat-form-field",19)(27,"mat-label"),h(28,"Shard ID"),c(),E(29,"input",25),c(),E(30,"br"),c())}function BX(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D().saveDetailsAndReset()}),h(1," ADD MORE SHARDS "),c()}2&t&&m("disabled",D().directConnectForm.invalid)}function VX(t,n){if(1&t&&(d(0,"div",27)(1,"span",28),h(2),c(),d(3,"mat-icon",29),h(4," error "),c()()),2&t){const e=D();f(2),Ee(e.errorMsg),f(1),m("matTooltip",e.errorMsg)}}let jX=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.snack=i,this.dataService=o,this.dialogRef=r,this.data=s,this.errorMsg="",this.shardConnDetailsList=[],this.sourceConnDetails={dbConfigs:[],isRestoredSession:""},this.shardSessionDetails={sourceDatabaseEngine:"",isRestoredSession:""},this.inputOptionsList=[{value:"text",displayName:"Text"},{value:"form",displayName:"Form"}],this.shardSessionDetails={sourceDatabaseEngine:s.sourceDatabaseEngine,isRestoredSession:s.isRestoredSession};let a={dbEngine:"",isSharded:!1,hostName:"",port:"",userName:"",password:"",dbName:""};localStorage.getItem(In.Type)==mi.DirectConnect&&null!=localStorage.getItem(In.Config)&&(a=JSON.parse(localStorage.getItem(In.Config))),this.directConnectForm=new an({inputType:new X("form",[de.required]),textInput:new X(""),hostName:new X(a.hostName,[de.required]),port:new X(a.port,[de.required]),userName:new X(a.userName,[de.required]),dbName:new X(a.dbName,[de.required]),password:new X(a.password),shardId:new X("",[de.required])})}ngOnInit(){this.initFromLocalStorage()}initFromLocalStorage(){}setValidators(e){var i,o,r,s,a,l,u,p,g;if("text"==e){for(const v in this.directConnectForm.controls)null===(i=this.directConnectForm.get(v))||void 0===i||i.clearValidators(),null===(o=this.directConnectForm.get(v))||void 0===o||o.updateValueAndValidity();null===(r=this.directConnectForm.get("textInput"))||void 0===r||r.setValidators([de.required]),this.directConnectForm.controls.textInput.updateValueAndValidity()}else null===(s=this.directConnectForm.get("hostName"))||void 0===s||s.setValidators([de.required]),this.directConnectForm.controls.hostName.updateValueAndValidity(),null===(a=this.directConnectForm.get("port"))||void 0===a||a.setValidators([de.required]),this.directConnectForm.controls.port.updateValueAndValidity(),null===(l=this.directConnectForm.get("userName"))||void 0===l||l.setValidators([de.required]),this.directConnectForm.controls.userName.updateValueAndValidity(),null===(u=this.directConnectForm.get("dbName"))||void 0===u||u.setValidators([de.required]),this.directConnectForm.controls.dbName.updateValueAndValidity(),null===(p=this.directConnectForm.get("password"))||void 0===p||p.setValidators([de.required]),this.directConnectForm.controls.password.updateValueAndValidity(),null===(g=this.directConnectForm.get("shardId"))||void 0===g||g.setValidators([de.required]),this.directConnectForm.controls.shardId.updateValueAndValidity(),this.directConnectForm.controls.textInput.clearValidators(),this.directConnectForm.controls.textInput.updateValueAndValidity()}determineFormValidity(){return this.shardConnDetailsList.length>0||!!this.directConnectForm.valid}saveDetailsAndReset(){const{hostName:e,port:i,userName:o,password:r,dbName:s,shardId:a}=this.directConnectForm.value;this.shardConnDetailsList.push({dbEngine:this.shardSessionDetails.sourceDatabaseEngine,isSharded:!1,hostName:e,port:i,userName:o,password:r,dbName:s,shardId:a}),this.directConnectForm=new an({inputType:new X("form",de.required),textInput:new X(""),hostName:new X(""),port:new X(""),userName:new X(""),dbName:new X(""),password:new X(""),shardId:new X("")}),this.setValidators("form"),this.snack.openSnackBar("Shard configured successfully, please configure the next","Close",5)}finalizeConnDetails(){if("form"===this.directConnectForm.value.inputType){const{hostName:i,port:o,userName:r,password:s,dbName:a,shardId:l}=this.directConnectForm.value;this.shardConnDetailsList.push({dbEngine:this.shardSessionDetails.sourceDatabaseEngine,isSharded:!1,hostName:i,port:o,userName:r,password:s,dbName:a,shardId:l}),this.sourceConnDetails.dbConfigs=this.shardConnDetailsList}else{try{this.sourceConnDetails.dbConfigs=JSON.parse(this.directConnectForm.value.textInput)}catch(i){throw this.errorMsg="Unable to parse JSON",new Error(this.errorMsg)}this.sourceConnDetails.dbConfigs.forEach(i=>{i.dbEngine=this.shardSessionDetails.sourceDatabaseEngine})}this.sourceConnDetails.isRestoredSession=this.shardSessionDetails.isRestoredSession,this.fetch.setShardsSourceDBDetailsForBulk(this.sourceConnDetails).subscribe({next:()=>{localStorage.setItem(le.NumberOfShards,this.sourceConnDetails.dbConfigs.length.toString()),localStorage.setItem(le.NumberOfInstances,this.sourceConnDetails.dbConfigs.length.toString()),localStorage.setItem(le.IsSourceDetailsSet,"true"),this.dialogRef.close()},error:i=>{this.errorMsg=i.error}})}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Bo),b(Ln),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-sharded-bulk-source-details-form"]],decls:23,vars:7,consts:[[1,"connect-load-database-container"],[1,"form-container"],[1,"shard-bulk-form",3,"formGroup"],[1,"primary-header"],["appearance","outline"],["formControlName","inputType",3,"selectionChange"],["inputType",""],[3,"value",4,"ngFor","ngForOf"],["class","textInput",4,"ngIf"],["class","formInput",4,"ngIf"],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","type","submit","color","accent",3,"disabled","click",4,"ngIf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["class","failure",4,"ngIf"],[3,"value"],[1,"textInput"],["name","textInput","formControlName","textInput","matInput","","cdkTextareaAutosize","","cdkAutosizeMinRows","5","cdkAutosizeMaxRows","20"],["autosize","cdkTextareaAutosize"],[1,"formInput"],["appearance","outline",1,"full-width"],["matInput","","placeholder","127.0.0.1","name","hostName","type","text","formControlName","hostName"],["matInput","","placeholder","3306","name","port","type","text","formControlName","port"],["matInput","","placeholder","root","name","userName","type","text","formControlName","userName"],["matInput","","name","password","type","password","formControlName","password"],["matInput","","name","dbname","type","text","formControlName","dbName"],["matInput","","name","shardId","type","text","formControlName","shardId"],["mat-raised-button","","type","submit","color","accent",3,"disabled","click"],[1,"failure"],[1,"left-text"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"div",1)(2,"form",2)(3,"h4",3),h(4,"Add Data Shard Connection Details"),c(),d(5,"b"),h(6,"Note: Please configure the schema source used for schema conversion if you want Spanner migration tool to migrate data from it as well."),c(),E(7,"br")(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"Input Type"),c(),d(12,"mat-select",5,6),N("selectionChange",function(){se(o);const s=$t(13);return i.setValidators(s.value)}),_(14,FX,2,2,"mat-option",7),c()(),_(15,NX,6,0,"div",8),_(16,LX,31,0,"div",9),d(17,"button",10),h(18,"CANCEL"),c(),_(19,BX,2,1,"button",11),d(20,"button",12),N("click",function(){return i.finalizeConnDetails()}),h(21," FINISH "),c(),_(22,VX,5,2,"div",13),c()()()}2&e&&(f(2),m("formGroup",i.directConnectForm),f(12),m("ngForOf",i.inputOptionsList),f(1),m("ngIf","text"===i.directConnectForm.value.inputType),f(1),m("ngIf","form"===i.directConnectForm.value.inputType),f(3),m("ngIf","form"===i.directConnectForm.value.inputType),f(1),m("disabled",!i.determineFormValidity()),f(2),m("ngIf",""!=i.errorMsg))},directives:[xi,Hn,Sn,En,Mn,Yi,bn,Xn,ri,_i,Et,Dn,li,vT,Ob,Ht,Ji,_n,ki],styles:[""]}),t})();function HX(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function UX(t,n){if(1&t&&(d(0,"div",17)(1,"mat-card")(2,"mat-card-header")(3,"mat-card-title"),h(4,"Total Configured Shards"),c(),d(5,"mat-card-subtitle"),h(6),c(),d(7,"mat-card-subtitle"),h(8),c()()()()),2&t){const e=D();f(6),Se("",e.physicalShards," physical instances configured."),f(2),Se("",e.logicalShards," logical shards configured.")}}function zX(t,n){1&t&&(d(0,"div",18)(1,"mat-form-field",19)(2,"mat-label"),h(3,"Paste JSON Configuration"),c(),E(4,"textarea",20,21),c()())}function $X(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",35),N("change",function(){const r=se(e).$implicit;return D(2).onItemChange(r.value,"source")}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function GX(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayName),f(1),Se(" ",e.DisplayName," ")}}function WX(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",5)(2,"mat-label"),h(3,"Select source connection profile"),c(),d(4,"mat-select",36),_(5,GX,2,2,"mat-option",8),c()(),d(6,"mat-form-field",5)(7,"mat-label"),h(8,"Data Shard Id"),c(),E(9,"input",37),c()()),2&t){const e=D(2);f(5),m("ngForOf",e.sourceProfileList),f(4),m("value",e.inputValue)}}function qX(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",5)(2,"mat-label"),h(3,"Host"),c(),E(4,"input",38),c(),d(5,"mat-form-field",5)(6,"mat-label"),h(7,"User"),c(),E(8,"input",39),c(),d(9,"mat-form-field",5)(10,"mat-label"),h(11,"Port"),c(),E(12,"input",40),c(),d(13,"mat-form-field",5)(14,"mat-label"),h(15,"Password"),c(),E(16,"input",41),c(),d(17,"mat-form-field",42)(18,"mat-label"),h(19,"Connection profile name"),c(),E(20,"input",43),c(),d(21,"mat-form-field",5)(22,"mat-label"),h(23,"Data Shard Id"),c(),E(24,"input",37),c()()),2&t){const e=D(2);f(24),m("value",e.inputValue)}}function KX(t,n){if(1&t&&(d(0,"li",50)(1,"span",51),h(2),c(),d(3,"span")(4,"mat-icon",52),h(5,"file_copy"),c()()()),2&t){const e=n.$implicit;f(2),Ee(e),f(2),m("cdkCopyToClipboard",e)}}function ZX(t,n){if(1&t&&(d(0,"div",53)(1,"span",51),h(2,"Test connection failed"),c(),d(3,"mat-icon",54),h(4," error "),c()()),2&t){const e=D(3);f(3),m("matTooltip",e.errorSrcMsg)}}function QX(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",55),E(3,"mat-spinner",56),c(),d(4,"span",57),h(5,"Testing Connection"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}function YX(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",55),E(3,"mat-spinner",56),c(),d(4,"span",57),h(5,"Creating source connection profile"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}function XX(t,n){1&t&&(d(0,"mat-icon",58),h(1," check_circle "),c())}function JX(t,n){1&t&&(d(0,"mat-icon",59),h(1," check_circle "),c())}function eJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"div")(2,"b"),h(3,"Copy the public IPs below, and use them to configure the network firewall to accept connections from them."),c(),d(4,"a",44),h(5,"Learn More"),c()(),E(6,"br"),_(7,KX,6,2,"li",45),_(8,ZX,5,1,"div",15),E(9,"br"),_(10,QX,7,1,"div",26),_(11,YX,7,1,"div",26),_(12,XX,2,0,"mat-icon",46),d(13,"button",47),N("click",function(){return se(e),D(2).createOrTestConnection(!0,!0)}),h(14,"TEST CONNECTION"),c(),_(15,JX,2,0,"mat-icon",48),d(16,"button",49),N("click",function(){return se(e),D(2).createOrTestConnection(!0,!1)}),h(17,"CREATE PROFILE"),c()()}if(2&t){const e=D(2);f(7),m("ngForOf",e.ipList),f(1),m("ngIf",!e.testSuccess&&""!=e.errorSrcMsg),f(2),m("ngIf",e.testingSourceConnection),f(1),m("ngIf",e.creatingSourceConnection),f(1),m("ngIf",e.testSuccess),f(1),m("disabled",!e.determineConnectionProfileInfoValidity()||e.testingSourceConnection),f(2),m("ngIf",e.createSrcConnSuccess),f(1),m("disabled",!e.testSuccess||e.creatingSourceConnection)}}function tJ(t,n){if(1&t){const e=pe();be(0),d(1,"div",60)(2,"mat-form-field",5)(3,"mat-label"),h(4,"Logical Shard ID"),c(),E(5,"input",61),c(),d(6,"mat-form-field",5)(7,"mat-label"),h(8,"Source Database Name"),c(),E(9,"input",62),c(),d(10,"mat-icon",63),N("click",function(){const r=se(e).index;return D(2).deleteRow(r)}),h(11," delete_forever"),c()(),ve()}if(2&t){const e=n.index;f(1),m("formGroupName",e)}}function nJ(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",35),N("change",function(){const r=se(e).$implicit;return D(2).onItemChange(r.value,"target")}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function iJ(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayName),f(1),Se(" ",e.DisplayName," ")}}function oJ(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",5)(2,"mat-label"),h(3,"Select target connection profile"),c(),d(4,"mat-select",64),_(5,iJ,2,2,"mat-option",8),c()()()),2&t){const e=D(2);f(5),m("ngForOf",e.targetProfileList)}}function rJ(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",55),E(3,"mat-spinner",56),c(),d(4,"span",57),h(5,"Creating target connection profile"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}function sJ(t,n){1&t&&(d(0,"mat-icon",59),h(1," check_circle "),c())}function aJ(t,n){if(1&t&&(d(0,"div",53)(1,"span",51),h(2),c()()),2&t){const e=D(3);f(2),Ee(e.errorTgtMsg)}}function lJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-form-field",42)(2,"mat-label"),h(3,"Connection profile name"),c(),E(4,"input",65),c(),_(5,rJ,7,1,"div",26),_(6,sJ,2,0,"mat-icon",48),d(7,"button",49),N("click",function(){return se(e),D(2).createOrTestConnection(!1,!1)}),h(8,"CREATE PROFILE"),c(),_(9,aJ,3,1,"div",15),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.creatingTargetConnection),f(1),m("ngIf",e.createTgtConnSuccess),f(1),m("disabled",e.creatingTargetConnection),f(2),m("ngIf",""!=e.errorTgtMsg)}}function cJ(t,n){if(1&t){const e=pe();d(0,"div",18)(1,"span",22),h(2,"Configure Source Profile"),c(),d(3,"div",23)(4,"mat-radio-group",24),N("ngModelChange",function(o){return se(e),D().selectedSourceProfileOption=o}),_(5,$X,2,2,"mat-radio-button",25),c()(),E(6,"br"),_(7,WX,10,2,"div",26),_(8,qX,25,1,"div",26),E(9,"br"),_(10,eJ,18,8,"div",26),E(11,"hr"),d(12,"span",22),h(13,"Configure ShardId and Database Names"),c(),d(14,"mat-icon",27),h(15,"info"),c(),E(16,"br")(17,"br"),d(18,"span",28),be(19,29),_(20,tJ,12,1,"ng-container",30),ve(),c(),d(21,"div",31)(22,"button",32),N("click",function(){return se(e),D().addRow()}),h(23,"ADD ROW"),c()(),E(24,"br")(25,"hr"),d(26,"span",22),h(27,"Configure Target Profile"),c(),d(28,"div",33)(29,"mat-radio-group",34),N("ngModelChange",function(o){return se(e),D().selectedTargetProfileOption=o}),_(30,nJ,2,2,"mat-radio-button",25),c()(),E(31,"br"),_(32,oJ,6,1,"div",26),_(33,lJ,10,4,"div",26),E(34,"hr"),c()}if(2&t){const e=D();f(4),m("ngModel",e.selectedSourceProfileOption),f(1),m("ngForOf",e.profileOptions),f(2),m("ngIf","existing"===e.selectedSourceProfileOption),f(1),m("ngIf","new"===e.selectedSourceProfileOption),f(2),m("ngIf","new"===e.selectedSourceProfileOption),f(10),m("ngForOf",e.shardMappingTable.controls),f(9),m("ngModel",e.selectedTargetProfileOption),f(1),m("ngForOf",e.profileOptions),f(2),m("ngIf","existing"===e.selectedTargetProfileOption),f(1),m("ngIf","new"===e.selectedTargetProfileOption)}}function dJ(t,n){if(1&t){const e=pe();d(0,"button",66),N("click",function(){return se(e),D().saveDetailsAndReset()}),h(1," ADD MORE SHARDS "),c()}2&t&&m("disabled",!D().determineFormValidity())}function uJ(t,n){if(1&t&&(d(0,"div",53)(1,"span",51),h(2),c(),d(3,"mat-icon",54),h(4," error "),c()()),2&t){const e=D();f(2),Ee(e.errorMsg),f(1),m("matTooltip",e.errorMsg)}}let hJ=(()=>{class t{constructor(e,i,o,r,s){var a,l,u,p,g,v,C,M,V;this.fetch=e,this.snack=i,this.formBuilder=o,this.dialogRef=r,this.data=s,this.selectedProfile="",this.profileType="",this.sourceProfileList=[],this.targetProfileList=[],this.definedSrcConnProfileList=[],this.definedTgtConnProfileList=[],this.shardIdToDBMappingTable=[],this.dataShardIdList=[],this.ipList=[],this.selectedSourceProfileOption="existing",this.selectedTargetProfileOption="existing",this.profileOptions=[{value:"existing",display:"Choose an existing connection profile"},{value:"new",display:"Create a new connection profile"}],this.profileName="",this.errorMsg="",this.errorSrcMsg="",this.errorTgtMsg="",this.sourceDatabaseType="",this.inputValue="",this.testSuccess=!1,this.createSrcConnSuccess=!1,this.createTgtConnSuccess=!1,this.physicalShards=0,this.logicalShards=0,this.testingSourceConnection=!1,this.creatingSourceConnection=!1,this.creatingTargetConnection=!1,this.prefix="smt_datashard",this.inputOptionsList=[{value:"text",displayName:"Text"},{value:"form",displayName:"Form"}],this.region=s.Region,this.sourceDatabaseType=s.SourceDatabaseType,localStorage.getItem(In.Type)==mi.DirectConnect&&(this.schemaSourceConfig=JSON.parse(localStorage.getItem(In.Config)));let Y=this.formBuilder.group({logicalShardId:["",de.required],dbName:["",de.required]});this.inputValue=this.prefix+"_"+this.randomString(4)+"_"+this.randomString(4),this.migrationProfileForm=this.formBuilder.group({inputType:["form",de.required],textInput:[""],sourceProfileOption:["new",de.required],targetProfileOption:["new",de.required],newSourceProfile:["",[de.pattern("^[a-z][a-z0-9-]{0,59}$")]],existingSourceProfile:[],newTargetProfile:["",de.pattern("^[a-z][a-z0-9-]{0,59}$")],existingTargetProfile:[],host:[null===(a=this.schemaSourceConfig)||void 0===a?void 0:a.hostName],user:[null===(l=this.schemaSourceConfig)||void 0===l?void 0:l.userName],port:[null===(u=this.schemaSourceConfig)||void 0===u?void 0:u.port],password:[null===(p=this.schemaSourceConfig)||void 0===p?void 0:p.password],dataShardId:[this.inputValue,de.required],shardMappingTable:this.formBuilder.array([Y])});let ke={schemaSource:{host:null===(g=this.schemaSourceConfig)||void 0===g?void 0:g.hostName,user:null===(v=this.schemaSourceConfig)||void 0===v?void 0:v.userName,password:null===(C=this.schemaSourceConfig)||void 0===C?void 0:C.password,port:null===(M=this.schemaSourceConfig)||void 0===M?void 0:M.port,dbName:null===(V=this.schemaSourceConfig)||void 0===V?void 0:V.dbName},dataShards:[]};this.migrationProfile={configType:"dataflow",shardConfigurationDataflow:ke}}ngOnInit(){this.getConnectionProfiles(!0),this.getConnectionProfiles(!1),this.getDatastreamIPs(),this.initFromLocalStorage()}initFromLocalStorage(){}get shardMappingTable(){return this.migrationProfileForm.controls.shardMappingTable}addRow(){let e=this.formBuilder.group({logicalShardId:["",de.required],dbName:["",de.required]});this.shardMappingTable.push(e)}deleteRow(e){this.shardMappingTable.removeAt(e)}getDatastreamIPs(){this.fetch.getStaticIps().subscribe({next:e=>{this.ipList=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}getConnectionProfiles(e){this.fetch.getConnectionProfiles(e).subscribe({next:i=>{e?this.sourceProfileList=i:this.targetProfileList=i},error:i=>{this.snack.openSnackBar(i.error,"Close")}})}onItemChange(e,i){var o,r,s,a,l,u,p,g;this.profileType=i,"source"===this.profileType?(this.selectedSourceProfileOption=e,"new"==this.selectedSourceProfileOption?(null===(o=this.migrationProfileForm.get("newSourceProfile"))||void 0===o||o.setValidators([de.required]),this.migrationProfileForm.controls.existingSourceProfile.clearValidators(),this.migrationProfileForm.controls.newSourceProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingSourceProfile.updateValueAndValidity(),null===(r=this.migrationProfileForm.get("host"))||void 0===r||r.setValidators([de.required]),this.migrationProfileForm.controls.host.updateValueAndValidity(),null===(s=this.migrationProfileForm.get("user"))||void 0===s||s.setValidators([de.required]),this.migrationProfileForm.controls.user.updateValueAndValidity(),null===(a=this.migrationProfileForm.get("port"))||void 0===a||a.setValidators([de.required]),this.migrationProfileForm.controls.port.updateValueAndValidity(),null===(l=this.migrationProfileForm.get("password"))||void 0===l||l.setValidators([de.required]),this.migrationProfileForm.controls.password.updateValueAndValidity()):(this.migrationProfileForm.controls.newSourceProfile.clearValidators(),null===(u=this.migrationProfileForm.get("existingSourceProfile"))||void 0===u||u.addValidators([de.required]),this.migrationProfileForm.controls.newSourceProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingSourceProfile.updateValueAndValidity(),this.migrationProfileForm.controls.host.clearValidators(),this.migrationProfileForm.controls.host.updateValueAndValidity(),this.migrationProfileForm.controls.user.clearValidators(),this.migrationProfileForm.controls.user.updateValueAndValidity(),this.migrationProfileForm.controls.port.clearValidators(),this.migrationProfileForm.controls.port.updateValueAndValidity(),this.migrationProfileForm.controls.password.clearValidators(),this.migrationProfileForm.controls.password.updateValueAndValidity())):(this.selectedTargetProfileOption=e,"new"==this.selectedTargetProfileOption?(null===(p=this.migrationProfileForm.get("newTargetProfile"))||void 0===p||p.setValidators([de.required]),this.migrationProfileForm.controls.existingTargetProfile.clearValidators(),this.migrationProfileForm.controls.newTargetProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingTargetProfile.updateValueAndValidity()):(this.migrationProfileForm.controls.newTargetProfile.clearValidators(),null===(g=this.migrationProfileForm.get("existingTargetProfile"))||void 0===g||g.addValidators([de.required]),this.migrationProfileForm.controls.newTargetProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingTargetProfile.updateValueAndValidity()))}setValidators(e){if("text"===e){for(const o in this.migrationProfileForm.controls)this.migrationProfileForm.controls[o].clearValidators(),this.migrationProfileForm.controls[o].updateValueAndValidity();this.migrationProfileForm.get("shardMappingTable").controls.forEach(o=>{const r=o,s=r.get("logicalShardId"),a=r.get("dbName");null==s||s.clearValidators(),null==s||s.updateValueAndValidity(),null==a||a.clearValidators(),null==a||a.updateValueAndValidity()}),this.migrationProfileForm.controls.textInput.setValidators([de.required]),this.migrationProfileForm.controls.textInput.updateValueAndValidity()}else this.onItemChange("new","source"),this.onItemChange("new","target"),this.migrationProfileForm.controls.textInput.clearValidators(),this.migrationProfileForm.controls.textInput.updateValueAndValidity()}saveDetailsAndReset(){this.handleConnConfigsFromForm();let e=this.formBuilder.group({logicalShardId:["",de.required],dbName:["",de.required]});this.inputValue=this.prefix+"_"+this.randomString(4)+"_"+this.randomString(4),this.migrationProfileForm=this.formBuilder.group({inputType:["form",de.required],textInput:[],sourceProfileOption:[this.selectedSourceProfileOption],targetProfileOption:[this.selectedTargetProfileOption],newSourceProfile:["",[de.pattern("^[a-z][a-z0-9-]{0,59}$")]],existingSourceProfile:[],newTargetProfile:["",de.pattern("^[a-z][a-z0-9-]{0,59}$")],existingTargetProfile:[],host:[],user:[],port:[],password:[],dataShardId:[this.inputValue],shardMappingTable:this.formBuilder.array([e])}),this.testSuccess=!1,this.createSrcConnSuccess=!1,this.createTgtConnSuccess=!1,this.snack.openSnackBar("Shard configured successfully, please configure the next","Close",5)}randomString(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",o="",r=0;r{localStorage.setItem(le.IsSourceConnectionProfileSet,"true"),localStorage.setItem(le.IsTargetConnectionProfileSet,"true"),localStorage.setItem(le.NumberOfShards,this.determineTotalLogicalShardsConfigured().toString()),localStorage.setItem(le.NumberOfInstances,this.migrationProfile.shardConfigurationDataflow.dataShards.length.toString()),this.dialogRef.close()},error:o=>{this.errorMsg=o.error}})}determineTotalLogicalShardsConfigured(){let e=0;return this.migrationProfile.shardConfigurationDataflow.dataShards.forEach(i=>{e+=i.databases.length}),e}handleConnConfigsFromForm(){let e=this.migrationProfileForm.value;this.dataShardIdList.push(e.dataShardId),this.definedSrcConnProfileList.push("new"===this.selectedSourceProfileOption?{name:e.newSourceProfile,location:this.region}:{name:e.existingSourceProfile,location:this.region}),this.definedTgtConnProfileList.push("new"===this.selectedTargetProfileOption?{name:e.newTargetProfile,location:this.region}:{name:e.existingTargetProfile,location:this.region});let i=[];for(let o of this.shardMappingTable.controls)if(o instanceof an){const r=o.value;i.push({dbName:r.dbName,databaseId:r.logicalShardId,refDataShardId:e.dataShardId})}this.shardIdToDBMappingTable.push(i),this.physicalShards++,this.logicalShards=this.logicalShards+i.length}determineFormValidity(){return!(!this.migrationProfileForm.valid||"new"===this.selectedSourceProfileOption&&!this.createSrcConnSuccess||"new"===this.selectedTargetProfileOption&&!this.createTgtConnSuccess)}determineFinishValidity(){return this.definedSrcConnProfileList.length>0||this.determineFormValidity()}determineConnectionProfileInfoValidity(){let e=this.migrationProfileForm.value;return null!=e.host&&null!=e.port&&null!=e.user&&null!=e.password&&null!=e.newSourceProfile}createOrTestConnection(e,i){i?this.testingSourceConnection=!0:e?this.creatingSourceConnection=!0:this.creatingTargetConnection=!0;let r,o=this.migrationProfileForm.value;r=e?{Id:o.newSourceProfile,IsSource:!0,ValidateOnly:i,Host:o.host,Port:o.port,User:o.user,Password:o.password}:{Id:o.newTargetProfile,IsSource:!1,ValidateOnly:i},this.fetch.createConnectionProfile(r).subscribe({next:()=>{i?(this.testingSourceConnection=!1,this.testSuccess=!0):e?(this.createSrcConnSuccess=!0,this.errorSrcMsg="",this.creatingSourceConnection=!1):(this.createTgtConnSuccess=!0,this.errorTgtMsg="",this.creatingTargetConnection=!1)},error:s=>{i?(this.testingSourceConnection=!1,this.testSuccess=!1,this.errorSrcMsg=s.error):e?(this.createSrcConnSuccess=!1,this.errorSrcMsg=s.error,this.creatingSourceConnection=!1):(this.createTgtConnSuccess=!1,this.errorTgtMsg=s.error,this.creatingTargetConnection=!1)}})}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Bo),b(Es),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-sharded-dataflow-migration-details-form"]],decls:26,vars:8,consts:[["mat-dialog-content","",1,"connect-load-database-container"],[1,"conn-profile-form",3,"formGroup"],[1,"mat-h2","header-title"],[1,"top"],[1,"top-1"],["appearance","outline"],["formControlName","inputType",3,"selectionChange"],["inputType",""],[3,"value",4,"ngFor","ngForOf"],["class","top-2",4,"ngIf"],["class","textInput",4,"ngIf"],[1,"last-btns"],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","type","submit","color","accent",3,"disabled","click",4,"ngIf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["class","failure",4,"ngIf"],[3,"value"],[1,"top-2"],[1,"textInput"],["appearance","outline",1,"json-input"],["name","textInput","formControlName","textInput","matInput","","cdkTextareaAutosize","","cdkAutosizeMinRows","5","cdkAutosizeMaxRows","20"],["autosize","cdkTextareaAutosize"],[1,"mat-h4","header-title"],[1,"source-radio-button-container"],["formControlName","sourceProfileOption",1,"radio-button-container",3,"ngModel","ngModelChange"],["class","radio-button",3,"value","change",4,"ngFor","ngForOf"],[4,"ngIf"],["matTooltip","Logical Shard ID value will be used to populate the migration_shard_id column added as part of sharded database migration",1,"configure"],[1,"border"],["formArrayName","shardMappingTable"],[4,"ngFor","ngForOf"],[1,"table-buttons"],["mat-raised-button","","color","primary","type","button",3,"click"],[1,"target-radio-button-container"],["formControlName","targetProfileOption",1,"radio-button-container",3,"ngModel","ngModelChange"],[1,"radio-button",3,"value","change"],["formControlName","existingSourceProfile","required","true","ng-value","selectedProfile",1,"input-field"],["matInput","","type","text","formControlName","dataShardId","required","true","readonly","",3,"value"],["matInput","","placeholder","Host","type","text","formControlName","host","required","true"],["matInput","","placeholder","User","type","text","formControlName","user","required","true"],["matInput","","placeholder","Port","type","text","formControlName","port","required","true"],["matInput","","placeholder","Password","type","password","formControlName","password","required","true"],["appearance","outline","hintLabel","Name can include lower case letters, numbers and hyphens. Must start with a letter."],["matInput","","placeholder","Connection profile name","type","text","formControlName","newSourceProfile","required","true"],["href","https://cloud.google.com/datastream/docs/network-connectivity-options#ipallowlists","target","_blank"],["class","connection-form-container",4,"ngFor","ngForOf"],["class","success","matTooltip","Test connection successful","matTooltipPosition","above",4,"ngIf"],["mat-raised-button","","type","button","color","primary",3,"disabled","click"],["class","success","matTooltip","Profile creation successful","matTooltipPosition","above",4,"ngIf"],["mat-raised-button","","type","button","color","warn",3,"disabled","click"],[1,"connection-form-container"],[1,"left-text"],["matTooltip","Copy",1,"icon","copy",3,"cdkCopyToClipboard"],[1,"failure"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"],[1,"spinner"],[3,"diameter"],[1,"spinner-small-text"],["matTooltip","Test connection successful","matTooltipPosition","above",1,"success"],["matTooltip","Profile creation successful","matTooltipPosition","above",1,"success"],[1,"shard-mapping-form-row",3,"formGroupName"],["matInput","","formControlName","logicalShardId","placeholder","Enter Logical ShardID"],["matInput","","formControlName","dbName","placeholder","Enter Database Name"],[1,"delete-btn",3,"click"],["formControlName","existingTargetProfile","required","true","ng-value","selectedProfile",1,"input-field"],["matInput","","placeholder","Connection profile name","type","text","formControlName","newTargetProfile","required","true"],["mat-raised-button","","type","submit","color","accent",3,"disabled","click"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"form",1)(2,"span",2),h(3,"Datastream Details"),c(),E(4,"br"),d(5,"b"),h(6,"Note: Please configure the database used for schema conversion, if you want Spanner migration tool to migrate data from it as well."),c(),d(7,"div",3),h(8,"` "),d(9,"div",4)(10,"mat-form-field",5)(11,"mat-label"),h(12,"Input Type"),c(),d(13,"mat-select",6,7),N("selectionChange",function(){se(o);const s=$t(14);return i.setValidators(s.value)}),_(15,HX,2,2,"mat-option",8),c()()(),_(16,UX,9,2,"div",9),c(),_(17,zX,6,0,"div",10),_(18,cJ,35,10,"div",10),d(19,"div",11)(20,"button",12),h(21,"CANCEL"),c(),_(22,dJ,2,1,"button",13),d(23,"button",14),N("click",function(){return i.finalizeConnDetails()}),h(24," FINISH "),c(),_(25,uJ,5,2,"div",15),c()()()}2&e&&(f(1),m("formGroup",i.migrationProfileForm),f(14),m("ngForOf",i.inputOptionsList),f(1),m("ngIf","form"===i.migrationProfileForm.value.inputType),f(1),m("ngIf","text"===i.migrationProfileForm.value.inputType),f(1),m("ngIf","form"===i.migrationProfileForm.value.inputType),f(4),m("ngIf","form"===i.migrationProfileForm.value.inputType),f(1),m("disabled",!i.determineFinishValidity()),f(2),m("ngIf",""!=i.errorMsg))},directives:[wr,xi,Hn,Sn,En,Mn,Yi,bn,Xn,ri,_i,Et,$h,K6,ox,rx,Dn,li,vT,xp,Tp,fo,_n,ki,fv,eo,Ht,md,fd,Ji],styles:[".icon[_ngcontent-%COMP%]{font-size:15px}.connection-form-container[_ngcontent-%COMP%]{display:block}.left-text[_ngcontent-%COMP%]{width:40%;display:inline-block}.shard-mapping-form-row[_ngcontent-%COMP%]{width:80%;margin-left:auto;margin-right:auto}.table-header[_ngcontent-%COMP%]{width:80%;margin:auto auto 10px;text-align:right;display:flex;align-items:center;justify-content:space-between}form[_ngcontent-%COMP%], .table-body[_ngcontent-%COMP%]{flex:auto;overflow-y:auto}.table-buttons[_ngcontent-%COMP%]{margin-left:70%}.radio-button-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;margin:15px 0;align-items:flex-start}.radio-button[_ngcontent-%COMP%]{margin:5px}.json-input[_ngcontent-%COMP%]{width:100%}.top[_ngcontent-%COMP%]{border:3px solid #fff;padding:20px}.top-1[_ngcontent-%COMP%]{width:60%;float:left}.top-2[_ngcontent-%COMP%]{width:40%;float:right;flex:auto}.last-btns[_ngcontent-%COMP%]{padding:20px;width:100%;float:left}"]}),t})();function pJ(t,n){1&t&&(d(0,"h2"),h(1,"Source and Target Database definitions"),c())}function fJ(t,n){1&t&&(d(0,"h2"),h(1,"Source and Target Database definitions (per shard)"),c())}function mJ(t,n){1&t&&(d(0,"th",35),h(1,"Title"),c())}function gJ(t,n){if(1&t&&(d(0,"td",36)(1,"b"),h(2),c()()),2&t){const e=n.$implicit;f(2),Ee(e.title)}}function _J(t,n){1&t&&(d(0,"th",35),h(1,"Source"),c())}function bJ(t,n){if(1&t&&(d(0,"td",36),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.source)}}function vJ(t,n){1&t&&(d(0,"th",35),h(1,"Destination"),c())}function yJ(t,n){if(1&t&&(d(0,"td",36),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.target)}}function CJ(t,n){1&t&&E(0,"tr",37)}function wJ(t,n){1&t&&E(0,"tr",38)}function DJ(t,n){if(1&t&&(d(0,"mat-option",39),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Se(" ",e," ")}}function SJ(t,n){if(1&t&&(d(0,"mat-option",39),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.name," ")}}function MJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-form-field",20)(2,"mat-label"),h(3,"Migration Type:"),c(),d(4,"mat-select",21),N("ngModelChange",function(o){return se(e),D().selectedMigrationType=o})("selectionChange",function(){return se(e),D().refreshPrerequisites()}),_(5,SJ,2,2,"mat-option",22),c()(),d(6,"mat-icon",23),h(7,"info"),c(),E(8,"br"),c()}if(2&t){const e=D();f(4),m("ngModel",e.selectedMigrationType),f(1),m("ngForOf",e.migrationTypes),f(1),m("matTooltip",e.migrationTypesHelpText.get(e.selectedMigrationType))}}function xJ(t,n){if(1&t&&(d(0,"mat-option",39),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function TJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-form-field",20)(2,"mat-label"),h(3,"Skip Foreign Key Creation:"),c(),d(4,"mat-select",40),N("ngModelChange",function(o){return se(e),D().isForeignKeySkipped=o}),_(5,xJ,2,2,"mat-option",22),c()()()}if(2&t){const e=D();f(4),m("ngModel",e.isForeignKeySkipped),f(1),m("ngForOf",e.skipForeignKeyResponseList)}}function kJ(t,n){1&t&&(d(0,"div",41)(1,"p",26)(2,"span",27),h(3,"1"),c(),d(4,"span"),h(5,"Please ensure that the application default credentials deployed on this machine have permissions to write to Spanner."),c()()())}function EJ(t,n){1&t&&(d(0,"div",41)(1,"p",26)(2,"span",27),h(3,"1"),c(),d(4,"span"),h(5,"Please ensure that the source is "),d(6,"a",42),h(7,"configured"),c(),h(8," for Datastream change data capture."),c()(),d(9,"p",26)(10,"span",27),h(11,"2"),c(),d(12,"span"),h(13,"Please ensure that Dataflow "),d(14,"a",43),h(15,"permissions"),c(),h(16," and "),d(17,"a",44),h(18,"networking"),c(),h(19," are correctly setup."),c()()())}function IJ(t,n){1&t&&(d(0,"mat-icon",46),h(1," check_circle "),c())}function OJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"h3"),h(2,"Source database details:"),c(),d(3,"p",26)(4,"span",27),h(5,"1"),c(),d(6,"span"),h(7,"Setup Source database details"),c(),d(8,"span")(9,"button",29),N("click",function(){return se(e),D().openSourceDetailsForm()}),h(10," Configure "),d(11,"mat-icon"),h(12,"edit"),c(),_(13,IJ,2,0,"mat-icon",45),c()()()()}if(2&t){const e=D();f(9),m("disabled",e.isMigrationInProgress),f(4),m("ngIf",e.isSourceDetailsSet)}}function AJ(t,n){1&t&&(d(0,"mat-icon",46),h(1," check_circle "),c())}function PJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-card-title"),h(2,"Source databases details:"),c(),d(3,"p",26)(4,"span",27),h(5,"1"),c(),d(6,"span"),h(7,"Setup Source Connection details "),d(8,"mat-icon",47),h(9," info"),c()(),d(10,"span")(11,"button",29),N("click",function(){return se(e),D().openShardedBulkSourceDetailsForm()}),h(12," Configure "),d(13,"mat-icon"),h(14,"edit"),c(),_(15,AJ,2,0,"mat-icon",45),c()()()()}if(2&t){const e=D();f(11),m("disabled",e.isMigrationInProgress),f(4),m("ngIf",e.isSourceDetailsSet)}}function RJ(t,n){1&t&&(d(0,"mat-icon",48),h(1," check_circle "),c())}function FJ(t,n){1&t&&(d(0,"mat-icon",51),h(1," check_circle "),c())}function NJ(t,n){if(1&t){const e=pe();d(0,"p",26)(1,"span",27),h(2,"2"),c(),d(3,"span"),h(4,"Configure Datastream "),d(5,"mat-icon",49),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openMigrationProfileForm()}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),_(12,FJ,2,0,"mat-icon",50),c()()()}if(2&t){const e=D();f(8),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet),f(4),m("ngIf",e.isSourceConnectionProfileSet)}}function LJ(t,n){1&t&&(d(0,"mat-icon",51),h(1," check_circle "),c())}function BJ(t,n){if(1&t){const e=pe();d(0,"p",26)(1,"span",27),h(2,"2"),c(),d(3,"span"),h(4,"Setup source connection profile "),d(5,"mat-icon",52),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openConnectionProfileForm(!0)}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),_(12,LJ,2,0,"mat-icon",50),c()()()}if(2&t){const e=D();f(8),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet),f(4),m("ngIf",e.isSourceConnectionProfileSet)}}function VJ(t,n){1&t&&(d(0,"mat-icon",55),h(1," check_circle "),c())}function jJ(t,n){if(1&t){const e=pe();d(0,"p",26)(1,"span",27),h(2,"3"),c(),d(3,"span"),h(4,"Setup target connection profile "),d(5,"mat-icon",53),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openConnectionProfileForm(!1)}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),_(12,VJ,2,0,"mat-icon",54),c()()()}if(2&t){const e=D();f(8),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet),f(4),m("ngIf",e.isTargetConnectionProfileSet)}}function HJ(t,n){1&t&&(d(0,"span",27),h(1,"3"),c())}function UJ(t,n){1&t&&(d(0,"span",27),h(1,"4"),c())}function zJ(t,n){if(1&t){const e=pe();d(0,"p",26),_(1,HJ,2,0,"span",56),_(2,UJ,2,0,"span",56),d(3,"span"),h(4,"Configure Dataflow (Optional) "),d(5,"mat-icon",57),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openDataflowForm()}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),d(12,"mat-icon",58),h(13," check_circle "),c()()()()}if(2&t){const e=D();f(1),m("ngIf",e.isSharded),f(1),m("ngIf",!e.isSharded),f(6),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet)}}function $J(t,n){1&t&&(d(0,"span",27),h(1,"4"),c())}function GJ(t,n){if(1&t){const e=pe();d(0,"p",26),_(1,$J,2,0,"span",56),d(2,"span"),h(3,"Download configuration as JSON "),d(4,"mat-icon",59),h(5,"info "),c()(),d(6,"span")(7,"button",29),N("click",function(){return se(e),D().downloadConfiguration()}),h(8," Download "),d(9,"mat-icon",60),h(10," download"),c()()()()}if(2&t){const e=D();f(1),m("ngIf",e.isSharded),f(6),m("disabled",!e.isTargetDetailSet||!e.isTargetConnectionProfileSet)}}function WJ(t,n){if(1&t&&(d(0,"div",24)(1,"mat-card")(2,"mat-card-title"),h(3,"Configured Source Details"),c(),d(4,"p",26)(5,"span",27),h(6,"1"),c(),d(7,"span")(8,"b"),h(9,"Source Database: "),c(),h(10),c()(),d(11,"p",26)(12,"span",27),h(13,"2"),c(),d(14,"span")(15,"b"),h(16,"Number of physical instances configured: "),c(),h(17),c()(),d(18,"p",26)(19,"span",27),h(20,"3"),c(),d(21,"span")(22,"b"),h(23,"Number of logical shards configured: "),c(),h(24),c()()()()),2&t){const e=D();f(10),Ee(e.sourceDatabaseType),f(7),Se(" ",e.numberOfInstances,""),f(7),Se(" ",e.numberOfShards,"")}}function qJ(t,n){if(1&t&&(d(0,"div",24)(1,"mat-card")(2,"mat-card-title"),h(3,"Configured Target Details"),c(),d(4,"p",26)(5,"span",27),h(6,"1"),c(),d(7,"span")(8,"b"),h(9,"Spanner Database: "),c(),h(10),c()(),d(11,"p",26)(12,"span",27),h(13,"2"),c(),d(14,"span")(15,"b"),h(16,"Spanner Dialect: "),c(),h(17),c()(),d(18,"p",26)(19,"span",27),h(20,"3"),c(),d(21,"span")(22,"b"),h(23,"Region: "),c(),h(24),c()(),d(25,"p",26)(26,"span",27),h(27,"4"),c(),d(28,"span")(29,"b"),h(30,"Spanner Instance: "),c(),h(31),c()()()()),2&t){const e=D();f(10),Ee(e.targetDetails.TargetDB),f(7),Ee(e.dialect),f(7),Ee(e.region),f(7),Km("",e.instance," (Nodes: ",e.nodeCount,", Processing Units: ",e.processingUnits,")")}}function KJ(t,n){if(1&t&&(d(0,"div",61),E(1,"br")(2,"mat-progress-bar",62),d(3,"span"),h(4),c()()),2&t){const e=D();f(2),m("value",e.schemaMigrationProgress),f(2),Se(" ",e.schemaProgressMessage,"")}}function ZJ(t,n){if(1&t&&(d(0,"div",61),E(1,"br")(2,"mat-progress-bar",62),d(3,"span"),h(4),c()()),2&t){const e=D();f(2),m("value",e.dataMigrationProgress),f(2),Se(" ",e.dataProgressMessage,"")}}function QJ(t,n){if(1&t&&(d(0,"div",61),E(1,"br")(2,"mat-progress-bar",62),d(3,"span"),h(4),c()()),2&t){const e=D();f(2),m("value",e.foreignKeyUpdateProgress),f(2),Se(" ",e.foreignKeyProgressMessage,"")}}function YJ(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",63),E(3,"mat-spinner",64),c(),d(4,"span",65),h(5,"Generating Resources"),c(),E(6,"br"),h(7," Note: Spanner migration tool is creating datastream and dataflow resources. Please look at the terminal logs to check the progress of resource creation. All created resources will be displayed here once they are generated. "),c()),2&t&&(f(3),m("diameter",20))}function XJ(t,n){if(1&t&&(d(0,"span")(1,"li"),h(2," Datastream job: "),d(3,"a",66),h(4),c()()()),2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.DataStreamJobUrl,Gi),f(1),Ee(e.resourcesGenerated.DataStreamJobName)}}function JJ(t,n){if(1&t){const e=pe();d(0,"span")(1,"li"),h(2,"Dataflow job: "),d(3,"a",66),h(4),c(),d(5,"span")(6,"button",67),N("click",function(){se(e);const o=D(2);return o.openGcloudPopup(o.resourcesGenerated.DataflowGcloudCmd)}),d(7,"mat-icon",68),h(8," code"),c()()()()()}if(2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.DataflowJobUrl,Gi),f(1),Ee(e.resourcesGenerated.DataflowJobName)}}function eee(t,n){if(1&t&&(d(0,"span")(1,"li"),h(2," Pubsub topic: "),d(3,"a",66),h(4),c()()()),2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.PubsubTopicUrl,Gi),f(1),Ee(e.resourcesGenerated.PubsubTopicName)}}function tee(t,n){if(1&t&&(d(0,"span")(1,"li"),h(2," Pubsub subscription: "),d(3,"a",66),h(4),c()()()),2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.PubsubSubscriptionUrl,Gi),f(1),Ee(e.resourcesGenerated.PubsubSubscriptionName)}}function nee(t,n){if(1&t&&(d(0,"li"),h(1),d(2,"a",66),h(3),c()()),2&t){const e=n.$implicit;f(1),Se(" Datastream job for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function iee(t,n){if(1&t&&(d(0,"span"),_(1,nee,4,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToDatastreamMap))}}function oee(t,n){if(1&t){const e=pe();d(0,"li"),h(1),d(2,"a",66),h(3),c(),d(4,"span")(5,"button",67),N("click",function(){const r=se(e).$implicit;return D(3).openGcloudPopup(r.value.GcloudCmd)}),d(6,"mat-icon",68),h(7," code"),c()()()()}if(2&t){const e=n.$implicit;f(1),Se(" Dataflow job for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function ree(t,n){if(1&t&&(d(0,"span"),_(1,oee,8,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToDataflowMap))}}function see(t,n){if(1&t&&(d(0,"li"),h(1),d(2,"a",66),h(3),c()()),2&t){const e=n.$implicit;f(1),Se(" Pubsub topic for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function aee(t,n){if(1&t&&(d(0,"span"),_(1,see,4,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToPubsubTopicMap))}}function lee(t,n){if(1&t&&(d(0,"li"),h(1),d(2,"a",66),h(3),c()()),2&t){const e=n.$implicit;f(1),Se(" Pubsub subscription for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function cee(t,n){if(1&t&&(d(0,"span"),_(1,lee,4,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToPubsubSubscriptionMap))}}function dee(t,n){1&t&&(d(0,"span")(1,"b"),h(2,"Note: "),c(),h(3,"Spanner migration tool has orchestrated the migration successfully. For minimal downtime migrations, it is safe to close Spanner migration tool now without affecting the progress of the migration. Please note that Spanner migration tool does not save the IDs of the Dataflow jobs created once closed, so please keep copy over the links in the Generated Resources section above before closing Spanner migration tool. "),c())}function uee(t,n){if(1&t&&(d(0,"div")(1,"h3"),h(2," Generated Resources:"),c(),d(3,"li"),h(4,"Spanner database: "),d(5,"a",66),h(6),c()(),d(7,"li"),h(8,"GCS bucket: "),d(9,"a",66),h(10),c()(),_(11,XJ,5,2,"span",10),_(12,JJ,9,2,"span",10),_(13,eee,5,2,"span",10),_(14,tee,5,2,"span",10),_(15,iee,3,3,"span",10),_(16,ree,3,3,"span",10),_(17,aee,3,3,"span",10),_(18,cee,3,3,"span",10),E(19,"br")(20,"br"),_(21,dee,4,0,"span",10),c()),2&t){const e=D();f(5),m("href",e.resourcesGenerated.DatabaseUrl,Gi),f(1),Ee(e.resourcesGenerated.DatabaseName),f(3),m("href",e.resourcesGenerated.BucketUrl,Gi),f(1),Ee(e.resourcesGenerated.BucketName),f(1),m("ngIf",""!==e.resourcesGenerated.DataStreamJobName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.DataflowJobName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubTopicName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubSubscriptionName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.DataStreamJobName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.DataflowJobName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubTopicName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubSubscriptionName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(3),m("ngIf","lowdt"===e.selectedMigrationType)}}function hee(t,n){if(1&t){const e=pe();d(0,"span")(1,"button",70),N("click",function(){return se(e),D().migrate()}),h(2,"Migrate"),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.isTargetDetailSet&&"lowdt"===e.selectedMigrationType&&e.isSourceConnectionProfileSet&&e.isTargetConnectionProfileSet||e.isTargetDetailSet&&"bulk"===e.selectedMigrationType)||e.isMigrationInProgress)}}function pee(t,n){if(1&t){const e=pe();d(0,"span")(1,"button",71),N("click",function(){return se(e),D().endMigration()}),h(2,"End Migration"),c()()}}const fee=[{path:"",component:xW},{path:"source",component:tq,children:[{path:"",redirectTo:"/direct-connection",pathMatch:"full"},{path:"direct-connection",component:LG},{path:"load-dump",component:jW},{path:"load-session",component:GW}]},{path:"workspace",component:lX},{path:"instruction",component:uI},{path:"prepare-migration",component:(()=>{class t{constructor(e,i,o,r,s){this.dialog=e,this.fetch=i,this.snack=o,this.data=r,this.sidenav=s,this.displayedColumns=["Title","Source","Destination"],this.dataSource=[],this.migrationModes=[],this.migrationTypes=[],this.isSourceConnectionProfileSet=!1,this.isTargetConnectionProfileSet=!1,this.isDataflowConfigurationSet=!1,this.isSourceDetailsSet=!1,this.isTargetDetailSet=!1,this.isForeignKeySkipped=!1,this.isMigrationDetailSet=!1,this.isStreamingSupported=!1,this.hasDataMigrationStarted=!1,this.hasSchemaMigrationStarted=!1,this.hasForeignKeyUpdateStarted=!1,this.selectedMigrationMode=No.schemaAndData,this.connectionType=mi.DirectConnect,this.selectedMigrationType=ci.lowDowntimeMigration,this.isMigrationInProgress=!1,this.isLowDtMigrationRunning=!1,this.isResourceGenerated=!1,this.generatingResources=!1,this.errorMessage="",this.schemaProgressMessage="Schema migration in progress...",this.dataProgressMessage="Data migration in progress...",this.foreignKeyProgressMessage="Foreign key update in progress...",this.dataMigrationProgress=0,this.schemaMigrationProgress=0,this.foreignKeyUpdateProgress=0,this.sourceDatabaseName="",this.sourceDatabaseType="",this.resourcesGenerated={DatabaseName:"",DatabaseUrl:"",BucketName:"",BucketUrl:"",DataStreamJobName:"",DataStreamJobUrl:"",DataflowJobName:"",DataflowJobUrl:"",PubsubTopicName:"",PubsubTopicUrl:"",PubsubSubscriptionName:"",PubsubSubscriptionUrl:"",DataflowGcloudCmd:"",ShardToDatastreamMap:new Map,ShardToDataflowMap:new Map,ShardToPubsubTopicMap:new Map,ShardToPubsubSubscriptionMap:new Map},this.region="",this.instance="",this.dialect="",this.isSharded=!1,this.numberOfShards="0",this.numberOfInstances="0",this.nodeCount=0,this.processingUnits=0,this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},this.dataflowConfig={network:localStorage.getItem("network"),subnetwork:localStorage.getItem("subnetwork"),hostProjectId:localStorage.getItem("hostProjectId"),maxWorkers:localStorage.getItem("maxWorkers"),numWorkers:localStorage.getItem("numWorkers"),serviceAccountEmail:localStorage.getItem("serviceAccountEmail")},this.spannerConfig={GCPProjectID:"",SpannerInstanceID:"",IsMetadataDbCreated:!1,IsConfigValid:!1},this.skipForeignKeyResponseList=[{value:!1,displayName:"No"},{value:!0,displayName:"Yes"}],this.migrationModesHelpText=new Map([["Schema","Migrates only the schema of the source database to the configured Spanner instance."],["Data","Migrates the data from the source database to the configured Spanner database. The configured database should already contain the schema."],["Schema And Data","Migrates both the schema and the data from the source database to Spanner."]]),this.migrationTypesHelpText=new Map([["bulk","Use the POC migration option when you want to migrate a sample of your data (<100GB) to do a Proof of Concept. It uses this machine's resources to copy data from the source database to Spanner"],["lowdt","Uses change data capture via Datastream to setup a continuous data replication pipeline from source to Spanner, using Dataflow jobs to perform the actual data migration."]])}refreshMigrationMode(){this.selectedMigrationMode!==No.schemaOnly&&this.isStreamingSupported&&this.connectionType!==mi.DumpFile?this.migrationTypes=[{name:"POC Migration",value:ci.bulkMigration},{name:"Minimal downtime Migration",value:ci.lowDowntimeMigration}]:(this.selectedMigrationType=ci.bulkMigration,this.migrationTypes=[{name:"POC Migration",value:ci.bulkMigration}])}refreshPrerequisites(){this.isSourceConnectionProfileSet=!1,this.isTargetConnectionProfileSet=!1,this.isTargetDetailSet=!1,this.refreshMigrationMode()}ngOnInit(){this.initializeFromLocalStorage(),this.data.config.subscribe(e=>{this.spannerConfig=e}),this.convObj=this.data.conv.subscribe(e=>{this.conv=e}),localStorage.setItem("hostProjectId",this.spannerConfig.GCPProjectID),this.fetch.getSourceDestinationSummary().subscribe({next:e=>{this.connectionType=e.ConnectionType,this.dataSource=[{title:"Database Type",source:e.DatabaseType,target:"Spanner"},{title:"Number of tables",source:e.SourceTableCount,target:e.SpannerTableCount},{title:"Number of indexes",source:e.SourceIndexCount,target:e.SpannerIndexCount}],this.sourceDatabaseType=e.DatabaseType,this.region=e.Region,this.instance=e.Instance,this.dialect=e.Dialect,this.isSharded=e.IsSharded,this.processingUnits=e.ProcessingUnits,this.nodeCount=e.NodeCount,(e.DatabaseType==xr.MySQL.toLowerCase()||e.DatabaseType==xr.Oracle.toLowerCase()||e.DatabaseType==xr.Postgres.toLowerCase())&&(this.isStreamingSupported=!0),this.isStreamingSupported?this.migrationTypes=[{name:"POC Migration",value:ci.bulkMigration},{name:"Minimal downtime Migration",value:ci.lowDowntimeMigration}]:(this.selectedMigrationType=ci.bulkMigration,this.migrationTypes=[{name:"POC Migration",value:ci.bulkMigration}]),this.sourceDatabaseName=e.SourceDatabaseName,this.migrationModes=[No.schemaOnly,No.dataOnly,No.schemaAndData]},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}initializeFromLocalStorage(){null!=localStorage.getItem(le.MigrationMode)&&(this.selectedMigrationMode=localStorage.getItem(le.MigrationMode)),null!=localStorage.getItem(le.MigrationType)&&(this.selectedMigrationType=localStorage.getItem(le.MigrationType)),null!=localStorage.getItem(le.isForeignKeySkipped)&&(this.isForeignKeySkipped="true"===localStorage.getItem(le.isForeignKeySkipped)),null!=localStorage.getItem(le.IsMigrationInProgress)&&(this.isMigrationInProgress="true"===localStorage.getItem(le.IsMigrationInProgress),this.subscribeMigrationProgress()),null!=localStorage.getItem(le.IsTargetDetailSet)&&(this.isTargetDetailSet="true"===localStorage.getItem(le.IsTargetDetailSet)),null!=localStorage.getItem(le.IsSourceConnectionProfileSet)&&(this.isSourceConnectionProfileSet="true"===localStorage.getItem(le.IsSourceConnectionProfileSet)),null!=localStorage.getItem("isDataflowConfigSet")&&(this.isDataflowConfigurationSet="true"===localStorage.getItem("isDataflowConfigSet")),null!=localStorage.getItem(le.IsTargetConnectionProfileSet)&&(this.isTargetConnectionProfileSet="true"===localStorage.getItem(le.IsTargetConnectionProfileSet)),null!=localStorage.getItem(le.IsSourceDetailsSet)&&(this.isSourceDetailsSet="true"===localStorage.getItem(le.IsSourceDetailsSet)),null!=localStorage.getItem(le.IsMigrationDetailSet)&&(this.isMigrationDetailSet="true"===localStorage.getItem(le.IsMigrationDetailSet)),null!=localStorage.getItem(le.HasSchemaMigrationStarted)&&(this.hasSchemaMigrationStarted="true"===localStorage.getItem(le.HasSchemaMigrationStarted)),null!=localStorage.getItem(le.HasDataMigrationStarted)&&(this.hasDataMigrationStarted="true"===localStorage.getItem(le.HasDataMigrationStarted)),null!=localStorage.getItem(le.DataMigrationProgress)&&(this.dataMigrationProgress=parseInt(localStorage.getItem(le.DataMigrationProgress))),null!=localStorage.getItem(le.SchemaMigrationProgress)&&(this.schemaMigrationProgress=parseInt(localStorage.getItem(le.SchemaMigrationProgress))),null!=localStorage.getItem(le.DataProgressMessage)&&(this.dataProgressMessage=localStorage.getItem(le.DataProgressMessage)),null!=localStorage.getItem(le.SchemaProgressMessage)&&(this.schemaProgressMessage=localStorage.getItem(le.SchemaProgressMessage)),null!=localStorage.getItem(le.ForeignKeyProgressMessage)&&(this.foreignKeyProgressMessage=localStorage.getItem(le.ForeignKeyProgressMessage)),null!=localStorage.getItem(le.ForeignKeyUpdateProgress)&&(this.foreignKeyUpdateProgress=parseInt(localStorage.getItem(le.ForeignKeyUpdateProgress))),null!=localStorage.getItem(le.HasForeignKeyUpdateStarted)&&(this.hasForeignKeyUpdateStarted="true"===localStorage.getItem(le.HasForeignKeyUpdateStarted)),null!=localStorage.getItem(le.GeneratingResources)&&(this.generatingResources="true"===localStorage.getItem(le.GeneratingResources)),null!=localStorage.getItem(le.NumberOfShards)&&(this.numberOfShards=localStorage.getItem(le.NumberOfShards)),null!=localStorage.getItem(le.NumberOfInstances)&&(this.numberOfInstances=localStorage.getItem(le.NumberOfInstances))}clearLocalStorage(){localStorage.removeItem(le.MigrationMode),localStorage.removeItem(le.MigrationType),localStorage.removeItem(le.IsTargetDetailSet),localStorage.removeItem(le.isForeignKeySkipped),localStorage.removeItem(le.IsSourceConnectionProfileSet),localStorage.removeItem(le.IsTargetConnectionProfileSet),localStorage.removeItem(le.IsSourceDetailsSet),localStorage.removeItem("isDataflowConfigSet"),localStorage.removeItem("network"),localStorage.removeItem("subnetwork"),localStorage.removeItem("maxWorkers"),localStorage.removeItem("numWorkers"),localStorage.removeItem("serviceAccountEmail"),localStorage.removeItem("hostProjectId"),localStorage.removeItem(le.IsMigrationInProgress),localStorage.removeItem(le.HasSchemaMigrationStarted),localStorage.removeItem(le.HasDataMigrationStarted),localStorage.removeItem(le.DataMigrationProgress),localStorage.removeItem(le.SchemaMigrationProgress),localStorage.removeItem(le.DataProgressMessage),localStorage.removeItem(le.SchemaProgressMessage),localStorage.removeItem(le.ForeignKeyProgressMessage),localStorage.removeItem(le.ForeignKeyUpdateProgress),localStorage.removeItem(le.HasForeignKeyUpdateStarted),localStorage.removeItem(le.GeneratingResources),localStorage.removeItem(le.NumberOfShards),localStorage.removeItem(le.NumberOfInstances)}openConnectionProfileForm(e){this.dialog.open(CX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{IsSource:e,SourceDatabaseType:this.sourceDatabaseType}}).afterClosed().subscribe(()=>{this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},this.isSourceConnectionProfileSet="true"===localStorage.getItem(le.IsSourceConnectionProfileSet),this.isTargetConnectionProfileSet="true"===localStorage.getItem(le.IsTargetConnectionProfileSet),this.isTargetDetailSet&&this.isSourceConnectionProfileSet&&this.isTargetConnectionProfileSet&&(localStorage.setItem(le.IsMigrationDetailSet,"true"),this.isMigrationDetailSet=!0)})}openMigrationProfileForm(){this.dialog.open(hJ,{width:"30vw",minWidth:"1200px",maxWidth:"1600px",data:{IsSource:!1,SourceDatabaseType:this.sourceDatabaseType,Region:this.region}}).afterClosed().subscribe(()=>{this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},null!=localStorage.getItem(le.NumberOfShards)&&(this.numberOfShards=localStorage.getItem(le.NumberOfShards)),null!=localStorage.getItem(le.NumberOfInstances)&&(this.numberOfInstances=localStorage.getItem(le.NumberOfInstances)),this.isSourceConnectionProfileSet="true"===localStorage.getItem(le.IsSourceConnectionProfileSet),this.isTargetConnectionProfileSet="true"===localStorage.getItem(le.IsTargetConnectionProfileSet),this.isTargetDetailSet&&this.isSourceConnectionProfileSet&&this.isTargetConnectionProfileSet&&(localStorage.setItem(le.IsMigrationDetailSet,"true"),this.isMigrationDetailSet=!0)})}openGcloudPopup(e){this.dialog.open(RX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:e})}openDataflowForm(){this.dialog.open(PX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:this.spannerConfig}).afterClosed().subscribe(()=>{this.dataflowConfig={network:localStorage.getItem("network"),subnetwork:localStorage.getItem("subnetwork"),hostProjectId:localStorage.getItem("hostProjectId"),maxWorkers:localStorage.getItem("maxWorkers"),numWorkers:localStorage.getItem("numWorkers"),serviceAccountEmail:localStorage.getItem("serviceAccountEmail")},this.isDataflowConfigurationSet="true"===localStorage.getItem("isDataflowConfigSet"),this.isSharded&&this.fetch.setDataflowDetailsForShardedMigrations(this.dataflowConfig).subscribe({next:()=>{},error:i=>{this.snack.openSnackBar(i.error,"Close")}})})}endMigration(){this.dialog.open(AX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{SpannerDatabaseName:this.resourcesGenerated.DatabaseName,SpannerDatabaseUrl:this.resourcesGenerated.DatabaseUrl,SourceDatabaseType:this.sourceDatabaseType,SourceDatabaseName:this.sourceDatabaseName}}).afterClosed().subscribe()}openSourceDetailsForm(){this.dialog.open(IX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:this.sourceDatabaseType}).afterClosed().subscribe(()=>{this.isSourceDetailsSet="true"===localStorage.getItem(le.IsSourceDetailsSet)})}openShardedBulkSourceDetailsForm(){this.dialog.open(jX,{width:"30vw",minWidth:"400px",maxWidth:"550px",data:{sourceDatabaseEngine:this.sourceDatabaseType,isRestoredSession:this.connectionType}}).afterClosed().subscribe(()=>{this.isSourceDetailsSet="true"===localStorage.getItem(le.IsSourceDetailsSet),null!=localStorage.getItem(le.NumberOfShards)&&(this.numberOfShards=localStorage.getItem(le.NumberOfShards)),null!=localStorage.getItem(le.NumberOfInstances)&&(this.numberOfInstances=localStorage.getItem(le.NumberOfInstances))})}openTargetDetailsForm(){this.dialog.open(cX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{Region:this.region,Instance:this.instance,Dialect:this.dialect}}).afterClosed().subscribe(()=>{this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},this.isTargetDetailSet="true"===localStorage.getItem(le.IsTargetDetailSet),(this.isSourceDetailsSet&&this.isTargetDetailSet&&this.connectionType===mi.SessionFile&&this.selectedMigrationMode!==No.schemaOnly||this.isTargetDetailSet&&this.selectedMigrationType==ci.bulkMigration&&this.connectionType!==mi.SessionFile||this.isTargetDetailSet&&this.selectedMigrationType==ci.bulkMigration&&this.connectionType===mi.SessionFile&&this.selectedMigrationMode===No.schemaOnly)&&(localStorage.setItem(le.IsMigrationDetailSet,"true"),this.isMigrationDetailSet=!0)})}migrate(){this.resetValues(),this.fetch.migrate({TargetDetails:this.targetDetails,DataflowConfig:this.dataflowConfig,IsSharded:this.isSharded,MigrationType:this.selectedMigrationType,MigrationMode:this.selectedMigrationMode,skipForeignKeys:this.isForeignKeySkipped}).subscribe({next:()=>{this.selectedMigrationMode==No.dataOnly?this.selectedMigrationType==ci.bulkMigration?(this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString())):(this.generatingResources=!0,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),this.snack.openSnackBar("Setting up dataflow and datastream jobs","Close")):(this.hasSchemaMigrationStarted=!0,localStorage.setItem(le.HasSchemaMigrationStarted,this.hasSchemaMigrationStarted.toString())),this.snack.openSnackBar("Migration started successfully","Close",5),this.subscribeMigrationProgress()},error:i=>{this.snack.openSnackBar(i.error,"Close"),this.isMigrationInProgress=!this.isMigrationInProgress,this.hasDataMigrationStarted=!1,this.hasSchemaMigrationStarted=!1,this.clearLocalStorage()}})}subscribeMigrationProgress(){var e=!1;this.subscription=function dX(t=0,n=td){return t<0&&(t=0),op(t,t,n)}(5e3).subscribe(i=>{this.fetch.getProgress().subscribe({next:o=>{""==o.ErrorMessage?o.ProgressStatus==js.SchemaMigrationComplete?(localStorage.setItem(le.SchemaMigrationProgress,"100"),this.schemaMigrationProgress=parseInt(localStorage.getItem(le.SchemaMigrationProgress)),this.selectedMigrationMode==No.schemaOnly?this.markMigrationComplete():this.selectedMigrationType==ci.lowDowntimeMigration?(this.markSchemaMigrationComplete(),this.generatingResources=!0,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),e||(this.snack.openSnackBar("Setting up dataflow and datastream jobs","Close"),e=!0)):(this.markSchemaMigrationComplete(),this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString()))):o.ProgressStatus==js.DataMigrationComplete?(this.selectedMigrationType!=ci.lowDowntimeMigration&&(this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString())),this.generatingResources=!1,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),this.markMigrationComplete()):o.ProgressStatus==js.DataWriteInProgress?(this.markSchemaMigrationComplete(),this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString()),localStorage.setItem(le.DataMigrationProgress,o.Progress.toString()),this.dataMigrationProgress=parseInt(localStorage.getItem(le.DataMigrationProgress))):o.ProgressStatus==js.ForeignKeyUpdateComplete?this.markMigrationComplete():o.ProgressStatus==js.ForeignKeyUpdateInProgress&&(this.markSchemaMigrationComplete(),this.selectedMigrationType==ci.bulkMigration&&(this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString())),this.markForeignKeyUpdateInitiation(),this.dataMigrationProgress=100,localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),localStorage.setItem(le.ForeignKeyUpdateProgress,o.Progress.toString()),this.foreignKeyUpdateProgress=parseInt(localStorage.getItem(le.ForeignKeyUpdateProgress)),this.generatingResources=!1,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),this.fetchGeneratedResources()):(this.errorMessage=o.ErrorMessage,this.subscription.unsubscribe(),this.isMigrationInProgress=!this.isMigrationInProgress,this.snack.openSnackBarWithoutTimeout(this.errorMessage,"Close"),this.schemaProgressMessage="Schema migration cancelled!",this.dataProgressMessage="Data migration cancelled!",this.foreignKeyProgressMessage="Foreign key update cancelled!",this.generatingResources=!1,this.isLowDtMigrationRunning=!1,this.clearLocalStorage())},error:o=>{this.snack.openSnackBar(o.error,"Close"),this.isMigrationInProgress=!this.isMigrationInProgress,this.clearLocalStorage()}})})}markForeignKeyUpdateInitiation(){this.dataMigrationProgress=100,this.dataProgressMessage="Data migration completed successfully!",localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),this.hasForeignKeyUpdateStarted=!0,this.foreignKeyUpdateProgress=parseInt(localStorage.getItem(le.ForeignKeyUpdateProgress))}markSchemaMigrationComplete(){this.schemaMigrationProgress=100,this.schemaProgressMessage="Schema migration completed successfully!",localStorage.setItem(le.SchemaMigrationProgress,this.schemaMigrationProgress.toString()),localStorage.setItem(le.SchemaProgressMessage,this.schemaProgressMessage)}downloadConfiguration(){this.fetch.getSourceProfile().subscribe({next:e=>{this.configuredMigrationProfile=e;var i=document.createElement("a");let o=JSON.stringify(this.configuredMigrationProfile,null,"\t").replace(/9223372036854776000/g,"9223372036854775807");i.href="data:text/json;charset=utf-8,"+encodeURIComponent(o),i.download=localStorage.getItem(Wt.TargetDB)+"-"+this.configuredMigrationProfile.configType+"-shardConfig.cfg",i.click()},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}fetchGeneratedResources(){this.fetch.getGeneratedResources().subscribe({next:e=>{this.isResourceGenerated=!0,this.resourcesGenerated=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}}),this.selectedMigrationType===ci.lowDowntimeMigration&&(this.isLowDtMigrationRunning=!0)}markMigrationComplete(){this.subscription.unsubscribe(),this.isMigrationInProgress=!this.isMigrationInProgress,this.dataProgressMessage="Data migration completed successfully!",this.schemaProgressMessage="Schema migration completed successfully!",this.schemaMigrationProgress=100,this.dataMigrationProgress=100,this.foreignKeyUpdateProgress=100,this.foreignKeyProgressMessage="Foreign key updated successfully!",this.fetchGeneratedResources(),this.clearLocalStorage(),this.refreshPrerequisites()}resetValues(){this.isMigrationInProgress=!this.isMigrationInProgress,this.hasSchemaMigrationStarted=!1,this.hasDataMigrationStarted=!1,this.generatingResources=!1,this.dataMigrationProgress=0,this.schemaMigrationProgress=0,this.schemaProgressMessage="Schema migration in progress...",this.dataProgressMessage="Data migration in progress...",this.isResourceGenerated=!1,this.hasForeignKeyUpdateStarted=!1,this.foreignKeyUpdateProgress=100,this.foreignKeyProgressMessage="Foreign key update in progress...",this.resourcesGenerated={DatabaseName:"",DatabaseUrl:"",BucketName:"",BucketUrl:"",DataStreamJobName:"",DataStreamJobUrl:"",DataflowJobName:"",DataflowJobUrl:"",PubsubTopicName:"",PubsubTopicUrl:"",PubsubSubscriptionName:"",PubsubSubscriptionUrl:"",DataflowGcloudCmd:"",ShardToDatastreamMap:new Map,ShardToDataflowMap:new Map,ShardToPubsubTopicMap:new Map,ShardToPubsubSubscriptionMap:new Map},this.initializeLocalStorage()}initializeLocalStorage(){localStorage.setItem(le.MigrationMode,this.selectedMigrationMode),localStorage.setItem(le.MigrationType,this.selectedMigrationType),localStorage.setItem(le.isForeignKeySkipped,this.isForeignKeySkipped.toString()),localStorage.setItem(le.IsMigrationInProgress,this.isMigrationInProgress.toString()),localStorage.setItem(le.HasSchemaMigrationStarted,this.hasSchemaMigrationStarted.toString()),localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString()),localStorage.setItem(le.HasForeignKeyUpdateStarted,this.hasForeignKeyUpdateStarted.toString()),localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),localStorage.setItem(le.SchemaMigrationProgress,this.schemaMigrationProgress.toString()),localStorage.setItem(le.ForeignKeyUpdateProgress,this.foreignKeyUpdateProgress.toString()),localStorage.setItem(le.SchemaProgressMessage,this.schemaProgressMessage),localStorage.setItem(le.DataProgressMessage,this.dataProgressMessage),localStorage.setItem(le.ForeignKeyProgressMessage,this.foreignKeyProgressMessage),localStorage.setItem(le.IsTargetDetailSet,this.isTargetDetailSet.toString()),localStorage.setItem(le.GeneratingResources,this.generatingResources.toString())}openSaveSessionSidenav(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("saveSession"),this.sidenav.setSidenavDatabaseName(this.conv.DatabaseName)}downloadSession(){dI(this.conv)}ngOnDestroy(){}}return t.\u0275fac=function(e){return new(e||t)(b(ns),b(Bi),b(Bo),b(Ln),b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-prepare-migration"]],decls:90,vars:34,consts:[[1,"header"],[1,"breadcrumb"],["mat-button","",1,"breadcrumb_source",3,"routerLink"],["mat-button","",1,"breadcrumb_workspace",3,"routerLink"],["mat-button","",1,"breadcrumb_prepare_migration",3,"routerLink"],[1,"header_action"],["mat-button","",3,"click"],["mat-button","","color","primary",3,"click"],[1,"body"],[1,"definition-container"],[4,"ngIf"],[1,"summary"],["mat-table","",3,"dataSource"],["matColumnDef","Title"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Source"],["matColumnDef","Destination"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["appearance","outline"],[3,"ngModel","ngModelChange","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[1,"configure",3,"matTooltip"],[1,"mat-card-class"],["class","static-prereqs",4,"ngIf"],[1,"point"],[1,"bullet"],["matTooltip","Configure the database in Spanner you want this migration to write to (up till now only GCP Project ID and Spanner Instance name have been configured.)",1,"configure"],["mat-button","",1,"configure",3,"disabled","click"],["class","success","matTooltip","Target details configured","matTooltipPosition","above",4,"ngIf"],["class","point",4,"ngIf"],["class","mat-card-class",4,"ngIf"],["class","progress_bar",4,"ngIf"],[1,"migrate"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""],[3,"value"],[3,"ngModel","ngModelChange"],[1,"static-prereqs"],["href","https://cloud.google.com/datastream/docs/sources","target","_blank"],["href","https://cloud.google.com/dataflow/docs/concepts/security-and-permissions","target","_blank"],["href","https://cloud.google.com/dataflow/docs/guides/routes-firewall","target","_blank"],["class","success","matTooltip","Source details configured","matTooltipPosition","above",4,"ngIf"],["matTooltip","Source details configured","matTooltipPosition","above",1,"success"],["matTooltip","Configure the connection info of all source shards to connect to and migrate data from.",1,"configure"],["matTooltip","Target details configured","matTooltipPosition","above",1,"success"],["matTooltip","Datastream will be used to capture change events from the source database. Please ensure you have met the pre-requistes required for setting up Datastream in your GCP environment. ",1,"configure"],["class","success","matTooltip","Source connection profile configured","matTooltipPosition","above",4,"ngIf"],["matTooltip","Source connection profile configured","matTooltipPosition","above",1,"success"],["matTooltip","Configure the source connection profile to allow Datastream to read from your source database",1,"configure"],["matTooltip","Create a connection profile for datastream to write to a GCS bucket. Spanner migration tool will automatically create the bucket for you.",1,"configure"],["class","success","matTooltip","Target connection profile configured","matTooltipPosition","above",4,"ngIf"],["matTooltip","Target connection profile configured","matTooltipPosition","above",1,"success"],["class","bullet",4,"ngIf"],["matTooltip","Dataflow will be used to perform the actual migration of data from source to Spanner. This helps you configure the execution environment for Dataflow jobs e.g VPC.",1,"configure"],["matTooltip","Dataflow Configured","matTooltipPosition","above",1,"success"],["matTooltip","Download the configuration done above as JSON.",1,"configure"],["matTooltip","Download configured shards as JSON","matTooltipPosition","above"],[1,"progress_bar"],["mode","determinate",3,"value"],[1,"spinner"],[3,"diameter"],[1,"spinner-text"],["target","_blank",3,"href"],["mat-button","",1,"configure",3,"click"],["matTooltip","Equivalent gCloud command","matTooltipPosition","above"],[4,"ngFor","ngForOf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"a",2),h(3,"Select Source"),c(),d(4,"span"),h(5,">"),c(),d(6,"a",3),h(7),c(),d(8,"span"),h(9,">"),c(),d(10,"a",4)(11,"b"),h(12,"Prepare Migration"),c()()(),d(13,"div",5)(14,"button",6),N("click",function(){return i.openSaveSessionSidenav()}),h(15," SAVE SESSION "),c(),d(16,"button",7),N("click",function(){return i.downloadSession()}),h(17,"DOWNLOAD SESSION FILE"),c()()(),E(18,"br"),d(19,"div",8)(20,"div",9),_(21,pJ,2,0,"h2",10),_(22,fJ,2,0,"h2",10),d(23,"div",11)(24,"table",12),be(25,13),_(26,mJ,2,0,"th",14),_(27,gJ,3,1,"td",15),ve(),be(28,16),_(29,_J,2,0,"th",14),_(30,bJ,2,1,"td",15),ve(),be(31,17),_(32,vJ,2,0,"th",14),_(33,yJ,2,1,"td",15),ve(),_(34,CJ,1,0,"tr",18),_(35,wJ,1,0,"tr",19),c()()(),E(36,"br"),d(37,"mat-form-field",20)(38,"mat-label"),h(39,"Migration Mode:"),c(),d(40,"mat-select",21),N("ngModelChange",function(r){return i.selectedMigrationMode=r})("selectionChange",function(){return i.refreshPrerequisites()}),_(41,DJ,2,2,"mat-option",22),c()(),d(42,"mat-icon",23),h(43,"info"),c(),E(44,"br"),_(45,MJ,9,3,"div",10),_(46,TJ,6,2,"div",10),d(47,"div",24)(48,"mat-card")(49,"mat-card-title"),h(50,"Prerequisites"),c(),d(51,"mat-card-subtitle"),h(52,"Before we begin, please ensure you have done the following:"),c(),_(53,kJ,6,0,"div",25),_(54,EJ,20,0,"div",25),c()(),d(55,"div",24)(56,"mat-card"),_(57,OJ,14,2,"div",10),_(58,PJ,16,2,"div",10),d(59,"div")(60,"mat-card-title"),h(61,"Target details:"),c(),d(62,"p",26)(63,"span",27),h(64,"1"),c(),d(65,"span"),h(66,"Configure Spanner Database "),d(67,"mat-icon",28),h(68," info"),c()(),d(69,"span")(70,"button",29),N("click",function(){return i.openTargetDetailsForm()}),h(71," Configure "),d(72,"mat-icon"),h(73,"edit"),c(),_(74,RJ,2,0,"mat-icon",30),c()()(),_(75,NJ,13,2,"p",31),_(76,BJ,13,2,"p",31),_(77,jJ,13,2,"p",31),_(78,zJ,14,3,"p",31),_(79,GJ,11,2,"p",31),c()()(),_(80,WJ,25,3,"div",32),_(81,qJ,32,6,"div",32),_(82,KJ,5,2,"div",33),_(83,ZJ,5,2,"div",33),_(84,QJ,5,2,"div",33),_(85,YJ,8,1,"div",10),_(86,uee,22,13,"div",10),d(87,"div",34),_(88,hee,3,1,"span",10),_(89,pee,3,0,"span",10),c()()),2&e&&(f(2),m("routerLink","/"),f(4),m("routerLink","/workspace"),f(1),Se("Configure Schema (",i.dialect," Dialect)"),f(3),m("routerLink","/prepare-migration"),f(11),m("ngIf",!i.isSharded),f(1),m("ngIf",i.isSharded),f(2),m("dataSource",i.dataSource),f(10),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns),f(5),m("ngModel",i.selectedMigrationMode),f(1),m("ngForOf",i.migrationModes),f(1),m("matTooltip",i.migrationModesHelpText.get(i.selectedMigrationMode)),f(3),m("ngIf","Schema"!=i.selectedMigrationMode),f(1),m("ngIf",!("Schema"===i.selectedMigrationMode||"lowdt"===i.selectedMigrationType)),f(7),m("ngIf","bulk"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(3),m("ngIf","sessionFile"===i.connectionType&&"Schema"!==i.selectedMigrationMode&&!i.isSharded),f(1),m("ngIf",i.isSharded&&"bulk"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(12),m("disabled",i.isMigrationInProgress||i.isLowDtMigrationRunning),f(4),m("ngIf",i.isTargetDetailSet),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&i.isSharded),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&!i.isSharded),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&!i.isSharded),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&i.isSharded),f(1),m("ngIf","Schema"!==i.selectedMigrationMode&&i.isSharded),f(1),m("ngIf",i.isTargetDetailSet),f(1),m("ngIf",i.hasSchemaMigrationStarted),f(1),m("ngIf",i.hasDataMigrationStarted),f(1),m("ngIf",i.hasForeignKeyUpdateStarted),f(1),m("ngIf",i.generatingResources),f(1),m("ngIf",i.isResourceGenerated),f(2),m("ngIf",!i.isLowDtMigrationRunning),f(1),m("ngIf",i.isLowDtMigrationRunning))},directives:[BM,jd,Ht,Et,As,Xr,Yr,Jr,Qr,es,Ps,Fs,Rs,Ns,En,Mn,Yi,bn,El,ri,_i,_n,ki,$h,ox,rx,lx,eo],pipes:[YD],styles:[".header[_ngcontent-%COMP%] .breadcrumb[_ngcontent-%COMP%] .breadcrumb_workspace[_ngcontent-%COMP%]{color:#0000008f}.header[_ngcontent-%COMP%] .breadcrumb[_ngcontent-%COMP%] .breadcrumb_prepare_migration[_ngcontent-%COMP%]{font-weight:400;font-size:14px}.definition-container[_ngcontent-%COMP%]{max-height:500px;overflow:auto}.definition-container[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:13px}.body[_ngcontent-%COMP%]{margin-left:20px}table[_ngcontent-%COMP%]{min-width:30%;max-width:50%}table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{width:10%}.configure[_ngcontent-%COMP%]{color:#1967d2}.migrate[_ngcontent-%COMP%]{margin-top:10px}"]}),t})()},{path:"**",redirectTo:"/",pathMatch:"full"}];let mee=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[rI.forRoot(fee)],rI]}),t})();function gee(t,n){if(1&t&&(d(0,"mat-option",13),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function _ee(t,n){if(1&t&&(d(0,"mat-option",13),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function bee(t,n){if(1&t&&(d(0,"mat-form-field",1)(1,"mat-label"),h(2,"Destination data type"),c(),d(3,"mat-select",14),_(4,_ee,2,2,"mat-option",10),c()()),2&t){const e=D();f(4),m("ngForOf",e.destinationType)}}function vee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",15),N("click",function(){return se(e),D().formSubmit()}),h(2," ADD RULE "),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.addGlobalDataTypeForm.valid&&e.ruleNameValid))}}function yee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",16),N("click",function(){return se(e),D().deleteRule()}),h(2,"DELETE RULE"),c()()}}let Cee=(()=>{class t{constructor(e,i,o,r,s){this.fb=e,this.data=i,this.sidenav=o,this.conversion=r,this.fetch=s,this.ruleNameValid=!1,this.ruleType="",this.ruleName="",this.resetRuleType=new Pe,this.conversionType={},this.sourceType=[],this.destinationType=[],this.viewRuleData=[],this.viewRuleFlag=!1,this.pgSQLToStandardTypeTypemap=new Map,this.standardTypeToPGSQLTypemap=new Map,this.conv={},this.isPostgreSQLDialect=!1,this.addGlobalDataTypeForm=this.fb.group({objectType:["column",de.required],table:["allTable",de.required],column:["allColumn",de.required],sourceType:["",de.required],destinationType:["",de.required]})}ngOnInit(){this.data.typeMap.subscribe({next:e=>{this.conversionType=e,this.sourceType=Object.keys(this.conversionType)}}),this.data.conv.subscribe({next:e=>{this.conv=e,this.isPostgreSQLDialect="postgresql"===this.conv.SpDialect}}),this.conversion.pgSQLToStandardTypeTypeMap.subscribe(e=>{this.pgSQLToStandardTypeTypemap=e}),this.conversion.standardTypeToPGSQLTypeMap.subscribe(e=>{this.standardTypeToPGSQLTypemap=e}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.viewRuleData&&this.setViewRuleData(this.viewRuleData)})})}setViewRuleData(e){var i,o,r;if(this.ruleId=null==e?void 0:e.Id,this.addGlobalDataTypeForm.controls.sourceType.setValue(Object.keys(null==e?void 0:e.Data)[0]),this.updateDestinationType(Object.keys(null==e?void 0:e.Data)[0]),this.isPostgreSQLDialect){let s=this.standardTypeToPGSQLTypemap.get(Object.values(null===(i=this.viewRuleData)||void 0===i?void 0:i.Data)[0]);this.addGlobalDataTypeForm.controls.destinationType.setValue(void 0===s?Object.values(null===(o=this.viewRuleData)||void 0===o?void 0:o.Data)[0]:s)}else this.addGlobalDataTypeForm.controls.destinationType.setValue(Object.values(null===(r=this.viewRuleData)||void 0===r?void 0:r.Data)[0]);this.addGlobalDataTypeForm.disable()}formSubmit(){const e=this.addGlobalDataTypeForm.value,i=e.sourceType,o={};if(this.isPostgreSQLDialect){let r=this.pgSQLToStandardTypeTypemap.get(e.destinationType);o[i]=void 0===r?e.destinationType:r}else o[i]=e.destinationType;this.applyRule(o),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}updateDestinationType(e){const i=this.conversionType[e],o=[];null==i||i.forEach(r=>{o.push(r.DisplayT)}),this.destinationType=o}applyRule(e){this.data.applyRule({Name:this.ruleName,Type:"global_datatype_change",ObjectType:"Column",AssociatedObjects:"All Columns",Enabled:!0,Data:e,Id:""})}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ei),b(Da),b(Bi))},t.\u0275cmp=Ae({type:t,selectors:[["app-edit-global-datatype-form"]],inputs:{ruleNameValid:"ruleNameValid",ruleType:"ruleType",ruleName:"ruleName"},outputs:{resetRuleType:"resetRuleType"},decls:34,vars:5,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","objectType","required","true",1,"input-field"],["value","column"],["matSelect","","formControlName","table","required","true",1,"input-field"],["value","allTable"],["matSelect","","formControlName","column","required","true",1,"input-field"],["value","allColumn"],["matSelect","","formControlName","sourceType","required","true",1,"input-field",3,"selectionChange"],["sourceField",""],[3,"value",4,"ngFor","ngForOf"],["appearance","outline",4,"ngIf"],[4,"ngIf"],[3,"value"],["matSelect","","formControlName","destinationType","required","true",1,"input-field"],["mat-raised-button","","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"For object type"),c(),d(4,"mat-select",2)(5,"mat-option",3),h(6,"Column"),c()()(),d(7,"h3"),h(8,"When"),c(),d(9,"mat-form-field",1)(10,"mat-label"),h(11,"Table is"),c(),d(12,"mat-select",4)(13,"mat-option",5),h(14,"All tables"),c()()(),d(15,"mat-form-field",1)(16,"mat-label"),h(17,"and column is"),c(),d(18,"mat-select",6)(19,"mat-option",7),h(20,"All column"),c()()(),d(21,"h3"),h(22,"Convert from"),c(),d(23,"mat-form-field",1)(24,"mat-label"),h(25,"Source data type"),c(),d(26,"mat-select",8,9),N("selectionChange",function(){se(o);const s=$t(27);return i.updateDestinationType(s.value)}),_(28,gee,2,2,"mat-option",10),c()(),d(29,"h3"),h(30,"Convert to"),c(),_(31,bee,5,1,"mat-form-field",11),_(32,vee,3,1,"div",12),_(33,yee,3,0,"div",12),c()}if(2&e){const o=$t(27);m("formGroup",i.addGlobalDataTypeForm),f(28),m("ngForOf",i.sourceType),f(3),m("ngIf",o.selected),f(1),m("ngIf",!i.viewRuleFlag),f(1),m("ngIf",i.viewRuleFlag)}},directives:[Hn,Sn,En,Mn,Yi,bn,Xn,fo,_i,ri,Et,Ht],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%;padding:0}"]}),t})();function wee(t,n){if(1&t&&(d(0,"mat-option",11),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function Dee(t,n){if(1&t&&(d(0,"mat-option",11),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function See(t,n){if(1&t){const e=pe();d(0,"button",19),N("click",function(){se(e);const o=D().index;return D().removeColumnForm(o)}),d(1,"mat-icon"),h(2,"remove"),c(),d(3,"span"),h(4,"REMOVE COLUMN"),c()()}}function Mee(t,n){if(1&t){const e=pe();be(0),d(1,"mat-card",12)(2,"div",13)(3,"mat-form-field",1)(4,"mat-label"),h(5,"Column Name"),c(),d(6,"mat-select",14),N("selectionChange",function(){return se(e),D().selectedColumnChange()}),_(7,Dee,2,2,"mat-option",3),c()(),d(8,"mat-form-field",1)(9,"mat-label"),h(10,"Sort"),c(),d(11,"mat-select",15)(12,"mat-option",16),h(13,"Ascending"),c(),d(14,"mat-option",17),h(15,"Descending"),c()()()(),_(16,See,5,0,"button",18),c(),ve()}if(2&t){const e=n.index,i=D();f(2),m("formGroupName",e),f(5),m("ngForOf",i.addColumnsList[e]),f(9),m("ngIf",!i.viewRuleFlag)}}function xee(t,n){if(1&t){const e=pe();d(0,"button",20),N("click",function(){return se(e),D().addNewColumnForm()}),d(1,"mat-icon"),h(2,"add"),c(),d(3,"span"),h(4,"ADD COLUMN"),c()()}}function Tee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",21),N("click",function(){return se(e),D().addIndex()}),h(2," ADD RULE "),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.addIndexForm.valid&&e.ruleNameValid&&e.ColsArray.controls.length>0))}}function kee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",22),N("click",function(){return se(e),D().deleteRule()}),h(2," DELETE RULE "),c()()}}let Eee=(()=>{class t{constructor(e,i,o,r){this.fb=e,this.data=i,this.sidenav=o,this.conversion=r,this.ruleNameValid=!1,this.ruleName="",this.ruleType="",this.resetRuleType=new Pe,this.tableNames=[],this.totalColumns=[],this.addColumnsList=[],this.commonColumns=[],this.viewRuleData={},this.viewRuleFlag=!1,this.conv={},this.ruleId="",this.addIndexForm=this.fb.group({tableName:["",de.required],indexName:["",[de.required,de.pattern("^[a-zA-Z].{0,59}$")]],ColsArray:this.fb.array([])})}ngOnInit(){this.data.conv.subscribe({next:e=>{this.conv=e,this.tableNames=Object.keys(e.SpSchema).map(i=>e.SpSchema[i].Name)}}),this.sidenav.sidenavAddIndexTable.subscribe({next:e=>{this.addIndexForm.controls.tableName.setValue(e),""!==e&&this.selectedTableChange(e)}}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.viewRuleData&&this.viewRuleFlag&&this.getRuleData(this.viewRuleData)})})}getRuleData(e){var i,o,r,s,a;this.ruleId=null==e?void 0:e.Id;let l=null===(o=this.conv.SpSchema[null===(i=null==e?void 0:e.Data)||void 0===i?void 0:i.TableId])||void 0===o?void 0:o.Name;this.addIndexForm.controls.tableName.setValue(l),this.addIndexForm.controls.indexName.setValue(null===(r=null==e?void 0:e.Data)||void 0===r?void 0:r.Name),this.selectedTableChange(l),this.setColArraysForViewRules(null===(s=null==e?void 0:e.Data)||void 0===s?void 0:s.TableId,null===(a=null==e?void 0:e.Data)||void 0===a?void 0:a.Keys),this.addIndexForm.disable()}setColArraysForViewRules(e,i){var o;if(this.ColsArray.clear(),i)for(let r=0;r<(null==i?void 0:i.length);r++){this.updateCommonColumns(),this.addColumnsList.push([...this.commonColumns]);let s=null===(o=this.conv.SpSchema[e])||void 0===o?void 0:o.ColDefs[i[r].ColId].Name,a=this.fb.group({columnName:[s,de.required],sort:[i[r].Desc.toString(),de.required]});this.ColsArray.push(a)}}get ColsArray(){return this.addIndexForm.controls.ColsArray}selectedTableChange(e){let i=this.conversion.getTableIdFromSpName(e,this.conv);if(i){let o=this.conv.SpSchema[i];this.totalColumns=this.conv.SpSchema[i].ColIds.map(r=>o.ColDefs[r].Name)}this.ColsArray.clear(),this.commonColumns=[],this.addColumnsList=[],this.updateCommonColumns()}addNewColumnForm(){let e=this.fb.group({columnName:["",de.required],sort:["",de.required]});this.ColsArray.push(e),this.updateCommonColumns(),this.addColumnsList.push([...this.commonColumns])}selectedColumnChange(){this.updateCommonColumns(),this.addColumnsList=this.addColumnsList.map((e,i)=>{const o=[...this.commonColumns];return""!==this.ColsArray.value[i].columnName&&o.push(this.ColsArray.value[i].columnName),o})}updateCommonColumns(){this.commonColumns=this.totalColumns.filter(e=>{let i=!0;return this.ColsArray.value.forEach(o=>{o.columnName===e&&(i=!1)}),i})}removeColumnForm(e){this.ColsArray.removeAt(e),this.addColumnsList=this.addColumnsList.filter((i,o)=>o!==e),this.selectedColumnChange()}addIndex(){let e=this.addIndexForm.value,i=[],o=this.conversion.getTableIdFromSpName(e.tableName,this.conv);i.push({Name:e.indexName,TableId:o,Unique:!1,Keys:e.ColsArray.map((r,s)=>({ColId:this.conversion.getColIdFromSpannerColName(r.columnName,o,this.conv),Desc:"true"===r.sort,Order:s+1})),Id:""}),this.applyRule(i[0]),this.resetRuleType.emit(""),this.sidenav.setSidenavAddIndexTable(""),this.sidenav.closeSidenav()}applyRule(e){let o=this.conversion.getTableIdFromSpName(this.addIndexForm.value.tableName,this.conv);this.data.applyRule({Name:this.ruleName,Type:"add_index",ObjectType:"Table",AssociatedObjects:o,Enabled:!0,Data:e,Id:""})}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.setSidenavAddIndexTable(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ei),b(Da))},t.\u0275cmp=Ae({type:t,selectors:[["app-add-index-form"]],inputs:{ruleNameValid:"ruleNameValid",ruleName:"ruleName",ruleType:"ruleType"},outputs:{resetRuleType:"resetRuleType"},decls:18,vars:7,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","tableName","required","true",1,"input-field",3,"selectionChange"],[3,"value",4,"ngFor","ngForOf"],["hintLabel","Max. 60 characters, and starts with a letter.","appearance","outline"],["matInput","","formControlName","indexName",1,"input-field"],["align","end"],["formArrayName","ColsArray",1,"addcol-form"],[4,"ngFor","ngForOf"],["mat-button","","color","primary","class","add-column-btn","type","button",3,"click",4,"ngIf"],[4,"ngIf"],[3,"value"],[1,"column-form-card"],[3,"formGroupName"],["matSelect","","formControlName","columnName","required","true",1,"input-field",3,"selectionChange"],["formControlName","sort","required","true",1,"input-field"],["value","false"],["value","true"],["mat-button","","color","primary",3,"click",4,"ngIf"],["mat-button","","color","primary",3,"click"],["mat-button","","color","primary","type","button",1,"add-column-btn",3,"click"],["mat-raised-button","","type","submit","color","primary",1,"add-column-btn",3,"disabled","click"],["mat-raised-button","","type","submit","color","primary",1,"add-column-btn",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"For Table"),c(),d(4,"mat-select",2),N("selectionChange",function(r){return i.selectedTableChange(r.value)}),_(5,wee,2,2,"mat-option",3),c()(),d(6,"mat-form-field",4)(7,"mat-label"),h(8,"Index Name"),c(),E(9,"input",5),d(10,"mat-hint",6),h(11),c()(),be(12,7),_(13,Mee,17,3,"ng-container",8),_(14,xee,5,0,"button",9),E(15,"br"),_(16,Tee,3,1,"div",10),_(17,kee,3,0,"div",10),ve(),c()),2&e&&(m("formGroup",i.addIndexForm),f(5),m("ngForOf",i.tableNames),f(6),Se("",(null==i.addIndexForm.value.indexName?null:i.addIndexForm.value.indexName.length)||0,"/60"),f(2),m("ngForOf",i.ColsArray.controls),f(1),m("ngIf",i.addColumnsList.length{class t{constructor(e,i,o,r){this.fb=e,this.data=i,this.sidenav=o,this.conversion=r,this.ruleNameValid=!1,this.ruleName="",this.ruleType="",this.resetRuleType=new Pe,this.ruleId="",this.tableNames=[],this.viewRuleData=[],this.viewRuleFlag=!1,this.conv={},this.spTypes=[],this.hintlabel="",this.editColMaxLengthForm=this.fb.group({tableName:["",de.required],column:["allColumn",de.required],spDataType:["",de.required],maxColLength:["",[de.required,de.pattern("([1-9][0-9]*|MAX)")]]})}ngOnInit(){this.data.conv.subscribe({next:e=>{this.conv=e,this.tableNames=Object.keys(e.SpSchema).map(i=>e.SpSchema[i].Name),this.tableNames.push("All tables"),"postgresql"===this.conv.SpDialect?(this.spTypes=[{name:"VARCHAR",value:"STRING"}],this.hintlabel="Max "+di.StringMaxLength+" for VARCHAR"):(this.spTypes=[{name:"STRING",value:"STRING"},{name:"BYTES",value:"BYTES"}],this.hintlabel="Max "+di.StringMaxLength+" for STRING and "+di.ByteMaxLength+" for BYTES")}}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&this.sidenav.ruleData.subscribe(i=>{var o,r,s,a,l,u;if(this.viewRuleData=i,this.viewRuleData){this.ruleId=null===(o=this.viewRuleData)||void 0===o?void 0:o.Id;let p=null===(r=this.viewRuleData)||void 0===r?void 0:r.AssociatedObjects;this.editColMaxLengthForm.controls.tableName.setValue(p),this.editColMaxLengthForm.controls.spDataType.setValue(null===(a=null===(s=this.viewRuleData)||void 0===s?void 0:s.Data)||void 0===a?void 0:a.spDataType),this.editColMaxLengthForm.controls.maxColLength.setValue(null===(u=null===(l=this.viewRuleData)||void 0===l?void 0:l.Data)||void 0===u?void 0:u.spColMaxLength),this.editColMaxLengthForm.disable()}})})}formSubmit(){const e=this.editColMaxLengthForm.value;(("STRING"===e.spDataType||"VARCHAR"===e.spDataType)&&e.spColMaxLength>di.StringMaxLength||"BYTES"===e.spDataType&&e.spColMaxLength>di.ByteMaxLength)&&(e.spColMaxLength=di.StorageMaxLength);const i={spDataType:e.spDataType,spColMaxLength:e.maxColLength};let r=this.conversion.getTableIdFromSpName(e.tableName,this.conv);""===r&&(r="All tables"),this.data.applyRule({Name:this.ruleName,Type:"edit_column_max_length",ObjectType:"Table",AssociatedObjects:r,Enabled:!0,Data:i,Id:""}),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ei),b(Da))},t.\u0275cmp=Ae({type:t,selectors:[["app-edit-column-max-length"]],inputs:{ruleNameValid:"ruleNameValid",ruleName:"ruleName",ruleType:"ruleType"},outputs:{resetRuleType:"resetRuleType"},decls:23,vars:6,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","tableName","required","true",1,"input-field"],[3,"value",4,"ngFor","ngForOf"],["matSelect","","formControlName","column","required","true",1,"input-field"],["value","allColumn"],["matSelect","","formControlName","spDataType","required","true",1,"input-field"],["appearance","outline",3,"hintLabel"],["matInput","","formControlName","maxColLength",1,"input-field"],[4,"ngIf"],[3,"value"],["mat-raised-button","","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"Table is"),c(),d(4,"mat-select",2),_(5,Iee,2,2,"mat-option",3),c()(),d(6,"mat-form-field",1)(7,"mat-label"),h(8,"and column is"),c(),d(9,"mat-select",4)(10,"mat-option",5),h(11,"All column"),c()()(),d(12,"mat-form-field",1)(13,"mat-label"),h(14,"and Spanner Type is"),c(),d(15,"mat-select",6),_(16,Oee,2,2,"mat-option",3),c()(),d(17,"mat-form-field",7)(18,"mat-label"),h(19,"Max column length"),c(),E(20,"input",8),c(),_(21,Aee,3,1,"div",9),_(22,Pee,3,0,"div",9),c()),2&e&&(m("formGroup",i.editColMaxLengthForm),f(5),m("ngForOf",i.tableNames),f(11),m("ngForOf",i.spTypes),f(1),m("hintLabel",i.hintlabel),f(4),m("ngIf",!i.viewRuleFlag),f(1),m("ngIf",i.viewRuleFlag))},directives:[Hn,Sn,En,Mn,Yi,bn,Xn,fo,ri,_i,li,Dn,Et,Ht],styles:[""]}),t})();function Fee(t,n){if(1&t&&(d(0,"mat-option",7),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Ee(e.display)}}function Nee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",8),N("click",function(){return se(e),D().formSubmit()}),h(2," ADD RULE "),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.addShardIdPrimaryKeyForm.valid&&e.ruleNameValid))}}function Lee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",9),N("click",function(){return se(e),D().deleteRule()}),h(2,"DELETE RULE"),c()()}}let Bee=(()=>{class t{constructor(e,i,o){this.fb=e,this.data=i,this.sidenav=o,this.ruleNameValid=!1,this.ruleName="",this.ruleType="",this.resetRuleType=new Pe,this.viewRuleFlag=!1,this.viewRuleData={},this.primaryKeyOrder=[{value:!0,display:"At the beginning"},{value:!1,display:"At the end"}],this.addShardIdPrimaryKeyForm=this.fb.group({table:["allTable",de.required],primaryKeyOrder:["",de.required]})}ngOnInit(){this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&(this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.viewRuleData&&this.setViewRuleData(this.viewRuleData)}),this.addShardIdPrimaryKeyForm.disable())})}formSubmit(){this.data.applyRule({Name:this.ruleName,Type:"add_shard_id_primary_key",AssociatedObjects:"All Tables",Enabled:!0,Data:{AddedAtTheStart:this.addShardIdPrimaryKeyForm.value.primaryKeyOrder},Id:""}),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}setViewRuleData(e){var i;this.ruleId=null==e?void 0:e.Id,this.addShardIdPrimaryKeyForm.controls.primaryKeyOrder.setValue(null===(i=null==e?void 0:e.Data)||void 0===i?void 0:i.AddedAtTheStart)}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-add-shard-id-primary-key"]],inputs:{ruleNameValid:"ruleNameValid",ruleName:"ruleName",ruleType:"ruleType"},outputs:{resetRuleType:"resetRuleType"},decls:14,vars:4,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","table","required","true",1,"input-field"],["value","allTable"],["matSelect","","formControlName","primaryKeyOrder","required","true",1,"input-field"],[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],[3,"value"],["mat-raised-button","","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"Table is"),c(),d(4,"mat-select",2)(5,"mat-option",3),h(6,"All tables"),c()()(),d(7,"mat-form-field",1)(8,"mat-label"),h(9,"Order in Primary Key"),c(),d(10,"mat-select",4),_(11,Fee,2,2,"mat-option",5),c()(),_(12,Nee,3,1,"div",6),_(13,Lee,3,0,"div",6),c()),2&e&&(m("formGroup",i.addShardIdPrimaryKeyForm),f(11),m("ngForOf",i.primaryKeyOrder),f(1),m("ngIf",!i.viewRuleFlag),f(1),m("ngIf",i.viewRuleFlag))},directives:[Hn,Sn,En,Mn,Yi,bn,Xn,fo,_i,ri,Et,Ht],styles:[""]}),t})();function Vee(t,n){1&t&&(d(0,"mat-option",18),h(1,"Add shard id column as primary key"),c())}function jee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-edit-global-datatype-form",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}function Hee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-add-index-form",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}function Uee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-edit-column-max-length",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}function zee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-add-shard-id-primary-key",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}let $ee=(()=>{class t{constructor(e,i){this.sidenav=e,this.data=i,this.currentRules=[],this.ruleForm=new an({ruleName:new X("",[de.required,de.pattern("^[a-zA-Z].{0,59}$")]),ruleType:new X("",[de.required])}),this.rulename="",this.ruletype="",this.viewRuleData=[],this.viewRuleFlag=!1,this.shardedMigration=!1}ngOnInit(){this.data.conv.subscribe({next:e=>{Object.keys(e.SpSchema),this.shardedMigration=!!e.IsSharded}}),this.ruleForm.valueChanges.subscribe(()=>{var e,i;this.rulename=null===(e=this.ruleForm.controls.ruleName)||void 0===e?void 0:e.value,this.ruletype=null===(i=this.ruleForm.controls.ruleType)||void 0===i?void 0:i.value}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag?this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.setViewRuleData(this.viewRuleData)}):(this.ruleForm.enable(),this.ruleForm.controls.ruleType.setValue(""),this.sidenav.sidenavRuleType.subscribe(i=>{"addIndex"===i&&this.ruleForm.controls.ruleType.setValue("addIndex")}))})}setViewRuleData(e){var i;this.ruleForm.disable(),this.ruleForm.controls.ruleName.setValue(null==e?void 0:e.Name),this.ruleForm.controls.ruleType.setValue(this.getViewRuleType(null===(i=this.viewRuleData)||void 0===i?void 0:i.Type))}closeSidenav(){this.sidenav.closeSidenav()}get ruleType(){var e;return null===(e=this.ruleForm.get("ruleType"))||void 0===e?void 0:e.value}resetRuleType(){this.ruleForm.controls.ruleType.setValue(""),this.ruleForm.controls.ruleName.setValue(""),this.ruleForm.markAsUntouched()}getViewRuleType(e){switch(e){case"add_index":return"addIndex";case"global_datatype_change":return"globalDataType";case"edit_column_max_length":return"changeMaxLength";case"add_shard_id_primary_key":return"addShardIdPrimaryKey"}return""}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Ln))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-rule"]],inputs:{currentRules:"currentRules"},decls:36,vars:8,consts:[[1,"sidenav"],[1,"sidenav-header"],[1,"header-title"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"sidenav-content"],[3,"formGroup"],["hintLabel","Max. 60 characters, and starts with a letter.","appearance","outline"],["matInput","","formControlName","ruleName",1,"input-field"],["align","end"],["appearance","outline"],["matSelect","","formControlName","ruleType","required","true",1,"input-field"],["ruleType",""],["value","globalDataType"],["value","addIndex"],["value","changeMaxLength"],["value","addShardIdPrimaryKey",4,"ngIf"],[4,"ngIf"],["value","addShardIdPrimaryKey"],[3,"ruleNameValid","ruleName","ruleType","resetRuleType"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3),c(),d(4,"button",3),N("click",function(){return i.closeSidenav()}),d(5,"mat-icon",4),h(6,"close"),c()()(),d(7,"div",5)(8,"form",6)(9,"h3"),h(10,"Rule info"),c(),d(11,"mat-form-field",7)(12,"mat-label"),h(13,"Rule name"),c(),E(14,"input",8),d(15,"mat-hint",9),h(16),c()(),d(17,"h3"),h(18,"Rule definition"),c(),d(19,"mat-form-field",10)(20,"mat-label"),h(21,"Rule type"),c(),d(22,"mat-select",11,12)(24,"mat-option",13),h(25,"Change global data type"),c(),d(26,"mat-option",14),h(27,"Add Index"),c(),d(28,"mat-option",15),h(29,"Change default max column length"),c(),_(30,Vee,2,0,"mat-option",16),c()(),E(31,"br"),c(),_(32,jee,2,3,"div",17),_(33,Hee,2,3,"div",17),_(34,Uee,2,3,"div",17),_(35,zee,2,3,"div",17),c()()),2&e){const o=$t(23);f(3),Ee(i.viewRuleFlag?"View Rule":"Add Rule"),f(5),m("formGroup",i.ruleForm),f(8),Se("",(null==i.ruleForm.value.ruleName?null:i.ruleForm.value.ruleName.length)||0,"/60"),f(14),m("ngIf",i.shardedMigration),f(2),m("ngIf","globalDataType"===o.value),f(1),m("ngIf","addIndex"===o.value),f(1),m("ngIf","changeMaxLength"===o.value),f(1),m("ngIf","addShardIdPrimaryKey"===o.value)}},directives:[Ht,_n,xi,Hn,Sn,En,Mn,li,Dn,bn,Xn,np,Yi,fo,_i,Et,Cee,Eee,Ree,Bee],styles:["mat-form-field[_ngcontent-%COMP%]{padding-bottom:0} .mat-form-field-wrapper{padding-bottom:14px}"]}),t})(),Gee=(()=>{class t{constructor(e,i,o,r){this.fetch=e,this.data=i,this.snack=o,this.sidenav=r,this.errMessage="",this.saveSessionForm=new an({SessionName:new X("",[de.required,de.pattern("^[a-zA-Z][a-zA-Z0-9_ -]{0,59}$")]),EditorName:new X("",[de.required,de.pattern("^[a-zA-Z][a-zA-Z0-9_ -]{0,59}$")]),DatabaseName:new X("",[de.required,de.pattern("^[a-zA-Z][a-zA-Z0-9_-]{0,59}$")]),Notes:new X("")})}saveSession(){var e,i;let o=this.saveSessionForm.value,r={SessionName:o.SessionName.trim(),EditorName:o.EditorName.trim(),DatabaseName:o.DatabaseName.trim(),Notes:""===(null===(e=o.Notes)||void 0===e?void 0:e.trim())||null===o.Notes?[""]:null===(i=o.Notes)||void 0===i?void 0:i.split("\n")};this.fetch.saveSession(r).subscribe({next:s=>{this.data.getAllSessions(),this.snack.openSnackBar("Session saved successfully","Close",5)},error:s=>{this.snack.openSnackBar(s.error,"Close")}}),this.saveSessionForm.reset(),this.saveSessionForm.markAsUntouched(),this.closeSidenav()}ngOnInit(){this.sidenav.sidenavDatabaseName.subscribe({next:e=>{this.saveSessionForm.controls.DatabaseName.setValue(e)}})}closeSidenav(){this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Ln),b(Bo),b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-save-session"]],decls:40,vars:5,consts:[[1,"sidenav"],[1,"sidenav-header"],[1,"header-title"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"sidenav-content"],[1,"save-session-form",3,"formGroup"],["hintLabel","Letters, numbers, hyphen, space and underscore allowed. Max. 60 characters, and starts with a letter.","appearance","outline"],["matInput","","placeholder","mysession","type","text","formControlName","SessionName","matTooltip","User can view saved sessions under session history section","matTooltipPosition","above"],["align","end"],["hintLabel","Letters, numbers, hyphen, space and underscore allowed. Max. 60 characters, and starts with a letter.","appearance","outline",1,"full-width"],["matInput","","placeholder","editor name","type","text","formControlName","EditorName"],["hintLabel","Letters, numbers, hyphen and underscores allowed. Max. 60 characters, and starts with a letter.","appearance","outline",1,"full-width"],["matInput","","type","text","formControlName","DatabaseName"],["appearance","outline",1,"full-width"],["rows","7","matInput","","placeholder","added new index","type","text","formControlName","Notes"],[1,"sidenav-footer"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3,"Save Session"),c(),d(4,"button",3),N("click",function(){return i.closeSidenav()}),d(5,"mat-icon",4),h(6,"close"),c()()(),d(7,"div",5)(8,"h3"),h(9,"Session Details"),c(),d(10,"form",6)(11,"mat-form-field",7)(12,"mat-label"),h(13,"Session Name"),c(),E(14,"input",8),d(15,"mat-hint",9),h(16),c()(),E(17,"br"),d(18,"mat-form-field",10)(19,"mat-label"),h(20,"Editor Name"),c(),E(21,"input",11),d(22,"mat-hint",9),h(23),c()(),E(24,"br"),d(25,"mat-form-field",12)(26,"mat-label"),h(27,"Database Name"),c(),E(28,"input",13),d(29,"mat-hint",9),h(30),c()(),E(31,"br"),d(32,"mat-form-field",14)(33,"mat-label"),h(34,"Notes"),c(),E(35,"textarea",15),c(),E(36,"br"),c()(),d(37,"div",16)(38,"button",17),N("click",function(){return i.saveSession()}),h(39," Save Session "),c()()()),2&e&&(f(10),m("formGroup",i.saveSessionForm),f(6),Se("",(null==i.saveSessionForm.value.SessionName?null:i.saveSessionForm.value.SessionName.length)||0,"/60"),f(7),Se("",(null==i.saveSessionForm.value.EditorName?null:i.saveSessionForm.value.EditorName.length)||0,"/60"),f(7),Se("",(null==i.saveSessionForm.value.DatabaseName?null:i.saveSessionForm.value.DatabaseName.length)||0,"/60"),f(8),m("disabled",!i.saveSessionForm.valid))},directives:[Ht,_n,xi,Hn,Sn,En,Mn,li,Dn,bn,Xn,ki,np],styles:[".mat-form-field[_ngcontent-%COMP%]{padding-bottom:10px}"]}),t})();function Wee(t,n){1&t&&(d(0,"th",9),h(1,"Column"),c())}function qee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.ColumnName)}}function Kee(t,n){1&t&&(d(0,"th",9),h(1,"Type"),c())}function Zee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.Type)}}function Qee(t,n){1&t&&(d(0,"th",9),h(1,"Updated Column"),c())}function Yee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.UpdateColumnName)}}function Xee(t,n){1&t&&(d(0,"th",9),h(1,"Updated Type"),c())}function Jee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.UpdateType)}}function ete(t,n){1&t&&E(0,"tr",11)}function tte(t,n){1&t&&E(0,"tr",12)}let nte=(()=>{class t{constructor(){this.tableChange={InterleaveColumnChanges:[],Table:""},this.dataSource=[],this.displayedColumns=["ColumnName","Type","UpdateColumnName","UpdateType"]}ngOnInit(){}ngOnChanges(e){var i;this.tableChange=(null===(i=e.tableChange)||void 0===i?void 0:i.currentValue)||this.tableChange,this.dataSource=this.tableChange.InterleaveColumnChanges}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["app-table-column-changes-preview"]],inputs:{tableChange:"tableChange"},features:[nn],decls:15,vars:3,consts:[["mat-table","",1,"object-full-width","margin-bot-1",3,"dataSource"],["matColumnDef","ColumnName"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Type"],["matColumnDef","UpdateColumnName"],["matColumnDef","UpdateType"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(e,i){1&e&&(d(0,"table",0),be(1,1),_(2,Wee,2,0,"th",2),_(3,qee,2,1,"td",3),ve(),be(4,4),_(5,Kee,2,0,"th",2),_(6,Zee,2,1,"td",3),ve(),be(7,5),_(8,Qee,2,0,"th",2),_(9,Yee,2,1,"td",3),ve(),be(10,6),_(11,Xee,2,0,"th",2),_(12,Jee,2,1,"td",3),ve(),_(13,ete,1,0,"tr",7),_(14,tte,1,0,"tr",8),c()),2&e&&(m("dataSource",i.dataSource),f(13),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns))},directives:[As,Xr,Yr,Jr,Qr,es,Ps,Fs,Rs,Ns],styles:[".margin-bot-1[_ngcontent-%COMP%]{margin-bottom:1rem}.mat-header-row[_ngcontent-%COMP%]{background-color:#f5f5f5}.mat-column-ColumnName[_ngcontent-%COMP%], .mat-column-UpdateColumnName[_ngcontent-%COMP%]{width:30%;max-width:30%}.mat-column-Type[_ngcontent-%COMP%], .mat-column-UpdateType[_ngcontent-%COMP%]{width:20%;max-width:20%}.mat-cell[_ngcontent-%COMP%]{padding-right:1rem;word-break:break-all}"]}),t})();function ite(t,n){1&t&&(d(0,"p"),h(1,"Review the DDL changes below."),c())}function ote(t,n){if(1&t&&(d(0,"p"),h(1," Changing an interleaved table will have an impact on the following tables : "),d(2,"b"),h(3),c()()),2&t){const e=D();f(3),Ee(e.tableList)}}function rte(t,n){if(1&t&&(d(0,"div",11)(1,"pre")(2,"code"),h(3),c()()()),2&t){const e=D();f(3),Ee(e.ddl)}}function ste(t,n){if(1&t&&(be(0),d(1,"h4"),h(2),c(),E(3,"app-table-column-changes-preview",14),ve()),2&t){const e=n.$implicit,i=n.index,o=D(2);f(2),Ee(o.tableNames[i]),f(1),m("tableChange",e)}}function ate(t,n){if(1&t&&(d(0,"div",12),_(1,ste,4,2,"ng-container",13),c()),2&t){const e=D();f(1),m("ngForOf",e.tableChanges)}}let lte=(()=>{class t{constructor(e,i,o,r){this.sidenav=e,this.tableUpdatePubSub=i,this.data=o,this.snackbar=r,this.ddl="",this.showDdl=!0,this.tableUpdateData={tableName:"",tableId:"",updateDetail:{UpdateCols:{}}},this.tableChanges=[],this.tableNames=[],this.tableList=""}ngOnInit(){this.tableUpdatePubSub.reviewTableChanges.subscribe(e=>{if(e.Changes&&e.Changes.length>0){this.showDdl=!1,this.tableChanges=e.Changes;const i=[];this.tableList="",this.tableChanges.forEach((o,r)=>{i.push(o.Table),this.tableList+=0==r?o.Table:", "+o.Table}),this.tableList+=".",this.tableNames=i}else this.showDdl=!0,this.ddl=e.DDL}),this.tableUpdatePubSub.tableUpdateDetail.subscribe(e=>{this.tableUpdateData=e})}updateTable(){this.data.updateTable(this.tableUpdateData.tableId,this.tableUpdateData.updateDetail).subscribe({next:e=>{""==e?(this.snackbar.openSnackBar(`Schema changes to table ${this.tableUpdateData.tableName} saved successfully`,"Close",5),0==this.showDdl&&1!=this.tableNames.length&&this.snackbar.openSnackBar(`Schema changes to tables ${this.tableNames[0]} and ${this.tableNames[1]} saved successfully`,"Close",5),this.closeSidenav()):this.snackbar.openSnackBar(e,"Close",5)}})}closeSidenav(){this.ddl="",this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Rv),b(Ln),b(Bo))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-review-changes"]],decls:17,vars:4,consts:[[1,"sidenav"],[1,"sidenav-header"],[1,"header-title"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"sidenav-content"],[4,"ngIf"],["class","ddl-display",4,"ngIf"],["class","table-changes-display",4,"ngIf"],[1,"sidenav-footer"],["mat-raised-button","","color","primary",3,"click"],[1,"ddl-display"],[1,"table-changes-display"],[4,"ngFor","ngForOf"],[3,"tableChange"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3,"Review changes to your schema"),c(),d(4,"button",3),N("click",function(){return i.closeSidenav()}),d(5,"mat-icon",4),h(6,"close"),c()()(),E(7,"mat-divider"),d(8,"div",5),_(9,ite,2,0,"p",6),_(10,ote,4,1,"p",6),_(11,rte,4,1,"div",7),_(12,ate,2,1,"div",8),c(),E(13,"mat-divider"),d(14,"div",9)(15,"button",10),N("click",function(){return i.updateTable()}),h(16,"Confirm Conversion"),c()()()),2&e&&(f(9),m("ngIf",i.showDdl),f(1),m("ngIf",!i.showDdl),f(1),m("ngIf",i.showDdl),f(1),m("ngIf",!i.showDdl))},directives:[Ht,_n,dT,Et,ri,nte],styles:[".sidenav-content[_ngcontent-%COMP%]{height:82%}.sidenav-content[_ngcontent-%COMP%] .ddl-display[_ngcontent-%COMP%]{height:90%;background-color:#dadada;padding:10px;overflow:auto}.sidenav-content[_ngcontent-%COMP%] .table-changes-display[_ngcontent-%COMP%]{height:90%;overflow:auto}"]}),t})();function cte(t,n){1&t&&(d(0,"th",39),h(1,"Total tables"),c())}function dte(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.total)}}function ute(t,n){1&t&&(d(0,"th",39)(1,"mat-icon",41),h(2," error "),c(),h(3,"Converted with many issues "),c())}function hte(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.bad)}}function pte(t,n){1&t&&(d(0,"th",39)(1,"mat-icon",42),h(2," warning"),c(),h(3,"Conversion some warnings & suggestions "),c())}function fte(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.ok)}}function mte(t,n){1&t&&(d(0,"th",39)(1,"mat-icon",43),h(2," check_circle "),c(),h(3,"100% conversion "),c())}function gte(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.good)}}function _te(t,n){1&t&&E(0,"tr",44)}function bte(t,n){1&t&&E(0,"tr",45)}function vte(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function yte(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function Cte(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function wte(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function Dte(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function Ste(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function Mte(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function xte(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function Tte(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function kte(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,xte,2,0,"mat-icon",37),_(3,Tte,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function Ete(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function Ite(t,n){1&t&&E(0,"tr",44)}function Ote(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function Ate(t,n){1&t&&E(0,"tr",75)}const Kp=function(){return["expandedDetail"]};function Pte(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",46),h(4," error "),c(),h(5," ERRORS "),c()(),d(6,"table",47),be(7,48),_(8,vte,2,0,"th",49),_(9,yte,2,1,"td",50),ve(),be(10,51),_(11,Cte,2,0,"th",52),_(12,wte,2,1,"td",53),ve(),be(13,54),_(14,Dte,2,0,"th",55),_(15,Ste,2,1,"td",56),ve(),be(16,57),_(17,Mte,2,0,"th",58),_(18,kte,4,2,"td",59),ve(),be(19,60),_(20,Ete,4,3,"td",59),ve(),_(21,Ite,1,0,"tr",34),_(22,Ote,1,2,"tr",61),_(23,Ate,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Errors),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function Rte(t,n){1&t&&E(0,"br")}function Fte(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function Nte(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function Lte(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function Bte(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function Vte(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function jte(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function Hte(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function Ute(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function zte(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function $te(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,Ute,2,0,"mat-icon",37),_(3,zte,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function Gte(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function Wte(t,n){1&t&&E(0,"tr",44)}function qte(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function Kte(t,n){1&t&&E(0,"tr",75)}function Zte(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",76),h(4," warning "),c(),h(5," WARNINGS "),c()(),d(6,"table",47),be(7,48),_(8,Fte,2,0,"th",49),_(9,Nte,2,1,"td",50),ve(),be(10,51),_(11,Lte,2,0,"th",52),_(12,Bte,2,1,"td",53),ve(),be(13,54),_(14,Vte,2,0,"th",55),_(15,jte,2,1,"td",56),ve(),be(16,57),_(17,Hte,2,0,"th",58),_(18,$te,4,2,"td",59),ve(),be(19,60),_(20,Gte,4,3,"td",59),ve(),_(21,Wte,1,0,"tr",34),_(22,qte,1,2,"tr",61),_(23,Kte,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Warnings),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function Qte(t,n){1&t&&E(0,"br")}function Yte(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function Xte(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function Jte(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function ene(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function tne(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function nne(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function ine(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function one(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function rne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function sne(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,one,2,0,"mat-icon",37),_(3,rne,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function ane(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function lne(t,n){1&t&&E(0,"tr",44)}function cne(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function dne(t,n){1&t&&E(0,"tr",75)}function une(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",77),h(4," wb_incandescent "),c(),h(5," SUGGESTIONS "),c()(),d(6,"table",47),be(7,48),_(8,Yte,2,0,"th",49),_(9,Xte,2,1,"td",50),ve(),be(10,51),_(11,Jte,2,0,"th",52),_(12,ene,2,1,"td",53),ve(),be(13,54),_(14,tne,2,0,"th",55),_(15,nne,2,1,"td",56),ve(),be(16,57),_(17,ine,2,0,"th",58),_(18,sne,4,2,"td",59),ve(),be(19,60),_(20,ane,4,3,"td",59),ve(),_(21,lne,1,0,"tr",34),_(22,cne,1,2,"tr",61),_(23,dne,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Suggestions),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function hne(t,n){1&t&&E(0,"br")}function pne(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function fne(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function mne(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function gne(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function _ne(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function bne(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function vne(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function yne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function Cne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function wne(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,yne,2,0,"mat-icon",37),_(3,Cne,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function Dne(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function Sne(t,n){1&t&&E(0,"tr",44)}function Mne(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function xne(t,n){1&t&&E(0,"tr",75)}function Tne(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",78),h(4," check_circle "),c(),h(5," NOTES "),c()(),d(6,"table",47),be(7,48),_(8,pne,2,0,"th",49),_(9,fne,2,1,"td",50),ve(),be(10,51),_(11,mne,2,0,"th",52),_(12,gne,2,1,"td",53),ve(),be(13,54),_(14,_ne,2,0,"th",55),_(15,bne,2,1,"td",56),ve(),be(16,57),_(17,vne,2,0,"th",58),_(18,wne,4,2,"td",59),ve(),be(19,60),_(20,Dne,4,3,"td",59),ve(),_(21,Sne,1,0,"tr",34),_(22,Mne,1,2,"tr",61),_(23,xne,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Notes),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function kne(t,n){1&t&&E(0,"br")}function Ene(t,n){1&t&&(d(0,"div",79)(1,"div",80),hn(),d(2,"svg",81),E(3,"path",82),c()(),Qs(),d(4,"div",83),h(5," Woohoo! No issues or suggestions"),E(6,"br"),h(7,"found. "),c(),E(8,"br"),c())}const Bv=function(t){return{"width.%":t}};let Ine=(()=>{class t{constructor(e,i,o){this.sidenav=e,this.clickEvent=i,this.fetch=o,this.issueTableData_Errors=[],this.issueTableData_Warnings=[],this.issueTableData_Suggestions=[],this.issueTableData_Notes=[],this.columnsToDisplay=["position","description","tableCount"],this.columnsToDisplayWithExpand=[...this.columnsToDisplay,"expand"],this.expandedElements=new Set,this.srcDbType="",this.connectionDetail="",this.summaryText="",this.issueDescription={},this.conversionRateCount={good:0,ok:0,bad:0},this.conversionRatePercentage={good:0,ok:0,bad:0},this.rateCountDataSource=[],this.rateCountDisplayedColumns=["total","bad","ok","good"],this.ratePcDataSource=[],this.ratePcDisplayedColumns=["bad","ok","good"]}toggleRow(e){this.isRowExpanded(e)?this.expandedElements.delete(e):this.expandedElements.add(e)}isRowExpanded(e){return this.expandedElements.has(e)}ngOnInit(){this.clickEvent.viewAssesment.subscribe(e=>{this.srcDbType=e.srcDbType,this.connectionDetail=e.connectionDetail,this.conversionRateCount=e.conversionRates;let i=this.conversionRateCount.good+this.conversionRateCount.ok+this.conversionRateCount.bad;if(i>0)for(let o in this.conversionRatePercentage)this.conversionRatePercentage[o]=Number((this.conversionRateCount[o]/i*100).toFixed(2));i>0&&this.setRateCountDataSource(i),this.fetch.getDStructuredReport().subscribe({next:o=>{this.summaryText=o.summary.text}}),this.issueTableData={position:0,description:"",tableCount:0,tableNamesJoinedByComma:""},this.fetch.getIssueDescription().subscribe({next:o=>{this.issueDescription=o,this.generateIssueReport()}})})}closeSidenav(){this.sidenav.closeSidenav()}setRateCountDataSource(e){this.rateCountDataSource=[],this.rateCountDataSource.push({total:e,bad:this.conversionRateCount.bad,ok:this.conversionRateCount.ok,good:this.conversionRateCount.good})}downloadStructuredReport(){var e=document.createElement("a");this.fetch.getDStructuredReport().subscribe({next:i=>{let o=JSON.stringify(i).replace(/9223372036854776000/g,"9223372036854775807");e.href="data:text;charset=utf-8,"+encodeURIComponent(o),e.download=`${i.summary.dbName}_migration_structuredReport.json`,e.click()}})}downloadTextReport(){var e=document.createElement("a");this.fetch.getDTextReport().subscribe({next:i=>{let o=this.connectionDetail;e.href="data:text;charset=utf-8,"+encodeURIComponent(i),e.download=`${o}_migration_textReport.txt`,e.click()}})}downloadReports(){let e=new hI;this.fetch.getDStructuredReport().subscribe({next:i=>{let o=i.summary.dbName,r=JSON.stringify(i).replace(/9223372036854776000/g,"9223372036854775807");e.file(o+"_migration_structuredReport.json",r),this.fetch.getDTextReport().subscribe({next:a=>{e.file(o+"_migration_textReport.txt",a),e.generateAsync({type:"blob"}).then(l=>{var u=document.createElement("a");u.href=URL.createObjectURL(l),u.download=`${o}_reports`,u.click()})}})}})}generateIssueReport(){this.fetch.getDStructuredReport().subscribe({next:e=>{let i=e.tableReports;var o={errors:new Map,warnings:new Map,suggestions:new Map,notes:new Map};for(var r of i){let l=r.issues;if(null==l)return this.issueTableData_Errors=[],this.issueTableData_Warnings=[],this.issueTableData_Suggestions=[],void(this.issueTableData_Notes=[]);for(var s of l){let u={tableCount:0,tableNames:new Set};switch(s.issueType){case"Error":case"Errors":this.appendIssueWithTableInformation(s.issueList,o.errors,u,r);break;case"Warnings":case"Warning":this.appendIssueWithTableInformation(s.issueList,o.warnings,u,r);break;case"Suggestion":case"Suggestions":this.appendIssueWithTableInformation(s.issueList,o.suggestions,u,r);break;case"Note":case"Notes":this.appendIssueWithTableInformation(s.issueList,o.notes,u,r)}}}let a=o.warnings;this.issueTableData_Warnings=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Warnings),a=o.errors,this.issueTableData_Errors=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Errors),a=o.suggestions,this.issueTableData_Suggestions=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Suggestions),a=o.notes,this.issueTableData_Notes=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Notes)}})}populateTableData(e,i){let o=1;for(let[r,s]of e.entries()){let a=[...s.tableNames.keys()];i.push({position:o,description:this.issueDescription[r],tableCount:s.tableCount,tableNamesJoinedByComma:a.join(", ")}),o+=1}}appendIssueWithTableInformation(e,i,o,r){for(var s of e)if(i.has(s.category)){let l=i.get(s.category),u={tableNames:new Set(l.tableNames),tableCount:l.tableNames.size};u.tableNames.add(r.srcTableName),u.tableCount=u.tableNames.size,i.set(s.category,u)}else{let l=o;l.tableNames.add(r.srcTableName),l.tableCount=l.tableNames.size,i.set(s.category,l)}}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Vo),b(Bi))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-view-assessment"]],decls:87,vars:25,consts:[[1,"sidenav-view-assessment-container"],[1,"sidenav-view-assessment-header"],[1,"mat-h2","header-title"],[1,"btn-source-select"],[1,"reportsButtons"],["mat-raised-button","","color","primary",1,"split-button-left",3,"click"],["mat-raised-button","","color","primary",1,"split-button-right",3,"matMenuTriggerFor"],["aria-hidden","false","aria-label","More options"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"click"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"content"],[1,"summaryHeader"],[1,"databaseName"],[1,"migrationDetails"],[1,"summaryText"],[1,"sidenav-percentage-bar"],[1,"danger-background",3,"ngStyle"],[1,"warning-background",3,"ngStyle"],[1,"success-background",3,"ngStyle"],[1,"sidenav-percentage-indent"],[1,"icon","danger"],[1,"icon","warning"],[1,"icon","success"],[1,"sidenav-title"],["mat-table","",1,"sidenav-conversionByTable",3,"dataSource"],["matColumnDef","total"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","","class","cells",4,"matCellDef"],["matColumnDef","bad",1,"bad"],["matColumnDef","ok"],["matColumnDef","good"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[1,"issue-report"],[4,"ngIf"],["class","no-issue-container",4,"ngIf"],["mat-header-cell",""],["mat-cell","",1,"cells"],[1,"icon","danger","icon-size","icons"],[1,"icon","warning","icon-size","icons"],[1,"icon","success","icon-size","icons"],["mat-header-row",""],["mat-row",""],["matTooltip","Error: Please resolve them to proceed with the migration","matTooltipPosition","above",1,"danger"],["mat-table","","multiTemplateDataRows","",1,"sidenav-databaseDefinitions",3,"dataSource"],["matColumnDef","position"],["mat-header-cell","","class","mat-position",4,"matHeaderCellDef"],["mat-cell","","class","mat-position",4,"matCellDef"],["matColumnDef","description"],["mat-header-cell","","class","mat-description",4,"matHeaderCellDef"],["mat-cell","","class","mat-description",4,"matCellDef"],["matColumnDef","tableCount"],["mat-header-cell","","class","mat-tableCount",4,"matHeaderCellDef"],["mat-cell","","class","mat-tableCount",4,"matCellDef"],["matColumnDef","expand"],["mat-header-cell","","aria-label","row actions",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","expandedDetail"],["mat-row","","class","example-element-row",3,"example-expanded-row","click",4,"matRowDef","matRowDefColumns"],["mat-row","","class","example-detail-row",4,"matRowDef","matRowDefColumns"],["mat-header-cell","",1,"mat-position"],["mat-cell","",1,"mat-position"],["mat-header-cell","",1,"mat-description"],["mat-cell","",1,"mat-description"],["mat-header-cell","",1,"mat-tableCount"],["mat-cell","",1,"mat-tableCount"],["mat-header-cell","","aria-label","row actions"],["mat-cell",""],["mat-icon-button","","aria-label","expand row",3,"click"],[1,"example-element-detail",3,"ngClass"],[1,"example-element-description"],["mat-row","",1,"example-element-row",3,"click"],["mat-row","",1,"example-detail-row"],["matTooltip","Warning : Changes made because of differences in source and spanner capabilities.","matTooltipPosition","above",1,"warning"],["matTooltip","Suggestion : We highly recommend you make these changes or else it will impact your DB performance.","matTooltipPosition","above",1,"suggestion"],["matTooltip","Note : This is informational and you don't need to do anything.","matTooltipPosition","above",1,"success"],[1,"no-issue-container"],[1,"no-issue-icon-container"],["width","36","height","36","viewBox","0 0 24 20","fill","none","xmlns","http://www.w3.org/2000/svg"],["d","M16.8332 0.69873C16.0051 7.45842 16.2492 9.44782 10.4672 10.2012C16.1511 11.1242 16.2329 13.2059 16.8332 19.7037C17.6237 13.1681 17.4697 11.2106 23.1986 10.2012C17.4247 9.45963 17.6194 7.4505 16.8332 0.69873ZM4.23739 0.872955C3.79064 4.52078 3.92238 5.59467 0.802246 6.00069C3.86944 6.49885 3.91349 7.62218 4.23739 11.1284C4.66397 7.60153 4.581 6.54497 7.67271 6.00069C4.55696 5.60052 4.66178 4.51623 4.23739 0.872955ZM7.36426 11.1105C7.05096 13.6683 7.14331 14.4212 4.95554 14.7061C7.10612 15.0553 7.13705 15.8431 7.36426 18.3017C7.66333 15.8288 7.60521 15.088 9.77298 14.7061C7.58818 14.4255 7.66177 13.6653 7.36426 11.1105Z","fill","#3367D6"],[1,"no-issue-message"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3,"Assessment report"),c(),d(4,"div",3)(5,"span",4)(6,"button",5),N("click",function(){return i.downloadReports()}),h(7," DOWNLOAD REPORTS "),c(),d(8,"button",6)(9,"mat-icon",7),h(10,"expand_more"),c()(),d(11,"mat-menu",8,9)(13,"button",10),N("click",function(){return i.downloadTextReport()}),h(14," Download Text Report "),c(),d(15,"button",10),N("click",function(){return i.downloadStructuredReport()}),h(16," Download Structured Report "),c()()(),d(17,"button",11),N("click",function(){return i.closeSidenav()}),d(18,"mat-icon",12),h(19,"close"),c()()()(),d(20,"div",13)(21,"div",14)(22,"p",15),h(23),c(),d(24,"p",16),h(25),d(26,"mat-icon"),h(27,"arrow_right_alt"),c(),h(28," Spanner)"),c()(),d(29,"p",17),h(30),c(),d(31,"mat-card")(32,"div",18),E(33,"div",19)(34,"div",20)(35,"div",21),c(),E(36,"hr")(37,"br"),d(38,"div",22)(39,"span")(40,"mat-icon",23),h(41," circle "),c(),d(42,"span"),h(43," Not a great conversion"),c()(),d(44,"span")(45,"mat-icon",24),h(46," circle "),c(),d(47,"span"),h(48," Converted with warnings"),c()(),d(49,"span")(50,"mat-icon",25),h(51," circle "),c(),d(52,"span"),h(53," Converted automatically"),c()()()(),E(54,"br"),d(55,"h3",26),h(56,"Conversion status by table"),c(),d(57,"table",27),be(58,28),_(59,cte,2,0,"th",29),_(60,dte,2,1,"td",30),ve(),be(61,31),_(62,ute,4,0,"th",29),_(63,hte,2,1,"td",30),ve(),be(64,32),_(65,pte,4,0,"th",29),_(66,fte,2,1,"td",30),ve(),be(67,33),_(68,mte,4,0,"th",29),_(69,gte,2,1,"td",30),ve(),_(70,_te,1,0,"tr",34),_(71,bte,1,0,"tr",35),c(),E(72,"br"),d(73,"h3"),h(74,"Summarized Table Report"),c(),d(75,"div",36),_(76,Pte,24,5,"mat-expansion-panel",37),_(77,Rte,1,0,"br",37),_(78,Zte,24,5,"mat-expansion-panel",37),_(79,Qte,1,0,"br",37),_(80,une,24,5,"mat-expansion-panel",37),_(81,hne,1,0,"br",37),_(82,Tne,24,5,"mat-expansion-panel",37),_(83,kne,1,0,"br",37),_(84,Ene,9,0,"div",38),E(85,"br"),c(),E(86,"br"),c()()),2&e){const o=$t(12);f(8),m("matMenuTriggerFor",o),f(15),Ee(i.connectionDetail),f(2),Se(" \xa0 (",i.srcDbType," "),f(5),Ee(i.summaryText),f(3),m("ngStyle",Kt(19,Bv,i.conversionRatePercentage.bad)),f(1),m("ngStyle",Kt(21,Bv,i.conversionRatePercentage.ok)),f(1),m("ngStyle",Kt(23,Bv,i.conversionRatePercentage.good)),f(22),m("dataSource",i.rateCountDataSource),f(13),m("matHeaderRowDef",i.rateCountDisplayedColumns),f(1),m("matRowDefColumns",i.rateCountDisplayedColumns),f(5),m("ngIf",i.issueTableData_Errors.length),f(1),m("ngIf",i.issueTableData_Errors.length),f(1),m("ngIf",i.issueTableData_Warnings.length),f(1),m("ngIf",i.issueTableData_Warnings.length),f(1),m("ngIf",i.issueTableData_Suggestions.length),f(1),m("ngIf",i.issueTableData_Suggestions.length),f(1),m("ngIf",i.issueTableData_Notes.length),f(1),m("ngIf",i.issueTableData_Notes.length),f(1),m("ngIf",!(i.issueTableData_Notes.length||i.issueTableData_Suggestions.length||i.issueTableData_Warnings.length||i.issueTableData_Errors.length))}},directives:[Ht,Nl,_n,Fl,qr,$h,Ug,As,Xr,Yr,Jr,Qr,es,Ps,Fs,Rs,Ns,Et,nk,jH,HH,ki,nr],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}.icon-size[_ngcontent-%COMP%]{font-size:1.2em;text-align:center;margin-top:8px;margin-left:10px;vertical-align:inherit}.mat-header-cell[_ngcontent-%COMP%]{border-style:none}.icons[_ngcontent-%COMP%]{border-left:1px solid #d0cccc;padding-left:10px}.cells[_ngcontent-%COMP%]{text-align:center}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%]{padding:7px 16px;display:flex;flex-direction:row;align-items:center;border-bottom:1px solid #d0cccc;justify-content:space-between}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .header-title[_ngcontent-%COMP%]{margin:0}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .reportsButtons[_ngcontent-%COMP%]{white-space:nowrap}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-left[_ngcontent-%COMP%]{border-top-right-radius:0;border-bottom-right-radius:0}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-right[_ngcontent-%COMP%]{width:30px!important;min-width:unset!important;padding:0 8px 0 2px;border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px solid #fafafa}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{margin-left:1.25px}"]}),t})(),One=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.snack=i,this.dataService=o,this.data=r,this.dialogRef=s,this.errMessage="",this.updateConfigForm=new an({GCPProjectID:new X(r.GCPProjectID,[de.required]),SpannerInstanceID:new X(r.SpannerInstanceID,[de.required])}),s.disableClose=!0}updateSpannerConfig(){let e=this.updateConfigForm.value;this.fetch.setSpannerConfig({GCPProjectID:e.GCPProjectID,SpannerInstanceID:e.SpannerInstanceID}).subscribe({next:o=>{o.IsMetadataDbCreated&&this.snack.openSnackBar("Metadata database not found. A new database has been created to store session metadata.","Close",5),this.snack.openSnackBar(o.IsConfigValid?"Spanner Config updated successfully":"Invalid Spanner Configuration","Close",5),this.dialogRef.close(Object.assign({},o)),this.dataService.updateIsOffline(),this.dataService.updateConfig(o),this.dataService.getAllSessions()},error:o=>{this.snack.openSnackBar(o.message,"Close")}})}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Bi),b(Bo),b(Ln),b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-update-spanner-config-form"]],decls:20,vars:3,consts:[["mat-dialog-content",""],[1,"save-session-form",3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","placeholder","project id","type","text","formControlName","GCPProjectID"],["hintLabel","Min. 2 characters and Max. 64 characters","appearance","outline",1,"full-width"],["matInput","","placeholder","instance id","type","text","required","","minlength","2","maxlength","64","pattern","^[a-z]([-a-z0-9]*[a-z0-9])?","formControlName","SpannerInstanceID"],["align","end"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Connect to Spanner"),c(),d(4,"mat-form-field",2)(5,"mat-label"),h(6,"Project ID"),c(),E(7,"input",3),c(),E(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"Instance ID"),c(),E(12,"input",5),d(13,"mat-hint",6),h(14),c()()()(),d(15,"div",7)(16,"button",8),h(17,"CANCEL"),c(),d(18,"button",9),N("click",function(){return i.updateSpannerConfig()}),h(19," SAVE "),c()()),2&e&&(f(1),m("formGroup",i.updateConfigForm),f(13),Se("",(null==i.updateConfigForm.value.SpannerInstanceID?null:i.updateConfigForm.value.SpannerInstanceID.length)||0,"/64"),f(4),m("disabled",!i.updateConfigForm.valid))},directives:[wr,xi,Hn,Sn,En,Mn,li,Dn,bn,Xn,fo,xb,Tb,kb,np,Dr,Ht,Ji],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%}.buttons-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}"]}),t})();function Ane(t,n){1&t&&(d(0,"mat-icon",11),h(1," warning "),c())}function Pne(t,n){1&t&&(d(0,"mat-icon",12),h(1," check_circle "),c())}function Rne(t,n){1&t&&(d(0,"mat-icon",13),h(1," warning "),c())}function Fne(t,n){1&t&&(d(0,"div")(1,"span",null,14),h(3,"Spanner database is not configured, click on edit button to configure "),c()())}function Nne(t,n){if(1&t&&(d(0,"div")(1,"span",15)(2,"b"),h(3,"Project Id: "),c(),h(4),c(),d(5,"span",16)(6,"b"),h(7,"Spanner Instance Id: "),c(),h(8),c()()),2&t){const e=D();f(4),Ee(e.spannerConfig.GCPProjectID),f(4),Ee(e.spannerConfig.SpannerInstanceID)}}let Lne=(()=>{class t{constructor(e,i,o,r,s){this.data=e,this.dialog=i,this.sidenav=o,this.clickEvent=r,this.loaderService=s,this.isOfflineStatus=!1,this.spannerConfig={GCPProjectID:"",SpannerInstanceID:""}}ngOnInit(){this.data.config.subscribe(e=>{this.spannerConfig=e}),this.data.isOffline.subscribe({next:e=>{this.isOfflineStatus=e}}),this.clickEvent.spannerConfig.subscribe(e=>{e&&this.openEditForm()})}openEditForm(){this.dialog.open(One,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:this.spannerConfig}).afterClosed().subscribe(i=>{i&&(this.spannerConfig=i)})}showWarning(){return!this.spannerConfig.GCPProjectID&&!this.spannerConfig.SpannerInstanceID}openInstructionSidenav(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("instruction")}openUserGuide(){window.open("https://github.com/GoogleCloudPlatform/spanner-migration-tool/blob/master/SpannerMigrationToolUIUserGuide.pdf","_blank")}stopLoading(){this.loaderService.stopLoader(),this.clickEvent.cancelDbLoading(),this.clickEvent.closeDatabaseLoader()}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(ns),b(Ei),b(Vo),b(Gp))},t.\u0275cmp=Ae({type:t,selectors:[["app-header"]],decls:16,vars:6,consts:[["color","secondry",1,"header-container"],[1,"pointer",3,"routerLink","click"],[1,"menu-spacer"],[1,"right_container"],[1,"spanner_config"],["class","icon warning","matTooltip","Invalid spanner configuration. Working in offline mode",4,"ngIf"],["class","icon success","matTooltip","Valid spanner configuration.",4,"ngIf"],["class","icon warning","matTooltip","Spanner configuration has not been set.",4,"ngIf"],[4,"ngIf"],["matTooltip","Edit Settings",1,"cursor-pointer",3,"click"],["mat-icon-button","","matTooltip","Instruction",1,"example-icon","favorite-icon",3,"click"],["matTooltip","Invalid spanner configuration. Working in offline mode",1,"icon","warning"],["matTooltip","Valid spanner configuration.",1,"icon","success"],["matTooltip","Spanner configuration has not been set.",1,"icon","warning"],["name",""],[1,"pid"],[1,"iid"]],template:function(e,i){1&e&&(d(0,"mat-toolbar",0)(1,"span",1),N("click",function(){return i.stopLoading()}),h(2," Spanner migration tool"),c(),E(3,"span",2),d(4,"div",3)(5,"div",4),_(6,Ane,2,0,"mat-icon",5),_(7,Pne,2,0,"mat-icon",6),_(8,Rne,2,0,"mat-icon",7),_(9,Fne,4,0,"div",8),_(10,Nne,9,2,"div",8),d(11,"mat-icon",9),N("click",function(){return i.openEditForm()}),h(12,"edit"),c()(),d(13,"button",10),N("click",function(){return i.openUserGuide()}),d(14,"mat-icon"),h(15,"help"),c()()()()),2&e&&(f(1),m("routerLink","/"),f(5),m("ngIf",i.isOfflineStatus&&!i.showWarning()),f(1),m("ngIf",!i.isOfflineStatus&&!i.showWarning()),f(1),m("ngIf",i.showWarning()),f(1),m("ngIf",i.showWarning()),f(1),m("ngIf",!i.showWarning()))},directives:[l6,Bs,Et,_n,ki,Ht],styles:[".header-container[_ngcontent-%COMP%]{padding:0 20px}.menu-spacer[_ngcontent-%COMP%]{flex:1 1 auto}.right_container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%]{margin:0 15px 0 0;display:flex;align-items:center;border-radius:5px;padding:0 10px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:2px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-weight:300;padding:0 10px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] .pid[_ngcontent-%COMP%]{margin-right:10px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] .pointer[_ngcontent-%COMP%]{cursor:pointer}.cursor-pointer[_ngcontent-%COMP%]{color:#3367d6}"]}),t})();function Bne(t,n){1&t&&(d(0,"div",1),E(1,"mat-progress-bar",2),c())}let Vne=(()=>{class t{constructor(e){this.loaderService=e,this.showProgress=!0}ngOnInit(){this.loaderService.isLoading.subscribe(e=>{this.showProgress=e})}}return t.\u0275fac=function(e){return new(e||t)(b(Gp))},t.\u0275cmp=Ae({type:t,selectors:[["app-loader"]],decls:1,vars:1,consts:[["class","progress-bar-wrapper",4,"ngIf"],[1,"progress-bar-wrapper"],["mode","indeterminate","value","40"]],template:function(e,i){1&e&&_(0,Bne,2,0,"div",0),2&e&&m("ngIf",i.showProgress)},directives:[Et,lx],styles:[".progress-bar-wrapper[_ngcontent-%COMP%]{background-color:#cbd0e9;height:2px}.progress-bar-wrapper[_ngcontent-%COMP%] .mat-progress-bar[_ngcontent-%COMP%]{height:2px}"]}),t})();function jne(t,n){1&t&&E(0,"app-sidenav-rule")}function Hne(t,n){1&t&&E(0,"app-sidenav-save-session")}function Une(t,n){1&t&&E(0,"app-sidenav-review-changes")}function zne(t,n){1&t&&E(0,"app-sidenav-view-assessment")}function $ne(t,n){1&t&&E(0,"app-instruction")}const Gne=function(t,n,e){return{"width-40pc":t,"width-50pc":n,"width-60pc":e}};let Wne=(()=>{class t{constructor(e){this.sidenavService=e,this.title="ui",this.showSidenav=!1,this.sidenavComponent=""}ngOnInit(){this.sidenavService.isSidenav.subscribe(e=>{this.showSidenav=e}),this.sidenavService.sidenavComponent.subscribe(e=>{this.sidenavComponent=e})}closeSidenav(){this.showSidenav=!1}}return t.\u0275fac=function(e){return new(e||t)(b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-root"]],decls:14,vars:11,consts:[[1,"sidenav-container",3,"backdropClick"],["position","end","mode","over",3,"opened","ngClass"],["sidenav",""],[4,"ngIf"],[1,"sidenav-content"],[1,"appLoader"],[1,"padding-20"]],template:function(e,i){1&e&&(d(0,"mat-sidenav-container",0),N("backdropClick",function(){return i.closeSidenav()}),d(1,"mat-sidenav",1,2),_(3,jne,1,0,"app-sidenav-rule",3),_(4,Hne,1,0,"app-sidenav-save-session",3),_(5,Une,1,0,"app-sidenav-review-changes",3),_(6,zne,1,0,"app-sidenav-view-assessment",3),_(7,$ne,1,0,"app-instruction",3),c(),d(8,"mat-sidenav-content",4),E(9,"app-header"),d(10,"div",5),E(11,"app-loader"),c(),d(12,"div",6),E(13,"router-outlet"),c()()()),2&e&&(f(1),m("opened",i.showSidenav)("ngClass",kw(7,Gne,"rule"===i.sidenavComponent||"saveSession"===i.sidenavComponent,"reviewChanges"===i.sidenavComponent,"assessment"===i.sidenavComponent||"instruction"===i.sidenavComponent)),f(2),m("ngIf","rule"===i.sidenavComponent),f(1),m("ngIf","saveSession"==i.sidenavComponent),f(1),m("ngIf","reviewChanges"==i.sidenavComponent),f(1),m("ngIf","assessment"===i.sidenavComponent),f(1),m("ngIf","instruction"===i.sidenavComponent))},directives:[Kk,qk,nr,Et,$ee,Gee,lte,Ine,uI,pv,Lne,Vne,Lp],styles:[".padding-20[_ngcontent-%COMP%]{padding:5px 0}.progress-bar-wrapper[_ngcontent-%COMP%]{background-color:#cbd0e9;height:2px}.progress-bar-wrapper[_ngcontent-%COMP%] .mat-progress-bar[_ngcontent-%COMP%], .appLoader[_ngcontent-%COMP%]{height:2px}mat-sidenav[_ngcontent-%COMP%]{width:30%;min-width:350px}.sidenav-container[_ngcontent-%COMP%]{height:100vh}.sidenav-container[_ngcontent-%COMP%] mat-sidenav[_ngcontent-%COMP%]{min-width:350px;border-radius:3px}.width-40pc[_ngcontent-%COMP%]{width:40%}.width-50pc[_ngcontent-%COMP%]{width:50%}.width-60pc[_ngcontent-%COMP%]{width:60%}"]}),t})(),qne=(()=>{class t{constructor(e){this.loader=e,this.count=0}intercept(e,i){let o=!e.url.includes("/connect");return o&&(this.loader.startLoader(),this.count++),i.handle(e).pipe(X_(()=>{o&&this.count--,0==this.count&&this.loader.stopLoader()}))}}return t.\u0275fac=function(e){return new(e||t)(Q(Gp))},t.\u0275prov=Be({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Kne=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t,bootstrap:[Wne]}),t.\u0275inj=it({providers:[{provide:nb,useClass:qne,multi:!0}],imports:[[hS,mee,YB,az,P6,tj,bz,wz,RW,ev]]}),t})();(function A3(){CD=!1})(),j5().bootstrapModule(Kne).catch(t=>console.error(t))},650:Zl=>{Zl.exports=function G(Te,H,R){function A($,q){if(!H[$]){if(!Te[$]){if(x)return x($,!0);var z=new Error("Cannot find module '"+$+"'");throw z.code="MODULE_NOT_FOUND",z}var T=H[$]={exports:{}};Te[$][0].call(T.exports,function(L){return A(Te[$][1][L]||L)},T,T.exports,G,Te,H,R)}return H[$].exports}for(var x=void 0,k=0;k>4,L=1>6:64,S=2>2)+x.charAt(T)+x.charAt(L)+x.charAt(S));return P.join("")},H.decode=function(k){var $,q,U,z,T,L,S=0,P=0,I="data:";if(k.substr(0,I.length)===I)throw new Error("Invalid base64 input, it looks like a data url.");var B,W=3*(k=k.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(k.charAt(k.length-1)===x.charAt(64)&&W--,k.charAt(k.length-2)===x.charAt(64)&&W--,W%1!=0)throw new Error("Invalid base64 input, bad content length.");for(B=A.uint8array?new Uint8Array(0|W):new Array(0|W);S>4,q=(15&z)<<4|(T=x.indexOf(k.charAt(S++)))>>2,U=(3&T)<<6|(L=x.indexOf(k.charAt(S++))),B[P++]=$,64!==T&&(B[P++]=q),64!==L&&(B[P++]=U);return B}},{"./support":30,"./utils":32}],2:[function(G,Te,H){"use strict";var R=G("./external"),A=G("./stream/DataWorker"),x=G("./stream/Crc32Probe"),k=G("./stream/DataLengthProbe");function $(q,U,z,T,L){this.compressedSize=q,this.uncompressedSize=U,this.crc32=z,this.compression=T,this.compressedContent=L}$.prototype={getContentWorker:function(){var q=new A(R.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new k("data_length")),U=this;return q.on("end",function(){if(this.streamInfo.data_length!==U.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),q},getCompressedWorker:function(){return new A(R.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},$.createWorkerFrom=function(q,U,z){return q.pipe(new x).pipe(new k("uncompressedSize")).pipe(U.compressWorker(z)).pipe(new k("compressedSize")).withStreamInfo("compression",U)},Te.exports=$},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(G,Te,H){"use strict";var R=G("./stream/GenericWorker");H.STORE={magic:"\0\0",compressWorker:function(){return new R("STORE compression")},uncompressWorker:function(){return new R("STORE decompression")}},H.DEFLATE=G("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(G,Te,H){"use strict";var R=G("./utils"),A=function(){for(var x,k=[],$=0;$<256;$++){x=$;for(var q=0;q<8;q++)x=1&x?3988292384^x>>>1:x>>>1;k[$]=x}return k}();Te.exports=function(x,k){return void 0!==x&&x.length?"string"!==R.getTypeOf(x)?function($,q,U,z){var T=A,L=0+U;$^=-1;for(var S=0;S>>8^T[255&($^q[S])];return-1^$}(0|k,x,x.length):function($,q,U,z){var T=A,L=0+U;$^=-1;for(var S=0;S>>8^T[255&($^q.charCodeAt(S))];return-1^$}(0|k,x,x.length):0}},{"./utils":32}],5:[function(G,Te,H){"use strict";H.base64=!1,H.binary=!1,H.dir=!1,H.createFolders=!0,H.date=null,H.compression=null,H.compressionOptions=null,H.comment=null,H.unixPermissions=null,H.dosPermissions=null},{}],6:[function(G,Te,H){"use strict";var R;R="undefined"!=typeof Promise?Promise:G("lie"),Te.exports={Promise:R}},{lie:37}],7:[function(G,Te,H){"use strict";var R="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,A=G("pako"),x=G("./utils"),k=G("./stream/GenericWorker"),$=R?"uint8array":"array";function q(U,z){k.call(this,"FlateWorker/"+U),this._pako=null,this._pakoAction=U,this._pakoOptions=z,this.meta={}}H.magic="\b\0",x.inherits(q,k),q.prototype.processChunk=function(U){this.meta=U.meta,null===this._pako&&this._createPako(),this._pako.push(x.transformTo($,U.data),!1)},q.prototype.flush=function(){k.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},q.prototype.cleanUp=function(){k.prototype.cleanUp.call(this),this._pako=null},q.prototype._createPako=function(){this._pako=new A[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var U=this;this._pako.onData=function(z){U.push({data:z,meta:U.meta})}},H.compressWorker=function(U){return new q("Deflate",U)},H.uncompressWorker=function(){return new q("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(G,Te,H){"use strict";function R(T,L){var S,P="";for(S=0;S>>=8;return P}function A(T,L,S,P,I,B){var W,te,J=T.file,ye=T.compression,he=B!==$.utf8encode,Ie=x.transformTo("string",B(J.name)),ue=x.transformTo("string",$.utf8encode(J.name)),Ve=J.comment,at=x.transformTo("string",B(Ve)),j=x.transformTo("string",$.utf8encode(Ve)),fe=ue.length!==J.name.length,w=j.length!==Ve.length,ge="",bt="",Me="",Rt=J.dir,Oe=J.date,Ue={crc32:0,compressedSize:0,uncompressedSize:0};L&&!S||(Ue.crc32=T.crc32,Ue.compressedSize=T.compressedSize,Ue.uncompressedSize=T.uncompressedSize);var ae=0;L&&(ae|=8),he||!fe&&!w||(ae|=2048);var ie,ei,re=0,ut=0;Rt&&(re|=16),"UNIX"===I?(ut=798,re|=(ei=ie=J.unixPermissions,ie||(ei=Rt?16893:33204),(65535&ei)<<16)):(ut=20,re|=function(ie){return 63&(ie||0)}(J.dosPermissions)),W=Oe.getUTCHours(),W<<=6,W|=Oe.getUTCMinutes(),W<<=5,W|=Oe.getUTCSeconds()/2,te=Oe.getUTCFullYear()-1980,te<<=4,te|=Oe.getUTCMonth()+1,te<<=5,te|=Oe.getUTCDate(),fe&&(bt=R(1,1)+R(q(Ie),4)+ue,ge+="up"+R(bt.length,2)+bt),w&&(Me=R(1,1)+R(q(at),4)+j,ge+="uc"+R(Me.length,2)+Me);var qe="";return qe+="\n\0",qe+=R(ae,2),qe+=ye.magic,qe+=R(W,2),qe+=R(te,2),qe+=R(Ue.crc32,4),qe+=R(Ue.compressedSize,4),qe+=R(Ue.uncompressedSize,4),qe+=R(Ie.length,2),qe+=R(ge.length,2),{fileRecord:U.LOCAL_FILE_HEADER+qe+Ie+ge,dirRecord:U.CENTRAL_FILE_HEADER+R(ut,2)+qe+R(at.length,2)+"\0\0\0\0"+R(re,4)+R(P,4)+Ie+ge+at}}var x=G("../utils"),k=G("../stream/GenericWorker"),$=G("../utf8"),q=G("../crc32"),U=G("../signature");function z(T,L,S,P){k.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=L,this.zipPlatform=S,this.encodeFileName=P,this.streamFiles=T,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}x.inherits(z,k),z.prototype.push=function(T){var L=T.meta.percent||0,S=this.entriesCount,P=this._sources.length;this.accumulate?this.contentBuffer.push(T):(this.bytesWritten+=T.data.length,k.prototype.push.call(this,{data:T.data,meta:{currentFile:this.currentFile,percent:S?(L+100*(S-P-1))/S:100}}))},z.prototype.openedSource=function(T){this.currentSourceOffset=this.bytesWritten,this.currentFile=T.file.name;var L=this.streamFiles&&!T.file.dir;if(L){var S=A(T,L,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:S.fileRecord,meta:{percent:0}})}else this.accumulate=!0},z.prototype.closedSource=function(T){this.accumulate=!1;var P,L=this.streamFiles&&!T.file.dir,S=A(T,L,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(S.dirRecord),L)this.push({data:(P=T,U.DATA_DESCRIPTOR+R(P.crc32,4)+R(P.compressedSize,4)+R(P.uncompressedSize,4)),meta:{percent:100}});else for(this.push({data:S.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},z.prototype.flush=function(){for(var T=this.bytesWritten,L=0;L=this.index;k--)$=($<<8)+this.byteAt(k);return this.index+=x,$},readString:function(x){return R.transformTo("string",this.readData(x))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var x=this.readInt(4);return new Date(Date.UTC(1980+(x>>25&127),(x>>21&15)-1,x>>16&31,x>>11&31,x>>5&63,(31&x)<<1))}},Te.exports=A},{"../utils":32}],19:[function(G,Te,H){"use strict";var R=G("./Uint8ArrayReader");function A(x){R.call(this,x)}G("../utils").inherits(A,R),A.prototype.readData=function(x){this.checkOffset(x);var k=this.data.slice(this.zero+this.index,this.zero+this.index+x);return this.index+=x,k},Te.exports=A},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(G,Te,H){"use strict";var R=G("./DataReader");function A(x){R.call(this,x)}G("../utils").inherits(A,R),A.prototype.byteAt=function(x){return this.data.charCodeAt(this.zero+x)},A.prototype.lastIndexOfSignature=function(x){return this.data.lastIndexOf(x)-this.zero},A.prototype.readAndCheckSignature=function(x){return x===this.readData(4)},A.prototype.readData=function(x){this.checkOffset(x);var k=this.data.slice(this.zero+this.index,this.zero+this.index+x);return this.index+=x,k},Te.exports=A},{"../utils":32,"./DataReader":18}],21:[function(G,Te,H){"use strict";var R=G("./ArrayReader");function A(x){R.call(this,x)}G("../utils").inherits(A,R),A.prototype.readData=function(x){if(this.checkOffset(x),0===x)return new Uint8Array(0);var k=this.data.subarray(this.zero+this.index,this.zero+this.index+x);return this.index+=x,k},Te.exports=A},{"../utils":32,"./ArrayReader":17}],22:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("../support"),x=G("./ArrayReader"),k=G("./StringReader"),$=G("./NodeBufferReader"),q=G("./Uint8ArrayReader");Te.exports=function(U){var z=R.getTypeOf(U);return R.checkSupport(z),"string"!==z||A.uint8array?"nodebuffer"===z?new $(U):A.uint8array?new q(R.transformTo("uint8array",U)):new x(R.transformTo("array",U)):new k(U)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(G,Te,H){"use strict";H.LOCAL_FILE_HEADER="PK\x03\x04",H.CENTRAL_FILE_HEADER="PK\x01\x02",H.CENTRAL_DIRECTORY_END="PK\x05\x06",H.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x06\x07",H.ZIP64_CENTRAL_DIRECTORY_END="PK\x06\x06",H.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(G,Te,H){"use strict";var R=G("./GenericWorker"),A=G("../utils");function x(k){R.call(this,"ConvertWorker to "+k),this.destType=k}A.inherits(x,R),x.prototype.processChunk=function(k){this.push({data:A.transformTo(this.destType,k.data),meta:k.meta})},Te.exports=x},{"../utils":32,"./GenericWorker":28}],25:[function(G,Te,H){"use strict";var R=G("./GenericWorker"),A=G("../crc32");function x(){R.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}G("../utils").inherits(x,R),x.prototype.processChunk=function(k){this.streamInfo.crc32=A(k.data,this.streamInfo.crc32||0),this.push(k)},Te.exports=x},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("./GenericWorker");function x(k){A.call(this,"DataLengthProbe for "+k),this.propName=k,this.withStreamInfo(k,0)}R.inherits(x,A),x.prototype.processChunk=function(k){k&&(this.streamInfo[this.propName]=(this.streamInfo[this.propName]||0)+k.data.length),A.prototype.processChunk.call(this,k)},Te.exports=x},{"../utils":32,"./GenericWorker":28}],27:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("./GenericWorker");function x(k){A.call(this,"DataWorker");var $=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,k.then(function(q){$.dataIsReady=!0,$.data=q,$.max=q&&q.length||0,$.type=R.getTypeOf(q),$.isPaused||$._tickAndRepeat()},function(q){$.error(q)})}R.inherits(x,A),x.prototype.cleanUp=function(){A.prototype.cleanUp.call(this),this.data=null},x.prototype.resume=function(){return!!A.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,R.delay(this._tickAndRepeat,[],this)),!0)},x.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(R.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},x.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var k=null,$=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":k=this.data.substring(this.index,$);break;case"uint8array":k=this.data.subarray(this.index,$);break;case"array":case"nodebuffer":k=this.data.slice(this.index,$)}return this.index=$,this.push({data:k,meta:{percent:this.max?this.index/this.max*100:0}})},Te.exports=x},{"../utils":32,"./GenericWorker":28}],28:[function(G,Te,H){"use strict";function R(A){this.name=A||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}R.prototype={push:function(A){this.emit("data",A)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(A){this.emit("error",A)}return!0},error:function(A){return!this.isFinished&&(this.isPaused?this.generatedError=A:(this.isFinished=!0,this.emit("error",A),this.previous&&this.previous.error(A),this.cleanUp()),!0)},on:function(A,x){return this._listeners[A].push(x),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(A,x){if(this._listeners[A])for(var k=0;k "+A:A}},Te.exports=R},{}],29:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("./ConvertWorker"),x=G("./GenericWorker"),k=G("../base64"),$=G("../support"),q=G("../external"),U=null;if($.nodestream)try{U=G("../nodejs/NodejsStreamOutputAdapter")}catch(L){}function T(L,S,P){var I=S;switch(S){case"blob":case"arraybuffer":I="uint8array";break;case"base64":I="string"}try{this._internalType=I,this._outputType=S,this._mimeType=P,R.checkSupport(I),this._worker=L.pipe(new A(I)),L.lock()}catch(B){this._worker=new x("error"),this._worker.error(B)}}T.prototype={accumulate:function(L){return function z(L,S){return new q.Promise(function(P,I){var B=[],W=L._internalType,te=L._outputType,J=L._mimeType;L.on("data",function(ye,he){B.push(ye),S&&S(he)}).on("error",function(ye){B=[],I(ye)}).on("end",function(){try{var ye=function(he,Ie,ue){switch(he){case"blob":return R.newBlob(R.transformTo("arraybuffer",Ie),ue);case"base64":return k.encode(Ie);default:return R.transformTo(he,Ie)}}(te,function(he,Ie){var ue,Ve=0,at=null,j=0;for(ue=0;ue>>6:(P<65536?S[W++]=224|P>>>12:(S[W++]=240|P>>>18,S[W++]=128|P>>>12&63),S[W++]=128|P>>>6&63),S[W++]=128|63&P);return S}(T)},H.utf8decode=function(T){return A.nodebuffer?R.transformTo("nodebuffer",T).toString("utf-8"):function(L){var S,P,I,B,W=L.length,te=new Array(2*W);for(S=P=0;S>10&1023,te[P++]=56320|1023&I)}return te.length!==P&&(te.subarray?te=te.subarray(0,P):te.length=P),R.applyFromCharCode(te)}(T=R.transformTo(A.uint8array?"uint8array":"array",T))},R.inherits(U,k),U.prototype.processChunk=function(T){var L=R.transformTo(A.uint8array?"uint8array":"array",T.data);if(this.leftOver&&this.leftOver.length){if(A.uint8array){var S=L;(L=new Uint8Array(S.length+this.leftOver.length)).set(this.leftOver,0),L.set(S,this.leftOver.length)}else L=this.leftOver.concat(L);this.leftOver=null}var P=function(B,W){var te;for((W=W||B.length)>B.length&&(W=B.length),te=W-1;0<=te&&128==(192&B[te]);)te--;return te<0||0===te?W:te+$[B[te]]>W?te:W}(L),I=L;P!==L.length&&(A.uint8array?(I=L.subarray(0,P),this.leftOver=L.subarray(P,L.length)):(I=L.slice(0,P),this.leftOver=L.slice(P,L.length))),this.push({data:H.utf8decode(I),meta:T.meta})},U.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:H.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},H.Utf8DecodeWorker=U,R.inherits(z,k),z.prototype.processChunk=function(T){this.push({data:H.utf8encode(T.data),meta:T.meta})},H.Utf8EncodeWorker=z},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(G,Te,H){"use strict";var R=G("./support"),A=G("./base64"),x=G("./nodejsUtils"),k=G("./external");function $(S){return S}function q(S,P){for(var I=0;I>8;this.dir=!!(16&this.externalFileAttributes),0==T&&(this.dosPermissions=63&this.externalFileAttributes),3==T&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var T=R(this.extraFields[1].value);this.uncompressedSize===A.MAX_VALUE_32BITS&&(this.uncompressedSize=T.readInt(8)),this.compressedSize===A.MAX_VALUE_32BITS&&(this.compressedSize=T.readInt(8)),this.localHeaderOffset===A.MAX_VALUE_32BITS&&(this.localHeaderOffset=T.readInt(8)),this.diskNumberStart===A.MAX_VALUE_32BITS&&(this.diskNumberStart=T.readInt(4))}},readExtraFields:function(T){var L,S,P,I=T.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});T.index+4>>6:(T<65536?z[P++]=224|T>>>12:(z[P++]=240|T>>>18,z[P++]=128|T>>>12&63),z[P++]=128|T>>>6&63),z[P++]=128|63&T);return z},H.buf2binstring=function(U){return q(U,U.length)},H.binstring2buf=function(U){for(var z=new R.Buf8(U.length),T=0,L=z.length;T>10&1023,B[L++]=56320|1023&S)}return q(B,L)},H.utf8border=function(U,z){var T;for((z=z||U.length)>U.length&&(z=U.length),T=z-1;0<=T&&128==(192&U[T]);)T--;return T<0||0===T?z:T+k[U[T]]>z?T:z}},{"./common":41}],43:[function(G,Te,H){"use strict";Te.exports=function(R,A,x,k){for(var $=65535&R|0,q=R>>>16&65535|0,U=0;0!==x;){for(x-=U=2e3>>1:A>>>1;x[k]=A}return x}();Te.exports=function(A,x,k,$){var q=R,U=$+k;A^=-1;for(var z=$;z>>8^q[255&(A^x[z])];return-1^A}},{}],46:[function(G,Te,H){"use strict";var R,A=G("../utils/common"),x=G("./trees"),k=G("./adler32"),$=G("./crc32"),q=G("./messages"),L=-2,Ve=258,at=262;function Rt(y,me){return y.msg=q[me],me}function Oe(y){return(y<<1)-(4y.avail_out&&(ce=y.avail_out),0!==ce&&(A.arraySet(y.output,me.pending_buf,me.pending_out,ce,y.next_out),y.next_out+=ce,me.pending_out+=ce,y.total_out+=ce,y.avail_out-=ce,me.pending-=ce,0===me.pending&&(me.pending_out=0))}function re(y,me){x._tr_flush_block(y,0<=y.block_start?y.block_start:-1,y.strstart-y.block_start,me),y.block_start=y.strstart,ae(y.strm)}function ut(y,me){y.pending_buf[y.pending++]=me}function qe(y,me){y.pending_buf[y.pending++]=me>>>8&255,y.pending_buf[y.pending++]=255&me}function ie(y,me){var ce,F,O=y.max_chain_length,Z=y.strstart,we=y.prev_length,xe=y.nice_match,ne=y.strstart>y.w_size-at?y.strstart-(y.w_size-at):0,Re=y.window,Ke=y.w_mask,Le=y.prev,lt=y.strstart+Ve,Xt=Re[Z+we-1],Lt=Re[Z+we];y.prev_length>=y.good_match&&(O>>=2),xe>y.lookahead&&(xe=y.lookahead);do{if(Re[(ce=me)+we]===Lt&&Re[ce+we-1]===Xt&&Re[ce]===Re[Z]&&Re[++ce]===Re[Z+1]){Z+=2,ce++;do{}while(Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Zne&&0!=--O);return we<=y.lookahead?we:y.lookahead}function vn(y){var me,ce,F,O,Z,we,xe,ne,Re,Ke,Le=y.w_size;do{if(O=y.window_size-y.lookahead-y.strstart,y.strstart>=Le+(Le-at)){for(A.arraySet(y.window,y.window,Le,Le,0),y.match_start-=Le,y.strstart-=Le,y.block_start-=Le,me=ce=y.hash_size;F=y.head[--me],y.head[me]=Le<=F?F-Le:0,--ce;);for(me=ce=Le;F=y.prev[--me],y.prev[me]=Le<=F?F-Le:0,--ce;);O+=Le}if(0===y.strm.avail_in)break;if(xe=y.window,ne=y.strstart+y.lookahead,Ke=void 0,(Re=O)<(Ke=(we=y.strm).avail_in)&&(Ke=Re),ce=0===Ke?0:(we.avail_in-=Ke,A.arraySet(xe,we.input,we.next_in,Ke,ne),1===we.state.wrap?we.adler=k(we.adler,xe,Ke,ne):2===we.state.wrap&&(we.adler=$(we.adler,xe,Ke,ne)),we.next_in+=Ke,we.total_in+=Ke,Ke),y.lookahead+=ce,y.lookahead+y.insert>=3)for(y.ins_h=y.window[Z=y.strstart-y.insert],y.ins_h=(y.ins_h<=3&&(y.ins_h=(y.ins_h<=3)if(F=x._tr_tally(y,y.strstart-y.match_start,y.match_length-3),y.lookahead-=y.match_length,y.match_length<=y.max_lazy_match&&y.lookahead>=3){for(y.match_length--;y.strstart++,y.ins_h=(y.ins_h<=3&&(y.ins_h=(y.ins_h<=3&&y.match_length<=y.prev_length){for(O=y.strstart+y.lookahead-3,F=x._tr_tally(y,y.strstart-1-y.prev_match,y.prev_length-3),y.lookahead-=y.prev_length-1,y.prev_length-=2;++y.strstart<=O&&(y.ins_h=(y.ins_h<y.pending_buf_size-5&&(ce=y.pending_buf_size-5);;){if(y.lookahead<=1){if(vn(y),0===y.lookahead&&0===me)return 1;if(0===y.lookahead)break}y.strstart+=y.lookahead,y.lookahead=0;var F=y.block_start+ce;if((0===y.strstart||y.strstart>=F)&&(y.lookahead=y.strstart-F,y.strstart=F,re(y,!1),0===y.strm.avail_out)||y.strstart-y.block_start>=y.w_size-at&&(re(y,!1),0===y.strm.avail_out))return 1}return y.insert=0,4===me?(re(y,!0),0===y.strm.avail_out?3:4):(y.strstart>y.block_start&&re(y,!1),1)}),new st(4,4,8,4,ei),new st(4,5,16,8,ei),new st(4,6,32,32,ei),new st(4,4,16,16,nt),new st(8,16,32,32,nt),new st(8,16,128,128,nt),new st(8,32,128,256,nt),new st(32,128,258,1024,nt),new st(32,258,258,4096,nt)],H.deflateInit=function(y,me){return to(y,me,8,15,8,0)},H.deflateInit2=to,H.deflateReset=ji,H.deflateResetKeep=je,H.deflateSetHeader=function(y,me){return y&&y.state?2!==y.state.wrap?L:(y.state.gzhead=me,0):L},H.deflate=function(y,me){var ce,F,O,Z;if(!y||!y.state||5>8&255),ut(F,F.gzhead.time>>16&255),ut(F,F.gzhead.time>>24&255),ut(F,9===F.level?2:2<=F.strategy||F.level<2?4:0),ut(F,255&F.gzhead.os),F.gzhead.extra&&F.gzhead.extra.length&&(ut(F,255&F.gzhead.extra.length),ut(F,F.gzhead.extra.length>>8&255)),F.gzhead.hcrc&&(y.adler=$(y.adler,F.pending_buf,F.pending,0)),F.gzindex=0,F.status=69):(ut(F,0),ut(F,0),ut(F,0),ut(F,0),ut(F,0),ut(F,9===F.level?2:2<=F.strategy||F.level<2?4:0),ut(F,3),F.status=113);else{var we=8+(F.w_bits-8<<4)<<8;we|=(2<=F.strategy||F.level<2?0:F.level<6?1:6===F.level?2:3)<<6,0!==F.strstart&&(we|=32),we+=31-we%31,F.status=113,qe(F,we),0!==F.strstart&&(qe(F,y.adler>>>16),qe(F,65535&y.adler)),y.adler=1}if(69===F.status)if(F.gzhead.extra){for(O=F.pending;F.gzindex<(65535&F.gzhead.extra.length)&&(F.pending!==F.pending_buf_size||(F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),ae(y),O=F.pending,F.pending!==F.pending_buf_size));)ut(F,255&F.gzhead.extra[F.gzindex]),F.gzindex++;F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),F.gzindex===F.gzhead.extra.length&&(F.gzindex=0,F.status=73)}else F.status=73;if(73===F.status)if(F.gzhead.name){O=F.pending;do{if(F.pending===F.pending_buf_size&&(F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),ae(y),O=F.pending,F.pending===F.pending_buf_size)){Z=1;break}Z=F.gzindexO&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),0===Z&&(F.gzindex=0,F.status=91)}else F.status=91;if(91===F.status)if(F.gzhead.comment){O=F.pending;do{if(F.pending===F.pending_buf_size&&(F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),ae(y),O=F.pending,F.pending===F.pending_buf_size)){Z=1;break}Z=F.gzindexO&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),0===Z&&(F.status=103)}else F.status=103;if(103===F.status&&(F.gzhead.hcrc?(F.pending+2>F.pending_buf_size&&ae(y),F.pending+2<=F.pending_buf_size&&(ut(F,255&y.adler),ut(F,y.adler>>8&255),y.adler=0,F.status=113)):F.status=113),0!==F.pending){if(ae(y),0===y.avail_out)return F.last_flush=-1,0}else if(0===y.avail_in&&Oe(me)<=Oe(ce)&&4!==me)return Rt(y,-5);if(666===F.status&&0!==y.avail_in)return Rt(y,-5);if(0!==y.avail_in||0!==F.lookahead||0!==me&&666!==F.status){var xe=2===F.strategy?function(ne,Re){for(var Ke;;){if(0===ne.lookahead&&(vn(ne),0===ne.lookahead)){if(0===Re)return 1;break}if(ne.match_length=0,Ke=x._tr_tally(ne,0,ne.window[ne.strstart]),ne.lookahead--,ne.strstart++,Ke&&(re(ne,!1),0===ne.strm.avail_out))return 1}return ne.insert=0,4===Re?(re(ne,!0),0===ne.strm.avail_out?3:4):ne.last_lit&&(re(ne,!1),0===ne.strm.avail_out)?1:2}(F,me):3===F.strategy?function(ne,Re){for(var Ke,Le,lt,Xt,Lt=ne.window;;){if(ne.lookahead<=Ve){if(vn(ne),ne.lookahead<=Ve&&0===Re)return 1;if(0===ne.lookahead)break}if(ne.match_length=0,ne.lookahead>=3&&0ne.lookahead&&(ne.match_length=ne.lookahead)}if(ne.match_length>=3?(Ke=x._tr_tally(ne,1,ne.match_length-3),ne.lookahead-=ne.match_length,ne.strstart+=ne.match_length,ne.match_length=0):(Ke=x._tr_tally(ne,0,ne.window[ne.strstart]),ne.lookahead--,ne.strstart++),Ke&&(re(ne,!1),0===ne.strm.avail_out))return 1}return ne.insert=0,4===Re?(re(ne,!0),0===ne.strm.avail_out?3:4):ne.last_lit&&(re(ne,!1),0===ne.strm.avail_out)?1:2}(F,me):R[F.level].func(F,me);if(3!==xe&&4!==xe||(F.status=666),1===xe||3===xe)return 0===y.avail_out&&(F.last_flush=-1),0;if(2===xe&&(1===me?x._tr_align(F):5!==me&&(x._tr_stored_block(F,0,0,!1),3===me&&(Ue(F.head),0===F.lookahead&&(F.strstart=0,F.block_start=0,F.insert=0))),ae(y),0===y.avail_out))return F.last_flush=-1,0}return 4!==me?0:F.wrap<=0?1:(2===F.wrap?(ut(F,255&y.adler),ut(F,y.adler>>8&255),ut(F,y.adler>>16&255),ut(F,y.adler>>24&255),ut(F,255&y.total_in),ut(F,y.total_in>>8&255),ut(F,y.total_in>>16&255),ut(F,y.total_in>>24&255)):(qe(F,y.adler>>>16),qe(F,65535&y.adler)),ae(y),0=ce.w_size&&(0===Z&&(Ue(ce.head),ce.strstart=0,ce.block_start=0,ce.insert=0),Re=new A.Buf8(ce.w_size),A.arraySet(Re,me,Ke-ce.w_size,ce.w_size,0),me=Re,Ke=ce.w_size),we=y.avail_in,xe=y.next_in,ne=y.input,y.avail_in=Ke,y.next_in=0,y.input=me,vn(ce);ce.lookahead>=3;){for(F=ce.strstart,O=ce.lookahead-2;ce.ins_h=(ce.ins_h<>>=ue=Ie>>>24,W-=ue,0==(ue=Ie>>>16&255))ge[q++]=65535&Ie;else{if(!(16&ue)){if(0==(64&ue)){Ie=te[(65535&Ie)+(B&(1<>>=ue,W-=ue),W<15&&(B+=w[k++]<>>=ue=Ie>>>24,W-=ue,!(16&(ue=Ie>>>16&255))){if(0==(64&ue)){Ie=J[(65535&Ie)+(B&(1<>>=ue,W-=ue,(ue=q-U)>3,B&=(1<<(W-=Ve<<3))-1,R.next_in=k,R.next_out=q,R.avail_in=k<$?$-k+5:5-(k-$),R.avail_out=q>>24&255)+(j>>>8&65280)+((65280&j)<<8)+((255&j)<<24)}function B(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new R.Buf16(320),this.work=new R.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function W(j){var fe;return j&&j.state?(j.total_in=j.total_out=(fe=j.state).total=0,j.msg="",fe.wrap&&(j.adler=1&fe.wrap),fe.mode=1,fe.last=0,fe.havedict=0,fe.dmax=32768,fe.head=null,fe.hold=0,fe.bits=0,fe.lencode=fe.lendyn=new R.Buf32(852),fe.distcode=fe.distdyn=new R.Buf32(592),fe.sane=1,fe.back=-1,0):T}function te(j){var fe;return j&&j.state?((fe=j.state).wsize=0,fe.whave=0,fe.wnext=0,W(j)):T}function J(j,fe){var w,ge;return j&&j.state?(ge=j.state,fe<0?(w=0,fe=-fe):(w=1+(fe>>4),fe<48&&(fe&=15)),fe&&(fe<8||15=Me.wsize?(R.arraySet(Me.window,fe,w-Me.wsize,Me.wsize,0),Me.wnext=0,Me.whave=Me.wsize):(ge<(bt=Me.wsize-Me.wnext)&&(bt=ge),R.arraySet(Me.window,fe,w-ge,bt,Me.wnext),(ge-=bt)?(R.arraySet(Me.window,fe,w-ge,ge,0),Me.wnext=ge,Me.whave=Me.wsize):(Me.wnext+=bt,Me.wnext===Me.wsize&&(Me.wnext=0),Me.whave>>8&255,w.check=x(w.check,Z,2,0),re=ae=0,w.mode=2;break}if(w.flags=0,w.head&&(w.head.done=!1),!(1&w.wrap)||(((255&ae)<<8)+(ae>>8))%31){j.msg="incorrect header check",w.mode=30;break}if(8!=(15&ae)){j.msg="unknown compression method",w.mode=30;break}if(re-=4,y=8+(15&(ae>>>=4)),0===w.wbits)w.wbits=y;else if(y>w.wbits){j.msg="invalid window size",w.mode=30;break}w.dmax=1<>8&1),512&w.flags&&(Z[0]=255&ae,Z[1]=ae>>>8&255,w.check=x(w.check,Z,2,0)),re=ae=0,w.mode=3;case 3:for(;re<32;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>8&255,Z[2]=ae>>>16&255,Z[3]=ae>>>24&255,w.check=x(w.check,Z,4,0)),re=ae=0,w.mode=4;case 4:for(;re<16;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>8),512&w.flags&&(Z[0]=255&ae,Z[1]=ae>>>8&255,w.check=x(w.check,Z,2,0)),re=ae=0,w.mode=5;case 5:if(1024&w.flags){for(;re<16;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>8&255,w.check=x(w.check,Z,2,0)),re=ae=0}else w.head&&(w.head.extra=null);w.mode=6;case 6:if(1024&w.flags&&(Oe<(ie=w.length)&&(ie=Oe),ie&&(w.head&&(y=w.head.extra_len-w.length,w.head.extra||(w.head.extra=new Array(w.head.extra_len)),R.arraySet(w.head.extra,ge,Me,ie,y)),512&w.flags&&(w.check=x(w.check,ge,ie,Me)),Oe-=ie,Me+=ie,w.length-=ie),w.length))break e;w.length=0,w.mode=7;case 7:if(2048&w.flags){if(0===Oe)break e;for(ie=0;y=ge[Me+ie++],w.head&&y&&w.length<65536&&(w.head.name+=String.fromCharCode(y)),y&&ie>9&1,w.head.done=!0),j.adler=w.check=0,w.mode=12;break;case 10:for(;re<32;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=7&re,re-=7&re,w.mode=27;break}for(;re<3;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=1)){case 0:w.mode=14;break;case 1:if(Ve(w),w.mode=20,6!==fe)break;ae>>>=2,re-=2;break e;case 2:w.mode=17;break;case 3:j.msg="invalid block type",w.mode=30}ae>>>=2,re-=2;break;case 14:for(ae>>>=7&re,re-=7&re;re<32;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>16^65535)){j.msg="invalid stored block lengths",w.mode=30;break}if(w.length=65535&ae,re=ae=0,w.mode=15,6===fe)break e;case 15:w.mode=16;case 16:if(ie=w.length){if(Oe>>=5)),re-=5,w.ncode=4+(15&(ae>>>=5)),ae>>>=4,re-=4,286>>=3,re-=3}for(;w.have<19;)w.lens[we[w.have++]]=0;if(w.lencode=w.lendyn,w.lenbits=7,me=$(0,w.lens,0,19,w.lencode,0,w.work,ce={bits:w.lenbits}),w.lenbits=ce.bits,me){j.msg="invalid code lengths set",w.mode=30;break}w.have=0,w.mode=19;case 19:for(;w.have>>16&255,zn=65535&O,!((nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=nt,re-=nt,w.lens[w.have++]=zn;else{if(16===zn){for(F=nt+2;re>>=nt,re-=nt,0===w.have){j.msg="invalid bit length repeat",w.mode=30;break}y=w.lens[w.have-1],ie=3+(3&ae),ae>>>=2,re-=2}else if(17===zn){for(F=nt+3;re>>=nt)),ae>>>=3,re-=3}else{for(F=nt+7;re>>=nt)),ae>>>=7,re-=7}if(w.have+ie>w.nlen+w.ndist){j.msg="invalid bit length repeat",w.mode=30;break}for(;ie--;)w.lens[w.have++]=y}}if(30===w.mode)break;if(0===w.lens[256]){j.msg="invalid code -- missing end-of-block",w.mode=30;break}if(w.lenbits=9,me=$(1,w.lens,0,w.nlen,w.lencode,0,w.work,ce={bits:w.lenbits}),w.lenbits=ce.bits,me){j.msg="invalid literal/lengths set",w.mode=30;break}if(w.distbits=6,w.distcode=w.distdyn,me=$(2,w.lens,w.nlen,w.ndist,w.distcode,0,w.work,ce={bits:w.distbits}),w.distbits=ce.bits,me){j.msg="invalid distances set",w.mode=30;break}if(w.mode=20,6===fe)break e;case 20:w.mode=21;case 21:if(6<=Oe&&258<=Ue){j.next_out=Rt,j.avail_out=Ue,j.next_in=Me,j.avail_in=Oe,w.hold=ae,w.bits=re,k(j,qe),Rt=j.next_out,bt=j.output,Ue=j.avail_out,Me=j.next_in,ge=j.input,Oe=j.avail_in,ae=w.hold,re=w.bits,12===w.mode&&(w.back=-1);break}for(w.back=0;st=(O=w.lencode[ae&(1<>>16&255,zn=65535&O,!((nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>je)])>>>16&255,zn=65535&O,!(je+(nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=je,re-=je,w.back+=je}if(ae>>>=nt,re-=nt,w.back+=nt,w.length=zn,0===st){w.mode=26;break}if(32&st){w.back=-1,w.mode=12;break}if(64&st){j.msg="invalid literal/length code",w.mode=30;break}w.extra=15&st,w.mode=22;case 22:if(w.extra){for(F=w.extra;re>>=w.extra,re-=w.extra,w.back+=w.extra}w.was=w.length,w.mode=23;case 23:for(;st=(O=w.distcode[ae&(1<>>16&255,zn=65535&O,!((nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>je)])>>>16&255,zn=65535&O,!(je+(nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=je,re-=je,w.back+=je}if(ae>>>=nt,re-=nt,w.back+=nt,64&st){j.msg="invalid distance code",w.mode=30;break}w.offset=zn,w.extra=15&st,w.mode=24;case 24:if(w.extra){for(F=w.extra;re>>=w.extra,re-=w.extra,w.back+=w.extra}if(w.offset>w.dmax){j.msg="invalid distance too far back",w.mode=30;break}w.mode=25;case 25:if(0===Ue)break e;if(w.offset>(ie=qe-Ue)){if((ie=w.offset-ie)>w.whave&&w.sane){j.msg="invalid distance too far back",w.mode=30;break}vn=ie>w.wnext?w.wsize-(ie-=w.wnext):w.wnext-ie,ie>w.length&&(ie=w.length),ei=w.window}else ei=bt,vn=Rt-w.offset,ie=w.length;for(Uehe?(ue=vn[ei+P[fe]],re[ut+P[fe]]):(ue=96,0),B=1<>Rt)+(W-=B)]=Ie<<24|ue<<16|Ve|0,0!==W;);for(B=1<>=1;if(0!==B?(ae&=B-1,ae+=B):ae=0,fe++,0==--qe[j]){if(j===ge)break;j=U[z+P[fe]]}if(bt>>7)]}function ut(O,Z){O.pending_buf[O.pending++]=255&Z,O.pending_buf[O.pending++]=Z>>>8&255}function qe(O,Z,we){O.bi_valid>16-we?(O.bi_buf|=Z<>16-O.bi_valid,O.bi_valid+=we-16):(O.bi_buf|=Z<>>=1,we<<=1,0<--Z;);return we>>>1}function ei(O,Z,we){var xe,ne,Re=new Array(16),Ke=0;for(xe=1;xe<=P;xe++)Re[xe]=Ke=Ke+we[xe-1]<<1;for(ne=0;ne<=Z;ne++){var Le=O[2*ne+1];0!==Le&&(O[2*ne]=vn(Re[Le]++,Le))}}function nt(O){var Z;for(Z=0;Z>1;1<=we;we--)je(O,Re,we);for(ne=lt;we=O.heap[1],O.heap[1]=O.heap[O.heap_len--],je(O,Re,1),xe=O.heap[1],O.heap[--O.heap_max]=we,O.heap[--O.heap_max]=xe,Re[2*ne]=Re[2*we]+Re[2*xe],O.depth[ne]=(O.depth[we]>=O.depth[xe]?O.depth[we]:O.depth[xe])+1,Re[2*we+1]=Re[2*xe+1]=ne,O.heap[1]=ne++,je(O,Re,1),2<=O.heap_len;);O.heap[--O.heap_max]=O.heap[1],function(Lt,Hi){var zs,vo,Ui,yn,xa,Ta,Ho=Hi.dyn_tree,Ud=Hi.max_code,Zp=Hi.stat_desc.static_tree,Qp=Hi.stat_desc.has_stree,Yp=Hi.stat_desc.extra_bits,zd=Hi.stat_desc.extra_base,$s=Hi.stat_desc.max_length,ka=0;for(yn=0;yn<=P;yn++)Lt.bl_count[yn]=0;for(Ho[2*Lt.heap[Lt.heap_max]+1]=0,zs=Lt.heap_max+1;zs<573;zs++)$s<(yn=Ho[2*Ho[2*(vo=Lt.heap[zs])+1]+1]+1)&&(yn=$s,ka++),Ho[2*vo+1]=yn,Ud>=7;ne>>=1)if(1&Xt&&0!==Le.dyn_ltree[2*lt])return 0;if(0!==Le.dyn_ltree[18]||0!==Le.dyn_ltree[20]||0!==Le.dyn_ltree[26])return 1;for(lt=32;lt>>3)<=(ne=O.opt_len+3+7>>>3)&&(ne=Re)):ne=Re=we+5,we+4<=ne&&-1!==Z?F(O,Z,we,xe):4===O.strategy||Re===ne?(qe(O,2+(xe?1:0),3),ji(O,at,j)):(qe(O,4+(xe?1:0),3),function(Le,lt,Xt,Lt){var Hi;for(qe(Le,lt-257,5),qe(Le,Xt-1,5),qe(Le,Lt-4,4),Hi=0;Hi>>8&255,O.pending_buf[O.d_buf+2*O.last_lit+1]=255&Z,O.pending_buf[O.l_buf+O.last_lit]=255&we,O.last_lit++,0===Z?O.dyn_ltree[2*we]++:(O.matches++,Z--,O.dyn_ltree[2*(w[we]+U+1)]++,O.dyn_dtree[2*re(Z)]++),O.last_lit===O.lit_bufsize-1},H._tr_align=function(O){var Z;qe(O,2,3),ie(O,256,at),16===(Z=O).bi_valid?(ut(Z,Z.bi_buf),Z.bi_buf=0,Z.bi_valid=0):8<=Z.bi_valid&&(Z.pending_buf[Z.pending++]=255&Z.bi_buf,Z.bi_buf>>=8,Z.bi_valid-=8)}},{"../utils/common":41}],53:[function(G,Te,H){"use strict";Te.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(G,Te,H){(function(R){!function(A,x){"use strict";if(!A.setImmediate){var k,$,q,U,z=1,T={},L=!1,S=A.document,P=Object.getPrototypeOf&&Object.getPrototypeOf(A);P=P&&P.setTimeout?P:A,k="[object process]"==={}.toString.call(A.process)?function(te){process.nextTick(function(){B(te)})}:function(){if(A.postMessage&&!A.importScripts){var te=!0,J=A.onmessage;return A.onmessage=function(){te=!1},A.postMessage("","*"),A.onmessage=J,te}}()?(U="setImmediate$"+Math.random()+"$",A.addEventListener?A.addEventListener("message",W,!1):A.attachEvent("onmessage",W),function(te){A.postMessage(U+te,"*")}):A.MessageChannel?((q=new MessageChannel).port1.onmessage=function(te){B(te.data)},function(te){q.port2.postMessage(te)}):S&&"onreadystatechange"in S.createElement("script")?($=S.documentElement,function(te){var J=S.createElement("script");J.onreadystatechange=function(){B(te),J.onreadystatechange=null,$.removeChild(J),J=null},$.appendChild(J)}):function(te){setTimeout(B,0,te)},P.setImmediate=function(te){"function"!=typeof te&&(te=new Function(""+te));for(var J=new Array(arguments.length-1),ye=0;ye{Zl(Zl.s=640)}]); \ No newline at end of file diff --git a/ui/dist/ui/main.df84b5efa11daeaf.js b/ui/dist/ui/main.df84b5efa11daeaf.js new file mode 100644 index 000000000..40db9fc7f --- /dev/null +++ b/ui/dist/ui/main.df84b5efa11daeaf.js @@ -0,0 +1 @@ +(self.webpackChunkui=self.webpackChunkui||[]).push([[179],{103:(Zl,G,Te)=>{"use strict";function H(t){return"function"==typeof t}function R(t){const e=t(i=>{Error.call(i),i.stack=(new Error).stack});return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}const A=R(t=>function(e){t(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((i,o)=>`${o+1}) ${i.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e});function x(t,n){if(t){const e=t.indexOf(n);0<=e&&t.splice(e,1)}}class k{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:e}=this;if(e)if(this._parentage=null,Array.isArray(e))for(const r of e)r.remove(this);else e.remove(this);const{initialTeardown:i}=this;if(H(i))try{i()}catch(r){n=r instanceof A?r.errors:[r]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const r of o)try{U(r)}catch(s){n=null!=n?n:[],s instanceof A?n=[...n,...s.errors]:n.push(s)}}if(n)throw new A(n)}}add(n){var e;if(n&&n!==this)if(this.closed)U(n);else{if(n instanceof k){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(e=this._finalizers)&&void 0!==e?e:[]).push(n)}}_hasParent(n){const{_parentage:e}=this;return e===n||Array.isArray(e)&&e.includes(n)}_addParent(n){const{_parentage:e}=this;this._parentage=Array.isArray(e)?(e.push(n),e):e?[e,n]:n}_removeParent(n){const{_parentage:e}=this;e===n?this._parentage=null:Array.isArray(e)&&x(e,n)}remove(n){const{_finalizers:e}=this;e&&x(e,n),n instanceof k&&n._removeParent(this)}}k.EMPTY=(()=>{const t=new k;return t.closed=!0,t})();const $=k.EMPTY;function q(t){return t instanceof k||t&&"closed"in t&&H(t.remove)&&H(t.add)&&H(t.unsubscribe)}function U(t){H(t)?t():t.unsubscribe()}const z={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},T={setTimeout(t,n,...e){const{delegate:i}=T;return(null==i?void 0:i.setTimeout)?i.setTimeout(t,n,...e):setTimeout(t,n,...e)},clearTimeout(t){const{delegate:n}=T;return((null==n?void 0:n.clearTimeout)||clearTimeout)(t)},delegate:void 0};function L(t){T.setTimeout(()=>{const{onUnhandledError:n}=z;if(!n)throw t;n(t)})}function S(){}const P=W("C",void 0,void 0);function W(t,n,e){return{kind:t,value:n,error:e}}let te=null;function J(t){if(z.useDeprecatedSynchronousErrorHandling){const n=!te;if(n&&(te={errorThrown:!1,error:null}),t(),n){const{errorThrown:e,error:i}=te;if(te=null,e)throw i}}else t()}class he extends k{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,q(n)&&n.add(this)):this.destination=ge}static create(n,e,i){return new at(n,e,i)}next(n){this.isStopped?w(function B(t){return W("N",t,void 0)}(n),this):this._next(n)}error(n){this.isStopped?w(function I(t){return W("E",void 0,t)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?w(P,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 Ie=Function.prototype.bind;function ue(t,n){return Ie.call(t,n)}class Ve{constructor(n){this.partialObserver=n}next(n){const{partialObserver:e}=this;if(e.next)try{e.next(n)}catch(i){j(i)}}error(n){const{partialObserver:e}=this;if(e.error)try{e.error(n)}catch(i){j(i)}else j(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(e){j(e)}}}class at extends he{constructor(n,e,i){let o;if(super(),H(n)||!n)o={next:null!=n?n:void 0,error:null!=e?e:void 0,complete:null!=i?i:void 0};else{let r;this&&z.useDeprecatedNextContext?(r=Object.create(n),r.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&ue(n.next,r),error:n.error&&ue(n.error,r),complete:n.complete&&ue(n.complete,r)}):o=n}this.destination=new Ve(o)}}function j(t){z.useDeprecatedSynchronousErrorHandling?function ye(t){z.useDeprecatedSynchronousErrorHandling&&te&&(te.errorThrown=!0,te.error=t)}(t):L(t)}function w(t,n){const{onStoppedNotification:e}=z;e&&T.setTimeout(()=>e(t,n))}const ge={closed:!0,next:S,error:function fe(t){throw t},complete:S},bt="function"==typeof Symbol&&Symbol.observable||"@@observable";function Me(t){return t}let Ue=(()=>{class t{constructor(e){e&&(this._subscribe=e)}lift(e){const i=new t;return i.source=this,i.operator=e,i}subscribe(e,i,o){const r=function ut(t){return t&&t instanceof he||function re(t){return t&&H(t.next)&&H(t.error)&&H(t.complete)}(t)&&q(t)}(e)?e:new at(e,i,o);return J(()=>{const{operator:s,source:a}=this;r.add(s?s.call(r,a):a?this._subscribe(r):this._trySubscribe(r))}),r}_trySubscribe(e){try{return this._subscribe(e)}catch(i){e.error(i)}}forEach(e,i){return new(i=ae(i))((o,r)=>{const s=new at({next:a=>{try{e(a)}catch(l){r(l),s.unsubscribe()}},error:r,complete:o});this.subscribe(s)})}_subscribe(e){var i;return null===(i=this.source)||void 0===i?void 0:i.subscribe(e)}[bt](){return this}pipe(...e){return function Oe(t){return 0===t.length?Me:1===t.length?t[0]:function(e){return t.reduce((i,o)=>o(i),e)}}(e)(this)}toPromise(e){return new(e=ae(e))((i,o)=>{let r;this.subscribe(s=>r=s,s=>o(s),()=>i(r))})}}return t.create=n=>new t(n),t})();function ae(t){var n;return null!==(n=null!=t?t:z.Promise)&&void 0!==n?n:Promise}const qe=R(t=>function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let ie=(()=>{class t extends Ue{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(e){const i=new yn(this,this);return i.operator=e,i}_throwIfClosed(){if(this.closed)throw new qe}next(e){J(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const i of this.currentObservers)i.next(e)}})}error(e){J(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=e;const{observers:i}=this;for(;i.length;)i.shift().error(e)}})}complete(){J(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:e}=this;for(;e.length;)e.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var e;return(null===(e=this.observers)||void 0===e?void 0:e.length)>0}_trySubscribe(e){return this._throwIfClosed(),super._trySubscribe(e)}_subscribe(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)}_innerSubscribe(e){const{hasError:i,isStopped:o,observers:r}=this;return i||o?$:(this.currentObservers=null,r.push(e),new k(()=>{this.currentObservers=null,x(r,e)}))}_checkFinalizedStatuses(e){const{hasError:i,thrownError:o,isStopped:r}=this;i?e.error(o):r&&e.complete()}asObservable(){const e=new Ue;return e.source=this,e}}return t.create=(n,e)=>new yn(n,e),t})();class yn extends ie{constructor(n,e){super(),this.destination=n,this.source=e}next(n){var e,i;null===(i=null===(e=this.destination)||void 0===e?void 0:e.next)||void 0===i||i.call(e,n)}error(n){var e,i;null===(i=null===(e=this.destination)||void 0===e?void 0:e.error)||void 0===i||i.call(e,n)}complete(){var n,e;null===(e=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===e||e.call(n)}_subscribe(n){var e,i;return null!==(i=null===(e=this.source)||void 0===e?void 0:e.subscribe(n))&&void 0!==i?i:$}}function ei(t){return H(null==t?void 0:t.lift)}function nt(t){return n=>{if(ei(n))return n.lift(function(e){try{return t(e,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function st(t,n,e,i,o){return new zn(t,n,e,i,o)}class zn extends he{constructor(n,e,i,o,r,s){super(n),this.onFinalize=r,this.shouldUnsubscribe=s,this._next=e?function(a){try{e(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=i?function(){try{i()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:e}=this;super.unsubscribe(),!e&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function je(t,n){return nt((e,i)=>{let o=0;e.subscribe(st(i,r=>{i.next(t.call(n,r,o++))}))})}function Ui(t){return this instanceof Ui?(this.v=t,this):new Ui(t)}function Cn(t,n,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,i=e.apply(t,n||[]),r=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(v){i[v]&&(o[v]=function(C){return new Promise(function(M,V){r.push([v,C,M,V])>1||a(v,C)})})}function a(v,C){try{!function l(v){v.value instanceof Ui?Promise.resolve(v.value.v).then(u,p):g(r[0][2],v)}(i[v](C))}catch(M){g(r[0][3],M)}}function u(v){a("next",v)}function p(v){a("throw",v)}function g(v,C){v(C),r.shift(),r.length&&a(r[0][0],r[0][1])}}function Ta(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=function Xt(t){var n="function"==typeof Symbol&&Symbol.iterator,e=n&&t[n],i=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(t),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(r){e[r]=t[r]&&function(s){return new Promise(function(a,l){!function o(r,s,a,l){Promise.resolve(l).then(function(u){r({value:u,done:a})},s)}(a,l,(s=t[r](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Xp=t=>t&&"number"==typeof t.length&&"function"!=typeof t;function jv(t){return H(null==t?void 0:t.then)}function Hv(t){return H(t[bt])}function Uv(t){return Symbol.asyncIterator&&H(null==t?void 0:t[Symbol.asyncIterator])}function zv(t){return new TypeError(`You provided ${null!==t&&"object"==typeof t?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const $v=function DI(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Gv(t){return H(null==t?void 0:t[$v])}function Wv(t){return Cn(this,arguments,function*(){const e=t.getReader();try{for(;;){const{value:i,done:o}=yield Ui(e.read());if(o)return yield Ui(void 0);yield yield Ui(i)}}finally{e.releaseLock()}})}function qv(t){return H(null==t?void 0:t.getReader)}function yi(t){if(t instanceof Ue)return t;if(null!=t){if(Hv(t))return function SI(t){return new Ue(n=>{const e=t[bt]();if(H(e.subscribe))return e.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(t);if(Xp(t))return function MI(t){return new Ue(n=>{for(let e=0;e{t.then(e=>{n.closed||(n.next(e),n.complete())},e=>n.error(e)).then(null,L)})}(t);if(Uv(t))return Kv(t);if(Gv(t))return function TI(t){return new Ue(n=>{for(const e of t)if(n.next(e),n.closed)return;n.complete()})}(t);if(qv(t))return function kI(t){return Kv(Wv(t))}(t)}throw zv(t)}function Kv(t){return new Ue(n=>{(function EI(t,n){var e,i,o,r;return function Re(t,n,e,i){return new(e||(e=Promise))(function(r,s){function a(p){try{u(i.next(p))}catch(g){s(g)}}function l(p){try{u(i.throw(p))}catch(g){s(g)}}function u(p){p.done?r(p.value):function o(r){return r instanceof e?r:new e(function(s){s(r)})}(p.value).then(a,l)}u((i=i.apply(t,n||[])).next())})}(this,void 0,void 0,function*(){try{for(e=Ta(t);!(i=yield e.next()).done;)if(n.next(i.value),n.closed)return}catch(s){o={error:s}}finally{try{i&&!i.done&&(r=e.return)&&(yield r.call(e))}finally{if(o)throw o.error}}n.complete()})})(t,n).catch(e=>n.error(e))})}function Er(t,n,e,i=0,o=!1){const r=n.schedule(function(){e(),o?t.add(this.schedule(null,i)):this.unsubscribe()},i);if(t.add(r),!o)return r}function $n(t,n,e=1/0){return H(n)?$n((i,o)=>je((r,s)=>n(i,r,o,s))(yi(t(i,o))),e):("number"==typeof n&&(e=n),nt((i,o)=>function II(t,n,e,i,o,r,s,a){const l=[];let u=0,p=0,g=!1;const v=()=>{g&&!l.length&&!u&&n.complete()},C=V=>u{r&&n.next(V),u++;let K=!1;yi(e(V,p++)).subscribe(st(n,Y=>{null==o||o(Y),r?C(Y):n.next(Y)},()=>{K=!0},void 0,()=>{if(K)try{for(u--;l.length&&uM(Y)):M(Y)}v()}catch(Y){n.error(Y)}}))};return t.subscribe(st(n,C,()=>{g=!0,v()})),()=>{null==a||a()}}(i,o,t,e)))}function Ql(t=1/0){return $n(Me,t)}const Co=new Ue(t=>t.complete());function Zv(t){return t&&H(t.schedule)}function Jp(t){return t[t.length-1]}function Qv(t){return H(Jp(t))?t.pop():void 0}function Yl(t){return Zv(Jp(t))?t.pop():void 0}function Yv(t,n=0){return nt((e,i)=>{e.subscribe(st(i,o=>Er(i,t,()=>i.next(o),n),()=>Er(i,t,()=>i.complete(),n),o=>Er(i,t,()=>i.error(o),n)))})}function Xv(t,n=0){return nt((e,i)=>{i.add(t.schedule(()=>e.subscribe(i),n))})}function Jv(t,n){if(!t)throw new Error("Iterable cannot be null");return new Ue(e=>{Er(e,n,()=>{const i=t[Symbol.asyncIterator]();Er(e,n,()=>{i.next().then(o=>{o.done?e.complete():e.next(o.value)})},0,!0)})})}function ti(t,n){return n?function BI(t,n){if(null!=t){if(Hv(t))return function PI(t,n){return yi(t).pipe(Xv(n),Yv(n))}(t,n);if(Xp(t))return function FI(t,n){return new Ue(e=>{let i=0;return n.schedule(function(){i===t.length?e.complete():(e.next(t[i++]),e.closed||this.schedule())})})}(t,n);if(jv(t))return function RI(t,n){return yi(t).pipe(Xv(n),Yv(n))}(t,n);if(Uv(t))return Jv(t,n);if(Gv(t))return function NI(t,n){return new Ue(e=>{let i;return Er(e,n,()=>{i=t[$v](),Er(e,n,()=>{let o,r;try{({value:o,done:r}=i.next())}catch(s){return void e.error(s)}r?e.complete():e.next(o)},0,!0)}),()=>H(null==i?void 0:i.return)&&i.return()})}(t,n);if(qv(t))return function LI(t,n){return Jv(Wv(t),n)}(t,n)}throw zv(t)}(t,n):yi(t)}function Tn(...t){const n=Yl(t),e=function AI(t,n){return"number"==typeof Jp(t)?t.pop():n}(t,1/0),i=t;return i.length?1===i.length?yi(i[0]):Ql(e)(ti(i,n)):Co}function ey(t={}){const{connector:n=(()=>new ie),resetOnError:e=!0,resetOnComplete:i=!0,resetOnRefCountZero:o=!0}=t;return r=>{let s,a,l,u=0,p=!1,g=!1;const v=()=>{null==a||a.unsubscribe(),a=void 0},C=()=>{v(),s=l=void 0,p=g=!1},M=()=>{const V=s;C(),null==V||V.unsubscribe()};return nt((V,K)=>{u++,!g&&!p&&v();const Y=l=null!=l?l:n();K.add(()=>{u--,0===u&&!g&&!p&&(a=ef(M,o))}),Y.subscribe(K),!s&&u>0&&(s=new at({next:ee=>Y.next(ee),error:ee=>{g=!0,v(),a=ef(C,e,ee),Y.error(ee)},complete:()=>{p=!0,v(),a=ef(C,i),Y.complete()}}),yi(V).subscribe(s))})(r)}}function ef(t,n,...e){if(!0===n)return void t();if(!1===n)return;const i=new at({next:()=>{i.unsubscribe(),t()}});return yi(n(...e)).subscribe(i)}function ln(t){for(let n in t)if(t[n]===ln)return n;throw Error("Could not find renamed property on target object.")}function tf(t,n){for(const e in n)n.hasOwnProperty(e)&&!t.hasOwnProperty(e)&&(t[e]=n[e])}function tn(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(tn).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return`${t.overriddenName}`;if(t.name)return`${t.name}`;const n=t.toString();if(null==n)return""+n;const e=n.indexOf("\n");return-1===e?n:n.substring(0,e)}function nf(t,n){return null==t||""===t?null===n?"":n:null==n||""===n?t:t+" "+n}const VI=ln({__forward_ref__:ln});function zt(t){return t.__forward_ref__=zt,t.toString=function(){return tn(this())},t}function Mt(t){return ty(t)?t():t}function ty(t){return"function"==typeof t&&t.hasOwnProperty(VI)&&t.__forward_ref__===zt}class Qe extends Error{constructor(n,e){super(function rf(t,n){return`NG0${Math.abs(t)}${n?": "+n:""}`}(n,e)),this.code=n}}function Dt(t){return"string"==typeof t?t:null==t?"":String(t)}function Oi(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():Dt(t)}function $d(t,n){const e=n?` in ${n}`:"";throw new Qe(-201,`No provider for ${Oi(t)} found${e}`)}function io(t,n){null==t&&function mn(t,n,e,i){throw new Error(`ASSERTION ERROR: ${t}`+(null==i?"":` [Expected=> ${e} ${i} ${n} <=Actual]`))}(n,t,null,"!=")}function Fe(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function it(t){return{providers:t.providers||[],imports:t.imports||[]}}function sf(t){return ny(t,Gd)||ny(t,oy)}function ny(t,n){return t.hasOwnProperty(n)?t[n]:null}function iy(t){return t&&(t.hasOwnProperty(af)||t.hasOwnProperty(WI))?t[af]:null}const Gd=ln({\u0275prov:ln}),af=ln({\u0275inj:ln}),oy=ln({ngInjectableDef:ln}),WI=ln({ngInjectorDef:ln});var yt=(()=>((yt=yt||{})[yt.Default=0]="Default",yt[yt.Host=1]="Host",yt[yt.Self=2]="Self",yt[yt.SkipSelf=4]="SkipSelf",yt[yt.Optional=8]="Optional",yt))();let lf;function as(t){const n=lf;return lf=t,n}function ry(t,n,e){const i=sf(t);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:e&yt.Optional?null:void 0!==n?n:void $d(tn(t),"Injector")}function ls(t){return{toString:t}.toString()}var Uo=(()=>((Uo=Uo||{})[Uo.OnPush=0]="OnPush",Uo[Uo.Default=1]="Default",Uo))(),zo=(()=>{return(t=zo||(zo={}))[t.Emulated=0]="Emulated",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",zo;var t})();const KI="undefined"!=typeof globalThis&&globalThis,ZI="undefined"!=typeof window&&window,QI="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,on=KI||"undefined"!=typeof global&&global||ZI||QI,Ea={},cn=[],Wd=ln({\u0275cmp:ln}),cf=ln({\u0275dir:ln}),df=ln({\u0275pipe:ln}),sy=ln({\u0275mod:ln}),Or=ln({\u0275fac:ln}),Xl=ln({__NG_ELEMENT_ID__:ln});let YI=0;function Ae(t){return ls(()=>{const e={},i={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===Uo.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||cn,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||zo.Emulated,id:"c",styles:t.styles||cn,_:null,setInput:null,schemas:t.schemas||null,tView:null},o=t.directives,r=t.features,s=t.pipes;return i.id+=YI++,i.inputs=dy(t.inputs,e),i.outputs=dy(t.outputs),r&&r.forEach(a=>a(i)),i.directiveDefs=o?()=>("function"==typeof o?o():o).map(ay):null,i.pipeDefs=s?()=>("function"==typeof s?s():s).map(ly):null,i})}function ay(t){return Ci(t)||function cs(t){return t[cf]||null}(t)}function ly(t){return function Gs(t){return t[df]||null}(t)}const cy={};function ot(t){return ls(()=>{const n={type:t.type,bootstrap:t.bootstrap||cn,declarations:t.declarations||cn,imports:t.imports||cn,exports:t.exports||cn,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&(cy[t.id]=t.type),n})}function dy(t,n){if(null==t)return Ea;const e={};for(const i in t)if(t.hasOwnProperty(i)){let o=t[i],r=o;Array.isArray(o)&&(r=o[1],o=o[0]),e[o]=i,n&&(n[o]=r)}return e}const oe=Ae;function zi(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function Ci(t){return t[Wd]||null}function wo(t,n){const e=t[sy]||null;if(!e&&!0===n)throw new Error(`Type ${tn(t)} does not have '\u0275mod' property.`);return e}function ar(t){return Array.isArray(t)&&"object"==typeof t[1]}function Go(t){return Array.isArray(t)&&!0===t[1]}function pf(t){return 0!=(8&t.flags)}function Qd(t){return 2==(2&t.flags)}function Yd(t){return 1==(1&t.flags)}function Wo(t){return null!==t.template}function iO(t){return 0!=(512&t[2])}function Zs(t,n){return t.hasOwnProperty(Or)?t[Or]:null}class sO{constructor(n,e,i){this.previousValue=n,this.currentValue=e,this.firstChange=i}isFirstChange(){return this.firstChange}}function nn(){return hy}function hy(t){return t.type.prototype.ngOnChanges&&(t.setInput=lO),aO}function aO(){const t=fy(this),n=null==t?void 0:t.current;if(n){const e=t.previous;if(e===Ea)t.previous=n;else for(let i in n)e[i]=n[i];t.current=null,this.ngOnChanges(n)}}function lO(t,n,e,i){const o=fy(t)||function cO(t,n){return t[py]=n}(t,{previous:Ea,current:null}),r=o.current||(o.current={}),s=o.previous,a=this.declaredInputs[e],l=s[a];r[a]=new sO(l&&l.currentValue,n,s===Ea),t[i]=n}nn.ngInherit=!0;const py="__ngSimpleChanges__";function fy(t){return t[py]||null}let bf;function vf(){return void 0!==bf?bf:"undefined"!=typeof document?document:void 0}function Pn(t){return!!t.listen}const my={createRenderer:(t,n)=>vf()};function Gn(t){for(;Array.isArray(t);)t=t[0];return t}function Xd(t,n){return Gn(n[t])}function Mo(t,n){return Gn(n[t.index])}function yf(t,n){return t.data[n]}function Ra(t,n){return t[n]}function ro(t,n){const e=n[t];return ar(e)?e:e[0]}function gy(t){return 4==(4&t[2])}function Cf(t){return 128==(128&t[2])}function ds(t,n){return null==n?null:t[n]}function _y(t){t[18]=0}function wf(t,n){t[5]+=n;let e=t,i=t[3];for(;null!==i&&(1===n&&1===e[5]||-1===n&&0===e[5]);)i[5]+=n,e=i,i=i[3]}const Ct={lFrame:My(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function by(){return Ct.bindingsEnabled}function De(){return Ct.lFrame.lView}function Gt(){return Ct.lFrame.tView}function se(t){return Ct.lFrame.contextLView=t,t[8]}function ni(){let t=vy();for(;null!==t&&64===t.type;)t=t.parent;return t}function vy(){return Ct.lFrame.currentTNode}function lr(t,n){const e=Ct.lFrame;e.currentTNode=t,e.isParent=n}function Df(){return Ct.lFrame.isParent}function Sf(){Ct.lFrame.isParent=!1}function Jd(){return Ct.isInCheckNoChangesMode}function eu(t){Ct.isInCheckNoChangesMode=t}function Ai(){const t=Ct.lFrame;let n=t.bindingRootIndex;return-1===n&&(n=t.bindingRootIndex=t.tView.bindingStartIndex),n}function Ar(){return Ct.lFrame.bindingIndex}function Fa(){return Ct.lFrame.bindingIndex++}function Pr(t){const n=Ct.lFrame,e=n.bindingIndex;return n.bindingIndex=n.bindingIndex+t,e}function xO(t,n){const e=Ct.lFrame;e.bindingIndex=e.bindingRootIndex=t,Mf(n)}function Mf(t){Ct.lFrame.currentDirectiveIndex=t}function xf(t){const n=Ct.lFrame.currentDirectiveIndex;return-1===n?null:t[n]}function wy(){return Ct.lFrame.currentQueryIndex}function Tf(t){Ct.lFrame.currentQueryIndex=t}function kO(t){const n=t[1];return 2===n.type?n.declTNode:1===n.type?t[6]:null}function Dy(t,n,e){if(e&yt.SkipSelf){let o=n,r=t;for(;!(o=o.parent,null!==o||e&yt.Host||(o=kO(r),null===o||(r=r[15],10&o.type))););if(null===o)return!1;n=o,t=r}const i=Ct.lFrame=Sy();return i.currentTNode=n,i.lView=t,!0}function tu(t){const n=Sy(),e=t[1];Ct.lFrame=n,n.currentTNode=e.firstChild,n.lView=t,n.tView=e,n.contextLView=t,n.bindingIndex=e.bindingStartIndex,n.inI18n=!1}function Sy(){const t=Ct.lFrame,n=null===t?null:t.child;return null===n?My(t):n}function My(t){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:t,child:null,inI18n:!1};return null!==t&&(t.child=n),n}function xy(){const t=Ct.lFrame;return Ct.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const Ty=xy;function nu(){const t=xy();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function Pi(){return Ct.lFrame.selectedIndex}function us(t){Ct.lFrame.selectedIndex=t}function Rn(){const t=Ct.lFrame;return yf(t.tView,t.selectedIndex)}function hn(){Ct.lFrame.currentNamespace="svg"}function Qs(){!function AO(){Ct.lFrame.currentNamespace=null}()}function iu(t,n){for(let e=n.directiveStart,i=n.directiveEnd;e=i)break}else n[l]<0&&(t[18]+=65536),(a>11>16&&(3&t[2])===n){t[2]+=2048;try{r.call(a)}finally{}}}else try{r.call(a)}finally{}}class ic{constructor(n,e,i){this.factory=n,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=i}}function su(t,n,e){const i=Pn(t);let o=0;for(;on){s=r-1;break}}}for(;r>16}(t),i=n;for(;e>0;)i=i[15],e--;return i}let Of=!0;function lu(t){const n=Of;return Of=t,n}let HO=0;function rc(t,n){const e=Pf(t,n);if(-1!==e)return e;const i=n[1];i.firstCreatePass&&(t.injectorIndex=n.length,Af(i.data,t),Af(n,null),Af(i.blueprint,null));const o=cu(t,n),r=t.injectorIndex;if(Oy(o)){const s=Na(o),a=La(o,n),l=a[1].data;for(let u=0;u<8;u++)n[r+u]=a[s+u]|l[s+u]}return n[r+8]=o,r}function Af(t,n){t.push(0,0,0,0,0,0,0,0,n)}function Pf(t,n){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null===n[t.injectorIndex+8]?-1:t.injectorIndex}function cu(t,n){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let e=0,i=null,o=n;for(;null!==o;){const r=o[1],s=r.type;if(i=2===s?r.declTNode:1===s?o[6]:null,null===i)return-1;if(e++,o=o[15],-1!==i.injectorIndex)return i.injectorIndex|e<<16}return-1}function du(t,n,e){!function UO(t,n,e){let i;"string"==typeof e?i=e.charCodeAt(0)||0:e.hasOwnProperty(Xl)&&(i=e[Xl]),null==i&&(i=e[Xl]=HO++);const o=255&i;n.data[t+(o>>5)]|=1<=0?255&n:$O:n}(e);if("function"==typeof r){if(!Dy(n,t,i))return i&yt.Host?Ry(o,e,i):Fy(n,e,i,o);try{const s=r(i);if(null!=s||i&yt.Optional)return s;$d(e)}finally{Ty()}}else if("number"==typeof r){let s=null,a=Pf(t,n),l=-1,u=i&yt.Host?n[16][6]:null;for((-1===a||i&yt.SkipSelf)&&(l=-1===a?cu(t,n):n[a+8],-1!==l&&Vy(i,!1)?(s=n[1],a=Na(l),n=La(l,n)):a=-1);-1!==a;){const p=n[1];if(By(r,a,p.data)){const g=GO(a,n,e,s,i,u);if(g!==Ly)return g}l=n[a+8],-1!==l&&Vy(i,n[1].data[a+8]===u)&&By(r,a,n)?(s=p,a=Na(l),n=La(l,n)):a=-1}}}return Fy(n,e,i,o)}const Ly={};function $O(){return new Ba(ni(),De())}function GO(t,n,e,i,o,r){const s=n[1],a=s.data[t+8],p=uu(a,s,e,null==i?Qd(a)&&Of:i!=s&&0!=(3&a.type),o&yt.Host&&r===a);return null!==p?sc(n,s,p,a):Ly}function uu(t,n,e,i,o){const r=t.providerIndexes,s=n.data,a=1048575&r,l=t.directiveStart,p=r>>20,v=o?a+p:t.directiveEnd;for(let C=i?a:a+p;C=l&&M.type===e)return C}if(o){const C=s[l];if(C&&Wo(C)&&C.type===e)return l}return null}function sc(t,n,e,i){let o=t[e];const r=n.data;if(function NO(t){return t instanceof ic}(o)){const s=o;s.resolving&&function jI(t,n){const e=n?`. Dependency path: ${n.join(" > ")} > ${t}`:"";throw new Qe(-200,`Circular dependency in DI detected for ${t}${e}`)}(Oi(r[e]));const a=lu(s.canSeeViewProviders);s.resolving=!0;const l=s.injectImpl?as(s.injectImpl):null;Dy(t,i,yt.Default);try{o=t[e]=s.factory(void 0,r,t,i),n.firstCreatePass&&e>=i.directiveStart&&function RO(t,n,e){const{ngOnChanges:i,ngOnInit:o,ngDoCheck:r}=n.type.prototype;if(i){const s=hy(n);(e.preOrderHooks||(e.preOrderHooks=[])).push(t,s),(e.preOrderCheckHooks||(e.preOrderCheckHooks=[])).push(t,s)}o&&(e.preOrderHooks||(e.preOrderHooks=[])).push(0-t,o),r&&((e.preOrderHooks||(e.preOrderHooks=[])).push(t,r),(e.preOrderCheckHooks||(e.preOrderCheckHooks=[])).push(t,r))}(e,r[e],n)}finally{null!==l&&as(l),lu(a),s.resolving=!1,Ty()}}return o}function By(t,n,e){return!!(e[n+(t>>5)]&1<{const n=t.prototype.constructor,e=n[Or]||Rf(n),i=Object.prototype;let o=Object.getPrototypeOf(t.prototype).constructor;for(;o&&o!==i;){const r=o[Or]||Rf(o);if(r&&r!==e)return r;o=Object.getPrototypeOf(o)}return r=>new r})}function Rf(t){return ty(t)?()=>{const n=Rf(Mt(t));return n&&n()}:Zs(t)}function Di(t){return function zO(t,n){if("class"===n)return t.classes;if("style"===n)return t.styles;const e=t.attrs;if(e){const i=e.length;let o=0;for(;o{const i=function Ff(t){return function(...e){if(t){const i=t(...e);for(const o in i)this[o]=i[o]}}}(n);function o(...r){if(this instanceof o)return i.apply(this,r),this;const s=new o(...r);return a.annotation=s,a;function a(l,u,p){const g=l.hasOwnProperty(ja)?l[ja]:Object.defineProperty(l,ja,{value:[]})[ja];for(;g.length<=p;)g.push(null);return(g[p]=g[p]||[]).push(s),l}}return e&&(o.prototype=Object.create(e.prototype)),o.prototype.ngMetadataName=t,o.annotationCls=o,o})}class _e{constructor(n,e){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=Fe({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const KO=new _e("AnalyzeForEntryComponents");function xo(t,n){void 0===n&&(n=t);for(let e=0;eArray.isArray(e)?cr(e,n):n(e))}function Hy(t,n,e){n>=t.length?t.push(e):t.splice(n,0,e)}function hu(t,n){return n>=t.length-1?t.pop():t.splice(n,1)[0]}function cc(t,n){const e=[];for(let i=0;i=0?t[1|i]=e:(i=~i,function YO(t,n,e,i){let o=t.length;if(o==n)t.push(e,i);else if(1===o)t.push(i,t[0]),t[0]=e;else{for(o--,t.push(t[o-1],t[o]);o>n;)t[o]=t[o-2],o--;t[n]=e,t[n+1]=i}}(t,i,n,e)),i}function Lf(t,n){const e=za(t,n);if(e>=0)return t[1|e]}function za(t,n){return function $y(t,n,e){let i=0,o=t.length>>e;for(;o!==i;){const r=i+(o-i>>1),s=t[r<n?o=r:i=r+1}return~(o<({token:t})),-1),qo=pc(Ua("Optional"),8),$a=pc(Ua("SkipSelf"),4);let _u,bu;function Wa(t){var n;return(null===(n=function Uf(){if(void 0===_u&&(_u=null,on.trustedTypes))try{_u=on.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return _u}())||void 0===n?void 0:n.createHTML(t))||t}function Jy(t){var n;return(null===(n=function zf(){if(void 0===bu&&(bu=null,on.trustedTypes))try{bu=on.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return bu}())||void 0===n?void 0:n.createHTML(t))||t}class Ys{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class w2 extends Ys{getTypeName(){return"HTML"}}class D2 extends Ys{getTypeName(){return"Style"}}class S2 extends Ys{getTypeName(){return"Script"}}class M2 extends Ys{getTypeName(){return"URL"}}class x2 extends Ys{getTypeName(){return"ResourceURL"}}function ao(t){return t instanceof Ys?t.changingThisBreaksApplicationSecurity:t}function dr(t,n){const e=nC(t);if(null!=e&&e!==n){if("ResourceURL"===e&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${e} (see https://g.co/ng/security#xss)`)}return e===n}function nC(t){return t instanceof Ys&&t.getTypeName()||null}class A2{constructor(n){this.inertDocumentHelper=n}getInertBodyElement(n){n=""+n;try{const e=(new window.DOMParser).parseFromString(Wa(n),"text/html").body;return null===e?this.inertDocumentHelper.getInertBodyElement(n):(e.removeChild(e.firstChild),e)}catch(e){return null}}}class P2{constructor(n){if(this.defaultDoc=n,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const e=this.inertDocument.createElement("html");this.inertDocument.appendChild(e);const i=this.inertDocument.createElement("body");e.appendChild(i)}}getInertBodyElement(n){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=Wa(n),e;const i=this.inertDocument.createElement("body");return i.innerHTML=Wa(n),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(i),i}stripCustomNsAttrs(n){const e=n.attributes;for(let o=e.length-1;0mc(n.trim())).join(", ")),this.buf.push(" ",s,'="',cC(l),'"')}var t;return this.buf.push(">"),!0}endElement(n){const e=n.nodeName.toLowerCase();$f.hasOwnProperty(e)&&!rC.hasOwnProperty(e)&&(this.buf.push(""))}chars(n){this.buf.push(cC(n))}checkClobberedElement(n,e){if(e&&(n.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${n.outerHTML}`);return e}}const V2=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,j2=/([^\#-~ |!])/g;function cC(t){return t.replace(/&/g,"&").replace(V2,function(n){return"&#"+(1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320)+65536)+";"}).replace(j2,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(//g,">")}let vu;function dC(t,n){let e=null;try{vu=vu||function iC(t){const n=new P2(t);return function R2(){try{return!!(new window.DOMParser).parseFromString(Wa(""),"text/html")}catch(t){return!1}}()?new A2(n):n}(t);let i=n?String(n):"";e=vu.getInertBodyElement(i);let o=5,r=i;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,i=r,r=e.innerHTML,e=vu.getInertBodyElement(i)}while(i!==r);return Wa((new B2).sanitizeChildren(qf(e)||e))}finally{if(e){const i=qf(e)||e;for(;i.firstChild;)i.removeChild(i.firstChild)}}}function qf(t){return"content"in t&&function H2(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var Yt=(()=>((Yt=Yt||{})[Yt.NONE=0]="NONE",Yt[Yt.HTML=1]="HTML",Yt[Yt.STYLE=2]="STYLE",Yt[Yt.SCRIPT=3]="SCRIPT",Yt[Yt.URL=4]="URL",Yt[Yt.RESOURCE_URL=5]="RESOURCE_URL",Yt))();function uC(t){const n=_c();return n?Jy(n.sanitize(Yt.HTML,t)||""):dr(t,"HTML")?Jy(ao(t)):dC(vf(),Dt(t))}function Gi(t){const n=_c();return n?n.sanitize(Yt.URL,t)||"":dr(t,"URL")?ao(t):mc(Dt(t))}function _c(){const t=De();return t&&t[12]}const fC="__ngContext__";function Si(t,n){t[fC]=n}function Zf(t){const n=function bc(t){return t[fC]||null}(t);return n?Array.isArray(n)?n:n.lView:null}function Yf(t){return t.ngOriginalError}function iA(t,...n){t.error(...n)}class ps{constructor(){this._console=console}handleError(n){const e=this._findOriginalError(n),i=function nA(t){return t&&t.ngErrorLogger||iA}(n);i(this._console,"ERROR",n),e&&i(this._console,"ORIGINAL ERROR",e)}_findOriginalError(n){let e=n&&Yf(n);for(;e&&Yf(e);)e=Yf(e);return e||null}}const pA=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(on))();function hr(t){return t instanceof Function?t():t}var lo=(()=>((lo=lo||{})[lo.Important=1]="Important",lo[lo.DashCase=2]="DashCase",lo))();function Jf(t,n){return undefined(t,n)}function vc(t){const n=t[3];return Go(n)?n[3]:n}function em(t){return DC(t[13])}function tm(t){return DC(t[4])}function DC(t){for(;null!==t&&!Go(t);)t=t[4];return t}function Ka(t,n,e,i,o){if(null!=i){let r,s=!1;Go(i)?r=i:ar(i)&&(s=!0,i=i[0]);const a=Gn(i);0===t&&null!==e?null==o?EC(n,e,a):Xs(n,e,a,o||null,!0):1===t&&null!==e?Xs(n,e,a,o||null,!0):2===t?function NC(t,n,e){const i=yu(t,n);i&&function TA(t,n,e,i){Pn(t)?t.removeChild(n,e,i):n.removeChild(e)}(t,i,n,e)}(n,a,s):3===t&&n.destroyNode(a),null!=r&&function IA(t,n,e,i,o){const r=e[7];r!==Gn(e)&&Ka(n,t,i,r,o);for(let a=10;a0&&(t[e-1][4]=i[4]);const r=hu(t,10+n);!function vA(t,n){yc(t,n,n[11],2,null,null),n[0]=null,n[6]=null}(i[1],i);const s=r[19];null!==s&&s.detachView(r[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function xC(t,n){if(!(256&n[2])){const e=n[11];Pn(e)&&e.destroyNode&&yc(t,n,e,3,null,null),function wA(t){let n=t[13];if(!n)return rm(t[1],t);for(;n;){let e=null;if(ar(n))e=n[13];else{const i=n[10];i&&(e=i)}if(!e){for(;n&&!n[4]&&n!==t;)ar(n)&&rm(n[1],n),n=n[3];null===n&&(n=t),ar(n)&&rm(n[1],n),e=n&&n[4]}n=e}}(n)}}function rm(t,n){if(!(256&n[2])){n[2]&=-129,n[2]|=256,function xA(t,n){let e;if(null!=t&&null!=(e=t.destroyHooks))for(let i=0;i=0?i[o=u]():i[o=-u].unsubscribe(),r+=2}else{const s=i[o=e[r+1]];e[r].call(s)}if(null!==i){for(let r=o+1;rr?"":o[g+1].toLowerCase();const C=8&i?v:null;if(C&&-1!==VC(C,u,0)||2&i&&u!==v){if(Ko(i))return!1;s=!0}}}}else{if(!s&&!Ko(i)&&!Ko(l))return!1;if(s&&Ko(l))continue;s=!1,i=l|1&i}}return Ko(i)||s}function Ko(t){return 0==(1&t)}function FA(t,n,e,i){if(null===n)return-1;let o=0;if(i||!e){let r=!1;for(;o-1)for(e++;e0?'="'+a+'"':"")+"]"}else 8&i?o+="."+s:4&i&&(o+=" "+s);else""!==o&&!Ko(s)&&(n+=zC(r,o),o=""),i=s,r=r||!Ko(i);e++}return""!==o&&(n+=zC(r,o)),n}const St={};function f(t){$C(Gt(),De(),Pi()+t,Jd())}function $C(t,n,e,i){if(!i)if(3==(3&n[2])){const r=t.preOrderCheckHooks;null!==r&&ou(n,r,e)}else{const r=t.preOrderHooks;null!==r&&ru(n,r,0,e)}us(e)}function Du(t,n){return t<<17|n<<2}function Zo(t){return t>>17&32767}function dm(t){return 2|t}function Rr(t){return(131068&t)>>2}function um(t,n){return-131069&t|n<<2}function hm(t){return 1|t}function t0(t,n){const e=t.contentQueries;if(null!==e)for(let i=0;i20&&$C(t,n,20,Jd()),e(i,o)}finally{us(r)}}function o0(t,n,e){if(pf(n)){const o=n.directiveEnd;for(let r=n.directiveStart;r0;){const e=t[--n];if("number"==typeof e&&e<0)return e}return 0})(a)!=l&&a.push(l),a.push(i,o,s)}}function h0(t,n){null!==t.hostBindings&&t.hostBindings(1,n)}function p0(t,n){n.flags|=2,(t.components||(t.components=[])).push(n.index)}function mP(t,n,e){if(e){if(n.exportAs)for(let i=0;i0&&xm(e)}}function xm(t){for(let i=em(t);null!==i;i=tm(i))for(let o=10;o0&&xm(r)}const e=t[1].components;if(null!==e)for(let i=0;i0&&xm(o)}}function wP(t,n){const e=ro(n,t),i=e[1];(function DP(t,n){for(let e=n.length;ePromise.resolve(null))();function b0(t){return t[7]||(t[7]=[])}function v0(t){return t.cleanup||(t.cleanup=[])}function y0(t,n,e){return(null===t||Wo(t))&&(e=function gO(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(e[n.index])),e[11]}function C0(t,n){const e=t[9],i=e?e.get(ps,null):null;i&&i.handleError(n)}function w0(t,n,e,i,o){for(let r=0;rthis.processProvider(a,n,e)),cr([n],a=>this.processInjectorType(a,[],r)),this.records.set(Om,Xa(void 0,this));const s=this.records.get(Am);this.scope=null!=s?s.value:null,this.source=o||("object"==typeof n?null:tn(n))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(n=>n.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(n,e=dc,i=yt.Default){this.assertNotDestroyed();const o=qy(this),r=as(void 0);try{if(!(i&yt.SkipSelf)){let a=this.records.get(n);if(void 0===a){const l=function VP(t){return"function"==typeof t||"object"==typeof t&&t instanceof _e}(n)&&sf(n);a=l&&this.injectableDefInScope(l)?Xa(Rm(n),Dc):null,this.records.set(n,a)}if(null!=a)return this.hydrate(n,a)}return(i&yt.Self?S0():this.parent).get(n,e=i&yt.Optional&&e===dc?null:e)}catch(s){if("NullInjectorError"===s.name){if((s[fu]=s[fu]||[]).unshift(tn(n)),o)throw s;return function d2(t,n,e,i){const o=t[fu];throw n[Wy]&&o.unshift(n[Wy]),t.message=function u2(t,n,e,i=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let o=tn(n);if(Array.isArray(n))o=n.map(tn).join(" -> ");else if("object"==typeof n){let r=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];r.push(s+":"+("string"==typeof a?JSON.stringify(a):tn(a)))}o=`{${r.join(", ")}}`}return`${e}${i?"("+i+")":""}[${o}]: ${t.replace(r2,"\n ")}`}("\n"+t.message,o,e,i),t.ngTokenPath=o,t[fu]=null,t}(s,n,"R3InjectorError",this.source)}throw s}finally{as(r),qy(o)}}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(n=>this.get(n))}toString(){const n=[];return this.records.forEach((i,o)=>n.push(tn(o))),`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Qe(205,!1)}processInjectorType(n,e,i){if(!(n=Mt(n)))return!1;let o=iy(n);const r=null==o&&n.ngModule||void 0,s=void 0===r?n:r,a=-1!==i.indexOf(s);if(void 0!==r&&(o=iy(r)),null==o)return!1;if(null!=o.imports&&!a){let p;i.push(s);try{cr(o.imports,g=>{this.processInjectorType(g,e,i)&&(void 0===p&&(p=[]),p.push(g))})}finally{}if(void 0!==p)for(let g=0;gthis.processProvider(M,v,C||cn))}}this.injectorDefTypes.add(s);const l=Zs(s)||(()=>new s);this.records.set(s,Xa(l,Dc));const u=o.providers;if(null!=u&&!a){const p=n;cr(u,g=>this.processProvider(g,p,u))}return void 0!==r&&void 0!==n.providers}processProvider(n,e,i){let o=Ja(n=Mt(n))?n:Mt(n&&n.provide);const r=function PP(t,n,e){return k0(t)?Xa(void 0,t.useValue):Xa(T0(t),Dc)}(n);if(Ja(n)||!0!==n.multi)this.records.get(o);else{let s=this.records.get(o);s||(s=Xa(void 0,Dc,!0),s.factory=()=>jf(s.multi),this.records.set(o,s)),o=n,s.multi.push(n)}this.records.set(o,r)}hydrate(n,e){return e.value===Dc&&(e.value=IP,e.value=e.factory()),"object"==typeof e.value&&e.value&&function BP(t){return null!==t&&"object"==typeof t&&"function"==typeof t.ngOnDestroy}(e.value)&&this.onDestroy.add(e.value),e.value}injectableDefInScope(n){if(!n.providedIn)return!1;const e=Mt(n.providedIn);return"string"==typeof e?"any"===e||e===this.scope:this.injectorDefTypes.has(e)}}function Rm(t){const n=sf(t),e=null!==n?n.factory:Zs(t);if(null!==e)return e;if(t instanceof _e)throw new Qe(204,!1);if(t instanceof Function)return function AP(t){const n=t.length;if(n>0)throw cc(n,"?"),new Qe(204,!1);const e=function $I(t){const n=t&&(t[Gd]||t[oy]);if(n){const e=function GI(t){if(t.hasOwnProperty("name"))return t.name;const n=(""+t).match(/^function\s*([^\s(]+)/);return null===n?"":n[1]}(t);return console.warn(`DEPRECATED: DI is instantiating a token "${e}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${e}" class.`),n}return null}(t);return null!==e?()=>e.factory(t):()=>new t}(t);throw new Qe(204,!1)}function T0(t,n,e){let i;if(Ja(t)){const o=Mt(t);return Zs(o)||Rm(o)}if(k0(t))i=()=>Mt(t.useValue);else if(function FP(t){return!(!t||!t.useFactory)}(t))i=()=>t.useFactory(...jf(t.deps||[]));else if(function RP(t){return!(!t||!t.useExisting)}(t))i=()=>Q(Mt(t.useExisting));else{const o=Mt(t&&(t.useClass||t.provide));if(!function LP(t){return!!t.deps}(t))return Zs(o)||Rm(o);i=()=>new o(...jf(t.deps))}return i}function Xa(t,n,e=!1){return{factory:t,value:n,multi:e?[]:void 0}}function k0(t){return null!==t&&"object"==typeof t&&a2 in t}function Ja(t){return"function"==typeof t}let pn=(()=>{class t{static create(e,i){var o;if(Array.isArray(e))return M0({name:""},i,e,"");{const r=null!==(o=e.name)&&void 0!==o?o:"";return M0({name:r},e.parent,e.providers,r)}}}return t.THROW_IF_NOT_FOUND=dc,t.NULL=new D0,t.\u0275prov=Fe({token:t,providedIn:"any",factory:()=>Q(Om)}),t.__NG_ELEMENT_ID__=-1,t})();function qP(t,n){iu(Zf(t)[1],ni())}function Ce(t){let n=function j0(t){return Object.getPrototypeOf(t.prototype).constructor}(t.type),e=!0;const i=[t];for(;n;){let o;if(Wo(t))o=n.\u0275cmp||n.\u0275dir;else{if(n.\u0275cmp)throw new Qe(903,"");o=n.\u0275dir}if(o){if(e){i.push(o);const s=t;s.inputs=Lm(t.inputs),s.declaredInputs=Lm(t.declaredInputs),s.outputs=Lm(t.outputs);const a=o.hostBindings;a&&YP(t,a);const l=o.viewQuery,u=o.contentQueries;if(l&&ZP(t,l),u&&QP(t,u),tf(t.inputs,o.inputs),tf(t.declaredInputs,o.declaredInputs),tf(t.outputs,o.outputs),Wo(o)&&o.data.animation){const p=t.data;p.animation=(p.animation||[]).concat(o.data.animation)}}const r=o.features;if(r)for(let s=0;s=0;i--){const o=t[i];o.hostVars=n+=o.hostVars,o.hostAttrs=au(o.hostAttrs,e=au(e,o.hostAttrs))}}(i)}function Lm(t){return t===Ea?{}:t===cn?[]:t}function ZP(t,n){const e=t.viewQuery;t.viewQuery=e?(i,o)=>{n(i,o),e(i,o)}:n}function QP(t,n){const e=t.contentQueries;t.contentQueries=e?(i,o,r)=>{n(i,o,r),e(i,o,r)}:n}function YP(t,n){const e=t.hostBindings;t.hostBindings=e?(i,o)=>{n(i,o),e(i,o)}:n}let Eu=null;function el(){if(!Eu){const t=on.Symbol;if(t&&t.iterator)Eu=t.iterator;else{const n=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Gn(Ze[i.index])):i.index;if(Pn(e)){let Ze=null;if(!a&&l&&(Ze=function TR(t,n,e,i){const o=t.cleanup;if(null!=o)for(let r=0;rl?a[l]:null}"string"==typeof s&&(r+=2)}return null}(t,n,o,i.index)),null!==Ze)(Ze.__ngLastListenerFn__||Ze).__ngNextListenerFn__=r,Ze.__ngLastListenerFn__=r,C=!1;else{r=Gm(i,n,g,r,!1);const Pt=e.listen(Y,o,r);v.push(r,Pt),p&&p.push(o,ke,ee,ee+1)}}else r=Gm(i,n,g,r,!0),Y.addEventListener(o,r,s),v.push(r),p&&p.push(o,ke,ee,s)}else r=Gm(i,n,g,r,!1);const M=i.outputs;let V;if(C&&null!==M&&(V=M[o])){const K=V.length;if(K)for(let Y=0;Y0;)n=n[15],t--;return n}(t,Ct.lFrame.contextLView))[8]}(t)}function kR(t,n){let e=null;const i=function NA(t){const n=t.attrs;if(null!=n){const e=n.indexOf(5);if(0==(1&e))return n[e+1]}return null}(t);for(let o=0;o=0}const oi={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function y1(t){return t.substring(oi.key,oi.keyEnd)}function C1(t,n){const e=oi.textEnd;return e===n?-1:(n=oi.keyEnd=function FR(t,n,e){for(;n32;)n++;return n}(t,oi.key=n,e),ul(t,n,e))}function ul(t,n,e){for(;n=0;e=C1(n,e))so(t,y1(n),!0)}function Yo(t,n,e,i){const o=De(),r=Gt(),s=Pr(2);r.firstUpdatePass&&T1(r,t,s,i),n!==St&&Mi(o,s,n)&&E1(r,r.data[Pi()],o,o[11],t,o[s+1]=function WR(t,n){return null==t||("string"==typeof n?t+=n:"object"==typeof t&&(t=tn(ao(t)))),t}(n,e),i,s)}function x1(t,n){return n>=t.expandoStartIndex}function T1(t,n,e,i){const o=t.data;if(null===o[e+1]){const r=o[Pi()],s=x1(t,e);O1(r,i)&&null===n&&!s&&(n=!1),n=function jR(t,n,e,i){const o=xf(t);let r=i?n.residualClasses:n.residualStyles;if(null===o)0===(i?n.classBindings:n.styleBindings)&&(e=kc(e=qm(null,t,n,e,i),n.attrs,i),r=null);else{const s=n.directiveStylingLast;if(-1===s||t[s]!==o)if(e=qm(o,t,n,e,i),null===r){let l=function HR(t,n,e){const i=e?n.classBindings:n.styleBindings;if(0!==Rr(i))return t[Zo(i)]}(t,n,i);void 0!==l&&Array.isArray(l)&&(l=qm(null,t,n,l[1],i),l=kc(l,n.attrs,i),function UR(t,n,e,i){t[Zo(e?n.classBindings:n.styleBindings)]=i}(t,n,i,l))}else r=function zR(t,n,e){let i;const o=n.directiveEnd;for(let r=1+n.directiveStylingLast;r0)&&(u=!0)}else p=e;if(o)if(0!==l){const v=Zo(t[a+1]);t[i+1]=Du(v,a),0!==v&&(t[v+1]=um(t[v+1],i)),t[a+1]=function zA(t,n){return 131071&t|n<<17}(t[a+1],i)}else t[i+1]=Du(a,0),0!==a&&(t[a+1]=um(t[a+1],i)),a=i;else t[i+1]=Du(l,0),0===a?a=i:t[l+1]=um(t[l+1],i),l=i;u&&(t[i+1]=dm(t[i+1])),v1(t,p,i,!0),v1(t,p,i,!1),function IR(t,n,e,i,o){const r=o?t.residualClasses:t.residualStyles;null!=r&&"string"==typeof n&&za(r,n)>=0&&(e[i+1]=hm(e[i+1]))}(n,p,t,i,r),s=Du(a,l),r?n.classBindings=s:n.styleBindings=s}(o,r,n,e,s,i)}}function qm(t,n,e,i,o){let r=null;const s=e.directiveEnd;let a=e.directiveStylingLast;for(-1===a?a=e.directiveStart:a++;a0;){const l=t[o],u=Array.isArray(l),p=u?l[1]:l,g=null===p;let v=e[o+1];v===St&&(v=g?cn:void 0);let C=g?Lf(v,i):p===i?v:void 0;if(u&&!Au(C)&&(C=Lf(l,i)),Au(C)&&(a=C,s))return a;const M=t[o+1];o=s?Zo(M):Rr(M)}if(null!==n){let l=r?n.residualClasses:n.residualStyles;null!=l&&(a=Lf(l,i))}return a}function Au(t){return void 0!==t}function O1(t,n){return 0!=(t.flags&(n?16:32))}function h(t,n=""){const e=De(),i=Gt(),o=t+20,r=i.firstCreatePass?Za(i,o,1,n,null):i.data[o],s=e[o]=function nm(t,n){return Pn(t)?t.createText(n):t.createTextNode(n)}(e[11],n);Cu(i,e,s,r),lr(r,!1)}function Ee(t){return Se("",t,""),Ee}function Se(t,n,e){const i=De(),o=nl(i,t,n,e);return o!==St&&Fr(i,Pi(),o),Se}function hl(t,n,e,i,o){const r=De(),s=function il(t,n,e,i,o,r){const a=Js(t,Ar(),e,o);return Pr(2),a?n+Dt(e)+i+Dt(o)+r:St}(r,t,n,e,i,o);return s!==St&&Fr(r,Pi(),s),hl}function Km(t,n,e,i,o,r,s){const a=De(),l=function ol(t,n,e,i,o,r,s,a){const u=Iu(t,Ar(),e,o,s);return Pr(3),u?n+Dt(e)+i+Dt(o)+r+Dt(s)+a:St}(a,t,n,e,i,o,r,s);return l!==St&&Fr(a,Pi(),l),Km}function Zm(t,n,e,i,o,r,s,a,l){const u=De(),p=function rl(t,n,e,i,o,r,s,a,l,u){const g=To(t,Ar(),e,o,s,l);return Pr(4),g?n+Dt(e)+i+Dt(o)+r+Dt(s)+a+Dt(l)+u:St}(u,t,n,e,i,o,r,s,a,l);return p!==St&&Fr(u,Pi(),p),Zm}function L1(t,n,e){!function Xo(t,n,e,i){const o=Gt(),r=Pr(2);o.firstUpdatePass&&T1(o,null,r,i);const s=De();if(e!==St&&Mi(s,r,e)){const a=o.data[Pi()];if(O1(a,i)&&!x1(o,r)){let l=i?a.classesWithoutHost:a.stylesWithoutHost;null!==l&&(e=nf(l,e||"")),zm(o,a,s,e,i)}else!function GR(t,n,e,i,o,r,s,a){o===St&&(o=cn);let l=0,u=0,p=0>20;if(Ja(t)||!t.multi){const C=new ic(l,o,b),M=eg(a,n,o?p:p+v,g);-1===M?(du(rc(u,s),r,a),Jm(r,t,n.length),n.push(a),u.directiveStart++,u.directiveEnd++,o&&(u.providerIndexes+=1048576),e.push(C),s.push(C)):(e[M]=C,s[M]=C)}else{const C=eg(a,n,p+v,g),M=eg(a,n,p,p+v),V=C>=0&&e[C],K=M>=0&&e[M];if(o&&!K||!o&&!V){du(rc(u,s),r,a);const Y=function dN(t,n,e,i,o){const r=new ic(t,e,b);return r.multi=[],r.index=n,r.componentProviders=0,vw(r,o,i&&!e),r}(o?cN:lN,e.length,o,i,l);!o&&K&&(e[M].providerFactory=Y),Jm(r,t,n.length,0),n.push(a),u.directiveStart++,u.directiveEnd++,o&&(u.providerIndexes+=1048576),e.push(Y),s.push(Y)}else Jm(r,t,C>-1?C:M,vw(e[o?M:C],l,!o&&i));!o&&i&&K&&e[M].componentProviders++}}}function Jm(t,n,e,i){const o=Ja(n),r=function NP(t){return!!t.useClass}(n);if(o||r){const l=(r?Mt(n.useClass):n).prototype.ngOnDestroy;if(l){const u=t.destroyHooks||(t.destroyHooks=[]);if(!o&&n.multi){const p=u.indexOf(e);-1===p?u.push(e,[i,l]):u[p+1].push(i,l)}else u.push(e,l)}}}function vw(t,n,e){return e&&t.componentProviders++,t.multi.push(n)-1}function eg(t,n,e,i){for(let o=e;o{e.providersResolver=(i,o)=>function aN(t,n,e){const i=Gt();if(i.firstCreatePass){const o=Wo(t);Xm(e,i.data,i.blueprint,o,!0),Xm(n,i.data,i.blueprint,o,!1)}}(i,o?o(t):t,n)}}class yw{}class pN{resolveComponentFactory(n){throw function hN(t){const n=Error(`No component factory found for ${tn(t)}. Did you add it to @NgModule.entryComponents?`);return n.ngComponent=t,n}(n)}}let gs=(()=>{class t{}return t.NULL=new pN,t})();function fN(){return ml(ni(),De())}function ml(t,n){return new He(Mo(t,n))}let He=(()=>{class t{constructor(e){this.nativeElement=e}}return t.__NG_ELEMENT_ID__=fN,t})();function mN(t){return t instanceof He?t.nativeElement:t}class Rc{}let Lr=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>function _N(){const t=De(),e=ro(ni().index,t);return function gN(t){return t[11]}(ar(e)?e:t)}(),t})(),bN=(()=>{class t{}return t.\u0275prov=Fe({token:t,providedIn:"root",factory:()=>null}),t})();class na{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const vN=new na("13.2.7"),ng={};function Bu(t,n,e,i,o=!1){for(;null!==e;){const r=n[e.index];if(null!==r&&i.push(Gn(r)),Go(r))for(let a=10;a-1&&(om(n,i),hu(e,i))}this._attachedToViewContainer=!1}xC(this._lView[1],this._lView)}onDestroy(n){l0(this._lView[1],this._lView,null,n)}markForCheck(){Tm(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Em(this._lView[1],this._lView,this.context)}checkNoChanges(){!function MP(t,n,e){eu(!0);try{Em(t,n,e)}finally{eu(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Qe(902,"");this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function CA(t,n){yc(t,n,n[11],2,null,null)}(this._lView[1],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new Qe(902,"");this._appRef=n}}class yN extends Fc{constructor(n){super(n),this._view=n}detectChanges(){_0(this._view)}checkNoChanges(){!function xP(t){eu(!0);try{_0(t)}finally{eu(!1)}}(this._view)}get context(){return null}}class ww extends gs{constructor(n){super(),this.ngModule=n}resolveComponentFactory(n){const e=Ci(n);return new ig(e,this.ngModule)}}function Dw(t){const n=[];for(let e in t)t.hasOwnProperty(e)&&n.push({propName:t[e],templateName:e});return n}class ig extends yw{constructor(n,e){super(),this.componentDef=n,this.ngModule=e,this.componentType=n.type,this.selector=function HA(t){return t.map(jA).join(",")}(n.selectors),this.ngContentSelectors=n.ngContentSelectors?n.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Dw(this.componentDef.inputs)}get outputs(){return Dw(this.componentDef.outputs)}create(n,e,i,o){const r=(o=o||this.ngModule)?function wN(t,n){return{get:(e,i,o)=>{const r=t.get(e,ng,o);return r!==ng||i===ng?r:n.get(e,i,o)}}}(n,o.injector):n,s=r.get(Rc,my),a=r.get(bN,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",p=i?function a0(t,n,e){if(Pn(t))return t.selectRootElement(n,e===zo.ShadowDom);let i="string"==typeof n?t.querySelector(n):n;return i.textContent="",i}(l,i,this.componentDef.encapsulation):im(s.createRenderer(null,this.componentDef),u,function CN(t){const n=t.toLowerCase();return"svg"===n?"svg":"math"===n?"math":null}(u)),g=this.componentDef.onPush?576:528,v=function V0(t,n){return{components:[],scheduler:t||pA,clean:TP,playerHandler:n||null,flags:0}}(),C=xu(0,null,null,1,0,null,null,null,null,null),M=Cc(null,C,v,g,null,null,s,l,a,r);let V,K;tu(M);try{const Y=function L0(t,n,e,i,o,r){const s=e[1];e[20]=t;const l=Za(s,20,2,"#host",null),u=l.mergedAttrs=n.hostAttrs;null!==u&&(ku(l,u,!0),null!==t&&(su(o,t,u),null!==l.classes&&cm(o,t,l.classes),null!==l.styles&&BC(o,t,l.styles)));const p=i.createRenderer(t,n),g=Cc(e,r0(n),null,n.onPush?64:16,e[20],l,i,p,r||null,null);return s.firstCreatePass&&(du(rc(l,e),s,n.type),p0(s,l),f0(l,e.length,1)),Tu(e,g),e[20]=g}(p,this.componentDef,M,s,l);if(p)if(i)su(l,p,["ng-version",vN.full]);else{const{attrs:ee,classes:ke}=function UA(t){const n=[],e=[];let i=1,o=2;for(;i0&&cm(l,p,ke.join(" "))}if(K=yf(C,20),void 0!==e){const ee=K.projection=[];for(let ke=0;kel(s,n)),n.contentQueries){const l=ni();n.contentQueries(1,s,l.directiveStart)}const a=ni();return!r.firstCreatePass||null===n.hostBindings&&null===n.hostAttrs||(us(a.index),u0(e[1],a,0,a.directiveStart,a.directiveEnd,n),h0(n,s)),s}(Y,this.componentDef,M,v,[qP]),wc(C,M,null)}finally{nu()}return new SN(this.componentType,V,ml(K,M),M,K)}}class SN extends class uN{}{constructor(n,e,i,o,r){super(),this.location=i,this._rootLView=o,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new yN(o),this.componentType=n}get injector(){return new Ba(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(n){this.hostView.onDestroy(n)}}class Br{}class Sw{}const gl=new Map;class Tw extends Br{constructor(n,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new ww(this);const i=wo(n);this._bootstrapComponents=hr(i.bootstrap),this._r3Injector=x0(n,e,[{provide:Br,useValue:this},{provide:gs,useValue:this.componentFactoryResolver}],tn(n)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(n)}get(n,e=pn.THROW_IF_NOT_FOUND,i=yt.Default){return n===pn||n===Br||n===Om?this:this._r3Injector.get(n,e,i)}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class og extends Sw{constructor(n){super(),this.moduleType=n,null!==wo(n)&&function xN(t){const n=new Set;!function e(i){const o=wo(i,!0),r=o.id;null!==r&&(function Mw(t,n,e){if(n&&n!==e)throw new Error(`Duplicate module registered for ${t} - ${tn(n)} vs ${tn(n.name)}`)}(r,gl.get(r),i),gl.set(r,i));const s=hr(o.imports);for(const a of s)n.has(a)||(n.add(a),e(a))}(t)}(n)}create(n){return new Tw(this.moduleType,n)}}function Jo(t,n,e){const i=Ai()+t,o=De();return o[i]===St?fr(o,i,e?n.call(e):n()):Mc(o,i)}function Kt(t,n,e,i){return Aw(De(),Ai(),t,n,e,i)}function kw(t,n,e,i,o){return function Pw(t,n,e,i,o,r,s){const a=n+e;return Js(t,a,o,r)?fr(t,a+2,s?i.call(s,o,r):i(o,r)):Nc(t,a+2)}(De(),Ai(),t,n,e,i,o)}function Ew(t,n,e,i,o,r){return function Rw(t,n,e,i,o,r,s,a){const l=n+e;return Iu(t,l,o,r,s)?fr(t,l+3,a?i.call(a,o,r,s):i(o,r,s)):Nc(t,l+3)}(De(),Ai(),t,n,e,i,o,r)}function Nc(t,n){const e=t[n];return e===St?void 0:e}function Aw(t,n,e,i,o,r){const s=n+e;return Mi(t,s,o)?fr(t,s+1,r?i.call(r,o):i(o)):Nc(t,s+1)}function _s(t,n){const e=Gt();let i;const o=t+20;e.firstCreatePass?(i=function ON(t,n){if(n)for(let e=n.length-1;e>=0;e--){const i=n[e];if(t===i.name)return i}}(n,e.pipeRegistry),e.data[o]=i,i.onDestroy&&(e.destroyHooks||(e.destroyHooks=[])).push(o,i.onDestroy)):i=e.data[o];const r=i.factory||(i.factory=Zs(i.type)),s=as(b);try{const a=lu(!1),l=r();return lu(a),function rR(t,n,e,i){e>=t.data.length&&(t.data[e]=null,t.blueprint[e]=null),n[e]=i}(e,De(),o,l),l}finally{as(s)}}function bs(t,n,e){const i=t+20,o=De(),r=Ra(o,i);return function Lc(t,n){return t[1].data[n].pure}(o,i)?Aw(o,Ai(),n,r.transform,e,r):r.transform(e)}function rg(t){return n=>{setTimeout(t,void 0,n)}}const Pe=class NN extends ie{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,e,i){var o,r,s;let a=n,l=e||(()=>null),u=i;if(n&&"object"==typeof n){const g=n;a=null===(o=g.next)||void 0===o?void 0:o.bind(g),l=null===(r=g.error)||void 0===r?void 0:r.bind(g),u=null===(s=g.complete)||void 0===s?void 0:s.bind(g)}this.__isAsync&&(l=rg(l),a&&(a=rg(a)),u&&(u=rg(u)));const p=super.subscribe({next:a,error:l,complete:u});return n instanceof k&&n.add(p),p}};function LN(){return this._results[el()]()}class vs{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 e=el(),i=vs.prototype;i[e]||(i[e]=LN)}get changes(){return this._changes||(this._changes=new Pe)}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,e){return this._results.reduce(n,e)}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,e){const i=this;i.dirty=!1;const o=xo(n);(this._changesDetected=!function ZO(t,n,e){if(t.length!==n.length)return!1;for(let i=0;i{class t{}return t.__NG_ELEMENT_ID__=jN,t})();const BN=rn,VN=class extends BN{constructor(n,e,i){super(),this._declarationLView=n,this._declarationTContainer=e,this.elementRef=i}createEmbeddedView(n){const e=this._declarationTContainer.tViews,i=Cc(this._declarationLView,e,n,16,null,e.declTNode,null,null,null,null);i[17]=this._declarationLView[this._declarationTContainer.index];const r=this._declarationLView[19];return null!==r&&(i[19]=r.createEmbeddedView(e)),wc(e,i,n),new Fc(i)}};function jN(){return Vu(ni(),De())}function Vu(t,n){return 4&t.type?new VN(n,t,ml(t,n)):null}let sn=(()=>{class t{}return t.__NG_ELEMENT_ID__=HN,t})();function HN(){return Vw(ni(),De())}const UN=sn,Lw=class extends UN{constructor(n,e,i){super(),this._lContainer=n,this._hostTNode=e,this._hostLView=i}get element(){return ml(this._hostTNode,this._hostLView)}get injector(){return new Ba(this._hostTNode,this._hostLView)}get parentInjector(){const n=cu(this._hostTNode,this._hostLView);if(Oy(n)){const e=La(n,this._hostLView),i=Na(n);return new Ba(e[1].data[i+8],e)}return new Ba(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const e=Bw(this._lContainer);return null!==e&&e[n]||null}get length(){return this._lContainer.length-10}createEmbeddedView(n,e,i){const o=n.createEmbeddedView(e||{});return this.insert(o,i),o}createComponent(n,e,i,o,r){const s=n&&!function lc(t){return"function"==typeof t}(n);let a;if(s)a=e;else{const g=e||{};a=g.index,i=g.injector,o=g.projectableNodes,r=g.ngModuleRef}const l=s?n:new ig(Ci(n)),u=i||this.parentInjector;if(!r&&null==l.ngModule){const v=(s?u:this.parentInjector).get(Br,null);v&&(r=v)}const p=l.create(u,o,void 0,r);return this.insert(p.hostView,a),p}insert(n,e){const i=n._lView,o=i[1];if(function bO(t){return Go(t[3])}(i)){const p=this.indexOf(n);if(-1!==p)this.detach(p);else{const g=i[3],v=new Lw(g,g[6],g[3]);v.detach(v.indexOf(n))}}const r=this._adjustIndex(e),s=this._lContainer;!function DA(t,n,e,i){const o=10+i,r=e.length;i>0&&(e[o-1][4]=n),i0)i.push(s[a/2]);else{const u=r[a+1],p=n[-l];for(let g=10;g{class t{constructor(e){this.appInits=e,this.resolve=Uu,this.reject=Uu,this.initialized=!1,this.done=!1,this.donePromise=new Promise((i,o)=>{this.resolve=i,this.reject=o})}runInitializers(){if(this.initialized)return;const e=[],i=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let o=0;o{r.subscribe({complete:a,error:l})});e.push(s)}}Promise.all(e).then(()=>{i()}).catch(o=>{this.reject(o)}),0===e.length&&i(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Q(_g,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const jc=new _e("AppId",{providedIn:"root",factory:function aD(){return`${vg()}${vg()}${vg()}`}});function vg(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const lD=new _e("Platform Initializer"),Hc=new _e("Platform ID"),cD=new _e("appBootstrapListener");let dD=(()=>{class t{log(e){console.log(e)}warn(e){console.warn(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const Vr=new _e("LocaleId",{providedIn:"root",factory:()=>hc(Vr,yt.Optional|yt.SkipSelf)||function f3(){return"undefined"!=typeof $localize&&$localize.locale||Pu}()});class g3{constructor(n,e){this.ngModuleFactory=n,this.componentFactories=e}}let uD=(()=>{class t{compileModuleSync(e){return new og(e)}compileModuleAsync(e){return Promise.resolve(this.compileModuleSync(e))}compileModuleAndAllComponentsSync(e){const i=this.compileModuleSync(e),r=hr(wo(e).declarations).reduce((s,a)=>{const l=Ci(a);return l&&s.push(new ig(l)),s},[]);return new g3(i,r)}compileModuleAndAllComponentsAsync(e){return Promise.resolve(this.compileModuleAndAllComponentsSync(e))}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const b3=(()=>Promise.resolve(0))();function yg(t){"undefined"==typeof Zone?b3.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Je{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:e=!1,shouldCoalesceRunChangeDetection:i=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Pe(!1),this.onMicrotaskEmpty=new Pe(!1),this.onStable=new Pe(!1),this.onError=new Pe(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");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=!i&&e,o.shouldCoalesceRunChangeDetection=i,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function v3(){let t=on.requestAnimationFrame,n=on.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&n){const e=t[Zone.__symbol__("OriginalDelegate")];e&&(t=e);const i=n[Zone.__symbol__("OriginalDelegate")];i&&(n=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:n}}().nativeRequestAnimationFrame,function w3(t){const n=()=>{!function C3(t){t.isCheckStableRunning||-1!==t.lastRequestAnimationFrameId||(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(on,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,wg(t),t.isCheckStableRunning=!0,Cg(t),t.isCheckStableRunning=!1},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),wg(t))}(t)};t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(e,i,o,r,s,a)=>{try{return hD(t),e.invokeTask(o,r,s,a)}finally{(t.shouldCoalesceEventChangeDetection&&"eventTask"===r.type||t.shouldCoalesceRunChangeDetection)&&n(),pD(t)}},onInvoke:(e,i,o,r,s,a,l)=>{try{return hD(t),e.invoke(o,r,s,a,l)}finally{t.shouldCoalesceRunChangeDetection&&n(),pD(t)}},onHasTask:(e,i,o,r)=>{e.hasTask(o,r),i===o&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,wg(t),Cg(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,i,o,r)=>(e.handleError(o,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(o)}static isInAngularZone(){return"undefined"!=typeof Zone&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Je.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Je.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(n,e,i){return this._inner.run(n,e,i)}runTask(n,e,i,o){const r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+o,n,y3,Uu,Uu);try{return r.runTask(s,e,i)}finally{r.cancelTask(s)}}runGuarded(n,e,i){return this._inner.runGuarded(n,e,i)}runOutsideAngular(n){return this._outer.run(n)}}const y3={};function Cg(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function wg(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&-1!==t.lastRequestAnimationFrameId)}function hD(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function pD(t){t._nesting--,Cg(t)}class D3{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Pe,this.onMicrotaskEmpty=new Pe,this.onStable=new Pe,this.onError=new Pe}run(n,e,i){return n.apply(e,i)}runGuarded(n,e,i){return n.apply(e,i)}runOutsideAngular(n){return n()}runTask(n,e,i,o){return n.apply(e,i)}}let Dg=(()=>{class t{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?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:()=>{Je.assertNotInAngularZone(),yg(()=>{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())yg(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(i=>!i.updateCb||!i.updateCb(e)||(clearTimeout(i.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,i,o){let r=-1;i&&i>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==r),e(this._didWork,this.getPendingTasks())},i)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:o})}whenStable(e,i,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(e,i,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,i,o){return[]}}return t.\u0275fac=function(e){return new(e||t)(Q(Je))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),fD=(()=>{class t{constructor(){this._applications=new Map,Sg.addToWindow(this)}registerApplication(e,i){this._applications.set(e,i)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,i=!0){return Sg.findTestabilityInTree(this,e,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();class S3{addToWindow(n){}findTestabilityInTree(n,e,i){return null}}let er,Sg=new S3;const mD=new _e("AllowMultipleToken");class gD{constructor(n,e){this.name=n,this.token=e}}function _D(t,n,e=[]){const i=`Platform: ${n}`,o=new _e(i);return(r=[])=>{let s=bD();if(!s||s.injector.get(mD,!1))if(t)t(e.concat(r).concat({provide:o,useValue:!0}));else{const a=e.concat(r).concat({provide:o,useValue:!0},{provide:Am,useValue:"platform"});!function k3(t){if(er&&!er.destroyed&&!er.injector.get(mD,!1))throw new Qe(400,"");er=t.get(vD);const n=t.get(lD,null);n&&n.forEach(e=>e())}(pn.create({providers:a,name:i}))}return function E3(t){const n=bD();if(!n)throw new Qe(401,"");return n}()}}function bD(){return er&&!er.destroyed?er:null}let vD=(()=>{class t{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,i){const a=function I3(t,n){let e;return e="noop"===t?new D3:("zone.js"===t?void 0:t)||new Je({enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:!!(null==n?void 0:n.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==n?void 0:n.ngZoneRunCoalescing)}),e}(i?i.ngZone:void 0,{ngZoneEventCoalescing:i&&i.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:i&&i.ngZoneRunCoalescing||!1}),l=[{provide:Je,useValue:a}];return a.run(()=>{const u=pn.create({providers:l,parent:this.injector,name:e.moduleType.name}),p=e.create(u),g=p.injector.get(ps,null);if(!g)throw new Qe(402,"");return a.runOutsideAngular(()=>{const v=a.onError.subscribe({next:C=>{g.handleError(C)}});p.onDestroy(()=>{Mg(this._modules,p),v.unsubscribe()})}),function O3(t,n,e){try{const i=e();return xc(i)?i.catch(o=>{throw n.runOutsideAngular(()=>t.handleError(o)),o}):i}catch(i){throw n.runOutsideAngular(()=>t.handleError(i)),i}}(g,a,()=>{const v=p.injector.get(bg);return v.runInitializers(),v.donePromise.then(()=>(function gF(t){io(t,"Expected localeId to be defined"),"string"==typeof t&&(Z1=t.toLowerCase().replace(/_/g,"-"))}(p.injector.get(Vr,Pu)||Pu),this._moduleDoBootstrap(p),p))})})}bootstrapModule(e,i=[]){const o=yD({},i);return function x3(t,n,e){const i=new og(e);return Promise.resolve(i)}(0,0,e).then(r=>this.bootstrapModuleFactory(r,o))}_moduleDoBootstrap(e){const i=e.injector.get(zu);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(o=>i.bootstrap(o));else{if(!e.instance.ngDoBootstrap)throw new Qe(403,"");e.instance.ngDoBootstrap(i)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Qe(404,"");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Q(pn))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();function yD(t,n){return Array.isArray(n)?n.reduce(yD,t):Object.assign(Object.assign({},t),n)}let zu=(()=>{class t{constructor(e,i,o,r,s){this._zone=e,this._injector=i,this._exceptionHandler=o,this._componentFactoryResolver=r,this._initStatus=s,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const a=new Ue(u=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{u.next(this._stable),u.complete()})}),l=new Ue(u=>{let p;this._zone.runOutsideAngular(()=>{p=this._zone.onStable.subscribe(()=>{Je.assertNotInAngularZone(),yg(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,u.next(!0))})})});const g=this._zone.onUnstable.subscribe(()=>{Je.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{u.next(!1)}))});return()=>{p.unsubscribe(),g.unsubscribe()}});this.isStable=Tn(a,l.pipe(ey()))}bootstrap(e,i){if(!this._initStatus.done)throw new Qe(405,"");let o;o=e instanceof yw?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(o.componentType);const r=function T3(t){return t.isBoundToModule}(o)?void 0:this._injector.get(Br),a=o.create(pn.NULL,[],i||o.selector,r),l=a.location.nativeElement,u=a.injector.get(Dg,null),p=u&&a.injector.get(fD);return u&&p&&p.registerApplication(l,u),a.onDestroy(()=>{this.detachView(a.hostView),Mg(this.components,a),p&&p.unregisterApplication(l)}),this._loadComponent(a),a}tick(){if(this._runningTick)throw new Qe(101,"");try{this._runningTick=!0;for(let e of this._views)e.detectChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const i=e;this._views.push(i),i.attachToAppRef(this)}detachView(e){const i=e;Mg(this._views,i),i.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(cD,[]).concat(this._bootstrapListeners).forEach(o=>o(e))}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Q(Je),Q(pn),Q(ps),Q(gs),Q(bg))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function Mg(t,n){const e=t.indexOf(n);e>-1&&t.splice(e,1)}let wD=!0,At=(()=>{class t{}return t.__NG_ELEMENT_ID__=R3,t})();function R3(t){return function F3(t,n,e){if(Qd(t)&&!e){const i=ro(t.index,n);return new Fc(i,i)}return 47&t.type?new Fc(n[16],n):null}(ni(),De(),16==(16&t))}class TD{constructor(){}supports(n){return Sc(n)}create(n){return new H3(n)}}const j3=(t,n)=>n;class H3{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||j3}forEachItem(n){let e;for(e=this._itHead;null!==e;e=e._next)n(e)}forEachOperation(n){let e=this._itHead,i=this._removalsHead,o=0,r=null;for(;e||i;){const s=!i||e&&e.currentIndex{s=this._trackByFn(o,a),null!==e&&Object.is(e.trackById,s)?(i&&(e=this._verifyReinsertion(e,a,s,o)),Object.is(e.item,a)||this._addIdentityChange(e,a)):(e=this._mismatch(e,a,s,o),i=!0),e=e._next,o++}),this.length=o;return this._truncate(e),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,e,i,o){let r;return null===n?r=this._itTail:(r=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(i,null))?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._reinsertAfter(n,r,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(i,o))?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._moveAfter(n,r,o)):n=this._addAfter(new U3(e,i),r,o),n}_verifyReinsertion(n,e,i,o){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(i,null);return null!==r?n=this._reinsertAfter(r,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const e=n._next;this._addToRemovals(this._unlink(n)),n=e}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,e,i){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,r=n._nextRemoved;return null===o?this._removalsHead=r:o._nextRemoved=r,null===r?this._removalsTail=o:r._prevRemoved=o,this._insertAfter(n,e,i),this._addToMoves(n,i),n}_moveAfter(n,e,i){return this._unlink(n),this._insertAfter(n,e,i),this._addToMoves(n,i),n}_addAfter(n,e,i){return this._insertAfter(n,e,i),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,e,i){const o=null===e?this._itHead:e._next;return n._next=o,n._prev=e,null===o?this._itTail=n:o._prev=n,null===e?this._itHead=n:e._next=n,null===this._linkedRecords&&(this._linkedRecords=new kD),this._linkedRecords.put(n),n.currentIndex=i,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const e=n._prev,i=n._next;return null===e?this._itHead=i:e._next=i,null===i?this._itTail=e:i._prev=e,n}_addToMoves(n,e){return n.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new kD),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,e){return n.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class U3{constructor(n,e){this.item=n,this.trackById=e,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 z3{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,e){let i;for(i=this._head;null!==i;i=i._nextDup)if((null===e||e<=i.currentIndex)&&Object.is(i.trackById,n))return i;return null}remove(n){const e=n._prevDup,i=n._nextDup;return null===e?this._head=i:e._nextDup=i,null===i?this._tail=e:i._prevDup=e,null===this._head}}class kD{constructor(){this.map=new Map}put(n){const e=n.trackById;let i=this.map.get(e);i||(i=new z3,this.map.set(e,i)),i.add(n)}get(n,e){const o=this.map.get(n);return o?o.get(n,e):null}remove(n){const e=n.trackById;return this.map.get(e).remove(n)&&this.map.delete(e),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function ED(t,n,e){const i=t.previousIndex;if(null===i)return i;let o=0;return e&&i{if(e&&e.key===o)this._maybeAddToChanges(e,i),this._appendAfter=e,e=e._next;else{const r=this._getOrCreateRecordForKey(o,i);e=this._insertBeforeOrAppend(e,r)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let i=e;null!==i;i=i._nextRemoved)i===this._mapHead&&(this._mapHead=null),this._records.delete(i.key),i._nextRemoved=i._next,i.previousValue=i.currentValue,i.currentValue=null,i._prev=null,i._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,e){if(n){const i=n._prev;return e._next=n,e._prev=i,n._prev=e,i&&(i._next=e),n===this._mapHead&&(this._mapHead=e),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(n,e){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,e);const r=o._prev,s=o._next;return r&&(r._next=s),s&&(s._prev=r),o._next=null,o._prev=null,o}const i=new G3(n);return this._records.set(n,i),i.currentValue=e,this._addToAdditions(i),i}_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,e){Object.is(e,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=e,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,e){n instanceof Map?n.forEach(e):Object.keys(n).forEach(i=>e(n[i],i))}}class G3{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 OD(){return new Eo([new TD])}let Eo=(()=>{class t{constructor(e){this.factories=e}static create(e,i){if(null!=i){const o=i.factories.slice();e=e.concat(o)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||OD()),deps:[[t,new $a,new qo]]}}find(e){const i=this.factories.find(o=>o.supports(e));if(null!=i)return i;throw new Qe(901,"")}}return t.\u0275prov=Fe({token:t,providedIn:"root",factory:OD}),t})();function AD(){return new Uc([new ID])}let Uc=(()=>{class t{constructor(e){this.factories=e}static create(e,i){if(i){const o=i.factories.slice();e=e.concat(o)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||AD()),deps:[[t,new $a,new qo]]}}find(e){const i=this.factories.find(r=>r.supports(e));if(i)return i;throw new Qe(901,"")}}return t.\u0275prov=Fe({token:t,providedIn:"root",factory:AD}),t})();const K3=_D(null,"core",[{provide:Hc,useValue:"unknown"},{provide:vD,deps:[pn]},{provide:fD,deps:[]},{provide:dD,deps:[]}]);let Z3=(()=>{class t{constructor(e){}}return t.\u0275fac=function(e){return new(e||t)(Q(zu))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),Wu=null;function _r(){return Wu}const ht=new _e("DocumentToken");let oa=(()=>{class t{historyGo(e){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:function(){return function J3(){return Q(PD)}()},providedIn:"platform"}),t})();const eL=new _e("Location Initialized");let PD=(()=>{class t extends oa{constructor(e){super(),this._doc=e,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return _r().getBaseHref(this._doc)}onPopState(e){const i=_r().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",e,!1),()=>i.removeEventListener("popstate",e)}onHashChange(e){const i=_r().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",e,!1),()=>i.removeEventListener("hashchange",e)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(e){this.location.pathname=e}pushState(e,i,o){RD()?this._history.pushState(e,i,o):this.location.hash=o}replaceState(e,i,o){RD()?this._history.replaceState(e,i,o):this.location.hash=o}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:function(){return function tL(){return new PD(Q(ht))}()},providedIn:"platform"}),t})();function RD(){return!!window.history.pushState}function Ig(t,n){if(0==t.length)return n;if(0==n.length)return t;let e=0;return t.endsWith("/")&&e++,n.startsWith("/")&&e++,2==e?t+n.substring(1):1==e?t+n:t+"/"+n}function FD(t){const n=t.match(/#|\?|$/),e=n&&n.index||t.length;return t.slice(0,e-("/"===t[e-1]?1:0))+t.slice(e)}function jr(t){return t&&"?"!==t[0]?"?"+t:t}let bl=(()=>{class t{historyGo(e){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:function(){return function nL(t){const n=Q(ht).location;return new ND(Q(oa),n&&n.origin||"")}()},providedIn:"root"}),t})();const Og=new _e("appBaseHref");let ND=(()=>{class t extends bl{constructor(e,i){if(super(),this._platformLocation=e,this._removeListenerFns=[],null==i&&(i=this._platformLocation.getBaseHrefFromDOM()),null==i)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=i}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return Ig(this._baseHref,e)}path(e=!1){const i=this._platformLocation.pathname+jr(this._platformLocation.search),o=this._platformLocation.hash;return o&&e?`${i}${o}`:i}pushState(e,i,o,r){const s=this.prepareExternalUrl(o+jr(r));this._platformLocation.pushState(e,i,s)}replaceState(e,i,o,r){const s=this.prepareExternalUrl(o+jr(r));this._platformLocation.replaceState(e,i,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(e=0){var i,o;null===(o=(i=this._platformLocation).historyGo)||void 0===o||o.call(i,e)}}return t.\u0275fac=function(e){return new(e||t)(Q(oa),Q(Og,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),iL=(()=>{class t extends bl{constructor(e,i){super(),this._platformLocation=e,this._baseHref="",this._removeListenerFns=[],null!=i&&(this._baseHref=i)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}path(e=!1){let i=this._platformLocation.hash;return null==i&&(i="#"),i.length>0?i.substring(1):i}prepareExternalUrl(e){const i=Ig(this._baseHref,e);return i.length>0?"#"+i:i}pushState(e,i,o,r){let s=this.prepareExternalUrl(o+jr(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(e,i,s)}replaceState(e,i,o,r){let s=this.prepareExternalUrl(o+jr(r));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(e,i,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(e=0){var i,o;null===(o=(i=this._platformLocation).historyGo)||void 0===o||o.call(i,e)}}return t.\u0275fac=function(e){return new(e||t)(Q(oa),Q(Og,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),zc=(()=>{class t{constructor(e,i){this._subject=new Pe,this._urlChangeListeners=[],this._platformStrategy=e;const o=this._platformStrategy.getBaseHref();this._platformLocation=i,this._baseHref=FD(LD(o)),this._platformStrategy.onPopState(r=>{this._subject.emit({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}path(e=!1){return this.normalize(this._platformStrategy.path(e))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(e,i=""){return this.path()==this.normalize(e+jr(i))}normalize(e){return t.stripTrailingSlash(function rL(t,n){return t&&n.startsWith(t)?n.substring(t.length):n}(this._baseHref,LD(e)))}prepareExternalUrl(e){return e&&"/"!==e[0]&&(e="/"+e),this._platformStrategy.prepareExternalUrl(e)}go(e,i="",o=null){this._platformStrategy.pushState(o,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+jr(i)),o)}replaceState(e,i="",o=null){this._platformStrategy.replaceState(o,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+jr(i)),o)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(e=0){var i,o;null===(o=(i=this._platformStrategy).historyGo)||void 0===o||o.call(i,e)}onUrlChange(e){this._urlChangeListeners.push(e),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}))}_notifyUrlChangeListeners(e="",i){this._urlChangeListeners.forEach(o=>o(e,i))}subscribe(e,i,o){return this._subject.subscribe({next:e,error:i,complete:o})}}return t.normalizeQueryParams=jr,t.joinWithSlash=Ig,t.stripTrailingSlash=FD,t.\u0275fac=function(e){return new(e||t)(Q(bl),Q(oa))},t.\u0275prov=Fe({token:t,factory:function(){return function oL(){return new zc(Q(bl),Q(oa))}()},providedIn:"root"}),t})();function LD(t){return t.replace(/\/index.html$/,"")}function WD(t,n){n=encodeURIComponent(n);for(const e of t.split(";")){const i=e.indexOf("="),[o,r]=-1==i?[e,""]:[e.slice(0,i),e.slice(i+1)];if(o.trim()===n)return decodeURIComponent(r)}return null}let nr=(()=>{class t{constructor(e,i,o,r){this._iterableDiffers=e,this._keyValueDiffers=i,this._ngEl=o,this._renderer=r,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(e){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof e?e.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(e){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof e?e.split(/\s+/):e,this._rawClass&&(Sc(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const e=this._iterableDiffer.diff(this._rawClass);e&&this._applyIterableChanges(e)}else if(this._keyValueDiffer){const e=this._keyValueDiffer.diff(this._rawClass);e&&this._applyKeyValueChanges(e)}}_applyKeyValueChanges(e){e.forEachAddedItem(i=>this._toggleClass(i.key,i.currentValue)),e.forEachChangedItem(i=>this._toggleClass(i.key,i.currentValue)),e.forEachRemovedItem(i=>{i.previousValue&&this._toggleClass(i.key,!1)})}_applyIterableChanges(e){e.forEachAddedItem(i=>{if("string"!=typeof i.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${tn(i.item)}`);this._toggleClass(i.item,!0)}),e.forEachRemovedItem(i=>this._toggleClass(i.item,!1))}_applyClasses(e){e&&(Array.isArray(e)||e instanceof Set?e.forEach(i=>this._toggleClass(i,!0)):Object.keys(e).forEach(i=>this._toggleClass(i,!!e[i])))}_removeClasses(e){e&&(Array.isArray(e)||e instanceof Set?e.forEach(i=>this._toggleClass(i,!1)):Object.keys(e).forEach(i=>this._toggleClass(i,!1)))}_toggleClass(e,i){(e=e.trim())&&e.split(/\s+/g).forEach(o=>{i?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}}return t.\u0275fac=function(e){return new(e||t)(b(Eo),b(Uc),b(He),b(Lr))},t.\u0275dir=oe({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class zL{constructor(n,e,i,o){this.$implicit=n,this.ngForOf=e,this.index=i,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 si=(()=>{class t{constructor(e,i,o){this._viewContainer=e,this._template=i,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;!this._differ&&e&&(this._differ=this._differs.find(e).create(this.ngForTrackBy))}if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const i=this._viewContainer;e.forEachOperation((o,r,s)=>{if(null==o.previousIndex)i.createEmbeddedView(this._template,new zL(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)i.remove(null===r?void 0:r);else if(null!==r){const a=i.get(r);i.move(a,s),qD(a,o)}});for(let o=0,r=i.length;o{qD(i.get(o.currentIndex),o)})}static ngTemplateContextGuard(e,i){return!0}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn),b(Eo))},t.\u0275dir=oe({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();function qD(t,n){t.context.$implicit=n.item}let Et=(()=>{class t{constructor(e,i){this._viewContainer=e,this._context=new $L,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=i}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){KD("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){KD("ngIfElse",e),this._elseTemplateRef=e,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(e,i){return!0}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn))},t.\u0275dir=oe({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class $L{constructor(){this.$implicit=null,this.ngIf=null}}function KD(t,n){if(n&&!n.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${tn(n)}'.`)}class Hg{constructor(n,e){this._viewContainerRef=n,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(n){n&&!this._created?this.create():!n&&this._created&&this.destroy()}}let vl=(()=>{class t{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(e){this._ngSwitch=e,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(e){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(e)}_matchCase(e){const i=e==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||i,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),i}_updateDefaultCases(e){if(this._defaultViews&&e!==this._defaultUsed){this._defaultUsed=e;for(let i=0;i{class t{constructor(e,i,o){this.ngSwitch=o,o._addCase(),this._view=new Hg(e,i)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn),b(vl,9))},t.\u0275dir=oe({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),ZD=(()=>{class t{constructor(e,i,o){o._addDefault(new Hg(e,i))}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(rn),b(vl,9))},t.\u0275dir=oe({type:t,selectors:[["","ngSwitchDefault",""]]}),t})(),Ug=(()=>{class t{constructor(e,i,o){this._ngEl=e,this._differs=i,this._renderer=o,this._ngStyle=null,this._differ=null}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){const e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,i){const[o,r]=e.split(".");null!=(i=null!=i&&r?`${i}${r}`:i)?this._renderer.setStyle(this._ngEl.nativeElement,o,i):this._renderer.removeStyle(this._ngEl.nativeElement,o)}_applyChanges(e){e.forEachRemovedItem(i=>this._setStyle(i.key,null)),e.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),e.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Uc),b(Lr))},t.\u0275dir=oe({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})();function ir(t,n){return new Qe(2100,"")}class qL{createSubscription(n,e){return n.subscribe({next:e,error:i=>{throw i}})}dispose(n){n.unsubscribe()}onDestroy(n){n.unsubscribe()}}class KL{createSubscription(n,e){return n.then(e,i=>{throw i})}dispose(n){}onDestroy(n){}}const ZL=new KL,QL=new qL;let zg=(()=>{class t{constructor(e){this._ref=e,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(e){return this._obj?e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue:(e&&this._subscribe(e),this._latestValue)}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,i=>this._updateLatestValue(e,i))}_selectStrategy(e){if(xc(e))return ZL;if(a1(e))return QL;throw ir()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,i){e===this._obj&&(this._latestValue=i,this._ref.markForCheck())}}return t.\u0275fac=function(e){return new(e||t)(b(At,16))},t.\u0275pipe=zi({name:"async",type:t,pure:!1}),t})(),YD=(()=>{class t{transform(e){if(null==e)return null;if("string"!=typeof e)throw ir();return e.toUpperCase()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275pipe=zi({name:"uppercase",type:t,pure:!0}),t})(),XD=(()=>{class t{constructor(e){this.differs=e,this.keyValues=[],this.compareFn=JD}transform(e,i=JD){if(!e||!(e instanceof Map)&&"object"!=typeof e)return null;this.differ||(this.differ=this.differs.find(e).create());const o=this.differ.diff(e),r=i!==this.compareFn;return o&&(this.keyValues=[],o.forEachItem(s=>{this.keyValues.push(function a5(t,n){return{key:t,value:n}}(s.key,s.currentValue))})),(o||r)&&(this.keyValues.sort(i),this.compareFn=i),this.keyValues}}return t.\u0275fac=function(e){return new(e||t)(b(Uc,16))},t.\u0275pipe=zi({name:"keyvalue",type:t,pure:!1}),t})();function JD(t,n){const e=t.key,i=n.key;if(e===i)return 0;if(void 0===e)return 1;if(void 0===i)return-1;if(null===e)return 1;if(null===i)return-1;if("string"==typeof e&&"string"==typeof i)return e{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const eS="browser";let g5=(()=>{class t{}return t.\u0275prov=Fe({token:t,providedIn:"root",factory:()=>new _5(Q(ht),window)}),t})();class _5{constructor(n,e){this.document=n,this.window=e,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 e=function b5(t,n){const e=t.getElementById(n)||t.getElementsByName(n)[0];if(e)return e;if("function"==typeof t.createTreeWalker&&t.body&&(t.body.createShadowRoot||t.body.attachShadow)){const i=t.createTreeWalker(t.body,NodeFilter.SHOW_ELEMENT);let o=i.currentNode;for(;o;){const r=o.shadowRoot;if(r){const s=r.getElementById(n)||r.querySelector(`[name="${n}"]`);if(s)return s}o=i.nextNode()}}return null}(this.document,n);e&&(this.scrollToElement(e),e.focus())}setHistoryScrollRestoration(n){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=n)}}scrollToElement(n){const e=n.getBoundingClientRect(),i=e.left+this.window.pageXOffset,o=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(i-r[0],o-r[1])}supportScrollRestoration(){try{if(!this.supportsScrolling())return!1;const n=tS(this.window.history)||tS(Object.getPrototypeOf(this.window.history));return!(!n||!n.writable&&!n.set)}catch(n){return!1}}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch(n){return!1}}}function tS(t){return Object.getOwnPropertyDescriptor(t,"scrollRestoration")}class nS{}class Wg extends class v5 extends class X3{}{constructor(){super(...arguments),this.supportsDOMEvents=!0}}{static makeCurrent(){!function Y3(t){Wu||(Wu=t)}(new Wg)}onAndCancel(n,e,i){return n.addEventListener(e,i,!1),()=>{n.removeEventListener(e,i,!1)}}dispatchEvent(n,e){n.dispatchEvent(e)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,e){return(e=e||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,e){return"window"===e?window:"document"===e?n:"body"===e?n.body:null}getBaseHref(n){const e=function y5(){return Wc=Wc||document.querySelector("base"),Wc?Wc.getAttribute("href"):null}();return null==e?null:function C5(t){ih=ih||document.createElement("a"),ih.setAttribute("href",t);const n=ih.pathname;return"/"===n.charAt(0)?n:`/${n}`}(e)}resetBaseElement(){Wc=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return WD(document.cookie,n)}}let ih,Wc=null;const iS=new _e("TRANSITION_ID"),D5=[{provide:_g,useFactory:function w5(t,n,e){return()=>{e.get(bg).donePromise.then(()=>{const i=_r(),o=n.querySelectorAll(`style[ng-transition="${t}"]`);for(let r=0;r{const r=n.findTestabilityInTree(i,o);if(null==r)throw new Error("Could not find testability for element.");return r},on.getAllAngularTestabilities=()=>n.getAllTestabilities(),on.getAllAngularRootElements=()=>n.getAllRootElements(),on.frameworkStabilizers||(on.frameworkStabilizers=[]),on.frameworkStabilizers.push(i=>{const o=on.getAllAngularTestabilities();let r=o.length,s=!1;const a=function(l){s=s||l,r--,0==r&&i(s)};o.forEach(function(l){l.whenStable(a)})})}findTestabilityInTree(n,e,i){if(null==e)return null;const o=n.getTestability(e);return null!=o?o:i?_r().isShadowRoot(e)?this.findTestabilityInTree(n,e.host,!0):this.findTestabilityInTree(n,e.parentElement,!0):null}}let S5=(()=>{class t{build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const oh=new _e("EventManagerPlugins");let rh=(()=>{class t{constructor(e,i){this._zone=i,this._eventNameToPlugin=new Map,e.forEach(o=>o.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,i,o){return this._findPluginFor(i).addEventListener(e,i,o)}addGlobalEventListener(e,i,o){return this._findPluginFor(i).addGlobalEventListener(e,i,o)}getZone(){return this._zone}_findPluginFor(e){const i=this._eventNameToPlugin.get(e);if(i)return i;const o=this._plugins;for(let r=0;r{class t{constructor(){this._stylesSet=new Set}addStyles(e){const i=new Set;e.forEach(o=>{this._stylesSet.has(o)||(this._stylesSet.add(o),i.add(o))}),this.onStylesAdded(i)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),qc=(()=>{class t extends rS{constructor(e){super(),this._doc=e,this._hostNodes=new Map,this._hostNodes.set(e.head,[])}_addStylesToHost(e,i,o){e.forEach(r=>{const s=this._doc.createElement("style");s.textContent=r,o.push(i.appendChild(s))})}addHost(e){const i=[];this._addStylesToHost(this._stylesSet,e,i),this._hostNodes.set(e,i)}removeHost(e){const i=this._hostNodes.get(e);i&&i.forEach(sS),this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach((i,o)=>{this._addStylesToHost(e,o,i)})}ngOnDestroy(){this._hostNodes.forEach(e=>e.forEach(sS))}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();function sS(t){_r().remove(t)}const Kg={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/"},Zg=/%COMP%/g;function sh(t,n,e){for(let i=0;i{if("__ngUnwrap__"===n)return t;!1===t(n)&&(n.preventDefault(),n.returnValue=!1)}}let ah=(()=>{class t{constructor(e,i,o){this.eventManager=e,this.sharedStylesHost=i,this.appId=o,this.rendererByCompId=new Map,this.defaultRenderer=new Qg(e)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;switch(i.encapsulation){case zo.Emulated:{let o=this.rendererByCompId.get(i.id);return o||(o=new I5(this.eventManager,this.sharedStylesHost,i,this.appId),this.rendererByCompId.set(i.id,o)),o.applyToHost(e),o}case 1:case zo.ShadowDom:return new O5(this.eventManager,this.sharedStylesHost,e,i);default:if(!this.rendererByCompId.has(i.id)){const o=sh(i.id,i.styles,[]);this.sharedStylesHost.addStyles(o),this.rendererByCompId.set(i.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Q(rh),Q(qc),Q(jc))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();class Qg{constructor(n){this.eventManager=n,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(n,e){return e?document.createElementNS(Kg[e]||e,n):document.createElement(n)}createComment(n){return document.createComment(n)}createText(n){return document.createTextNode(n)}appendChild(n,e){n.appendChild(e)}insertBefore(n,e,i){n&&n.insertBefore(e,i)}removeChild(n,e){n&&n.removeChild(e)}selectRootElement(n,e){let i="string"==typeof n?document.querySelector(n):n;if(!i)throw new Error(`The selector "${n}" did not match any elements`);return e||(i.textContent=""),i}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,e,i,o){if(o){e=o+":"+e;const r=Kg[o];r?n.setAttributeNS(r,e,i):n.setAttribute(e,i)}else n.setAttribute(e,i)}removeAttribute(n,e,i){if(i){const o=Kg[i];o?n.removeAttributeNS(o,e):n.removeAttribute(`${i}:${e}`)}else n.removeAttribute(e)}addClass(n,e){n.classList.add(e)}removeClass(n,e){n.classList.remove(e)}setStyle(n,e,i,o){o&(lo.DashCase|lo.Important)?n.style.setProperty(e,i,o&lo.Important?"important":""):n.style[e]=i}removeStyle(n,e,i){i&lo.DashCase?n.style.removeProperty(e):n.style[e]=""}setProperty(n,e,i){n[e]=i}setValue(n,e){n.nodeValue=e}listen(n,e,i){return"string"==typeof n?this.eventManager.addGlobalEventListener(n,e,cS(i)):this.eventManager.addEventListener(n,e,cS(i))}}class I5 extends Qg{constructor(n,e,i,o){super(n),this.component=i;const r=sh(o+"-"+i.id,i.styles,[]);e.addStyles(r),this.contentAttr=function T5(t){return"_ngcontent-%COMP%".replace(Zg,t)}(o+"-"+i.id),this.hostAttr=function k5(t){return"_nghost-%COMP%".replace(Zg,t)}(o+"-"+i.id)}applyToHost(n){super.setAttribute(n,this.hostAttr,"")}createElement(n,e){const i=super.createElement(n,e);return super.setAttribute(i,this.contentAttr,""),i}}class O5 extends Qg{constructor(n,e,i,o){super(n),this.sharedStylesHost=e,this.hostEl=i,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=sh(o.id,o.styles,[]);for(let s=0;s{class t extends oS{constructor(e){super(e)}supports(e){return!0}addEventListener(e,i,o){return e.addEventListener(i,o,!1),()=>this.removeEventListener(e,i,o)}removeEventListener(e,i,o){return e.removeEventListener(i,o)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const uS=["alt","control","meta","shift"],R5={"\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"},hS={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},F5={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let N5=(()=>{class t extends oS{constructor(e){super(e)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,i,o){const r=t.parseEventName(i),s=t.eventCallback(r.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>_r().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const i=e.toLowerCase().split("."),o=i.shift();if(0===i.length||"keydown"!==o&&"keyup"!==o)return null;const r=t._normalizeKey(i.pop());let s="";if(uS.forEach(l=>{const u=i.indexOf(l);u>-1&&(i.splice(u,1),s+=l+".")}),s+=r,0!=i.length||0===r.length)return null;const a={};return a.domEventName=o,a.fullKey=s,a}static getEventFullKey(e){let i="",o=function L5(t){let n=t.key;if(null==n){if(n=t.keyIdentifier,null==n)return"Unidentified";n.startsWith("U+")&&(n=String.fromCharCode(parseInt(n.substring(2),16)),3===t.location&&hS.hasOwnProperty(n)&&(n=hS[n]))}return R5[n]||n}(e);return o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),uS.forEach(r=>{r!=o&&F5[r](e)&&(i+=r+".")}),i+=o,i}static eventCallback(e,i,o){return r=>{t.getEventFullKey(r)===e&&o.runGuarded(()=>i(r))}}static _normalizeKey(e){return"esc"===e?"escape":e}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const H5=_D(K3,"browser",[{provide:Hc,useValue:eS},{provide:lD,useValue:function B5(){Wg.makeCurrent(),qg.init()},multi:!0},{provide:ht,useFactory:function j5(){return function fO(t){bf=t}(document),document},deps:[]}]),U5=[{provide:Am,useValue:"root"},{provide:ps,useFactory:function V5(){return new ps},deps:[]},{provide:oh,useClass:A5,multi:!0,deps:[ht,Je,Hc]},{provide:oh,useClass:N5,multi:!0,deps:[ht]},{provide:ah,useClass:ah,deps:[rh,qc,jc]},{provide:Rc,useExisting:ah},{provide:rS,useExisting:qc},{provide:qc,useClass:qc,deps:[ht]},{provide:Dg,useClass:Dg,deps:[Je]},{provide:rh,useClass:rh,deps:[oh,Je]},{provide:nS,useClass:S5,deps:[]}];let pS=(()=>{class t{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:jc,useValue:e.appId},{provide:iS,useExisting:jc},D5]}}}return t.\u0275fac=function(e){return new(e||t)(Q(t,12))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:U5,imports:[qi,Z3]}),t})();"undefined"!=typeof window&&window;let Xg=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:function(e){let i=null;return i=e?new(e||t):Q(gS),i},providedIn:"root"}),t})(),gS=(()=>{class t extends Xg{constructor(e){super(),this._doc=e}sanitize(e,i){if(null==i)return null;switch(e){case Yt.NONE:return i;case Yt.HTML:return dr(i,"HTML")?ao(i):dC(this._doc,String(i)).toString();case Yt.STYLE:return dr(i,"Style")?ao(i):i;case Yt.SCRIPT:if(dr(i,"Script"))return ao(i);throw new Error("unsafe value used in a script context");case Yt.URL:return nC(i),dr(i,"URL")?ao(i):mc(String(i));case Yt.RESOURCE_URL:if(dr(i,"ResourceURL"))return ao(i);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${e} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(e){return function T2(t){return new w2(t)}(e)}bypassSecurityTrustStyle(e){return function k2(t){return new D2(t)}(e)}bypassSecurityTrustScript(e){return function E2(t){return new S2(t)}(e)}bypassSecurityTrustUrl(e){return function I2(t){return new M2(t)}(e)}bypassSecurityTrustResourceUrl(e){return function O2(t){return new x2(t)}(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:function(e){let i=null;return i=e?new e:function X5(t){return new gS(t.get(ht))}(Q(pn)),i},providedIn:"root"}),t})();class _S{}const Ur="*";function Ao(t,n){return{type:7,name:t,definitions:n,options:{}}}function ai(t,n=null){return{type:4,styles:n,timings:t}}function bS(t,n=null){return{type:3,steps:t,options:n}}function vS(t,n=null){return{type:2,steps:t,options:n}}function Vt(t){return{type:6,styles:t,offset:null}}function jn(t,n,e){return{type:0,name:t,styles:n,options:e}}function Kn(t,n,e=null){return{type:1,expr:t,animation:n,options:e}}function Jg(t=null){return{type:9,options:t}}function e_(t,n,e=null){return{type:11,selector:t,animation:n,options:e}}function yS(t){Promise.resolve(null).then(t)}class Kc{constructor(n=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=n+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}onStart(n){this._onStartFns.push(n)}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){yS(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(n=>n()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this._started=!1}setPosition(n){this._position=this.totalTime?n*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(n){const e="start"==n?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}}class CS{constructor(n){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=n;let e=0,i=0,o=0;const r=this.players.length;0==r?yS(()=>this._onFinish()):this.players.forEach(s=>{s.onDone(()=>{++e==r&&this._onFinish()}),s.onDestroy(()=>{++i==r&&this._onDestroy()}),s.onStart(()=>{++o==r&&this._onStart()})}),this.totalTime=this.players.reduce((s,a)=>Math.max(s,a.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this.players.forEach(n=>n.init())}onStart(n){this._onStartFns.push(n)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(n=>n()),this._onStartFns=[])}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(n=>n.play())}pause(){this.players.forEach(n=>n.pause())}restart(){this.players.forEach(n=>n.restart())}finish(){this._onFinish(),this.players.forEach(n=>n.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(n=>n.destroy()),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this.players.forEach(n=>n.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(n){const e=n*this.totalTime;this.players.forEach(i=>{const o=i.totalTime?Math.min(1,e/i.totalTime):1;i.setPosition(o)})}getPosition(){const n=this.players.reduce((e,i)=>null===e||i.totalTime>e.totalTime?i:e,null);return null!=n?n.getPosition():0}beforeDestroy(){this.players.forEach(n=>{n.beforeDestroy&&n.beforeDestroy()})}triggerCallback(n){const e="start"==n?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}}const jt=!1;function wS(t){return new Qe(3e3,jt)}function F4(){return"undefined"!=typeof window&&void 0!==window.document}function n_(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function Cs(t){switch(t.length){case 0:return new Kc;case 1:return t[0];default:return new CS(t)}}function DS(t,n,e,i,o={},r={}){const s=[],a=[];let l=-1,u=null;if(i.forEach(p=>{const g=p.offset,v=g==l,C=v&&u||{};Object.keys(p).forEach(M=>{let V=M,K=p[M];if("offset"!==M)switch(V=n.normalizePropertyName(V,s),K){case"!":K=o[M];break;case Ur:K=r[M];break;default:K=n.normalizeStyleValue(M,V,K,s)}C[V]=K}),v||a.push(C),u=C,l=g}),s.length)throw function S4(t){return new Qe(3502,jt)}();return a}function i_(t,n,e,i){switch(n){case"start":t.onStart(()=>i(e&&o_(e,"start",t)));break;case"done":t.onDone(()=>i(e&&o_(e,"done",t)));break;case"destroy":t.onDestroy(()=>i(e&&o_(e,"destroy",t)))}}function o_(t,n,e){const i=e.totalTime,r=r_(t.element,t.triggerName,t.fromState,t.toState,n||t.phaseName,null==i?t.totalTime:i,!!e.disabled),s=t._data;return null!=s&&(r._data=s),r}function r_(t,n,e,i,o="",r=0,s){return{element:t,triggerName:n,fromState:e,toState:i,phaseName:o,totalTime:r,disabled:!!s}}function uo(t,n,e){let i;return t instanceof Map?(i=t.get(n),i||t.set(n,i=e)):(i=t[n],i||(i=t[n]=e)),i}function SS(t){const n=t.indexOf(":");return[t.substring(1,n),t.substr(n+1)]}let s_=(t,n)=>!1,MS=(t,n,e)=>[],xS=null;function a_(t){const n=t.parentNode||t.host;return n===xS?null:n}(n_()||"undefined"!=typeof Element)&&(F4()?(xS=(()=>document.documentElement)(),s_=(t,n)=>{for(;n;){if(n===t)return!0;n=a_(n)}return!1}):s_=(t,n)=>t.contains(n),MS=(t,n,e)=>{if(e)return Array.from(t.querySelectorAll(n));const i=t.querySelector(n);return i?[i]:[]});let ra=null,TS=!1;function kS(t){ra||(ra=function L4(){return"undefined"!=typeof document?document.body:null}()||{},TS=!!ra.style&&"WebkitAppearance"in ra.style);let n=!0;return ra.style&&!function N4(t){return"ebkit"==t.substring(1,6)}(t)&&(n=t in ra.style,!n&&TS&&(n="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in ra.style)),n}const ES=s_,IS=MS;let OS=(()=>{class t{validateStyleProperty(e){return kS(e)}matchesElement(e,i){return!1}containsElement(e,i){return ES(e,i)}getParentElement(e){return a_(e)}query(e,i,o){return IS(e,i,o)}computeStyle(e,i,o){return o||""}animate(e,i,o,r,s,a=[],l){return new Kc(o,r)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),l_=(()=>{class t{}return t.NOOP=new OS,t})();const c_="ng-enter",ch="ng-leave",dh="ng-trigger",uh=".ng-trigger",PS="ng-animating",d_=".ng-animating";function sa(t){if("number"==typeof t)return t;const n=t.match(/^(-?[\.\d]+)(m?s)/);return!n||n.length<2?0:u_(parseFloat(n[1]),n[2])}function u_(t,n){return"s"===n?1e3*t:t}function hh(t,n,e){return t.hasOwnProperty("duration")?t:function j4(t,n,e){let o,r=0,s="";if("string"==typeof t){const a=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===a)return n.push(wS()),{duration:0,delay:0,easing:""};o=u_(parseFloat(a[1]),a[2]);const l=a[3];null!=l&&(r=u_(parseFloat(l),a[4]));const u=a[5];u&&(s=u)}else o=t;if(!e){let a=!1,l=n.length;o<0&&(n.push(function t4(){return new Qe(3100,jt)}()),a=!0),r<0&&(n.push(function n4(){return new Qe(3101,jt)}()),a=!0),a&&n.splice(l,0,wS())}return{duration:o,delay:r,easing:s}}(t,n,e)}function yl(t,n={}){return Object.keys(t).forEach(e=>{n[e]=t[e]}),n}function ws(t,n,e={}){if(n)for(let i in t)e[i]=t[i];else yl(t,e);return e}function FS(t,n,e){return e?n+":"+e+";":""}function NS(t){let n="";for(let e=0;e{const o=p_(i);e&&!e.hasOwnProperty(i)&&(e[i]=t.style[o]),t.style[o]=n[i]}),n_()&&NS(t))}function aa(t,n){t.style&&(Object.keys(n).forEach(e=>{const i=p_(e);t.style[i]=""}),n_()&&NS(t))}function Zc(t){return Array.isArray(t)?1==t.length?t[0]:vS(t):t}const h_=new RegExp("{{\\s*(.+?)\\s*}}","g");function LS(t){let n=[];if("string"==typeof t){let e;for(;e=h_.exec(t);)n.push(e[1]);h_.lastIndex=0}return n}function ph(t,n,e){const i=t.toString(),o=i.replace(h_,(r,s)=>{let a=n[s];return n.hasOwnProperty(s)||(e.push(function r4(t){return new Qe(3003,jt)}()),a=""),a.toString()});return o==i?t:o}function fh(t){const n=[];let e=t.next();for(;!e.done;)n.push(e.value),e=t.next();return n}const U4=/-+([a-z0-9])/g;function p_(t){return t.replace(U4,(...n)=>n[1].toUpperCase())}function z4(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ho(t,n,e){switch(n.type){case 7:return t.visitTrigger(n,e);case 0:return t.visitState(n,e);case 1:return t.visitTransition(n,e);case 2:return t.visitSequence(n,e);case 3:return t.visitGroup(n,e);case 4:return t.visitAnimate(n,e);case 5:return t.visitKeyframes(n,e);case 6:return t.visitStyle(n,e);case 8:return t.visitReference(n,e);case 9:return t.visitAnimateChild(n,e);case 10:return t.visitAnimateRef(n,e);case 11:return t.visitQuery(n,e);case 12:return t.visitStagger(n,e);default:throw function s4(t){return new Qe(3004,jt)}()}}function BS(t,n){return window.getComputedStyle(t)[n]}function Z4(t,n){const e=[];return"string"==typeof t?t.split(/\s*,\s*/).forEach(i=>function Q4(t,n,e){if(":"==t[0]){const l=function Y4(t,n){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(e,i)=>parseFloat(i)>parseFloat(e);case":decrement":return(e,i)=>parseFloat(i) *"}}(t,e);if("function"==typeof l)return void n.push(l);t=l}const i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==i||i.length<4)return e.push(function v4(t){return new Qe(3015,jt)}()),n;const o=i[1],r=i[2],s=i[3];n.push(VS(o,s));"<"==r[0]&&!("*"==o&&"*"==s)&&n.push(VS(s,o))}(i,e,n)):e.push(t),e}const bh=new Set(["true","1"]),vh=new Set(["false","0"]);function VS(t,n){const e=bh.has(t)||vh.has(t),i=bh.has(n)||vh.has(n);return(o,r)=>{let s="*"==t||t==o,a="*"==n||n==r;return!s&&e&&"boolean"==typeof o&&(s=o?bh.has(t):vh.has(t)),!a&&i&&"boolean"==typeof r&&(a=r?bh.has(n):vh.has(n)),s&&a}}const X4=new RegExp("s*:selfs*,?","g");function f_(t,n,e,i){return new J4(t).build(n,e,i)}class J4{constructor(n){this._driver=n}build(n,e,i){const o=new nB(e);this._resetContextStyleTimingState(o);const r=ho(this,Zc(n),o);return o.unsupportedCSSPropertiesFound.size&&o.unsupportedCSSPropertiesFound.keys(),r}_resetContextStyleTimingState(n){n.currentQuerySelector="",n.collectedStyles={},n.collectedStyles[""]={},n.currentTime=0}visitTrigger(n,e){let i=e.queryCount=0,o=e.depCount=0;const r=[],s=[];return"@"==n.name.charAt(0)&&e.errors.push(function l4(){return new Qe(3006,jt)}()),n.definitions.forEach(a=>{if(this._resetContextStyleTimingState(e),0==a.type){const l=a,u=l.name;u.toString().split(/\s*,\s*/).forEach(p=>{l.name=p,r.push(this.visitState(l,e))}),l.name=u}else if(1==a.type){const l=this.visitTransition(a,e);i+=l.queryCount,o+=l.depCount,s.push(l)}else e.errors.push(function c4(){return new Qe(3007,jt)}())}),{type:7,name:n.name,states:r,transitions:s,queryCount:i,depCount:o,options:null}}visitState(n,e){const i=this.visitStyle(n.styles,e),o=n.options&&n.options.params||null;if(i.containsDynamicStyles){const r=new Set,s=o||{};i.styles.forEach(a=>{if(yh(a)){const l=a;Object.keys(l).forEach(u=>{LS(l[u]).forEach(p=>{s.hasOwnProperty(p)||r.add(p)})})}}),r.size&&(fh(r.values()),e.errors.push(function d4(t,n){return new Qe(3008,jt)}()))}return{type:0,name:n.name,style:i,options:o?{params:o}:null}}visitTransition(n,e){e.queryCount=0,e.depCount=0;const i=ho(this,Zc(n.animation),e);return{type:1,matchers:Z4(n.expr,e.errors),animation:i,queryCount:e.queryCount,depCount:e.depCount,options:la(n.options)}}visitSequence(n,e){return{type:2,steps:n.steps.map(i=>ho(this,i,e)),options:la(n.options)}}visitGroup(n,e){const i=e.currentTime;let o=0;const r=n.steps.map(s=>{e.currentTime=i;const a=ho(this,s,e);return o=Math.max(o,e.currentTime),a});return e.currentTime=o,{type:3,steps:r,options:la(n.options)}}visitAnimate(n,e){const i=function oB(t,n){let e=null;if(t.hasOwnProperty("duration"))e=t;else if("number"==typeof t)return m_(hh(t,n).duration,0,"");const i=t;if(i.split(/\s+/).some(r=>"{"==r.charAt(0)&&"{"==r.charAt(1))){const r=m_(0,0,"");return r.dynamic=!0,r.strValue=i,r}return e=e||hh(i,n),m_(e.duration,e.delay,e.easing)}(n.timings,e.errors);e.currentAnimateTimings=i;let o,r=n.styles?n.styles:Vt({});if(5==r.type)o=this.visitKeyframes(r,e);else{let s=n.styles,a=!1;if(!s){a=!0;const u={};i.easing&&(u.easing=i.easing),s=Vt(u)}e.currentTime+=i.duration+i.delay;const l=this.visitStyle(s,e);l.isEmptyStep=a,o=l}return e.currentAnimateTimings=null,{type:4,timings:i,style:o,options:null}}visitStyle(n,e){const i=this._makeStyleAst(n,e);return this._validateStyleAst(i,e),i}_makeStyleAst(n,e){const i=[];Array.isArray(n.styles)?n.styles.forEach(s=>{"string"==typeof s?s==Ur?i.push(s):e.errors.push(function u4(t){return new Qe(3002,jt)}()):i.push(s)}):i.push(n.styles);let o=!1,r=null;return i.forEach(s=>{if(yh(s)){const a=s,l=a.easing;if(l&&(r=l,delete a.easing),!o)for(let u in a)if(a[u].toString().indexOf("{{")>=0){o=!0;break}}}),{type:6,styles:i,easing:r,offset:n.offset,containsDynamicStyles:o,options:null}}_validateStyleAst(n,e){const i=e.currentAnimateTimings;let o=e.currentTime,r=e.currentTime;i&&r>0&&(r-=i.duration+i.delay),n.styles.forEach(s=>{"string"!=typeof s&&Object.keys(s).forEach(a=>{if(!this._driver.validateStyleProperty(a))return delete s[a],void e.unsupportedCSSPropertiesFound.add(a);const l=e.collectedStyles[e.currentQuerySelector],u=l[a];let p=!0;u&&(r!=o&&r>=u.startTime&&o<=u.endTime&&(e.errors.push(function h4(t,n,e,i,o){return new Qe(3010,jt)}()),p=!1),r=u.startTime),p&&(l[a]={startTime:r,endTime:o}),e.options&&function H4(t,n,e){const i=n.params||{},o=LS(t);o.length&&o.forEach(r=>{i.hasOwnProperty(r)||e.push(function o4(t){return new Qe(3001,jt)}())})}(s[a],e.options,e.errors)})})}visitKeyframes(n,e){const i={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push(function p4(){return new Qe(3011,jt)}()),i;let r=0;const s=[];let a=!1,l=!1,u=0;const p=n.steps.map(Y=>{const ee=this._makeStyleAst(Y,e);let ke=null!=ee.offset?ee.offset:function iB(t){if("string"==typeof t)return null;let n=null;if(Array.isArray(t))t.forEach(e=>{if(yh(e)&&e.hasOwnProperty("offset")){const i=e;n=parseFloat(i.offset),delete i.offset}});else if(yh(t)&&t.hasOwnProperty("offset")){const e=t;n=parseFloat(e.offset),delete e.offset}return n}(ee.styles),Ze=0;return null!=ke&&(r++,Ze=ee.offset=ke),l=l||Ze<0||Ze>1,a=a||Ze0&&r{const ke=v>0?ee==C?1:v*ee:s[ee],Ze=ke*K;e.currentTime=M+V.delay+Ze,V.duration=Ze,this._validateStyleAst(Y,e),Y.offset=ke,i.styles.push(Y)}),i}visitReference(n,e){return{type:8,animation:ho(this,Zc(n.animation),e),options:la(n.options)}}visitAnimateChild(n,e){return e.depCount++,{type:9,options:la(n.options)}}visitAnimateRef(n,e){return{type:10,animation:this.visitReference(n.animation,e),options:la(n.options)}}visitQuery(n,e){const i=e.currentQuerySelector,o=n.options||{};e.queryCount++,e.currentQuery=n;const[r,s]=function eB(t){const n=!!t.split(/\s*,\s*/).find(e=>":self"==e);return n&&(t=t.replace(X4,"")),t=t.replace(/@\*/g,uh).replace(/@\w+/g,e=>uh+"-"+e.substr(1)).replace(/:animating/g,d_),[t,n]}(n.selector);e.currentQuerySelector=i.length?i+" "+r:r,uo(e.collectedStyles,e.currentQuerySelector,{});const a=ho(this,Zc(n.animation),e);return e.currentQuery=null,e.currentQuerySelector=i,{type:11,selector:r,limit:o.limit||0,optional:!!o.optional,includeSelf:s,animation:a,originalSelector:n.selector,options:la(n.options)}}visitStagger(n,e){e.currentQuery||e.errors.push(function _4(){return new Qe(3013,jt)}());const i="full"===n.timings?{duration:0,delay:0,easing:"full"}:hh(n.timings,e.errors,!0);return{type:12,animation:ho(this,Zc(n.animation),e),timings:i,options:null}}}class nB{constructor(n){this.errors=n,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null,this.unsupportedCSSPropertiesFound=new Set}}function yh(t){return!Array.isArray(t)&&"object"==typeof t}function la(t){return t?(t=yl(t)).params&&(t.params=function tB(t){return t?yl(t):null}(t.params)):t={},t}function m_(t,n,e){return{duration:t,delay:n,easing:e}}function g_(t,n,e,i,o,r,s=null,a=!1){return{type:1,element:t,keyframes:n,preStyleProps:e,postStyleProps:i,duration:o,delay:r,totalTime:o+r,easing:s,subTimeline:a}}class Ch{constructor(){this._map=new Map}get(n){return this._map.get(n)||[]}append(n,e){let i=this._map.get(n);i||this._map.set(n,i=[]),i.push(...e)}has(n){return this._map.has(n)}clear(){this._map.clear()}}const aB=new RegExp(":enter","g"),cB=new RegExp(":leave","g");function __(t,n,e,i,o,r={},s={},a,l,u=[]){return(new dB).buildKeyframes(t,n,e,i,o,r,s,a,l,u)}class dB{buildKeyframes(n,e,i,o,r,s,a,l,u,p=[]){u=u||new Ch;const g=new b_(n,e,u,o,r,p,[]);g.options=l,g.currentTimeline.setStyles([s],null,g.errors,l),ho(this,i,g);const v=g.timelines.filter(C=>C.containsAnimation());if(Object.keys(a).length){let C;for(let M=v.length-1;M>=0;M--){const V=v[M];if(V.element===e){C=V;break}}C&&!C.allowOnlyTimelineStyles()&&C.setStyles([a],null,g.errors,l)}return v.length?v.map(C=>C.buildKeyframes()):[g_(e,[],[],[],0,0,"",!1)]}visitTrigger(n,e){}visitState(n,e){}visitTransition(n,e){}visitAnimateChild(n,e){const i=e.subInstructions.get(e.element);if(i){const o=e.createSubContext(n.options),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(i,o,o.options);r!=s&&e.transformIntoNewTimeline(s)}e.previousNode=n}visitAnimateRef(n,e){const i=e.createSubContext(n.options);i.transformIntoNewTimeline(),this.visitReference(n.animation,i),e.transformIntoNewTimeline(i.currentTimeline.currentTime),e.previousNode=n}_visitSubInstructions(n,e,i){let r=e.currentTimeline.currentTime;const s=null!=i.duration?sa(i.duration):null,a=null!=i.delay?sa(i.delay):null;return 0!==s&&n.forEach(l=>{const u=e.appendInstructionToTimeline(l,s,a);r=Math.max(r,u.duration+u.delay)}),r}visitReference(n,e){e.updateOptions(n.options,!0),ho(this,n.animation,e),e.previousNode=n}visitSequence(n,e){const i=e.subContextCount;let o=e;const r=n.options;if(r&&(r.params||r.delay)&&(o=e.createSubContext(r),o.transformIntoNewTimeline(),null!=r.delay)){6==o.previousNode.type&&(o.currentTimeline.snapshotCurrentStyles(),o.previousNode=wh);const s=sa(r.delay);o.delayNextStep(s)}n.steps.length&&(n.steps.forEach(s=>ho(this,s,o)),o.currentTimeline.applyStylesToKeyframe(),o.subContextCount>i&&o.transformIntoNewTimeline()),e.previousNode=n}visitGroup(n,e){const i=[];let o=e.currentTimeline.currentTime;const r=n.options&&n.options.delay?sa(n.options.delay):0;n.steps.forEach(s=>{const a=e.createSubContext(n.options);r&&a.delayNextStep(r),ho(this,s,a),o=Math.max(o,a.currentTimeline.currentTime),i.push(a.currentTimeline)}),i.forEach(s=>e.currentTimeline.mergeTimelineCollectedStyles(s)),e.transformIntoNewTimeline(o),e.previousNode=n}_visitTiming(n,e){if(n.dynamic){const i=n.strValue;return hh(e.params?ph(i,e.params,e.errors):i,e.errors)}return{duration:n.duration,delay:n.delay,easing:n.easing}}visitAnimate(n,e){const i=e.currentAnimateTimings=this._visitTiming(n.timings,e),o=e.currentTimeline;i.delay&&(e.incrementTime(i.delay),o.snapshotCurrentStyles());const r=n.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(i.duration),this.visitStyle(r,e),o.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=n}visitStyle(n,e){const i=e.currentTimeline,o=e.currentAnimateTimings;!o&&i.getCurrentStyleProperties().length&&i.forwardFrame();const r=o&&o.easing||n.easing;n.isEmptyStep?i.applyEmptyStep(r):i.setStyles(n.styles,r,e.errors,e.options),e.previousNode=n}visitKeyframes(n,e){const i=e.currentAnimateTimings,o=e.currentTimeline.duration,r=i.duration,a=e.createSubContext().currentTimeline;a.easing=i.easing,n.styles.forEach(l=>{a.forwardTime((l.offset||0)*r),a.setStyles(l.styles,l.easing,e.errors,e.options),a.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(a),e.transformIntoNewTimeline(o+r),e.previousNode=n}visitQuery(n,e){const i=e.currentTimeline.currentTime,o=n.options||{},r=o.delay?sa(o.delay):0;r&&(6===e.previousNode.type||0==i&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=wh);let s=i;const a=e.invokeQuery(n.selector,n.originalSelector,n.limit,n.includeSelf,!!o.optional,e.errors);e.currentQueryTotal=a.length;let l=null;a.forEach((u,p)=>{e.currentQueryIndex=p;const g=e.createSubContext(n.options,u);r&&g.delayNextStep(r),u===e.element&&(l=g.currentTimeline),ho(this,n.animation,g),g.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,g.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),l&&(e.currentTimeline.mergeTimelineCollectedStyles(l),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=n}visitStagger(n,e){const i=e.parentContext,o=e.currentTimeline,r=n.timings,s=Math.abs(r.duration),a=s*(e.currentQueryTotal-1);let l=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":l=a-l;break;case"full":l=i.currentStaggerTime}const p=e.currentTimeline;l&&p.delayNextStep(l);const g=p.currentTime;ho(this,n.animation,e),e.previousNode=n,i.currentStaggerTime=o.currentTime-g+(o.startTime-i.currentTimeline.startTime)}}const wh={};class b_{constructor(n,e,i,o,r,s,a,l){this._driver=n,this.element=e,this.subInstructions=i,this._enterClassName=o,this._leaveClassName=r,this.errors=s,this.timelines=a,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=wh,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=l||new Dh(this._driver,e,0),a.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(n,e){if(!n)return;const i=n;let o=this.options;null!=i.duration&&(o.duration=sa(i.duration)),null!=i.delay&&(o.delay=sa(i.delay));const r=i.params;if(r){let s=o.params;s||(s=this.options.params={}),Object.keys(r).forEach(a=>{(!e||!s.hasOwnProperty(a))&&(s[a]=ph(r[a],s,this.errors))})}}_copyOptions(){const n={};if(this.options){const e=this.options.params;if(e){const i=n.params={};Object.keys(e).forEach(o=>{i[o]=e[o]})}}return n}createSubContext(n=null,e,i){const o=e||this.element,r=new b_(this._driver,o,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(o,i||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(n),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(n){return this.previousNode=wh,this.currentTimeline=this.currentTimeline.fork(this.element,n),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(n,e,i){const o={duration:null!=e?e:n.duration,delay:this.currentTimeline.currentTime+(null!=i?i:0)+n.delay,easing:""},r=new uB(this._driver,n.element,n.keyframes,n.preStyleProps,n.postStyleProps,o,n.stretchStartingKeyframe);return this.timelines.push(r),o}incrementTime(n){this.currentTimeline.forwardTime(this.currentTimeline.duration+n)}delayNextStep(n){n>0&&this.currentTimeline.delayNextStep(n)}invokeQuery(n,e,i,o,r,s){let a=[];if(o&&a.push(this.element),n.length>0){n=(n=n.replace(aB,"."+this._enterClassName)).replace(cB,"."+this._leaveClassName);let u=this._driver.query(this.element,n,1!=i);0!==i&&(u=i<0?u.slice(u.length+i,u.length):u.slice(0,i)),a.push(...u)}return!r&&0==a.length&&s.push(function b4(t){return new Qe(3014,jt)}()),a}}class Dh{constructor(n,e,i,o){this._driver=n,this.element=e,this.startTime=i,this._elementTimelineStylesLookup=o,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(n){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+n),e&&this.snapshotCurrentStyles()):this.startTime+=n}fork(n,e){return this.applyStylesToKeyframe(),new Dh(this._driver,n,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(n){this.applyStylesToKeyframe(),this.duration=n,this._loadKeyframe()}_updateStyle(n,e){this._localTimelineStyles[n]=e,this._globalTimelineStyles[n]=e,this._styleSummary[n]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(n){n&&(this._previousKeyframe.easing=n),Object.keys(this._globalTimelineStyles).forEach(e=>{this._backFill[e]=this._globalTimelineStyles[e]||Ur,this._currentKeyframe[e]=Ur}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(n,e,i,o){e&&(this._previousKeyframe.easing=e);const r=o&&o.params||{},s=function hB(t,n){const e={};let i;return t.forEach(o=>{"*"===o?(i=i||Object.keys(n),i.forEach(r=>{e[r]=Ur})):ws(o,!1,e)}),e}(n,this._globalTimelineStyles);Object.keys(s).forEach(a=>{const l=ph(s[a],r,i);this._pendingStyles[a]=l,this._localTimelineStyles.hasOwnProperty(a)||(this._backFill[a]=this._globalTimelineStyles.hasOwnProperty(a)?this._globalTimelineStyles[a]:Ur),this._updateStyle(a,l)})}applyStylesToKeyframe(){const n=this._pendingStyles,e=Object.keys(n);0!=e.length&&(this._pendingStyles={},e.forEach(i=>{this._currentKeyframe[i]=n[i]}),Object.keys(this._localTimelineStyles).forEach(i=>{this._currentKeyframe.hasOwnProperty(i)||(this._currentKeyframe[i]=this._localTimelineStyles[i])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(n=>{const e=this._localTimelineStyles[n];this._pendingStyles[n]=e,this._updateStyle(n,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const n=[];for(let e in this._currentKeyframe)n.push(e);return n}mergeTimelineCollectedStyles(n){Object.keys(n._styleSummary).forEach(e=>{const i=this._styleSummary[e],o=n._styleSummary[e];(!i||o.time>i.time)&&this._updateStyle(e,o.value)})}buildKeyframes(){this.applyStylesToKeyframe();const n=new Set,e=new Set,i=1===this._keyframes.size&&0===this.duration;let o=[];this._keyframes.forEach((a,l)=>{const u=ws(a,!0);Object.keys(u).forEach(p=>{const g=u[p];"!"==g?n.add(p):g==Ur&&e.add(p)}),i||(u.offset=l/this.duration),o.push(u)});const r=n.size?fh(n.values()):[],s=e.size?fh(e.values()):[];if(i){const a=o[0],l=yl(a);a.offset=0,l.offset=1,o=[a,l]}return g_(this.element,o,r,s,this.duration,this.startTime,this.easing,!1)}}class uB extends Dh{constructor(n,e,i,o,r,s,a=!1){super(n,e,s.delay),this.keyframes=i,this.preStyleProps=o,this.postStyleProps=r,this._stretchStartingKeyframe=a,this.timings={duration:s.duration,delay:s.delay,easing:s.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let n=this.keyframes,{delay:e,duration:i,easing:o}=this.timings;if(this._stretchStartingKeyframe&&e){const r=[],s=i+e,a=e/s,l=ws(n[0],!1);l.offset=0,r.push(l);const u=ws(n[0],!1);u.offset=US(a),r.push(u);const p=n.length-1;for(let g=1;g<=p;g++){let v=ws(n[g],!1);v.offset=US((e+v.offset*i)/s),r.push(v)}i=s,e=0,o="",n=r}return g_(this.element,n,this.preStyleProps,this.postStyleProps,i,e,o,!0)}}function US(t,n=3){const e=Math.pow(10,n-1);return Math.round(t*e)/e}class v_{}class pB extends v_{normalizePropertyName(n,e){return p_(n)}normalizeStyleValue(n,e,i,o){let r="";const s=i.toString().trim();if(fB[e]&&0!==i&&"0"!==i)if("number"==typeof i)r="px";else{const a=i.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&0==a[1].length&&o.push(function a4(t,n){return new Qe(3005,jt)}())}return s+r}}const fB=(()=>function mB(t){const n={};return t.forEach(e=>n[e]=!0),n}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function zS(t,n,e,i,o,r,s,a,l,u,p,g,v){return{type:0,element:t,triggerName:n,isRemovalTransition:o,fromState:e,fromStyles:r,toState:i,toStyles:s,timelines:a,queriedElements:l,preStyleProps:u,postStyleProps:p,totalTime:g,errors:v}}const y_={};class $S{constructor(n,e,i){this._triggerName=n,this.ast=e,this._stateStyles=i}match(n,e,i,o){return function gB(t,n,e,i,o){return t.some(r=>r(n,e,i,o))}(this.ast.matchers,n,e,i,o)}buildStyles(n,e,i){const o=this._stateStyles["*"],r=this._stateStyles[n],s=o?o.buildStyles(e,i):{};return r?r.buildStyles(e,i):s}build(n,e,i,o,r,s,a,l,u,p){const g=[],v=this.ast.options&&this.ast.options.params||y_,M=this.buildStyles(i,a&&a.params||y_,g),V=l&&l.params||y_,K=this.buildStyles(o,V,g),Y=new Set,ee=new Map,ke=new Map,Ze="void"===o,Pt={params:Object.assign(Object.assign({},v),V)},xn=p?[]:__(n,e,this.ast.animation,r,s,M,K,Pt,u,g);let On=0;if(xn.forEach(_o=>{On=Math.max(_o.duration+_o.delay,On)}),g.length)return zS(e,this._triggerName,i,o,Ze,M,K,[],[],ee,ke,On,g);xn.forEach(_o=>{const bo=_o.element,Wl=uo(ee,bo,{});_o.preStyleProps.forEach(sr=>Wl[sr]=!0);const ss=uo(ke,bo,{});_o.postStyleProps.forEach(sr=>ss[sr]=!0),bo!==e&&Y.add(bo)});const go=fh(Y.values());return zS(e,this._triggerName,i,o,Ze,M,K,xn,go,ee,ke,On)}}class _B{constructor(n,e,i){this.styles=n,this.defaultParams=e,this.normalizer=i}buildStyles(n,e){const i={},o=yl(this.defaultParams);return Object.keys(n).forEach(r=>{const s=n[r];null!=s&&(o[r]=s)}),this.styles.styles.forEach(r=>{if("string"!=typeof r){const s=r;Object.keys(s).forEach(a=>{let l=s[a];l.length>1&&(l=ph(l,o,e));const u=this.normalizer.normalizePropertyName(a,e);l=this.normalizer.normalizeStyleValue(a,u,l,e),i[u]=l})}}),i}}class vB{constructor(n,e,i){this.name=n,this.ast=e,this._normalizer=i,this.transitionFactories=[],this.states={},e.states.forEach(o=>{this.states[o.name]=new _B(o.style,o.options&&o.options.params||{},i)}),GS(this.states,"true","1"),GS(this.states,"false","0"),e.transitions.forEach(o=>{this.transitionFactories.push(new $S(n,o,this.states))}),this.fallbackTransition=function yB(t,n,e){return new $S(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(s,a)=>!0],options:null,queryCount:0,depCount:0},n)}(n,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(n,e,i,o){return this.transitionFactories.find(s=>s.match(n,e,i,o))||null}matchStyles(n,e,i){return this.fallbackTransition.buildStyles(n,e,i)}}function GS(t,n,e){t.hasOwnProperty(n)?t.hasOwnProperty(e)||(t[e]=t[n]):t.hasOwnProperty(e)&&(t[n]=t[e])}const CB=new Ch;class wB{constructor(n,e,i){this.bodyNode=n,this._driver=e,this._normalizer=i,this._animations={},this._playersById={},this.players=[]}register(n,e){const i=[],r=f_(this._driver,e,i,[]);if(i.length)throw function M4(t){return new Qe(3503,jt)}();this._animations[n]=r}_buildPlayer(n,e,i){const o=n.element,r=DS(0,this._normalizer,0,n.keyframes,e,i);return this._driver.animate(o,r,n.duration,n.delay,n.easing,[],!0)}create(n,e,i={}){const o=[],r=this._animations[n];let s;const a=new Map;if(r?(s=__(this._driver,e,r,c_,ch,{},{},i,CB,o),s.forEach(p=>{const g=uo(a,p.element,{});p.postStyleProps.forEach(v=>g[v]=null)})):(o.push(function x4(){return new Qe(3300,jt)}()),s=[]),o.length)throw function T4(t){return new Qe(3504,jt)}();a.forEach((p,g)=>{Object.keys(p).forEach(v=>{p[v]=this._driver.computeStyle(g,v,Ur)})});const u=Cs(s.map(p=>{const g=a.get(p.element);return this._buildPlayer(p,{},g)}));return this._playersById[n]=u,u.onDestroy(()=>this.destroy(n)),this.players.push(u),u}destroy(n){const e=this._getPlayer(n);e.destroy(),delete this._playersById[n];const i=this.players.indexOf(e);i>=0&&this.players.splice(i,1)}_getPlayer(n){const e=this._playersById[n];if(!e)throw function k4(t){return new Qe(3301,jt)}();return e}listen(n,e,i,o){const r=r_(e,"","","");return i_(this._getPlayer(n),i,r,o),()=>{}}command(n,e,i,o){if("register"==i)return void this.register(n,o[0]);if("create"==i)return void this.create(n,e,o[0]||{});const r=this._getPlayer(n);switch(i){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(o[0]));break;case"destroy":this.destroy(n)}}}const WS="ng-animate-queued",C_="ng-animate-disabled",TB=[],qS={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},kB={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Po="__ng_removed";class w_{constructor(n,e=""){this.namespaceId=e;const i=n&&n.hasOwnProperty("value");if(this.value=function AB(t){return null!=t?t:null}(i?n.value:n),i){const r=yl(n);delete r.value,this.options=r}else this.options={};this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(n){const e=n.params;if(e){const i=this.options.params;Object.keys(e).forEach(o=>{null==i[o]&&(i[o]=e[o])})}}}const Qc="void",D_=new w_(Qc);class EB{constructor(n,e,i){this.id=n,this.hostElement=e,this._engine=i,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+n,Ro(e,this._hostClassName)}listen(n,e,i,o){if(!this._triggers.hasOwnProperty(e))throw function E4(t,n){return new Qe(3302,jt)}();if(null==i||0==i.length)throw function I4(t){return new Qe(3303,jt)}();if(!function PB(t){return"start"==t||"done"==t}(i))throw function O4(t,n){return new Qe(3400,jt)}();const r=uo(this._elementListeners,n,[]),s={name:e,phase:i,callback:o};r.push(s);const a=uo(this._engine.statesByElement,n,{});return a.hasOwnProperty(e)||(Ro(n,dh),Ro(n,dh+"-"+e),a[e]=D_),()=>{this._engine.afterFlush(()=>{const l=r.indexOf(s);l>=0&&r.splice(l,1),this._triggers[e]||delete a[e]})}}register(n,e){return!this._triggers[n]&&(this._triggers[n]=e,!0)}_getTrigger(n){const e=this._triggers[n];if(!e)throw function A4(t){return new Qe(3401,jt)}();return e}trigger(n,e,i,o=!0){const r=this._getTrigger(e),s=new S_(this.id,e,n);let a=this._engine.statesByElement.get(n);a||(Ro(n,dh),Ro(n,dh+"-"+e),this._engine.statesByElement.set(n,a={}));let l=a[e];const u=new w_(i,this.id);if(!(i&&i.hasOwnProperty("value"))&&l&&u.absorbOptions(l.options),a[e]=u,l||(l=D_),u.value!==Qc&&l.value===u.value){if(!function NB(t,n){const e=Object.keys(t),i=Object.keys(n);if(e.length!=i.length)return!1;for(let o=0;o{aa(n,K),br(n,Y)})}return}const v=uo(this._engine.playersByElement,n,[]);v.forEach(V=>{V.namespaceId==this.id&&V.triggerName==e&&V.queued&&V.destroy()});let C=r.matchTransition(l.value,u.value,n,u.params),M=!1;if(!C){if(!o)return;C=r.fallbackTransition,M=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:e,transition:C,fromState:l,toState:u,player:s,isFallbackTransition:M}),M||(Ro(n,WS),s.onStart(()=>{Cl(n,WS)})),s.onDone(()=>{let V=this.players.indexOf(s);V>=0&&this.players.splice(V,1);const K=this._engine.playersByElement.get(n);if(K){let Y=K.indexOf(s);Y>=0&&K.splice(Y,1)}}),this.players.push(s),v.push(s),s}deregister(n){delete this._triggers[n],this._engine.statesByElement.forEach((e,i)=>{delete e[n]}),this._elementListeners.forEach((e,i)=>{this._elementListeners.set(i,e.filter(o=>o.name!=n))})}clearElementCache(n){this._engine.statesByElement.delete(n),this._elementListeners.delete(n);const e=this._engine.playersByElement.get(n);e&&(e.forEach(i=>i.destroy()),this._engine.playersByElement.delete(n))}_signalRemovalForInnerTriggers(n,e){const i=this._engine.driver.query(n,uh,!0);i.forEach(o=>{if(o[Po])return;const r=this._engine.fetchNamespacesByElement(o);r.size?r.forEach(s=>s.triggerLeaveAnimation(o,e,!1,!0)):this.clearElementCache(o)}),this._engine.afterFlushAnimationsDone(()=>i.forEach(o=>this.clearElementCache(o)))}triggerLeaveAnimation(n,e,i,o){const r=this._engine.statesByElement.get(n),s=new Map;if(r){const a=[];if(Object.keys(r).forEach(l=>{if(s.set(l,r[l].value),this._triggers[l]){const u=this.trigger(n,l,Qc,o);u&&a.push(u)}}),a.length)return this._engine.markElementAsRemoved(this.id,n,!0,e,s),i&&Cs(a).onDone(()=>this._engine.processLeaveNode(n)),!0}return!1}prepareLeaveAnimationListeners(n){const e=this._elementListeners.get(n),i=this._engine.statesByElement.get(n);if(e&&i){const o=new Set;e.forEach(r=>{const s=r.name;if(o.has(s))return;o.add(s);const l=this._triggers[s].fallbackTransition,u=i[s]||D_,p=new w_(Qc),g=new S_(this.id,s,n);this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:s,transition:l,fromState:u,toState:p,player:g,isFallbackTransition:!0})})}}removeNode(n,e){const i=this._engine;if(n.childElementCount&&this._signalRemovalForInnerTriggers(n,e),this.triggerLeaveAnimation(n,e,!0))return;let o=!1;if(i.totalAnimations){const r=i.players.length?i.playersByQueriedElement.get(n):[];if(r&&r.length)o=!0;else{let s=n;for(;s=s.parentNode;)if(i.statesByElement.get(s)){o=!0;break}}}if(this.prepareLeaveAnimationListeners(n),o)i.markElementAsRemoved(this.id,n,!1,e);else{const r=n[Po];(!r||r===qS)&&(i.afterFlush(()=>this.clearElementCache(n)),i.destroyInnerAnimations(n),i._onRemovalComplete(n,e))}}insertNode(n,e){Ro(n,this._hostClassName)}drainQueuedTransitions(n){const e=[];return this._queue.forEach(i=>{const o=i.player;if(o.destroyed)return;const r=i.element,s=this._elementListeners.get(r);s&&s.forEach(a=>{if(a.name==i.triggerName){const l=r_(r,i.triggerName,i.fromState.value,i.toState.value);l._data=n,i_(i.player,a.phase,l,a.callback)}}),o.markedForDestroy?this._engine.afterFlush(()=>{o.destroy()}):e.push(i)}),this._queue=[],e.sort((i,o)=>{const r=i.transition.ast.depCount,s=o.transition.ast.depCount;return 0==r||0==s?r-s:this._engine.driver.containsElement(i.element,o.element)?1:-1})}destroy(n){this.players.forEach(e=>e.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,n)}elementContainsData(n){let e=!1;return this._elementListeners.has(n)&&(e=!0),e=!!this._queue.find(i=>i.element===n)||e,e}}class IB{constructor(n,e,i){this.bodyNode=n,this.driver=e,this._normalizer=i,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(o,r)=>{}}_onRemovalComplete(n,e){this.onRemovalComplete(n,e)}get queuedPlayers(){const n=[];return this._namespaceList.forEach(e=>{e.players.forEach(i=>{i.queued&&n.push(i)})}),n}createNamespace(n,e){const i=new EB(n,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?this._balanceNamespaceList(i,e):(this.newHostElements.set(e,i),this.collectEnterElement(e)),this._namespaceLookup[n]=i}_balanceNamespaceList(n,e){const i=this._namespaceList,o=this.namespacesByHostElement,r=i.length-1;if(r>=0){let s=!1;if(void 0!==this.driver.getParentElement){let a=this.driver.getParentElement(e);for(;a;){const l=o.get(a);if(l){const u=i.indexOf(l);i.splice(u+1,0,n),s=!0;break}a=this.driver.getParentElement(a)}}else for(let a=r;a>=0;a--)if(this.driver.containsElement(i[a].hostElement,e)){i.splice(a+1,0,n),s=!0;break}s||i.unshift(n)}else i.push(n);return o.set(e,n),n}register(n,e){let i=this._namespaceLookup[n];return i||(i=this.createNamespace(n,e)),i}registerTrigger(n,e,i){let o=this._namespaceLookup[n];o&&o.register(e,i)&&this.totalAnimations++}destroy(n,e){if(!n)return;const i=this._fetchNamespace(n);this.afterFlush(()=>{this.namespacesByHostElement.delete(i.hostElement),delete this._namespaceLookup[n];const o=this._namespaceList.indexOf(i);o>=0&&this._namespaceList.splice(o,1)}),this.afterFlushAnimationsDone(()=>i.destroy(e))}_fetchNamespace(n){return this._namespaceLookup[n]}fetchNamespacesByElement(n){const e=new Set,i=this.statesByElement.get(n);if(i){const o=Object.keys(i);for(let r=0;r=0&&this.collectedLeaveElements.splice(s,1)}if(n){const s=this._fetchNamespace(n);s&&s.insertNode(e,i)}o&&this.collectEnterElement(e)}collectEnterElement(n){this.collectedEnterElements.push(n)}markElementAsDisabled(n,e){e?this.disabledNodes.has(n)||(this.disabledNodes.add(n),Ro(n,C_)):this.disabledNodes.has(n)&&(this.disabledNodes.delete(n),Cl(n,C_))}removeNode(n,e,i,o){if(Sh(e)){const r=n?this._fetchNamespace(n):null;if(r?r.removeNode(e,o):this.markElementAsRemoved(n,e,!1,o),i){const s=this.namespacesByHostElement.get(e);s&&s.id!==n&&s.removeNode(e,o)}}else this._onRemovalComplete(e,o)}markElementAsRemoved(n,e,i,o,r){this.collectedLeaveElements.push(e),e[Po]={namespaceId:n,setForRemoval:o,hasAnimation:i,removedBeforeQueried:!1,previousTriggersValues:r}}listen(n,e,i,o,r){return Sh(e)?this._fetchNamespace(n).listen(e,i,o,r):()=>{}}_buildInstruction(n,e,i,o,r){return n.transition.build(this.driver,n.element,n.fromState.value,n.toState.value,i,o,n.fromState.options,n.toState.options,e,r)}destroyInnerAnimations(n){let e=this.driver.query(n,uh,!0);e.forEach(i=>this.destroyActiveAnimationsForElement(i)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(n,d_,!0),e.forEach(i=>this.finishActiveQueriedAnimationOnElement(i)))}destroyActiveAnimationsForElement(n){const e=this.playersByElement.get(n);e&&e.forEach(i=>{i.queued?i.markedForDestroy=!0:i.destroy()})}finishActiveQueriedAnimationOnElement(n){const e=this.playersByQueriedElement.get(n);e&&e.forEach(i=>i.finish())}whenRenderingDone(){return new Promise(n=>{if(this.players.length)return Cs(this.players).onDone(()=>n());n()})}processLeaveNode(n){var e;const i=n[Po];if(i&&i.setForRemoval){if(n[Po]=qS,i.namespaceId){this.destroyInnerAnimations(n);const o=this._fetchNamespace(i.namespaceId);o&&o.clearElementCache(n)}this._onRemovalComplete(n,i.setForRemoval)}(null===(e=n.classList)||void 0===e?void 0:e.contains(C_))&&this.markElementAsDisabled(n,!1),this.driver.query(n,".ng-animate-disabled",!0).forEach(o=>{this.markElementAsDisabled(o,!1)})}flush(n=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((i,o)=>this._balanceNamespaceList(i,o)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let i=0;ii()),this._flushFns=[],this._whenQuietFns.length){const i=this._whenQuietFns;this._whenQuietFns=[],e.length?Cs(e).onDone(()=>{i.forEach(o=>o())}):i.forEach(o=>o())}}reportError(n){throw function P4(t){return new Qe(3402,jt)}()}_flushAnimations(n,e){const i=new Ch,o=[],r=new Map,s=[],a=new Map,l=new Map,u=new Map,p=new Set;this.disabledNodes.forEach(Ye=>{p.add(Ye);const dt=this.driver.query(Ye,".ng-animate-queued",!0);for(let _t=0;_t{const _t=c_+V++;M.set(dt,_t),Ye.forEach(qt=>Ro(qt,_t))});const K=[],Y=new Set,ee=new Set;for(let Ye=0;YeY.add(qt)):ee.add(dt))}const ke=new Map,Ze=QS(v,Array.from(Y));Ze.forEach((Ye,dt)=>{const _t=ch+V++;ke.set(dt,_t),Ye.forEach(qt=>Ro(qt,_t))}),n.push(()=>{C.forEach((Ye,dt)=>{const _t=M.get(dt);Ye.forEach(qt=>Cl(qt,_t))}),Ze.forEach((Ye,dt)=>{const _t=ke.get(dt);Ye.forEach(qt=>Cl(qt,_t))}),K.forEach(Ye=>{this.processLeaveNode(Ye)})});const Pt=[],xn=[];for(let Ye=this._namespaceList.length-1;Ye>=0;Ye--)this._namespaceList[Ye].drainQueuedTransitions(e).forEach(_t=>{const qt=_t.player,gi=_t.element;if(Pt.push(qt),this.collectedEnterElements.length){const Vi=gi[Po];if(Vi&&Vi.setForMove){if(Vi.previousTriggersValues&&Vi.previousTriggersValues.has(_t.triggerName)){const Sa=Vi.previousTriggersValues.get(_t.triggerName),Us=this.statesByElement.get(_t.element);Us&&Us[_t.triggerName]&&(Us[_t.triggerName].value=Sa)}return void qt.destroy()}}const kr=!g||!this.driver.containsElement(g,gi),vo=ke.get(gi),Hs=M.get(gi),An=this._buildInstruction(_t,i,Hs,vo,kr);if(An.errors&&An.errors.length)return void xn.push(An);if(kr)return qt.onStart(()=>aa(gi,An.fromStyles)),qt.onDestroy(()=>br(gi,An.toStyles)),void o.push(qt);if(_t.isFallbackTransition)return qt.onStart(()=>aa(gi,An.fromStyles)),qt.onDestroy(()=>br(gi,An.toStyles)),void o.push(qt);const yI=[];An.timelines.forEach(Vi=>{Vi.stretchStartingKeyframe=!0,this.disabledNodes.has(Vi.element)||yI.push(Vi)}),An.timelines=yI,i.append(gi,An.timelines),s.push({instruction:An,player:qt,element:gi}),An.queriedElements.forEach(Vi=>uo(a,Vi,[]).push(qt)),An.preStyleProps.forEach((Vi,Sa)=>{const Us=Object.keys(Vi);if(Us.length){let Ma=l.get(Sa);Ma||l.set(Sa,Ma=new Set),Us.forEach(Vv=>Ma.add(Vv))}}),An.postStyleProps.forEach((Vi,Sa)=>{const Us=Object.keys(Vi);let Ma=u.get(Sa);Ma||u.set(Sa,Ma=new Set),Us.forEach(Vv=>Ma.add(Vv))})});if(xn.length){const Ye=[];xn.forEach(dt=>{Ye.push(function R4(t,n){return new Qe(3505,jt)}())}),Pt.forEach(dt=>dt.destroy()),this.reportError(Ye)}const On=new Map,go=new Map;s.forEach(Ye=>{const dt=Ye.element;i.has(dt)&&(go.set(dt,dt),this._beforeAnimationBuild(Ye.player.namespaceId,Ye.instruction,On))}),o.forEach(Ye=>{const dt=Ye.element;this._getPreviousPlayers(dt,!1,Ye.namespaceId,Ye.triggerName,null).forEach(qt=>{uo(On,dt,[]).push(qt),qt.destroy()})});const _o=K.filter(Ye=>XS(Ye,l,u)),bo=new Map;ZS(bo,this.driver,ee,u,Ur).forEach(Ye=>{XS(Ye,l,u)&&_o.push(Ye)});const ss=new Map;C.forEach((Ye,dt)=>{ZS(ss,this.driver,new Set(Ye),l,"!")}),_o.forEach(Ye=>{const dt=bo.get(Ye),_t=ss.get(Ye);bo.set(Ye,Object.assign(Object.assign({},dt),_t))});const sr=[],ql=[],Kl={};s.forEach(Ye=>{const{element:dt,player:_t,instruction:qt}=Ye;if(i.has(dt)){if(p.has(dt))return _t.onDestroy(()=>br(dt,qt.toStyles)),_t.disabled=!0,_t.overrideTotalTime(qt.totalTime),void o.push(_t);let gi=Kl;if(go.size>1){let vo=dt;const Hs=[];for(;vo=vo.parentNode;){const An=go.get(vo);if(An){gi=An;break}Hs.push(vo)}Hs.forEach(An=>go.set(An,gi))}const kr=this._buildAnimation(_t.namespaceId,qt,On,r,ss,bo);if(_t.setRealPlayer(kr),gi===Kl)sr.push(_t);else{const vo=this.playersByElement.get(gi);vo&&vo.length&&(_t.parentPlayer=Cs(vo)),o.push(_t)}}else aa(dt,qt.fromStyles),_t.onDestroy(()=>br(dt,qt.toStyles)),ql.push(_t),p.has(dt)&&o.push(_t)}),ql.forEach(Ye=>{const dt=r.get(Ye.element);if(dt&&dt.length){const _t=Cs(dt);Ye.setRealPlayer(_t)}}),o.forEach(Ye=>{Ye.parentPlayer?Ye.syncPlayerEvents(Ye.parentPlayer):Ye.destroy()});for(let Ye=0;Ye!kr.destroyed);gi.length?RB(this,dt,gi):this.processLeaveNode(dt)}return K.length=0,sr.forEach(Ye=>{this.players.push(Ye),Ye.onDone(()=>{Ye.destroy();const dt=this.players.indexOf(Ye);this.players.splice(dt,1)}),Ye.play()}),sr}elementContainsData(n,e){let i=!1;const o=e[Po];return o&&o.setForRemoval&&(i=!0),this.playersByElement.has(e)&&(i=!0),this.playersByQueriedElement.has(e)&&(i=!0),this.statesByElement.has(e)&&(i=!0),this._fetchNamespace(n).elementContainsData(e)||i}afterFlush(n){this._flushFns.push(n)}afterFlushAnimationsDone(n){this._whenQuietFns.push(n)}_getPreviousPlayers(n,e,i,o,r){let s=[];if(e){const a=this.playersByQueriedElement.get(n);a&&(s=a)}else{const a=this.playersByElement.get(n);if(a){const l=!r||r==Qc;a.forEach(u=>{u.queued||!l&&u.triggerName!=o||s.push(u)})}}return(i||o)&&(s=s.filter(a=>!(i&&i!=a.namespaceId||o&&o!=a.triggerName))),s}_beforeAnimationBuild(n,e,i){const r=e.element,s=e.isRemovalTransition?void 0:n,a=e.isRemovalTransition?void 0:e.triggerName;for(const l of e.timelines){const u=l.element,p=u!==r,g=uo(i,u,[]);this._getPreviousPlayers(u,p,s,a,e.toState).forEach(C=>{const M=C.getRealPlayer();M.beforeDestroy&&M.beforeDestroy(),C.destroy(),g.push(C)})}aa(r,e.fromStyles)}_buildAnimation(n,e,i,o,r,s){const a=e.triggerName,l=e.element,u=[],p=new Set,g=new Set,v=e.timelines.map(M=>{const V=M.element;p.add(V);const K=V[Po];if(K&&K.removedBeforeQueried)return new Kc(M.duration,M.delay);const Y=V!==l,ee=function FB(t){const n=[];return YS(t,n),n}((i.get(V)||TB).map(On=>On.getRealPlayer())).filter(On=>!!On.element&&On.element===V),ke=r.get(V),Ze=s.get(V),Pt=DS(0,this._normalizer,0,M.keyframes,ke,Ze),xn=this._buildPlayer(M,Pt,ee);if(M.subTimeline&&o&&g.add(V),Y){const On=new S_(n,a,V);On.setRealPlayer(xn),u.push(On)}return xn});u.forEach(M=>{uo(this.playersByQueriedElement,M.element,[]).push(M),M.onDone(()=>function OB(t,n,e){let i;if(t instanceof Map){if(i=t.get(n),i){if(i.length){const o=i.indexOf(e);i.splice(o,1)}0==i.length&&t.delete(n)}}else if(i=t[n],i){if(i.length){const o=i.indexOf(e);i.splice(o,1)}0==i.length&&delete t[n]}return i}(this.playersByQueriedElement,M.element,M))}),p.forEach(M=>Ro(M,PS));const C=Cs(v);return C.onDestroy(()=>{p.forEach(M=>Cl(M,PS)),br(l,e.toStyles)}),g.forEach(M=>{uo(o,M,[]).push(C)}),C}_buildPlayer(n,e,i){return e.length>0?this.driver.animate(n.element,e,n.duration,n.delay,n.easing,i):new Kc(n.duration,n.delay)}}class S_{constructor(n,e,i){this.namespaceId=n,this.triggerName=e,this.element=i,this._player=new Kc,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(n){this._containsRealPlayer||(this._player=n,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(i=>i_(n,e,void 0,i))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(n.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(n){this.totalTime=n}syncPlayerEvents(n){const e=this._player;e.triggerCallback&&n.onStart(()=>e.triggerCallback("start")),n.onDone(()=>this.finish()),n.onDestroy(()=>this.destroy())}_queueEvent(n,e){uo(this._queuedCallbacks,n,[]).push(e)}onDone(n){this.queued&&this._queueEvent("done",n),this._player.onDone(n)}onStart(n){this.queued&&this._queueEvent("start",n),this._player.onStart(n)}onDestroy(n){this.queued&&this._queueEvent("destroy",n),this._player.onDestroy(n)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(n){this.queued||this._player.setPosition(n)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(n){const e=this._player;e.triggerCallback&&e.triggerCallback(n)}}function Sh(t){return t&&1===t.nodeType}function KS(t,n){const e=t.style.display;return t.style.display=null!=n?n:"none",e}function ZS(t,n,e,i,o){const r=[];e.forEach(l=>r.push(KS(l)));const s=[];i.forEach((l,u)=>{const p={};l.forEach(g=>{const v=p[g]=n.computeStyle(u,g,o);(!v||0==v.length)&&(u[Po]=kB,s.push(u))}),t.set(u,p)});let a=0;return e.forEach(l=>KS(l,r[a++])),s}function QS(t,n){const e=new Map;if(t.forEach(a=>e.set(a,[])),0==n.length)return e;const o=new Set(n),r=new Map;function s(a){if(!a)return 1;let l=r.get(a);if(l)return l;const u=a.parentNode;return l=e.has(u)?u:o.has(u)?1:s(u),r.set(a,l),l}return n.forEach(a=>{const l=s(a);1!==l&&e.get(l).push(a)}),e}function Ro(t,n){var e;null===(e=t.classList)||void 0===e||e.add(n)}function Cl(t,n){var e;null===(e=t.classList)||void 0===e||e.remove(n)}function RB(t,n,e){Cs(e).onDone(()=>t.processLeaveNode(n))}function YS(t,n){for(let e=0;eo.add(r)):n.set(t,i),e.delete(t),!0}class Mh{constructor(n,e,i){this.bodyNode=n,this._driver=e,this._normalizer=i,this._triggerCache={},this.onRemovalComplete=(o,r)=>{},this._transitionEngine=new IB(n,e,i),this._timelineEngine=new wB(n,e,i),this._transitionEngine.onRemovalComplete=(o,r)=>this.onRemovalComplete(o,r)}registerTrigger(n,e,i,o,r){const s=n+"-"+o;let a=this._triggerCache[s];if(!a){const l=[],p=f_(this._driver,r,l,[]);if(l.length)throw function D4(t,n){return new Qe(3404,jt)}();a=function bB(t,n,e){return new vB(t,n,e)}(o,p,this._normalizer),this._triggerCache[s]=a}this._transitionEngine.registerTrigger(e,o,a)}register(n,e){this._transitionEngine.register(n,e)}destroy(n,e){this._transitionEngine.destroy(n,e)}onInsert(n,e,i,o){this._transitionEngine.insertNode(n,e,i,o)}onRemove(n,e,i,o){this._transitionEngine.removeNode(n,e,o||!1,i)}disableAnimations(n,e){this._transitionEngine.markElementAsDisabled(n,e)}process(n,e,i,o){if("@"==i.charAt(0)){const[r,s]=SS(i);this._timelineEngine.command(r,e,s,o)}else this._transitionEngine.trigger(n,e,i,o)}listen(n,e,i,o,r){if("@"==i.charAt(0)){const[s,a]=SS(i);return this._timelineEngine.listen(s,e,a,r)}return this._transitionEngine.listen(n,e,i,o,r)}flush(n=-1){this._transitionEngine.flush(n)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}let BB=(()=>{class t{constructor(e,i,o){this._element=e,this._startStyles=i,this._endStyles=o,this._state=0;let r=t.initialStylesByElement.get(e);r||t.initialStylesByElement.set(e,r={}),this._initialStyles=r}start(){this._state<1&&(this._startStyles&&br(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(br(this._element,this._initialStyles),this._endStyles&&(br(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(aa(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(aa(this._element,this._endStyles),this._endStyles=null),br(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function M_(t){let n=null;const e=Object.keys(t);for(let i=0;in()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const n=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,n,this.options),this._finalKeyframe=n.length?n[n.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(n,e,i){return n.animate(e,i)}onStart(n){this._onStartFns.push(n)}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(n=>n()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}setPosition(n){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=n*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const n={};if(this.hasStarted()){const e=this._finalKeyframe;Object.keys(e).forEach(i=>{"offset"!=i&&(n[i]=this._finished?e[i]:BS(this.element,i))})}this.currentSnapshot=n}triggerCallback(n){const e="start"==n?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}}class jB{validateStyleProperty(n){return kS(n)}matchesElement(n,e){return!1}containsElement(n,e){return ES(n,e)}getParentElement(n){return a_(n)}query(n,e,i){return IS(n,e,i)}computeStyle(n,e,i){return window.getComputedStyle(n)[e]}animate(n,e,i,o,r,s=[]){const l={duration:i,delay:o,fill:0==o?"both":"forwards"};r&&(l.easing=r);const u={},p=s.filter(v=>v instanceof JS);(function $4(t,n){return 0===t||0===n})(i,o)&&p.forEach(v=>{let C=v.currentSnapshot;Object.keys(C).forEach(M=>u[M]=C[M])}),e=function G4(t,n,e){const i=Object.keys(e);if(i.length&&n.length){let r=n[0],s=[];if(i.forEach(a=>{r.hasOwnProperty(a)||s.push(a),r[a]=e[a]}),s.length)for(var o=1;ows(v,!1)),u);const g=function LB(t,n){let e=null,i=null;return Array.isArray(n)&&n.length?(e=M_(n[0]),n.length>1&&(i=M_(n[n.length-1]))):n&&(e=M_(n)),e||i?new BB(t,e,i):null}(n,e);return new JS(n,e,l,g)}}let HB=(()=>{class t extends _S{constructor(e,i){super(),this._nextAnimationId=0,this._renderer=e.createRenderer(i.body,{id:"0",encapsulation:zo.None,styles:[],data:{animation:[]}})}build(e){const i=this._nextAnimationId.toString();this._nextAnimationId++;const o=Array.isArray(e)?vS(e):e;return eM(this._renderer,null,i,"register",[o]),new UB(i,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Q(Rc),Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();class UB extends class J5{}{constructor(n,e){super(),this._id=n,this._renderer=e}create(n,e){return new zB(this._id,n,e||{},this._renderer)}}class zB{constructor(n,e,i,o){this.id=n,this.element=e,this._renderer=o,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",i)}_listen(n,e){return this._renderer.listen(this.element,`@@${this.id}:${n}`,e)}_command(n,...e){return eM(this._renderer,this.element,this.id,n,e)}onDone(n){this._listen("done",n)}onStart(n){this._listen("start",n)}onDestroy(n){this._listen("destroy",n)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset"),this._started=!1}setPosition(n){this._command("setPosition",n)}getPosition(){var n,e;return null!==(e=null===(n=this._renderer.engine.players[+this.id])||void 0===n?void 0:n.getPosition())&&void 0!==e?e:0}}function eM(t,n,e,i,o){return t.setProperty(n,`@@${e}:${i}`,o)}const tM="@.disabled";let $B=(()=>{class t{constructor(e,i,o){this.delegate=e,this.engine=i,this._zone=o,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),i.onRemovalComplete=(r,s)=>{const a=null==s?void 0:s.parentNode(r);a&&s.removeChild(a,r)}}createRenderer(e,i){const r=this.delegate.createRenderer(e,i);if(!(e&&i&&i.data&&i.data.animation)){let p=this._rendererCache.get(r);return p||(p=new nM("",r,this.engine),this._rendererCache.set(r,p)),p}const s=i.id,a=i.id+"-"+this._currentId;this._currentId++,this.engine.register(a,e);const l=p=>{Array.isArray(p)?p.forEach(l):this.engine.registerTrigger(s,a,e,p.name,p)};return i.data.animation.forEach(l),new GB(this,a,r,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(e,i,o){e>=0&&ei(o)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(r=>{const[s,a]=r;s(a)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([i,o]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}return t.\u0275fac=function(e){return new(e||t)(Q(Rc),Q(Mh),Q(Je))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();class nM{constructor(n,e,i){this.namespaceId=n,this.delegate=e,this.engine=i,this.destroyNode=this.delegate.destroyNode?o=>e.destroyNode(o):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(n,e){return this.delegate.createElement(n,e)}createComment(n){return this.delegate.createComment(n)}createText(n){return this.delegate.createText(n)}appendChild(n,e){this.delegate.appendChild(n,e),this.engine.onInsert(this.namespaceId,e,n,!1)}insertBefore(n,e,i,o=!0){this.delegate.insertBefore(n,e,i),this.engine.onInsert(this.namespaceId,e,n,o)}removeChild(n,e,i){this.engine.onRemove(this.namespaceId,e,this.delegate,i)}selectRootElement(n,e){return this.delegate.selectRootElement(n,e)}parentNode(n){return this.delegate.parentNode(n)}nextSibling(n){return this.delegate.nextSibling(n)}setAttribute(n,e,i,o){this.delegate.setAttribute(n,e,i,o)}removeAttribute(n,e,i){this.delegate.removeAttribute(n,e,i)}addClass(n,e){this.delegate.addClass(n,e)}removeClass(n,e){this.delegate.removeClass(n,e)}setStyle(n,e,i,o){this.delegate.setStyle(n,e,i,o)}removeStyle(n,e,i){this.delegate.removeStyle(n,e,i)}setProperty(n,e,i){"@"==e.charAt(0)&&e==tM?this.disableAnimations(n,!!i):this.delegate.setProperty(n,e,i)}setValue(n,e){this.delegate.setValue(n,e)}listen(n,e,i){return this.delegate.listen(n,e,i)}disableAnimations(n,e){this.engine.disableAnimations(n,e)}}class GB extends nM{constructor(n,e,i,o){super(e,i,o),this.factory=n,this.namespaceId=e}setProperty(n,e,i){"@"==e.charAt(0)?"."==e.charAt(1)&&e==tM?this.disableAnimations(n,i=void 0===i||!!i):this.engine.process(this.namespaceId,n,e.substr(1),i):this.delegate.setProperty(n,e,i)}listen(n,e,i){if("@"==e.charAt(0)){const o=function WB(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(n);let r=e.substr(1),s="";return"@"!=r.charAt(0)&&([r,s]=function qB(t){const n=t.indexOf(".");return[t.substring(0,n),t.substr(n+1)]}(r)),this.engine.listen(this.namespaceId,o,r,s,a=>{this.factory.scheduleListenerCallback(a._data||-1,i,a)})}return this.delegate.listen(n,e,i)}}let KB=(()=>{class t extends Mh{constructor(e,i,o){super(e.body,i,o)}ngOnDestroy(){this.flush()}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(l_),Q(v_))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const gn=new _e("AnimationModuleType"),iM=[{provide:_S,useClass:HB},{provide:v_,useFactory:function ZB(){return new pB}},{provide:Mh,useClass:KB},{provide:Rc,useFactory:function QB(t,n,e){return new $B(t,n,e)},deps:[ah,Mh,Je]}],oM=[{provide:l_,useFactory:()=>new jB},{provide:gn,useValue:"BrowserAnimations"},...iM],YB=[{provide:l_,useClass:OS},{provide:gn,useValue:"NoopAnimations"},...iM];let XB=(()=>{class t{static withConfig(e){return{ngModule:t,providers:e.disableAnimations?YB:oM}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:oM,imports:[pS]}),t})();const JB=new _e("cdk-dir-doc",{providedIn:"root",factory:function eV(){return hc(ht)}}),tV=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;let x_,li=(()=>{class t{constructor(e){if(this.value="ltr",this.change=new Pe,e){const o=e.documentElement?e.documentElement.dir:null;this.value=function nV(t){const n=(null==t?void 0:t.toLowerCase())||"";return"auto"===n&&"undefined"!=typeof navigator&&(null==navigator?void 0:navigator.language)?tV.test(navigator.language)?"rtl":"ltr":"rtl"===n?"rtl":"ltr"}((e.body?e.body.dir:null)||o||"ltr")}}ngOnDestroy(){this.change.complete()}}return t.\u0275fac=function(e){return new(e||t)(Q(JB,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Yc=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();try{x_="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(t){x_=!1}let wl,dn=(()=>{class t{constructor(e){this._platformId=e,this.isBrowser=this._platformId?function m5(t){return t===eS}(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!x_)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return t.\u0275fac=function(e){return new(e||t)(Q(Hc))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const sM=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function aM(){if(wl)return wl;if("object"!=typeof document||!document)return wl=new Set(sM),wl;let t=document.createElement("input");return wl=new Set(sM.filter(n=>(t.setAttribute("type",n),t.type===n))),wl}let Xc,Th,da,T_;function ca(t){return function iV(){if(null==Xc&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>Xc=!0}))}finally{Xc=Xc||!1}return Xc}()?t:!!t.capture}function lM(){if(null==da){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return da=!1,da;if("scrollBehavior"in document.documentElement.style)da=!0;else{const t=Element.prototype.scrollTo;da=!!t&&!/\{\s*\[native code\]\s*\}/.test(t.toString())}}return da}function Jc(){if("object"!=typeof document||!document)return 0;if(null==Th){const t=document.createElement("div"),n=t.style;t.dir="rtl",n.width="1px",n.overflow="auto",n.visibility="hidden",n.pointerEvents="none",n.position="absolute";const e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",t.appendChild(e),document.body.appendChild(t),Th=0,0===t.scrollLeft&&(t.scrollLeft=1,Th=0===t.scrollLeft?1:2),t.remove()}return Th}function cM(t){if(function oV(){if(null==T_){const t="undefined"!=typeof document?document.head:null;T_=!(!t||!t.createShadowRoot&&!t.attachShadow)}return T_}()){const n=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&n instanceof ShadowRoot)return n}return null}function k_(){let t="undefined"!=typeof document&&document?document.activeElement:null;for(;t&&t.shadowRoot;){const n=t.shadowRoot.activeElement;if(n===t)break;t=n}return t}function Ds(t){return t.composedPath?t.composedPath()[0]:t.target}function E_(){return"undefined"!=typeof __karma__&&!!__karma__||"undefined"!=typeof jasmine&&!!jasmine||"undefined"!=typeof jest&&!!jest||"undefined"!=typeof Mocha&&!!Mocha}class vt extends ie{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const e=super._subscribe(n);return!e.closed&&n.next(this._value),e}getValue(){const{hasError:n,thrownError:e,_value:i}=this;if(n)throw e;return this._throwIfClosed(),i}next(n){super.next(this._value=n)}}function Ge(...t){return ti(t,Yl(t))}function fi(t,...n){return n.length?n.some(e=>t[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}function Zt(t,n,e){const i=H(t)||n||e?{next:t,error:n,complete:e}:t;return i?nt((o,r)=>{var s;null===(s=i.subscribe)||void 0===s||s.call(i);let a=!0;o.subscribe(st(r,l=>{var u;null===(u=i.next)||void 0===u||u.call(i,l),r.next(l)},()=>{var l;a=!1,null===(l=i.complete)||void 0===l||l.call(i),r.complete()},l=>{var u;a=!1,null===(u=i.error)||void 0===u||u.call(i,l),r.error(l)},()=>{var l,u;a&&(null===(l=i.unsubscribe)||void 0===l||l.call(i)),null===(u=i.finalize)||void 0===u||u.call(i)}))}):Me}class gV extends k{constructor(n,e){super()}schedule(n,e=0){return this}}const Ih={setInterval(t,n,...e){const{delegate:i}=Ih;return(null==i?void 0:i.setInterval)?i.setInterval(t,n,...e):setInterval(t,n,...e)},clearInterval(t){const{delegate:n}=Ih;return((null==n?void 0:n.clearInterval)||clearInterval)(t)},delegate:void 0};class P_ extends gV{constructor(n,e){super(n,e),this.scheduler=n,this.work=e,this.pending=!1}schedule(n,e=0){var i;if(this.closed)return this;this.state=n;const o=this.id,r=this.scheduler;return null!=o&&(this.id=this.recycleAsyncId(r,o,e)),this.pending=!0,this.delay=e,this.id=null!==(i=this.id)&&void 0!==i?i:this.requestAsyncId(r,this.id,e),this}requestAsyncId(n,e,i=0){return Ih.setInterval(n.flush.bind(n,this),i)}recycleAsyncId(n,e,i=0){if(null!=i&&this.delay===i&&!1===this.pending)return e;null!=e&&Ih.clearInterval(e)}execute(n,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const i=this._execute(n,e);if(i)return i;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(n,e){let o,i=!1;try{this.work(n)}catch(r){i=!0,o=r||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),o}unsubscribe(){if(!this.closed){const{id:n,scheduler:e}=this,{actions:i}=e;this.work=this.state=this.scheduler=null,this.pending=!1,x(i,this),null!=n&&(this.id=this.recycleAsyncId(e,n,null)),this.delay=null,super.unsubscribe()}}}const dM={now:()=>(dM.delegate||Date).now(),delegate:void 0};class ed{constructor(n,e=ed.now){this.schedulerActionCtor=n,this.now=e}schedule(n,e=0,i){return new this.schedulerActionCtor(this,n).schedule(i,e)}}ed.now=dM.now;class R_ extends ed{constructor(n,e=ed.now){super(n,e),this.actions=[],this._active=!1}flush(n){const{actions:e}=this;if(this._active)return void e.push(n);let i;this._active=!0;do{if(i=n.execute(n.state,n.delay))break}while(n=e.shift());if(this._active=!1,i){for(;n=e.shift();)n.unsubscribe();throw i}}}const td=new R_(P_),_V=td;function Oh(t,n=td){return nt((e,i)=>{let o=null,r=null,s=null;const a=()=>{if(o){o.unsubscribe(),o=null;const u=r;r=null,i.next(u)}};function l(){const u=s+t,p=n.now();if(p{r=u,s=n.now(),o||(o=n.schedule(l,t),i.add(o))},()=>{a(),i.complete()},void 0,()=>{r=o=null}))})}function It(t,n){return nt((e,i)=>{let o=0;e.subscribe(st(i,r=>t.call(n,r,o++)&&i.next(r)))})}function Ot(t){return t<=0?()=>Co:nt((n,e)=>{let i=0;n.subscribe(st(e,o=>{++i<=t&&(e.next(o),t<=i&&e.complete())}))})}function F_(t){return It((n,e)=>t<=e)}function nd(t,n=Me){return t=null!=t?t:bV,nt((e,i)=>{let o,r=!0;e.subscribe(st(i,s=>{const a=n(s);(r||!t(o,a))&&(r=!1,o=a,i.next(s))}))})}function bV(t,n){return t===n}function tt(t){return nt((n,e)=>{yi(t).subscribe(st(e,()=>e.complete(),S)),!e.closed&&n.subscribe(e)})}function Xe(t){return null!=t&&"false"!=`${t}`}function Zn(t,n=0){return function vV(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):n}function Ah(t){return Array.isArray(t)?t:[t]}function Qn(t){return null==t?"":"string"==typeof t?t:`${t}px`}function $r(t){return t instanceof He?t.nativeElement:t}let uM=(()=>{class t{create(e){return"undefined"==typeof MutationObserver?null:new MutationObserver(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),CV=(()=>{class t{constructor(e){this._mutationObserverFactory=e,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((e,i)=>this._cleanupObserver(i))}observe(e){const i=$r(e);return new Ue(o=>{const s=this._observeElement(i).subscribe(o);return()=>{s.unsubscribe(),this._unobserveElement(i)}})}_observeElement(e){if(this._observedElements.has(e))this._observedElements.get(e).count++;else{const i=new ie,o=this._mutationObserverFactory.create(r=>i.next(r));o&&o.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:o,stream:i,count:1})}return this._observedElements.get(e).stream}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){const{observer:i,stream:o}=this._observedElements.get(e);i&&i.disconnect(),o.complete(),this._observedElements.delete(e)}}}return t.\u0275fac=function(e){return new(e||t)(Q(uM))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),N_=(()=>{class t{constructor(e,i,o){this._contentObserver=e,this._elementRef=i,this._ngZone=o,this.event=new Pe,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(e){this._debounce=Zn(e),this._subscribe()}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const e=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?e.pipe(Oh(this.debounce)):e).subscribe(this.event)})}_unsubscribe(){var e;null===(e=this._currentSubscription)||void 0===e||e.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(CV),b(He),b(Je))},t.\u0275dir=oe({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),Ph=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[uM]}),t})();function Rh(t,n){return(t.getAttribute(n)||"").match(/\S+/g)||[]}const pM="cdk-describedby-message",Fh="cdk-describedby-host";let fM=0,SV=(()=>{class t{constructor(e,i){this._platform=i,this._messageRegistry=new Map,this._messagesContainer=null,this._id=""+fM++,this._document=e}describe(e,i,o){if(!this._canBeDescribed(e,i))return;const r=L_(i,o);"string"!=typeof i?(mM(i),this._messageRegistry.set(r,{messageElement:i,referenceCount:0})):this._messageRegistry.has(r)||this._createMessageElement(i,o),this._isElementDescribedByMessage(e,r)||this._addMessageReference(e,r)}removeDescription(e,i,o){var r;if(!i||!this._isElementNode(e))return;const s=L_(i,o);if(this._isElementDescribedByMessage(e,s)&&this._removeMessageReference(e,s),"string"==typeof i){const a=this._messageRegistry.get(s);a&&0===a.referenceCount&&this._deleteMessageElement(s)}0===(null===(r=this._messagesContainer)||void 0===r?void 0:r.childNodes.length)&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){var e;const i=this._document.querySelectorAll(`[${Fh}="${this._id}"]`);for(let o=0;o0!=o.indexOf(pM));e.setAttribute("aria-describedby",i.join(" "))}_addMessageReference(e,i){const o=this._messageRegistry.get(i);(function wV(t,n,e){const i=Rh(t,n);i.some(o=>o.trim()==e.trim())||(i.push(e.trim()),t.setAttribute(n,i.join(" ")))})(e,"aria-describedby",o.messageElement.id),e.setAttribute(Fh,this._id),o.referenceCount++}_removeMessageReference(e,i){const o=this._messageRegistry.get(i);o.referenceCount--,function DV(t,n,e){const o=Rh(t,n).filter(r=>r!=e.trim());o.length?t.setAttribute(n,o.join(" ")):t.removeAttribute(n)}(e,"aria-describedby",o.messageElement.id),e.removeAttribute(Fh)}_isElementDescribedByMessage(e,i){const o=Rh(e,"aria-describedby"),r=this._messageRegistry.get(i),s=r&&r.messageElement.id;return!!s&&-1!=o.indexOf(s)}_canBeDescribed(e,i){if(!this._isElementNode(e))return!1;if(i&&"object"==typeof i)return!0;const o=null==i?"":`${i}`.trim(),r=e.getAttribute("aria-label");return!(!o||r&&r.trim()===o)}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(dn))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function L_(t,n){return"string"==typeof t?`${n||""}/${t}`:t}function mM(t){t.id||(t.id=`${pM}-${fM++}`)}class gM{constructor(n){this._items=n,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new ie,this._typeaheadSubscription=k.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._skipPredicateFn=e=>e.disabled,this._pressedLetters=[],this.tabOut=new ie,this.change=new ie,n instanceof vs&&n.changes.subscribe(e=>{if(this._activeItem){const o=e.toArray().indexOf(this._activeItem);o>-1&&o!==this._activeItemIndex&&(this._activeItemIndex=o)}})}skipPredicate(n){return this._skipPredicateFn=n,this}withWrap(n=!0){return this._wrap=n,this}withVerticalOrientation(n=!0){return this._vertical=n,this}withHorizontalOrientation(n){return this._horizontal=n,this}withAllowedModifierKeys(n){return this._allowedModifierKeys=n,this}withTypeAhead(n=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe(Zt(e=>this._pressedLetters.push(e)),Oh(n),It(()=>this._pressedLetters.length>0),je(()=>this._pressedLetters.join(""))).subscribe(e=>{const i=this._getItemsArray();for(let o=1;o!n[r]||this._allowedModifierKeys.indexOf(r)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&o){this.setNextItemActive();break}return;case 38:if(this._vertical&&o){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&o){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&o){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&o){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&o){this.setLastItemActive();break}return;default:return void((o||fi(n,"shiftKey"))&&(n.key&&1===n.key.length?this._letterKeyStream.next(n.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))))}this._pressedLetters=[],n.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(n){const e=this._getItemsArray(),i="number"==typeof n?n:e.indexOf(n),o=e[i];this._activeItem=null==o?null:o,this._activeItemIndex=i}_setActiveItemByDelta(n){this._wrap?this._setActiveInWrapMode(n):this._setActiveInDefaultMode(n)}_setActiveInWrapMode(n){const e=this._getItemsArray();for(let i=1;i<=e.length;i++){const o=(this._activeItemIndex+n*i+e.length)%e.length;if(!this._skipPredicateFn(e[o]))return void this.setActiveItem(o)}}_setActiveInDefaultMode(n){this._setActiveItemByIndex(this._activeItemIndex+n,n)}_setActiveItemByIndex(n,e){const i=this._getItemsArray();if(i[n]){for(;this._skipPredicateFn(i[n]);)if(!i[n+=e])return;this.setActiveItem(n)}}_getItemsArray(){return this._items instanceof vs?this._items.toArray():this._items}}class _M extends gM{setActiveItem(n){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(n),this.activeItem&&this.activeItem.setActiveStyles()}}class Nh extends gM{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(n){return this._origin=n,this}setActiveItem(n){super.setActiveItem(n),this.activeItem&&this.activeItem.focus(this._origin)}}let B_=(()=>{class t{constructor(e){this._platform=e}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return function xV(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}isTabbable(e){if(!this._platform.isBrowser)return!1;const i=function MV(t){try{return t.frameElement}catch(n){return null}}(function RV(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}(e));if(i&&(-1===vM(i)||!this.isVisible(i)))return!1;let o=e.nodeName.toLowerCase(),r=vM(e);return e.hasAttribute("contenteditable")?-1!==r:!("iframe"===o||"object"===o||this._platform.WEBKIT&&this._platform.IOS&&!function AV(t){let n=t.nodeName.toLowerCase(),e="input"===n&&t.type;return"text"===e||"password"===e||"select"===n||"textarea"===n}(e))&&("audio"===o?!!e.hasAttribute("controls")&&-1!==r:"video"===o?-1!==r&&(null!==r||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}isFocusable(e,i){return function PV(t){return!function kV(t){return function IV(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function TV(t){let n=t.nodeName.toLowerCase();return"input"===n||"select"===n||"button"===n||"textarea"===n}(t)||function EV(t){return function OV(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||bM(t))}(e)&&!this.isDisabled(e)&&((null==i?void 0:i.ignoreVisibility)||this.isVisible(e))}}return t.\u0275fac=function(e){return new(e||t)(Q(dn))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function bM(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;let n=t.getAttribute("tabindex");return!(!n||isNaN(parseInt(n,10)))}function vM(t){if(!bM(t))return null;const n=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(n)?-1:n}class FV{constructor(n,e,i,o,r=!1){this._element=n,this._checker=e,this._ngZone=i,this._document=o,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,r||this.attachAnchors()}get enabled(){return this._enabled}set enabled(n){this._enabled=n,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}destroy(){const n=this._startAnchor,e=this._endAnchor;n&&(n.removeEventListener("focus",this.startAnchorListener),n.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(n){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(n)))})}focusFirstTabbableElementWhenReady(n){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(n)))})}focusLastTabbableElementWhenReady(n){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(n)))})}_getRegionBoundary(n){const e=this._element.querySelectorAll(`[cdk-focus-region-${n}], [cdkFocusRegion${n}], [cdk-focus-${n}]`);return"start"==n?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(n){const e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){const i=this._getFirstTabbableElement(e);return null==i||i.focus(n),!!i}return e.focus(n),!0}return this.focusFirstTabbableElement(n)}focusFirstTabbableElement(n){const e=this._getRegionBoundary("start");return e&&e.focus(n),!!e}focusLastTabbableElement(n){const e=this._getRegionBoundary("end");return e&&e.focus(n),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(n){if(this._checker.isFocusable(n)&&this._checker.isTabbable(n))return n;const e=n.children;for(let i=0;i=0;i--){const o=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(o)return o}return null}_createAnchor(){const n=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,n),n.classList.add("cdk-visually-hidden"),n.classList.add("cdk-focus-trap-anchor"),n.setAttribute("aria-hidden","true"),n}_toggleAnchorTabIndex(n,e){n?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(n){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}_executeOnStable(n){this._ngZone.isStable?n():this._ngZone.onStable.pipe(Ot(1)).subscribe(n)}}let yM=(()=>{class t{constructor(e,i,o){this._checker=e,this._ngZone=i,this._document=o}create(e,i=!1){return new FV(e,this._checker,this._ngZone,this._document,i)}}return t.\u0275fac=function(e){return new(e||t)(Q(B_),Q(Je),Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function V_(t){return 0===t.buttons||0===t.offsetX&&0===t.offsetY}function j_(t){const n=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!(!n||-1!==n.identifier||null!=n.radiusX&&1!==n.radiusX||null!=n.radiusY&&1!==n.radiusY)}const NV=new _e("cdk-input-modality-detector-options"),LV={ignoreKeys:[18,17,224,91,16]},Sl=ca({passive:!0,capture:!0});let BV=(()=>{class t{constructor(e,i,o,r){this._platform=e,this._mostRecentTarget=null,this._modality=new vt(null),this._lastTouchMs=0,this._onKeydown=s=>{var a,l;(null===(l=null===(a=this._options)||void 0===a?void 0:a.ignoreKeys)||void 0===l?void 0:l.some(u=>u===s.keyCode))||(this._modality.next("keyboard"),this._mostRecentTarget=Ds(s))},this._onMousedown=s=>{Date.now()-this._lastTouchMs<650||(this._modality.next(V_(s)?"keyboard":"mouse"),this._mostRecentTarget=Ds(s))},this._onTouchstart=s=>{j_(s)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Ds(s))},this._options=Object.assign(Object.assign({},LV),r),this.modalityDetected=this._modality.pipe(F_(1)),this.modalityChanged=this.modalityDetected.pipe(nd()),e.isBrowser&&i.runOutsideAngular(()=>{o.addEventListener("keydown",this._onKeydown,Sl),o.addEventListener("mousedown",this._onMousedown,Sl),o.addEventListener("touchstart",this._onTouchstart,Sl)})}get mostRecentModality(){return this._modality.value}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,Sl),document.removeEventListener("mousedown",this._onMousedown,Sl),document.removeEventListener("touchstart",this._onTouchstart,Sl))}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(Je),Q(ht),Q(NV,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const VV=new _e("liveAnnouncerElement",{providedIn:"root",factory:function jV(){return null}}),HV=new _e("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let H_=(()=>{class t{constructor(e,i,o,r){this._ngZone=i,this._defaultOptions=r,this._document=o,this._liveElement=e||this._createLiveElement()}announce(e,...i){const o=this._defaultOptions;let r,s;return 1===i.length&&"number"==typeof i[0]?s=i[0]:[r,s]=i,this.clear(),clearTimeout(this._previousTimeout),r||(r=o&&o.politeness?o.politeness:"polite"),null==s&&o&&(s=o.duration),this._liveElement.setAttribute("aria-live",r),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(a=>this._currentResolve=a)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=e,"number"==typeof s&&(this._previousTimeout=setTimeout(()=>this.clear(),s)),this._currentResolve(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){var e,i;clearTimeout(this._previousTimeout),null===(e=this._liveElement)||void 0===e||e.remove(),this._liveElement=null,null===(i=this._currentResolve)||void 0===i||i.call(this),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){const e="cdk-live-announcer-element",i=this._document.getElementsByClassName(e),o=this._document.createElement("div");for(let r=0;r{class t{constructor(e,i,o,r,s){this._ngZone=e,this._platform=i,this._inputModalityDetector=o,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new ie,this._rootNodeFocusAndBlurListener=a=>{const l=Ds(a),u="focus"===a.type?this._onFocus:this._onBlur;for(let p=l;p;p=p.parentElement)u.call(this,a,p)},this._document=r,this._detectionMode=(null==s?void 0:s.detectionMode)||0}monitor(e,i=!1){const o=$r(e);if(!this._platform.isBrowser||1!==o.nodeType)return Ge(null);const r=cM(o)||this._getDocument(),s=this._elementInfo.get(o);if(s)return i&&(s.checkChildren=!0),s.subject;const a={checkChildren:i,subject:new ie,rootNode:r};return this._elementInfo.set(o,a),this._registerGlobalListeners(a),a.subject}stopMonitoring(e){const i=$r(e),o=this._elementInfo.get(i);o&&(o.subject.complete(),this._setClasses(i),this._elementInfo.delete(i),this._removeGlobalListeners(o))}focusVia(e,i,o){const r=$r(e);r===this._getDocument().activeElement?this._getClosestElementsInfo(r).forEach(([a,l])=>this._originChanged(a,i,l)):(this._setOrigin(i),"function"==typeof r.focus&&r.focus(o))}ngOnDestroy(){this._elementInfo.forEach((e,i)=>this.stopMonitoring(i))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}_shouldBeAttributedToTouch(e){return 1===this._detectionMode||!!(null==e?void 0:e.contains(this._inputModalityDetector._mostRecentTarget))}_setClasses(e,i){e.classList.toggle("cdk-focused",!!i),e.classList.toggle("cdk-touch-focused","touch"===i),e.classList.toggle("cdk-keyboard-focused","keyboard"===i),e.classList.toggle("cdk-mouse-focused","mouse"===i),e.classList.toggle("cdk-program-focused","program"===i)}_setOrigin(e,i=!1){this._ngZone.runOutsideAngular(()=>{this._origin=e,this._originFromTouchInteraction="touch"===e&&i,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(e,i){const o=this._elementInfo.get(i),r=Ds(e);!o||!o.checkChildren&&i!==r||this._originChanged(i,this._getFocusOrigin(r),o)}_onBlur(e,i){const o=this._elementInfo.get(i);!o||o.checkChildren&&e.relatedTarget instanceof Node&&i.contains(e.relatedTarget)||(this._setClasses(i),this._emitOrigin(o.subject,null))}_emitOrigin(e,i){this._ngZone.run(()=>e.next(i))}_registerGlobalListeners(e){if(!this._platform.isBrowser)return;const i=e.rootNode,o=this._rootNodeFocusListenerCount.get(i)||0;o||this._ngZone.runOutsideAngular(()=>{i.addEventListener("focus",this._rootNodeFocusAndBlurListener,Lh),i.addEventListener("blur",this._rootNodeFocusAndBlurListener,Lh)}),this._rootNodeFocusListenerCount.set(i,o+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(tt(this._stopInputModalityDetector)).subscribe(r=>{this._setOrigin(r,!0)}))}_removeGlobalListeners(e){const i=e.rootNode;if(this._rootNodeFocusListenerCount.has(i)){const o=this._rootNodeFocusListenerCount.get(i);o>1?this._rootNodeFocusListenerCount.set(i,o-1):(i.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Lh),i.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Lh),this._rootNodeFocusListenerCount.delete(i))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(e,i,o){this._setClasses(e,i),this._emitOrigin(o.subject,i),this._lastFocusOrigin=i}_getClosestElementsInfo(e){const i=[];return this._elementInfo.forEach((o,r)=>{(r===e||o.checkChildren&&r.contains(e))&&i.push([r,o])}),i}}return t.\u0275fac=function(e){return new(e||t)(Q(Je),Q(dn),Q(BV),Q(ht,8),Q(UV,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),zV=(()=>{class t{constructor(e,i){this._elementRef=e,this._focusMonitor=i,this.cdkFocusChange=new Pe}ngAfterViewInit(){const e=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(e,1===e.nodeType&&e.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(i=>this.cdkFocusChange.emit(i))}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Fo))},t.\u0275dir=oe({type:t,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"}}),t})();const wM="cdk-high-contrast-black-on-white",DM="cdk-high-contrast-white-on-black",U_="cdk-high-contrast-active";let SM=(()=>{class t{constructor(e,i){this._platform=e,this._document=i}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);const i=this._document.defaultView||window,o=i&&i.getComputedStyle?i.getComputedStyle(e):null,r=(o&&o.backgroundColor||"").replace(/ /g,"");switch(e.remove(),r){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const e=this._document.body.classList;e.remove(U_),e.remove(wM),e.remove(DM),this._hasCheckedHighContrastMode=!0;const i=this.getHighContrastMode();1===i?(e.add(U_),e.add(wM)):2===i&&(e.add(U_),e.add(DM))}}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),MM=(()=>{class t{constructor(e){e._applyBodyHighContrastModeCssClasses()}}return t.\u0275fac=function(e){return new(e||t)(Q(SM))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Ph]]}),t})();function id(...t){return function $V(){return Ql(1)}()(ti(t,Yl(t)))}function Nn(...t){const n=Yl(t);return nt((e,i)=>{(n?id(t,e,n):id(t,e)).subscribe(i)})}function GV(t,n){if(1&t&&E(0,"mat-pseudo-checkbox",4),2&t){const e=D();m("state",e.selected?"checked":"unchecked")("disabled",e.disabled)}}function WV(t,n){if(1&t&&(d(0,"span",5),h(1),c()),2&t){const e=D();f(1),Se("(",e.group.label,")")}}const qV=["*"],ZV=new _e("mat-sanity-checks",{providedIn:"root",factory:function KV(){return!0}});let ft=(()=>{class t{constructor(e,i,o){this._sanityChecks=i,this._document=o,this._hasDoneGlobalChecks=!1,e._applyBodyHighContrastModeCssClasses(),this._hasDoneGlobalChecks||(this._hasDoneGlobalChecks=!0)}_checkIsEnabled(e){return!E_()&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[e])}}return t.\u0275fac=function(e){return new(e||t)(Q(SM),Q(ZV,8),Q(ht))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Yc],Yc]}),t})();function pa(t){return class extends t{constructor(...n){super(...n),this._disabled=!1}get disabled(){return this._disabled}set disabled(n){this._disabled=Xe(n)}}}function Gr(t,n){return class extends t{constructor(...e){super(...e),this.defaultColor=n,this.color=n}get color(){return this._color}set color(e){const i=e||this.defaultColor;i!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),i&&this._elementRef.nativeElement.classList.add(`mat-${i}`),this._color=i)}}}function vr(t){return class extends t{constructor(...n){super(...n),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(n){this._disableRipple=Xe(n)}}}function Ml(t,n=0){return class extends t{constructor(...e){super(...e),this._tabIndex=n,this.defaultTabIndex=n}get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(e){this._tabIndex=null!=e?Zn(e):this.defaultTabIndex}}}function z_(t){return class extends t{constructor(...n){super(...n),this.stateChanges=new ie,this.errorState=!1}updateErrorState(){const n=this.errorState,r=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);r!==n&&(this.errorState=r,this.stateChanges.next())}}}let od=(()=>{class t{isErrorState(e,i){return!!(e&&e.invalid&&(e.touched||i&&i.submitted))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),TM=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();class JV{constructor(n,e,i){this._renderer=n,this.element=e,this.config=i,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const kM={enterDuration:225,exitDuration:150},$_=ca({passive:!0}),EM=["mousedown","touchstart"],IM=["mouseup","mouseleave","touchend","touchcancel"];class OM{constructor(n,e,i,o){this._target=n,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,o.isBrowser&&(this._containerElement=$r(i))}fadeInRipple(n,e,i={}){const o=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),r=Object.assign(Object.assign({},kM),i.animation);i.centered&&(n=o.left+o.width/2,e=o.top+o.height/2);const s=i.radius||function n6(t,n,e){const i=Math.max(Math.abs(t-e.left),Math.abs(t-e.right)),o=Math.max(Math.abs(n-e.top),Math.abs(n-e.bottom));return Math.sqrt(i*i+o*o)}(n,e,o),a=n-o.left,l=e-o.top,u=r.enterDuration,p=document.createElement("div");p.classList.add("mat-ripple-element"),p.style.left=a-s+"px",p.style.top=l-s+"px",p.style.height=2*s+"px",p.style.width=2*s+"px",null!=i.color&&(p.style.backgroundColor=i.color),p.style.transitionDuration=`${u}ms`,this._containerElement.appendChild(p),function t6(t){window.getComputedStyle(t).getPropertyValue("opacity")}(p),p.style.transform="scale(1)";const g=new JV(this,p,i);return g.state=0,this._activeRipples.add(g),i.persistent||(this._mostRecentTransientRipple=g),this._runTimeoutOutsideZone(()=>{const v=g===this._mostRecentTransientRipple;g.state=1,!i.persistent&&(!v||!this._isPointerDown)&&g.fadeOut()},u),g}fadeOutRipple(n){const e=this._activeRipples.delete(n);if(n===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),!e)return;const i=n.element,o=Object.assign(Object.assign({},kM),n.config.animation);i.style.transitionDuration=`${o.exitDuration}ms`,i.style.opacity="0",n.state=2,this._runTimeoutOutsideZone(()=>{n.state=3,i.remove()},o.exitDuration)}fadeOutAll(){this._activeRipples.forEach(n=>n.fadeOut())}fadeOutAllNonPersistent(){this._activeRipples.forEach(n=>{n.config.persistent||n.fadeOut()})}setupTriggerEvents(n){const e=$r(n);!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(EM))}handleEvent(n){"mousedown"===n.type?this._onMousedown(n):"touchstart"===n.type?this._onTouchStart(n):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(IM),this._pointerUpEventsRegistered=!0)}_onMousedown(n){const e=V_(n),i=this._lastTouchStartEvent&&Date.now(){!n.config.persistent&&(1===n.state||n.config.terminateOnPointerUp&&0===n.state)&&n.fadeOut()}))}_runTimeoutOutsideZone(n,e=0){this._ngZone.runOutsideAngular(()=>setTimeout(n,e))}_registerEvents(n){this._ngZone.runOutsideAngular(()=>{n.forEach(e=>{this._triggerElement.addEventListener(e,this,$_)})})}_removeTriggerEvents(){this._triggerElement&&(EM.forEach(n=>{this._triggerElement.removeEventListener(n,this,$_)}),this._pointerUpEventsRegistered&&IM.forEach(n=>{this._triggerElement.removeEventListener(n,this,$_)}))}}const AM=new _e("mat-ripple-global-options");let or=(()=>{class t{constructor(e,i,o,r,s){this._elementRef=e,this._animationMode=s,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=r||{},this._rippleRenderer=new OM(this,i,e,o)}get disabled(){return this._disabled}set disabled(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(e,i=0,o){return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,i,Object.assign(Object.assign({},this.rippleConfig),o)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),e))}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(dn),b(AM,8),b(gn,8))},t.\u0275dir=oe({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-ripple-unbounded",i.unbounded)},inputs:{color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],radius:["matRippleRadius","radius"],animation:["matRippleAnimation","animation"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"]},exportAs:["matRipple"]}),t})(),fa=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})(),PM=(()=>{class t{constructor(e){this._animationMode=e,this.state="unchecked",this.disabled=!1}}return t.\u0275fac=function(e){return new(e||t)(b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(e,i){2&e&&rt("mat-pseudo-checkbox-indeterminate","indeterminate"===i.state)("mat-pseudo-checkbox-checked","checked"===i.state)("mat-pseudo-checkbox-disabled",i.disabled)("_mat-animation-noopable","NoopAnimations"===i._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(e,i){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t})(),G_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft]]}),t})();const W_=new _e("MAT_OPTION_PARENT_COMPONENT"),q_=new _e("MatOptgroup");let i6=0;class RM{constructor(n,e=!1){this.source=n,this.isUserInput=e}}let o6=(()=>{class t{constructor(e,i,o,r){this._element=e,this._changeDetectorRef=i,this._parent=o,this.group=r,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+i6++,this.onSelectionChange=new Pe,this._stateChanges=new ie}get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(e){this._disabled=Xe(e)}get disableRipple(){return!(!this._parent||!this._parent.disableRipple)}get active(){return this._active}get viewValue(){return(this._getHostElement().textContent||"").trim()}select(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}deselect(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}focus(e,i){const o=this._getHostElement();"function"==typeof o.focus&&o.focus(i)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(e){(13===e.keyCode||32===e.keyCode)&&!fi(e)&&(this._selectViaInteraction(),e.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getAriaSelected(){return this.selected||!this.multiple&&null}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue=e,this._stateChanges.next())}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(e=!1){this.onSelectionChange.emit(new RM(this,e))}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t,inputs:{value:"value",id:"id",disabled:"disabled"},outputs:{onSelectionChange:"onSelectionChange"}}),t})(),_i=(()=>{class t extends o6{constructor(e,i,o,r){super(e,i,o,r)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(W_,8),b(q_,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(e,i){1&e&&N("click",function(){return i._selectViaInteraction()})("keydown",function(r){return i._handleKeydown(r)}),2&e&&(Nr("id",i.id),et("tabindex",i._getTabIndex())("aria-selected",i._getAriaSelected())("aria-disabled",i.disabled.toString()),rt("mat-selected",i.selected)("mat-option-multiple",i.multiple)("mat-active",i.active)("mat-option-disabled",i.disabled))},exportAs:["matOption"],features:[Ce],ngContentSelectors:qV,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(e,i){1&e&&(Jt(),_(0,GV,1,2,"mat-pseudo-checkbox",0),d(1,"span",1),ct(2),c(),_(3,WV,2,1,"span",2),E(4,"div",3)),2&e&&(m("ngIf",i.multiple),f(3),m("ngIf",i.group&&i.group._inert),f(1),m("matRippleTrigger",i._getHostElement())("matRippleDisabled",i.disabled||i.disableRipple))},directives:[PM,Et,or],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t})();function K_(t,n,e){if(e.length){let i=n.toArray(),o=e.toArray(),r=0;for(let s=0;se+i?Math.max(0,t-i+n):e}let Bh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,qi,ft,G_]]}),t})();const r6=["*",[["mat-toolbar-row"]]],s6=["*","mat-toolbar-row"],a6=Gr(class{constructor(t){this._elementRef=t}});let l6=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),t})(),c6=(()=>{class t extends a6{constructor(e,i,o){super(e),this._platform=i,this._document=o}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(dn),b(ht))},t.\u0275cmp=Ae({type:t,selectors:[["mat-toolbar"]],contentQueries:function(e,i,o){if(1&e&&mt(o,l6,5),2&e){let r;Ne(r=Le())&&(i._toolbarRows=r)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(e,i){2&e&&rt("mat-toolbar-multiple-rows",i._toolbarRows.length>0)("mat-toolbar-single-row",0===i._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[Ce],ngContentSelectors:s6,decls:2,vars:0,template:function(e,i){1&e&&(Jt(r6),ct(0),ct(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),t})(),NM=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();const LM=["mat-button",""],BM=["*"],h6=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],p6=Gr(pa(vr(class{constructor(t){this._elementRef=t}})));let Ht=(()=>{class t extends p6{constructor(e,i,o){super(e),this._focusMonitor=i,this._animationMode=o,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const r of h6)this._hasHostAttributes(r)&&this._getHostElement().classList.add(r);e.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(e,i){e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...e){return e.some(i=>this._getHostElement().hasAttribute(i))}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Fo),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(e,i){if(1&e&&Tt(or,5),2&e){let o;Ne(o=Le())&&(i.ripple=o.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(e,i){2&e&&(et("disabled",i.disabled||null),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)("mat-button-disabled",i.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[Ce],attrs:LM,ngContentSelectors:BM,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(e,i){1&e&&(Jt(),d(0,"span",0),ct(1),c(),E(2,"span",1)(3,"span",2)),2&e&&(f(2),rt("mat-button-ripple-round",i.isRoundButton||i.isIconButton),m("matRippleDisabled",i._isRippleDisabled())("matRippleCentered",i.isIconButton)("matRippleTrigger",i._getHostElement()))},directives:[or],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),t})(),VM=(()=>{class t extends Ht{constructor(e,i,o,r){super(i,e,o),this._ngZone=r,this._haltDisabledEvents=s=>{this.disabled&&(s.preventDefault(),s.stopImmediatePropagation())}}ngAfterViewInit(){super.ngAfterViewInit(),this._ngZone?this._ngZone.runOutsideAngular(()=>{this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}):this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}ngOnDestroy(){super.ngOnDestroy(),this._elementRef.nativeElement.removeEventListener("click",this._haltDisabledEvents)}}return t.\u0275fac=function(e){return new(e||t)(b(Fo),b(He),b(gn,8),b(Je,8))},t.\u0275cmp=Ae({type:t,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(e,i){2&e&&(et("tabindex",i.disabled?-1:i.tabIndex)("disabled",i.disabled||null)("aria-disabled",i.disabled.toString()),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)("mat-button-disabled",i.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[Ce],attrs:LM,ngContentSelectors:BM,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(e,i){1&e&&(Jt(),d(0,"span",0),ct(1),c(),E(2,"span",1)(3,"span",2)),2&e&&(f(2),rt("mat-button-ripple-round",i.isRoundButton||i.isIconButton),m("matRippleDisabled",i._isRippleDisabled())("matRippleCentered",i.isIconButton)("matRippleTrigger",i._getHostElement()))},directives:[or],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n"],encapsulation:2,changeDetection:0}),t})(),Z_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,ft],ft]}),t})();function sd(t,n){const e=H(t)?t:()=>t,i=o=>o.error(e());return new Ue(n?o=>n.schedule(i,0,o):i)}const{isArray:f6}=Array,{getPrototypeOf:m6,prototype:g6,keys:_6}=Object;function jM(t){if(1===t.length){const n=t[0];if(f6(n))return{args:n,keys:null};if(function b6(t){return t&&"object"==typeof t&&m6(t)===g6}(n)){const e=_6(n);return{args:e.map(i=>n[i]),keys:e}}}return{args:t,keys:null}}const{isArray:v6}=Array;function Q_(t){return je(n=>function y6(t,n){return v6(n)?t(...n):t(n)}(t,n))}function HM(t,n){return t.reduce((e,i,o)=>(e[i]=n[o],e),{})}function Y_(...t){const n=Qv(t),{args:e,keys:i}=jM(t),o=new Ue(r=>{const{length:s}=e;if(!s)return void r.complete();const a=new Array(s);let l=s,u=s;for(let p=0;p{g||(g=!0,u--),a[p]=v},()=>l--,void 0,()=>{(!l||!g)&&(u||r.next(i?HM(i,a):a),r.complete())}))}});return n?o.pipe(Q_(n)):o}function _n(t){return nt((n,e)=>{let r,i=null,o=!1;i=n.subscribe(st(e,void 0,void 0,s=>{r=yi(t(s,_n(t)(n))),i?(i.unsubscribe(),i=null,r.subscribe(e)):o=!0})),o&&(i.unsubscribe(),i=null,r.subscribe(e))})}function X_(t){return nt((n,e)=>{try{n.subscribe(e)}finally{e.add(t)}})}function xl(t,n){return H(n)?$n(t,n,1):$n(t,1)}class UM{}class zM{}class Wr{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?this.lazyInit="string"==typeof n?()=>{this.headers=new Map,n.split("\n").forEach(e=>{const i=e.indexOf(":");if(i>0){const o=e.slice(0,i),r=o.toLowerCase(),s=e.slice(i+1).trim();this.maybeSetNormalizedName(o,r),this.headers.has(r)?this.headers.get(r).push(s):this.headers.set(r,[s])}})}:()=>{this.headers=new Map,Object.keys(n).forEach(e=>{let i=n[e];const o=e.toLowerCase();"string"==typeof i&&(i=[i]),i.length>0&&(this.headers.set(o,i),this.maybeSetNormalizedName(e,o))})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const e=this.headers.get(n.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,e){return this.clone({name:n,value:e,op:"a"})}set(n,e){return this.clone({name:n,value:e,op:"s"})}delete(n,e){return this.clone({name:n,value:e,op:"d"})}maybeSetNormalizedName(n,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,n)}init(){this.lazyInit&&(this.lazyInit instanceof Wr?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(e=>{this.headers.set(e,n.headers.get(e)),this.normalizedNames.set(e,n.normalizedNames.get(e))})}clone(n){const e=new Wr;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof Wr?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([n]),e}applyUpdate(n){const e=n.name.toLowerCase();switch(n.op){case"a":case"s":let i=n.value;if("string"==typeof i&&(i=[i]),0===i.length)return;this.maybeSetNormalizedName(n.name,e);const o=("a"===n.op?this.headers.get(e):void 0)||[];o.push(...i),this.headers.set(e,o);break;case"d":const r=n.value;if(r){let s=this.headers.get(e);if(!s)return;s=s.filter(a=>-1===r.indexOf(a)),0===s.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,s)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>n(this.normalizedNames.get(e),this.headers.get(e)))}}class C6{encodeKey(n){return $M(n)}encodeValue(n){return $M(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const D6=/%(\d[a-f0-9])/gi,S6={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function $M(t){return encodeURIComponent(t).replace(D6,(n,e)=>{var i;return null!==(i=S6[e])&&void 0!==i?i:n})}function GM(t){return`${t}`}class Ms{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new C6,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function w6(t,n){const e=new Map;return t.length>0&&t.replace(/^\?/,"").split("&").forEach(o=>{const r=o.indexOf("="),[s,a]=-1==r?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,r)),n.decodeValue(o.slice(r+1))],l=e.get(s)||[];l.push(a),e.set(s,l)}),e}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(e=>{const i=n.fromObject[e];this.map.set(e,Array.isArray(i)?i:[i])})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const e=this.map.get(n);return e?e[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,e){return this.clone({param:n,value:e,op:"a"})}appendAll(n){const e=[];return Object.keys(n).forEach(i=>{const o=n[i];Array.isArray(o)?o.forEach(r=>{e.push({param:i,value:r,op:"a"})}):e.push({param:i,value:o,op:"a"})}),this.clone(e)}set(n,e){return this.clone({param:n,value:e,op:"s"})}delete(n,e){return this.clone({param:n,value:e,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const e=this.encoder.encodeKey(n);return this.map.get(n).map(i=>e+"="+this.encoder.encodeValue(i)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const e=new Ms({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(n),e}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 e=("a"===n.op?this.map.get(n.param):void 0)||[];e.push(GM(n.value)),this.map.set(n.param,e);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let i=this.map.get(n.param)||[];const o=i.indexOf(GM(n.value));-1!==o&&i.splice(o,1),i.length>0?this.map.set(n.param,i):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class M6{constructor(){this.map=new Map}set(n,e){return this.map.set(n,e),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function WM(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function qM(t){return"undefined"!=typeof Blob&&t instanceof Blob}function KM(t){return"undefined"!=typeof FormData&&t instanceof FormData}class ad{constructor(n,e,i,o){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function x6(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==i?i:null,r=o):r=i,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params)),this.headers||(this.headers=new Wr),this.context||(this.context=new M6),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=e;else{const a=e.indexOf("?");this.urlWithParams=e+(-1===a?"?":av.set(C,n.setHeaders[C]),u)),n.setParams&&(p=Object.keys(n.setParams).reduce((v,C)=>v.set(C,n.setParams[C]),p)),new ad(i,o,s,{params:p,headers:u,context:g,reportProgress:l,responseType:r,withCredentials:a})}}var Yn=(()=>((Yn=Yn||{})[Yn.Sent=0]="Sent",Yn[Yn.UploadProgress=1]="UploadProgress",Yn[Yn.ResponseHeader=2]="ResponseHeader",Yn[Yn.DownloadProgress=3]="DownloadProgress",Yn[Yn.Response=4]="Response",Yn[Yn.User=5]="User",Yn))();class J_{constructor(n,e=200,i="OK"){this.headers=n.headers||new Wr,this.status=void 0!==n.status?n.status:e,this.statusText=n.statusText||i,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class eb extends J_{constructor(n={}){super(n),this.type=Yn.ResponseHeader}clone(n={}){return new eb({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 Vh extends J_{constructor(n={}){super(n),this.type=Yn.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Vh({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 ZM extends J_{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 tb(t,n){return{body:n,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let jh=(()=>{class t{constructor(e){this.handler=e}request(e,i,o={}){let r;if(e instanceof ad)r=e;else{let l,u;l=o.headers instanceof Wr?o.headers:new Wr(o.headers),o.params&&(u=o.params instanceof Ms?o.params:new Ms({fromObject:o.params})),r=new ad(e,i,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:u,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials})}const s=Ge(r).pipe(xl(l=>this.handler.handle(l)));if(e instanceof ad||"events"===o.observe)return s;const a=s.pipe(It(l=>l instanceof Vh));switch(o.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return a.pipe(je(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(je(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(je(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(je(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(e,i={}){return this.request("DELETE",e,i)}get(e,i={}){return this.request("GET",e,i)}head(e,i={}){return this.request("HEAD",e,i)}jsonp(e,i){return this.request("JSONP",e,{params:(new Ms).append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,i={}){return this.request("OPTIONS",e,i)}patch(e,i,o={}){return this.request("PATCH",e,tb(o,i))}post(e,i,o={}){return this.request("POST",e,tb(o,i))}put(e,i,o={}){return this.request("PUT",e,tb(o,i))}}return t.\u0275fac=function(e){return new(e||t)(Q(UM))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();class QM{constructor(n,e){this.next=n,this.interceptor=e}handle(n){return this.interceptor.intercept(n,this.next)}}const nb=new _e("HTTP_INTERCEPTORS");let k6=(()=>{class t{intercept(e,i){return i.handle(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const E6=/^\)\]\}',?\n/;let YM=(()=>{class t{constructor(e){this.xhrFactory=e}handle(e){if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new Ue(i=>{const o=this.xhrFactory.build();if(o.open(e.method,e.urlWithParams),e.withCredentials&&(o.withCredentials=!0),e.headers.forEach((C,M)=>o.setRequestHeader(C,M.join(","))),e.headers.has("Accept")||o.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){const C=e.detectContentTypeHeader();null!==C&&o.setRequestHeader("Content-Type",C)}if(e.responseType){const C=e.responseType.toLowerCase();o.responseType="json"!==C?C:"text"}const r=e.serializeBody();let s=null;const a=()=>{if(null!==s)return s;const C=o.statusText||"OK",M=new Wr(o.getAllResponseHeaders()),V=function I6(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(o)||e.url;return s=new eb({headers:M,status:o.status,statusText:C,url:V}),s},l=()=>{let{headers:C,status:M,statusText:V,url:K}=a(),Y=null;204!==M&&(Y=void 0===o.response?o.responseText:o.response),0===M&&(M=Y?200:0);let ee=M>=200&&M<300;if("json"===e.responseType&&"string"==typeof Y){const ke=Y;Y=Y.replace(E6,"");try{Y=""!==Y?JSON.parse(Y):null}catch(Ze){Y=ke,ee&&(ee=!1,Y={error:Ze,text:Y})}}ee?(i.next(new Vh({body:Y,headers:C,status:M,statusText:V,url:K||void 0})),i.complete()):i.error(new ZM({error:Y,headers:C,status:M,statusText:V,url:K||void 0}))},u=C=>{const{url:M}=a(),V=new ZM({error:C,status:o.status||0,statusText:o.statusText||"Unknown Error",url:M||void 0});i.error(V)};let p=!1;const g=C=>{p||(i.next(a()),p=!0);let M={type:Yn.DownloadProgress,loaded:C.loaded};C.lengthComputable&&(M.total=C.total),"text"===e.responseType&&!!o.responseText&&(M.partialText=o.responseText),i.next(M)},v=C=>{let M={type:Yn.UploadProgress,loaded:C.loaded};C.lengthComputable&&(M.total=C.total),i.next(M)};return o.addEventListener("load",l),o.addEventListener("error",u),o.addEventListener("timeout",u),o.addEventListener("abort",u),e.reportProgress&&(o.addEventListener("progress",g),null!==r&&o.upload&&o.upload.addEventListener("progress",v)),o.send(r),i.next({type:Yn.Sent}),()=>{o.removeEventListener("error",u),o.removeEventListener("abort",u),o.removeEventListener("load",l),o.removeEventListener("timeout",u),e.reportProgress&&(o.removeEventListener("progress",g),null!==r&&o.upload&&o.upload.removeEventListener("progress",v)),o.readyState!==o.DONE&&o.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(Q(nS))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const ib=new _e("XSRF_COOKIE_NAME"),ob=new _e("XSRF_HEADER_NAME");class XM{}let O6=(()=>{class t{constructor(e,i,o){this.doc=e,this.platform=i,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=WD(e,this.cookieName),this.lastCookieString=e),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(Hc),Q(ib))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),rb=(()=>{class t{constructor(e,i){this.tokenService=e,this.headerName=i}intercept(e,i){const o=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||o.startsWith("http://")||o.startsWith("https://"))return i.handle(e);const r=this.tokenService.getToken();return null!==r&&!e.headers.has(this.headerName)&&(e=e.clone({headers:e.headers.set(this.headerName,r)})),i.handle(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(XM),Q(ob))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),A6=(()=>{class t{constructor(e,i){this.backend=e,this.injector=i,this.chain=null}handle(e){if(null===this.chain){const i=this.injector.get(nb,[]);this.chain=i.reduceRight((o,r)=>new QM(o,r),this.backend)}return this.chain.handle(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(zM),Q(pn))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),P6=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:rb,useClass:k6}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:ib,useValue:e.cookieName}:[],e.headerName?{provide:ob,useValue:e.headerName}:[]]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[rb,{provide:nb,useExisting:rb,multi:!0},{provide:XM,useClass:O6},{provide:ib,useValue:"XSRF-TOKEN"},{provide:ob,useValue:"X-XSRF-TOKEN"}]}),t})(),R6=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[jh,{provide:UM,useClass:A6},YM,{provide:zM,useExisting:YM}],imports:[[P6.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();const F6=["*"];let Hh;function ld(t){var n;return(null===(n=function N6(){if(void 0===Hh&&(Hh=null,"undefined"!=typeof window)){const t=window;void 0!==t.trustedTypes&&(Hh=t.trustedTypes.createPolicy("angular#components",{createHTML:n=>n}))}return Hh}())||void 0===n?void 0:n.createHTML(t))||t}function JM(t){return Error(`Unable to find icon with the name "${t}"`)}function ex(t){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${t}".`)}function tx(t){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${t}".`)}class ma{constructor(n,e,i){this.url=n,this.svgText=e,this.options=i}}let Uh=(()=>{class t{constructor(e,i,o,r){this._httpClient=e,this._sanitizer=i,this._errorHandler=r,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass="material-icons",this._document=o}addSvgIcon(e,i,o){return this.addSvgIconInNamespace("",e,i,o)}addSvgIconLiteral(e,i,o){return this.addSvgIconLiteralInNamespace("",e,i,o)}addSvgIconInNamespace(e,i,o,r){return this._addSvgIconConfig(e,i,new ma(o,null,r))}addSvgIconResolver(e){return this._resolvers.push(e),this}addSvgIconLiteralInNamespace(e,i,o,r){const s=this._sanitizer.sanitize(Yt.HTML,o);if(!s)throw tx(o);const a=ld(s);return this._addSvgIconConfig(e,i,new ma("",a,r))}addSvgIconSet(e,i){return this.addSvgIconSetInNamespace("",e,i)}addSvgIconSetLiteral(e,i){return this.addSvgIconSetLiteralInNamespace("",e,i)}addSvgIconSetInNamespace(e,i,o){return this._addSvgIconSetConfig(e,new ma(i,null,o))}addSvgIconSetLiteralInNamespace(e,i,o){const r=this._sanitizer.sanitize(Yt.HTML,i);if(!r)throw tx(i);const s=ld(r);return this._addSvgIconSetConfig(e,new ma("",s,o))}registerFontClassAlias(e,i=e){return this._fontCssClassesByAlias.set(e,i),this}classNameForFontAlias(e){return this._fontCssClassesByAlias.get(e)||e}setDefaultFontSetClass(e){return this._defaultFontSetClass=e,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(e){const i=this._sanitizer.sanitize(Yt.RESOURCE_URL,e);if(!i)throw ex(e);const o=this._cachedIconsByUrl.get(i);return o?Ge(zh(o)):this._loadSvgIconFromConfig(new ma(e,null)).pipe(Zt(r=>this._cachedIconsByUrl.set(i,r)),je(r=>zh(r)))}getNamedSvgIcon(e,i=""){const o=nx(i,e);let r=this._svgIconConfigs.get(o);if(r)return this._getSvgFromConfig(r);if(r=this._getIconConfigFromResolvers(i,e),r)return this._svgIconConfigs.set(o,r),this._getSvgFromConfig(r);const s=this._iconSetConfigs.get(i);return s?this._getSvgFromIconSetConfigs(e,s):sd(JM(o))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(e){return e.svgText?Ge(zh(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(je(i=>zh(i)))}_getSvgFromIconSetConfigs(e,i){const o=this._extractIconWithNameFromAnySet(e,i);return o?Ge(o):Y_(i.filter(s=>!s.svgText).map(s=>this._loadSvgIconSetFromConfig(s).pipe(_n(a=>{const u=`Loading icon set URL: ${this._sanitizer.sanitize(Yt.RESOURCE_URL,s.url)} failed: ${a.message}`;return this._errorHandler.handleError(new Error(u)),Ge(null)})))).pipe(je(()=>{const s=this._extractIconWithNameFromAnySet(e,i);if(!s)throw JM(e);return s}))}_extractIconWithNameFromAnySet(e,i){for(let o=i.length-1;o>=0;o--){const r=i[o];if(r.svgText&&r.svgText.toString().indexOf(e)>-1){const s=this._svgElementFromConfig(r),a=this._extractSvgIconFromSet(s,e,r.options);if(a)return a}}return null}_loadSvgIconFromConfig(e){return this._fetchIcon(e).pipe(Zt(i=>e.svgText=i),je(()=>this._svgElementFromConfig(e)))}_loadSvgIconSetFromConfig(e){return e.svgText?Ge(null):this._fetchIcon(e).pipe(Zt(i=>e.svgText=i))}_extractSvgIconFromSet(e,i,o){const r=e.querySelector(`[id="${i}"]`);if(!r)return null;const s=r.cloneNode(!0);if(s.removeAttribute("id"),"svg"===s.nodeName.toLowerCase())return this._setSvgAttributes(s,o);if("symbol"===s.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(s),o);const a=this._svgElementFromString(ld(""));return a.appendChild(s),this._setSvgAttributes(a,o)}_svgElementFromString(e){const i=this._document.createElement("DIV");i.innerHTML=e;const o=i.querySelector("svg");if(!o)throw Error(" tag not found");return o}_toSvgElement(e){const i=this._svgElementFromString(ld("")),o=e.attributes;for(let r=0;rld(p)),X_(()=>this._inProgressUrlFetches.delete(a)),ey());return this._inProgressUrlFetches.set(a,u),u}_addSvgIconConfig(e,i,o){return this._svgIconConfigs.set(nx(e,i),o),this}_addSvgIconSetConfig(e,i){const o=this._iconSetConfigs.get(e);return o?o.push(i):this._iconSetConfigs.set(e,[i]),this}_svgElementFromConfig(e){if(!e.svgElement){const i=this._svgElementFromString(e.svgText);this._setSvgAttributes(i,e.options),e.svgElement=i}return e.svgElement}_getIconConfigFromResolvers(e,i){for(let o=0;on?n.pathname+n.search:""}}}),ix=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],z6=ix.map(t=>`[${t}]`).join(", "),$6=/^url\(['"]?#(.*?)['"]?\)$/;let bn=(()=>{class t extends j6{constructor(e,i,o,r,s){super(e),this._iconRegistry=i,this._location=r,this._errorHandler=s,this._inline=!1,this._currentIconFetch=k.EMPTY,o||e.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(e){this._inline=Xe(e)}get svgIcon(){return this._svgIcon}set svgIcon(e){e!==this._svgIcon&&(e?this._updateSvgIcon(e):this._svgIcon&&this._clearSvgElement(),this._svgIcon=e)}get fontSet(){return this._fontSet}set fontSet(e){const i=this._cleanupFontValue(e);i!==this._fontSet&&(this._fontSet=i,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(e){const i=this._cleanupFontValue(e);i!==this._fontIcon&&(this._fontIcon=i,this._updateFontIconClasses())}_splitIconName(e){if(!e)return["",""];const i=e.split(":");switch(i.length){case 1:return["",i[0]];case 2:return i;default:throw Error(`Invalid icon name: "${e}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){const e=this._elementsWithExternalReferences;if(e&&e.size){const i=this._location.getPathname();i!==this._previousPath&&(this._previousPath=i,this._prependPathToReferences(i))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(e){this._clearSvgElement();const i=this._location.getPathname();this._previousPath=i,this._cacheChildrenWithExternalReferences(e),this._prependPathToReferences(i),this._elementRef.nativeElement.appendChild(e)}_clearSvgElement(){const e=this._elementRef.nativeElement;let i=e.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();i--;){const o=e.childNodes[i];(1!==o.nodeType||"svg"===o.nodeName.toLowerCase())&&o.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;const e=this._elementRef.nativeElement,i=this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet):this._iconRegistry.getDefaultFontSetClass();i!=this._previousFontSetClass&&(this._previousFontSetClass&&e.classList.remove(this._previousFontSetClass),i&&e.classList.add(i),this._previousFontSetClass=i),this.fontIcon!=this._previousFontIconClass&&(this._previousFontIconClass&&e.classList.remove(this._previousFontIconClass),this.fontIcon&&e.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(e){return"string"==typeof e?e.trim().split(" ")[0]:e}_prependPathToReferences(e){const i=this._elementsWithExternalReferences;i&&i.forEach((o,r)=>{o.forEach(s=>{r.setAttribute(s.name,`url('${e}#${s.value}')`)})})}_cacheChildrenWithExternalReferences(e){const i=e.querySelectorAll(z6),o=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let r=0;r{const a=i[r],l=a.getAttribute(s),u=l?l.match($6):null;if(u){let p=o.get(a);p||(p=[],o.set(a,p)),p.push({name:s,value:u[1]})}})}_updateSvgIcon(e){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),e){const[i,o]=this._splitIconName(e);i&&(this._svgNamespace=i),o&&(this._svgName=o),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(o,i).pipe(Ot(1)).subscribe(r=>this._setSvgElement(r),r=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${i}:${o}! ${r.message}`))})}}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Uh),Di("aria-hidden"),b(H6),b(ps))},t.\u0275cmp=Ae({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:7,hostBindings:function(e,i){2&e&&(et("data-mat-icon-type",i._usingFontIcon()?"font":"svg")("data-mat-icon-name",i._svgName||i.fontIcon)("data-mat-icon-namespace",i._svgNamespace||i.fontSet),rt("mat-icon-inline",i.inline)("mat-icon-no-color","primary"!==i.color&&"accent"!==i.color&&"warn"!==i.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[Ce],ngContentSelectors:F6,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),ct(0))},styles:[".mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}\n"],encapsulation:2,changeDetection:0}),t})(),ox=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();const G6=["*",[["mat-card-footer"]]],W6=["*","mat-card-footer"],q6=[[["","mat-card-avatar",""],["","matCardAvatar",""]],[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],"*"],K6=["[mat-card-avatar], [matCardAvatar]","mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","*"];let rx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),t})(),sx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-card-subtitle"],["","mat-card-subtitle",""],["","matCardSubtitle",""]],hostAttrs:[1,"mat-card-subtitle"]}),t})(),$h=(()=>{class t{constructor(e){this._animationMode=e}}return t.\u0275fac=function(e){return new(e||t)(b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(e,i){2&e&&rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)},exportAs:["matCard"],ngContentSelectors:W6,decls:2,vars:0,template:function(e,i){1&e&&(Jt(G6),ct(0),ct(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}._mat-animation-noopable.mat-card{transition:none;animation:none}.mat-card .mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card .mat-divider-horizontal{left:auto;right:0}.mat-card .mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card .mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px;display:block;overflow:hidden}.mat-card-image img{width:100%}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}\n"],encapsulation:2,changeDetection:0}),t})(),Z6=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["mat-card-header"]],hostAttrs:[1,"mat-card-header"],ngContentSelectors:K6,decls:4,vars:0,consts:[[1,"mat-card-header-text"]],template:function(e,i){1&e&&(Jt(q6),ct(0),d(1,"div",0),ct(2,1),c(),ct(3,2))},encapsulation:2,changeDetection:0}),t})(),ax=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})();const Q6=["addListener","removeListener"],Y6=["addEventListener","removeEventListener"],X6=["on","off"];function Ki(t,n,e,i){if(H(e)&&(i=e,e=void 0),i)return Ki(t,n,e).pipe(Q_(i));const[o,r]=function t8(t){return H(t.addEventListener)&&H(t.removeEventListener)}(t)?Y6.map(s=>a=>t[s](n,a,e)):function J6(t){return H(t.addListener)&&H(t.removeListener)}(t)?Q6.map(lx(t,n)):function e8(t){return H(t.on)&&H(t.off)}(t)?X6.map(lx(t,n)):[];if(!o&&Xp(t))return $n(s=>Ki(s,n,e))(yi(t));if(!o)throw new TypeError("Invalid event target");return new Ue(s=>{const a=(...l)=>s.next(1r(a)})}function lx(t,n){return e=>i=>t[e](n,i)}const n8=["primaryValueBar"],i8=Gr(class{constructor(t){this._elementRef=t}},"primary"),o8=new _e("mat-progress-bar-location",{providedIn:"root",factory:function r8(){const t=hc(ht),n=t?t.location:null;return{getPathname:()=>n?n.pathname+n.search:""}}}),s8=new _e("MAT_PROGRESS_BAR_DEFAULT_OPTIONS");let a8=0,cx=(()=>{class t extends i8{constructor(e,i,o,r,s,a){super(e),this._ngZone=i,this._animationMode=o,this._changeDetectorRef=a,this._isNoopAnimation=!1,this._value=0,this._bufferValue=0,this.animationEnd=new Pe,this._animationEndSubscription=k.EMPTY,this.mode="determinate",this.progressbarId="mat-progress-bar-"+a8++;const l=r?r.getPathname().split("#")[0]:"";this._rectangleFillValue=`url('${l}#${this.progressbarId}')`,this._isNoopAnimation="NoopAnimations"===o,s&&(s.color&&(this.color=this.defaultColor=s.color),this.mode=s.mode||this.mode)}get value(){return this._value}set value(e){var i;this._value=dx(Zn(e)||0),null===(i=this._changeDetectorRef)||void 0===i||i.markForCheck()}get bufferValue(){return this._bufferValue}set bufferValue(e){var i;this._bufferValue=dx(e||0),null===(i=this._changeDetectorRef)||void 0===i||i.markForCheck()}_primaryTransform(){return{transform:`scale3d(${this.value/100}, 1, 1)`}}_bufferTransform(){return"buffer"===this.mode?{transform:`scale3d(${this.bufferValue/100}, 1, 1)`}:null}ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{const e=this._primaryValueBar.nativeElement;this._animationEndSubscription=Ki(e,"transitionend").pipe(It(i=>i.target===e)).subscribe(()=>{0!==this.animationEnd.observers.length&&("determinate"===this.mode||"buffer"===this.mode)&&this._ngZone.run(()=>this.animationEnd.next({value:this.value}))})})}ngOnDestroy(){this._animationEndSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(gn,8),b(o8,8),b(s8,8),b(At))},t.\u0275cmp=Ae({type:t,selectors:[["mat-progress-bar"]],viewQuery:function(e,i){if(1&e&&Tt(n8,5),2&e){let o;Ne(o=Le())&&(i._primaryValueBar=o.first)}},hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-progress-bar"],hostVars:4,hostBindings:function(e,i){2&e&&(et("aria-valuenow","indeterminate"===i.mode||"query"===i.mode?null:i.value)("mode",i.mode),rt("_mat-animation-noopable",i._isNoopAnimation))},inputs:{color:"color",value:"value",bufferValue:"bufferValue",mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],features:[Ce],decls:10,vars:4,consts:[["aria-hidden","true"],["width","100%","height","4","focusable","false",1,"mat-progress-bar-background","mat-progress-bar-element"],["x","4","y","0","width","8","height","4","patternUnits","userSpaceOnUse",3,"id"],["cx","2","cy","2","r","2"],["width","100%","height","100%"],[1,"mat-progress-bar-buffer","mat-progress-bar-element",3,"ngStyle"],[1,"mat-progress-bar-primary","mat-progress-bar-fill","mat-progress-bar-element",3,"ngStyle"],["primaryValueBar",""],[1,"mat-progress-bar-secondary","mat-progress-bar-fill","mat-progress-bar-element"]],template:function(e,i){1&e&&(d(0,"div",0),hn(),d(1,"svg",1)(2,"defs")(3,"pattern",2),E(4,"circle",3),c()(),E(5,"rect",4),c(),Qs(),E(6,"div",5)(7,"div",6,7)(9,"div",8),c()),2&e&&(f(3),m("id",i.progressbarId),f(2),et("fill",i._rectangleFillValue),f(1),m("ngStyle",i._bufferTransform()),f(1),m("ngStyle",i._primaryTransform()))},directives:[Ug],styles:['.mat-progress-bar{display:block;height:4px;overflow:hidden;position:relative;transition:opacity 250ms linear;width:100%}._mat-animation-noopable.mat-progress-bar{transition:none;animation:none}.mat-progress-bar .mat-progress-bar-element,.mat-progress-bar .mat-progress-bar-fill::after{height:100%;position:absolute;width:100%}.mat-progress-bar .mat-progress-bar-background{width:calc(100% + 10px)}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-background{display:none}.mat-progress-bar .mat-progress-bar-buffer{transform-origin:top left;transition:transform 250ms ease}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-buffer{border-top:solid 5px;opacity:.5}.mat-progress-bar .mat-progress-bar-secondary{display:none}.mat-progress-bar .mat-progress-bar-fill{animation:none;transform-origin:top left;transition:transform 250ms ease}.cdk-high-contrast-active .mat-progress-bar .mat-progress-bar-fill{border-top:solid 4px}.mat-progress-bar .mat-progress-bar-fill::after{animation:none;content:"";display:inline-block;left:0}.mat-progress-bar[dir=rtl],[dir=rtl] .mat-progress-bar{transform:rotateY(180deg)}.mat-progress-bar[mode=query]{transform:rotateZ(180deg)}.mat-progress-bar[mode=query][dir=rtl],[dir=rtl] .mat-progress-bar[mode=query]{transform:rotateZ(180deg) rotateY(180deg)}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-fill,.mat-progress-bar[mode=query] .mat-progress-bar-fill{transition:none}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-primary,.mat-progress-bar[mode=query] .mat-progress-bar-primary{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-primary-indeterminate-translate 2000ms infinite linear;left:-145.166611%}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-primary.mat-progress-bar-fill::after,.mat-progress-bar[mode=query] .mat-progress-bar-primary.mat-progress-bar-fill::after{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-primary-indeterminate-scale 2000ms infinite linear}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-secondary,.mat-progress-bar[mode=query] .mat-progress-bar-secondary{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-secondary-indeterminate-translate 2000ms infinite linear;left:-54.888891%;display:block}.mat-progress-bar[mode=indeterminate] .mat-progress-bar-secondary.mat-progress-bar-fill::after,.mat-progress-bar[mode=query] .mat-progress-bar-secondary.mat-progress-bar-fill::after{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-secondary-indeterminate-scale 2000ms infinite linear}.mat-progress-bar[mode=buffer] .mat-progress-bar-background{-webkit-backface-visibility:hidden;backface-visibility:hidden;animation:mat-progress-bar-background-scroll 250ms infinite linear;display:block}.mat-progress-bar._mat-animation-noopable .mat-progress-bar-fill,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-buffer,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-primary,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-primary.mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-secondary,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-secondary.mat-progress-bar-fill::after,.mat-progress-bar._mat-animation-noopable .mat-progress-bar-background{animation:none;transition-duration:1ms}@keyframes mat-progress-bar-primary-indeterminate-translate{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.67142%)}100%{transform:translateX(200.611057%)}}@keyframes mat-progress-bar-primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes mat-progress-bar-secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.386165%)}100%{transform:translateX(160.277782%)}}@keyframes mat-progress-bar-secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes mat-progress-bar-background-scroll{to{transform:translateX(-8px)}}\n'],encapsulation:2,changeDetection:0}),t})();function dx(t,n=0,e=100){return Math.max(n,Math.min(e,t))}let ux=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft],ft]}),t})();function Gh(t){return t&&"function"==typeof t.connect}class hx{applyChanges(n,e,i,o,r){n.forEachOperation((s,a,l)=>{let u,p;if(null==s.previousIndex){const g=i(s,a,l);u=e.createEmbeddedView(g.templateRef,g.context,g.index),p=1}else null==l?(e.remove(a),p=3):(u=e.get(a),e.move(u,l),p=2);r&&r({context:null==u?void 0:u.context,operation:p,record:s})})}detach(){}}class Tl{constructor(n=!1,e,i=!0){this._multiple=n,this._emitChanges=i,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new ie,e&&e.length&&(n?e.forEach(o=>this._markSelected(o)):this._markSelected(e[0]),this._selectedToEmit.length=0)}get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}select(...n){this._verifyValueAssignment(n),n.forEach(e=>this._markSelected(e)),this._emitChangeEvent()}deselect(...n){this._verifyValueAssignment(n),n.forEach(e=>this._unmarkSelected(e)),this._emitChangeEvent()}toggle(n){this.isSelected(n)?this.deselect(n):this.select(n)}clear(){this._unmarkAll(),this._emitChangeEvent()}isSelected(n){return this._selection.has(n)}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(n){this._multiple&&this.selected&&this._selected.sort(n)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(n){this.isSelected(n)||(this._multiple||this._unmarkAll(),this._selection.add(n),this._emitChanges&&this._selectedToEmit.push(n))}_unmarkSelected(n){this.isSelected(n)&&(this._selection.delete(n),this._emitChanges&&this._deselectedToEmit.push(n))}_unmarkAll(){this.isEmpty()||this._selection.forEach(n=>this._unmarkSelected(n))}_verifyValueAssignment(n){}}let sb=(()=>{class t{constructor(){this._listeners=[]}notify(e,i){for(let o of this._listeners)o(e,i)}listen(e){return this._listeners.push(e),()=>{this._listeners=this._listeners.filter(i=>e!==i)}}ngOnDestroy(){this._listeners=[]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const cd=new _e("_ViewRepeater");let fx=(()=>{class t{constructor(e,i){this._renderer=e,this._elementRef=i,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}}return t.\u0275fac=function(e){return new(e||t)(b(Lr),b(He))},t.\u0275dir=oe({type:t}),t})(),ga=(()=>{class t extends fx{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,features:[Ce]}),t})();const Zi=new _e("NgValueAccessor"),d8={provide:Zi,useExisting:zt(()=>Dn),multi:!0},h8=new _e("CompositionEventMode");let Dn=(()=>{class t extends fx{constructor(e,i,o){super(e,i),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function u8(){const t=_r()?_r().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(e){this.setProperty("value",null==e?"":e)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}}return t.\u0275fac=function(e){return new(e||t)(b(Lr),b(He),b(h8,8))},t.\u0275dir=oe({type:t,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(e,i){1&e&&N("input",function(r){return i._handleInput(r.target.value)})("blur",function(){return i.onTouched()})("compositionstart",function(){return i._compositionStart()})("compositionend",function(r){return i._compositionEnd(r.target.value)})},features:[ze([d8]),Ce]}),t})();function xs(t){return null==t||0===t.length}function gx(t){return null!=t&&"number"==typeof t.length}const bi=new _e("NgValidators"),Ts=new _e("NgAsyncValidators"),p8=/^(?=.{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])?)*$/;class de{static min(n){return function _x(t){return n=>{if(xs(n.value)||xs(t))return null;const e=parseFloat(n.value);return!isNaN(e)&&e{if(xs(n.value)||xs(t))return null;const e=parseFloat(n.value);return!isNaN(e)&&e>t?{max:{max:t,actual:n.value}}:null}}(n)}static required(n){return vx(n)}static requiredTrue(n){return function yx(t){return!0===t.value?null:{required:!0}}(n)}static email(n){return function Cx(t){return xs(t.value)||p8.test(t.value)?null:{email:!0}}(n)}static minLength(n){return wx(n)}static maxLength(n){return Dx(n)}static pattern(n){return Sx(n)}static nullValidator(n){return null}static compose(n){return Ix(n)}static composeAsync(n){return Ox(n)}}function vx(t){return xs(t.value)?{required:!0}:null}function wx(t){return n=>xs(n.value)||!gx(n.value)?null:n.value.lengthgx(n.value)&&n.value.length>t?{maxlength:{requiredLength:t,actualLength:n.value.length}}:null}function Sx(t){if(!t)return Wh;let n,e;return"string"==typeof t?(e="","^"!==t.charAt(0)&&(e+="^"),e+=t,"$"!==t.charAt(t.length-1)&&(e+="$"),n=new RegExp(e)):(e=t.toString(),n=t),i=>{if(xs(i.value))return null;const o=i.value;return n.test(o)?null:{pattern:{requiredPattern:e,actualValue:o}}}}function Wh(t){return null}function Mx(t){return null!=t}function xx(t){const n=xc(t)?ti(t):t;return $m(n),n}function Tx(t){let n={};return t.forEach(e=>{n=null!=e?Object.assign(Object.assign({},n),e):n}),0===Object.keys(n).length?null:n}function kx(t,n){return n.map(e=>e(t))}function Ex(t){return t.map(n=>function f8(t){return!t.validate}(n)?n:e=>n.validate(e))}function Ix(t){if(!t)return null;const n=t.filter(Mx);return 0==n.length?null:function(e){return Tx(kx(e,n))}}function ab(t){return null!=t?Ix(Ex(t)):null}function Ox(t){if(!t)return null;const n=t.filter(Mx);return 0==n.length?null:function(e){return Y_(kx(e,n).map(xx)).pipe(je(Tx))}}function lb(t){return null!=t?Ox(Ex(t)):null}function Ax(t,n){return null===t?[n]:Array.isArray(t)?[...t,n]:[t,n]}function Px(t){return t._rawValidators}function Rx(t){return t._rawAsyncValidators}function cb(t){return t?Array.isArray(t)?t:[t]:[]}function qh(t,n){return Array.isArray(t)?t.includes(n):t===n}function Fx(t,n){const e=cb(n);return cb(t).forEach(o=>{qh(e,o)||e.push(o)}),e}function Nx(t,n){return cb(n).filter(e=>!qh(t,e))}class Lx{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=ab(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=lb(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){this.control&&this.control.reset(n)}hasError(n,e){return!!this.control&&this.control.hasError(n,e)}getError(n,e){return this.control?this.control.getError(n,e):null}}class rr extends Lx{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Li extends Lx{get formDirective(){return null}get path(){return null}}class Bx{constructor(n){this._cd=n}is(n){var e,i,o;return"submitted"===n?!!(null===(e=this._cd)||void 0===e?void 0:e.submitted):!!(null===(o=null===(i=this._cd)||void 0===i?void 0:i.control)||void 0===o?void 0:o[n])}}let vn=(()=>{class t extends Bx{constructor(e){super(e)}}return t.\u0275fac=function(e){return new(e||t)(b(rr,2))},t.\u0275dir=oe({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,i){2&e&&rt("ng-untouched",i.is("untouched"))("ng-touched",i.is("touched"))("ng-pristine",i.is("pristine"))("ng-dirty",i.is("dirty"))("ng-valid",i.is("valid"))("ng-invalid",i.is("invalid"))("ng-pending",i.is("pending"))},features:[Ce]}),t})(),Hn=(()=>{class t extends Bx{constructor(e){super(e)}}return t.\u0275fac=function(e){return new(e||t)(b(Li,10))},t.\u0275dir=oe({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(e,i){2&e&&rt("ng-untouched",i.is("untouched"))("ng-touched",i.is("touched"))("ng-pristine",i.is("pristine"))("ng-dirty",i.is("dirty"))("ng-valid",i.is("valid"))("ng-invalid",i.is("invalid"))("ng-pending",i.is("pending"))("ng-submitted",i.is("submitted"))},features:[Ce]}),t})();function Zh(t,n){return[...n.path,t]}function dd(t,n){hb(t,n),n.valueAccessor.writeValue(t.value),function w8(t,n){n.valueAccessor.registerOnChange(e=>{t._pendingValue=e,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&jx(t,n)})}(t,n),function S8(t,n){const e=(i,o)=>{n.valueAccessor.writeValue(i),o&&n.viewToModelUpdate(i)};t.registerOnChange(e),n._registerOnDestroy(()=>{t._unregisterOnChange(e)})}(t,n),function D8(t,n){n.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&jx(t,n),"submit"!==t.updateOn&&t.markAsTouched()})}(t,n),function C8(t,n){if(n.valueAccessor.setDisabledState){const e=i=>{n.valueAccessor.setDisabledState(i)};t.registerOnDisabledChange(e),n._registerOnDestroy(()=>{t._unregisterOnDisabledChange(e)})}}(t,n)}function Qh(t,n,e=!0){const i=()=>{};n.valueAccessor&&(n.valueAccessor.registerOnChange(i),n.valueAccessor.registerOnTouched(i)),Xh(t,n),t&&(n._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function Yh(t,n){t.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(n)})}function hb(t,n){const e=Px(t);null!==n.validator?t.setValidators(Ax(e,n.validator)):"function"==typeof e&&t.setValidators([e]);const i=Rx(t);null!==n.asyncValidator?t.setAsyncValidators(Ax(i,n.asyncValidator)):"function"==typeof i&&t.setAsyncValidators([i]);const o=()=>t.updateValueAndValidity();Yh(n._rawValidators,o),Yh(n._rawAsyncValidators,o)}function Xh(t,n){let e=!1;if(null!==t){if(null!==n.validator){const o=Px(t);if(Array.isArray(o)&&o.length>0){const r=o.filter(s=>s!==n.validator);r.length!==o.length&&(e=!0,t.setValidators(r))}}if(null!==n.asyncValidator){const o=Rx(t);if(Array.isArray(o)&&o.length>0){const r=o.filter(s=>s!==n.asyncValidator);r.length!==o.length&&(e=!0,t.setAsyncValidators(r))}}}const i=()=>{};return Yh(n._rawValidators,i),Yh(n._rawAsyncValidators,i),e}function jx(t,n){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Hx(t,n){hb(t,n)}function pb(t,n){if(!t.hasOwnProperty("model"))return!1;const e=t.model;return!!e.isFirstChange()||!Object.is(n,e.currentValue)}function zx(t,n){t._syncPendingControls(),n.forEach(e=>{const i=e.control;"submit"===i.updateOn&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function fb(t,n){if(!n)return null;let e,i,o;return Array.isArray(n),n.forEach(r=>{r.constructor===Dn?e=r:function T8(t){return Object.getPrototypeOf(t.constructor)===ga}(r)?i=r:o=r}),o||i||e||null}function mb(t,n){const e=t.indexOf(n);e>-1&&t.splice(e,1)}const ud="VALID",Jh="INVALID",kl="PENDING",hd="DISABLED";function _b(t){return(ep(t)?t.validators:t)||null}function $x(t){return Array.isArray(t)?ab(t):t||null}function bb(t,n){return(ep(n)?n.asyncValidators:t)||null}function Gx(t){return Array.isArray(t)?lb(t):t||null}function ep(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}const vb=t=>t instanceof X,tp=t=>t instanceof an,Wx=t=>t instanceof po;function qx(t){return vb(t)?t.value:t.getRawValue()}function Kx(t,n){const e=tp(t),i=t.controls;if(!(e?Object.keys(i):i).length)throw new Qe(1e3,"");if(!i[n])throw new Qe(1001,"")}function Zx(t,n){tp(t),t._forEachChild((i,o)=>{if(void 0===n[o])throw new Qe(1002,"")})}class yb{constructor(n,e){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=n,this._rawAsyncValidators=e,this._composedValidatorFn=$x(this._rawValidators),this._composedAsyncValidatorFn=Gx(this._rawAsyncValidators)}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===ud}get invalid(){return this.status===Jh}get pending(){return this.status==kl}get disabled(){return this.status===hd}get enabled(){return this.status!==hd}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._rawValidators=n,this._composedValidatorFn=$x(n)}setAsyncValidators(n){this._rawAsyncValidators=n,this._composedAsyncValidatorFn=Gx(n)}addValidators(n){this.setValidators(Fx(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(Fx(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(Nx(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(Nx(n,this._rawAsyncValidators))}hasValidator(n){return qh(this._rawValidators,n)}hasAsyncValidator(n){return qh(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(e=>{e.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(e=>{e.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=kl,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const e=this._parentMarkedDirty(n.onlySelf);this.status=hd,this.errors=null,this._forEachChild(i=>{i.disable(Object.assign(Object.assign({},n),{onlySelf:!0}))}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},n),{skipPristineCheck:e})),this._onDisabledChange.forEach(i=>i(!0))}enable(n={}){const e=this._parentMarkedDirty(n.onlySelf);this.status=ud,this._forEachChild(i=>{i.enable(Object.assign(Object.assign({},n),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},n),{skipPristineCheck:e})),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ud||this.status===kl)&&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(e=>e._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?hd:ud}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=kl,this._hasOwnPendingAsyncValidator=!0;const e=xx(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(i=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(i,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,e={}){this.errors=n,this._updateControlsErrors(!1!==e.emitEvent)}get(n){return function k8(t,n,e){if(null==n||(Array.isArray(n)||(n=n.split(e)),Array.isArray(n)&&0===n.length))return null;let i=t;return n.forEach(o=>{i=tp(i)?i.controls.hasOwnProperty(o)?i.controls[o]:null:Wx(i)&&i.at(o)||null}),i}(this,n,".")}getError(n,e){const i=e?this.get(e):this;return i&&i.errors?i.errors[n]:null}hasError(n,e){return!!this.getError(n,e)}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 Pe,this.statusChanges=new Pe}_calculateStatus(){return this._allControlsDisabled()?hd:this.errors?Jh:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(kl)?kl:this._anyControlsHaveStatus(Jh)?Jh:ud}_anyControlsHaveStatus(n){return this._anyControls(e=>e.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)}_isBoxedValue(n){return"object"==typeof n&&null!==n&&2===Object.keys(n).length&&"value"in n&&"disabled"in n}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){ep(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class X extends yb{constructor(n=null,e,i){super(_b(e),bb(i,e)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),ep(e)&&e.initialValueIsDefault&&(this.defaultValue=this._isBoxedValue(n)?n.value:n)}setValue(n,e={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(i=>i(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(n,e={}){this.setValue(n,e)}reset(n=this.defaultValue,e={}){this._applyFormState(n),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){mb(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){mb(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){this._isBoxedValue(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}}class an extends yb{constructor(n,e,i){super(_b(e),bb(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,e){return this.controls[n]?this.controls[n]:(this.controls[n]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(n,e,i={}){this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(n,e={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(n,e,i={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],e&&this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,e={}){Zx(this,n),Object.keys(n).forEach(i=>{Kx(this,i),this.controls[i].setValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){null!=n&&(Object.keys(n).forEach(i=>{this.controls[i]&&this.controls[i].patchValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n={},e={}){this._forEachChild((i,o)=>{i.reset(n[o],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(n,e,i)=>(n[i]=qx(e),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(e,i)=>!!i._syncPendingControls()||e);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(e=>{const i=this.controls[e];i&&n(i,e)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const e of Object.keys(this.controls)){const i=this.controls[e];if(this.contains(e)&&n(i))return!0}return!1}_reduceValue(){return this._reduceChildren({},(n,e,i)=>((e.enabled||this.disabled)&&(n[i]=e.value),n))}_reduceChildren(n,e){let i=n;return this._forEachChild((o,r)=>{i=e(i,o,r)}),i}_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}}class po extends yb{constructor(n,e,i){super(_b(e),bb(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(n){return this.controls[n]}push(n,e={}){this.controls.push(n),this._registerControl(n),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(n,e,i={}){this.controls.splice(n,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(n,e={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(n,e,i={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),e&&(this.controls.splice(n,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(n,e={}){Zx(this,n),n.forEach((i,o)=>{Kx(this,o),this.at(o).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){null!=n&&(n.forEach((i,o)=>{this.at(o)&&this.at(o).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n=[],e={}){this._forEachChild((i,o)=>{i.reset(n[o],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(n=>qx(n))}clear(n={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:n.emitEvent}))}_syncPendingControls(){let n=this.controls.reduce((e,i)=>!!i._syncPendingControls()||e,!1);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){this.controls.forEach((e,i)=>{n(e,i)})}_updateValue(){this.value=this.controls.filter(n=>n.enabled||this.disabled).map(n=>n.value)}_anyControls(n){return this.controls.some(e=>e.enabled&&n(e))}_setUpControls(){this._forEachChild(n=>this._registerControl(n))}_allControlsDisabled(){for(const n of this.controls)if(n.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(n){n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)}}const E8={provide:Li,useExisting:zt(()=>ks)},pd=(()=>Promise.resolve(null))();let ks=(()=>{class t extends Li{constructor(e,i){super(),this.submitted=!1,this._directives=new Set,this.ngSubmit=new Pe,this.form=new an({},ab(e),lb(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){pd.then(()=>{const i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),dd(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){pd.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){pd.then(()=>{const i=this._findContainer(e.path),o=new an({});Hx(o,e),i.registerControl(e.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){pd.then(()=>{const i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){pd.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submitted=!0,zx(this.form,this._directives),this.ngSubmit.emit(e),!1}onReset(){this.resetForm()}resetForm(e){this.form.reset(e),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}}return t.\u0275fac=function(e){return new(e||t)(b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(e,i){1&e&&N("submit",function(r){return i.onSubmit(r)})("reset",function(){return i.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ze([E8]),Ce]}),t})(),Qx=(()=>{class t extends Li{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Zh(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,features:[Ce]}),t})();const O8={provide:rr,useExisting:zt(()=>El)},Xx=(()=>Promise.resolve(null))();let El=(()=>{class t extends rr{constructor(e,i,o,r,s){super(),this._changeDetectorRef=s,this.control=new X,this._registered=!1,this.update=new Pe,this._parent=e,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=fb(0,r)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){const i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),pb(e,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(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){dd(this.control,this),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(e){Xx.then(()=>{var i;this.control.setValue(e,{emitViewToModelChange:!1}),null===(i=this._changeDetectorRef)||void 0===i||i.markForCheck()})}_updateDisabled(e){const i=e.isDisabled.currentValue,o=""===i||i&&"false"!==i;Xx.then(()=>{var r;o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),null===(r=this._changeDetectorRef)||void 0===r||r.markForCheck()})}_getPath(e){return this._parent?Zh(e,this._parent):[e]}}return t.\u0275fac=function(e){return new(e||t)(b(Li,9),b(bi,10),b(Ts,10),b(Zi,10),b(At,8))},t.\u0275dir=oe({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[ze([O8]),Ce,nn]}),t})(),xi=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const A8={provide:Zi,useExisting:zt(()=>Cb),multi:!0};let Cb=(()=>{class t extends ga{writeValue(e){this.setProperty("value",null==e?"":e)}registerOnChange(e){this.onChange=i=>{e(""==i?null:parseFloat(i))}}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(e,i){1&e&&N("input",function(r){return i.onChange(r.target.value)})("blur",function(){return i.onTouched()})},features:[ze([A8]),Ce]}),t})(),Jx=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const wb=new _e("NgModelWithFormControlWarning"),N8={provide:rr,useExisting:zt(()=>Il)};let Il=(()=>{class t extends rr{constructor(e,i,o,r){super(),this._ngModelWarningConfig=r,this.update=new Pe,this._ngModelWarningSent=!1,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=fb(0,o)}set isDisabled(e){}ngOnChanges(e){if(this._isControlChanged(e)){const i=e.form.previousValue;i&&Qh(i,this,!1),dd(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}pb(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&Qh(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}}return t._ngModelWarningSentOnce=!1,t.\u0275fac=function(e){return new(e||t)(b(bi,10),b(Ts,10),b(Zi,10),b(wb,8))},t.\u0275dir=oe({type:t,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[ze([N8]),Ce,nn]}),t})();const L8={provide:Li,useExisting:zt(()=>Sn)};let Sn=(()=>{class t extends Li{constructor(e,i){super(),this.validators=e,this.asyncValidators=i,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new Pe,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Xh(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){const i=this.form.get(e.path);return dd(i,e),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){Qh(e.control||null,e,!1),mb(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this.submitted=!0,zx(this.form,this.directives),this.ngSubmit.emit(e),!1}onReset(){this.resetForm()}resetForm(e){this.form.reset(e),this.submitted=!1}_updateDomValue(){this.directives.forEach(e=>{const i=e.control,o=this.form.get(e.path);i!==o&&(Qh(i||null,e),vb(o)&&(dd(o,e),e.control=o))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){const i=this.form.get(e.path);Hx(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){const i=this.form.get(e.path);i&&function M8(t,n){return Xh(t,n)}(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){hb(this.form,this),this._oldForm&&Xh(this._oldForm,this)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["","formGroup",""]],hostBindings:function(e,i){1&e&&N("submit",function(r){return i.onSubmit(r)})("reset",function(){return i.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ze([L8]),Ce,nn]}),t})();const B8={provide:Li,useExisting:zt(()=>fd)};let fd=(()=>{class t extends Qx{constructor(e,i,o){super(),this._parent=e,this._setValidators(i),this._setAsyncValidators(o)}_checkParentType(){nT(this._parent)}}return t.\u0275fac=function(e){return new(e||t)(b(Li,13),b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["","formGroupName",""]],inputs:{name:["formGroupName","name"]},features:[ze([B8]),Ce]}),t})();const V8={provide:Li,useExisting:zt(()=>md)};let md=(()=>{class t extends Li{constructor(e,i,o){super(),this._parent=e,this._setValidators(i),this._setAsyncValidators(o)}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return Zh(null==this.name?this.name:this.name.toString(),this._parent)}_checkParentType(){nT(this._parent)}}return t.\u0275fac=function(e){return new(e||t)(b(Li,13),b(bi,10),b(Ts,10))},t.\u0275dir=oe({type:t,selectors:[["","formArrayName",""]],inputs:{name:["formArrayName","name"]},features:[ze([V8]),Ce]}),t})();function nT(t){return!(t instanceof fd||t instanceof Sn||t instanceof md)}const j8={provide:rr,useExisting:zt(()=>Xn)};let Xn=(()=>{class t extends rr{constructor(e,i,o,r,s){super(),this._ngModelWarningConfig=s,this._added=!1,this.update=new Pe,this._ngModelWarningSent=!1,this._parent=e,this._setValidators(i),this._setAsyncValidators(o),this.valueAccessor=fb(0,r)}set isDisabled(e){}ngOnChanges(e){this._added||this._setUpControl(),pb(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return Zh(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}return t._ngModelWarningSentOnce=!1,t.\u0275fac=function(e){return new(e||t)(b(Li,13),b(bi,10),b(Ts,10),b(Zi,10),b(wb,8))},t.\u0275dir=oe({type:t,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[ze([j8]),Ce,nn]}),t})();function rT(t){return"number"==typeof t?t:parseInt(t,10)}let _a=(()=>{class t{constructor(){this._validator=Wh}ngOnChanges(e){if(this.inputName in e){const i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):Wh,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return null!=e}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,features:[nn]}),t})();const Q8={provide:bi,useExisting:zt(()=>fo),multi:!0};let fo=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=e=>function q8(t){return null!=t&&!1!==t&&"false"!=`${t}`}(e),this.createValidator=e=>vx}enabled(e){return e}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(e,i){2&e&&et("required",i._enabled?"":null)},inputs:{required:"required"},features:[ze([Q8]),Ce]}),t})();const J8={provide:bi,useExisting:zt(()=>xb),multi:!0};let xb=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="minlength",this.normalizeInput=e=>rT(e),this.createValidator=e=>wx(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","minlength","","formControlName",""],["","minlength","","formControl",""],["","minlength","","ngModel",""]],hostVars:1,hostBindings:function(e,i){2&e&&et("minlength",i._enabled?i.minlength:null)},inputs:{minlength:"minlength"},features:[ze([J8]),Ce]}),t})();const ej={provide:bi,useExisting:zt(()=>Tb),multi:!0};let Tb=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=e=>rT(e),this.createValidator=e=>Dx(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(e,i){2&e&&et("maxlength",i._enabled?i.maxlength:null)},inputs:{maxlength:"maxlength"},features:[ze([ej]),Ce]}),t})();const tj={provide:bi,useExisting:zt(()=>kb),multi:!0};let kb=(()=>{class t extends _a{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=e=>e,this.createValidator=e=>Sx(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(e,i){2&e&&et("pattern",i._enabled?i.pattern:null)},inputs:{pattern:"pattern"},features:[ze([tj]),Ce]}),t})(),dT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Jx]]}),t})(),nj=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[dT]}),t})(),Eb=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:wb,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[dT]}),t})(),Es=(()=>{class t{group(e,i=null){const o=this._reduceControls(e);let a,r=null,s=null;return null!=i&&(function ij(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(i)?(r=null!=i.validators?i.validators:null,s=null!=i.asyncValidators?i.asyncValidators:null,a=null!=i.updateOn?i.updateOn:void 0):(r=null!=i.validator?i.validator:null,s=null!=i.asyncValidator?i.asyncValidator:null)),new an(o,{asyncValidators:s,updateOn:a,validators:r})}control(e,i,o){return new X(e,i,o)}array(e,i,o){const r=e.map(s=>this._createControl(s));return new po(r,i,o)}_reduceControls(e){const i={};return Object.keys(e).forEach(o=>{i[o]=this._createControl(e[o])}),i}_createControl(e){return vb(e)||tp(e)||Wx(e)?e:Array.isArray(e)?this.control(e[0],e.length>1?e[1]:null,e.length>2?e[2]:null):this.control(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:Eb}),t})(),uT=(()=>{class t{constructor(){this._vertical=!1,this._inset=!1}get vertical(){return this._vertical}set vertical(e){this._vertical=Xe(e)}get inset(){return this._inset}set inset(e){this._inset=Xe(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(e,i){2&e&&(et("aria-orientation",i.vertical?"vertical":"horizontal"),rt("mat-divider-vertical",i.vertical)("mat-divider-horizontal",!i.vertical)("mat-divider-inset",i.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(e,i){},styles:[".mat-divider{display:block;margin:0;border-top-width:1px;border-top-style:solid}.mat-divider.mat-divider-vertical{border-top:0;border-right-width:1px;border-right-style:solid}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}\n"],encapsulation:2,changeDetection:0}),t})(),Ib=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft],ft]}),t})(),pT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[TM,fa,ft,G_,qi],TM,ft,G_,Ib]}),t})();const _j=["connectionContainer"],bj=["inputContainer"],vj=["label"];function yj(t,n){1&t&&(be(0),d(1,"div",14),E(2,"div",15)(3,"div",16)(4,"div",17),c(),d(5,"div",18),E(6,"div",15)(7,"div",16)(8,"div",17),c(),ve())}function Cj(t,n){if(1&t){const e=pe();d(0,"div",19),N("cdkObserveContent",function(){return se(e),D().updateOutlineGap()}),ct(1,1),c()}2&t&&m("cdkObserveContentDisabled","outline"!=D().appearance)}function wj(t,n){if(1&t&&(be(0),ct(1,2),d(2,"span"),h(3),c(),ve()),2&t){const e=D(2);f(3),Ee(e._control.placeholder)}}function Dj(t,n){1&t&&ct(0,3,["*ngSwitchCase","true"])}function Sj(t,n){1&t&&(d(0,"span",23),h(1," *"),c())}function Mj(t,n){if(1&t){const e=pe();d(0,"label",20,21),N("cdkObserveContent",function(){return se(e),D().updateOutlineGap()}),_(2,wj,4,1,"ng-container",12),_(3,Dj,1,0,"ng-content",12),_(4,Sj,2,0,"span",22),c()}if(2&t){const e=D();rt("mat-empty",e._control.empty&&!e._shouldAlwaysFloat())("mat-form-field-empty",e._control.empty&&!e._shouldAlwaysFloat())("mat-accent","accent"==e.color)("mat-warn","warn"==e.color),m("cdkObserveContentDisabled","outline"!=e.appearance)("id",e._labelId)("ngSwitch",e._hasLabel()),et("for",e._control.id)("aria-owns",e._control.id),f(2),m("ngSwitchCase",!1),f(1),m("ngSwitchCase",!0),f(1),m("ngIf",!e.hideRequiredMarker&&e._control.required&&!e._control.disabled)}}function xj(t,n){1&t&&(d(0,"div",24),ct(1,4),c())}function Tj(t,n){if(1&t&&(d(0,"div",25),E(1,"span",26),c()),2&t){const e=D();f(1),rt("mat-accent","accent"==e.color)("mat-warn","warn"==e.color)}}function kj(t,n){1&t&&(d(0,"div"),ct(1,5),c()),2&t&&m("@transitionMessages",D()._subscriptAnimationState)}function Ej(t,n){if(1&t&&(d(0,"div",30),h(1),c()),2&t){const e=D(2);m("id",e._hintLabelId),f(1),Ee(e.hintLabel)}}function Ij(t,n){if(1&t&&(d(0,"div",27),_(1,Ej,2,2,"div",28),ct(2,6),E(3,"div",29),ct(4,7),c()),2&t){const e=D();m("@transitionMessages",e._subscriptAnimationState),f(1),m("ngIf",e.hintLabel)}}const Oj=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Aj=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"];let Pj=0;const fT=new _e("MatError");let Ob=(()=>{class t{constructor(e,i){this.id="mat-error-"+Pj++,e||i.nativeElement.setAttribute("aria-live","polite")}}return t.\u0275fac=function(e){return new(e||t)(Di("aria-live"),b(He))},t.\u0275dir=oe({type:t,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(e,i){2&e&&et("id",i.id)},inputs:{id:"id"},features:[ze([{provide:fT,useExisting:t}])]}),t})();const Rj={transitionMessages:Ao("transitionMessages",[jn("enter",Vt({opacity:1,transform:"translateY(0%)"})),Kn("void => enter",[Vt({opacity:0,transform:"translateY(-5px)"}),ai("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let gd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t}),t})(),Fj=0;const mT=new _e("MatHint");let np=(()=>{class t{constructor(){this.align="start",this.id="mat-hint-"+Fj++}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-hint"]],hostAttrs:[1,"mat-hint"],hostVars:4,hostBindings:function(e,i){2&e&&(et("id",i.id)("align",null),rt("mat-form-field-hint-end","end"===i.align))},inputs:{align:"align",id:"id"},features:[ze([{provide:mT,useExisting:t}])]}),t})(),Mn=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-label"]]}),t})(),Nj=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-placeholder"]]}),t})();const Lj=new _e("MatPrefix"),gT=new _e("MatSuffix");let Ab=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["","matSuffix",""]],features:[ze([{provide:gT,useExisting:t}])]}),t})(),_T=0;const Vj=Gr(class{constructor(t){this._elementRef=t}},"primary"),jj=new _e("MAT_FORM_FIELD_DEFAULT_OPTIONS"),ip=new _e("MatFormField");let En=(()=>{class t extends Vj{constructor(e,i,o,r,s,a,l){super(e),this._changeDetectorRef=i,this._dir=o,this._defaults=r,this._platform=s,this._ngZone=a,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new ie,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+_T++,this._labelId="mat-form-field-label-"+_T++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==l,this.appearance=r&&r.appearance?r.appearance:"legacy",this._hideRequiredMarker=!(!r||null==r.hideRequiredMarker)&&r.hideRequiredMarker}get appearance(){return this._appearance}set appearance(e){const i=this._appearance;this._appearance=e||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&i!==e&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=Xe(e)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(e){this._explicitFormFieldControl=e}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const e=this._control;e.controlType&&this._elementRef.nativeElement.classList.add(`mat-form-field-type-${e.controlType}`),e.stateChanges.pipe(Nn(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),e.ngControl&&e.ngControl.valueChanges&&e.ngControl.valueChanges.pipe(tt(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe(tt(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),Tn(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Nn(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Nn(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(tt(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(e){const i=this._control?this._control.ngControl:null;return i&&i[e]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}_shouldLabelFloat(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,Ki(this._label.nativeElement,"transitionend").pipe(Ot(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push(...this._control.userAriaDescribedBy.split(" ")),"hint"===this._getDisplayedMessages()){const i=this._hintChildren?this._hintChildren.find(r=>"start"===r.align):null,o=this._hintChildren?this._hintChildren.find(r=>"end"===r.align):null;i?e.push(i.id):this._hintLabel&&e.push(this._hintLabelId),o&&e.push(o.id)}else this._errorChildren&&e.push(...this._errorChildren.map(i=>i.id));this._control.setDescribedByIds(e)}}_validateControlChild(){}updateOutlineGap(){const e=this._label?this._label.nativeElement:null,i=this._connectionContainerRef.nativeElement,o=".mat-form-field-outline-start",r=".mat-form-field-outline-gap";if("outline"!==this.appearance||!this._platform.isBrowser)return;if(!e||!e.children.length||!e.textContent.trim()){const p=i.querySelectorAll(`${o}, ${r}`);for(let g=0;g0?.75*M+10:0}for(let p=0;p{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,Ph],ft]}),t})();function op(t=0,n,e=_V){let i=-1;return null!=n&&(Zv(n)?e=n:i=n),new Ue(o=>{let r=function Uj(t){return t instanceof Date&&!isNaN(t)}(t)?+t-e.now():t;r<0&&(r=0);let s=0;return e.schedule(function(){o.closed||(o.next(s++),0<=i?this.schedule(void 0,i):o.complete())},r)})}function Pb(t,n=td){return function Hj(t){return nt((n,e)=>{let i=!1,o=null,r=null,s=!1;const a=()=>{if(null==r||r.unsubscribe(),r=null,i){i=!1;const u=o;o=null,e.next(u)}s&&e.complete()},l=()=>{r=null,s&&e.complete()};n.subscribe(st(e,u=>{i=!0,o=u,r||yi(t(u)).subscribe(r=st(e,a,l))},()=>{s=!0,(!i||!r||r.closed)&&e.complete()}))})}(()=>op(t,n))}const vT=ca({passive:!0});let zj=(()=>{class t{constructor(e,i){this._platform=e,this._ngZone=i,this._monitoredElements=new Map}monitor(e){if(!this._platform.isBrowser)return Co;const i=$r(e),o=this._monitoredElements.get(i);if(o)return o.subject;const r=new ie,s="cdk-text-field-autofilled",a=l=>{"cdk-text-field-autofill-start"!==l.animationName||i.classList.contains(s)?"cdk-text-field-autofill-end"===l.animationName&&i.classList.contains(s)&&(i.classList.remove(s),this._ngZone.run(()=>r.next({target:l.target,isAutofilled:!1}))):(i.classList.add(s),this._ngZone.run(()=>r.next({target:l.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{i.addEventListener("animationstart",a,vT),i.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(i,{subject:r,unlisten:()=>{i.removeEventListener("animationstart",a,vT)}}),r}stopMonitoring(e){const i=$r(e),o=this._monitoredElements.get(i);o&&(o.unlisten(),o.subject.complete(),i.classList.remove("cdk-text-field-autofill-monitored"),i.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(i))}ngOnDestroy(){this._monitoredElements.forEach((e,i)=>this.stopMonitoring(i))}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(Je))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),yT=(()=>{class t{constructor(e,i,o,r){this._elementRef=e,this._platform=i,this._ngZone=o,this._destroyed=new ie,this._enabled=!0,this._previousMinRows=-1,this._isViewInited=!1,this._handleFocusEvent=s=>{this._hasFocus="focus"===s.type},this._document=r,this._textareaElement=this._elementRef.nativeElement}get minRows(){return this._minRows}set minRows(e){this._minRows=Zn(e),this._setMinHeight()}get maxRows(){return this._maxRows}set maxRows(e){this._maxRows=Zn(e),this._setMaxHeight()}get enabled(){return this._enabled}set enabled(e){e=Xe(e),this._enabled!==e&&((this._enabled=e)?this.resizeToFitContent(!0):this.reset())}get placeholder(){return this._textareaElement.placeholder}set placeholder(e){this._cachedPlaceholderHeight=void 0,e?this._textareaElement.setAttribute("placeholder",e):this._textareaElement.removeAttribute("placeholder"),this._cacheTextareaPlaceholderHeight()}_setMinHeight(){const e=this.minRows&&this._cachedLineHeight?this.minRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.minHeight=e)}_setMaxHeight(){const e=this.maxRows&&this._cachedLineHeight?this.maxRows*this._cachedLineHeight+"px":null;e&&(this._textareaElement.style.maxHeight=e)}ngAfterViewInit(){this._platform.isBrowser&&(this._initialHeight=this._textareaElement.style.height,this.resizeToFitContent(),this._ngZone.runOutsideAngular(()=>{Ki(this._getWindow(),"resize").pipe(Pb(16),tt(this._destroyed)).subscribe(()=>this.resizeToFitContent(!0)),this._textareaElement.addEventListener("focus",this._handleFocusEvent),this._textareaElement.addEventListener("blur",this._handleFocusEvent)}),this._isViewInited=!0,this.resizeToFitContent(!0))}ngOnDestroy(){this._textareaElement.removeEventListener("focus",this._handleFocusEvent),this._textareaElement.removeEventListener("blur",this._handleFocusEvent),this._destroyed.next(),this._destroyed.complete()}_cacheTextareaLineHeight(){if(this._cachedLineHeight)return;let e=this._textareaElement.cloneNode(!1);e.rows=1,e.style.position="absolute",e.style.visibility="hidden",e.style.border="none",e.style.padding="0",e.style.height="",e.style.minHeight="",e.style.maxHeight="",e.style.overflow="hidden",this._textareaElement.parentNode.appendChild(e),this._cachedLineHeight=e.clientHeight,e.remove(),this._setMinHeight(),this._setMaxHeight()}_measureScrollHeight(){const e=this._textareaElement,i=e.style.marginBottom||"",o=this._platform.FIREFOX,r=o&&this._hasFocus,s=o?"cdk-textarea-autosize-measuring-firefox":"cdk-textarea-autosize-measuring";r&&(e.style.marginBottom=`${e.clientHeight}px`),e.classList.add(s);const a=e.scrollHeight-4;return e.classList.remove(s),r&&(e.style.marginBottom=i),a}_cacheTextareaPlaceholderHeight(){if(!this._isViewInited||null!=this._cachedPlaceholderHeight)return;if(!this.placeholder)return void(this._cachedPlaceholderHeight=0);const e=this._textareaElement.value;this._textareaElement.value=this._textareaElement.placeholder,this._cachedPlaceholderHeight=this._measureScrollHeight(),this._textareaElement.value=e}ngDoCheck(){this._platform.isBrowser&&this.resizeToFitContent()}resizeToFitContent(e=!1){if(!this._enabled||(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),!this._cachedLineHeight))return;const i=this._elementRef.nativeElement,o=i.value;if(!e&&this._minRows===this._previousMinRows&&o===this._previousValue)return;const r=this._measureScrollHeight(),s=Math.max(r,this._cachedPlaceholderHeight||0);i.style.height=`${s}px`,this._ngZone.runOutsideAngular(()=>{"undefined"!=typeof requestAnimationFrame?requestAnimationFrame(()=>this._scrollToCaretPosition(i)):setTimeout(()=>this._scrollToCaretPosition(i))}),this._previousValue=o,this._previousMinRows=this._minRows}reset(){void 0!==this._initialHeight&&(this._textareaElement.style.height=this._initialHeight)}_noopInputHandler(){}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollToCaretPosition(e){const{selectionStart:i,selectionEnd:o}=e;!this._destroyed.isStopped&&this._hasFocus&&e.setSelectionRange(i,o)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(dn),b(Je),b(ht,8))},t.\u0275dir=oe({type:t,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(e,i){1&e&&N("input",function(){return i._noopInputHandler()})},inputs:{minRows:["cdkAutosizeMinRows","minRows"],maxRows:["cdkAutosizeMaxRows","maxRows"],enabled:["cdkTextareaAutosize","enabled"],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"]}),t})(),CT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const $j=new _e("MAT_INPUT_VALUE_ACCESSOR"),Gj=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Wj=0;const qj=z_(class{constructor(t,n,e,i){this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=e,this.ngControl=i}});let ci=(()=>{class t extends qj{constructor(e,i,o,r,s,a,l,u,p,g){super(a,r,s,o),this._elementRef=e,this._platform=i,this._autofillMonitor=u,this._formField=g,this._uid="mat-input-"+Wj++,this.focused=!1,this.stateChanges=new ie,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(M=>aM().has(M)),this._iOSKeyupListener=M=>{const V=M.target;!V.value&&0===V.selectionStart&&0===V.selectionEnd&&(V.setSelectionRange(1,1),V.setSelectionRange(0,0))};const v=this._elementRef.nativeElement,C=v.nodeName.toLowerCase();this._inputValueAccessor=l||v,this._previousNativeValue=this.value,this.id=this.id,i.IOS&&p.runOutsideAngular(()=>{e.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===C,this._isTextarea="textarea"===C,this._isInFormField=!!g,this._isNativeSelect&&(this.controlType=v.multiple?"mat-native-select-multiple":"mat-native-select")}get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(e){this._disabled=Xe(e),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(e){this._id=e||this._uid}get required(){var e,i,o,r;return null!==(r=null!==(e=this._required)&&void 0!==e?e:null===(o=null===(i=this.ngControl)||void 0===i?void 0:i.control)||void 0===o?void 0:o.hasValidator(de.required))&&void 0!==r&&r}set required(e){this._required=Xe(e)}get type(){return this._type}set type(e){this._type=e||"text",this._validateType(),!this._isTextarea&&aM().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(e){this._readonly=Xe(e)}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(e=>{this.autofilled=e.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener)}ngDoCheck(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(e){this._elementRef.nativeElement.focus(e)}_focusChanged(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){var e,i;const o=(null===(i=null===(e=this._formField)||void 0===e?void 0:e._hideControlPlaceholder)||void 0===i?void 0:i.call(e))?null:this.placeholder;if(o!==this._previousPlaceholder){const r=this._elementRef.nativeElement;this._previousPlaceholder=o,o?r.setAttribute("placeholder",o):r.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}_validateType(){Gj.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let e=this._elementRef.nativeElement.validity;return e&&e.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const e=this._elementRef.nativeElement,i=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&i&&i.label)}return this.focused||!this.empty}setDescribedByIds(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const e=this._elementRef.nativeElement;return this._isNativeSelect&&(e.multiple||e.size>1)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(dn),b(rr,10),b(ks,8),b(Sn,8),b(od),b($j,10),b(zj),b(Je),b(ip,8))},t.\u0275dir=oe({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:12,hostBindings:function(e,i){1&e&&N("focus",function(){return i._focusChanged(!0)})("blur",function(){return i._focusChanged(!1)})("input",function(){return i._onInput()}),2&e&&(Nr("disabled",i.disabled)("required",i.required),et("id",i.id)("data-placeholder",i.placeholder)("name",i.name||null)("readonly",i.readonly&&!i._isNativeSelect||null)("aria-invalid",i.empty&&i.required?null:i.errorState)("aria-required",i.required),rt("mat-input-server",i._isServer)("mat-native-select-inline",i._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[ze([{provide:gd,useExisting:t}]),Ce,nn]}),t})(),wT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[od],imports:[[CT,_d,ft],CT,_d]}),t})();const bd={schedule(t){let n=requestAnimationFrame,e=cancelAnimationFrame;const{delegate:i}=bd;i&&(n=i.requestAnimationFrame,e=i.cancelAnimationFrame);const o=n(r=>{e=void 0,t(r)});return new k(()=>null==e?void 0:e(o))},requestAnimationFrame(...t){const{delegate:n}=bd;return((null==n?void 0:n.requestAnimationFrame)||requestAnimationFrame)(...t)},cancelAnimationFrame(...t){const{delegate:n}=bd;return((null==n?void 0:n.cancelAnimationFrame)||cancelAnimationFrame)(...t)},delegate:void 0};new class Zj extends R_{flush(n){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let o;n=n||i.shift();do{if(o=n.execute(n.state,n.delay))break}while((n=i[0])&&n.id===e&&i.shift());if(this._active=!1,o){for(;(n=i[0])&&n.id===e&&i.shift();)n.unsubscribe();throw o}}}(class Kj extends P_{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}requestAsyncId(n,e,i=0){return null!==i&&i>0?super.requestAsyncId(n,e,i):(n.actions.push(this),n._scheduled||(n._scheduled=bd.requestAnimationFrame(()=>n.flush(void 0))))}recycleAsyncId(n,e,i=0){var o;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(n,e,i);const{actions:r}=n;null!=e&&(null===(o=r[r.length-1])||void 0===o?void 0:o.id)!==e&&(bd.cancelAnimationFrame(e),n._scheduled=void 0)}});let Rb,Yj=1;const rp={};function DT(t){return t in rp&&(delete rp[t],!0)}const Xj={setImmediate(t){const n=Yj++;return rp[n]=!0,Rb||(Rb=Promise.resolve()),Rb.then(()=>DT(n)&&t()),n},clearImmediate(t){DT(t)}},{setImmediate:Jj,clearImmediate:e7}=Xj,sp={setImmediate(...t){const{delegate:n}=sp;return((null==n?void 0:n.setImmediate)||Jj)(...t)},clearImmediate(t){const{delegate:n}=sp;return((null==n?void 0:n.clearImmediate)||e7)(t)},delegate:void 0},Fb=new class n7 extends R_{flush(n){this._active=!0;const e=this._scheduled;this._scheduled=void 0;const{actions:i}=this;let o;n=n||i.shift();do{if(o=n.execute(n.state,n.delay))break}while((n=i[0])&&n.id===e&&i.shift());if(this._active=!1,o){for(;(n=i[0])&&n.id===e&&i.shift();)n.unsubscribe();throw o}}}(class t7 extends P_{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}requestAsyncId(n,e,i=0){return null!==i&&i>0?super.requestAsyncId(n,e,i):(n.actions.push(this),n._scheduled||(n._scheduled=sp.setImmediate(n.flush.bind(n,void 0))))}recycleAsyncId(n,e,i=0){var o;if(null!=i?i>0:this.delay>0)return super.recycleAsyncId(n,e,i);const{actions:r}=n;null!=e&&(null===(o=r[r.length-1])||void 0===o?void 0:o.id)!==e&&(sp.clearImmediate(e),n._scheduled===e&&(n._scheduled=void 0))}});let vd=(()=>{class t{constructor(e,i,o){this._ngZone=e,this._platform=i,this._scrolled=new ie,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=o}register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){const i=this.scrollContainers.get(e);i&&(i.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=20){return this._platform.isBrowser?new Ue(i=>{this._globalSubscription||this._addGlobalListener();const o=e>0?this._scrolled.pipe(Pb(e)).subscribe(i):this._scrolled.subscribe(i);return this._scrolledCount++,()=>{o.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Ge()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((e,i)=>this.deregister(i)),this._scrolled.complete()}ancestorScrolled(e,i){const o=this.getAncestorScrollContainers(e);return this.scrolled(i).pipe(It(r=>!r||o.indexOf(r)>-1))}getAncestorScrollContainers(e){const i=[];return this.scrollContainers.forEach((o,r)=>{this._scrollableContainsElement(r,e)&&i.push(r)}),i}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(e,i){let o=$r(i),r=e.getElementRef().nativeElement;do{if(o==r)return!0}while(o=o.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>Ki(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.\u0275fac=function(e){return new(e||t)(Q(Je),Q(dn),Q(ht,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),yd=(()=>{class t{constructor(e,i,o,r){this.elementRef=e,this.scrollDispatcher=i,this.ngZone=o,this.dir=r,this._destroyed=new ie,this._elementScrolled=new Ue(s=>this.ngZone.runOutsideAngular(()=>Ki(this.elementRef.nativeElement,"scroll").pipe(tt(this._destroyed)).subscribe(s)))}ngOnInit(){this.scrollDispatcher.register(this)}ngOnDestroy(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){const i=this.elementRef.nativeElement,o=this.dir&&"rtl"==this.dir.value;null==e.left&&(e.left=o?e.end:e.start),null==e.right&&(e.right=o?e.start:e.end),null!=e.bottom&&(e.top=i.scrollHeight-i.clientHeight-e.bottom),o&&0!=Jc()?(null!=e.left&&(e.right=i.scrollWidth-i.clientWidth-e.left),2==Jc()?e.left=e.right:1==Jc()&&(e.left=e.right?-e.right:e.right)):null!=e.right&&(e.left=i.scrollWidth-i.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){const i=this.elementRef.nativeElement;lM()?i.scrollTo(e):(null!=e.top&&(i.scrollTop=e.top),null!=e.left&&(i.scrollLeft=e.left))}measureScrollOffset(e){const i="left",o="right",r=this.elementRef.nativeElement;if("top"==e)return r.scrollTop;if("bottom"==e)return r.scrollHeight-r.clientHeight-r.scrollTop;const s=this.dir&&"rtl"==this.dir.value;return"start"==e?e=s?o:i:"end"==e&&(e=s?i:o),s&&2==Jc()?e==i?r.scrollWidth-r.clientWidth-r.scrollLeft:r.scrollLeft:s&&1==Jc()?e==i?r.scrollLeft+r.scrollWidth-r.clientWidth:-r.scrollLeft:e==i?r.scrollLeft:r.scrollWidth-r.clientWidth-r.scrollLeft}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(vd),b(Je),b(li,8))},t.\u0275dir=oe({type:t,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]}),t})(),yr=(()=>{class t{constructor(e,i,o){this._platform=e,this._change=new ie,this._changeListener=r=>{this._change.next(r)},this._document=o,i.runOutsideAngular(()=>{if(e.isBrowser){const r=this._getWindow();r.addEventListener("resize",this._changeListener),r.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){const e=this.getViewportScrollPosition(),{width:i,height:o}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+o,right:e.left+i,height:o,width:i}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const e=this._document,i=this._getWindow(),o=e.documentElement,r=o.getBoundingClientRect();return{top:-r.top||e.body.scrollTop||i.scrollY||o.scrollTop||0,left:-r.left||e.body.scrollLeft||i.scrollX||o.scrollLeft||0}}change(e=20){return e>0?this._change.pipe(Pb(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}}return t.\u0275fac=function(e){return new(e||t)(Q(dn),Q(Je),Q(ht,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Is=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),Nb=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Yc,Is],Yc,Is]}),t})();class Lb{attach(n){return this._attachedHost=n,n.attach(this)}detach(){let n=this._attachedHost;null!=n&&(this._attachedHost=null,n.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(n){this._attachedHost=n}}class Ol extends Lb{constructor(n,e,i,o){super(),this.component=n,this.viewContainerRef=e,this.injector=i,this.componentFactoryResolver=o}}class qr extends Lb{constructor(n,e,i){super(),this.templateRef=n,this.viewContainerRef=e,this.context=i}get origin(){return this.templateRef.elementRef}attach(n,e=this.context){return this.context=e,super.attach(n)}detach(){return this.context=void 0,super.detach()}}class s7 extends Lb{constructor(n){super(),this.element=n instanceof He?n.nativeElement:n}}class ap{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(n){return n instanceof Ol?(this._attachedPortal=n,this.attachComponentPortal(n)):n instanceof qr?(this._attachedPortal=n,this.attachTemplatePortal(n)):this.attachDomPortal&&n instanceof s7?(this._attachedPortal=n,this.attachDomPortal(n)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(n){this._disposeFn=n}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class a7 extends ap{constructor(n,e,i,o,r){super(),this.outletElement=n,this._componentFactoryResolver=e,this._appRef=i,this._defaultInjector=o,this.attachDomPortal=s=>{const a=s.element,l=this._document.createComment("dom-portal");a.parentNode.insertBefore(l,a),this.outletElement.appendChild(a),this._attachedPortal=s,super.setDisposeFn(()=>{l.parentNode&&l.parentNode.replaceChild(a,l)})},this._document=r}attachComponentPortal(n){const i=(n.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(n.component);let o;return n.viewContainerRef?(o=n.viewContainerRef.createComponent(i,n.viewContainerRef.length,n.injector||n.viewContainerRef.injector),this.setDisposeFn(()=>o.destroy())):(o=i.create(n.injector||this._defaultInjector||pn.NULL),this._appRef.attachView(o.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(o.hostView),o.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(o)),this._attachedPortal=n,o}attachTemplatePortal(n){let e=n.viewContainerRef,i=e.createEmbeddedView(n.templateRef,n.context);return i.rootNodes.forEach(o=>this.outletElement.appendChild(o)),i.detectChanges(),this.setDisposeFn(()=>{let o=e.indexOf(i);-1!==o&&e.remove(o)}),this._attachedPortal=n,i}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(n){return n.hostView.rootNodes[0]}}let l7=(()=>{class t extends qr{constructor(e,i){super(e,i)}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(sn))},t.\u0275dir=oe({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[Ce]}),t})(),Os=(()=>{class t extends ap{constructor(e,i,o){super(),this._componentFactoryResolver=e,this._viewContainerRef=i,this._isInitialized=!1,this.attached=new Pe,this.attachDomPortal=r=>{const s=r.element,a=this._document.createComment("dom-portal");r.setAttachedHost(this),s.parentNode.insertBefore(a,s),this._getRootNode().appendChild(s),this._attachedPortal=r,super.setDisposeFn(()=>{a.parentNode&&a.parentNode.replaceChild(s,a)})},this._document=o}get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedPortal=null,this._attachedRef=null}attachComponentPortal(e){e.setAttachedHost(this);const i=null!=e.viewContainerRef?e.viewContainerRef:this._viewContainerRef,r=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component),s=i.createComponent(r,i.length,e.injector||i.injector);return i!==this._viewContainerRef&&this._getRootNode().appendChild(s.hostView.rootNodes[0]),super.setDisposeFn(()=>s.destroy()),this._attachedPortal=e,this._attachedRef=s,this.attached.emit(s),s}attachTemplatePortal(e){e.setAttachedHost(this);const i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context);return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i}_getRootNode(){const e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}}return t.\u0275fac=function(e){return new(e||t)(b(gs),b(sn),b(ht))},t.\u0275dir=oe({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[Ce]}),t})(),Cd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const ST=lM();class d7{constructor(n,e){this._viewportRuler=n,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const n=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=n.style.left||"",this._previousHTMLStyles.top=n.style.top||"",n.style.left=Qn(-this._previousScrollPosition.left),n.style.top=Qn(-this._previousScrollPosition.top),n.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const n=this._document.documentElement,i=n.style,o=this._document.body.style,r=i.scrollBehavior||"",s=o.scrollBehavior||"";this._isEnabled=!1,i.left=this._previousHTMLStyles.left,i.top=this._previousHTMLStyles.top,n.classList.remove("cdk-global-scrollblock"),ST&&(i.scrollBehavior=o.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),ST&&(i.scrollBehavior=r,o.scrollBehavior=s)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const e=this._document.body,i=this._viewportRuler.getViewportSize();return e.scrollHeight>i.height||e.scrollWidth>i.width}}class u7{constructor(n,e,i,o){this._scrollDispatcher=n,this._ngZone=e,this._viewportRuler=i,this._config=o,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(n){this._overlayRef=n}enable(){if(this._scrollSubscription)return;const n=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=n.subscribe(()=>{const e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=n.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class MT{enable(){}disable(){}attach(){}}function Bb(t,n){return n.some(e=>t.bottome.bottom||t.righte.right)}function xT(t,n){return n.some(e=>t.tope.bottom||t.lefte.right)}class h7{constructor(n,e,i,o){this._scrollDispatcher=n,this._viewportRuler=e,this._ngZone=i,this._config=o,this._scrollSubscription=null}attach(n){this._overlayRef=n}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:i,height:o}=this._viewportRuler.getViewportSize();Bb(e,[{width:i,height:o,bottom:o,right:i,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let p7=(()=>{class t{constructor(e,i,o,r){this._scrollDispatcher=e,this._viewportRuler=i,this._ngZone=o,this.noop=()=>new MT,this.close=s=>new u7(this._scrollDispatcher,this._ngZone,this._viewportRuler,s),this.block=()=>new d7(this._viewportRuler,this._document),this.reposition=s=>new h7(this._scrollDispatcher,this._viewportRuler,this._ngZone,s),this._document=r}}return t.\u0275fac=function(e){return new(e||t)(Q(vd),Q(yr),Q(Je),Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();class Al{constructor(n){if(this.scrollStrategy=new MT,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,n){const e=Object.keys(n);for(const i of e)void 0!==n[i]&&(this[i]=n[i])}}}class f7{constructor(n,e){this.connectionPair=n,this.scrollableViewProperties=e}}class m7{constructor(n,e,i,o,r,s,a,l,u){this._portalOutlet=n,this._host=e,this._pane=i,this._config=o,this._ngZone=r,this._keyboardDispatcher=s,this._document=a,this._location=l,this._outsideClickDispatcher=u,this._backdropElement=null,this._backdropClick=new ie,this._attachments=new ie,this._detachments=new ie,this._locationChanges=k.EMPTY,this._backdropClickHandler=p=>this._backdropClick.next(p),this._backdropTransitionendHandler=p=>{this._disposeBackdrop(p.target)},this._keydownEvents=new ie,this._outsidePointerEvents=new ie,o.scrollStrategy&&(this._scrollStrategy=o.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=o.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(n){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const e=this._portalOutlet.attach(n);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const n=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),n}dispose(){var n;const e=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),null===(n=this._host)||void 0===n||n.remove(),this._previousHostParent=this._pane=this._host=null,e&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(n){n!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=n,this.hasAttached()&&(n.attach(this),this.updatePosition()))}updateSize(n){this._config=Object.assign(Object.assign({},this._config),n),this._updateElementSize()}setDirection(n){this._config=Object.assign(Object.assign({},this._config),{direction:n}),this._updateElementDirection()}addPanelClass(n){this._pane&&this._toggleClasses(this._pane,n,!0)}removePanelClass(n){this._pane&&this._toggleClasses(this._pane,n,!1)}getDirection(){const n=this._config.direction;return n?"string"==typeof n?n:n.value:"ltr"}updateScrollStrategy(n){n!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=n,this.hasAttached()&&(n.attach(this),n.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const n=this._pane.style;n.width=Qn(this._config.width),n.height=Qn(this._config.height),n.minWidth=Qn(this._config.minWidth),n.minHeight=Qn(this._config.minHeight),n.maxWidth=Qn(this._config.maxWidth),n.maxHeight=Qn(this._config.maxHeight)}_togglePointerEvents(n){this._pane.style.pointerEvents=n?"":"none"}_attachBackdrop(){const n="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(n)})}):this._backdropElement.classList.add(n)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const n=this._backdropElement;!n||(n.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{n.addEventListener("transitionend",this._backdropTransitionendHandler)}),n.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(n)},500)))}_toggleClasses(n,e,i){const o=Ah(e||[]).filter(r=>!!r);o.length&&(i?n.classList.add(...o):n.classList.remove(...o))}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const n=this._ngZone.onStable.pipe(tt(Tn(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),n.unsubscribe())})})}_disposeScrollStrategy(){const n=this._scrollStrategy;n&&(n.disable(),n.detach&&n.detach())}_disposeBackdrop(n){n&&(n.removeEventListener("click",this._backdropClickHandler),n.removeEventListener("transitionend",this._backdropTransitionendHandler),n.remove(),this._backdropElement===n&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}let Vb=(()=>{class t{constructor(e,i){this._platform=i,this._document=e}ngOnDestroy(){var e;null===(e=this._containerElement)||void 0===e||e.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const e="cdk-overlay-container";if(this._platform.isBrowser||E_()){const o=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let r=0;r{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const n=this._originRect,e=this._overlayRect,i=this._viewportRect,o=this._containerRect,r=[];let s;for(let a of this._preferredPositions){let l=this._getOriginPoint(n,o,a),u=this._getOverlayPoint(l,e,a),p=this._getOverlayFit(u,e,i,a);if(p.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(a,l);this._canFitWithFlexibleDimensions(p,u,i)?r.push({position:a,origin:l,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(l,a)}):(!s||s.overlayFit.visibleAreal&&(l=p,a=u)}return this._isPushed=!1,void this._applyPosition(a.position,a.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(s.position,s.originPoint);this._applyPosition(s.position,s.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&ba(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(TT),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const n=this._lastPosition;if(n){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const e=this._getOriginPoint(this._originRect,this._containerRect,n);this._applyPosition(n,e)}else this.apply()}withScrollableContainers(n){return this._scrollables=n,this}withPositions(n){return this._preferredPositions=n,-1===n.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(n){return this._viewportMargin=n,this}withFlexibleDimensions(n=!0){return this._hasFlexibleDimensions=n,this}withGrowAfterOpen(n=!0){return this._growAfterOpen=n,this}withPush(n=!0){return this._canPush=n,this}withLockedPosition(n=!0){return this._positionLocked=n,this}setOrigin(n){return this._origin=n,this}withDefaultOffsetX(n){return this._offsetX=n,this}withDefaultOffsetY(n){return this._offsetY=n,this}withTransformOriginOn(n){return this._transformOriginSelector=n,this}_getOriginPoint(n,e,i){let o,r;if("center"==i.originX)o=n.left+n.width/2;else{const s=this._isRtl()?n.right:n.left,a=this._isRtl()?n.left:n.right;o="start"==i.originX?s:a}return e.left<0&&(o-=e.left),r="center"==i.originY?n.top+n.height/2:"top"==i.originY?n.top:n.bottom,e.top<0&&(r-=e.top),{x:o,y:r}}_getOverlayPoint(n,e,i){let o,r;return o="center"==i.overlayX?-e.width/2:"start"===i.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==i.overlayY?-e.height/2:"top"==i.overlayY?0:-e.height,{x:n.x+o,y:n.y+r}}_getOverlayFit(n,e,i,o){const r=ET(e);let{x:s,y:a}=n,l=this._getOffset(o,"x"),u=this._getOffset(o,"y");l&&(s+=l),u&&(a+=u);let v=0-a,C=a+r.height-i.height,M=this._subtractOverflows(r.width,0-s,s+r.width-i.width),V=this._subtractOverflows(r.height,v,C),K=M*V;return{visibleArea:K,isCompletelyWithinViewport:r.width*r.height===K,fitsInViewportVertically:V===r.height,fitsInViewportHorizontally:M==r.width}}_canFitWithFlexibleDimensions(n,e,i){if(this._hasFlexibleDimensions){const o=i.bottom-e.y,r=i.right-e.x,s=kT(this._overlayRef.getConfig().minHeight),a=kT(this._overlayRef.getConfig().minWidth),u=n.fitsInViewportHorizontally||null!=a&&a<=r;return(n.fitsInViewportVertically||null!=s&&s<=o)&&u}return!1}_pushOverlayOnScreen(n,e,i){if(this._previousPushAmount&&this._positionLocked)return{x:n.x+this._previousPushAmount.x,y:n.y+this._previousPushAmount.y};const o=ET(e),r=this._viewportRect,s=Math.max(n.x+o.width-r.width,0),a=Math.max(n.y+o.height-r.height,0),l=Math.max(r.top-i.top-n.y,0),u=Math.max(r.left-i.left-n.x,0);let p=0,g=0;return p=o.width<=r.width?u||-s:n.xM&&!this._isInitialRender&&!this._growAfterOpen&&(s=n.y-M/2)}if("end"===e.overlayX&&!o||"start"===e.overlayX&&o)v=i.width-n.x+this._viewportMargin,p=n.x-this._viewportMargin;else if("start"===e.overlayX&&!o||"end"===e.overlayX&&o)g=n.x,p=i.right-n.x;else{const C=Math.min(i.right-n.x+i.left,n.x),M=this._lastBoundingBoxSize.width;p=2*C,g=n.x-C,p>M&&!this._isInitialRender&&!this._growAfterOpen&&(g=n.x-M/2)}return{top:s,left:g,bottom:a,right:v,width:p,height:r}}_setBoundingBoxStyles(n,e){const i=this._calculateBoundingBoxRect(n,e);!this._isInitialRender&&!this._growAfterOpen&&(i.height=Math.min(i.height,this._lastBoundingBoxSize.height),i.width=Math.min(i.width,this._lastBoundingBoxSize.width));const o={};if(this._hasExactPosition())o.top=o.left="0",o.bottom=o.right=o.maxHeight=o.maxWidth="",o.width=o.height="100%";else{const r=this._overlayRef.getConfig().maxHeight,s=this._overlayRef.getConfig().maxWidth;o.height=Qn(i.height),o.top=Qn(i.top),o.bottom=Qn(i.bottom),o.width=Qn(i.width),o.left=Qn(i.left),o.right=Qn(i.right),o.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",o.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",r&&(o.maxHeight=Qn(r)),s&&(o.maxWidth=Qn(s))}this._lastBoundingBoxSize=i,ba(this._boundingBox.style,o)}_resetBoundingBoxStyles(){ba(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){ba(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(n,e){const i={},o=this._hasExactPosition(),r=this._hasFlexibleDimensions,s=this._overlayRef.getConfig();if(o){const p=this._viewportRuler.getViewportScrollPosition();ba(i,this._getExactOverlayY(e,n,p)),ba(i,this._getExactOverlayX(e,n,p))}else i.position="static";let a="",l=this._getOffset(e,"x"),u=this._getOffset(e,"y");l&&(a+=`translateX(${l}px) `),u&&(a+=`translateY(${u}px)`),i.transform=a.trim(),s.maxHeight&&(o?i.maxHeight=Qn(s.maxHeight):r&&(i.maxHeight="")),s.maxWidth&&(o?i.maxWidth=Qn(s.maxWidth):r&&(i.maxWidth="")),ba(this._pane.style,i)}_getExactOverlayY(n,e,i){let o={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,n);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,i)),"bottom"===n.overlayY?o.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":o.top=Qn(r.y),o}_getExactOverlayX(n,e,i){let s,o={left:"",right:""},r=this._getOverlayPoint(e,this._overlayRect,n);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,i)),s=this._isRtl()?"end"===n.overlayX?"left":"right":"end"===n.overlayX?"right":"left","right"===s?o.right=this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)+"px":o.left=Qn(r.x),o}_getScrollVisibility(){const n=this._getOriginRect(),e=this._pane.getBoundingClientRect(),i=this._scrollables.map(o=>o.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:xT(n,i),isOriginOutsideView:Bb(n,i),isOverlayClipped:xT(e,i),isOverlayOutsideView:Bb(e,i)}}_subtractOverflows(n,...e){return e.reduce((i,o)=>i-Math.max(o,0),n)}_getNarrowedViewportRect(){const n=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,i=this._viewportRuler.getViewportScrollPosition();return{top:i.top+this._viewportMargin,left:i.left+this._viewportMargin,right:i.left+n-this._viewportMargin,bottom:i.top+e-this._viewportMargin,width:n-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(n,e){return"x"===e?null==n.offsetX?this._offsetX:n.offsetX:null==n.offsetY?this._offsetY:n.offsetY}_validatePositions(){}_addPanelClasses(n){this._pane&&Ah(n).forEach(e=>{""!==e&&-1===this._appliedPanelClasses.indexOf(e)&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(n=>{this._pane.classList.remove(n)}),this._appliedPanelClasses=[])}_getOriginRect(){const n=this._origin;if(n instanceof He)return n.nativeElement.getBoundingClientRect();if(n instanceof Element)return n.getBoundingClientRect();const e=n.width||0,i=n.height||0;return{top:n.y,bottom:n.y+i,left:n.x,right:n.x+e,height:i,width:e}}}function ba(t,n){for(let e in n)n.hasOwnProperty(e)&&(t[e]=n[e]);return t}function kT(t){if("number"!=typeof t&&null!=t){const[n,e]=t.split(g7);return e&&"px"!==e?null:parseFloat(n)}return t||null}function ET(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}const IT="cdk-global-overlay-wrapper";class b7{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(n){const e=n.getConfig();this._overlayRef=n,this._width&&!e.width&&n.updateSize({width:this._width}),this._height&&!e.height&&n.updateSize({height:this._height}),n.hostElement.classList.add(IT),this._isDisposed=!1}top(n=""){return this._bottomOffset="",this._topOffset=n,this._alignItems="flex-start",this}left(n=""){return this._rightOffset="",this._leftOffset=n,this._justifyContent="flex-start",this}bottom(n=""){return this._topOffset="",this._bottomOffset=n,this._alignItems="flex-end",this}right(n=""){return this._leftOffset="",this._rightOffset=n,this._justifyContent="flex-end",this}width(n=""){return this._overlayRef?this._overlayRef.updateSize({width:n}):this._width=n,this}height(n=""){return this._overlayRef?this._overlayRef.updateSize({height:n}):this._height=n,this}centerHorizontally(n=""){return this.left(n),this._justifyContent="center",this}centerVertically(n=""){return this.top(n),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const n=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,i=this._overlayRef.getConfig(),{width:o,height:r,maxWidth:s,maxHeight:a}=i,l=!("100%"!==o&&"100vw"!==o||s&&"100%"!==s&&"100vw"!==s),u=!("100%"!==r&&"100vh"!==r||a&&"100%"!==a&&"100vh"!==a);n.position=this._cssPosition,n.marginLeft=l?"0":this._leftOffset,n.marginTop=u?"0":this._topOffset,n.marginBottom=this._bottomOffset,n.marginRight=this._rightOffset,l?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=u?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const n=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,i=e.style;e.classList.remove(IT),i.justifyContent=i.alignItems=n.marginTop=n.marginBottom=n.marginLeft=n.marginRight=n.position="",this._overlayRef=null,this._isDisposed=!0}}let v7=(()=>{class t{constructor(e,i,o,r){this._viewportRuler=e,this._document=i,this._platform=o,this._overlayContainer=r}global(){return new b7}flexibleConnectedTo(e){return new _7(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.\u0275fac=function(e){return new(e||t)(Q(yr),Q(ht),Q(dn),Q(Vb))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),OT=(()=>{class t{constructor(e){this._attachedOverlays=[],this._document=e}ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){const i=this._attachedOverlays.indexOf(e);i>-1&&this._attachedOverlays.splice(i,1),0===this._attachedOverlays.length&&this.detach()}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),y7=(()=>{class t extends OT{constructor(e,i){super(e),this._ngZone=i,this._keydownListener=o=>{const r=this._attachedOverlays;for(let s=r.length-1;s>-1;s--)if(r[s]._keydownEvents.observers.length>0){const a=r[s]._keydownEvents;this._ngZone?this._ngZone.run(()=>a.next(o)):a.next(o);break}}}add(e){super.add(e),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(Je,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),C7=(()=>{class t extends OT{constructor(e,i,o){super(e),this._platform=i,this._ngZone=o,this._cursorStyleIsSet=!1,this._pointerDownListener=r=>{this._pointerDownEventTarget=Ds(r)},this._clickListener=r=>{const s=Ds(r),a="click"===r.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:s;this._pointerDownEventTarget=null;const l=this._attachedOverlays.slice();for(let u=l.length-1;u>-1;u--){const p=l[u];if(p._outsidePointerEvents.observers.length<1||!p.hasAttached())continue;if(p.overlayElement.contains(s)||p.overlayElement.contains(a))break;const g=p._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>g.next(r)):g.next(r)}}}add(e){if(super.add(e),!this._isAttached){const i=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(i)):this._addEventListeners(i),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=i.style.cursor,i.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const e=this._document.body;e.removeEventListener("pointerdown",this._pointerDownListener,!0),e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(e){e.addEventListener("pointerdown",this._pointerDownListener,!0),e.addEventListener("click",this._clickListener,!0),e.addEventListener("auxclick",this._clickListener,!0),e.addEventListener("contextmenu",this._clickListener,!0)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht),Q(dn),Q(Je,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),w7=0,Qi=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v){this.scrollStrategies=e,this._overlayContainer=i,this._componentFactoryResolver=o,this._positionBuilder=r,this._keyboardDispatcher=s,this._injector=a,this._ngZone=l,this._document=u,this._directionality=p,this._location=g,this._outsideClickDispatcher=v}create(e){const i=this._createHostElement(),o=this._createPaneElement(i),r=this._createPortalOutlet(o),s=new Al(e);return s.direction=s.direction||this._directionality.value,new m7(r,i,o,s,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}position(){return this._positionBuilder}_createPaneElement(e){const i=this._document.createElement("div");return i.id="cdk-overlay-"+w7++,i.classList.add("cdk-overlay-pane"),e.appendChild(i),i}_createHostElement(){const e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}_createPortalOutlet(e){return this._appRef||(this._appRef=this._injector.get(zu)),new a7(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Q(p7),Q(Vb),Q(gs),Q(v7),Q(y7),Q(pn),Q(Je),Q(ht),Q(li),Q(zc),Q(C7))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const D7=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],AT=new _e("cdk-connected-overlay-scroll-strategy");let PT=(()=>{class t{constructor(e){this.elementRef=e}}return t.\u0275fac=function(e){return new(e||t)(b(He))},t.\u0275dir=oe({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t})(),RT=(()=>{class t{constructor(e,i,o,r,s){this._overlay=e,this._dir=s,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=k.EMPTY,this._attachSubscription=k.EMPTY,this._detachSubscription=k.EMPTY,this._positionSubscription=k.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Pe,this.positionChange=new Pe,this.attach=new Pe,this.detach=new Pe,this.overlayKeydown=new Pe,this.overlayOutsideClick=new Pe,this._templatePortal=new qr(i,o),this._scrollStrategyFactory=r,this.scrollStrategy=this._scrollStrategyFactory()}get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(e){this._hasBackdrop=Xe(e)}get lockPosition(){return this._lockPosition}set lockPosition(e){this._lockPosition=Xe(e)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(e){this._flexibleDimensions=Xe(e)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(e){this._growAfterOpen=Xe(e)}get push(){return this._push}set push(e){this._push=Xe(e)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=D7);const e=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(i=>{this.overlayKeydown.next(i),27===i.keyCode&&!this.disableClose&&!fi(i)&&(i.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(i=>{this.overlayOutsideClick.next(i)})}_buildConfig(){const e=this._position=this.positionStrategy||this._createPositionStrategy(),i=new Al({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(i.width=this.width),(this.height||0===this.height)&&(i.height=this.height),(this.minWidth||0===this.minWidth)&&(i.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(i.minHeight=this.minHeight),this.backdropClass&&(i.backdropClass=this.backdropClass),this.panelClass&&(i.panelClass=this.panelClass),i}_updatePositionStrategy(e){const i=this.positions.map(o=>({originX:o.originX,originY:o.originY,overlayX:o.overlayX,overlayY:o.overlayY,offsetX:o.offsetX||this.offsetX,offsetY:o.offsetY||this.offsetY,panelClass:o.panelClass||void 0}));return e.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(i).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const e=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(e),e}_getFlexibleConnectedPositionStrategyOrigin(){return this.origin instanceof PT?this.origin.elementRef:this.origin}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(e=>{this.backdropClick.emit(e)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(function c7(t,n=!1){return nt((e,i)=>{let o=0;e.subscribe(st(i,r=>{const s=t(r,o++);(s||n)&&i.next(r),!s&&i.complete()}))})}(()=>this.positionChange.observers.length>0)).subscribe(e=>{this.positionChange.emit(e),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(Qi),b(rn),b(sn),b(AT),b(li,8))},t.\u0275dir=oe({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[nn]}),t})();const M7={provide:AT,deps:[Qi],useFactory:function S7(t){return()=>t.scrollStrategies.reposition()}};let Pl=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[Qi,M7],imports:[[Yc,Cd,Nb],Nb]}),t})();function wd(t){return new Ue(n=>{yi(t()).subscribe(n)})}function Bi(t,n){return nt((e,i)=>{let o=null,r=0,s=!1;const a=()=>s&&!o&&i.complete();e.subscribe(st(i,l=>{null==o||o.unsubscribe();let u=0;const p=r++;yi(t(l,p)).subscribe(o=st(i,g=>i.next(n?n(l,g,p,u++):g),()=>{o=null,a()}))},()=>{s=!0,a()}))})}const x7=["trigger"],T7=["panel"];function k7(t,n){if(1&t&&(d(0,"span",8),h(1),c()),2&t){const e=D();f(1),Ee(e.placeholder)}}function E7(t,n){if(1&t&&(d(0,"span",12),h(1),c()),2&t){const e=D(2);f(1),Ee(e.triggerValue)}}function I7(t,n){1&t&&ct(0,0,["*ngSwitchCase","true"])}function O7(t,n){1&t&&(d(0,"span",9),_(1,E7,2,1,"span",10),_(2,I7,1,0,"ng-content",11),c()),2&t&&(m("ngSwitch",!!D().customTrigger),f(2),m("ngSwitchCase",!0))}function A7(t,n){if(1&t){const e=pe();d(0,"div",13)(1,"div",14,15),N("@transformPanel.done",function(o){return se(e),D()._panelDoneAnimatingStream.next(o.toState)})("keydown",function(o){return se(e),D()._handleKeydown(o)}),ct(3,1),c()()}if(2&t){const e=D();m("@transformPanelWrap",void 0),f(1),L1("mat-select-panel ",e._getPanelTheme(),""),pi("transform-origin",e._transformOrigin)("font-size",e._triggerFontSize,"px"),m("ngClass",e.panelClass)("@transformPanel",e.multiple?"showing-multiple":"showing"),et("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}const P7=[[["mat-select-trigger"]],"*"],R7=["mat-select-trigger","*"],FT={transformPanelWrap:Ao("transformPanelWrap",[Kn("* => void",e_("@transformPanel",[Jg()],{optional:!0}))]),transformPanel:Ao("transformPanel",[jn("void",Vt({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),jn("showing",Vt({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),jn("showing-multiple",Vt({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),Kn("void => *",ai("120ms cubic-bezier(0, 0, 0.2, 1)")),Kn("* => void",ai("100ms 25ms linear",Vt({opacity:0})))])};let NT=0;const BT=new _e("mat-select-scroll-strategy"),B7=new _e("MAT_SELECT_CONFIG"),V7={provide:BT,deps:[Qi],useFactory:function L7(t){return()=>t.scrollStrategies.reposition()}};class j7{constructor(n,e){this.source=n,this.value=e}}const H7=vr(Ml(pa(z_(class{constructor(t,n,e,i,o){this._elementRef=t,this._defaultErrorStateMatcher=n,this._parentForm=e,this._parentFormGroup=i,this.ngControl=o}})))),U7=new _e("MatSelectTrigger");let z7=(()=>{class t extends H7{constructor(e,i,o,r,s,a,l,u,p,g,v,C,M,V){var K,Y,ee;super(s,r,l,u,g),this._viewportRuler=e,this._changeDetectorRef=i,this._ngZone=o,this._dir=a,this._parentFormField=p,this._liveAnnouncer=M,this._defaultOptions=V,this._panelOpen=!1,this._compareWith=(ke,Ze)=>ke===Ze,this._uid="mat-select-"+NT++,this._triggerAriaLabelledBy=null,this._destroy=new ie,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+NT++,this._panelDoneAnimatingStream=new ie,this._overlayPanelClass=(null===(K=this._defaultOptions)||void 0===K?void 0:K.overlayPanelClass)||"",this._focused=!1,this.controlType="mat-select",this._multiple=!1,this._disableOptionCentering=null!==(ee=null===(Y=this._defaultOptions)||void 0===Y?void 0:Y.disableOptionCentering)&&void 0!==ee&&ee,this.ariaLabel="",this.optionSelectionChanges=wd(()=>{const ke=this.options;return ke?ke.changes.pipe(Nn(ke),Bi(()=>Tn(...ke.map(Ze=>Ze.onSelectionChange)))):this._ngZone.onStable.pipe(Ot(1),Bi(()=>this.optionSelectionChanges))}),this.openedChange=new Pe,this._openedStream=this.openedChange.pipe(It(ke=>ke),je(()=>{})),this._closedStream=this.openedChange.pipe(It(ke=>!ke),je(()=>{})),this.selectionChange=new Pe,this.valueChange=new Pe,this.ngControl&&(this.ngControl.valueAccessor=this),null!=(null==V?void 0:V.typeaheadDebounceInterval)&&(this._typeaheadDebounceInterval=V.typeaheadDebounceInterval),this._scrollStrategyFactory=C,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(v)||0,this.id=this.id}get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}get required(){var e,i,o,r;return null!==(r=null!==(e=this._required)&&void 0!==e?e:null===(o=null===(i=this.ngControl)||void 0===i?void 0:i.control)||void 0===o?void 0:o.hasValidator(de.required))&&void 0!==r&&r}set required(e){this._required=Xe(e),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(e){this._multiple=Xe(e)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(e){this._disableOptionCentering=Xe(e)}get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(e){this._typeaheadDebounceInterval=Zn(e)}get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}ngOnInit(){this._selectionModel=new Tl(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(nd(),tt(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe(tt(this._destroy)).subscribe(e=>{e.added.forEach(i=>i.select()),e.removed.forEach(i=>i.deselect())}),this.options.changes.pipe(Nn(null),tt(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const e=this._getTriggerAriaLabelledby(),i=this.ngControl;if(e!==this._triggerAriaLabelledBy){const o=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?o.setAttribute("aria-labelledby",e):o.removeAttribute("aria-labelledby")}i&&(this._previousControl!==i.control&&(void 0!==this._previousControl&&null!==i.disabled&&i.disabled!==this.disabled&&(this.disabled=i.disabled),this._previousControl=i.control),this.updateErrorState())}ngOnChanges(e){e.disabled&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){var e,i;return this.multiple?(null===(e=this._selectionModel)||void 0===e?void 0:e.selected)||[]:null===(i=this._selectionModel)||void 0===i?void 0:i.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const e=this._selectionModel.selected.map(i=>i.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){const i=e.keyCode,o=40===i||38===i||37===i||39===i,r=13===i||32===i,s=this._keyManager;if(!s.isTyping()&&r&&!fi(e)||(this.multiple||e.altKey)&&o)e.preventDefault(),this.open();else if(!this.multiple){const a=this.selected;s.onKeydown(e);const l=this.selected;l&&a!==l&&this._liveAnnouncer.announce(l.viewValue,1e4)}}_handleOpenKeydown(e){const i=this._keyManager,o=e.keyCode,r=40===o||38===o,s=i.isTyping();if(r&&e.altKey)e.preventDefault(),this.close();else if(s||13!==o&&32!==o||!i.activeItem||fi(e))if(!s&&this._multiple&&65===o&&e.ctrlKey){e.preventDefault();const a=this.options.some(l=>!l.disabled&&!l.selected);this.options.forEach(l=>{l.disabled||(a?l.select():l.deselect())})}else{const a=i.activeItemIndex;i.onKeydown(e),this._multiple&&r&&e.shiftKey&&i.activeItem&&i.activeItemIndex!==a&&i.activeItem._selectViaInteraction()}else e.preventDefault(),i.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Ot(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this._selectionModel.selected.forEach(i=>i.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(i=>this._selectOptionByValue(i)),this._sortValues();else{const i=this._selectOptionByValue(e);i?this._keyManager.updateActiveItem(i):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){const i=this.options.find(o=>{if(this._selectionModel.isSelected(o))return!1;try{return null!=o.value&&this._compareWith(o.value,e)}catch(r){return!1}});return i&&this._selectionModel.select(i),i}_assignValue(e){return!!(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e,!0)}_initKeyManager(){this._keyManager=new _M(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(tt(this._destroy)).subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.pipe(tt(this._destroy)).subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const e=Tn(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(tt(e)).subscribe(i=>{this._onSelect(i.source,i.isUserInput),i.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Tn(...this.options.map(i=>i._stateChanges)).pipe(tt(e)).subscribe(()=>{this._changeDetectorRef.markForCheck(),this.stateChanges.next()})}_onSelect(e,i){const o=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(o!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),i&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),i&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),o!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const e=this.options.toArray();this._selectionModel.sort((i,o)=>this.sortComparator?this.sortComparator(i,o,e):e.indexOf(i)-e.indexOf(o)),this.stateChanges.next()}}_propagateChanges(e){let i=null;i=this.multiple?this.selected.map(o=>o.value):this.selected?this.selected.value:e,this._value=i,this.valueChange.emit(i),this._onChange(i),this.selectionChange.emit(this._getChangeEvent(i)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}_canOpen(){var e;return!this._panelOpen&&!this.disabled&&(null===(e=this.options)||void 0===e?void 0:e.length)>0}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){var e;if(this.ariaLabel)return null;const i=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();return this.ariaLabelledby?(i?i+" ":"")+this.ariaLabelledby:i}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){var e;if(this.ariaLabel)return null;const i=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();let o=(i?i+" ":"")+this._valueId;return this.ariaLabelledby&&(o+=" "+this.ariaLabelledby),o}_panelDoneAnimating(e){this.openedChange.emit(e)}setDescribedByIds(e){this._ariaDescribedby=e.join(" ")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return t.\u0275fac=function(e){return new(e||t)(b(yr),b(At),b(Je),b(od),b(He),b(li,8),b(ks,8),b(Sn,8),b(ip,8),b(rr,10),Di("tabindex"),b(BT),b(H_),b(B7,8))},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&(Tt(x7,5),Tt(T7,5),Tt(RT,5)),2&e){let o;Ne(o=Le())&&(i.trigger=o.first),Ne(o=Le())&&(i.panel=o.first),Ne(o=Le())&&(i._overlayDir=o.first)}},inputs:{panelClass:"panelClass",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:"typeaheadDebounceInterval",sortComparator:"sortComparator",id:"id"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[Ce,nn]}),t})(),Yi=(()=>{class t extends z7{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(e,i,o){const r=this._getItemHeight();return Math.min(Math.max(0,r*e-i+r/2),o)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe(tt(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(e){const i=K_(e,this.options,this.optionGroups),o=this._getItemHeight();this.panel.nativeElement.scrollTop=0===e&&1===i?0:FM((e+i)*o,o,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(e){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(e)}_getChangeEvent(e){return new j7(this,e)}_calculateOverlayOffsetX(){const e=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),i=this._viewportRuler.getViewportSize(),o=this._isRtl(),r=this.multiple?56:32;let s;if(this.multiple)s=40;else if(this.disableOptionCentering)s=16;else{let u=this._selectionModel.selected[0]||this.options.first;s=u&&u.group?32:16}o||(s*=-1);const a=0-(e.left+s-(o?r:0)),l=e.right+s-i.width+(o?0:r);a>0?s+=a+8:l>0&&(s-=l+8),this._overlayDir.offsetX=Math.round(s),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(e,i,o){const r=this._getItemHeight(),s=(r-this._triggerRect.height)/2,a=Math.floor(256/r);let l;return this.disableOptionCentering?0:(l=0===this._scrollTop?e*r:this._scrollTop===o?(e-(this._getItemCount()-a))*r+(r-(this._getItemCount()*r-256)%r):i-r/2,Math.round(-1*l-s))}_checkOverlayWithinViewport(e){const i=this._getItemHeight(),o=this._viewportRuler.getViewportSize(),r=this._triggerRect.top-8,s=o.height-this._triggerRect.bottom-8,a=Math.abs(this._offsetY),u=Math.min(this._getItemCount()*i,256)-a-this._triggerRect.height;u>s?this._adjustPanelUp(u,s):a>r?this._adjustPanelDown(a,r,e):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(e,i){const o=Math.round(e-i);this._scrollTop-=o,this._offsetY-=o,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(e,i,o){const r=Math.round(e-i);if(this._scrollTop+=r,this._offsetY+=r,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=o)return this._scrollTop=o,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const e=this._getItemHeight(),i=this._getItemCount(),o=Math.min(i*e,256),s=i*e-o;let a;a=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),a+=K_(a,this.options,this.optionGroups);const l=o/2;this._scrollTop=this._calculateOverlayScroll(a,l,s),this._offsetY=this._calculateOverlayOffsetY(a,l,s),this._checkOverlayWithinViewport(s)}_getOriginBasedOnOption(){const e=this._getItemHeight(),i=(e-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-i+e/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-select"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,U7,5),mt(o,_i,5),mt(o,q_,5)),2&e){let r;Ne(r=Le())&&(i.customTrigger=r.first),Ne(r=Le())&&(i.options=r),Ne(r=Le())&&(i.optionGroups=r)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(e,i){1&e&&N("keydown",function(r){return i._handleKeydown(r)})("focus",function(){return i._onFocus()})("blur",function(){return i._onBlur()}),2&e&&(et("id",i.id)("tabindex",i.tabIndex)("aria-controls",i.panelOpen?i.id+"-panel":null)("aria-expanded",i.panelOpen)("aria-label",i.ariaLabel||null)("aria-required",i.required.toString())("aria-disabled",i.disabled.toString())("aria-invalid",i.errorState)("aria-describedby",i._ariaDescribedby||null)("aria-activedescendant",i._getAriaActiveDescendant()),rt("mat-select-disabled",i.disabled)("mat-select-invalid",i.errorState)("mat-select-required",i.required)("mat-select-empty",i.empty)("mat-select-multiple",i.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[ze([{provide:gd,useExisting:t},{provide:W_,useExisting:t}]),Ce],ngContentSelectors:R7,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(e,i){if(1&e&&(Jt(P7),d(0,"div",0,1),N("click",function(){return i.toggle()}),d(3,"div",2),_(4,k7,2,1,"span",3),_(5,O7,3,2,"span",4),c(),d(6,"div",5),E(7,"div",6),c()(),_(8,A7,4,14,"ng-template",7),N("backdropClick",function(){return i.close()})("attach",function(){return i._onAttached()})("detach",function(){return i.close()})),2&e){const o=$t(1);et("aria-owns",i.panelOpen?i.id+"-panel":null),f(3),m("ngSwitch",i.empty),et("id",i._valueId),f(1),m("ngSwitchCase",!0),f(1),m("ngSwitchCase",!1),f(3),m("cdkConnectedOverlayPanelClass",i._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",i._scrollStrategy)("cdkConnectedOverlayOrigin",o)("cdkConnectedOverlayOpen",i.panelOpen)("cdkConnectedOverlayPositions",i._positions)("cdkConnectedOverlayMinWidth",null==i._triggerRect?null:i._triggerRect.width)("cdkConnectedOverlayOffsetY",i._offsetY)}},directives:[PT,vl,nh,ZD,RT,nr],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{height:16px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-form-field.mat-focused .mat-select-arrow{transform:translateX(0)}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}\n'],encapsulation:2,data:{animation:[FT.transformPanelWrap,FT.transformPanel]},changeDetection:0}),t})(),VT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[V7],imports:[[qi,Pl,Bh,ft],Is,_d,Bh,ft]}),t})();function jb(t){return je(()=>t)}function jT(t,n){return n?e=>id(n.pipe(Ot(1),function $7(){return nt((t,n)=>{t.subscribe(st(n,S))})}()),e.pipe(jT(t))):$n((e,i)=>yi(t(e,i)).pipe(Ot(1),jb(e)))}function Hb(t,n=td){const e=op(t,n);return jT(()=>e)}const G7=["mat-menu-item",""];function W7(t,n){1&t&&(hn(),d(0,"svg",2),E(1,"polygon",3),c())}const HT=["*"];function q7(t,n){if(1&t){const e=pe();d(0,"div",0),N("keydown",function(o){return se(e),D()._handleKeydown(o)})("click",function(){return se(e),D().closed.emit("click")})("@transformMenu.start",function(o){return se(e),D()._onAnimationStart(o)})("@transformMenu.done",function(o){return se(e),D()._onAnimationDone(o)}),d(1,"div",1),ct(2),c()()}if(2&t){const e=D();m("id",e.panelId)("ngClass",e._classList)("@transformMenu",e._panelAnimationState),et("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}const cp={transformMenu:Ao("transformMenu",[jn("void",Vt({opacity:0,transform:"scale(0.8)"})),Kn("void => enter",ai("120ms cubic-bezier(0, 0, 0.2, 1)",Vt({opacity:1,transform:"scale(1)"}))),Kn("* => void",ai("100ms 25ms linear",Vt({opacity:0})))]),fadeInItems:Ao("fadeInItems",[jn("showing",Vt({opacity:1})),Kn("void => *",[Vt({opacity:0}),ai("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},K7=new _e("MatMenuContent"),Ub=new _e("MAT_MENU_PANEL"),Z7=vr(pa(class{}));let Kr=(()=>{class t extends Z7{constructor(e,i,o,r,s){var a;super(),this._elementRef=e,this._document=i,this._focusMonitor=o,this._parentMenu=r,this._changeDetectorRef=s,this.role="menuitem",this._hovered=new ie,this._focused=new ie,this._highlighted=!1,this._triggersSubmenu=!1,null===(a=null==r?void 0:r.addItem)||void 0===a||a.call(r,this)}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){var e;const i=this._elementRef.nativeElement.cloneNode(!0),o=i.querySelectorAll("mat-icon, .material-icons");for(let r=0;r{class t{constructor(e,i,o,r){this._elementRef=e,this._ngZone=i,this._defaultOptions=o,this._changeDetectorRef=r,this._xPosition=this._defaultOptions.xPosition,this._yPosition=this._defaultOptions.yPosition,this._directDescendantItems=new vs,this._tabSubscription=k.EMPTY,this._classList={},this._panelAnimationState="void",this._animationDone=new ie,this.overlayPanelClass=this._defaultOptions.overlayPanelClass||"",this.backdropClass=this._defaultOptions.backdropClass,this._overlapTrigger=this._defaultOptions.overlapTrigger,this._hasBackdrop=this._defaultOptions.hasBackdrop,this.closed=new Pe,this.close=this.closed,this.panelId="mat-menu-panel-"+Y7++}get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}get overlapTrigger(){return this._overlapTrigger}set overlapTrigger(e){this._overlapTrigger=Xe(e)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(e){this._hasBackdrop=Xe(e)}set panelClass(e){const i=this._previousPanelClass;i&&i.length&&i.split(" ").forEach(o=>{this._classList[o]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(o=>{this._classList[o]=!0}),this._elementRef.nativeElement.className="")}get classList(){return this.panelClass}set classList(e){this.panelClass=e}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new Nh(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._tabSubscription=this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(Nn(this._directDescendantItems),Bi(e=>Tn(...e.map(i=>i._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{var i;const o=this._keyManager;if("enter"===this._panelAnimationState&&(null===(i=o.activeItem)||void 0===i?void 0:i._hasFocus())){const r=e.toArray(),s=Math.max(0,Math.min(r.length-1,o.activeItemIndex||0));r[s]&&!r[s].disabled?o.setActiveItem(s):o.setNextItemActive()}})}ngOnDestroy(){this._directDescendantItems.destroy(),this._tabSubscription.unsubscribe(),this.closed.complete()}_hovered(){return this._directDescendantItems.changes.pipe(Nn(this._directDescendantItems),Bi(i=>Tn(...i.map(o=>o._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){const i=e.keyCode,o=this._keyManager;switch(i){case 27:fi(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&"ltr"===this.direction&&this.closed.emit("keydown");break;case 39:this.parentMenu&&"rtl"===this.direction&&this.closed.emit("keydown");break;default:return(38===i||40===i)&&o.setFocusOrigin("keyboard"),void o.onKeydown(e)}e.stopPropagation()}focusFirstItem(e="program"){this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{let i=null;if(this._directDescendantItems.length&&(i=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),!i||!i.contains(document.activeElement)){const o=this._keyManager;o.setFocusOrigin(e).setFirstItemActive(),!o.activeItem&&i&&i.focus()}})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){const i=Math.min(this._baseElevation+e,24),o=`${this._elevationPrefix}${i}`,r=Object.keys(this._classList).find(s=>s.startsWith(this._elevationPrefix));(!r||r===this._previousElevation)&&(this._previousElevation&&(this._classList[this._previousElevation]=!1),this._classList[o]=!0,this._previousElevation=o)}setPositionClasses(e=this.xPosition,i=this.yPosition){var o;const r=this._classList;r["mat-menu-before"]="before"===e,r["mat-menu-after"]="after"===e,r["mat-menu-above"]="above"===i,r["mat-menu-below"]="below"===i,null===(o=this._changeDetectorRef)||void 0===o||o.markForCheck()}_startAnimation(){this._panelAnimationState="enter"}_resetAnimation(){this._panelAnimationState="void"}_onAnimationDone(e){this._animationDone.next(e),this._isAnimating=!1}_onAnimationStart(e){this._isAnimating=!0,"enter"===e.toState&&0===this._keyManager.activeItemIndex&&(e.element.scrollTop=0)}_updateDirectDescendants(){this._allItems.changes.pipe(Nn(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(i=>i._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(UT),b(At))},t.\u0275dir=oe({type:t,contentQueries:function(e,i,o){if(1&e&&(mt(o,K7,5),mt(o,Kr,5),mt(o,Kr,4)),2&e){let r;Ne(r=Le())&&(i.lazyContent=r.first),Ne(r=Le())&&(i._allItems=r),Ne(r=Le())&&(i.items=r)}},viewQuery:function(e,i){if(1&e&&Tt(rn,5),2&e){let o;Ne(o=Le())&&(i.templateRef=o.first)}},inputs:{backdropClass:"backdropClass",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:"overlapTrigger",hasBackdrop:"hasBackdrop",panelClass:["class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"}}),t})(),Fl=(()=>{class t extends Sd{constructor(e,i,o,r){super(e,i,o,r),this._elevationPrefix="mat-elevation-z",this._baseElevation=4}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(UT),b(At))},t.\u0275cmp=Ae({type:t,selectors:[["mat-menu"]],hostVars:3,hostBindings:function(e,i){2&e&&et("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},exportAs:["matMenu"],features:[ze([{provide:Ub,useExisting:t}]),Ce],ngContentSelectors:HT,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-menu-panel",3,"id","ngClass","keydown","click"],[1,"mat-menu-content"]],template:function(e,i){1&e&&(Jt(),_(0,q7,3,6,"ng-template"))},directives:[nr],styles:['mat-menu{display:none}.mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]::before{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.cdk-high-contrast-active .mat-menu-item{margin-top:1px}.cdk-high-contrast-active .mat-menu-item.cdk-program-focused,.cdk-high-contrast-active .mat-menu-item.cdk-keyboard-focused,.cdk-high-contrast-active .mat-menu-item-highlighted{outline:dotted 1px}.mat-menu-item-submenu-trigger{padding-right:32px}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}.mat-menu-submenu-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);width:5px;height:10px;fill:currentColor}[dir=rtl] .mat-menu-submenu-icon{right:auto;left:16px;transform:translateY(-50%) scaleX(-1)}.cdk-high-contrast-active .mat-menu-submenu-icon{fill:CanvasText}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\n'],encapsulation:2,data:{animation:[cp.transformMenu,cp.fadeInItems]},changeDetection:0}),t})();const zT=new _e("mat-menu-scroll-strategy"),J7={provide:zT,deps:[Qi],useFactory:function X7(t){return()=>t.scrollStrategies.reposition()}},GT=ca({passive:!0});let eH=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p){this._overlay=e,this._element=i,this._viewContainerRef=o,this._menuItemInstance=a,this._dir=l,this._focusMonitor=u,this._ngZone=p,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=k.EMPTY,this._hoverSubscription=k.EMPTY,this._menuCloseSubscription=k.EMPTY,this._handleTouchStart=g=>{j_(g)||(this._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new Pe,this.onMenuOpen=this.menuOpened,this.menuClosed=new Pe,this.onMenuClose=this.menuClosed,this._scrollStrategy=r,this._parentMaterialMenu=s instanceof Sd?s:void 0,i.nativeElement.addEventListener("touchstart",this._handleTouchStart,GT),a&&(a._triggersSubmenu=this.triggersSubmenu())}get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){e!==this._menu&&(this._menu=e,this._menuCloseSubscription.unsubscribe(),e&&(this._menuCloseSubscription=e.close.subscribe(i=>{this._destroyMenu(i),("click"===i||"tab"===i)&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(i)})))}ngAfterContentInit(){this._checkMenu(),this._handleHover()}ngOnDestroy(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,GT),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}triggersSubmenu(){return!(!this._menuItemInstance||!this._parentMaterialMenu)}toggleMenu(){return this._menuOpen?this.closeMenu():this.openMenu()}openMenu(){if(this._menuOpen)return;this._checkMenu();const e=this._createOverlay(),i=e.getConfig(),o=i.positionStrategy;this._setPosition(o),i.hasBackdrop=null==this.menu.hasBackdrop?!this.triggersSubmenu():this.menu.hasBackdrop,e.attach(this._getPortal()),this.menu.lazyContent&&this.menu.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this.closeMenu()),this._initMenu(),this.menu instanceof Sd&&(this.menu._startAnimation(),this.menu._directDescendantItems.changes.pipe(tt(this.menu.close)).subscribe(()=>{o.withLockedPosition(!1).reapplyLastPosition(),o.withLockedPosition(!0)}))}closeMenu(){this.menu.close.emit()}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}updatePosition(){var e;null===(e=this._overlayRef)||void 0===e||e.updatePosition()}_destroyMenu(e){if(!this._overlayRef||!this.menuOpen)return;const i=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===e||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,i instanceof Sd?(i._resetAnimation(),i.lazyContent?i._animationDone.pipe(It(o=>"void"===o.toState),Ot(1),tt(i.lazyContent._attached)).subscribe({next:()=>i.lazyContent.detach(),complete:()=>this._setIsMenuOpen(!1)}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),i.lazyContent&&i.lazyContent.detach())}_initMenu(){this.menu.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,this.menu.direction=this.dir,this._setMenuElevation(),this.menu.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}_setMenuElevation(){if(this.menu.setElevation){let e=0,i=this.menu.parentMenu;for(;i;)e++,i=i.parentMenu;this.menu.setElevation(e)}}_setIsMenuOpen(e){this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(e)}_checkMenu(){}_createOverlay(){if(!this._overlayRef){const e=this._getOverlayConfig();this._subscribeToPositions(e.positionStrategy),this._overlayRef=this._overlay.create(e),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}_getOverlayConfig(){return new Al({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:this.menu.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:this.menu.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}_subscribeToPositions(e){this.menu.setPositionClasses&&e.positionChanges.subscribe(i=>{const o="start"===i.connectionPair.overlayX?"after":"before",r="top"===i.connectionPair.overlayY?"below":"above";this._ngZone?this._ngZone.run(()=>this.menu.setPositionClasses(o,r)):this.menu.setPositionClasses(o,r)})}_setPosition(e){let[i,o]="before"===this.menu.xPosition?["end","start"]:["start","end"],[r,s]="above"===this.menu.yPosition?["bottom","top"]:["top","bottom"],[a,l]=[r,s],[u,p]=[i,o],g=0;this.triggersSubmenu()?(p=i="before"===this.menu.xPosition?"start":"end",o=u="end"===i?"start":"end",g="bottom"===r?8:-8):this.menu.overlapTrigger||(a="top"===r?"bottom":"top",l="top"===s?"bottom":"top"),e.withPositions([{originX:i,originY:a,overlayX:u,overlayY:r,offsetY:g},{originX:o,originY:a,overlayX:p,overlayY:r,offsetY:g},{originX:i,originY:l,overlayX:u,overlayY:s,offsetY:-g},{originX:o,originY:l,overlayX:p,overlayY:s,offsetY:-g}])}_menuClosingActions(){const e=this._overlayRef.backdropClick(),i=this._overlayRef.detachments();return Tn(e,this._parentMaterialMenu?this._parentMaterialMenu.closed:Ge(),this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(It(s=>s!==this._menuItemInstance),It(()=>this._menuOpen)):Ge(),i)}_handleMousedown(e){V_(e)||(this._openedBy=0===e.button?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){const i=e.keyCode;(13===i||32===i)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(39===i&&"ltr"===this.dir||37===i&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe(It(e=>e===this._menuItemInstance&&!e.disabled),Hb(0,Fb)).subscribe(()=>{this._openedBy="mouse",this.menu instanceof Sd&&this.menu._isAnimating?this.menu._animationDone.pipe(Ot(1),Hb(0,Fb),tt(this._parentMaterialMenu._hovered())).subscribe(()=>this.openMenu()):this.openMenu()}))}_getPortal(){return(!this._portal||this._portal.templateRef!==this.menu.templateRef)&&(this._portal=new qr(this.menu.templateRef,this._viewContainerRef)),this._portal}}return t.\u0275fac=function(e){return new(e||t)(b(Qi),b(He),b(sn),b(zT),b(Ub,8),b(Kr,10),b(li,8),b(Fo),b(Je))},t.\u0275dir=oe({type:t,hostAttrs:["aria-haspopup","true"],hostVars:2,hostBindings:function(e,i){1&e&&N("click",function(r){return i._handleClick(r)})("mousedown",function(r){return i._handleMousedown(r)})("keydown",function(r){return i._handleKeydown(r)}),2&e&&et("aria-expanded",i.menuOpen||null)("aria-controls",i.menuOpen?i.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:["mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:["matMenuTriggerFor","menu"],menuData:["matMenuTriggerData","menuData"],restoreFocus:["matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"}}),t})(),Nl=(()=>{class t extends eH{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-menu-trigger"],exportAs:["matMenuTrigger"],features:[Ce]}),t})(),WT=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[J7],imports:[[qi,ft,fa,Pl],Is,ft]}),t})();const tH=[[["caption"]],[["colgroup"],["col"]]],nH=["caption","colgroup, col"];function $b(t){return class extends t{constructor(...n){super(...n),this._sticky=!1,this._hasStickyChanged=!1}get sticky(){return this._sticky}set sticky(n){const e=this._sticky;this._sticky=Xe(n),this._hasStickyChanged=e!==this._sticky}hasStickyChanged(){const n=this._hasStickyChanged;return this._hasStickyChanged=!1,n}resetStickyChanged(){this._hasStickyChanged=!1}}}const Ll=new _e("CDK_TABLE");let Bl=(()=>{class t{constructor(e){this.template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["","cdkCellDef",""]]}),t})(),Vl=(()=>{class t{constructor(e){this.template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["","cdkHeaderCellDef",""]]}),t})(),dp=(()=>{class t{constructor(e){this.template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["","cdkFooterCellDef",""]]}),t})();class sH{}const aH=$b(sH);let Zr=(()=>{class t extends aH{constructor(e){super(),this._table=e,this._stickyEnd=!1}get name(){return this._name}set name(e){this._setNameInput(e)}get stickyEnd(){return this._stickyEnd}set stickyEnd(e){const i=this._stickyEnd;this._stickyEnd=Xe(e),this._hasStickyChanged=i!==this._stickyEnd}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}}return t.\u0275fac=function(e){return new(e||t)(b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkColumnDef",""]],contentQueries:function(e,i,o){if(1&e&&(mt(o,Bl,5),mt(o,Vl,5),mt(o,dp,5)),2&e){let r;Ne(r=Le())&&(i.cell=r.first),Ne(r=Le())&&(i.headerCell=r.first),Ne(r=Le())&&(i.footerCell=r.first)}},inputs:{sticky:"sticky",name:["cdkColumnDef","name"],stickyEnd:"stickyEnd"},features:[ze([{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:t}]),Ce]}),t})();class Gb{constructor(n,e){e.nativeElement.classList.add(...n._columnCssClassName)}}let Wb=(()=>{class t extends Gb{constructor(e,i){super(e,i)}}return t.\u0275fac=function(e){return new(e||t)(b(Zr),b(He))},t.\u0275dir=oe({type:t,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[Ce]}),t})(),qb=(()=>{class t extends Gb{constructor(e,i){var o;if(super(e,i),1===(null===(o=e._table)||void 0===o?void 0:o._elementRef.nativeElement.nodeType)){const r=e._table._elementRef.nativeElement.getAttribute("role");i.nativeElement.setAttribute("role","grid"===r||"treegrid"===r?"gridcell":"cell")}}}return t.\u0275fac=function(e){return new(e||t)(b(Zr),b(He))},t.\u0275dir=oe({type:t,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[Ce]}),t})();class KT{constructor(){this.tasks=[],this.endTasks=[]}}const Kb=new _e("_COALESCED_STYLE_SCHEDULER");let ZT=(()=>{class t{constructor(e){this._ngZone=e,this._currentSchedule=null,this._destroyed=new ie}schedule(e){this._createScheduleIfNeeded(),this._currentSchedule.tasks.push(e)}scheduleEnd(e){this._createScheduleIfNeeded(),this._currentSchedule.endTasks.push(e)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_createScheduleIfNeeded(){this._currentSchedule||(this._currentSchedule=new KT,this._getScheduleObservable().pipe(tt(this._destroyed)).subscribe(()=>{for(;this._currentSchedule.tasks.length||this._currentSchedule.endTasks.length;){const e=this._currentSchedule;this._currentSchedule=new KT;for(const i of e.tasks)i();for(const i of e.endTasks)i()}this._currentSchedule=null}))}_getScheduleObservable(){return this._ngZone.isStable?ti(Promise.resolve(void 0)):this._ngZone.onStable.pipe(Ot(1))}}return t.\u0275fac=function(e){return new(e||t)(Q(Je))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),Zb=(()=>{class t{constructor(e,i){this.template=e,this._differs=i}ngOnChanges(e){if(!this._columnsDiffer){const i=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(i).create(),this._columnsDiffer.diff(i)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof Md?e.headerCell.template:this instanceof xd?e.footerCell.template:e.cell.template}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(Eo))},t.\u0275dir=oe({type:t,features:[nn]}),t})();class lH extends Zb{}const cH=$b(lH);let Md=(()=>{class t extends cH{constructor(e,i,o){super(e,i),this._table=o}ngOnChanges(e){super.ngOnChanges(e)}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(Eo),b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:["cdkHeaderRowDef","columns"],sticky:["cdkHeaderRowDefSticky","sticky"]},features:[Ce,nn]}),t})();class dH extends Zb{}const uH=$b(dH);let xd=(()=>{class t extends uH{constructor(e,i,o){super(e,i),this._table=o}ngOnChanges(e){super.ngOnChanges(e)}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(Eo),b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:["cdkFooterRowDef","columns"],sticky:["cdkFooterRowDefSticky","sticky"]},features:[Ce,nn]}),t})(),up=(()=>{class t extends Zb{constructor(e,i,o){super(e,i),this._table=o}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(Eo),b(Ll,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkRowDef",""]],inputs:{columns:["cdkRowDefColumns","columns"],when:["cdkRowDefWhen","when"]},features:[Ce]}),t})(),Qr=(()=>{class t{constructor(e){this._viewContainer=e,t.mostRecentCellOutlet=this}ngOnDestroy(){t.mostRecentCellOutlet===this&&(t.mostRecentCellOutlet=null)}}return t.mostRecentCellOutlet=null,t.\u0275fac=function(e){return new(e||t)(b(sn))},t.\u0275dir=oe({type:t,selectors:[["","cdkCellOutlet",""]]}),t})(),Qb=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["cdk-header-row"],["tr","cdk-header-row",""]],hostAttrs:["role","row",1,"cdk-header-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&ko(0,0)},directives:[Qr],encapsulation:2}),t})(),Xb=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&ko(0,0)},directives:[Qr],encapsulation:2}),t})(),hp=(()=>{class t{constructor(e){this.templateRef=e,this._contentClassName="cdk-no-data-row"}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["ng-template","cdkNoDataRow",""]]}),t})();const QT=["top","bottom","left","right"];class hH{constructor(n,e,i,o,r=!0,s=!0,a){this._isNativeHtmlTable=n,this._stickCellCss=e,this.direction=i,this._coalescedStyleScheduler=o,this._isBrowser=r,this._needsPositionStickyOnElement=s,this._positionListener=a,this._cachedCellWidths=[],this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(n,e){const i=[];for(const o of n)if(o.nodeType===o.ELEMENT_NODE){i.push(o);for(let r=0;r{for(const o of i)this._removeStickyStyle(o,e)})}updateStickyColumns(n,e,i,o=!0){if(!n.length||!this._isBrowser||!e.some(v=>v)&&!i.some(v=>v))return void(this._positionListener&&(this._positionListener.stickyColumnsUpdated({sizes:[]}),this._positionListener.stickyEndColumnsUpdated({sizes:[]})));const r=n[0],s=r.children.length,a=this._getCellWidths(r,o),l=this._getStickyStartColumnPositions(a,e),u=this._getStickyEndColumnPositions(a,i),p=e.lastIndexOf(!0),g=i.indexOf(!0);this._coalescedStyleScheduler.schedule(()=>{const v="rtl"===this.direction,C=v?"right":"left",M=v?"left":"right";for(const V of n)for(let K=0;Ke[K]?V:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:-1===g?[]:a.slice(g).map((V,K)=>i[K+g]?V:null).reverse()}))})}stickRows(n,e,i){if(!this._isBrowser)return;const o="bottom"===i?n.slice().reverse():n,r="bottom"===i?e.slice().reverse():e,s=[],a=[],l=[];for(let p=0,g=0;p{var p,g;for(let v=0;v{e.some(o=>!o)?this._removeStickyStyle(i,["bottom"]):this._addStickyStyle(i,"bottom",0,!1)})}_removeStickyStyle(n,e){for(const o of e)n.style[o]="",n.classList.remove(this._borderCellCss[o]);QT.some(o=>-1===e.indexOf(o)&&n.style[o])?n.style.zIndex=this._getCalculatedZIndex(n):(n.style.zIndex="",this._needsPositionStickyOnElement&&(n.style.position=""),n.classList.remove(this._stickCellCss))}_addStickyStyle(n,e,i,o){n.classList.add(this._stickCellCss),o&&n.classList.add(this._borderCellCss[e]),n.style[e]=`${i}px`,n.style.zIndex=this._getCalculatedZIndex(n),this._needsPositionStickyOnElement&&(n.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(n){const e={top:100,bottom:10,left:1,right:1};let i=0;for(const o of QT)n.style[o]&&(i+=e[o]);return i?`${i}`:""}_getCellWidths(n,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;const i=[],o=n.children;for(let r=0;r0;r--)e[r]&&(i[r]=o,o+=n[r]);return i}}const Jb=new _e("CDK_SPL");let pp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","rowOutlet",""]]}),t})(),fp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","headerRowOutlet",""]]}),t})(),mp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","footerRowOutlet",""]]}),t})(),gp=(()=>{class t{constructor(e,i){this.viewContainer=e,this.elementRef=i}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(He))},t.\u0275dir=oe({type:t,selectors:[["","noDataRowOutlet",""]]}),t})(),_p=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v,C){this._differs=e,this._changeDetectorRef=i,this._elementRef=o,this._dir=s,this._platform=l,this._viewRepeater=u,this._coalescedStyleScheduler=p,this._viewportRuler=g,this._stickyPositioningListener=v,this._ngZone=C,this._onDestroy=new ie,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.contentChanged=new Pe,this.viewChange=new vt({start:0,end:Number.MAX_VALUE}),r||this._elementRef.nativeElement.setAttribute("role","table"),this._document=a,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&this._switchDataSource(e)}get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=Xe(e),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}get fixedLayout(){return this._fixedLayout}set fixedLayout(e){this._fixedLayout=Xe(e),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}ngOnInit(){this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create((e,i)=>this.trackBy?this.trackBy(i.dataIndex,i.data):i),this._viewportRuler.change().pipe(tt(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentChecked(){this._cacheRowDefs(),this._cacheColumnDefs();const i=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||i,this._forceRecalculateCellWidths=i,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}ngOnDestroy(){[this._rowOutlet.viewContainer,this._headerRowOutlet.viewContainer,this._footerRowOutlet.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._onDestroy.next(),this._onDestroy.complete(),Gh(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();const e=this._dataDiffer.diff(this._renderRows);if(!e)return this._updateNoDataRow(),void this.contentChanged.next();const i=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,i,(o,r,s)=>this._getEmbeddedViewArgs(o.item,s),o=>o.item.data,o=>{1===o.operation&&o.context&&this._renderCellTemplateForItem(o.record.item.rowDef,o.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(o=>{i.get(o.currentIndex).context.$implicit=o.item.data}),this._updateNoDataRow(),this._ngZone&&Je.isInAngularZone()?this._ngZone.onStable.pipe(Ot(1),tt(this._onDestroy)).subscribe(()=>{this.updateStickyColumnStyles()}):this.updateStickyColumnStyles(),this.contentChanged.next()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){const e=this._getRenderedRows(this._headerRowOutlet),o=this._elementRef.nativeElement.querySelector("thead");o&&(o.style.display=e.length?"":"none");const r=this._headerRowDefs.map(s=>s.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,r,"top"),this._headerRowDefs.forEach(s=>s.resetStickyChanged())}updateStickyFooterRowStyles(){const e=this._getRenderedRows(this._footerRowOutlet),o=this._elementRef.nativeElement.querySelector("tfoot");o&&(o.style.display=e.length?"":"none");const r=this._footerRowDefs.map(s=>s.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,r,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,r),this._footerRowDefs.forEach(s=>s.resetStickyChanged())}updateStickyColumnStyles(){const e=this._getRenderedRows(this._headerRowOutlet),i=this._getRenderedRows(this._rowOutlet),o=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...i,...o],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((r,s)=>{this._addStickyColumnStyles([r],this._headerRowDefs[s])}),this._rowDefs.forEach(r=>{const s=[];for(let a=0;a{this._addStickyColumnStyles([r],this._footerRowDefs[s])}),Array.from(this._columnDefsByName.values()).forEach(r=>r.resetStickyChanged())}_getAllRenderRows(){const e=[],i=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let o=0;o{const a=o&&o.has(s)?o.get(s):[];if(a.length){const l=a.shift();return l.dataIndex=i,l}return{data:e,rowDef:s,dataIndex:i}})}_cacheColumnDefs(){this._columnDefsByName.clear(),bp(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(i=>{this._columnDefsByName.has(i.name),this._columnDefsByName.set(i.name,i)})}_cacheRowDefs(){this._headerRowDefs=bp(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=bp(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=bp(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);const e=this._rowDefs.filter(i=>!i.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){const e=(s,a)=>s||!!a.getColumnsDiff(),i=this._rowDefs.reduce(e,!1);i&&this._forceRenderDataRows();const o=this._headerRowDefs.reduce(e,!1);o&&this._forceRenderHeaderRows();const r=this._footerRowDefs.reduce(e,!1);return r&&this._forceRenderFooterRows(),i||o||r}_switchDataSource(e){this._data=[],Gh(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;Gh(this.dataSource)?e=this.dataSource.connect(this):function zb(t){return!!t&&(t instanceof Ue||H(t.lift)&&H(t.subscribe))}(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=Ge(this.dataSource)),this._renderChangeSubscription=e.pipe(tt(this._onDestroy)).subscribe(i=>{this._data=i||[],this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,i)=>this._renderRow(this._headerRowOutlet,e,i)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,i)=>this._renderRow(this._footerRowOutlet,e,i)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,i){const o=Array.from(i.columns||[]).map(a=>this._columnDefsByName.get(a)),r=o.map(a=>a.sticky),s=o.map(a=>a.stickyEnd);this._stickyStyler.updateStickyColumns(e,r,s,!this._fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){const i=[];for(let o=0;o!r.when||r.when(i,e));else{let r=this._rowDefs.find(s=>s.when&&s.when(i,e))||this._defaultRowDef;r&&o.push(r)}return o}_getEmbeddedViewArgs(e,i){return{templateRef:e.rowDef.template,context:{$implicit:e.data},index:i}}_renderRow(e,i,o,r={}){const s=e.viewContainer.createEmbeddedView(i.template,r,o);return this._renderCellTemplateForItem(i,r),s}_renderCellTemplateForItem(e,i){for(let o of this._getCellTemplates(e))Qr.mostRecentCellOutlet&&Qr.mostRecentCellOutlet._viewContainer.createEmbeddedView(o,i);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){const e=this._rowOutlet.viewContainer;for(let i=0,o=e.length;i{const o=this._columnDefsByName.get(i);return e.extractCellTemplate(o)}):[]}_applyNativeTableSections(){const e=this._document.createDocumentFragment(),i=[{tag:"thead",outlets:[this._headerRowOutlet]},{tag:"tbody",outlets:[this._rowOutlet,this._noDataRowOutlet]},{tag:"tfoot",outlets:[this._footerRowOutlet]}];for(const o of i){const r=this._document.createElement(o.tag);r.setAttribute("role","rowgroup");for(const s of o.outlets)r.appendChild(s.elementRef.nativeElement);e.appendChild(r)}this._elementRef.nativeElement.appendChild(e)}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){const e=(i,o)=>i||o.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){this._stickyStyler=new hH(this._isNativeHtmlTable,this.stickyCssClass,this._dir?this._dir.value:"ltr",this._coalescedStyleScheduler,this._platform.isBrowser,this.needsPositionStickyOnElement,this._stickyPositioningListener),(this._dir?this._dir.change:Ge()).pipe(tt(this._onDestroy)).subscribe(i=>{this._stickyStyler.direction=i,this.updateStickyColumnStyles()})}_getOwnDefs(e){return e.filter(i=>!i._table||i._table===this)}_updateNoDataRow(){const e=this._customNoDataRow||this._noDataRow;if(!e)return;const i=0===this._rowOutlet.viewContainer.length;if(i===this._isShowingNoDataRow)return;const o=this._noDataRowOutlet.viewContainer;if(i){const r=o.createEmbeddedView(e.templateRef),s=r.rootNodes[0];1===r.rootNodes.length&&(null==s?void 0:s.nodeType)===this._document.ELEMENT_NODE&&(s.setAttribute("role","row"),s.classList.add(e._contentClassName))}else o.clear();this._isShowingNoDataRow=i}}return t.\u0275fac=function(e){return new(e||t)(b(Eo),b(At),b(He),Di("role"),b(li,8),b(ht),b(dn),b(cd),b(Kb),b(yr),b(Jb,12),b(Je,8))},t.\u0275cmp=Ae({type:t,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(e,i,o){if(1&e&&(mt(o,hp,5),mt(o,Zr,5),mt(o,up,5),mt(o,Md,5),mt(o,xd,5)),2&e){let r;Ne(r=Le())&&(i._noDataRow=r.first),Ne(r=Le())&&(i._contentColumnDefs=r),Ne(r=Le())&&(i._contentRowDefs=r),Ne(r=Le())&&(i._contentHeaderRowDefs=r),Ne(r=Le())&&(i._contentFooterRowDefs=r)}},viewQuery:function(e,i){if(1&e&&(Tt(pp,7),Tt(fp,7),Tt(mp,7),Tt(gp,7)),2&e){let o;Ne(o=Le())&&(i._rowOutlet=o.first),Ne(o=Le())&&(i._headerRowOutlet=o.first),Ne(o=Le())&&(i._footerRowOutlet=o.first),Ne(o=Le())&&(i._noDataRowOutlet=o.first)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(e,i){2&e&&rt("cdk-table-fixed-layout",i.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:"multiTemplateDataRows",fixedLayout:"fixedLayout"},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[ze([{provide:Ll,useExisting:t},{provide:cd,useClass:hx},{provide:Kb,useClass:ZT},{provide:Jb,useValue:null}])],ngContentSelectors:nH,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(e,i){1&e&&(Jt(tH),ct(0),ct(1,1),ko(2,0)(3,1)(4,2)(5,3))},directives:[fp,pp,gp,mp],styles:[".cdk-table-fixed-layout{table-layout:fixed}\n"],encapsulation:2}),t})();function bp(t,n){return t.concat(Array.from(n))}let fH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Nb]]}),t})();const mH=[[["caption"]],[["colgroup"],["col"]]],gH=["caption","colgroup, col"];let As=(()=>{class t extends _p{constructor(){super(...arguments),this.stickyCssClass="mat-table-sticky",this.needsPositionStickyOnElement=!1}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-table"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-table-fixed-layout",i.fixedLayout)},exportAs:["matTable"],features:[ze([{provide:cd,useClass:hx},{provide:_p,useExisting:t},{provide:Ll,useExisting:t},{provide:Kb,useClass:ZT},{provide:Jb,useValue:null}]),Ce],ngContentSelectors:gH,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(e,i){1&e&&(Jt(mH),ct(0),ct(1,1),ko(2,0)(3,1)(4,2)(5,3))},directives:[fp,pp,gp,mp],styles:["mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}\n"],encapsulation:2}),t})(),Yr=(()=>{class t extends Bl{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matCellDef",""]],features:[ze([{provide:Bl,useExisting:t}]),Ce]}),t})(),Xr=(()=>{class t extends Vl{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matHeaderCellDef",""]],features:[ze([{provide:Vl,useExisting:t}]),Ce]}),t})(),Jr=(()=>{class t extends Zr{get name(){return this._name}set name(e){this._setNameInput(e)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[ze([{provide:Zr,useExisting:t},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:t}]),Ce]}),t})(),es=(()=>{class t extends Wb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[Ce]}),t})(),ts=(()=>{class t extends qb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[Ce]}),t})(),Ps=(()=>{class t extends Md{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[ze([{provide:Md,useExisting:t}]),Ce]}),t})(),Rs=(()=>{class t extends up{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[ze([{provide:up,useExisting:t}]),Ce]}),t})(),Fs=(()=>{class t extends Qb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[ze([{provide:Qb,useExisting:t}]),Ce],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&ko(0,0)},directives:[Qr],encapsulation:2}),t})(),Ns=(()=>{class t extends Xb{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[ze([{provide:Xb,useExisting:t}]),Ce],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(e,i){1&e&&ko(0,0)},directives:[Qr],encapsulation:2}),t})(),vp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fH,ft],ft]}),t})();const XT=new _e("CdkAccordion");let TH=0,kH=(()=>{class t{constructor(e,i,o){this.accordion=e,this._changeDetectorRef=i,this._expansionDispatcher=o,this._openCloseAllSubscription=k.EMPTY,this.closed=new Pe,this.opened=new Pe,this.destroyed=new Pe,this.expandedChange=new Pe,this.id="cdk-accordion-child-"+TH++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=o.listen((r,s)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===s&&this.id!==r&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}get expanded(){return this._expanded}set expanded(e){e=Xe(e),this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e)}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(e=>{this.disabled||(this.expanded=e)})}}return t.\u0275fac=function(e){return new(e||t)(b(XT,12),b(At),b(sb))},t.\u0275dir=oe({type:t,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[ze([{provide:XT,useValue:void 0}])]}),t})(),EH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const IH=["body"];function OH(t,n){}const AH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],PH=["mat-expansion-panel-header","*","mat-action-row"];function RH(t,n){1&t&&E(0,"span",2),2&t&&m("@indicatorRotate",D()._getExpandedState())}const FH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],NH=["mat-panel-title","mat-panel-description","*"],JT=new _e("MAT_ACCORDION"),ek="225ms cubic-bezier(0.4,0.0,0.2,1)",tk={indicatorRotate:Ao("indicatorRotate",[jn("collapsed, void",Vt({transform:"rotate(0deg)"})),jn("expanded",Vt({transform:"rotate(180deg)"})),Kn("expanded <=> collapsed, void => collapsed",ai(ek))]),bodyExpansion:Ao("bodyExpansion",[jn("collapsed, void",Vt({height:"0px",visibility:"hidden"})),jn("expanded",Vt({height:"*",visibility:"visible"})),Kn("expanded <=> collapsed, void => collapsed",ai(ek))])};let LH=(()=>{class t{constructor(e){this._template=e}}return t.\u0275fac=function(e){return new(e||t)(b(rn))},t.\u0275dir=oe({type:t,selectors:[["ng-template","matExpansionPanelContent",""]]}),t})(),BH=0;const nk=new _e("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let ik=(()=>{class t extends kH{constructor(e,i,o,r,s,a,l){super(e,i,o),this._viewContainerRef=r,this._animationMode=a,this._hideToggle=!1,this.afterExpand=new Pe,this.afterCollapse=new Pe,this._inputChanges=new ie,this._headerId="mat-expansion-panel-header-"+BH++,this._bodyAnimationDone=new ie,this.accordion=e,this._document=s,this._bodyAnimationDone.pipe(nd((u,p)=>u.fromState===p.fromState&&u.toState===p.toState)).subscribe(u=>{"void"!==u.fromState&&("expanded"===u.toState?this.afterExpand.emit():"collapsed"===u.toState&&this.afterCollapse.emit())}),l&&(this.hideToggle=l.hideToggle)}get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(e){this._hideToggle=Xe(e)}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(e){this._togglePosition=e}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this.opened.pipe(Nn(null),It(()=>this.expanded&&!this._portal),Ot(1)).subscribe(()=>{this._portal=new qr(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(e){this._inputChanges.next(e)}ngOnDestroy(){super.ngOnDestroy(),this._bodyAnimationDone.complete(),this._inputChanges.complete()}_containsFocus(){if(this._body){const e=this._document.activeElement,i=this._body.nativeElement;return e===i||i.contains(e)}return!1}}return t.\u0275fac=function(e){return new(e||t)(b(JT,12),b(At),b(sb),b(sn),b(ht),b(gn,8),b(nk,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(e,i,o){if(1&e&&mt(o,LH,5),2&e){let r;Ne(r=Le())&&(i._lazyContent=r.first)}},viewQuery:function(e,i){if(1&e&&Tt(IH,5),2&e){let o;Ne(o=Le())&&(i._body=o.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(e,i){2&e&&rt("mat-expanded",i.expanded)("_mat-animation-noopable","NoopAnimations"===i._animationMode)("mat-expansion-panel-spacing",i._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[ze([{provide:JT,useValue:void 0}]),Ce,nn],ngContentSelectors:PH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(e,i){1&e&&(Jt(AH),ct(0),d(1,"div",0,1),N("@bodyExpansion.done",function(r){return i._bodyAnimationDone.next(r)}),d(3,"div",2),ct(4,1),_(5,OH,0,0,"ng-template",3),c(),ct(6,2),c()),2&e&&(f(1),m("@bodyExpansion",i._getExpandedState())("id",i.id),et("aria-labelledby",i._headerId),f(4),m("cdkPortalOutlet",i._portal))},directives:[Os],styles:['.mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-content[style*="visibility: hidden"] *{visibility:hidden !important}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}\n'],encapsulation:2,data:{animation:[tk.bodyExpansion]},changeDetection:0}),t})();class VH{}const jH=Ml(VH);let HH=(()=>{class t extends jH{constructor(e,i,o,r,s,a,l){super(),this.panel=e,this._element=i,this._focusMonitor=o,this._changeDetectorRef=r,this._animationMode=a,this._parentChangeSubscription=k.EMPTY;const u=e.accordion?e.accordion._stateChanges.pipe(It(p=>!(!p.hideToggle&&!p.togglePosition))):Co;this.tabIndex=parseInt(l||"")||0,this._parentChangeSubscription=Tn(e.opened,e.closed,u,e._inputChanges.pipe(It(p=>!!(p.hideToggle||p.disabled||p.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),e.closed.pipe(It(()=>e._containsFocus())).subscribe(()=>o.focusVia(i,"program")),s&&(this.expandedHeight=s.expandedHeight,this.collapsedHeight=s.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}_keydown(e){switch(e.keyCode){case 32:case 13:fi(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}focus(e,i){e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(e=>{e&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}return t.\u0275fac=function(e){return new(e||t)(b(ik,1),b(He),b(Fo),b(At),b(nk,8),b(gn,8),Di("tabindex"))},t.\u0275cmp=Ae({type:t,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(e,i){1&e&&N("click",function(){return i._toggle()})("keydown",function(r){return i._keydown(r)}),2&e&&(et("id",i.panel._headerId)("tabindex",i.tabIndex)("aria-controls",i._getPanelId())("aria-expanded",i._isExpanded())("aria-disabled",i.panel.disabled),pi("height",i._getHeaderHeight()),rt("mat-expanded",i._isExpanded())("mat-expansion-toggle-indicator-after","after"===i._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===i._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===i._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[Ce],ngContentSelectors:NH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(e,i){1&e&&(Jt(FH),d(0,"span",0),ct(1),ct(2,1),ct(3,2),c(),_(4,RH,1,1,"span",1)),2&e&&(f(4),m("ngIf",i._showToggle()))},directives:[Et],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}.cdk-high-contrast-active .mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}\n'],encapsulation:2,data:{animation:[tk.indicatorRotate]},changeDetection:0}),t})(),UH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["mat-panel-title"]],hostAttrs:[1,"mat-expansion-panel-header-title"]}),t})(),ok=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,EH,Cd]]}),t})();const zH=["*"],rk=new _e("MatChipRemove"),sk=new _e("MatChipAvatar"),ak=new _e("MatChipTrailingIcon");class $H{constructor(n){this._elementRef=n}}const GH=Ml(Gr(vr($H),"primary"),-1);let Td=(()=>{class t extends GH{constructor(e,i,o,r,s,a,l,u){super(e),this._ngZone=i,this._changeDetectorRef=s,this._hasFocus=!1,this.chipListSelectable=!0,this._chipListMultiple=!1,this._chipListDisabled=!1,this._selected=!1,this._selectable=!0,this._disabled=!1,this._removable=!0,this._onFocus=new ie,this._onBlur=new ie,this.selectionChange=new Pe,this.destroyed=new Pe,this.removed=new Pe,this._addHostClassName(),this._chipRippleTarget=a.createElement("div"),this._chipRippleTarget.classList.add("mat-chip-ripple"),this._elementRef.nativeElement.appendChild(this._chipRippleTarget),this._chipRipple=new OM(this,i,this._chipRippleTarget,o),this._chipRipple.setupTriggerEvents(e),this.rippleConfig=r||{},this._animationsDisabled="NoopAnimations"===l,this.tabIndex=null!=u&&parseInt(u)||-1}get rippleDisabled(){return this.disabled||this.disableRipple||this._animationsDisabled||!!this.rippleConfig.disabled}get selected(){return this._selected}set selected(e){const i=Xe(e);i!==this._selected&&(this._selected=i,this._dispatchSelectionChange())}get value(){return void 0!==this._value?this._value:this._elementRef.nativeElement.textContent}set value(e){this._value=e}get selectable(){return this._selectable&&this.chipListSelectable}set selectable(e){this._selectable=Xe(e)}get disabled(){return this._chipListDisabled||this._disabled}set disabled(e){this._disabled=Xe(e)}get removable(){return this._removable}set removable(e){this._removable=Xe(e)}get ariaSelected(){return this.selectable&&(this._chipListMultiple||this.selected)?this.selected.toString():null}_addHostClassName(){const e="mat-basic-chip",i=this._elementRef.nativeElement;i.hasAttribute(e)||i.tagName.toLowerCase()===e?i.classList.add(e):i.classList.add("mat-standard-chip")}ngOnDestroy(){this.destroyed.emit({chip:this}),this._chipRipple._removeTriggerEvents()}select(){this._selected||(this._selected=!0,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}deselect(){this._selected&&(this._selected=!1,this._dispatchSelectionChange(),this._changeDetectorRef.markForCheck())}selectViaInteraction(){this._selected||(this._selected=!0,this._dispatchSelectionChange(!0),this._changeDetectorRef.markForCheck())}toggleSelected(e=!1){return this._selected=!this.selected,this._dispatchSelectionChange(e),this._changeDetectorRef.markForCheck(),this.selected}focus(){this._hasFocus||(this._elementRef.nativeElement.focus(),this._onFocus.next({chip:this})),this._hasFocus=!0}remove(){this.removable&&this.removed.emit({chip:this})}_handleClick(e){this.disabled&&e.preventDefault()}_handleKeydown(e){if(!this.disabled)switch(e.keyCode){case 46:case 8:this.remove(),e.preventDefault();break;case 32:this.selectable&&this.toggleSelected(!0),e.preventDefault()}}_blur(){this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{this._ngZone.run(()=>{this._hasFocus=!1,this._onBlur.next({chip:this})})})}_dispatchSelectionChange(e=!1){this.selectionChange.emit({source:this,isUserInput:e,selected:this._selected})}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(dn),b(AM,8),b(At),b(ht),b(gn,8),Di("tabindex"))},t.\u0275dir=oe({type:t,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(e,i,o){if(1&e&&(mt(o,sk,5),mt(o,ak,5),mt(o,rk,5)),2&e){let r;Ne(r=Le())&&(i.avatar=r.first),Ne(r=Le())&&(i.trailingIcon=r.first),Ne(r=Le())&&(i.removeIcon=r.first)}},hostAttrs:["role","option",1,"mat-chip","mat-focus-indicator"],hostVars:14,hostBindings:function(e,i){1&e&&N("click",function(r){return i._handleClick(r)})("keydown",function(r){return i._handleKeydown(r)})("focus",function(){return i.focus()})("blur",function(){return i._blur()}),2&e&&(et("tabindex",i.disabled?null:i.tabIndex)("disabled",i.disabled||null)("aria-disabled",i.disabled.toString())("aria-selected",i.ariaSelected),rt("mat-chip-selected",i.selected)("mat-chip-with-avatar",i.avatar)("mat-chip-with-trailing-icon",i.trailingIcon||i.removeIcon)("mat-chip-disabled",i.disabled)("_mat-animation-noopable",i._animationsDisabled))},inputs:{color:"color",disableRipple:"disableRipple",tabIndex:"tabIndex",selected:"selected",value:"value",selectable:"selectable",disabled:"disabled",removable:"removable"},outputs:{selectionChange:"selectionChange",destroyed:"destroyed",removed:"removed"},exportAs:["matChip"],features:[Ce]}),t})(),lk=(()=>{class t{constructor(e,i){this._parentChip=e,"BUTTON"===i.nativeElement.nodeName&&i.nativeElement.setAttribute("type","button")}_handleClick(e){const i=this._parentChip;i.removable&&!i.disabled&&i.remove(),e.stopPropagation(),e.preventDefault()}}return t.\u0275fac=function(e){return new(e||t)(b(Td),b(He))},t.\u0275dir=oe({type:t,selectors:[["","matChipRemove",""]],hostAttrs:[1,"mat-chip-remove","mat-chip-trailing-icon"],hostBindings:function(e,i){1&e&&N("click",function(r){return i._handleClick(r)})},features:[ze([{provide:rk,useExisting:t}])]}),t})();const ck=new _e("mat-chips-default-options");let KH=0,dk=(()=>{class t{constructor(e,i){this._elementRef=e,this._defaultOptions=i,this.focused=!1,this._addOnBlur=!1,this.separatorKeyCodes=this._defaultOptions.separatorKeyCodes,this.chipEnd=new Pe,this.placeholder="",this.id="mat-chip-list-input-"+KH++,this._disabled=!1,this.inputElement=this._elementRef.nativeElement}set chipList(e){e&&(this._chipList=e,this._chipList.registerInput(this))}get addOnBlur(){return this._addOnBlur}set addOnBlur(e){this._addOnBlur=Xe(e)}get disabled(){return this._disabled||this._chipList&&this._chipList.disabled}set disabled(e){this._disabled=Xe(e)}get empty(){return!this.inputElement.value}ngOnChanges(){this._chipList.stateChanges.next()}ngOnDestroy(){this.chipEnd.complete()}ngAfterContentInit(){this._focusLastChipOnBackspace=this.empty}_keydown(e){if(e){if(9===e.keyCode&&!fi(e,"shiftKey")&&this._chipList._allowFocusEscape(),8===e.keyCode&&this._focusLastChipOnBackspace)return this._chipList._keyManager.setLastItemActive(),void e.preventDefault();this._focusLastChipOnBackspace=!1}this._emitChipEnd(e)}_keyup(e){!this._focusLastChipOnBackspace&&8===e.keyCode&&this.empty&&(this._focusLastChipOnBackspace=!0,e.preventDefault())}_blur(){this.addOnBlur&&this._emitChipEnd(),this.focused=!1,this._chipList.focused||this._chipList._blur(),this._chipList.stateChanges.next()}_focus(){this.focused=!0,this._focusLastChipOnBackspace=this.empty,this._chipList.stateChanges.next()}_emitChipEnd(e){!this.inputElement.value&&!!e&&this._chipList._keydown(e),(!e||this._isSeparatorKey(e))&&(this.chipEnd.emit({input:this.inputElement,value:this.inputElement.value,chipInput:this}),null==e||e.preventDefault())}_onInput(){this._chipList.stateChanges.next()}focus(e){this.inputElement.focus(e)}clear(){this.inputElement.value="",this._focusLastChipOnBackspace=!0}_isSeparatorKey(e){return!fi(e)&&new Set(this.separatorKeyCodes).has(e.keyCode)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(ck))},t.\u0275dir=oe({type:t,selectors:[["input","matChipInputFor",""]],hostAttrs:[1,"mat-chip-input","mat-input-element"],hostVars:5,hostBindings:function(e,i){1&e&&N("keydown",function(r){return i._keydown(r)})("keyup",function(r){return i._keyup(r)})("blur",function(){return i._blur()})("focus",function(){return i._focus()})("input",function(){return i._onInput()}),2&e&&(Nr("id",i.id),et("disabled",i.disabled||null)("placeholder",i.placeholder||null)("aria-invalid",i._chipList&&i._chipList.ngControl?i._chipList.ngControl.invalid:null)("aria-required",i._chipList&&i._chipList.required||null))},inputs:{chipList:["matChipInputFor","chipList"],addOnBlur:["matChipInputAddOnBlur","addOnBlur"],separatorKeyCodes:["matChipInputSeparatorKeyCodes","separatorKeyCodes"],placeholder:"placeholder",id:"id",disabled:"disabled"},outputs:{chipEnd:"matChipInputTokenEnd"},exportAs:["matChipInput","matChipInputFor"],features:[nn]}),t})();const ZH=z_(class{constructor(t,n,e,i){this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=e,this.ngControl=i}});let QH=0;class YH{constructor(n,e){this.source=n,this.value=e}}let uk=(()=>{class t extends ZH{constructor(e,i,o,r,s,a,l){super(a,r,s,l),this._elementRef=e,this._changeDetectorRef=i,this._dir=o,this.controlType="mat-chip-list",this._lastDestroyedChipIndex=null,this._destroyed=new ie,this._uid="mat-chip-list-"+QH++,this._tabIndex=0,this._userTabIndex=null,this._onTouched=()=>{},this._onChange=()=>{},this._multiple=!1,this._compareWith=(u,p)=>u===p,this._disabled=!1,this.ariaOrientation="horizontal",this._selectable=!0,this.change=new Pe,this.valueChange=new Pe,this.ngControl&&(this.ngControl.valueAccessor=this)}get selected(){var e,i;return this.multiple?(null===(e=this._selectionModel)||void 0===e?void 0:e.selected)||[]:null===(i=this._selectionModel)||void 0===i?void 0:i.selected[0]}get role(){return this.empty?null:"listbox"}get multiple(){return this._multiple}set multiple(e){this._multiple=Xe(e),this._syncChipsState()}get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this.writeValue(e),this._value=e}get id(){return this._chipInput?this._chipInput.id:this._uid}get required(){var e,i,o,r;return null!==(r=null!==(e=this._required)&&void 0!==e?e:null===(o=null===(i=this.ngControl)||void 0===i?void 0:i.control)||void 0===o?void 0:o.hasValidator(de.required))&&void 0!==r&&r}set required(e){this._required=Xe(e),this.stateChanges.next()}get placeholder(){return this._chipInput?this._chipInput.placeholder:this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}get focused(){return this._chipInput&&this._chipInput.focused||this._hasFocusedChip()}get empty(){return(!this._chipInput||this._chipInput.empty)&&(!this.chips||0===this.chips.length)}get shouldLabelFloat(){return!this.empty||this.focused}get disabled(){return this.ngControl?!!this.ngControl.disabled:this._disabled}set disabled(e){this._disabled=Xe(e),this._syncChipsState()}get selectable(){return this._selectable}set selectable(e){this._selectable=Xe(e),this.chips&&this.chips.forEach(i=>i.chipListSelectable=this._selectable)}set tabIndex(e){this._userTabIndex=e,this._tabIndex=e}get chipSelectionChanges(){return Tn(...this.chips.map(e=>e.selectionChange))}get chipFocusChanges(){return Tn(...this.chips.map(e=>e._onFocus))}get chipBlurChanges(){return Tn(...this.chips.map(e=>e._onBlur))}get chipRemoveChanges(){return Tn(...this.chips.map(e=>e.destroyed))}ngAfterContentInit(){this._keyManager=new Nh(this.chips).withWrap().withVerticalOrientation().withHomeAndEnd().withHorizontalOrientation(this._dir?this._dir.value:"ltr"),this._dir&&this._dir.change.pipe(tt(this._destroyed)).subscribe(e=>this._keyManager.withHorizontalOrientation(e)),this._keyManager.tabOut.pipe(tt(this._destroyed)).subscribe(()=>{this._allowFocusEscape()}),this.chips.changes.pipe(Nn(null),tt(this._destroyed)).subscribe(()=>{this.disabled&&Promise.resolve().then(()=>{this._syncChipsState()}),this._resetChips(),this._initializeSelection(),this._updateTabIndex(),this._updateFocusForDestroyedChips(),this.stateChanges.next()})}ngOnInit(){this._selectionModel=new Tl(this.multiple,void 0,!1),this.stateChanges.next()}ngDoCheck(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==this._disabled&&(this.disabled=!!this.ngControl.disabled))}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete(),this.stateChanges.complete(),this._dropSubscriptions()}registerInput(e){this._chipInput=e,this._elementRef.nativeElement.setAttribute("data-mat-chip-input",e.id)}setDescribedByIds(e){this._ariaDescribedby=e.join(" ")}writeValue(e){this.chips&&this._setSelectionByValue(e,!1)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this.stateChanges.next()}onContainerClick(e){this._originatesFromChip(e)||this.focus()}focus(e){this.disabled||this._chipInput&&this._chipInput.focused||(this.chips.length>0?(this._keyManager.setFirstItemActive(),this.stateChanges.next()):(this._focusInput(e),this.stateChanges.next()))}_focusInput(e){this._chipInput&&this._chipInput.focus(e)}_keydown(e){const i=e.target;i&&i.classList.contains("mat-chip")&&(this._keyManager.onKeydown(e),this.stateChanges.next())}_updateTabIndex(){this._tabIndex=this._userTabIndex||(0===this.chips.length?-1:0)}_updateFocusForDestroyedChips(){if(null!=this._lastDestroyedChipIndex)if(this.chips.length){const e=Math.min(this._lastDestroyedChipIndex,this.chips.length-1);this._keyManager.setActiveItem(e)}else this.focus();this._lastDestroyedChipIndex=null}_isValidIndex(e){return e>=0&&eo.deselect()),Array.isArray(e))e.forEach(o=>this._selectValue(o,i)),this._sortValues();else{const o=this._selectValue(e,i);o&&i&&this._keyManager.setActiveItem(o)}}_selectValue(e,i=!0){const o=this.chips.find(r=>null!=r.value&&this._compareWith(r.value,e));return o&&(i?o.selectViaInteraction():o.select(),this._selectionModel.select(o)),o}_initializeSelection(){Promise.resolve().then(()=>{(this.ngControl||this._value)&&(this._setSelectionByValue(this.ngControl?this.ngControl.value:this._value,!1),this.stateChanges.next())})}_clearSelection(e){this._selectionModel.clear(),this.chips.forEach(i=>{i!==e&&i.deselect()}),this.stateChanges.next()}_sortValues(){this._multiple&&(this._selectionModel.clear(),this.chips.forEach(e=>{e.selected&&this._selectionModel.select(e)}),this.stateChanges.next())}_propagateChanges(e){let i=null;i=Array.isArray(this.selected)?this.selected.map(o=>o.value):this.selected?this.selected.value:e,this._value=i,this.change.emit(new YH(this,i)),this.valueChange.emit(i),this._onChange(i),this._changeDetectorRef.markForCheck()}_blur(){this._hasFocusedChip()||this._keyManager.setActiveItem(-1),this.disabled||(this._chipInput?setTimeout(()=>{this.focused||this._markAsTouched()}):this._markAsTouched())}_markAsTouched(){this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next()}_allowFocusEscape(){-1!==this._tabIndex&&(this._tabIndex=-1,setTimeout(()=>{this._tabIndex=this._userTabIndex||0,this._changeDetectorRef.markForCheck()}))}_resetChips(){this._dropSubscriptions(),this._listenToChipsFocus(),this._listenToChipsSelection(),this._listenToChipsRemoved()}_dropSubscriptions(){this._chipFocusSubscription&&(this._chipFocusSubscription.unsubscribe(),this._chipFocusSubscription=null),this._chipBlurSubscription&&(this._chipBlurSubscription.unsubscribe(),this._chipBlurSubscription=null),this._chipSelectionSubscription&&(this._chipSelectionSubscription.unsubscribe(),this._chipSelectionSubscription=null),this._chipRemoveSubscription&&(this._chipRemoveSubscription.unsubscribe(),this._chipRemoveSubscription=null)}_listenToChipsSelection(){this._chipSelectionSubscription=this.chipSelectionChanges.subscribe(e=>{e.source.selected?this._selectionModel.select(e.source):this._selectionModel.deselect(e.source),this.multiple||this.chips.forEach(i=>{!this._selectionModel.isSelected(i)&&i.selected&&i.deselect()}),e.isUserInput&&this._propagateChanges()})}_listenToChipsFocus(){this._chipFocusSubscription=this.chipFocusChanges.subscribe(e=>{let i=this.chips.toArray().indexOf(e.chip);this._isValidIndex(i)&&this._keyManager.updateActiveItem(i),this.stateChanges.next()}),this._chipBlurSubscription=this.chipBlurChanges.subscribe(()=>{this._blur(),this.stateChanges.next()})}_listenToChipsRemoved(){this._chipRemoveSubscription=this.chipRemoveChanges.subscribe(e=>{const i=e.chip,o=this.chips.toArray().indexOf(e.chip);this._isValidIndex(o)&&i._hasFocus&&(this._lastDestroyedChipIndex=o)})}_originatesFromChip(e){let i=e.target;for(;i&&i!==this._elementRef.nativeElement;){if(i.classList.contains("mat-chip"))return!0;i=i.parentElement}return!1}_hasFocusedChip(){return this.chips&&this.chips.some(e=>e._hasFocus)}_syncChipsState(){this.chips&&this.chips.forEach(e=>{e._chipListDisabled=this._disabled,e._chipListMultiple=this.multiple})}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(li,8),b(ks,8),b(Sn,8),b(od),b(rr,10))},t.\u0275cmp=Ae({type:t,selectors:[["mat-chip-list"]],contentQueries:function(e,i,o){if(1&e&&mt(o,Td,5),2&e){let r;Ne(r=Le())&&(i.chips=r)}},hostAttrs:[1,"mat-chip-list"],hostVars:15,hostBindings:function(e,i){1&e&&N("focus",function(){return i.focus()})("blur",function(){return i._blur()})("keydown",function(r){return i._keydown(r)}),2&e&&(Nr("id",i._uid),et("tabindex",i.disabled?null:i._tabIndex)("aria-describedby",i._ariaDescribedby||null)("aria-required",i.role?i.required:null)("aria-disabled",i.disabled.toString())("aria-invalid",i.errorState)("aria-multiselectable",i.multiple)("role",i.role)("aria-orientation",i.ariaOrientation),rt("mat-chip-list-disabled",i.disabled)("mat-chip-list-invalid",i.errorState)("mat-chip-list-required",i.required))},inputs:{errorStateMatcher:"errorStateMatcher",multiple:"multiple",compareWith:"compareWith",value:"value",required:"required",placeholder:"placeholder",disabled:"disabled",ariaOrientation:["aria-orientation","ariaOrientation"],selectable:"selectable",tabIndex:"tabIndex"},outputs:{change:"change",valueChange:"valueChange"},exportAs:["matChipList"],features:[ze([{provide:gd,useExisting:t}]),Ce],ngContentSelectors:zH,decls:2,vars:0,consts:[[1,"mat-chip-list-wrapper"]],template:function(e,i){1&e&&(Jt(),d(0,"div",0),ct(1),c())},styles:['.mat-chip{position:relative;box-sizing:border-box;-webkit-tap-highlight-color:transparent;border:none;-webkit-appearance:none;-moz-appearance:none}.mat-standard-chip{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:inline-flex;padding:7px 12px;border-radius:16px;align-items:center;cursor:default;min-height:32px;height:1px}._mat-animation-noopable.mat-standard-chip{transition:none;animation:none}.mat-standard-chip .mat-chip-remove{border:none;-webkit-appearance:none;-moz-appearance:none;padding:0;background:none}.mat-standard-chip .mat-chip-remove.mat-icon,.mat-standard-chip .mat-chip-remove .mat-icon{width:18px;height:18px;font-size:18px}.mat-standard-chip::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;opacity:0;content:"";pointer-events:none;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-standard-chip:hover::after{opacity:.12}.mat-standard-chip:focus{outline:none}.mat-standard-chip:focus::after{opacity:.16}.cdk-high-contrast-active .mat-standard-chip{outline:solid 1px}.cdk-high-contrast-active .mat-standard-chip:focus{outline:dotted 2px}.cdk-high-contrast-active .mat-standard-chip.mat-chip-selected{outline-width:3px}.mat-standard-chip.mat-chip-disabled::after{opacity:0}.mat-standard-chip.mat-chip-disabled .mat-chip-remove,.mat-standard-chip.mat-chip-disabled .mat-chip-trailing-icon{cursor:default}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar,.mat-standard-chip.mat-chip-with-avatar{padding-top:0;padding-bottom:0}.mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-right:8px;padding-left:0}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon.mat-chip-with-avatar{padding-left:8px;padding-right:0}.mat-standard-chip.mat-chip-with-trailing-icon{padding-top:7px;padding-bottom:7px;padding-right:8px;padding-left:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-trailing-icon{padding-left:8px;padding-right:12px}.mat-standard-chip.mat-chip-with-avatar{padding-left:0;padding-right:12px}[dir=rtl] .mat-standard-chip.mat-chip-with-avatar{padding-right:0;padding-left:12px}.mat-standard-chip .mat-chip-avatar{width:24px;height:24px;margin-right:8px;margin-left:4px}[dir=rtl] .mat-standard-chip .mat-chip-avatar{margin-left:8px;margin-right:4px}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{width:18px;height:18px;cursor:pointer}.mat-standard-chip .mat-chip-remove,.mat-standard-chip .mat-chip-trailing-icon{margin-left:8px;margin-right:0}[dir=rtl] .mat-standard-chip .mat-chip-remove,[dir=rtl] .mat-standard-chip .mat-chip-trailing-icon{margin-right:8px;margin-left:0}.mat-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit;overflow:hidden;transform:translateZ(0)}.mat-chip-list-wrapper{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;margin:-4px}.mat-chip-list-wrapper input.mat-input-element,.mat-chip-list-wrapper .mat-standard-chip{margin:4px}.mat-chip-list-stacked .mat-chip-list-wrapper{flex-direction:column;align-items:flex-start}.mat-chip-list-stacked .mat-chip-list-wrapper .mat-standard-chip{width:100%}.mat-chip-avatar{border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden;object-fit:cover}input.mat-chip-input{width:150px;margin:4px;flex:1 0 150px}\n'],encapsulation:2,changeDetection:0}),t})(),ev=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[od,{provide:ck,useValue:{separatorKeyCodes:[13]}}],imports:[[ft]]}),t})();class hk extends class XH{constructor(){this.expansionModel=new Tl(!0)}toggle(n){this.expansionModel.toggle(this._trackByValue(n))}expand(n){this.expansionModel.select(this._trackByValue(n))}collapse(n){this.expansionModel.deselect(this._trackByValue(n))}isExpanded(n){return this.expansionModel.isSelected(this._trackByValue(n))}toggleDescendants(n){this.expansionModel.isSelected(this._trackByValue(n))?this.collapseDescendants(n):this.expandDescendants(n)}collapseAll(){this.expansionModel.clear()}expandDescendants(n){let e=[n];e.push(...this.getDescendants(n)),this.expansionModel.select(...e.map(i=>this._trackByValue(i)))}collapseDescendants(n){let e=[n];e.push(...this.getDescendants(n)),this.expansionModel.deselect(...e.map(i=>this._trackByValue(i)))}_trackByValue(n){return this.trackBy?this.trackBy(n):n}}{constructor(n,e,i){super(),this.getLevel=n,this.isExpandable=e,this.options=i,this.options&&(this.trackBy=this.options.trackBy)}getDescendants(n){const i=[];for(let o=this.dataNodes.indexOf(n)+1;othis._trackByValue(n)))}}let i9=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),pk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[i9,ft],ft]}),t})();class u9{constructor(n,e,i,o){this.transformFunction=n,this.getLevel=e,this.isExpandable=i,this.getChildren=o}_flattenNode(n,e,i,o){const r=this.transformFunction(n,e);if(i.push(r),this.isExpandable(r)){const s=this.getChildren(n);s&&(Array.isArray(s)?this._flattenChildren(s,e,i,o):s.pipe(Ot(1)).subscribe(a=>{this._flattenChildren(a,e,i,o)}))}return i}_flattenChildren(n,e,i,o){n.forEach((r,s)=>{let a=o.slice();a.push(s!=n.length-1),this._flattenNode(r,e+1,i,a)})}flattenNodes(n){let e=[];return n.forEach(i=>this._flattenNode(i,0,e,[])),e}expandFlattenedNodes(n,e){let i=[],o=[];return o[0]=!0,n.forEach(r=>{let s=!0;for(let a=0;a<=this.getLevel(r);a++)s=s&&o[a];s&&i.push(r),this.isExpandable(r)&&(o[this.getLevel(r)+1]=e.isExpanded(r))}),i}}class fk extends class l8{}{constructor(n,e,i){super(),this._treeControl=n,this._treeFlattener=e,this._flattenedData=new vt([]),this._expandedData=new vt([]),this._data=new vt([]),i&&(this.data=i)}get data(){return this._data.value}set data(n){this._data.next(n),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}connect(n){return Tn(n.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(je(()=>(this._expandedData.next(this._treeFlattener.expandFlattenedNodes(this._flattenedData.value,this._treeControl)),this._expandedData.value)))}disconnect(){}}function h9(t,n){1&t&&ct(0)}const mk=["*"];function p9(t,n){}const f9=function(t){return{animationDuration:t}},m9=function(t,n){return{value:t,params:n}},g9=["tabListContainer"],_9=["tabList"],b9=["tabListInner"],v9=["nextPaginator"],y9=["previousPaginator"],C9=["tabBodyWrapper"],w9=["tabHeader"];function D9(t,n){}function S9(t,n){1&t&&_(0,D9,0,0,"ng-template",10),2&t&&m("cdkPortalOutlet",D().$implicit.templateLabel)}function M9(t,n){1&t&&h(0),2&t&&Ee(D().$implicit.textLabel)}function x9(t,n){if(1&t){const e=pe();d(0,"div",6),N("click",function(){const o=se(e),r=o.$implicit,s=o.index,a=D(),l=$t(1);return a._handleClick(r,l,s)})("cdkFocusChange",function(o){const s=se(e).index;return D()._tabFocusChanged(o,s)}),d(1,"div",7),_(2,S9,1,1,"ng-template",8),_(3,M9,1,1,"ng-template",null,9,Bc),c()()}if(2&t){const e=n.$implicit,i=n.index,o=$t(4),r=D();rt("mat-tab-label-active",r.selectedIndex===i),m("id",r._getTabLabelId(i))("ngClass",e.labelClass)("disabled",e.disabled)("matRippleDisabled",e.disabled||r.disableRipple),et("tabIndex",r._getTabIndex(e,i))("aria-posinset",i+1)("aria-setsize",r._tabs.length)("aria-controls",r._getTabContentId(i))("aria-selected",r.selectedIndex===i)("aria-label",e.ariaLabel||null)("aria-labelledby",!e.ariaLabel&&e.ariaLabelledby?e.ariaLabelledby:null),f(2),m("ngIf",e.templateLabel)("ngIfElse",o)}}function T9(t,n){if(1&t){const e=pe();d(0,"mat-tab-body",11),N("_onCentered",function(){return se(e),D()._removeTabBodyWrapperHeight()})("_onCentering",function(o){return se(e),D()._setTabBodyWrapperHeight(o)}),c()}if(2&t){const e=n.$implicit,i=n.index,o=D();rt("mat-tab-body-active",o.selectedIndex===i),m("id",o._getTabContentId(i))("ngClass",e.bodyClass)("content",e.content)("position",e.position)("origin",e.origin)("animationDuration",o.animationDuration),et("tabindex",null!=o.contentTabIndex&&o.selectedIndex===i?o.contentTabIndex:null)("aria-labelledby",o._getTabLabelId(i))}}const k9=new _e("MatInkBarPositioner",{providedIn:"root",factory:function E9(){return n=>({left:n?(n.offsetLeft||0)+"px":"0",width:n?(n.offsetWidth||0)+"px":"0"})}});let gk=(()=>{class t{constructor(e,i,o,r){this._elementRef=e,this._ngZone=i,this._inkBarPositioner=o,this._animationMode=r}alignToElement(e){this.show(),this._ngZone.onStable.pipe(Ot(1)).subscribe(()=>{const i=this._inkBarPositioner(e),o=this._elementRef.nativeElement;o.style.left=i.left,o.style.width=i.width})}show(){this._elementRef.nativeElement.style.visibility="visible"}hide(){this._elementRef.nativeElement.style.visibility="hidden"}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Je),b(k9),b(gn,8))},t.\u0275dir=oe({type:t,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(e,i){2&e&&rt("_mat-animation-noopable","NoopAnimations"===i._animationMode)}}),t})();const I9=new _e("MatTabContent"),_k=new _e("MatTabLabel"),bk=new _e("MAT_TAB");let vk=(()=>{class t extends l7{constructor(e,i,o){super(e,i),this._closestTab=o}}return t.\u0275fac=function(e){return new(e||t)(b(rn),b(sn),b(bk,8))},t.\u0275dir=oe({type:t,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[ze([{provide:_k,useExisting:t}]),Ce]}),t})();const O9=pa(class{}),yk=new _e("MAT_TAB_GROUP");let wp=(()=>{class t extends O9{constructor(e,i){super(),this._viewContainerRef=e,this._closestTabGroup=i,this.textLabel="",this._contentPortal=null,this._stateChanges=new ie,this.position=null,this.origin=null,this.isActive=!1}get templateLabel(){return this._templateLabel}set templateLabel(e){this._setTemplateLabelInput(e)}get content(){return this._contentPortal}ngOnChanges(e){(e.hasOwnProperty("textLabel")||e.hasOwnProperty("disabled"))&&this._stateChanges.next()}ngOnDestroy(){this._stateChanges.complete()}ngOnInit(){this._contentPortal=new qr(this._explicitContent||this._implicitContent,this._viewContainerRef)}_setTemplateLabelInput(e){e&&e._closestTab===this&&(this._templateLabel=e)}}return t.\u0275fac=function(e){return new(e||t)(b(sn),b(yk,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,_k,5),mt(o,I9,7,rn)),2&e){let r;Ne(r=Le())&&(i.templateLabel=r.first),Ne(r=Le())&&(i._explicitContent=r.first)}},viewQuery:function(e,i){if(1&e&&Tt(rn,7),2&e){let o;Ne(o=Le())&&(i._implicitContent=o.first)}},inputs:{disabled:"disabled",textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass"},exportAs:["matTab"],features:[ze([{provide:bk,useExisting:t}]),Ce,nn],ngContentSelectors:mk,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),_(0,h9,1,0,"ng-template"))},encapsulation:2}),t})();const A9={translateTab:Ao("translateTab",[jn("center, void, left-origin-center, right-origin-center",Vt({transform:"none"})),jn("left",Vt({transform:"translate3d(-100%, 0, 0)",minHeight:"1px"})),jn("right",Vt({transform:"translate3d(100%, 0, 0)",minHeight:"1px"})),Kn("* => left, * => right, left => center, right => center",ai("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),Kn("void => left-origin-center",[Vt({transform:"translate3d(-100%, 0, 0)"}),ai("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),Kn("void => right-origin-center",[Vt({transform:"translate3d(100%, 0, 0)"}),ai("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])};let P9=(()=>{class t extends Os{constructor(e,i,o,r){super(e,i,r),this._host=o,this._centeringSub=k.EMPTY,this._leavingSub=k.EMPTY}ngOnInit(){super.ngOnInit(),this._centeringSub=this._host._beforeCentering.pipe(Nn(this._host._isCenterPosition(this._host._position))).subscribe(e=>{e&&!this.hasAttached()&&this.attach(this._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(()=>{this.detach()})}ngOnDestroy(){super.ngOnDestroy(),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(b(gs),b(sn),b(zt(()=>Ck)),b(ht))},t.\u0275dir=oe({type:t,selectors:[["","matTabBodyHost",""]],features:[Ce]}),t})(),R9=(()=>{class t{constructor(e,i,o){this._elementRef=e,this._dir=i,this._dirChangeSubscription=k.EMPTY,this._translateTabComplete=new ie,this._onCentering=new Pe,this._beforeCentering=new Pe,this._afterLeavingCenter=new Pe,this._onCentered=new Pe(!0),this.animationDuration="500ms",i&&(this._dirChangeSubscription=i.change.subscribe(r=>{this._computePositionAnimationState(r),o.markForCheck()})),this._translateTabComplete.pipe(nd((r,s)=>r.fromState===s.fromState&&r.toState===s.toState)).subscribe(r=>{this._isCenterPosition(r.toState)&&this._isCenterPosition(this._position)&&this._onCentered.emit(),this._isCenterPosition(r.fromState)&&!this._isCenterPosition(this._position)&&this._afterLeavingCenter.emit()})}set position(e){this._positionIndex=e,this._computePositionAnimationState()}ngOnInit(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}ngOnDestroy(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}_onTranslateTabStarted(e){const i=this._isCenterPosition(e.toState);this._beforeCentering.emit(i),i&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_isCenterPosition(e){return"center"==e||"left-origin-center"==e||"right-origin-center"==e}_computePositionAnimationState(e=this._getLayoutDirection()){this._position=this._positionIndex<0?"ltr"==e?"left":"right":this._positionIndex>0?"ltr"==e?"right":"left":"center"}_computePositionFromOrigin(e){const i=this._getLayoutDirection();return"ltr"==i&&e<=0||"rtl"==i&&e>0?"left-origin-center":"right-origin-center"}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(li,8),b(At))},t.\u0275dir=oe({type:t,inputs:{_content:["content","_content"],origin:"origin",animationDuration:"animationDuration",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),t})(),Ck=(()=>{class t extends R9{constructor(e,i,o){super(e,i,o)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(li,8),b(At))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab-body"]],viewQuery:function(e,i){if(1&e&&Tt(Os,5),2&e){let o;Ne(o=Le())&&(i._portalHost=o.first)}},hostAttrs:[1,"mat-tab-body"],features:[Ce],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(e,i){1&e&&(d(0,"div",0,1),N("@translateTab.start",function(r){return i._onTranslateTabStarted(r)})("@translateTab.done",function(r){return i._translateTabComplete.next(r)}),_(2,p9,0,0,"ng-template",2),c()),2&e&&m("@translateTab",kw(3,m9,i._position,Kt(1,f9,i.animationDuration)))},directives:[P9],styles:['.mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}.mat-tab-body-content[style*="visibility: hidden"]{display:none}\n'],encapsulation:2,data:{animation:[A9.translateTab]}}),t})();const wk=new _e("MAT_TABS_CONFIG"),F9=pa(class{});let Dk=(()=>{class t extends F9{constructor(e){super(),this.elementRef=e}focus(){this.elementRef.nativeElement.focus()}getOffsetLeft(){return this.elementRef.nativeElement.offsetLeft}getOffsetWidth(){return this.elementRef.nativeElement.offsetWidth}}return t.\u0275fac=function(e){return new(e||t)(b(He))},t.\u0275dir=oe({type:t,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(e,i){2&e&&(et("aria-disabled",!!i.disabled),rt("mat-tab-disabled",i.disabled))},inputs:{disabled:"disabled"},features:[Ce]}),t})();const Sk=ca({passive:!0});let B9=(()=>{class t{constructor(e,i,o,r,s,a,l){this._elementRef=e,this._changeDetectorRef=i,this._viewportRuler=o,this._dir=r,this._ngZone=s,this._platform=a,this._animationMode=l,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new ie,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new ie,this.disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new Pe,this.indexFocused=new Pe,s.runOutsideAngular(()=>{Ki(e.nativeElement,"mouseleave").pipe(tt(this._destroyed)).subscribe(()=>{this._stopInterval()})})}get selectedIndex(){return this._selectedIndex}set selectedIndex(e){e=Zn(e),this._selectedIndex!=e&&(this._selectedIndexChanged=!0,this._selectedIndex=e,this._keyManager&&this._keyManager.updateActiveItem(e))}ngAfterViewInit(){Ki(this._previousPaginator.nativeElement,"touchstart",Sk).pipe(tt(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("before")}),Ki(this._nextPaginator.nativeElement,"touchstart",Sk).pipe(tt(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("after")})}ngAfterContentInit(){const e=this._dir?this._dir.change:Ge("ltr"),i=this._viewportRuler.change(150),o=()=>{this.updatePagination(),this._alignInkBarToSelectedTab()};this._keyManager=new Nh(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap(),this._keyManager.updateActiveItem(this._selectedIndex),this._ngZone.onStable.pipe(Ot(1)).subscribe(o),Tn(e,i,this._items.changes,this._itemsResized()).pipe(tt(this._destroyed)).subscribe(()=>{this._ngZone.run(()=>{Promise.resolve().then(()=>{this._scrollDistance=Math.max(0,Math.min(this._getMaxScrollDistance(),this._scrollDistance)),o()})}),this._keyManager.withHorizontalOrientation(this._getLayoutDirection())}),this._keyManager.change.pipe(tt(this._destroyed)).subscribe(r=>{this.indexFocused.emit(r),this._setTabFocus(r)})}_itemsResized(){return"function"!=typeof ResizeObserver?Co:this._items.changes.pipe(Nn(this._items),Bi(e=>new Ue(i=>this._ngZone.runOutsideAngular(()=>{const o=new ResizeObserver(()=>{i.next()});return e.forEach(r=>{o.observe(r.elementRef.nativeElement)}),()=>{o.disconnect()}}))),F_(1))}ngAfterContentChecked(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}_handleKeydown(e){if(!fi(e))switch(e.keyCode){case 13:case 32:this.focusIndex!==this.selectedIndex&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(e));break;default:this._keyManager.onKeydown(e)}}_onContentChanges(){const e=this._elementRef.nativeElement.textContent;e!==this._currentTextContent&&(this._currentTextContent=e||"",this._ngZone.run(()=>{this.updatePagination(),this._alignInkBarToSelectedTab(),this._changeDetectorRef.markForCheck()}))}updatePagination(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}get focusIndex(){return this._keyManager?this._keyManager.activeItemIndex:0}set focusIndex(e){!this._isValidIndex(e)||this.focusIndex===e||!this._keyManager||this._keyManager.setActiveItem(e)}_isValidIndex(e){if(!this._items)return!0;const i=this._items?this._items.toArray()[e]:null;return!!i&&!i.disabled}_setTabFocus(e){if(this._showPaginationControls&&this._scrollToLabel(e),this._items&&this._items.length){this._items.toArray()[e].focus();const i=this._tabListContainer.nativeElement;i.scrollLeft="ltr"==this._getLayoutDirection()?0:i.scrollWidth-i.offsetWidth}}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_updateTabScrollPosition(){if(this.disablePagination)return;const e=this.scrollDistance,i="ltr"===this._getLayoutDirection()?-e:e;this._tabList.nativeElement.style.transform=`translateX(${Math.round(i)}px)`,(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}get scrollDistance(){return this._scrollDistance}set scrollDistance(e){this._scrollTo(e)}_scrollHeader(e){return this._scrollTo(this._scrollDistance+("before"==e?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}_handlePaginatorClick(e){this._stopInterval(),this._scrollHeader(e)}_scrollToLabel(e){if(this.disablePagination)return;const i=this._items?this._items.toArray()[e]:null;if(!i)return;const o=this._tabListContainer.nativeElement.offsetWidth,{offsetLeft:r,offsetWidth:s}=i.elementRef.nativeElement;let a,l;"ltr"==this._getLayoutDirection()?(a=r,l=a+s):(l=this._tabListInner.nativeElement.offsetWidth-r,a=l-s);const u=this.scrollDistance,p=this.scrollDistance+o;ap&&(this.scrollDistance+=l-p+60)}_checkPaginationEnabled(){if(this.disablePagination)this._showPaginationControls=!1;else{const e=this._tabListInner.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;e||(this.scrollDistance=0),e!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=e}}_checkScrollingControls(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}_getMaxScrollDistance(){return this._tabListInner.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}_alignInkBarToSelectedTab(){const e=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,i=e?e.elementRef.nativeElement:null;i?this._inkBar.alignToElement(i):this._inkBar.hide()}_stopInterval(){this._stopScrolling.next()}_handlePaginatorPress(e,i){i&&null!=i.button&&0!==i.button||(this._stopInterval(),op(650,100).pipe(tt(Tn(this._stopScrolling,this._destroyed))).subscribe(()=>{const{maxScrollDistance:o,distance:r}=this._scrollHeader(e);(0===r||r>=o)&&this._stopInterval()}))}_scrollTo(e){if(this.disablePagination)return{maxScrollDistance:0,distance:0};const i=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(i,e)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:i,distance:this._scrollDistance}}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(yr),b(li,8),b(Je),b(dn),b(gn,8))},t.\u0275dir=oe({type:t,inputs:{disablePagination:"disablePagination"}}),t})(),V9=(()=>{class t extends B9{constructor(e,i,o,r,s,a,l){super(e,i,o,r,s,a,l),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=Xe(e)}_itemSelected(e){e.preventDefault()}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(yr),b(li,8),b(Je),b(dn),b(gn,8))},t.\u0275dir=oe({type:t,inputs:{disableRipple:"disableRipple"},features:[Ce]}),t})(),j9=(()=>{class t extends V9{constructor(e,i,o,r,s,a,l){super(e,i,o,r,s,a,l)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(yr),b(li,8),b(Je),b(dn),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab-header"]],contentQueries:function(e,i,o){if(1&e&&mt(o,Dk,4),2&e){let r;Ne(r=Le())&&(i._items=r)}},viewQuery:function(e,i){if(1&e&&(Tt(gk,7),Tt(g9,7),Tt(_9,7),Tt(b9,7),Tt(v9,5),Tt(y9,5)),2&e){let o;Ne(o=Le())&&(i._inkBar=o.first),Ne(o=Le())&&(i._tabListContainer=o.first),Ne(o=Le())&&(i._tabList=o.first),Ne(o=Le())&&(i._tabListInner=o.first),Ne(o=Le())&&(i._nextPaginator=o.first),Ne(o=Le())&&(i._previousPaginator=o.first)}},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(e,i){2&e&&rt("mat-tab-header-pagination-controls-enabled",i._showPaginationControls)("mat-tab-header-rtl","rtl"==i._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[Ce],ngContentSelectors:mk,decls:14,vars:10,consts:[["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","disabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["tabListInner",""],["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","disabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(e,i){1&e&&(Jt(),d(0,"button",0,1),N("click",function(){return i._handlePaginatorClick("before")})("mousedown",function(r){return i._handlePaginatorPress("before",r)})("touchend",function(){return i._stopInterval()}),E(2,"div",2),c(),d(3,"div",3,4),N("keydown",function(r){return i._handleKeydown(r)}),d(5,"div",5,6),N("cdkObserveContent",function(){return i._onContentChanges()}),d(7,"div",7,8),ct(9),c(),E(10,"mat-ink-bar"),c()(),d(11,"button",9,10),N("mousedown",function(r){return i._handlePaginatorPress("after",r)})("click",function(){return i._handlePaginatorClick("after")})("touchend",function(){return i._stopInterval()}),E(13,"div",2),c()),2&e&&(rt("mat-tab-header-pagination-disabled",i._disableScrollBefore),m("matRippleDisabled",i._disableScrollBefore||i.disableRipple)("disabled",i._disableScrollBefore||null),f(5),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode),f(6),rt("mat-tab-header-pagination-disabled",i._disableScrollAfter),m("matRippleDisabled",i._disableScrollAfter||i.disableRipple)("disabled",i._disableScrollAfter||null))},directives:[or,N_,gk],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-ink-bar{transition:none;animation:none}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}._mat-animation-noopable.mat-tab-list{transition:none;animation:none}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{min-width:72px}}\n"],encapsulation:2}),t})(),H9=0;class U9{}const z9=Gr(vr(class{constructor(t){this._elementRef=t}}),"primary");let $9=(()=>{class t extends z9{constructor(e,i,o,r){var s;super(e),this._changeDetectorRef=i,this._animationMode=r,this._tabs=new vs,this._indexToSelect=0,this._lastFocusedTabIndex=null,this._tabBodyWrapperHeight=0,this._tabsSubscription=k.EMPTY,this._tabLabelSubscription=k.EMPTY,this._selectedIndex=null,this.headerPosition="above",this.selectedIndexChange=new Pe,this.focusChange=new Pe,this.animationDone=new Pe,this.selectedTabChange=new Pe(!0),this._groupId=H9++,this.animationDuration=o&&o.animationDuration?o.animationDuration:"500ms",this.disablePagination=!(!o||null==o.disablePagination)&&o.disablePagination,this.dynamicHeight=!(!o||null==o.dynamicHeight)&&o.dynamicHeight,this.contentTabIndex=null!==(s=null==o?void 0:o.contentTabIndex)&&void 0!==s?s:null}get dynamicHeight(){return this._dynamicHeight}set dynamicHeight(e){this._dynamicHeight=Xe(e)}get selectedIndex(){return this._selectedIndex}set selectedIndex(e){this._indexToSelect=Zn(e,null)}get animationDuration(){return this._animationDuration}set animationDuration(e){this._animationDuration=/^\d+$/.test(e+"")?e+"ms":e}get contentTabIndex(){return this._contentTabIndex}set contentTabIndex(e){this._contentTabIndex=Zn(e,null)}get backgroundColor(){return this._backgroundColor}set backgroundColor(e){const i=this._elementRef.nativeElement;i.classList.remove(`mat-background-${this.backgroundColor}`),e&&i.classList.add(`mat-background-${e}`),this._backgroundColor=e}ngAfterContentChecked(){const e=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=e){const i=null==this._selectedIndex;if(!i){this.selectedTabChange.emit(this._createChangeEvent(e));const o=this._tabBodyWrapper.nativeElement;o.style.minHeight=o.clientHeight+"px"}Promise.resolve().then(()=>{this._tabs.forEach((o,r)=>o.isActive=r===e),i||(this.selectedIndexChange.emit(e),this._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach((i,o)=>{i.position=o-e,null!=this._selectedIndex&&0==i.position&&!i.origin&&(i.origin=e-this._selectedIndex)}),this._selectedIndex!==e&&(this._selectedIndex=e,this._lastFocusedTabIndex=null,this._changeDetectorRef.markForCheck())}ngAfterContentInit(){this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(()=>{const e=this._clampTabIndex(this._indexToSelect);if(e===this._selectedIndex){const i=this._tabs.toArray();let o;for(let r=0;r{i[e].isActive=!0,this.selectedTabChange.emit(this._createChangeEvent(e))})}this._changeDetectorRef.markForCheck()})}_subscribeToAllTabChanges(){this._allTabs.changes.pipe(Nn(this._allTabs)).subscribe(e=>{this._tabs.reset(e.filter(i=>i._closestTabGroup===this||!i._closestTabGroup)),this._tabs.notifyOnChanges()})}ngOnDestroy(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe()}realignInkBar(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}updatePagination(){this._tabHeader&&this._tabHeader.updatePagination()}focusTab(e){const i=this._tabHeader;i&&(i.focusIndex=e)}_focusChanged(e){this._lastFocusedTabIndex=e,this.focusChange.emit(this._createChangeEvent(e))}_createChangeEvent(e){const i=new U9;return i.index=e,this._tabs&&this._tabs.length&&(i.tab=this._tabs.toArray()[e]),i}_subscribeToTabLabels(){this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=Tn(...this._tabs.map(e=>e._stateChanges)).subscribe(()=>this._changeDetectorRef.markForCheck())}_clampTabIndex(e){return Math.min(this._tabs.length-1,Math.max(e||0,0))}_getTabLabelId(e){return`mat-tab-label-${this._groupId}-${e}`}_getTabContentId(e){return`mat-tab-content-${this._groupId}-${e}`}_setTabBodyWrapperHeight(e){if(!this._dynamicHeight||!this._tabBodyWrapperHeight)return;const i=this._tabBodyWrapper.nativeElement;i.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(i.style.height=e+"px")}_removeTabBodyWrapperHeight(){const e=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=e.clientHeight,e.style.height="",this.animationDone.emit()}_handleClick(e,i,o){e.disabled||(this.selectedIndex=i.focusIndex=o)}_getTabIndex(e,i){var o;return e.disabled?null:i===(null!==(o=this._lastFocusedTabIndex)&&void 0!==o?o:this.selectedIndex)?0:-1}_tabFocusChanged(e,i){e&&"mouse"!==e&&"touch"!==e&&(this._tabHeader.focusIndex=i)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(wk,8),b(gn,8))},t.\u0275dir=oe({type:t,inputs:{dynamicHeight:"dynamicHeight",selectedIndex:"selectedIndex",headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:"contentTabIndex",disablePagination:"disablePagination",backgroundColor:"backgroundColor"},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},features:[Ce]}),t})(),rv=(()=>{class t extends $9{constructor(e,i,o,r){super(e,i,o,r)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(wk,8),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tab-group"]],contentQueries:function(e,i,o){if(1&e&&mt(o,wp,5),2&e){let r;Ne(r=Le())&&(i._allTabs=r)}},viewQuery:function(e,i){if(1&e&&(Tt(C9,5),Tt(w9,5)),2&e){let o;Ne(o=Le())&&(i._tabBodyWrapper=o.first),Ne(o=Le())&&(i._tabHeader=o.first)}},hostAttrs:[1,"mat-tab-group"],hostVars:4,hostBindings:function(e,i){2&e&&rt("mat-tab-group-dynamic-height",i.dynamicHeight)("mat-tab-group-inverted-header","below"===i.headerPosition)},inputs:{color:"color",disableRipple:"disableRipple"},exportAs:["matTabGroup"],features:[ze([{provide:yk,useExisting:t}]),Ce],decls:6,vars:7,consts:[[3,"selectedIndex","disableRipple","disablePagination","indexFocused","selectFocusedIndex"],["tabHeader",""],["class","mat-tab-label mat-focus-indicator","role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",3,"id","mat-tab-label-active","ngClass","disabled","matRippleDisabled","click","cdkFocusChange",4,"ngFor","ngForOf"],[1,"mat-tab-body-wrapper"],["tabBodyWrapper",""],["role","tabpanel",3,"id","mat-tab-body-active","ngClass","content","position","origin","animationDuration","_onCentered","_onCentering",4,"ngFor","ngForOf"],["role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",1,"mat-tab-label","mat-focus-indicator",3,"id","ngClass","disabled","matRippleDisabled","click","cdkFocusChange"],[1,"mat-tab-label-content"],[3,"ngIf","ngIfElse"],["tabTextLabel",""],[3,"cdkPortalOutlet"],["role","tabpanel",3,"id","ngClass","content","position","origin","animationDuration","_onCentered","_onCentering"]],template:function(e,i){1&e&&(d(0,"mat-tab-header",0,1),N("indexFocused",function(r){return i._focusChanged(r)})("selectFocusedIndex",function(r){return i.selectedIndex=r}),_(2,x9,5,15,"div",2),c(),d(3,"div",3,4),_(5,T9,1,10,"mat-tab-body",5),c()),2&e&&(m("selectedIndex",i.selectedIndex||0)("disableRipple",i.disableRipple)("disablePagination",i.disablePagination),f(2),m("ngForOf",i._tabs),f(1),rt("_mat-animation-noopable","NoopAnimations"===i._animationMode),f(2),m("ngForOf",i._tabs))},directives:[j9,Ck,si,Dk,or,zV,nr,Et,Os],styles:[".mat-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-tab-group.mat-tab-group-inverted-header{flex-direction:column-reverse}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.cdk-high-contrast-active .mat-tab-label:focus{outline:dotted 2px;outline-offset:-2px}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{padding:0 12px}}@media(max-width: 959px){.mat-tab-label{padding:0 12px}}.mat-tab-group[mat-stretch-tabs]>.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable.mat-tab-body-wrapper{transition:none;animation:none}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}\n"],encapsulation:2}),t})(),xk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,Cd,fa,Ph,MM],ft]}),t})();function Tk(...t){const n=Yl(t),e=Qv(t),{args:i,keys:o}=jM(t);if(0===i.length)return ti([],n);const r=new Ue(function G9(t,n,e=Me){return i=>{kk(n,()=>{const{length:o}=t,r=new Array(o);let s=o,a=o;for(let l=0;l{const u=ti(t[l],n);let p=!1;u.subscribe(st(i,g=>{r[l]=g,p||(p=!0,a--),a||i.next(e(r.slice()))},()=>{--s||i.complete()}))},i)},i)}}(i,n,o?s=>HM(o,s):Me));return e?r.pipe(Q_(e)):r}function kk(t,n,e){t?Er(e,t,n):n()}const Ek=new Set;let jl,W9=(()=>{class t{constructor(e){this._platform=e,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):K9}matchMedia(e){return(this._platform.WEBKIT||this._platform.BLINK)&&function q9(t){if(!Ek.has(t))try{jl||(jl=document.createElement("style"),jl.setAttribute("type","text/css"),document.head.appendChild(jl)),jl.sheet&&(jl.sheet.insertRule(`@media ${t} {body{ }}`,0),Ek.add(t))}catch(n){console.error(n)}}(e),this._matchMedia(e)}}return t.\u0275fac=function(e){return new(e||t)(Q(dn))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function K9(t){return{matches:"all"===t||""===t,media:t,addListener:()=>{},removeListener:()=>{}}}let sv=(()=>{class t{constructor(e,i){this._mediaMatcher=e,this._zone=i,this._queries=new Map,this._destroySubject=new ie}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(e){return Ik(Ah(e)).some(o=>this._registerQuery(o).mql.matches)}observe(e){let r=Tk(Ik(Ah(e)).map(s=>this._registerQuery(s).observable));return r=id(r.pipe(Ot(1)),r.pipe(F_(1),Oh(0))),r.pipe(je(s=>{const a={matches:!1,breakpoints:{}};return s.forEach(({matches:l,query:u})=>{a.matches=a.matches||l,a.breakpoints[u]=l}),a}))}_registerQuery(e){if(this._queries.has(e))return this._queries.get(e);const i=this._mediaMatcher.matchMedia(e),r={observable:new Ue(s=>{const a=l=>this._zone.run(()=>s.next(l));return i.addListener(a),()=>{i.removeListener(a)}}).pipe(Nn(i),je(({matches:s})=>({query:e,matches:s})),tt(this._destroySubject)),mql:i};return this._queries.set(e,r),r}}return t.\u0275fac=function(e){return new(e||t)(Q(W9),Q(Je))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function Ik(t){return t.map(n=>n.split(",")).reduce((n,e)=>n.concat(e)).map(n=>n.trim())}function Z9(t,n){if(1&t){const e=pe();d(0,"div",2)(1,"button",3),N("click",function(){return se(e),D().action()}),h(2),c()()}if(2&t){const e=D();f(2),Ee(e.data.action)}}function Q9(t,n){}const Ak=new _e("MatSnackBarData");class Dp{constructor(){this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"}}const Y9=Math.pow(2,31)-1;class av{constructor(n,e){this._overlayRef=e,this._afterDismissed=new ie,this._afterOpened=new ie,this._onAction=new ie,this._dismissedByAction=!1,this.containerInstance=n,n._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete(),this.dismiss()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(n){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(n,Y9))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}}let X9=(()=>{class t{constructor(e,i){this.snackBarRef=e,this.data=i}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}}return t.\u0275fac=function(e){return new(e||t)(b(av),b(Ak))},t.\u0275cmp=Ae({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[[1,"mat-simple-snack-bar-content"],["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(e,i){1&e&&(d(0,"span",0),h(1),c(),_(2,Z9,3,1,"div",1)),2&e&&(f(1),Ee(i.data.message),f(1),m("ngIf",i.hasAction))},directives:[Ht,Et],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}.mat-simple-snack-bar-content{overflow:hidden;text-overflow:ellipsis}\n"],encapsulation:2,changeDetection:0}),t})();const J9={snackBarState:Ao("state",[jn("void, hidden",Vt({transform:"scale(0.8)",opacity:0})),jn("visible",Vt({transform:"scale(1)",opacity:1})),Kn("* => visible",ai("150ms cubic-bezier(0, 0, 0.2, 1)")),Kn("* => void, * => hidden",ai("75ms cubic-bezier(0.4, 0.0, 1, 1)",Vt({opacity:0})))])};let eU=(()=>{class t extends ap{constructor(e,i,o,r,s){super(),this._ngZone=e,this._elementRef=i,this._changeDetectorRef=o,this._platform=r,this.snackBarConfig=s,this._announceDelay=150,this._destroyed=!1,this._onAnnounce=new ie,this._onExit=new ie,this._onEnter=new ie,this._animationState="void",this.attachDomPortal=a=>(this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachDomPortal(a)),this._live="assertive"!==s.politeness||s.announcementMessage?"off"===s.politeness?"off":"polite":"assertive",this._platform.FIREFOX&&("polite"===this._live&&(this._role="status"),"assertive"===this._live&&(this._role="alert"))}attachComponentPortal(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(e)}attachTemplatePortal(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(e)}onAnimationEnd(e){const{fromState:i,toState:o}=e;if(("void"===o&&"void"!==i||"hidden"===o)&&this._completeExit(),"visible"===o){const r=this._onEnter;this._ngZone.run(()=>{r.next(),r.complete()})}}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}exit(){return this._ngZone.run(()=>{this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId)}),this._onExit}ngOnDestroy(){this._destroyed=!0,this._completeExit()}_completeExit(){this._ngZone.onMicrotaskEmpty.pipe(Ot(1)).subscribe(()=>{this._ngZone.run(()=>{this._onExit.next(),this._onExit.complete()})})}_applySnackBarClasses(){const e=this._elementRef.nativeElement,i=this.snackBarConfig.panelClass;i&&(Array.isArray(i)?i.forEach(o=>e.classList.add(o)):e.classList.add(i)),"center"===this.snackBarConfig.horizontalPosition&&e.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&e.classList.add("mat-snack-bar-top")}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{const e=this._elementRef.nativeElement.querySelector("[aria-hidden]"),i=this._elementRef.nativeElement.querySelector("[aria-live]");if(e&&i){let o=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&e.contains(document.activeElement)&&(o=document.activeElement),e.removeAttribute("aria-hidden"),i.appendChild(e),null==o||o.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}}return t.\u0275fac=function(e){return new(e||t)(b(Je),b(He),b(At),b(dn),b(Dp))},t.\u0275cmp=Ae({type:t,selectors:[["snack-bar-container"]],viewQuery:function(e,i){if(1&e&&Tt(Os,7),2&e){let o;Ne(o=Le())&&(i._portalOutlet=o.first)}},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(e,i){1&e&&Tc("@state.done",function(r){return i.onAnimationEnd(r)}),2&e&&Ec("@state",i._animationState)},features:[Ce],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(e,i){1&e&&(d(0,"div",0),_(1,Q9,0,0,"ng-template",1),c(),E(2,"div")),2&e&&(f(2),et("aria-live",i._live)("role",i._role))},directives:[Os],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[J9.snackBarState]}}),t})(),lv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[Pl,Cd,qi,Z_,ft],ft]}),t})();const Pk=new _e("mat-snack-bar-default-options",{providedIn:"root",factory:function tU(){return new Dp}});let nU=(()=>{class t{constructor(e,i,o,r,s,a){this._overlay=e,this._live=i,this._injector=o,this._breakpointObserver=r,this._parentSnackBar=s,this._defaultConfig=a,this._snackBarRefAtThisLevel=null}get _openedSnackBarRef(){const e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}openFromComponent(e,i){return this._attach(e,i)}openFromTemplate(e,i){return this._attach(e,i)}open(e,i="",o){const r=Object.assign(Object.assign({},this._defaultConfig),o);return r.data={message:e,action:i},r.announcementMessage===e&&(r.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,r)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(e,i){const r=pn.create({parent:i&&i.viewContainerRef&&i.viewContainerRef.injector||this._injector,providers:[{provide:Dp,useValue:i}]}),s=new Ol(this.snackBarContainerComponent,i.viewContainerRef,r),a=e.attach(s);return a.instance.snackBarConfig=i,a.instance}_attach(e,i){const o=Object.assign(Object.assign(Object.assign({},new Dp),this._defaultConfig),i),r=this._createOverlay(o),s=this._attachSnackBarContainer(r,o),a=new av(s,r);if(e instanceof rn){const l=new qr(e,null,{$implicit:o.data,snackBarRef:a});a.instance=s.attachTemplatePortal(l)}else{const l=this._createInjector(o,a),u=new Ol(e,void 0,l),p=s.attachComponentPortal(u);a.instance=p.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(tt(r.detachments())).subscribe(l=>{r.overlayElement.classList.toggle(this.handsetCssClass,l.matches)}),o.announcementMessage&&s._onAnnounce.subscribe(()=>{this._live.announce(o.announcementMessage,o.politeness)}),this._animateSnackBar(a,o),this._openedSnackBarRef=a,this._openedSnackBarRef}_animateSnackBar(e,i){e.afterDismissed().subscribe(()=>{this._openedSnackBarRef==e&&(this._openedSnackBarRef=null),i.announcementMessage&&this._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter(),i.duration&&i.duration>0&&e.afterOpened().subscribe(()=>e._dismissAfter(i.duration))}_createOverlay(e){const i=new Al;i.direction=e.direction;let o=this._overlay.position().global();const r="rtl"===e.direction,s="left"===e.horizontalPosition||"start"===e.horizontalPosition&&!r||"end"===e.horizontalPosition&&r,a=!s&&"center"!==e.horizontalPosition;return s?o.left("0"):a?o.right("0"):o.centerHorizontally(),"top"===e.verticalPosition?o.top("0"):o.bottom("0"),i.positionStrategy=o,this._overlay.create(i)}_createInjector(e,i){return pn.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:av,useValue:i},{provide:Ak,useValue:e.data}]})}}return t.\u0275fac=function(e){return new(e||t)(Q(Qi),Q(H_),Q(pn),Q(sv),Q(t,12),Q(Pk))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),iU=(()=>{class t extends nU{constructor(e,i,o,r,s,a){super(e,i,o,r,s,a),this.simpleSnackBarComponent=X9,this.snackBarContainerComponent=eU,this.handsetCssClass="mat-snack-bar-handset"}}return t.\u0275fac=function(e){return new(e||t)(Q(Qi),Q(H_),Q(pn),Q(sv),Q(t,12),Q(Pk))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:lv}),t})();function oU(t,n){}class cv{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus="first-tabbable",this.restoreFocus=!0,this.delayFocusTrap=!0,this.closeOnNavigation=!0}}const rU={dialogContainer:Ao("dialogContainer",[jn("void, exit",Vt({opacity:0,transform:"scale(0.7)"})),jn("enter",Vt({transform:"none"})),Kn("* => enter",bS([ai("150ms cubic-bezier(0, 0, 0.2, 1)",Vt({transform:"none",opacity:1})),e_("@*",Jg(),{optional:!0})])),Kn("* => void, * => exit",bS([ai("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Vt({opacity:0})),e_("@*",Jg(),{optional:!0})]))])};let sU=(()=>{class t extends ap{constructor(e,i,o,r,s,a,l,u){super(),this._elementRef=e,this._focusTrapFactory=i,this._changeDetectorRef=o,this._config=s,this._interactivityChecker=a,this._ngZone=l,this._focusMonitor=u,this._animationStateChanged=new Pe,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=p=>(this._portalOutlet.hasAttached(),this._portalOutlet.attachDomPortal(p)),this._ariaLabelledBy=s.ariaLabelledBy||null,this._document=r}_initializeWithAttachedContent(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=k_())}attachComponentPortal(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(e)}attachTemplatePortal(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(e)}_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const o=()=>{e.removeEventListener("blur",o),e.removeEventListener("mousedown",o),e.removeAttribute("tabindex")};e.addEventListener("blur",o),e.addEventListener("mousedown",o)})),e.focus(i)}_focusByCssSelector(e,i){let o=this._elementRef.nativeElement.querySelector(e);o&&this._forceFocus(o,i)}_trapFocus(){const e=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||e.focus();break;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(i=>{i||this._focusDialogContainer()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this._config.autoFocus)}}_restoreFocus(){const e=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&e&&"function"==typeof e.focus){const i=k_(),o=this._elementRef.nativeElement;(!i||i===this._document.body||i===o||o.contains(i))&&(this._focusMonitor?(this._focusMonitor.focusVia(e,this._closeInteractionType),this._closeInteractionType=null):e.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const e=this._elementRef.nativeElement,i=k_();return e===i||e.contains(i)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(yM),b(At),b(ht,8),b(cv),b(B_),b(Je),b(Fo))},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&Tt(Os,7),2&e){let o;Ne(o=Le())&&(i._portalOutlet=o.first)}},features:[Ce]}),t})(),aU=(()=>{class t extends sU{constructor(){super(...arguments),this._state="enter"}_onAnimationDone({toState:e,totalTime:i}){"enter"===e?(this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:i})):"exit"===e&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:i}))}_onAnimationStart({toState:e,totalTime:i}){"enter"===e?this._animationStateChanged.next({state:"opening",totalTime:i}):("exit"===e||"void"===e)&&this._animationStateChanged.next({state:"closing",totalTime:i})}_startExitAnimation(){this._state="exit",this._changeDetectorRef.markForCheck()}_initializeWithAttachedContent(){super._initializeWithAttachedContent(),this._config.delayFocusTrap||this._trapFocus()}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(e,i){1&e&&Tc("@dialogContainer.start",function(r){return i._onAnimationStart(r)})("@dialogContainer.done",function(r){return i._onAnimationDone(r)}),2&e&&(Nr("id",i._id),et("role",i._config.role)("aria-labelledby",i._config.ariaLabel?null:i._ariaLabelledBy)("aria-label",i._config.ariaLabel)("aria-describedby",i._config.ariaDescribedBy||null),Ec("@dialogContainer",i._state))},features:[Ce],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(e,i){1&e&&_(0,oU,0,0,"ng-template",0)},directives:[Os],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[rU.dialogContainer]}}),t})(),lU=0;class Ti{constructor(n,e,i="mat-dialog-"+lU++){this._overlayRef=n,this._containerInstance=e,this.id=i,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new ie,this._afterClosed=new ie,this._beforeClosed=new ie,this._state=0,e._id=i,e._animationStateChanged.pipe(It(o=>"opened"===o.state),Ot(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe(It(o=>"closed"===o.state),Ot(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),n.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._afterClosed.next(this._result),this._afterClosed.complete(),this.componentInstance=null,this._overlayRef.dispose()}),n.keydownEvents().pipe(It(o=>27===o.keyCode&&!this.disableClose&&!fi(o))).subscribe(o=>{o.preventDefault(),dv(this,"keyboard")}),n.backdropClick().subscribe(()=>{this.disableClose?this._containerInstance._recaptureFocus():dv(this,"mouse")})}close(n){this._result=n,this._containerInstance._animationStateChanged.pipe(It(e=>"closing"===e.state),Ot(1)).subscribe(e=>{this._beforeClosed.next(n),this._beforeClosed.complete(),this._overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._afterClosed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._overlayRef.backdropClick()}keydownEvents(){return this._overlayRef.keydownEvents()}updatePosition(n){let e=this._getPositionStrategy();return n&&(n.left||n.right)?n.left?e.left(n.left):e.right(n.right):e.centerHorizontally(),n&&(n.top||n.bottom)?n.top?e.top(n.top):e.bottom(n.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this}updateSize(n="",e=""){return this._overlayRef.updateSize({width:n,height:e}),this._overlayRef.updatePosition(),this}addPanelClass(n){return this._overlayRef.addPanelClass(n),this}removePanelClass(n){return this._overlayRef.removePanelClass(n),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._overlayRef.dispose()}_getPositionStrategy(){return this._overlayRef.getConfig().positionStrategy}}function dv(t,n,e){return void 0!==t._containerInstance&&(t._containerInstance._closeInteractionType=n),t.close(e)}const Xi=new _e("MatDialogData"),cU=new _e("mat-dialog-default-options"),Rk=new _e("mat-dialog-scroll-strategy"),uU={provide:Rk,deps:[Qi],useFactory:function dU(t){return()=>t.scrollStrategies.block()}};let hU=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g){this._overlay=e,this._injector=i,this._defaultOptions=o,this._parentDialog=r,this._overlayContainer=s,this._dialogRefConstructor=l,this._dialogContainerType=u,this._dialogDataToken=p,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new ie,this._afterOpenedAtThisLevel=new ie,this._ariaHiddenElements=new Map,this.afterAllClosed=wd(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Nn(void 0))),this._scrollStrategy=a}get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}open(e,i){i=function pU(t,n){return Object.assign(Object.assign({},n),t)}(i,this._defaultOptions||new cv),i.id&&this.getDialogById(i.id);const o=this._createOverlay(i),r=this._attachDialogContainer(o,i),s=this._attachDialogContent(e,r,o,i);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(s),s.afterClosed().subscribe(()=>this._removeOpenDialog(s)),this.afterOpened.next(s),r._initializeWithAttachedContent(),s}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_createOverlay(e){const i=this._getOverlayConfig(e);return this._overlay.create(i)}_getOverlayConfig(e){const i=new Al({positionStrategy:this._overlay.position().global(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,disposeOnNavigation:e.closeOnNavigation});return e.backdropClass&&(i.backdropClass=e.backdropClass),i}_attachDialogContainer(e,i){const r=pn.create({parent:i&&i.viewContainerRef&&i.viewContainerRef.injector||this._injector,providers:[{provide:cv,useValue:i}]}),s=new Ol(this._dialogContainerType,i.viewContainerRef,r,i.componentFactoryResolver);return e.attach(s).instance}_attachDialogContent(e,i,o,r){const s=new this._dialogRefConstructor(o,i,r.id);if(e instanceof rn)i.attachTemplatePortal(new qr(e,null,{$implicit:r.data,dialogRef:s}));else{const a=this._createInjector(r,s,i),l=i.attachComponentPortal(new Ol(e,r.viewContainerRef,a,r.componentFactoryResolver));s.componentInstance=l.instance}return s.updateSize(r.width,r.height).updatePosition(r.position),s}_createInjector(e,i,o){const r=e&&e.viewContainerRef&&e.viewContainerRef.injector,s=[{provide:this._dialogContainerType,useValue:o},{provide:this._dialogDataToken,useValue:e.data},{provide:this._dialogRefConstructor,useValue:i}];return e.direction&&(!r||!r.get(li,null,yt.Optional))&&s.push({provide:li,useValue:{value:e.direction,change:Ge()}}),pn.create({parent:r||this._injector,providers:s})}_removeOpenDialog(e){const i=this.openDialogs.indexOf(e);i>-1&&(this.openDialogs.splice(i,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((o,r)=>{o?r.setAttribute("aria-hidden",o):r.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const e=this._overlayContainer.getContainerElement();if(e.parentElement){const i=e.parentElement.children;for(let o=i.length-1;o>-1;o--){let r=i[o];r!==e&&"SCRIPT"!==r.nodeName&&"STYLE"!==r.nodeName&&!r.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(r,r.getAttribute("aria-hidden")),r.setAttribute("aria-hidden","true"))}}}_closeDialogs(e){let i=e.length;for(;i--;)e[i].close()}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t}),t})(),wr=(()=>{class t extends hU{constructor(e,i,o,r,s,a,l,u){super(e,i,r,a,l,s,Ti,aU,Xi,u)}}return t.\u0275fac=function(e){return new(e||t)(Q(Qi),Q(pn),Q(zc,8),Q(cU,8),Q(Rk),Q(t,12),Q(Vb),Q(gn,8))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),fU=0,Ji=(()=>{class t{constructor(e,i,o){this.dialogRef=e,this._elementRef=i,this._dialog=o,this.type="button"}ngOnInit(){this.dialogRef||(this.dialogRef=Fk(this._elementRef,this._dialog.openDialogs))}ngOnChanges(e){const i=e._matDialogClose||e._matDialogCloseResult;i&&(this.dialogResult=i.currentValue)}_onButtonClick(e){dv(this.dialogRef,0===e.screenX&&0===e.screenY?"keyboard":"mouse",this.dialogResult)}}return t.\u0275fac=function(e){return new(e||t)(b(Ti,8),b(He),b(wr))},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(e,i){1&e&&N("click",function(r){return i._onButtonClick(r)}),2&e&&et("aria-label",i.ariaLabel||null)("type",i.type)},inputs:{ariaLabel:["aria-label","ariaLabel"],type:"type",dialogResult:["mat-dialog-close","dialogResult"],_matDialogClose:["matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[nn]}),t})(),mU=(()=>{class t{constructor(e,i,o){this._dialogRef=e,this._elementRef=i,this._dialog=o,this.id="mat-dialog-title-"+fU++}ngOnInit(){this._dialogRef||(this._dialogRef=Fk(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{const e=this._dialogRef._containerInstance;e&&!e._ariaLabelledBy&&(e._ariaLabelledBy=this.id)})}}return t.\u0275fac=function(e){return new(e||t)(b(Ti,8),b(He),b(wr))},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(e,i){2&e&&Nr("id",i.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t})(),Dr=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t})(),Sr=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=oe({type:t,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-dialog-actions"]}),t})();function Fk(t,n){let e=t.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-dialog-container");)e=e.parentElement;return e?n.find(i=>i.id===e.id):null}let Nk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[wr,uU],imports:[[Pl,Cd,ft],ft]}),t})();const gU=["tooltip"],Lk="tooltip-panel",Bk=ca({passive:!0}),Vk=new _e("mat-tooltip-scroll-strategy"),yU={provide:Vk,deps:[Qi],useFactory:function vU(t){return()=>t.scrollStrategies.reposition({scrollThrottle:20})}},CU=new _e("mat-tooltip-default-options",{providedIn:"root",factory:function wU(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}});let DU=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v,C){this._overlay=e,this._elementRef=i,this._scrollDispatcher=o,this._viewContainerRef=r,this._ngZone=s,this._platform=a,this._ariaDescriber=l,this._focusMonitor=u,this._dir=g,this._defaultOptions=v,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this._showDelay=this._defaultOptions.showDelay,this._hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new ie,this._scrollStrategy=p,this._document=C,v&&(v.position&&(this.position=v.position),v.touchGestures&&(this.touchGestures=v.touchGestures)),g.change.pipe(tt(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})}get position(){return this._position}set position(e){var i;e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(i=this._tooltipInstance)||void 0===i||i.show(0),this._overlayRef.updatePosition()))}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=Zn(e)}get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=Zn(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}get message(){return this._message}set message(e){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(tt(this._destroyed)).subscribe(e=>{e?"keyboard"===e&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const e=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([i,o])=>{e.removeEventListener(i,o,Bk)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay){if(this.disabled||!this.message||this._isTooltipVisible()&&!this._tooltipInstance._showTimeoutId&&!this._tooltipInstance._hideTimeoutId)return;const i=this._createOverlay();this._detach(),this._portal=this._portal||new Ol(this._tooltipComponent,this._viewContainerRef);const o=this._tooltipInstance=i.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(tt(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(e)}hide(e=this.hideDelay){this._tooltipInstance&&this._tooltipInstance.hide(e)}toggle(){this._isTooltipVisible()?this.hide():this.show()}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(){var e;if(this._overlayRef)return this._overlayRef;const i=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),o=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(i);return o.positionChanges.pipe(tt(this._destroyed)).subscribe(r=>{this._updateCurrentPositionClass(r.connectionPair),this._tooltipInstance&&r.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:o,panelClass:`${this._cssClassPrefix}-${Lk}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(tt(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(tt(this._destroyed)).subscribe(()=>{var r;return null===(r=this._tooltipInstance)||void 0===r?void 0:r._handleBodyInteraction()}),this._overlayRef.keydownEvents().pipe(tt(this._destroyed)).subscribe(r=>{this._isTooltipVisible()&&27===r.keyCode&&!fi(r)&&(r.preventDefault(),r.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),(null===(e=this._defaultOptions)||void 0===e?void 0:e.disableTooltipInteractivity)&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){const i=e.getConfig().positionStrategy,o=this._getOrigin(),r=this._getOverlayPosition();i.withPositions([this._addOffset(Object.assign(Object.assign({},o.main),r.main)),this._addOffset(Object.assign(Object.assign({},o.fallback),r.fallback))])}_addOffset(e){return e}_getOrigin(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let o;"above"==i||"below"==i?o={originX:"center",originY:"above"==i?"top":"bottom"}:"before"==i||"left"==i&&e||"right"==i&&!e?o={originX:"start",originY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(o={originX:"end",originY:"center"});const{x:r,y:s}=this._invertPosition(o.originX,o.originY);return{main:o,fallback:{originX:r,originY:s}}}_getOverlayPosition(){const e=!this._dir||"ltr"==this._dir.value,i=this.position;let o;"above"==i?o={overlayX:"center",overlayY:"bottom"}:"below"==i?o={overlayX:"center",overlayY:"top"}:"before"==i||"left"==i&&e||"right"==i&&!e?o={overlayX:"end",overlayY:"center"}:("after"==i||"right"==i&&e||"left"==i&&!e)&&(o={overlayX:"start",overlayY:"center"});const{x:r,y:s}=this._invertPosition(o.overlayX,o.overlayY);return{main:o,fallback:{overlayX:r,overlayY:s}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(Ot(1),tt(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}_invertPosition(e,i){return"above"===this.position||"below"===this.position?"top"===i?i="bottom":"bottom"===i&&(i="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:i}}_updateCurrentPositionClass(e){const{overlayY:i,originX:o,originY:r}=e;let s;if(s="center"===i?this._dir&&"rtl"===this._dir.value?"end"===o?"left":"right":"start"===o?"left":"right":"bottom"===i&&"top"===r?"above":"below",s!==this._currentPosition){const a=this._overlayRef;if(a){const l=`${this._cssClassPrefix}-${Lk}-`;a.removePanelClass(l+this._currentPosition),a.addPanelClass(l+s)}this._currentPosition=s}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",()=>{this._setupPointerExitEventsIfNeeded(),this.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",()=>{this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const e=[];if(this._platformSupportsMouseEvents())e.push(["mouseleave",i=>{var o;const r=i.relatedTarget;(!r||!(null===(o=this._overlayRef)||void 0===o?void 0:o.overlayElement.contains(r)))&&this.hide()}],["wheel",i=>this._wheelListener(i)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const i=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};e.push(["touchend",i],["touchcancel",i])}this._addListeners(e),this._passiveListeners.push(...e)}_addListeners(e){e.forEach(([i,o])=>{this._elementRef.nativeElement.addEventListener(i,o,Bk)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(e){if(this._isTooltipVisible()){const i=this._document.elementFromPoint(e.clientX,e.clientY),o=this._elementRef.nativeElement;i!==o&&!o.contains(i)&&this.hide()}}_disableNativeGesturesIfNecessary(){const e=this.touchGestures;if("off"!==e){const i=this._elementRef.nativeElement,o=i.style;("on"===e||"INPUT"!==i.nodeName&&"TEXTAREA"!==i.nodeName)&&(o.userSelect=o.msUserSelect=o.webkitUserSelect=o.MozUserSelect="none"),("on"===e||!i.draggable)&&(o.webkitUserDrag="none"),o.touchAction="none",o.webkitTapHighlightColor="transparent"}}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t,inputs:{position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),t})(),ki=(()=>{class t extends DU{constructor(e,i,o,r,s,a,l,u,p,g,v,C){super(e,i,o,r,s,a,l,u,p,g,v,C),this._tooltipComponent=MU}}return t.\u0275fac=function(e){return new(e||t)(b(Qi),b(He),b(vd),b(sn),b(Je),b(dn),b(SV),b(Fo),b(Vk),b(li,8),b(CU,8),b(ht))},t.\u0275dir=oe({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[Ce]}),t})(),SU=(()=>{class t{constructor(e,i){this._changeDetectorRef=e,this._visibility="initial",this._closeOnInteraction=!1,this._isVisible=!1,this._onHide=new ie,this._animationsDisabled="NoopAnimations"===i}show(e){clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:e}){(!e||!this._triggerElement.contains(e))&&this.hide(this._mouseLeaveHideDelay)}_onShow(){}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){const i=this._tooltip.nativeElement,o=this._showAnimation,r=this._hideAnimation;if(i.classList.remove(e?r:o),i.classList.add(e?o:r),this._isVisible=e,e&&!this._animationsDisabled&&"function"==typeof getComputedStyle){const s=getComputedStyle(i);("0s"===s.getPropertyValue("animation-duration")||"none"===s.getPropertyValue("animation-name"))&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(i.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(gn,8))},t.\u0275dir=oe({type:t}),t})(),MU=(()=>{class t extends SU{constructor(e,i,o){super(e,o),this._breakpointObserver=i,this._isHandset=this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)"),this._showAnimation="mat-tooltip-show",this._hideAnimation="mat-tooltip-hide"}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(sv),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-tooltip-component"]],viewQuery:function(e,i){if(1&e&&Tt(gU,7),2&e){let o;Ne(o=Le())&&(i._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(e,i){1&e&&N("mouseleave",function(r){return i._handleMouseLeave(r)}),2&e&&pi("zoom",i.isVisible()?1:null)},features:[Ce],decls:4,vars:6,consts:[[1,"mat-tooltip",3,"ngClass","animationend"],["tooltip",""]],template:function(e,i){if(1&e&&(d(0,"div",0,1),N("animationend",function(r){return i._handleAnimationEnd(r)}),_s(2,"async"),h(3),c()),2&e){let o;rt("mat-tooltip-handset",null==(o=bs(2,4,i._isHandset))?null:o.matches),m("ngClass",i.tooltipClass),f(3),Ee(i.message)}},directives:[nr],pipes:[zg],styles:[".mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis;transform:scale(0)}.mat-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}.mat-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-tooltip-show{0%{opacity:0;transform:scale(0)}50%{opacity:.5;transform:scale(0.99)}100%{opacity:1;transform:scale(1)}}@keyframes mat-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}.mat-tooltip-show{animation:mat-tooltip-show 200ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-tooltip-hide{animation:mat-tooltip-hide 100ms cubic-bezier(0, 0, 0.2, 1) forwards}\n"],encapsulation:2,changeDetection:0}),t})(),jk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[yU],imports:[[MM,qi,Pl,ft],ft,Is]}),t})();const xU=["input"],TU=function(t){return{enterDuration:t}},kU=["*"],EU=new _e("mat-checkbox-default-options",{providedIn:"root",factory:Hk});function Hk(){return{color:"accent",clickAction:"check-indeterminate"}}let IU=0;const Uk=Hk(),OU={provide:Zi,useExisting:zt(()=>uv),multi:!0};class AU{}const PU=Ml(Gr(vr(pa(class{constructor(t){this._elementRef=t}}))));let uv=(()=>{class t extends PU{constructor(e,i,o,r,s,a,l){super(e),this._changeDetectorRef=i,this._focusMonitor=o,this._ngZone=r,this._animationMode=a,this._options=l,this.ariaLabel="",this.ariaLabelledby=null,this._uniqueId="mat-checkbox-"+ ++IU,this.id=this._uniqueId,this.labelPosition="after",this.name=null,this.change=new Pe,this.indeterminateChange=new Pe,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||Uk,this.color=this.defaultColor=this._options.color||Uk.color,this.tabIndex=parseInt(s)||0}get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(e){this._required=Xe(e)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{e||Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}ngAfterViewChecked(){}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}get checked(){return this._checked}set checked(e){const i=Xe(e);i!=this.checked&&(this._checked=i,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(e){const i=Xe(e);i!==this.disabled&&(this._disabled=i,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(e){const i=e!=this._indeterminate;this._indeterminate=Xe(e),i&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(e){this.checked=!!e}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}_getAriaChecked(){return this.checked?"true":this.indeterminate?"mixed":"false"}_transitionCheckState(e){let i=this._currentCheckState,o=this._elementRef.nativeElement;if(i!==e&&(this._currentAnimationClass.length>0&&o.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(i,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){o.classList.add(this._currentAnimationClass);const r=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{o.classList.remove(r)},1e3)})}}_emitChangeEvent(){const e=new AU;e.source=this,e.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(e),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_onInputClick(e){var i;const o=null===(i=this._options)||void 0===i?void 0:i.clickAction;e.stopPropagation(),this.disabled||"noop"===o?!this.disabled&&"noop"===o&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==o&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this._checked=!this._checked,this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}focus(e,i){e?this._focusMonitor.focusVia(this._inputElement,e,i):this._inputElement.nativeElement.focus(i)}_onInteractionEvent(e){e.stopPropagation()}_getAnimationClassForCheckStateTransition(e,i){if("NoopAnimations"===this._animationMode)return"";let o="";switch(e){case 0:if(1===i)o="unchecked-checked";else{if(3!=i)return"";o="unchecked-indeterminate"}break;case 2:o=1===i?"unchecked-checked":"unchecked-indeterminate";break;case 1:o=2===i?"checked-unchecked":"checked-indeterminate";break;case 3:o=1===i?"indeterminate-checked":"indeterminate-unchecked"}return`mat-checkbox-anim-${o}`}_syncIndeterminate(e){const i=this._inputElement;i&&(i.nativeElement.indeterminate=e)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(At),b(Fo),b(Je),Di("tabindex"),b(gn,8),b(EU,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-checkbox"]],viewQuery:function(e,i){if(1&e&&(Tt(xU,5),Tt(or,5)),2&e){let o;Ne(o=Le())&&(i._inputElement=o.first),Ne(o=Le())&&(i.ripple=o.first)}},hostAttrs:[1,"mat-checkbox"],hostVars:14,hostBindings:function(e,i){2&e&&(Nr("id",i.id),et("tabindex",null)("aria-label",null)("aria-labelledby",null),rt("mat-checkbox-indeterminate",i.indeterminate)("mat-checkbox-checked",i.checked)("mat-checkbox-disabled",i.disabled)("mat-checkbox-label-before","before"==i.labelPosition)("_mat-animation-noopable","NoopAnimations"===i._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],id:"id",required:"required",labelPosition:"labelPosition",name:"name",value:"value",checked:"checked",disabled:"disabled",indeterminate:"indeterminate"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[ze([OU]),Ce],ngContentSelectors:kU,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(e,i){if(1&e&&(Jt(),d(0,"label",0,1)(2,"span",2)(3,"input",3,4),N("change",function(r){return i._onInteractionEvent(r)})("click",function(r){return i._onInputClick(r)}),c(),d(5,"span",5),E(6,"span",6),c(),E(7,"span",7),d(8,"span",8),hn(),d(9,"svg",9),E(10,"path",10),c(),Qs(),E(11,"span",11),c()(),d(12,"span",12,13),N("cdkObserveContent",function(){return i._onLabelTextChange()}),d(14,"span",14),h(15,"\xa0"),c(),ct(16),c()()),2&e){const o=$t(1),r=$t(13);et("for",i.inputId),f(2),rt("mat-checkbox-inner-container-no-side-margin",!r.textContent||!r.textContent.trim()),f(1),m("id",i.inputId)("required",i.required)("checked",i.checked)("disabled",i.disabled)("tabIndex",i.tabIndex),et("value",i.value)("name",i.name)("aria-label",i.ariaLabel||null)("aria-labelledby",i.ariaLabelledby)("aria-checked",i._getAriaChecked())("aria-describedby",i.ariaDescribedby),f(2),m("matRippleTrigger",o)("matRippleDisabled",i._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Kt(19,TU,"NoopAnimations"===i._animationMode?0:150))}},directives:[or,N_],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),t})(),zk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})(),$k=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,ft,Ph,zk],ft,zk]}),t})();const Sp=["*"],NU=["content"];function LU(t,n){if(1&t){const e=pe();d(0,"div",2),N("click",function(){return se(e),D()._onBackdropClicked()}),c()}2&t&&rt("mat-drawer-shown",D()._isShowingBackdrop())}function BU(t,n){1&t&&(d(0,"mat-drawer-content"),ct(1,2),c())}const VU=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],jU=["mat-drawer","mat-drawer-content","*"];function HU(t,n){if(1&t){const e=pe();d(0,"div",2),N("click",function(){return se(e),D()._onBackdropClicked()}),c()}2&t&&rt("mat-drawer-shown",D()._isShowingBackdrop())}function UU(t,n){1&t&&(d(0,"mat-sidenav-content"),ct(1,2),c())}const zU=[[["mat-sidenav"]],[["mat-sidenav-content"]],"*"],$U=["mat-sidenav","mat-sidenav-content","*"],Gk={transformDrawer:Ao("transform",[jn("open, open-instant",Vt({transform:"none",visibility:"visible"})),jn("void",Vt({"box-shadow":"none",visibility:"hidden"})),Kn("void => open-instant",ai("0ms")),Kn("void <=> open, open-instant => void",ai("400ms cubic-bezier(0.25, 0.8, 0.25, 1)"))])},WU=new _e("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:function qU(){return!1}}),hv=new _e("MAT_DRAWER_CONTAINER");let Mp=(()=>{class t extends yd{constructor(e,i,o,r,s){super(o,r,s),this._changeDetectorRef=e,this._container=i}ngAfterContentInit(){this._container._contentMarginChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(zt(()=>qk)),b(He),b(vd),b(Je))},t.\u0275cmp=Ae({type:t,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:4,hostBindings:function(e,i){2&e&&pi("margin-left",i._container._contentMargins.left,"px")("margin-right",i._container._contentMargins.right,"px")},features:[ze([{provide:yd,useExisting:t}]),Ce],ngContentSelectors:Sp,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),ct(0))},encapsulation:2,changeDetection:0}),t})(),Wk=(()=>{class t{constructor(e,i,o,r,s,a,l,u){this._elementRef=e,this._focusTrapFactory=i,this._focusMonitor=o,this._platform=r,this._ngZone=s,this._interactivityChecker=a,this._doc=l,this._container=u,this._elementFocusedBeforeDrawerWasOpened=null,this._enableAnimations=!1,this._position="start",this._mode="over",this._disableClose=!1,this._opened=!1,this._animationStarted=new ie,this._animationEnd=new ie,this._animationState="void",this.openedChange=new Pe(!0),this._openedStream=this.openedChange.pipe(It(p=>p),je(()=>{})),this.openedStart=this._animationStarted.pipe(It(p=>p.fromState!==p.toState&&0===p.toState.indexOf("open")),jb(void 0)),this._closedStream=this.openedChange.pipe(It(p=>!p),je(()=>{})),this.closedStart=this._animationStarted.pipe(It(p=>p.fromState!==p.toState&&"void"===p.toState),jb(void 0)),this._destroyed=new ie,this.onPositionChanged=new Pe,this._modeChanged=new ie,this.openedChange.subscribe(p=>{p?(this._doc&&(this._elementFocusedBeforeDrawerWasOpened=this._doc.activeElement),this._takeFocus()):this._isFocusWithinDrawer()&&this._restoreFocus(this._openedVia||"program")}),this._ngZone.runOutsideAngular(()=>{Ki(this._elementRef.nativeElement,"keydown").pipe(It(p=>27===p.keyCode&&!this.disableClose&&!fi(p)),tt(this._destroyed)).subscribe(p=>this._ngZone.run(()=>{this.close(),p.stopPropagation(),p.preventDefault()}))}),this._animationEnd.pipe(nd((p,g)=>p.fromState===g.fromState&&p.toState===g.toState)).subscribe(p=>{const{fromState:g,toState:v}=p;(0===v.indexOf("open")&&"void"===g||"void"===v&&0===g.indexOf("open"))&&this.openedChange.emit(this._opened)})}get position(){return this._position}set position(e){(e="end"===e?"end":"start")!==this._position&&(this._isAttached&&this._updatePositionInParent(e),this._position=e,this.onPositionChanged.emit())}get mode(){return this._mode}set mode(e){this._mode=e,this._updateFocusTrapState(),this._modeChanged.next()}get disableClose(){return this._disableClose}set disableClose(e){this._disableClose=Xe(e)}get autoFocus(){const e=this._autoFocus;return null==e?"side"===this.mode?"dialog":"first-tabbable":e}set autoFocus(e){("true"===e||"false"===e||null==e)&&(e=Xe(e)),this._autoFocus=e}get opened(){return this._opened}set opened(e){this.toggle(Xe(e))}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{const o=()=>{e.removeEventListener("blur",o),e.removeEventListener("mousedown",o),e.removeAttribute("tabindex")};e.addEventListener("blur",o),e.addEventListener("mousedown",o)})),e.focus(i)}_focusByCssSelector(e,i){let o=this._elementRef.nativeElement.querySelector(e);o&&this._forceFocus(o,i)}_takeFocus(){if(!this._focusTrap)return;const e=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":this._focusTrap.focusInitialElementWhenReady().then(i=>{!i&&"function"==typeof this._elementRef.nativeElement.focus&&e.focus()});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus)}}_restoreFocus(e){"dialog"!==this.autoFocus&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,e):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}_isFocusWithinDrawer(){const e=this._doc.activeElement;return!!e&&this._elementRef.nativeElement.contains(e)}ngAfterViewInit(){this._isAttached=!0,this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState(),"end"===this._position&&this._updatePositionInParent("end")}ngAfterContentChecked(){this._platform.isBrowser&&(this._enableAnimations=!0)}ngOnDestroy(){var e;this._focusTrap&&this._focusTrap.destroy(),null===(e=this._anchor)||void 0===e||e.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}open(e){return this.toggle(!0,e)}close(){return this.toggle(!1)}_closeViaBackdropClick(){return this._setOpen(!1,!0,"mouse")}toggle(e=!this.opened,i){e&&i&&(this._openedVia=i);const o=this._setOpen(e,!e&&this._isFocusWithinDrawer(),this._openedVia||"program");return e||(this._openedVia=null),o}_setOpen(e,i,o){return this._opened=e,e?this._animationState=this._enableAnimations?"open":"open-instant":(this._animationState="void",i&&this._restoreFocus(o)),this._updateFocusTrapState(),new Promise(r=>{this.openedChange.pipe(Ot(1)).subscribe(s=>r(s?"open":"close"))})}_getWidth(){return this._elementRef.nativeElement&&this._elementRef.nativeElement.offsetWidth||0}_updateFocusTrapState(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&"side"!==this.mode)}_updatePositionInParent(e){const i=this._elementRef.nativeElement,o=i.parentNode;"end"===e?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),o.insertBefore(this._anchor,i)),o.appendChild(i)):this._anchor&&this._anchor.parentNode.insertBefore(i,this._anchor)}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(yM),b(Fo),b(dn),b(Je),b(B_),b(ht,8),b(hv,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-drawer"]],viewQuery:function(e,i){if(1&e&&Tt(NU,5),2&e){let o;Ne(o=Le())&&(i._content=o.first)}},hostAttrs:["tabIndex","-1",1,"mat-drawer"],hostVars:12,hostBindings:function(e,i){1&e&&Tc("@transform.start",function(r){return i._animationStarted.next(r)})("@transform.done",function(r){return i._animationEnd.next(r)}),2&e&&(et("align",null),Ec("@transform",i._animationState),rt("mat-drawer-end","end"===i.position)("mat-drawer-over","over"===i.mode)("mat-drawer-push","push"===i.mode)("mat-drawer-side","side"===i.mode)("mat-drawer-opened",i.opened))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:Sp,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(e,i){1&e&&(Jt(),d(0,"div",0,1),ct(2),c())},directives:[yd],encapsulation:2,data:{animation:[Gk.transformDrawer]},changeDetection:0}),t})(),qk=(()=>{class t{constructor(e,i,o,r,s,a=!1,l){this._dir=e,this._element=i,this._ngZone=o,this._changeDetectorRef=r,this._animationMode=l,this._drawers=new vs,this.backdropClick=new Pe,this._destroyed=new ie,this._doCheckSubject=new ie,this._contentMargins={left:null,right:null},this._contentMarginChanges=new ie,e&&e.change.pipe(tt(this._destroyed)).subscribe(()=>{this._validateDrawers(),this.updateContentMargins()}),s.change().pipe(tt(this._destroyed)).subscribe(()=>this.updateContentMargins()),this._autosize=a}get start(){return this._start}get end(){return this._end}get autosize(){return this._autosize}set autosize(e){this._autosize=Xe(e)}get hasBackdrop(){return null==this._backdropOverride?!this._start||"side"!==this._start.mode||!this._end||"side"!==this._end.mode:this._backdropOverride}set hasBackdrop(e){this._backdropOverride=null==e?null:Xe(e)}get scrollable(){return this._userContent||this._content}ngAfterContentInit(){this._allDrawers.changes.pipe(Nn(this._allDrawers),tt(this._destroyed)).subscribe(e=>{this._drawers.reset(e.filter(i=>!i._container||i._container===this)),this._drawers.notifyOnChanges()}),this._drawers.changes.pipe(Nn(null)).subscribe(()=>{this._validateDrawers(),this._drawers.forEach(e=>{this._watchDrawerToggle(e),this._watchDrawerPosition(e),this._watchDrawerMode(e)}),(!this._drawers.length||this._isDrawerOpen(this._start)||this._isDrawerOpen(this._end))&&this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(()=>{this._doCheckSubject.pipe(Oh(10),tt(this._destroyed)).subscribe(()=>this.updateContentMargins())})}ngOnDestroy(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}open(){this._drawers.forEach(e=>e.open())}close(){this._drawers.forEach(e=>e.close())}updateContentMargins(){let e=0,i=0;if(this._left&&this._left.opened)if("side"==this._left.mode)e+=this._left._getWidth();else if("push"==this._left.mode){const o=this._left._getWidth();e+=o,i-=o}if(this._right&&this._right.opened)if("side"==this._right.mode)i+=this._right._getWidth();else if("push"==this._right.mode){const o=this._right._getWidth();i+=o,e-=o}e=e||null,i=i||null,(e!==this._contentMargins.left||i!==this._contentMargins.right)&&(this._contentMargins={left:e,right:i},this._ngZone.run(()=>this._contentMarginChanges.next(this._contentMargins)))}ngDoCheck(){this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(()=>this._doCheckSubject.next())}_watchDrawerToggle(e){e._animationStarted.pipe(It(i=>i.fromState!==i.toState),tt(this._drawers.changes)).subscribe(i=>{"open-instant"!==i.toState&&"NoopAnimations"!==this._animationMode&&this._element.nativeElement.classList.add("mat-drawer-transition"),this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),"side"!==e.mode&&e.openedChange.pipe(tt(this._drawers.changes)).subscribe(()=>this._setContainerClass(e.opened))}_watchDrawerPosition(e){!e||e.onPositionChanged.pipe(tt(this._drawers.changes)).subscribe(()=>{this._ngZone.onMicrotaskEmpty.pipe(Ot(1)).subscribe(()=>{this._validateDrawers()})})}_watchDrawerMode(e){e&&e._modeChanged.pipe(tt(Tn(this._drawers.changes,this._destroyed))).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()})}_setContainerClass(e){const i=this._element.nativeElement.classList,o="mat-drawer-container-has-open";e?i.add(o):i.remove(o)}_validateDrawers(){this._start=this._end=null,this._drawers.forEach(e=>{"end"==e.position?this._end=e:this._start=e}),this._right=this._left=null,this._dir&&"rtl"===this._dir.value?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}_isPushed(){return this._isDrawerOpen(this._start)&&"over"!=this._start.mode||this._isDrawerOpen(this._end)&&"over"!=this._end.mode}_onBackdropClicked(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}_closeModalDrawersViaBackdrop(){[this._start,this._end].filter(e=>e&&!e.disableClose&&this._canHaveBackdrop(e)).forEach(e=>e._closeViaBackdropClick())}_isShowingBackdrop(){return this._isDrawerOpen(this._start)&&this._canHaveBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._canHaveBackdrop(this._end)}_canHaveBackdrop(e){return"side"!==e.mode||!!this._backdropOverride}_isDrawerOpen(e){return null!=e&&e.opened}}return t.\u0275fac=function(e){return new(e||t)(b(li,8),b(He),b(Je),b(At),b(yr),b(WU),b(gn,8))},t.\u0275cmp=Ae({type:t,selectors:[["mat-drawer-container"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,Mp,5),mt(o,Wk,5)),2&e){let r;Ne(r=Le())&&(i._content=r.first),Ne(r=Le())&&(i._allDrawers=r)}},viewQuery:function(e,i){if(1&e&&Tt(Mp,5),2&e){let o;Ne(o=Le())&&(i._userContent=o.first)}},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-drawer-container-explicit-backdrop",i._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[ze([{provide:hv,useExisting:t}])],ngContentSelectors:jU,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(e,i){1&e&&(Jt(VU),_(0,LU,1,2,"div",0),ct(1),ct(2,1),_(3,BU,2,0,"mat-drawer-content",1)),2&e&&(m("ngIf",i.hasBackdrop),f(3),m("ngIf",!i._content))},directives:[Mp,Et],styles:['.mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer[style*="visibility: hidden"]{display:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n'],encapsulation:2,changeDetection:0}),t})(),pv=(()=>{class t extends Mp{constructor(e,i,o,r,s){super(e,i,o,r,s)}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(zt(()=>Zk)),b(He),b(vd),b(Je))},t.\u0275cmp=Ae({type:t,selectors:[["mat-sidenav-content"]],hostAttrs:[1,"mat-drawer-content","mat-sidenav-content"],hostVars:4,hostBindings:function(e,i){2&e&&pi("margin-left",i._container._contentMargins.left,"px")("margin-right",i._container._contentMargins.right,"px")},features:[ze([{provide:yd,useExisting:t}]),Ce],ngContentSelectors:Sp,decls:1,vars:0,template:function(e,i){1&e&&(Jt(),ct(0))},encapsulation:2,changeDetection:0}),t})(),Kk=(()=>{class t extends Wk{constructor(){super(...arguments),this._fixedInViewport=!1,this._fixedTopGap=0,this._fixedBottomGap=0}get fixedInViewport(){return this._fixedInViewport}set fixedInViewport(e){this._fixedInViewport=Xe(e)}get fixedTopGap(){return this._fixedTopGap}set fixedTopGap(e){this._fixedTopGap=Zn(e)}get fixedBottomGap(){return this._fixedBottomGap}set fixedBottomGap(e){this._fixedBottomGap=Zn(e)}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-sidenav"]],hostAttrs:["tabIndex","-1",1,"mat-drawer","mat-sidenav"],hostVars:17,hostBindings:function(e,i){2&e&&(et("align",null),pi("top",i.fixedInViewport?i.fixedTopGap:null,"px")("bottom",i.fixedInViewport?i.fixedBottomGap:null,"px"),rt("mat-drawer-end","end"===i.position)("mat-drawer-over","over"===i.mode)("mat-drawer-push","push"===i.mode)("mat-drawer-side","side"===i.mode)("mat-drawer-opened",i.opened)("mat-sidenav-fixed",i.fixedInViewport))},inputs:{fixedInViewport:"fixedInViewport",fixedTopGap:"fixedTopGap",fixedBottomGap:"fixedBottomGap"},exportAs:["matSidenav"],features:[Ce],ngContentSelectors:Sp,decls:3,vars:0,consts:[["cdkScrollable","",1,"mat-drawer-inner-container"],["content",""]],template:function(e,i){1&e&&(Jt(),d(0,"div",0,1),ct(2),c())},directives:[yd],encapsulation:2,data:{animation:[Gk.transformDrawer]},changeDetection:0}),t})(),Zk=(()=>{class t extends qk{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-sidenav-container"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,pv,5),mt(o,Kk,5)),2&e){let r;Ne(r=Le())&&(i._content=r.first),Ne(r=Le())&&(i._allDrawers=r)}},hostAttrs:[1,"mat-drawer-container","mat-sidenav-container"],hostVars:2,hostBindings:function(e,i){2&e&&rt("mat-drawer-container-explicit-backdrop",i._backdropOverride)},exportAs:["matSidenavContainer"],features:[ze([{provide:hv,useExisting:t}]),Ce],ngContentSelectors:$U,decls:4,vars:2,consts:[["class","mat-drawer-backdrop",3,"mat-drawer-shown","click",4,"ngIf"],[4,"ngIf"],[1,"mat-drawer-backdrop",3,"click"]],template:function(e,i){1&e&&(Jt(zU),_(0,HU,1,2,"div",0),ct(1),ct(2,1),_(3,UU,2,0,"mat-sidenav-content",1)),2&e&&(m("ngIf",i.hasBackdrop),f(3),m("ngIf",!i._content))},directives:[pv,Et],styles:['.mat-drawer-container{position:relative;z-index:1;box-sizing:border-box;-webkit-overflow-scrolling:touch;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}.cdk-high-contrast-active .mat-drawer-backdrop{opacity:.5}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}.cdk-high-contrast-active .mat-drawer,.cdk-high-contrast-active [dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}.cdk-high-contrast-active [dir=rtl] .mat-drawer,.cdk-high-contrast-active .mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer{transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer[style*="visibility: hidden"]{display:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.mat-sidenav-fixed{position:fixed}\n'],encapsulation:2,changeDetection:0}),t})(),Qk=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[qi,ft,Is],Is,ft]}),t})();const KU=["panel"];function ZU(t,n){if(1&t&&(d(0,"div",0,1),ct(2),c()),2&t){const e=n.id,i=D();m("id",i.id)("ngClass",i._classList),et("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby(e))}}const QU=["*"];let YU=0;class XU{constructor(n,e){this.source=n,this.option=e}}const JU=vr(class{}),Yk=new _e("mat-autocomplete-default-options",{providedIn:"root",factory:function ez(){return{autoActiveFirstOption:!1}}});let tz=(()=>{class t extends JU{constructor(e,i,o,r){super(),this._changeDetectorRef=e,this._elementRef=i,this._activeOptionChanges=k.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new Pe,this.opened=new Pe,this.closed=new Pe,this.optionActivated=new Pe,this._classList={},this.id="mat-autocomplete-"+YU++,this.inertGroups=(null==r?void 0:r.SAFARI)||!1,this._autoActiveFirstOption=!!o.autoActiveFirstOption}get isOpen(){return this._isOpen&&this.showPanel}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(e){this._autoActiveFirstOption=Xe(e)}set classList(e){this._classList=e&&e.length?function yV(t,n=/\s+/){const e=[];if(null!=t){const i=Array.isArray(t)?t:`${t}`.split(n);for(const o of i){const r=`${o}`.trim();r&&e.push(r)}}return e}(e).reduce((i,o)=>(i[o]=!0,i),{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}ngAfterContentInit(){this._keyManager=new _M(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(e=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[e]||null})}),this._setVisibility()}ngOnDestroy(){this._activeOptionChanges.unsubscribe()}_setScrollTop(e){this.panel&&(this.panel.nativeElement.scrollTop=e)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(e){const i=new XU(this,e);this.optionSelected.emit(i)}_getPanelAriaLabelledby(e){return this.ariaLabel?null:this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_setVisibilityClasses(e){e[this._visibleClass]=this.showPanel,e[this._hiddenClass]=!this.showPanel}}return t.\u0275fac=function(e){return new(e||t)(b(At),b(He),b(Yk),b(dn))},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&(Tt(rn,7),Tt(KU,5)),2&e){let o;Ne(o=Le())&&(i.template=o.first),Ne(o=Le())&&(i.panel=o.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",panelWidth:"panelWidth",classList:["class","classList"]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[Ce]}),t})(),nz=(()=>{class t extends tz{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275cmp=Ae({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(e,i,o){if(1&e&&(mt(o,q_,5),mt(o,_i,5)),2&e){let r;Ne(r=Le())&&(i.optionGroups=r),Ne(r=Le())&&(i.options=r)}},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[ze([{provide:W_,useExisting:t}]),Ce],ngContentSelectors:QU,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(e,i){1&e&&(Jt(),_(0,ZU,3,4,"ng-template"))},directives:[nr],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t})();const Xk=new _e("mat-autocomplete-scroll-strategy"),oz={provide:Xk,deps:[Qi],useFactory:function iz(t){return()=>t.scrollStrategies.reposition()}},rz={provide:Zi,useExisting:zt(()=>Jk),multi:!0};let sz=(()=>{class t{constructor(e,i,o,r,s,a,l,u,p,g,v){this._element=e,this._overlay=i,this._viewContainerRef=o,this._zone=r,this._changeDetectorRef=s,this._dir=l,this._formField=u,this._document=p,this._viewportRuler=g,this._defaults=v,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=k.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new ie,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=wd(()=>{const C=this.autocomplete?this.autocomplete.options:null;return C?C.changes.pipe(Nn(C),Bi(()=>Tn(...C.map(M=>M.onSelectionChange)))):this._zone.onStable.pipe(Ot(1),Bi(()=>this.optionSelections))}),this._scrollStrategy=a}get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(e){this._autocompleteDisabled=Xe(e)}ngAfterViewInit(){const e=this._getWindow();void 0!==e&&this._zone.runOutsideAngular(()=>e.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const e=this._getWindow();void 0!==e&&e.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return Tn(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(It(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(It(()=>this._overlayAttached)):Ge()).pipe(je(e=>e instanceof RM?e:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return Tn(Ki(this._document,"click"),Ki(this._document,"auxclick"),Ki(this._document,"touchend")).pipe(It(e=>{const i=Ds(e),o=this._formField?this._formField._elementRef.nativeElement:null,r=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&i!==this._element.nativeElement&&this._document.activeElement!==this._element.nativeElement&&(!o||!o.contains(i))&&(!r||!r.contains(i))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(i)}))}writeValue(e){Promise.resolve().then(()=>this._setTriggerValue(e))}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this._element.nativeElement.disabled=e}_handleKeydown(e){const i=e.keyCode,o=fi(e);if(27===i&&!o&&e.preventDefault(),this.activeOption&&13===i&&this.panelOpen&&!o)this.activeOption._selectViaInteraction(),this._resetActiveItem(),e.preventDefault();else if(this.autocomplete){const r=this.autocomplete._keyManager.activeItem,s=38===i||40===i;9===i||s&&!o&&this.panelOpen?this.autocomplete._keyManager.onKeydown(e):s&&this._canOpen()&&this.openPanel(),(s||this.autocomplete._keyManager.activeItem!==r)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}_handleInput(e){let i=e.target,o=i.value;"number"===i.type&&(o=""==o?null:parseFloat(o)),this._previousValue!==o&&(this._previousValue=o,this._onChange(o),this._canOpen()&&this._document.activeElement===e.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this.openPanel()}_floatLabel(e=!1){this._formField&&"auto"===this._formField.floatLabel&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){return Tn(this._zone.onStable.pipe(Ot(1)),this.autocomplete.options.changes.pipe(Zt(()=>this._positionStrategy.reapplyLastPosition()),Hb(0))).pipe(Bi(()=>(this._zone.run(()=>{const o=this.panelOpen;this._resetActiveItem(),this.autocomplete._setVisibility(),this._changeDetectorRef.detectChanges(),this.panelOpen&&(this._overlayRef.updatePosition(),o!==this.panelOpen&&this.autocomplete.opened.emit())}),this.panelClosingActions)),Ot(1)).subscribe(o=>this._setValueAndClose(o))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_setTriggerValue(e){const i=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(e):e,o=null!=i?i:"";this._formField?this._formField._control.value=o:this._element.nativeElement.value=o,this._previousValue=o}_setValueAndClose(e){const i=e&&e.source;i&&(this._clearPreviousSelectedOption(i),this._setTriggerValue(i.value),this._onChange(i.value),this.autocomplete._emitSelectEvent(i),this._element.nativeElement.focus()),this.closePanel()}_clearPreviousSelectedOption(e){this.autocomplete.options.forEach(i=>{i!==e&&i.selected&&i.deselect()})}_attachOverlay(){var e;let i=this._overlayRef;i?(this._positionStrategy.setOrigin(this._getConnectedElement()),i.updateSize({width:this._getPanelWidth()})):(this._portal=new qr(this.autocomplete.template,this._viewContainerRef,{id:null===(e=this._formField)||void 0===e?void 0:e.getLabelId()}),i=this._overlay.create(this._getOverlayConfig()),this._overlayRef=i,i.keydownEvents().subscribe(r=>{(27===r.keyCode&&!fi(r)||38===r.keyCode&&fi(r,"altKey"))&&(this._closeKeyEventStream.next(),this._resetActiveItem(),r.stopPropagation(),r.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&i&&i.updateSize({width:this._getPanelWidth()})})),i&&!i.hasAttached()&&(i.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const o=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&o!==this.panelOpen&&this.autocomplete.opened.emit()}_getOverlayConfig(){var e;return new Al({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(e=this._defaults)||void 0===e?void 0:e.overlayPanelClass})}_getOverlayPosition(){const e=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(e),this._positionStrategy=e,e}_setStrategyPositions(e){const i=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],o=this._aboveClass,r=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:o},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:o}];let s;s="above"===this.position?r:"below"===this.position?i:[...i,...r],e.withPositions(s)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const e=this.autocomplete;e.autoActiveFirstOption?e._keyManager.setFirstItemActive():e._keyManager.setActiveItem(-1)}_canOpen(){const e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this._autocompleteDisabled}_getWindow(){var e;return(null===(e=this._document)||void 0===e?void 0:e.defaultView)||window}_scrollToOption(e){const i=this.autocomplete,o=K_(e,i.options,i.optionGroups);if(0===e&&1===o)i._setScrollTop(0);else if(i.panel){const r=i.options.toArray()[e];if(r){const s=r._getHostElement(),a=FM(s.offsetTop,s.offsetHeight,i._getScrollTop(),i.panel.nativeElement.offsetHeight);i._setScrollTop(a)}}}}return t.\u0275fac=function(e){return new(e||t)(b(He),b(Qi),b(sn),b(Je),b(At),b(Xk),b(li,8),b(ip,9),b(ht,8),b(yr),b(Yk,8))},t.\u0275dir=oe({type:t,inputs:{autocomplete:["matAutocomplete","autocomplete"],position:["matAutocompletePosition","position"],connectedTo:["matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"]},features:[nn]}),t})(),Jk=(()=>{class t extends sz{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(e,i){1&e&&N("focusin",function(){return i._handleFocus()})("blur",function(){return i._onTouched()})("input",function(r){return i._handleInput(r)})("keydown",function(r){return i._handleKeydown(r)})("click",function(){return i._handleClick()}),2&e&&et("autocomplete",i.autocompleteAttribute)("role",i.autocompleteDisabled?null:"combobox")("aria-autocomplete",i.autocompleteDisabled?null:"list")("aria-activedescendant",i.panelOpen&&i.activeOption?i.activeOption.id:null)("aria-expanded",i.autocompleteDisabled?null:i.panelOpen.toString())("aria-owns",i.autocompleteDisabled||!i.panelOpen||null==i.autocomplete?null:i.autocomplete.id)("aria-haspopup",i.autocompleteDisabled?null:"listbox")},exportAs:["matAutocompleteTrigger"],features:[ze([rz]),Ce]}),t})(),eE=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({providers:[oz],imports:[[Pl,Bh,ft,qi],Is,Bh,ft]}),t})();const az=[NM,Z_,ox,ax,ux,pT,_d,wT,VT,Eb,WT,vp,ok,ev,vp,pk,xk,lv,Nk,Ib,jk,$k,Qk,eE];let lz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[az,NM,Z_,ox,ax,ux,pT,_d,wT,VT,Eb,WT,vp,ok,ev,vp,pk,xk,lv,Nk,Ib,jk,$k,Qk,eE]}),t})();const cz=["input"],dz=function(t){return{enterDuration:t}},uz=["*"],hz=new _e("mat-radio-default-options",{providedIn:"root",factory:function pz(){return{color:"accent"}}});let tE=0;const fz={provide:Zi,useExisting:zt(()=>xp),multi:!0};class nE{constructor(n,e){this.source=n,this.value=e}}const iE=new _e("MatRadioGroup");let mz=(()=>{class t{constructor(e){this._changeDetector=e,this._value=null,this._name="mat-radio-group-"+tE++,this._selected=null,this._isInitialized=!1,this._labelPosition="after",this._disabled=!1,this._required=!1,this._controlValueAccessorChangeFn=()=>{},this.onTouched=()=>{},this.change=new Pe}get name(){return this._name}set name(e){this._name=e,this._updateRadioButtonNames()}get labelPosition(){return this._labelPosition}set labelPosition(e){this._labelPosition="before"===e?"before":"after",this._markRadiosForCheck()}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,this._updateSelectedRadioFromValue(),this._checkSelectedRadioButton())}_checkSelectedRadioButton(){this._selected&&!this._selected.checked&&(this._selected.checked=!0)}get selected(){return this._selected}set selected(e){this._selected=e,this.value=e?e.value:null,this._checkSelectedRadioButton()}get disabled(){return this._disabled}set disabled(e){this._disabled=Xe(e),this._markRadiosForCheck()}get required(){return this._required}set required(e){this._required=Xe(e),this._markRadiosForCheck()}ngAfterContentInit(){this._isInitialized=!0}_touch(){this.onTouched&&this.onTouched()}_updateRadioButtonNames(){this._radios&&this._radios.forEach(e=>{e.name=this.name,e._markForCheck()})}_updateSelectedRadioFromValue(){this._radios&&(null===this._selected||this._selected.value!==this._value)&&(this._selected=null,this._radios.forEach(i=>{i.checked=this.value===i.value,i.checked&&(this._selected=i)}))}_emitChangeEvent(){this._isInitialized&&this.change.emit(new nE(this._selected,this._value))}_markRadiosForCheck(){this._radios&&this._radios.forEach(e=>e._markForCheck())}writeValue(e){this.value=e,this._changeDetector.markForCheck()}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetector.markForCheck()}}return t.\u0275fac=function(e){return new(e||t)(b(At))},t.\u0275dir=oe({type:t,inputs:{color:"color",name:"name",labelPosition:"labelPosition",value:"value",selected:"selected",disabled:"disabled",required:"required"},outputs:{change:"change"}}),t})(),xp=(()=>{class t extends mz{}return t.\u0275fac=function(){let n;return function(i){return(n||(n=wt(t)))(i||t)}}(),t.\u0275dir=oe({type:t,selectors:[["mat-radio-group"]],contentQueries:function(e,i,o){if(1&e&&mt(o,Tp,5),2&e){let r;Ne(r=Le())&&(i._radios=r)}},hostAttrs:["role","radiogroup",1,"mat-radio-group"],exportAs:["matRadioGroup"],features:[ze([fz,{provide:iE,useExisting:t}]),Ce]}),t})();class gz{constructor(n){this._elementRef=n}}const _z=vr(Ml(gz));let bz=(()=>{class t extends _z{constructor(e,i,o,r,s,a,l,u){super(i),this._changeDetector=o,this._focusMonitor=r,this._radioDispatcher=s,this._providerOverride=l,this._uniqueId="mat-radio-"+ ++tE,this.id=this._uniqueId,this.change=new Pe,this._checked=!1,this._value=null,this._removeUniqueSelectionListener=()=>{},this.radioGroup=e,this._noopAnimations="NoopAnimations"===a,u&&(this.tabIndex=Zn(u,0)),this._removeUniqueSelectionListener=s.listen((p,g)=>{p!==this.id&&g===this.name&&(this.checked=!1)})}get checked(){return this._checked}set checked(e){const i=Xe(e);this._checked!==i&&(this._checked=i,i&&this.radioGroup&&this.radioGroup.value!==this.value?this.radioGroup.selected=this:!i&&this.radioGroup&&this.radioGroup.value===this.value&&(this.radioGroup.selected=null),i&&this._radioDispatcher.notify(this.id,this.name),this._changeDetector.markForCheck())}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,null!==this.radioGroup&&(this.checked||(this.checked=this.radioGroup.value===e),this.checked&&(this.radioGroup.selected=this)))}get labelPosition(){return this._labelPosition||this.radioGroup&&this.radioGroup.labelPosition||"after"}set labelPosition(e){this._labelPosition=e}get disabled(){return this._disabled||null!==this.radioGroup&&this.radioGroup.disabled}set disabled(e){this._setDisabled(Xe(e))}get required(){return this._required||this.radioGroup&&this.radioGroup.required}set required(e){this._required=Xe(e)}get color(){return this._color||this.radioGroup&&this.radioGroup.color||this._providerOverride&&this._providerOverride.color||"accent"}set color(e){this._color=e}get inputId(){return`${this.id||this._uniqueId}-input`}focus(e,i){i?this._focusMonitor.focusVia(this._inputElement,i,e):this._inputElement.nativeElement.focus(e)}_markForCheck(){this._changeDetector.markForCheck()}ngOnInit(){this.radioGroup&&(this.checked=this.radioGroup.value===this._value,this.checked&&(this.radioGroup.selected=this),this.name=this.radioGroup.name)}ngDoCheck(){this._updateTabIndex()}ngAfterViewInit(){this._updateTabIndex(),this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{!e&&this.radioGroup&&this.radioGroup._touch()})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._removeUniqueSelectionListener()}_emitChangeEvent(){this.change.emit(new nE(this,this._value))}_isRippleDisabled(){return this.disableRipple||this.disabled}_onInputClick(e){e.stopPropagation()}_onInputInteraction(e){if(e.stopPropagation(),!this.checked&&!this.disabled){const i=this.radioGroup&&this.value!==this.radioGroup.value;this.checked=!0,this._emitChangeEvent(),this.radioGroup&&(this.radioGroup._controlValueAccessorChangeFn(this.value),i&&this.radioGroup._emitChangeEvent())}}_setDisabled(e){this._disabled!==e&&(this._disabled=e,this._changeDetector.markForCheck())}_updateTabIndex(){var e;const i=this.radioGroup;let o;if(o=i&&i.selected&&!this.disabled?i.selected===this?this.tabIndex:-1:this.tabIndex,o!==this._previousTabIndex){const r=null===(e=this._inputElement)||void 0===e?void 0:e.nativeElement;r&&(r.setAttribute("tabindex",o+""),this._previousTabIndex=o)}}}return t.\u0275fac=function(e){ea()},t.\u0275dir=oe({type:t,viewQuery:function(e,i){if(1&e&&Tt(cz,5),2&e){let o;Ne(o=Le())&&(i._inputElement=o.first)}},inputs:{id:"id",name:"name",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],checked:"checked",value:"value",labelPosition:"labelPosition",disabled:"disabled",required:"required",color:"color"},outputs:{change:"change"},features:[Ce]}),t})(),Tp=(()=>{class t extends bz{constructor(e,i,o,r,s,a,l,u){super(e,i,o,r,s,a,l,u)}}return t.\u0275fac=function(e){return new(e||t)(b(iE,8),b(He),b(At),b(Fo),b(sb),b(gn,8),b(hz,8),Di("tabindex"))},t.\u0275cmp=Ae({type:t,selectors:[["mat-radio-button"]],hostAttrs:[1,"mat-radio-button"],hostVars:17,hostBindings:function(e,i){1&e&&N("focus",function(){return i._inputElement.nativeElement.focus()}),2&e&&(et("tabindex",null)("id",i.id)("aria-label",null)("aria-labelledby",null)("aria-describedby",null),rt("mat-radio-checked",i.checked)("mat-radio-disabled",i.disabled)("_mat-animation-noopable",i._noopAnimations)("mat-primary","primary"===i.color)("mat-accent","accent"===i.color)("mat-warn","warn"===i.color))},inputs:{disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matRadioButton"],features:[Ce],ngContentSelectors:uz,decls:13,vars:19,consts:[[1,"mat-radio-label"],["label",""],[1,"mat-radio-container"],[1,"mat-radio-outer-circle"],[1,"mat-radio-inner-circle"],["type","radio",1,"mat-radio-input",3,"id","checked","disabled","required","change","click"],["input",""],["mat-ripple","",1,"mat-radio-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-radio-persistent-ripple"],[1,"mat-radio-label-content"],[2,"display","none"]],template:function(e,i){if(1&e&&(Jt(),d(0,"label",0,1)(2,"span",2),E(3,"span",3)(4,"span",4),d(5,"input",5,6),N("change",function(r){return i._onInputInteraction(r)})("click",function(r){return i._onInputClick(r)}),c(),d(7,"span",7),E(8,"span",8),c()(),d(9,"span",9)(10,"span",10),h(11,"\xa0"),c(),ct(12),c()()),2&e){const o=$t(1);et("for",i.inputId),f(5),m("id",i.inputId)("checked",i.checked)("disabled",i.disabled)("required",i.required),et("name",i.name)("value",i.value)("aria-label",i.ariaLabel)("aria-labelledby",i.ariaLabelledby)("aria-describedby",i.ariaDescribedby),f(2),m("matRippleTrigger",o)("matRippleDisabled",i._isRippleDisabled())("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",Kt(17,dz,i._noopAnimations?0:150)),f(2),rt("mat-radio-label-before","before"==i.labelPosition)}},directives:[or],styles:[".mat-radio-button{display:inline-block;-webkit-tap-highlight-color:transparent;outline:0}.mat-radio-label{-webkit-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%}.mat-radio-container{box-sizing:border-box;display:inline-block;position:relative;width:20px;height:20px;flex-shrink:0}.mat-radio-outer-circle{box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;transition:border-color ease 280ms;width:20px;border-width:2px;border-style:solid;border-radius:50%}._mat-animation-noopable .mat-radio-outer-circle{transition:none}.mat-radio-inner-circle{border-radius:50%;box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;opacity:0;transition:transform ease 280ms,background-color ease 280ms,opacity linear 1ms 280ms;width:20px;transform:scale(0.001);-webkit-print-color-adjust:exact;color-adjust:exact}.mat-radio-checked .mat-radio-inner-circle{transform:scale(0.5);opacity:1;transition:transform ease 280ms,background-color ease 280ms}.cdk-high-contrast-active .mat-radio-checked .mat-radio-inner-circle{border:solid 10px}._mat-animation-noopable .mat-radio-inner-circle{transition:none}.mat-radio-label-content{-webkit-user-select:auto;user-select:auto;display:inline-block;order:0;line-height:inherit;padding-left:8px;padding-right:0}[dir=rtl] .mat-radio-label-content{padding-right:8px;padding-left:0}.mat-radio-label-content.mat-radio-label-before{order:-1;padding-left:0;padding-right:8px}[dir=rtl] .mat-radio-label-content.mat-radio-label-before{padding-right:0;padding-left:8px}.mat-radio-disabled,.mat-radio-disabled .mat-radio-label{cursor:default}.mat-radio-button .mat-radio-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-radio-button .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple){opacity:.16}.mat-radio-persistent-ripple{width:100%;height:100%;transform:none;top:0;left:0}.mat-radio-container:hover .mat-radio-persistent-ripple{opacity:.04}.mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-persistent-ripple,.mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-persistent-ripple{opacity:.12}.mat-radio-persistent-ripple,.mat-radio-disabled .mat-radio-container:hover .mat-radio-persistent-ripple{opacity:0}@media(hover: none){.mat-radio-container:hover .mat-radio-persistent-ripple{display:none}}.mat-radio-input{opacity:0;position:absolute;top:0;left:0;margin:0;width:100%;height:100%;cursor:inherit;z-index:-1}.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-ripple,.cdk-high-contrast-active .mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-ripple{outline:solid 3px}.cdk-high-contrast-active .mat-radio-disabled{opacity:.5}\n"],encapsulation:2,changeDetection:0}),t})(),vz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[fa,ft],ft]}),t})();class yz{constructor(n,e){this._document=e;const i=this._textarea=this._document.createElement("textarea"),o=i.style;o.position="fixed",o.top=o.opacity="0",o.left="-999em",i.setAttribute("aria-hidden","true"),i.value=n,this._document.body.appendChild(i)}copy(){const n=this._textarea;let e=!1;try{if(n){const i=this._document.activeElement;n.select(),n.setSelectionRange(0,n.value.length),e=this._document.execCommand("copy"),i&&i.focus()}}catch(i){}return e}destroy(){const n=this._textarea;n&&(n.remove(),this._textarea=void 0)}}let Cz=(()=>{class t{constructor(e){this._document=e}copy(e){const i=this.beginCopy(e),o=i.copy();return i.destroy(),o}beginCopy(e){return new yz(e,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Q(ht))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const wz=new _e("CDK_COPY_TO_CLIPBOARD_CONFIG");let fv=(()=>{class t{constructor(e,i,o){this._clipboard=e,this._ngZone=i,this.text="",this.attempts=1,this.copied=new Pe,this._pending=new Set,o&&null!=o.attempts&&(this.attempts=o.attempts)}copy(e=this.attempts){if(e>1){let i=e;const o=this._clipboard.beginCopy(this.text);this._pending.add(o);const r=()=>{const s=o.copy();s||!--i||this._destroyed?(this._currentTimeout=null,this._pending.delete(o),o.destroy(),this.copied.emit(s)):this._currentTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(r,1))};r()}else this.copied.emit(this._clipboard.copy(this.text))}ngOnDestroy(){this._currentTimeout&&clearTimeout(this._currentTimeout),this._pending.forEach(e=>e.destroy()),this._pending.clear(),this._destroyed=!0}}return t.\u0275fac=function(e){return new(e||t)(b(Cz),b(Je),b(wz,8))},t.\u0275dir=oe({type:t,selectors:[["","cdkCopyToClipboard",""]],hostBindings:function(e,i){1&e&&N("click",function(){return i.copy()})},inputs:{text:["cdkCopyToClipboard","text"],attempts:["cdkCopyToClipboardAttempts","attempts"]},outputs:{copied:"cdkCopyToClipboardCopied"}}),t})(),Dz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();const kp=R(t=>function(){t(this),this.name="EmptyError",this.message="no elements in sequence"});function oE(){return nt((t,n)=>{let e=null;t._refCount++;const i=st(n,void 0,void 0,void 0,()=>{if(!t||t._refCount<=0||0<--t._refCount)return void(e=null);const o=t._connection,r=e;e=null,o&&(!r||o===r)&&o.unsubscribe(),n.unsubscribe()});t.subscribe(i),i.closed||(e=t.connect())})}class Sz extends Ue{constructor(n,e){super(),this.source=n,this.subjectFactory=e,this._subject=null,this._refCount=0,this._connection=null,ei(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,null==n||n.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new k;const e=this.getSubject();n.add(this.source.subscribe(st(e,void 0,()=>{this._teardown(),e.complete()},i=>{this._teardown(),e.error(i)},()=>this._teardown()))),n.closed&&(this._connection=null,n=k.EMPTY)}return n}refCount(){return oE()(this)}}function Mz(t,n,e,i,o){return(r,s)=>{let a=e,l=n,u=0;r.subscribe(st(s,p=>{const g=u++;l=a?t(l,p,g):(a=!0,p),i&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}function rE(t,n){return nt(Mz(t,n,arguments.length>=2,!0))}function mv(t){return t<=0?()=>Co:nt((n,e)=>{let i=[];n.subscribe(st(e,o=>{i.push(o),t{for(const o of i)e.next(o);e.complete()},void 0,()=>{i=null}))})}function sE(t=xz){return nt((n,e)=>{let i=!1;n.subscribe(st(e,o=>{i=!0,e.next(o)},()=>i?e.complete():e.error(t())))})}function xz(){return new kp}function aE(t){return nt((n,e)=>{let i=!1;n.subscribe(st(e,o=>{i=!0,e.next(o)},()=>{i||e.next(t),e.complete()}))})}function Hl(t,n){const e=arguments.length>=2;return i=>i.pipe(t?It((o,r)=>t(o,r,i)):Me,Ot(1),e?aE(n):sE(()=>new kp))}class is{constructor(n,e){this.id=n,this.url=e}}class gv extends is{constructor(n,e,i="imperative",o=null){super(n,e),this.navigationTrigger=i,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Ed extends is{constructor(n,e,i){super(n,e),this.urlAfterRedirects=i}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class lE extends is{constructor(n,e,i){super(n,e),this.reason=i}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class kz extends is{constructor(n,e,i){super(n,e),this.error=i}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class Ez extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Iz extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Oz extends is{constructor(n,e,i,o,r){super(n,e),this.urlAfterRedirects=i,this.state=o,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class Az extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Pz extends is{constructor(n,e,i,o){super(n,e),this.urlAfterRedirects=i,this.state=o}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class cE{constructor(n){this.route=n}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class dE{constructor(n){this.route=n}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class Rz{constructor(n){this.snapshot=n}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Fz{constructor(n){this.snapshot=n}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Nz{constructor(n){this.snapshot=n}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Lz{constructor(n){this.snapshot=n}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class uE{constructor(n,e,i){this.routerEvent=n,this.position=e,this.anchor=i}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}const Nt="primary";class Bz{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const e=this.params[n];return Array.isArray(e)?e[0]:e}return null}getAll(n){if(this.has(n)){const e=this.params[n];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function Ul(t){return new Bz(t)}const hE="ngNavigationCancelingError";function _v(t){const n=Error("NavigationCancelingError: "+t);return n[hE]=!0,n}function jz(t,n,e){const i=e.path.split("/");if(i.length>t.length||"full"===e.pathMatch&&(n.hasChildren()||i.lengthi[r]===o)}return t===n}function fE(t){return Array.prototype.concat.apply([],t)}function mE(t){return t.length>0?t[t.length-1]:null}function vi(t,n){for(const e in t)t.hasOwnProperty(e)&&n(t[e],e)}function xr(t){return $m(t)?t:xc(t)?ti(Promise.resolve(t)):Ge(t)}const zz={exact:function bE(t,n,e){if(!ya(t.segments,n.segments)||!Ep(t.segments,n.segments,e)||t.numberOfChildren!==n.numberOfChildren)return!1;for(const i in n.children)if(!t.children[i]||!bE(t.children[i],n.children[i],e))return!1;return!0},subset:vE},gE={exact:function $z(t,n){return Mr(t,n)},subset:function Gz(t,n){return Object.keys(n).length<=Object.keys(t).length&&Object.keys(n).every(e=>pE(t[e],n[e]))},ignored:()=>!0};function _E(t,n,e){return zz[e.paths](t.root,n.root,e.matrixParams)&&gE[e.queryParams](t.queryParams,n.queryParams)&&!("exact"===e.fragment&&t.fragment!==n.fragment)}function vE(t,n,e){return yE(t,n,n.segments,e)}function yE(t,n,e,i){if(t.segments.length>e.length){const o=t.segments.slice(0,e.length);return!(!ya(o,e)||n.hasChildren()||!Ep(o,e,i))}if(t.segments.length===e.length){if(!ya(t.segments,e)||!Ep(t.segments,e,i))return!1;for(const o in n.children)if(!t.children[o]||!vE(t.children[o],n.children[o],i))return!1;return!0}{const o=e.slice(0,t.segments.length),r=e.slice(t.segments.length);return!!(ya(t.segments,o)&&Ep(t.segments,o,i)&&t.children[Nt])&&yE(t.children[Nt],n,r,i)}}function Ep(t,n,e){return n.every((i,o)=>gE[e](t[o].parameters,i.parameters))}class va{constructor(n,e,i){this.root=n,this.queryParams=e,this.fragment=i}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Ul(this.queryParams)),this._queryParamMap}toString(){return Kz.serialize(this)}}class Ut{constructor(n,e){this.segments=n,this.children=e,this.parent=null,vi(e,(i,o)=>i.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Ip(this)}}class Id{constructor(n,e){this.path=n,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=Ul(this.parameters)),this._parameterMap}toString(){return ME(this)}}function ya(t,n){return t.length===n.length&&t.every((e,i)=>e.path===n[i].path)}class CE{}class wE{parse(n){const e=new i$(n);return new va(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(n){const e=`/${Od(n.root,!0)}`,i=function Yz(t){const n=Object.keys(t).map(e=>{const i=t[e];return Array.isArray(i)?i.map(o=>`${Op(e)}=${Op(o)}`).join("&"):`${Op(e)}=${Op(i)}`}).filter(e=>!!e);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${e}${i}${"string"==typeof n.fragment?`#${function Zz(t){return encodeURI(t)}(n.fragment)}`:""}`}}const Kz=new wE;function Ip(t){return t.segments.map(n=>ME(n)).join("/")}function Od(t,n){if(!t.hasChildren())return Ip(t);if(n){const e=t.children[Nt]?Od(t.children[Nt],!1):"",i=[];return vi(t.children,(o,r)=>{r!==Nt&&i.push(`${r}:${Od(o,!1)}`)}),i.length>0?`${e}(${i.join("//")})`:e}{const e=function qz(t,n){let e=[];return vi(t.children,(i,o)=>{o===Nt&&(e=e.concat(n(i,o)))}),vi(t.children,(i,o)=>{o!==Nt&&(e=e.concat(n(i,o)))}),e}(t,(i,o)=>o===Nt?[Od(t.children[Nt],!1)]:[`${o}:${Od(i,!1)}`]);return 1===Object.keys(t.children).length&&null!=t.children[Nt]?`${Ip(t)}/${e[0]}`:`${Ip(t)}/(${e.join("//")})`}}function DE(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Op(t){return DE(t).replace(/%3B/gi,";")}function bv(t){return DE(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Ap(t){return decodeURIComponent(t)}function SE(t){return Ap(t.replace(/\+/g,"%20"))}function ME(t){return`${bv(t.path)}${function Qz(t){return Object.keys(t).map(n=>`;${bv(n)}=${bv(t[n])}`).join("")}(t.parameters)}`}const Xz=/^[^\/()?;=#]+/;function Pp(t){const n=t.match(Xz);return n?n[0]:""}const Jz=/^[^=?&#]+/,t$=/^[^&#]+/;class i${constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new Ut([],{}):new Ut([],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 e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let i={};return this.peekStartsWith("(")&&(i=this.parseParens(!1)),(n.length>0||Object.keys(e).length>0)&&(i[Nt]=new Ut(n,e)),i}parseSegment(){const n=Pp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(n),new Id(Ap(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const e=Pp(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){const o=Pp(this.remaining);o&&(i=o,this.capture(i))}n[Ap(e)]=Ap(i)}parseQueryParam(n){const e=function e$(t){const n=t.match(Jz);return n?n[0]:""}(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){const s=function n$(t){const n=t.match(t$);return n?n[0]:""}(this.remaining);s&&(i=s,this.capture(i))}const o=SE(e),r=SE(i);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(r)}else n[o]=r}parseParens(n){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const i=Pp(this.remaining),o=this.remaining[i.length];if("/"!==o&&")"!==o&&";"!==o)throw new Error(`Cannot parse url '${this.url}'`);let r;i.indexOf(":")>-1?(r=i.substr(0,i.indexOf(":")),this.capture(r),this.capture(":")):n&&(r=Nt);const s=this.parseChildren();e[r]=1===Object.keys(s).length?s[Nt]:new Ut([],s),this.consumeOptional("//")}return e}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 Error(`Expected "${n}".`)}}class xE{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const e=this.pathFromRoot(n);return e.length>1?e[e.length-2]:null}children(n){const e=vv(n,this._root);return e?e.children.map(i=>i.value):[]}firstChild(n){const e=vv(n,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(n){const e=yv(n,this._root);return e.length<2?[]:e[e.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return yv(n,this._root).map(e=>e.value)}}function vv(t,n){if(t===n.value)return n;for(const e of n.children){const i=vv(t,e);if(i)return i}return null}function yv(t,n){if(t===n.value)return[n];for(const e of n.children){const i=yv(t,e);if(i.length)return i.unshift(n),i}return[]}class os{constructor(n,e){this.value=n,this.children=e}toString(){return`TreeNode(${this.value})`}}function zl(t){const n={};return t&&t.children.forEach(e=>n[e.value.outlet]=e),n}class TE extends xE{constructor(n,e){super(n),this.snapshot=e,Cv(this,n)}toString(){return this.snapshot.toString()}}function kE(t,n){const e=function o$(t,n){const s=new Rp([],{},{},"",{},Nt,n,null,t.root,-1,{});return new IE("",new os(s,[]))}(t,n),i=new vt([new Id("",{})]),o=new vt({}),r=new vt({}),s=new vt({}),a=new vt(""),l=new $l(i,o,s,a,r,Nt,n,e.root);return l.snapshot=e.root,new TE(new os(l,[]),e)}class $l{constructor(n,e,i,o,r,s,a,l){this.url=n,this.params=e,this.queryParams=i,this.fragment=o,this.data=r,this.outlet=s,this.component=a,this._futureSnapshot=l}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(je(n=>Ul(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(je(n=>Ul(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function EE(t,n="emptyOnly"){const e=t.pathFromRoot;let i=0;if("always"!==n)for(i=e.length-1;i>=1;){const o=e[i],r=e[i-1];if(o.routeConfig&&""===o.routeConfig.path)i--;else{if(r.component)break;i--}}return function r$(t){return t.reduce((n,e)=>({params:Object.assign(Object.assign({},n.params),e.params),data:Object.assign(Object.assign({},n.data),e.data),resolve:Object.assign(Object.assign({},n.resolve),e._resolvedData)}),{params:{},data:{},resolve:{}})}(e.slice(i))}class Rp{constructor(n,e,i,o,r,s,a,l,u,p,g){this.url=n,this.params=e,this.queryParams=i,this.fragment=o,this.data=r,this.outlet=s,this.component=a,this.routeConfig=l,this._urlSegment=u,this._lastPathIndex=p,this._resolve=g}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=Ul(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Ul(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(i=>i.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class IE extends xE{constructor(n,e){super(e),this.url=n,Cv(this,e)}toString(){return OE(this._root)}}function Cv(t,n){n.value._routerState=t,n.children.forEach(e=>Cv(t,e))}function OE(t){const n=t.children.length>0?` { ${t.children.map(OE).join(", ")} } `:"";return`${t.value}${n}`}function wv(t){if(t.snapshot){const n=t.snapshot,e=t._futureSnapshot;t.snapshot=e,Mr(n.queryParams,e.queryParams)||t.queryParams.next(e.queryParams),n.fragment!==e.fragment&&t.fragment.next(e.fragment),Mr(n.params,e.params)||t.params.next(e.params),function Hz(t,n){if(t.length!==n.length)return!1;for(let e=0;eMr(e.parameters,n[i].parameters))}(t.url,n.url);return e&&!(!t.parent!=!n.parent)&&(!t.parent||Dv(t.parent,n.parent))}function Ad(t,n,e){if(e&&t.shouldReuseRoute(n.value,e.value.snapshot)){const i=e.value;i._futureSnapshot=n.value;const o=function a$(t,n,e){return n.children.map(i=>{for(const o of e.children)if(t.shouldReuseRoute(i.value,o.value.snapshot))return Ad(t,i,o);return Ad(t,i)})}(t,n,e);return new os(i,o)}{if(t.shouldAttach(n.value)){const r=t.retrieve(n.value);if(null!==r){const s=r.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>Ad(t,a)),s}}const i=function l$(t){return new $l(new vt(t.url),new vt(t.params),new vt(t.queryParams),new vt(t.fragment),new vt(t.data),t.outlet,t.component,t)}(n.value),o=n.children.map(r=>Ad(t,r));return new os(i,o)}}function Fp(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function Pd(t){return"object"==typeof t&&null!=t&&t.outlets}function Sv(t,n,e,i,o){let r={};if(i&&vi(i,(a,l)=>{r[l]=Array.isArray(a)?a.map(u=>`${u}`):`${a}`}),t===n)return new va(e,r,o);const s=AE(t,n,e);return new va(s,r,o)}function AE(t,n,e){const i={};return vi(t.children,(o,r)=>{i[r]=o===n?e:AE(o,n,e)}),new Ut(t.segments,i)}class PE{constructor(n,e,i){if(this.isAbsolute=n,this.numberOfDoubleDots=e,this.commands=i,n&&i.length>0&&Fp(i[0]))throw new Error("Root segment cannot have matrix parameters");const o=i.find(Pd);if(o&&o!==mE(i))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Mv{constructor(n,e,i){this.segmentGroup=n,this.processChildren=e,this.index=i}}function RE(t,n,e){if(t||(t=new Ut([],{})),0===t.segments.length&&t.hasChildren())return Np(t,n,e);const i=function f$(t,n,e){let i=0,o=n;const r={match:!1,pathIndex:0,commandIndex:0};for(;o=e.length)return r;const s=t.segments[o],a=e[i];if(Pd(a))break;const l=`${a}`,u=i0&&void 0===l)break;if(l&&u&&"object"==typeof u&&void 0===u.outlets){if(!NE(l,u,s))return r;i+=2}else{if(!NE(l,{},s))return r;i++}o++}return{match:!0,pathIndex:o,commandIndex:i}}(t,n,e),o=e.slice(i.commandIndex);if(i.match&&i.pathIndex{"string"==typeof r&&(r=[r]),null!==r&&(o[s]=RE(t.children[s],n,r))}),vi(t.children,(r,s)=>{void 0===i[s]&&(o[s]=r)}),new Ut(t.segments,o)}}function xv(t,n,e){const i=t.segments.slice(0,n);let o=0;for(;o{"string"==typeof e&&(e=[e]),null!==e&&(n[i]=xv(new Ut([],{}),0,e))}),n}function FE(t){const n={};return vi(t,(e,i)=>n[i]=`${e}`),n}function NE(t,n,e){return t==e.path&&Mr(n,e.parameters)}class _${constructor(n,e,i,o){this.routeReuseStrategy=n,this.futureState=e,this.currState=i,this.forwardEvent=o}activate(n){const e=this.futureState._root,i=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,i,n),wv(this.futureState.root),this.activateChildRoutes(e,i,n)}deactivateChildRoutes(n,e,i){const o=zl(e);n.children.forEach(r=>{const s=r.value.outlet;this.deactivateRoutes(r,o[s],i),delete o[s]}),vi(o,(r,s)=>{this.deactivateRouteAndItsChildren(r,i)})}deactivateRoutes(n,e,i){const o=n.value,r=e?e.value:null;if(o===r)if(o.component){const s=i.getContext(o.outlet);s&&this.deactivateChildRoutes(n,e,s.children)}else this.deactivateChildRoutes(n,e,i);else r&&this.deactivateRouteAndItsChildren(e,i)}deactivateRouteAndItsChildren(n,e){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,e):this.deactivateRouteAndOutlet(n,e)}detachAndStoreRouteSubtree(n,e){const i=e.getContext(n.value.outlet),o=i&&n.value.component?i.children:e,r=zl(n);for(const s of Object.keys(r))this.deactivateRouteAndItsChildren(r[s],o);if(i&&i.outlet){const s=i.outlet.detach(),a=i.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,e){const i=e.getContext(n.value.outlet),o=i&&n.value.component?i.children:e,r=zl(n);for(const s of Object.keys(r))this.deactivateRouteAndItsChildren(r[s],o);i&&i.outlet&&(i.outlet.deactivate(),i.children.onOutletDeactivated(),i.attachRef=null,i.resolver=null,i.route=null)}activateChildRoutes(n,e,i){const o=zl(e);n.children.forEach(r=>{this.activateRoutes(r,o[r.value.outlet],i),this.forwardEvent(new Lz(r.value.snapshot))}),n.children.length&&this.forwardEvent(new Fz(n.value.snapshot))}activateRoutes(n,e,i){const o=n.value,r=e?e.value:null;if(wv(o),o===r)if(o.component){const s=i.getOrCreateContext(o.outlet);this.activateChildRoutes(n,e,s.children)}else this.activateChildRoutes(n,e,i);else if(o.component){const s=i.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),wv(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=function b$(t){for(let n=t.parent;n;n=n.parent){const e=n.routeConfig;if(e&&e._loadedConfig)return e._loadedConfig;if(e&&e.component)return null}return null}(o.snapshot),l=a?a.module.componentFactoryResolver:null;s.attachRef=null,s.route=o,s.resolver=l,s.outlet&&s.outlet.activateWith(o,l),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,i)}}class Tv{constructor(n,e){this.routes=n,this.module=e}}function Ls(t){return"function"==typeof t}function Ca(t){return t instanceof va}const Rd=Symbol("INITIAL_VALUE");function Fd(){return Bi(t=>Tk(t.map(n=>n.pipe(Ot(1),Nn(Rd)))).pipe(rE((n,e)=>{let i=!1;return e.reduce((o,r,s)=>o!==Rd?o:(r===Rd&&(i=!0),i||!1!==r&&s!==e.length-1&&!Ca(r)?o:r),n)},Rd),It(n=>n!==Rd),je(n=>Ca(n)?n:!0===n),Ot(1)))}class S${constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new Nd,this.attachRef=null}}class Nd{constructor(){this.contexts=new Map}onChildOutletCreated(n,e){const i=this.getOrCreateContext(n);i.outlet=e,this.contexts.set(n,i)}onChildOutletDestroyed(n){const e=this.getContext(n);e&&(e.outlet=null,e.attachRef=null)}onOutletDeactivated(){const n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let e=this.getContext(n);return e||(e=new S$,this.contexts.set(n,e)),e}getContext(n){return this.contexts.get(n)||null}}let Lp=(()=>{class t{constructor(e,i,o,r,s){this.parentContexts=e,this.location=i,this.resolver=o,this.changeDetector=s,this.activated=null,this._activatedRoute=null,this.activateEvents=new Pe,this.deactivateEvents=new Pe,this.attachEvents=new Pe,this.detachEvents=new Pe,this.name=r||Nt,e.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const e=this.parentContexts.getContext(this.name);e&&e.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,i){this.activated=e,this._activatedRoute=i,this.location.insert(e.hostView),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){const e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,i){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=e;const s=(i=i||this.resolver).resolveComponentFactory(e._futureSnapshot.routeConfig.component),a=this.parentContexts.getOrCreateContext(this.name).children,l=new M$(e,a,this.location.injector);this.activated=this.location.createComponent(s,this.location.length,l),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}return t.\u0275fac=function(e){return new(e||t)(b(Nd),b(sn),b(gs),Di("name"),b(At))},t.\u0275dir=oe({type:t,selectors:[["router-outlet"]],outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"]}),t})();class M${constructor(n,e,i){this.route=n,this.childContexts=e,this.parent=i}get(n,e){return n===$l?this.route:n===Nd?this.childContexts:this.parent.get(n,e)}}let LE=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["ng-component"]],decls:1,vars:0,template:function(e,i){1&e&&E(0,"router-outlet")},directives:[Lp],encapsulation:2}),t})();function BE(t,n=""){for(let e=0;eNo(i)===n);return e.push(...t.filter(i=>No(i)!==n)),e}const jE={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function Bp(t,n,e){var i;if(""===n.path)return"full"===n.pathMatch&&(t.hasChildren()||e.length>0)?Object.assign({},jE):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};const r=(n.matcher||jz)(e,t,n);if(!r)return Object.assign({},jE);const s={};vi(r.posParams,(l,u)=>{s[u]=l.path});const a=r.consumed.length>0?Object.assign(Object.assign({},s),r.consumed[r.consumed.length-1].parameters):s;return{matched:!0,consumedSegments:r.consumed,remainingSegments:e.slice(r.consumed.length),parameters:a,positionalParamSegments:null!==(i=r.posParams)&&void 0!==i?i:{}}}function Vp(t,n,e,i,o="corrected"){if(e.length>0&&function I$(t,n,e){return e.some(i=>jp(t,n,i)&&No(i)!==Nt)}(t,e,i)){const s=new Ut(n,function E$(t,n,e,i){const o={};o[Nt]=i,i._sourceSegment=t,i._segmentIndexShift=n.length;for(const r of e)if(""===r.path&&No(r)!==Nt){const s=new Ut([],{});s._sourceSegment=t,s._segmentIndexShift=n.length,o[No(r)]=s}return o}(t,n,i,new Ut(e,t.children)));return s._sourceSegment=t,s._segmentIndexShift=n.length,{segmentGroup:s,slicedSegments:[]}}if(0===e.length&&function O$(t,n,e){return e.some(i=>jp(t,n,i))}(t,e,i)){const s=new Ut(t.segments,function k$(t,n,e,i,o,r){const s={};for(const a of i)if(jp(t,e,a)&&!o[No(a)]){const l=new Ut([],{});l._sourceSegment=t,l._segmentIndexShift="legacy"===r?t.segments.length:n.length,s[No(a)]=l}return Object.assign(Object.assign({},o),s)}(t,n,e,i,t.children,o));return s._sourceSegment=t,s._segmentIndexShift=n.length,{segmentGroup:s,slicedSegments:e}}const r=new Ut(t.segments,t.children);return r._sourceSegment=t,r._segmentIndexShift=n.length,{segmentGroup:r,slicedSegments:e}}function jp(t,n,e){return(!(t.hasChildren()||n.length>0)||"full"!==e.pathMatch)&&""===e.path}function HE(t,n,e,i){return!!(No(t)===i||i!==Nt&&jp(n,e,t))&&("**"===t.path||Bp(n,t,e).matched)}function UE(t,n,e){return 0===n.length&&!t.children[e]}class Hp{constructor(n){this.segmentGroup=n||null}}class zE{constructor(n){this.urlTree=n}}function Ld(t){return sd(new Hp(t))}function $E(t){return sd(new zE(t))}class F${constructor(n,e,i,o,r){this.configLoader=e,this.urlSerializer=i,this.urlTree=o,this.config=r,this.allowRedirects=!0,this.ngModule=n.get(Br)}apply(){const n=Vp(this.urlTree.root,[],[],this.config).segmentGroup,e=new Ut(n.segments,n.children);return this.expandSegmentGroup(this.ngModule,this.config,e,Nt).pipe(je(r=>this.createUrlTree(Ev(r),this.urlTree.queryParams,this.urlTree.fragment))).pipe(_n(r=>{if(r instanceof zE)return this.allowRedirects=!1,this.match(r.urlTree);throw r instanceof Hp?this.noMatchError(r):r}))}match(n){return this.expandSegmentGroup(this.ngModule,this.config,n.root,Nt).pipe(je(o=>this.createUrlTree(Ev(o),n.queryParams,n.fragment))).pipe(_n(o=>{throw o instanceof Hp?this.noMatchError(o):o}))}noMatchError(n){return new Error(`Cannot match any routes. URL Segment: '${n.segmentGroup}'`)}createUrlTree(n,e,i){const o=n.segments.length>0?new Ut([],{[Nt]:n}):n;return new va(o,e,i)}expandSegmentGroup(n,e,i,o){return 0===i.segments.length&&i.hasChildren()?this.expandChildren(n,e,i).pipe(je(r=>new Ut([],r))):this.expandSegment(n,i,e,i.segments,o,!0)}expandChildren(n,e,i){const o=[];for(const r of Object.keys(i.children))"primary"===r?o.unshift(r):o.push(r);return ti(o).pipe(xl(r=>{const s=i.children[r],a=VE(e,r);return this.expandSegmentGroup(n,a,s,r).pipe(je(l=>({segment:l,outlet:r})))}),rE((r,s)=>(r[s.outlet]=s.segment,r),{}),function Tz(t,n){const e=arguments.length>=2;return i=>i.pipe(t?It((o,r)=>t(o,r,i)):Me,mv(1),e?aE(n):sE(()=>new kp))}())}expandSegment(n,e,i,o,r,s){return ti(i).pipe(xl(a=>this.expandSegmentAgainstRoute(n,e,i,a,o,r,s).pipe(_n(u=>{if(u instanceof Hp)return Ge(null);throw u}))),Hl(a=>!!a),_n((a,l)=>{if(a instanceof kp||"EmptyError"===a.name)return UE(e,o,r)?Ge(new Ut([],{})):Ld(e);throw a}))}expandSegmentAgainstRoute(n,e,i,o,r,s,a){return HE(o,e,r,s)?void 0===o.redirectTo?this.matchSegmentAgainstRoute(n,e,o,r,s):a&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s):Ld(e):Ld(e)}expandSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s){return"**"===o.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(n,i,o,s):this.expandRegularSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s)}expandWildCardWithParamsAgainstRouteUsingRedirect(n,e,i,o){const r=this.applyRedirectCommands([],i.redirectTo,{});return i.redirectTo.startsWith("/")?$E(r):this.lineralizeSegments(i,r).pipe($n(s=>{const a=new Ut(s,{});return this.expandSegment(n,a,e,s,o,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(n,e,i,o,r,s){const{matched:a,consumedSegments:l,remainingSegments:u,positionalParamSegments:p}=Bp(e,o,r);if(!a)return Ld(e);const g=this.applyRedirectCommands(l,o.redirectTo,p);return o.redirectTo.startsWith("/")?$E(g):this.lineralizeSegments(o,g).pipe($n(v=>this.expandSegment(n,e,i,v.concat(u),s,!1)))}matchSegmentAgainstRoute(n,e,i,o,r){if("**"===i.path)return i.loadChildren?(i._loadedConfig?Ge(i._loadedConfig):this.configLoader.load(n.injector,i)).pipe(je(g=>(i._loadedConfig=g,new Ut(o,{})))):Ge(new Ut(o,{}));const{matched:s,consumedSegments:a,remainingSegments:l}=Bp(e,i,o);return s?this.getChildConfig(n,i,o).pipe($n(p=>{const g=p.module,v=p.routes,{segmentGroup:C,slicedSegments:M}=Vp(e,a,l,v),V=new Ut(C.segments,C.children);if(0===M.length&&V.hasChildren())return this.expandChildren(g,v,V).pipe(je(ke=>new Ut(a,ke)));if(0===v.length&&0===M.length)return Ge(new Ut(a,{}));const K=No(i)===r;return this.expandSegment(g,V,v,M,K?Nt:r,!0).pipe(je(ee=>new Ut(a.concat(ee.segments),ee.children)))})):Ld(e)}getChildConfig(n,e,i){return e.children?Ge(new Tv(e.children,n)):e.loadChildren?void 0!==e._loadedConfig?Ge(e._loadedConfig):this.runCanLoadGuards(n.injector,e,i).pipe($n(o=>o?this.configLoader.load(n.injector,e).pipe(je(r=>(e._loadedConfig=r,r))):function P$(t){return sd(_v(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`))}(e))):Ge(new Tv([],n))}runCanLoadGuards(n,e,i){const o=e.canLoad;return o&&0!==o.length?Ge(o.map(s=>{const a=n.get(s);let l;if(function y$(t){return t&&Ls(t.canLoad)}(a))l=a.canLoad(e,i);else{if(!Ls(a))throw new Error("Invalid CanLoad guard");l=a(e,i)}return xr(l)})).pipe(Fd(),Zt(s=>{if(!Ca(s))return;const a=_v(`Redirecting to "${this.urlSerializer.serialize(s)}"`);throw a.url=s,a}),je(s=>!0===s)):Ge(!0)}lineralizeSegments(n,e){let i=[],o=e.root;for(;;){if(i=i.concat(o.segments),0===o.numberOfChildren)return Ge(i);if(o.numberOfChildren>1||!o.children[Nt])return sd(new Error(`Only absolute redirects can have named outlets. redirectTo: '${n.redirectTo}'`));o=o.children[Nt]}}applyRedirectCommands(n,e,i){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),n,i)}applyRedirectCreatreUrlTree(n,e,i,o){const r=this.createSegmentGroup(n,e.root,i,o);return new va(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(n,e){const i={};return vi(n,(o,r)=>{if("string"==typeof o&&o.startsWith(":")){const a=o.substring(1);i[r]=e[a]}else i[r]=o}),i}createSegmentGroup(n,e,i,o){const r=this.createSegments(n,e.segments,i,o);let s={};return vi(e.children,(a,l)=>{s[l]=this.createSegmentGroup(n,a,i,o)}),new Ut(r,s)}createSegments(n,e,i,o){return e.map(r=>r.path.startsWith(":")?this.findPosParam(n,r,o):this.findOrReturn(r,i))}findPosParam(n,e,i){const o=i[e.path.substring(1)];if(!o)throw new Error(`Cannot redirect to '${n}'. Cannot find '${e.path}'.`);return o}findOrReturn(n,e){let i=0;for(const o of e){if(o.path===n.path)return e.splice(i),o;i++}return n}}function Ev(t){const n={};for(const i of Object.keys(t.children)){const r=Ev(t.children[i]);(r.segments.length>0||r.hasChildren())&&(n[i]=r)}return function N$(t){if(1===t.numberOfChildren&&t.children[Nt]){const n=t.children[Nt];return new Ut(t.segments.concat(n.segments),n.children)}return t}(new Ut(t.segments,n))}class GE{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Up{constructor(n,e){this.component=n,this.route=e}}function B$(t,n,e){const i=t._root;return Bd(i,n?n._root:null,e,[i.value])}function zp(t,n,e){const i=function j$(t){if(!t)return null;for(let n=t.parent;n;n=n.parent){const e=n.routeConfig;if(e&&e._loadedConfig)return e._loadedConfig}return null}(n);return(i?i.module.injector:e).get(t)}function Bd(t,n,e,i,o={canDeactivateChecks:[],canActivateChecks:[]}){const r=zl(n);return t.children.forEach(s=>{(function H$(t,n,e,i,o={canDeactivateChecks:[],canActivateChecks:[]}){const r=t.value,s=n?n.value:null,a=e?e.getContext(t.value.outlet):null;if(s&&r.routeConfig===s.routeConfig){const l=function U$(t,n,e){if("function"==typeof e)return e(t,n);switch(e){case"pathParamsChange":return!ya(t.url,n.url);case"pathParamsOrQueryParamsChange":return!ya(t.url,n.url)||!Mr(t.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Dv(t,n)||!Mr(t.queryParams,n.queryParams);default:return!Dv(t,n)}}(s,r,r.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new GE(i)):(r.data=s.data,r._resolvedData=s._resolvedData),Bd(t,n,r.component?a?a.children:null:e,i,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Up(a.outlet.component,s))}else s&&Vd(n,a,o),o.canActivateChecks.push(new GE(i)),Bd(t,null,r.component?a?a.children:null:e,i,o)})(s,r[s.value.outlet],e,i.concat([s.value]),o),delete r[s.value.outlet]}),vi(r,(s,a)=>Vd(s,e.getContext(a),o)),o}function Vd(t,n,e){const i=zl(t),o=t.value;vi(i,(r,s)=>{Vd(r,o.component?n?n.children.getContext(s):null:n,e)}),e.canDeactivateChecks.push(new Up(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}class Y${}function WE(t){return new Ue(n=>n.error(t))}class J${constructor(n,e,i,o,r,s){this.rootComponentType=n,this.config=e,this.urlTree=i,this.url=o,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=s}recognize(){const n=Vp(this.urlTree.root,[],[],this.config.filter(s=>void 0===s.redirectTo),this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,n,Nt);if(null===e)return null;const i=new Rp([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},Nt,this.rootComponentType,null,this.urlTree.root,-1,{}),o=new os(i,e),r=new IE(this.url,o);return this.inheritParamsAndData(r._root),r}inheritParamsAndData(n){const e=n.value,i=EE(e,this.paramsInheritanceStrategy);e.params=Object.freeze(i.params),e.data=Object.freeze(i.data),n.children.forEach(o=>this.inheritParamsAndData(o))}processSegmentGroup(n,e,i){return 0===e.segments.length&&e.hasChildren()?this.processChildren(n,e):this.processSegment(n,e,e.segments,i)}processChildren(n,e){const i=[];for(const r of Object.keys(e.children)){const s=e.children[r],a=VE(n,r),l=this.processSegmentGroup(a,s,r);if(null===l)return null;i.push(...l)}const o=qE(i);return function eG(t){t.sort((n,e)=>n.value.outlet===Nt?-1:e.value.outlet===Nt?1:n.value.outlet.localeCompare(e.value.outlet))}(o),o}processSegment(n,e,i,o){for(const r of n){const s=this.processSegmentAgainstRoute(r,e,i,o);if(null!==s)return s}return UE(e,i,o)?[]:null}processSegmentAgainstRoute(n,e,i,o){if(n.redirectTo||!HE(n,e,i,o))return null;let r,s=[],a=[];if("**"===n.path){const C=i.length>0?mE(i).parameters:{};r=new Rp(i,C,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,QE(n),No(n),n.component,n,KE(e),ZE(e)+i.length,YE(n))}else{const C=Bp(e,n,i);if(!C.matched)return null;s=C.consumedSegments,a=C.remainingSegments,r=new Rp(s,C.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,QE(n),No(n),n.component,n,KE(e),ZE(e)+s.length,YE(n))}const l=function tG(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(n),{segmentGroup:u,slicedSegments:p}=Vp(e,s,a,l.filter(C=>void 0===C.redirectTo),this.relativeLinkResolution);if(0===p.length&&u.hasChildren()){const C=this.processChildren(l,u);return null===C?null:[new os(r,C)]}if(0===l.length&&0===p.length)return[new os(r,[])];const g=No(n)===o,v=this.processSegment(l,u,p,g?Nt:o);return null===v?null:[new os(r,v)]}}function nG(t){const n=t.value.routeConfig;return n&&""===n.path&&void 0===n.redirectTo}function qE(t){const n=[],e=new Set;for(const i of t){if(!nG(i)){n.push(i);continue}const o=n.find(r=>i.value.routeConfig===r.value.routeConfig);void 0!==o?(o.children.push(...i.children),e.add(o)):n.push(i)}for(const i of e){const o=qE(i.children);n.push(new os(i.value,o))}return n.filter(i=>!e.has(i))}function KE(t){let n=t;for(;n._sourceSegment;)n=n._sourceSegment;return n}function ZE(t){let n=t,e=n._segmentIndexShift?n._segmentIndexShift:0;for(;n._sourceSegment;)n=n._sourceSegment,e+=n._segmentIndexShift?n._segmentIndexShift:0;return e-1}function QE(t){return t.data||{}}function YE(t){return t.resolve||{}}function XE(t){return[...Object.keys(t),...Object.getOwnPropertySymbols(t)]}function Iv(t){return Bi(n=>{const e=t(n);return e?ti(e).pipe(je(()=>n)):Ge(n)})}class dG extends class cG{shouldDetach(n){return!1}store(n,e){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,e){return n.routeConfig===e.routeConfig}}{}const Ov=new _e("ROUTES");class JE{constructor(n,e,i,o){this.injector=n,this.compiler=e,this.onLoadStartListener=i,this.onLoadEndListener=o}load(n,e){if(e._loader$)return e._loader$;this.onLoadStartListener&&this.onLoadStartListener(e);const o=this.loadModuleFactory(e.loadChildren).pipe(je(r=>{this.onLoadEndListener&&this.onLoadEndListener(e);const s=r.create(n);return new Tv(fE(s.injector.get(Ov,void 0,yt.Self|yt.Optional)).map(kv),s)}),_n(r=>{throw e._loader$=void 0,r}));return e._loader$=new Sz(o,()=>new ie).pipe(oE()),e._loader$}loadModuleFactory(n){return xr(n()).pipe($n(e=>e instanceof Sw?Ge(e):ti(this.compiler.compileModuleAsync(e))))}}class hG{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,e){return n}}function pG(t){throw t}function fG(t,n,e){return n.parse("/")}function eI(t,n){return Ge(null)}const mG={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},gG={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Jn=(()=>{class t{constructor(e,i,o,r,s,a,l){this.rootComponentType=e,this.urlSerializer=i,this.rootContexts=o,this.location=r,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.disposed=!1,this.navigationId=0,this.currentPageId=0,this.isNgZoneEnabled=!1,this.events=new ie,this.errorHandler=pG,this.malformedUriErrorHandler=fG,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:eI,afterPreactivation:eI},this.urlHandlingStrategy=new hG,this.routeReuseStrategy=new dG,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="corrected",this.canceledNavigationResolution="replace",this.ngModule=s.get(Br),this.console=s.get(dD);const g=s.get(Je);this.isNgZoneEnabled=g instanceof Je&&Je.isInAngularZone(),this.resetConfig(l),this.currentUrlTree=function Uz(){return new va(new Ut([],{}),{},null)}(),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new JE(s,a,v=>this.triggerEvent(new cE(v)),v=>this.triggerEvent(new dE(v))),this.routerState=kE(this.currentUrlTree,this.rootComponentType),this.transitions=new vt({id:0,targetPageId:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}get browserPageId(){var e;return null===(e=this.location.getState())||void 0===e?void 0:e.\u0275routerPageId}setupNavigations(e){const i=this.events;return e.pipe(It(o=>0!==o.id),je(o=>Object.assign(Object.assign({},o),{extractedUrl:this.urlHandlingStrategy.extract(o.rawUrl)})),Bi(o=>{let r=!1,s=!1;return Ge(o).pipe(Zt(a=>{this.currentNavigation={id:a.id,initialUrl:a.currentRawUrl,extractedUrl:a.extractedUrl,trigger:a.source,extras:a.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign(Object.assign({},this.lastSuccessfulNavigation),{previousNavigation:null}):null}}),Bi(a=>{const l=this.browserUrlTree.toString(),u=!this.navigated||a.extractedUrl.toString()!==l||l!==this.currentUrlTree.toString();if(("reload"===this.onSameUrlNavigation||u)&&this.urlHandlingStrategy.shouldProcessUrl(a.rawUrl))return tI(a.source)&&(this.browserUrlTree=a.extractedUrl),Ge(a).pipe(Bi(g=>{const v=this.transitions.getValue();return i.next(new gv(g.id,this.serializeUrl(g.extractedUrl),g.source,g.restoredState)),v!==this.transitions.getValue()?Co:Promise.resolve(g)}),function L$(t,n,e,i){return Bi(o=>function R$(t,n,e,i,o){return new F$(t,n,e,i,o).apply()}(t,n,e,o.extractedUrl,i).pipe(je(r=>Object.assign(Object.assign({},o),{urlAfterRedirects:r}))))}(this.ngModule.injector,this.configLoader,this.urlSerializer,this.config),Zt(g=>{this.currentNavigation=Object.assign(Object.assign({},this.currentNavigation),{finalUrl:g.urlAfterRedirects})}),function iG(t,n,e,i,o){return $n(r=>function X$(t,n,e,i,o="emptyOnly",r="legacy"){try{const s=new J$(t,n,e,i,o,r).recognize();return null===s?WE(new Y$):Ge(s)}catch(s){return WE(s)}}(t,n,r.urlAfterRedirects,e(r.urlAfterRedirects),i,o).pipe(je(s=>Object.assign(Object.assign({},r),{targetSnapshot:s}))))}(this.rootComponentType,this.config,g=>this.serializeUrl(g),this.paramsInheritanceStrategy,this.relativeLinkResolution),Zt(g=>{if("eager"===this.urlUpdateStrategy){if(!g.extras.skipLocationChange){const C=this.urlHandlingStrategy.merge(g.urlAfterRedirects,g.rawUrl);this.setBrowserUrl(C,g)}this.browserUrlTree=g.urlAfterRedirects}const v=new Ez(g.id,this.serializeUrl(g.extractedUrl),this.serializeUrl(g.urlAfterRedirects),g.targetSnapshot);i.next(v)}));if(u&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:v,extractedUrl:C,source:M,restoredState:V,extras:K}=a,Y=new gv(v,this.serializeUrl(C),M,V);i.next(Y);const ee=kE(C,this.rootComponentType).snapshot;return Ge(Object.assign(Object.assign({},a),{targetSnapshot:ee,urlAfterRedirects:C,extras:Object.assign(Object.assign({},K),{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=a.rawUrl,a.resolve(null),Co}),Iv(a=>{const{targetSnapshot:l,id:u,extractedUrl:p,rawUrl:g,extras:{skipLocationChange:v,replaceUrl:C}}=a;return this.hooks.beforePreactivation(l,{navigationId:u,appliedUrlTree:p,rawUrlTree:g,skipLocationChange:!!v,replaceUrl:!!C})}),Zt(a=>{const l=new Iz(a.id,this.serializeUrl(a.extractedUrl),this.serializeUrl(a.urlAfterRedirects),a.targetSnapshot);this.triggerEvent(l)}),je(a=>Object.assign(Object.assign({},a),{guards:B$(a.targetSnapshot,a.currentSnapshot,this.rootContexts)})),function z$(t,n){return $n(e=>{const{targetSnapshot:i,currentSnapshot:o,guards:{canActivateChecks:r,canDeactivateChecks:s}}=e;return 0===s.length&&0===r.length?Ge(Object.assign(Object.assign({},e),{guardsResult:!0})):function $$(t,n,e,i){return ti(t).pipe($n(o=>function Q$(t,n,e,i,o){const r=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return r&&0!==r.length?Ge(r.map(a=>{const l=zp(a,n,o);let u;if(function D$(t){return t&&Ls(t.canDeactivate)}(l))u=xr(l.canDeactivate(t,n,e,i));else{if(!Ls(l))throw new Error("Invalid CanDeactivate guard");u=xr(l(t,n,e,i))}return u.pipe(Hl())})).pipe(Fd()):Ge(!0)}(o.component,o.route,e,n,i)),Hl(o=>!0!==o,!0))}(s,i,o,t).pipe($n(a=>a&&function v$(t){return"boolean"==typeof t}(a)?function G$(t,n,e,i){return ti(n).pipe(xl(o=>id(function q$(t,n){return null!==t&&n&&n(new Rz(t)),Ge(!0)}(o.route.parent,i),function W$(t,n){return null!==t&&n&&n(new Nz(t)),Ge(!0)}(o.route,i),function Z$(t,n,e){const i=n[n.length-1],r=n.slice(0,n.length-1).reverse().map(s=>function V$(t){const n=t.routeConfig?t.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:t,guards:n}:null}(s)).filter(s=>null!==s).map(s=>wd(()=>Ge(s.guards.map(l=>{const u=zp(l,s.node,e);let p;if(function w$(t){return t&&Ls(t.canActivateChild)}(u))p=xr(u.canActivateChild(i,t));else{if(!Ls(u))throw new Error("Invalid CanActivateChild guard");p=xr(u(i,t))}return p.pipe(Hl())})).pipe(Fd())));return Ge(r).pipe(Fd())}(t,o.path,e),function K$(t,n,e){const i=n.routeConfig?n.routeConfig.canActivate:null;if(!i||0===i.length)return Ge(!0);const o=i.map(r=>wd(()=>{const s=zp(r,n,e);let a;if(function C$(t){return t&&Ls(t.canActivate)}(s))a=xr(s.canActivate(n,t));else{if(!Ls(s))throw new Error("Invalid CanActivate guard");a=xr(s(n,t))}return a.pipe(Hl())}));return Ge(o).pipe(Fd())}(t,o.route,e))),Hl(o=>!0!==o,!0))}(i,r,t,n):Ge(a)),je(a=>Object.assign(Object.assign({},e),{guardsResult:a})))})}(this.ngModule.injector,a=>this.triggerEvent(a)),Zt(a=>{if(Ca(a.guardsResult)){const u=_v(`Redirecting to "${this.serializeUrl(a.guardsResult)}"`);throw u.url=a.guardsResult,u}const l=new Oz(a.id,this.serializeUrl(a.extractedUrl),this.serializeUrl(a.urlAfterRedirects),a.targetSnapshot,!!a.guardsResult);this.triggerEvent(l)}),It(a=>!!a.guardsResult||(this.restoreHistory(a),this.cancelNavigationTransition(a,""),!1)),Iv(a=>{if(a.guards.canActivateChecks.length)return Ge(a).pipe(Zt(l=>{const u=new Az(l.id,this.serializeUrl(l.extractedUrl),this.serializeUrl(l.urlAfterRedirects),l.targetSnapshot);this.triggerEvent(u)}),Bi(l=>{let u=!1;return Ge(l).pipe(function oG(t,n){return $n(e=>{const{targetSnapshot:i,guards:{canActivateChecks:o}}=e;if(!o.length)return Ge(e);let r=0;return ti(o).pipe(xl(s=>function rG(t,n,e,i){return function sG(t,n,e,i){const o=XE(t);if(0===o.length)return Ge({});const r={};return ti(o).pipe($n(s=>function aG(t,n,e,i){const o=zp(t,n,i);return xr(o.resolve?o.resolve(n,e):o(n,e))}(t[s],n,e,i).pipe(Zt(a=>{r[s]=a}))),mv(1),$n(()=>XE(r).length===o.length?Ge(r):Co))}(t._resolve,t,n,i).pipe(je(r=>(t._resolvedData=r,t.data=Object.assign(Object.assign({},t.data),EE(t,e).resolve),null)))}(s.route,i,t,n)),Zt(()=>r++),mv(1),$n(s=>r===o.length?Ge(e):Co))})}(this.paramsInheritanceStrategy,this.ngModule.injector),Zt({next:()=>u=!0,complete:()=>{u||(this.restoreHistory(l),this.cancelNavigationTransition(l,"At least one route resolver didn't emit any value."))}}))}),Zt(l=>{const u=new Pz(l.id,this.serializeUrl(l.extractedUrl),this.serializeUrl(l.urlAfterRedirects),l.targetSnapshot);this.triggerEvent(u)}))}),Iv(a=>{const{targetSnapshot:l,id:u,extractedUrl:p,rawUrl:g,extras:{skipLocationChange:v,replaceUrl:C}}=a;return this.hooks.afterPreactivation(l,{navigationId:u,appliedUrlTree:p,rawUrlTree:g,skipLocationChange:!!v,replaceUrl:!!C})}),je(a=>{const l=function s$(t,n,e){const i=Ad(t,n._root,e?e._root:void 0);return new TE(i,n)}(this.routeReuseStrategy,a.targetSnapshot,a.currentRouterState);return Object.assign(Object.assign({},a),{targetRouterState:l})}),Zt(a=>{this.currentUrlTree=a.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(a.urlAfterRedirects,a.rawUrl),this.routerState=a.targetRouterState,"deferred"===this.urlUpdateStrategy&&(a.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,a),this.browserUrlTree=a.urlAfterRedirects)}),((t,n,e)=>je(i=>(new _$(n,i.targetRouterState,i.currentRouterState,e).activate(t),i)))(this.rootContexts,this.routeReuseStrategy,a=>this.triggerEvent(a)),Zt({next(){r=!0},complete(){r=!0}}),X_(()=>{var a;r||s||this.cancelNavigationTransition(o,`Navigation ID ${o.id} is not equal to the current navigation id ${this.navigationId}`),(null===(a=this.currentNavigation)||void 0===a?void 0:a.id)===o.id&&(this.currentNavigation=null)}),_n(a=>{if(s=!0,function Vz(t){return t&&t[hE]}(a)){const l=Ca(a.url);l||(this.navigated=!0,this.restoreHistory(o,!0));const u=new lE(o.id,this.serializeUrl(o.extractedUrl),a.message);i.next(u),l?setTimeout(()=>{const p=this.urlHandlingStrategy.merge(a.url,this.rawUrlTree),g={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||tI(o.source)};this.scheduleNavigation(p,"imperative",null,g,{resolve:o.resolve,reject:o.reject,promise:o.promise})},0):o.resolve(!1)}else{this.restoreHistory(o,!0);const l=new kz(o.id,this.serializeUrl(o.extractedUrl),a);i.next(l);try{o.resolve(this.errorHandler(a))}catch(u){o.reject(u)}}return Co}))}))}resetRootComponentType(e){this.rootComponentType=e,this.routerState.root.component=this.rootComponentType}setTransition(e){this.transitions.next(Object.assign(Object.assign({},this.transitions.value),e))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(e=>{const i="popstate"===e.type?"popstate":"hashchange";"popstate"===i&&setTimeout(()=>{var o;const r={replaceUrl:!0},s=(null===(o=e.state)||void 0===o?void 0:o.navigationId)?e.state:null;if(s){const l=Object.assign({},s);delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(r.state=l)}const a=this.parseUrl(e.url);this.scheduleNavigation(a,i,s,r)},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(e){this.events.next(e)}resetConfig(e){BE(e),this.config=e.map(kv),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.transitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}createUrlTree(e,i={}){const{relativeTo:o,queryParams:r,fragment:s,queryParamsHandling:a,preserveFragment:l}=i,u=o||this.routerState.root,p=l?this.currentUrlTree.fragment:s;let g=null;switch(a){case"merge":g=Object.assign(Object.assign({},this.currentUrlTree.queryParams),r);break;case"preserve":g=this.currentUrlTree.queryParams;break;default:g=r||null}return null!==g&&(g=this.removeEmptyProps(g)),function c$(t,n,e,i,o){if(0===e.length)return Sv(n.root,n.root,n.root,i,o);const r=function d$(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new PE(!0,0,t);let n=0,e=!1;const i=t.reduce((o,r,s)=>{if("object"==typeof r&&null!=r){if(r.outlets){const a={};return vi(r.outlets,(l,u)=>{a[u]="string"==typeof l?l.split("/"):l}),[...o,{outlets:a}]}if(r.segmentPath)return[...o,r.segmentPath]}return"string"!=typeof r?[...o,r]:0===s?(r.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?e=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,r]},[]);return new PE(e,n,i)}(e);if(r.toRoot())return Sv(n.root,n.root,new Ut([],{}),i,o);const s=function u$(t,n,e){if(t.isAbsolute)return new Mv(n.root,!0,0);if(-1===e.snapshot._lastPathIndex){const r=e.snapshot._urlSegment;return new Mv(r,r===n.root,0)}const i=Fp(t.commands[0])?0:1;return function h$(t,n,e){let i=t,o=n,r=e;for(;r>o;){if(r-=o,i=i.parent,!i)throw new Error("Invalid number of '../'");o=i.segments.length}return new Mv(i,!1,o-r)}(e.snapshot._urlSegment,e.snapshot._lastPathIndex+i,t.numberOfDoubleDots)}(r,n,t),a=s.processChildren?Np(s.segmentGroup,s.index,r.commands):RE(s.segmentGroup,s.index,r.commands);return Sv(n.root,s.segmentGroup,a,i,o)}(u,this.currentUrlTree,e,g,null!=p?p:null)}navigateByUrl(e,i={skipLocationChange:!1}){const o=Ca(e)?e:this.parseUrl(e),r=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(r,"imperative",null,i)}navigate(e,i={skipLocationChange:!1}){return function _G(t){for(let n=0;n{const r=e[o];return null!=r&&(i[o]=r),i},{})}processNavigations(){this.navigations.subscribe(e=>{this.navigated=!0,this.lastSuccessfulId=e.id,this.currentPageId=e.targetPageId,this.events.next(new Ed(e.id,this.serializeUrl(e.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,e.resolve(!0)},e=>{this.console.warn(`Unhandled Navigation Error: ${e}`)})}scheduleNavigation(e,i,o,r,s){var a,l;if(this.disposed)return Promise.resolve(!1);let u,p,g;s?(u=s.resolve,p=s.reject,g=s.promise):g=new Promise((M,V)=>{u=M,p=V});const v=++this.navigationId;let C;return"computed"===this.canceledNavigationResolution?(0===this.currentPageId&&(o=this.location.getState()),C=o&&o.\u0275routerPageId?o.\u0275routerPageId:r.replaceUrl||r.skipLocationChange?null!==(a=this.browserPageId)&&void 0!==a?a:0:(null!==(l=this.browserPageId)&&void 0!==l?l:0)+1):C=0,this.setTransition({id:v,targetPageId:C,source:i,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:e,extras:r,resolve:u,reject:p,promise:g,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),g.catch(M=>Promise.reject(M))}setBrowserUrl(e,i){const o=this.urlSerializer.serialize(e),r=Object.assign(Object.assign({},i.extras.state),this.generateNgRouterState(i.id,i.targetPageId));this.location.isCurrentPathEqualTo(o)||i.extras.replaceUrl?this.location.replaceState(o,"",r):this.location.go(o,"",r)}restoreHistory(e,i=!1){var o,r;if("computed"===this.canceledNavigationResolution){const s=this.currentPageId-e.targetPageId;"popstate"!==e.source&&"eager"!==this.urlUpdateStrategy&&this.currentUrlTree!==(null===(o=this.currentNavigation)||void 0===o?void 0:o.finalUrl)||0===s?this.currentUrlTree===(null===(r=this.currentNavigation)||void 0===r?void 0:r.finalUrl)&&0===s&&(this.resetState(e),this.browserUrlTree=e.currentUrlTree,this.resetUrlToCurrentUrlTree()):this.location.historyGo(s)}else"replace"===this.canceledNavigationResolution&&(i&&this.resetState(e),this.resetUrlToCurrentUrlTree())}resetState(e){this.routerState=e.currentRouterState,this.currentUrlTree=e.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}cancelNavigationTransition(e,i){const o=new lE(e.id,this.serializeUrl(e.extractedUrl),i);this.triggerEvent(o),e.resolve(!1)}generateNgRouterState(e,i){return"computed"===this.canceledNavigationResolution?{navigationId:e,\u0275routerPageId:i}:{navigationId:e}}}return t.\u0275fac=function(e){ea()},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();function tI(t){return"imperative"!==t}let Bs=(()=>{class t{constructor(e,i,o,r,s){this.router=e,this.route=i,this.tabIndexAttribute=o,this.renderer=r,this.el=s,this.commands=null,this.onChanges=new ie,this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(e){if(null!=this.tabIndexAttribute)return;const i=this.renderer,o=this.el.nativeElement;null!==e?i.setAttribute(o,"tabindex",e):i.removeAttribute(o,"tabindex")}ngOnChanges(e){this.onChanges.next(this)}set routerLink(e){null!=e?(this.commands=Array.isArray(e)?e:[e],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(){if(null===this.urlTree)return!0;const e={skipLocationChange:Gl(this.skipLocationChange),replaceUrl:Gl(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,e),!0}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:Gl(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b($l),Di("tabindex"),b(Lr),b(He))},t.\u0275dir=oe({type:t,selectors:[["","routerLink","",5,"a",5,"area"]],hostBindings:function(e,i){1&e&&N("click",function(){return i.onClick()})},inputs:{queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state",relativeTo:"relativeTo",routerLink:"routerLink"},features:[nn]}),t})(),jd=(()=>{class t{constructor(e,i,o){this.router=e,this.route=i,this.locationStrategy=o,this.commands=null,this.href=null,this.onChanges=new ie,this.subscription=e.events.subscribe(r=>{r instanceof Ed&&this.updateTargetUrlAndHref()})}set routerLink(e){this.commands=null!=e?Array.isArray(e)?e:[e]:null}ngOnChanges(e){this.updateTargetUrlAndHref(),this.onChanges.next(this)}ngOnDestroy(){this.subscription.unsubscribe()}onClick(e,i,o,r,s){if(0!==e||i||o||r||s||"string"==typeof this.target&&"_self"!=this.target||null===this.urlTree)return!0;const a={skipLocationChange:Gl(this.skipLocationChange),replaceUrl:Gl(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,a),!1}updateTargetUrlAndHref(){this.href=null!==this.urlTree?this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null}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:Gl(this.preserveFragment)})}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b($l),b(bl))},t.\u0275dir=oe({type:t,selectors:[["a","routerLink",""],["area","routerLink",""]],hostVars:2,hostBindings:function(e,i){1&e&&N("click",function(r){return i.onClick(r.button,r.ctrlKey,r.shiftKey,r.altKey,r.metaKey)}),2&e&&et("target",i.target)("href",i.href,Gi)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",preserveFragment:"preserveFragment",skipLocationChange:"skipLocationChange",replaceUrl:"replaceUrl",state:"state",relativeTo:"relativeTo",routerLink:"routerLink"},features:[nn]}),t})();function Gl(t){return""===t||!!t}class nI{}class iI{preload(n,e){return Ge(null)}}let oI=(()=>{class t{constructor(e,i,o,r){this.router=e,this.injector=o,this.preloadingStrategy=r,this.loader=new JE(o,i,l=>e.triggerEvent(new cE(l)),l=>e.triggerEvent(new dE(l)))}setUpPreloading(){this.subscription=this.router.events.pipe(It(e=>e instanceof Ed),xl(()=>this.preload())).subscribe(()=>{})}preload(){const e=this.injector.get(Br);return this.processRoutes(e,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(e,i){const o=[];for(const r of i)if(r.loadChildren&&!r.canLoad&&r._loadedConfig){const s=r._loadedConfig;o.push(this.processRoutes(s.module,s.routes))}else r.loadChildren&&!r.canLoad?o.push(this.preloadConfig(e,r)):r.children&&o.push(this.processRoutes(e,r.children));return ti(o).pipe(Ql(),je(r=>{}))}preloadConfig(e,i){return this.preloadingStrategy.preload(i,()=>(i._loadedConfig?Ge(i._loadedConfig):this.loader.load(e.injector,i)).pipe($n(r=>(i._loadedConfig=r,this.processRoutes(r.module,r.routes)))))}}return t.\u0275fac=function(e){return new(e||t)(Q(Jn),Q(uD),Q(pn),Q(nI))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})(),Av=(()=>{class t{constructor(e,i,o={}){this.router=e,this.viewportScroller=i,this.options=o,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},o.scrollPositionRestoration=o.scrollPositionRestoration||"disabled",o.anchorScrolling=o.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(e=>{e instanceof gv?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=e.navigationTrigger,this.restoredId=e.restoredState?e.restoredState.navigationId:0):e instanceof Ed&&(this.lastId=e.id,this.scheduleScrollEvent(e,this.router.parseUrl(e.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(e=>{e instanceof uE&&(e.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(e.position):e.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(e.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(e,i){this.router.triggerEvent(new uE(e,"popstate"===this.lastSource?this.store[this.restoredId]:null,i))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}return t.\u0275fac=function(e){ea()},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();const wa=new _e("ROUTER_CONFIGURATION"),rI=new _e("ROUTER_FORROOT_GUARD"),CG=[zc,{provide:CE,useClass:wE},{provide:Jn,useFactory:function xG(t,n,e,i,o,r,s={},a,l){const u=new Jn(null,t,n,e,i,o,fE(r));return a&&(u.urlHandlingStrategy=a),l&&(u.routeReuseStrategy=l),function TG(t,n){t.errorHandler&&(n.errorHandler=t.errorHandler),t.malformedUriErrorHandler&&(n.malformedUriErrorHandler=t.malformedUriErrorHandler),t.onSameUrlNavigation&&(n.onSameUrlNavigation=t.onSameUrlNavigation),t.paramsInheritanceStrategy&&(n.paramsInheritanceStrategy=t.paramsInheritanceStrategy),t.relativeLinkResolution&&(n.relativeLinkResolution=t.relativeLinkResolution),t.urlUpdateStrategy&&(n.urlUpdateStrategy=t.urlUpdateStrategy),t.canceledNavigationResolution&&(n.canceledNavigationResolution=t.canceledNavigationResolution)}(s,u),s.enableTracing&&u.events.subscribe(p=>{var g,v;null===(g=console.group)||void 0===g||g.call(console,`Router Event: ${p.constructor.name}`),console.log(p.toString()),console.log(p),null===(v=console.groupEnd)||void 0===v||v.call(console)}),u},deps:[CE,Nd,zc,pn,uD,Ov,wa,[class uG{},new qo],[class lG{},new qo]]},Nd,{provide:$l,useFactory:function kG(t){return t.routerState.root},deps:[Jn]},oI,iI,class yG{preload(n,e){return e().pipe(_n(()=>Ge(null)))}},{provide:wa,useValue:{enableTracing:!1}}];function wG(){return new gD("Router",Jn)}let sI=(()=>{class t{constructor(e,i){}static forRoot(e,i){return{ngModule:t,providers:[CG,aI(e),{provide:rI,useFactory:MG,deps:[[Jn,new qo,new $a]]},{provide:wa,useValue:i||{}},{provide:bl,useFactory:SG,deps:[oa,[new mu(Og),new qo],wa]},{provide:Av,useFactory:DG,deps:[Jn,g5,wa]},{provide:nI,useExisting:i&&i.preloadingStrategy?i.preloadingStrategy:iI},{provide:gD,multi:!0,useFactory:wG},[Pv,{provide:_g,multi:!0,useFactory:EG,deps:[Pv]},{provide:lI,useFactory:IG,deps:[Pv]},{provide:cD,multi:!0,useExisting:lI}]]}}static forChild(e){return{ngModule:t,providers:[aI(e)]}}}return t.\u0275fac=function(e){return new(e||t)(Q(rI,8),Q(Jn,8))},t.\u0275mod=ot({type:t}),t.\u0275inj=it({}),t})();function DG(t,n,e){return e.scrollOffset&&n.setOffset(e.scrollOffset),new Av(t,n,e)}function SG(t,n,e={}){return e.useHash?new iL(t,n):new ND(t,n)}function MG(t){return"guarded"}function aI(t){return[{provide:KO,multi:!0,useValue:t},{provide:Ov,multi:!0,useValue:t}]}let Pv=(()=>{class t{constructor(e){this.injector=e,this.initNavigation=!1,this.destroyed=!1,this.resultOfPreactivationDone=new ie}appInitializer(){return this.injector.get(eL,Promise.resolve(null)).then(()=>{if(this.destroyed)return Promise.resolve(!0);let i=null;const o=new Promise(a=>i=a),r=this.injector.get(Jn),s=this.injector.get(wa);return"disabled"===s.initialNavigation?(r.setUpLocationChangeListener(),i(!0)):"enabled"===s.initialNavigation||"enabledBlocking"===s.initialNavigation?(r.hooks.afterPreactivation=()=>this.initNavigation?Ge(null):(this.initNavigation=!0,i(!0),this.resultOfPreactivationDone),r.initialNavigation()):i(!0),o})}bootstrapListener(e){const i=this.injector.get(wa),o=this.injector.get(oI),r=this.injector.get(Av),s=this.injector.get(Jn),a=this.injector.get(zu);e===a.components[0]&&(("enabledNonBlocking"===i.initialNavigation||void 0===i.initialNavigation)&&s.initialNavigation(),o.setUpPreloading(),r.init(),s.resetRootComponentType(a.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}ngOnDestroy(){this.destroyed=!0}}return t.\u0275fac=function(e){return new(e||t)(Q(pn))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac}),t})();function EG(t){return t.appInitializer.bind(t)}function IG(t){return t.bootstrapListener.bind(t)}const lI=new _e("Router Initializer");var mi=(()=>{return(t=mi||(mi={})).DirectConnect="directConnect",t.DumpFile="dumpFile",t.SessionFile="sessionFile",t.ResumeSession="resumeSession",mi;var t})(),In=(()=>{return(t=In||(In={})).Type="inputType",t.Config="config",t.SourceDbName="sourceDbName",In;var t})(),Tr=(()=>{return(t=Tr||(Tr={})).MySQL="MySQL",t.Postgres="Postgres",t.SQLServer="SQL Server",t.Oracle="Oracle",Tr;var t})(),Qt=(()=>{return(t=Qt||(Qt={})).DbName="databaseName",t.Tables="tables",t.Table="tableName",t.Indexes="indexes",t.Index="indexName",Qt;var t})(),Lo=(()=>{return(t=Lo||(Lo={})).schemaOnly="Schema",t.dataOnly="Data",t.schemaAndData="Schema And Data",Lo;var t})(),Vs=(()=>{return(t=Vs||(Vs={})).Table="table",t.Index="index",Vs;var t})(),di=(()=>{return(t=di||(di={})).bulkMigration="bulk",t.lowDowntimeMigration="lowdt",di;var t})(),le=(()=>{return(t=le||(le={})).MigrationMode="migrationMode",t.MigrationType="migrationType",t.IsTargetDetailSet="isTargetDetailSet",t.IsSourceConnectionProfileSet="isSourceConnectionProfileSet",t.IsSourceDetailsSet="isSourceDetailsSet",t.IsTargetConnectionProfileSet="isTargetConnectionProfileSet",t.IsMigrationDetailSet="isMigrationDetailSet",t.IsMigrationInProgress="isMigrationInProgress",t.HasDataMigrationStarted="hasDataMigrationStarted",t.HasSchemaMigrationStarted="hasSchemaMigrationStarted",t.SchemaProgressMessage="schemaProgressMessage",t.DataProgressMessage="dataProgressMessage",t.DataMigrationProgress="dataMigrationProgress",t.SchemaMigrationProgress="schemaMigrationProgress",t.HasForeignKeyUpdateStarted="hasForeignKeyUpdateStarted",t.ForeignKeyProgressMessage="foreignKeyProgressMessage",t.ForeignKeyUpdateProgress="foreignKeyUpdateProgress",t.GeneratingResources="generatingResources",t.NumberOfShards="numberOfShards",t.NumberOfInstances="numberOfInstances",t.isForeignKeySkipped="isForeignKeySkipped",le;var t})(),Wt=(()=>{return(t=Wt||(Wt={})).TargetDB="targetDb",t.Dialect="dialect",t.SourceConnProfile="sourceConnProfile",t.TargetConnProfile="targetConnProfile",t.ReplicationSlot="replicationSlot",t.Publication="publication",Wt;var t})();var js=(()=>{return(t=js||(js={}))[t.SchemaMigrationComplete=1]="SchemaMigrationComplete",t[t.SchemaCreationInProgress=2]="SchemaCreationInProgress",t[t.DataMigrationComplete=3]="DataMigrationComplete",t[t.DataWriteInProgress=4]="DataWriteInProgress",t[t.ForeignKeyUpdateInProgress=5]="ForeignKeyUpdateInProgress",t[t.ForeignKeyUpdateComplete=6]="ForeignKeyUpdateComplete",js;var t})();const cI=[{value:"google_standard_sql",displayName:"Google Standard SQL Dialect"},{value:"postgresql",displayName:"PostgreSQL Dialect"}],ui={StorageMaxLength:0x8000000000000000,StringMaxLength:2621440,ByteMaxLength:10485760,DataTypes:["STRING","BYTES","VARCHAR"]},dI_GoogleStandardSQL=["BOOL","BYTES","DATE","FLOAT64","INT64","STRING","TIMESTAMP","NUMERIC","JSON"],dI_PostgreSQL=["BOOL","BYTEA","DATE","FLOAT8","INT8","VARCHAR","TIMESTAMPTZ","NUMERIC","JSONB"];var Bo=(()=>{return(t=Bo||(Bo={})).DirectConnectForm="directConnectForm",t.IsConnectionSuccessful="isConnectionSuccessful",Bo;var t})();function $p(t){return"mysql"==t||"mysqldump"==t?Tr.MySQL:"postgres"===t||"pgdump"===t||"pg_dump"===t?Tr.Postgres:"oracle"===t?Tr.Oracle:"sqlserver"===t?Tr.SQLServer:t}function uI(t){var n=document.createElement("a");let e=JSON.stringify(t).replace(/9223372036854776000/g,"9223372036854775807");n.href="data:text/json;charset=utf-8,"+encodeURIComponent(e),n.download=`${t.SessionName}_${t.DatabaseType}_${t.DatabaseName}.json`,n.click()}let Ei=(()=>{class t{constructor(e){this.http=e,this.url=window.location.origin}connectTodb(e,i){const{dbEngine:o,isSharded:r,hostName:s,port:a,dbName:l,userName:u,password:p}=e;return this.http.post(`${this.url}/connect`,{Driver:o,IsSharded:r,Host:s,Port:a,Database:l,User:u,Password:p,Dialect:i},{observe:"response"})}getLastSessionDetails(){return this.http.get(`${this.url}/GetLatestSessionDetails`)}getSchemaConversionFromDirectConnect(){return this.http.get(`${this.url}/convert/infoschema`)}getSchemaConversionFromDump(e){return this.http.post(`${this.url}/convert/dump`,e)}setSourceDBDetailsForDump(e){return this.http.post(`${this.url}/SetSourceDBDetailsForDump`,e)}setSourceDBDetailsForDirectConnect(e){const{dbEngine:i,hostName:o,port:r,dbName:s,userName:a,password:l}=e;return this.http.post(`${this.url}/SetSourceDBDetailsForDirectConnect`,{Driver:i,Host:o,Port:r,Database:s,User:a,Password:l})}setShardsSourceDBDetailsForBulk(e){const{dbConfigs:i,isRestoredSession:o}=e;let r=[];return i.forEach(s=>{r.push({Driver:s.dbEngine,Host:s.hostName,Port:s.port,Database:s.dbName,User:s.userName,Password:s.password,DataShardId:s.shardId})}),this.http.post(`${this.url}/SetShardsSourceDBDetailsForBulk`,{DbConfigs:r,IsRestoredSession:o})}setShardSourceDBDetailsForDataflow(e){return this.http.post(`${this.url}/SetShardsSourceDBDetailsForDataflow`,{MigrationProfile:e})}setDataflowDetailsForShardedMigrations(e){return this.http.post(`${this.url}/SetDataflowDetailsForShardedMigrations`,{DataflowConfig:e})}getSourceProfile(){return this.http.get(`${this.url}/GetSourceProfileConfig`)}getSchemaConversionFromSessionFile(e){return this.http.post(`${this.url}/convert/session`,e)}getDStructuredReport(){return this.http.get(`${this.url}/downloadStructuredReport`)}getDTextReport(){return this.http.get(`${this.url}/downloadTextReport`)}getDSpannerDDL(){return this.http.get(`${this.url}/downloadDDL`)}getIssueDescription(){return this.http.get(`${this.url}/issueDescription`)}getConversionRate(){return this.http.get(`${this.url}/conversion`)}getConnectionProfiles(e){return this.http.get(`${this.url}/GetConnectionProfiles?source=${e}`)}getGeneratedResources(){return this.http.get(`${this.url}/GetGeneratedResources`)}getStaticIps(){return this.http.get(`${this.url}/GetStaticIps`)}createConnectionProfile(e){return this.http.post(`${this.url}/CreateConnectionProfile`,e)}getSummary(){return this.http.get(`${this.url}/summary`)}getDdl(){return this.http.get(`${this.url}/ddl`)}getTypeMap(){return this.http.get(`${this.url}/typemap`)}getSpannerDefaultTypeMap(){return this.http.get(`${this.url}/spannerDefaultTypeMap`)}reviewTableUpdate(e,i){return this.http.post(`${this.url}/typemap/reviewTableSchema?table=${e}`,i)}updateTable(e,i){return this.http.post(`${this.url}/typemap/table?table=${e}`,i)}removeInterleave(e){return this.http.post(`${this.url}/removeParent?tableId=${e}`,{})}restoreTables(e){return this.http.post(`${this.url}/restore/tables`,e)}restoreTable(e){return this.http.post(`${this.url}/restore/table?table=${e}`,{})}dropTable(e){return this.http.post(`${this.url}/drop/table?table=${e}`,{})}dropTables(e){return this.http.post(`${this.url}/drop/tables`,e)}updatePk(e){return this.http.post(`${this.url}/primaryKey`,e)}updateFk(e,i){return this.http.post(`${this.url}/update/fks?table=${e}`,i)}addColumn(e,i){return this.http.post(`${this.url}/AddColumn?table=${e}`,i)}removeFk(e,i){return this.http.post(`${this.url}/drop/fk?table=${e}`,{Id:i})}getTableWithErrors(){return this.http.get(`${this.url}/GetTableWithErrors`)}getSessions(){return this.http.get(`${this.url}/GetSessions`)}getConvForSession(e){return this.http.get(`${this.url}/GetSession/${e}`,{responseType:"blob"})}resumeSession(e){return this.http.post(`${this.url}/ResumeSession/${e}`,{})}saveSession(e){return this.http.post(`${this.url}/SaveRemoteSession`,e)}getSpannerConfig(){return this.http.get(`${this.url}/GetConfig`)}setSpannerConfig(e){return this.http.post(`${this.url}/SetSpannerConfig`,e)}getIsOffline(){return this.http.get(`${this.url}/IsOffline`)}updateIndex(e,i){return this.http.post(`${this.url}/update/indexes?table=${e}`,i)}dropIndex(e,i){return this.http.post(`${this.url}/drop/secondaryindex?table=${e}`,{Id:i})}restoreIndex(e,i){return this.http.post(`${this.url}/restore/secondaryIndex?tableId=${e}&indexId=${i}`,{})}getInterleaveStatus(e){return this.http.get(`${this.url}/setparent?table=${e}&update=false`)}setInterleave(e){return this.http.get(`${this.url}/setparent?table=${e}&update=true`)}getSourceDestinationSummary(){return this.http.get(`${this.url}/GetSourceDestinationSummary`)}migrate(e){return this.http.post(`${this.url}/Migrate`,e)}getProgress(){return this.http.get(`${this.url}/GetProgress`)}uploadFile(e){return this.http.post(`${this.url}/uploadFile`,e)}cleanUpStreamingJobs(){return this.http.post(`${this.url}/CleanUpStreamingJobs`,{})}applyRule(e){return this.http.post(`${this.url}/applyrule`,e)}dropRule(e){return this.http.post(`${this.url}/dropRule?id=${e}`,{})}getStandardTypeToPGSQLTypemap(){return this.http.get(`${this.url}/typemap/GetStandardTypeToPGSQLTypemap`)}getPGSQLToStandardTypeTypemap(){return this.http.get(`${this.url}/typemap/GetPGSQLToStandardTypeTypemap`)}checkBackendHealth(){return this.http.get(`${this.url}/ping`)}}return t.\u0275fac=function(e){return new(e||t)(Q(jh))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Vo=(()=>{class t{constructor(e){this.snackBar=e}openSnackBar(e,i,o){o||(o=10),this.snackBar.open(e,i,{duration:1e3*o})}openSnackBarWithoutTimeout(e,i){this.snackBar.open(e,i)}}return t.\u0275fac=function(e){return new(e||t)(Q(iU))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),jo=(()=>{class t{constructor(){this.spannerConfigSub=new vt(!1),this.datebaseLoaderSub=new vt({type:"",databaseName:""}),this.viewAssesmentSub=new vt({srcDbType:"",connectionDetail:"",conversionRates:{good:0,ok:0,bad:0}}),this.tabToSpannerSub=new vt(!1),this.cancelDbLoadSub=new vt(!1),this.spannerConfig=this.spannerConfigSub.asObservable(),this.databaseLoader=this.datebaseLoaderSub.asObservable(),this.viewAssesment=this.viewAssesmentSub.asObservable(),this.tabToSpanner=this.tabToSpannerSub.asObservable(),this.cancelDbLoad=this.cancelDbLoadSub.asObservable()}openSpannerConfig(){this.spannerConfigSub.next(!0)}openDatabaseLoader(e,i){this.datebaseLoaderSub.next({type:e,databaseName:i})}closeDatabaseLoader(){this.datebaseLoaderSub.next({type:"",databaseName:""})}setViewAssesmentData(e){this.viewAssesmentSub.next(e)}setTabToSpanner(){this.tabToSpannerSub.next(!0)}cancelDbLoading(){this.cancelDbLoadSub.next(!0)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Rv=(()=>{class t{constructor(){this.reviewTableChangesSub=new vt({Changes:[],DDL:""}),this.tableUpdateDetailSub=new vt({tableName:"",tableId:"",updateDetail:{UpdateCols:{}}}),this.reviewTableChanges=this.reviewTableChangesSub.asObservable(),this.tableUpdateDetail=this.tableUpdateDetailSub.asObservable()}setTableReviewChanges(e){this.reviewTableChangesSub.next(e)}setTableUpdateDetail(e){this.tableUpdateDetailSub.next(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Da=(()=>{class t{constructor(e){this.fetch=e,this.standardTypeToPGSQLTypeMapSub=new vt(new Map),this.pgSQLToStandardTypeTypeMapSub=new vt(new Map),this.standardTypeToPGSQLTypeMap=this.standardTypeToPGSQLTypeMapSub.asObservable(),this.pgSQLToStandardTypeTypeMap=this.pgSQLToStandardTypeTypeMapSub.asObservable()}getStandardTypeToPGSQLTypemap(){return this.fetch.getStandardTypeToPGSQLTypemap().subscribe({next:e=>{this.standardTypeToPGSQLTypeMapSub.next(new Map(Object.entries(e)))}})}getPGSQLToStandardTypeTypemap(){return this.fetch.getPGSQLToStandardTypeTypemap().subscribe({next:e=>{this.pgSQLToStandardTypeTypeMapSub.next(new Map(Object.entries(e)))}})}createTreeNode(e,i,o="",r=""){var s,a,l;let u=Object.keys(e.SpSchema).filter(C=>e.SpSchema[C].Name.toLocaleLowerCase().includes(o.toLocaleLowerCase())),p=Object.keys(e.SrcSchema).filter(C=>-1==u.indexOf(C)&&e.SrcSchema[C].Name.replace(/[^A-Za-z0-9_]/g,"_").includes(o.toLocaleLowerCase())),g=this.getDeletedIndexes(e),v={name:`Tables (${u.length})`,type:Qt.Tables,parent:"",pos:-1,isSpannerNode:!0,id:"",parentId:"",children:u.map(C=>{var M;let V=e.SpSchema[C];return{name:V.Name,status:i[C],type:Qt.Table,parent:""!=V.ParentId?null===(M=e.SpSchema[V.ParentId])||void 0===M?void 0:M.Name:"",pos:-1,isSpannerNode:!0,id:C,parentId:V.ParentId,children:[{name:`Indexes (${V.Indexes?V.Indexes.length:0})`,status:"",type:Qt.Indexes,parent:e.SpSchema[C].Name,pos:-1,isSpannerNode:!0,id:"",parentId:C,children:V.Indexes?V.Indexes.map((K,Y)=>({name:K.Name,type:Qt.Index,parent:e.SpSchema[C].Name,pos:Y,isSpannerNode:!0,id:K.Id,parentId:C})):[]}]}})};return"asc"===r||""===r?null===(s=v.children)||void 0===s||s.sort((C,M)=>C.name>M.name?1:M.name>C.name?-1:0):"desc"===r&&(null===(a=v.children)||void 0===a||a.sort((C,M)=>M.name>C.name?1:C.name>M.name?-1:0)),p.forEach(C=>{var M;null===(M=v.children)||void 0===M||M.push({name:e.SrcSchema[C].Name.replace(/[^A-Za-z0-9_]/g,"_"),status:"DARK",type:Qt.Table,pos:-1,isSpannerNode:!0,children:[],isDeleted:!0,id:C,parent:"",parentId:""})}),null===(l=v.children)||void 0===l||l.forEach((C,M)=>{g[C.id]&&g[C.id].forEach(V=>{var K,Y;null===(K=v.children[M].children[0].children)||void 0===K||K.push({name:V.Name.replace(/[^A-Za-z0-9_]/g,"_"),type:Qt.Index,parent:null===(Y=e.SpSchema[C.name])||void 0===Y?void 0:Y.Name,pos:M,isSpannerNode:!0,isDeleted:!0,id:V.Id,parentId:C.id})})}),[{name:e.DatabaseName,children:[v],type:Qt.DbName,parent:"",pos:-1,isSpannerNode:!0,id:"",parentId:""}]}createTreeNodeForSource(e,i,o="",r=""){var s,a;let l=Object.keys(e.SrcSchema).filter(p=>e.SrcSchema[p].Name.toLocaleLowerCase().includes(o.toLocaleLowerCase())),u={name:`Tables (${l.length})`,type:Qt.Tables,pos:-1,isSpannerNode:!1,id:"",parent:"",parentId:"",children:l.map(p=>{var g;let v=e.SrcSchema[p];return{name:v.Name,status:i[p]?i[p]:"NONE",type:Qt.Table,parent:"",pos:-1,isSpannerNode:!1,id:p,parentId:"",children:[{name:`Indexes (${(null===(g=v.Indexes)||void 0===g?void 0:g.length)||"0"})`,status:"",type:Qt.Indexes,parent:"",pos:-1,isSpannerNode:!1,id:"",parentId:"",children:v.Indexes?v.Indexes.map((C,M)=>({name:C.Name,type:Qt.Index,parent:e.SrcSchema[p].Name,isSpannerNode:!1,pos:M,id:C.Id,parentId:p})):[]}]}})};return"asc"===r||""===r?null===(s=u.children)||void 0===s||s.sort((p,g)=>p.name>g.name?1:g.name>p.name?-1:0):"desc"===r&&(null===(a=u.children)||void 0===a||a.sort((p,g)=>g.name>p.name?1:p.name>g.name?-1:0)),[{name:e.DatabaseName,children:[u],type:Qt.DbName,isSpannerNode:!1,parent:"",pos:-1,id:"",parentId:""}]}getColumnMapping(e,i){let u,o=this.getSpannerTableNameFromId(e,i),r=i.SrcSchema[e].ColIds,s=i.SpSchema[e]?i.SpSchema[e].ColIds:null,a=i.SrcSchema[e].PrimaryKeys,l=s?i.SpSchema[e].PrimaryKeys:null;this.standardTypeToPGSQLTypeMap.subscribe(v=>{u=v});const p=ui.StorageMaxLength,g=i.SrcSchema[e].ColIds.map((v,C)=>{var M,V;let K;o&&i.SpSchema[e].PrimaryKeys.forEach(ke=>{ke.ColId==v&&(K=ke.Order)});let Y=o?null===(M=i.SpSchema[e])||void 0===M?void 0:M.ColDefs[v]:null,ee=Y?u.get(Y.T.Name):"";return{spOrder:Y?C+1:"",srcOrder:C+1,spColName:Y?Y.Name:"",spDataType:Y?"postgresql"===i.SpDialect?void 0===ee?Y.T.Name:ee:Y.T.Name:"",srcColName:i.SrcSchema[e].ColDefs[v].Name,srcDataType:i.SrcSchema[e].ColDefs[v].Type.Name,spIsPk:!(!Y||!o)&&-1!==(null===(V=i.SpSchema[e].PrimaryKeys)||void 0===V?void 0:V.map(ke=>ke.ColId).indexOf(v)),srcIsPk:!!a&&-1!==a.map(ke=>ke.ColId).indexOf(v),spIsNotNull:!(!Y||!o)&&Y.NotNull,srcIsNotNull:i.SrcSchema[e].ColDefs[v].NotNull,srcId:v,spId:Y?v:"",spColMaxLength:0!=(null==Y?void 0:Y.T.Len)?(null==Y?void 0:Y.T.Len)!=p?null==Y?void 0:Y.T.Len:"MAX":"",srcColMaxLength:null!=i.SrcSchema[e].ColDefs[v].Type.Mods?i.SrcSchema[e].ColDefs[v].Type.Mods[0]:""}});return s&&s.forEach((v,C)=>{var M;if(r.indexOf(v)<0){let V=i.SpSchema[e].ColDefs[v],K=o?null===(M=i.SpSchema[e])||void 0===M?void 0:M.ColDefs[v]:null,Y=K?u.get(K.T.Name):"";g.push({spOrder:C+1,srcOrder:"",spColName:V.Name,spDataType:K?"postgresql"===i.SpDialect?void 0===Y?K.T.Name:Y:K.T.Name:"",srcColName:"",srcDataType:"",spIsPk:!!l&&-1!==l.map(ee=>ee.ColId).indexOf(v),srcIsPk:!1,spIsNotNull:V.NotNull,srcIsNotNull:!1,srcId:"",spId:v,srcColMaxLength:"",spColMaxLength:null==K?void 0:K.T.Len})}}),g}getPkMapping(e){let i=e.filter(o=>o.spIsPk||o.srcIsPk);return JSON.parse(JSON.stringify(i))}getFkMapping(e,i){var o;let r=null===(o=i.SrcSchema[e])||void 0===o?void 0:o.ForeignKeys;return r?r.map(s=>{let a=this.getSpannerFkFromId(i,e,s.Id),l=a?a.ColIds.map(M=>i.SpSchema[e].ColDefs[M].Name):[],u=a?a.ColIds:[],p=s.ColIds.map(M=>i.SrcSchema[e].ColDefs[M].Name),g=a?a.ReferColumnIds.map(M=>i.SpSchema[s.ReferTableId].ColDefs[M].Name):[],v=a?a.ReferColumnIds:[],C=s.ReferColumnIds.map(M=>i.SrcSchema[s.ReferTableId].ColDefs[M].Name);return{srcFkId:s.Id,spFkId:null==a?void 0:a.Id,spName:a?a.Name:"",srcName:s.Name,spColumns:l,srcColumns:p,spReferTable:a?i.SpSchema[a.ReferTableId].Name:"",srcReferTable:i.SrcSchema[s.ReferTableId].Name,spReferColumns:g,srcReferColumns:C,spColIds:u,spReferColumnIds:v,spReferTableId:a?a.ReferTableId:""}}):[]}getIndexMapping(e,i,o){let r=this.getSourceIndexFromId(i,e,o),s=this.getSpannerIndexFromId(i,e,o),a=r?r.Keys.map(p=>p.ColId):[],l=s?s.Keys.map(p=>p.ColId):[],u=r?r.Keys.map(p=>{let g=this.getSpannerIndexKeyFromColId(i,e,o,p.ColId);return{srcColId:p.ColId,spColId:g?g.ColId:void 0,srcColName:i.SrcSchema[e].ColDefs[p.ColId].Name,srcOrder:p.Order,srcDesc:p.Desc,spColName:g?i.SpSchema[e].ColDefs[g.ColId].Name:"",spOrder:g?g.Order:void 0,spDesc:g?g.Desc:void 0}}):[];return l.forEach(p=>{if(-1==a.indexOf(p)){let g=this.getSpannerIndexKeyFromColId(i,e,o,p);u.push({srcColName:"",srcOrder:"",srcColId:void 0,srcDesc:void 0,spColName:i.SpSchema[e].ColDefs[p].Name,spOrder:g?g.Order:void 0,spDesc:g?g.Desc:void 0,spColId:g?g.ColId:void 0})}}),u}getSpannerFkFromId(e,i,o){var r,s;let a=null;return null===(s=null===(r=e.SpSchema[i])||void 0===r?void 0:r.ForeignKeys)||void 0===s||s.forEach(l=>{l.Id==o&&(a=l)}),a}getSourceIndexFromId(e,i,o){var r,s;let a=null;return null===(s=null===(r=e.SrcSchema[i])||void 0===r?void 0:r.Indexes)||void 0===s||s.forEach(l=>{l.Id==o&&(a=l)}),a}getSpannerIndexFromId(e,i,o){var r,s;let a=null;return null===(s=null===(r=e.SpSchema[i])||void 0===r?void 0:r.Indexes)||void 0===s||s.forEach(l=>{l.Id==o&&(a=l)}),a}getSpannerIndexKeyFromColId(e,i,o,r){var s;let a=null,l=(null===(s=e.SpSchema[i])||void 0===s?void 0:s.Indexes)?e.SpSchema[i].Indexes.filter(u=>u.Id==o):null;if(l&&l.length>0){let u=l[0].Keys.filter(p=>p.ColId==r);a=u.length>0?u[0]:null}return a}getSourceIndexKeyFromColId(e,i,o,r){var s;let a=null,l=(null===(s=e.SrcSchema[i])||void 0===s?void 0:s.Indexes)?e.SrcSchema[i].Indexes.filter(u=>u.Id==o):null;if(l&&l.length>0){let u=l[0].Keys.filter(p=>p.ColId==r);a=u.length>0?u[0]:null}return a}getSpannerColDefFromId(e,i,o){let r=null;return Object.keys(o.SpSchema[e].ColDefs).forEach(s=>{o.SpSchema[e].ColDefs[s].Id==i&&(r=o.SpSchema[e].ColDefs[s])}),r}getSourceTableNameFromId(e,i){let o="";return Object.keys(i.SrcSchema).forEach(r=>{i.SrcSchema[r].Id===e&&(o=i.SrcSchema[r].Name)}),o}getSpannerTableNameFromId(e,i){let o=null;return Object.keys(i.SpSchema).forEach(r=>{i.SpSchema[r].Id===e&&(o=i.SpSchema[r].Name)}),o}getTableIdFromSpName(e,i){let o="";return Object.keys(i.SpSchema).forEach(r=>{i.SpSchema[r].Name===e&&(o=i.SpSchema[r].Id)}),o}getColIdFromSpannerColName(e,i,o){let r="";return Object.keys(o.SpSchema[i].ColDefs).forEach(s=>{o.SpSchema[i].ColDefs[s].Name===e&&(r=o.SpSchema[i].ColDefs[s].Id)}),r}getDeletedIndexes(e){let i={};return Object.keys(e.SpSchema).forEach(o=>{var r;let s=e.SpSchema[o],a=e.SrcSchema[o],l=s&&s.Indexes?s.Indexes.map(p=>p.Id):[],u=a&&a.Indexes?null===(r=a.Indexes)||void 0===r?void 0:r.filter(p=>!l.includes(p.Id)):null;s&&a&&u&&u.length>0&&(i[o]=u)}),i}}return t.\u0275fac=function(e){return new(e||t)(Q(Ei))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Ln=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.snackbar=i,this.clickEvent=o,this.tableUpdatePubSub=r,this.conversion=s,this.convSubject=new vt({}),this.conversionRateSub=new vt({}),this.typeMapSub=new vt({}),this.defaultTypeMapSub=new vt({}),this.summarySub=new vt(new Map),this.ddlSub=new vt({}),this.tableInterleaveStatusSub=new vt({}),this.sessionsSub=new vt({}),this.configSub=new vt({}),this.currentSessionSub=new vt({}),this.isOfflineSub=new vt(!1),this.ruleMapSub=new vt([]),this.rule=this.ruleMapSub.asObservable(),this.conv=this.convSubject.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.conversionRate=this.conversionRateSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.typeMap=this.typeMapSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.defaultTypeMap=this.defaultTypeMapSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.summary=this.summarySub.asObservable(),this.ddl=this.ddlSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.tableInterleaveStatus=this.tableInterleaveStatusSub.asObservable(),this.sessions=this.sessionsSub.asObservable(),this.config=this.configSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.isOffline=this.isOfflineSub.asObservable(),this.currentSession=this.currentSessionSub.asObservable().pipe(It(a=>0!==Object.keys(a).length)),this.getLastSessionDetails(),this.getConfig(),this.updateIsOffline()}resetStore(){this.convSubject.next({}),this.conversionRateSub.next({}),this.typeMapSub.next({}),this.defaultTypeMapSub.next({}),this.summarySub.next(new Map),this.ddlSub.next({}),this.tableInterleaveStatusSub.next({})}getDdl(){this.fetch.getDdl().subscribe(e=>{this.ddlSub.next(e)})}getSchemaConversionFromDb(){this.fetch.getSchemaConversionFromDirectConnect().subscribe({next:e=>{this.convSubject.next(e),this.ruleMapSub.next(null==e?void 0:e.Rules)},error:e=>{this.clickEvent.closeDatabaseLoader(),this.snackbar.openSnackBar(e.error,"Close")}})}getAllSessions(){this.fetch.getSessions().subscribe({next:e=>{this.sessionsSub.next(e)},error:e=>{this.snackbar.openSnackBar("Unable to fetch sessions.","Close")}})}getLastSessionDetails(){this.fetch.getLastSessionDetails().subscribe({next:e=>{this.convSubject.next(e),this.ruleMapSub.next(null==e?void 0:e.Rules)},error:e=>{this.snackbar.openSnackBar(e.error,"Close")}})}getSchemaConversionFromDump(e){return this.fetch.getSchemaConversionFromDump(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules)},error:i=>{this.clickEvent.closeDatabaseLoader(),this.snackbar.openSnackBar(i.error,"Close")}})}getSchemaConversionFromSession(e){return this.fetch.getSchemaConversionFromSessionFile(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules)},error:i=>{this.snackbar.openSnackBar(i.error,"Close"),this.clickEvent.closeDatabaseLoader()}})}getSchemaConversionFromResumeSession(e){this.fetch.resumeSession(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules)},error:i=>{this.snackbar.openSnackBar(i.error,"Close")}})}getConversionRate(){this.fetch.getConversionRate().subscribe(e=>{this.conversionRateSub.next(e)})}getRateTypemapAndSummary(){return Y_({rates:this.fetch.getConversionRate(),typeMap:this.fetch.getTypeMap(),defaultTypeMap:this.fetch.getSpannerDefaultTypeMap(),summary:this.fetch.getSummary(),ddl:this.fetch.getDdl()}).pipe(_n(e=>Ge(e))).subscribe(({rates:e,typeMap:i,defaultTypeMap:o,summary:r,ddl:s})=>{this.conversionRateSub.next(e),this.typeMapSub.next(i),this.defaultTypeMapSub.next(o),this.summarySub.next(new Map(Object.entries(r))),this.ddlSub.next(s)})}getSummary(){return this.fetch.getSummary().subscribe({next:e=>{this.summarySub.next(new Map(Object.entries(e)))}})}reviewTableUpdate(e,i){return this.fetch.reviewTableUpdate(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>{if(o.error)return o.error;{let r;return this.conversion.standardTypeToPGSQLTypeMap.subscribe(s=>{r=s}),this.conv.subscribe(s=>{o.Changes.forEach(a=>{a.InterleaveColumnChanges.forEach(l=>{if("postgresql"===s.SpDialect){let u=r.get(l.Type),p=r.get(l.UpdateType);l.Type=void 0===u?l.Type:u,l.UpdateType=void 0===p?l.UpdateType:p}ui.DataTypes.indexOf(l.Type.toString())>-1&&(l.Type+=this.updateColumnSize(l.Size)),ui.DataTypes.indexOf(l.UpdateType.toString())>-1&&(l.UpdateType+=this.updateColumnSize(l.UpdateSize))})})}),this.tableUpdatePubSub.setTableReviewChanges(o),""}}))}updateColumnSize(e){return e===ui.StorageMaxLength?"(MAX)":"("+e+")"}updateTable(e,i){return this.fetch.updateTable(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}removeInterleave(e){return this.fetch.removeInterleave(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>(this.getDdl(),i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),""))))}restoreTables(e){return this.fetch.restoreTables(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Selected tables restored successfully","Close",5),"")))}restoreTable(e){return this.fetch.restoreTable(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Table restored successfully","Close",5),"")))}dropTable(e){return this.fetch.dropTable(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Table skipped successfully","Close",5),"")))}dropTables(e){return this.fetch.dropTables(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar(i.error,"Close"),i.error):(this.convSubject.next(i),this.snackbar.openSnackBar("Selected tables skipped successfully","Close",5),"")))}updatePk(e){return this.fetch.updatePk(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>i.error?i.error:(this.convSubject.next(i),this.getDdl(),"")))}updateFkNames(e,i){return this.fetch.updateFk(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}dropFk(e,i){return this.fetch.removeFk(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}getConfig(){this.fetch.getSpannerConfig().subscribe(e=>{this.configSub.next(e)})}updateConfig(e){this.configSub.next(e)}updateIsOffline(){this.fetch.getIsOffline().subscribe(e=>{this.isOfflineSub.next(e)})}addColumn(e,i){this.fetch.addColumn(e,i).subscribe({next:o=>{this.convSubject.next(o),this.getDdl(),this.snackbar.openSnackBar("Added new column.","Close",5)},error:o=>{this.snackbar.openSnackBar(o.error,"Close")}})}applyRule(e){this.fetch.applyRule(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules),this.getDdl(),this.snackbar.openSnackBar("Added new rule.","Close",5)},error:i=>{this.snackbar.openSnackBar(i.error,"Close")}})}updateIndex(e,i){return this.fetch.updateIndex(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>o.error?o.error:(this.convSubject.next(o),this.getDdl(),"")))}dropIndex(e,i){return this.fetch.dropIndex(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>o.error?(this.snackbar.openSnackBar(o.error,"Close"),o.error):(this.convSubject.next(o),this.getDdl(),this.ruleMapSub.next(null==o?void 0:o.Rules),this.snackbar.openSnackBar("Index skipped successfully","Close",5),"")))}restoreIndex(e,i){return this.fetch.restoreIndex(e,i).pipe(_n(o=>Ge({error:o.error})),Zt(console.log),je(o=>o.error?(this.snackbar.openSnackBar(o.error,"Close"),o.error):(this.convSubject.next(o),this.snackbar.openSnackBar("Index restored successfully","Close",5),"")))}getInterleaveConversionForATable(e){this.fetch.getInterleaveStatus(e).subscribe(i=>{this.tableInterleaveStatusSub.next(i)})}setInterleave(e){this.fetch.setInterleave(e).subscribe(i=>{this.convSubject.next(i.sessionState),this.getDdl(),i.sessionState&&this.convSubject.next(i.sessionState)})}uploadFile(e){return this.fetch.uploadFile(e).pipe(_n(i=>Ge({error:i.error})),Zt(console.log),je(i=>i.error?(this.snackbar.openSnackBar("File upload failed","Close"),i.error):(this.snackbar.openSnackBar("File uploaded successfully","Close",5),"")))}dropRule(e){return this.fetch.dropRule(e).subscribe({next:i=>{this.convSubject.next(i),this.ruleMapSub.next(null==i?void 0:i.Rules),this.getDdl(),this.snackbar.openSnackBar("Rule deleted successfully","Close",5)},error:i=>{this.snackbar.openSnackBar(i.error,"Close")}})}}return t.\u0275fac=function(e){return new(e||t)(Q(Ei),Q(Vo),Q(jo),Q(Rv),Q(Da))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Gp=(()=>{class t{constructor(){this.isLoadingSub=new vt(!1),this.isLoading=this.isLoadingSub.asObservable()}startLoader(){this.isLoadingSub.next(!0)}stopLoader(){this.isLoadingSub.next(!1)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function AG(t,n){if(1&t&&(d(0,"mat-option",18),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function PG(t,n){if(1&t&&(d(0,"mat-option",18),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function RG(t,n){1&t&&(d(0,"b"),h(1,"Note: For sharded migrations, please enter below the details of the shard you want Spanner migration tool to read the schema from. The complete connection configuration of all the shards will be taken in later, during data migration."),c())}function FG(t,n){if(1&t&&(d(0,"div",19)(1,"div",20)(2,"mat-form-field",21)(3,"mat-label"),h(4,"Sharded Migration"),c(),d(5,"mat-select",22),_(6,PG,2,2,"mat-option",6),c()(),d(7,"mat-icon",23),h(8,"info"),c(),d(9,"mat-chip",24),h(10," Preview "),c()(),E(11,"br"),_(12,RG,2,0,"b",25),c()),2&t){const e=D();f(6),m("ngForOf",e.shardedResponseList),f(3),m("removable",!1),f(3),m("ngIf",e.connectForm.value.isSharded)}}function NG(t,n){if(1&t&&(d(0,"mat-option",18),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function LG(t,n){1&t&&(d(0,"mat-icon",26),h(1," check_circle "),c())}let BG=(()=>{class t{constructor(e,i,o,r,s,a){this.router=e,this.fetch=i,this.data=o,this.loader=r,this.snackbarService=s,this.clickEvent=a,this.connectForm=new an({dbEngine:new X("",[de.required]),isSharded:new X(!1),hostName:new X("",[de.required]),port:new X("",[de.required,de.pattern("^[0-9]+$")]),userName:new X("",[de.required]),password:new X(""),dbName:new X("",[de.required]),dialect:new X("",[de.required])}),this.dbEngineList=[{value:"mysql",displayName:"MySQL"},{value:"sqlserver",displayName:"SQL Server"},{value:"oracle",displayName:"Oracle"},{value:"postgres",displayName:"PostgreSQL"}],this.isTestConnectionSuccessful=!1,this.connectRequest=null,this.getSchemaRequest=null,this.shardedResponseList=[{value:!1,displayName:"No"},{value:!0,displayName:"Yes"}],this.dialect=cI}ngOnInit(){null!=localStorage.getItem(Bo.DirectConnectForm)&&this.connectForm.setValue(JSON.parse(localStorage.getItem(Bo.DirectConnectForm))),null!=localStorage.getItem(Bo.IsConnectionSuccessful)&&(this.isTestConnectionSuccessful="true"===localStorage.getItem(Bo.IsConnectionSuccessful)),this.clickEvent.cancelDbLoad.subscribe({next:e=>{e&&this.connectRequest&&(this.connectRequest.unsubscribe(),this.getSchemaRequest&&this.getSchemaRequest.unsubscribe())}})}testConn(){this.clickEvent.openDatabaseLoader("test-connection",this.connectForm.value.dbName);const{dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l,dialect:u}=this.connectForm.value;localStorage.setItem(Bo.DirectConnectForm,JSON.stringify(this.connectForm.value)),this.connectRequest=this.fetch.connectTodb({dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l},u).subscribe({next:()=>{this.snackbarService.openSnackBar("SUCCESS! Spanner migration tool was able to successfully ping source database","Close",3),localStorage.setItem(Bo.IsConnectionSuccessful,"true"),this.clickEvent.closeDatabaseLoader()},error:g=>{this.isTestConnectionSuccessful=!1,this.snackbarService.openSnackBar(g.error,"Close"),localStorage.setItem(Bo.IsConnectionSuccessful,"false"),this.clickEvent.closeDatabaseLoader()}})}connectToDb(){this.clickEvent.openDatabaseLoader("direct",this.connectForm.value.dbName),window.scroll(0,0),this.data.resetStore(),localStorage.clear();const{dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l,dialect:u}=this.connectForm.value;localStorage.setItem(Bo.DirectConnectForm,JSON.stringify(this.connectForm.value)),this.connectRequest=this.fetch.connectTodb({dbEngine:e,isSharded:i,hostName:o,port:r,userName:s,password:a,dbName:l},u).subscribe({next:()=>{this.getSchemaRequest=this.data.getSchemaConversionFromDb(),this.data.conv.subscribe(g=>{localStorage.setItem(In.Config,JSON.stringify({dbEngine:e,hostName:o,port:r,userName:s,password:a,dbName:l})),localStorage.setItem(In.Type,mi.DirectConnect),localStorage.setItem(In.SourceDbName,$p(e)),this.clickEvent.closeDatabaseLoader(),localStorage.removeItem(Bo.DirectConnectForm),this.router.navigate(["/workspace"])})},error:g=>{this.snackbarService.openSnackBar(g.error,"Close"),this.clickEvent.closeDatabaseLoader()}})}refreshDbSpecifcConnectionOptions(){this.connectForm.value.isSharded=!1}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b(Ei),b(Ln),b(Gp),b(Vo),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-direct-connection"]],decls:54,vars:8,consts:[[1,"connect-load-database-container"],[1,"form-container"],[3,"formGroup"],[1,"primary-header"],["appearance","outline",1,"full-width"],["formControlName","dbEngine",3,"selectionChange"],[3,"value",4,"ngFor","ngForOf"],["class","shardingConfig",4,"ngIf"],["matInput","","placeholder","127.0.0.1","name","hostName","type","text","formControlName","hostName"],["matInput","","placeholder","3306","name","port","type","text","formControlName","port"],["matInput","","placeholder","root","name","userName","type","text","formControlName","userName"],["matInput","","name","password","type","password","formControlName","password"],["matInput","","name","dbname","type","text","formControlName","dbName"],["matSelect","","name","dialect","formControlName","dialect","appearance","outline"],["class","success","matTooltip","Source Connection Successful","matTooltipPosition","above",4,"ngIf"],["mat-raised-button","","type","submit","color","accent",3,"disabled","click"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["mat-raised-button","",3,"routerLink"],[3,"value"],[1,"shardingConfig"],[1,"flex-container"],["appearance","outline",1,"flex-item"],["formControlName","isSharded"],["matTooltip","Configure multiple source database instances (shards) and consolidate them by migrating to a single Cloud Spanner instance to take advantage of Spanner's horizontal scalability and consistency semantics.",1,"flex-item","configure"],[1,"flex-item","rounded-chip",3,"removable"],[4,"ngIf"],["matTooltip","Source Connection Successful","matTooltipPosition","above",1,"success"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"form",2)(3,"h3",3),h(4,"Connect to Source Database"),c(),d(5,"mat-form-field",4)(6,"mat-label"),h(7,"Database Engine"),c(),d(8,"mat-select",5),N("selectionChange",function(){return i.refreshDbSpecifcConnectionOptions()}),_(9,AG,2,2,"mat-option",6),c()(),_(10,FG,13,3,"div",7),E(11,"br"),d(12,"h3",3),h(13,"Connection Detail"),c(),d(14,"mat-form-field",4)(15,"mat-label"),h(16,"Hostname"),c(),E(17,"input",8),c(),d(18,"mat-form-field",4)(19,"mat-label"),h(20,"Port"),c(),E(21,"input",9),d(22,"mat-error"),h(23," Only numbers are allowed. "),c()(),E(24,"br"),d(25,"mat-form-field",4)(26,"mat-label"),h(27,"User name"),c(),E(28,"input",10),c(),d(29,"mat-form-field",4)(30,"mat-label"),h(31,"Password"),c(),E(32,"input",11),c(),E(33,"br"),d(34,"mat-form-field",4)(35,"mat-label"),h(36,"Database Name"),c(),E(37,"input",12),c(),E(38,"br"),d(39,"h3",3),h(40,"Spanner Dialect"),c(),d(41,"mat-form-field",4)(42,"mat-label"),h(43,"Select a spanner dialect"),c(),d(44,"mat-select",13),_(45,NG,2,2,"mat-option",6),c()(),E(46,"br"),_(47,LG,2,0,"mat-icon",14),d(48,"button",15),N("click",function(){return i.testConn()}),h(49," Test Connection "),c(),d(50,"button",16),N("click",function(){return i.connectToDb()}),h(51," Connect "),c(),d(52,"button",17),h(53,"Cancel"),c()()()()),2&e&&(f(2),m("formGroup",i.connectForm),f(7),m("ngForOf",i.dbEngineList),f(1),m("ngIf","mysql"===i.connectForm.value.dbEngine),f(35),m("ngForOf",i.dialect),f(2),m("ngIf",i.isTestConnectionSuccessful),f(1),m("disabled",!i.connectForm.valid),f(2),m("disabled",!i.connectForm.valid||!i.isTestConnectionSuccessful),f(2),m("routerLink","/"))},directives:[xi,Hn,Sn,En,Mn,Yi,vn,Xn,si,_i,Et,bn,ki,Td,ci,Dn,Ob,Ht,Bs],styles:[".connect-load-database-container[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin-bottom:0}.configure[_ngcontent-%COMP%]{color:#1967d2}.flex-container[_ngcontent-%COMP%]{display:flex;align-items:center}.flex-item[_ngcontent-%COMP%]{margin-right:8px}.rounded-chip[_ngcontent-%COMP%]{background-color:#fff;color:#0f33ab;border-radius:16px;padding:6px 12px;border:1px solid black;cursor:not-allowed;pointer-events:none}"]}),t})();function VG(t,n){if(1&t){const e=pe();d(0,"button",7),N("click",function(){return se(e),D().onConfirm()}),h(1," Continue "),c()}}let mo=(()=>{class t{constructor(e,i){this.dialogRef=e,this.data=i,void 0===i.title&&(i.title="Update can not be saved")}ngOnInit(){}onConfirm(){this.dialogRef.close(!0)}onDismiss(){this.dialogRef.close(!1)}getIconFromMessageType(){switch(this.data.type){case"warning":return"warning";case"error":return"error";case"success":return"check_circle";default:return"message"}}}return t.\u0275fac=function(e){return new(e||t)(b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-infodialog"]],decls:9,vars:3,consts:[[1,"dialog-container"],["mat-dialog-title",""],["mat-dialog-content",""],[1,"dialog-message",3,"innerHtml"],["mat-dialog-actions","",1,"dialog-action"],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","color","primary",3,"click",4,"ngIf"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h1",1),h(2),c(),d(3,"div",2),E(4,"p",3),c(),d(5,"div",4)(6,"button",5),h(7,"CANCEL"),c(),_(8,VG,2,0,"button",6),c()()),2&e&&(f(2),Ee(i.data.title),f(2),m("innerHtml",i.data.message,uC),f(4),m("ngIf","error"!=i.data.type))},directives:[mU,Dr,Sr,Ht,Ji,Et],styles:[""]}),t})();function hI(t=0,n=td){return t<0&&(t=0),op(t,t,n)}let jG=(()=>{class t{constructor(e,i){this.fetch=e,this.dialog=i,this.healthCheckSubscription=new k,this.unHealthyCheckCount=0,this.MAX_UNHEALTHY_CHECK_ATTEMPTS=5}startHealthCheck(){this.healthCheckSubscription=hI(5e3).subscribe(()=>{this.checkBackendHealth()})}stopHealthCheck(){this.healthCheckSubscription&&this.healthCheckSubscription.unsubscribe()}checkBackendHealth(){this.checkHealth().subscribe(e=>{e?this.unHealthyCheckCount=0:(this.unHealthyCheckCount==this.MAX_UNHEALTHY_CHECK_ATTEMPTS&&this.openHealthDialog(),this.unHealthyCheckCount++)})}openHealthDialog(){let e=this.dialog.open(mo,{width:"500px",data:{message:"Please check terminal logs for more details. In case of a crash please file a github issue with all the details.",type:"error",title:"Spanner migration tool unresponsive"}});this.stopHealthCheck(),e.afterClosed().subscribe(()=>{this.startHealthCheck()})}checkHealth(){return ti(this.fetch.checkBackendHealth()).pipe(je(()=>!0),_n(()=>Ge(!1)))}ngOnDestroy(){this.stopHealthCheck()}}return t.\u0275fac=function(e){return new(e||t)(Q(Ei),Q(wr))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();function HG(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function UG(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function zG(t,n){if(1&t){const e=pe();d(0,"mat-form-field",24)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.sessionName=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"sessionName")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.sessionName)}}function $G(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Session Name"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("sessionName")}),_(5,HG,2,0,"mat-icon",22),_(6,UG,2,0,"mat-icon",22),c()(),_(7,zG,4,1,"mat-form-field",23),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.sessionName),f(1),m("ngIf",!e.displayFilter.sessionName),f(1),m("ngIf",e.displayFilter.sessionName)}}function GG(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.SessionName)}}function WG(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function qG(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function KG(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.editorName=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"editorName")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.editorName)}}function ZG(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Editor"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("editorName")}),_(5,WG,2,0,"mat-icon",22),_(6,qG,2,0,"mat-icon",22),c()(),_(7,KG,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.editorName),f(1),m("ngIf",!e.displayFilter.editorName),f(1),m("ngIf",e.displayFilter.editorName)}}function QG(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.EditorName)}}function YG(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function XG(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function JG(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.databaseType=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"databaseType")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.databaseType)}}function eW(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Database Type"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("databaseType")}),_(5,YG,2,0,"mat-icon",22),_(6,XG,2,0,"mat-icon",22),c()(),_(7,JG,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.databaseType),f(1),m("ngIf",!e.displayFilter.databaseType),f(1),m("ngIf",e.displayFilter.databaseType)}}function tW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.DatabaseType)}}function nW(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function iW(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function oW(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.databaseName=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"databaseName")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.databaseName)}}function rW(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Database Name"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("databaseName")}),_(5,nW,2,0,"mat-icon",22),_(6,iW,2,0,"mat-icon",22),c()(),_(7,oW,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.databaseName),f(1),m("ngIf",!e.displayFilter.databaseName),f(1),m("ngIf",e.displayFilter.databaseName)}}function sW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.DatabaseName)}}function aW(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function lW(t,n){1&t&&(d(0,"mat-icon"),h(1,"filter_list"),c())}function cW(t,n){if(1&t){const e=pe();d(0,"mat-form-field",28)(1,"mat-label"),h(2,"Filter"),c(),d(3,"input",25),N("ngModelChange",function(o){return se(e),D(3).filterColumnsValue.dialect=o})("keyup",function(o){return se(e),D(3).updateFilterValue(o,"dialect")}),c()()}if(2&t){const e=D(3);f(3),m("ngModel",e.filterColumnsValue.dialect)}}function dW(t,n){if(1&t){const e=pe();d(0,"th",19)(1,"div",20)(2,"span"),h(3,"Spanner Dialect"),c(),d(4,"button",21),N("click",function(){return se(e),D(2).toggleFilterDisplay("dialect")}),_(5,aW,2,0,"mat-icon",22),_(6,lW,2,0,"mat-icon",22),c()(),_(7,cW,4,1,"mat-form-field",27),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.displayFilter.dialect),f(1),m("ngIf",!e.displayFilter.dialect),f(1),m("ngIf",e.displayFilter.dialect)}}function uW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.Dialect)}}function hW(t,n){1&t&&(d(0,"th",19),h(1,"Notes"),c())}function pW(t,n){if(1&t){const e=pe();d(0,"button",34),N("click",function(){se(e);const o=D(2).index,r=D(2);return r.notesToggle[o]=!r.notesToggle[o]}),h(1," ... "),c()}}function fW(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e)}}function mW(t,n){if(1&t&&(d(0,"div"),_(1,fW,2,1,"p",35),c()),2&t){const e=D(2).$implicit;f(1),m("ngForOf",e.Notes)}}function gW(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D(2).$implicit;f(1),Ee(null==e.Notes||null==e.Notes[0]?null:e.Notes[0].substring(0,20))}}function _W(t,n){if(1&t&&(d(0,"div",30),_(1,pW,2,0,"button",31),_(2,mW,2,1,"div",32),_(3,gW,2,1,"ng-template",null,33,Bc),c()),2&t){const e=$t(4),i=D(),o=i.$implicit,r=i.index,s=D(2);f(1),m("ngIf",(null==o.Notes?null:o.Notes.length)>1||(null==o.Notes[0]?null:o.Notes[0].length)>20),f(1),m("ngIf",s.notesToggle[r])("ngIfElse",e)}}function bW(t,n){if(1&t&&(d(0,"td",26),_(1,_W,5,3,"div",29),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.Notes)}}function vW(t,n){1&t&&(d(0,"th",19),h(1,"Created At"),c())}function yW(t,n){if(1&t&&(d(0,"td",26),h(1),c()),2&t){const e=n.$implicit,i=D(2);f(1),Ee(i.convertDateTime(e.CreateTimestamp))}}function CW(t,n){1&t&&E(0,"th",19)}function wW(t,n){if(1&t){const e=pe();d(0,"td",26)(1,"button",36),N("click",function(){const r=se(e).$implicit;return D(2).resumeFromSessionFile(r.VersionId)}),h(2," Resume "),c(),d(3,"button",36),N("click",function(){const r=se(e).$implicit;return D(2).downloadSessionFile(r.VersionId,r.SessionName,r.DatabaseType,r.DatabaseName)}),h(4," Download "),c()()}}function DW(t,n){1&t&&E(0,"tr",37)}function SW(t,n){1&t&&E(0,"tr",38)}function MW(t,n){if(1&t&&(d(0,"div",5)(1,"table",6),be(2,7),_(3,$G,8,3,"th",8),_(4,GG,2,1,"td",9),ve(),be(5,10),_(6,ZG,8,3,"th",8),_(7,QG,2,1,"td",9),ve(),be(8,11),_(9,eW,8,3,"th",8),_(10,tW,2,1,"td",9),ve(),be(11,12),_(12,rW,8,3,"th",8),_(13,sW,2,1,"td",9),ve(),be(14,13),_(15,dW,8,3,"th",8),_(16,uW,2,1,"td",9),ve(),be(17,14),_(18,hW,2,0,"th",8),_(19,bW,2,1,"td",9),ve(),be(20,15),_(21,vW,2,0,"th",8),_(22,yW,2,1,"td",9),ve(),be(23,16),_(24,CW,1,0,"th",8),_(25,wW,5,0,"td",9),ve(),_(26,DW,1,0,"tr",17),_(27,SW,1,0,"tr",18),c()()),2&t){const e=D();f(1),m("dataSource",e.filteredDataSource),f(25),m("matHeaderRowDef",e.displayedColumns)("matHeaderRowDefSticky",!0),f(1),m("matRowDefColumns",e.displayedColumns)}}function xW(t,n){if(1&t){const e=pe();d(0,"div",39),hn(),d(1,"svg",40),E(2,"rect",41)(3,"path",42),c(),Qs(),d(4,"button",43),N("click",function(){return se(e),D().openSpannerConfigDialog()}),h(5," Configure Spanner Details "),c(),d(6,"span"),h(7,"Do not have any previous session to display. "),d(8,"u"),h(9," OR "),c(),E(10,"br"),h(11," Invalid Spanner configuration. "),c()()}}let TW=(()=>{class t{constructor(e,i,o,r){this.fetch=e,this.data=i,this.router=o,this.clickEvent=r,this.displayedColumns=["SessionName","EditorName","DatabaseType","DatabaseName","Dialect","Notes","CreateTimestamp","Action"],this.notesToggle=[],this.dataSource=[],this.filteredDataSource=[],this.filterColumnsValue={sessionName:"",editorName:"",databaseType:"",databaseName:"",dialect:""},this.displayFilter={sessionName:!1,editorName:!1,databaseType:!1,databaseName:!1,dialect:!1}}ngOnInit(){this.data.getAllSessions(),this.data.sessions.subscribe({next:e=>{null!=e?(this.filteredDataSource=e,this.dataSource=e):(this.filteredDataSource=[],this.dataSource=[])}})}toggleFilterDisplay(e){this.displayFilter[e]=!this.displayFilter[e]}updateFilterValue(e,i){e.stopPropagation(),this.filterColumnsValue[i]=e.target.value,this.applyFilter()}applyFilter(){this.filteredDataSource=this.dataSource.filter(e=>!!e.SessionName.toLowerCase().includes(this.filterColumnsValue.sessionName.toLowerCase())).filter(e=>!!e.EditorName.toLowerCase().includes(this.filterColumnsValue.editorName.toLowerCase())).filter(e=>!!e.DatabaseType.toLowerCase().includes(this.filterColumnsValue.databaseType.toLowerCase())).filter(e=>!!e.DatabaseName.toLowerCase().includes(this.filterColumnsValue.databaseName.toLowerCase())).filter(e=>!!e.Dialect.toLowerCase().includes(this.filterColumnsValue.dialect.toLowerCase()))}downloadSessionFile(e,i,o,r){this.fetch.getConvForSession(e).subscribe(s=>{var a=document.createElement("a");a.href=URL.createObjectURL(s),a.download=`${i}_${o}_${r}.json`,a.click()})}resumeFromSessionFile(e){this.data.resetStore(),this.data.getSchemaConversionFromResumeSession(e),this.data.conv.subscribe(i=>{localStorage.setItem(In.Config,e),localStorage.setItem(In.Type,mi.ResumeSession),this.router.navigate(["/workspace"])})}openSpannerConfigDialog(){this.clickEvent.openSpannerConfig()}convertDateTime(e){return(e=(e=new Date(e).toString()).substring(e.indexOf(" ")+1)).substring(0,e.indexOf("("))}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Ln),b(Jn),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-session-listing"]],decls:8,vars:2,consts:[[1,"sessions-wrapper"],[1,"primary-header"],[1,"summary"],["class","session-container mat-elevation-z3",4,"ngIf"],["class","mat-elevation-z3 warning-container",4,"ngIf"],[1,"session-container","mat-elevation-z3"],["mat-table","",3,"dataSource"],["matColumnDef","SessionName"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","EditorName"],["matColumnDef","DatabaseType"],["matColumnDef","DatabaseName"],["matColumnDef","Dialect"],["matColumnDef","Notes"],["matColumnDef","CreateTimestamp"],["matColumnDef","Action"],["mat-header-row","",4,"matHeaderRowDef","matHeaderRowDefSticky"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],[1,"table-header-container"],["mat-icon-button","",3,"click"],[4,"ngIf"],["appearance","standard","class","full-width",4,"ngIf"],["appearance","standard",1,"full-width"],["matInput","","autocomplete","off",3,"ngModel","ngModelChange","keyup"],["mat-cell",""],["appearance","standard",4,"ngIf"],["appearance","standard"],["class","notes-wrapper",4,"ngIf"],[1,"notes-wrapper"],["class","notes-toggle-button",3,"click",4,"ngIf"],[4,"ngIf","ngIfElse"],["short",""],[1,"notes-toggle-button",3,"click"],[4,"ngFor","ngForOf"],["mat-button","","color","primary",3,"click"],["mat-header-row",""],["mat-row",""],[1,"mat-elevation-z3","warning-container"],["width","49","height","48","viewBox","0 0 49 48","fill","none","xmlns","http://www.w3.org/2000/svg"],["x","0.907227","width","48","height","48","rx","4","fill","#E6ECFA"],["fill-rule","evenodd","clip-rule","evenodd","d","M17.9072 15C16.8027 15 15.9072 15.8954 15.9072 17V31C15.9072 32.1046 16.8027 33 17.9072 33H31.9072C33.0118 33 33.9072 32.1046 33.9072 31V17C33.9072 15.8954 33.0118 15 31.9072 15H17.9072ZM20.9072 18H18.9072V20H20.9072V18ZM21.9072 18H23.9072V20H21.9072V18ZM20.9072 23H18.9072V25H20.9072V23ZM21.9072 23H23.9072V25H21.9072V23ZM20.9072 28H18.9072V30H20.9072V28ZM21.9072 28H23.9072V30H21.9072V28ZM30.9072 18H24.9072V20H30.9072V18ZM24.9072 23H30.9072V25H24.9072V23ZM30.9072 28H24.9072V30H30.9072V28Z","fill","#3367D6"],["mat-button","","color","primary",1,"spanner-config-button",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h3",1),h(2,"Session history"),c(),d(3,"div",2),h(4," Choose a session to resume an existing migration session, or download the session file. "),c(),E(5,"br"),_(6,MW,28,4,"div",3),_(7,xW,12,0,"div",4),c()),2&e&&(f(6),m("ngIf",i.dataSource.length>0),f(1),m("ngIf",0===i.dataSource.length))},directives:[Et,As,Jr,Xr,es,Ht,bn,En,Mn,ci,Dn,vn,El,Yr,ts,si,Ps,Fs,Rs,Ns],styles:[".session-container[_ngcontent-%COMP%]{max-height:500px;overflow:auto}.session-container[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:13px}table[_ngcontent-%COMP%]{width:100%}table[_ngcontent-%COMP%] .table-header-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.sessions-wrapper[_ngcontent-%COMP%]{margin-top:20px}.sessions-wrapper[_ngcontent-%COMP%] .warning-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:center;height:57vh;text-align:center}.sessions-wrapper[_ngcontent-%COMP%] .warning-container[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{margin-bottom:10px}.sessions-wrapper[_ngcontent-%COMP%] .warning-container[_ngcontent-%COMP%] .spanner-config-button[_ngcontent-%COMP%]{text-decoration:underline}.mat-column-Notes[_ngcontent-%COMP%]{max-width:200px;padding-right:10px}.notes-toggle-button[_ngcontent-%COMP%]{float:right;margin-right:32px;background-color:#f5f5f5;border:none;border-radius:2px;padding:0 5px 5px}.notes-toggle-button[_ngcontent-%COMP%]:hover{background-color:#ebe7e7;cursor:pointer}.notes-wrapper[_ngcontent-%COMP%]{margin-top:10px}.mat-column-SessionName[_ngcontent-%COMP%], .mat-column-EditorName[_ngcontent-%COMP%], .mat-column-DatabaseType[_ngcontent-%COMP%], .mat-column-DatabaseName[_ngcontent-%COMP%], .mat-column-Dialect[_ngcontent-%COMP%]{width:13vw;min-width:150px}.mat-column-Action[_ngcontent-%COMP%], .mat-column-Notes[_ngcontent-%COMP%], .mat-column-CreateTimestamp[_ngcontent-%COMP%]{width:15vw;min-width:150px}.mat-form-field[_ngcontent-%COMP%]{width:80%}"]}),t})(),kW=(()=>{class t{constructor(e,i,o){this.dialog=e,this.router=i,this.healthCheckService=o}ngOnInit(){this.healthCheckService.startHealthCheck(),null!=localStorage.getItem(le.IsMigrationInProgress)&&"true"===localStorage.getItem(le.IsMigrationInProgress)&&(this.dialog.open(mo,{data:{title:"Redirecting to prepare migration page",message:"Another migration already in progress",type:"error"},maxWidth:"500px"}),this.router.navigate(["/prepare-migration"]))}}return t.\u0275fac=function(e){return new(e||t)(b(wr),b(Jn),b(jG))},t.\u0275cmp=Ae({type:t,selectors:[["app-home"]],decls:21,vars:4,consts:[[1,"container"],[1,"primary-header"],[1,"summary","global-font-color","body-font-size"],["href","https://github.com/GoogleCloudPlatform/spanner-migration-tool#readme","target","_blank"],[1,"btn-source-select"],["mat-raised-button","","color","primary",1,"split-button-left",3,"routerLink"],["mat-raised-button","","color","primary",1,"split-button-right",3,"matMenuTriggerFor"],["aria-hidden","false","aria-label","More options"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"routerLink"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"h3",1),h(2,"Get started with Spanner migration tool"),c(),d(3,"div",2),h(4," Spanner migration tool (formerly known as HarbourBridge) is a stand-alone open source tool for Cloud Spanner evaluation and migration, using data from an existing PostgreSQL, MySQL, SQL Server, Oracle or DynamoDB database. "),d(5,"a",3),h(6,"Learn More"),c(),h(7,". "),c(),d(8,"div",4)(9,"button",5),h(10," Connect to database "),c(),d(11,"button",6)(12,"mat-icon",7),h(13,"expand_more"),c()(),d(14,"mat-menu",8,9)(16,"button",10),h(17,"Load database dump"),c(),d(18,"button",10),h(19,"Load session file"),c()()(),E(20,"app-session-listing"),c()),2&e){const o=$t(15);f(9),m("routerLink","/source/direct-connection"),f(2),m("matMenuTriggerFor",o),f(5),m("routerLink","/source/load-dump"),f(2),m("routerLink","/source/load-session")}},directives:[Ht,Bs,Nl,bn,Fl,Kr,TW],styles:[".container[_ngcontent-%COMP%]{padding:7px 27px}.container[_ngcontent-%COMP%] .summary[_ngcontent-%COMP%]{width:500px;font-weight:lighter}.container[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 5px}.container[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border-color:#fff;margin-bottom:20px}.container[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%]{margin:20px 0;padding-bottom:5px}.container[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-left[_ngcontent-%COMP%]{border-top-right-radius:0;border-bottom-right-radius:0}.container[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-right[_ngcontent-%COMP%]{width:30px!important;min-width:unset!important;padding:0 2px;border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px solid #fafafa}"]}),t})(),Ii=(()=>{class t{constructor(){this.sidenavOpenSub=new vt(!1),this.sidenavComponentSub=new vt(""),this.sidenavRuleTypeSub=new vt(""),this.sidenavAddIndexTableSub=new vt(""),this.setSidenavDatabaseNameSub=new vt(""),this.ruleDataSub=new vt({}),this.displayRuleFlagSub=new vt(!1),this.setMiddleColumn=new vt(!1),this.isSidenav=this.sidenavOpenSub.asObservable(),this.sidenavComponent=this.sidenavComponentSub.asObservable(),this.sidenavRuleType=this.sidenavRuleTypeSub.asObservable(),this.sidenavAddIndexTable=this.sidenavAddIndexTableSub.asObservable(),this.sidenavDatabaseName=this.setSidenavDatabaseNameSub.asObservable(),this.ruleData=this.ruleDataSub.asObservable(),this.displayRuleFlag=this.displayRuleFlagSub.asObservable(),this.setMiddleColumnComponent=this.setMiddleColumn.asObservable()}openSidenav(){this.sidenavOpenSub.next(!0)}closeSidenav(){this.sidenavOpenSub.next(!1)}setSidenavComponent(e){this.sidenavComponentSub.next(e)}setSidenavRuleType(e){this.sidenavRuleTypeSub.next(e)}setSidenavAddIndexTable(e){this.sidenavAddIndexTableSub.next(e)}setSidenavDatabaseName(e){this.setSidenavDatabaseNameSub.next(e)}setRuleData(e){this.ruleDataSub.next(e)}setDisplayRuleFlag(e){this.displayRuleFlagSub.next(e)}setMiddleColComponent(e){this.setMiddleColumn.next(e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),pI=(()=>{class t{constructor(e){this.sidenav=e}ngOnInit(){}closeInstructionSidenav(){this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Ii))},t.\u0275cmp=Ae({type:t,selectors:[["app-instruction"]],decls:150,vars:0,consts:[[1,"instructions-div"],[1,"instruction-header-div"],["mat-icon-button","",3,"click"],["src","../../../assets/icons/google-spanner-logo.png",1,"instructions-icon"],[1,"textCenter"],[1,"instructions-main-heading"],[1,"instructions-sub-heading"],[1,"instructions-command"],["href","https://github.com/GoogleCloudPlatform/spanner-migration-tool",1,"instructionsLink"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"button",2),N("click",function(){return i.closeInstructionSidenav()}),d(3,"mat-icon"),h(4,"close"),c()()(),E(5,"img",3),d(6,"h1",4),h(7,"Spanner migration tool User Manual"),c(),E(8,"br")(9,"br"),d(10,"h3",5),h(11,"1 \xa0 \xa0 \xa0Introduction"),c(),d(12,"p"),h(13," Spanner migration tool (formerly known as HarbourBridge) is a stand-alone open source tool for Cloud Spanner evaluation, using data from an existing PostgreSQL or MySQL database. The tool ingests schema and data from either a pg_dump/mysqldump file or directly from the source database, automatically builds a Spanner schema, and creates a new Spanner database populated with data from the source database. "),E(14,"br")(15,"br")(16,"br"),h(17," Spanner migration tool is designed to simplify Spanner evaluation, and in particular to bootstrap the process by getting moderate-size PostgreSQL/MySQL datasets into Spanner (up to a few tens of GB). Many features of PostgreSQL/MySQL, especially those that don't map directly to Spanner features, are ignored, e.g. (non-primary) indexes, functions, and sequences. Types such as integers, floats, char/text, bools, timestamps, and (some) array types, map fairly directly to Spanner, but many other types do not and instead are mapped to Spanner's STRING(MAX). "),c(),E(18,"br"),d(19,"h4",6),h(20,"1.1 \xa0 \xa0 \xa0Spanner migration tool UI"),c(),d(21,"p"),h(22," Spanner migration tool UI is designed to focus on generating spanner schema from either a pg_dump/mysqldump file or directly from the source database and providing edit functionality to the spanner schema and thereby creating a new spanner database populated with new data. UI gives the provision to edit column name, edit data type, edit constraints, drop foreign key and drop secondary index of spanner schema. "),c(),E(23,"br"),d(24,"h3",5),h(25,"2 \xa0 \xa0 \xa0Key Features of UI"),c(),d(26,"ul")(27,"li"),h(28,"Connecting to a new database"),c(),d(29,"li"),h(30,"Load dump file"),c(),d(31,"li"),h(32,"Load session file"),c(),d(33,"li"),h(34,"Storing session for each conversion"),c(),d(35,"li"),h(36,"Edit data type globally for each table in schema"),c(),d(37,"li"),h(38,"Edit data type, column name, constraint for a particular table"),c(),d(39,"li"),h(40,"Edit foreign key and secondary index name"),c(),d(41,"li"),h(42,"Drop a column from a table"),c(),d(43,"li"),h(44,"Drop foreign key from a table"),c(),d(45,"li"),h(46,"Drop secondary index from a table"),c(),d(47,"li"),h(48,"Convert foreign key into interleave table"),c(),d(49,"li"),h(50,"Search a table"),c(),d(51,"li"),h(52,"Download schema, report and session files"),c()(),E(53,"br"),d(54,"h3",5),h(55,"3 \xa0 \xa0 \xa0UI Setup"),c(),d(56,"ul")(57,"li"),h(58,"Install go in local"),c(),d(59,"li"),h(60," Clone Spanner migration tool project and run following command in the terminal: "),E(61,"br"),d(62,"span",7),h(63,"go run main.go --web"),c()(),d(64,"li"),h(65,"Open "),d(66,"span",7),h(67,"http://localhost:8080"),c(),h(68,"in browser"),c()(),E(69,"br"),d(70,"h3",5),h(71," 4 \xa0 \xa0 \xa0Different modes to select source database "),c(),d(72,"h4",6),h(73,"4.1 \xa0 \xa0 \xa0Connect to Database"),c(),d(74,"ul")(75,"li"),h(76,"Enter database details in connect to database dialog box"),c(),d(77,"li"),h(78," Input Fields: database type, database host, database port, database user, database name, database password "),c()(),d(79,"h4",6),h(80,"4.2 \xa0 \xa0 \xa0Load Database Dump"),c(),d(81,"ul")(82,"li"),h(83,"Enter dump file path in load database dialog box"),c(),d(84,"li"),h(85,"Input Fields: database type, file path"),c()(),d(86,"h4",6),h(87,"4.3 \xa0 \xa0 \xa0Import Schema File"),c(),d(88,"ul")(89,"li"),h(90,"Enter session file path in load session dialog box"),c(),d(91,"li"),h(92,"Input Fields: database type, session file path"),c()(),d(93,"h3",5),h(94,"5 \xa0 \xa0 \xa0Session Table"),c(),d(95,"ul")(96,"li"),h(97,"Session table is used to store the previous sessions of schema conversion"),c()(),d(98,"h3",5),h(99,"6 \xa0 \xa0 \xa0Edit Global Data Type"),c(),d(100,"ul")(101,"li"),h(102,"Click on edit global data type button on the screen"),c(),d(103,"li"),h(104,"Select required spanner data type from the dropdown available for each source data type"),c(),d(105,"li"),h(106,"Click on next button after making all the changes"),c()(),d(107,"h3",5),h(108," 7 \xa0 \xa0 \xa0Edit Spanner Schema for a particular table "),c(),d(109,"ul")(110,"li"),h(111,"Expand any table"),c(),d(112,"li"),h(113,"Click on edit spanner schema button"),c(),d(114,"li"),h(115,"Edit column name/ data type/ constraint of spanner schema"),c(),d(116,"li"),h(117,"Edit name of secondary index or foreign key"),c(),d(118,"li"),h(119,"Select to convert foreign key to interleave or use as is (if option is available)"),c(),d(120,"li"),h(121,"Drop a column by unselecting any checkbox"),c(),d(122,"li"),h(123," Drop a foreign key or secondary index by expanding foreign keys or secondary indexes tab inside table "),c(),d(124,"li"),h(125,"Click on save changes button to save the changes"),c(),d(126,"li"),h(127," If current table is involved in foreign key/secondary indexes relationship with other table then user will be prompt to delete foreign key or secondary indexes and then proceed with save changes "),c()(),d(128,"p"),h(129,"- Warning before deleting secondary index from a table"),c(),d(130,"p"),h(131,"- Error on saving changes"),c(),d(132,"p"),h(133,"- Changes saved successfully after resolving all errors"),c(),d(134,"h3",5),h(135,"8 \xa0 \xa0 \xa0Download Session File"),c(),d(136,"ul")(137,"li"),h(138,"Save all the changes done in spanner schema table wise or globally"),c(),d(139,"li"),h(140,"Click on download session file button on the top right corner"),c(),d(141,"li"),h(142,"Save the generated session file with all the changes in local machine"),c()(),d(143,"h3",5),h(144,"9 \xa0 \xa0 \xa0How to use Session File"),c(),d(145,"p"),h(146," Please refer below link to get more information on how to use session file with Spanner migration tool "),c(),d(147,"a",8),h(148,"Refer this to use Session File"),c(),E(149,"br"),c())},directives:[Ht,bn],styles:[".instructions-div[_ngcontent-%COMP%]{padding:5px 20px 20px}.instructions-div[_ngcontent-%COMP%] .instruction-header-div[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.instructions-icon[_ngcontent-%COMP%]{height:200px;display:block;margin-left:auto;margin-right:auto}.textCenter[_ngcontent-%COMP%]{text-align:center}.instructions-main-heading[_ngcontent-%COMP%]{font-size:1.25rem;color:#4285f4;font-weight:700}.instructions-sub-heading[_ngcontent-%COMP%]{font-size:1rem;color:#4285f4;font-weight:700}.instructions-command[_ngcontent-%COMP%]{background-color:#8080806b;border-radius:5px;padding:0 5px}.instructions-img-width[_ngcontent-%COMP%]{width:800px}.instructionsLink[_ngcontent-%COMP%]{color:#4285f4;text-decoration:underline}"]}),t})();function EW(t,n){if(1&t&&(hn(),E(0,"circle",4)),2&t){const e=D(),i=$t(1);pi("animation-name","mat-progress-spinner-stroke-rotate-"+e._spinnerAnimationLabel)("stroke-dashoffset",e._getStrokeDashOffset(),"px")("stroke-dasharray",e._getStrokeCircumference(),"px")("stroke-width",e._getCircleStrokeWidth(),"%")("transform-origin",e._getCircleTransformOrigin(i)),et("r",e._getCircleRadius())}}function IW(t,n){if(1&t&&(hn(),E(0,"circle",4)),2&t){const e=D(),i=$t(1);pi("stroke-dashoffset",e._getStrokeDashOffset(),"px")("stroke-dasharray",e._getStrokeCircumference(),"px")("stroke-width",e._getCircleStrokeWidth(),"%")("transform-origin",e._getCircleTransformOrigin(i)),et("r",e._getCircleRadius())}}const AW=Gr(class{constructor(t){this._elementRef=t}},"primary"),PW=new _e("mat-progress-spinner-default-options",{providedIn:"root",factory:function RW(){return{diameter:100}}});class eo extends AW{constructor(n,e,i,o,r,s,a,l){super(n),this._document=i,this._diameter=100,this._value=0,this._resizeSubscription=k.EMPTY,this.mode="determinate";const u=eo._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),u.has(i.head)||u.set(i.head,new Set([100])),this._noopAnimations="NoopAnimations"===o&&!!r&&!r._forceAnimations,"mat-spinner"===n.nativeElement.nodeName.toLowerCase()&&(this.mode="indeterminate"),r&&(r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth)),e.isBrowser&&e.SAFARI&&a&&s&&l&&(this._resizeSubscription=a.change(150).subscribe(()=>{"indeterminate"===this.mode&&l.run(()=>s.markForCheck())}))}get diameter(){return this._diameter}set diameter(n){this._diameter=Zn(n),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(n){this._strokeWidth=Zn(n)}get value(){return"determinate"===this.mode?this._value:0}set value(n){this._value=Math.max(0,Math.min(100,Zn(n)))}ngOnInit(){const n=this._elementRef.nativeElement;this._styleRoot=cM(n)||this._document.head,this._attachStyleNode(),n.classList.add("mat-progress-spinner-indeterminate-animation")}ngOnDestroy(){this._resizeSubscription.unsubscribe()}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const n=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${n} ${n}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_getCircleTransformOrigin(n){var e;const i=50*(null!==(e=n.currentScale)&&void 0!==e?e:1);return`${i}% ${i}%`}_attachStyleNode(){const n=this._styleRoot,e=this._diameter,i=eo._diameters;let o=i.get(n);if(!o||!o.has(e)){const r=this._document.createElement("style");r.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),r.textContent=this._getAnimationText(),n.appendChild(r),o||(o=new Set,i.set(n,o)),o.add(e)}}_getAnimationText(){const n=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*n).replace(/END_VALUE/g,""+.2*n).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}eo._diameters=new WeakMap,eo.\u0275fac=function(n){return new(n||eo)(b(He),b(dn),b(ht,8),b(gn,8),b(PW),b(At),b(yr),b(Je))},eo.\u0275cmp=Ae({type:eo,selectors:[["mat-progress-spinner"],["mat-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner","mat-spinner"],hostVars:10,hostBindings:function(n,e){2&n&&(et("aria-valuemin","determinate"===e.mode?0:null)("aria-valuemax","determinate"===e.mode?100:null)("aria-valuenow","determinate"===e.mode?e.value:null)("mode",e.mode),pi("width",e.diameter,"px")("height",e.diameter,"px"),rt("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color",diameter:"diameter",strokeWidth:"strokeWidth",mode:"mode",value:"value"},exportAs:["matProgressSpinner"],features:[Ce],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(n,e){1&n&&(hn(),d(0,"svg",0,1),_(2,EW,1,11,"circle",2),_(3,IW,1,9,"circle",3),c()),2&n&&(pi("width",e.diameter,"px")("height",e.diameter,"px"),m("ngSwitch","indeterminate"===e.mode),et("viewBox",e._getViewBox()),f(2),m("ngSwitchCase",!0),f(1),m("ngSwitchCase",!1))},directives:[vl,nh],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}\n"],encapsulation:2,changeDetection:0});let NW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[ft,qi],ft]}),t})();function LW(t,n){if(1&t&&(d(0,"mat-option",17),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function BW(t,n){1&t&&E(0,"mat-spinner",18),2&t&&m("diameter",25)}function VW(t,n){1&t&&(d(0,"mat-icon",19),h(1,"check_circle"),c())}function jW(t,n){1&t&&(d(0,"mat-icon",20),h(1,"cancel"),c())}function HW(t,n){if(1&t&&(d(0,"mat-option",17),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}let UW=(()=>{class t{constructor(e,i,o){this.data=e,this.router=i,this.clickEvent=o,this.connectForm=new an({dbEngine:new X("mysqldump",[de.required]),filePath:new X("",[de.required]),dialect:new X("",[de.required])}),this.dbEngineList=[{value:"mysqldump",displayName:"MySQL"},{value:"pg_dump",displayName:"PostgreSQL"}],this.dialect=cI,this.fileToUpload=null,this.uploadStart=!1,this.uploadSuccess=!1,this.uploadFail=!1,this.getSchemaRequest=null}ngOnInit(){this.clickEvent.cancelDbLoad.subscribe({next:e=>{e&&this.getSchemaRequest&&this.getSchemaRequest.unsubscribe()}})}convertFromDump(){this.clickEvent.openDatabaseLoader("dump",""),this.data.resetStore(),localStorage.clear();const{dbEngine:e,filePath:i,dialect:o}=this.connectForm.value,a={Config:{Driver:e,Path:i},SpannerDetails:{Dialect:o}};this.getSchemaRequest=this.data.getSchemaConversionFromDump(a),this.data.conv.subscribe(l=>{localStorage.setItem(In.Config,JSON.stringify(a)),localStorage.setItem(In.Type,mi.DumpFile),localStorage.setItem(In.SourceDbName,$p(e)),this.clickEvent.closeDatabaseLoader(),this.router.navigate(["/workspace"])})}handleFileInput(e){var i;let o=e.target.files;o&&(this.fileToUpload=o.item(0),this.connectForm.patchValue({filePath:null===(i=this.fileToUpload)||void 0===i?void 0:i.name}),this.fileToUpload&&this.uploadFile())}uploadFile(){var e;if(this.fileToUpload){this.uploadStart=!0,this.uploadFail=!1,this.uploadSuccess=!1;const i=new FormData;i.append("myFile",this.fileToUpload,null===(e=this.fileToUpload)||void 0===e?void 0:e.name),this.data.uploadFile(i).subscribe(o=>{""==o?this.uploadSuccess=!0:this.uploadFail=!0})}}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Jn),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-load-dump"]],decls:36,vars:8,consts:[[1,"connect-load-database-container"],[1,"form-container"],[3,"formGroup","ngSubmit"],[1,"primary-header"],["appearance","outline",1,"full-width"],["matSelect","","name","dbEngine","formControlName","dbEngine","appearance","outline"],[3,"value",4,"ngFor","ngForOf"],["matInput","","placeholder","File path","name","filePath","type","text","formControlName","filePath","readonly","",3,"click"],["matSuffix","",3,"diameter",4,"ngIf"],["matSuffix","","class","success",4,"ngIf"],["matSuffix","","class","danger",4,"ngIf"],["mat-stroked-button","","type","button",3,"click"],["hidden","","type","file",3,"change"],["file",""],["matSelect","","name","dialect","formControlName","dialect","appearance","outline"],["mat-raised-button","","type","submit","color","primary",3,"disabled"],["mat-raised-button","",3,"routerLink"],[3,"value"],["matSuffix","",3,"diameter"],["matSuffix","",1,"success"],["matSuffix","",1,"danger"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"div",1)(2,"form",2),N("ngSubmit",function(){return i.convertFromDump()}),d(3,"h3",3),h(4,"Load from database dump"),c(),d(5,"mat-form-field",4)(6,"mat-label"),h(7,"Database Engine"),c(),d(8,"mat-select",5),_(9,LW,2,2,"mat-option",6),c()(),d(10,"h3",3),h(11,"Dump File"),c(),d(12,"mat-form-field",4)(13,"mat-label"),h(14,"File path"),c(),d(15,"input",7),N("click",function(){return se(o),$t(22).click()}),c(),_(16,BW,1,1,"mat-spinner",8),_(17,VW,2,0,"mat-icon",9),_(18,jW,2,0,"mat-icon",10),c(),d(19,"button",11),N("click",function(){return se(o),$t(22).click()}),h(20,"Upload File"),c(),d(21,"input",12,13),N("change",function(s){return i.handleFileInput(s)}),c(),E(23,"br"),d(24,"h3",3),h(25,"Spanner Dialect"),c(),d(26,"mat-form-field",4)(27,"mat-label"),h(28,"Select a spanner dialect"),c(),d(29,"mat-select",14),_(30,HW,2,2,"mat-option",6),c()(),E(31,"br"),d(32,"button",15),h(33," Convert "),c(),d(34,"button",16),h(35,"Cancel"),c()()()()}2&e&&(f(2),m("formGroup",i.connectForm),f(7),m("ngForOf",i.dbEngineList),f(7),m("ngIf",i.uploadStart&&!i.uploadSuccess&&!i.uploadFail),f(1),m("ngIf",i.uploadStart&&i.uploadSuccess),f(1),m("ngIf",i.uploadStart&&i.uploadFail),f(12),m("ngForOf",i.dialect),f(2),m("disabled",!i.connectForm.valid||!i.uploadSuccess),f(2),m("routerLink","/"))},directives:[xi,Hn,Sn,En,Mn,Yi,vn,Xn,si,_i,ci,Dn,Et,eo,Ab,bn,Ht,Bs],styles:[""]}),t})();function zW(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function $W(t,n){1&t&&E(0,"mat-spinner",17),2&t&&m("diameter",25)}function GW(t,n){1&t&&(d(0,"mat-icon",18),h(1,"check_circle"),c())}function WW(t,n){1&t&&(d(0,"mat-icon",19),h(1,"cancel"),c())}let qW=(()=>{class t{constructor(e,i,o){this.data=e,this.router=i,this.clickEvent=o,this.connectForm=new an({dbEngine:new X("mysql",[de.required]),filePath:new X("",[de.required])}),this.dbEngineList=[{value:"mysql",displayName:"MySQL"},{value:"sqlserver",displayName:"SQL Server"},{value:"oracle",displayName:"Oracle"},{value:"postgres",displayName:"PostgreSQL"}],this.fileToUpload=null,this.uploadStart=!1,this.uploadSuccess=!1,this.uploadFail=!1,this.getSchemaRequest=null}ngOnInit(){this.clickEvent.cancelDbLoad.subscribe({next:e=>{e&&this.getSchemaRequest&&this.getSchemaRequest.unsubscribe()}})}convertFromSessionFile(){this.clickEvent.openDatabaseLoader("session",""),this.data.resetStore(),localStorage.clear();const{dbEngine:e,filePath:i}=this.connectForm.value,o={driver:e,filePath:i};this.getSchemaRequest=this.data.getSchemaConversionFromSession(o),this.data.conv.subscribe(r=>{localStorage.setItem(In.Config,JSON.stringify(o)),localStorage.setItem(In.Type,mi.SessionFile),localStorage.setItem(In.SourceDbName,$p(e)),this.clickEvent.closeDatabaseLoader(),this.router.navigate(["/workspace"])})}handleFileInput(e){var i;let o=e.target.files;o&&(this.fileToUpload=o.item(0),this.connectForm.patchValue({filePath:null===(i=this.fileToUpload)||void 0===i?void 0:i.name}),this.fileToUpload&&this.uploadFile())}uploadFile(){var e;if(this.fileToUpload){this.uploadStart=!0,this.uploadFail=!1,this.uploadSuccess=!1;const i=new FormData;i.append("myFile",this.fileToUpload,null===(e=this.fileToUpload)||void 0===e?void 0:e.name),this.data.uploadFile(i).subscribe(o=>{""==o?this.uploadSuccess=!0:this.uploadFail=!0})}}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Jn),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-load-session"]],decls:28,vars:7,consts:[[1,"connect-load-database-container"],[1,"form-container"],[3,"formGroup","ngSubmit"],[1,"primary-header"],["appearance","outline",1,"full-width"],["matSelect","","name","dbEngine","formControlName","dbEngine","appearance","outline"],[3,"value",4,"ngFor","ngForOf"],["matInput","","placeholder","File path","name","filePath","type","text","formControlName","filePath","readonly","",3,"click"],["matSuffix","",3,"diameter",4,"ngIf"],["matSuffix","","class","success",4,"ngIf"],["matSuffix","","class","danger",4,"ngIf"],["mat-stroked-button","","type","button",3,"click"],["hidden","","type","file",3,"change"],["file",""],["mat-raised-button","","type","submit","color","primary",3,"disabled"],["mat-raised-button","",3,"routerLink"],[3,"value"],["matSuffix","",3,"diameter"],["matSuffix","",1,"success"],["matSuffix","",1,"danger"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"div",1)(2,"form",2),N("ngSubmit",function(){return i.convertFromSessionFile()}),d(3,"h3",3),h(4,"Load from session"),c(),d(5,"mat-form-field",4)(6,"mat-label"),h(7,"Database Engine"),c(),d(8,"mat-select",5),_(9,zW,2,2,"mat-option",6),c()(),d(10,"h3",3),h(11,"Session File"),c(),d(12,"mat-form-field",4)(13,"mat-label"),h(14,"File path"),c(),d(15,"input",7),N("click",function(){return se(o),$t(22).click()}),c(),_(16,$W,1,1,"mat-spinner",8),_(17,GW,2,0,"mat-icon",9),_(18,WW,2,0,"mat-icon",10),c(),d(19,"button",11),N("click",function(){return se(o),$t(22).click()}),h(20,"Upload File"),c(),d(21,"input",12,13),N("change",function(s){return i.handleFileInput(s)}),c(),E(23,"br"),d(24,"button",14),h(25," Convert "),c(),d(26,"button",15),h(27,"Cancel"),c()()()()}2&e&&(f(2),m("formGroup",i.connectForm),f(7),m("ngForOf",i.dbEngineList),f(7),m("ngIf",i.uploadStart&&!i.uploadSuccess&&!i.uploadFail),f(1),m("ngIf",i.uploadStart&&i.uploadSuccess),f(1),m("ngIf",i.uploadStart&&i.uploadFail),f(6),m("disabled",!i.connectForm.valid||!i.uploadSuccess),f(2),m("routerLink","/"))},directives:[xi,Hn,Sn,En,Mn,Yi,vn,Xn,si,_i,ci,Dn,Et,eo,Ab,bn,Ht,Bs],styles:[""]}),t})();function KW(t,n){if(1&t&&(d(0,"h3"),h(1),c()),2&t){const e=D();f(1),Se("Reading schema for ",e.databaseName," database. Please wait...")}}function ZW(t,n){1&t&&(d(0,"h4"),h(1,"Tip: Spanner migration tool will read the information schema at source and automatically map it to Cloud Spanner"),c())}function QW(t,n){if(1&t&&(d(0,"h3"),h(1),c()),2&t){const e=D();f(1),Se("Testing connection to ",e.databaseName," database...")}}function YW(t,n){1&t&&(d(0,"h4"),h(1,"Tip: Spanner migration tool is attempting to ping the source database, it will retry a couple of times before timing out."),c())}function XW(t,n){1&t&&(d(0,"h3"),h(1,"Loading the dump file..."),c())}function JW(t,n){1&t&&(d(0,"h3"),h(1,"Loading the session file..."),c())}let eq=(()=>{class t{constructor(e,i){this.router=e,this.clickEvent=i,this.loaderType="",this.databaseName="",this.timeElapsed=0,this.timeElapsedInterval=setInterval(()=>{this.timeElapsed+=1},1e3)}ngOnInit(){this.timeElapsed=0}ngOnDestroy(){clearInterval(this.timeElapsedInterval)}cancelDbLoad(){this.clickEvent.cancelDbLoading(),this.clickEvent.closeDatabaseLoader(),this.router.navigate(["/"])}}return t.\u0275fac=function(e){return new(e||t)(b(Jn),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-database-loader"]],inputs:{loaderType:"loaderType",databaseName:"databaseName"},decls:12,vars:7,consts:[[1,"container","content-height"],["src","../../../assets/gifs/database-loader.gif","alt","database-loader-gif",1,"loader-gif"],[4,"ngIf"],["mat-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0),E(1,"img",1),_(2,KW,2,1,"h3",2),_(3,ZW,2,0,"h4",2),_(4,QW,2,1,"h3",2),_(5,YW,2,0,"h4",2),_(6,XW,2,0,"h3",2),_(7,JW,2,0,"h3",2),d(8,"h5"),h(9),c(),d(10,"button",3),N("click",function(){return i.cancelDbLoad()}),h(11,"Cancel"),c()()),2&e&&(f(2),m("ngIf","direct"===i.loaderType),f(1),m("ngIf","direct"===i.loaderType),f(1),m("ngIf","test-connection"===i.loaderType),f(1),m("ngIf","test-connection"===i.loaderType),f(1),m("ngIf","dump"===i.loaderType),f(1),m("ngIf","session"===i.loaderType),f(2),Se("",i.timeElapsed," seconds have elapsed"))},directives:[Et,Ht],styles:[".container[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;align-items:center}.container[_ngcontent-%COMP%] .loader-gif[_ngcontent-%COMP%]{width:10rem;height:10rem}"]}),t})();function tq(t,n){1&t&&(d(0,"div"),E(1,"router-outlet"),c())}function nq(t,n){if(1&t&&(d(0,"div"),E(1,"app-database-loader",1),c()),2&t){const e=D();f(1),m("loaderType",e.loaderType)("databaseName",e.databaseName)}}let iq=(()=>{class t{constructor(e){this.clickevent=e,this.isDatabaseLoading=!1,this.loaderType="",this.databaseName=""}ngOnInit(){this.clickevent.databaseLoader.subscribe(e=>{this.loaderType=e.type,this.databaseName=e.databaseName,this.isDatabaseLoading=""!==this.loaderType})}}return t.\u0275fac=function(e){return new(e||t)(b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-source-selection"]],decls:2,vars:2,consts:[[4,"ngIf"],[3,"loaderType","databaseName"]],template:function(e,i){1&e&&(_(0,tq,2,0,"div",0),_(1,nq,2,2,"div",0)),2&e&&(m("ngIf",!i.isDatabaseLoading),f(1),m("ngIf",i.isDatabaseLoading))},directives:[Et,Lp,eq],styles:[".mat-card-class[_ngcontent-%COMP%]{padding:0 20px}"]}),t})();var fI=Te(650);function oq(t,n){if(1&t&&(d(0,"h2"),h(1),c()),2&t){const e=D();f(1),Se("Skip ",e.eligibleTables.length," table(s)?")}}function rq(t,n){if(1&t&&(d(0,"h2"),h(1),c()),2&t){const e=D();f(1),Se("Restore ",e.eligibleTables.length," table(s) and all associated indexes?")}}function sq(t,n){1&t&&(d(0,"span",9),h(1," Confirm skip by typing the following below: "),d(2,"b"),h(3,"SKIP"),c(),E(4,"br"),c())}function aq(t,n){1&t&&(d(0,"span",9),h(1," Confirm restoration by typing the following below: "),d(2,"b"),h(3,"RESTORE"),c(),E(4,"br"),c())}function lq(t,n){if(1&t&&(d(0,"div")(1,"b"),h(2,"Note:"),c(),h(3),E(4,"br"),d(5,"b"),h(6,"Already skipped tables:"),c(),h(7),c()),2&t){const e=D();f(3),hl(" You selected ",e.data.tables.length," tables. ",e.ineligibleTables.length," table(s) will not be skipped since they are already skipped."),f(4),Se(" ",e.ineligibleTables," ")}}function cq(t,n){if(1&t&&(d(0,"div")(1,"b"),h(2,"Note:"),c(),h(3),E(4,"br"),d(5,"b"),h(6,"Already active tables:"),c(),h(7),c()),2&t){const e=D();f(3),hl(" You selected ",e.data.tables.length," tables. ",e.ineligibleTables.length," table(s) will not be restored since they are already active."),f(4),Se(" ",e.ineligibleTables," ")}}let mI=(()=>{class t{constructor(e,i){this.data=e,this.dialogRef=i,this.eligibleTables=[],this.ineligibleTables=[];let o="";"SKIP"==this.data.operation?(o="SKIP",this.data.tables.forEach(r=>{r.isDeleted?this.ineligibleTables.push(r.TableName):this.eligibleTables.push(r.TableName)})):(o="RESTORE",this.data.tables.forEach(r=>{r.isDeleted?this.eligibleTables.push(r.TableName):this.ineligibleTables.push(r.TableName)})),this.confirmationInput=new X("",[de.required,de.pattern(o)]),i.disableClose=!0}confirm(){this.dialogRef.close(this.data.operation)}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-bulk-drop-restore-table-dialog"]],decls:19,vars:8,consts:[["mat-dialog-content",""],[4,"ngIf"],[1,"form-container"],["class","form-custom-label",4,"ngIf"],["appearance","outline"],["matInput","","type","text",3,"formControl"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[1,"form-custom-label"]],template:function(e,i){1&e&&(d(0,"div",0),_(1,oq,2,1,"h2",1),_(2,rq,2,1,"h2",1),d(3,"mat-dialog-content")(4,"div",2)(5,"form"),_(6,sq,5,0,"span",3),_(7,aq,5,0,"span",3),d(8,"mat-form-field",4)(9,"mat-label"),h(10,"Confirm"),c(),E(11,"input",5),c(),_(12,lq,8,3,"div",1),_(13,cq,8,3,"div",1),c()()(),d(14,"div",6)(15,"button",7),h(16,"Cancel"),c(),d(17,"button",8),N("click",function(){return i.confirm()}),h(18," Confirm "),c()()()),2&e&&(f(1),m("ngIf","SKIP"==i.data.operation),f(1),m("ngIf","RESTORE"==i.data.operation),f(4),m("ngIf","SKIP"==i.data.operation),f(1),m("ngIf","RESTORE"==i.data.operation),f(4),m("formControl",i.confirmationInput),f(1),m("ngIf","SKIP"==i.data.operation&&0!=i.ineligibleTables.length),f(1),m("ngIf","RESTORE"==i.data.operation&&0!=i.ineligibleTables.length),f(4),m("disabled",!i.confirmationInput.valid))},directives:[Dr,Et,xi,Hn,ks,En,Mn,ci,Dn,vn,Il,Sr,Ht,Ji],styles:[".alert-container[_ngcontent-%COMP%]{padding:.5rem;display:flex;align-items:center;margin-bottom:1rem;background-color:#f8f4f4}.alert-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#f3b300;margin-right:20px}.form-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%}.buttons-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:flex-end}"]}),t})();const gI=function(t){return{"blue-font-color":t}};function dq(t,n){if(1&t&&(d(0,"span",24),h(1),c()),2&t){const e=D();m("ngClass",Kt(2,gI,"source"===e.selectedTab)),f(1),Se(" ",e.srcDbName.toUpperCase()," ")}}function uq(t,n){1&t&&(d(0,"th",25),h(1,"Status"),c())}function hq(t,n){1&t&&(hn(),d(0,"svg",30),E(1,"path",31),c())}function pq(t,n){1&t&&(d(0,"mat-icon",32),h(1," work "),c())}function fq(t,n){1&t&&(d(0,"mat-icon",33),h(1," work_history "),c())}function mq(t,n){if(1&t&&(d(0,"td",26),_(1,hq,2,0,"svg",27),_(2,pq,2,0,"mat-icon",28),_(3,fq,2,0,"mat-icon",29),c()),2&t){const e=n.$implicit;f(1),m("ngIf","EXCELLENT"===e.status||"NONE"===e.status),f(1),m("ngIf","OK"===e.status||"GOOD"===e.status),f(1),m("ngIf","POOR"===e.status)}}function gq(t,n){1&t&&(d(0,"mat-icon",37),h(1,"arrow_upward"),c())}function _q(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_upward"),c())}function bq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_downward"),c())}function vq(t,n){if(1&t){const e=pe();d(0,"th",34),N("click",function(){return se(e),D().srcTableSort()}),d(1,"div")(2,"span"),h(3," Object Name "),c(),_(4,gq,2,0,"mat-icon",35),_(5,_q,2,0,"mat-icon",36),_(6,bq,2,0,"mat-icon",36),c()()}if(2&t){const e=D();f(4),m("ngIf",""===e.srcSortOrder),f(1),m("ngIf","asc"===e.srcSortOrder),f(1),m("ngIf","desc"===e.srcSortOrder)}}function yq(t,n){1&t&&(hn(),d(0,"svg",47),E(1,"path",48),c())}function Cq(t,n){1&t&&(hn(),d(0,"svg",49),E(1,"path",50),c())}function wq(t,n){1&t&&(hn(),d(0,"svg",51),E(1,"path",52),c())}function Dq(t,n){1&t&&(hn(),d(0,"svg",53),E(1,"path",54),c())}function Sq(t,n){if(1&t&&(d(0,"span",55)(1,"mat-icon",56),h(2,"more_vert"),c(),d(3,"mat-menu",null,57)(5,"button",58)(6,"span"),h(7,"Add Index"),c()()()()),2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}function Mq(t,n){if(1&t){const e=pe();d(0,"td",39)(1,"button",40),N("click",function(){const r=se(e).$implicit;return D().srcTreeControl.toggle(r)}),_(2,yq,2,0,"svg",41),_(3,Cq,2,0,"ng-template",null,42,Bc),c(),d(5,"span",43),N("click",function(){const r=se(e).$implicit;return D().objectSelected(r)}),d(6,"span"),_(7,wq,2,0,"svg",44),_(8,Dq,2,0,"svg",45),d(9,"span"),h(10),c()(),_(11,Sq,8,1,"span",46),c()()}if(2&t){const e=n.$implicit,i=$t(4),o=D();f(1),pi("visibility",e.expandable?"":"hidden")("margin-left",10*e.level,"px"),f(1),m("ngIf",o.srcTreeControl.isExpanded(e))("ngIfElse",i),f(5),m("ngIf",o.isTableNode(e.type)),f(1),m("ngIf",o.isIndexNode(e.type)),f(2),Ee(e.name),f(1),m("ngIf",o.isIndexNode(e.type)&&e.isSpannerNode)}}function xq(t,n){1&t&&E(0,"tr",59)}const _I=function(t){return{"selected-row":t}};function Tq(t,n){if(1&t&&E(0,"tr",60),2&t){const e=n.$implicit,i=D();m("ngClass",Kt(1,_I,i.shouldHighlight(e)))}}function kq(t,n){if(1&t&&(d(0,"span",24),h(1," SPANNER DRAFT "),c()),2&t){const e=D();m("ngClass",Kt(1,gI,"spanner"===e.selectedTab))}}function Eq(t,n){1&t&&(d(0,"th",25),h(1,"Status"),c())}function Iq(t,n){1&t&&(hn(),d(0,"svg",30),E(1,"path",31),c())}function Oq(t,n){1&t&&(d(0,"mat-icon",32),h(1," work "),c())}function Aq(t,n){1&t&&(d(0,"mat-icon",33),h(1," work_history "),c())}function Pq(t,n){1&t&&(d(0,"mat-icon",62),h(1," delete "),c())}function Rq(t,n){if(1&t&&(d(0,"td",26),_(1,Iq,2,0,"svg",27),_(2,Oq,2,0,"mat-icon",28),_(3,Aq,2,0,"mat-icon",29),_(4,Pq,2,0,"mat-icon",61),c()),2&t){const e=n.$implicit;f(1),m("ngIf","EXCELLENT"===e.status||"NONE"===e.status),f(1),m("ngIf","OK"===e.status||"GOOD"===e.status),f(1),m("ngIf","POOR"===e.status),f(1),m("ngIf","DARK"===e.status||1==e.isDeleted)}}function Fq(t,n){1&t&&(d(0,"mat-icon",64),h(1,"arrow_upward"),c())}function Nq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_upward"),c())}function Lq(t,n){1&t&&(d(0,"mat-icon",38),h(1,"arrow_downward"),c())}function Bq(t,n){if(1&t){const e=pe();d(0,"th",34),N("click",function(){return se(e),D().spannerTableSort()}),d(1,"div")(2,"span"),h(3," Object Name "),c(),_(4,Fq,2,0,"mat-icon",63),_(5,Nq,2,0,"mat-icon",36),_(6,Lq,2,0,"mat-icon",36),c()()}if(2&t){const e=D();f(4),m("ngIf",""===e.spannerSortOrder),f(1),m("ngIf","asc"===e.spannerSortOrder),f(1),m("ngIf","desc"===e.spannerSortOrder)}}function Vq(t,n){if(1&t){const e=pe();d(0,"mat-checkbox",69),N("change",function(){se(e);const o=D().$implicit;return D().selectionToggle(o)}),c()}if(2&t){const e=D().$implicit;m("checked",D().checklistSelection.isSelected(e))}}function jq(t,n){1&t&&(hn(),d(0,"svg",47),E(1,"path",48),c())}function Hq(t,n){1&t&&(hn(),d(0,"svg",49),E(1,"path",50),c())}function Uq(t,n){1&t&&(hn(),d(0,"svg",51),E(1,"path",52),c())}function zq(t,n){1&t&&(hn(),d(0,"svg",53),E(1,"path",54),c())}function $q(t,n){if(1&t){const e=pe();d(0,"span",55)(1,"mat-icon",70),h(2,"more_vert"),c(),d(3,"mat-menu",71,57)(5,"button",72),N("click",function(){se(e);const o=D().$implicit;return D().openAddIndexForm(o.parent)}),d(6,"span"),h(7,"Add Index"),c()()()()}if(2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}const Gq=function(){return{sidebar_link:!0}},Wq=function(t){return{"gray-out":t}};function qq(t,n){if(1&t){const e=pe();d(0,"td",65),_(1,Vq,1,1,"mat-checkbox",66),d(2,"button",40),N("click",function(){const r=se(e).$implicit;return D().treeControl.toggle(r)}),_(3,jq,2,0,"svg",41),_(4,Hq,2,0,"ng-template",null,42,Bc),c(),d(6,"span",67),N("click",function(){const r=se(e).$implicit;return D().objectSelected(r)}),d(7,"span"),_(8,Uq,2,0,"svg",44),_(9,zq,2,0,"svg",45),d(10,"span",68),h(11),c()(),_(12,$q,8,1,"span",46),c()()}if(2&t){const e=n.$implicit,i=$t(5),o=D();m("ngClass",Jo(13,Gq)),f(1),m("ngIf",!o.isIndexLikeNode(e)),f(1),pi("visibility",e.expandable?"":"hidden")("margin-left",10*e.level,"px"),f(1),m("ngIf",o.treeControl.isExpanded(e))("ngIfElse",i),f(3),m("ngClass",Kt(14,Wq,e.isDeleted)),f(2),m("ngIf",o.isTableNode(e.type)),f(1),m("ngIf",o.isIndexNode(e.type)),f(2),Ee(e.name),f(1),m("ngIf",o.isIndexNode(e.type))}}function Kq(t,n){1&t&&E(0,"tr",59)}function Zq(t,n){if(1&t&&E(0,"tr",60),2&t){const e=n.$implicit,i=D();m("ngClass",Kt(1,_I,i.shouldHighlight(e)))}}const Nv=function(t){return[t]};let Qq=(()=>{class t{constructor(e,i,o,r,s){this.conversion=e,this.dialog=i,this.data=o,this.sidenav=r,this.clickEvent=s,this.isLeftColumnCollapse=!1,this.currentSelectedObject=null,this.srcSortOrder="",this.spannerSortOrder="",this.srcSearchText="",this.spannerSearchText="",this.selectedTab="spanner",this.selectedDatabase=new Pe,this.selectObject=new Pe,this.updateSpannerTable=new Pe,this.updateSrcTable=new Pe,this.leftCollaspe=new Pe,this.updateSidebar=new Pe,this.spannerTree=[],this.srcTree=[],this.srcDbName="",this.selectedIndex=1,this.transformer=(a,l)=>({expandable:!!a.children&&a.children.length>0,name:a.name,status:a.status,type:a.type,parent:a.parent,parentId:a.parentId,pos:a.pos,isSpannerNode:a.isSpannerNode,level:l,isDeleted:!!a.isDeleted,id:a.id}),this.treeControl=new hk(a=>a.level,a=>a.expandable),this.srcTreeControl=new hk(a=>a.level,a=>a.expandable),this.treeFlattener=new u9(this.transformer,a=>a.level,a=>a.expandable,a=>a.children),this.dataSource=new fk(this.treeControl,this.treeFlattener),this.srcDataSource=new fk(this.srcTreeControl,this.treeFlattener),this.checklistSelection=new Tl(!0,[]),this.displayedColumns=["status","name"]}ngOnInit(){this.clickEvent.tabToSpanner.subscribe({next:e=>{this.setSpannerTab()}})}ngOnChanges(e){var i,o;let r=null===(i=null==e?void 0:e.spannerTree)||void 0===i?void 0:i.currentValue,s=null===(o=null==e?void 0:e.srcTree)||void 0===o?void 0:o.currentValue;s&&(this.srcDataSource.data=s,this.srcTreeControl.expand(this.srcTreeControl.dataNodes[0]),this.srcTreeControl.expand(this.srcTreeControl.dataNodes[1])),r&&(this.dataSource.data=r,this.treeControl.expand(this.treeControl.dataNodes[0]),this.treeControl.expand(this.treeControl.dataNodes[1]))}filterSpannerTable(){this.updateSpannerTable.emit({text:this.spannerSearchText,order:this.spannerSortOrder})}filterSrcTable(){this.updateSrcTable.emit({text:this.srcSearchText,order:this.srcSortOrder})}srcTableSort(){this.srcSortOrder=""===this.srcSortOrder?"asc":"asc"===this.srcSortOrder?"desc":"",this.updateSrcTable.emit({text:this.srcSearchText,order:this.srcSortOrder})}spannerTableSort(){this.spannerSortOrder=""===this.spannerSortOrder?"asc":"asc"===this.spannerSortOrder?"desc":"",this.updateSpannerTable.emit({text:this.spannerSearchText,order:this.spannerSortOrder})}objectSelected(e){this.currentSelectedObject=e,(e.type===Qt.Index||e.type===Qt.Table)&&this.selectObject.emit(e)}leftColumnToggle(){this.isLeftColumnCollapse=!this.isLeftColumnCollapse,this.leftCollaspe.emit()}isTableNode(e){return new RegExp("^tables").test(e)}isIndexNode(e){return new RegExp("^indexes").test(e)}isIndexLikeNode(e){return e.type==Qt.Index||e.type==Qt.Indexes}openAddIndexForm(e){this.sidenav.setSidenavAddIndexTable(e),this.sidenav.setSidenavRuleType("addIndex"),this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("rule"),this.sidenav.setRuleData([]),this.sidenav.setDisplayRuleFlag(!1)}shouldHighlight(e){var i;return e.name===(null===(i=this.currentSelectedObject)||void 0===i?void 0:i.name)&&(e.type===Qt.Table||e.type===Qt.Index)}onTabChanged(){"spanner"==this.selectedTab?(this.selectedTab="source",this.selectedIndex=0):(this.selectedTab="spanner",this.selectedIndex=1),this.selectedDatabase.emit(this.selectedTab),this.currentSelectedObject=null,this.selectObject.emit(void 0)}setSpannerTab(){this.selectedIndex=1}checkDropSelection(){return 0!=this.countSelectionByCategory().eligibleForDrop}checkRestoreSelection(){return 0!=this.countSelectionByCategory().eligibleForRestore}countSelectionByCategory(){let i=0,o=0;return this.checklistSelection.selected.forEach(r=>{r.isDeleted?o+=1:i+=1}),{eligibleForDrop:i,eligibleForRestore:o}}dropSelected(){var i=[];this.checklistSelection.selected.forEach(s=>{""!=s.id&&s.type==Qt.Table&&i.push({TableId:s.id,TableName:s.name,isDeleted:s.isDeleted})});let o=this.dialog.open(mI,{width:"35vw",minWidth:"450px",maxWidth:"600px",maxHeight:"90vh",data:{tables:i,operation:"SKIP"}});var r={TableList:[]};i.forEach(s=>{r.TableList.push(s.TableId)}),o.afterClosed().subscribe(s=>{"SKIP"==s&&(this.data.dropTables(r).pipe(Ot(1)).subscribe(a=>{""===a&&(this.data.getConversionRate(),this.updateSidebar.emit(!0))}),this.checklistSelection.clear())})}restoreSelected(){var i=[];this.checklistSelection.selected.forEach(s=>{""!=s.id&&s.type==Qt.Table&&i.push({TableId:s.id,TableName:s.name,isDeleted:s.isDeleted})});let o=this.dialog.open(mI,{width:"35vw",minWidth:"450px",maxWidth:"600px",data:{tables:i,operation:"RESTORE"}});var r={TableList:[]};i.forEach(s=>{r.TableList.push(s.TableId)}),o.afterClosed().subscribe(s=>{"RESTORE"==s&&(this.data.restoreTables(r).pipe(Ot(1)).subscribe(a=>{this.data.getConversionRate(),this.data.getDdl()}),this.checklistSelection.clear())})}selectionToggle(e){this.checklistSelection.toggle(e);const i=this.treeControl.getDescendants(e);this.checklistSelection.isSelected(e)?this.checklistSelection.select(...i):this.checklistSelection.deselect(...i)}}return t.\u0275fac=function(e){return new(e||t)(b(Da),b(wr),b(Ln),b(Ii),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-object-explorer"]],inputs:{spannerTree:"spannerTree",srcTree:"srcTree",srcDbName:"srcDbName"},outputs:{selectedDatabase:"selectedDatabase",selectObject:"selectObject",updateSpannerTable:"updateSpannerTable",updateSrcTable:"updateSrcTable",leftCollaspe:"leftCollaspe",updateSidebar:"updateSidebar"},features:[nn],decls:59,vars:20,consts:[[1,"container"],[3,"ngClass","selectedIndex","selectedTabChange"],["mat-tab-label",""],[1,"filter-wrapper"],[1,"left"],[1,"material-icons","filter-icon"],[1,"filter-text"],[1,"right"],["placeholder","Filter by table name",3,"ngModel","ngModelChange"],[1,"explorer-table"],["mat-table","",3,"dataSource"],["matColumnDef","status"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","name"],["mat-header-cell","","class","mat-header-cell-name cursor-pointer",3,"click",4,"matHeaderCellDef"],["mat-cell","","class","sidebar_link",4,"matCellDef"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",3,"ngClass",4,"matRowDef","matRowDefColumns"],["clas","delete-selected-btn"],["mat-button","","color","primary",1,"icon","drop",3,"disabled","click"],["clas","restore-selected-btn"],["mat-cell","",3,"ngClass",4,"matCellDef"],["id","left-column-toggle-button",3,"click"],[3,"ngClass"],["mat-header-cell",""],["mat-cell",""],["class","icon success","matTooltip","Can be converted automatically","matTooltipPosition","above","xmlns","http://www.w3.org/2000/svg","width","24","height","24","fill","black",4,"ngIf"],["class","work","matTooltip","Requires minimal conversion changes","matTooltipPosition","above",4,"ngIf"],["class","work_history","matTooltip","Requires high complexity conversion changes","matTooltipPosition","above",4,"ngIf"],["matTooltip","Can be converted automatically","matTooltipPosition","above","xmlns","http://www.w3.org/2000/svg","width","24","height","24","fill","black",1,"icon","success"],["d","m10.4 17.6-2-4.4-4.4-2 4.4-2 2-4.4 2 4.4 4.4 2-4.4 2Zm6.4 1.6-1-2.2-2.2-1 2.2-1 1-2.2 1 2.2 2.2 1-2.2 1Z"],["matTooltip","Requires minimal conversion changes","matTooltipPosition","above",1,"work"],["matTooltip","Requires high complexity conversion changes","matTooltipPosition","above",1,"work_history"],["mat-header-cell","",1,"mat-header-cell-name","cursor-pointer",3,"click"],["class","src-unsorted-icon sort-icon",4,"ngIf"],["class","sort-icon",4,"ngIf"],[1,"src-unsorted-icon","sort-icon"],[1,"sort-icon"],["mat-cell","",1,"sidebar_link"],["mat-icon-button","",3,"click"],["width","12","height","6","viewBox","0 0 12 6","fill","none","xmlns","http://www.w3.org/2000/svg",4,"ngIf","ngIfElse"],["collaps",""],[1,"sidebar_link",3,"click"],["width","18","height","18","viewBox","0 0 18 18","fill","none","xmlns","http://www.w3.org/2000/svg",4,"ngIf"],["width","12","height","14","viewBox","0 0 12 14","fill","none","xmlns","http://www.w3.org/2000/svg",4,"ngIf"],["class","actions",4,"ngIf"],["width","12","height","6","viewBox","0 0 12 6","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M12 0L0 0L6 6L12 0Z","fill","black","fill-opacity","0.54"],["width","6","height","12","viewBox","0 0 6 12","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M-5.24537e-07 2.62268e-07L0 12L6 6L-5.24537e-07 2.62268e-07Z","fill","black","fill-opacity","0.54"],["width","18","height","18","viewBox","0 0 18 18","fill","none","xmlns","http://www.w3.org/2000/svg"],["d","M0 0V18H18V0H0ZM16 2V6H2V2H16ZM7.33 11V8H10.66V11H7.33ZM10.67 13V16H7.34V13H10.67ZM5.33 11H2V8H5.33V11ZM12.67 8H16V11H12.67V8ZM2 13H5.33V16H2V13ZM12.67 16V13H16V16H12.67Z","fill","black","fill-opacity","0.54"],["width","12","height","14","viewBox","0 0 12 14","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M11.005 14C11.555 14 12 13.554 12 13.002V5L10 3V12H2V14H11.005ZM0 0.996C0 0.446 0.438 0 1.003 0H7L9 2.004V10.004C9 10.554 8.554 11 8.002 11H0.998C0.867035 11.0003 0.737304 10.9747 0.616233 10.9248C0.495162 10.8748 0.385128 10.8015 0.292428 10.709C0.199729 10.6165 0.126186 10.5066 0.0760069 10.3856C0.0258282 10.2646 -2.64036e-07 10.135 0 10.004V0.996ZM6 1L5 5.5H2L6 1ZM3 10L4 5.5H7L3 10Z","fill","black","fill-opacity","0.54"],[1,"actions"],[3,"matMenuTriggerFor"],["menu","matMenu"],["mat-menu-item",""],["mat-header-row",""],["mat-row","",3,"ngClass"],["class","icon dark","matTooltip","Deleted","matTooltipPosition","above",4,"ngIf"],["matTooltip","Deleted","matTooltipPosition","above",1,"icon","dark"],["class","spanner-unsorted-icon sort-icon",4,"ngIf"],[1,"spanner-unsorted-icon","sort-icon"],["mat-cell","",3,"ngClass"],["class","checklist-node",3,"checked","change",4,"ngIf"],[1,"sidebar_link",3,"ngClass","click"],[1,"object-name"],[1,"checklist-node",3,"checked","change"],[1,"add-index-icon",3,"matMenuTriggerFor"],["xPosition","before"],["mat-menu-item","",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-tab-group",1),N("selectedTabChange",function(){return i.onTabChanged()}),d(2,"mat-tab"),_(3,dq,2,4,"ng-template",2),d(4,"div",3)(5,"div",4)(6,"span",5),h(7,"filter_list"),c(),d(8,"span",6),h(9,"Filter"),c()(),d(10,"div",7)(11,"input",8),N("ngModelChange",function(r){return i.srcSearchText=r})("ngModelChange",function(){return i.filterSrcTable()}),c()()(),d(12,"div",9)(13,"table",10),be(14,11),_(15,uq,2,0,"th",12),_(16,mq,4,3,"td",13),ve(),be(17,14),_(18,vq,7,3,"th",15),_(19,Mq,12,10,"td",16),ve(),_(20,xq,1,0,"tr",17),_(21,Tq,1,3,"tr",18),c()()(),d(22,"mat-tab"),_(23,kq,2,3,"ng-template",2),d(24,"div",3)(25,"div",4)(26,"span",5),h(27,"filter_list"),c(),d(28,"span",6),h(29,"Filter"),c()(),d(30,"div",7)(31,"input",8),N("ngModelChange",function(r){return i.spannerSearchText=r})("ngModelChange",function(){return i.filterSpannerTable()}),c()(),d(32,"div",19)(33,"button",20),N("click",function(){return i.dropSelected()}),d(34,"mat-icon"),h(35,"delete"),c(),d(36,"span"),h(37,"SKIP"),c()()(),d(38,"div",21)(39,"button",20),N("click",function(){return i.restoreSelected()}),d(40,"mat-icon"),h(41,"undo"),c(),d(42,"span"),h(43,"RESTORE"),c()()()(),d(44,"div",9)(45,"table",10),be(46,11),_(47,Eq,2,0,"th",12),_(48,Rq,5,4,"td",13),ve(),be(49,14),_(50,Bq,7,3,"th",15),_(51,qq,13,16,"td",22),ve(),_(52,Kq,1,0,"tr",17),_(53,Zq,1,3,"tr",18),c()()()(),d(54,"button",23),N("click",function(){return i.leftColumnToggle()}),d(55,"mat-icon",24),h(56,"first_page"),c(),d(57,"mat-icon",24),h(58,"last_page"),c()()()),2&e&&(f(1),m("ngClass",Kt(14,Nv,i.isLeftColumnCollapse?"hidden":"display"))("selectedIndex",i.selectedIndex),f(10),m("ngModel",i.srcSearchText),f(2),m("dataSource",i.srcDataSource),f(7),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns),f(10),m("ngModel",i.spannerSearchText),f(2),m("disabled",!i.checkDropSelection()),f(6),m("disabled",!i.checkRestoreSelection()),f(6),m("dataSource",i.dataSource),f(7),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns),f(2),m("ngClass",Kt(16,Nv,i.isLeftColumnCollapse?"hidden":"display")),f(2),m("ngClass",Kt(18,Nv,i.isLeftColumnCollapse?"display":"hidden")))},directives:[rv,nr,wp,vk,Dn,vn,El,As,Jr,Xr,es,Yr,ts,Et,ki,bn,Ht,Nl,Fl,Kr,Ps,Fs,Rs,Ns,uv],styles:[".container[_ngcontent-%COMP%]{position:relative;background-color:#fff}.container[_ngcontent-%COMP%] .filter-wrapper[_ngcontent-%COMP%]{padding:0 10px}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%]{height:35px}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%] .spanner-unsorted-icon[_ngcontent-%COMP%]{visibility:hidden}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%]:hover .spanner-unsorted-icon[_ngcontent-%COMP%]{visibility:visible;opacity:.7}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%] .src-unsorted-icon[_ngcontent-%COMP%]{visibility:hidden}.container[_ngcontent-%COMP%] .mat-header-cell-name[_ngcontent-%COMP%]:hover .src-unsorted-icon[_ngcontent-%COMP%]{visibility:visible;opacity:.7}.container[_ngcontent-%COMP%] .sort-icon[_ngcontent-%COMP%]{font-size:1.1rem;display:flex;align-items:center;justify-content:flex-end}.container[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]{padding-right:0!important}.selected-row[_ngcontent-%COMP%]{background-color:#61b3ff4a}.explorer-table[_ngcontent-%COMP%]{height:calc(100vh - 320px);width:100%;overflow:auto}.mat-table[_ngcontent-%COMP%]{width:100%}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%]{cursor:pointer;display:flex;justify-content:space-between;align-items:center;width:100%;height:40px}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{margin-right:10px}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{height:40px;margin-left:14px}.mat-table[_ngcontent-%COMP%] .sidebar_link[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%] .add-index-icon[_ngcontent-%COMP%]{margin-top:7px}.mat-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-row[_ngcontent-%COMP%]{height:29px}.mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]{font-family:Roboto;font-size:13px;font-style:normal;font-weight:500;line-height:18px;background:#f5f5f5}.mat-table[_ngcontent-%COMP%] .mat-column-status[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:medium}.mat-table[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:20px}.filter-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;height:48px}.filter-wrapper[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{width:30%;display:flex;align-items:center}.filter-wrapper[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] .material-icons[_ngcontent-%COMP%]{margin-right:5px}.filter-wrapper[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{width:70%}.filter-wrapper[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:70%;border:none;outline:none;background-color:transparent}#left-column-toggle-button[_ngcontent-%COMP%]{z-index:100;position:absolute;right:4px;top:10px;border:none;background-color:inherit}#left-column-toggle-button[_ngcontent-%COMP%]:hover{cursor:pointer}.mat-column-status[_ngcontent-%COMP%]{width:80px} .column-left .mat-tab-label-container{margin-right:40px} .column-left .mat-tab-header-pagination-controls-enabled .mat-tab-label-container{margin-right:0} .column-left .mat-tab-header-pagination-after{margin-right:40px}"]}),t})();function Yq(t,n){1&t&&(d(0,"div",9)(1,"mat-icon"),h(2,"warning"),c(),d(3,"span"),h(4,"This operation cannot be undone"),c()())}let bI=(()=>{class t{constructor(e,i){this.data=e,this.dialogRef=i,this.ObjectDetailNodeType=Vs,this.confirmationInput=new X("",[de.required,de.pattern(`^${e.name}$`)]),i.disableClose=!0}delete(){this.dialogRef.close(this.data.type)}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-drop-index-dialog"]],decls:19,vars:7,consts:[["mat-dialog-content",""],["class","alert-container",4,"ngIf"],[1,"form-container"],[1,"form-custom-label"],["appearance","outline"],["matInput","","type","text",3,"formControl"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[1,"alert-container"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h2"),h(2),c(),_(3,Yq,5,0,"div",1),d(4,"div",2)(5,"form")(6,"span",3),h(7," Confirm deletion by typing the following below: "),d(8,"b"),h(9),c()(),d(10,"mat-form-field",4)(11,"mat-label"),h(12),c(),E(13,"input",5),c()()()(),d(14,"div",6)(15,"button",7),h(16,"Cancel"),c(),d(17,"button",8),N("click",function(){return i.delete()}),h(18," Confirm "),c()()),2&e&&(f(2),hl("Skip ",i.data.type," (",i.data.name,")?"),f(1),m("ngIf","Index"===i.data.type),f(6),Ee(i.data.name),f(3),Se("",i.data.type==i.ObjectDetailNodeType.Table?"Table":"Index"," Name"),f(1),m("formControl",i.confirmationInput),f(4),m("disabled",!i.confirmationInput.valid))},directives:[Dr,Et,bn,xi,Hn,ks,En,Mn,ci,Dn,vn,Il,Sr,Ht,Ji],styles:[".alert-container[_ngcontent-%COMP%]{padding:.5rem;display:flex;align-items:center;margin-bottom:1rem;background-color:#f8f4f4}.alert-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#f3b300;margin-right:20px}.form-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%}.buttons-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:flex-end}"]}),t})();function Xq(t,n){if(1&t&&(d(0,"mat-option",12),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function Jq(t,n){1&t&&(d(0,"div")(1,"mat-form-field",2)(2,"mat-label"),h(3,"Length"),c(),E(4,"input",13),c(),E(5,"br"),c())}function eK(t,n){if(1&t&&(d(0,"mat-option",12),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}let tK=(()=>{class t{constructor(e,i,o,r){this.formBuilder=e,this.dataService=i,this.dialogRef=o,this.data=r,this.dialect="",this.datatypes=[],this.selectedDatatype="",this.tableId="",this.selectedNull=!0,this.dataTypesWithColLen=ui.DataTypes,this.isColumnNullable=[{value:!1,displayName:"No"},{value:!0,displayName:"Yes"}],this.dialect=r.dialect,this.tableId=r.tableId,this.addNewColumnForm=this.formBuilder.group({name:["",[de.required,de.minLength(1),de.maxLength(128),de.pattern("^[a-zA-Z][a-zA-Z0-9_]*$")]],datatype:[],length:["",de.pattern("^[0-9]+$")],isNullable:[]})}ngOnInit(){this.datatypes="google_standard_sql"==this.dialect?dI_GoogleStandardSQL:dI_PostgreSQL}changeValidator(){var e,i;this.addNewColumnForm.controls.length.clearValidators(),"BYTES"===this.selectedDatatype?null===(e=this.addNewColumnForm.get("length"))||void 0===e||e.addValidators([de.required,de.max(ui.ByteMaxLength)]):("VARCHAR"===this.selectedDatatype||"STRING"===this.selectedDatatype)&&(null===(i=this.addNewColumnForm.get("length"))||void 0===i||i.addValidators([de.required,de.max(ui.StringMaxLength)])),this.addNewColumnForm.controls.length.updateValueAndValidity()}addNewColumn(){let e=this.addNewColumnForm.value,i={Name:e.name,Datatype:this.selectedDatatype,Length:parseInt(e.length),IsNullable:this.selectedNull};this.dataService.addColumn(this.tableId,i),this.dialogRef.close()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-add-new-column"]],decls:26,vars:7,consts:[["mat-dialog-content",""],[1,"add-new-column-form",3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","placeholder","Column Name","type","text","formControlName","name"],["appearance","outline"],["formControlName","datatype","required","true",1,"input-field",3,"ngModel","ngModelChange","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],["formControlName","isNullable","required","true",3,"ngModel","ngModelChange"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[3,"value"],["matInput","","placeholder","Length","type","text","formControlName","length"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Column Details"),c(),d(4,"mat-form-field",2)(5,"mat-label"),h(6,"Name"),c(),E(7,"input",3),c(),E(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"Datatype"),c(),d(12,"mat-select",5),N("ngModelChange",function(r){return i.selectedDatatype=r})("selectionChange",function(){return i.changeValidator()}),_(13,Xq,2,2,"mat-option",6),c()(),E(14,"br"),_(15,Jq,6,0,"div",7),d(16,"mat-form-field",4)(17,"mat-label"),h(18,"IsNullable"),c(),d(19,"mat-select",8),N("ngModelChange",function(r){return i.selectedNull=r}),_(20,eK,2,2,"mat-option",6),c()()(),d(21,"div",9)(22,"button",10),h(23,"CANCEL"),c(),d(24,"button",11),N("click",function(){return i.addNewColumn()}),h(25," ADD "),c()()()),2&e&&(f(1),m("formGroup",i.addNewColumnForm),f(11),m("ngModel",i.selectedDatatype),f(1),m("ngForOf",i.datatypes),f(2),m("ngIf",i.dataTypesWithColLen.indexOf(i.selectedDatatype)>-1),f(4),m("ngModel",i.selectedNull),f(1),m("ngForOf",i.isColumnNullable),f(4),m("disabled",!i.addNewColumnForm.valid))},directives:[Dr,xi,Hn,Sn,En,Mn,ci,Dn,vn,Xn,Yi,fo,si,_i,Et,Sr,Ht,Ji],styles:[""]}),t})();function nK(t,n){1&t&&(d(0,"span"),h(1," To view and modify an object details, click on the object name on the Spanner draft panel. "),c())}function iK(t,n){if(1&t&&(d(0,"span"),h(1),c()),2&t){const e=D(2);f(1),Se(" To view an object details, click on the object name on the ",e.srcDbName," panel. ")}}const Wp=function(t){return[t]};function oK(t,n){if(1&t){const e=pe();d(0,"div",2)(1,"div",3)(2,"h3",4),h(3,"OBJECT VIEWER"),c(),d(4,"button",5),N("click",function(){return se(e),D().middleColumnToggle()}),d(5,"mat-icon",6),h(6,"first_page"),c(),d(7,"mat-icon",6),h(8,"last_page"),c()()(),E(9,"mat-divider"),d(10,"div",7)(11,"div",8),hn(),d(12,"svg",9),E(13,"path",10),c()(),Qs(),d(14,"div",11),_(15,nK,2,0,"span",12),_(16,iK,2,1,"span",12),c()()()}if(2&t){const e=D();f(5),m("ngClass",Kt(4,Wp,e.isMiddleColumnCollapse?"display":"hidden")),f(2),m("ngClass",Kt(6,Wp,e.isMiddleColumnCollapse?"hidden":"display")),f(8),m("ngIf","spanner"==e.currentDatabase),f(1),m("ngIf","source"==e.currentDatabase)}}function rK(t,n){1&t&&(d(0,"mat-icon",23),h(1," table_chart"),c())}function sK(t,n){1&t&&(hn(),d(0,"svg",24),E(1,"path",25),c())}function aK(t,n){if(1&t&&(d(0,"span"),h(1),_s(2,"uppercase"),c()),2&t){const e=D(2);f(1),Se("( TABLE: ",bs(2,1,e.currentObject.parent)," ) ")}}function lK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).dropIndex()}),d(1,"mat-icon"),h(2,"delete"),c(),d(3,"span"),h(4,"SKIP INDEX"),c()()}}function cK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).restoreIndex()}),d(1,"mat-icon"),h(2,"undo"),c(),d(3,"span"),h(4," RESTORE INDEX"),c()()}}function dK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).dropTable()}),d(1,"mat-icon"),h(2,"delete"),c(),d(3,"span"),h(4,"SKIP TABLE"),c()()}}function uK(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D(2).restoreSpannerTable()}),d(1,"mat-icon"),h(2,"undo"),c(),d(3,"span"),h(4," RESTORE TABLE"),c()()}}function hK(t,n){if(1&t&&(d(0,"div",27),h(1," Interleaved: "),d(2,"div",28),h(3),c()()),2&t){const e=D(2);f(3),Se(" ",e.interleaveParentName," ")}}function pK(t,n){1&t&&(d(0,"span"),h(1,"COLUMNS "),c())}function fK(t,n){if(1&t&&(d(0,"th",74),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function mK(t,n){1&t&&(d(0,"th",75),h(1,"S No."),c())}function gK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcOrder").value," ")}}function _K(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function bK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColName").value," ")}}function vK(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function yK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcDataType").value," ")}}function CK(t,n){1&t&&(d(0,"th",75),h(1,"Max Length"),c())}function wK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColMaxLength").value," ")}}function DK(t,n){1&t&&(d(0,"th",75),h(1,"Pk"),c())}function SK(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function MK(t,n){if(1&t&&(d(0,"td",76),_(1,SK,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("srcIsPk").value)}}function xK(t,n){1&t&&(d(0,"th",75),h(1,"Nullable"),c())}function TK(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcIsNotNull").value?"Not Null":""," ")}}function kK(t,n){1&t&&E(0,"tr",79)}function EK(t,n){1&t&&E(0,"tr",79)}const IK=function(t){return{"scr-column-data-edit-mode":t}};function OK(t,n){if(1&t&&E(0,"tr",80),2&t){const e=D(3);m("ngClass",Kt(1,IK,e.isEditMode))}}function AK(t,n){if(1&t){const e=pe();d(0,"button",84),N("click",function(){return se(e),D(5).toggleEdit()}),d(1,"mat-icon",85),h(2,"edit"),c(),h(3," EDIT "),c()}}function PK(t,n){if(1&t&&(d(0,"div"),_(1,AK,4,0,"button",83),c()),2&t){const e=D(4);f(1),m("ngIf",e.currentObject.isSpannerNode)}}function RK(t,n){if(1&t){const e=pe();d(0,"button",84),N("click",function(){return se(e),D(5).addNewColumn()}),d(1,"mat-icon",85),h(2,"edit"),c(),h(3," ADD COLUMN "),c()}}function FK(t,n){if(1&t&&(d(0,"div"),_(1,RK,4,0,"button",83),c()),2&t){const e=D(4);f(1),m("ngIf",e.currentObject.isSpannerNode)}}function NK(t,n){if(1&t&&(d(0,"th",81)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,PK,2,1,"div",12),_(5,FK,2,1,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isEditMode&&!e.currentObject.isDeleted),f(1),m("ngIf",!e.isEditMode&&!e.currentObject.isDeleted&&!1)}}function LK(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function BK(t,n){if(1&t&&(d(0,"div"),E(1,"input",86),c()),2&t){const e=D().$implicit;let i;f(1),m("formControl",e.get("spColName"))("matTooltipDisabled",!(null!=(i=e.get("spColName"))&&i.hasError("pattern")))}}function VK(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spColName").value)}}function jK(t,n){if(1&t&&(d(0,"td",76),_(1,BK,2,2,"div",12),_(2,VK,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isEditMode&&""!==e.get("spDataType").value&&""!==e.get("srcId").value),f(1),m("ngIf",!i.isEditMode||""===e.get("srcId").value)}}function HK(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function UK(t,n){if(1&t&&(d(0,"span",90),h(1,"warning"),c()),2&t){const e=D().index;m("matTooltip",D(3).spTableSuggestion[e])}}function zK(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayT),f(1),Se(" ",e.DisplayT," ")}}function $K(t,n){1&t&&(d(0,"mat-option",98),h(1," STRING "),c())}function GK(t,n){1&t&&(d(0,"mat-option",99),h(1," VARCHAR "),c())}function WK(t,n){if(1&t){const e=pe();d(0,"mat-form-field",91)(1,"mat-select",92,93),N("selectionChange",function(){se(e);const o=$t(2),r=D().index;return D(3).spTableEditSuggestionHandler(r,o.value)}),_(3,zK,2,2,"mat-option",94),_(4,$K,2,0,"mat-option",95),_(5,GK,2,0,"mat-option",96),c()()}if(2&t){const e=D().$implicit,i=D(3);f(1),m("formControl",e.get("spDataType")),f(2),m("ngForOf",i.typeMap[e.get("srcDataType").value]),f(1),m("ngIf",""==e.get("srcDataType").value&&!i.isPostgreSQLDialect),f(1),m("ngIf",""==e.get("srcDataType").value&&i.isPostgreSQLDialect)}}function qK(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spDataType").value)}}function KK(t,n){if(1&t&&(d(0,"td",76)(1,"div",87),_(2,UK,2,1,"span",88),_(3,WK,6,4,"mat-form-field",89),_(4,qK,2,1,"p",12),c()()),2&t){const e=n.$implicit,i=n.index,o=D(3);f(2),m("ngIf",o.isSpTableSuggesstionDisplay[i]&&""!==e.get("spDataType").value),f(1),m("ngIf",o.isEditMode&&""!==e.get("spDataType").value&&""!==e.get("srcId").value),f(1),m("ngIf",!o.isEditMode||""===e.get("srcId").value)}}function ZK(t,n){1&t&&(d(0,"th",75),h(1,"Max Length"),c())}function QK(t,n){if(1&t&&(d(0,"div"),E(1,"input",100),c()),2&t){const e=D(2).$implicit;f(1),m("formControl",e.get("spColMaxLength"))}}function YK(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D(2).$implicit;f(1),Se(" ",e.get("spColMaxLength").value," ")}}function XK(t,n){if(1&t&&(d(0,"div"),_(1,QK,2,1,"div",12),_(2,YK,2,1,"p",12),c()),2&t){const e=D().$implicit,i=D(3);f(1),m("ngIf",i.isEditMode&&""!=e.get("srcDataType").value&&e.get("spId").value!==i.shardIdCol),f(1),m("ngIf",!i.isEditMode||e.get("spId").value===i.shardIdCol)}}function JK(t,n){if(1&t&&(d(0,"td",76),_(1,XK,3,2,"div",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.dataTypesWithColLen.indexOf(e.get("spDataType").value)>-1)}}function eZ(t,n){1&t&&(d(0,"th",75),h(1,"Pk"),c())}function tZ(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function nZ(t,n){if(1&t&&(d(0,"td",76),_(1,tZ,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spIsPk").value)}}function iZ(t,n){1&t&&(d(0,"span"),h(1,"Not Null"),c())}function oZ(t,n){1&t&&(d(0,"span"),h(1,"Nullable"),c())}function rZ(t,n){if(1&t&&(d(0,"th",75),_(1,iZ,2,0,"span",12),_(2,oZ,2,0,"span",12),c()),2&t){const e=D(3);f(1),m("ngIf",e.isEditMode),f(1),m("ngIf",!e.isEditMode)}}function sZ(t,n){if(1&t&&(d(0,"div"),E(1,"mat-checkbox",102),c()),2&t){const e=D().$implicit;f(1),m("formControl",e.get("spIsNotNull"))}}function aZ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Se(" ",e.get("spIsNotNull").value?"Not Null":""," ")}}function lZ(t,n){if(1&t&&(d(0,"td",76)(1,"div",101),_(2,sZ,2,1,"div",12),_(3,aZ,2,1,"p",12),c()()),2&t){const e=n.$implicit,i=D(3);f(2),m("ngIf",i.isEditMode&&""!==e.get("spDataType").value&&e.get("spId").value!==i.shardIdCol),f(1),m("ngIf",!i.isEditMode||e.get("spId").value===i.shardIdCol)}}function cZ(t,n){1&t&&E(0,"th",75)}function dZ(t,n){if(1&t){const e=pe();d(0,"div",105)(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",109),N("click",function(){se(e);const o=D().$implicit;return D(3).dropColumn(o)}),d(6,"span"),h(7,"Drop Column"),c()()()()}if(2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}const qp=function(t){return{"drop-button-left-border":t}};function uZ(t,n){if(1&t&&(d(0,"td",103),_(1,dZ,8,1,"div",104),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isEditMode)),f(1),m("ngIf",i.isEditMode&&i.currentObject.isSpannerNode&&""!==e.get("spDataType").value&&e.get("spId").value!==i.shardIdCol)}}function hZ(t,n){1&t&&E(0,"tr",79)}function pZ(t,n){1&t&&E(0,"tr",79)}function fZ(t,n){1&t&&E(0,"tr",110)}function mZ(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function gZ(t,n){if(1&t){const e=pe();d(0,"div",111)(1,"mat-form-field",112)(2,"mat-label"),h(3,"Column Name"),c(),d(4,"mat-select",113),N("selectionChange",function(o){return se(e),D(3).setColumn(o.value)}),_(5,mZ,2,2,"mat-option",94),c()(),d(6,"button",114),N("click",function(){return se(e),D(3).restoreColumn()}),d(7,"mat-icon"),h(8,"add"),c(),h(9," RESTORE COLUMN "),c()()}if(2&t){const e=D(3);m("formGroup",e.addColumnForm),f(5),m("ngForOf",e.droppedSourceColumns)}}function _Z(t,n){1&t&&(d(0,"span"),h(1,"PRIMARY KEY "),c())}function bZ(t,n){if(1&t&&(d(0,"th",115),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function vZ(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",84),N("click",function(){return se(e),D(4).togglePkEdit()}),d(2,"mat-icon",85),h(3,"edit"),c(),h(4," EDIT "),c()()}}function yZ(t,n){if(1&t&&(d(0,"th",74)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,vZ,5,0,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isPkEditMode&&e.pkDataSource.length>0&&e.currentObject.isSpannerNode&&!e.currentObject.isDeleted)}}function CZ(t,n){1&t&&(d(0,"th",75),h(1,"Order"),c())}function wZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcOrder").value," ")}}function DZ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function SZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColName").value," ")}}function MZ(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function xZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcDataType").value," ")}}function TZ(t,n){1&t&&(d(0,"th",75),h(1,"PK"),c())}function kZ(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function EZ(t,n){if(1&t&&(d(0,"td",76),_(1,kZ,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("srcIsPk").value)}}function IZ(t,n){1&t&&(d(0,"th",75),h(1,"Nullable"),c())}function OZ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcIsNotNull").value?"Not Null":""," ")}}function AZ(t,n){1&t&&(d(0,"th",75),h(1,"Order"),c())}function PZ(t,n){if(1&t&&(d(0,"div"),E(1,"input",116),c()),2&t){const e=D().$implicit;let i;f(1),m("formControl",e.get("spOrder"))("matTooltipDisabled",!(null!=(i=e.get("spOrder"))&&i.hasError("pattern")))}}function RZ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spOrder").value)}}function FZ(t,n){if(1&t&&(d(0,"td",76),_(1,PZ,2,2,"div",12),_(2,RZ,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isPkEditMode&&""!==e.get("spColName").value),f(1),m("ngIf",!i.isPkEditMode)}}function NZ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function LZ(t,n){if(1&t&&(d(0,"td",76)(1,"p"),h(2),c()()),2&t){const e=n.$implicit;f(2),Ee(e.get("spColName").value)}}function BZ(t,n){1&t&&(d(0,"th",75),h(1,"Type"),c())}function VZ(t,n){if(1&t&&(d(0,"span",90),h(1,"warning"),c()),2&t){const e=D().index;m("matTooltip",D(3).spTableSuggestion[e])}}function jZ(t,n){if(1&t&&(d(0,"td",76)(1,"div",87),_(2,VZ,2,1,"span",88),d(3,"p"),h(4),c()()()),2&t){const e=n.$implicit,i=n.index,o=D(3);f(2),m("ngIf",o.isSpTableSuggesstionDisplay[i]&&""!==e.get("spColName").value),f(2),Ee(e.get("spDataType").value)}}function HZ(t,n){1&t&&(d(0,"th",75),h(1,"Pk"),c())}function UZ(t,n){1&t&&(d(0,"div"),hn(),d(1,"svg",77),E(2,"path",78),c()())}function zZ(t,n){if(1&t&&(d(0,"td",76),_(1,UZ,3,0,"div",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spIsPk").value)}}function $Z(t,n){1&t&&(d(0,"th",75),h(1,"Nullable"),c())}function GZ(t,n){if(1&t&&(d(0,"td",76)(1,"div",101)(2,"p"),h(3),c()()()),2&t){const e=n.$implicit;f(3),Se(" ",e.get("spIsNotNull").value?"Not Null":""," ")}}function WZ(t,n){1&t&&E(0,"th",75)}function qZ(t,n){if(1&t){const e=pe();d(0,"div",105)(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",117),N("click",function(){se(e);const o=D().$implicit;return D(3).dropPk(o)}),d(6,"span"),h(7,"Remove primary key"),c()()()()}if(2&t){const e=$t(4),i=D(4);f(1),m("matMenuTriggerFor",e),f(4),m("disabled",!i.isPkEditMode)}}function KZ(t,n){if(1&t&&(d(0,"td",103),_(1,qZ,8,2,"div",104),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isPkEditMode)),f(1),m("ngIf",i.isPkEditMode&&i.currentObject.isSpannerNode&&""!==e.get("spColName").value)}}function ZZ(t,n){1&t&&E(0,"tr",79)}function QZ(t,n){1&t&&E(0,"tr",79)}function YZ(t,n){1&t&&E(0,"tr",110)}function XZ(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function JZ(t,n){if(1&t){const e=pe();d(0,"div",118)(1,"mat-form-field",112)(2,"mat-label"),h(3,"Column Name"),c(),d(4,"mat-select",113),N("selectionChange",function(o){return se(e),D(3).setPkColumn(o.value)}),_(5,XZ,2,2,"mat-option",94),c()(),d(6,"button",114),N("click",function(){return se(e),D(3).addPkColumn()}),d(7,"mat-icon"),h(8,"add"),c(),h(9," ADD COLUMN "),c()()}if(2&t){const e=D(3);m("formGroup",e.addPkColumnForm),f(5),m("ngForOf",e.pkColumnNames)}}function eQ(t,n){1&t&&(d(0,"span"),h(1,"FOREIGN KEY"),c())}function tQ(t,n){if(1&t&&(d(0,"th",119),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function nQ(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",84),N("click",function(){return se(e),D(4).toggleFkEdit()}),d(2,"mat-icon",85),h(3,"edit"),c(),h(4," EDIT "),c()()}}function iQ(t,n){if(1&t&&(d(0,"th",115)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,nQ,5,0,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isFkEditMode&&e.fkDataSource.length>0&&e.currentObject.isSpannerNode&&!e.currentObject.isDeleted)}}function oQ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function rQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcName").value," ")}}function sQ(t,n){1&t&&(d(0,"th",75),h(1,"Columns"),c())}function aQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColumns").value," ")}}function lQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Table"),c())}function cQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcReferTable").value," ")}}function dQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Columns"),c())}function uQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcReferColumns").value," ")}}function hQ(t,n){1&t&&(d(0,"th",75),h(1,"Name"),c())}function pQ(t,n){if(1&t&&(d(0,"div"),E(1,"input",86),c()),2&t){const e=D().$implicit;let i;f(1),m("formControl",e.get("spName"))("matTooltipDisabled",!(null!=(i=e.get("spName"))&&i.hasError("pattern")))}}function fQ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spName").value)}}function mQ(t,n){if(1&t&&(d(0,"td",76),_(1,pQ,2,2,"div",12),_(2,fQ,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isFkEditMode&&""!==e.get("spReferTable").value),f(1),m("ngIf",!i.isFkEditMode)}}function gQ(t,n){1&t&&(d(0,"th",75),h(1,"Columns"),c())}function _Q(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("spColumns").value," ")}}function bQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Table"),c())}function vQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("spReferTable").value," ")}}function yQ(t,n){1&t&&(d(0,"th",75),h(1,"Refer Columns"),c())}function CQ(t,n){if(1&t&&(d(0,"td",76)(1,"div",120),h(2),c()()),2&t){const e=n.$implicit;f(2),Se(" ",e.get("spReferColumns").value," ")}}function wQ(t,n){1&t&&E(0,"th",75)}function DQ(t,n){if(1&t){const e=pe();d(0,"button",117),N("click",function(){return se(e),D(5).setInterleave()}),d(1,"span"),h(2,"Convert to interleave"),c()()}2&t&&m("disabled",""===D(2).$implicit.get("spName").value)}function SQ(t,n){if(1&t){const e=pe();d(0,"div",105)(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",117),N("click",function(){se(e);const o=D().$implicit;return D(3).dropFk(o)}),d(6,"span"),h(7,"Drop Foreign Key"),c()(),_(8,DQ,3,1,"button",121),c()()}if(2&t){const e=$t(4),i=D().$implicit,o=D(3);f(1),m("matMenuTriggerFor",e),f(4),m("disabled",""===i.get("spName").value),f(3),m("ngIf",o.interleaveStatus.tableInterleaveStatus&&o.interleaveStatus.tableInterleaveStatus.Possible)}}function MQ(t,n){if(1&t&&(d(0,"td",103),_(1,SQ,9,3,"div",104),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isFkEditMode)),f(1),m("ngIf",i.isFkEditMode&&i.currentObject.isSpannerNode&&""!==e.get("spReferTable").value)}}function xQ(t,n){1&t&&E(0,"tr",79)}function TQ(t,n){1&t&&E(0,"tr",79)}function kQ(t,n){1&t&&E(0,"tr",110)}function EQ(t,n){if(1&t){const e=pe();d(0,"button",125),N("click",function(){return se(e),D(4).setInterleave()}),h(1," Convert to Interleave "),c()}}function IQ(t,n){if(1&t){const e=pe();d(0,"button",125),N("click",function(){return se(e),D(4).removeInterleave()}),h(1," Convert Back to Foreign Key "),c()}}function OQ(t,n){if(1&t&&(d(0,"div"),h(1," This table is interleaved with "),d(2,"span",126),h(3),c(),h(4,". Click on the above button to convert back to foreign key. "),c()),2&t){const e=D(4);f(3),Ee(e.interleaveParentName)}}function AQ(t,n){if(1&t&&(d(0,"mat-tab",122)(1,"div",123),_(2,EQ,2,0,"button",124),_(3,IQ,2,0,"button",124),E(4,"br"),_(5,OQ,5,1,"div",12),c()()),2&t){const e=D(3);f(2),m("ngIf",e.interleaveStatus.tableInterleaveStatus&&e.interleaveStatus.tableInterleaveStatus.Possible&&null===e.interleaveParentName),f(1),m("ngIf",e.interleaveStatus.tableInterleaveStatus&&!e.interleaveStatus.tableInterleaveStatus.Possible||null!==e.interleaveParentName),f(2),m("ngIf",e.interleaveStatus.tableInterleaveStatus&&!e.interleaveStatus.tableInterleaveStatus.Possible||null!==e.interleaveParentName)}}function PQ(t,n){1&t&&(d(0,"span"),h(1,"SQL"),c())}function RQ(t,n){if(1&t&&(d(0,"mat-tab"),_(1,PQ,2,0,"ng-template",30),d(2,"div",127)(3,"pre")(4,"code"),h(5),c()()()()),2&t){const e=D(3);f(5),Ee(e.ddlStmts[e.currentObject.id])}}const FQ=function(t){return{"height-on-edit":t}},NQ=function(){return["srcDatabase"]},LQ=function(){return["spDatabase"]},Lv=function(){return["srcDatabase","spDatabase"]};function BQ(t,n){if(1&t){const e=pe();d(0,"mat-tab-group",29),N("selectedTabChange",function(o){return se(e),D(2).tabChanged(o)}),d(1,"mat-tab"),_(2,pK,2,0,"ng-template",30),d(3,"div",31)(4,"div",32)(5,"table",33),be(6,34),_(7,fK,2,1,"th",35),ve(),be(8,36),_(9,mK,2,0,"th",37),_(10,gK,2,1,"td",38),ve(),be(11,39),_(12,_K,2,0,"th",37),_(13,bK,2,1,"td",38),ve(),be(14,40),_(15,vK,2,0,"th",41),_(16,yK,2,1,"td",38),ve(),be(17,42),_(18,CK,2,0,"th",41),_(19,wK,2,1,"td",38),ve(),be(20,43),_(21,DK,2,0,"th",37),_(22,MK,2,1,"td",38),ve(),be(23,44),_(24,xK,2,0,"th",41),_(25,TK,2,1,"td",38),ve(),_(26,kK,1,0,"tr",45),_(27,EK,1,0,"tr",45),_(28,OK,1,3,"tr",46),c(),d(29,"table",33),be(30,47),_(31,NK,6,2,"th",48),ve(),be(32,49),_(33,LK,2,0,"th",41),_(34,jK,3,2,"td",38),ve(),be(35,50),_(36,HK,2,0,"th",41),_(37,KK,5,3,"td",38),ve(),be(38,51),_(39,ZK,2,0,"th",41),_(40,JK,2,1,"td",38),ve(),be(41,52),_(42,eZ,2,0,"th",37),_(43,nZ,2,1,"td",38),ve(),be(44,53),_(45,rZ,3,2,"th",41),_(46,lZ,4,2,"td",38),ve(),be(47,54),_(48,cZ,1,0,"th",41),_(49,uZ,2,4,"td",55),ve(),_(50,hZ,1,0,"tr",45),_(51,pZ,1,0,"tr",45),_(52,fZ,1,0,"tr",56),c()(),_(53,gZ,10,2,"div",57),c()(),d(54,"mat-tab"),_(55,_Z,2,0,"ng-template",30),d(56,"div",58)(57,"table",33),be(58,34),_(59,bZ,2,1,"th",59),ve(),be(60,47),_(61,yZ,5,1,"th",35),ve(),be(62,36),_(63,CZ,2,0,"th",37),_(64,wZ,2,1,"td",38),ve(),be(65,39),_(66,DZ,2,0,"th",37),_(67,SZ,2,1,"td",38),ve(),be(68,40),_(69,MZ,2,0,"th",41),_(70,xZ,2,1,"td",38),ve(),be(71,43),_(72,TZ,2,0,"th",37),_(73,EZ,2,1,"td",38),ve(),be(74,44),_(75,IZ,2,0,"th",41),_(76,OZ,2,1,"td",38),ve(),be(77,60),_(78,AZ,2,0,"th",37),_(79,FZ,3,2,"td",38),ve(),be(80,49),_(81,NZ,2,0,"th",41),_(82,LZ,3,1,"td",38),ve(),be(83,50),_(84,BZ,2,0,"th",41),_(85,jZ,5,2,"td",38),ve(),be(86,52),_(87,HZ,2,0,"th",37),_(88,zZ,2,1,"td",38),ve(),be(89,53),_(90,$Z,2,0,"th",41),_(91,GZ,4,1,"td",38),ve(),be(92,54),_(93,WZ,1,0,"th",41),_(94,KZ,2,4,"td",55),ve(),_(95,ZZ,1,0,"tr",45),_(96,QZ,1,0,"tr",45),_(97,YZ,1,0,"tr",56),c(),_(98,JZ,10,2,"div",61),c()(),d(99,"mat-tab"),_(100,eQ,2,0,"ng-template",30),d(101,"div",62)(102,"table",33),be(103,34),_(104,tQ,2,1,"th",63),ve(),be(105,47),_(106,iQ,5,1,"th",59),ve(),be(107,64),_(108,oQ,2,0,"th",37),_(109,rQ,2,1,"td",38),ve(),be(110,65),_(111,sQ,2,0,"th",37),_(112,aQ,2,1,"td",38),ve(),be(113,66),_(114,lQ,2,0,"th",37),_(115,cQ,2,1,"td",38),ve(),be(116,67),_(117,dQ,2,0,"th",37),_(118,uQ,2,1,"td",38),ve(),be(119,68),_(120,hQ,2,0,"th",41),_(121,mQ,3,2,"td",38),ve(),be(122,69),_(123,gQ,2,0,"th",37),_(124,_Q,2,1,"td",38),ve(),be(125,70),_(126,bQ,2,0,"th",37),_(127,vQ,2,1,"td",38),ve(),be(128,71),_(129,yQ,2,0,"th",37),_(130,CQ,3,1,"td",38),ve(),be(131,72),_(132,wQ,1,0,"th",41),_(133,MQ,2,4,"td",55),ve(),_(134,xQ,1,0,"tr",45),_(135,TQ,1,0,"tr",45),_(136,kQ,1,0,"tr",56),c()()(),_(137,AQ,6,3,"mat-tab",73),_(138,RQ,6,1,"mat-tab",12),c()}if(2&t){const e=D(2);m("ngClass",Kt(21,FQ,e.isEditMode||e.isPkEditMode||e.isFkEditMode)),f(5),m("dataSource",e.srcDataSource),f(21),m("matHeaderRowDef",Jo(23,NQ)),f(1),m("matHeaderRowDef",e.srcDisplayedColumns),f(1),m("matRowDefColumns",e.srcDisplayedColumns),f(1),m("dataSource",e.spDataSource),f(21),m("matHeaderRowDef",Jo(24,LQ)),f(1),m("matHeaderRowDef",e.spDisplayedColumns),f(1),m("matRowDefColumns",e.spDisplayedColumns),f(1),m("ngIf",e.isEditMode&&0!=e.droppedSourceColumns.length),f(4),m("dataSource",e.pkDataSource),f(38),m("matHeaderRowDef",Jo(25,Lv)),f(1),m("matHeaderRowDef",e.displayedPkColumns),f(1),m("matRowDefColumns",e.displayedPkColumns),f(1),m("ngIf",e.isPkEditMode),f(4),m("dataSource",e.fkDataSource),f(32),m("matHeaderRowDef",Jo(26,Lv)),f(1),m("matHeaderRowDef",e.displayedFkColumns),f(1),m("matRowDefColumns",e.displayedFkColumns),f(1),m("ngIf",(e.interleaveStatus.tableInterleaveStatus&&e.interleaveStatus.tableInterleaveStatus.Possible||null!==e.interleaveParentName)&&e.currentObject.isSpannerNode),f(1),m("ngIf",e.currentObject.isSpannerNode&&!e.currentObject.isDeleted)}}function VQ(t,n){if(1&t&&(d(0,"th",138),h(1),c()),2&t){const e=D(3);f(1),Ee(e.srcDbName)}}function jQ(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",84),N("click",function(){return se(e),D(4).toggleIndexEdit()}),d(2,"mat-icon",85),h(3,"edit"),c(),h(4," EDIT "),c()()}}function HQ(t,n){if(1&t&&(d(0,"th",119)(1,"div",82)(2,"span"),h(3,"Spanner"),c(),_(4,jQ,5,0,"div",12),c()()),2&t){const e=D(3);f(4),m("ngIf",!e.isIndexEditMode&&!e.currentObject.isDeleted&&e.currentObject.isSpannerNode)}}function UQ(t,n){1&t&&(d(0,"th",75),h(1,"Column"),c())}function zQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcColName").value," ")}}function $Q(t,n){1&t&&(d(0,"th",75),h(1,"Sort By"),c())}function GQ(t,n){1&t&&(d(0,"p"),h(1,"Desc"),c())}function WQ(t,n){1&t&&(d(0,"p"),h(1,"Asc"),c())}function qQ(t,n){if(1&t&&(d(0,"td",76),_(1,GQ,2,0,"p",12),_(2,WQ,2,0,"p",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("srcDesc").value),f(1),m("ngIf",!1===e.get("srcDesc").value)}}function KQ(t,n){1&t&&(d(0,"th",75),h(1,"Column Order"),c())}function ZQ(t,n){if(1&t&&(d(0,"td",76),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.get("srcOrder").value," ")}}function QQ(t,n){1&t&&(d(0,"th",75),h(1,"Column"),c())}function YQ(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spColName").value)}}function XQ(t,n){if(1&t&&(d(0,"td",76),_(1,YQ,2,1,"p",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spColName").value)}}function JQ(t,n){1&t&&(d(0,"th",75),h(1,"Sort By"),c())}function eY(t,n){1&t&&(d(0,"p"),h(1,"Desc"),c())}function tY(t,n){1&t&&(d(0,"p"),h(1,"Asc"),c())}function nY(t,n){if(1&t&&(d(0,"td",76),_(1,eY,2,0,"p",12),_(2,tY,2,0,"p",12),c()),2&t){const e=n.$implicit;f(1),m("ngIf",e.get("spDesc").value),f(1),m("ngIf",!1===e.get("spDesc").value)}}function iY(t,n){1&t&&(d(0,"th",75),h(1,"Column Order"),c())}function oY(t,n){if(1&t&&(d(0,"div"),E(1,"input",139),c()),2&t){const e=D().$implicit;f(1),m("formControl",e.get("spOrder"))}}function rY(t,n){if(1&t&&(d(0,"p"),h(1),c()),2&t){const e=D().$implicit;f(1),Ee(e.get("spOrder").value)}}function sY(t,n){if(1&t&&(d(0,"td",76),_(1,oY,2,1,"div",12),_(2,rY,2,1,"p",12),c()),2&t){const e=n.$implicit,i=D(3);f(1),m("ngIf",i.isIndexEditMode&&e.get("spColName").value),f(1),m("ngIf",!i.isIndexEditMode)}}function aY(t,n){1&t&&E(0,"th",75)}function lY(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-icon",106),h(2,"more_vert"),c(),d(3,"mat-menu",107,108)(5,"button",109),N("click",function(){se(e);const o=D().index;return D(3).dropIndexKey(o)}),d(6,"span"),h(7,"Drop Index Key"),c()()()()}if(2&t){const e=$t(4);f(1),m("matMenuTriggerFor",e)}}function cY(t,n){if(1&t&&(d(0,"td",103),_(1,lY,8,1,"div",12),c()),2&t){const e=n.$implicit,i=D(3);m("ngClass",Kt(2,qp,i.isIndexEditMode)),f(1),m("ngIf",i.isIndexEditMode&&e.get("spColName").value)}}function dY(t,n){1&t&&E(0,"tr",79)}function uY(t,n){1&t&&E(0,"tr",79)}function hY(t,n){1&t&&E(0,"tr",140)}function pY(t,n){if(1&t&&(d(0,"mat-option",97),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function fY(t,n){if(1&t){const e=pe();d(0,"div",141)(1,"mat-form-field",142)(2,"mat-label"),h(3,"Column Name"),c(),d(4,"mat-select",143),_(5,pY,2,2,"mat-option",94),c()(),d(6,"mat-form-field",144)(7,"mat-label"),h(8,"Sort By"),c(),d(9,"mat-select",145)(10,"mat-option",146),h(11,"Ascending"),c(),d(12,"mat-option",147),h(13,"Descending"),c()()(),d(14,"button",148),N("click",function(){return se(e),D(3).addIndexKey()}),d(15,"mat-icon"),h(16,"add"),c(),d(17,"span"),h(18," ADD COLUMN"),c()()()}if(2&t){const e=D(3);m("formGroup",e.addIndexKeyForm),f(5),m("ngForOf",e.indexColumnNames),f(9),m("disabled",!e.addIndexKeyForm.valid)}}function mY(t,n){if(1&t&&(d(0,"div",128)(1,"table",33),be(2,34),_(3,VQ,2,1,"th",129),ve(),be(4,47),_(5,HQ,5,1,"th",63),ve(),be(6,130),_(7,UQ,2,0,"th",37),_(8,zQ,2,1,"td",38),ve(),be(9,131),_(10,$Q,2,0,"th",41),_(11,qQ,3,2,"td",38),ve(),be(12,132),_(13,KQ,2,0,"th",37),_(14,ZQ,2,1,"td",38),ve(),be(15,133),_(16,QQ,2,0,"th",41),_(17,XQ,2,1,"td",38),ve(),be(18,134),_(19,JQ,2,0,"th",41),_(20,nY,3,2,"td",38),ve(),be(21,135),_(22,iY,2,0,"th",37),_(23,sY,3,2,"td",38),ve(),be(24,54),_(25,aY,1,0,"th",41),_(26,cY,2,4,"td",55),ve(),_(27,dY,1,0,"tr",45),_(28,uY,1,0,"tr",45),_(29,hY,1,0,"tr",136),c(),_(30,fY,19,3,"div",137),c()),2&t){const e=D(2);f(1),m("dataSource",e.spDataSource),f(26),m("matHeaderRowDef",Jo(5,Lv)),f(1),m("matHeaderRowDef",e.indexDisplayedColumns),f(1),m("matRowDefColumns",e.indexDisplayedColumns),f(1),m("ngIf",e.isIndexEditMode&&e.indexColumnNames.length>0)}}function gY(t,n){1&t&&E(0,"mat-divider")}function _Y(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).toggleEdit()}),h(1," CANCEL "),c()}}function bY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",150),N("click",function(){return se(e),D(2).saveColumnTable()}),h(2," SAVE & CONVERT "),c(),_(3,_Y,2,0,"button",151),c()}if(2&t){const e=D(2);f(1),m("disabled",!e.spRowArray.valid),f(2),m("ngIf",e.currentObject.isSpannerNode)}}function vY(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).togglePkEdit()}),h(1," CANCEL "),c()}}function yY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",150),N("click",function(){return se(e),D(2).savePk()}),h(2," SAVE & CONVERT "),c(),_(3,vY,2,0,"button",151),c()}if(2&t){const e=D(2);f(1),m("disabled",!e.pkArray.valid),f(2),m("ngIf",e.currentObject.isSpannerNode)}}function CY(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).toggleFkEdit()}),h(1," CANCEL "),c()}}function wY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",125),N("click",function(){return se(e),D(2).saveFk()}),h(2,"SAVE & CONVERT"),c(),_(3,CY,2,0,"button",151),c()}if(2&t){const e=D(2);f(3),m("ngIf",e.currentObject.isSpannerNode)}}function DY(t,n){if(1&t){const e=pe();d(0,"button",152),N("click",function(){return se(e),D(3).toggleIndexEdit()}),h(1," CANCEL "),c()}}function SY(t,n){if(1&t){const e=pe();d(0,"div",149)(1,"button",125),N("click",function(){return se(e),D(2).saveIndex()}),h(2,"SAVE & CONVERT"),c(),_(3,DY,2,0,"button",151),c()}if(2&t){const e=D(2);f(3),m("ngIf",e.currentObject.isSpannerNode)}}function MY(t,n){if(1&t){const e=pe();d(0,"div",13)(1,"div",3)(2,"span")(3,"h3",4),_(4,rK,2,0,"mat-icon",14),_(5,sK,2,0,"svg",15),d(6,"span",16),h(7),c(),_(8,aK,3,3,"span",12),_(9,lK,5,0,"button",17),_(10,cK,5,0,"button",17),_(11,dK,5,0,"button",17),_(12,uK,5,0,"button",17),c(),_(13,hK,4,1,"div",18),c(),d(14,"button",5),N("click",function(){return se(e),D().middleColumnToggle()}),d(15,"mat-icon",6),h(16,"first_page"),c(),d(17,"mat-icon",6),h(18,"last_page"),c()()(),_(19,BQ,139,27,"mat-tab-group",19),_(20,mY,31,6,"div",20),d(21,"div",21),_(22,gY,1,0,"mat-divider",12),_(23,bY,4,2,"div",22),_(24,yY,4,2,"div",22),_(25,wY,4,1,"div",22),_(26,SY,4,1,"div",22),c()()}if(2&t){const e=D();f(4),m("ngIf",e.currentObject.type===e.ObjectExplorerNodeType.Table),f(1),m("ngIf",e.currentObject.type===e.ObjectExplorerNodeType.Index),f(2),Ee(" "+e.currentObject.name+" "),f(1),m("ngIf",""!=e.currentObject.parent),f(1),m("ngIf",e.currentObject.isSpannerNode&&!e.currentObject.isDeleted&&"indexName"===e.currentObject.type),f(1),m("ngIf",e.currentObject.isSpannerNode&&e.currentObject.isDeleted&&e.currentObject.type==e.ObjectExplorerNodeType.Index),f(1),m("ngIf",e.currentObject.isSpannerNode&&"indexName"!==e.currentObject.type&&!e.currentObject.isDeleted),f(1),m("ngIf",e.currentObject.isSpannerNode&&e.currentObject.isDeleted&&e.currentObject.type==e.ObjectExplorerNodeType.Table),f(1),m("ngIf",e.interleaveParentName&&e.currentObject.isSpannerNode),f(2),m("ngClass",Kt(18,Wp,e.isMiddleColumnCollapse?"display":"hidden")),f(2),m("ngClass",Kt(20,Wp,e.isMiddleColumnCollapse?"hidden":"display")),f(2),m("ngIf","tableName"===e.currentObject.type),f(1),m("ngIf","indexName"===e.currentObject.type),f(2),m("ngIf",e.isEditMode||e.isPkEditMode||e.isFkEditMode),f(1),m("ngIf",e.isEditMode&&0===e.currentTabIndex),f(1),m("ngIf",e.isPkEditMode&&1===e.currentTabIndex),f(1),m("ngIf",e.isFkEditMode&&2===e.currentTabIndex),f(1),m("ngIf",e.isIndexEditMode&&-1===e.currentTabIndex)}}let xY=(()=>{class t{constructor(e,i,o,r,s,a){this.data=e,this.dialog=i,this.snackbar=o,this.conversion=r,this.sidenav=s,this.tableUpdatePubSub=a,this.currentObject=null,this.typeMap={},this.defaultTypeMap={},this.ddlStmts={},this.fkData=[],this.tableData=[],this.currentDatabase="spanner",this.indexData=[],this.srcDbName=localStorage.getItem(In.SourceDbName),this.updateSidebar=new Pe,this.ObjectExplorerNodeType=Qt,this.conv={},this.interleaveParentName=null,this.localTableData=[],this.localIndexData=[],this.isMiddleColumnCollapse=!1,this.isPostgreSQLDialect=!1,this.srcDisplayedColumns=["srcOrder","srcColName","srcDataType","srcColMaxLength","srcIsPk","srcIsNotNull"],this.spDisplayedColumns=["spColName","spDataType","spColMaxLength","spIsPk","spIsNotNull","dropButton"],this.displayedFkColumns=["srcName","srcColumns","srcReferTable","srcReferColumns","spName","spColumns","spReferTable","spReferColumns","dropButton"],this.displayedPkColumns=["srcOrder","srcColName","srcDataType","srcIsPk","srcIsNotNull","spOrder","spColName","spDataType","spIsPk","spIsNotNull","dropButton"],this.indexDisplayedColumns=["srcIndexColName","srcSortBy","srcIndexOrder","spIndexColName","spSortBy","spIndexOrder","dropButton"],this.spDataSource=[],this.srcDataSource=[],this.fkDataSource=[],this.pkDataSource=[],this.pkData=[],this.isPkEditMode=!1,this.isEditMode=!1,this.isFkEditMode=!1,this.isIndexEditMode=!1,this.isObjectSelected=!1,this.srcRowArray=new po([]),this.spRowArray=new po([]),this.pkArray=new po([]),this.fkArray=new po([]),this.isSpTableSuggesstionDisplay=[],this.spTableSuggestion=[],this.currentTabIndex=0,this.addedColumnName="",this.droppedColumns=[],this.droppedSourceColumns=[],this.pkColumnNames=[],this.indexColumnNames=[],this.shardIdCol="",this.addColumnForm=new an({columnName:new X("",[de.required])}),this.addIndexKeyForm=new an({columnName:new X("",[de.required]),ascOrDesc:new X("",[de.required])}),this.addedPkColumnName="",this.addPkColumnForm=new an({columnName:new X("",[de.required])}),this.pkObj={},this.dataTypesWithColLen=ui.DataTypes}ngOnInit(){this.data.conv.subscribe({next:e=>{this.conv=e,this.isPostgreSQLDialect="postgresql"===this.conv.SpDialect}})}ngOnChanges(e){var i,o,r,s,a,l,u,p;this.fkData=(null===(i=e.fkData)||void 0===i?void 0:i.currentValue)||this.fkData,this.currentObject=(null===(o=e.currentObject)||void 0===o?void 0:o.currentValue)||this.currentObject,this.tableData=(null===(r=e.tableData)||void 0===r?void 0:r.currentValue)||this.tableData,this.indexData=(null===(s=e.indexData)||void 0===s?void 0:s.currentValue)||this.indexData,this.currentDatabase=(null===(a=e.currentDatabase)||void 0===a?void 0:a.currentValue)||this.currentDatabase,this.currentTabIndex=(null===(l=this.currentObject)||void 0===l?void 0:l.type)===Qt.Table?0:-1,this.isObjectSelected=!!this.currentObject,this.pkData=this.conversion.getPkMapping(this.tableData),this.interleaveParentName=this.getInterleaveParentFromConv(),this.isEditMode=!1,this.isFkEditMode=!1,this.isIndexEditMode=!1,this.isPkEditMode=!1,this.srcRowArray=new po([]),this.spRowArray=new po([]),this.droppedColumns=[],this.droppedSourceColumns=[],this.pkColumnNames=[],this.interleaveParentName=this.getInterleaveParentFromConv(),this.localTableData=JSON.parse(JSON.stringify(this.tableData)),this.localIndexData=JSON.parse(JSON.stringify(this.indexData)),(null===(u=this.currentObject)||void 0===u?void 0:u.type)===Qt.Table?(this.checkIsInterleave(),this.interleaveObj=this.data.tableInterleaveStatus.subscribe(g=>{this.interleaveStatus=g}),this.setSrcTableRows(),this.setSpTableRows(),this.setColumnsToAdd(),this.setAddPkColumnList(),this.setPkOrder(),this.setPkRows(),this.setFkRows(),this.updateSpTableSuggestion(),this.setShardIdColumn()):(null===(p=this.currentObject)||void 0===p?void 0:p.type)===Qt.Index&&(this.indexOrderValidation(),this.setIndexRows()),this.data.getSummary()}setSpTableRows(){this.spRowArray=new po([]),this.localTableData.forEach(e=>{var i,o,r,s;if(e.spOrder){let a=new an({srcOrder:new X(e.srcOrder),srcColName:new X(e.srcColName),srcDataType:new X(e.srcDataType),srcIsPk:new X(e.srcIsPk),srcIsNotNull:new X(e.srcIsNotNull),srcColMaxLength:new X(e.srcColMaxLength),spOrder:new X(e.srcOrder),spColName:new X(e.spColName,[de.required,de.pattern("^[a-zA-Z]([a-zA-Z0-9/_]*[a-zA-Z0-9])?")]),spDataType:new X(e.spDataType),spIsPk:new X(e.spIsPk),spIsNotNull:new X(e.spIsNotNull),spId:new X(e.spId),srcId:new X(e.srcId),spColMaxLength:new X(e.spColMaxLength,[de.required])});this.dataTypesWithColLen.indexOf(e.spDataType.toString())>-1?(null===(i=a.get("spColMaxLength"))||void 0===i||i.setValidators([de.required,de.pattern("([1-9][0-9]*|MAX)")]),void 0===e.spColMaxLength?null===(o=a.get("spColMaxLength"))||void 0===o||o.setValue("MAX"):"MAX"!==e.spColMaxLength&&(("STRING"===e.spDataType||"VARCHAR"===e.spDataType)&&e.spColMaxLength>ui.StringMaxLength?null===(r=a.get("spColMaxLength"))||void 0===r||r.setValue("MAX"):"BYTES"===e.spDataType&&e.spColMaxLength>ui.ByteMaxLength&&(null===(s=a.get("spColMaxLength"))||void 0===s||s.setValue("MAX")))):a.controls.spColMaxLength.clearValidators(),a.controls.spColMaxLength.updateValueAndValidity(),this.spRowArray.push(a)}}),this.spDataSource=this.spRowArray.controls}setSrcTableRows(){this.srcRowArray=new po([]),this.localTableData.forEach(e=>{this.srcRowArray.push(new an(""!=e.spColName?{srcOrder:new X(e.srcOrder),srcColName:new X(e.srcColName),srcDataType:new X(e.srcDataType),srcIsPk:new X(e.srcIsPk),srcIsNotNull:new X(e.srcIsNotNull),srcColMaxLength:new X(e.srcColMaxLength),spOrder:new X(e.spOrder),spColName:new X(e.spColName),spDataType:new X(e.spDataType),spIsPk:new X(e.spIsPk),spIsNotNull:new X(e.spIsNotNull),spId:new X(e.spId),srcId:new X(e.srcId),spColMaxLength:new X(e.spColMaxLength)}:{srcOrder:new X(e.srcOrder),srcColName:new X(e.srcColName),srcDataType:new X(e.srcDataType),srcIsPk:new X(e.srcIsPk),srcIsNotNull:new X(e.srcIsNotNull),srcColMaxLength:new X(e.srcColMaxLength),spOrder:new X(e.srcOrder),spColName:new X(e.srcColName),spDataType:new X(this.defaultTypeMap[e.srcDataType].Name),spIsPk:new X(e.srcIsPk),spIsNotNull:new X(e.srcIsNotNull),spColMaxLength:new X(e.srcColMaxLength)}))}),this.srcDataSource=this.srcRowArray.controls}setColumnsToAdd(){this.localTableData.forEach(e=>{e.spColName||this.srcRowArray.value.forEach(i=>{e.srcColName==i.srcColName&&""!=i.srcColName&&(this.droppedColumns.push(i),this.droppedSourceColumns.push(i.srcColName))})})}toggleEdit(){this.currentTabIndex=0,this.isEditMode?(this.localTableData=JSON.parse(JSON.stringify(this.tableData)),this.setSpTableRows(),this.isEditMode=!1):this.isEditMode=!0}saveColumnTable(){this.isEditMode=!1;let i,e={UpdateCols:{}};this.conversion.pgSQLToStandardTypeTypeMap.subscribe(o=>{i=o}),this.spRowArray.value.forEach((o,r)=>{for(let s=0;sui.StringMaxLength||"BYTES"===o.spDataType&&o.spColMaxLength>ui.ByteMaxLength)&&(o.spColMaxLength="MAX"),"number"==typeof o.spColMaxLength&&(o.spColMaxLength=o.spColMaxLength.toString()),"STRING"!=o.spDataType&&"BYTES"!=o.spDataType&&"VARCHAR"!=o.spDataType&&(o.spColMaxLength=""),o.srcId==this.tableData[s].srcId&&""!=this.tableData[s].srcId){e.UpdateCols[this.tableData[s].srcId]={Add:""==this.tableData[s].spId,Rename:a.spColName!==o.spColName?o.spColName:"",NotNull:o.spIsNotNull?"ADDED":"REMOVED",Removed:!1,ToType:"postgresql"===this.conv.SpDialect?void 0===l?o.spDataType:l:o.spDataType,MaxColLength:o.spColMaxLength};break}o.spId==this.tableData[s].spId&&(e.UpdateCols[this.tableData[s].spId]={Add:""==this.tableData[s].spId,Rename:a.spColName!==o.spColName?o.spColName:"",NotNull:o.spIsNotNull?"ADDED":"REMOVED",Removed:!1,ToType:"postgresql"===this.conv.SpDialect?void 0===l?o.spDataType:l:o.spDataType,MaxColLength:o.spColMaxLength})}}),this.droppedColumns.forEach(o=>{e.UpdateCols[o.spId]={Add:!1,Rename:"",NotNull:"",Removed:!0,ToType:"",MaxColLength:""}}),this.data.reviewTableUpdate(this.currentObject.id,e).subscribe({next:o=>{""==o?(this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("reviewChanges"),this.tableUpdatePubSub.setTableUpdateDetail({tableName:this.currentObject.name,tableId:this.currentObject.id,updateDetail:e}),this.isEditMode=!0):(this.dialog.open(mo,{data:{message:o,type:"error"},maxWidth:"500px"}),this.isEditMode=!0)}})}addNewColumn(){var e;this.dialog.open(tK,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{dialect:this.conv.SpDialect,tableId:null===(e=this.currentObject)||void 0===e?void 0:e.id}})}setColumn(e){this.addedColumnName=e}restoreColumn(){let e=this.tableData.map(r=>r.srcColName).indexOf(this.addedColumnName),i=this.droppedColumns.map(r=>r.srcColName).indexOf(this.addedColumnName);this.localTableData[e].spColName=this.droppedColumns[i].spColName,this.localTableData[e].spDataType=this.droppedColumns[i].spDataType,this.localTableData[e].spOrder=-1,this.localTableData[e].spIsPk=this.droppedColumns[i].spIsPk,this.localTableData[e].spIsNotNull=this.droppedColumns[i].spIsNotNull,this.localTableData[e].spColMaxLength=this.droppedColumns[i].spColMaxLength;let o=this.droppedColumns.map(r=>r.spColName).indexOf(this.addedColumnName);o>-1&&(this.droppedColumns.splice(o,1),this.droppedSourceColumns.indexOf(this.addedColumnName)>-1&&this.droppedSourceColumns.splice(this.droppedSourceColumns.indexOf(this.addedColumnName),1)),this.setSpTableRows()}dropColumn(e){let i=e.get("srcColName").value,o=e.get("srcId").value,r=e.get("spId").value,s=""!=o?o:r,a=e.get("spColName").value,l=this.getAssociatedIndexs(s);if(this.checkIfPkColumn(s)||0!=l.length){let u="",p="",g="";this.checkIfPkColumn(s)&&(u=" Primary key"),0!=l.length&&(p=` Index ${l}`),""!=u&&""!=p&&(g=" and"),this.dialog.open(mo,{data:{message:`Column ${a} is a part of${u}${g}${p}. Remove the dependencies from respective tabs before dropping the Column. `,type:"error"},maxWidth:"500px"})}else this.spRowArray.value.forEach((u,p)=>{u.spId===r&&this.droppedColumns.push(u)}),this.dropColumnFromUI(r),""!==i&&this.droppedSourceColumns.push(i)}checkIfPkColumn(e){let i=!1;return null!=this.conv.SpSchema[this.currentObject.id].PrimaryKeys&&this.conv.SpSchema[this.currentObject.id].PrimaryKeys.map(o=>o.ColId).includes(e)&&(i=!0),i}setShardIdColumn(){void 0!==this.conv.SpSchema[this.currentObject.id]&&(this.shardIdCol=this.conv.SpSchema[this.currentObject.id].ShardIdColumn)}getAssociatedIndexs(e){let i=[];return null!=this.conv.SpSchema[this.currentObject.id].Indexes&&this.conv.SpSchema[this.currentObject.id].Indexes.forEach(o=>{o.Keys.map(r=>r.ColId).includes(e)&&i.push(o.Name)}),i}dropColumnFromUI(e){this.localTableData.forEach((i,o)=>{i.spId==e&&(i.spColName="",i.spDataType="",i.spIsNotNull=!1,i.spIsPk=!1,i.spOrder="",i.spColMaxLength="")}),this.setSpTableRows()}updateSpTableSuggestion(){this.isSpTableSuggesstionDisplay=[],this.spTableSuggestion=[],this.localTableData.forEach(e=>{var i;const r=e.spDataType;let s="";null===(i=this.typeMap[e.srcDataType])||void 0===i||i.forEach(a=>{r==a.DiplayT&&(s=a.Brief)}),this.isSpTableSuggesstionDisplay.push(""!==s),this.spTableSuggestion.push(s)})}spTableEditSuggestionHandler(e,i){let r="";this.typeMap[this.localTableData[e].srcDataType].forEach(s=>{i==s.T&&(r=s.Brief)}),this.isSpTableSuggesstionDisplay[e]=""!==r,this.spTableSuggestion[e]=r}setPkRows(){this.pkArray=new po([]),this.pkOrderValidation();var e=new Array,i=new Array;this.pkData.forEach(o=>{o.srcIsPk&&e.push({srcColName:o.srcColName,srcDataType:o.srcDataType,srcIsNotNull:o.srcIsNotNull,srcIsPk:o.srcIsPk,srcOrder:o.srcOrder,srcId:o.srcId}),o.spIsPk&&i.push({spColName:o.spColName,spDataType:o.spDataType,spIsNotNull:o.spIsNotNull,spIsPk:o.spIsPk,spOrder:o.spOrder,spId:o.spId})}),i.sort((o,r)=>o.spOrder-r.spOrder);for(let o=0;oMath.min(e.length,i.length))for(let o=Math.min(e.length,i.length);oMath.min(e.length,i.length))for(let o=Math.min(e.length,i.length);or.spColName).indexOf(this.addedPkColumnName),i=this.localTableData[e],o=1;this.localTableData[e].spIsPk=!0,this.pkData=[],this.pkData=this.conversion.getPkMapping(this.localTableData),e=this.pkData.findIndex(r=>r.srcId===i.srcId||r.spId==i.spId),this.pkArray.value.forEach(r=>{r.spIsPk&&(o+=1);for(let s=0;s{i.spIsPk&&e.push(i.spColName)});for(let i=0;i{var r;if(this.pkData[o].spId===this.conv.SpSchema[this.currentObject.id].PrimaryKeys[o].ColId)this.pkData[o].spOrder=this.conv.SpSchema[this.currentObject.id].PrimaryKeys[o].Order;else{let s=this.conv.SpSchema[this.currentObject.id].PrimaryKeys.map(a=>a.ColId).indexOf(i.spId);i.spOrder=null===(r=this.conv.SpSchema[this.currentObject.id].PrimaryKeys[s])||void 0===r?void 0:r.Order}}):this.pkData.forEach((i,o)=>{var r,s;let a=null===(r=this.conv.SpSchema[this.currentObject.id])||void 0===r?void 0:r.PrimaryKeys.map(l=>l.ColId).indexOf(i.spId);-1!==a&&(i.spOrder=null===(s=this.conv.SpSchema[this.currentObject.id])||void 0===s?void 0:s.PrimaryKeys[a].Order)})}pkOrderValidation(){let e=this.pkData.filter(i=>i.spIsPk).map(i=>Number(i.spOrder));if(e.sort((i,o)=>i-o),e[e.length-1]>e.length&&e.forEach((i,o)=>{this.pkData.forEach(r=>{r.spOrder==i&&(r.spOrder=o+1)})}),0==e[0]&&e[e.length-1]<=e.length){let i;for(let o=0;o{o.spOrder{o.spIsPk&&i.push({ColId:o.spId,Desc:void 0!==this.conv.SpSchema[this.currentObject.id].PrimaryKeys.find(({ColId:r})=>r===o.spId)&&this.conv.SpSchema[this.currentObject.id].PrimaryKeys.find(({ColId:r})=>r===o.spId).Desc,Order:parseInt(o.spOrder)})}),this.pkObj.TableId=e,this.pkObj.Columns=i}togglePkEdit(){this.currentTabIndex=1,this.isPkEditMode?(this.localTableData=JSON.parse(JSON.stringify(this.tableData)),this.pkData=this.conversion.getPkMapping(this.tableData),this.setAddPkColumnList(),this.setPkOrder(),this.setPkRows(),this.isPkEditMode=!1):this.isPkEditMode=!0}savePk(){var e,i,o;if(this.pkArray.value.forEach(r=>{for(let s=0;s{a&&this.data.removeInterleave(""!=this.conv.SpSchema[this.currentObject.id].ParentId?this.currentObject.id:this.conv.SpSchema[r].Id).pipe(Ot(1)).subscribe(u=>{this.updatePk()})}):this.updatePk()}}updatePk(){this.isPkEditMode=!1,this.data.updatePk(this.pkObj).subscribe({next:e=>{""==e?this.isEditMode=!1:(this.dialog.open(mo,{data:{message:e,type:"error"},maxWidth:"500px"}),this.isPkEditMode=!0)}})}dropPk(e){let i=this.localTableData.map(s=>s.spColName).indexOf(e.value.spColName);this.localTableData[i].spId==(this.conv.SyntheticPKeys[this.currentObject.id]?this.conv.SyntheticPKeys[this.currentObject.id].ColId:"")?this.dialog.open(mo,{data:{message:"Removing this synthetic id column from primary key will drop the column from the table",title:"Confirm removal of synthetic id",type:"warning"},maxWidth:"500px"}).afterClosed().subscribe(a=>{a&&this.dropPkHelper(i,e.value.spOrder)}):this.dropPkHelper(i,e.value.spOrder)}dropPkHelper(e,i){this.localTableData[e].spIsPk=!1,this.pkData=[],this.pkData=this.conversion.getPkMapping(this.localTableData),this.pkArray.value.forEach(o=>{for(let r=0;r{o.spOrder>i&&(o.spOrder=Number(o.spOrder)-1)}),this.setAddPkColumnList(),this.setPkRows()}setFkRows(){this.fkArray=new po([]);var e=new Array,i=new Array;this.fkData.forEach(o=>{e.push({srcName:o.srcName,srcColumns:o.srcColumns,srcRefTable:o.srcReferTable,srcRefColumns:o.srcReferColumns,Id:o.srcFkId}),""!=o.spName&&i.push({spName:o.spName,spColumns:o.spColumns,spRefTable:o.spReferTable,spRefColumns:o.spReferColumns,Id:o.spFkId,spColIds:o.spColIds,spReferColumnIds:o.spReferColumnIds,spReferTableId:o.spReferTableId})});for(let o=0;oMath.min(e.length,i.length))for(let o=Math.min(e.length,i.length);o{e.push({Name:i.spName,ColIds:i.spColIds,ReferTableId:i.spReferTableId,ReferColumnIds:i.spReferColumnIds,Id:i.spFkId})}),this.data.updateFkNames(this.currentObject.id,e).subscribe({next:i=>{""==i?this.isFkEditMode=!1:this.dialog.open(mo,{data:{message:i,type:"error"},maxWidth:"500px"})}})}dropFk(e){this.fkData.forEach(i=>{i.spName==e.get("spName").value&&(i.spName="",i.spColumns=[],i.spReferTable="",i.spReferColumns=[],i.spColIds=[],i.spReferColumnIds=[],i.spReferTableId="")}),this.setFkRows()}getRemovedFkIndex(e){let i=-1;return this.fkArray.value.forEach((o,r)=>{o.spName===e.get("spName").value&&(i=r)}),i}removeInterleave(){this.data.removeInterleave(this.currentObject.id).pipe(Ot(1)).subscribe(i=>{""===i&&this.snackbar.openSnackBar("Interleave removed and foreign key restored successfully","Close",5)})}checkIsInterleave(){var e,i;this.currentObject&&!(null===(e=this.currentObject)||void 0===e?void 0:e.isDeleted)&&(null===(i=this.currentObject)||void 0===i?void 0:i.isSpannerNode)&&this.data.getInterleaveConversionForATable(this.currentObject.id)}setInterleave(){this.data.setInterleave(this.currentObject.id)}getInterleaveParentFromConv(){var e,i;return(null===(e=this.currentObject)||void 0===e?void 0:e.type)===Qt.Table&&this.currentObject.isSpannerNode&&!this.currentObject.isDeleted&&""!=this.conv.SpSchema[this.currentObject.id].ParentId?null===(i=this.conv.SpSchema[this.conv.SpSchema[this.currentObject.id].ParentId])||void 0===i?void 0:i.Name:null}setIndexRows(){var e,i;this.spRowArray=new po([]);const o=this.localIndexData.map(r=>r.spColName?r.spColName:"").filter(r=>""!=r);this.indexColumnNames=null===(i=null===(e=this.conv.SpSchema[this.currentObject.parentId])||void 0===e?void 0:e.ColIds)||void 0===i?void 0:i.filter(r=>{var s,a;return!o.includes(null===(a=null===(s=this.conv.SpSchema[this.currentObject.parentId])||void 0===s?void 0:s.ColDefs[r])||void 0===a?void 0:a.Name)}).map(r=>{var s,a;return null===(a=null===(s=this.conv.SpSchema[this.currentObject.parentId])||void 0===s?void 0:s.ColDefs[r])||void 0===a?void 0:a.Name}),this.localIndexData.forEach(r=>{this.spRowArray.push(new an({srcOrder:new X(r.srcOrder),srcColName:new X(r.srcColName),srcDesc:new X(r.srcDesc),spOrder:new X(r.spOrder),spColName:new X(r.spColName,[de.required,de.pattern("^[a-zA-Z]([a-zA-Z0-9/_]*[a-zA-Z0-9])?")]),spDesc:new X(r.spDesc)}))}),this.spDataSource=this.spRowArray.controls}setIndexOrder(){this.spRowArray.value.forEach(e=>{for(let i=0;i""!=i.spColName).map(i=>Number(i.spOrder));if(e.sort((i,o)=>i-o),e[e.length-1]>e.length&&e.forEach((i,o)=>{this.localIndexData.forEach(r=>{""!=r.spColName&&r.spOrder==i&&(r.spOrder=o+1)})}),0==e[0]&&e[e.length-1]<=e.length){let i;for(let o=0;o{o.spOrder!!s.spColId).map(s=>({ColId:s.spColId,Desc:s.spDesc,Order:s.spOrder})),Id:this.currentObject.id}),0==r[0].Keys.length?this.dropIndex():(this.data.updateIndex(null===(o=this.currentObject)||void 0===o?void 0:o.parentId,r).subscribe({next:s=>{""==s?this.isEditMode=!1:(this.dialog.open(mo,{data:{message:s,type:"error"},maxWidth:"500px"}),this.isIndexEditMode=!0)}}),this.addIndexKeyForm.controls.columnName.setValue(""),this.addIndexKeyForm.controls.ascOrDesc.setValue(""),this.addIndexKeyForm.markAsUntouched(),this.data.getSummary(),this.isIndexEditMode=!1)}dropIndex(){var e;this.dialog.open(bI,{width:"35vw",minWidth:"450px",maxWidth:"600px",data:{name:null===(e=this.currentObject)||void 0===e?void 0:e.name,type:Vs.Index}}).afterClosed().subscribe(o=>{o===Vs.Index&&(this.data.dropIndex(this.currentObject.parentId,this.currentObject.id).pipe(Ot(1)).subscribe(r=>{""===r&&(this.isObjectSelected=!1,this.updateSidebar.emit(!0))}),this.currentObject=null)})}restoreIndex(){this.data.restoreIndex(this.currentObject.parentId,this.currentObject.id).pipe(Ot(1)).subscribe(o=>{""===o&&(this.isObjectSelected=!1)}),this.currentObject=null}dropIndexKey(e){this.localIndexData[e].srcColName?(this.localIndexData[e].spColName="",this.localIndexData[e].spColId="",this.localIndexData[e].spDesc="",this.localIndexData[e].spOrder=""):this.localIndexData.splice(e,1),this.setIndexRows()}addIndexKey(){let e=0;this.localIndexData.forEach(i=>{i.spColName&&(e+=1)}),this.localIndexData.push({spColName:this.addIndexKeyForm.value.columnName,spDesc:"desc"===this.addIndexKeyForm.value.ascOrDesc,spOrder:e+1,srcColName:"",srcDesc:void 0,srcOrder:"",srcColId:void 0,spColId:this.currentObject?this.conversion.getColIdFromSpannerColName(this.addIndexKeyForm.value.columnName,this.currentObject.parentId,this.conv):""}),this.setIndexRows()}restoreSpannerTable(){this.data.restoreTable(this.currentObject.id).pipe(Ot(1)).subscribe(e=>{""===e&&(this.isObjectSelected=!1),this.data.getConversionRate(),this.data.getDdl()}),this.currentObject=null}dropTable(){var e;this.dialog.open(bI,{width:"35vw",minWidth:"450px",maxWidth:"600px",data:{name:null===(e=this.currentObject)||void 0===e?void 0:e.name,type:Vs.Table}}).afterClosed().subscribe(o=>{o===Vs.Table&&(this.data.dropTable(this.currentObject.id).pipe(Ot(1)).subscribe(s=>{""===s&&(this.isObjectSelected=!1,this.data.getConversionRate(),this.updateSidebar.emit(!0))}),this.currentObject=null)})}tabChanged(e){this.currentTabIndex=e.index}middleColumnToggle(){this.isMiddleColumnCollapse=!this.isMiddleColumnCollapse,this.sidenav.setMiddleColComponent(this.isMiddleColumnCollapse)}tableInterleaveWith(e){if(""!=this.conv.SpSchema[e].ParentId)return this.conv.SpSchema[e].ParentId;let i="";return Object.keys(this.conv.SpSchema).forEach(o=>{""!=this.conv.SpSchema[o].ParentId&&this.conv.SpSchema[o].ParentId==e&&(i=o)}),i}isPKPrefixModified(e,i){let o,r;this.conv.SpSchema[e].ParentId!=i?(o=this.pkObj.Columns,r=this.conv.SpSchema[i].PrimaryKeys):(r=this.pkObj.Columns,o=this.conv.SpSchema[i].PrimaryKeys);for(let s=0;s{class t{constructor(e,i){this.data=e,this.clickEvent=i,this.changeIssuesLabel=new Pe,this.summaryRows=[],this.summary=new Map,this.filteredSummaryRows=[],this.separatorKeysCodes=[],this.summaryCount=0,this.totalNoteCount=0,this.totalWarningCount=0,this.totalSuggestionCount=0,this.totalErrorCount=0,this.filterInput=new X,this.options=["read","unread","warning","suggestion","note","error"],this.obsFilteredOptions=new Ue,this.searchFilters=["unread","warning","note","suggestion","error"],this.currentObject=null}ngOnInit(){this.data.summary.subscribe({next:e=>{if(this.summary=e,this.currentObject){let i=this.currentObject.id;"indexName"==this.currentObject.type&&(i=this.currentObject.parentId);let o=this.summary.get(i);o?(this.summaryRows=[],this.initiateSummaryCollection(o),this.applyFilters(),this.summaryCount=o.NotesCount+o.WarningsCount+o.ErrorsCount+o.SuggestionsCount,this.changeIssuesLabel.emit(o.NotesCount+o.WarningsCount+o.ErrorsCount+o.SuggestionsCount)):(this.summaryCount=0,this.changeIssuesLabel.emit(0))}else this.initialiseSummaryCollectionForAllTables(this.summary),this.summaryCount=this.totalNoteCount+this.totalErrorCount+this.totalSuggestionCount+this.totalWarningCount,this.changeIssuesLabel.emit(this.summaryCount)}}),this.registerAutoCompleteChange()}initialiseSummaryCollectionForAllTables(e){this.summaryRows=[],this.totalErrorCount=0,this.totalNoteCount=0,this.totalSuggestionCount=0,this.totalWarningCount=0;for(const i of e.values())this.initiateSummaryCollection(i);this.applyFilters()}ngOnChanges(e){var i;if(this.currentObject=(null===(i=null==e?void 0:e.currentObject)||void 0===i?void 0:i.currentValue)||this.currentObject,this.summaryRows=[],this.currentObject){let o=this.currentObject.id;"indexName"==this.currentObject.type&&(o=this.currentObject.parentId);let r=this.summary.get(o);r?(this.summaryRows=[],this.initiateSummaryCollection(r),this.applyFilters(),this.summaryCount=r.NotesCount+r.WarningsCount+r.ErrorsCount+r.SuggestionsCount,this.changeIssuesLabel.emit(r.NotesCount+r.WarningsCount+r.ErrorsCount+r.SuggestionsCount)):(this.summaryCount=0,this.changeIssuesLabel.emit(0))}else this.summaryCount=0,this.changeIssuesLabel.emit(0)}initiateSummaryCollection(e){this.totalErrorCount+=e.ErrorsCount,this.totalNoteCount+=e.NotesCount,this.totalWarningCount+=e.WarningsCount,this.totalSuggestionCount+=e.SuggestionsCount,e.Errors.forEach(i=>{this.summaryRows.push({type:"error",content:i.description,isRead:!1})}),e.Warnings.forEach(i=>{this.summaryRows.push({type:"warning",content:i.description,isRead:!1})}),e.Suggestions.forEach(i=>{this.summaryRows.push({type:"suggestion",content:i.description,isRead:!1})}),e.Notes.forEach(i=>{this.summaryRows.push({type:"note",content:i.description,isRead:!1})})}applyFilters(){let e=[],i=[];this.searchFilters.includes("read")&&i.push(o=>o.isRead),this.searchFilters.includes("unread")&&i.push(o=>!o.isRead),this.searchFilters.includes("warning")&&e.push(o=>"warning"==o.type),this.searchFilters.includes("note")&&e.push(o=>"note"==o.type),this.searchFilters.includes("suggestion")&&e.push(o=>"suggestion"==o.type),this.searchFilters.includes("error")&&e.push(o=>"error"==o.type),this.filteredSummaryRows=this.summaryRows.filter(o=>(!i.length||i.some(r=>r(o)))&&(!e.length||e.some(r=>r(o))))}addFilter(e){e&&!this.searchFilters.includes(e)&&this.searchFilters.push(e),this.applyFilters(),this.registerAutoCompleteChange()}removeFilter(e){const i=this.searchFilters.indexOf(e);i>=0&&this.searchFilters.splice(i,1),this.applyFilters()}toggleRead(e){e.isRead=!e.isRead,this.applyFilters()}registerAutoCompleteChange(){this.obsFilteredOptions=this.filterInput.valueChanges.pipe(Nn(""),je(e=>this.autoCompleteOnChangeFilter(e)))}autoCompleteOnChangeFilter(e){return this.options.filter(i=>i.toLowerCase().includes(e))}spannerTab(){this.clickEvent.setTabToSpanner()}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(jo))},t.\u0275cmp=Ae({type:t,selectors:[["app-summary"]],inputs:{currentObject:"currentObject"},outputs:{changeIssuesLabel:"changeIssuesLabel"},features:[nn],decls:29,vars:11,consts:[[1,"container"],[1,"filter"],[1,"columns"],[1,"left"],[1,"material-icons","filter-icon"],[1,"filter-text"],[1,"right"],["chipList",""],["class","primary",3,"removed",4,"ngFor","ngForOf"],[3,"formControl","matChipInputFor","matChipInputSeparatorKeyCodes","matChipInputAddOnBlur","matAutocomplete"],["auto","matAutocomplete"],[3,"value","click",4,"ngFor","ngForOf"],[1,"header"],["class","content",4,"ngIf"],["class","no-issue-container",4,"ngIf"],[1,"primary",3,"removed"],["matChipRemove",""],[3,"value","click"],[1,"content"],["class","summary-row",4,"ngFor","ngForOf"],[1,"summary-row"],["matTooltip","Error: Please resolve them to proceed with the migration","matTooltipPosition","above","class","danger",4,"ngIf"],["matTooltip","Warning : Changes made because of differences in source and spanner capabilities.","matTooltipPosition","above","class","warning",4,"ngIf"],["matTooltip","Suggestion : We highly recommend you make these changes or else it will impact your DB performance.","matTooltipPosition","above","class","suggestion",4,"ngIf"],["matTooltip","Note : This is informational and you dont need to do anything.","matTooltipPosition","above","class","success",4,"ngIf"],[1,"middle"],[3,"matMenuTriggerFor"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"click",4,"ngIf"],["matTooltip","Error: Please resolve them to proceed with the migration","matTooltipPosition","above",1,"danger"],["matTooltip","Warning : Changes made because of differences in source and spanner capabilities.","matTooltipPosition","above",1,"warning"],["matTooltip","Suggestion : We highly recommend you make these changes or else it will impact your DB performance.","matTooltipPosition","above",1,"suggestion"],["matTooltip","Note : This is informational and you dont need to do anything.","matTooltipPosition","above",1,"success"],["mat-menu-item","",3,"click"],[1,"no-issue-container"],[1,"no-issue-icon-container"],["width","36","height","36","viewBox","0 0 24 20","fill","none","xmlns","http://www.w3.org/2000/svg"],["d","M16.8332 0.69873C16.0051 7.45842 16.2492 9.44782 10.4672 10.2012C16.1511 11.1242 16.2329 13.2059 16.8332 19.7037C17.6237 13.1681 17.4697 11.2106 23.1986 10.2012C17.4247 9.45963 17.6194 7.4505 16.8332 0.69873ZM4.23739 0.872955C3.79064 4.52078 3.92238 5.59467 0.802246 6.00069C3.86944 6.49885 3.91349 7.62218 4.23739 11.1284C4.66397 7.60153 4.581 6.54497 7.67271 6.00069C4.55696 5.60052 4.66178 4.51623 4.23739 0.872955ZM7.36426 11.1105C7.05096 13.6683 7.14331 14.4212 4.95554 14.7061C7.10612 15.0553 7.13705 15.8431 7.36426 18.3017C7.66333 15.8288 7.60521 15.088 9.77298 14.7061C7.58818 14.4255 7.66177 13.6653 7.36426 11.1105Z","fill","#3367D6"],[1,"no-issue-message"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"div")(2,"div",1)(3,"div",2)(4,"div",3)(5,"span",4),h(6,"filter_list"),c(),d(7,"span",5),h(8,"Filter"),c()(),d(9,"div",6)(10,"mat-form-field")(11,"mat-chip-list",null,7),_(13,TY,5,1,"mat-chip",8),E(14,"input",9),d(15,"mat-autocomplete",null,10),_(17,kY,2,2,"mat-option",11),_s(18,"async"),c()()()()()(),d(19,"div",12)(20,"div",2)(21,"div",3)(22,"span"),h(23," Status "),c()(),d(24,"div",6)(25,"span"),h(26," Summary "),c()()()(),_(27,NY,2,1,"div",13),_(28,LY,8,0,"div",14),c()()),2&e){const o=$t(12),r=$t(16);f(13),m("ngForOf",i.searchFilters),f(1),m("formControl",i.filterInput)("matChipInputFor",o)("matChipInputSeparatorKeyCodes",i.separatorKeysCodes)("matChipInputAddOnBlur",!1)("matAutocomplete",r),f(3),m("ngForOf",bs(18,9,i.obsFilteredOptions)),f(10),m("ngIf",0!==i.summaryCount),f(1),m("ngIf",0===i.summaryCount)}},directives:[En,uk,si,Td,lk,bn,Dn,dk,Jk,vn,Il,nz,_i,Et,ki,Nl,Fl,Kr],pipes:[zg],styles:[".container[_ngcontent-%COMP%]{height:calc(100vh - 271px);position:relative;overflow-y:auto;background-color:#fff}.container[_ngcontent-%COMP%] .no-object-container[_ngcontent-%COMP%]{height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.container[_ngcontent-%COMP%] .no-object-container[_ngcontent-%COMP%] .no-object-icon-container[_ngcontent-%COMP%]{padding:10px;background-color:#3367d61f;border-radius:3px;margin:20px}.container[_ngcontent-%COMP%] .no-object-container[_ngcontent-%COMP%] .no-object-message[_ngcontent-%COMP%]{width:80%;max-width:500px;text-align:center}.container[_ngcontent-%COMP%] .no-issue-container[_ngcontent-%COMP%]{width:100%;position:absolute;top:50%;display:flex;flex-direction:column;justify-content:center;align-items:center}.container[_ngcontent-%COMP%] .no-issue-container[_ngcontent-%COMP%] .no-issue-icon-container[_ngcontent-%COMP%]{padding:10px;background-color:#3367d61f;border-radius:3px;margin:20px}.container[_ngcontent-%COMP%] .no-issue-container[_ngcontent-%COMP%] .no-issue-message[_ngcontent-%COMP%]{width:80%;max-width:500px;text-align:center}h3[_ngcontent-%COMP%]{margin-bottom:0;padding-left:15px}.filter[_ngcontent-%COMP%]{display:flex;flex:1;min-height:65px;padding:0 15px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%]{display:flex;flex:1}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{order:1;position:relative;padding-top:20px;width:100px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] .filter-icon[_ngcontent-%COMP%]{position:absolute;font-size:20px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{position:absolute;margin-left:30px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{order:2;width:100%}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:100%;min-height:22px}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .mat-chip-input[_ngcontent-%COMP%]{width:60px;height:24px;flex:0}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .primary[_ngcontent-%COMP%]{background-color:#3f51b5;color:#fff}.filter[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%] .primary[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:#fff;opacity:.4}.filter[_ngcontent-%COMP%] .mat-form-field-underline{display:none}.filter[_ngcontent-%COMP%] .mat-chip[_ngcontent-%COMP%]{min-height:24px;font-weight:lighter}.header[_ngcontent-%COMP%]{display:flex;flex:1;padding:5px 0;background-color:#f5f5f5;text-align:center}.header[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%]{display:flex;flex:1}.header[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{width:60px;order:1}.header[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{flex:1;order:2}.summary-row[_ngcontent-%COMP%]{display:flex;flex:1;padding:10px 0;border-bottom:1px solid #ccc}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%]{display:flex;flex:1}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{width:60px;order:1;text-align:center;padding-top:5px}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .middle[_ngcontent-%COMP%]{flex:1;order:2}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .right[_ngcontent-%COMP%]{width:30px;order:3;cursor:pointer}.summary-row[_ngcontent-%COMP%] .columns[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:18px}"]}),t})();function VY(t,n){1&t&&(d(0,"th",19),h(1,"Order"),c())}function jY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.index;f(1),Ee(e+1)}}function HY(t,n){1&t&&(d(0,"th",19),h(1,"Rule name"),c())}function UY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null==e?null:e.Name)}}function zY(t,n){1&t&&(d(0,"th",19),h(1,"Rule type"),c())}function $Y(t,n){1&t&&(d(0,"div"),h(1,"Add Index"),c())}function GY(t,n){1&t&&(d(0,"div"),h(1,"Global Datatype Change"),c())}function WY(t,n){1&t&&(d(0,"div"),h(1,"Column default max length change"),c())}function qY(t,n){1&t&&(d(0,"div"),h(1,"Add shard id column as primary key"),c())}function KY(t,n){if(1&t&&(d(0,"td",20),_(1,$Y,2,0,"div",21),_(2,GY,2,0,"div",21),_(3,WY,2,0,"div",21),_(4,qY,2,0,"div",21),c()),2&t){const e=n.$implicit;f(1),m("ngIf","add_index"===(null==e?null:e.Type)),f(1),m("ngIf","global_datatype_change"===(null==e?null:e.Type)),f(1),m("ngIf","edit_column_max_length"===(null==e?null:e.Type)),f(1),m("ngIf","add_shard_id_primary_key"===(null==e?null:e.Type))}}function ZY(t,n){1&t&&(d(0,"th",19),h(1,"Object type"),c())}function QY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null==e?null:e.ObjectType)}}function YY(t,n){1&t&&(d(0,"th",19),h(1,"Associated object"),c())}function XY(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null==e?null:e.AssociatedObjects)}}function JY(t,n){1&t&&(d(0,"th",19),h(1,"Enabled"),c())}function eX(t,n){if(1&t&&(d(0,"td",20),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(null!=e&&e.Enabled?"Yes":"No")}}function tX(t,n){1&t&&(d(0,"th",19),h(1,"View Rule"),c())}function nX(t,n){if(1&t){const e=pe();d(0,"td",20)(1,"button",22),N("click",function(){const r=se(e).$implicit;return D().viewSidenavRule(null==r?null:r.Id)}),h(2,"View"),c()()}}function iX(t,n){1&t&&E(0,"tr",23)}function oX(t,n){1&t&&E(0,"tr",24)}function rX(t,n){1&t&&(d(0,"div",25)(1,"mat-icon",26),h(2,"settings"),c(),d(3,"span",27),h(4,'No rules added yet. Add one by clicking "Add rule".'),c()())}let sX=(()=>{class t{constructor(e,i){this.sidenavService=e,this.data=i,this.dataSource=[],this.currentDataSource=[],this.displayedColumns=["order","name","type","objectType","associatedObject","enabled","view"],this.currentObject=null,this.lengthOfRules=new Pe}ngOnInit(){this.dataSource=[],this.data.rule.subscribe({next:e=>{this.currentDataSource=e,this.updateRules()}})}ngOnChanges(){this.updateRules()}updateRules(){var e,i;if(this.currentDataSource){let o=[],r=[];o=this.currentDataSource.filter(s=>"global_datatype_change"===(null==s?void 0:s.Type)||"add_shard_id_primary_key"===(null==s?void 0:s.Type)||"edit_column_max_length"===(null==s?void 0:s.Type)&&"All table"===(null==s?void 0:s.AssociatedObjects)),this.currentObject&&("tableName"===(null===(e=this.currentObject)||void 0===e?void 0:e.type)||"indexName"===(null===(i=this.currentObject)||void 0===i?void 0:i.type))&&(r=this.currentDataSource.filter(s=>{var a,l,u,p;return(null==s?void 0:s.AssociatedObjects)===(null===(a=this.currentObject)||void 0===a?void 0:a.id)||(null==s?void 0:s.AssociatedObjects)===(null===(l=this.currentObject)||void 0===l?void 0:l.parentId)||(null==s?void 0:s.AssociatedObjects)===(null===(u=this.currentObject)||void 0===u?void 0:u.name)||(null==s?void 0:s.AssociatedObjects)===(null===(p=this.currentObject)||void 0===p?void 0:p.parent)}).map(s=>{var a,l;let u="";return"tableName"===(null===(a=this.currentObject)||void 0===a?void 0:a.type)?u=this.currentObject.name:"indexName"===(null===(l=this.currentObject)||void 0===l?void 0:l.type)&&(u=this.currentObject.parent),s.AssociatedObjects=u,s})),this.dataSource=[...o,...r],this.lengthOfRules.emit(this.dataSource.length)}else this.dataSource=[],this.lengthOfRules.emit(0)}openSidenav(){this.sidenavService.openSidenav(),this.sidenavService.setSidenavComponent("rule"),this.sidenavService.setSidenavRuleType(""),this.sidenavService.setRuleData({}),this.sidenavService.setDisplayRuleFlag(!1)}viewSidenavRule(e){let i=[];for(let o=0;o{class t{constructor(e,i,o,r,s,a,l){this.data=e,this.conversion=i,this.dialog=o,this.sidenav=r,this.router=s,this.clickEvent=a,this.fetch=l,this.fkData=[],this.tableData=[],this.indexData=[],this.typeMap=!1,this.defaultTypeMap=!1,this.conversionRates={},this.isLeftColumnCollapse=!1,this.isRightColumnCollapse=!0,this.isMiddleColumnCollapse=!0,this.isOfflineStatus=!1,this.spannerTree=[],this.srcTree=[],this.issuesAndSuggestionsLabel="ISSUES AND SUGGESTIONS",this.rulesLabel="RULES (0)",this.objectExplorerInitiallyRender=!1,this.srcDbName=localStorage.getItem(In.SourceDbName),this.conversionRateCount={good:0,ok:0,bad:0},this.conversionRatePercentages={good:0,ok:0,bad:0},this.currentDatabase="spanner",this.dialect="",this.currentObject=null}ngOnInit(){this.conversion.getStandardTypeToPGSQLTypemap(),this.conversion.getPGSQLToStandardTypeTypemap(),this.ddlsumconvObj=this.data.getRateTypemapAndSummary(),this.typemapObj=this.data.typeMap.subscribe(e=>{this.typeMap=e}),this.defaultTypemapObj=this.data.defaultTypeMap.subscribe(e=>{this.defaultTypeMap=e}),this.ddlObj=this.data.ddl.subscribe(e=>{this.ddlStmts=e}),this.sidenav.setMiddleColumnComponent.subscribe(e=>{this.isMiddleColumnCollapse=!e}),this.convObj=this.data.conv.subscribe(e=>{var i,o;Object.keys(e.SrcSchema).length<=0&&this.router.navigate(["/"]);const r=this.isIndexAddedOrRemoved(e);e&&this.conv&&Object.keys(null==e?void 0:e.SpSchema).length!=Object.keys(null===(i=this.conv)||void 0===i?void 0:i.SpSchema).length&&(this.conv=e,this.reRenderObjectExplorerSpanner(),this.reRenderObjectExplorerSrc()),this.conv=e,this.conv.DatabaseType&&(this.srcDbName=$p(this.conv.DatabaseType)),r&&this.conversionRates&&this.reRenderObjectExplorerSpanner(),!this.objectExplorerInitiallyRender&&this.conversionRates&&(this.reRenderObjectExplorerSpanner(),this.reRenderObjectExplorerSrc(),this.objectExplorerInitiallyRender=!0),this.currentObject&&this.currentObject.type===Qt.Table&&(this.fkData=this.currentObject?this.conversion.getFkMapping(this.currentObject.id,e):[],this.tableData=this.currentObject?this.conversion.getColumnMapping(this.currentObject.id,e):[]),this.currentObject&&(null===(o=this.currentObject)||void 0===o?void 0:o.type)===Qt.Index&&!r&&(this.indexData=this.conversion.getIndexMapping(this.currentObject.parentId,this.conv,this.currentObject.id)),this.dialect="postgresql"===this.conv.SpDialect?"PostgreSQL":"Google Standard SQL"}),this.converObj=this.data.conversionRate.subscribe(e=>{this.conversionRates=e,this.updateConversionRatePercentages(),this.conv?(this.reRenderObjectExplorerSpanner(),this.reRenderObjectExplorerSrc(),this.objectExplorerInitiallyRender=!0):this.objectExplorerInitiallyRender=!1}),this.data.isOffline.subscribe({next:e=>{this.isOfflineStatus=e}})}ngOnDestroy(){this.typemapObj.unsubscribe(),this.convObj.unsubscribe(),this.ddlObj.unsubscribe(),this.ddlsumconvObj.unsubscribe()}updateConversionRatePercentages(){let e=Object.keys(this.conversionRates).length;this.conversionRateCount={good:0,ok:0,bad:0},this.conversionRatePercentages={good:0,ok:0,bad:0};for(const i in this.conversionRates)"NONE"===this.conversionRates[i]||"EXCELLENT"===this.conversionRates[i]?this.conversionRateCount.good+=1:"GOOD"===this.conversionRates[i]||"OK"===this.conversionRates[i]?this.conversionRateCount.ok+=1:this.conversionRateCount.bad+=1;if(e>0)for(let i in this.conversionRatePercentages)this.conversionRatePercentages[i]=Number((this.conversionRateCount[i]/e*100).toFixed(2))}reRenderObjectExplorerSpanner(){this.spannerTree=this.conversion.createTreeNode(this.conv,this.conversionRates)}reRenderObjectExplorerSrc(){this.srcTree=this.conversion.createTreeNodeForSource(this.conv,this.conversionRates)}reRenderSidebar(){this.reRenderObjectExplorerSpanner()}changeCurrentObject(e){(null==e?void 0:e.type)===Qt.Table?(this.currentObject=e,this.tableData=this.currentObject?this.conversion.getColumnMapping(this.currentObject.id,this.conv):[],this.fkData=[],this.fkData=this.currentObject?this.conversion.getFkMapping(this.currentObject.id,this.conv):[]):(null==e?void 0:e.type)===Qt.Index?(this.currentObject=e,this.indexData=this.conversion.getIndexMapping(e.parentId,this.conv,e.id)):this.currentObject=null}changeCurrentDatabase(e){this.currentDatabase=e}updateIssuesLabel(e){setTimeout(()=>{this.issuesAndSuggestionsLabel=`ISSUES AND SUGGESTIONS (${e})`})}updateRulesLabel(e){setTimeout(()=>{this.rulesLabel=`RULES (${e})`})}leftColumnToggle(){this.isLeftColumnCollapse=!this.isLeftColumnCollapse}middleColumnToggle(){this.isMiddleColumnCollapse=!this.isMiddleColumnCollapse}rightColumnToggle(){this.isRightColumnCollapse=!this.isRightColumnCollapse}openAssessment(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("assessment");let e="";if(localStorage.getItem(In.Type)==mi.DirectConnect){let r=JSON.parse(localStorage.getItem(In.Config));e=(null==r?void 0:r.hostName)+" : "+(null==r?void 0:r.port)}else e=this.conv.DatabaseName;this.clickEvent.setViewAssesmentData({srcDbType:this.srcDbName,connectionDetail:e,conversionRates:this.conversionRateCount})}openSaveSessionSidenav(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("saveSession"),this.sidenav.setSidenavDatabaseName(this.conv.DatabaseName)}downloadSession(){uI(this.conv)}downloadArtifacts(){let e=new fI,i=`${this.conv.DatabaseName}`;this.fetch.getDStructuredReport().subscribe({next:o=>{let r=JSON.stringify(o).replace(/9223372036854776000/g,"9223372036854775807");e.file(i+"_migration_structuredReport.json",r),this.fetch.getDTextReport().subscribe({next:a=>{e.file(i+"_migration_textReport.txt",a),this.fetch.getDSpannerDDL().subscribe({next:l=>{e.file(i+"_spannerDDL.txt",l);let u=JSON.stringify(this.conv).replace(/9223372036854776000/g,"9223372036854775807");e.file(`${this.conv.SessionName}_${this.conv.DatabaseType}_${i}.json`,u),e.generateAsync({type:"blob"}).then(g=>{var v=document.createElement("a");v.href=URL.createObjectURL(g),v.download=`${i}_artifacts`,v.click()})}})}})}})}downloadStructuredReport(){var e=document.createElement("a");this.fetch.getDStructuredReport().subscribe({next:i=>{let o=JSON.stringify(i).replace(/9223372036854776000/g,"9223372036854775807");e.href="data:text/json;charset=utf-8,"+encodeURIComponent(o),e.download=`${this.conv.DatabaseName}_migration_structuredReport.json`,e.click()}})}downloadTextReport(){var e=document.createElement("a");this.fetch.getDTextReport().subscribe({next:i=>{e.href="data:text;charset=utf-8,"+encodeURIComponent(i),e.download=`${this.conv.DatabaseName}_migration_textReport.txt`,e.click()}})}downloadDDL(){var e=document.createElement("a");this.fetch.getDSpannerDDL().subscribe({next:i=>{e.href="data:text;charset=utf-8,"+encodeURIComponent(i),e.download=`${this.conv.DatabaseName}_spannerDDL.txt`,e.click()}})}updateSpannerTable(e){this.spannerTree=this.conversion.createTreeNode(this.conv,this.conversionRates,e.text,e.order)}updateSrcTable(e){this.srcTree=this.conversion.createTreeNodeForSource(this.conv,this.conversionRates,e.text,e.order)}isIndexAddedOrRemoved(e){if(this.conv){let i=0,o=0;return Object.entries(this.conv.SpSchema).forEach(r=>{i+=r[1].Indexes?r[1].Indexes.length:0}),Object.entries(e.SpSchema).forEach(r=>{o+=r[1].Indexes?r[1].Indexes.length:0}),i!==o}return!1}prepareMigration(){this.fetch.getTableWithErrors().subscribe({next:e=>{if(null!=e&&0!=e.length){console.log(e.map(o=>o.Name).join(", "));let i="Please fix the errors for the following tables to move ahead: "+e.map(o=>o.Name).join(", ");this.dialog.open(mo,{data:{message:i,type:"error",title:"Error in Spanner Draft"},maxWidth:"500px"})}else this.isOfflineStatus?this.dialog.open(mo,{data:{message:"Please configure spanner project id and instance id to proceed",type:"error",title:"Configure Spanner"},maxWidth:"500px"}):0==Object.keys(this.conv.SpSchema).length?this.dialog.open(mo,{data:{message:"Please restore some table(s) to proceed with the migration",type:"error",title:"All tables skipped"},maxWidth:"500px"}):this.router.navigate(["/prepare-migration"])}})}spannerTab(){this.clickEvent.setTabToSpanner()}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(Da),b(wr),b(Ii),b(Jn),b(jo),b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-workspace"]],decls:57,vars:59,consts:[[1,"header"],[1,"breadcrumb","vertical-center"],["mat-button","",1,"breadcrumb_source",3,"routerLink"],["mat-button","",1,"breadcrumb_workspace",3,"routerLink"],[1,"header_action"],["matTooltip","Connect to a spanner instance to run migration",3,"matTooltipDisabled"],["mat-button","",3,"click"],["mat-button","",3,"click",4,"ngIf"],[1,"artifactsButtons"],["mat-raised-button","","color","primary",1,"split-button-left",3,"click"],["mat-raised-button","","color","primary",1,"split-button-right",3,"matMenuTriggerFor"],["aria-hidden","false","aria-label","More options"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"click"],[1,"container"],[1,"summary"],[1,"spanner-tab-link",3,"click"],[1,"columns"],[1,"column-left",3,"ngClass"],[3,"spannerTree","srcTree","srcDbName","selectedDatabase","selectObject","updateSpannerTable","updateSrcTable","leftCollaspe","middleCollapse"],[1,"column-middle",3,"ngClass"],[3,"currentObject","tableData","indexData","typeMap","ddlStmts","fkData","currentDatabase","defaultTypeMap","updateSidebar"],[1,"column-right",3,"ngClass"],["mat-dialog-close",""],[3,"ngClass","label"],[3,"currentObject","changeIssuesLabel"],[3,"currentObject","lengthOfRules"],["id","right-column-toggle-button",3,"click"],[3,"ngClass"]],template:function(e,i){if(1&e&&(d(0,"div")(1,"div",0)(2,"div",1)(3,"a",2),h(4,"Select Source"),c(),d(5,"span"),h(6,">"),c(),d(7,"a",3)(8,"b"),h(9),c()()(),d(10,"div",4)(11,"span",5)(12,"button",6),N("click",function(){return i.prepareMigration()}),h(13," PREPARE MIGRATION "),c()(),d(14,"button",6),N("click",function(){return i.openAssessment()}),h(15,"VIEW ASSESSMENT"),c(),_(16,aX,2,0,"button",7),d(17,"span",8)(18,"button",9),N("click",function(){return i.downloadArtifacts()}),h(19," DOWNLOAD ARTIFACTS "),c(),d(20,"button",10)(21,"mat-icon",11),h(22,"expand_more"),c()(),d(23,"mat-menu",12,13)(25,"button",14),N("click",function(){return i.downloadTextReport()}),h(26,"Download Text Report"),c(),d(27,"button",14),N("click",function(){return i.downloadStructuredReport()}),h(28,"Download Structured Report"),c(),d(29,"button",14),N("click",function(){return i.downloadSession()}),h(30,"Download Session File"),c(),d(31,"button",14),N("click",function(){return i.downloadDDL()}),h(32,"Download Spanner DDL"),c()()()()(),d(33,"div",15)(34,"div",16),h(35),E(36,"br"),h(37," To make schema changes go to "),d(38,"a",17),N("click",function(){return i.spannerTab()}),h(39,"Spanner Draft"),c(),h(40," pane. "),c()(),d(41,"div",18)(42,"div",19)(43,"app-object-explorer",20),N("selectedDatabase",function(r){return i.changeCurrentDatabase(r)})("selectObject",function(r){return i.changeCurrentObject(r)})("updateSpannerTable",function(r){return i.updateSpannerTable(r)})("updateSrcTable",function(r){return i.updateSrcTable(r)})("leftCollaspe",function(){return i.leftColumnToggle()})("middleCollapse",function(){return i.middleColumnToggle()}),c()(),d(44,"div",21)(45,"app-object-detail",22),N("updateSidebar",function(){return i.reRenderSidebar()}),c()(),d(46,"div",23)(47,"mat-tab-group",24)(48,"mat-tab",25)(49,"app-summary",26),N("changeIssuesLabel",function(r){return i.updateIssuesLabel(r)}),c()(),d(50,"mat-tab",25)(51,"app-rule",27),N("lengthOfRules",function(r){return i.updateRulesLabel(r)}),c()()(),d(52,"button",28),N("click",function(){return i.rightColumnToggle()}),d(53,"mat-icon",29),h(54,"first_page"),c(),d(55,"mat-icon",29),h(56,"last_page"),c()()()()()),2&e){const o=$t(24);f(3),m("routerLink","/"),f(4),m("routerLink","/workspace"),f(2),Se("Configure Schema (",i.dialect," Dialect)"),f(2),m("matTooltipDisabled",!i.isOfflineStatus),f(5),m("ngIf",!i.isOfflineStatus),f(4),m("matMenuTriggerFor",o),f(15),Zm(" Estimation for ",i.srcDbName.toUpperCase()," to Spanner conversion: ",i.conversionRatePercentages.good,"% of tables can be converted automatically, ",i.conversionRatePercentages.ok,"% requires minimal conversion changes and ",i.conversionRatePercentages.bad,"% requires high complexity conversion changes. "),f(7),m("ngClass",Kt(32,Hd,i.isLeftColumnCollapse?"left-column-collapse":"left-column-expand")),f(1),m("spannerTree",i.spannerTree)("srcTree",i.srcTree)("srcDbName",i.srcDbName),f(1),m("ngClass",function Iw(t,n,e,i,o,r,s,a){const l=Ai()+t,u=De(),p=To(u,l,e,i,o,r);return Mi(u,l+4,s)||p?fr(u,l+5,a?n.call(a,e,i,o,r,s):n(e,i,o,r,s)):Mc(u,l+5)}(34,lX,i.isLeftColumnCollapse,!i.isLeftColumnCollapse,!i.isMiddleColumnCollapse,i.isRightColumnCollapse,!i.isRightColumnCollapse)),f(1),m("currentObject",i.currentObject)("tableData",i.tableData)("indexData",i.indexData)("typeMap",i.typeMap)("ddlStmts",i.ddlStmts)("fkData",i.fkData)("currentDatabase",i.currentDatabase)("defaultTypeMap",i.defaultTypeMap),f(1),m("ngClass",function Ow(t,n,e,i,o,r,s,a,l){const u=Ai()+t,p=De(),g=To(p,u,e,i,o,r);return Js(p,u+4,s,a)||g?fr(p,u+6,l?n.call(l,e,i,o,r,s,a):n(e,i,o,r,s,a)):Mc(p,u+6)}(40,cX,!i.isRightColumnCollapse&&!i.isLeftColumnCollapse,!i.isRightColumnCollapse&&i.isLeftColumnCollapse,i.isRightColumnCollapse,!i.isMiddleColumnCollapse,i.isMiddleColumnCollapse,!i.isMiddleColumnCollapse)),f(2),m("ngClass",Kt(49,vI,Kt(47,Hd,i.updateIssuesLabel)))("label",i.issuesAndSuggestionsLabel),f(1),m("currentObject",i.currentObject),f(1),m("ngClass",Kt(53,vI,Kt(51,Hd,i.updateRulesLabel)))("label",i.rulesLabel),f(1),m("currentObject",i.currentObject),f(2),m("ngClass",Kt(55,Hd,i.isRightColumnCollapse?"display":"hidden")),f(2),m("ngClass",Kt(57,Hd,i.isRightColumnCollapse?"hidden":"display"))}},directives:[VM,jd,ki,Ht,Et,Nl,bn,Fl,Kr,nr,Qq,xY,rv,Ji,wp,BY,sX],styles:["app-object-detail[_ngcontent-%COMP%]{height:100%}.vertical-center[_ngcontent-%COMP%]{display:flex;align-items:center}.columns[_ngcontent-%COMP%]{display:flex;flex-direction:row;width:100%;border-top:1px solid #d3d3d3;border-bottom:1px solid #d3d3d3;height:calc(100vh - 222px)}.artifactsButtons[_ngcontent-%COMP%]{white-space:nowrap}.container[_ngcontent-%COMP%]{padding:7px 20px;margin-bottom:20px}.container[_ngcontent-%COMP%] .summary[_ngcontent-%COMP%]{font-weight:lighter}.container[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 5px}.column-left[_ngcontent-%COMP%]{overflow:auto}.column-middle[_ngcontent-%COMP%]{width:48%;border-left:1px solid #d3d3d3;border-right:1px solid #d3d3d3;overflow:auto}.column-right[_ngcontent-%COMP%]{width:26%;position:relative;overflow:auto}.left-column-collapse[_ngcontent-%COMP%]{width:3%}.left-column-expand[_ngcontent-%COMP%]{width:26%}.middle-column-collapse[_ngcontent-%COMP%]{width:48%}.middle-column-expand[_ngcontent-%COMP%]{width:71%}.right-column-half-expand[_ngcontent-%COMP%]{width:80%}.right-column-collapse[_ngcontent-%COMP%]{width:26%}.right-column-full-expand[_ngcontent-%COMP%]{width:97%}.middle-column-hide[_ngcontent-%COMP%]{width:0%}.middle-column-full[_ngcontent-%COMP%]{width:100%}#right-column-toggle-button[_ngcontent-%COMP%]{border:none;background-color:inherit;position:absolute;top:10px;right:7px;z-index:100}#right-column-toggle-button[_ngcontent-%COMP%]:hover{cursor:pointer} .column-right .mat-tab-label .mat-tab-label-content{font-size:.8rem} .column-right .mat-tab-label{min-width:25px!important;padding:10px} .column-right .mat-tab-label.mat-tab-label-active{min-width:25px!important;padding:7px} .column-right .mat-tab-label-container{margin-right:40px} .column-right .mat-tab-header-pagination-controls-enabled .mat-tab-label-container{margin-right:0} .column-right .mat-tab-header-pagination-after{margin-right:40px}.split-button-left[_ngcontent-%COMP%]{border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:none;padding-right:1px}.split-button-right[_ngcontent-%COMP%]{box-shadow:none;width:30px!important;min-width:unset!important;padding:0 2px;border-top-left-radius:0;border-bottom-left-radius:0;margin-right:7px}"]}),t})(),uX=(()=>{class t{constructor(e,i,o){this.formBuilder=e,this.dialogRef=i,this.data=o,this.region="",this.spannerInstance="",this.dialect="",this.region=o.Region,this.spannerInstance=o.Instance,this.dialect=o.Dialect,this.targetDetailsForm=this.formBuilder.group({targetDb:["",de.required]}),this.targetDetailsForm.setValue({targetDb:localStorage.getItem(Wt.TargetDB)})}ngOnInit(){}updateTargetDetails(){let e=this.targetDetailsForm.value;localStorage.setItem(Wt.TargetDB,e.targetDb),localStorage.setItem(Wt.Dialect,e.dialect),localStorage.setItem(le.IsTargetDetailSet,"true"),this.dialogRef.close()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-target-details-form"]],decls:30,vars:5,consts:[["mat-dialog-content",""],[1,"target-detail-form",3,"formGroup"],["matTooltip","Schema & Schema and data migration: Specify new database name or existing database with empty schema. Data migration: Specify existing database with tables already created",1,"configure"],["appearance","outline",1,"full-width"],["matInput","","placeholder","Target Database","type","text","formControlName","targetDb","ng-value","targetDetails.TargetDB"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Spanner Database Details"),d(4,"mat-icon",2),h(5," info"),c()(),d(6,"mat-form-field",3)(7,"mat-label"),h(8,"Spanner Database"),c(),E(9,"input",4),c(),E(10,"br")(11,"br"),d(12,"b"),h(13,"Region:"),c(),h(14),E(15,"br")(16,"br"),d(17,"b"),h(18,"Spanner Instance:"),c(),h(19),E(20,"br")(21,"br"),d(22,"b"),h(23,"Dialect:"),c(),h(24),c(),d(25,"div",5)(26,"button",6),h(27,"Cancel"),c(),d(28,"button",7),N("click",function(){return i.updateTargetDetails()}),h(29," Save "),c()()()),2&e&&(f(1),m("formGroup",i.targetDetailsForm),f(13),Se(" ",i.region," "),f(5),Se(" ",i.spannerInstance," "),f(5),Se(" ",i.dialect," "),f(4),m("disabled",!i.targetDetailsForm.valid))},directives:[Dr,xi,Hn,Sn,bn,ki,En,Mn,ci,Dn,vn,Xn,Sr,Ht,Ji],styles:[""]}),t})();function hX(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",10),N("change",function(){const r=se(e).$implicit;return D().onItemChange(r.value)}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function pX(t,n){if(1&t&&(d(0,"mat-option",14),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayName),f(1),Se(" ",e.DisplayName," ")}}function fX(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",11)(2,"mat-label"),h(3,"Select connection profile"),c(),d(4,"mat-select",12),_(5,pX,2,2,"mat-option",13),c()()()),2&t){const e=D();f(5),m("ngForOf",e.profileList)}}function mX(t,n){1&t&&(d(0,"div")(1,"mat-form-field",15)(2,"mat-label"),h(3,"Connection profile name"),c(),E(4,"input",16),c()())}function gX(t,n){1&t&&(d(0,"div")(1,"mat-form-field",11)(2,"mat-label"),h(3,"Replication slot"),c(),E(4,"input",17),c(),E(5,"br"),d(6,"mat-form-field",11)(7,"mat-label"),h(8,"Publication name"),c(),E(9,"input",18),c()())}function _X(t,n){if(1&t&&(d(0,"li",24)(1,"span",25),h(2),c(),d(3,"span")(4,"mat-icon",26),h(5,"file_copy"),c()()()),2&t){const e=n.$implicit;f(2),Ee(e),f(2),m("cdkCopyToClipboard",e)}}function bX(t,n){if(1&t&&(d(0,"div",27)(1,"span",25),h(2,"Test connection failed"),c(),d(3,"mat-icon",28),h(4," error "),c()()),2&t){const e=D(3);f(3),m("matTooltip",e.errorMsg)}}function vX(t,n){1&t&&(d(0,"mat-icon",29),h(1," check_circle "),c())}function yX(t,n){if(1&t){const e=pe();d(0,"div")(1,"div")(2,"b"),h(3,"Copy the public IPs below, and use them to configure the network firewall to accept connections from them."),c(),d(4,"a",19),h(5,"Learn More"),c()(),E(6,"br"),_(7,_X,6,2,"li",20),_(8,bX,5,1,"div",21),E(9,"br"),d(10,"button",22),N("click",function(){return se(e),D(2).testConnection()}),h(11,"Test Connection"),c(),_(12,vX,2,0,"mat-icon",23),c()}if(2&t){const e=D(2);f(7),m("ngForOf",e.ipList),f(1),m("ngIf",!e.testSuccess&&""!=e.errorMsg),f(2),m("disabled",!e.connectionProfileForm.valid),f(2),m("ngIf",e.testSuccess)}}function CX(t,n){if(1&t&&(d(0,"div"),_(1,yX,13,4,"div",6),c()),2&t){const e=D();f(1),m("ngIf",e.isSource)}}let wX=(()=>{class t{constructor(e,i,o,r,s){var a,l;this.fetch=e,this.snack=i,this.formBuilder=o,this.dialogRef=r,this.data=s,this.selectedProfile="",this.profileType="Source",this.profileList=[],this.ipList=[],this.selectedOption="new",this.profileOptions=[{value:"new",display:"Create a new connection profile"},{value:"existing",display:"Choose an existing connection profile"}],this.profileName="",this.errorMsg="",this.isSource=!1,this.sourceDatabaseType="",this.testSuccess=!1,this.testingSourceConnection=!1,this.isSource=s.IsSource,this.sourceDatabaseType=s.SourceDatabaseType,this.isSource||(this.profileType="Target"),this.connectionProfileForm=this.formBuilder.group({profileOption:["",de.required],newProfile:["",[de.pattern("^[a-z][a-z0-9-]{0,59}$")]],existingProfile:[],replicationSlot:[],publication:[]}),"postgres"==this.sourceDatabaseType&&this.isSource&&(null===(a=this.connectionProfileForm.get("replicationSlot"))||void 0===a||a.addValidators([de.required]),this.connectionProfileForm.controls.replicationSlot.updateValueAndValidity(),null===(l=this.connectionProfileForm.get("publication"))||void 0===l||l.addValidators([de.required]),this.connectionProfileForm.controls.publication.updateValueAndValidity()),this.getConnectionProfilesAndIps()}onItemChange(e){var i,o;this.selectedOption=e,"new"==this.selectedOption?(null===(i=this.connectionProfileForm.get("newProfile"))||void 0===i||i.setValidators([de.required]),this.connectionProfileForm.controls.existingProfile.clearValidators(),this.connectionProfileForm.controls.newProfile.updateValueAndValidity(),this.connectionProfileForm.controls.existingProfile.updateValueAndValidity()):(this.connectionProfileForm.controls.newProfile.clearValidators(),null===(o=this.connectionProfileForm.get("existingProfile"))||void 0===o||o.addValidators([de.required]),this.connectionProfileForm.controls.newProfile.updateValueAndValidity(),this.connectionProfileForm.controls.existingProfile.updateValueAndValidity())}testConnection(){this.testingSourceConnection=!0,this.fetch.createConnectionProfile({Id:this.connectionProfileForm.value.newProfile,IsSource:this.isSource,ValidateOnly:!0}).subscribe({next:()=>{this.testingSourceConnection=!1,this.testSuccess=!0},error:o=>{this.testingSourceConnection=!1,this.testSuccess=!1,this.errorMsg=o.error}})}createConnectionProfile(){let e=this.connectionProfileForm.value;this.isSource&&(localStorage.setItem(Wt.ReplicationSlot,e.replicationSlot),localStorage.setItem(Wt.Publication,e.publication)),"new"===this.selectedOption?this.fetch.createConnectionProfile({Id:e.newProfile,IsSource:this.isSource,ValidateOnly:!1}).subscribe({next:()=>{this.isSource?(localStorage.setItem(le.IsSourceConnectionProfileSet,"true"),localStorage.setItem(Wt.SourceConnProfile,e.newProfile)):(localStorage.setItem(le.IsTargetConnectionProfileSet,"true"),localStorage.setItem(Wt.TargetConnProfile,e.newProfile)),this.dialogRef.close()},error:o=>{this.snack.openSnackBar(o.error,"Close"),this.dialogRef.close()}}):(this.isSource?(localStorage.setItem(le.IsSourceConnectionProfileSet,"true"),localStorage.setItem(Wt.SourceConnProfile,e.existingProfile)):(localStorage.setItem(le.IsTargetConnectionProfileSet,"true"),localStorage.setItem(Wt.TargetConnProfile,e.existingProfile)),this.dialogRef.close())}ngOnInit(){}getConnectionProfilesAndIps(){this.fetch.getConnectionProfiles(this.isSource).subscribe({next:e=>{this.profileList=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}}),this.isSource&&this.fetch.getStaticIps().subscribe({next:e=>{this.ipList=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Vo),b(Es),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-connection-profile-form"]],decls:19,vars:9,consts:[["mat-dialog-content",""],[1,"conn-profile-form",3,"formGroup"],[1,"mat-h3","header-title"],[1,"radio-button-container"],["formControlName","profileOption",3,"ngModel","ngModelChange"],[3,"value","change",4,"ngFor","ngForOf"],[4,"ngIf"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"],[3,"value","change"],["appearance","outline"],["formControlName","existingProfile","required","true","ng-value","selectedProfile",1,"input-field"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["appearance","outline","hintLabel","Name can include lower case letters, numbers and hyphens. Must start with a letter."],["matInput","","placeholder","Connection profile name","type","text","formControlName","newProfile","required","true"],["matInput","","placeholder","Replication slot","type","text","formControlName","replicationSlot","required","true"],["matInput","","placeholder","Publication name","type","text","formControlName","publication","required","true"],["href","https://cloud.google.com/datastream/docs/network-connectivity-options#ipallowlists"],["class","connection-form-container",4,"ngFor","ngForOf"],["class","failure",4,"ngIf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["class","success","matTooltip","Test connection successful","matTooltipPosition","above",4,"ngIf"],[1,"connection-form-container"],[1,"left-text"],["matTooltip","Copy",1,"icon","copy",3,"cdkCopyToClipboard"],[1,"failure"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"],["matTooltip","Test connection successful","matTooltipPosition","above",1,"success"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"span",2),h(3),c(),E(4,"br"),d(5,"div",3)(6,"mat-radio-group",4),N("ngModelChange",function(r){return i.selectedOption=r}),_(7,hX,2,2,"mat-radio-button",5),c()(),E(8,"br"),_(9,fX,6,1,"div",6),_(10,mX,5,0,"div",6),E(11,"br"),_(12,gX,10,0,"div",6),_(13,CX,2,1,"div",6),d(14,"div",7)(15,"button",8),h(16,"Cancel"),c(),d(17,"button",9),N("click",function(){return i.createConnectionProfile()}),h(18," Save "),c()()()()),2&e&&(f(1),m("formGroup",i.connectionProfileForm),f(2),Se("",i.profileType," Connection Profile"),f(3),m("ngModel",i.selectedOption),f(1),m("ngForOf",i.profileOptions),f(2),m("ngIf","existing"===i.selectedOption),f(1),m("ngIf","new"===i.selectedOption),f(2),m("ngIf",i.isSource&&"postgres"==i.sourceDatabaseType),f(1),m("ngIf","new"===i.selectedOption),f(4),m("disabled",!i.connectionProfileForm.valid||!i.testSuccess&&"new"===i.selectedOption&&i.isSource))},directives:[Dr,xi,Hn,Sn,xp,vn,Xn,si,Tp,Et,En,Mn,Yi,fo,_i,ci,Dn,bn,ki,fv,Ht,Sr,Ji],styles:[".icon[_ngcontent-%COMP%]{font-size:15px}.connection-form-container[_ngcontent-%COMP%]{display:block}.left-text[_ngcontent-%COMP%]{width:40%;display:inline-block}"]}),t})();function DX(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",6),N("change",function(){const r=se(e).$implicit;return D().onItemChange(r.value)}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function SX(t,n){1&t&&E(0,"mat-spinner",19),2&t&&m("diameter",25)}function MX(t,n){1&t&&(d(0,"mat-icon",20),h(1,"check_circle"),c())}function xX(t,n){1&t&&(d(0,"mat-icon",21),h(1,"cancel"),c())}function TX(t,n){if(1&t&&(d(0,"div",22)(1,"span",23),h(2,"Source database connection failed"),c(),d(3,"mat-icon",24),h(4," error "),c()()),2&t){const e=D(2);f(3),m("matTooltip",e.errorMsg)}}function kX(t,n){if(1&t){const e=pe();d(0,"div")(1,"form",7),N("ngSubmit",function(){return se(e),D().setSourceDBDetailsForDump()}),d(2,"h4",8),h(3,"Load from database dump"),c(),h(4," Dump File "),d(5,"mat-form-field",9)(6,"mat-label"),h(7,"File path"),c(),d(8,"input",10),N("click",function(){return se(e),$t(13).click()}),c(),_(9,SX,1,1,"mat-spinner",11),_(10,MX,2,0,"mat-icon",12),_(11,xX,2,0,"mat-icon",13),c(),d(12,"input",14,15),N("change",function(o){return se(e),D().handleFileInput(o)}),c(),E(14,"br"),d(15,"button",16),h(16,"CANCEL"),c(),d(17,"button",17),h(18," SAVE "),c(),_(19,TX,5,1,"div",18),c()()}if(2&t){const e=D();f(1),m("formGroup",e.dumpFileForm),f(8),m("ngIf",e.uploadStart&&!e.uploadSuccess&&!e.uploadFail),f(1),m("ngIf",e.uploadStart&&e.uploadSuccess),f(1),m("ngIf",e.uploadStart&&e.uploadFail),f(6),m("disabled",!e.dumpFileForm.valid||!e.uploadSuccess),f(2),m("ngIf",""!=e.errorMsg)}}function EX(t,n){if(1&t&&(d(0,"div",22)(1,"span",23),h(2,"Source database connection failed"),c(),d(3,"mat-icon",24),h(4," error "),c()()),2&t){const e=D(2);f(3),m("matTooltip",e.errorMsg)}}function IX(t,n){if(1&t){const e=pe();d(0,"div")(1,"form",7),N("ngSubmit",function(){return se(e),D().setSourceDBDetailsForDirectConnect()}),d(2,"h4",8),h(3,"Connect to Source Database"),c(),h(4," Connection Detail "),d(5,"mat-form-field",25)(6,"mat-label"),h(7,"Hostname"),c(),E(8,"input",26),c(),d(9,"mat-form-field",25)(10,"mat-label"),h(11,"Port"),c(),E(12,"input",27),d(13,"mat-error"),h(14," Only numbers are allowed. "),c()(),E(15,"br"),d(16,"mat-form-field",25)(17,"mat-label"),h(18,"User name"),c(),E(19,"input",28),c(),d(20,"mat-form-field",25)(21,"mat-label"),h(22,"Password"),c(),E(23,"input",29),c(),E(24,"br"),d(25,"mat-form-field",25)(26,"mat-label"),h(27,"Database Name"),c(),E(28,"input",30),c(),E(29,"br"),d(30,"button",16),h(31,"CANCEL"),c(),d(32,"button",17),h(33," SAVE "),c(),_(34,EX,5,1,"div",18),c()()}if(2&t){const e=D();f(1),m("formGroup",e.directConnectForm),f(31),m("disabled",!e.directConnectForm.valid),f(2),m("ngIf",""!=e.errorMsg)}}let OX=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.dataService=i,this.snack=o,this.dialogRef=r,this.data=s,this.inputOptions=[{value:mi.DumpFile,display:"Connect via dump file"},{value:mi.DirectConnect,display:"Connect via direct connection"}],this.selectedOption=mi.DirectConnect,this.sourceDatabaseEngine="",this.errorMsg="",this.fileToUpload=null,this.uploadStart=!1,this.uploadSuccess=!1,this.uploadFail=!1,this.dumpFileForm=new an({filePath:new X("",[de.required])}),this.directConnectForm=new an({hostName:new X("",[de.required]),port:new X("",[de.required]),userName:new X("",[de.required]),dbName:new X("",[de.required]),password:new X("")}),this.sourceDatabaseEngine=s}ngOnInit(){}setSourceDBDetailsForDump(){const{filePath:e}=this.dumpFileForm.value;this.fetch.setSourceDBDetailsForDump({Driver:this.sourceDatabaseEngine,Path:e}).subscribe({next:()=>{localStorage.setItem(le.IsSourceDetailsSet,"true"),this.dialogRef.close()},error:o=>{this.errorMsg=o.error}})}setSourceDBDetailsForDirectConnect(){const{hostName:e,port:i,userName:o,password:r,dbName:s}=this.directConnectForm.value;this.fetch.setSourceDBDetailsForDirectConnect({dbEngine:this.sourceDatabaseEngine,isSharded:!1,hostName:e,port:i,userName:o,password:r,dbName:s}).subscribe({next:()=>{localStorage.setItem(le.IsSourceDetailsSet,"true"),this.dialogRef.close()},error:l=>{this.errorMsg=l.error}})}handleFileInput(e){var i;let o=e.target.files;o&&(this.fileToUpload=o.item(0),this.dumpFileForm.patchValue({filePath:null===(i=this.fileToUpload)||void 0===i?void 0:i.name}),this.fileToUpload&&this.uploadFile())}uploadFile(){var e;if(this.fileToUpload){this.uploadStart=!0,this.uploadFail=!1,this.uploadSuccess=!1;const i=new FormData;i.append("myFile",this.fileToUpload,null===(e=this.fileToUpload)||void 0===e?void 0:e.name),this.dataService.uploadFile(i).subscribe(o=>{""==o?this.uploadSuccess=!0:this.uploadFail=!0})}}onItemChange(e){this.selectedOption=e,this.errorMsg=""}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Ln),b(Vo),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-source-details-form"]],decls:7,vars:4,consts:[[1,"radio-button-container"],[1,"radio-button-group",3,"ngModel","ngModelChange"],[3,"value","change",4,"ngFor","ngForOf"],[1,"connect-load-database-container"],[1,"form-container"],[4,"ngIf"],[3,"value","change"],[3,"formGroup","ngSubmit"],[1,"primary-header"],["appearance","outline"],["matInput","","placeholder","File path","name","filePath","type","text","formControlName","filePath","readonly","",3,"click"],["matSuffix","",3,"diameter",4,"ngIf"],["matSuffix","","class","success",4,"ngIf"],["matSuffix","","class","danger",4,"ngIf"],["hidden","","type","file",3,"change"],["file",""],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","type","submit","color","primary",3,"disabled"],["class","failure",4,"ngIf"],["matSuffix","",3,"diameter"],["matSuffix","",1,"success"],["matSuffix","",1,"danger"],[1,"failure"],[1,"left-text"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"],["appearance","outline",1,"full-width"],["matInput","","placeholder","127.0.0.1","name","hostName","type","text","formControlName","hostName"],["matInput","","placeholder","3306","name","port","type","text","formControlName","port"],["matInput","","placeholder","root","name","userName","type","text","formControlName","userName"],["matInput","","name","password","type","password","formControlName","password"],["matInput","","name","dbname","type","text","formControlName","dbName"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-radio-group",1),N("ngModelChange",function(r){return i.selectedOption=r}),_(2,DX,2,2,"mat-radio-button",2),c()(),d(3,"div",3)(4,"div",4),_(5,kX,20,6,"div",5),_(6,IX,35,3,"div",5),c()()),2&e&&(f(1),m("ngModel",i.selectedOption),f(1),m("ngForOf",i.inputOptions),f(3),m("ngIf","dumpFile"===i.selectedOption),f(1),m("ngIf","directConnect"===i.selectedOption))},directives:[xp,vn,El,si,Tp,Et,xi,Hn,Sn,En,Mn,ci,Dn,Xn,eo,Ab,bn,Ht,Ji,ki,Ob],styles:[""]}),t})();function AX(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",6),E(3,"mat-spinner",7),c(),d(4,"span",8),h(5,"Cleaning up resources"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}let PX=(()=>{class t{constructor(e,i,o,r){this.data=e,this.fetch=i,this.snack=o,this.dialogRef=r,this.sourceAndTargetDetails={SpannerDatabaseName:"",SpannerDatabaseUrl:"",SourceDatabaseName:"",SourceDatabaseType:""},this.cleaningUp=!1,this.sourceAndTargetDetails={SourceDatabaseName:e.SourceDatabaseName,SourceDatabaseType:e.SourceDatabaseType,SpannerDatabaseName:e.SpannerDatabaseName,SpannerDatabaseUrl:e.SpannerDatabaseUrl}}ngOnInit(){}cleanUpJobs(){this.cleaningUp=!0,this.fetch.cleanUpStreamingJobs().subscribe({next:()=>{this.cleaningUp=!1,this.snack.openSnackBar("Dataflow and datastream jobs will be cleaned up","Close"),this.dialogRef.close()},error:e=>{this.cleaningUp=!1,this.snack.openSnackBar(e.error,"Close")}})}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ei),b(Vo),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-end-migration"]],decls:45,vars:7,consts:[["target","_blank",3,"href"],["href","https://github.com/GoogleCloudPlatform/professional-services-data-validator","target","_blank"],[4,"ngIf"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close","",3,"disabled"],["mat-raised-button","","color","primary",3,"disabled","click"],[1,"spinner"],[3,"diameter"],[1,"spinner-small-text"]],template:function(e,i){1&e&&(d(0,"h2"),h(1,"End Migration"),c(),d(2,"div")(3,"b"),h(4,"Source database:"),c(),h(5),E(6,"br"),d(7,"b"),h(8,"Spanner database:"),c(),d(9,"a",0),h(10),c()(),E(11,"br"),d(12,"div")(13,"b"),h(14,"Please follow these steps to complete the migration:"),c(),d(15,"ol")(16,"li"),h(17,"Validate that the schema has been created on Spanner as per the configuration"),c(),d(18,"li"),h(19,"Validate the data has been copied from the Source to Spanner. You can use the "),d(20,"a",1),h(21,"Data Validation Tool"),c(),h(22," to help with this process."),c(),d(23,"li"),h(24,"Stop the writes to the source database. "),d(25,"b"),h(26,"This will initiate a period of downtime."),c()(),d(27,"li"),h(28,"Wait for any incremental writes on source since the validation started on Spanner to catch up with the source. This can be done by periodically checking the Spanner Database for the most recent updates on source."),c(),d(29,"li"),h(30,"Once the Source and Spanner are in sync, start the application with Spanner as the Database."),c(),d(31,"li"),h(32,"Perform smoke tests on your application to ensure it is working properly on Spanner"),c(),d(33,"li"),h(34,"Cutover the traffic to the application with Spanner as the Database. "),d(35,"b"),h(36,"This marks the end of the period of downtime"),c()(),d(37,"li"),h(38,"Cleanup the migration jobs by clicking the button below."),c()()(),_(39,AX,7,1,"div",2),d(40,"div",3)(41,"button",4),h(42,"Cancel"),c(),d(43,"button",5),N("click",function(){return i.cleanUpJobs()}),h(44,"Clean Up"),c()()),2&e&&(f(5),hl(" ",i.sourceAndTargetDetails.SourceDatabaseName,"(",i.sourceAndTargetDetails.SourceDatabaseType,") "),f(4),m("href",i.sourceAndTargetDetails.SpannerDatabaseUrl,Gi),f(1),Ee(i.sourceAndTargetDetails.SpannerDatabaseName),f(29),m("ngIf",i.cleaningUp),f(2),m("disabled",i.cleaningUp),f(2),m("disabled",i.cleaningUp))},directives:[Et,eo,Sr,Ht,Ji],styles:[""]}),t})(),RX=(()=>{class t{constructor(e,i){this.data=e,this.dialofRef=i,this.dataflowForm=new an({network:new X(""),subnetwork:new X(""),numWorkers:new X("1",[de.required,de.pattern("^[1-9][0-9]*$")]),maxWorkers:new X("50",[de.required,de.pattern("^[1-9][0-9]*$")]),serviceAccountEmail:new X(""),hostProjectId:new X(e.GCPProjectID,de.required)})}ngOnInit(){}updateDataflowDetails(){let e=this.dataflowForm.value;localStorage.setItem("network",e.network),localStorage.setItem("subnetwork",e.subnetwork),localStorage.setItem("hostProjectId",e.hostProjectId),localStorage.setItem("maxWorkers",e.maxWorkers),localStorage.setItem("numWorkers",e.numWorkers),localStorage.setItem("serviceAccountEmail",e.serviceAccountEmail),localStorage.setItem("isDataflowConfigSet","true"),this.dialofRef.close()}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-dataflow-form"]],decls:38,vars:6,consts:[["mat-dialog-content",""],[1,"dataflow-form",3,"formGroup"],["appearance","outline","matTooltip","Edit to run Dataflow in a shared VPC","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","Host ProjectID","type","text","formControlName","hostProjectId"],["appearance","outline",1,"full-width"],["matInput","","placeholder","VPC Network Name","type","text","formControlName","network"],["matInput","","placeholder","VPC Subnetwork Name","type","text","formControlName","subnetwork"],["appearance","outline","matTooltip","Set maximum workers for the dataflow job(s). Default value: 50","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","50","type","text","formControlName","maxWorkers"],["appearance","outline","matTooltip","Set initial number of workers for the dataflow job(s). Default value: 1","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","1","type","text","formControlName","numWorkers"],["appearance","outline","matTooltip","Set the service account to run the dataflow job(s) as","matTooltipHideDelay","100000",1,"full-width",3,"matTooltipPosition"],["matInput","","placeholder","Service Account Email","type","text","formControlName","serviceAccountEmail"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Dataflow Details"),c(),d(4,"mat-form-field",2)(5,"mat-label"),h(6,"Host ProjectID"),c(),E(7,"input",3),c(),E(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"VPC Network"),c(),E(12,"input",5),c(),E(13,"br"),d(14,"mat-form-field",4)(15,"mat-label"),h(16,"VPC Subnetwork"),c(),E(17,"input",6),c(),E(18,"br"),d(19,"mat-form-field",7)(20,"mat-label"),h(21,"Max Workers"),c(),E(22,"input",8),c(),E(23,"br"),d(24,"mat-form-field",9)(25,"mat-label"),h(26,"Number of Workers"),c(),E(27,"input",10),c(),E(28,"br"),d(29,"mat-form-field",11)(30,"mat-label"),h(31,"Service Account Email"),c(),E(32,"input",12),c()(),d(33,"div",13)(34,"button",14),h(35,"Cancel"),c(),d(36,"button",15),N("click",function(){return i.updateDataflowDetails()}),h(37," Save "),c()()()),2&e&&(f(1),m("formGroup",i.dataflowForm),f(3),m("matTooltipPosition","right"),f(15),m("matTooltipPosition","right"),f(5),m("matTooltipPosition","right"),f(5),m("matTooltipPosition","right"),f(7),m("disabled",!i.dataflowForm.valid))},directives:[Dr,xi,Hn,Sn,En,ki,Mn,ci,Dn,vn,Xn,Sr,Ht,Ji],styles:[""]}),t})(),FX=(()=>{class t{constructor(e,i){this.data=e,this.dialofRef=i,this.gcloudCmd=e}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-equivalent-gcloud-command"]],decls:12,vars:2,consts:[["mat-dialog-content",""],["matTooltip","This is the gcloud command to launch the dataflow job with the same parameters. Can be used to re-run a dataflow job manually in case of failure.",1,"configure"],[1,"left-text"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","color","primary",3,"cdkCopyToClipboard"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"h2"),h(2,"Equivalent gcloud command line"),d(3,"mat-icon",1),h(4," info"),c()(),d(5,"span",2),h(6),c(),d(7,"div",3)(8,"button",4),h(9,"Close"),c(),d(10,"button",5),h(11,"Copy"),c()()()),2&e&&(f(6),Ee(i.gcloudCmd),f(4),m("cdkCopyToClipboard",i.gcloudCmd))},directives:[Dr,bn,ki,Sr,Ht,Ji,fv],styles:[""]}),t})();function NX(t,n){if(1&t&&(d(0,"mat-option",14),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function LX(t,n){1&t&&(d(0,"div",15)(1,"mat-form-field",4)(2,"mat-label"),h(3,"Paste JSON Configuration"),c(),E(4,"textarea",16,17),c()())}function BX(t,n){1&t&&(d(0,"div",18)(1,"mat-form-field",19)(2,"mat-label"),h(3,"Hostname"),c(),E(4,"input",20),c(),d(5,"mat-form-field",19)(6,"mat-label"),h(7,"Port"),c(),E(8,"input",21),d(9,"mat-error"),h(10," Only numbers are allowed. "),c()(),E(11,"br"),d(12,"mat-form-field",19)(13,"mat-label"),h(14,"User name"),c(),E(15,"input",22),c(),d(16,"mat-form-field",19)(17,"mat-label"),h(18,"Password"),c(),E(19,"input",23),c(),E(20,"br"),d(21,"mat-form-field",19)(22,"mat-label"),h(23,"Database Name"),c(),E(24,"input",24),c(),E(25,"br"),d(26,"mat-form-field",19)(27,"mat-label"),h(28,"Shard ID"),c(),E(29,"input",25),c(),E(30,"br"),c())}function VX(t,n){if(1&t){const e=pe();d(0,"button",26),N("click",function(){return se(e),D().saveDetailsAndReset()}),h(1," ADD MORE SHARDS "),c()}2&t&&m("disabled",D().directConnectForm.invalid)}function jX(t,n){if(1&t&&(d(0,"div",27)(1,"span",28),h(2),c(),d(3,"mat-icon",29),h(4," error "),c()()),2&t){const e=D();f(2),Ee(e.errorMsg),f(1),m("matTooltip",e.errorMsg)}}let HX=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.snack=i,this.dataService=o,this.dialogRef=r,this.data=s,this.errorMsg="",this.shardConnDetailsList=[],this.sourceConnDetails={dbConfigs:[],isRestoredSession:""},this.shardSessionDetails={sourceDatabaseEngine:"",isRestoredSession:""},this.inputOptionsList=[{value:"text",displayName:"Text"},{value:"form",displayName:"Form"}],this.shardSessionDetails={sourceDatabaseEngine:s.sourceDatabaseEngine,isRestoredSession:s.isRestoredSession};let a={dbEngine:"",isSharded:!1,hostName:"",port:"",userName:"",password:"",dbName:""};localStorage.getItem(In.Type)==mi.DirectConnect&&null!=localStorage.getItem(In.Config)&&(a=JSON.parse(localStorage.getItem(In.Config))),this.directConnectForm=new an({inputType:new X("form",[de.required]),textInput:new X(""),hostName:new X(a.hostName,[de.required]),port:new X(a.port,[de.required]),userName:new X(a.userName,[de.required]),dbName:new X(a.dbName,[de.required]),password:new X(a.password),shardId:new X("",[de.required])})}ngOnInit(){this.initFromLocalStorage()}initFromLocalStorage(){}setValidators(e){var i,o,r,s,a,l,u,p,g;if("text"==e){for(const v in this.directConnectForm.controls)null===(i=this.directConnectForm.get(v))||void 0===i||i.clearValidators(),null===(o=this.directConnectForm.get(v))||void 0===o||o.updateValueAndValidity();null===(r=this.directConnectForm.get("textInput"))||void 0===r||r.setValidators([de.required]),this.directConnectForm.controls.textInput.updateValueAndValidity()}else null===(s=this.directConnectForm.get("hostName"))||void 0===s||s.setValidators([de.required]),this.directConnectForm.controls.hostName.updateValueAndValidity(),null===(a=this.directConnectForm.get("port"))||void 0===a||a.setValidators([de.required]),this.directConnectForm.controls.port.updateValueAndValidity(),null===(l=this.directConnectForm.get("userName"))||void 0===l||l.setValidators([de.required]),this.directConnectForm.controls.userName.updateValueAndValidity(),null===(u=this.directConnectForm.get("dbName"))||void 0===u||u.setValidators([de.required]),this.directConnectForm.controls.dbName.updateValueAndValidity(),null===(p=this.directConnectForm.get("password"))||void 0===p||p.setValidators([de.required]),this.directConnectForm.controls.password.updateValueAndValidity(),null===(g=this.directConnectForm.get("shardId"))||void 0===g||g.setValidators([de.required]),this.directConnectForm.controls.shardId.updateValueAndValidity(),this.directConnectForm.controls.textInput.clearValidators(),this.directConnectForm.controls.textInput.updateValueAndValidity()}determineFormValidity(){return this.shardConnDetailsList.length>0||!!this.directConnectForm.valid}saveDetailsAndReset(){const{hostName:e,port:i,userName:o,password:r,dbName:s,shardId:a}=this.directConnectForm.value;this.shardConnDetailsList.push({dbEngine:this.shardSessionDetails.sourceDatabaseEngine,isSharded:!1,hostName:e,port:i,userName:o,password:r,dbName:s,shardId:a}),this.directConnectForm=new an({inputType:new X("form",de.required),textInput:new X(""),hostName:new X(""),port:new X(""),userName:new X(""),dbName:new X(""),password:new X(""),shardId:new X("")}),this.setValidators("form"),this.snack.openSnackBar("Shard configured successfully, please configure the next","Close",5)}finalizeConnDetails(){if("form"===this.directConnectForm.value.inputType){const{hostName:i,port:o,userName:r,password:s,dbName:a,shardId:l}=this.directConnectForm.value;this.shardConnDetailsList.push({dbEngine:this.shardSessionDetails.sourceDatabaseEngine,isSharded:!1,hostName:i,port:o,userName:r,password:s,dbName:a,shardId:l}),this.sourceConnDetails.dbConfigs=this.shardConnDetailsList}else{try{this.sourceConnDetails.dbConfigs=JSON.parse(this.directConnectForm.value.textInput)}catch(i){throw this.errorMsg="Unable to parse JSON",new Error(this.errorMsg)}this.sourceConnDetails.dbConfigs.forEach(i=>{i.dbEngine=this.shardSessionDetails.sourceDatabaseEngine})}this.sourceConnDetails.isRestoredSession=this.shardSessionDetails.isRestoredSession,this.fetch.setShardsSourceDBDetailsForBulk(this.sourceConnDetails).subscribe({next:()=>{localStorage.setItem(le.NumberOfShards,this.sourceConnDetails.dbConfigs.length.toString()),localStorage.setItem(le.NumberOfInstances,this.sourceConnDetails.dbConfigs.length.toString()),localStorage.setItem(le.IsSourceDetailsSet,"true"),this.dialogRef.close()},error:i=>{this.errorMsg=i.error}})}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Vo),b(Ln),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-sharded-bulk-source-details-form"]],decls:23,vars:7,consts:[[1,"connect-load-database-container"],[1,"form-container"],[1,"shard-bulk-form",3,"formGroup"],[1,"primary-header"],["appearance","outline"],["formControlName","inputType",3,"selectionChange"],["inputType",""],[3,"value",4,"ngFor","ngForOf"],["class","textInput",4,"ngIf"],["class","formInput",4,"ngIf"],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","type","submit","color","accent",3,"disabled","click",4,"ngIf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["class","failure",4,"ngIf"],[3,"value"],[1,"textInput"],["name","textInput","formControlName","textInput","matInput","","cdkTextareaAutosize","","cdkAutosizeMinRows","5","cdkAutosizeMaxRows","20"],["autosize","cdkTextareaAutosize"],[1,"formInput"],["appearance","outline",1,"full-width"],["matInput","","placeholder","127.0.0.1","name","hostName","type","text","formControlName","hostName"],["matInput","","placeholder","3306","name","port","type","text","formControlName","port"],["matInput","","placeholder","root","name","userName","type","text","formControlName","userName"],["matInput","","name","password","type","password","formControlName","password"],["matInput","","name","dbname","type","text","formControlName","dbName"],["matInput","","name","shardId","type","text","formControlName","shardId"],["mat-raised-button","","type","submit","color","accent",3,"disabled","click"],[1,"failure"],[1,"left-text"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"div",1)(2,"form",2)(3,"h4",3),h(4,"Add Data Shard Connection Details"),c(),d(5,"b"),h(6,"Note: Please configure the schema source used for schema conversion if you want Spanner migration tool to migrate data from it as well."),c(),E(7,"br")(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"Input Type"),c(),d(12,"mat-select",5,6),N("selectionChange",function(){se(o);const s=$t(13);return i.setValidators(s.value)}),_(14,NX,2,2,"mat-option",7),c()(),_(15,LX,6,0,"div",8),_(16,BX,31,0,"div",9),d(17,"button",10),h(18,"CANCEL"),c(),_(19,VX,2,1,"button",11),d(20,"button",12),N("click",function(){return i.finalizeConnDetails()}),h(21," FINISH "),c(),_(22,jX,5,2,"div",13),c()()()}2&e&&(f(2),m("formGroup",i.directConnectForm),f(12),m("ngForOf",i.inputOptionsList),f(1),m("ngIf","text"===i.directConnectForm.value.inputType),f(1),m("ngIf","form"===i.directConnectForm.value.inputType),f(3),m("ngIf","form"===i.directConnectForm.value.inputType),f(1),m("disabled",!i.determineFormValidity()),f(2),m("ngIf",""!=i.errorMsg))},directives:[xi,Hn,Sn,En,Mn,Yi,vn,Xn,si,_i,Et,Dn,ci,yT,Ob,Ht,Ji,bn,ki],styles:[""]}),t})();function UX(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function zX(t,n){if(1&t&&(d(0,"div",17)(1,"mat-card")(2,"mat-card-header")(3,"mat-card-title"),h(4,"Total Configured Shards"),c(),d(5,"mat-card-subtitle"),h(6),c(),d(7,"mat-card-subtitle"),h(8),c()()()()),2&t){const e=D();f(6),Se("",e.physicalShards," physical instances configured."),f(2),Se("",e.logicalShards," logical shards configured.")}}function $X(t,n){1&t&&(d(0,"div",18)(1,"mat-form-field",19)(2,"mat-label"),h(3,"Paste JSON Configuration"),c(),E(4,"textarea",20,21),c()())}function GX(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",35),N("change",function(){const r=se(e).$implicit;return D(2).onItemChange(r.value,"source")}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function WX(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayName),f(1),Se(" ",e.DisplayName," ")}}function qX(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",5)(2,"mat-label"),h(3,"Select source connection profile"),c(),d(4,"mat-select",36),_(5,WX,2,2,"mat-option",8),c()(),d(6,"mat-form-field",5)(7,"mat-label"),h(8,"Data Shard Id"),c(),E(9,"input",37),c()()),2&t){const e=D(2);f(5),m("ngForOf",e.sourceProfileList),f(4),m("value",e.inputValue)}}function KX(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",5)(2,"mat-label"),h(3,"Host"),c(),E(4,"input",38),c(),d(5,"mat-form-field",5)(6,"mat-label"),h(7,"User"),c(),E(8,"input",39),c(),d(9,"mat-form-field",5)(10,"mat-label"),h(11,"Port"),c(),E(12,"input",40),c(),d(13,"mat-form-field",5)(14,"mat-label"),h(15,"Password"),c(),E(16,"input",41),c(),d(17,"mat-form-field",42)(18,"mat-label"),h(19,"Connection profile name"),c(),E(20,"input",43),c(),d(21,"mat-form-field",5)(22,"mat-label"),h(23,"Data Shard Id"),c(),E(24,"input",37),c()()),2&t){const e=D(2);f(24),m("value",e.inputValue)}}function ZX(t,n){if(1&t&&(d(0,"li",50)(1,"span",51),h(2),c(),d(3,"span")(4,"mat-icon",52),h(5,"file_copy"),c()()()),2&t){const e=n.$implicit;f(2),Ee(e),f(2),m("cdkCopyToClipboard",e)}}function QX(t,n){if(1&t&&(d(0,"div",53)(1,"span",51),h(2,"Test connection failed"),c(),d(3,"mat-icon",54),h(4," error "),c()()),2&t){const e=D(3);f(3),m("matTooltip",e.errorSrcMsg)}}function YX(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",55),E(3,"mat-spinner",56),c(),d(4,"span",57),h(5,"Testing Connection"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}function XX(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",55),E(3,"mat-spinner",56),c(),d(4,"span",57),h(5,"Creating source connection profile"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}function JX(t,n){1&t&&(d(0,"mat-icon",58),h(1," check_circle "),c())}function eJ(t,n){1&t&&(d(0,"mat-icon",59),h(1," check_circle "),c())}function tJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"div")(2,"b"),h(3,"Copy the public IPs below, and use them to configure the network firewall to accept connections from them."),c(),d(4,"a",44),h(5,"Learn More"),c()(),E(6,"br"),_(7,ZX,6,2,"li",45),_(8,QX,5,1,"div",15),E(9,"br"),_(10,YX,7,1,"div",26),_(11,XX,7,1,"div",26),_(12,JX,2,0,"mat-icon",46),d(13,"button",47),N("click",function(){return se(e),D(2).createOrTestConnection(!0,!0)}),h(14,"TEST CONNECTION"),c(),_(15,eJ,2,0,"mat-icon",48),d(16,"button",49),N("click",function(){return se(e),D(2).createOrTestConnection(!0,!1)}),h(17,"CREATE PROFILE"),c()()}if(2&t){const e=D(2);f(7),m("ngForOf",e.ipList),f(1),m("ngIf",!e.testSuccess&&""!=e.errorSrcMsg),f(2),m("ngIf",e.testingSourceConnection),f(1),m("ngIf",e.creatingSourceConnection),f(1),m("ngIf",e.testSuccess),f(1),m("disabled",!e.determineConnectionProfileInfoValidity()||e.testingSourceConnection),f(2),m("ngIf",e.createSrcConnSuccess),f(1),m("disabled",!e.testSuccess||e.creatingSourceConnection)}}function nJ(t,n){if(1&t){const e=pe();be(0),d(1,"div",60)(2,"mat-form-field",5)(3,"mat-label"),h(4,"Logical Shard ID"),c(),E(5,"input",61),c(),d(6,"mat-form-field",5)(7,"mat-label"),h(8,"Source Database Name"),c(),E(9,"input",62),c(),d(10,"mat-icon",63),N("click",function(){const r=se(e).index;return D(2).deleteRow(r)}),h(11," delete_forever"),c()(),ve()}if(2&t){const e=n.index;f(1),m("formGroupName",e)}}function iJ(t,n){if(1&t){const e=pe();d(0,"mat-radio-button",35),N("change",function(){const r=se(e).$implicit;return D(2).onItemChange(r.value,"target")}),h(1),c()}if(2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.display,"")}}function oJ(t,n){if(1&t&&(d(0,"mat-option",16),h(1),c()),2&t){const e=n.$implicit;m("value",e.DisplayName),f(1),Se(" ",e.DisplayName," ")}}function rJ(t,n){if(1&t&&(d(0,"div")(1,"mat-form-field",5)(2,"mat-label"),h(3,"Select target connection profile"),c(),d(4,"mat-select",64),_(5,oJ,2,2,"mat-option",8),c()()()),2&t){const e=D(2);f(5),m("ngForOf",e.targetProfileList)}}function sJ(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",55),E(3,"mat-spinner",56),c(),d(4,"span",57),h(5,"Creating target connection profile"),c(),E(6,"br"),c()),2&t&&(f(3),m("diameter",20))}function aJ(t,n){1&t&&(d(0,"mat-icon",59),h(1," check_circle "),c())}function lJ(t,n){if(1&t&&(d(0,"div",53)(1,"span",51),h(2),c()()),2&t){const e=D(3);f(2),Ee(e.errorTgtMsg)}}function cJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-form-field",42)(2,"mat-label"),h(3,"Connection profile name"),c(),E(4,"input",65),c(),_(5,sJ,7,1,"div",26),_(6,aJ,2,0,"mat-icon",48),d(7,"button",49),N("click",function(){return se(e),D(2).createOrTestConnection(!1,!1)}),h(8,"CREATE PROFILE"),c(),_(9,lJ,3,1,"div",15),c()}if(2&t){const e=D(2);f(5),m("ngIf",e.creatingTargetConnection),f(1),m("ngIf",e.createTgtConnSuccess),f(1),m("disabled",e.creatingTargetConnection),f(2),m("ngIf",""!=e.errorTgtMsg)}}function dJ(t,n){if(1&t){const e=pe();d(0,"div",18)(1,"span",22),h(2,"Configure Source Profile"),c(),d(3,"div",23)(4,"mat-radio-group",24),N("ngModelChange",function(o){return se(e),D().selectedSourceProfileOption=o}),_(5,GX,2,2,"mat-radio-button",25),c()(),E(6,"br"),_(7,qX,10,2,"div",26),_(8,KX,25,1,"div",26),E(9,"br"),_(10,tJ,18,8,"div",26),E(11,"hr"),d(12,"span",22),h(13,"Configure ShardId and Database Names"),c(),d(14,"mat-icon",27),h(15,"info"),c(),E(16,"br")(17,"br"),d(18,"span",28),be(19,29),_(20,nJ,12,1,"ng-container",30),ve(),c(),d(21,"div",31)(22,"button",32),N("click",function(){return se(e),D().addRow()}),h(23,"ADD ROW"),c()(),E(24,"br")(25,"hr"),d(26,"span",22),h(27,"Configure Target Profile"),c(),d(28,"div",33)(29,"mat-radio-group",34),N("ngModelChange",function(o){return se(e),D().selectedTargetProfileOption=o}),_(30,iJ,2,2,"mat-radio-button",25),c()(),E(31,"br"),_(32,rJ,6,1,"div",26),_(33,cJ,10,4,"div",26),E(34,"hr"),c()}if(2&t){const e=D();f(4),m("ngModel",e.selectedSourceProfileOption),f(1),m("ngForOf",e.profileOptions),f(2),m("ngIf","existing"===e.selectedSourceProfileOption),f(1),m("ngIf","new"===e.selectedSourceProfileOption),f(2),m("ngIf","new"===e.selectedSourceProfileOption),f(10),m("ngForOf",e.shardMappingTable.controls),f(9),m("ngModel",e.selectedTargetProfileOption),f(1),m("ngForOf",e.profileOptions),f(2),m("ngIf","existing"===e.selectedTargetProfileOption),f(1),m("ngIf","new"===e.selectedTargetProfileOption)}}function uJ(t,n){if(1&t){const e=pe();d(0,"button",66),N("click",function(){return se(e),D().saveDetailsAndReset()}),h(1," ADD MORE SHARDS "),c()}2&t&&m("disabled",!D().determineFormValidity())}function hJ(t,n){if(1&t&&(d(0,"div",53)(1,"span",51),h(2),c(),d(3,"mat-icon",54),h(4," error "),c()()),2&t){const e=D();f(2),Ee(e.errorMsg),f(1),m("matTooltip",e.errorMsg)}}let pJ=(()=>{class t{constructor(e,i,o,r,s){var a,l,u,p,g,v,C,M,V;this.fetch=e,this.snack=i,this.formBuilder=o,this.dialogRef=r,this.data=s,this.selectedProfile="",this.profileType="",this.sourceProfileList=[],this.targetProfileList=[],this.definedSrcConnProfileList=[],this.definedTgtConnProfileList=[],this.shardIdToDBMappingTable=[],this.dataShardIdList=[],this.ipList=[],this.selectedSourceProfileOption="existing",this.selectedTargetProfileOption="existing",this.profileOptions=[{value:"existing",display:"Choose an existing connection profile"},{value:"new",display:"Create a new connection profile"}],this.profileName="",this.errorMsg="",this.errorSrcMsg="",this.errorTgtMsg="",this.sourceDatabaseType="",this.inputValue="",this.testSuccess=!1,this.createSrcConnSuccess=!1,this.createTgtConnSuccess=!1,this.physicalShards=0,this.logicalShards=0,this.testingSourceConnection=!1,this.creatingSourceConnection=!1,this.creatingTargetConnection=!1,this.prefix="smt_datashard",this.inputOptionsList=[{value:"text",displayName:"Text"},{value:"form",displayName:"Form"}],this.region=s.Region,this.sourceDatabaseType=s.SourceDatabaseType,localStorage.getItem(In.Type)==mi.DirectConnect&&(this.schemaSourceConfig=JSON.parse(localStorage.getItem(In.Config)));let Y=this.formBuilder.group({logicalShardId:["",de.required],dbName:["",de.required]});this.inputValue=this.prefix+"_"+this.randomString(4)+"_"+this.randomString(4),this.migrationProfileForm=this.formBuilder.group({inputType:["form",de.required],textInput:[""],sourceProfileOption:["new",de.required],targetProfileOption:["new",de.required],newSourceProfile:["",[de.pattern("^[a-z][a-z0-9-]{0,59}$")]],existingSourceProfile:[],newTargetProfile:["",de.pattern("^[a-z][a-z0-9-]{0,59}$")],existingTargetProfile:[],host:[null===(a=this.schemaSourceConfig)||void 0===a?void 0:a.hostName],user:[null===(l=this.schemaSourceConfig)||void 0===l?void 0:l.userName],port:[null===(u=this.schemaSourceConfig)||void 0===u?void 0:u.port],password:[null===(p=this.schemaSourceConfig)||void 0===p?void 0:p.password],dataShardId:[this.inputValue,de.required],shardMappingTable:this.formBuilder.array([Y])});let ke={schemaSource:{host:null===(g=this.schemaSourceConfig)||void 0===g?void 0:g.hostName,user:null===(v=this.schemaSourceConfig)||void 0===v?void 0:v.userName,password:null===(C=this.schemaSourceConfig)||void 0===C?void 0:C.password,port:null===(M=this.schemaSourceConfig)||void 0===M?void 0:M.port,dbName:null===(V=this.schemaSourceConfig)||void 0===V?void 0:V.dbName},dataShards:[]};this.migrationProfile={configType:"dataflow",shardConfigurationDataflow:ke}}ngOnInit(){this.getConnectionProfiles(!0),this.getConnectionProfiles(!1),this.getDatastreamIPs(),this.initFromLocalStorage()}initFromLocalStorage(){}get shardMappingTable(){return this.migrationProfileForm.controls.shardMappingTable}addRow(){let e=this.formBuilder.group({logicalShardId:["",de.required],dbName:["",de.required]});this.shardMappingTable.push(e)}deleteRow(e){this.shardMappingTable.removeAt(e)}getDatastreamIPs(){this.fetch.getStaticIps().subscribe({next:e=>{this.ipList=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}getConnectionProfiles(e){this.fetch.getConnectionProfiles(e).subscribe({next:i=>{e?this.sourceProfileList=i:this.targetProfileList=i},error:i=>{this.snack.openSnackBar(i.error,"Close")}})}onItemChange(e,i){var o,r,s,a,l,u,p,g;this.profileType=i,"source"===this.profileType?(this.selectedSourceProfileOption=e,"new"==this.selectedSourceProfileOption?(null===(o=this.migrationProfileForm.get("newSourceProfile"))||void 0===o||o.setValidators([de.required]),this.migrationProfileForm.controls.existingSourceProfile.clearValidators(),this.migrationProfileForm.controls.newSourceProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingSourceProfile.updateValueAndValidity(),null===(r=this.migrationProfileForm.get("host"))||void 0===r||r.setValidators([de.required]),this.migrationProfileForm.controls.host.updateValueAndValidity(),null===(s=this.migrationProfileForm.get("user"))||void 0===s||s.setValidators([de.required]),this.migrationProfileForm.controls.user.updateValueAndValidity(),null===(a=this.migrationProfileForm.get("port"))||void 0===a||a.setValidators([de.required]),this.migrationProfileForm.controls.port.updateValueAndValidity(),null===(l=this.migrationProfileForm.get("password"))||void 0===l||l.setValidators([de.required]),this.migrationProfileForm.controls.password.updateValueAndValidity()):(this.migrationProfileForm.controls.newSourceProfile.clearValidators(),null===(u=this.migrationProfileForm.get("existingSourceProfile"))||void 0===u||u.addValidators([de.required]),this.migrationProfileForm.controls.newSourceProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingSourceProfile.updateValueAndValidity(),this.migrationProfileForm.controls.host.clearValidators(),this.migrationProfileForm.controls.host.updateValueAndValidity(),this.migrationProfileForm.controls.user.clearValidators(),this.migrationProfileForm.controls.user.updateValueAndValidity(),this.migrationProfileForm.controls.port.clearValidators(),this.migrationProfileForm.controls.port.updateValueAndValidity(),this.migrationProfileForm.controls.password.clearValidators(),this.migrationProfileForm.controls.password.updateValueAndValidity())):(this.selectedTargetProfileOption=e,"new"==this.selectedTargetProfileOption?(null===(p=this.migrationProfileForm.get("newTargetProfile"))||void 0===p||p.setValidators([de.required]),this.migrationProfileForm.controls.existingTargetProfile.clearValidators(),this.migrationProfileForm.controls.newTargetProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingTargetProfile.updateValueAndValidity()):(this.migrationProfileForm.controls.newTargetProfile.clearValidators(),null===(g=this.migrationProfileForm.get("existingTargetProfile"))||void 0===g||g.addValidators([de.required]),this.migrationProfileForm.controls.newTargetProfile.updateValueAndValidity(),this.migrationProfileForm.controls.existingTargetProfile.updateValueAndValidity()))}setValidators(e){if("text"===e){for(const o in this.migrationProfileForm.controls)this.migrationProfileForm.controls[o].clearValidators(),this.migrationProfileForm.controls[o].updateValueAndValidity();this.migrationProfileForm.get("shardMappingTable").controls.forEach(o=>{const r=o,s=r.get("logicalShardId"),a=r.get("dbName");null==s||s.clearValidators(),null==s||s.updateValueAndValidity(),null==a||a.clearValidators(),null==a||a.updateValueAndValidity()}),this.migrationProfileForm.controls.textInput.setValidators([de.required]),this.migrationProfileForm.controls.textInput.updateValueAndValidity()}else this.onItemChange("new","source"),this.onItemChange("new","target"),this.migrationProfileForm.controls.textInput.clearValidators(),this.migrationProfileForm.controls.textInput.updateValueAndValidity()}saveDetailsAndReset(){this.handleConnConfigsFromForm();let e=this.formBuilder.group({logicalShardId:["",de.required],dbName:["",de.required]});this.inputValue=this.prefix+"_"+this.randomString(4)+"_"+this.randomString(4),this.migrationProfileForm=this.formBuilder.group({inputType:["form",de.required],textInput:[],sourceProfileOption:[this.selectedSourceProfileOption],targetProfileOption:[this.selectedTargetProfileOption],newSourceProfile:["",[de.pattern("^[a-z][a-z0-9-]{0,59}$")]],existingSourceProfile:[],newTargetProfile:["",de.pattern("^[a-z][a-z0-9-]{0,59}$")],existingTargetProfile:[],host:[],user:[],port:[],password:[],dataShardId:[this.inputValue],shardMappingTable:this.formBuilder.array([e])}),this.testSuccess=!1,this.createSrcConnSuccess=!1,this.createTgtConnSuccess=!1,this.snack.openSnackBar("Shard configured successfully, please configure the next","Close",5)}randomString(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",o="",r=0;r{localStorage.setItem(le.IsSourceConnectionProfileSet,"true"),localStorage.setItem(le.IsTargetConnectionProfileSet,"true"),localStorage.setItem(le.NumberOfShards,this.determineTotalLogicalShardsConfigured().toString()),localStorage.setItem(le.NumberOfInstances,this.migrationProfile.shardConfigurationDataflow.dataShards.length.toString()),this.dialogRef.close()},error:o=>{this.errorMsg=o.error}})}determineTotalLogicalShardsConfigured(){let e=0;return this.migrationProfile.shardConfigurationDataflow.dataShards.forEach(i=>{e+=i.databases.length}),e}handleConnConfigsFromForm(){let e=this.migrationProfileForm.value;this.dataShardIdList.push(e.dataShardId),this.definedSrcConnProfileList.push("new"===this.selectedSourceProfileOption?{name:e.newSourceProfile,location:this.region}:{name:e.existingSourceProfile,location:this.region}),this.definedTgtConnProfileList.push("new"===this.selectedTargetProfileOption?{name:e.newTargetProfile,location:this.region}:{name:e.existingTargetProfile,location:this.region});let i=[];for(let o of this.shardMappingTable.controls)if(o instanceof an){const r=o.value;i.push({dbName:r.dbName,databaseId:r.logicalShardId,refDataShardId:e.dataShardId})}this.shardIdToDBMappingTable.push(i),this.physicalShards++,this.logicalShards=this.logicalShards+i.length}determineFormValidity(){return!(!this.migrationProfileForm.valid||"new"===this.selectedSourceProfileOption&&!this.createSrcConnSuccess||"new"===this.selectedTargetProfileOption&&!this.createTgtConnSuccess)}determineFinishValidity(){return this.definedSrcConnProfileList.length>0||this.determineFormValidity()}determineConnectionProfileInfoValidity(){let e=this.migrationProfileForm.value;return null!=e.host&&null!=e.port&&null!=e.user&&null!=e.password&&null!=e.newSourceProfile}createOrTestConnection(e,i){i?this.testingSourceConnection=!0:e?this.creatingSourceConnection=!0:this.creatingTargetConnection=!0;let r,o=this.migrationProfileForm.value;r=e?{Id:o.newSourceProfile,IsSource:!0,ValidateOnly:i,Host:o.host,Port:o.port,User:o.user,Password:o.password}:{Id:o.newTargetProfile,IsSource:!1,ValidateOnly:i},this.fetch.createConnectionProfile(r).subscribe({next:()=>{i?(this.testingSourceConnection=!1,this.testSuccess=!0):e?(this.createSrcConnSuccess=!0,this.errorSrcMsg="",this.creatingSourceConnection=!1):(this.createTgtConnSuccess=!0,this.errorTgtMsg="",this.creatingTargetConnection=!1)},error:s=>{i?(this.testingSourceConnection=!1,this.testSuccess=!1,this.errorSrcMsg=s.error):e?(this.createSrcConnSuccess=!1,this.errorSrcMsg=s.error,this.creatingSourceConnection=!1):(this.createTgtConnSuccess=!1,this.errorTgtMsg=s.error,this.creatingTargetConnection=!1)}})}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Vo),b(Es),b(Ti),b(Xi))},t.\u0275cmp=Ae({type:t,selectors:[["app-sharded-dataflow-migration-details-form"]],decls:26,vars:8,consts:[["mat-dialog-content","",1,"connect-load-database-container"],[1,"conn-profile-form",3,"formGroup"],[1,"mat-h2","header-title"],[1,"top"],[1,"top-1"],["appearance","outline"],["formControlName","inputType",3,"selectionChange"],["inputType",""],[3,"value",4,"ngFor","ngForOf"],["class","top-2",4,"ngIf"],["class","textInput",4,"ngIf"],[1,"last-btns"],["mat-button","","color","primary","mat-dialog-close",""],["mat-raised-button","","type","submit","color","accent",3,"disabled","click",4,"ngIf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["class","failure",4,"ngIf"],[3,"value"],[1,"top-2"],[1,"textInput"],["appearance","outline",1,"json-input"],["name","textInput","formControlName","textInput","matInput","","cdkTextareaAutosize","","cdkAutosizeMinRows","5","cdkAutosizeMaxRows","20"],["autosize","cdkTextareaAutosize"],[1,"mat-h4","header-title"],[1,"source-radio-button-container"],["formControlName","sourceProfileOption",1,"radio-button-container",3,"ngModel","ngModelChange"],["class","radio-button",3,"value","change",4,"ngFor","ngForOf"],[4,"ngIf"],["matTooltip","Logical Shard ID value will be used to populate the migration_shard_id column added as part of sharded database migration",1,"configure"],[1,"border"],["formArrayName","shardMappingTable"],[4,"ngFor","ngForOf"],[1,"table-buttons"],["mat-raised-button","","color","primary","type","button",3,"click"],[1,"target-radio-button-container"],["formControlName","targetProfileOption",1,"radio-button-container",3,"ngModel","ngModelChange"],[1,"radio-button",3,"value","change"],["formControlName","existingSourceProfile","required","true","ng-value","selectedProfile",1,"input-field"],["matInput","","type","text","formControlName","dataShardId","required","true","readonly","",3,"value"],["matInput","","placeholder","Host","type","text","formControlName","host","required","true"],["matInput","","placeholder","User","type","text","formControlName","user","required","true"],["matInput","","placeholder","Port","type","text","formControlName","port","required","true"],["matInput","","placeholder","Password","type","password","formControlName","password","required","true"],["appearance","outline","hintLabel","Name can include lower case letters, numbers and hyphens. Must start with a letter."],["matInput","","placeholder","Connection profile name","type","text","formControlName","newSourceProfile","required","true"],["href","https://cloud.google.com/datastream/docs/network-connectivity-options#ipallowlists","target","_blank"],["class","connection-form-container",4,"ngFor","ngForOf"],["class","success","matTooltip","Test connection successful","matTooltipPosition","above",4,"ngIf"],["mat-raised-button","","type","button","color","primary",3,"disabled","click"],["class","success","matTooltip","Profile creation successful","matTooltipPosition","above",4,"ngIf"],["mat-raised-button","","type","button","color","warn",3,"disabled","click"],[1,"connection-form-container"],[1,"left-text"],["matTooltip","Copy",1,"icon","copy",3,"cdkCopyToClipboard"],[1,"failure"],["matTooltipPosition","above",1,"icon","error",3,"matTooltip"],[1,"spinner"],[3,"diameter"],[1,"spinner-small-text"],["matTooltip","Test connection successful","matTooltipPosition","above",1,"success"],["matTooltip","Profile creation successful","matTooltipPosition","above",1,"success"],[1,"shard-mapping-form-row",3,"formGroupName"],["matInput","","formControlName","logicalShardId","placeholder","Enter Logical ShardID"],["matInput","","formControlName","dbName","placeholder","Enter Database Name"],[1,"delete-btn",3,"click"],["formControlName","existingTargetProfile","required","true","ng-value","selectedProfile",1,"input-field"],["matInput","","placeholder","Connection profile name","type","text","formControlName","newTargetProfile","required","true"],["mat-raised-button","","type","submit","color","accent",3,"disabled","click"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"form",1)(2,"span",2),h(3,"Datastream Details"),c(),E(4,"br"),d(5,"b"),h(6,"Note: Please configure the database used for schema conversion, if you want Spanner migration tool to migrate data from it as well."),c(),d(7,"div",3),h(8,"` "),d(9,"div",4)(10,"mat-form-field",5)(11,"mat-label"),h(12,"Input Type"),c(),d(13,"mat-select",6,7),N("selectionChange",function(){se(o);const s=$t(14);return i.setValidators(s.value)}),_(15,UX,2,2,"mat-option",8),c()()(),_(16,zX,9,2,"div",9),c(),_(17,$X,6,0,"div",10),_(18,dJ,35,10,"div",10),d(19,"div",11)(20,"button",12),h(21,"CANCEL"),c(),_(22,uJ,2,1,"button",13),d(23,"button",14),N("click",function(){return i.finalizeConnDetails()}),h(24," FINISH "),c(),_(25,hJ,5,2,"div",15),c()()()}2&e&&(f(1),m("formGroup",i.migrationProfileForm),f(14),m("ngForOf",i.inputOptionsList),f(1),m("ngIf","form"===i.migrationProfileForm.value.inputType),f(1),m("ngIf","text"===i.migrationProfileForm.value.inputType),f(1),m("ngIf","form"===i.migrationProfileForm.value.inputType),f(4),m("ngIf","form"===i.migrationProfileForm.value.inputType),f(1),m("disabled",!i.determineFinishValidity()),f(2),m("ngIf",""!=i.errorMsg))},directives:[Dr,xi,Hn,Sn,En,Mn,Yi,vn,Xn,si,_i,Et,$h,Z6,rx,sx,Dn,ci,yT,xp,Tp,fo,bn,ki,fv,eo,Ht,md,fd,Ji],styles:[".icon[_ngcontent-%COMP%]{font-size:15px}.connection-form-container[_ngcontent-%COMP%]{display:block}.left-text[_ngcontent-%COMP%]{width:40%;display:inline-block}.shard-mapping-form-row[_ngcontent-%COMP%]{width:80%;margin-left:auto;margin-right:auto}.table-header[_ngcontent-%COMP%]{width:80%;margin:auto auto 10px;text-align:right;display:flex;align-items:center;justify-content:space-between}form[_ngcontent-%COMP%], .table-body[_ngcontent-%COMP%]{flex:auto;overflow-y:auto}.table-buttons[_ngcontent-%COMP%]{margin-left:70%}.radio-button-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;margin:15px 0;align-items:flex-start}.radio-button[_ngcontent-%COMP%]{margin:5px}.json-input[_ngcontent-%COMP%]{width:100%}.top[_ngcontent-%COMP%]{border:3px solid #fff;padding:20px}.top-1[_ngcontent-%COMP%]{width:60%;float:left}.top-2[_ngcontent-%COMP%]{width:40%;float:right;flex:auto}.last-btns[_ngcontent-%COMP%]{padding:20px;width:100%;float:left}"]}),t})();function fJ(t,n){1&t&&(d(0,"h2"),h(1,"Source and Target Database definitions"),c())}function mJ(t,n){1&t&&(d(0,"h2"),h(1,"Source and Target Database definitions (per shard)"),c())}function gJ(t,n){1&t&&(d(0,"th",35),h(1,"Title"),c())}function _J(t,n){if(1&t&&(d(0,"td",36)(1,"b"),h(2),c()()),2&t){const e=n.$implicit;f(2),Ee(e.title)}}function bJ(t,n){1&t&&(d(0,"th",35),h(1,"Source"),c())}function vJ(t,n){if(1&t&&(d(0,"td",36),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.source)}}function yJ(t,n){1&t&&(d(0,"th",35),h(1,"Destination"),c())}function CJ(t,n){if(1&t&&(d(0,"td",36),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.target)}}function wJ(t,n){1&t&&E(0,"tr",37)}function DJ(t,n){1&t&&E(0,"tr",38)}function SJ(t,n){if(1&t&&(d(0,"mat-option",39),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Se(" ",e," ")}}function MJ(t,n){if(1&t&&(d(0,"mat-option",39),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.name," ")}}function xJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-form-field",20)(2,"mat-label"),h(3,"Migration Type:"),c(),d(4,"mat-select",21),N("ngModelChange",function(o){return se(e),D().selectedMigrationType=o})("selectionChange",function(){return se(e),D().refreshPrerequisites()}),_(5,MJ,2,2,"mat-option",22),c()(),d(6,"mat-icon",23),h(7,"info"),c(),E(8,"br"),c()}if(2&t){const e=D();f(4),m("ngModel",e.selectedMigrationType),f(1),m("ngForOf",e.migrationTypes),f(1),m("matTooltip",e.migrationTypesHelpText.get(e.selectedMigrationType))}}function TJ(t,n){if(1&t&&(d(0,"mat-option",39),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Se(" ",e.displayName," ")}}function kJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-form-field",20)(2,"mat-label"),h(3,"Skip Foreign Key Creation:"),c(),d(4,"mat-select",40),N("ngModelChange",function(o){return se(e),D().isForeignKeySkipped=o}),_(5,TJ,2,2,"mat-option",22),c()()()}if(2&t){const e=D();f(4),m("ngModel",e.isForeignKeySkipped),f(1),m("ngForOf",e.skipForeignKeyResponseList)}}function EJ(t,n){1&t&&(d(0,"div",41)(1,"p",26)(2,"span",27),h(3,"1"),c(),d(4,"span"),h(5,"Please ensure that the application default credentials deployed on this machine have permissions to write to Spanner."),c()()())}function IJ(t,n){1&t&&(d(0,"div",41)(1,"p",26)(2,"span",27),h(3,"1"),c(),d(4,"span"),h(5,"Please ensure that the source is "),d(6,"a",42),h(7,"configured"),c(),h(8," for Datastream change data capture."),c()(),d(9,"p",26)(10,"span",27),h(11,"2"),c(),d(12,"span"),h(13,"Please ensure that Dataflow "),d(14,"a",43),h(15,"permissions"),c(),h(16," and "),d(17,"a",44),h(18,"networking"),c(),h(19," are correctly setup."),c()()())}function OJ(t,n){1&t&&(d(0,"mat-icon",46),h(1," check_circle "),c())}function AJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"h3"),h(2,"Source database details:"),c(),d(3,"p",26)(4,"span",27),h(5,"1"),c(),d(6,"span"),h(7,"Setup Source database details"),c(),d(8,"span")(9,"button",29),N("click",function(){return se(e),D().openSourceDetailsForm()}),h(10," Configure "),d(11,"mat-icon"),h(12,"edit"),c(),_(13,OJ,2,0,"mat-icon",45),c()()()()}if(2&t){const e=D();f(9),m("disabled",e.isMigrationInProgress),f(4),m("ngIf",e.isSourceDetailsSet)}}function PJ(t,n){1&t&&(d(0,"mat-icon",46),h(1," check_circle "),c())}function RJ(t,n){if(1&t){const e=pe();d(0,"div")(1,"mat-card-title"),h(2,"Source databases details:"),c(),d(3,"p",26)(4,"span",27),h(5,"1"),c(),d(6,"span"),h(7,"Setup Source Connection details "),d(8,"mat-icon",47),h(9," info"),c()(),d(10,"span")(11,"button",29),N("click",function(){return se(e),D().openShardedBulkSourceDetailsForm()}),h(12," Configure "),d(13,"mat-icon"),h(14,"edit"),c(),_(15,PJ,2,0,"mat-icon",45),c()()()()}if(2&t){const e=D();f(11),m("disabled",e.isMigrationInProgress),f(4),m("ngIf",e.isSourceDetailsSet)}}function FJ(t,n){1&t&&(d(0,"mat-icon",48),h(1," check_circle "),c())}function NJ(t,n){1&t&&(d(0,"mat-icon",51),h(1," check_circle "),c())}function LJ(t,n){if(1&t){const e=pe();d(0,"p",26)(1,"span",27),h(2,"2"),c(),d(3,"span"),h(4,"Configure Datastream "),d(5,"mat-icon",49),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openMigrationProfileForm()}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),_(12,NJ,2,0,"mat-icon",50),c()()()}if(2&t){const e=D();f(8),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet),f(4),m("ngIf",e.isSourceConnectionProfileSet)}}function BJ(t,n){1&t&&(d(0,"mat-icon",51),h(1," check_circle "),c())}function VJ(t,n){if(1&t){const e=pe();d(0,"p",26)(1,"span",27),h(2,"2"),c(),d(3,"span"),h(4,"Setup source connection profile "),d(5,"mat-icon",52),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openConnectionProfileForm(!0)}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),_(12,BJ,2,0,"mat-icon",50),c()()()}if(2&t){const e=D();f(8),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet),f(4),m("ngIf",e.isSourceConnectionProfileSet)}}function jJ(t,n){1&t&&(d(0,"mat-icon",55),h(1," check_circle "),c())}function HJ(t,n){if(1&t){const e=pe();d(0,"p",26)(1,"span",27),h(2,"3"),c(),d(3,"span"),h(4,"Setup target connection profile "),d(5,"mat-icon",53),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openConnectionProfileForm(!1)}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),_(12,jJ,2,0,"mat-icon",54),c()()()}if(2&t){const e=D();f(8),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet),f(4),m("ngIf",e.isTargetConnectionProfileSet)}}function UJ(t,n){1&t&&(d(0,"span",27),h(1,"3"),c())}function zJ(t,n){1&t&&(d(0,"span",27),h(1,"4"),c())}function $J(t,n){if(1&t){const e=pe();d(0,"p",26),_(1,UJ,2,0,"span",56),_(2,zJ,2,0,"span",56),d(3,"span"),h(4,"Configure Dataflow (Optional) "),d(5,"mat-icon",57),h(6," info"),c()(),d(7,"span")(8,"button",29),N("click",function(){return se(e),D().openDataflowForm()}),h(9," Configure "),d(10,"mat-icon"),h(11,"edit"),c(),d(12,"mat-icon",58),h(13," check_circle "),c()()()()}if(2&t){const e=D();f(1),m("ngIf",e.isSharded),f(1),m("ngIf",!e.isSharded),f(6),m("disabled",e.isMigrationInProgress||!e.isTargetDetailSet)}}function GJ(t,n){1&t&&(d(0,"span",27),h(1,"4"),c())}function WJ(t,n){if(1&t){const e=pe();d(0,"p",26),_(1,GJ,2,0,"span",56),d(2,"span"),h(3,"Download configuration as JSON "),d(4,"mat-icon",59),h(5,"info "),c()(),d(6,"span")(7,"button",29),N("click",function(){return se(e),D().downloadConfiguration()}),h(8," Download "),d(9,"mat-icon",60),h(10," download"),c()()()()}if(2&t){const e=D();f(1),m("ngIf",e.isSharded),f(6),m("disabled",!e.isTargetDetailSet||!e.isTargetConnectionProfileSet)}}function qJ(t,n){if(1&t&&(d(0,"div",24)(1,"mat-card")(2,"mat-card-title"),h(3,"Configured Source Details"),c(),d(4,"p",26)(5,"span",27),h(6,"1"),c(),d(7,"span")(8,"b"),h(9,"Source Database: "),c(),h(10),c()(),d(11,"p",26)(12,"span",27),h(13,"2"),c(),d(14,"span")(15,"b"),h(16,"Number of physical instances configured: "),c(),h(17),c()(),d(18,"p",26)(19,"span",27),h(20,"3"),c(),d(21,"span")(22,"b"),h(23,"Number of logical shards configured: "),c(),h(24),c()()()()),2&t){const e=D();f(10),Ee(e.sourceDatabaseType),f(7),Se(" ",e.numberOfInstances,""),f(7),Se(" ",e.numberOfShards,"")}}function KJ(t,n){if(1&t&&(d(0,"div",24)(1,"mat-card")(2,"mat-card-title"),h(3,"Configured Target Details"),c(),d(4,"p",26)(5,"span",27),h(6,"1"),c(),d(7,"span")(8,"b"),h(9,"Spanner Database: "),c(),h(10),c()(),d(11,"p",26)(12,"span",27),h(13,"2"),c(),d(14,"span")(15,"b"),h(16,"Spanner Dialect: "),c(),h(17),c()(),d(18,"p",26)(19,"span",27),h(20,"3"),c(),d(21,"span")(22,"b"),h(23,"Region: "),c(),h(24),c()(),d(25,"p",26)(26,"span",27),h(27,"4"),c(),d(28,"span")(29,"b"),h(30,"Spanner Instance: "),c(),h(31),c()()()()),2&t){const e=D();f(10),Ee(e.targetDetails.TargetDB),f(7),Ee(e.dialect),f(7),Ee(e.region),f(7),Km("",e.instance," (Nodes: ",e.nodeCount,", Processing Units: ",e.processingUnits,")")}}function ZJ(t,n){if(1&t&&(d(0,"div",61),E(1,"br")(2,"mat-progress-bar",62),d(3,"span"),h(4),c()()),2&t){const e=D();f(2),m("value",e.schemaMigrationProgress),f(2),Se(" ",e.schemaProgressMessage,"")}}function QJ(t,n){if(1&t&&(d(0,"div",61),E(1,"br")(2,"mat-progress-bar",62),d(3,"span"),h(4),c()()),2&t){const e=D();f(2),m("value",e.dataMigrationProgress),f(2),Se(" ",e.dataProgressMessage,"")}}function YJ(t,n){if(1&t&&(d(0,"div",61),E(1,"br")(2,"mat-progress-bar",62),d(3,"span"),h(4),c()()),2&t){const e=D();f(2),m("value",e.foreignKeyUpdateProgress),f(2),Se(" ",e.foreignKeyProgressMessage,"")}}function XJ(t,n){1&t&&(d(0,"div"),E(1,"br"),d(2,"span",63),E(3,"mat-spinner",64),c(),d(4,"span",65),h(5,"Generating Resources"),c(),E(6,"br"),h(7," Note: Spanner migration tool is creating datastream and dataflow resources. Please look at the terminal logs to check the progress of resource creation. All created resources will be displayed here once they are generated. "),c()),2&t&&(f(3),m("diameter",20))}function JJ(t,n){if(1&t&&(d(0,"span")(1,"li"),h(2," Datastream job: "),d(3,"a",66),h(4),c()()()),2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.DataStreamJobUrl,Gi),f(1),Ee(e.resourcesGenerated.DataStreamJobName)}}function eee(t,n){if(1&t){const e=pe();d(0,"span")(1,"li"),h(2,"Dataflow job: "),d(3,"a",66),h(4),c(),d(5,"span")(6,"button",67),N("click",function(){se(e);const o=D(2);return o.openGcloudPopup(o.resourcesGenerated.DataflowGcloudCmd)}),d(7,"mat-icon",68),h(8," code"),c()()()()()}if(2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.DataflowJobUrl,Gi),f(1),Ee(e.resourcesGenerated.DataflowJobName)}}function tee(t,n){if(1&t&&(d(0,"span")(1,"li"),h(2," Pubsub topic: "),d(3,"a",66),h(4),c()()()),2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.PubsubTopicUrl,Gi),f(1),Ee(e.resourcesGenerated.PubsubTopicName)}}function nee(t,n){if(1&t&&(d(0,"span")(1,"li"),h(2," Pubsub subscription: "),d(3,"a",66),h(4),c()()()),2&t){const e=D(2);f(3),m("href",e.resourcesGenerated.PubsubSubscriptionUrl,Gi),f(1),Ee(e.resourcesGenerated.PubsubSubscriptionName)}}function iee(t,n){if(1&t&&(d(0,"li"),h(1),d(2,"a",66),h(3),c()()),2&t){const e=n.$implicit;f(1),Se(" Datastream job for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function oee(t,n){if(1&t&&(d(0,"span"),_(1,iee,4,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToDatastreamMap))}}function ree(t,n){if(1&t){const e=pe();d(0,"li"),h(1),d(2,"a",66),h(3),c(),d(4,"span")(5,"button",67),N("click",function(){const r=se(e).$implicit;return D(3).openGcloudPopup(r.value.GcloudCmd)}),d(6,"mat-icon",68),h(7," code"),c()()()()}if(2&t){const e=n.$implicit;f(1),Se(" Dataflow job for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function see(t,n){if(1&t&&(d(0,"span"),_(1,ree,8,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToDataflowMap))}}function aee(t,n){if(1&t&&(d(0,"li"),h(1),d(2,"a",66),h(3),c()()),2&t){const e=n.$implicit;f(1),Se(" Pubsub topic for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function lee(t,n){if(1&t&&(d(0,"span"),_(1,aee,4,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToPubsubTopicMap))}}function cee(t,n){if(1&t&&(d(0,"li"),h(1),d(2,"a",66),h(3),c()()),2&t){const e=n.$implicit;f(1),Se(" Pubsub subscription for shardId: ",e.key," - "),f(1),m("href",e.value.JobUrl,Gi),f(1),Ee(e.value.JobName)}}function dee(t,n){if(1&t&&(d(0,"span"),_(1,cee,4,3,"li",69),_s(2,"keyvalue"),c()),2&t){const e=D(2);f(1),m("ngForOf",bs(2,1,e.resourcesGenerated.ShardToPubsubSubscriptionMap))}}function uee(t,n){1&t&&(d(0,"span")(1,"b"),h(2,"Note: "),c(),h(3,"Spanner migration tool has orchestrated the migration successfully. For minimal downtime migrations, it is safe to close Spanner migration tool now without affecting the progress of the migration. Please note that Spanner migration tool does not save the IDs of the Dataflow jobs created once closed, so please keep copy over the links in the Generated Resources section above before closing Spanner migration tool. "),c())}function hee(t,n){if(1&t&&(d(0,"div")(1,"h3"),h(2," Generated Resources:"),c(),d(3,"li"),h(4,"Spanner database: "),d(5,"a",66),h(6),c()(),d(7,"li"),h(8,"GCS bucket: "),d(9,"a",66),h(10),c()(),_(11,JJ,5,2,"span",10),_(12,eee,9,2,"span",10),_(13,tee,5,2,"span",10),_(14,nee,5,2,"span",10),_(15,oee,3,3,"span",10),_(16,see,3,3,"span",10),_(17,lee,3,3,"span",10),_(18,dee,3,3,"span",10),E(19,"br")(20,"br"),_(21,uee,4,0,"span",10),c()),2&t){const e=D();f(5),m("href",e.resourcesGenerated.DatabaseUrl,Gi),f(1),Ee(e.resourcesGenerated.DatabaseName),f(3),m("href",e.resourcesGenerated.BucketUrl,Gi),f(1),Ee(e.resourcesGenerated.BucketName),f(1),m("ngIf",""!==e.resourcesGenerated.DataStreamJobName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.DataflowJobName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubTopicName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubSubscriptionName&&"lowdt"===e.selectedMigrationType&&!e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.DataStreamJobName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.DataflowJobName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubTopicName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(1),m("ngIf",""!==e.resourcesGenerated.PubsubSubscriptionName&&"lowdt"===e.selectedMigrationType&&e.isSharded),f(3),m("ngIf","lowdt"===e.selectedMigrationType)}}function pee(t,n){if(1&t){const e=pe();d(0,"span")(1,"button",70),N("click",function(){return se(e),D().migrate()}),h(2,"Migrate"),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.isTargetDetailSet&&"lowdt"===e.selectedMigrationType&&e.isSourceConnectionProfileSet&&e.isTargetConnectionProfileSet||e.isTargetDetailSet&&"bulk"===e.selectedMigrationType)||e.isMigrationInProgress)}}function fee(t,n){if(1&t){const e=pe();d(0,"span")(1,"button",71),N("click",function(){return se(e),D().endMigration()}),h(2,"End Migration"),c()()}}const mee=[{path:"",component:kW},{path:"source",component:iq,children:[{path:"",redirectTo:"/direct-connection",pathMatch:"full"},{path:"direct-connection",component:BG},{path:"load-dump",component:UW},{path:"load-session",component:qW}]},{path:"workspace",component:dX},{path:"instruction",component:pI},{path:"prepare-migration",component:(()=>{class t{constructor(e,i,o,r,s){this.dialog=e,this.fetch=i,this.snack=o,this.data=r,this.sidenav=s,this.displayedColumns=["Title","Source","Destination"],this.dataSource=[],this.migrationModes=[],this.migrationTypes=[],this.isSourceConnectionProfileSet=!1,this.isTargetConnectionProfileSet=!1,this.isDataflowConfigurationSet=!1,this.isSourceDetailsSet=!1,this.isTargetDetailSet=!1,this.isForeignKeySkipped=!1,this.isMigrationDetailSet=!1,this.isStreamingSupported=!1,this.hasDataMigrationStarted=!1,this.hasSchemaMigrationStarted=!1,this.hasForeignKeyUpdateStarted=!1,this.selectedMigrationMode=Lo.schemaAndData,this.connectionType=mi.DirectConnect,this.selectedMigrationType=di.lowDowntimeMigration,this.isMigrationInProgress=!1,this.isLowDtMigrationRunning=!1,this.isResourceGenerated=!1,this.generatingResources=!1,this.errorMessage="",this.schemaProgressMessage="Schema migration in progress...",this.dataProgressMessage="Data migration in progress...",this.foreignKeyProgressMessage="Foreign key update in progress...",this.dataMigrationProgress=0,this.schemaMigrationProgress=0,this.foreignKeyUpdateProgress=0,this.sourceDatabaseName="",this.sourceDatabaseType="",this.resourcesGenerated={DatabaseName:"",DatabaseUrl:"",BucketName:"",BucketUrl:"",DataStreamJobName:"",DataStreamJobUrl:"",DataflowJobName:"",DataflowJobUrl:"",PubsubTopicName:"",PubsubTopicUrl:"",PubsubSubscriptionName:"",PubsubSubscriptionUrl:"",DataflowGcloudCmd:"",ShardToDatastreamMap:new Map,ShardToDataflowMap:new Map,ShardToPubsubTopicMap:new Map,ShardToPubsubSubscriptionMap:new Map},this.region="",this.instance="",this.dialect="",this.isSharded=!1,this.numberOfShards="0",this.numberOfInstances="0",this.nodeCount=0,this.processingUnits=0,this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},this.dataflowConfig={network:localStorage.getItem("network"),subnetwork:localStorage.getItem("subnetwork"),hostProjectId:localStorage.getItem("hostProjectId"),maxWorkers:localStorage.getItem("maxWorkers"),numWorkers:localStorage.getItem("numWorkers"),serviceAccountEmail:localStorage.getItem("serviceAccountEmail")},this.spannerConfig={GCPProjectID:"",SpannerInstanceID:"",IsMetadataDbCreated:!1,IsConfigValid:!1},this.skipForeignKeyResponseList=[{value:!1,displayName:"No"},{value:!0,displayName:"Yes"}],this.migrationModesHelpText=new Map([["Schema","Migrates only the schema of the source database to the configured Spanner instance."],["Data","Migrates the data from the source database to the configured Spanner database. The configured database should already contain the schema."],["Schema And Data","Migrates both the schema and the data from the source database to Spanner."]]),this.migrationTypesHelpText=new Map([["bulk","Use the POC migration option when you want to migrate a sample of your data (<100GB) to do a Proof of Concept. It uses this machine's resources to copy data from the source database to Spanner"],["lowdt","Uses change data capture via Datastream to setup a continuous data replication pipeline from source to Spanner, using Dataflow jobs to perform the actual data migration."]])}refreshMigrationMode(){this.selectedMigrationMode!==Lo.schemaOnly&&this.isStreamingSupported&&this.connectionType!==mi.DumpFile?this.migrationTypes=[{name:"POC Migration",value:di.bulkMigration},{name:"Minimal downtime Migration",value:di.lowDowntimeMigration}]:(this.selectedMigrationType=di.bulkMigration,this.migrationTypes=[{name:"POC Migration",value:di.bulkMigration}])}refreshPrerequisites(){this.isSourceConnectionProfileSet=!1,this.isTargetConnectionProfileSet=!1,this.isTargetDetailSet=!1,this.refreshMigrationMode()}ngOnInit(){this.initializeFromLocalStorage(),this.data.config.subscribe(e=>{this.spannerConfig=e}),this.convObj=this.data.conv.subscribe(e=>{this.conv=e}),localStorage.setItem("hostProjectId",this.spannerConfig.GCPProjectID),this.fetch.getSourceDestinationSummary().subscribe({next:e=>{this.connectionType=e.ConnectionType,this.dataSource=[{title:"Database Type",source:e.DatabaseType,target:"Spanner"},{title:"Number of tables",source:e.SourceTableCount,target:e.SpannerTableCount},{title:"Number of indexes",source:e.SourceIndexCount,target:e.SpannerIndexCount}],this.sourceDatabaseType=e.DatabaseType,this.region=e.Region,this.instance=e.Instance,this.dialect=e.Dialect,this.isSharded=e.IsSharded,this.processingUnits=e.ProcessingUnits,this.nodeCount=e.NodeCount,(e.DatabaseType==Tr.MySQL.toLowerCase()||e.DatabaseType==Tr.Oracle.toLowerCase()||e.DatabaseType==Tr.Postgres.toLowerCase())&&(this.isStreamingSupported=!0),this.isStreamingSupported?this.migrationTypes=[{name:"POC Migration",value:di.bulkMigration},{name:"Minimal downtime Migration",value:di.lowDowntimeMigration}]:(this.selectedMigrationType=di.bulkMigration,this.migrationTypes=[{name:"POC Migration",value:di.bulkMigration}]),this.sourceDatabaseName=e.SourceDatabaseName,this.migrationModes=[Lo.schemaOnly,Lo.dataOnly,Lo.schemaAndData]},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}initializeFromLocalStorage(){null!=localStorage.getItem(le.MigrationMode)&&(this.selectedMigrationMode=localStorage.getItem(le.MigrationMode)),null!=localStorage.getItem(le.MigrationType)&&(this.selectedMigrationType=localStorage.getItem(le.MigrationType)),null!=localStorage.getItem(le.isForeignKeySkipped)&&(this.isForeignKeySkipped="true"===localStorage.getItem(le.isForeignKeySkipped)),null!=localStorage.getItem(le.IsMigrationInProgress)&&(this.isMigrationInProgress="true"===localStorage.getItem(le.IsMigrationInProgress),this.subscribeMigrationProgress()),null!=localStorage.getItem(le.IsTargetDetailSet)&&(this.isTargetDetailSet="true"===localStorage.getItem(le.IsTargetDetailSet)),null!=localStorage.getItem(le.IsSourceConnectionProfileSet)&&(this.isSourceConnectionProfileSet="true"===localStorage.getItem(le.IsSourceConnectionProfileSet)),null!=localStorage.getItem("isDataflowConfigSet")&&(this.isDataflowConfigurationSet="true"===localStorage.getItem("isDataflowConfigSet")),null!=localStorage.getItem(le.IsTargetConnectionProfileSet)&&(this.isTargetConnectionProfileSet="true"===localStorage.getItem(le.IsTargetConnectionProfileSet)),null!=localStorage.getItem(le.IsSourceDetailsSet)&&(this.isSourceDetailsSet="true"===localStorage.getItem(le.IsSourceDetailsSet)),null!=localStorage.getItem(le.IsMigrationDetailSet)&&(this.isMigrationDetailSet="true"===localStorage.getItem(le.IsMigrationDetailSet)),null!=localStorage.getItem(le.HasSchemaMigrationStarted)&&(this.hasSchemaMigrationStarted="true"===localStorage.getItem(le.HasSchemaMigrationStarted)),null!=localStorage.getItem(le.HasDataMigrationStarted)&&(this.hasDataMigrationStarted="true"===localStorage.getItem(le.HasDataMigrationStarted)),null!=localStorage.getItem(le.DataMigrationProgress)&&(this.dataMigrationProgress=parseInt(localStorage.getItem(le.DataMigrationProgress))),null!=localStorage.getItem(le.SchemaMigrationProgress)&&(this.schemaMigrationProgress=parseInt(localStorage.getItem(le.SchemaMigrationProgress))),null!=localStorage.getItem(le.DataProgressMessage)&&(this.dataProgressMessage=localStorage.getItem(le.DataProgressMessage)),null!=localStorage.getItem(le.SchemaProgressMessage)&&(this.schemaProgressMessage=localStorage.getItem(le.SchemaProgressMessage)),null!=localStorage.getItem(le.ForeignKeyProgressMessage)&&(this.foreignKeyProgressMessage=localStorage.getItem(le.ForeignKeyProgressMessage)),null!=localStorage.getItem(le.ForeignKeyUpdateProgress)&&(this.foreignKeyUpdateProgress=parseInt(localStorage.getItem(le.ForeignKeyUpdateProgress))),null!=localStorage.getItem(le.HasForeignKeyUpdateStarted)&&(this.hasForeignKeyUpdateStarted="true"===localStorage.getItem(le.HasForeignKeyUpdateStarted)),null!=localStorage.getItem(le.GeneratingResources)&&(this.generatingResources="true"===localStorage.getItem(le.GeneratingResources)),null!=localStorage.getItem(le.NumberOfShards)&&(this.numberOfShards=localStorage.getItem(le.NumberOfShards)),null!=localStorage.getItem(le.NumberOfInstances)&&(this.numberOfInstances=localStorage.getItem(le.NumberOfInstances))}clearLocalStorage(){localStorage.removeItem(le.MigrationMode),localStorage.removeItem(le.MigrationType),localStorage.removeItem(le.IsTargetDetailSet),localStorage.removeItem(le.isForeignKeySkipped),localStorage.removeItem(le.IsSourceConnectionProfileSet),localStorage.removeItem(le.IsTargetConnectionProfileSet),localStorage.removeItem(le.IsSourceDetailsSet),localStorage.removeItem("isDataflowConfigSet"),localStorage.removeItem("network"),localStorage.removeItem("subnetwork"),localStorage.removeItem("maxWorkers"),localStorage.removeItem("numWorkers"),localStorage.removeItem("serviceAccountEmail"),localStorage.removeItem("hostProjectId"),localStorage.removeItem(le.IsMigrationInProgress),localStorage.removeItem(le.HasSchemaMigrationStarted),localStorage.removeItem(le.HasDataMigrationStarted),localStorage.removeItem(le.DataMigrationProgress),localStorage.removeItem(le.SchemaMigrationProgress),localStorage.removeItem(le.DataProgressMessage),localStorage.removeItem(le.SchemaProgressMessage),localStorage.removeItem(le.ForeignKeyProgressMessage),localStorage.removeItem(le.ForeignKeyUpdateProgress),localStorage.removeItem(le.HasForeignKeyUpdateStarted),localStorage.removeItem(le.GeneratingResources),localStorage.removeItem(le.NumberOfShards),localStorage.removeItem(le.NumberOfInstances)}openConnectionProfileForm(e){this.dialog.open(wX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{IsSource:e,SourceDatabaseType:this.sourceDatabaseType}}).afterClosed().subscribe(()=>{this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},this.isSourceConnectionProfileSet="true"===localStorage.getItem(le.IsSourceConnectionProfileSet),this.isTargetConnectionProfileSet="true"===localStorage.getItem(le.IsTargetConnectionProfileSet),this.isTargetDetailSet&&this.isSourceConnectionProfileSet&&this.isTargetConnectionProfileSet&&(localStorage.setItem(le.IsMigrationDetailSet,"true"),this.isMigrationDetailSet=!0)})}openMigrationProfileForm(){this.dialog.open(pJ,{width:"30vw",minWidth:"1200px",maxWidth:"1600px",data:{IsSource:!1,SourceDatabaseType:this.sourceDatabaseType,Region:this.region}}).afterClosed().subscribe(()=>{this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},null!=localStorage.getItem(le.NumberOfShards)&&(this.numberOfShards=localStorage.getItem(le.NumberOfShards)),null!=localStorage.getItem(le.NumberOfInstances)&&(this.numberOfInstances=localStorage.getItem(le.NumberOfInstances)),this.isSourceConnectionProfileSet="true"===localStorage.getItem(le.IsSourceConnectionProfileSet),this.isTargetConnectionProfileSet="true"===localStorage.getItem(le.IsTargetConnectionProfileSet),this.isTargetDetailSet&&this.isSourceConnectionProfileSet&&this.isTargetConnectionProfileSet&&(localStorage.setItem(le.IsMigrationDetailSet,"true"),this.isMigrationDetailSet=!0)})}openGcloudPopup(e){this.dialog.open(FX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:e})}openDataflowForm(){this.dialog.open(RX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:this.spannerConfig}).afterClosed().subscribe(()=>{this.dataflowConfig={network:localStorage.getItem("network"),subnetwork:localStorage.getItem("subnetwork"),hostProjectId:localStorage.getItem("hostProjectId"),maxWorkers:localStorage.getItem("maxWorkers"),numWorkers:localStorage.getItem("numWorkers"),serviceAccountEmail:localStorage.getItem("serviceAccountEmail")},this.isDataflowConfigurationSet="true"===localStorage.getItem("isDataflowConfigSet"),this.isSharded&&this.fetch.setDataflowDetailsForShardedMigrations(this.dataflowConfig).subscribe({next:()=>{},error:i=>{this.snack.openSnackBar(i.error,"Close")}})})}endMigration(){this.dialog.open(PX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{SpannerDatabaseName:this.resourcesGenerated.DatabaseName,SpannerDatabaseUrl:this.resourcesGenerated.DatabaseUrl,SourceDatabaseType:this.sourceDatabaseType,SourceDatabaseName:this.sourceDatabaseName}}).afterClosed().subscribe()}openSourceDetailsForm(){this.dialog.open(OX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:this.sourceDatabaseType}).afterClosed().subscribe(()=>{this.isSourceDetailsSet="true"===localStorage.getItem(le.IsSourceDetailsSet)})}openShardedBulkSourceDetailsForm(){this.dialog.open(HX,{width:"30vw",minWidth:"400px",maxWidth:"550px",data:{sourceDatabaseEngine:this.sourceDatabaseType,isRestoredSession:this.connectionType}}).afterClosed().subscribe(()=>{this.isSourceDetailsSet="true"===localStorage.getItem(le.IsSourceDetailsSet),null!=localStorage.getItem(le.NumberOfShards)&&(this.numberOfShards=localStorage.getItem(le.NumberOfShards)),null!=localStorage.getItem(le.NumberOfInstances)&&(this.numberOfInstances=localStorage.getItem(le.NumberOfInstances))})}openTargetDetailsForm(){this.dialog.open(uX,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:{Region:this.region,Instance:this.instance,Dialect:this.dialect}}).afterClosed().subscribe(()=>{this.targetDetails={TargetDB:localStorage.getItem(Wt.TargetDB),SourceConnProfile:localStorage.getItem(Wt.SourceConnProfile),TargetConnProfile:localStorage.getItem(Wt.TargetConnProfile),ReplicationSlot:localStorage.getItem(Wt.ReplicationSlot),Publication:localStorage.getItem(Wt.Publication)},this.isTargetDetailSet="true"===localStorage.getItem(le.IsTargetDetailSet),(this.isSourceDetailsSet&&this.isTargetDetailSet&&this.connectionType===mi.SessionFile&&this.selectedMigrationMode!==Lo.schemaOnly||this.isTargetDetailSet&&this.selectedMigrationType==di.bulkMigration&&this.connectionType!==mi.SessionFile||this.isTargetDetailSet&&this.selectedMigrationType==di.bulkMigration&&this.connectionType===mi.SessionFile&&this.selectedMigrationMode===Lo.schemaOnly)&&(localStorage.setItem(le.IsMigrationDetailSet,"true"),this.isMigrationDetailSet=!0)})}migrate(){this.resetValues(),this.fetch.migrate({TargetDetails:this.targetDetails,DataflowConfig:this.dataflowConfig,IsSharded:this.isSharded,MigrationType:this.selectedMigrationType,MigrationMode:this.selectedMigrationMode,skipForeignKeys:this.isForeignKeySkipped}).subscribe({next:()=>{this.selectedMigrationMode==Lo.dataOnly?this.selectedMigrationType==di.bulkMigration?(this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString())):(this.generatingResources=!0,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),this.snack.openSnackBar("Setting up dataflow and datastream jobs","Close")):(this.hasSchemaMigrationStarted=!0,localStorage.setItem(le.HasSchemaMigrationStarted,this.hasSchemaMigrationStarted.toString())),this.snack.openSnackBar("Migration started successfully","Close",5),this.subscribeMigrationProgress()},error:i=>{this.snack.openSnackBar(i.error,"Close"),this.isMigrationInProgress=!this.isMigrationInProgress,this.hasDataMigrationStarted=!1,this.hasSchemaMigrationStarted=!1,this.clearLocalStorage()}})}subscribeMigrationProgress(){var e=!1;this.subscription=hI(5e3).subscribe(i=>{this.fetch.getProgress().subscribe({next:o=>{""==o.ErrorMessage?o.ProgressStatus==js.SchemaMigrationComplete?(localStorage.setItem(le.SchemaMigrationProgress,"100"),this.schemaMigrationProgress=parseInt(localStorage.getItem(le.SchemaMigrationProgress)),this.selectedMigrationMode==Lo.schemaOnly?this.markMigrationComplete():this.selectedMigrationType==di.lowDowntimeMigration?(this.markSchemaMigrationComplete(),this.generatingResources=!0,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),e||(this.snack.openSnackBar("Setting up dataflow and datastream jobs","Close"),e=!0)):(this.markSchemaMigrationComplete(),this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString()))):o.ProgressStatus==js.DataMigrationComplete?(this.selectedMigrationType!=di.lowDowntimeMigration&&(this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString())),this.generatingResources=!1,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),this.markMigrationComplete()):o.ProgressStatus==js.DataWriteInProgress?(this.markSchemaMigrationComplete(),this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString()),localStorage.setItem(le.DataMigrationProgress,o.Progress.toString()),this.dataMigrationProgress=parseInt(localStorage.getItem(le.DataMigrationProgress))):o.ProgressStatus==js.ForeignKeyUpdateComplete?this.markMigrationComplete():o.ProgressStatus==js.ForeignKeyUpdateInProgress&&(this.markSchemaMigrationComplete(),this.selectedMigrationType==di.bulkMigration&&(this.hasDataMigrationStarted=!0,localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString())),this.markForeignKeyUpdateInitiation(),this.dataMigrationProgress=100,localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),localStorage.setItem(le.ForeignKeyUpdateProgress,o.Progress.toString()),this.foreignKeyUpdateProgress=parseInt(localStorage.getItem(le.ForeignKeyUpdateProgress)),this.generatingResources=!1,localStorage.setItem(le.GeneratingResources,this.generatingResources.toString()),this.fetchGeneratedResources()):(this.errorMessage=o.ErrorMessage,this.subscription.unsubscribe(),this.isMigrationInProgress=!this.isMigrationInProgress,this.snack.openSnackBarWithoutTimeout(this.errorMessage,"Close"),this.schemaProgressMessage="Schema migration cancelled!",this.dataProgressMessage="Data migration cancelled!",this.foreignKeyProgressMessage="Foreign key update cancelled!",this.generatingResources=!1,this.isLowDtMigrationRunning=!1,this.clearLocalStorage())},error:o=>{this.snack.openSnackBar(o.error,"Close"),this.isMigrationInProgress=!this.isMigrationInProgress,this.clearLocalStorage()}})})}markForeignKeyUpdateInitiation(){this.dataMigrationProgress=100,this.dataProgressMessage="Data migration completed successfully!",localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),this.hasForeignKeyUpdateStarted=!0,this.foreignKeyUpdateProgress=parseInt(localStorage.getItem(le.ForeignKeyUpdateProgress))}markSchemaMigrationComplete(){this.schemaMigrationProgress=100,this.schemaProgressMessage="Schema migration completed successfully!",localStorage.setItem(le.SchemaMigrationProgress,this.schemaMigrationProgress.toString()),localStorage.setItem(le.SchemaProgressMessage,this.schemaProgressMessage)}downloadConfiguration(){this.fetch.getSourceProfile().subscribe({next:e=>{this.configuredMigrationProfile=e;var i=document.createElement("a");let o=JSON.stringify(this.configuredMigrationProfile,null,"\t").replace(/9223372036854776000/g,"9223372036854775807");i.href="data:text/json;charset=utf-8,"+encodeURIComponent(o),i.download=localStorage.getItem(Wt.TargetDB)+"-"+this.configuredMigrationProfile.configType+"-shardConfig.cfg",i.click()},error:e=>{this.snack.openSnackBar(e.error,"Close")}})}fetchGeneratedResources(){this.fetch.getGeneratedResources().subscribe({next:e=>{this.isResourceGenerated=!0,this.resourcesGenerated=e},error:e=>{this.snack.openSnackBar(e.error,"Close")}}),this.selectedMigrationType===di.lowDowntimeMigration&&(this.isLowDtMigrationRunning=!0)}markMigrationComplete(){this.subscription.unsubscribe(),this.isMigrationInProgress=!this.isMigrationInProgress,this.dataProgressMessage="Data migration completed successfully!",this.schemaProgressMessage="Schema migration completed successfully!",this.schemaMigrationProgress=100,this.dataMigrationProgress=100,this.foreignKeyUpdateProgress=100,this.foreignKeyProgressMessage="Foreign key updated successfully!",this.fetchGeneratedResources(),this.clearLocalStorage(),this.refreshPrerequisites()}resetValues(){this.isMigrationInProgress=!this.isMigrationInProgress,this.hasSchemaMigrationStarted=!1,this.hasDataMigrationStarted=!1,this.generatingResources=!1,this.dataMigrationProgress=0,this.schemaMigrationProgress=0,this.schemaProgressMessage="Schema migration in progress...",this.dataProgressMessage="Data migration in progress...",this.isResourceGenerated=!1,this.hasForeignKeyUpdateStarted=!1,this.foreignKeyUpdateProgress=100,this.foreignKeyProgressMessage="Foreign key update in progress...",this.resourcesGenerated={DatabaseName:"",DatabaseUrl:"",BucketName:"",BucketUrl:"",DataStreamJobName:"",DataStreamJobUrl:"",DataflowJobName:"",DataflowJobUrl:"",PubsubTopicName:"",PubsubTopicUrl:"",PubsubSubscriptionName:"",PubsubSubscriptionUrl:"",DataflowGcloudCmd:"",ShardToDatastreamMap:new Map,ShardToDataflowMap:new Map,ShardToPubsubTopicMap:new Map,ShardToPubsubSubscriptionMap:new Map},this.initializeLocalStorage()}initializeLocalStorage(){localStorage.setItem(le.MigrationMode,this.selectedMigrationMode),localStorage.setItem(le.MigrationType,this.selectedMigrationType),localStorage.setItem(le.isForeignKeySkipped,this.isForeignKeySkipped.toString()),localStorage.setItem(le.IsMigrationInProgress,this.isMigrationInProgress.toString()),localStorage.setItem(le.HasSchemaMigrationStarted,this.hasSchemaMigrationStarted.toString()),localStorage.setItem(le.HasDataMigrationStarted,this.hasDataMigrationStarted.toString()),localStorage.setItem(le.HasForeignKeyUpdateStarted,this.hasForeignKeyUpdateStarted.toString()),localStorage.setItem(le.DataMigrationProgress,this.dataMigrationProgress.toString()),localStorage.setItem(le.SchemaMigrationProgress,this.schemaMigrationProgress.toString()),localStorage.setItem(le.ForeignKeyUpdateProgress,this.foreignKeyUpdateProgress.toString()),localStorage.setItem(le.SchemaProgressMessage,this.schemaProgressMessage),localStorage.setItem(le.DataProgressMessage,this.dataProgressMessage),localStorage.setItem(le.ForeignKeyProgressMessage,this.foreignKeyProgressMessage),localStorage.setItem(le.IsTargetDetailSet,this.isTargetDetailSet.toString()),localStorage.setItem(le.GeneratingResources,this.generatingResources.toString())}openSaveSessionSidenav(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("saveSession"),this.sidenav.setSidenavDatabaseName(this.conv.DatabaseName)}downloadSession(){uI(this.conv)}ngOnDestroy(){}}return t.\u0275fac=function(e){return new(e||t)(b(wr),b(Ei),b(Vo),b(Ln),b(Ii))},t.\u0275cmp=Ae({type:t,selectors:[["app-prepare-migration"]],decls:90,vars:34,consts:[[1,"header"],[1,"breadcrumb"],["mat-button","",1,"breadcrumb_source",3,"routerLink"],["mat-button","",1,"breadcrumb_workspace",3,"routerLink"],["mat-button","",1,"breadcrumb_prepare_migration",3,"routerLink"],[1,"header_action"],["mat-button","",3,"click"],["mat-button","","color","primary",3,"click"],[1,"body"],[1,"definition-container"],[4,"ngIf"],[1,"summary"],["mat-table","",3,"dataSource"],["matColumnDef","Title"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Source"],["matColumnDef","Destination"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["appearance","outline"],[3,"ngModel","ngModelChange","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[1,"configure",3,"matTooltip"],[1,"mat-card-class"],["class","static-prereqs",4,"ngIf"],[1,"point"],[1,"bullet"],["matTooltip","Configure the database in Spanner you want this migration to write to (up till now only GCP Project ID and Spanner Instance name have been configured.)",1,"configure"],["mat-button","",1,"configure",3,"disabled","click"],["class","success","matTooltip","Target details configured","matTooltipPosition","above",4,"ngIf"],["class","point",4,"ngIf"],["class","mat-card-class",4,"ngIf"],["class","progress_bar",4,"ngIf"],[1,"migrate"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""],[3,"value"],[3,"ngModel","ngModelChange"],[1,"static-prereqs"],["href","https://cloud.google.com/datastream/docs/sources","target","_blank"],["href","https://cloud.google.com/dataflow/docs/concepts/security-and-permissions","target","_blank"],["href","https://cloud.google.com/dataflow/docs/guides/routes-firewall","target","_blank"],["class","success","matTooltip","Source details configured","matTooltipPosition","above",4,"ngIf"],["matTooltip","Source details configured","matTooltipPosition","above",1,"success"],["matTooltip","Configure the connection info of all source shards to connect to and migrate data from.",1,"configure"],["matTooltip","Target details configured","matTooltipPosition","above",1,"success"],["matTooltip","Datastream will be used to capture change events from the source database. Please ensure you have met the pre-requistes required for setting up Datastream in your GCP environment. ",1,"configure"],["class","success","matTooltip","Source connection profile configured","matTooltipPosition","above",4,"ngIf"],["matTooltip","Source connection profile configured","matTooltipPosition","above",1,"success"],["matTooltip","Configure the source connection profile to allow Datastream to read from your source database",1,"configure"],["matTooltip","Create a connection profile for datastream to write to a GCS bucket. Spanner migration tool will automatically create the bucket for you.",1,"configure"],["class","success","matTooltip","Target connection profile configured","matTooltipPosition","above",4,"ngIf"],["matTooltip","Target connection profile configured","matTooltipPosition","above",1,"success"],["class","bullet",4,"ngIf"],["matTooltip","Dataflow will be used to perform the actual migration of data from source to Spanner. This helps you configure the execution environment for Dataflow jobs e.g VPC.",1,"configure"],["matTooltip","Dataflow Configured","matTooltipPosition","above",1,"success"],["matTooltip","Download the configuration done above as JSON.",1,"configure"],["matTooltip","Download configured shards as JSON","matTooltipPosition","above"],[1,"progress_bar"],["mode","determinate",3,"value"],[1,"spinner"],[3,"diameter"],[1,"spinner-text"],["target","_blank",3,"href"],["mat-button","",1,"configure",3,"click"],["matTooltip","Equivalent gCloud command","matTooltipPosition","above"],[4,"ngFor","ngForOf"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"a",2),h(3,"Select Source"),c(),d(4,"span"),h(5,">"),c(),d(6,"a",3),h(7),c(),d(8,"span"),h(9,">"),c(),d(10,"a",4)(11,"b"),h(12,"Prepare Migration"),c()()(),d(13,"div",5)(14,"button",6),N("click",function(){return i.openSaveSessionSidenav()}),h(15," SAVE SESSION "),c(),d(16,"button",7),N("click",function(){return i.downloadSession()}),h(17,"DOWNLOAD SESSION FILE"),c()()(),E(18,"br"),d(19,"div",8)(20,"div",9),_(21,fJ,2,0,"h2",10),_(22,mJ,2,0,"h2",10),d(23,"div",11)(24,"table",12),be(25,13),_(26,gJ,2,0,"th",14),_(27,_J,3,1,"td",15),ve(),be(28,16),_(29,bJ,2,0,"th",14),_(30,vJ,2,1,"td",15),ve(),be(31,17),_(32,yJ,2,0,"th",14),_(33,CJ,2,1,"td",15),ve(),_(34,wJ,1,0,"tr",18),_(35,DJ,1,0,"tr",19),c()()(),E(36,"br"),d(37,"mat-form-field",20)(38,"mat-label"),h(39,"Migration Mode:"),c(),d(40,"mat-select",21),N("ngModelChange",function(r){return i.selectedMigrationMode=r})("selectionChange",function(){return i.refreshPrerequisites()}),_(41,SJ,2,2,"mat-option",22),c()(),d(42,"mat-icon",23),h(43,"info"),c(),E(44,"br"),_(45,xJ,9,3,"div",10),_(46,kJ,6,2,"div",10),d(47,"div",24)(48,"mat-card")(49,"mat-card-title"),h(50,"Prerequisites"),c(),d(51,"mat-card-subtitle"),h(52,"Before we begin, please ensure you have done the following:"),c(),_(53,EJ,6,0,"div",25),_(54,IJ,20,0,"div",25),c()(),d(55,"div",24)(56,"mat-card"),_(57,AJ,14,2,"div",10),_(58,RJ,16,2,"div",10),d(59,"div")(60,"mat-card-title"),h(61,"Target details:"),c(),d(62,"p",26)(63,"span",27),h(64,"1"),c(),d(65,"span"),h(66,"Configure Spanner Database "),d(67,"mat-icon",28),h(68," info"),c()(),d(69,"span")(70,"button",29),N("click",function(){return i.openTargetDetailsForm()}),h(71," Configure "),d(72,"mat-icon"),h(73,"edit"),c(),_(74,FJ,2,0,"mat-icon",30),c()()(),_(75,LJ,13,2,"p",31),_(76,VJ,13,2,"p",31),_(77,HJ,13,2,"p",31),_(78,$J,14,3,"p",31),_(79,WJ,11,2,"p",31),c()()(),_(80,qJ,25,3,"div",32),_(81,KJ,32,6,"div",32),_(82,ZJ,5,2,"div",33),_(83,QJ,5,2,"div",33),_(84,YJ,5,2,"div",33),_(85,XJ,8,1,"div",10),_(86,hee,22,13,"div",10),d(87,"div",34),_(88,pee,3,1,"span",10),_(89,fee,3,0,"span",10),c()()),2&e&&(f(2),m("routerLink","/"),f(4),m("routerLink","/workspace"),f(1),Se("Configure Schema (",i.dialect," Dialect)"),f(3),m("routerLink","/prepare-migration"),f(11),m("ngIf",!i.isSharded),f(1),m("ngIf",i.isSharded),f(2),m("dataSource",i.dataSource),f(10),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns),f(5),m("ngModel",i.selectedMigrationMode),f(1),m("ngForOf",i.migrationModes),f(1),m("matTooltip",i.migrationModesHelpText.get(i.selectedMigrationMode)),f(3),m("ngIf","Schema"!=i.selectedMigrationMode),f(1),m("ngIf",!("Schema"===i.selectedMigrationMode||"lowdt"===i.selectedMigrationType)),f(7),m("ngIf","bulk"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(3),m("ngIf","sessionFile"===i.connectionType&&"Schema"!==i.selectedMigrationMode&&!i.isSharded),f(1),m("ngIf",i.isSharded&&"bulk"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(12),m("disabled",i.isMigrationInProgress||i.isLowDtMigrationRunning),f(4),m("ngIf",i.isTargetDetailSet),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&i.isSharded),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&!i.isSharded),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&!i.isSharded),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode),f(1),m("ngIf","lowdt"===i.selectedMigrationType&&"Schema"!==i.selectedMigrationMode&&i.isSharded),f(1),m("ngIf","Schema"!==i.selectedMigrationMode&&i.isSharded),f(1),m("ngIf",i.isTargetDetailSet),f(1),m("ngIf",i.hasSchemaMigrationStarted),f(1),m("ngIf",i.hasDataMigrationStarted),f(1),m("ngIf",i.hasForeignKeyUpdateStarted),f(1),m("ngIf",i.generatingResources),f(1),m("ngIf",i.isResourceGenerated),f(2),m("ngIf",!i.isLowDtMigrationRunning),f(1),m("ngIf",i.isLowDtMigrationRunning))},directives:[VM,jd,Ht,Et,As,Jr,Xr,es,Yr,ts,Ps,Fs,Rs,Ns,En,Mn,Yi,vn,El,si,_i,bn,ki,$h,rx,sx,cx,eo],pipes:[XD],styles:[".header[_ngcontent-%COMP%] .breadcrumb[_ngcontent-%COMP%] .breadcrumb_workspace[_ngcontent-%COMP%]{color:#0000008f}.header[_ngcontent-%COMP%] .breadcrumb[_ngcontent-%COMP%] .breadcrumb_prepare_migration[_ngcontent-%COMP%]{font-weight:400;font-size:14px}.definition-container[_ngcontent-%COMP%]{max-height:500px;overflow:auto}.definition-container[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-size:13px}.body[_ngcontent-%COMP%]{margin-left:20px}table[_ngcontent-%COMP%]{min-width:30%;max-width:50%}table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{width:10%}.configure[_ngcontent-%COMP%]{color:#1967d2}.migrate[_ngcontent-%COMP%]{margin-top:10px}"]}),t})()},{path:"**",redirectTo:"/",pathMatch:"full"}];let gee=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t}),t.\u0275inj=it({imports:[[sI.forRoot(mee)],sI]}),t})();function _ee(t,n){if(1&t&&(d(0,"mat-option",13),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function bee(t,n){if(1&t&&(d(0,"mat-option",13),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function vee(t,n){if(1&t&&(d(0,"mat-form-field",1)(1,"mat-label"),h(2,"Destination data type"),c(),d(3,"mat-select",14),_(4,bee,2,2,"mat-option",10),c()()),2&t){const e=D();f(4),m("ngForOf",e.destinationType)}}function yee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",15),N("click",function(){return se(e),D().formSubmit()}),h(2," ADD RULE "),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.addGlobalDataTypeForm.valid&&e.ruleNameValid))}}function Cee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",16),N("click",function(){return se(e),D().deleteRule()}),h(2,"DELETE RULE"),c()()}}let wee=(()=>{class t{constructor(e,i,o,r,s){this.fb=e,this.data=i,this.sidenav=o,this.conversion=r,this.fetch=s,this.ruleNameValid=!1,this.ruleType="",this.ruleName="",this.resetRuleType=new Pe,this.conversionType={},this.sourceType=[],this.destinationType=[],this.viewRuleData=[],this.viewRuleFlag=!1,this.pgSQLToStandardTypeTypemap=new Map,this.standardTypeToPGSQLTypemap=new Map,this.conv={},this.isPostgreSQLDialect=!1,this.addGlobalDataTypeForm=this.fb.group({objectType:["column",de.required],table:["allTable",de.required],column:["allColumn",de.required],sourceType:["",de.required],destinationType:["",de.required]})}ngOnInit(){this.data.typeMap.subscribe({next:e=>{this.conversionType=e,this.sourceType=Object.keys(this.conversionType)}}),this.data.conv.subscribe({next:e=>{this.conv=e,this.isPostgreSQLDialect="postgresql"===this.conv.SpDialect}}),this.conversion.pgSQLToStandardTypeTypeMap.subscribe(e=>{this.pgSQLToStandardTypeTypemap=e}),this.conversion.standardTypeToPGSQLTypeMap.subscribe(e=>{this.standardTypeToPGSQLTypemap=e}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.viewRuleData&&this.setViewRuleData(this.viewRuleData)})})}setViewRuleData(e){var i,o,r;if(this.ruleId=null==e?void 0:e.Id,this.addGlobalDataTypeForm.controls.sourceType.setValue(Object.keys(null==e?void 0:e.Data)[0]),this.updateDestinationType(Object.keys(null==e?void 0:e.Data)[0]),this.isPostgreSQLDialect){let s=this.standardTypeToPGSQLTypemap.get(Object.values(null===(i=this.viewRuleData)||void 0===i?void 0:i.Data)[0]);this.addGlobalDataTypeForm.controls.destinationType.setValue(void 0===s?Object.values(null===(o=this.viewRuleData)||void 0===o?void 0:o.Data)[0]:s)}else this.addGlobalDataTypeForm.controls.destinationType.setValue(Object.values(null===(r=this.viewRuleData)||void 0===r?void 0:r.Data)[0]);this.addGlobalDataTypeForm.disable()}formSubmit(){const e=this.addGlobalDataTypeForm.value,i=e.sourceType,o={};if(this.isPostgreSQLDialect){let r=this.pgSQLToStandardTypeTypemap.get(e.destinationType);o[i]=void 0===r?e.destinationType:r}else o[i]=e.destinationType;this.applyRule(o),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}updateDestinationType(e){const i=this.conversionType[e],o=[];null==i||i.forEach(r=>{o.push(r.DisplayT)}),this.destinationType=o}applyRule(e){this.data.applyRule({Name:this.ruleName,Type:"global_datatype_change",ObjectType:"Column",AssociatedObjects:"All Columns",Enabled:!0,Data:e,Id:""})}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ii),b(Da),b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-edit-global-datatype-form"]],inputs:{ruleNameValid:"ruleNameValid",ruleType:"ruleType",ruleName:"ruleName"},outputs:{resetRuleType:"resetRuleType"},decls:34,vars:5,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","objectType","required","true",1,"input-field"],["value","column"],["matSelect","","formControlName","table","required","true",1,"input-field"],["value","allTable"],["matSelect","","formControlName","column","required","true",1,"input-field"],["value","allColumn"],["matSelect","","formControlName","sourceType","required","true",1,"input-field",3,"selectionChange"],["sourceField",""],[3,"value",4,"ngFor","ngForOf"],["appearance","outline",4,"ngIf"],[4,"ngIf"],[3,"value"],["matSelect","","formControlName","destinationType","required","true",1,"input-field"],["mat-raised-button","","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){if(1&e){const o=pe();d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"For object type"),c(),d(4,"mat-select",2)(5,"mat-option",3),h(6,"Column"),c()()(),d(7,"h3"),h(8,"When"),c(),d(9,"mat-form-field",1)(10,"mat-label"),h(11,"Table is"),c(),d(12,"mat-select",4)(13,"mat-option",5),h(14,"All tables"),c()()(),d(15,"mat-form-field",1)(16,"mat-label"),h(17,"and column is"),c(),d(18,"mat-select",6)(19,"mat-option",7),h(20,"All column"),c()()(),d(21,"h3"),h(22,"Convert from"),c(),d(23,"mat-form-field",1)(24,"mat-label"),h(25,"Source data type"),c(),d(26,"mat-select",8,9),N("selectionChange",function(){se(o);const s=$t(27);return i.updateDestinationType(s.value)}),_(28,_ee,2,2,"mat-option",10),c()(),d(29,"h3"),h(30,"Convert to"),c(),_(31,vee,5,1,"mat-form-field",11),_(32,yee,3,1,"div",12),_(33,Cee,3,0,"div",12),c()}if(2&e){const o=$t(27);m("formGroup",i.addGlobalDataTypeForm),f(28),m("ngForOf",i.sourceType),f(3),m("ngIf",o.selected),f(1),m("ngIf",!i.viewRuleFlag),f(1),m("ngIf",i.viewRuleFlag)}},directives:[Hn,Sn,En,Mn,Yi,vn,Xn,fo,_i,si,Et,Ht],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%;padding:0}"]}),t})();function Dee(t,n){if(1&t&&(d(0,"mat-option",11),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function See(t,n){if(1&t&&(d(0,"mat-option",11),h(1),c()),2&t){const e=n.$implicit;m("value",e),f(1),Ee(e)}}function Mee(t,n){if(1&t){const e=pe();d(0,"button",19),N("click",function(){se(e);const o=D().index;return D().removeColumnForm(o)}),d(1,"mat-icon"),h(2,"remove"),c(),d(3,"span"),h(4,"REMOVE COLUMN"),c()()}}function xee(t,n){if(1&t){const e=pe();be(0),d(1,"mat-card",12)(2,"div",13)(3,"mat-form-field",1)(4,"mat-label"),h(5,"Column Name"),c(),d(6,"mat-select",14),N("selectionChange",function(){return se(e),D().selectedColumnChange()}),_(7,See,2,2,"mat-option",3),c()(),d(8,"mat-form-field",1)(9,"mat-label"),h(10,"Sort"),c(),d(11,"mat-select",15)(12,"mat-option",16),h(13,"Ascending"),c(),d(14,"mat-option",17),h(15,"Descending"),c()()()(),_(16,Mee,5,0,"button",18),c(),ve()}if(2&t){const e=n.index,i=D();f(2),m("formGroupName",e),f(5),m("ngForOf",i.addColumnsList[e]),f(9),m("ngIf",!i.viewRuleFlag)}}function Tee(t,n){if(1&t){const e=pe();d(0,"button",20),N("click",function(){return se(e),D().addNewColumnForm()}),d(1,"mat-icon"),h(2,"add"),c(),d(3,"span"),h(4,"ADD COLUMN"),c()()}}function kee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",21),N("click",function(){return se(e),D().addIndex()}),h(2," ADD RULE "),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.addIndexForm.valid&&e.ruleNameValid&&e.ColsArray.controls.length>0))}}function Eee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",22),N("click",function(){return se(e),D().deleteRule()}),h(2," DELETE RULE "),c()()}}let Iee=(()=>{class t{constructor(e,i,o,r){this.fb=e,this.data=i,this.sidenav=o,this.conversion=r,this.ruleNameValid=!1,this.ruleName="",this.ruleType="",this.resetRuleType=new Pe,this.tableNames=[],this.totalColumns=[],this.addColumnsList=[],this.commonColumns=[],this.viewRuleData={},this.viewRuleFlag=!1,this.conv={},this.ruleId="",this.addIndexForm=this.fb.group({tableName:["",de.required],indexName:["",[de.required,de.pattern("^[a-zA-Z].{0,59}$")]],ColsArray:this.fb.array([])})}ngOnInit(){this.data.conv.subscribe({next:e=>{this.conv=e,this.tableNames=Object.keys(e.SpSchema).map(i=>e.SpSchema[i].Name)}}),this.sidenav.sidenavAddIndexTable.subscribe({next:e=>{this.addIndexForm.controls.tableName.setValue(e),""!==e&&this.selectedTableChange(e)}}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.viewRuleData&&this.viewRuleFlag&&this.getRuleData(this.viewRuleData)})})}getRuleData(e){var i,o,r,s,a;this.ruleId=null==e?void 0:e.Id;let l=null===(o=this.conv.SpSchema[null===(i=null==e?void 0:e.Data)||void 0===i?void 0:i.TableId])||void 0===o?void 0:o.Name;this.addIndexForm.controls.tableName.setValue(l),this.addIndexForm.controls.indexName.setValue(null===(r=null==e?void 0:e.Data)||void 0===r?void 0:r.Name),this.selectedTableChange(l),this.setColArraysForViewRules(null===(s=null==e?void 0:e.Data)||void 0===s?void 0:s.TableId,null===(a=null==e?void 0:e.Data)||void 0===a?void 0:a.Keys),this.addIndexForm.disable()}setColArraysForViewRules(e,i){var o;if(this.ColsArray.clear(),i)for(let r=0;r<(null==i?void 0:i.length);r++){this.updateCommonColumns(),this.addColumnsList.push([...this.commonColumns]);let s=null===(o=this.conv.SpSchema[e])||void 0===o?void 0:o.ColDefs[i[r].ColId].Name,a=this.fb.group({columnName:[s,de.required],sort:[i[r].Desc.toString(),de.required]});this.ColsArray.push(a)}}get ColsArray(){return this.addIndexForm.controls.ColsArray}selectedTableChange(e){let i=this.conversion.getTableIdFromSpName(e,this.conv);if(i){let o=this.conv.SpSchema[i];this.totalColumns=this.conv.SpSchema[i].ColIds.map(r=>o.ColDefs[r].Name)}this.ColsArray.clear(),this.commonColumns=[],this.addColumnsList=[],this.updateCommonColumns()}addNewColumnForm(){let e=this.fb.group({columnName:["",de.required],sort:["",de.required]});this.ColsArray.push(e),this.updateCommonColumns(),this.addColumnsList.push([...this.commonColumns])}selectedColumnChange(){this.updateCommonColumns(),this.addColumnsList=this.addColumnsList.map((e,i)=>{const o=[...this.commonColumns];return""!==this.ColsArray.value[i].columnName&&o.push(this.ColsArray.value[i].columnName),o})}updateCommonColumns(){this.commonColumns=this.totalColumns.filter(e=>{let i=!0;return this.ColsArray.value.forEach(o=>{o.columnName===e&&(i=!1)}),i})}removeColumnForm(e){this.ColsArray.removeAt(e),this.addColumnsList=this.addColumnsList.filter((i,o)=>o!==e),this.selectedColumnChange()}addIndex(){let e=this.addIndexForm.value,i=[],o=this.conversion.getTableIdFromSpName(e.tableName,this.conv);i.push({Name:e.indexName,TableId:o,Unique:!1,Keys:e.ColsArray.map((r,s)=>({ColId:this.conversion.getColIdFromSpannerColName(r.columnName,o,this.conv),Desc:"true"===r.sort,Order:s+1})),Id:""}),this.applyRule(i[0]),this.resetRuleType.emit(""),this.sidenav.setSidenavAddIndexTable(""),this.sidenav.closeSidenav()}applyRule(e){let o=this.conversion.getTableIdFromSpName(this.addIndexForm.value.tableName,this.conv);this.data.applyRule({Name:this.ruleName,Type:"add_index",ObjectType:"Table",AssociatedObjects:o,Enabled:!0,Data:e,Id:""})}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.setSidenavAddIndexTable(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ii),b(Da))},t.\u0275cmp=Ae({type:t,selectors:[["app-add-index-form"]],inputs:{ruleNameValid:"ruleNameValid",ruleName:"ruleName",ruleType:"ruleType"},outputs:{resetRuleType:"resetRuleType"},decls:18,vars:7,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","tableName","required","true",1,"input-field",3,"selectionChange"],[3,"value",4,"ngFor","ngForOf"],["hintLabel","Max. 60 characters, and starts with a letter.","appearance","outline"],["matInput","","formControlName","indexName",1,"input-field"],["align","end"],["formArrayName","ColsArray",1,"addcol-form"],[4,"ngFor","ngForOf"],["mat-button","","color","primary","class","add-column-btn","type","button",3,"click",4,"ngIf"],[4,"ngIf"],[3,"value"],[1,"column-form-card"],[3,"formGroupName"],["matSelect","","formControlName","columnName","required","true",1,"input-field",3,"selectionChange"],["formControlName","sort","required","true",1,"input-field"],["value","false"],["value","true"],["mat-button","","color","primary",3,"click",4,"ngIf"],["mat-button","","color","primary",3,"click"],["mat-button","","color","primary","type","button",1,"add-column-btn",3,"click"],["mat-raised-button","","type","submit","color","primary",1,"add-column-btn",3,"disabled","click"],["mat-raised-button","","type","submit","color","primary",1,"add-column-btn",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"For Table"),c(),d(4,"mat-select",2),N("selectionChange",function(r){return i.selectedTableChange(r.value)}),_(5,Dee,2,2,"mat-option",3),c()(),d(6,"mat-form-field",4)(7,"mat-label"),h(8,"Index Name"),c(),E(9,"input",5),d(10,"mat-hint",6),h(11),c()(),be(12,7),_(13,xee,17,3,"ng-container",8),_(14,Tee,5,0,"button",9),E(15,"br"),_(16,kee,3,1,"div",10),_(17,Eee,3,0,"div",10),ve(),c()),2&e&&(m("formGroup",i.addIndexForm),f(5),m("ngForOf",i.tableNames),f(6),Se("",(null==i.addIndexForm.value.indexName?null:i.addIndexForm.value.indexName.length)||0,"/60"),f(2),m("ngForOf",i.ColsArray.controls),f(1),m("ngIf",i.addColumnsList.length{class t{constructor(e,i,o,r){this.fb=e,this.data=i,this.sidenav=o,this.conversion=r,this.ruleNameValid=!1,this.ruleName="",this.ruleType="",this.resetRuleType=new Pe,this.ruleId="",this.tableNames=[],this.viewRuleData=[],this.viewRuleFlag=!1,this.conv={},this.spTypes=[],this.hintlabel="",this.editColMaxLengthForm=this.fb.group({tableName:["",de.required],column:["allColumn",de.required],spDataType:["",de.required],maxColLength:["",[de.required,de.pattern("([1-9][0-9]*|MAX)")]]})}ngOnInit(){this.data.conv.subscribe({next:e=>{this.conv=e,this.tableNames=Object.keys(e.SpSchema).map(i=>e.SpSchema[i].Name),this.tableNames.push("All tables"),"postgresql"===this.conv.SpDialect?(this.spTypes=[{name:"VARCHAR",value:"STRING"}],this.hintlabel="Max "+ui.StringMaxLength+" for VARCHAR"):(this.spTypes=[{name:"STRING",value:"STRING"},{name:"BYTES",value:"BYTES"}],this.hintlabel="Max "+ui.StringMaxLength+" for STRING and "+ui.ByteMaxLength+" for BYTES")}}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&this.sidenav.ruleData.subscribe(i=>{var o,r,s,a,l,u;if(this.viewRuleData=i,this.viewRuleData){this.ruleId=null===(o=this.viewRuleData)||void 0===o?void 0:o.Id;let p=null===(r=this.viewRuleData)||void 0===r?void 0:r.AssociatedObjects;this.editColMaxLengthForm.controls.tableName.setValue(p),this.editColMaxLengthForm.controls.spDataType.setValue(null===(a=null===(s=this.viewRuleData)||void 0===s?void 0:s.Data)||void 0===a?void 0:a.spDataType),this.editColMaxLengthForm.controls.maxColLength.setValue(null===(u=null===(l=this.viewRuleData)||void 0===l?void 0:l.Data)||void 0===u?void 0:u.spColMaxLength),this.editColMaxLengthForm.disable()}})})}formSubmit(){const e=this.editColMaxLengthForm.value;(("STRING"===e.spDataType||"VARCHAR"===e.spDataType)&&e.spColMaxLength>ui.StringMaxLength||"BYTES"===e.spDataType&&e.spColMaxLength>ui.ByteMaxLength)&&(e.spColMaxLength=ui.StorageMaxLength);const i={spDataType:e.spDataType,spColMaxLength:e.maxColLength};let r=this.conversion.getTableIdFromSpName(e.tableName,this.conv);""===r&&(r="All tables"),this.data.applyRule({Name:this.ruleName,Type:"edit_column_max_length",ObjectType:"Table",AssociatedObjects:r,Enabled:!0,Data:i,Id:""}),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ii),b(Da))},t.\u0275cmp=Ae({type:t,selectors:[["app-edit-column-max-length"]],inputs:{ruleNameValid:"ruleNameValid",ruleName:"ruleName",ruleType:"ruleType"},outputs:{resetRuleType:"resetRuleType"},decls:23,vars:6,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","tableName","required","true",1,"input-field"],[3,"value",4,"ngFor","ngForOf"],["matSelect","","formControlName","column","required","true",1,"input-field"],["value","allColumn"],["matSelect","","formControlName","spDataType","required","true",1,"input-field"],["appearance","outline",3,"hintLabel"],["matInput","","formControlName","maxColLength",1,"input-field"],[4,"ngIf"],[3,"value"],["mat-raised-button","","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"Table is"),c(),d(4,"mat-select",2),_(5,Oee,2,2,"mat-option",3),c()(),d(6,"mat-form-field",1)(7,"mat-label"),h(8,"and column is"),c(),d(9,"mat-select",4)(10,"mat-option",5),h(11,"All column"),c()()(),d(12,"mat-form-field",1)(13,"mat-label"),h(14,"and Spanner Type is"),c(),d(15,"mat-select",6),_(16,Aee,2,2,"mat-option",3),c()(),d(17,"mat-form-field",7)(18,"mat-label"),h(19,"Max column length"),c(),E(20,"input",8),c(),_(21,Pee,3,1,"div",9),_(22,Ree,3,0,"div",9),c()),2&e&&(m("formGroup",i.editColMaxLengthForm),f(5),m("ngForOf",i.tableNames),f(11),m("ngForOf",i.spTypes),f(1),m("hintLabel",i.hintlabel),f(4),m("ngIf",!i.viewRuleFlag),f(1),m("ngIf",i.viewRuleFlag))},directives:[Hn,Sn,En,Mn,Yi,vn,Xn,fo,si,_i,ci,Dn,Et,Ht],styles:[""]}),t})();function Nee(t,n){if(1&t&&(d(0,"mat-option",7),h(1),c()),2&t){const e=n.$implicit;m("value",e.value),f(1),Ee(e.display)}}function Lee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",8),N("click",function(){return se(e),D().formSubmit()}),h(2," ADD RULE "),c()()}if(2&t){const e=D();f(1),m("disabled",!(e.addShardIdPrimaryKeyForm.valid&&e.ruleNameValid))}}function Bee(t,n){if(1&t){const e=pe();d(0,"div")(1,"button",9),N("click",function(){return se(e),D().deleteRule()}),h(2,"DELETE RULE"),c()()}}let Vee=(()=>{class t{constructor(e,i,o){this.fb=e,this.data=i,this.sidenav=o,this.ruleNameValid=!1,this.ruleName="",this.ruleType="",this.resetRuleType=new Pe,this.viewRuleFlag=!1,this.viewRuleData={},this.primaryKeyOrder=[{value:!0,display:"At the beginning"},{value:!1,display:"At the end"}],this.addShardIdPrimaryKeyForm=this.fb.group({table:["allTable",de.required],primaryKeyOrder:["",de.required]})}ngOnInit(){this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag&&(this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.viewRuleData&&this.setViewRuleData(this.viewRuleData)}),this.addShardIdPrimaryKeyForm.disable())})}formSubmit(){this.data.applyRule({Name:this.ruleName,Type:"add_shard_id_primary_key",AssociatedObjects:"All Tables",Enabled:!0,Data:{AddedAtTheStart:this.addShardIdPrimaryKeyForm.value.primaryKeyOrder},Id:""}),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}setViewRuleData(e){var i;this.ruleId=null==e?void 0:e.Id,this.addShardIdPrimaryKeyForm.controls.primaryKeyOrder.setValue(null===(i=null==e?void 0:e.Data)||void 0===i?void 0:i.AddedAtTheStart)}deleteRule(){this.data.dropRule(this.ruleId),this.resetRuleType.emit(""),this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Es),b(Ln),b(Ii))},t.\u0275cmp=Ae({type:t,selectors:[["app-add-shard-id-primary-key"]],inputs:{ruleNameValid:"ruleNameValid",ruleName:"ruleName",ruleType:"ruleType"},outputs:{resetRuleType:"resetRuleType"},decls:14,vars:4,consts:[[3,"formGroup"],["appearance","outline"],["matSelect","","formControlName","table","required","true",1,"input-field"],["value","allTable"],["matSelect","","formControlName","primaryKeyOrder","required","true",1,"input-field"],[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],[3,"value"],["mat-raised-button","","color","primary",3,"disabled","click"],["mat-raised-button","","color","primary",3,"click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"mat-form-field",1)(2,"mat-label"),h(3,"Table is"),c(),d(4,"mat-select",2)(5,"mat-option",3),h(6,"All tables"),c()()(),d(7,"mat-form-field",1)(8,"mat-label"),h(9,"Order in Primary Key"),c(),d(10,"mat-select",4),_(11,Nee,2,2,"mat-option",5),c()(),_(12,Lee,3,1,"div",6),_(13,Bee,3,0,"div",6),c()),2&e&&(m("formGroup",i.addShardIdPrimaryKeyForm),f(11),m("ngForOf",i.primaryKeyOrder),f(1),m("ngIf",!i.viewRuleFlag),f(1),m("ngIf",i.viewRuleFlag))},directives:[Hn,Sn,En,Mn,Yi,vn,Xn,fo,_i,si,Et,Ht],styles:[""]}),t})();function jee(t,n){1&t&&(d(0,"mat-option",18),h(1,"Add shard id column as primary key"),c())}function Hee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-edit-global-datatype-form",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}function Uee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-add-index-form",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}function zee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-edit-column-max-length",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}function $ee(t,n){if(1&t){const e=pe();d(0,"div")(1,"app-add-shard-id-primary-key",19),N("resetRuleType",function(){return se(e),D().resetRuleType()}),c()()}if(2&t){const e=D();f(1),m("ruleNameValid",e.ruleForm.valid)("ruleName",e.rulename)("ruleType",e.ruletype)}}let Gee=(()=>{class t{constructor(e,i){this.sidenav=e,this.data=i,this.currentRules=[],this.ruleForm=new an({ruleName:new X("",[de.required,de.pattern("^[a-zA-Z].{0,59}$")]),ruleType:new X("",[de.required])}),this.rulename="",this.ruletype="",this.viewRuleData=[],this.viewRuleFlag=!1,this.shardedMigration=!1}ngOnInit(){this.data.conv.subscribe({next:e=>{Object.keys(e.SpSchema),this.shardedMigration=!!e.IsSharded}}),this.ruleForm.valueChanges.subscribe(()=>{var e,i;this.rulename=null===(e=this.ruleForm.controls.ruleName)||void 0===e?void 0:e.value,this.ruletype=null===(i=this.ruleForm.controls.ruleType)||void 0===i?void 0:i.value}),this.sidenav.displayRuleFlag.subscribe(e=>{this.viewRuleFlag=e,this.viewRuleFlag?this.sidenav.ruleData.subscribe(i=>{this.viewRuleData=i,this.setViewRuleData(this.viewRuleData)}):(this.ruleForm.enable(),this.ruleForm.controls.ruleType.setValue(""),this.sidenav.sidenavRuleType.subscribe(i=>{"addIndex"===i&&this.ruleForm.controls.ruleType.setValue("addIndex")}))})}setViewRuleData(e){var i;this.ruleForm.disable(),this.ruleForm.controls.ruleName.setValue(null==e?void 0:e.Name),this.ruleForm.controls.ruleType.setValue(this.getViewRuleType(null===(i=this.viewRuleData)||void 0===i?void 0:i.Type))}closeSidenav(){this.sidenav.closeSidenav()}get ruleType(){var e;return null===(e=this.ruleForm.get("ruleType"))||void 0===e?void 0:e.value}resetRuleType(){this.ruleForm.controls.ruleType.setValue(""),this.ruleForm.controls.ruleName.setValue(""),this.ruleForm.markAsUntouched()}getViewRuleType(e){switch(e){case"add_index":return"addIndex";case"global_datatype_change":return"globalDataType";case"edit_column_max_length":return"changeMaxLength";case"add_shard_id_primary_key":return"addShardIdPrimaryKey"}return""}}return t.\u0275fac=function(e){return new(e||t)(b(Ii),b(Ln))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-rule"]],inputs:{currentRules:"currentRules"},decls:36,vars:8,consts:[[1,"sidenav"],[1,"sidenav-header"],[1,"header-title"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"sidenav-content"],[3,"formGroup"],["hintLabel","Max. 60 characters, and starts with a letter.","appearance","outline"],["matInput","","formControlName","ruleName",1,"input-field"],["align","end"],["appearance","outline"],["matSelect","","formControlName","ruleType","required","true",1,"input-field"],["ruleType",""],["value","globalDataType"],["value","addIndex"],["value","changeMaxLength"],["value","addShardIdPrimaryKey",4,"ngIf"],[4,"ngIf"],["value","addShardIdPrimaryKey"],[3,"ruleNameValid","ruleName","ruleType","resetRuleType"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3),c(),d(4,"button",3),N("click",function(){return i.closeSidenav()}),d(5,"mat-icon",4),h(6,"close"),c()()(),d(7,"div",5)(8,"form",6)(9,"h3"),h(10,"Rule info"),c(),d(11,"mat-form-field",7)(12,"mat-label"),h(13,"Rule name"),c(),E(14,"input",8),d(15,"mat-hint",9),h(16),c()(),d(17,"h3"),h(18,"Rule definition"),c(),d(19,"mat-form-field",10)(20,"mat-label"),h(21,"Rule type"),c(),d(22,"mat-select",11,12)(24,"mat-option",13),h(25,"Change global data type"),c(),d(26,"mat-option",14),h(27,"Add Index"),c(),d(28,"mat-option",15),h(29,"Change default max column length"),c(),_(30,jee,2,0,"mat-option",16),c()(),E(31,"br"),c(),_(32,Hee,2,3,"div",17),_(33,Uee,2,3,"div",17),_(34,zee,2,3,"div",17),_(35,$ee,2,3,"div",17),c()()),2&e){const o=$t(23);f(3),Ee(i.viewRuleFlag?"View Rule":"Add Rule"),f(5),m("formGroup",i.ruleForm),f(8),Se("",(null==i.ruleForm.value.ruleName?null:i.ruleForm.value.ruleName.length)||0,"/60"),f(14),m("ngIf",i.shardedMigration),f(2),m("ngIf","globalDataType"===o.value),f(1),m("ngIf","addIndex"===o.value),f(1),m("ngIf","changeMaxLength"===o.value),f(1),m("ngIf","addShardIdPrimaryKey"===o.value)}},directives:[Ht,bn,xi,Hn,Sn,En,Mn,ci,Dn,vn,Xn,np,Yi,fo,_i,Et,wee,Iee,Fee,Vee],styles:["mat-form-field[_ngcontent-%COMP%]{padding-bottom:0} .mat-form-field-wrapper{padding-bottom:14px}"]}),t})(),Wee=(()=>{class t{constructor(e,i,o,r){this.fetch=e,this.data=i,this.snack=o,this.sidenav=r,this.errMessage="",this.saveSessionForm=new an({SessionName:new X("",[de.required,de.pattern("^[a-zA-Z][a-zA-Z0-9_ -]{0,59}$")]),EditorName:new X("",[de.required,de.pattern("^[a-zA-Z][a-zA-Z0-9_ -]{0,59}$")]),DatabaseName:new X("",[de.required,de.pattern("^[a-zA-Z][a-zA-Z0-9_-]{0,59}$")]),Notes:new X("")})}saveSession(){var e,i;let o=this.saveSessionForm.value,r={SessionName:o.SessionName.trim(),EditorName:o.EditorName.trim(),DatabaseName:o.DatabaseName.trim(),Notes:""===(null===(e=o.Notes)||void 0===e?void 0:e.trim())||null===o.Notes?[""]:null===(i=o.Notes)||void 0===i?void 0:i.split("\n")};this.fetch.saveSession(r).subscribe({next:s=>{this.data.getAllSessions(),this.snack.openSnackBar("Session saved successfully","Close",5)},error:s=>{this.snack.openSnackBar(s.error,"Close")}}),this.saveSessionForm.reset(),this.saveSessionForm.markAsUntouched(),this.closeSidenav()}ngOnInit(){this.sidenav.sidenavDatabaseName.subscribe({next:e=>{this.saveSessionForm.controls.DatabaseName.setValue(e)}})}closeSidenav(){this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Ln),b(Vo),b(Ii))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-save-session"]],decls:40,vars:5,consts:[[1,"sidenav"],[1,"sidenav-header"],[1,"header-title"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"sidenav-content"],[1,"save-session-form",3,"formGroup"],["hintLabel","Letters, numbers, hyphen, space and underscore allowed. Max. 60 characters, and starts with a letter.","appearance","outline"],["matInput","","placeholder","mysession","type","text","formControlName","SessionName","matTooltip","User can view saved sessions under session history section","matTooltipPosition","above"],["align","end"],["hintLabel","Letters, numbers, hyphen, space and underscore allowed. Max. 60 characters, and starts with a letter.","appearance","outline",1,"full-width"],["matInput","","placeholder","editor name","type","text","formControlName","EditorName"],["hintLabel","Letters, numbers, hyphen and underscores allowed. Max. 60 characters, and starts with a letter.","appearance","outline",1,"full-width"],["matInput","","type","text","formControlName","DatabaseName"],["appearance","outline",1,"full-width"],["rows","7","matInput","","placeholder","added new index","type","text","formControlName","Notes"],[1,"sidenav-footer"],["mat-raised-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3,"Save Session"),c(),d(4,"button",3),N("click",function(){return i.closeSidenav()}),d(5,"mat-icon",4),h(6,"close"),c()()(),d(7,"div",5)(8,"h3"),h(9,"Session Details"),c(),d(10,"form",6)(11,"mat-form-field",7)(12,"mat-label"),h(13,"Session Name"),c(),E(14,"input",8),d(15,"mat-hint",9),h(16),c()(),E(17,"br"),d(18,"mat-form-field",10)(19,"mat-label"),h(20,"Editor Name"),c(),E(21,"input",11),d(22,"mat-hint",9),h(23),c()(),E(24,"br"),d(25,"mat-form-field",12)(26,"mat-label"),h(27,"Database Name"),c(),E(28,"input",13),d(29,"mat-hint",9),h(30),c()(),E(31,"br"),d(32,"mat-form-field",14)(33,"mat-label"),h(34,"Notes"),c(),E(35,"textarea",15),c(),E(36,"br"),c()(),d(37,"div",16)(38,"button",17),N("click",function(){return i.saveSession()}),h(39," Save Session "),c()()()),2&e&&(f(10),m("formGroup",i.saveSessionForm),f(6),Se("",(null==i.saveSessionForm.value.SessionName?null:i.saveSessionForm.value.SessionName.length)||0,"/60"),f(7),Se("",(null==i.saveSessionForm.value.EditorName?null:i.saveSessionForm.value.EditorName.length)||0,"/60"),f(7),Se("",(null==i.saveSessionForm.value.DatabaseName?null:i.saveSessionForm.value.DatabaseName.length)||0,"/60"),f(8),m("disabled",!i.saveSessionForm.valid))},directives:[Ht,bn,xi,Hn,Sn,En,Mn,ci,Dn,vn,Xn,ki,np],styles:[".mat-form-field[_ngcontent-%COMP%]{padding-bottom:10px}"]}),t})();function qee(t,n){1&t&&(d(0,"th",9),h(1,"Column"),c())}function Kee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.ColumnName)}}function Zee(t,n){1&t&&(d(0,"th",9),h(1,"Type"),c())}function Qee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.Type)}}function Yee(t,n){1&t&&(d(0,"th",9),h(1,"Updated Column"),c())}function Xee(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.UpdateColumnName)}}function Jee(t,n){1&t&&(d(0,"th",9),h(1,"Updated Type"),c())}function ete(t,n){if(1&t&&(d(0,"td",10),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.UpdateType)}}function tte(t,n){1&t&&E(0,"tr",11)}function nte(t,n){1&t&&E(0,"tr",12)}let ite=(()=>{class t{constructor(){this.tableChange={InterleaveColumnChanges:[],Table:""},this.dataSource=[],this.displayedColumns=["ColumnName","Type","UpdateColumnName","UpdateType"]}ngOnInit(){}ngOnChanges(e){var i;this.tableChange=(null===(i=e.tableChange)||void 0===i?void 0:i.currentValue)||this.tableChange,this.dataSource=this.tableChange.InterleaveColumnChanges}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Ae({type:t,selectors:[["app-table-column-changes-preview"]],inputs:{tableChange:"tableChange"},features:[nn],decls:15,vars:3,consts:[["mat-table","",1,"object-full-width","margin-bot-1",3,"dataSource"],["matColumnDef","ColumnName"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","Type"],["matColumnDef","UpdateColumnName"],["matColumnDef","UpdateType"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-header-row",""],["mat-row",""]],template:function(e,i){1&e&&(d(0,"table",0),be(1,1),_(2,qee,2,0,"th",2),_(3,Kee,2,1,"td",3),ve(),be(4,4),_(5,Zee,2,0,"th",2),_(6,Qee,2,1,"td",3),ve(),be(7,5),_(8,Yee,2,0,"th",2),_(9,Xee,2,1,"td",3),ve(),be(10,6),_(11,Jee,2,0,"th",2),_(12,ete,2,1,"td",3),ve(),_(13,tte,1,0,"tr",7),_(14,nte,1,0,"tr",8),c()),2&e&&(m("dataSource",i.dataSource),f(13),m("matHeaderRowDef",i.displayedColumns),f(1),m("matRowDefColumns",i.displayedColumns))},directives:[As,Jr,Xr,es,Yr,ts,Ps,Fs,Rs,Ns],styles:[".margin-bot-1[_ngcontent-%COMP%]{margin-bottom:1rem}.mat-header-row[_ngcontent-%COMP%]{background-color:#f5f5f5}.mat-column-ColumnName[_ngcontent-%COMP%], .mat-column-UpdateColumnName[_ngcontent-%COMP%]{width:30%;max-width:30%}.mat-column-Type[_ngcontent-%COMP%], .mat-column-UpdateType[_ngcontent-%COMP%]{width:20%;max-width:20%}.mat-cell[_ngcontent-%COMP%]{padding-right:1rem;word-break:break-all}"]}),t})();function ote(t,n){1&t&&(d(0,"p"),h(1,"Review the DDL changes below."),c())}function rte(t,n){if(1&t&&(d(0,"p"),h(1," Changing an interleaved table will have an impact on the following tables : "),d(2,"b"),h(3),c()()),2&t){const e=D();f(3),Ee(e.tableList)}}function ste(t,n){if(1&t&&(d(0,"div",11)(1,"pre")(2,"code"),h(3),c()()()),2&t){const e=D();f(3),Ee(e.ddl)}}function ate(t,n){if(1&t&&(be(0),d(1,"h4"),h(2),c(),E(3,"app-table-column-changes-preview",14),ve()),2&t){const e=n.$implicit,i=n.index,o=D(2);f(2),Ee(o.tableNames[i]),f(1),m("tableChange",e)}}function lte(t,n){if(1&t&&(d(0,"div",12),_(1,ate,4,2,"ng-container",13),c()),2&t){const e=D();f(1),m("ngForOf",e.tableChanges)}}let cte=(()=>{class t{constructor(e,i,o,r){this.sidenav=e,this.tableUpdatePubSub=i,this.data=o,this.snackbar=r,this.ddl="",this.showDdl=!0,this.tableUpdateData={tableName:"",tableId:"",updateDetail:{UpdateCols:{}}},this.tableChanges=[],this.tableNames=[],this.tableList=""}ngOnInit(){this.tableUpdatePubSub.reviewTableChanges.subscribe(e=>{if(e.Changes&&e.Changes.length>0){this.showDdl=!1,this.tableChanges=e.Changes;const i=[];this.tableList="",this.tableChanges.forEach((o,r)=>{i.push(o.Table),this.tableList+=0==r?o.Table:", "+o.Table}),this.tableList+=".",this.tableNames=i}else this.showDdl=!0,this.ddl=e.DDL}),this.tableUpdatePubSub.tableUpdateDetail.subscribe(e=>{this.tableUpdateData=e})}updateTable(){this.data.updateTable(this.tableUpdateData.tableId,this.tableUpdateData.updateDetail).subscribe({next:e=>{""==e?(this.snackbar.openSnackBar(`Schema changes to table ${this.tableUpdateData.tableName} saved successfully`,"Close",5),0==this.showDdl&&1!=this.tableNames.length&&this.snackbar.openSnackBar(`Schema changes to tables ${this.tableNames[0]} and ${this.tableNames[1]} saved successfully`,"Close",5),this.closeSidenav()):this.snackbar.openSnackBar(e,"Close",5)}})}closeSidenav(){this.ddl="",this.sidenav.closeSidenav()}}return t.\u0275fac=function(e){return new(e||t)(b(Ii),b(Rv),b(Ln),b(Vo))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-review-changes"]],decls:17,vars:4,consts:[[1,"sidenav"],[1,"sidenav-header"],[1,"header-title"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"sidenav-content"],[4,"ngIf"],["class","ddl-display",4,"ngIf"],["class","table-changes-display",4,"ngIf"],[1,"sidenav-footer"],["mat-raised-button","","color","primary",3,"click"],[1,"ddl-display"],[1,"table-changes-display"],[4,"ngFor","ngForOf"],[3,"tableChange"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3,"Review changes to your schema"),c(),d(4,"button",3),N("click",function(){return i.closeSidenav()}),d(5,"mat-icon",4),h(6,"close"),c()()(),E(7,"mat-divider"),d(8,"div",5),_(9,ote,2,0,"p",6),_(10,rte,4,1,"p",6),_(11,ste,4,1,"div",7),_(12,lte,2,1,"div",8),c(),E(13,"mat-divider"),d(14,"div",9)(15,"button",10),N("click",function(){return i.updateTable()}),h(16,"Confirm Conversion"),c()()()),2&e&&(f(9),m("ngIf",i.showDdl),f(1),m("ngIf",!i.showDdl),f(1),m("ngIf",i.showDdl),f(1),m("ngIf",!i.showDdl))},directives:[Ht,bn,uT,Et,si,ite],styles:[".sidenav-content[_ngcontent-%COMP%]{height:82%}.sidenav-content[_ngcontent-%COMP%] .ddl-display[_ngcontent-%COMP%]{height:90%;background-color:#dadada;padding:10px;overflow:auto}.sidenav-content[_ngcontent-%COMP%] .table-changes-display[_ngcontent-%COMP%]{height:90%;overflow:auto}"]}),t})();function dte(t,n){1&t&&(d(0,"th",39),h(1,"Total tables"),c())}function ute(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.total)}}function hte(t,n){1&t&&(d(0,"th",39)(1,"mat-icon",41),h(2," error "),c(),h(3,"Converted with many issues "),c())}function pte(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.bad)}}function fte(t,n){1&t&&(d(0,"th",39)(1,"mat-icon",42),h(2," warning"),c(),h(3,"Conversion some warnings & suggestions "),c())}function mte(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.ok)}}function gte(t,n){1&t&&(d(0,"th",39)(1,"mat-icon",43),h(2," check_circle "),c(),h(3,"100% conversion "),c())}function _te(t,n){if(1&t&&(d(0,"td",40),h(1),c()),2&t){const e=n.$implicit;f(1),Ee(e.good)}}function bte(t,n){1&t&&E(0,"tr",44)}function vte(t,n){1&t&&E(0,"tr",45)}function yte(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function Cte(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function wte(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function Dte(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function Ste(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function Mte(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function xte(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function Tte(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function kte(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function Ete(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,Tte,2,0,"mat-icon",37),_(3,kte,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function Ite(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function Ote(t,n){1&t&&E(0,"tr",44)}function Ate(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function Pte(t,n){1&t&&E(0,"tr",75)}const Kp=function(){return["expandedDetail"]};function Rte(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",46),h(4," error "),c(),h(5," ERRORS "),c()(),d(6,"table",47),be(7,48),_(8,yte,2,0,"th",49),_(9,Cte,2,1,"td",50),ve(),be(10,51),_(11,wte,2,0,"th",52),_(12,Dte,2,1,"td",53),ve(),be(13,54),_(14,Ste,2,0,"th",55),_(15,Mte,2,1,"td",56),ve(),be(16,57),_(17,xte,2,0,"th",58),_(18,Ete,4,2,"td",59),ve(),be(19,60),_(20,Ite,4,3,"td",59),ve(),_(21,Ote,1,0,"tr",34),_(22,Ate,1,2,"tr",61),_(23,Pte,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Errors),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function Fte(t,n){1&t&&E(0,"br")}function Nte(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function Lte(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function Bte(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function Vte(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function jte(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function Hte(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function Ute(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function zte(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function $te(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function Gte(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,zte,2,0,"mat-icon",37),_(3,$te,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function Wte(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function qte(t,n){1&t&&E(0,"tr",44)}function Kte(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function Zte(t,n){1&t&&E(0,"tr",75)}function Qte(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",76),h(4," warning "),c(),h(5," WARNINGS "),c()(),d(6,"table",47),be(7,48),_(8,Nte,2,0,"th",49),_(9,Lte,2,1,"td",50),ve(),be(10,51),_(11,Bte,2,0,"th",52),_(12,Vte,2,1,"td",53),ve(),be(13,54),_(14,jte,2,0,"th",55),_(15,Hte,2,1,"td",56),ve(),be(16,57),_(17,Ute,2,0,"th",58),_(18,Gte,4,2,"td",59),ve(),be(19,60),_(20,Wte,4,3,"td",59),ve(),_(21,qte,1,0,"tr",34),_(22,Kte,1,2,"tr",61),_(23,Zte,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Warnings),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function Yte(t,n){1&t&&E(0,"br")}function Xte(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function Jte(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function ene(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function tne(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function nne(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function ine(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function one(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function rne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function sne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function ane(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,rne,2,0,"mat-icon",37),_(3,sne,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function lne(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function cne(t,n){1&t&&E(0,"tr",44)}function dne(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function une(t,n){1&t&&E(0,"tr",75)}function hne(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",77),h(4," wb_incandescent "),c(),h(5," SUGGESTIONS "),c()(),d(6,"table",47),be(7,48),_(8,Xte,2,0,"th",49),_(9,Jte,2,1,"td",50),ve(),be(10,51),_(11,ene,2,0,"th",52),_(12,tne,2,1,"td",53),ve(),be(13,54),_(14,nne,2,0,"th",55),_(15,ine,2,1,"td",56),ve(),be(16,57),_(17,one,2,0,"th",58),_(18,ane,4,2,"td",59),ve(),be(19,60),_(20,lne,4,3,"td",59),ve(),_(21,cne,1,0,"tr",34),_(22,dne,1,2,"tr",61),_(23,une,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Suggestions),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function pne(t,n){1&t&&E(0,"br")}function fne(t,n){1&t&&(d(0,"th",63),h(1," No. "),c())}function mne(t,n){if(1&t&&(d(0,"td",64),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.position," ")}}function gne(t,n){1&t&&(d(0,"th",65),h(1," Description "),c())}function _ne(t,n){if(1&t&&(d(0,"td",66),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.description," ")}}function bne(t,n){1&t&&(d(0,"th",67),h(1," Table Count "),c())}function vne(t,n){if(1&t&&(d(0,"td",68),h(1),c()),2&t){const e=n.$implicit;f(1),Se(" ",e.tableCount," ")}}function yne(t,n){1&t&&(d(0,"th",69),h(1,"\xa0"),c())}function Cne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_down"),c())}function wne(t,n){1&t&&(d(0,"mat-icon"),h(1,"keyboard_arrow_up"),c())}function Dne(t,n){if(1&t){const e=pe();d(0,"td",70)(1,"button",71),N("click",function(o){const s=se(e).$implicit;return D(2).toggleRow(s),o.stopPropagation()}),_(2,Cne,2,0,"mat-icon",37),_(3,wne,2,0,"mat-icon",37),c()()}if(2&t){const e=n.$implicit,i=D(2);f(2),m("ngIf",!i.isRowExpanded(e)),f(1),m("ngIf",i.isRowExpanded(e))}}function Sne(t,n){if(1&t&&(d(0,"td",70)(1,"div",72)(2,"div",73),h(3),c()()()),2&t){const e=n.$implicit,i=D(2);et("colspan",i.columnsToDisplayWithExpand.length),f(1),m("ngClass",i.isRowExpanded(e)?"expanded":"collapsed"),f(2),Se(" TABLES: ",e.tableNamesJoinedByComma,"")}}function Mne(t,n){1&t&&E(0,"tr",44)}function xne(t,n){if(1&t){const e=pe();d(0,"tr",74),N("click",function(){const r=se(e).$implicit;return D(2).toggleRow(r)}),c()}if(2&t){const e=n.$implicit;rt("example-expanded-row",D(2).isRowExpanded(e))}}function Tne(t,n){1&t&&E(0,"tr",75)}function kne(t,n){if(1&t&&(d(0,"mat-expansion-panel")(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"mat-icon",78),h(4," check_circle "),c(),h(5," NOTES "),c()(),d(6,"table",47),be(7,48),_(8,fne,2,0,"th",49),_(9,mne,2,1,"td",50),ve(),be(10,51),_(11,gne,2,0,"th",52),_(12,_ne,2,1,"td",53),ve(),be(13,54),_(14,bne,2,0,"th",55),_(15,vne,2,1,"td",56),ve(),be(16,57),_(17,yne,2,0,"th",58),_(18,Dne,4,2,"td",59),ve(),be(19,60),_(20,Sne,4,3,"td",59),ve(),_(21,Mne,1,0,"tr",34),_(22,xne,1,2,"tr",61),_(23,Tne,1,0,"tr",62),c()()),2&t){const e=D();f(6),m("dataSource",e.issueTableData_Notes),f(15),m("matHeaderRowDef",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",e.columnsToDisplayWithExpand),f(1),m("matRowDefColumns",Jo(4,Kp))}}function Ene(t,n){1&t&&E(0,"br")}function Ine(t,n){1&t&&(d(0,"div",79)(1,"div",80),hn(),d(2,"svg",81),E(3,"path",82),c()(),Qs(),d(4,"div",83),h(5," Woohoo! No issues or suggestions"),E(6,"br"),h(7,"found. "),c(),E(8,"br"),c())}const Bv=function(t){return{"width.%":t}};let One=(()=>{class t{constructor(e,i,o){this.sidenav=e,this.clickEvent=i,this.fetch=o,this.issueTableData_Errors=[],this.issueTableData_Warnings=[],this.issueTableData_Suggestions=[],this.issueTableData_Notes=[],this.columnsToDisplay=["position","description","tableCount"],this.columnsToDisplayWithExpand=[...this.columnsToDisplay,"expand"],this.expandedElements=new Set,this.srcDbType="",this.connectionDetail="",this.summaryText="",this.issueDescription={},this.conversionRateCount={good:0,ok:0,bad:0},this.conversionRatePercentage={good:0,ok:0,bad:0},this.rateCountDataSource=[],this.rateCountDisplayedColumns=["total","bad","ok","good"],this.ratePcDataSource=[],this.ratePcDisplayedColumns=["bad","ok","good"]}toggleRow(e){this.isRowExpanded(e)?this.expandedElements.delete(e):this.expandedElements.add(e)}isRowExpanded(e){return this.expandedElements.has(e)}ngOnInit(){this.clickEvent.viewAssesment.subscribe(e=>{this.srcDbType=e.srcDbType,this.connectionDetail=e.connectionDetail,this.conversionRateCount=e.conversionRates;let i=this.conversionRateCount.good+this.conversionRateCount.ok+this.conversionRateCount.bad;if(i>0)for(let o in this.conversionRatePercentage)this.conversionRatePercentage[o]=Number((this.conversionRateCount[o]/i*100).toFixed(2));i>0&&this.setRateCountDataSource(i),this.fetch.getDStructuredReport().subscribe({next:o=>{this.summaryText=o.summary.text}}),this.issueTableData={position:0,description:"",tableCount:0,tableNamesJoinedByComma:""},this.fetch.getIssueDescription().subscribe({next:o=>{this.issueDescription=o,this.generateIssueReport()}})})}closeSidenav(){this.sidenav.closeSidenav()}setRateCountDataSource(e){this.rateCountDataSource=[],this.rateCountDataSource.push({total:e,bad:this.conversionRateCount.bad,ok:this.conversionRateCount.ok,good:this.conversionRateCount.good})}downloadStructuredReport(){var e=document.createElement("a");this.fetch.getDStructuredReport().subscribe({next:i=>{let o=JSON.stringify(i).replace(/9223372036854776000/g,"9223372036854775807");e.href="data:text;charset=utf-8,"+encodeURIComponent(o),e.download=`${i.summary.dbName}_migration_structuredReport.json`,e.click()}})}downloadTextReport(){var e=document.createElement("a");this.fetch.getDTextReport().subscribe({next:i=>{let o=this.connectionDetail;e.href="data:text;charset=utf-8,"+encodeURIComponent(i),e.download=`${o}_migration_textReport.txt`,e.click()}})}downloadReports(){let e=new fI;this.fetch.getDStructuredReport().subscribe({next:i=>{let o=i.summary.dbName,r=JSON.stringify(i).replace(/9223372036854776000/g,"9223372036854775807");e.file(o+"_migration_structuredReport.json",r),this.fetch.getDTextReport().subscribe({next:a=>{e.file(o+"_migration_textReport.txt",a),e.generateAsync({type:"blob"}).then(l=>{var u=document.createElement("a");u.href=URL.createObjectURL(l),u.download=`${o}_reports`,u.click()})}})}})}generateIssueReport(){this.fetch.getDStructuredReport().subscribe({next:e=>{let i=e.tableReports;var o={errors:new Map,warnings:new Map,suggestions:new Map,notes:new Map};for(var r of i){let l=r.issues;if(null==l)return this.issueTableData_Errors=[],this.issueTableData_Warnings=[],this.issueTableData_Suggestions=[],void(this.issueTableData_Notes=[]);for(var s of l){let u={tableCount:0,tableNames:new Set};switch(s.issueType){case"Error":case"Errors":this.appendIssueWithTableInformation(s.issueList,o.errors,u,r);break;case"Warnings":case"Warning":this.appendIssueWithTableInformation(s.issueList,o.warnings,u,r);break;case"Suggestion":case"Suggestions":this.appendIssueWithTableInformation(s.issueList,o.suggestions,u,r);break;case"Note":case"Notes":this.appendIssueWithTableInformation(s.issueList,o.notes,u,r)}}}let a=o.warnings;this.issueTableData_Warnings=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Warnings),a=o.errors,this.issueTableData_Errors=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Errors),a=o.suggestions,this.issueTableData_Suggestions=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Suggestions),a=o.notes,this.issueTableData_Notes=[],0!=a.size&&this.populateTableData(a,this.issueTableData_Notes)}})}populateTableData(e,i){let o=1;for(let[r,s]of e.entries()){let a=[...s.tableNames.keys()];i.push({position:o,description:this.issueDescription[r],tableCount:s.tableCount,tableNamesJoinedByComma:a.join(", ")}),o+=1}}appendIssueWithTableInformation(e,i,o,r){for(var s of e)if(i.has(s.category)){let l=i.get(s.category),u={tableNames:new Set(l.tableNames),tableCount:l.tableNames.size};u.tableNames.add(r.srcTableName),u.tableCount=u.tableNames.size,i.set(s.category,u)}else{let l=o;l.tableNames.add(r.srcTableName),l.tableCount=l.tableNames.size,i.set(s.category,l)}}}return t.\u0275fac=function(e){return new(e||t)(b(Ii),b(jo),b(Ei))},t.\u0275cmp=Ae({type:t,selectors:[["app-sidenav-view-assessment"]],decls:87,vars:25,consts:[[1,"sidenav-view-assessment-container"],[1,"sidenav-view-assessment-header"],[1,"mat-h2","header-title"],[1,"btn-source-select"],[1,"reportsButtons"],["mat-raised-button","","color","primary",1,"split-button-left",3,"click"],["mat-raised-button","","color","primary",1,"split-button-right",3,"matMenuTriggerFor"],["aria-hidden","false","aria-label","More options"],["xPosition","before"],["menu","matMenu"],["mat-menu-item","",3,"click"],["mat-icon-button","","color","primary",1,"close-button",3,"click"],[1,"close-icon"],[1,"content"],[1,"summaryHeader"],[1,"databaseName"],[1,"migrationDetails"],[1,"summaryText"],[1,"sidenav-percentage-bar"],[1,"danger-background",3,"ngStyle"],[1,"warning-background",3,"ngStyle"],[1,"success-background",3,"ngStyle"],[1,"sidenav-percentage-indent"],[1,"icon","danger"],[1,"icon","warning"],[1,"icon","success"],[1,"sidenav-title"],["mat-table","",1,"sidenav-conversionByTable",3,"dataSource"],["matColumnDef","total"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","","class","cells",4,"matCellDef"],["matColumnDef","bad",1,"bad"],["matColumnDef","ok"],["matColumnDef","good"],["mat-header-row","",4,"matHeaderRowDef"],["mat-row","",4,"matRowDef","matRowDefColumns"],[1,"issue-report"],[4,"ngIf"],["class","no-issue-container",4,"ngIf"],["mat-header-cell",""],["mat-cell","",1,"cells"],[1,"icon","danger","icon-size","icons"],[1,"icon","warning","icon-size","icons"],[1,"icon","success","icon-size","icons"],["mat-header-row",""],["mat-row",""],["matTooltip","Error: Please resolve them to proceed with the migration","matTooltipPosition","above",1,"danger"],["mat-table","","multiTemplateDataRows","",1,"sidenav-databaseDefinitions",3,"dataSource"],["matColumnDef","position"],["mat-header-cell","","class","mat-position",4,"matHeaderCellDef"],["mat-cell","","class","mat-position",4,"matCellDef"],["matColumnDef","description"],["mat-header-cell","","class","mat-description",4,"matHeaderCellDef"],["mat-cell","","class","mat-description",4,"matCellDef"],["matColumnDef","tableCount"],["mat-header-cell","","class","mat-tableCount",4,"matHeaderCellDef"],["mat-cell","","class","mat-tableCount",4,"matCellDef"],["matColumnDef","expand"],["mat-header-cell","","aria-label","row actions",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","expandedDetail"],["mat-row","","class","example-element-row",3,"example-expanded-row","click",4,"matRowDef","matRowDefColumns"],["mat-row","","class","example-detail-row",4,"matRowDef","matRowDefColumns"],["mat-header-cell","",1,"mat-position"],["mat-cell","",1,"mat-position"],["mat-header-cell","",1,"mat-description"],["mat-cell","",1,"mat-description"],["mat-header-cell","",1,"mat-tableCount"],["mat-cell","",1,"mat-tableCount"],["mat-header-cell","","aria-label","row actions"],["mat-cell",""],["mat-icon-button","","aria-label","expand row",3,"click"],[1,"example-element-detail",3,"ngClass"],[1,"example-element-description"],["mat-row","",1,"example-element-row",3,"click"],["mat-row","",1,"example-detail-row"],["matTooltip","Warning : Changes made because of differences in source and spanner capabilities.","matTooltipPosition","above",1,"warning"],["matTooltip","Suggestion : We highly recommend you make these changes or else it will impact your DB performance.","matTooltipPosition","above",1,"suggestion"],["matTooltip","Note : This is informational and you don't need to do anything.","matTooltipPosition","above",1,"success"],[1,"no-issue-container"],[1,"no-issue-icon-container"],["width","36","height","36","viewBox","0 0 24 20","fill","none","xmlns","http://www.w3.org/2000/svg"],["d","M16.8332 0.69873C16.0051 7.45842 16.2492 9.44782 10.4672 10.2012C16.1511 11.1242 16.2329 13.2059 16.8332 19.7037C17.6237 13.1681 17.4697 11.2106 23.1986 10.2012C17.4247 9.45963 17.6194 7.4505 16.8332 0.69873ZM4.23739 0.872955C3.79064 4.52078 3.92238 5.59467 0.802246 6.00069C3.86944 6.49885 3.91349 7.62218 4.23739 11.1284C4.66397 7.60153 4.581 6.54497 7.67271 6.00069C4.55696 5.60052 4.66178 4.51623 4.23739 0.872955ZM7.36426 11.1105C7.05096 13.6683 7.14331 14.4212 4.95554 14.7061C7.10612 15.0553 7.13705 15.8431 7.36426 18.3017C7.66333 15.8288 7.60521 15.088 9.77298 14.7061C7.58818 14.4255 7.66177 13.6653 7.36426 11.1105Z","fill","#3367D6"],[1,"no-issue-message"]],template:function(e,i){if(1&e&&(d(0,"div",0)(1,"div",1)(2,"span",2),h(3,"Assessment report"),c(),d(4,"div",3)(5,"span",4)(6,"button",5),N("click",function(){return i.downloadReports()}),h(7," DOWNLOAD REPORTS "),c(),d(8,"button",6)(9,"mat-icon",7),h(10,"expand_more"),c()(),d(11,"mat-menu",8,9)(13,"button",10),N("click",function(){return i.downloadTextReport()}),h(14," Download Text Report "),c(),d(15,"button",10),N("click",function(){return i.downloadStructuredReport()}),h(16," Download Structured Report "),c()()(),d(17,"button",11),N("click",function(){return i.closeSidenav()}),d(18,"mat-icon",12),h(19,"close"),c()()()(),d(20,"div",13)(21,"div",14)(22,"p",15),h(23),c(),d(24,"p",16),h(25),d(26,"mat-icon"),h(27,"arrow_right_alt"),c(),h(28," Spanner)"),c()(),d(29,"p",17),h(30),c(),d(31,"mat-card")(32,"div",18),E(33,"div",19)(34,"div",20)(35,"div",21),c(),E(36,"hr")(37,"br"),d(38,"div",22)(39,"span")(40,"mat-icon",23),h(41," circle "),c(),d(42,"span"),h(43," Not a great conversion"),c()(),d(44,"span")(45,"mat-icon",24),h(46," circle "),c(),d(47,"span"),h(48," Converted with warnings"),c()(),d(49,"span")(50,"mat-icon",25),h(51," circle "),c(),d(52,"span"),h(53," Converted automatically"),c()()()(),E(54,"br"),d(55,"h3",26),h(56,"Conversion status by table"),c(),d(57,"table",27),be(58,28),_(59,dte,2,0,"th",29),_(60,ute,2,1,"td",30),ve(),be(61,31),_(62,hte,4,0,"th",29),_(63,pte,2,1,"td",30),ve(),be(64,32),_(65,fte,4,0,"th",29),_(66,mte,2,1,"td",30),ve(),be(67,33),_(68,gte,4,0,"th",29),_(69,_te,2,1,"td",30),ve(),_(70,bte,1,0,"tr",34),_(71,vte,1,0,"tr",35),c(),E(72,"br"),d(73,"h3"),h(74,"Summarized Table Report"),c(),d(75,"div",36),_(76,Rte,24,5,"mat-expansion-panel",37),_(77,Fte,1,0,"br",37),_(78,Qte,24,5,"mat-expansion-panel",37),_(79,Yte,1,0,"br",37),_(80,hne,24,5,"mat-expansion-panel",37),_(81,pne,1,0,"br",37),_(82,kne,24,5,"mat-expansion-panel",37),_(83,Ene,1,0,"br",37),_(84,Ine,9,0,"div",38),E(85,"br"),c(),E(86,"br"),c()()),2&e){const o=$t(12);f(8),m("matMenuTriggerFor",o),f(15),Ee(i.connectionDetail),f(2),Se(" \xa0 (",i.srcDbType," "),f(5),Ee(i.summaryText),f(3),m("ngStyle",Kt(19,Bv,i.conversionRatePercentage.bad)),f(1),m("ngStyle",Kt(21,Bv,i.conversionRatePercentage.ok)),f(1),m("ngStyle",Kt(23,Bv,i.conversionRatePercentage.good)),f(22),m("dataSource",i.rateCountDataSource),f(13),m("matHeaderRowDef",i.rateCountDisplayedColumns),f(1),m("matRowDefColumns",i.rateCountDisplayedColumns),f(5),m("ngIf",i.issueTableData_Errors.length),f(1),m("ngIf",i.issueTableData_Errors.length),f(1),m("ngIf",i.issueTableData_Warnings.length),f(1),m("ngIf",i.issueTableData_Warnings.length),f(1),m("ngIf",i.issueTableData_Suggestions.length),f(1),m("ngIf",i.issueTableData_Suggestions.length),f(1),m("ngIf",i.issueTableData_Notes.length),f(1),m("ngIf",i.issueTableData_Notes.length),f(1),m("ngIf",!(i.issueTableData_Notes.length||i.issueTableData_Suggestions.length||i.issueTableData_Warnings.length||i.issueTableData_Errors.length))}},directives:[Ht,Nl,bn,Fl,Kr,$h,Ug,As,Jr,Xr,es,Yr,ts,Ps,Fs,Rs,Ns,Et,ik,HH,UH,ki,nr],styles:["table.mat-table[_ngcontent-%COMP%]{width:100%}.icon-size[_ngcontent-%COMP%]{font-size:1.2em;text-align:center;margin-top:8px;margin-left:10px;vertical-align:inherit}.mat-header-cell[_ngcontent-%COMP%]{border-style:none}.icons[_ngcontent-%COMP%]{border-left:1px solid #d0cccc;padding-left:10px}.cells[_ngcontent-%COMP%]{text-align:center}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%]{padding:7px 16px;display:flex;flex-direction:row;align-items:center;border-bottom:1px solid #d0cccc;justify-content:space-between}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .header-title[_ngcontent-%COMP%]{margin:0}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .reportsButtons[_ngcontent-%COMP%]{white-space:nowrap}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-left[_ngcontent-%COMP%]{border-top-right-radius:0;border-bottom-right-radius:0}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .split-button-right[_ngcontent-%COMP%]{width:30px!important;min-width:unset!important;padding:0 8px 0 2px;border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px solid #fafafa}.sidenav-view-assessment-container[_ngcontent-%COMP%] .sidenav-view-assessment-header[_ngcontent-%COMP%] .btn-source-select[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{margin-left:1.25px}"]}),t})(),Ane=(()=>{class t{constructor(e,i,o,r,s){this.fetch=e,this.snack=i,this.dataService=o,this.data=r,this.dialogRef=s,this.errMessage="",this.updateConfigForm=new an({GCPProjectID:new X(r.GCPProjectID,[de.required]),SpannerInstanceID:new X(r.SpannerInstanceID,[de.required])}),s.disableClose=!0}updateSpannerConfig(){let e=this.updateConfigForm.value;this.fetch.setSpannerConfig({GCPProjectID:e.GCPProjectID,SpannerInstanceID:e.SpannerInstanceID}).subscribe({next:o=>{o.IsMetadataDbCreated&&this.snack.openSnackBar("Metadata database not found. A new database has been created to store session metadata.","Close",5),this.snack.openSnackBar(o.IsConfigValid?"Spanner Config updated successfully":"Invalid Spanner Configuration","Close",5),this.dialogRef.close(Object.assign({},o)),this.dataService.updateIsOffline(),this.dataService.updateConfig(o),this.dataService.getAllSessions()},error:o=>{this.snack.openSnackBar(o.message,"Close")}})}ngOnInit(){}}return t.\u0275fac=function(e){return new(e||t)(b(Ei),b(Vo),b(Ln),b(Xi),b(Ti))},t.\u0275cmp=Ae({type:t,selectors:[["app-update-spanner-config-form"]],decls:20,vars:3,consts:[["mat-dialog-content",""],[1,"save-session-form",3,"formGroup"],["appearance","outline",1,"full-width"],["matInput","","placeholder","project id","type","text","formControlName","GCPProjectID"],["hintLabel","Min. 2 characters and Max. 64 characters","appearance","outline",1,"full-width"],["matInput","","placeholder","instance id","type","text","required","","minlength","2","maxlength","64","pattern","^[a-z]([-a-z0-9]*[a-z0-9])?","formControlName","SpannerInstanceID"],["align","end"],["mat-dialog-actions","",1,"buttons-container"],["mat-button","","color","primary","mat-dialog-close",""],["mat-button","","type","submit","color","primary",3,"disabled","click"]],template:function(e,i){1&e&&(d(0,"div",0)(1,"form",1)(2,"h2"),h(3,"Connect to Spanner"),c(),d(4,"mat-form-field",2)(5,"mat-label"),h(6,"Project ID"),c(),E(7,"input",3),c(),E(8,"br"),d(9,"mat-form-field",4)(10,"mat-label"),h(11,"Instance ID"),c(),E(12,"input",5),d(13,"mat-hint",6),h(14),c()()()(),d(15,"div",7)(16,"button",8),h(17,"CANCEL"),c(),d(18,"button",9),N("click",function(){return i.updateSpannerConfig()}),h(19," SAVE "),c()()),2&e&&(f(1),m("formGroup",i.updateConfigForm),f(13),Se("",(null==i.updateConfigForm.value.SpannerInstanceID?null:i.updateConfigForm.value.SpannerInstanceID.length)||0,"/64"),f(4),m("disabled",!i.updateConfigForm.valid))},directives:[Dr,xi,Hn,Sn,En,Mn,ci,Dn,vn,Xn,fo,xb,Tb,kb,np,Sr,Ht,Ji],styles:[".mat-form-field[_ngcontent-%COMP%]{width:100%}.buttons-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}"]}),t})();function Pne(t,n){1&t&&(d(0,"mat-icon",11),h(1," warning "),c())}function Rne(t,n){1&t&&(d(0,"mat-icon",12),h(1," check_circle "),c())}function Fne(t,n){1&t&&(d(0,"mat-icon",13),h(1," warning "),c())}function Nne(t,n){1&t&&(d(0,"div")(1,"span",null,14),h(3,"Spanner database is not configured, click on edit button to configure "),c()())}function Lne(t,n){if(1&t&&(d(0,"div")(1,"span",15)(2,"b"),h(3,"Project Id: "),c(),h(4),c(),d(5,"span",16)(6,"b"),h(7,"Spanner Instance Id: "),c(),h(8),c()()),2&t){const e=D();f(4),Ee(e.spannerConfig.GCPProjectID),f(4),Ee(e.spannerConfig.SpannerInstanceID)}}let Bne=(()=>{class t{constructor(e,i,o,r,s){this.data=e,this.dialog=i,this.sidenav=o,this.clickEvent=r,this.loaderService=s,this.isOfflineStatus=!1,this.spannerConfig={GCPProjectID:"",SpannerInstanceID:""}}ngOnInit(){this.data.config.subscribe(e=>{this.spannerConfig=e}),this.data.isOffline.subscribe({next:e=>{this.isOfflineStatus=e}}),this.clickEvent.spannerConfig.subscribe(e=>{e&&this.openEditForm()})}openEditForm(){this.dialog.open(Ane,{width:"30vw",minWidth:"400px",maxWidth:"500px",data:this.spannerConfig}).afterClosed().subscribe(i=>{i&&(this.spannerConfig=i)})}showWarning(){return!this.spannerConfig.GCPProjectID&&!this.spannerConfig.SpannerInstanceID}openInstructionSidenav(){this.sidenav.openSidenav(),this.sidenav.setSidenavComponent("instruction")}openUserGuide(){window.open("https://github.com/GoogleCloudPlatform/spanner-migration-tool/blob/master/SpannerMigrationToolUIUserGuide.pdf","_blank")}stopLoading(){this.loaderService.stopLoader(),this.clickEvent.cancelDbLoading(),this.clickEvent.closeDatabaseLoader()}}return t.\u0275fac=function(e){return new(e||t)(b(Ln),b(wr),b(Ii),b(jo),b(Gp))},t.\u0275cmp=Ae({type:t,selectors:[["app-header"]],decls:16,vars:6,consts:[["color","secondry",1,"header-container"],[1,"pointer",3,"routerLink","click"],[1,"menu-spacer"],[1,"right_container"],[1,"spanner_config"],["class","icon warning","matTooltip","Invalid spanner configuration. Working in offline mode",4,"ngIf"],["class","icon success","matTooltip","Valid spanner configuration.",4,"ngIf"],["class","icon warning","matTooltip","Spanner configuration has not been set.",4,"ngIf"],[4,"ngIf"],["matTooltip","Edit Settings",1,"cursor-pointer",3,"click"],["mat-icon-button","","matTooltip","Instruction",1,"example-icon","favorite-icon",3,"click"],["matTooltip","Invalid spanner configuration. Working in offline mode",1,"icon","warning"],["matTooltip","Valid spanner configuration.",1,"icon","success"],["matTooltip","Spanner configuration has not been set.",1,"icon","warning"],["name",""],[1,"pid"],[1,"iid"]],template:function(e,i){1&e&&(d(0,"mat-toolbar",0)(1,"span",1),N("click",function(){return i.stopLoading()}),h(2," Spanner migration tool"),c(),E(3,"span",2),d(4,"div",3)(5,"div",4),_(6,Pne,2,0,"mat-icon",5),_(7,Rne,2,0,"mat-icon",6),_(8,Fne,2,0,"mat-icon",7),_(9,Nne,4,0,"div",8),_(10,Lne,9,2,"div",8),d(11,"mat-icon",9),N("click",function(){return i.openEditForm()}),h(12,"edit"),c()(),d(13,"button",10),N("click",function(){return i.openUserGuide()}),d(14,"mat-icon"),h(15,"help"),c()()()()),2&e&&(f(1),m("routerLink","/"),f(5),m("ngIf",i.isOfflineStatus&&!i.showWarning()),f(1),m("ngIf",!i.isOfflineStatus&&!i.showWarning()),f(1),m("ngIf",i.showWarning()),f(1),m("ngIf",i.showWarning()),f(1),m("ngIf",!i.showWarning()))},directives:[c6,Bs,Et,bn,ki,Ht],styles:[".header-container[_ngcontent-%COMP%]{padding:0 20px}.menu-spacer[_ngcontent-%COMP%]{flex:1 1 auto}.right_container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%]{margin:0 15px 0 0;display:flex;align-items:center;border-radius:5px;padding:0 10px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:2px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-weight:300;padding:0 10px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] .pid[_ngcontent-%COMP%]{margin-right:10px}.right_container[_ngcontent-%COMP%] .spanner_config[_ngcontent-%COMP%] .pointer[_ngcontent-%COMP%]{cursor:pointer}.cursor-pointer[_ngcontent-%COMP%]{color:#3367d6}"]}),t})();function Vne(t,n){1&t&&(d(0,"div",1),E(1,"mat-progress-bar",2),c())}let jne=(()=>{class t{constructor(e){this.loaderService=e,this.showProgress=!0}ngOnInit(){this.loaderService.isLoading.subscribe(e=>{this.showProgress=e})}}return t.\u0275fac=function(e){return new(e||t)(b(Gp))},t.\u0275cmp=Ae({type:t,selectors:[["app-loader"]],decls:1,vars:1,consts:[["class","progress-bar-wrapper",4,"ngIf"],[1,"progress-bar-wrapper"],["mode","indeterminate","value","40"]],template:function(e,i){1&e&&_(0,Vne,2,0,"div",0),2&e&&m("ngIf",i.showProgress)},directives:[Et,cx],styles:[".progress-bar-wrapper[_ngcontent-%COMP%]{background-color:#cbd0e9;height:2px}.progress-bar-wrapper[_ngcontent-%COMP%] .mat-progress-bar[_ngcontent-%COMP%]{height:2px}"]}),t})();function Hne(t,n){1&t&&E(0,"app-sidenav-rule")}function Une(t,n){1&t&&E(0,"app-sidenav-save-session")}function zne(t,n){1&t&&E(0,"app-sidenav-review-changes")}function $ne(t,n){1&t&&E(0,"app-sidenav-view-assessment")}function Gne(t,n){1&t&&E(0,"app-instruction")}const Wne=function(t,n,e){return{"width-40pc":t,"width-50pc":n,"width-60pc":e}};let qne=(()=>{class t{constructor(e){this.sidenavService=e,this.title="ui",this.showSidenav=!1,this.sidenavComponent=""}ngOnInit(){this.sidenavService.isSidenav.subscribe(e=>{this.showSidenav=e}),this.sidenavService.sidenavComponent.subscribe(e=>{this.sidenavComponent=e})}closeSidenav(){this.showSidenav=!1}}return t.\u0275fac=function(e){return new(e||t)(b(Ii))},t.\u0275cmp=Ae({type:t,selectors:[["app-root"]],decls:14,vars:11,consts:[[1,"sidenav-container",3,"backdropClick"],["position","end","mode","over",3,"opened","ngClass"],["sidenav",""],[4,"ngIf"],[1,"sidenav-content"],[1,"appLoader"],[1,"padding-20"]],template:function(e,i){1&e&&(d(0,"mat-sidenav-container",0),N("backdropClick",function(){return i.closeSidenav()}),d(1,"mat-sidenav",1,2),_(3,Hne,1,0,"app-sidenav-rule",3),_(4,Une,1,0,"app-sidenav-save-session",3),_(5,zne,1,0,"app-sidenav-review-changes",3),_(6,$ne,1,0,"app-sidenav-view-assessment",3),_(7,Gne,1,0,"app-instruction",3),c(),d(8,"mat-sidenav-content",4),E(9,"app-header"),d(10,"div",5),E(11,"app-loader"),c(),d(12,"div",6),E(13,"router-outlet"),c()()()),2&e&&(f(1),m("opened",i.showSidenav)("ngClass",Ew(7,Wne,"rule"===i.sidenavComponent||"saveSession"===i.sidenavComponent,"reviewChanges"===i.sidenavComponent,"assessment"===i.sidenavComponent||"instruction"===i.sidenavComponent)),f(2),m("ngIf","rule"===i.sidenavComponent),f(1),m("ngIf","saveSession"==i.sidenavComponent),f(1),m("ngIf","reviewChanges"==i.sidenavComponent),f(1),m("ngIf","assessment"===i.sidenavComponent),f(1),m("ngIf","instruction"===i.sidenavComponent))},directives:[Zk,Kk,nr,Et,Gee,Wee,cte,One,pI,pv,Bne,jne,Lp],styles:[".padding-20[_ngcontent-%COMP%]{padding:5px 0}.progress-bar-wrapper[_ngcontent-%COMP%]{background-color:#cbd0e9;height:2px}.progress-bar-wrapper[_ngcontent-%COMP%] .mat-progress-bar[_ngcontent-%COMP%], .appLoader[_ngcontent-%COMP%]{height:2px}mat-sidenav[_ngcontent-%COMP%]{width:30%;min-width:350px}.sidenav-container[_ngcontent-%COMP%]{height:100vh}.sidenav-container[_ngcontent-%COMP%] mat-sidenav[_ngcontent-%COMP%]{min-width:350px;border-radius:3px}.width-40pc[_ngcontent-%COMP%]{width:40%}.width-50pc[_ngcontent-%COMP%]{width:50%}.width-60pc[_ngcontent-%COMP%]{width:60%}"]}),t})(),Kne=(()=>{class t{constructor(e){this.loader=e,this.count=0}intercept(e,i){let o=!e.url.includes("/connect");return o&&(this.loader.startLoader(),this.count++),i.handle(e).pipe(X_(()=>{o&&this.count--,0==this.count&&this.loader.stopLoader()}))}}return t.\u0275fac=function(e){return new(e||t)(Q(Gp))},t.\u0275prov=Fe({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Zne=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ot({type:t,bootstrap:[qne]}),t.\u0275inj=it({providers:[{provide:nb,useClass:Kne,multi:!0}],imports:[[pS,gee,XB,lz,R6,nj,vz,Dz,NW,ev]]}),t})();(function P3(){wD=!1})(),H5().bootstrapModule(Zne).catch(t=>console.error(t))},650:Zl=>{Zl.exports=function G(Te,H,R){function A($,q){if(!H[$]){if(!Te[$]){if(x)return x($,!0);var z=new Error("Cannot find module '"+$+"'");throw z.code="MODULE_NOT_FOUND",z}var T=H[$]={exports:{}};Te[$][0].call(T.exports,function(L){return A(Te[$][1][L]||L)},T,T.exports,G,Te,H,R)}return H[$].exports}for(var x=void 0,k=0;k>4,L=1>6:64,S=2>2)+x.charAt(T)+x.charAt(L)+x.charAt(S));return P.join("")},H.decode=function(k){var $,q,U,z,T,L,S=0,P=0,I="data:";if(k.substr(0,I.length)===I)throw new Error("Invalid base64 input, it looks like a data url.");var B,W=3*(k=k.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(k.charAt(k.length-1)===x.charAt(64)&&W--,k.charAt(k.length-2)===x.charAt(64)&&W--,W%1!=0)throw new Error("Invalid base64 input, bad content length.");for(B=A.uint8array?new Uint8Array(0|W):new Array(0|W);S>4,q=(15&z)<<4|(T=x.indexOf(k.charAt(S++)))>>2,U=(3&T)<<6|(L=x.indexOf(k.charAt(S++))),B[P++]=$,64!==T&&(B[P++]=q),64!==L&&(B[P++]=U);return B}},{"./support":30,"./utils":32}],2:[function(G,Te,H){"use strict";var R=G("./external"),A=G("./stream/DataWorker"),x=G("./stream/Crc32Probe"),k=G("./stream/DataLengthProbe");function $(q,U,z,T,L){this.compressedSize=q,this.uncompressedSize=U,this.crc32=z,this.compression=T,this.compressedContent=L}$.prototype={getContentWorker:function(){var q=new A(R.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new k("data_length")),U=this;return q.on("end",function(){if(this.streamInfo.data_length!==U.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),q},getCompressedWorker:function(){return new A(R.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},$.createWorkerFrom=function(q,U,z){return q.pipe(new x).pipe(new k("uncompressedSize")).pipe(U.compressWorker(z)).pipe(new k("compressedSize")).withStreamInfo("compression",U)},Te.exports=$},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(G,Te,H){"use strict";var R=G("./stream/GenericWorker");H.STORE={magic:"\0\0",compressWorker:function(){return new R("STORE compression")},uncompressWorker:function(){return new R("STORE decompression")}},H.DEFLATE=G("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(G,Te,H){"use strict";var R=G("./utils"),A=function(){for(var x,k=[],$=0;$<256;$++){x=$;for(var q=0;q<8;q++)x=1&x?3988292384^x>>>1:x>>>1;k[$]=x}return k}();Te.exports=function(x,k){return void 0!==x&&x.length?"string"!==R.getTypeOf(x)?function($,q,U,z){var T=A,L=0+U;$^=-1;for(var S=0;S>>8^T[255&($^q[S])];return-1^$}(0|k,x,x.length):function($,q,U,z){var T=A,L=0+U;$^=-1;for(var S=0;S>>8^T[255&($^q.charCodeAt(S))];return-1^$}(0|k,x,x.length):0}},{"./utils":32}],5:[function(G,Te,H){"use strict";H.base64=!1,H.binary=!1,H.dir=!1,H.createFolders=!0,H.date=null,H.compression=null,H.compressionOptions=null,H.comment=null,H.unixPermissions=null,H.dosPermissions=null},{}],6:[function(G,Te,H){"use strict";var R;R="undefined"!=typeof Promise?Promise:G("lie"),Te.exports={Promise:R}},{lie:37}],7:[function(G,Te,H){"use strict";var R="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,A=G("pako"),x=G("./utils"),k=G("./stream/GenericWorker"),$=R?"uint8array":"array";function q(U,z){k.call(this,"FlateWorker/"+U),this._pako=null,this._pakoAction=U,this._pakoOptions=z,this.meta={}}H.magic="\b\0",x.inherits(q,k),q.prototype.processChunk=function(U){this.meta=U.meta,null===this._pako&&this._createPako(),this._pako.push(x.transformTo($,U.data),!1)},q.prototype.flush=function(){k.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},q.prototype.cleanUp=function(){k.prototype.cleanUp.call(this),this._pako=null},q.prototype._createPako=function(){this._pako=new A[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var U=this;this._pako.onData=function(z){U.push({data:z,meta:U.meta})}},H.compressWorker=function(U){return new q("Deflate",U)},H.uncompressWorker=function(){return new q("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(G,Te,H){"use strict";function R(T,L){var S,P="";for(S=0;S>>=8;return P}function A(T,L,S,P,I,B){var W,te,J=T.file,ye=T.compression,he=B!==$.utf8encode,Ie=x.transformTo("string",B(J.name)),ue=x.transformTo("string",$.utf8encode(J.name)),Ve=J.comment,at=x.transformTo("string",B(Ve)),j=x.transformTo("string",$.utf8encode(Ve)),fe=ue.length!==J.name.length,w=j.length!==Ve.length,ge="",bt="",Me="",Rt=J.dir,Oe=J.date,Ue={crc32:0,compressedSize:0,uncompressedSize:0};L&&!S||(Ue.crc32=T.crc32,Ue.compressedSize=T.compressedSize,Ue.uncompressedSize=T.uncompressedSize);var ae=0;L&&(ae|=8),he||!fe&&!w||(ae|=2048);var ie,ei,re=0,ut=0;Rt&&(re|=16),"UNIX"===I?(ut=798,re|=(ei=ie=J.unixPermissions,ie||(ei=Rt?16893:33204),(65535&ei)<<16)):(ut=20,re|=function(ie){return 63&(ie||0)}(J.dosPermissions)),W=Oe.getUTCHours(),W<<=6,W|=Oe.getUTCMinutes(),W<<=5,W|=Oe.getUTCSeconds()/2,te=Oe.getUTCFullYear()-1980,te<<=4,te|=Oe.getUTCMonth()+1,te<<=5,te|=Oe.getUTCDate(),fe&&(bt=R(1,1)+R(q(Ie),4)+ue,ge+="up"+R(bt.length,2)+bt),w&&(Me=R(1,1)+R(q(at),4)+j,ge+="uc"+R(Me.length,2)+Me);var qe="";return qe+="\n\0",qe+=R(ae,2),qe+=ye.magic,qe+=R(W,2),qe+=R(te,2),qe+=R(Ue.crc32,4),qe+=R(Ue.compressedSize,4),qe+=R(Ue.uncompressedSize,4),qe+=R(Ie.length,2),qe+=R(ge.length,2),{fileRecord:U.LOCAL_FILE_HEADER+qe+Ie+ge,dirRecord:U.CENTRAL_FILE_HEADER+R(ut,2)+qe+R(at.length,2)+"\0\0\0\0"+R(re,4)+R(P,4)+Ie+ge+at}}var x=G("../utils"),k=G("../stream/GenericWorker"),$=G("../utf8"),q=G("../crc32"),U=G("../signature");function z(T,L,S,P){k.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=L,this.zipPlatform=S,this.encodeFileName=P,this.streamFiles=T,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}x.inherits(z,k),z.prototype.push=function(T){var L=T.meta.percent||0,S=this.entriesCount,P=this._sources.length;this.accumulate?this.contentBuffer.push(T):(this.bytesWritten+=T.data.length,k.prototype.push.call(this,{data:T.data,meta:{currentFile:this.currentFile,percent:S?(L+100*(S-P-1))/S:100}}))},z.prototype.openedSource=function(T){this.currentSourceOffset=this.bytesWritten,this.currentFile=T.file.name;var L=this.streamFiles&&!T.file.dir;if(L){var S=A(T,L,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:S.fileRecord,meta:{percent:0}})}else this.accumulate=!0},z.prototype.closedSource=function(T){this.accumulate=!1;var P,L=this.streamFiles&&!T.file.dir,S=A(T,L,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(S.dirRecord),L)this.push({data:(P=T,U.DATA_DESCRIPTOR+R(P.crc32,4)+R(P.compressedSize,4)+R(P.uncompressedSize,4)),meta:{percent:100}});else for(this.push({data:S.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},z.prototype.flush=function(){for(var T=this.bytesWritten,L=0;L=this.index;k--)$=($<<8)+this.byteAt(k);return this.index+=x,$},readString:function(x){return R.transformTo("string",this.readData(x))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var x=this.readInt(4);return new Date(Date.UTC(1980+(x>>25&127),(x>>21&15)-1,x>>16&31,x>>11&31,x>>5&63,(31&x)<<1))}},Te.exports=A},{"../utils":32}],19:[function(G,Te,H){"use strict";var R=G("./Uint8ArrayReader");function A(x){R.call(this,x)}G("../utils").inherits(A,R),A.prototype.readData=function(x){this.checkOffset(x);var k=this.data.slice(this.zero+this.index,this.zero+this.index+x);return this.index+=x,k},Te.exports=A},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(G,Te,H){"use strict";var R=G("./DataReader");function A(x){R.call(this,x)}G("../utils").inherits(A,R),A.prototype.byteAt=function(x){return this.data.charCodeAt(this.zero+x)},A.prototype.lastIndexOfSignature=function(x){return this.data.lastIndexOf(x)-this.zero},A.prototype.readAndCheckSignature=function(x){return x===this.readData(4)},A.prototype.readData=function(x){this.checkOffset(x);var k=this.data.slice(this.zero+this.index,this.zero+this.index+x);return this.index+=x,k},Te.exports=A},{"../utils":32,"./DataReader":18}],21:[function(G,Te,H){"use strict";var R=G("./ArrayReader");function A(x){R.call(this,x)}G("../utils").inherits(A,R),A.prototype.readData=function(x){if(this.checkOffset(x),0===x)return new Uint8Array(0);var k=this.data.subarray(this.zero+this.index,this.zero+this.index+x);return this.index+=x,k},Te.exports=A},{"../utils":32,"./ArrayReader":17}],22:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("../support"),x=G("./ArrayReader"),k=G("./StringReader"),$=G("./NodeBufferReader"),q=G("./Uint8ArrayReader");Te.exports=function(U){var z=R.getTypeOf(U);return R.checkSupport(z),"string"!==z||A.uint8array?"nodebuffer"===z?new $(U):A.uint8array?new q(R.transformTo("uint8array",U)):new x(R.transformTo("array",U)):new k(U)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(G,Te,H){"use strict";H.LOCAL_FILE_HEADER="PK\x03\x04",H.CENTRAL_FILE_HEADER="PK\x01\x02",H.CENTRAL_DIRECTORY_END="PK\x05\x06",H.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x06\x07",H.ZIP64_CENTRAL_DIRECTORY_END="PK\x06\x06",H.DATA_DESCRIPTOR="PK\x07\b"},{}],24:[function(G,Te,H){"use strict";var R=G("./GenericWorker"),A=G("../utils");function x(k){R.call(this,"ConvertWorker to "+k),this.destType=k}A.inherits(x,R),x.prototype.processChunk=function(k){this.push({data:A.transformTo(this.destType,k.data),meta:k.meta})},Te.exports=x},{"../utils":32,"./GenericWorker":28}],25:[function(G,Te,H){"use strict";var R=G("./GenericWorker"),A=G("../crc32");function x(){R.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}G("../utils").inherits(x,R),x.prototype.processChunk=function(k){this.streamInfo.crc32=A(k.data,this.streamInfo.crc32||0),this.push(k)},Te.exports=x},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("./GenericWorker");function x(k){A.call(this,"DataLengthProbe for "+k),this.propName=k,this.withStreamInfo(k,0)}R.inherits(x,A),x.prototype.processChunk=function(k){k&&(this.streamInfo[this.propName]=(this.streamInfo[this.propName]||0)+k.data.length),A.prototype.processChunk.call(this,k)},Te.exports=x},{"../utils":32,"./GenericWorker":28}],27:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("./GenericWorker");function x(k){A.call(this,"DataWorker");var $=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,k.then(function(q){$.dataIsReady=!0,$.data=q,$.max=q&&q.length||0,$.type=R.getTypeOf(q),$.isPaused||$._tickAndRepeat()},function(q){$.error(q)})}R.inherits(x,A),x.prototype.cleanUp=function(){A.prototype.cleanUp.call(this),this.data=null},x.prototype.resume=function(){return!!A.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,R.delay(this._tickAndRepeat,[],this)),!0)},x.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(R.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},x.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var k=null,$=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":k=this.data.substring(this.index,$);break;case"uint8array":k=this.data.subarray(this.index,$);break;case"array":case"nodebuffer":k=this.data.slice(this.index,$)}return this.index=$,this.push({data:k,meta:{percent:this.max?this.index/this.max*100:0}})},Te.exports=x},{"../utils":32,"./GenericWorker":28}],28:[function(G,Te,H){"use strict";function R(A){this.name=A||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}R.prototype={push:function(A){this.emit("data",A)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(A){this.emit("error",A)}return!0},error:function(A){return!this.isFinished&&(this.isPaused?this.generatedError=A:(this.isFinished=!0,this.emit("error",A),this.previous&&this.previous.error(A),this.cleanUp()),!0)},on:function(A,x){return this._listeners[A].push(x),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(A,x){if(this._listeners[A])for(var k=0;k "+A:A}},Te.exports=R},{}],29:[function(G,Te,H){"use strict";var R=G("../utils"),A=G("./ConvertWorker"),x=G("./GenericWorker"),k=G("../base64"),$=G("../support"),q=G("../external"),U=null;if($.nodestream)try{U=G("../nodejs/NodejsStreamOutputAdapter")}catch(L){}function T(L,S,P){var I=S;switch(S){case"blob":case"arraybuffer":I="uint8array";break;case"base64":I="string"}try{this._internalType=I,this._outputType=S,this._mimeType=P,R.checkSupport(I),this._worker=L.pipe(new A(I)),L.lock()}catch(B){this._worker=new x("error"),this._worker.error(B)}}T.prototype={accumulate:function(L){return function z(L,S){return new q.Promise(function(P,I){var B=[],W=L._internalType,te=L._outputType,J=L._mimeType;L.on("data",function(ye,he){B.push(ye),S&&S(he)}).on("error",function(ye){B=[],I(ye)}).on("end",function(){try{var ye=function(he,Ie,ue){switch(he){case"blob":return R.newBlob(R.transformTo("arraybuffer",Ie),ue);case"base64":return k.encode(Ie);default:return R.transformTo(he,Ie)}}(te,function(he,Ie){var ue,Ve=0,at=null,j=0;for(ue=0;ue>>6:(P<65536?S[W++]=224|P>>>12:(S[W++]=240|P>>>18,S[W++]=128|P>>>12&63),S[W++]=128|P>>>6&63),S[W++]=128|63&P);return S}(T)},H.utf8decode=function(T){return A.nodebuffer?R.transformTo("nodebuffer",T).toString("utf-8"):function(L){var S,P,I,B,W=L.length,te=new Array(2*W);for(S=P=0;S>10&1023,te[P++]=56320|1023&I)}return te.length!==P&&(te.subarray?te=te.subarray(0,P):te.length=P),R.applyFromCharCode(te)}(T=R.transformTo(A.uint8array?"uint8array":"array",T))},R.inherits(U,k),U.prototype.processChunk=function(T){var L=R.transformTo(A.uint8array?"uint8array":"array",T.data);if(this.leftOver&&this.leftOver.length){if(A.uint8array){var S=L;(L=new Uint8Array(S.length+this.leftOver.length)).set(this.leftOver,0),L.set(S,this.leftOver.length)}else L=this.leftOver.concat(L);this.leftOver=null}var P=function(B,W){var te;for((W=W||B.length)>B.length&&(W=B.length),te=W-1;0<=te&&128==(192&B[te]);)te--;return te<0||0===te?W:te+$[B[te]]>W?te:W}(L),I=L;P!==L.length&&(A.uint8array?(I=L.subarray(0,P),this.leftOver=L.subarray(P,L.length)):(I=L.slice(0,P),this.leftOver=L.slice(P,L.length))),this.push({data:H.utf8decode(I),meta:T.meta})},U.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:H.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},H.Utf8DecodeWorker=U,R.inherits(z,k),z.prototype.processChunk=function(T){this.push({data:H.utf8encode(T.data),meta:T.meta})},H.Utf8EncodeWorker=z},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(G,Te,H){"use strict";var R=G("./support"),A=G("./base64"),x=G("./nodejsUtils"),k=G("./external");function $(S){return S}function q(S,P){for(var I=0;I>8;this.dir=!!(16&this.externalFileAttributes),0==T&&(this.dosPermissions=63&this.externalFileAttributes),3==T&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var T=R(this.extraFields[1].value);this.uncompressedSize===A.MAX_VALUE_32BITS&&(this.uncompressedSize=T.readInt(8)),this.compressedSize===A.MAX_VALUE_32BITS&&(this.compressedSize=T.readInt(8)),this.localHeaderOffset===A.MAX_VALUE_32BITS&&(this.localHeaderOffset=T.readInt(8)),this.diskNumberStart===A.MAX_VALUE_32BITS&&(this.diskNumberStart=T.readInt(4))}},readExtraFields:function(T){var L,S,P,I=T.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});T.index+4>>6:(T<65536?z[P++]=224|T>>>12:(z[P++]=240|T>>>18,z[P++]=128|T>>>12&63),z[P++]=128|T>>>6&63),z[P++]=128|63&T);return z},H.buf2binstring=function(U){return q(U,U.length)},H.binstring2buf=function(U){for(var z=new R.Buf8(U.length),T=0,L=z.length;T>10&1023,B[L++]=56320|1023&S)}return q(B,L)},H.utf8border=function(U,z){var T;for((z=z||U.length)>U.length&&(z=U.length),T=z-1;0<=T&&128==(192&U[T]);)T--;return T<0||0===T?z:T+k[U[T]]>z?T:z}},{"./common":41}],43:[function(G,Te,H){"use strict";Te.exports=function(R,A,x,k){for(var $=65535&R|0,q=R>>>16&65535|0,U=0;0!==x;){for(x-=U=2e3>>1:A>>>1;x[k]=A}return x}();Te.exports=function(A,x,k,$){var q=R,U=$+k;A^=-1;for(var z=$;z>>8^q[255&(A^x[z])];return-1^A}},{}],46:[function(G,Te,H){"use strict";var R,A=G("../utils/common"),x=G("./trees"),k=G("./adler32"),$=G("./crc32"),q=G("./messages"),L=-2,Ve=258,at=262;function Rt(y,me){return y.msg=q[me],me}function Oe(y){return(y<<1)-(4y.avail_out&&(ce=y.avail_out),0!==ce&&(A.arraySet(y.output,me.pending_buf,me.pending_out,ce,y.next_out),y.next_out+=ce,me.pending_out+=ce,y.total_out+=ce,y.avail_out-=ce,me.pending-=ce,0===me.pending&&(me.pending_out=0))}function re(y,me){x._tr_flush_block(y,0<=y.block_start?y.block_start:-1,y.strstart-y.block_start,me),y.block_start=y.strstart,ae(y.strm)}function ut(y,me){y.pending_buf[y.pending++]=me}function qe(y,me){y.pending_buf[y.pending++]=me>>>8&255,y.pending_buf[y.pending++]=255&me}function ie(y,me){var ce,F,O=y.max_chain_length,Z=y.strstart,we=y.prev_length,xe=y.nice_match,ne=y.strstart>y.w_size-at?y.strstart-(y.w_size-at):0,Re=y.window,Ke=y.w_mask,Be=y.prev,lt=y.strstart+Ve,Xt=Re[Z+we-1],Lt=Re[Z+we];y.prev_length>=y.good_match&&(O>>=2),xe>y.lookahead&&(xe=y.lookahead);do{if(Re[(ce=me)+we]===Lt&&Re[ce+we-1]===Xt&&Re[ce]===Re[Z]&&Re[++ce]===Re[Z+1]){Z+=2,ce++;do{}while(Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Re[++Z]===Re[++ce]&&Zne&&0!=--O);return we<=y.lookahead?we:y.lookahead}function yn(y){var me,ce,F,O,Z,we,xe,ne,Re,Ke,Be=y.w_size;do{if(O=y.window_size-y.lookahead-y.strstart,y.strstart>=Be+(Be-at)){for(A.arraySet(y.window,y.window,Be,Be,0),y.match_start-=Be,y.strstart-=Be,y.block_start-=Be,me=ce=y.hash_size;F=y.head[--me],y.head[me]=Be<=F?F-Be:0,--ce;);for(me=ce=Be;F=y.prev[--me],y.prev[me]=Be<=F?F-Be:0,--ce;);O+=Be}if(0===y.strm.avail_in)break;if(xe=y.window,ne=y.strstart+y.lookahead,Ke=void 0,(Re=O)<(Ke=(we=y.strm).avail_in)&&(Ke=Re),ce=0===Ke?0:(we.avail_in-=Ke,A.arraySet(xe,we.input,we.next_in,Ke,ne),1===we.state.wrap?we.adler=k(we.adler,xe,Ke,ne):2===we.state.wrap&&(we.adler=$(we.adler,xe,Ke,ne)),we.next_in+=Ke,we.total_in+=Ke,Ke),y.lookahead+=ce,y.lookahead+y.insert>=3)for(y.ins_h=y.window[Z=y.strstart-y.insert],y.ins_h=(y.ins_h<=3&&(y.ins_h=(y.ins_h<=3)if(F=x._tr_tally(y,y.strstart-y.match_start,y.match_length-3),y.lookahead-=y.match_length,y.match_length<=y.max_lazy_match&&y.lookahead>=3){for(y.match_length--;y.strstart++,y.ins_h=(y.ins_h<=3&&(y.ins_h=(y.ins_h<=3&&y.match_length<=y.prev_length){for(O=y.strstart+y.lookahead-3,F=x._tr_tally(y,y.strstart-1-y.prev_match,y.prev_length-3),y.lookahead-=y.prev_length-1,y.prev_length-=2;++y.strstart<=O&&(y.ins_h=(y.ins_h<y.pending_buf_size-5&&(ce=y.pending_buf_size-5);;){if(y.lookahead<=1){if(yn(y),0===y.lookahead&&0===me)return 1;if(0===y.lookahead)break}y.strstart+=y.lookahead,y.lookahead=0;var F=y.block_start+ce;if((0===y.strstart||y.strstart>=F)&&(y.lookahead=y.strstart-F,y.strstart=F,re(y,!1),0===y.strm.avail_out)||y.strstart-y.block_start>=y.w_size-at&&(re(y,!1),0===y.strm.avail_out))return 1}return y.insert=0,4===me?(re(y,!0),0===y.strm.avail_out?3:4):(y.strstart>y.block_start&&re(y,!1),1)}),new st(4,4,8,4,ei),new st(4,5,16,8,ei),new st(4,6,32,32,ei),new st(4,4,16,16,nt),new st(8,16,32,32,nt),new st(8,16,128,128,nt),new st(8,32,128,256,nt),new st(32,128,258,1024,nt),new st(32,258,258,4096,nt)],H.deflateInit=function(y,me){return to(y,me,8,15,8,0)},H.deflateInit2=to,H.deflateReset=ji,H.deflateResetKeep=je,H.deflateSetHeader=function(y,me){return y&&y.state?2!==y.state.wrap?L:(y.state.gzhead=me,0):L},H.deflate=function(y,me){var ce,F,O,Z;if(!y||!y.state||5>8&255),ut(F,F.gzhead.time>>16&255),ut(F,F.gzhead.time>>24&255),ut(F,9===F.level?2:2<=F.strategy||F.level<2?4:0),ut(F,255&F.gzhead.os),F.gzhead.extra&&F.gzhead.extra.length&&(ut(F,255&F.gzhead.extra.length),ut(F,F.gzhead.extra.length>>8&255)),F.gzhead.hcrc&&(y.adler=$(y.adler,F.pending_buf,F.pending,0)),F.gzindex=0,F.status=69):(ut(F,0),ut(F,0),ut(F,0),ut(F,0),ut(F,0),ut(F,9===F.level?2:2<=F.strategy||F.level<2?4:0),ut(F,3),F.status=113);else{var we=8+(F.w_bits-8<<4)<<8;we|=(2<=F.strategy||F.level<2?0:F.level<6?1:6===F.level?2:3)<<6,0!==F.strstart&&(we|=32),we+=31-we%31,F.status=113,qe(F,we),0!==F.strstart&&(qe(F,y.adler>>>16),qe(F,65535&y.adler)),y.adler=1}if(69===F.status)if(F.gzhead.extra){for(O=F.pending;F.gzindex<(65535&F.gzhead.extra.length)&&(F.pending!==F.pending_buf_size||(F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),ae(y),O=F.pending,F.pending!==F.pending_buf_size));)ut(F,255&F.gzhead.extra[F.gzindex]),F.gzindex++;F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),F.gzindex===F.gzhead.extra.length&&(F.gzindex=0,F.status=73)}else F.status=73;if(73===F.status)if(F.gzhead.name){O=F.pending;do{if(F.pending===F.pending_buf_size&&(F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),ae(y),O=F.pending,F.pending===F.pending_buf_size)){Z=1;break}Z=F.gzindexO&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),0===Z&&(F.gzindex=0,F.status=91)}else F.status=91;if(91===F.status)if(F.gzhead.comment){O=F.pending;do{if(F.pending===F.pending_buf_size&&(F.gzhead.hcrc&&F.pending>O&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),ae(y),O=F.pending,F.pending===F.pending_buf_size)){Z=1;break}Z=F.gzindexO&&(y.adler=$(y.adler,F.pending_buf,F.pending-O,O)),0===Z&&(F.status=103)}else F.status=103;if(103===F.status&&(F.gzhead.hcrc?(F.pending+2>F.pending_buf_size&&ae(y),F.pending+2<=F.pending_buf_size&&(ut(F,255&y.adler),ut(F,y.adler>>8&255),y.adler=0,F.status=113)):F.status=113),0!==F.pending){if(ae(y),0===y.avail_out)return F.last_flush=-1,0}else if(0===y.avail_in&&Oe(me)<=Oe(ce)&&4!==me)return Rt(y,-5);if(666===F.status&&0!==y.avail_in)return Rt(y,-5);if(0!==y.avail_in||0!==F.lookahead||0!==me&&666!==F.status){var xe=2===F.strategy?function(ne,Re){for(var Ke;;){if(0===ne.lookahead&&(yn(ne),0===ne.lookahead)){if(0===Re)return 1;break}if(ne.match_length=0,Ke=x._tr_tally(ne,0,ne.window[ne.strstart]),ne.lookahead--,ne.strstart++,Ke&&(re(ne,!1),0===ne.strm.avail_out))return 1}return ne.insert=0,4===Re?(re(ne,!0),0===ne.strm.avail_out?3:4):ne.last_lit&&(re(ne,!1),0===ne.strm.avail_out)?1:2}(F,me):3===F.strategy?function(ne,Re){for(var Ke,Be,lt,Xt,Lt=ne.window;;){if(ne.lookahead<=Ve){if(yn(ne),ne.lookahead<=Ve&&0===Re)return 1;if(0===ne.lookahead)break}if(ne.match_length=0,ne.lookahead>=3&&0ne.lookahead&&(ne.match_length=ne.lookahead)}if(ne.match_length>=3?(Ke=x._tr_tally(ne,1,ne.match_length-3),ne.lookahead-=ne.match_length,ne.strstart+=ne.match_length,ne.match_length=0):(Ke=x._tr_tally(ne,0,ne.window[ne.strstart]),ne.lookahead--,ne.strstart++),Ke&&(re(ne,!1),0===ne.strm.avail_out))return 1}return ne.insert=0,4===Re?(re(ne,!0),0===ne.strm.avail_out?3:4):ne.last_lit&&(re(ne,!1),0===ne.strm.avail_out)?1:2}(F,me):R[F.level].func(F,me);if(3!==xe&&4!==xe||(F.status=666),1===xe||3===xe)return 0===y.avail_out&&(F.last_flush=-1),0;if(2===xe&&(1===me?x._tr_align(F):5!==me&&(x._tr_stored_block(F,0,0,!1),3===me&&(Ue(F.head),0===F.lookahead&&(F.strstart=0,F.block_start=0,F.insert=0))),ae(y),0===y.avail_out))return F.last_flush=-1,0}return 4!==me?0:F.wrap<=0?1:(2===F.wrap?(ut(F,255&y.adler),ut(F,y.adler>>8&255),ut(F,y.adler>>16&255),ut(F,y.adler>>24&255),ut(F,255&y.total_in),ut(F,y.total_in>>8&255),ut(F,y.total_in>>16&255),ut(F,y.total_in>>24&255)):(qe(F,y.adler>>>16),qe(F,65535&y.adler)),ae(y),0=ce.w_size&&(0===Z&&(Ue(ce.head),ce.strstart=0,ce.block_start=0,ce.insert=0),Re=new A.Buf8(ce.w_size),A.arraySet(Re,me,Ke-ce.w_size,ce.w_size,0),me=Re,Ke=ce.w_size),we=y.avail_in,xe=y.next_in,ne=y.input,y.avail_in=Ke,y.next_in=0,y.input=me,yn(ce);ce.lookahead>=3;){for(F=ce.strstart,O=ce.lookahead-2;ce.ins_h=(ce.ins_h<>>=ue=Ie>>>24,W-=ue,0==(ue=Ie>>>16&255))ge[q++]=65535&Ie;else{if(!(16&ue)){if(0==(64&ue)){Ie=te[(65535&Ie)+(B&(1<>>=ue,W-=ue),W<15&&(B+=w[k++]<>>=ue=Ie>>>24,W-=ue,!(16&(ue=Ie>>>16&255))){if(0==(64&ue)){Ie=J[(65535&Ie)+(B&(1<>>=ue,W-=ue,(ue=q-U)>3,B&=(1<<(W-=Ve<<3))-1,R.next_in=k,R.next_out=q,R.avail_in=k<$?$-k+5:5-(k-$),R.avail_out=q>>24&255)+(j>>>8&65280)+((65280&j)<<8)+((255&j)<<24)}function B(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new R.Buf16(320),this.work=new R.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function W(j){var fe;return j&&j.state?(j.total_in=j.total_out=(fe=j.state).total=0,j.msg="",fe.wrap&&(j.adler=1&fe.wrap),fe.mode=1,fe.last=0,fe.havedict=0,fe.dmax=32768,fe.head=null,fe.hold=0,fe.bits=0,fe.lencode=fe.lendyn=new R.Buf32(852),fe.distcode=fe.distdyn=new R.Buf32(592),fe.sane=1,fe.back=-1,0):T}function te(j){var fe;return j&&j.state?((fe=j.state).wsize=0,fe.whave=0,fe.wnext=0,W(j)):T}function J(j,fe){var w,ge;return j&&j.state?(ge=j.state,fe<0?(w=0,fe=-fe):(w=1+(fe>>4),fe<48&&(fe&=15)),fe&&(fe<8||15=Me.wsize?(R.arraySet(Me.window,fe,w-Me.wsize,Me.wsize,0),Me.wnext=0,Me.whave=Me.wsize):(ge<(bt=Me.wsize-Me.wnext)&&(bt=ge),R.arraySet(Me.window,fe,w-ge,bt,Me.wnext),(ge-=bt)?(R.arraySet(Me.window,fe,w-ge,ge,0),Me.wnext=ge,Me.whave=Me.wsize):(Me.wnext+=bt,Me.wnext===Me.wsize&&(Me.wnext=0),Me.whave>>8&255,w.check=x(w.check,Z,2,0),re=ae=0,w.mode=2;break}if(w.flags=0,w.head&&(w.head.done=!1),!(1&w.wrap)||(((255&ae)<<8)+(ae>>8))%31){j.msg="incorrect header check",w.mode=30;break}if(8!=(15&ae)){j.msg="unknown compression method",w.mode=30;break}if(re-=4,y=8+(15&(ae>>>=4)),0===w.wbits)w.wbits=y;else if(y>w.wbits){j.msg="invalid window size",w.mode=30;break}w.dmax=1<>8&1),512&w.flags&&(Z[0]=255&ae,Z[1]=ae>>>8&255,w.check=x(w.check,Z,2,0)),re=ae=0,w.mode=3;case 3:for(;re<32;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>8&255,Z[2]=ae>>>16&255,Z[3]=ae>>>24&255,w.check=x(w.check,Z,4,0)),re=ae=0,w.mode=4;case 4:for(;re<16;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>8),512&w.flags&&(Z[0]=255&ae,Z[1]=ae>>>8&255,w.check=x(w.check,Z,2,0)),re=ae=0,w.mode=5;case 5:if(1024&w.flags){for(;re<16;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>8&255,w.check=x(w.check,Z,2,0)),re=ae=0}else w.head&&(w.head.extra=null);w.mode=6;case 6:if(1024&w.flags&&(Oe<(ie=w.length)&&(ie=Oe),ie&&(w.head&&(y=w.head.extra_len-w.length,w.head.extra||(w.head.extra=new Array(w.head.extra_len)),R.arraySet(w.head.extra,ge,Me,ie,y)),512&w.flags&&(w.check=x(w.check,ge,ie,Me)),Oe-=ie,Me+=ie,w.length-=ie),w.length))break e;w.length=0,w.mode=7;case 7:if(2048&w.flags){if(0===Oe)break e;for(ie=0;y=ge[Me+ie++],w.head&&y&&w.length<65536&&(w.head.name+=String.fromCharCode(y)),y&&ie>9&1,w.head.done=!0),j.adler=w.check=0,w.mode=12;break;case 10:for(;re<32;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=7&re,re-=7&re,w.mode=27;break}for(;re<3;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=1)){case 0:w.mode=14;break;case 1:if(Ve(w),w.mode=20,6!==fe)break;ae>>>=2,re-=2;break e;case 2:w.mode=17;break;case 3:j.msg="invalid block type",w.mode=30}ae>>>=2,re-=2;break;case 14:for(ae>>>=7&re,re-=7&re;re<32;){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>16^65535)){j.msg="invalid stored block lengths",w.mode=30;break}if(w.length=65535&ae,re=ae=0,w.mode=15,6===fe)break e;case 15:w.mode=16;case 16:if(ie=w.length){if(Oe>>=5)),re-=5,w.ncode=4+(15&(ae>>>=5)),ae>>>=4,re-=4,286>>=3,re-=3}for(;w.have<19;)w.lens[we[w.have++]]=0;if(w.lencode=w.lendyn,w.lenbits=7,me=$(0,w.lens,0,19,w.lencode,0,w.work,ce={bits:w.lenbits}),w.lenbits=ce.bits,me){j.msg="invalid code lengths set",w.mode=30;break}w.have=0,w.mode=19;case 19:for(;w.have>>16&255,zn=65535&O,!((nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=nt,re-=nt,w.lens[w.have++]=zn;else{if(16===zn){for(F=nt+2;re>>=nt,re-=nt,0===w.have){j.msg="invalid bit length repeat",w.mode=30;break}y=w.lens[w.have-1],ie=3+(3&ae),ae>>>=2,re-=2}else if(17===zn){for(F=nt+3;re>>=nt)),ae>>>=3,re-=3}else{for(F=nt+7;re>>=nt)),ae>>>=7,re-=7}if(w.have+ie>w.nlen+w.ndist){j.msg="invalid bit length repeat",w.mode=30;break}for(;ie--;)w.lens[w.have++]=y}}if(30===w.mode)break;if(0===w.lens[256]){j.msg="invalid code -- missing end-of-block",w.mode=30;break}if(w.lenbits=9,me=$(1,w.lens,0,w.nlen,w.lencode,0,w.work,ce={bits:w.lenbits}),w.lenbits=ce.bits,me){j.msg="invalid literal/lengths set",w.mode=30;break}if(w.distbits=6,w.distcode=w.distdyn,me=$(2,w.lens,w.nlen,w.ndist,w.distcode,0,w.work,ce={bits:w.distbits}),w.distbits=ce.bits,me){j.msg="invalid distances set",w.mode=30;break}if(w.mode=20,6===fe)break e;case 20:w.mode=21;case 21:if(6<=Oe&&258<=Ue){j.next_out=Rt,j.avail_out=Ue,j.next_in=Me,j.avail_in=Oe,w.hold=ae,w.bits=re,k(j,qe),Rt=j.next_out,bt=j.output,Ue=j.avail_out,Me=j.next_in,ge=j.input,Oe=j.avail_in,ae=w.hold,re=w.bits,12===w.mode&&(w.back=-1);break}for(w.back=0;st=(O=w.lencode[ae&(1<>>16&255,zn=65535&O,!((nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>je)])>>>16&255,zn=65535&O,!(je+(nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=je,re-=je,w.back+=je}if(ae>>>=nt,re-=nt,w.back+=nt,w.length=zn,0===st){w.mode=26;break}if(32&st){w.back=-1,w.mode=12;break}if(64&st){j.msg="invalid literal/length code",w.mode=30;break}w.extra=15&st,w.mode=22;case 22:if(w.extra){for(F=w.extra;re>>=w.extra,re-=w.extra,w.back+=w.extra}w.was=w.length,w.mode=23;case 23:for(;st=(O=w.distcode[ae&(1<>>16&255,zn=65535&O,!((nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>je)])>>>16&255,zn=65535&O,!(je+(nt=O>>>24)<=re);){if(0===Oe)break e;Oe--,ae+=ge[Me++]<>>=je,re-=je,w.back+=je}if(ae>>>=nt,re-=nt,w.back+=nt,64&st){j.msg="invalid distance code",w.mode=30;break}w.offset=zn,w.extra=15&st,w.mode=24;case 24:if(w.extra){for(F=w.extra;re>>=w.extra,re-=w.extra,w.back+=w.extra}if(w.offset>w.dmax){j.msg="invalid distance too far back",w.mode=30;break}w.mode=25;case 25:if(0===Ue)break e;if(w.offset>(ie=qe-Ue)){if((ie=w.offset-ie)>w.whave&&w.sane){j.msg="invalid distance too far back",w.mode=30;break}yn=ie>w.wnext?w.wsize-(ie-=w.wnext):w.wnext-ie,ie>w.length&&(ie=w.length),ei=w.window}else ei=bt,yn=Rt-w.offset,ie=w.length;for(Uehe?(ue=yn[ei+P[fe]],re[ut+P[fe]]):(ue=96,0),B=1<>Rt)+(W-=B)]=Ie<<24|ue<<16|Ve|0,0!==W;);for(B=1<>=1;if(0!==B?(ae&=B-1,ae+=B):ae=0,fe++,0==--qe[j]){if(j===ge)break;j=U[z+P[fe]]}if(bt>>7)]}function ut(O,Z){O.pending_buf[O.pending++]=255&Z,O.pending_buf[O.pending++]=Z>>>8&255}function qe(O,Z,we){O.bi_valid>16-we?(O.bi_buf|=Z<>16-O.bi_valid,O.bi_valid+=we-16):(O.bi_buf|=Z<>>=1,we<<=1,0<--Z;);return we>>>1}function ei(O,Z,we){var xe,ne,Re=new Array(16),Ke=0;for(xe=1;xe<=P;xe++)Re[xe]=Ke=Ke+we[xe-1]<<1;for(ne=0;ne<=Z;ne++){var Be=O[2*ne+1];0!==Be&&(O[2*ne]=yn(Re[Be]++,Be))}}function nt(O){var Z;for(Z=0;Z>1;1<=we;we--)je(O,Re,we);for(ne=lt;we=O.heap[1],O.heap[1]=O.heap[O.heap_len--],je(O,Re,1),xe=O.heap[1],O.heap[--O.heap_max]=we,O.heap[--O.heap_max]=xe,Re[2*ne]=Re[2*we]+Re[2*xe],O.depth[ne]=(O.depth[we]>=O.depth[xe]?O.depth[we]:O.depth[xe])+1,Re[2*we+1]=Re[2*xe+1]=ne,O.heap[1]=ne++,je(O,Re,1),2<=O.heap_len;);O.heap[--O.heap_max]=O.heap[1],function(Lt,Hi){var zs,yo,Ui,Cn,xa,Ta,Ho=Hi.dyn_tree,Ud=Hi.max_code,Zp=Hi.stat_desc.static_tree,Qp=Hi.stat_desc.has_stree,Yp=Hi.stat_desc.extra_bits,zd=Hi.stat_desc.extra_base,$s=Hi.stat_desc.max_length,ka=0;for(Cn=0;Cn<=P;Cn++)Lt.bl_count[Cn]=0;for(Ho[2*Lt.heap[Lt.heap_max]+1]=0,zs=Lt.heap_max+1;zs<573;zs++)$s<(Cn=Ho[2*Ho[2*(yo=Lt.heap[zs])+1]+1]+1)&&(Cn=$s,ka++),Ho[2*yo+1]=Cn,Ud>=7;ne>>=1)if(1&Xt&&0!==Be.dyn_ltree[2*lt])return 0;if(0!==Be.dyn_ltree[18]||0!==Be.dyn_ltree[20]||0!==Be.dyn_ltree[26])return 1;for(lt=32;lt>>3)<=(ne=O.opt_len+3+7>>>3)&&(ne=Re)):ne=Re=we+5,we+4<=ne&&-1!==Z?F(O,Z,we,xe):4===O.strategy||Re===ne?(qe(O,2+(xe?1:0),3),ji(O,at,j)):(qe(O,4+(xe?1:0),3),function(Be,lt,Xt,Lt){var Hi;for(qe(Be,lt-257,5),qe(Be,Xt-1,5),qe(Be,Lt-4,4),Hi=0;Hi>>8&255,O.pending_buf[O.d_buf+2*O.last_lit+1]=255&Z,O.pending_buf[O.l_buf+O.last_lit]=255&we,O.last_lit++,0===Z?O.dyn_ltree[2*we]++:(O.matches++,Z--,O.dyn_ltree[2*(w[we]+U+1)]++,O.dyn_dtree[2*re(Z)]++),O.last_lit===O.lit_bufsize-1},H._tr_align=function(O){var Z;qe(O,2,3),ie(O,256,at),16===(Z=O).bi_valid?(ut(Z,Z.bi_buf),Z.bi_buf=0,Z.bi_valid=0):8<=Z.bi_valid&&(Z.pending_buf[Z.pending++]=255&Z.bi_buf,Z.bi_buf>>=8,Z.bi_valid-=8)}},{"../utils/common":41}],53:[function(G,Te,H){"use strict";Te.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(G,Te,H){(function(R){!function(A,x){"use strict";if(!A.setImmediate){var k,$,q,U,z=1,T={},L=!1,S=A.document,P=Object.getPrototypeOf&&Object.getPrototypeOf(A);P=P&&P.setTimeout?P:A,k="[object process]"==={}.toString.call(A.process)?function(te){process.nextTick(function(){B(te)})}:function(){if(A.postMessage&&!A.importScripts){var te=!0,J=A.onmessage;return A.onmessage=function(){te=!1},A.postMessage("","*"),A.onmessage=J,te}}()?(U="setImmediate$"+Math.random()+"$",A.addEventListener?A.addEventListener("message",W,!1):A.attachEvent("onmessage",W),function(te){A.postMessage(U+te,"*")}):A.MessageChannel?((q=new MessageChannel).port1.onmessage=function(te){B(te.data)},function(te){q.port2.postMessage(te)}):S&&"onreadystatechange"in S.createElement("script")?($=S.documentElement,function(te){var J=S.createElement("script");J.onreadystatechange=function(){B(te),J.onreadystatechange=null,$.removeChild(J),J=null},$.appendChild(J)}):function(te){setTimeout(B,0,te)},P.setImmediate=function(te){"function"!=typeof te&&(te=new Function(""+te));for(var J=new Array(arguments.length-1),ye=0;ye{Zl(Zl.s=103)}]); \ No newline at end of file diff --git a/ui/dist/ui/styles.77cd407a0323ef69.css b/ui/dist/ui/styles.6d8ba0a3d523f825.css similarity index 93% rename from ui/dist/ui/styles.77cd407a0323ef69.css rename to ui/dist/ui/styles.6d8ba0a3d523f825.css index 1aeb22d29..c4c9ff1e7 100644 --- a/ui/dist/ui/styles.77cd407a0323ef69.css +++ b/ui/dist/ui/styles.6d8ba0a3d523f825.css @@ -1 +1 @@ -.mat-badge-content{font-weight:600;font-size:12px;font-family:Roboto,Helvetica Neue,sans-serif}.mat-badge-small .mat-badge-content{font-size:9px}.mat-badge-large .mat-badge-content{font-size:24px}.mat-h1,.mat-headline,.mat-typography .mat-h1,.mat-typography .mat-headline,.mat-typography h1{font:400 24px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography .mat-h2,.mat-typography .mat-title,.mat-typography h2{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography .mat-h3,.mat-typography .mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography .mat-h4,.mat-typography .mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h5,.mat-typography .mat-h5,.mat-typography h5{font:400 11.62px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-h6,.mat-typography .mat-h6,.mat-typography h6{font:400 9.38px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-body-strong,.mat-body-2,.mat-typography .mat-body-strong,.mat-typography .mat-body-2{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body,.mat-body-1,.mat-typography .mat-body,.mat-typography .mat-body-1,.mat-typography{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body p,.mat-body-1 p,.mat-typography .mat-body p,.mat-typography .mat-body-1 p,.mat-typography p{margin:0 0 12px}.mat-small,.mat-caption,.mat-typography .mat-small,.mat-typography .mat-caption{font:400 12px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.05em;margin:0 0 56px}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.02em;margin:0 0 64px}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.005em;margin:0 0 64px}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 64px}.mat-bottom-sheet-container{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-button,.mat-raised-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button,.mat-fab,.mat-mini-fab{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-button-toggle,.mat-card{font-family:Roboto,Helvetica Neue,sans-serif}.mat-card-title{font-size:24px;font-weight:500}.mat-card-header .mat-card-title{font-size:20px}.mat-card-subtitle,.mat-card-content{font-size:14px}.mat-checkbox{font-family:Roboto,Helvetica Neue,sans-serif}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:14px;font-weight:500}.mat-chip .mat-chip-trailing-icon.mat-icon,.mat-chip .mat-chip-remove.mat-icon{font-size:18px}.mat-table{font-family:Roboto,Helvetica Neue,sans-serif}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell,.mat-footer-cell{font-size:14px}.mat-calendar{font-family:Roboto,Helvetica Neue,sans-serif}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-expansion-panel-header{font-family:Roboto,Helvetica Neue,sans-serif;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-form-field-wrapper{padding-bottom:1.34375em}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{padding:.5em 0;border-top:.84375em solid transparent}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34375em) scale(.75);width:133.3333333333%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34374em) scale(.75);width:133.3333433333%}.mat-form-field-label-wrapper{top:-.84375em;padding-top:.84375em}.mat-form-field-label{top:1.34375em}.mat-form-field-underline{bottom:1.34375em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.6666666667em;top:calc(100% - 1.7916666667em)}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-infix{padding:.4375em 0}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);width:133.3333333333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00101px);width:133.3333433333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00102px);width:133.3333533333%}.mat-form-field-appearance-legacy .mat-form-field-label{top:1.28125em}.mat-form-field-appearance-legacy .mat-form-field-underline{bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{margin-top:.5416666667em;top:calc(100% - 1.6666666667em)}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28122em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28121em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.2812em) scale(.75)}}.mat-form-field-appearance-fill .mat-form-field-infix{padding:.25em 0 .75em}.mat-form-field-appearance-fill .mat-form-field-label{top:1.09375em;margin-top:-.5em}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59374em) scale(.75);width:133.3333433333%}.mat-form-field-appearance-outline .mat-form-field-infix{padding:1em 0}.mat-form-field-appearance-outline .mat-form-field-label{top:1.84375em;margin-top:-.25em}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59374em) scale(.75);width:133.3333433333%}.mat-grid-tile-header,.mat-grid-tile-footer{font-size:14px}.mat-grid-tile-header .mat-line,.mat-grid-tile-footer .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-grid-tile-header .mat-line:nth-child(n+2),.mat-grid-tile-footer .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px}.mat-radio-button,.mat-select{font-family:Roboto,Helvetica Neue,sans-serif}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content{font-family:Roboto,Helvetica Neue,sans-serif}.mat-slider-thumb-label-text{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:500}.mat-stepper-vertical,.mat-stepper-horizontal{font-family:Roboto,Helvetica Neue,sans-serif}.mat-step-label{font-size:14px;font-weight:400}.mat-step-sub-label-error{font-weight:400}.mat-step-label-error{font-size:14px}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group{font-family:Roboto,Helvetica Neue,sans-serif}.mat-tab-label,.mat-tab-link{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0}.mat-tooltip{font-family:Roboto,Helvetica Neue,sans-serif;font-size:10px;padding-top:6px;padding-bottom:6px}.mat-tooltip-handset{font-size:14px;padding-top:8px;padding-bottom:8px}.mat-list-item,.mat-list-option{font-family:Roboto,Helvetica Neue,sans-serif}.mat-list-base .mat-list-item{font-size:16px}.mat-list-base .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-list-option{font-size:16px}.mat-list-base .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-list-base[dense] .mat-list-item{font-size:12px}.mat-list-base[dense] .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-list-option{font-size:12px}.mat-list-base[dense] .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:500}.mat-option{font-family:Roboto,Helvetica Neue,sans-serif;font-size:16px}.mat-optgroup-label{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-simple-snackbar{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px}.mat-simple-snackbar-action{line-height:1;font-family:inherit;font-size:inherit;font-weight:500}.mat-tree{font-family:Roboto,Helvetica Neue,sans-serif}.mat-tree-node,.mat-nested-tree-node{font-weight:400;font-size:14px}.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0,0,.2,1);transform:scale(0)}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0!important;box-sizing:content-box!important;height:auto!important;overflow:hidden!important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0!important;box-sizing:content-box!important;height:0!important}@keyframes cdk-text-field-autofill-start{}@keyframes cdk-text-field-autofill-end{}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms}.mat-focus-indicator,.mat-mdc-focus-indicator{position:relative}.mat-ripple-element{background-color:#0000001a}.mat-option{color:#000000de}.mat-option:hover:not(.mat-option-disabled),.mat-option:focus:not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-active{background:rgba(0,0,0,.04);color:#000000de}.mat-option.mat-option-disabled{color:#00000061}.mat-primary .mat-option.mat-selected:not(.mat-option-disabled){color:#3f51b5}.mat-accent .mat-option.mat-selected:not(.mat-option-disabled){color:#ff4081}.mat-warn .mat-option.mat-selected:not(.mat-option-disabled){color:#f44336}.mat-optgroup-label{color:#0000008a}.mat-optgroup-disabled .mat-optgroup-label{color:#00000061}.mat-pseudo-checkbox{color:#0000008a}.mat-pseudo-checkbox:after{color:#fafafa}.mat-pseudo-checkbox-disabled{color:#b0b0b0}.mat-primary .mat-pseudo-checkbox-checked,.mat-primary .mat-pseudo-checkbox-indeterminate{background:#3f51b5}.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-indeterminate,.mat-accent .mat-pseudo-checkbox-checked,.mat-accent .mat-pseudo-checkbox-indeterminate{background:#ff4081}.mat-warn .mat-pseudo-checkbox-checked,.mat-warn .mat-pseudo-checkbox-indeterminate{background:#f44336}.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background:#b0b0b0}.mat-app-background{background-color:#fafafa;color:#000000de}.mat-elevation-z0{box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-elevation-z1{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.mat-elevation-z2{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-elevation-z3{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-elevation-z4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-elevation-z5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.mat-elevation-z6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-elevation-z7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.mat-elevation-z8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.mat-elevation-z9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.mat-elevation-z10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.mat-elevation-z11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.mat-elevation-z12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.mat-elevation-z13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.mat-elevation-z14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.mat-elevation-z15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.mat-elevation-z16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.mat-elevation-z17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.mat-elevation-z18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.mat-elevation-z19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.mat-elevation-z20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.mat-elevation-z21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.mat-elevation-z22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.mat-elevation-z23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.mat-elevation-z24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.mat-theme-loaded-marker{display:none}.mat-autocomplete-panel{background:#fff;color:#000000de}.mat-autocomplete-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover){background:#fff}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled){color:#000000de}.mat-badge{position:relative}.mat-badge.mat-badge{overflow:visible}.mat-badge-hidden .mat-badge-content{display:none}.mat-badge-content{position:absolute;text-align:center;display:inline-block;border-radius:50%;transition:transform .2s ease-in-out;transform:scale(.6);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}.ng-animate-disabled .mat-badge-content,.mat-badge-content._mat-animation-noopable{transition:none}.mat-badge-content.mat-badge-active{transform:none}.mat-badge-small .mat-badge-content{width:16px;height:16px;line-height:16px}.mat-badge-small.mat-badge-above .mat-badge-content{top:-8px}.mat-badge-small.mat-badge-below .mat-badge-content{bottom:-8px}.mat-badge-small.mat-badge-before .mat-badge-content{left:-16px}[dir=rtl] .mat-badge-small.mat-badge-before .mat-badge-content{left:auto;right:-16px}.mat-badge-small.mat-badge-after .mat-badge-content{right:-16px}[dir=rtl] .mat-badge-small.mat-badge-after .mat-badge-content{right:auto;left:-16px}.mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-8px}.mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-8px}.mat-badge-medium .mat-badge-content{width:22px;height:22px;line-height:22px}.mat-badge-medium.mat-badge-above .mat-badge-content{top:-11px}.mat-badge-medium.mat-badge-below .mat-badge-content{bottom:-11px}.mat-badge-medium.mat-badge-before .mat-badge-content{left:-22px}[dir=rtl] .mat-badge-medium.mat-badge-before .mat-badge-content{left:auto;right:-22px}.mat-badge-medium.mat-badge-after .mat-badge-content{right:-22px}[dir=rtl] .mat-badge-medium.mat-badge-after .mat-badge-content{right:auto;left:-22px}.mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-11px}.mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-11px}.mat-badge-large .mat-badge-content{width:28px;height:28px;line-height:28px}.mat-badge-large.mat-badge-above .mat-badge-content{top:-14px}.mat-badge-large.mat-badge-below .mat-badge-content{bottom:-14px}.mat-badge-large.mat-badge-before .mat-badge-content{left:-28px}[dir=rtl] .mat-badge-large.mat-badge-before .mat-badge-content{left:auto;right:-28px}.mat-badge-large.mat-badge-after .mat-badge-content{right:-28px}[dir=rtl] .mat-badge-large.mat-badge-after .mat-badge-content{right:auto;left:-28px}.mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-14px}.mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-14px}.mat-badge-content{color:#fff;background:#3f51b5}.cdk-high-contrast-active .mat-badge-content{outline:solid 1px;border-radius:0}.mat-badge-accent .mat-badge-content{background:#ff4081;color:#fff}.mat-badge-warn .mat-badge-content{color:#fff;background:#f44336}.mat-badge-disabled .mat-badge-content{background:#b9b9b9;color:#00000061}.mat-bottom-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;background:#fff;color:#000000de}.mat-button,.mat-icon-button,.mat-stroked-button{color:inherit;background:transparent}.mat-button.mat-primary,.mat-icon-button.mat-primary,.mat-stroked-button.mat-primary{color:#3f51b5}.mat-button.mat-accent,.mat-icon-button.mat-accent,.mat-stroked-button.mat-accent{color:#ff4081}.mat-button.mat-warn,.mat-icon-button.mat-warn,.mat-stroked-button.mat-warn{color:#f44336}.mat-button.mat-primary.mat-button-disabled,.mat-button.mat-accent.mat-button-disabled,.mat-button.mat-warn.mat-button-disabled,.mat-button.mat-button-disabled.mat-button-disabled,.mat-icon-button.mat-primary.mat-button-disabled,.mat-icon-button.mat-accent.mat-button-disabled,.mat-icon-button.mat-warn.mat-button-disabled,.mat-icon-button.mat-button-disabled.mat-button-disabled,.mat-stroked-button.mat-primary.mat-button-disabled,.mat-stroked-button.mat-accent.mat-button-disabled,.mat-stroked-button.mat-warn.mat-button-disabled,.mat-stroked-button.mat-button-disabled.mat-button-disabled{color:#00000042}.mat-button.mat-primary .mat-button-focus-overlay,.mat-icon-button.mat-primary .mat-button-focus-overlay,.mat-stroked-button.mat-primary .mat-button-focus-overlay{background-color:#3f51b5}.mat-button.mat-accent .mat-button-focus-overlay,.mat-icon-button.mat-accent .mat-button-focus-overlay,.mat-stroked-button.mat-accent .mat-button-focus-overlay{background-color:#ff4081}.mat-button.mat-warn .mat-button-focus-overlay,.mat-icon-button.mat-warn .mat-button-focus-overlay,.mat-stroked-button.mat-warn .mat-button-focus-overlay{background-color:#f44336}.mat-button.mat-button-disabled .mat-button-focus-overlay,.mat-icon-button.mat-button-disabled .mat-button-focus-overlay,.mat-stroked-button.mat-button-disabled .mat-button-focus-overlay{background-color:transparent}.mat-button .mat-ripple-element,.mat-icon-button .mat-ripple-element,.mat-stroked-button .mat-ripple-element{opacity:.1;background-color:currentColor}.mat-button-focus-overlay{background:#000}.mat-stroked-button:not(.mat-button-disabled){border-color:#0000001f}.mat-flat-button,.mat-raised-button,.mat-fab,.mat-mini-fab{color:#000000de;background-color:#fff}.mat-flat-button.mat-primary,.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary,.mat-flat-button.mat-accent,.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent,.mat-flat-button.mat-warn,.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{color:#fff}.mat-flat-button.mat-primary.mat-button-disabled,.mat-flat-button.mat-accent.mat-button-disabled,.mat-flat-button.mat-warn.mat-button-disabled,.mat-flat-button.mat-button-disabled.mat-button-disabled,.mat-raised-button.mat-primary.mat-button-disabled,.mat-raised-button.mat-accent.mat-button-disabled,.mat-raised-button.mat-warn.mat-button-disabled,.mat-raised-button.mat-button-disabled.mat-button-disabled,.mat-fab.mat-primary.mat-button-disabled,.mat-fab.mat-accent.mat-button-disabled,.mat-fab.mat-warn.mat-button-disabled,.mat-fab.mat-button-disabled.mat-button-disabled,.mat-mini-fab.mat-primary.mat-button-disabled,.mat-mini-fab.mat-accent.mat-button-disabled,.mat-mini-fab.mat-warn.mat-button-disabled,.mat-mini-fab.mat-button-disabled.mat-button-disabled{color:#00000042}.mat-flat-button.mat-primary,.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{background-color:#3f51b5}.mat-flat-button.mat-accent,.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent{background-color:#ff4081}.mat-flat-button.mat-warn,.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{background-color:#f44336}.mat-flat-button.mat-primary.mat-button-disabled,.mat-flat-button.mat-accent.mat-button-disabled,.mat-flat-button.mat-warn.mat-button-disabled,.mat-flat-button.mat-button-disabled.mat-button-disabled,.mat-raised-button.mat-primary.mat-button-disabled,.mat-raised-button.mat-accent.mat-button-disabled,.mat-raised-button.mat-warn.mat-button-disabled,.mat-raised-button.mat-button-disabled.mat-button-disabled,.mat-fab.mat-primary.mat-button-disabled,.mat-fab.mat-accent.mat-button-disabled,.mat-fab.mat-warn.mat-button-disabled,.mat-fab.mat-button-disabled.mat-button-disabled,.mat-mini-fab.mat-primary.mat-button-disabled,.mat-mini-fab.mat-accent.mat-button-disabled,.mat-mini-fab.mat-warn.mat-button-disabled,.mat-mini-fab.mat-button-disabled.mat-button-disabled{background-color:#0000001f}.mat-flat-button.mat-primary .mat-ripple-element,.mat-raised-button.mat-primary .mat-ripple-element,.mat-fab.mat-primary .mat-ripple-element,.mat-mini-fab.mat-primary .mat-ripple-element,.mat-flat-button.mat-accent .mat-ripple-element,.mat-raised-button.mat-accent .mat-ripple-element,.mat-fab.mat-accent .mat-ripple-element,.mat-mini-fab.mat-accent .mat-ripple-element,.mat-flat-button.mat-warn .mat-ripple-element,.mat-raised-button.mat-warn .mat-ripple-element,.mat-fab.mat-warn .mat-ripple-element,.mat-mini-fab.mat-warn .mat-ripple-element{background-color:#ffffff1a}.mat-stroked-button:not([class*=mat-elevation-z]),.mat-flat-button:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-raised-button:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-raised-button:not(.mat-button-disabled):active:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.mat-raised-button.mat-button-disabled:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-fab:not([class*=mat-elevation-z]),.mat-mini-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]),.mat-mini-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.mat-fab.mat-button-disabled:not([class*=mat-elevation-z]),.mat-mini-fab.mat-button-disabled:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}.mat-button-toggle{color:#00000061}.mat-button-toggle .mat-button-toggle-focus-overlay{background-color:#0000001f}.mat-button-toggle-appearance-standard{color:#000000de;background:#fff}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:#000}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:solid 1px #e0e0e0}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:solid 1px #e0e0e0}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:none;border-top:solid 1px #e0e0e0}.mat-button-toggle-checked{background-color:#e0e0e0;color:#0000008a}.mat-button-toggle-checked.mat-button-toggle-appearance-standard{color:#000000de}.mat-button-toggle-disabled{color:#00000042;background-color:#eee}.mat-button-toggle-disabled.mat-button-toggle-appearance-standard{background:#fff}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:#bdbdbd}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:solid 1px #e0e0e0}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:48px}.mat-card{background:#fff;color:#000000de}.mat-card:not([class*=mat-elevation-z]){box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.mat-card.mat-card-flat:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-card-subtitle{color:#0000008a}.mat-checkbox-frame{border-color:#0000008a}.mat-checkbox-checkmark{fill:#fafafa}.mat-checkbox-checkmark-path{stroke:#fafafa!important}.mat-checkbox-mixedmark{background-color:#fafafa}.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background,.mat-checkbox-checked.mat-primary .mat-checkbox-background{background-color:#3f51b5}.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ff4081}.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background,.mat-checkbox-checked.mat-warn .mat-checkbox-background{background-color:#f44336}.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background,.mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background{background-color:#b0b0b0}.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame{border-color:#b0b0b0}.mat-checkbox-disabled .mat-checkbox-label{color:#00000061}.mat-checkbox .mat-ripple-element{background-color:#000}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element{background:#3f51b5}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element{background:#ff4081}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element{background:#f44336}.mat-chip.mat-standard-chip{background-color:#e0e0e0;color:#000000de}.mat-chip.mat-standard-chip .mat-chip-remove{color:#000000de;opacity:.4}.mat-chip.mat-standard-chip:not(.mat-chip-disabled):active{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-chip.mat-standard-chip:not(.mat-chip-disabled) .mat-chip-remove:hover{opacity:.54}.mat-chip.mat-standard-chip.mat-chip-disabled{opacity:.4}.mat-chip.mat-standard-chip:after{background:#000}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary{background-color:#3f51b5;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-ripple-element{background-color:#ffffff1a}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn{background-color:#f44336;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-ripple-element{background-color:#ffffff1a}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent{background-color:#ff4081;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-ripple-element{background-color:#ffffff1a}.mat-table{background:#fff}.mat-table thead,.mat-table tbody,.mat-table tfoot,mat-header-row,mat-row,mat-footer-row,[mat-header-row],[mat-row],[mat-footer-row],.mat-table-sticky{background:inherit}mat-row,mat-header-row,mat-footer-row,th.mat-header-cell,td.mat-cell,td.mat-footer-cell{border-bottom-color:#0000001f}.mat-header-cell{color:#0000008a}.mat-cell,.mat-footer-cell{color:#000000de}.mat-calendar-arrow{fill:#0000008a}.mat-datepicker-toggle,.mat-datepicker-content .mat-calendar-next-button,.mat-datepicker-content .mat-calendar-previous-button{color:#0000008a}.mat-calendar-table-header-divider:after{background:rgba(0,0,0,.12)}.mat-calendar-table-header,.mat-calendar-body-label{color:#0000008a}.mat-calendar-body-cell-content,.mat-date-range-input-separator{color:#000000de;border-color:transparent}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:#00000061}.mat-form-field-disabled .mat-date-range-input-separator{color:#00000061}.mat-calendar-body-in-preview{color:#0000003d}.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:#00000061}.mat-calendar-body-disabled>.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:#0000002e}.mat-calendar-body-in-range:before{background:rgba(63,81,181,.2)}.mat-calendar-body-comparison-identical,.mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-calendar-body-comparison-bridge-start:before,[dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(63,81,181,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-calendar-body-comparison-bridge-end:before,[dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(63,81,181,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-calendar-body-selected{background-color:#3f51b5;color:#fff}.mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#3f51b566}.mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#3f51b54d}@media (hover: hover){.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#3f51b54d}}.mat-datepicker-content{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;background-color:#fff;color:#000000de}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background:rgba(255,64,129,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(255,64,129,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(255,64,129,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-accent .mat-calendar-body-selected{background-color:#ff4081;color:#fff}.mat-datepicker-content.mat-accent .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#ff408166}.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content.mat-accent .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-accent .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#ff40814d}@media (hover: hover){.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#ff40814d}}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range:before{background:rgba(244,67,54,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-warn .mat-calendar-body-selected{background-color:#f44336;color:#fff}.mat-datepicker-content.mat-warn .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#f4433666}.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content.mat-warn .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-warn .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#f443364d}@media (hover: hover){.mat-datepicker-content.mat-warn .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#f443364d}}.mat-datepicker-content-touch{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.mat-datepicker-toggle-active{color:#3f51b5}.mat-datepicker-toggle-active.mat-accent{color:#ff4081}.mat-datepicker-toggle-active.mat-warn{color:#f44336}.mat-date-range-input-inner[disabled]{color:#00000061}.mat-dialog-container{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f;background:#fff;color:#000000de}.mat-divider{border-top-color:#0000001f}.mat-divider-vertical{border-right-color:#0000001f}.mat-expansion-panel{background:#fff;color:#000000de}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-action-row{border-top-color:#0000001f}.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]),.mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]),.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]){background:rgba(0,0,0,.04)}@media (hover: none){.mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background:#fff}}.mat-expansion-panel-header-title{color:#000000de}.mat-expansion-panel-header-description,.mat-expansion-indicator:after{color:#0000008a}.mat-expansion-panel-header[aria-disabled=true]{color:#00000042}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header{height:48px}.mat-expansion-panel-header.mat-expanded{height:64px}.mat-form-field-label,.mat-hint{color:#0009}.mat-form-field.mat-focused .mat-form-field-label{color:#3f51b5}.mat-form-field.mat-focused .mat-form-field-label.mat-accent{color:#ff4081}.mat-form-field.mat-focused .mat-form-field-label.mat-warn{color:#f44336}.mat-focused .mat-form-field-required-marker{color:#ff4081}.mat-form-field-ripple{background-color:#000000de}.mat-form-field.mat-focused .mat-form-field-ripple{background-color:#3f51b5}.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent{background-color:#ff4081}.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn{background-color:#f44336}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix:after{color:#3f51b5}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix:after{color:#ff4081}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix:after{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-label,.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent{background-color:#f44336}.mat-error{color:#f44336}.mat-form-field-appearance-legacy .mat-form-field-label,.mat-form-field-appearance-legacy .mat-hint{color:#0000008a}.mat-form-field-appearance-legacy .mat-form-field-underline{background-color:#0000006b}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right,rgba(0,0,0,.42) 0%,rgba(0,0,0,.42) 33%,transparent 0%);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-standard .mat-form-field-underline{background-color:#0000006b}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right,rgba(0,0,0,.42) 0%,rgba(0,0,0,.42) 33%,transparent 0%);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-fill .mat-form-field-flex{background-color:#0000000a}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex{background-color:#00000005}.mat-form-field-appearance-fill .mat-form-field-underline:before{background-color:#0000006b}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label{color:#00000061}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline:before{background-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline{color:#0000001f}.mat-form-field-appearance-outline .mat-form-field-outline-thick{color:#000000de}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick{color:#3f51b5}.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick{color:#ff4081}.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick,.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick{color:#f44336}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label{color:#00000061}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{color:#0000000f}.mat-icon.mat-primary{color:#3f51b5}.mat-icon.mat-accent{color:#ff4081}.mat-icon.mat-warn{color:#f44336}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{color:#0000008a}.mat-input-element:disabled,.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix:after{color:#00000061}.mat-input-element{caret-color:#3f51b5}.mat-input-element::placeholder{color:#0000006b}.mat-input-element::-moz-placeholder{color:#0000006b}.mat-input-element::-webkit-input-placeholder{color:#0000006b}.mat-input-element:-ms-input-placeholder{color:#0000006b}.mat-form-field.mat-accent .mat-input-element{caret-color:#ff4081}.mat-form-field.mat-warn .mat-input-element,.mat-form-field-invalid .mat-input-element{caret-color:#f44336}.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix:after{color:#f44336}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{color:#000000de}.mat-list-base .mat-subheader{color:#0000008a}.mat-list-base .mat-list-item-disabled{background-color:#eee;color:#00000061}.mat-list-option:hover,.mat-list-option:focus,.mat-nav-list .mat-list-item:hover,.mat-nav-list .mat-list-item:focus,.mat-action-list .mat-list-item:hover,.mat-action-list .mat-list-item:focus{background:rgba(0,0,0,.04)}.mat-list-single-selected-option,.mat-list-single-selected-option:hover,.mat-list-single-selected-option:focus{background:rgba(0,0,0,.12)}.mat-menu-panel{background:#fff}.mat-menu-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-menu-item{background:transparent;color:#000000de}.mat-menu-item[disabled],.mat-menu-item[disabled] .mat-menu-submenu-icon,.mat-menu-item[disabled] .mat-icon-no-color{color:#00000061}.mat-menu-item .mat-icon-no-color,.mat-menu-submenu-icon{color:#0000008a}.mat-menu-item:hover:not([disabled]),.mat-menu-item.cdk-program-focused:not([disabled]),.mat-menu-item.cdk-keyboard-focused:not([disabled]),.mat-menu-item-highlighted:not([disabled]){background:rgba(0,0,0,.04)}.mat-paginator{background:#fff}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{color:#0000008a}.mat-paginator-decrement,.mat-paginator-increment{border-top:2px solid rgba(0,0,0,.54);border-right:2px solid rgba(0,0,0,.54)}.mat-paginator-first,.mat-paginator-last{border-top:2px solid rgba(0,0,0,.54)}.mat-icon-button[disabled] .mat-paginator-decrement,.mat-icon-button[disabled] .mat-paginator-increment,.mat-icon-button[disabled] .mat-paginator-first,.mat-icon-button[disabled] .mat-paginator-last{border-color:#00000061}.mat-paginator-container{min-height:56px}.mat-progress-bar-background{fill:#cbd0e9}.mat-progress-bar-buffer{background-color:#cbd0e9}.mat-progress-bar-fill:after{background-color:#3f51b5}.mat-progress-bar.mat-accent .mat-progress-bar-background{fill:#fbccdc}.mat-progress-bar.mat-accent .mat-progress-bar-buffer{background-color:#fbccdc}.mat-progress-bar.mat-accent .mat-progress-bar-fill:after{background-color:#ff4081}.mat-progress-bar.mat-warn .mat-progress-bar-background{fill:#f9ccc9}.mat-progress-bar.mat-warn .mat-progress-bar-buffer{background-color:#f9ccc9}.mat-progress-bar.mat-warn .mat-progress-bar-fill:after{background-color:#f44336}.mat-progress-spinner circle,.mat-spinner circle{stroke:#3f51b5}.mat-progress-spinner.mat-accent circle,.mat-spinner.mat-accent circle{stroke:#ff4081}.mat-progress-spinner.mat-warn circle,.mat-spinner.mat-warn circle{stroke:#f44336}.mat-radio-outer-circle{border-color:#0000008a}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle{border-color:#3f51b5}.mat-radio-button.mat-primary .mat-radio-inner-circle,.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-primary:active .mat-radio-persistent-ripple{background-color:#3f51b5}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff4081}.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#ff4081}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle{border-color:#f44336}.mat-radio-button.mat-warn .mat-radio-inner-circle,.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-warn:active .mat-radio-persistent-ripple{background-color:#f44336}.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061}.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element,.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle{background-color:#00000061}.mat-radio-button.mat-radio-disabled .mat-radio-label-content{color:#00000061}.mat-radio-button .mat-ripple-element{background-color:#000}.mat-select-value{color:#000000de}.mat-select-placeholder{color:#0000006b}.mat-select-disabled .mat-select-value{color:#00000061}.mat-select-arrow{color:#0000008a}.mat-select-panel{background:#fff}.mat-select-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple){background:rgba(0,0,0,.12)}.mat-form-field.mat-focused.mat-primary .mat-select-arrow{color:#3f51b5}.mat-form-field.mat-focused.mat-accent .mat-select-arrow{color:#ff4081}.mat-form-field.mat-focused.mat-warn .mat-select-arrow,.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow{color:#f44336}.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow{color:#00000061}.mat-drawer-container{background-color:#fafafa;color:#000000de}.mat-drawer{background-color:#fff;color:#000000de}.mat-drawer.mat-drawer-push{background-color:#fff}.mat-drawer:not(.mat-drawer-side){box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.mat-drawer-side{border-right:solid 1px rgba(0,0,0,.12)}.mat-drawer-side.mat-drawer-end,[dir=rtl] .mat-drawer-side{border-left:solid 1px rgba(0,0,0,.12);border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-left:none;border-right:solid 1px rgba(0,0,0,.12)}.mat-drawer-backdrop.mat-drawer-shown{background-color:#0009}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background-color:#ff4081}.mat-slide-toggle.mat-checked .mat-slide-toggle-bar{background-color:#ff40818a}.mat-slide-toggle.mat-checked .mat-ripple-element{background-color:#ff4081}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb{background-color:#3f51b5}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar{background-color:#3f51b58a}.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element{background-color:#3f51b5}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb{background-color:#f44336}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar{background-color:#f443368a}.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element{background-color:#f44336}.mat-slide-toggle:not(.mat-checked) .mat-ripple-element{background-color:#000}.mat-slide-toggle-thumb{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f;background-color:#fafafa}.mat-slide-toggle-bar{background-color:#00000061}.mat-slider-track-background{background-color:#00000042}.mat-slider.mat-primary .mat-slider-track-fill,.mat-slider.mat-primary .mat-slider-thumb,.mat-slider.mat-primary .mat-slider-thumb-label{background-color:#3f51b5}.mat-slider.mat-primary .mat-slider-thumb-label-text{color:#fff}.mat-slider.mat-primary .mat-slider-focus-ring{background-color:#3f51b533}.mat-slider.mat-accent .mat-slider-track-fill,.mat-slider.mat-accent .mat-slider-thumb,.mat-slider.mat-accent .mat-slider-thumb-label{background-color:#ff4081}.mat-slider.mat-accent .mat-slider-thumb-label-text{color:#fff}.mat-slider.mat-accent .mat-slider-focus-ring{background-color:#ff408133}.mat-slider.mat-warn .mat-slider-track-fill,.mat-slider.mat-warn .mat-slider-thumb,.mat-slider.mat-warn .mat-slider-thumb-label{background-color:#f44336}.mat-slider.mat-warn .mat-slider-thumb-label-text{color:#fff}.mat-slider.mat-warn .mat-slider-focus-ring{background-color:#f4433633}.mat-slider:hover .mat-slider-track-background,.mat-slider.cdk-focused .mat-slider-track-background{background-color:#00000061}.mat-slider.mat-slider-disabled .mat-slider-track-background,.mat-slider.mat-slider-disabled .mat-slider-track-fill,.mat-slider.mat-slider-disabled .mat-slider-thumb,.mat-slider.mat-slider-disabled:hover .mat-slider-track-background{background-color:#00000042}.mat-slider.mat-slider-min-value .mat-slider-focus-ring{background-color:#0000001f}.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label{background-color:#000000de}.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label{background-color:#00000042}.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb{border-color:#00000042;background-color:transparent}.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb,.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb{border-color:#00000061}.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb,.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb{border-color:#00000042}.mat-slider-has-ticks .mat-slider-wrapper:after{border-color:#000000b3}.mat-slider-horizontal .mat-slider-ticks{background-image:repeating-linear-gradient(to right,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent);background-image:-moz-repeating-linear-gradient(.0001deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-slider-vertical .mat-slider-ticks{background-image:repeating-linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused,.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:#0000000a}.mat-step-header:hover[aria-disabled=true]{cursor:default}@media (hover: none){.mat-step-header:hover{background:none}}.mat-step-header .mat-step-label,.mat-step-header .mat-step-optional{color:#0000008a}.mat-step-header .mat-step-icon{background-color:#0000008a;color:#fff}.mat-step-header .mat-step-icon-selected,.mat-step-header .mat-step-icon-state-done,.mat-step-header .mat-step-icon-state-edit{background-color:#3f51b5;color:#fff}.mat-step-header.mat-accent .mat-step-icon{color:#fff}.mat-step-header.mat-accent .mat-step-icon-selected,.mat-step-header.mat-accent .mat-step-icon-state-done,.mat-step-header.mat-accent .mat-step-icon-state-edit{background-color:#ff4081;color:#fff}.mat-step-header.mat-warn .mat-step-icon{color:#fff}.mat-step-header.mat-warn .mat-step-icon-selected,.mat-step-header.mat-warn .mat-step-icon-state-done,.mat-step-header.mat-warn .mat-step-icon-state-edit{background-color:#f44336;color:#fff}.mat-step-header .mat-step-icon-state-error{background-color:transparent;color:#f44336}.mat-step-header .mat-step-label.mat-step-label-active{color:#000000de}.mat-step-header .mat-step-label.mat-step-label-error{color:#f44336}.mat-stepper-horizontal,.mat-stepper-vertical{background-color:#fff}.mat-stepper-vertical-line:before{border-left-color:#0000001f}.mat-horizontal-stepper-header:before,.mat-horizontal-stepper-header:after,.mat-stepper-horizontal-line{border-top-color:#0000001f}.mat-horizontal-stepper-header{height:72px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header,.mat-vertical-stepper-header{padding:24px}.mat-stepper-vertical-line:before{top:-16px;bottom:-16px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:after,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:before{top:36px}.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{top:36px}.mat-sort-header-arrow{color:#757575}.mat-tab-nav-bar,.mat-tab-header{border-bottom:1px solid rgba(0,0,0,.12)}.mat-tab-group-inverted-header .mat-tab-nav-bar,.mat-tab-group-inverted-header .mat-tab-header{border-top:1px solid rgba(0,0,0,.12);border-bottom:none}.mat-tab-label,.mat-tab-link{color:#000000de}.mat-tab-label.mat-tab-disabled,.mat-tab-link.mat-tab-disabled{color:#00000061}.mat-tab-header-pagination-chevron{border-color:#000000de}.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#00000061}.mat-tab-group[class*=mat-background-]>.mat-tab-header,.mat-tab-nav-bar[class*=mat-background-]{border-bottom:none;border-top:none}.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#c5cae94d}.mat-tab-group.mat-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary .mat-ink-bar{background-color:#3f51b5}.mat-tab-group.mat-primary.mat-background-primary>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-primary.mat-background-primary>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ff80ab4d}.mat-tab-group.mat-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent .mat-ink-bar{background-color:#ff4081}.mat-tab-group.mat-accent.mat-background-accent>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-accent.mat-background-accent>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ffcdd24d}.mat-tab-group.mat-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn .mat-ink-bar{background-color:#f44336}.mat-tab-group.mat-warn.mat-background-warn>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-warn.mat-background-warn>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#c5cae94d}.mat-tab-group.mat-background-primary>.mat-tab-header,.mat-tab-group.mat-background-primary>.mat-tab-link-container,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination{background-color:#3f51b5}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-primary>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ff80ab4d}.mat-tab-group.mat-background-accent>.mat-tab-header,.mat-tab-group.mat-background-accent>.mat-tab-link-container,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination{background-color:#ff4081}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-accent>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ffcdd24d}.mat-tab-group.mat-background-warn>.mat-tab-header,.mat-tab-group.mat-background-warn>.mat-tab-link-container,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination{background-color:#f44336}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-warn>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-toolbar{background:#f5f5f5;color:#000000de}.mat-toolbar.mat-primary{background:#3f51b5;color:#fff}.mat-toolbar.mat-accent{background:#ff4081;color:#fff}.mat-toolbar.mat-warn{background:#f44336;color:#fff}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar-multiple-rows{min-height:64px}.mat-toolbar-row,.mat-toolbar-single-row{height:64px}@media (max-width: 599px){.mat-toolbar-multiple-rows{min-height:56px}.mat-toolbar-row,.mat-toolbar-single-row{height:56px}}.mat-tooltip{background:rgba(97,97,97,.9)}.mat-tree{background:#fff}.mat-tree-node,.mat-nested-tree-node{color:#000000de}.mat-tree-node{min-height:48px}.mat-snack-bar-container{color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-simple-snackbar-action{color:#ff4081}html,body{height:100%;box-sizing:border-box}body{margin:0;font-family:Roboto,Helvetica Neue,sans-serif}.content-height{height:calc(100vh - 80px)}.cursor-pointer{cursor:pointer}.mat-drawer-container{background-color:#fff}.mat-button.mat-primary{color:#3367d6}.global-font-color{color:#000}.body-font-size{font-size:14px}.primary-header{font-size:20px!important}.mat-stroked-button.mat-primary{color:#3367d6}.mat-raised-button.mat-primary{color:#fff;background-color:#3367d6}.blue-font-color{color:#3367d6}.mat-tab-label{opacity:1!important}.gray-out{opacity:.6}.danger{color:#da4236}.warning{color:#ff9800}.success{color:green}.suggestion{color:#f6be00;transform:rotate(180deg)}.orange{color:#f87444}.dark{color:#4d4b4b}.suggestion{color:#f6be00;transform:rotate(180deg)}.danger-background{background-color:#da4236}.warning-background{background-color:#f3b300}.success-background{background-color:green}.failure{color:red}.copy{color:#6495ed;margin-left:40%}.header{padding:0 20px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cccccc}.header .header_action button{border:none;background-color:inherit;color:#1967d2;font-size:.8rem}.header .breadcrumb{display:flex;align-items:center}.header .breadcrumb .breadcrumb_source{padding-left:0;color:#8f8f8f;font-weight:400;font-size:14px}.header .breadcrumb .breadcrumb_workspace{font-weight:400;font-size:14px;color:#000}.header .breadcrumb span{font-size:1.2rem}.mat-card-class{padding:10px;width:600px}.mat-card-class .mat-card-title{font-size:13pt;font-weight:400;color:#000}.mat-card-class .mat-card-subtitle{font-size:9pt;font-weight:400;color:#000}.mat-card-class p{color:#000}.mat-card-class p .bullet{position:relative;display:inline-block;background-color:#e5e5e5;padding:0 5px 10px;margin:0;border-radius:12px;font-size:9px;height:9px;width:9px;text-align:center}.mat-card-class p span{margin-left:40px;font-weight:lighter;font-size:13px}.mat-card-class hr{border-color:#fff;margin-bottom:20px}.connect-load-database-container{padding:0 20px}.connect-load-database-container h5{margin-bottom:20px;color:#5c5c5c}.connect-load-database-container .mat-form-field{width:400px;margin-right:20px}.connect-load-database-container button{margin-right:20px}.connect-load-database-container .form-container{background-color:inherit;padding:16px}.progress_bar{width:50%;text-align:center;padding-left:20vw}.mat-tab-label-active{color:#3367d6!important}.object-display-flex{display:flex;flex-direction:row}.object-full-width{width:100%}.dialog-container .dialog-message{padding-top:1rem;padding-bottom:1rem;display:flex;justify-content:center;align-items:center}.dialog-container .dialog-action{display:flex;justify-content:flex-end}.sidenav{box-sizing:border-box;height:100%}.sidenav .sidenav-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:48px;box-shadow:0 1px #0000001f;margin-bottom:1px}.sidenav .sidenav-header .header-title{margin-left:25px;font-size:1rem;letter-spacing:.05px}.sidenav .sidenav-header .close-button{margin-right:10px;background-color:inherit}.sidenav .sidenav-content{padding:15px 25px}.sidenav .sidenav-content h3{margin-bottom:0}.sidenav .sidenav-content mat-form-field{width:100%;padding-top:0}.sidenav .sidenav-footer{padding:1rem;display:flex;justify-content:flex-end}.sidenav-header-border{border-bottom-width:1px;border-bottom-style:solid}.sidenav-percentage-bar{height:.8rem;display:flex;flex-direction:row;border:5px}.sidenav-percentage-bar div{height:.8rem}.sidenav-percentage-marker{display:flex;justify-content:space-between}.sidenav-percentage-indent{display:flex}.sidenav-percentage-indent span{display:flex;align-items:center;padding-right:.5rem}.sidenav-conversionByTable,.sidenav-conversionByPercentage,.sidenav-databaseDefinitions{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.sidenav-title{margin-top:10px;margin-bottom:0}.radio-button-container mat-radio-button:hover{color:#1967d2}.radio-button-group{display:flex;flex-direction:column}.spinner{position:relative;display:inline-block}.spinner-text{position:relative;display:inline-block;font-size:20px;margin-left:10px}.spinner-small-text{position:relative;display:inline-block;font-size:15px;margin-left:10px}.display{display:block!important}.hidden{display:none!important}.spanner-tab-link{color:#1967d2;font-weight:400;cursor:pointer}#middle-column-toggle-button{z-index:100;border:none;background-color:inherit}#middle-column-toggle-button:hover{cursor:pointer}.sidenav-view-assessment-container .content{padding-left:15px;padding-top:10px}.sidenav-view-assessment-container .content .sidenav-percentage-indent{padding-top:revert;padding-bottom:0;box-shadow:none}.sidenav-view-assessment-container .content .databaseName{text-transform:uppercase;font-size:large;font-weight:500}.sidenav-view-assessment-container .content .summaryHeader{display:flex}.sidenav-view-assessment-container .content .migrationDetails{font-size:16px;font-weight:400;justify-content:center;display:flex}.sidenav-view-assessment-container .content .summaryText{font-size:16px;font-weight:400}.sidenav-view-assessment-container .content .sidenav-percentage-indent{padding-top:revert;padding-bottom:revert}.sidenav-view-assessment-container .content .sidenav-percentage-indent .icon{margin-right:8px}.sidenav-view-assessment-container .content .sidenav-percentage-indent .danger,.sidenav-view-assessment-container .content .sidenav-percentage-indent .warning,.sidenav-view-assessment-container .content .sidenav-percentage-indent .success{padding-left:16px}.sidenav-view-assessment-container .content .sidenav-percentage-indent .warning,.sidenav-view-assessment-container .content .sidenav-percentage-indent .success{padding-left:32px}.sidenav-view-assessment-container .content .sidenav-percentage-indent .success{padding-left:40px}.sidenav-view-assessment-container .content .mat-card{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);display:block;position:relative;border-radius:4px;padding-left:revert}.sidenav-view-assessment-container .content .issue-report .warning,.sidenav-view-assessment-container .content .issue-report .danger,.sidenav-view-assessment-container .content .issue-report .success{padding-right:20px}.sidenav-view-assessment-container .content .issue-report .suggestion{padding-left:20px}.sidenav-view-assessment-container .content .issue-report table{width:100%}.sidenav-view-assessment-container .content .issue-report .example-element-row td{border-bottom-width:0}.sidenav-view-assessment-container .content .issue-report tr.example-detail-row{height:0}.sidenav-view-assessment-container .content .issue-report tr.example-element-row:not(.example-expanded-row):hover{background:whitesmoke}.sidenav-view-assessment-container .content .issue-report tr.example-element-row:not(.example-expanded-row):active{background:#efefef}.sidenav-view-assessment-container .content .issue-report .example-element-description{padding-left:41px;padding-top:5px;padding-bottom:15px}.sidenav-view-assessment-container .content .issue-report .example-element-description-attribution{opacity:.5}.sidenav-view-assessment-container .content .issue-report .example-element-detail{overflow:hidden;display:flex}.sidenav-view-assessment-container .content .issue-report .example-element-detail.expanded{height:auto}.sidenav-view-assessment-container .content .issue-report .example-element-detail.collapsed{height:0;min-height:0}.sidenav-view-assessment-container .content .issue-report .mat-position{width:9px;padding:16px}.sidenav-view-assessment-container .content .issue-report .mat-description{width:530px;padding:16px}.sidenav-view-assessment-container .content .issue-report .mat-tableCount{width:65px;padding:16px}.sidenav-view-assessment-container .content .issue-report .no-issue-container{width:100%;display:flex;flex-direction:column;align-items:center}.sidenav-view-assessment-container .content .issue-report .no-issue-container .no-issue-icon-container{padding:10px;background-color:#3367d61f;border-radius:3px;margin:20px}.sidenav-view-assessment-container .content .issue-report .no-issue-container .no-issue-message{width:80%;max-width:500px;text-align:center} +.mat-badge-content{font-weight:600;font-size:12px;font-family:Roboto,Helvetica Neue,sans-serif}.mat-badge-small .mat-badge-content{font-size:9px}.mat-badge-large .mat-badge-content{font-size:24px}.mat-h1,.mat-headline,.mat-typography .mat-h1,.mat-typography .mat-headline,.mat-typography h1{font:400 24px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography .mat-h2,.mat-typography .mat-title,.mat-typography h2{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography .mat-h3,.mat-typography .mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography .mat-h4,.mat-typography .mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h5,.mat-typography .mat-h5,.mat-typography h5{font:400 11.62px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-h6,.mat-typography .mat-h6,.mat-typography h6{font:400 9.38px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-body-strong,.mat-body-2,.mat-typography .mat-body-strong,.mat-typography .mat-body-2{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body,.mat-body-1,.mat-typography .mat-body,.mat-typography .mat-body-1,.mat-typography{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body p,.mat-body-1 p,.mat-typography .mat-body p,.mat-typography .mat-body-1 p,.mat-typography p{margin:0 0 12px}.mat-small,.mat-caption,.mat-typography .mat-small,.mat-typography .mat-caption{font:400 12px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.05em;margin:0 0 56px}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.02em;margin:0 0 64px}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.005em;margin:0 0 64px}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 64px}.mat-bottom-sheet-container{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-button,.mat-raised-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button,.mat-fab,.mat-mini-fab{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-button-toggle,.mat-card{font-family:Roboto,Helvetica Neue,sans-serif}.mat-card-title{font-size:24px;font-weight:500}.mat-card-header .mat-card-title{font-size:20px}.mat-card-subtitle,.mat-card-content{font-size:14px}.mat-checkbox{font-family:Roboto,Helvetica Neue,sans-serif}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:14px;font-weight:500}.mat-chip .mat-chip-trailing-icon.mat-icon,.mat-chip .mat-chip-remove.mat-icon{font-size:18px}.mat-table{font-family:Roboto,Helvetica Neue,sans-serif}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell,.mat-footer-cell{font-size:14px}.mat-calendar{font-family:Roboto,Helvetica Neue,sans-serif}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-expansion-panel-header{font-family:Roboto,Helvetica Neue,sans-serif;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-form-field-wrapper{padding-bottom:1.34375em}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{padding:.5em 0;border-top:.84375em solid transparent}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34375em) scale(.75);width:133.3333333333%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34374em) scale(.75);width:133.3333433333%}.mat-form-field-label-wrapper{top:-.84375em;padding-top:.84375em}.mat-form-field-label{top:1.34375em}.mat-form-field-underline{bottom:1.34375em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.6666666667em;top:calc(100% - 1.7916666667em)}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-infix{padding:.4375em 0}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);width:133.3333333333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00101px);width:133.3333433333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00102px);width:133.3333533333%}.mat-form-field-appearance-legacy .mat-form-field-label{top:1.28125em}.mat-form-field-appearance-legacy .mat-form-field-underline{bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{margin-top:.5416666667em;top:calc(100% - 1.6666666667em)}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28122em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28121em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.2812em) scale(.75)}}.mat-form-field-appearance-fill .mat-form-field-infix{padding:.25em 0 .75em}.mat-form-field-appearance-fill .mat-form-field-label{top:1.09375em;margin-top:-.5em}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59374em) scale(.75);width:133.3333433333%}.mat-form-field-appearance-outline .mat-form-field-infix{padding:1em 0}.mat-form-field-appearance-outline .mat-form-field-label{top:1.84375em;margin-top:-.25em}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59374em) scale(.75);width:133.3333433333%}.mat-grid-tile-header,.mat-grid-tile-footer{font-size:14px}.mat-grid-tile-header .mat-line,.mat-grid-tile-footer .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-grid-tile-header .mat-line:nth-child(n+2),.mat-grid-tile-footer .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px}.mat-radio-button,.mat-select{font-family:Roboto,Helvetica Neue,sans-serif}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content{font-family:Roboto,Helvetica Neue,sans-serif}.mat-slider-thumb-label-text{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:500}.mat-stepper-vertical,.mat-stepper-horizontal{font-family:Roboto,Helvetica Neue,sans-serif}.mat-step-label{font-size:14px;font-weight:400}.mat-step-sub-label-error{font-weight:400}.mat-step-label-error{font-size:14px}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group{font-family:Roboto,Helvetica Neue,sans-serif}.mat-tab-label,.mat-tab-link{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0}.mat-tooltip{font-family:Roboto,Helvetica Neue,sans-serif;font-size:10px;padding-top:6px;padding-bottom:6px}.mat-tooltip-handset{font-size:14px;padding-top:8px;padding-bottom:8px}.mat-list-item,.mat-list-option{font-family:Roboto,Helvetica Neue,sans-serif}.mat-list-base .mat-list-item{font-size:16px}.mat-list-base .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-list-option{font-size:16px}.mat-list-base .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-list-base[dense] .mat-list-item{font-size:12px}.mat-list-base[dense] .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-list-option{font-size:12px}.mat-list-base[dense] .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:500}.mat-option{font-family:Roboto,Helvetica Neue,sans-serif;font-size:16px}.mat-optgroup-label{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-simple-snackbar{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px}.mat-simple-snackbar-action{line-height:1;font-family:inherit;font-size:inherit;font-weight:500}.mat-tree{font-family:Roboto,Helvetica Neue,sans-serif}.mat-tree-node,.mat-nested-tree-node{font-weight:400;font-size:14px}.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0,0,.2,1);transform:scale(0)}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0!important;box-sizing:content-box!important;height:auto!important;overflow:hidden!important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0!important;box-sizing:content-box!important;height:0!important}@keyframes cdk-text-field-autofill-start{}@keyframes cdk-text-field-autofill-end{}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms}.mat-focus-indicator,.mat-mdc-focus-indicator{position:relative}.mat-ripple-element{background-color:#0000001a}.mat-option{color:#000000de}.mat-option:hover:not(.mat-option-disabled),.mat-option:focus:not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-active{background:rgba(0,0,0,.04);color:#000000de}.mat-option.mat-option-disabled{color:#00000061}.mat-primary .mat-option.mat-selected:not(.mat-option-disabled){color:#3f51b5}.mat-accent .mat-option.mat-selected:not(.mat-option-disabled){color:#ff4081}.mat-warn .mat-option.mat-selected:not(.mat-option-disabled){color:#f44336}.mat-optgroup-label{color:#0000008a}.mat-optgroup-disabled .mat-optgroup-label{color:#00000061}.mat-pseudo-checkbox{color:#0000008a}.mat-pseudo-checkbox:after{color:#fafafa}.mat-pseudo-checkbox-disabled{color:#b0b0b0}.mat-primary .mat-pseudo-checkbox-checked,.mat-primary .mat-pseudo-checkbox-indeterminate{background:#3f51b5}.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-indeterminate,.mat-accent .mat-pseudo-checkbox-checked,.mat-accent .mat-pseudo-checkbox-indeterminate{background:#ff4081}.mat-warn .mat-pseudo-checkbox-checked,.mat-warn .mat-pseudo-checkbox-indeterminate{background:#f44336}.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background:#b0b0b0}.mat-app-background{background-color:#fafafa;color:#000000de}.mat-elevation-z0{box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-elevation-z1{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.mat-elevation-z2{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-elevation-z3{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-elevation-z4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-elevation-z5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.mat-elevation-z6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-elevation-z7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.mat-elevation-z8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.mat-elevation-z9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.mat-elevation-z10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.mat-elevation-z11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.mat-elevation-z12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.mat-elevation-z13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.mat-elevation-z14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.mat-elevation-z15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.mat-elevation-z16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.mat-elevation-z17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.mat-elevation-z18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.mat-elevation-z19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.mat-elevation-z20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.mat-elevation-z21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.mat-elevation-z22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.mat-elevation-z23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.mat-elevation-z24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.mat-theme-loaded-marker{display:none}.mat-autocomplete-panel{background:#fff;color:#000000de}.mat-autocomplete-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover){background:#fff}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled){color:#000000de}.mat-badge{position:relative}.mat-badge.mat-badge{overflow:visible}.mat-badge-hidden .mat-badge-content{display:none}.mat-badge-content{position:absolute;text-align:center;display:inline-block;border-radius:50%;transition:transform .2s ease-in-out;transform:scale(.6);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}.ng-animate-disabled .mat-badge-content,.mat-badge-content._mat-animation-noopable{transition:none}.mat-badge-content.mat-badge-active{transform:none}.mat-badge-small .mat-badge-content{width:16px;height:16px;line-height:16px}.mat-badge-small.mat-badge-above .mat-badge-content{top:-8px}.mat-badge-small.mat-badge-below .mat-badge-content{bottom:-8px}.mat-badge-small.mat-badge-before .mat-badge-content{left:-16px}[dir=rtl] .mat-badge-small.mat-badge-before .mat-badge-content{left:auto;right:-16px}.mat-badge-small.mat-badge-after .mat-badge-content{right:-16px}[dir=rtl] .mat-badge-small.mat-badge-after .mat-badge-content{right:auto;left:-16px}.mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-8px}.mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-8px}.mat-badge-medium .mat-badge-content{width:22px;height:22px;line-height:22px}.mat-badge-medium.mat-badge-above .mat-badge-content{top:-11px}.mat-badge-medium.mat-badge-below .mat-badge-content{bottom:-11px}.mat-badge-medium.mat-badge-before .mat-badge-content{left:-22px}[dir=rtl] .mat-badge-medium.mat-badge-before .mat-badge-content{left:auto;right:-22px}.mat-badge-medium.mat-badge-after .mat-badge-content{right:-22px}[dir=rtl] .mat-badge-medium.mat-badge-after .mat-badge-content{right:auto;left:-22px}.mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-11px}.mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-11px}.mat-badge-large .mat-badge-content{width:28px;height:28px;line-height:28px}.mat-badge-large.mat-badge-above .mat-badge-content{top:-14px}.mat-badge-large.mat-badge-below .mat-badge-content{bottom:-14px}.mat-badge-large.mat-badge-before .mat-badge-content{left:-28px}[dir=rtl] .mat-badge-large.mat-badge-before .mat-badge-content{left:auto;right:-28px}.mat-badge-large.mat-badge-after .mat-badge-content{right:-28px}[dir=rtl] .mat-badge-large.mat-badge-after .mat-badge-content{right:auto;left:-28px}.mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-14px}.mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-14px}.mat-badge-content{color:#fff;background:#3f51b5}.cdk-high-contrast-active .mat-badge-content{outline:solid 1px;border-radius:0}.mat-badge-accent .mat-badge-content{background:#ff4081;color:#fff}.mat-badge-warn .mat-badge-content{color:#fff;background:#f44336}.mat-badge-disabled .mat-badge-content{background:#b9b9b9;color:#00000061}.mat-bottom-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;background:#fff;color:#000000de}.mat-button,.mat-icon-button,.mat-stroked-button{color:inherit;background:transparent}.mat-button.mat-primary,.mat-icon-button.mat-primary,.mat-stroked-button.mat-primary{color:#3f51b5}.mat-button.mat-accent,.mat-icon-button.mat-accent,.mat-stroked-button.mat-accent{color:#ff4081}.mat-button.mat-warn,.mat-icon-button.mat-warn,.mat-stroked-button.mat-warn{color:#f44336}.mat-button.mat-primary.mat-button-disabled,.mat-button.mat-accent.mat-button-disabled,.mat-button.mat-warn.mat-button-disabled,.mat-button.mat-button-disabled.mat-button-disabled,.mat-icon-button.mat-primary.mat-button-disabled,.mat-icon-button.mat-accent.mat-button-disabled,.mat-icon-button.mat-warn.mat-button-disabled,.mat-icon-button.mat-button-disabled.mat-button-disabled,.mat-stroked-button.mat-primary.mat-button-disabled,.mat-stroked-button.mat-accent.mat-button-disabled,.mat-stroked-button.mat-warn.mat-button-disabled,.mat-stroked-button.mat-button-disabled.mat-button-disabled{color:#00000042}.mat-button.mat-primary .mat-button-focus-overlay,.mat-icon-button.mat-primary .mat-button-focus-overlay,.mat-stroked-button.mat-primary .mat-button-focus-overlay{background-color:#3f51b5}.mat-button.mat-accent .mat-button-focus-overlay,.mat-icon-button.mat-accent .mat-button-focus-overlay,.mat-stroked-button.mat-accent .mat-button-focus-overlay{background-color:#ff4081}.mat-button.mat-warn .mat-button-focus-overlay,.mat-icon-button.mat-warn .mat-button-focus-overlay,.mat-stroked-button.mat-warn .mat-button-focus-overlay{background-color:#f44336}.mat-button.mat-button-disabled .mat-button-focus-overlay,.mat-icon-button.mat-button-disabled .mat-button-focus-overlay,.mat-stroked-button.mat-button-disabled .mat-button-focus-overlay{background-color:transparent}.mat-button .mat-ripple-element,.mat-icon-button .mat-ripple-element,.mat-stroked-button .mat-ripple-element{opacity:.1;background-color:currentColor}.mat-button-focus-overlay{background:#000}.mat-stroked-button:not(.mat-button-disabled){border-color:#0000001f}.mat-flat-button,.mat-raised-button,.mat-fab,.mat-mini-fab{color:#000000de;background-color:#fff}.mat-flat-button.mat-primary,.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary,.mat-flat-button.mat-accent,.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent,.mat-flat-button.mat-warn,.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{color:#fff}.mat-flat-button.mat-primary.mat-button-disabled,.mat-flat-button.mat-accent.mat-button-disabled,.mat-flat-button.mat-warn.mat-button-disabled,.mat-flat-button.mat-button-disabled.mat-button-disabled,.mat-raised-button.mat-primary.mat-button-disabled,.mat-raised-button.mat-accent.mat-button-disabled,.mat-raised-button.mat-warn.mat-button-disabled,.mat-raised-button.mat-button-disabled.mat-button-disabled,.mat-fab.mat-primary.mat-button-disabled,.mat-fab.mat-accent.mat-button-disabled,.mat-fab.mat-warn.mat-button-disabled,.mat-fab.mat-button-disabled.mat-button-disabled,.mat-mini-fab.mat-primary.mat-button-disabled,.mat-mini-fab.mat-accent.mat-button-disabled,.mat-mini-fab.mat-warn.mat-button-disabled,.mat-mini-fab.mat-button-disabled.mat-button-disabled{color:#00000042}.mat-flat-button.mat-primary,.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{background-color:#3f51b5}.mat-flat-button.mat-accent,.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent{background-color:#ff4081}.mat-flat-button.mat-warn,.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{background-color:#f44336}.mat-flat-button.mat-primary.mat-button-disabled,.mat-flat-button.mat-accent.mat-button-disabled,.mat-flat-button.mat-warn.mat-button-disabled,.mat-flat-button.mat-button-disabled.mat-button-disabled,.mat-raised-button.mat-primary.mat-button-disabled,.mat-raised-button.mat-accent.mat-button-disabled,.mat-raised-button.mat-warn.mat-button-disabled,.mat-raised-button.mat-button-disabled.mat-button-disabled,.mat-fab.mat-primary.mat-button-disabled,.mat-fab.mat-accent.mat-button-disabled,.mat-fab.mat-warn.mat-button-disabled,.mat-fab.mat-button-disabled.mat-button-disabled,.mat-mini-fab.mat-primary.mat-button-disabled,.mat-mini-fab.mat-accent.mat-button-disabled,.mat-mini-fab.mat-warn.mat-button-disabled,.mat-mini-fab.mat-button-disabled.mat-button-disabled{background-color:#0000001f}.mat-flat-button.mat-primary .mat-ripple-element,.mat-raised-button.mat-primary .mat-ripple-element,.mat-fab.mat-primary .mat-ripple-element,.mat-mini-fab.mat-primary .mat-ripple-element,.mat-flat-button.mat-accent .mat-ripple-element,.mat-raised-button.mat-accent .mat-ripple-element,.mat-fab.mat-accent .mat-ripple-element,.mat-mini-fab.mat-accent .mat-ripple-element,.mat-flat-button.mat-warn .mat-ripple-element,.mat-raised-button.mat-warn .mat-ripple-element,.mat-fab.mat-warn .mat-ripple-element,.mat-mini-fab.mat-warn .mat-ripple-element{background-color:#ffffff1a}.mat-stroked-button:not([class*=mat-elevation-z]),.mat-flat-button:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-raised-button:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-raised-button:not(.mat-button-disabled):active:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.mat-raised-button.mat-button-disabled:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-fab:not([class*=mat-elevation-z]),.mat-mini-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]),.mat-mini-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.mat-fab.mat-button-disabled:not([class*=mat-elevation-z]),.mat-mini-fab.mat-button-disabled:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}.mat-button-toggle{color:#00000061}.mat-button-toggle .mat-button-toggle-focus-overlay{background-color:#0000001f}.mat-button-toggle-appearance-standard{color:#000000de;background:#fff}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:#000}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:solid 1px #e0e0e0}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:solid 1px #e0e0e0}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:none;border-top:solid 1px #e0e0e0}.mat-button-toggle-checked{background-color:#e0e0e0;color:#0000008a}.mat-button-toggle-checked.mat-button-toggle-appearance-standard{color:#000000de}.mat-button-toggle-disabled{color:#00000042;background-color:#eee}.mat-button-toggle-disabled.mat-button-toggle-appearance-standard{background:#fff}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:#bdbdbd}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:solid 1px #e0e0e0}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:48px}.mat-card{background:#fff;color:#000000de}.mat-card:not([class*=mat-elevation-z]){box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.mat-card.mat-card-flat:not([class*=mat-elevation-z]){box-shadow:0 0 #0003,0 0 #00000024,0 0 #0000001f}.mat-card-subtitle{color:#0000008a}.mat-checkbox-frame{border-color:#0000008a}.mat-checkbox-checkmark{fill:#fafafa}.mat-checkbox-checkmark-path{stroke:#fafafa!important}.mat-checkbox-mixedmark{background-color:#fafafa}.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background,.mat-checkbox-checked.mat-primary .mat-checkbox-background{background-color:#3f51b5}.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#ff4081}.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background,.mat-checkbox-checked.mat-warn .mat-checkbox-background{background-color:#f44336}.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background,.mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background{background-color:#b0b0b0}.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame{border-color:#b0b0b0}.mat-checkbox-disabled .mat-checkbox-label{color:#00000061}.mat-checkbox .mat-ripple-element{background-color:#000}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element{background:#3f51b5}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element{background:#ff4081}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element{background:#f44336}.mat-chip.mat-standard-chip{background-color:#e0e0e0;color:#000000de}.mat-chip.mat-standard-chip .mat-chip-remove{color:#000000de;opacity:.4}.mat-chip.mat-standard-chip:not(.mat-chip-disabled):active{box-shadow:0 3px 3px -2px #0003,0 3px 4px #00000024,0 1px 8px #0000001f}.mat-chip.mat-standard-chip:not(.mat-chip-disabled) .mat-chip-remove:hover{opacity:.54}.mat-chip.mat-standard-chip.mat-chip-disabled{opacity:.4}.mat-chip.mat-standard-chip:after{background:#000}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary{background-color:#3f51b5;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-ripple-element{background-color:#ffffff1a}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn{background-color:#f44336;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-ripple-element{background-color:#ffffff1a}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent{background-color:#ff4081;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-ripple-element{background-color:#ffffff1a}.mat-table{background:#fff}.mat-table thead,.mat-table tbody,.mat-table tfoot,mat-header-row,mat-row,mat-footer-row,[mat-header-row],[mat-row],[mat-footer-row],.mat-table-sticky{background:inherit}mat-row,mat-header-row,mat-footer-row,th.mat-header-cell,td.mat-cell,td.mat-footer-cell{border-bottom-color:#0000001f}.mat-header-cell{color:#0000008a}.mat-cell,.mat-footer-cell{color:#000000de}.mat-calendar-arrow{fill:#0000008a}.mat-datepicker-toggle,.mat-datepicker-content .mat-calendar-next-button,.mat-datepicker-content .mat-calendar-previous-button{color:#0000008a}.mat-calendar-table-header-divider:after{background:rgba(0,0,0,.12)}.mat-calendar-table-header,.mat-calendar-body-label{color:#0000008a}.mat-calendar-body-cell-content,.mat-date-range-input-separator{color:#000000de;border-color:transparent}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:#00000061}.mat-form-field-disabled .mat-date-range-input-separator{color:#00000061}.mat-calendar-body-in-preview{color:#0000003d}.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:#00000061}.mat-calendar-body-disabled>.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border-color:#0000002e}.mat-calendar-body-in-range:before{background:rgba(63,81,181,.2)}.mat-calendar-body-comparison-identical,.mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-calendar-body-comparison-bridge-start:before,[dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(63,81,181,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-calendar-body-comparison-bridge-end:before,[dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(63,81,181,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-calendar-body-selected{background-color:#3f51b5;color:#fff}.mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#3f51b566}.mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#3f51b54d}@media (hover: hover){.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#3f51b54d}}.mat-datepicker-content{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;background-color:#fff;color:#000000de}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range:before{background:rgba(255,64,129,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(255,64,129,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(255,64,129,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-accent .mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-accent .mat-calendar-body-selected{background-color:#ff4081;color:#fff}.mat-datepicker-content.mat-accent .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#ff408166}.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content.mat-accent .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-accent .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#ff40814d}@media (hover: hover){.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#ff40814d}}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range:before{background:rgba(244,67,54,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range:before{background:rgba(249,171,0,.2)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-start:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-end:before{background:linear-gradient(to right,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-end:before,.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-start:before{background:linear-gradient(to left,rgba(244,67,54,.2) 50%,rgba(249,171,0,.2) 50%)}.mat-datepicker-content.mat-warn .mat-calendar-body-in-range>.mat-calendar-body-comparison-identical,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range:after{background:#a8dab5}.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical.mat-calendar-body-selected,.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range>.mat-calendar-body-selected{background:#46a35e}.mat-datepicker-content.mat-warn .mat-calendar-body-selected{background-color:#f44336;color:#fff}.mat-datepicker-content.mat-warn .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:#f4433666}.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content.mat-warn .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),.mat-datepicker-content.mat-warn .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#f443364d}@media (hover: hover){.mat-datepicker-content.mat-warn .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#f443364d}}.mat-datepicker-content-touch{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.mat-datepicker-toggle-active{color:#3f51b5}.mat-datepicker-toggle-active.mat-accent{color:#ff4081}.mat-datepicker-toggle-active.mat-warn{color:#f44336}.mat-date-range-input-inner[disabled]{color:#00000061}.mat-dialog-container{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f;background:#fff;color:#000000de}.mat-divider{border-top-color:#0000001f}.mat-divider-vertical{border-right-color:#0000001f}.mat-expansion-panel{background:#fff;color:#000000de}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.mat-action-row{border-top-color:#0000001f}.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]),.mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]),.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]){background:rgba(0,0,0,.04)}@media (hover: none){.mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background:#fff}}.mat-expansion-panel-header-title{color:#000000de}.mat-expansion-panel-header-description,.mat-expansion-indicator:after{color:#0000008a}.mat-expansion-panel-header[aria-disabled=true]{color:#00000042}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header{height:48px}.mat-expansion-panel-header.mat-expanded{height:64px}.mat-form-field-label,.mat-hint{color:#0009}.mat-form-field.mat-focused .mat-form-field-label{color:#3f51b5}.mat-form-field.mat-focused .mat-form-field-label.mat-accent{color:#ff4081}.mat-form-field.mat-focused .mat-form-field-label.mat-warn{color:#f44336}.mat-focused .mat-form-field-required-marker{color:#ff4081}.mat-form-field-ripple{background-color:#000000de}.mat-form-field.mat-focused .mat-form-field-ripple{background-color:#3f51b5}.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent{background-color:#ff4081}.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn{background-color:#f44336}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix:after{color:#3f51b5}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix:after{color:#ff4081}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix:after{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-label,.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent{background-color:#f44336}.mat-error{color:#f44336}.mat-form-field-appearance-legacy .mat-form-field-label,.mat-form-field-appearance-legacy .mat-hint{color:#0000008a}.mat-form-field-appearance-legacy .mat-form-field-underline{background-color:#0000006b}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right,rgba(0,0,0,.42) 0%,rgba(0,0,0,.42) 33%,transparent 0%);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-standard .mat-form-field-underline{background-color:#0000006b}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right,rgba(0,0,0,.42) 0%,rgba(0,0,0,.42) 33%,transparent 0%);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-fill .mat-form-field-flex{background-color:#0000000a}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex{background-color:#00000005}.mat-form-field-appearance-fill .mat-form-field-underline:before{background-color:#0000006b}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label{color:#00000061}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline:before{background-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline{color:#0000001f}.mat-form-field-appearance-outline .mat-form-field-outline-thick{color:#000000de}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick{color:#3f51b5}.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick{color:#ff4081}.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick,.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick{color:#f44336}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label{color:#00000061}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{color:#0000000f}.mat-icon.mat-primary{color:#3f51b5}.mat-icon.mat-accent{color:#ff4081}.mat-icon.mat-warn{color:#f44336}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{color:#0000008a}.mat-input-element:disabled,.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix:after{color:#00000061}.mat-input-element{caret-color:#3f51b5}.mat-input-element::placeholder{color:#0000006b}.mat-input-element::-moz-placeholder{color:#0000006b}.mat-input-element::-webkit-input-placeholder{color:#0000006b}.mat-input-element:-ms-input-placeholder{color:#0000006b}.mat-form-field.mat-accent .mat-input-element{caret-color:#ff4081}.mat-form-field.mat-warn .mat-input-element,.mat-form-field-invalid .mat-input-element{caret-color:#f44336}.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix:after{color:#f44336}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{color:#000000de}.mat-list-base .mat-subheader{color:#0000008a}.mat-list-base .mat-list-item-disabled{background-color:#eee;color:#00000061}.mat-list-option:hover,.mat-list-option:focus,.mat-nav-list .mat-list-item:hover,.mat-nav-list .mat-list-item:focus,.mat-action-list .mat-list-item:hover,.mat-action-list .mat-list-item:focus{background:rgba(0,0,0,.04)}.mat-list-single-selected-option,.mat-list-single-selected-option:hover,.mat-list-single-selected-option:focus{background:rgba(0,0,0,.12)}.mat-menu-panel{background:#fff}.mat-menu-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-menu-item{background:transparent;color:#000000de}.mat-menu-item[disabled],.mat-menu-item[disabled] .mat-menu-submenu-icon,.mat-menu-item[disabled] .mat-icon-no-color{color:#00000061}.mat-menu-item .mat-icon-no-color,.mat-menu-submenu-icon{color:#0000008a}.mat-menu-item:hover:not([disabled]),.mat-menu-item.cdk-program-focused:not([disabled]),.mat-menu-item.cdk-keyboard-focused:not([disabled]),.mat-menu-item-highlighted:not([disabled]){background:rgba(0,0,0,.04)}.mat-paginator{background:#fff}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{color:#0000008a}.mat-paginator-decrement,.mat-paginator-increment{border-top:2px solid rgba(0,0,0,.54);border-right:2px solid rgba(0,0,0,.54)}.mat-paginator-first,.mat-paginator-last{border-top:2px solid rgba(0,0,0,.54)}.mat-icon-button[disabled] .mat-paginator-decrement,.mat-icon-button[disabled] .mat-paginator-increment,.mat-icon-button[disabled] .mat-paginator-first,.mat-icon-button[disabled] .mat-paginator-last{border-color:#00000061}.mat-paginator-container{min-height:56px}.mat-progress-bar-background{fill:#cbd0e9}.mat-progress-bar-buffer{background-color:#cbd0e9}.mat-progress-bar-fill:after{background-color:#3f51b5}.mat-progress-bar.mat-accent .mat-progress-bar-background{fill:#fbccdc}.mat-progress-bar.mat-accent .mat-progress-bar-buffer{background-color:#fbccdc}.mat-progress-bar.mat-accent .mat-progress-bar-fill:after{background-color:#ff4081}.mat-progress-bar.mat-warn .mat-progress-bar-background{fill:#f9ccc9}.mat-progress-bar.mat-warn .mat-progress-bar-buffer{background-color:#f9ccc9}.mat-progress-bar.mat-warn .mat-progress-bar-fill:after{background-color:#f44336}.mat-progress-spinner circle,.mat-spinner circle{stroke:#3f51b5}.mat-progress-spinner.mat-accent circle,.mat-spinner.mat-accent circle{stroke:#ff4081}.mat-progress-spinner.mat-warn circle,.mat-spinner.mat-warn circle{stroke:#f44336}.mat-radio-outer-circle{border-color:#0000008a}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle{border-color:#3f51b5}.mat-radio-button.mat-primary .mat-radio-inner-circle,.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-primary:active .mat-radio-persistent-ripple{background-color:#3f51b5}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff4081}.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#ff4081}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle{border-color:#f44336}.mat-radio-button.mat-warn .mat-radio-inner-circle,.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-warn:active .mat-radio-persistent-ripple{background-color:#f44336}.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061}.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element,.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle{background-color:#00000061}.mat-radio-button.mat-radio-disabled .mat-radio-label-content{color:#00000061}.mat-radio-button .mat-ripple-element{background-color:#000}.mat-select-value{color:#000000de}.mat-select-placeholder{color:#0000006b}.mat-select-disabled .mat-select-value{color:#00000061}.mat-select-arrow{color:#0000008a}.mat-select-panel{background:#fff}.mat-select-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple){background:rgba(0,0,0,.12)}.mat-form-field.mat-focused.mat-primary .mat-select-arrow{color:#3f51b5}.mat-form-field.mat-focused.mat-accent .mat-select-arrow{color:#ff4081}.mat-form-field.mat-focused.mat-warn .mat-select-arrow,.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow{color:#f44336}.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow{color:#00000061}.mat-drawer-container{background-color:#fafafa;color:#000000de}.mat-drawer{background-color:#fff;color:#000000de}.mat-drawer.mat-drawer-push{background-color:#fff}.mat-drawer:not(.mat-drawer-side){box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.mat-drawer-side{border-right:solid 1px rgba(0,0,0,.12)}.mat-drawer-side.mat-drawer-end,[dir=rtl] .mat-drawer-side{border-left:solid 1px rgba(0,0,0,.12);border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-left:none;border-right:solid 1px rgba(0,0,0,.12)}.mat-drawer-backdrop.mat-drawer-shown{background-color:#0009}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background-color:#ff4081}.mat-slide-toggle.mat-checked .mat-slide-toggle-bar{background-color:#ff40818a}.mat-slide-toggle.mat-checked .mat-ripple-element{background-color:#ff4081}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb{background-color:#3f51b5}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar{background-color:#3f51b58a}.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element{background-color:#3f51b5}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb{background-color:#f44336}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar{background-color:#f443368a}.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element{background-color:#f44336}.mat-slide-toggle:not(.mat-checked) .mat-ripple-element{background-color:#000}.mat-slide-toggle-thumb{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f;background-color:#fafafa}.mat-slide-toggle-bar{background-color:#00000061}.mat-slider-track-background{background-color:#00000042}.mat-slider.mat-primary .mat-slider-track-fill,.mat-slider.mat-primary .mat-slider-thumb,.mat-slider.mat-primary .mat-slider-thumb-label{background-color:#3f51b5}.mat-slider.mat-primary .mat-slider-thumb-label-text{color:#fff}.mat-slider.mat-primary .mat-slider-focus-ring{background-color:#3f51b533}.mat-slider.mat-accent .mat-slider-track-fill,.mat-slider.mat-accent .mat-slider-thumb,.mat-slider.mat-accent .mat-slider-thumb-label{background-color:#ff4081}.mat-slider.mat-accent .mat-slider-thumb-label-text{color:#fff}.mat-slider.mat-accent .mat-slider-focus-ring{background-color:#ff408133}.mat-slider.mat-warn .mat-slider-track-fill,.mat-slider.mat-warn .mat-slider-thumb,.mat-slider.mat-warn .mat-slider-thumb-label{background-color:#f44336}.mat-slider.mat-warn .mat-slider-thumb-label-text{color:#fff}.mat-slider.mat-warn .mat-slider-focus-ring{background-color:#f4433633}.mat-slider:hover .mat-slider-track-background,.mat-slider.cdk-focused .mat-slider-track-background{background-color:#00000061}.mat-slider.mat-slider-disabled .mat-slider-track-background,.mat-slider.mat-slider-disabled .mat-slider-track-fill,.mat-slider.mat-slider-disabled .mat-slider-thumb,.mat-slider.mat-slider-disabled:hover .mat-slider-track-background{background-color:#00000042}.mat-slider.mat-slider-min-value .mat-slider-focus-ring{background-color:#0000001f}.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label{background-color:#000000de}.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,.mat-slider.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label{background-color:#00000042}.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb{border-color:#00000042;background-color:transparent}.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb,.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb{border-color:#00000061}.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb,.mat-slider.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb{border-color:#00000042}.mat-slider-has-ticks .mat-slider-wrapper:after{border-color:#000000b3}.mat-slider-horizontal .mat-slider-ticks{background-image:repeating-linear-gradient(to right,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent);background-image:-moz-repeating-linear-gradient(.0001deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-slider-vertical .mat-slider-ticks{background-image:repeating-linear-gradient(to bottom,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused,.mat-step-header:hover:not([aria-disabled]),.mat-step-header:hover[aria-disabled=false]{background-color:#0000000a}.mat-step-header:hover[aria-disabled=true]{cursor:default}@media (hover: none){.mat-step-header:hover{background:none}}.mat-step-header .mat-step-label,.mat-step-header .mat-step-optional{color:#0000008a}.mat-step-header .mat-step-icon{background-color:#0000008a;color:#fff}.mat-step-header .mat-step-icon-selected,.mat-step-header .mat-step-icon-state-done,.mat-step-header .mat-step-icon-state-edit{background-color:#3f51b5;color:#fff}.mat-step-header.mat-accent .mat-step-icon{color:#fff}.mat-step-header.mat-accent .mat-step-icon-selected,.mat-step-header.mat-accent .mat-step-icon-state-done,.mat-step-header.mat-accent .mat-step-icon-state-edit{background-color:#ff4081;color:#fff}.mat-step-header.mat-warn .mat-step-icon{color:#fff}.mat-step-header.mat-warn .mat-step-icon-selected,.mat-step-header.mat-warn .mat-step-icon-state-done,.mat-step-header.mat-warn .mat-step-icon-state-edit{background-color:#f44336;color:#fff}.mat-step-header .mat-step-icon-state-error{background-color:transparent;color:#f44336}.mat-step-header .mat-step-label.mat-step-label-active{color:#000000de}.mat-step-header .mat-step-label.mat-step-label-error{color:#f44336}.mat-stepper-horizontal,.mat-stepper-vertical{background-color:#fff}.mat-stepper-vertical-line:before{border-left-color:#0000001f}.mat-horizontal-stepper-header:before,.mat-horizontal-stepper-header:after,.mat-stepper-horizontal-line{border-top-color:#0000001f}.mat-horizontal-stepper-header{height:72px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header,.mat-vertical-stepper-header{padding:24px}.mat-stepper-vertical-line:before{top:-16px;bottom:-16px}.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:after,.mat-stepper-label-position-bottom .mat-horizontal-stepper-header:before{top:36px}.mat-stepper-label-position-bottom .mat-stepper-horizontal-line{top:36px}.mat-sort-header-arrow{color:#757575}.mat-tab-nav-bar,.mat-tab-header{border-bottom:1px solid rgba(0,0,0,.12)}.mat-tab-group-inverted-header .mat-tab-nav-bar,.mat-tab-group-inverted-header .mat-tab-header{border-top:1px solid rgba(0,0,0,.12);border-bottom:none}.mat-tab-label,.mat-tab-link{color:#000000de}.mat-tab-label.mat-tab-disabled,.mat-tab-link.mat-tab-disabled{color:#00000061}.mat-tab-header-pagination-chevron{border-color:#000000de}.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#00000061}.mat-tab-group[class*=mat-background-]>.mat-tab-header,.mat-tab-nav-bar[class*=mat-background-]{border-bottom:none;border-top:none}.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#c5cae94d}.mat-tab-group.mat-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary .mat-ink-bar{background-color:#3f51b5}.mat-tab-group.mat-primary.mat-background-primary>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-primary.mat-background-primary>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ff80ab4d}.mat-tab-group.mat-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent .mat-ink-bar{background-color:#ff4081}.mat-tab-group.mat-accent.mat-background-accent>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-accent.mat-background-accent>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ffcdd24d}.mat-tab-group.mat-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn .mat-ink-bar{background-color:#f44336}.mat-tab-group.mat-warn.mat-background-warn>.mat-tab-header .mat-ink-bar,.mat-tab-group.mat-warn.mat-background-warn>.mat-tab-link-container .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn>.mat-tab-header .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn>.mat-tab-link-container .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#c5cae94d}.mat-tab-group.mat-background-primary>.mat-tab-header,.mat-tab-group.mat-background-primary>.mat-tab-link-container,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination{background-color:#3f51b5}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-primary>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-primary>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-primary>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-primary>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ff80ab4d}.mat-tab-group.mat-background-accent>.mat-tab-header,.mat-tab-group.mat-background-accent>.mat-tab-link-container,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination{background-color:#ff4081}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-accent>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-accent>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-accent>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-accent>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:#ffcdd24d}.mat-tab-group.mat-background-warn>.mat-tab-header,.mat-tab-group.mat-background-warn>.mat-tab-link-container,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination{background-color:#f44336}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-label,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-tab-link,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-label,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-tab-link{color:#fff}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-tab-link.mat-tab-disabled{color:#fff6}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-group.mat-background-warn>.mat-tab-header .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-focus-indicator:before,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-focus-indicator:before{border-color:#fff}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:#fff;opacity:.4}.mat-tab-group.mat-background-warn>.mat-tab-header .mat-ripple-element,.mat-tab-group.mat-background-warn>.mat-tab-link-container .mat-ripple-element,.mat-tab-group.mat-background-warn>.mat-tab-header-pagination .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-link-container .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn>.mat-tab-header-pagination .mat-ripple-element{background-color:#fff;opacity:.12}.mat-toolbar{background:#f5f5f5;color:#000000de}.mat-toolbar.mat-primary{background:#3f51b5;color:#fff}.mat-toolbar.mat-accent{background:#ff4081;color:#fff}.mat-toolbar.mat-warn{background:#f44336;color:#fff}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar-multiple-rows{min-height:64px}.mat-toolbar-row,.mat-toolbar-single-row{height:64px}@media (max-width: 599px){.mat-toolbar-multiple-rows{min-height:56px}.mat-toolbar-row,.mat-toolbar-single-row{height:56px}}.mat-tooltip{background:rgba(97,97,97,.9)}.mat-tree{background:#fff}.mat-tree-node,.mat-nested-tree-node{color:#000000de}.mat-tree-node{min-height:48px}.mat-snack-bar-container{color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.mat-simple-snackbar-action{color:#ff4081}html,body{height:100%;box-sizing:border-box}body{margin:0;font-family:Roboto,Helvetica Neue,sans-serif}.content-height{height:calc(100vh - 80px)}.cursor-pointer{cursor:pointer}.mat-drawer-container{background-color:#fff}.mat-button.mat-primary{color:#3367d6}.global-font-color{color:#000}.body-font-size{font-size:14px}.primary-header{font-size:20px!important}.mat-stroked-button.mat-primary{color:#3367d6}.mat-raised-button.mat-primary{color:#fff;background-color:#3367d6}.blue-font-color{color:#3367d6}.mat-tab-label{opacity:1!important}.gray-out{opacity:.6}.danger{color:#da4236}.warning{color:#ff9800}.success{color:green}.suggestion{color:#f6be00;transform:rotate(180deg)}.orange{color:#f87444}.dark{color:#4d4b4b}.suggestion{color:#f6be00;transform:rotate(180deg)}.danger-background{background-color:#da4236}.warning-background{background-color:#f3b300}.success-background{background-color:green}.failure{color:red}.copy{color:#6495ed;margin-left:40%}.header{padding:0 20px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cccccc}.header .header_action button{border:none;background-color:inherit;color:#1967d2;font-size:.8rem}.header .breadcrumb{display:flex;align-items:center}.header .breadcrumb .breadcrumb_source{padding-left:0;color:#8f8f8f;font-weight:400;font-size:14px}.header .breadcrumb .breadcrumb_workspace{font-weight:400;font-size:14px;color:#000}.header .breadcrumb span{font-size:1.2rem}.mat-card-class{padding:10px;width:600px}.mat-card-class .mat-card-title{font-size:13pt;font-weight:400;color:#000}.mat-card-class .mat-card-subtitle{font-size:9pt;font-weight:400;color:#000}.mat-card-class p{color:#000}.mat-card-class p .bullet{position:relative;display:inline-block;background-color:#e5e5e5;padding:0 5px 10px;margin:0;border-radius:12px;font-size:9px;height:9px;width:9px;text-align:center}.mat-card-class p span{margin-left:40px;font-weight:lighter;font-size:13px}.mat-card-class hr{border-color:#fff;margin-bottom:20px}.connect-load-database-container{padding:0 20px}.connect-load-database-container h5{margin-bottom:20px;color:#5c5c5c}.connect-load-database-container .mat-form-field{width:400px;margin-right:20px}.connect-load-database-container button{margin-right:20px}.connect-load-database-container .form-container{background-color:inherit;padding:16px}.progress_bar{width:50%;text-align:center;padding-left:20vw}.mat-tab-label-active{color:#3367d6!important}.object-display-flex{display:flex;flex-direction:row}.object-full-width{width:100%}.dialog-container .dialog-message{padding-top:1rem;padding-bottom:1rem;display:block;justify-content:center;align-items:center}.dialog-container .dialog-message .a-link{outline:none!important}.dialog-container .dialog-action{display:flex;justify-content:flex-end}.sidenav{box-sizing:border-box;height:100%}.sidenav .sidenav-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:48px;box-shadow:0 1px #0000001f;margin-bottom:1px}.sidenav .sidenav-header .header-title{margin-left:25px;font-size:1rem;letter-spacing:.05px}.sidenav .sidenav-header .close-button{margin-right:10px;background-color:inherit}.sidenav .sidenav-content{padding:15px 25px}.sidenav .sidenav-content h3{margin-bottom:0}.sidenav .sidenav-content mat-form-field{width:100%;padding-top:0}.sidenav .sidenav-footer{padding:1rem;display:flex;justify-content:flex-end}.sidenav-header-border{border-bottom-width:1px;border-bottom-style:solid}.sidenav-percentage-bar{height:.8rem;display:flex;flex-direction:row;border:5px}.sidenav-percentage-bar div{height:.8rem}.sidenav-percentage-marker{display:flex;justify-content:space-between}.sidenav-percentage-indent{display:flex}.sidenav-percentage-indent span{display:flex;align-items:center;padding-right:.5rem}.sidenav-conversionByTable,.sidenav-conversionByPercentage,.sidenav-databaseDefinitions{box-shadow:0 2px 1px -1px #0003,0 1px 1px #00000024,0 1px 3px #0000001f}.sidenav-title{margin-top:10px;margin-bottom:0}.radio-button-container mat-radio-button:hover{color:#1967d2}.radio-button-group{display:flex;flex-direction:column}.spinner{position:relative;display:inline-block}.spinner-text{position:relative;display:inline-block;font-size:20px;margin-left:10px}.spinner-small-text{position:relative;display:inline-block;font-size:15px;margin-left:10px}.display{display:block!important}.hidden{display:none!important}.spanner-tab-link{color:#1967d2;font-weight:400;cursor:pointer}#middle-column-toggle-button{z-index:100;border:none;background-color:inherit}#middle-column-toggle-button:hover{cursor:pointer}.sidenav-view-assessment-container .content{padding-left:15px;padding-top:10px}.sidenav-view-assessment-container .content .sidenav-percentage-indent{padding-top:revert;padding-bottom:0;box-shadow:none}.sidenav-view-assessment-container .content .databaseName{text-transform:uppercase;font-size:large;font-weight:500}.sidenav-view-assessment-container .content .summaryHeader{display:flex}.sidenav-view-assessment-container .content .migrationDetails{font-size:16px;font-weight:400;justify-content:center;display:flex}.sidenav-view-assessment-container .content .summaryText{font-size:16px;font-weight:400}.sidenav-view-assessment-container .content .sidenav-percentage-indent{padding-top:revert;padding-bottom:revert}.sidenav-view-assessment-container .content .sidenav-percentage-indent .icon{margin-right:8px}.sidenav-view-assessment-container .content .sidenav-percentage-indent .danger,.sidenav-view-assessment-container .content .sidenav-percentage-indent .warning,.sidenav-view-assessment-container .content .sidenav-percentage-indent .success{padding-left:16px}.sidenav-view-assessment-container .content .sidenav-percentage-indent .warning,.sidenav-view-assessment-container .content .sidenav-percentage-indent .success{padding-left:32px}.sidenav-view-assessment-container .content .sidenav-percentage-indent .success{padding-left:40px}.sidenav-view-assessment-container .content .mat-card{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);display:block;position:relative;border-radius:4px;padding-left:revert}.sidenav-view-assessment-container .content .issue-report .warning,.sidenav-view-assessment-container .content .issue-report .danger,.sidenav-view-assessment-container .content .issue-report .success{padding-right:20px}.sidenav-view-assessment-container .content .issue-report .suggestion{padding-left:20px}.sidenav-view-assessment-container .content .issue-report table{width:100%}.sidenav-view-assessment-container .content .issue-report .example-element-row td{border-bottom-width:0}.sidenav-view-assessment-container .content .issue-report tr.example-detail-row{height:0}.sidenav-view-assessment-container .content .issue-report tr.example-element-row:not(.example-expanded-row):hover{background:whitesmoke}.sidenav-view-assessment-container .content .issue-report tr.example-element-row:not(.example-expanded-row):active{background:#efefef}.sidenav-view-assessment-container .content .issue-report .example-element-description{padding-left:41px;padding-top:5px;padding-bottom:15px}.sidenav-view-assessment-container .content .issue-report .example-element-description-attribution{opacity:.5}.sidenav-view-assessment-container .content .issue-report .example-element-detail{overflow:hidden;display:flex}.sidenav-view-assessment-container .content .issue-report .example-element-detail.expanded{height:auto}.sidenav-view-assessment-container .content .issue-report .example-element-detail.collapsed{height:0;min-height:0}.sidenav-view-assessment-container .content .issue-report .mat-position{width:9px;padding:16px}.sidenav-view-assessment-container .content .issue-report .mat-description{width:530px;padding:16px}.sidenav-view-assessment-container .content .issue-report .mat-tableCount{width:65px;padding:16px}.sidenav-view-assessment-container .content .issue-report .no-issue-container{width:100%;display:flex;flex-direction:column;align-items:center}.sidenav-view-assessment-container .content .issue-report .no-issue-container .no-issue-icon-container{padding:10px;background-color:#3367d61f;border-radius:3px;margin:20px}.sidenav-view-assessment-container .content .issue-report .no-issue-container .no-issue-message{width:80%;max-width:500px;text-align:center} diff --git a/ui/src/app/components/home/home.component.ts b/ui/src/app/components/home/home.component.ts index 87b7ecfaa..afd2e5361 100644 --- a/ui/src/app/components/home/home.component.ts +++ b/ui/src/app/components/home/home.component.ts @@ -2,6 +2,7 @@ import { Component, OnInit } from '@angular/core' import { MatDialog } from '@angular/material/dialog'; import { Router } from '@angular/router'; import { MigrationDetails } from 'src/app/app.constants'; +import { BackendHealthService } from 'src/app/services/backend-health/backend-health.service'; import { InfodialogComponent } from '../infodialog/infodialog.component'; @Component({ @@ -11,9 +12,11 @@ import { InfodialogComponent } from '../infodialog/infodialog.component'; }) export class HomeComponent implements OnInit { constructor(private dialog: MatDialog, - private router: Router) { } + private router: Router, + private healthCheckService: BackendHealthService) { } ngOnInit(): void { + this.healthCheckService.startHealthCheck(); if (localStorage.getItem(MigrationDetails.IsMigrationInProgress) != null && localStorage.getItem(MigrationDetails.IsMigrationInProgress) as string === 'true') { this.dialog.open(InfodialogComponent, { data: { title: 'Redirecting to prepare migration page', message: 'Another migration already in progress', type: 'error' }, diff --git a/ui/src/app/components/infodialog/infodialog.component.html b/ui/src/app/components/infodialog/infodialog.component.html index 135aa3fa5..1f4e4beff 100644 --- a/ui/src/app/components/infodialog/infodialog.component.html +++ b/ui/src/app/components/infodialog/infodialog.component.html @@ -1,8 +1,7 @@

{{ data.title }}

-

- {{ data.message }} +

diff --git a/ui/src/app/services/backend-health/backend-health.service.spec.ts b/ui/src/app/services/backend-health/backend-health.service.spec.ts new file mode 100644 index 000000000..7f05cc5b1 --- /dev/null +++ b/ui/src/app/services/backend-health/backend-health.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { BackendHealthService } from './backend-health.service'; + +describe('BackendHealthService', () => { + let service: BackendHealthService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(BackendHealthService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/ui/src/app/services/backend-health/backend-health.service.ts b/ui/src/app/services/backend-health/backend-health.service.ts new file mode 100644 index 000000000..3bee2e763 --- /dev/null +++ b/ui/src/app/services/backend-health/backend-health.service.ts @@ -0,0 +1,75 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { MatDialog } from '@angular/material/dialog'; +import { catchError, from, interval, map, Observable, of, Subject, Subscription, takeUntil } from 'rxjs'; +import { InfodialogComponent } from 'src/app/components/infodialog/infodialog.component'; +import { FetchService } from '../fetch/fetch.service'; + +@Injectable({ + providedIn: 'root' +}) +export class BackendHealthService { + private healthCheckSubscription: Subscription = new Subscription; + private unHealthyCheckCount: number = 0; + private MAX_UNHEALTHY_CHECK_ATTEMPTS: number = 5 + + constructor(private fetch: FetchService, + private dialog: MatDialog) { } + + startHealthCheck() { + this.healthCheckSubscription = interval(5000).subscribe(() => { + this.checkBackendHealth(); + }); + } + + stopHealthCheck() { + if (this.healthCheckSubscription) { + this.healthCheckSubscription.unsubscribe(); + } + } + + checkBackendHealth() { + this.checkHealth().subscribe( + (isHealthy) => { + if (!isHealthy) { + if (this.unHealthyCheckCount == this.MAX_UNHEALTHY_CHECK_ATTEMPTS) { + // Backend is unhealthy, open the dialog and unsubscribe + this.openHealthDialog(); + } + this.unHealthyCheckCount++; + } else { + this.unHealthyCheckCount = 0; + } + } + ); + } + + openHealthDialog() { + let dialogRef = this.dialog.open(InfodialogComponent, { + width: '500px', + data: { + message: "Please check terminal logs for more details. In case of a crash please file a github issue with all the details.", + type: 'error', + title: 'Spanner migration tool unresponsive', + } + }); + this.stopHealthCheck(); + dialogRef.afterClosed().subscribe(() => { + this.startHealthCheck(); + }) + } + + checkHealth(): Observable { + return from(this.fetch.checkBackendHealth()).pipe( + map(() => true), + catchError(() => { + return of(false); + }) + ); + } + + ngOnDestroy() { + // Stop health checks when the service is destroyed + this.stopHealthCheck(); + } +} diff --git a/ui/src/app/services/fetch/fetch.service.ts b/ui/src/app/services/fetch/fetch.service.ts index 26f0f3564..c004258dd 100644 --- a/ui/src/app/services/fetch/fetch.service.ts +++ b/ui/src/app/services/fetch/fetch.service.ts @@ -303,4 +303,7 @@ export class FetchService { getPGSQLToStandardTypeTypemap() { return this.http.get>(`${this.url}/typemap/GetPGSQLToStandardTypeTypemap`) } + checkBackendHealth() { + return this.http.get(`${this.url}/ping`) + } } diff --git a/ui/src/styles.scss b/ui/src/styles.scss index f8b8b500d..c80d3fc58 100644 --- a/ui/src/styles.scss +++ b/ui/src/styles.scss @@ -242,9 +242,12 @@ body { .dialog-message { padding-top: 1rem; padding-bottom: 1rem; - display: flex; + display: block; justify-content: center; align-items: center; + .a-link { + outline: none !important; + } } .dialog-action { diff --git a/webv2/routes.go b/webv2/routes.go index 4745eae2d..09cd557a1 100644 --- a/webv2/routes.go +++ b/webv2/routes.go @@ -114,6 +114,7 @@ func getRoutes() *mux.Router { router.HandleFunc("/uploadFile", uploadFile).Methods("POST") router.HandleFunc("/GetTableWithErrors", getTableWithErrors).Methods("GET") + router.HandleFunc("/ping", getBackendHealth).Methods("GET") router.PathPrefix("/").Handler(frontendStatic) return router diff --git a/webv2/web.go b/webv2/web.go index c1babddf7..71e0fde17 100644 --- a/webv2/web.go +++ b/webv2/web.go @@ -1445,6 +1445,10 @@ type TableInterleaveStatus struct { Comment string } +func getBackendHealth(w http.ResponseWriter, r *http.Request) { + w.WriteHeader(http.StatusOK) +} + // setParentTable checks whether specified table can be interleaved, and updates the schema to convert foreign // key to interleaved table if 'update' parameter is set to true. If 'update' parameter is set to false, then return // whether the foreign key can be converted to interleave table without updating the schema.