diff --git a/docs/index.html b/docs/index.html index fe4b260..a570173 100644 --- a/docs/index.html +++ b/docs/index.html @@ -10,5 +10,5 @@ - + diff --git a/docs/main-es2015.ca97c680fc9baf6336fb.js b/docs/main-es2015.e114a13b21c7c65caa7f.js similarity index 62% rename from docs/main-es2015.ca97c680fc9baf6336fb.js rename to docs/main-es2015.e114a13b21c7c65caa7f.js index 55c1077..31919f5 100644 --- a/docs/main-es2015.ca97c680fc9baf6336fb.js +++ b/docs/main-es2015.e114a13b21c7c65caa7f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},crnd:function(e,t){function n(e){return Promise.resolve().then(function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="crnd"},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let s=!1;const i={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){s=e},get useDeprecatedSynchronousErrorHandling(){return s}};function o(e){setTimeout(()=>{throw e},0)}const a={closed:!0,next(e){},error(e){if(i.useDeprecatedSynchronousErrorHandling)throw e;o(e)},complete(){}},l=Array.isArray||(e=>e&&"number"==typeof e.length);function c(e){return null!==e&&"object"==typeof e}function u(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}u.prototype=Object.create(Error.prototype);const d=u,h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:s,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof d?t.errors:t),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=a;break;case 1:if(!e){this.destination=a;break}if("object"==typeof e){e instanceof g?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new g(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class m extends g{constructor(e,t,n,s){let i;super(),this._parentSubscriber=e;let o=this;r(t)?i=t:t&&(i=t.next,n=t.error,s=t.complete,t!==a&&(r((o=Object.create(t)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=i,this._error=n,this._complete=s}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;i.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=i;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):o(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;o(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);i.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),i.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(e,t,n){if(!i.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return i.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(o(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";const v=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,s=function(e,t,n){if(e){if(e instanceof g)return e;if(e[f])return e[f]()}return e||t||n?new g(e,t,n):new g(a)}(e,t,n);if(s.add(r?r.call(s,this.source):this.source||i.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),i.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(e){try{return this._subscribe(e)}catch(t){i.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof g?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=y(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(s){n(s),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[_](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:function(){})(this);var t}toPromise(e){return new(e=y(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=(t=>new e(t)),e})();function y(e){if(e||(e=i.Promise||Promise),!e)throw new Error("no Promise impl found");return e}function w(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}w.prototype=Object.create(Error.prototype);const b=w;class C extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class E extends g{constructor(e){super(e),this.destination=e}}const x=(()=>{class e extends v{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new E(this)}lift(e){const t=new S(this,this);return t.operator=e,t}next(e){if(this.closed)throw new b;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let s=0;snew S(e,t)),e})();class S extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class A extends g{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;ne&&"number"==typeof e.length&&"function"!=typeof e;function N(e){return!!e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}const O=e=>{if(e&&"function"==typeof e[_])return(e=>t=>{const n=e[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(t)})(e);if(V(e))return T(e);if(N(e))return(e=>t=>(e.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t))(e);if(e&&"function"==typeof e[I])return(e=>t=>{const n=e[I]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t})(e);{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends g{notifyNext(e,t,n,r,s){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}function M(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new R(e,t))}}class R{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new P(e,this.project,this.thisArg))}}class P extends g{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}function F(e,t){return new v(n=>{const r=new h;let s=0;return r.add(t.schedule(function(){s!==e.length?(n.next(e[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}function j(e,t){return t?function(e,t){if(null!=e){if(function(e){return e&&"function"==typeof e[_]}(e))return function(e,t){return new v(n=>{const r=new h;return r.add(t.schedule(()=>{const s=e[_]();r.add(s.subscribe({next(e){r.add(t.schedule(()=>n.next(e)))},error(e){r.add(t.schedule(()=>n.error(e)))},complete(){r.add(t.schedule(()=>n.complete()))}}))})),r})}(e,t);if(N(e))return function(e,t){return new v(n=>{const r=new h;return r.add(t.schedule(()=>e.then(e=>{r.add(t.schedule(()=>{n.next(e),r.add(t.schedule(()=>n.complete()))}))},e=>{r.add(t.schedule(()=>n.error(e)))}))),r})}(e,t);if(V(e))return F(e,t);if(function(e){return e&&"function"==typeof e[I]}(e)||"string"==typeof e)return function(e,t){if(!e)throw new Error("Iterable cannot be null");return new v(n=>{const r=new h;let s;return r.add(()=>{s&&"function"==typeof s.return&&s.return()}),r.add(t.schedule(()=>{s=e[I](),r.add(t.schedule(function(){if(n.closed)return;let e,t;try{const i=s.next();e=i.value,t=i.done}catch(r){return void n.error(r)}t?n.complete():(n.next(e),this.schedule())}))})),r})}(e,t)}throw new TypeError((null!==e&&typeof e||e)+" is not observable")}(e,t):e instanceof v?e:new v(O(e))}class H{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new L(e,this.project,this.concurrent))}}class L extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function U(e){return e}function B(){return function(e){return e.lift(new z(e))}}class z{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new G(e,n),s=t.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class G extends g{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}const $=class extends v{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new W(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return B()(this)}}.prototype,Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:$._subscribe},_isComplete:{value:$._isComplete,writable:!0},getSubject:{value:$.getSubject},connect:{value:$.connect},refCount:{value:$.refCount}};class W extends E{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function Q(){return new x}const q="__parameters__";function J(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function s(...e){if(this instanceof s)return r.apply(this,e),this;const t=new s(...e);return n.annotation=t,n;function n(e,n,r){const s=e.hasOwnProperty(q)?e[q]:Object.defineProperty(e,q,{value:[]})[q];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(t),e}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=e,s.annotationCls=s,s}const Y=J("Inject",e=>({token:e})),K=J("Optional"),X=J("Self"),ee=J("SkipSelf");var te=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function ne(e){for(let t in e)if(e[t]===ne)return t;throw Error("Could not find renamed property on target object.")}function re(e){return{providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function se(e){return e&&e.hasOwnProperty(ie)?e[ie]:null}const ie=ne({ngInjectableDef:ne});function oe(e){if("string"==typeof e)return e;if(e instanceof Array)return"["+e.map(oe).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}const ae=ne({__forward_ref__:ne});function le(e){return e.__forward_ref__=le,e.toString=function(){return oe(this())},e}function ce(e){const t=e;return"function"==typeof t&&t.hasOwnProperty(ae)&&t.__forward_ref__===le?t():e}function ue(){const e="undefined"!=typeof globalThis&&globalThis,t="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,r="undefined"!=typeof global&&global;return e||r||t||n}const de=ue();let he,pe=void 0;function fe(e){const t=pe;return pe=e,t}class ge{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.ngInjectableDef=re({providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const me="__source",_e=new Object,ve=new ge("INJECTOR",-1);class ye{get(e,t=_e){if(t===_e){const t=new Error(`NullInjectorError: No provider for ${oe(e)}!`);throw t.name="NullInjectorError",t}return t}}const we=(()=>{class e{static create(e,t){return Array.isArray(e)?new Ve(e,t):new Ve(e.providers,e.parent,e.name||null)}}return e.THROW_IF_NOT_FOUND=_e,e.NULL=new ye,e.ngInjectableDef=re({providedIn:"any",factory:()=>(function(e,t=te.Default){return(he||function(e,t=te.Default){if(void 0===pe)throw new Error("inject() must be called from an injection context");return null===pe?function(e,t,n){const r=se(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&te.Optional)return null;throw new Error(`Injector: NOT_FOUND [${oe(e)}]`)}(e,0,t):pe.get(e,t&te.Optional?null:void 0,t)})(e,t)})(ve)}),e.__NG_ELEMENT_ID__=-1,e})(),be=function(e){return e},Ce=[],Ee=be,xe=function(){return Array.prototype.slice.call(arguments)},Se=ne({provide:String,useValue:ne}),Ae="ngTokenPath",Te="ngTempTokenPath",ke=/\n/gm,Ie="\u0275";class Ve{constructor(e,t=we.NULL,n=null){this.parent=t,this.source=n;const r=this._records=new Map;r.set(we,{token:we,fn:be,deps:Ce,value:this,useNew:!1}),r.set(ve,{token:ve,fn:be,deps:Ce,value:this,useNew:!1}),function e(t,n){if(n)if((n=ce(n))instanceof Array)for(let r=0;re.push(oe(n))),`StaticInjector[${e.join(", ")}]`}}function Ne(e){return De("Cannot mix multi providers and regular providers",e)}function Oe(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&e.charAt(1)==Ie?e.substr(2):e;let s=oe(t);if(t instanceof Array)s=t.map(oe).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):oe(r)))}s=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${e.replace(ke,"\n ")}`}function De(e,t){return new Error(Oe(e,t,"StaticInjectorError"))}const Me="ngDebugContext",Re="ngOriginalError",Pe="ngErrorLogger",Fe=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}(),je=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(de))();function He(e){return e[Me]}function Le(e){return e[Re]}function Ue(e,...t){e.error(...t)}class Be{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e[Pe]||Ue}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?He(e)?He(e):this._findContext(Le(e)):null}_findOriginalError(e){let t=Le(e);for(;t&&Le(t);)t=Le(t);return t}}let ze=!0,Ge=!1;function $e(){return Ge=!0,ze}class Ze{constructor(e){if(this.defaultDoc=e,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const e=this.inertDocument.createElement("html");this.inertDocument.appendChild(e),this.inertBodyElement=this.inertDocument.createElement("body"),e.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(e){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(e){e=""+e+"";try{e=encodeURI(e)}catch(r){return null}const t=new XMLHttpRequest;t.responseType="document",t.open("GET","data:text/html;charset=utf-8,"+e,!1),t.send(void 0);const n=t.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(e){e=""+e+"";try{const n=(new window.DOMParser).parseFromString(e,"text/html").body;return n.removeChild(n.firstChild),n}catch(t){return null}}getInertBodyElement_InertDocument(e){const t=this.inertDocument.createElement("template");return"content"in t?(t.innerHTML=e,t):(this.inertBodyElement.innerHTML=e,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(e){const t=e.attributes;for(let r=t.length-1;0qe(e.trim())).join(", ")),this.buf.push(" ",t,'="',ut(o),'"')}var r;return this.buf.push(">"),!0}endElement(e){const t=e.nodeName.toLowerCase();nt.hasOwnProperty(t)&&!Ke.hasOwnProperty(t)&&(this.buf.push(""))}chars(e){this.buf.push(ut(e))}checkClobberedElement(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${e.outerHTML}`);return t}}const lt=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ct=/([^\#-~ |!])/g;function ut(e){return e.replace(/&/g,"&").replace(lt,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(ct,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}let dt;function ht(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}const pt=function(){var e={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return e[e.NONE]="NONE",e[e.HTML]="HTML",e[e.STYLE]="STYLE",e[e.SCRIPT]="SCRIPT",e[e.URL]="URL",e[e.RESOURCE_URL]="RESOURCE_URL",e}();class ft{}const gt=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),mt=/^url\(([^)]+)\)$/,_t=/([A-Z])/g;function vt(e){try{return null!=e?e.toString().slice(0,30):e}catch(t){return"[ERROR] Exception while trying to serialize the value"}}function yt(e){return!!e&&"function"==typeof e.then}function wt(e){return!!e&&"function"==typeof e.subscribe}let bt=null;function Ct(){if(!bt){const e=de.Symbol;if(e&&e.iterator)bt=e.iterator;else{const e=Object.getOwnPropertyNames(Map.prototype);for(let t=0;t{class e{}return e.NULL=new Mt,e})();class Pt{constructor(e,t,n){this._parent=t,this._ngModule=n,this._factories=new Map;for(let r=0;r{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=(()=>Bt(e)),e})(),Bt=Lt;class zt{}class Gt{}const $t=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}(),Zt=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>Wt()),e})(),Wt=Lt;class Qt{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const qt=new Qt("8.0.1");class Jt{constructor(){}supports(e){return At(e)}create(e){return new Kt(e)}}const Yt=(e,t)=>t;class Kt{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||Yt}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,s=null;for(;t||n;){const i=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==s&&Et(s.trackById,r)?(i&&(s=this._verifyReinsertion(s,e,r,t)),Et(s.item,e)||this._addIdentityChange(s,e)):(s=this._mismatch(s,e,r,t),i=!0),s=s._next,t++}),this.length=t;return this._truncate(s),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let s;return null===e?s=this._itTail:(s=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Et(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,s,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Et(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,s,r)):e=this._addAfter(new Xt(t,n),s,r),e}_verifyReinsertion(e,t,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?e=this._reinsertAfter(s,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,s=e._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new tn),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new tn),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class Xt{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class en{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Et(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class tn{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new en,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function nn(e,t,n){const r=e.previousIndex;if(null===r)return r;let s=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new on(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Et(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class on{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}const an=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new ee,new K]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.ngInjectableDef=re({providedIn:"root",factory:()=>new e([new Jt])}),e})(),ln=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new ee,new K]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.ngInjectableDef=re({providedIn:"root",factory:()=>new e([new rn])}),e})(),cn=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>un()),e})(),un=(...e)=>{},dn=[new rn],hn=new an([new Jt]),pn=new ln(dn),fn=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>gn(e,Ut)),e})(),gn=Lt,mn=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>_n(e,Ut)),e})(),_n=Lt;function vn(e,t,n,r){let s=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${t}'. Current value: '${n}'.`;return r&&(s+=" It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?"),function(e,t){const n=new Error(e);return yn(n,t),n}(s,e)}function yn(e,t){e[Me]=t,e[Pe]=t.logError.bind(t)}function wn(e){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${e}`)}function bn(e,t,n){const r=e.state,s=1792&r;return s===t?(e.state=-1793&r|n,e.initIndex=-1,!0):s===n}function Cn(e,t,n){return(1792&e.state)===t&&e.initIndex<=n&&(e.initIndex=n+1,!0)}function En(e,t){return e.nodes[t]}function xn(e,t){return e.nodes[t]}function Sn(e,t){return e.nodes[t]}function An(e,t){return e.nodes[t]}function Tn(e,t){return e.nodes[t]}const kn={setCurrentNode:void 0,createRootView:void 0,createEmbeddedView:void 0,createComponentView:void 0,createNgModuleRef:void 0,overrideProvider:void 0,overrideComponentView:void 0,clearOverrides:void 0,checkAndUpdateView:void 0,checkNoChangesView:void 0,destroyView:void 0,resolveDep:void 0,createDebugContext:void 0,handleEvent:void 0,updateDirectives:void 0,updateRenderer:void 0,dirtyParentQueries:void 0},In=()=>{},Vn=new Map;function Nn(e){let t=Vn.get(e);return t||(t=oe(e)+"_"+Vn.size,Vn.set(e,t)),t}const On="$$undefined",Dn="$$empty";function Mn(e){return{id:On,styles:e.styles,encapsulation:e.encapsulation,data:e.data}}let Rn=0;function Pn(e,t,n,r){return!(!(2&e.state)&&Et(e.oldValues[t.bindingIndex+n],r))}function Fn(e,t,n,r){return!!Pn(e,t,n,r)&&(e.oldValues[t.bindingIndex+n]=r,!0)}function jn(e,t,n,r){const s=e.oldValues[t.bindingIndex+n];if(1&e.state||!xt(s,r)){const i=t.bindings[n].name;throw vn(kn.createDebugContext(e,t.nodeIndex),`${i}: ${s}`,`${i}: ${r}`,0!=(1&e.state))}}function Hn(e){let t=e;for(;t;)2&t.def.flags&&(t.state|=8),t=t.viewContainerParent||t.parent}function Ln(e,t){let n=e;for(;n&&n!==t;)n.state|=64,n=n.viewContainerParent||n.parent}function Un(e,t,n,r){try{return Hn(33554432&e.def.nodes[t].flags?xn(e,t).componentView:e),kn.handleEvent(e,t,n,r)}catch(s){e.root.errorHandler.handleError(s)}}function Bn(e){return e.parent?xn(e.parent,e.parentNodeDef.nodeIndex):null}function zn(e){return e.parent?e.parentNodeDef.parent:null}function Gn(e,t){switch(201347067&t.flags){case 1:return xn(e,t.nodeIndex).renderElement;case 2:return En(e,t.nodeIndex).renderText}}function $n(e){return!!e.parent&&!!(32768&e.parentNodeDef.flags)}function Zn(e){return!(!e.parent||32768&e.parentNodeDef.flags)}function Wn(e){return 1<{"number"==typeof e?(t[e]=s,n|=Wn(e)):r[e]=s}),{matchedQueries:t,references:r,matchedQueryIds:n}}function qn(e,t){return e.map(e=>{let n,r;return Array.isArray(e)?[r,n]=e:(r=0,n=e),n&&("function"==typeof n||"object"==typeof n)&&t&&Object.defineProperty(n,me,{value:t,configurable:!0}),{flags:r,token:n,tokenKey:Nn(n)}})}function Jn(e,t,n){let r=n.renderParent;return r?0==(1&r.flags)||0==(33554432&r.flags)||r.element.componentRendererType&&r.element.componentRendererType.encapsulation===Fe.Native?xn(e,n.renderParent.nodeIndex).renderElement:void 0:t}const Yn=new WeakMap;function Kn(e){let t=Yn.get(e);return t||((t=e(()=>In)).factory=e,Yn.set(e,t)),t}function Xn(e,t,n,r,s){3===t&&(n=e.renderer.parentNode(Gn(e,e.def.lastRenderRootNode))),er(e,t,0,e.def.nodes.length-1,n,r,s)}function er(e,t,n,r,s,i,o){for(let a=n;a<=r;a++){const n=e.def.nodes[a];11&n.flags&&nr(e,n,t,s,i,o),a+=n.childCount}}function tr(e,t,n,r,s,i){let o=e;for(;o&&!$n(o);)o=o.parent;const a=o.parent,l=zn(o),c=l.nodeIndex+l.childCount;for(let u=l.nodeIndex+1;u<=c;u++){const e=a.def.nodes[u];e.ngContentIndex===t&&nr(a,e,n,r,s,i),u+=e.childCount}if(!a.parent){const o=e.root.projectableNodes[t];if(o)for(let t=0;t-1}(s)||"root"===i.providedIn&&s._def.isRoot))){const n=e._providers.length;return e._def.providers[n]=e._def.providersByKey[t.tokenKey]={flags:5120,value:l.factory,deps:[],index:n,token:t.token},e._providers[n]=ar,e._providers[n]=pr(e,e._def.providersByKey[t.tokenKey])}return 4&t.flags?n:e._parent.get(t.token,n)}finally{fe(r)}var s,i}function pr(e,t){let n;switch(201347067&t.flags){case 512:n=function(e,t,n){const r=n.length;switch(r){case 0:return new t;case 1:return new t(hr(e,n[0]));case 2:return new t(hr(e,n[0]),hr(e,n[1]));case 3:return new t(hr(e,n[0]),hr(e,n[1]),hr(e,n[2]));default:const s=new Array(r);for(let t=0;t=n.length)&&(t=n.length-1),t<0)return null;const r=n[t];return r.viewContainerParent=null,vr(n,t),kn.dirtyParentQueries(r),mr(r),r}function gr(e,t,n){const r=t?Gn(t,t.def.lastRenderRootNode):e.renderElement,s=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);Xn(n,2,s,i,void 0)}function mr(e){Xn(e,3,null,null,void 0)}function _r(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function vr(e,t){t>=e.length-1?e.pop():e.splice(t,1)}const yr=new Object;function wr(e,t,n,r,s,i){return new br(e,t,n,r,s,i)}class br extends Nt{constructor(e,t,n,r,s,i){super(),this.selector=e,this.componentType=t,this._inputs=r,this._outputs=s,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const e=[],t=this._inputs;for(let n in t)e.push({propName:n,templateName:t[n]});return e}get outputs(){const e=[];for(let t in this._outputs)e.push({propName:t,templateName:this._outputs[t]});return e}create(e,t,n,r){if(!r)throw new Error("ngModule should be provided");const s=Kn(this.viewDefFactory),i=s.nodes[0].element.componentProvider.nodeIndex,o=kn.createRootView(e,t||[],n,s,r,yr),a=Sn(o,i).instance;return n&&o.renderer.setAttribute(xn(o,0).renderElement,"ng-version",qt.full),new Cr(o,new Ar(o),a)}}class Cr extends Vt{constructor(e,t,n){super(),this._view=e,this._viewRef=t,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=t,this.changeDetectorRef=t,this.instance=n}get location(){return new Ut(xn(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Vr(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(e){this._viewRef.onDestroy(e)}}function Er(e,t,n){return new xr(e,t,n)}class xr{constructor(e,t,n){this._view=e,this._elDef=t,this._data=n,this._embeddedViews=[]}get element(){return new Ut(this._data.renderElement)}get injector(){return new Vr(this._view,this._elDef)}get parentInjector(){let e=this._view,t=this._elDef.parent;for(;!t&&e;)t=zn(e),e=e.parent;return e?new Vr(e,t):new Vr(this._view,null)}clear(){for(let e=this._embeddedViews.length-1;e>=0;e--){const t=fr(this._data,e);kn.destroyView(t)}}get(e){const t=this._embeddedViews[e];if(t){const e=new Ar(t);return e.attachToViewContainerRef(this),e}return null}get length(){return this._embeddedViews.length}createEmbeddedView(e,t,n){const r=e.createEmbeddedView(t||{});return this.insert(r,n),r}createComponent(e,t,n,r,s){const i=n||this.parentInjector;s||e instanceof Ft||(s=i.get(jt));const o=e.create(i,r,void 0,s);return this.insert(o.hostView,t),o}insert(e,t){if(e.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=e;return function(e,t,n,r){let s=t.viewContainer._embeddedViews;null==n&&(n=s.length),r.viewContainerParent=e,_r(s,n,r),function(e,t){const n=Bn(t);if(!n||n===e||16&t.state)return;t.state|=16;let r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(t),function(e,n){if(4&n.flags)return;t.parent.def.nodeFlags|=4,n.flags|=4;let r=n.parent;for(;r;)r.childFlags|=4,r=r.parent}(0,t.parentNodeDef)}(t,r),kn.dirtyParentQueries(r),gr(t,n>0?s[n-1]:null,r)}(this._view,this._data,t,n._view),n.attachToViewContainerRef(this),e}move(e,t){if(e.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(e._view);return function(e,t,r){const s=e.viewContainer._embeddedViews,i=s[n];vr(s,n),null==r&&(r=s.length),_r(s,r,i),kn.dirtyParentQueries(i),mr(i),gr(e,r>0?s[r-1]:null,i)}(this._data,0,t),e}indexOf(e){return this._embeddedViews.indexOf(e._view)}remove(e){const t=fr(this._data,e);t&&kn.destroyView(t)}detach(e){const t=fr(this._data,e);return t?new Ar(t):null}}function Sr(e){return new Ar(e)}class Ar{constructor(e){this._view=e,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(e){const t=[];return Xn(e,0,void 0,void 0,t),t}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){Hn(this._view)}detach(){this._view.state&=-5}detectChanges(){const e=this._view.root.rendererFactory;e.begin&&e.begin();try{kn.checkAndUpdateView(this._view)}finally{e.end&&e.end()}}checkNoChanges(){kn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(e){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(e)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),kn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,mr(this._view),kn.dirtyParentQueries(this._view)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}}function Tr(e,t){return new kr(e,t)}class kr extends fn{constructor(e,t){super(),this._parentView=e,this._def=t}createEmbeddedView(e){return new Ar(kn.createEmbeddedView(this._parentView,this._def,this._def.element.template,e))}get elementRef(){return new Ut(xn(this._parentView,this._def.nodeIndex).renderElement)}}function Ir(e,t){return new Vr(e,t)}class Vr{constructor(e,t){this.view=e,this.elDef=t}get(e,t=we.THROW_IF_NOT_FOUND){return kn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:e,tokenKey:Nn(e)},t)}}function Nr(e,t){const n=e.def.nodes[t];if(1&n.flags){const t=xn(e,n.nodeIndex);return n.element.template?t.template:t.renderElement}if(2&n.flags)return En(e,n.nodeIndex).renderText;if(20240&n.flags)return Sn(e,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${t}`)}function Or(e){return new Dr(e.renderer)}class Dr{constructor(e){this.delegate=e}selectRootElement(e){return this.delegate.selectRootElement(e)}createElement(e,t){const[n,r]=ir(t),s=this.delegate.createElement(r,n);return e&&this.delegate.appendChild(e,s),s}createViewRoot(e){return e}createTemplateAnchor(e){const t=this.delegate.createComment("");return e&&this.delegate.appendChild(e,t),t}createText(e,t){const n=this.delegate.createText(t);return e&&this.delegate.appendChild(e,n),n}projectNodes(e,t){for(let n=0;ne())}onDestroy(e){this._destroyListeners.push(e)}}const Pr=Nn(zt),Fr=Nn(Zt),jr=Nn(Ut),Hr=Nn(mn),Lr=Nn(fn),Ur=Nn(cn),Br=Nn(we),zr=Nn(ve);function Gr(e,t,n,r,s,i,o,a){const l=[];if(o)for(let u in o){const[e,t]=o[u];l[e]={flags:8,name:u,nonMinifiedName:t,ns:null,securityContext:null,suffix:null}}const c=[];if(a)for(let u in a)c.push({type:1,propName:u,target:null,eventName:a[u]});return Zr(e,t|=16384,n,r,s,s,i,l,c)}function $r(e,t,n,r,s){return Zr(-1,e,t,0,n,r,s)}function Zr(e,t,n,r,s,i,o,a,l){const{matchedQueries:c,references:u,matchedQueryIds:d}=Qn(n);l||(l=[]),a||(a=[]),i=ce(i);const h=qn(o,oe(s));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:d,references:u,ngContentIndex:-1,childCount:r,bindings:a,bindingFlags:or(a),outputs:l,element:null,provider:{token:s,value:i,deps:h},text:null,query:null,ngContent:null}}function Wr(e,t){return Yr(e,t)}function Qr(e,t){let n=e;for(;n.parent&&!$n(n);)n=n.parent;return Kr(n.parent,zn(n),!0,t.provider.value,t.provider.deps)}function qr(e,t){const n=Kr(e,t.parent,(32768&t.flags)>0,t.provider.value,t.provider.deps);if(t.outputs.length)for(let r=0;rUn(e,t,n,r)}function Yr(e,t){const n=(8192&t.flags)>0,r=t.provider;switch(201347067&t.flags){case 512:return Kr(e,t.parent,n,r.value,r.deps);case 1024:return function(e,t,n,r,s){const i=s.length;switch(i){case 0:return r();case 1:return r(es(e,t,n,s[0]));case 2:return r(es(e,t,n,s[0]),es(e,t,n,s[1]));case 3:return r(es(e,t,n,s[0]),es(e,t,n,s[1]),es(e,t,n,s[2]));default:const o=Array(i);for(let r=0;rje});class as extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,s=e=>null,i=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(s=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(i=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(i=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(r,s,i);return e instanceof h&&e.add(o),o}}class ls{constructor(){this.dirty=!0,this._results=[],this.changes=new as,this.length=0}map(e){return this._results.map(e)}filter(e){return this._results.filter(e)}find(e){return this._results.find(e)}reduce(e,t){return this._results.reduce(e,t)}forEach(e){this._results.forEach(e)}some(e){return this._results.some(e)}toArray(){return this._results.slice()}[Ct()](){return this._results[Ct()]()}toString(){return this._results.toString()}reset(e){this._results=function e(t,n){void 0===n&&(n=t);for(let r=0;r(class{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}))(),ds=new ge("AppId");function hs(){return`${ps()}${ps()}${ps()}`}function ps(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const fs=new ge("Platform Initializer"),gs=new ge("Platform ID"),ms=new ge("appBootstrapListener"),_s=(()=>(class{log(e){console.log(e)}warn(e){console.warn(e)}}))();function vs(){throw new Error("Runtime compiler is not loaded")}const ys=vs,ws=vs,bs=vs,Cs=vs,Es=(()=>(class{constructor(){this.compileModuleSync=ys,this.compileModuleAsync=ws,this.compileModuleAndAllComponentsSync=bs,this.compileModuleAndAllComponentsAsync=Cs}clearCache(){}clearCacheFor(e){}getModuleId(e){}}))();class xs{}let Ss,As;function Ts(){const e=de.wtf;return!(!e||!(Ss=e.trace)||(As=Ss.events,0))}const ks=Ts(),Is=ks?function(e,t=null){return As.createScope(e,t)}:(e,t)=>(function(e,t){return null}),Vs=ks?function(e,t){return Ss.leaveScope(e,t),t}:(e,t)=>t,Ns=(()=>Promise.resolve(0))();function Os(e){"undefined"==typeof Zone?Ns.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class Ds{constructor({enableLongStackTrace:e=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new as(!1),this.onMicrotaskEmpty=new as(!1),this.onStable=new as(!1),this.onError=new as(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var t;Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(t=this)._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(e,n,r,s,i,o)=>{try{return Fs(t),e.invokeTask(r,s,i,o)}finally{js(t)}},onInvoke:(e,n,r,s,i,o,a)=>{try{return Fs(t),e.invoke(r,s,i,o,a)}finally{js(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t.hasPendingMicrotasks=s.microTask,Ps(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ds.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Ds.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const s=this._inner,i=s.scheduleEventTask("NgZoneEvent: "+r,e,Rs,Ms,Ms);try{return s.runTask(i,t,n)}finally{s.cancelTask(i)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function Ms(){}const Rs={};function Ps(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function Fs(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function js(e){e._nesting--,Ps(e)}class Hs{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new as,this.onMicrotaskEmpty=new as,this.onStable=new as,this.onError=new as}run(e){return e()}runGuarded(e){return e()}runOutsideAngular(e){return e()}runTask(e){return e()}}const Ls=(()=>(class{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:()=>{Ds.assertNotInAngularZone(),Os(()=>{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())Os(()=>{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(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.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,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}))(),Us=(()=>{class e{constructor(){this._applications=new Map,Gs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}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,t=!0){return Gs.findTestabilityInTree(this,e,t)}}return e.ctorParameters=(()=>[]),e})();class Bs{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let zs,Gs=new Bs,$s=function(e){return e instanceof Ft};const Zs=new ge("AllowMultipleToken");class Ws{constructor(e,t){this.name=e,this.token=t}}function Qs(e,t,n=[]){const r=`Platform: ${t}`,s=new ge(r);return(t=[])=>{let i=qs();if(!i||i.injector.get(Zs,!1))if(e)e(n.concat(t).concat({provide:s,useValue:!0}));else{const e=n.concat(t).concat({provide:s,useValue:!0});!function(e){if(zs&&!zs.destroyed&&!zs.injector.get(Zs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");zs=e.get(Js);const t=e.get(fs,null);t&&t.forEach(e=>e())}(we.create({providers:e,name:r}))}return function(e){const t=qs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(s)}}function qs(){return zs&&!zs.destroyed?zs:null}const Js=(()=>(class{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n="noop"===(s=t?t.ngZone:void 0)?new Hs:("zone.js"===s?void 0:s)||new Ds({enableLongStackTrace:$e()}),r=[{provide:Ds,useValue:n}];var s;return n.run(()=>{const t=we.create({providers:r,parent:this.injector,name:e.moduleType.name}),s=e.create(t),i=s.injector.get(Be,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Xs(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{i.handleError(e)}})),function(e,t,n){try{const s=n();return yt(s)?s.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):s}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(i,n,()=>{const e=s.injector.get(us);return e.runInitializers(),e.donePromise.then(()=>(this._moduleDoBootstrap(s),s))})})}bootstrapModule(e,t=[]){const n=Ys({},t);return function(e,t,n){return e.get(xs).createCompiler([t]).compileModuleAsync(n)}(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ks);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${oe(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function Ys(e,t){return Array.isArray(t)?t.reduce(Ys,e):Object.assign({},e,t)}const Ks=(()=>{class e{constructor(e,t,n,r,s,i){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=$e(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new v(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),a=new v(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{Ds.assertNotInAngularZone(),Os(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Ds.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof v?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?s=>s.pipe(e((e,r)=>j(t(e,r)).pipe(M((t,s)=>n(e,t,r,s))),r)):("number"==typeof n&&(r=n),e=>e.lift(new H(t,r)))}(U,e)}(t)(function(e,t){return t?F(e,t):new v(T(e))}(e,n))}(o,a.pipe(e=>B()(function(e,t){return function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,Z);return r.source=t,r.subjectFactory=n,r}}(Q)(e))))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Nt?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=$s(n)?null:this._injector.get(jt),s=n.create(we.NULL,[],t||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const i=s.injector.get(Ls,null);return i&&s.injector.get(Us).registerApplication(s.location.nativeElement,i),this._loadComponent(s),$e()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const t=e._tickScope();try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,Vs(t)}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Xs(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(ms,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Xs(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e._tickScope=Is("ApplicationRef#tick()"),e})();function Xs(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}class ei{constructor(e,t){this.name=e,this.callback=t}}class ti{constructor(e,t,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=e,t&&t instanceof ni&&t.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class ni extends ti{constructor(e,t,n){super(e,t,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=e}addChild(e){e&&(this.childNodes.push(e),e.parent=this)}removeChild(e){const t=this.childNodes.indexOf(e);-1!==t&&(e.parent=null,this.childNodes.splice(t,1))}insertChildrenAfter(e,t){const n=this.childNodes.indexOf(e);-1!==n&&(this.childNodes.splice(n+1,0,...t),t.forEach(t=>{t.parent&&t.parent.removeChild(t),e.parent=this}))}insertBefore(e,t){const n=this.childNodes.indexOf(e);-1===n?this.addChild(t):(t.parent&&t.parent.removeChild(t),t.parent=this,this.childNodes.splice(n,0,t))}query(e){return this.queryAll(e)[0]||null}queryAll(e){const t=[];return function e(t,n,r){t.childNodes.forEach(t=>{t instanceof ni&&(n(t)&&r.push(t),e(t,n,r))})}(this,e,t),t}queryAllNodes(e){const t=[];return function e(t,n,r){t instanceof ni&&t.childNodes.forEach(t=>{n(t)&&r.push(t),t instanceof ni&&e(t,n,r)})}(this,e,t),t}get children(){return this.childNodes.filter(e=>e instanceof ni)}triggerEventHandler(e,t){this.listeners.forEach(n=>{n.name==e&&n.callback(t)})}}const ri=new Map,si=function(e){return ri.get(e)||null};function ii(e){ri.set(e.nativeNode,e)}const oi=Qs(null,"core",[{provide:gs,useValue:"unknown"},{provide:Js,deps:[we]},{provide:Us,deps:[]},{provide:_s,deps:[]}]),ai=new ge("LocaleId");function li(){return hn}function ci(){return pn}function ui(e){return e||"en-US"}function di(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}const hi=(()=>(class{constructor(e){}}))();function pi(e,t,n,r,s,i){e|=1;const{matchedQueries:o,references:a,matchedQueryIds:l}=Qn(t);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:e,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:l,references:a,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Kn(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:s||In},provider:null,text:null,query:null,ngContent:null}}function fi(e,t,n,r,s,i,o=[],a,l,c,u,d){c||(c=In);const{matchedQueries:h,references:p,matchedQueryIds:f}=Qn(n);let g=null,m=null;i&&([g,m]=ir(i)),a=a||[];const _=new Array(a.length);for(let w=0;w{const[n,r]=ir(e);return[n,r,t]});return d=function(e){if(e&&e.id===On){const t=null!=e.encapsulation&&e.encapsulation!==Fe.None||e.styles.length||Object.keys(e.data).length;e.id=t?`c${Rn++}`:Dn}return e&&e.id===Dn&&(e=null),e||null}(d),u&&(t|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:h,matchedQueryIds:f,references:p,ngContentIndex:r,childCount:s,bindings:_,bindingFlags:or(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:d,publicProviders:null,allProviders:null,handleEvent:c||In},provider:null,text:null,query:null,ngContent:null}}function gi(e,t,n){const r=n.element,s=e.root.selectorOrNode,i=e.renderer;let o;if(e.parent||!s){o=r.name?i.createElement(r.name,r.ns):i.createComment("");const s=Jn(e,t,n);s&&i.appendChild(s,o)}else o=i.selectRootElement(s,!!r.componentRendererType&&r.componentRendererType.encapsulation===Fe.ShadowDom);if(r.attrs)for(let a=0;aUn(e,t,n,r)}function vi(e,t,n,r){if(!Fn(e,t,n,r))return!1;const s=t.bindings[n],i=xn(e,t.nodeIndex),o=i.renderElement,a=s.name;switch(15&s.flags){case 1:!function(e,t,n,r,s,i){const o=t.securityContext;let a=o?e.root.sanitizer.sanitize(o,i):i;a=null!=a?a.toString():null;const l=e.renderer;null!=i?l.setAttribute(n,s,a,r):l.removeAttribute(n,s,r)}(e,s,o,s.ns,a,r);break;case 2:!function(e,t,n,r){const s=e.renderer;r?s.addClass(t,n):s.removeClass(t,n)}(e,o,a,r);break;case 4:!function(e,t,n,r,s){let i=e.root.sanitizer.sanitize(pt.STYLE,s);if(null!=i){i=i.toString();const e=t.suffix;null!=e&&(i+=e)}else i=null;const o=e.renderer;null!=i?o.setStyle(n,r,i):o.removeStyle(n,r)}(e,s,o,a,r);break;case 8:!function(e,t,n,r,s){const i=t.securityContext;let o=i?e.root.sanitizer.sanitize(i,s):s;e.renderer.setProperty(n,r,o)}(33554432&t.flags&&32&s.flags?i.componentView:e,s,o,a,r)}return!0}function yi(e,t,n){let r=[];for(let s in n)r.push({propName:s,bindingType:n[s]});return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,ngContentIndex:-1,matchedQueries:{},matchedQueryIds:0,references:{},childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:{id:t,filterId:Wn(t),bindings:r},ngContent:null}}function wi(e){const t=e.def.nodeMatchedQueries;for(;e.parent&&Zn(e);){let n=e.parentNodeDef;e=e.parent;const r=n.nodeIndex+n.childCount;for(let s=0;s<=r;s++){const r=e.def.nodes[s];67108864&r.flags&&536870912&r.flags&&(r.query.filterId&t)===r.query.filterId&&Tn(e,s).setDirty(),!(1&r.flags&&s+r.childCount0)c=e,Ii(e)||(u=e);else for(;c&&f===c.nodeIndex+c.childCount;){const e=c.parent;e&&(e.childFlags|=c.childFlags,e.childMatchedQueries|=c.childMatchedQueries),u=(c=e)&&Ii(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:a,nodeMatchedQueries:l,flags:e,nodes:t,updateDirectives:n||In,updateRenderer:r||In,handleEvent:(e,n,r,s)=>t[n].element.handleEvent(e,r,s),bindingCount:s,outputCount:i,lastRenderRootNode:p}}function Ii(e){return 0!=(1&e.flags)&&null===e.element.name}function Vi(e,t,n){const r=t.element&&t.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.lastRenderRootNode.flags)throw new Error(`Illegal State: Last root node of a template can't have embedded views, at index ${t.nodeIndex}!`)}if(20224&t.flags&&0==(1&(e?e.flags:0)))throw new Error(`Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index ${t.nodeIndex}!`);if(t.query){if(67108864&t.flags&&(!e||0==(16384&e.flags)))throw new Error(`Illegal State: Content Query nodes need to be children of directives, at index ${t.nodeIndex}!`);if(134217728&t.flags&&e)throw new Error(`Illegal State: View Query nodes have to be top level nodes, at index ${t.nodeIndex}!`)}if(t.childCount){const r=e?e.nodeIndex+e.childCount:n-1;if(t.nodeIndex<=r&&t.nodeIndex+t.childCount>r)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${t.nodeIndex}!`)}}function Ni(e,t,n,r){const s=Mi(e.root,e.renderer,e,t,n);return Ri(s,e.component,r),Pi(s),s}function Oi(e,t,n){const r=Mi(e,e.renderer,null,null,t);return Ri(r,n,n),Pi(r),r}function Di(e,t,n,r){const s=t.element.componentRendererType;let i;return i=s?e.root.rendererFactory.createRenderer(r,s):e.root.renderer,Mi(e.root,i,e,t.element.componentProvider,n)}function Mi(e,t,n,r,s){const i=new Array(s.nodes.length),o=s.outputCount?new Array(s.outputCount):null;return{def:s,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:e,renderer:t,oldValues:new Array(s.bindingCount),disposables:o,initIndex:-1}}function Ri(e,t,n){e.component=t,e.context=n}function Pi(e){let t;$n(e)&&(t=xn(e.parent,e.parentNodeDef.parent.nodeIndex).renderElement);const n=e.def,r=e.nodes;for(let s=0;s0&&vi(e,t,0,n)&&(p=!0),h>1&&vi(e,t,1,r)&&(p=!0),h>2&&vi(e,t,2,s)&&(p=!0),h>3&&vi(e,t,3,i)&&(p=!0),h>4&&vi(e,t,4,o)&&(p=!0),h>5&&vi(e,t,5,a)&&(p=!0),h>6&&vi(e,t,6,l)&&(p=!0),h>7&&vi(e,t,7,c)&&(p=!0),h>8&&vi(e,t,8,u)&&(p=!0),h>9&&vi(e,t,9,d)&&(p=!0),p}(e,t,n,r,s,i,o,a,l,c,u,d);case 2:return function(e,t,n,r,s,i,o,a,l,c,u,d){let h=!1;const p=t.bindings,f=p.length;if(f>0&&Fn(e,t,0,n)&&(h=!0),f>1&&Fn(e,t,1,r)&&(h=!0),f>2&&Fn(e,t,2,s)&&(h=!0),f>3&&Fn(e,t,3,i)&&(h=!0),f>4&&Fn(e,t,4,o)&&(h=!0),f>5&&Fn(e,t,5,a)&&(h=!0),f>6&&Fn(e,t,6,l)&&(h=!0),f>7&&Fn(e,t,7,c)&&(h=!0),f>8&&Fn(e,t,8,u)&&(h=!0),f>9&&Fn(e,t,9,d)&&(h=!0),h){let h=t.text.prefix;f>0&&(h+=Ti(n,p[0])),f>1&&(h+=Ti(r,p[1])),f>2&&(h+=Ti(s,p[2])),f>3&&(h+=Ti(i,p[3])),f>4&&(h+=Ti(o,p[4])),f>5&&(h+=Ti(a,p[5])),f>6&&(h+=Ti(l,p[6])),f>7&&(h+=Ti(c,p[7])),f>8&&(h+=Ti(u,p[8])),f>9&&(h+=Ti(d,p[9]));const g=En(e,t.nodeIndex).renderText;e.renderer.setValue(g,h)}return h}(e,t,n,r,s,i,o,a,l,c,u,d);case 16384:return function(e,t,n,r,s,i,o,a,l,c,u,d){const h=Sn(e,t.nodeIndex),p=h.instance;let f=!1,g=void 0;const m=t.bindings.length;return m>0&&Pn(e,t,0,n)&&(f=!0,g=ns(e,h,t,0,n,g)),m>1&&Pn(e,t,1,r)&&(f=!0,g=ns(e,h,t,1,r,g)),m>2&&Pn(e,t,2,s)&&(f=!0,g=ns(e,h,t,2,s,g)),m>3&&Pn(e,t,3,i)&&(f=!0,g=ns(e,h,t,3,i,g)),m>4&&Pn(e,t,4,o)&&(f=!0,g=ns(e,h,t,4,o,g)),m>5&&Pn(e,t,5,a)&&(f=!0,g=ns(e,h,t,5,a,g)),m>6&&Pn(e,t,6,l)&&(f=!0,g=ns(e,h,t,6,l,g)),m>7&&Pn(e,t,7,c)&&(f=!0,g=ns(e,h,t,7,c,g)),m>8&&Pn(e,t,8,u)&&(f=!0,g=ns(e,h,t,8,u,g)),m>9&&Pn(e,t,9,d)&&(f=!0,g=ns(e,h,t,9,d,g)),g&&p.ngOnChanges(g),65536&t.flags&&Cn(e,256,t.nodeIndex)&&p.ngOnInit(),262144&t.flags&&p.ngDoCheck(),f}(e,t,n,r,s,i,o,a,l,c,u,d);case 32:case 64:case 128:return function(e,t,n,r,s,i,o,a,l,c,u,d){const h=t.bindings;let p=!1;const f=h.length;if(f>0&&Fn(e,t,0,n)&&(p=!0),f>1&&Fn(e,t,1,r)&&(p=!0),f>2&&Fn(e,t,2,s)&&(p=!0),f>3&&Fn(e,t,3,i)&&(p=!0),f>4&&Fn(e,t,4,o)&&(p=!0),f>5&&Fn(e,t,5,a)&&(p=!0),f>6&&Fn(e,t,6,l)&&(p=!0),f>7&&Fn(e,t,7,c)&&(p=!0),f>8&&Fn(e,t,8,u)&&(p=!0),f>9&&Fn(e,t,9,d)&&(p=!0),p){const p=An(e,t.nodeIndex);let g;switch(201347067&t.flags){case 32:g=new Array(h.length),f>0&&(g[0]=n),f>1&&(g[1]=r),f>2&&(g[2]=s),f>3&&(g[3]=i),f>4&&(g[4]=o),f>5&&(g[5]=a),f>6&&(g[6]=l),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=d);break;case 64:g={},f>0&&(g[h[0].name]=n),f>1&&(g[h[1].name]=r),f>2&&(g[h[2].name]=s),f>3&&(g[h[3].name]=i),f>4&&(g[h[4].name]=o),f>5&&(g[h[5].name]=a),f>6&&(g[h[6].name]=l),f>7&&(g[h[7].name]=c),f>8&&(g[h[8].name]=u),f>9&&(g[h[9].name]=d);break;case 128:const e=n;switch(f){case 1:g=e.transform(n);break;case 2:g=e.transform(r);break;case 3:g=e.transform(r,s);break;case 4:g=e.transform(r,s,i);break;case 5:g=e.transform(r,s,i,o);break;case 6:g=e.transform(r,s,i,o,a);break;case 7:g=e.transform(r,s,i,o,a,l);break;case 8:g=e.transform(r,s,i,o,a,l,c);break;case 9:g=e.transform(r,s,i,o,a,l,c,u);break;case 10:g=e.transform(r,s,i,o,a,l,c,u,d)}}p.value=g}return p}(e,t,n,r,s,i,o,a,l,c,u,d);default:throw"unreachable"}}(e,t,r,s,i,o,a,l,c,u,d,h):function(e,t,n){switch(201347067&t.flags){case 1:return function(e,t,n){let r=!1;for(let s=0;s0&&jn(e,t,0,n),h>1&&jn(e,t,1,r),h>2&&jn(e,t,2,s),h>3&&jn(e,t,3,i),h>4&&jn(e,t,4,o),h>5&&jn(e,t,5,a),h>6&&jn(e,t,6,l),h>7&&jn(e,t,7,c),h>8&&jn(e,t,8,u),h>9&&jn(e,t,9,d)}(e,t,r,s,i,o,a,l,c,u,d,h):function(e,t,n){for(let r=0;r{const r=ro.get(e.token);3840&e.flags&&r&&(t=!0,n=n||r.deprecatedBehavior)}),e.modules.forEach(e=>{so.forEach((r,s)=>{se(s).providedIn===e&&(t=!0,n=n||r.deprecatedBehavior)})}),{hasOverrides:t,hasDeprecatedOverrides:n})}(e);return t?(function(e){for(let t=0;t0){let t=new Set(e.modules);so.forEach((r,s)=>{if(t.has(se(s).providedIn)){let t={token:s,flags:r.flags|(n?4096:0),deps:qn(r.deps),value:r.value,index:e.providers.length};e.providers.push(t),e.providersByKey[Nn(s)]=t}})}}(e=e.factory(()=>In)),e):e}(r))}const ro=new Map,so=new Map,io=new Map;function oo(e){let t;ro.set(e.token,e),"function"==typeof e.token&&(t=se(e.token))&&"function"==typeof t.providedIn&&so.set(e.token,e)}function ao(e,t){const n=Kn(t.viewDefFactory),r=Kn(n.nodes[0].element.componentView);io.set(e,r)}function lo(){ro.clear(),so.clear(),io.clear()}function co(e){if(0===ro.size)return e;const t=function(e){const t=[];let n=null;for(let r=0;rIn);for(let r=0;r"-"+e[1].toLowerCase())}`)]=vt(a))}const r=t.parent,a=xn(e,r.nodeIndex).renderElement;if(r.element.name)for(let t in n){const r=n[t];null!=r?e.renderer.setAttribute(a,t,r):e.renderer.removeAttribute(a,t)}else e.renderer.setValue(a,`bindings=${JSON.stringify(n,null,2)}`)}}var s,i}function So(e,t,n,r){Ui(e,t,n,...r)}function Ao(e,t){for(let n=t;n++i===s?e.error.bind(e,...t):In),inew ko(e,t),handleEvent:bo,updateDirectives:Co,updateRenderer:Eo}:{setCurrentNode:()=>{},createRootView:Yi,createEmbeddedView:Ni,createComponentView:Di,createNgModuleRef:Mr,overrideProvider:In,overrideComponentView:In,clearOverrides:In,checkAndUpdateView:ji,checkNoChangesView:Fi,destroyView:zi,createDebugContext:(e,t)=>new ko(e,t),handleEvent:(e,t,n,r)=>e.def.handleEvent(e,t,n,r),updateDirectives:(e,t)=>e.def.updateDirectives(0===t?uo:ho,e),updateRenderer:(e,t)=>e.def.updateRenderer(0===t?uo:ho,e)};kn.setCurrentNode=e.setCurrentNode,kn.createRootView=e.createRootView,kn.createEmbeddedView=e.createEmbeddedView,kn.createComponentView=e.createComponentView,kn.createNgModuleRef=e.createNgModuleRef,kn.overrideProvider=e.overrideProvider,kn.overrideComponentView=e.overrideComponentView,kn.clearOverrides=e.clearOverrides,kn.checkAndUpdateView=e.checkAndUpdateView,kn.checkNoChangesView=e.checkNoChangesView,kn.destroyView=e.destroyView,kn.resolveDep=es,kn.createDebugContext=e.createDebugContext,kn.handleEvent=e.handleEvent,kn.updateDirectives=e.updateDirectives,kn.updateRenderer=e.updateRenderer,kn.dirtyParentQueries=wi}();const t=function(e){const t=Array.from(e.providers),n=Array.from(e.modules),r={};for(const s in e.providersByKey)r[s]=e.providersByKey[s];return{factory:e.factory,isRoot:e.isRoot,providers:t,modules:n,providersByKey:r}}(Kn(this._ngModuleDefFactory));return kn.createNgModuleRef(this.moduleType,e||we.NULL,this._bootstrapComponents,t)}}class Po{}class Fo{static getAvailableVideoInputs(){return navigator.mediaDevices&&navigator.mediaDevices.enumerateDevices?new Promise((e,t)=>{navigator.mediaDevices.enumerateDevices().then(t=>{e(t.filter(e=>"videoinput"===e.kind))}).catch(e=>{t(e.message||e)})}):Promise.reject("enumerateDevices() not supported.")}}class jo{constructor(){this.showWebcam=!0,this.allowCameraSwitch=!0,this.multipleWebcamsAvailable=!1,this.videoOptions={},this.errors=[],this.webcamImage=null,this.trigger=new x,this.nextWebcam=new x}ngOnInit(){Fo.getAvailableVideoInputs().then(e=>{this.multipleWebcamsAvailable=e&&e.length>1})}triggerSnapshot(){this.trigger.next()}toggleWebcam(){this.showWebcam=!this.showWebcam}handleInitError(e){this.errors.push(e)}showNextWebcam(e){this.nextWebcam.next(e)}handleImage(e){console.log("received webcam image",e),this.webcamImage=e}cameraWasSwitched(e){console.log("active device: "+e),this.deviceId=e}get triggerObservable(){return this.trigger.asObservable()}get nextWebcamObservable(){return this.nextWebcam.asObservable()}}class Ho{}const Lo=void 0;var Uo=["en",[["a","p"],["AM","PM"],Lo],[["AM","PM"],Lo,Lo],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Lo,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Lo,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Lo,"{1} 'at' {0}",Lo],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];const Bo={},zo=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Go=new ge("UseV4Plurals");class $o{}const Zo=(()=>(class extends $o{constructor(e,t){super(),this.locale=e,this.deprecatedPluralFn=t}getPluralCategory(e,t){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(t||this.locale,e):function(e){return function(e){const t=e.toLowerCase().replace(/_/g,"-");let n=Bo[t];if(n)return n;const r=t.split("-")[0];if(n=Bo[r])return n;if("en"===r)return Uo;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[18]}(t||this.locale)(e)){case zo.Zero:return"zero";case zo.One:return"one";case zo.Two:return"two";case zo.Few:return"few";case zo.Many:return"many";default:return"other"}}}))();class Wo{constructor(e,t,n,r){this.$implicit=e,this.ngForOf=t,this.index=n,this.count=r}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}}const Qo=(()=>(class{constructor(e,t,n){this._viewContainer=e,this._template=t,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){$e()&&null!=e&&"function"!=typeof e&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(e)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${n}' of type '${e=n,e.name||typeof e}'. NgFor only supports binding to Iterables such as Arrays.`)}}var e;if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const t=[];e.forEachOperation((e,n,r)=>{if(null==e.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Wo(null,this._ngForOf,-1,-1),r),s=new qo(e,n);t.push(s)}else if(null==r)this._viewContainer.remove(n);else{const s=this._viewContainer.get(n);this._viewContainer.move(s,r);const i=new qo(e,s);t.push(i)}});for(let n=0;n{this._viewContainer.get(e.currentIndex).context.$implicit=e.item})}_perViewChange(e,t){e.context.$implicit=t.item}static ngTemplateContextGuard(e,t){return!0}}))();class qo{constructor(e,t){this.record=e,this.view=t}}const Jo=(()=>(class{constructor(e,t){this._viewContainer=e,this._context=new Yo,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=t}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){Ko("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Ko("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 ngTemplateGuard_ngIf(e,t){return!0}}))();class Yo{constructor(){this.$implicit=null,this.ngIf=null}}function Ko(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${oe(t)}'.`)}const Xo=(()=>(class{transform(e){return JSON.stringify(e,null,2)}}))(),ea=(()=>(class{}))(),ta=new ge("DocumentToken");class na{constructor(e,t,n){this._mimeType=null,this._imageAsBase64=null,this._imageAsDataUrl=null,this._imageData=null,this._mimeType=t,this._imageAsDataUrl=e,this._imageData=n}static getDataFromDataUrl(e,t){return e.replace(`data:${t};base64,`,"")}get imageAsBase64(){return this._imageAsBase64?this._imageAsBase64:this._imageAsBase64=na.getDataFromDataUrl(this._imageAsDataUrl,this._mimeType)}get imageAsDataUrl(){return this._imageAsDataUrl}get imageData(){return this._imageData}}const ra=(()=>{class e{constructor(){this.width=640,this.height=480,this.videoOptions=e.DEFAULT_VIDEO_OPTIONS,this.allowCameraSwitch=!0,this.captureImageData=!1,this.imageType=e.DEFAULT_IMAGE_TYPE,this.imageQuality=e.DEFAULT_IMAGE_QUALITY,this.imageCapture=new as,this.initError=new as,this.imageClick=new as,this.cameraSwitched=new as,this.availableVideoInputs=[],this.videoInitialized=!1,this.activeVideoInputIndex=-1,this.mediaStream=null,this.activeVideoSettings=null}set trigger(e){this.triggerSubscription&&this.triggerSubscription.unsubscribe(),this.triggerSubscription=e.subscribe(()=>{this.takeSnapshot()})}set switchCamera(e){this.switchCameraSubscription&&this.switchCameraSubscription.unsubscribe(),this.switchCameraSubscription=e.subscribe(e=>{"string"==typeof e?this.switchToVideoInput(e):this.rotateVideoInput(!1!==e)})}static getMediaConstraintsForDevice(e,t){const n=t||this.DEFAULT_VIDEO_OPTIONS;return e&&(n.deviceId={exact:e}),n}static getDeviceIdFromMediaStreamTrack(t){if(t.getSettings&&t.getSettings()&&t.getSettings().deviceId)return t.getSettings().deviceId;if(t.getConstraints&&t.getConstraints()&&t.getConstraints().deviceId){const n=t.getConstraints().deviceId;return e.getValueFromConstrainDOMString(n)}}static getFacingModeFromMediaStreamTrack(t){if(t){if(t.getSettings&&t.getSettings()&&t.getSettings().facingMode)return t.getSettings().facingMode;if(t.getConstraints&&t.getConstraints()&&t.getConstraints().facingMode){const n=t.getConstraints().facingMode;return e.getValueFromConstrainDOMString(n)}}}static isUserFacing(t){const n=e.getFacingModeFromMediaStreamTrack(t);return!!n&&"user"===n.toLowerCase()}static getValueFromConstrainDOMString(e){if(e){if(e instanceof String)return String(e);if(Array.isArray(e)&&Array(e).length>0)return String(e[0]);if("object"==typeof e){if(e.exact)return String(e.exact);if(e.ideal)return String(e.ideal)}}return null}ngAfterViewInit(){this.detectAvailableDevices().then(e=>{this.switchToVideoInput(e.length>0?e[0].deviceId:null)}).catch(e=>{this.initError.next({message:e}),this.switchToVideoInput(null)})}ngOnDestroy(){this.stopMediaTracks(),this.unsubscribeFromSubscriptions()}takeSnapshot(){const t=this.video.nativeElement,n={width:this.width,height:this.height};t.videoWidth&&(n.width=t.videoWidth,n.height=t.videoHeight);const r=this.canvas.nativeElement;r.width=n.width,r.height=n.height;const s=r.getContext("2d");s.drawImage(this.video.nativeElement,0,0);const i=this.imageType?this.imageType:e.DEFAULT_IMAGE_TYPE,o=r.toDataURL(i,this.imageQuality?this.imageQuality:e.DEFAULT_IMAGE_QUALITY);let a=null;this.captureImageData&&(a=s.getImageData(0,0,r.width,r.height)),this.imageCapture.next(new na(o,i,a))}rotateVideoInput(e){this.availableVideoInputs&&this.availableVideoInputs.length>1&&this.switchToVideoInput(this.availableVideoInputs[(this.activeVideoInputIndex+(e?1:this.availableVideoInputs.length-1))%this.availableVideoInputs.length].deviceId)}switchToVideoInput(e){this.videoInitialized=!1,this.stopMediaTracks(),this.initWebcam(e,this.videoOptions)}videoResize(){}get videoWidth(){const e=this.getVideoAspectRatio();return Math.min(this.width,this.height*e)}get videoHeight(){const e=this.getVideoAspectRatio();return Math.min(this.height,this.width/e)}get videoStyleClasses(){let e="";return this.isMirrorImage()&&(e+="mirrored "),e.trim()}getVideoAspectRatio(){const e=this.video.nativeElement;return e.videoWidth&&e.videoWidth>0&&e.videoHeight&&e.videoHeight>0?e.videoWidth/e.videoHeight:this.width/this.height}initWebcam(t,n){const r=this.video.nativeElement;if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){const s=e.getMediaConstraintsForDevice(t,n);navigator.mediaDevices.getUserMedia({video:s}).then(t=>{this.mediaStream=t,r.srcObject=t,r.play(),this.activeVideoSettings=t.getVideoTracks()[0].getSettings();const n=e.getDeviceIdFromMediaStreamTrack(t.getVideoTracks()[0]);this.activeVideoInputIndex=n?this.availableVideoInputs.findIndex(e=>e.deviceId===n):-1,this.videoInitialized=!0,this.cameraSwitched.next(n)}).catch(e=>{this.initError.next({message:e.message,mediaStreamError:e})})}else this.initError.next({message:"Cannot read UserMedia from MediaDevices."})}getActiveVideoTrack(){return this.mediaStream?this.mediaStream.getVideoTracks()[0]:null}isMirrorImage(){if(!this.getActiveVideoTrack())return!1;{let e="auto";switch(this.mirrorImage&&("string"==typeof this.mirrorImage?e=String(this.mirrorImage).toLowerCase():this.mirrorImage.x&&(e=this.mirrorImage.x.toLowerCase())),e){case"always":return!0;case"never":return!1}}return e.isUserFacing(this.getActiveVideoTrack())}stopMediaTracks(){this.mediaStream&&this.mediaStream.getTracks&&this.mediaStream.getTracks().forEach(e=>e.stop())}unsubscribeFromSubscriptions(){this.triggerSubscription&&this.triggerSubscription.unsubscribe(),this.switchCameraSubscription&&this.switchCameraSubscription.unsubscribe()}detectAvailableDevices(){return new Promise((e,t)=>{Fo.getAvailableVideoInputs().then(t=>{this.availableVideoInputs=t,e(t)}).catch(e=>{this.availableVideoInputs=[],t(e)})})}}return e.DEFAULT_VIDEO_OPTIONS={facingMode:"environment"},e.DEFAULT_IMAGE_TYPE="image/jpeg",e.DEFAULT_IMAGE_QUALITY=.92,e})();var sa=Mn({encapsulation:0,styles:[[".webcam-wrapper[_ngcontent-%COMP%]{display:inline-block;position:relative;line-height:0}.webcam-wrapper[_ngcontent-%COMP%] video.mirrored[_ngcontent-%COMP%]{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.webcam-wrapper[_ngcontent-%COMP%] canvas[_ngcontent-%COMP%]{display:none}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]{background-color:rgba(0,0,0,.1);background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAE9UlEQVR42u2aT2hdRRTGf+cRQqghSqihdBFDkRISK2KDfzDWxHaRQHEhaINKqa1gKQhd6EZLN+IidCH+Q0oWIkVRC21BQxXRitVaSbKoJSGtYGoK2tQ/tU1jY5v0c5F54Xl7b/KSO/PyEt+3e5f75p7zzZwzZ74zUEIJJfyfYaEGllQGVAGZlENdBy6Z2cSiYFTSKkkfS/pH/nBF0kFJdUW9AiRVASeAukD8DgNrzOySrwEzng18KaDzALXuG8W3AiStAvqBisBRNg40mtlPxbYCOgvgPO4bncWW+JpVeDQXRQhIygDfA00F5r0XuNfMrgclQFI98DDQCNQA5ZFXqoCWBVp8XwHRHeEqcN7loy/NbHBesyqpQ1KfFj/6nC+ZvFaApFrgPaCZpYVvgCfNbDiRAElNwGFg+RIt/X8H2s2s9wYCJDUAR4HqJX7++RN40MwGpgmQVAH0AQ2BPz4AHHPl8nBOAqtyFWQjsA6oL4Ada81sPDv7uwImod8kvSJp9RyS8O2SXnb/DYVd2Y9VSroQ4ANXJO2WVJmixqh0kzMWwL4LkiqRtDnA4D1zmfE8j9g9AezcnAHaPcfXdbfdnPZ2Yps6+DwAvO/Z1naTdApY7Xng48BDZnY1MpMVQBuw3iXc5Tnb0wBwBPjUzP6eoezuArZ6svM0geJLkvZEYnl3nkntoqROSbckSW2Suj3ZOIangc7GPJuUtNGdFIfmMeavktoSSKiW9LMPw30Q8JqkekmjCbOZRhuclLQjgYSNxUBAj6RyZ9ATgUJpUtJTCSR8vpAEXHAyWK5BXYFIGHOlepSAloUk4NEYgyoknQhEwhFJ0e8h6VSaQeerCb5uZgdi9utxYBNwOUD93hIVXswM4INCi6K9wAszFC2DwLOBDjHbYp59karIUnRdzYy/3ClqVklaUhfwTICj7K25OqA7a4wWagVsm4Me/xzwg2cCqqONFzO7DPxSCAJi436GUBgHHguQD2oTlJ55oSzP9ybccsttSJw1szdjFOSnI/8dTCGZHwcORp4Nx7y3B1iZ8/sm4MW8/Euxg5wIsS/HaAp3zeP4/G7obRDXI4jiTIA22H7Xdc7X+S3A5lC7QBQ357aq3VAjCeSkwUfAJrfvz+R8A9ADLAtZB+TinpjC5JMA+//jwPZZnF8G7J+L8z4IWB/zbG+gIujVWfLBW/NStVMmqaG4POJRsIjix7h8IGnLQuoBbQki5sVAJHyYm7YkNaRRtXwQ8G1cHpX0iKRrgUjYno17Sf0LrQhJUkdCeHWkVITGJI0k1QeS3ikGSUzOyJUJJNznYneuOCnpTldcxa2kP3xJYqOeSDjqZG8ShJLnE8TTuMS6Iyu1BW7djZqkfo9N0QOuYJmYQddfB7RG+gLTNzqAY9FrL+5/nwEbvDdJJe3zzOrhNP3AWRqmk55t3ZcBuj3b2gb0Sbrbo/NNzk7fFzu7s/E5EiC+rrmeQU0Kx2skvRFoOx2ZzlmSdgbsw49JetvtBpk8nM64d/cGbNtJ0s7cGyJlwHeEv+t3nqnLSgPAUOSGyG3AHUxdzqoJbEcvcL+ZTeTeEapzJKxgaeOcc/7Mf06D7kFrguS0VDAMtGadv+E47DT9tcChJej8ISfpD+abgTe45uOkFi8mnQ+JBVQ+d4VXuOptjavcyot8pq86mfwk8LWZnaOEEkoooYQSSojDv8AhQNeGfe0jAAAAAElFTkSuQmCC);background-repeat:no-repeat;border-radius:5px;position:absolute;right:13px;top:10px;height:48px;width:48px;background-size:80%;cursor:pointer;background-position:center;transition:background-color .2s ease}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.18)}"]],data:{}});function ia(e){return ki(0,[(e()(),fi(0,0,null,null,0,"div",[["class","camera-switch"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.rotateVideoInput(!0)&&r),r},null,null))],null,null)}function oa(e){return ki(0,[yi(402653184,1,{video:0}),yi(402653184,2,{canvas:0}),(e()(),fi(2,0,null,null,4,"div",[["class","webcam-wrapper"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.imageClick.next()&&r),r},null,null)),(e()(),fi(3,0,[[1,0],["video",1]],null,0,"video",[["autoplay",""],["muted",""],["playsinline",""]],[[8,"width",0],[8,"height",0],[8,"className",0]],[[null,"resize"]],function(e,t,n){var r=!0;return"resize"===t&&(r=!1!==e.component.videoResize()&&r),r},null,null)),(e()(),pi(16777216,null,null,1,null,ia)),Gr(5,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),fi(6,0,[[2,0],["canvas",1]],null,0,"canvas",[],[[8,"width",0],[8,"height",0]],null,null,null,null))],function(e,t){var n=t.component;e(t,5,0,n.allowCameraSwitch&&n.availableVideoInputs.length>1&&n.videoInitialized)},function(e,t){var n=t.component;e(t,3,0,n.videoWidth,n.videoHeight,n.videoStyleClasses),e(t,6,0,n.width,n.height)})}let aa=null;function la(){return aa}class ca{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(e){this._attrToPropMap=e}}class ua extends ca{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const t=this.createElement("div",document);if(null!=this.getStyle(t,"animationName"))this._animationPrefix="";else{const e=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(t,e)&&(this._transitionEnd=n[e])})}catch(e){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(e){return e.getDistributedNodes()}resolveAndSetHref(e,t,n){e.href=null==n?t:t+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const da={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},ha=3,pa={"\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"},fa={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"},ga=(()=>{if(de.Node)return de.Node.prototype.contains||function(e){return!!(16&this.compareDocumentPosition(e))}})();class ma extends ua{parse(e){throw new Error("parse not implemented")}static makeCurrent(){var e;e=new ma,aa||(aa=e)}hasProperty(e,t){return t in e}setProperty(e,t,n){e[t]=n}getProperty(e,t){return e[t]}invoke(e,t,n){e[t](...n)}logError(e){window.console&&(console.error?console.error(e):console.log(e))}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return da}contains(e,t){return ga.call(e,t)}querySelector(e,t){return e.querySelector(t)}querySelectorAll(e,t){return e.querySelectorAll(t)}on(e,t,n){e.addEventListener(t,n,!1)}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}createMouseEvent(e){const t=this.getDefaultDocument().createEvent("MouseEvent");return t.initEvent(e,!0,!0),t}createEvent(e){const t=this.getDefaultDocument().createEvent("Event");return t.initEvent(e,!0,!0),t}preventDefault(e){e.preventDefault(),e.returnValue=!1}isPrevented(e){return e.defaultPrevented||null!=e.returnValue&&!e.returnValue}getInnerHTML(e){return e.innerHTML}getTemplateContent(e){return"content"in e&&this.isTemplateElement(e)?e.content:null}getOuterHTML(e){return e.outerHTML}nodeName(e){return e.nodeName}nodeValue(e){return e.nodeValue}type(e){return e.type}content(e){return this.hasProperty(e,"content")?e.content:e}firstChild(e){return e.firstChild}nextSibling(e){return e.nextSibling}parentElement(e){return e.parentNode}childNodes(e){return e.childNodes}childNodesAsList(e){const t=e.childNodes,n=new Array(t.length);for(let r=0;re.insertBefore(n,t))}insertAfter(e,t,n){e.insertBefore(n,t.nextSibling)}setInnerHTML(e,t){e.innerHTML=t}getText(e){return e.textContent}setText(e,t){e.textContent=t}getValue(e){return e.value}setValue(e,t){e.value=t}getChecked(e){return e.checked}setChecked(e,t){e.checked=t}createComment(e){return this.getDefaultDocument().createComment(e)}createTemplate(e){const t=this.getDefaultDocument().createElement("template");return t.innerHTML=e,t}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createElementNS(e,t,n){return(n=n||this.getDefaultDocument()).createElementNS(e,t)}createTextNode(e,t){return(t=t||this.getDefaultDocument()).createTextNode(e)}createScriptTag(e,t,n){const r=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return r.setAttribute(e,t),r}createStyleElement(e,t){const n=(t=t||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(e,t)),n}createShadowRoot(e){return e.createShadowRoot()}getShadowRoot(e){return e.shadowRoot}getHost(e){return e.host}clone(e){return e.cloneNode(!0)}getElementsByClassName(e,t){return e.getElementsByClassName(t)}getElementsByTagName(e,t){return e.getElementsByTagName(t)}classList(e){return Array.prototype.slice.call(e.classList,0)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}hasClass(e,t){return e.classList.contains(t)}setStyle(e,t,n){e.style[t]=n}removeStyle(e,t){e.style[t]=""}getStyle(e,t){return e.style[t]}hasStyle(e,t,n){const r=this.getStyle(e,t)||"";return n?r==n:r.length>0}tagName(e){return e.tagName}attributeMap(e){const t=new Map,n=e.attributes;for(let r=0;r{class e extends Ho{constructor(e){super(),this._doc=e,this._init()}_init(){this.location=la().getLocation(),this._history=la().getHistory()}getBaseHrefFromDOM(){return la().getBaseHref(this._doc)}onPopState(e){la().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",e,!1)}onHashChange(e){la().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",e,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(e){this.location.pathname=e}pushState(e,t,n){ya()?this._history.pushState(e,t,n):this.location.hash=n}replaceState(e,t,n){ya()?this._history.replaceState(e,t,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return e.ctorParameters=(()=>[{type:void 0,decorators:[{type:Y,args:[ta]}]}]),e})(),ba=new ge("TRANSITION_ID"),Ca=[{provide:cs,useFactory:function(e,t,n){return()=>{n.get(us).donePromise.then(()=>{const n=la();Array.prototype.slice.apply(n.querySelectorAll(t,"style[ng-transition]")).filter(t=>n.getAttribute(t,"ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[ba,ta,we],multi:!0}];class Ea{static init(){var e;e=new Ea,Gs=e}addToWindow(e){de.getAngularTestability=((t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r}),de.getAllAngularTestabilities=(()=>e.getAllTestabilities()),de.getAllAngularRootElements=(()=>e.getAllRootElements()),de.frameworkStabilizers||(de.frameworkStabilizers=[]),de.frameworkStabilizers.push(e=>{const t=de.getAllAngularTestabilities();let n=t.length,r=!1;const s=function(t){r=r||t,0==--n&&e(r)};t.forEach(function(e){e.whenStable(s)})})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?la().isShadowRoot(t)?this.findTestabilityInTree(e,la().getHost(t),!0):this.findTestabilityInTree(e,la().parentElement(t),!0):null}}function xa(e,t){"undefined"!=typeof COMPILED&&COMPILED||((de.ng=de.ng||{})[e]=t)}const Sa=(()=>({ApplicationRef:Ks,NgZone:Ds}))();function Aa(e){return si(e)}const Ta=new ge("EventManagerPlugins"),ka=(()=>(class{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r(class{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}))(),Na=(()=>(class extends Va{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>la().remove(e))}}))(),Oa={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/"},Da=/%COMP%/g,Ma="_nghost-%COMP%",Ra="_ngcontent-%COMP%";function Pa(e,t,n){for(let r=0;r{!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}const ja=(()=>(class{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new Ha(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Fe.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new Ba(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Fe.Native:case Fe.ShadowDom:return new za(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Pa(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class Ha{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Oa[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=`${r}:${t}`;const s=Oa[r];s?e.setAttributeNS(s,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Oa[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&$t.DashCase?e.style.setProperty(t,n,r&$t.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&$t.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){Ua(t,"property"),e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return Ua(t,"listener"),"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Fa(n)):this.eventManager.addEventListener(e,t,Fa(n))}}const La=(()=>"@".charCodeAt(0))();function Ua(e,t){if(e.charCodeAt(0)===La)throw new Error(`Found the synthetic ${t} ${e}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class Ba extends Ha{constructor(e,t,n,r){super(e),this.component=n;const s=Pa(r+"-"+n.id,n.styles,[]);t.addStyles(s),this.contentAttr=Ra.replace(Da,r+"-"+n.id),this.hostAttr=Ma.replace(Da,r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class za extends Ha{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Fe.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const s=Pa(r.id,r.styles,[]);for(let i=0;i"undefined"!=typeof Zone&&Zone.__symbol__||function(e){return"__zone_symbol__"+e})(),$a=Ga("addEventListener"),Za=Ga("removeEventListener"),Wa={},Qa="__zone_symbol__propagationStopped",qa=(()=>{const e="undefined"!=typeof Zone&&Zone[Ga("BLACK_LISTED_EVENTS")];if(e){const t={};return e.forEach(e=>{t[e]=e}),t}})(),Ja=function(e){return!!qa&&qa.hasOwnProperty(e)},Ya=function(e){const t=Wa[e.type];if(!t)return;const n=this[t];if(!n)return;const r=[e];if(1===n.length){const e=n[0];return e.zone!==Zone.current?e.zone.run(e.handler,this,r):e.handler.apply(this,r)}{const t=n.slice();for(let n=0;n(class extends Ia{constructor(e,t,n){super(e),this.ngZone=t,n&&function(e){return"server"===e}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const e=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Qa]=!0),e&&e.apply(this,arguments)}}supports(e){return!0}addEventListener(e,t,n){let r=n;if(!e[$a]||Ds.isInAngularZone()&&!Ja(t))e.addEventListener(t,r,!1);else{let n=Wa[t];n||(n=Wa[t]=Ga("ANGULAR"+t+"FALSE"));let s=e[n];const i=s&&s.length>0;s||(s=e[n]=[]);const o=Ja(t)?Zone.root:Zone.current;if(0===s.length)s.push({zone:o,handler:r});else{let e=!1;for(let t=0;tthis.removeEventListener(e,t,r)}removeEventListener(e,t,n){let r=e[Za];if(!r)return e.removeEventListener.apply(e,[t,n,!1]);let s=Wa[t],i=s&&e[s];if(!i)return e.removeEventListener.apply(e,[t,n,!1]);let o=!1;for(let a=0;a(class{constructor(){this.events=[],this.overrides={}}buildHammer(e){const t=new Hammer(e,this.options);t.get("pinch").set({enable:!0}),t.get("rotate").set({enable:!0});for(const n in this.overrides)t.get(n).set(this.overrides[n]);return t}}))(),rl=(()=>(class extends Ia{constructor(e,t,n,r){super(e),this._config=t,this.console=n,this.loader=r}supports(e){return!(!Xa.hasOwnProperty(e.toLowerCase())&&!this.isCustomEvent(e)||!window.Hammer&&!this.loader&&(this.console.warn(`The "${e}" event cannot be bound because Hammer.JS is not `+"loaded and no custom loader has been specified."),1))}addEventListener(e,t,n){const r=this.manager.getZone();if(t=t.toLowerCase(),!window.Hammer&&this.loader){let r=!1,s=()=>{r=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(s=(()=>{}));r||(s=this.addEventListener(e,t,n))}).catch(()=>{this.console.warn(`The "${t}" event cannot be bound because the custom `+"Hammer.JS loader failed."),s=(()=>{})}),()=>{s()}}return r.runOutsideAngular(()=>{const s=this._config.buildHammer(e),i=function(e){r.runGuarded(function(){n(e)})};return s.on(t,i),()=>{s.off(t,i),"function"==typeof s.destroy&&s.destroy()}})}isCustomEvent(e){return this._config.events.indexOf(e)>-1}}))(),sl=["alt","control","meta","shift"],il={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey},ol=(()=>{class e extends Ia{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const s=e.parseEventName(n),i=e.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>la().onAndCancel(t,s.domEventName,i))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=e._normalizeKey(n.pop());let i="";if(sl.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),i+=e+".")}),i+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=r,o.fullKey=i,o}static getEventFullKey(e){let t="",n=la().getEventKey(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),sl.forEach(r=>{r!=n&&(0,il[r])(e)&&(t+=r+".")}),t+=n}static eventCallback(t,n,r){return s=>{e.getEventFullKey(s)===t&&r.runGuarded(()=>n(s))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e})();class al{}const ll=(()=>(class extends al{constructor(e){super(),this._doc=e}sanitize(e,t){if(null==t)return null;switch(e){case pt.NONE:return t;case pt.HTML:return t instanceof ul?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"HTML"),function(e,t){let n=null;try{dt=dt||new Ze(e);let r=t?String(t):"";n=dt.getInertBodyElement(r);let s=5,i=r;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,r=i,i=n.innerHTML,n=dt.getInertBodyElement(r)}while(r!==i);const o=new at,a=o.sanitizeChildren(ht(n)||n);return $e()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const e=ht(n)||n;for(;e.firstChild;)e.removeChild(e.firstChild)}}}(this._doc,String(t)));case pt.STYLE:return t instanceof dl?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"Style"),function(e){if(!(e=String(e).trim()))return"";const t=e.match(mt);return t&&qe(t[1])===t[1]||e.match(gt)&&function(e){let t=!0,n=!0;for(let r=0;r{class e{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(t){return{ngModule:e,providers:[{provide:ds,useValue:t.appId},{provide:ba,useExisting:ds},Ca]}}}return e})();function vl(e,t){return new v(n=>{const r=e.length;if(0===r)return void n.complete();const s=new Array(r);let i=0,o=0;for(let a=0;a{c||(c=!0,o++),s[a]=e},error:e=>n.error(e),complete:()=>{++i!==r&&c||(o===r&&n.next(t?t.reduce((e,t,n)=>(e[t]=s[n],e),{}):s),n.complete())}}))}})}"undefined"!=typeof window&&window;const yl=new ge("NgValueAccessor"),wl=(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this.onChange=(e=>{}),this.onTouched=(()=>{})}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"checked",e)}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}))(),bl=new ge("CompositionEventMode"),Cl=(()=>(class{constructor(e,t,n){this._renderer=e,this._elementRef=t,this._compositionMode=n,this.onChange=(e=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const e=la()?la().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==e?"":e)}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",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)}}))();class El{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}reset(e){this.control&&this.control.reset(e)}hasError(e,t){return!!this.control&&this.control.hasError(e,t)}getError(e,t){return this.control?this.control.getError(e,t):null}}class xl extends El{get formDirective(){return null}get path(){return null}}function Sl(){throw new Error("unimplemented")}class Al extends El{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Sl()}get asyncValidator(){return Sl()}}const Tl=(()=>(class extends class{constructor(e){this._cd=e}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(e){super(e)}}))();function kl(e){return null==e||0===e.length}const Il=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+)*@[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 Vl{static min(e){return t=>{if(kl(t.value)||kl(e))return null;const n=parseFloat(t.value);return!isNaN(n)&&n{if(kl(t.value)||kl(e))return null;const n=parseFloat(t.value);return!isNaN(n)&&n>e?{max:{max:e,actual:t.value}}:null}}static required(e){return kl(e.value)?{required:!0}:null}static requiredTrue(e){return!0===e.value?null:{required:!0}}static email(e){return kl(e.value)?null:Il.test(e.value)?null:{email:!0}}static minLength(e){return t=>{if(kl(t.value))return null;const n=t.value?t.value.length:0;return n{const n=t.value?t.value.length:0;return n>e?{maxlength:{requiredLength:e,actualLength:n}}:null}}static pattern(e){if(!e)return Vl.nullValidator;let t,n;return"string"==typeof e?(n="","^"!==e.charAt(0)&&(n+="^"),n+=e,"$"!==e.charAt(e.length-1)&&(n+="$"),t=new RegExp(n)):(n=e.toString(),t=e),e=>{if(kl(e.value))return null;const r=e.value;return t.test(r)?null:{pattern:{requiredPattern:n,actualValue:r}}}}static nullValidator(e){return null}static compose(e){if(!e)return null;const t=e.filter(Nl);return 0==t.length?null:function(e){return Dl(function(e,n){return t.map(t=>t(e))}(e))}}static composeAsync(e){if(!e)return null;const t=e.filter(Nl);return 0==t.length?null:function(e){return function(...e){if(1===e.length){const t=e[0];if(l(t))return vl(t,null);if(c(t)&&Object.getPrototypeOf(t)===Object.prototype){const e=Object.keys(t);return vl(e.map(e=>t[e]),e)}}if("function"==typeof e[e.length-1]){const t=e.pop();return vl(e=1===e.length&&l(e[0])?e[0]:e,null).pipe(M(e=>t(...e)))}return vl(e,null)}(function(e,n){return t.map(t=>t(e))}(e).map(Ol)).pipe(M(Dl))}}}function Nl(e){return null!=e}function Ol(e){const t=yt(e)?j(e):e;if(!wt(t))throw new Error("Expected validator to return Promise or Observable.");return t}function Dl(e){const t=e.reduce((e,t)=>null!=t?Object.assign({},e,t):e,{});return 0===Object.keys(t).length?null:t}function Ml(e){return e.validate?t=>e.validate(t):e}function Rl(e){return e.validate?t=>e.validate(t):e}const Pl=(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this.onChange=(e=>{}),this.onTouched=(()=>{})}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==e?"":e)}registerOnChange(e){this.onChange=(t=>{e(""==t?null:parseFloat(t))})}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}))(),Fl=(()=>(class{constructor(){this._accessors=[]}add(e,t){this._accessors.push([e,t])}remove(e){for(let t=this._accessors.length-1;t>=0;--t)if(this._accessors[t][1]===e)return void this._accessors.splice(t,1)}select(e){this._accessors.forEach(t=>{this._isSameGroup(t,e)&&t[1]!==e&&t[1].fireUncheck(e.value)})}_isSameGroup(e,t){return!!e[0].control&&e[0]._parent===t._control._parent&&e[1].name===t.name}}))(),jl=(()=>(class{constructor(e,t,n,r){this._renderer=e,this._elementRef=t,this._registry=n,this._injector=r,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Al),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(e){this._state=e===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(e){this._fn=e,this.onChange=(()=>{e(this.value),this._registry.select(this)})}fireUncheck(e){this.writeValue(e)}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Hl={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Ll(e,t){return[...t.path,e]}function Ul(e,t){e||zl(t,"Cannot find control with"),t.valueAccessor||zl(t,"No value accessor for form control with"),e.validator=Vl.compose([e.validator,t.validator]),e.asyncValidator=Vl.composeAsync([e.asyncValidator,t.asyncValidator]),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(n=>{e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&Bl(e,t)})}(e,t),function(e,t){e.registerOnChange((e,n)=>{t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&Bl(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),t.valueAccessor.setDisabledState&&e.registerOnDisabledChange(e=>{t.valueAccessor.setDisabledState(e)}),t._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(()=>e.updateValueAndValidity())}),t._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(()=>e.updateValueAndValidity())})}function Bl(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function zl(e,t){let n;throw n=e.path.length>1?`path: '${e.path.join(" -> ")}'`:e.path[0]?`name: '${e.path}'`:"unspecified name attribute",new Error(`${t} ${n}`)}function Gl(e){return null!=e?Vl.compose(e.map(Ml)):null}function $l(e){return null!=e?Vl.composeAsync(e.map(Rl)):null}const Zl=[wl,(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this.onChange=(e=>{}),this.onTouched=(()=>{})}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(e))}registerOnChange(e){this.onChange=(t=>{e(""==t?null:parseFloat(t))})}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}))(),Pl,(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=(e=>{}),this.onTouched=(()=>{}),this._compareWith=Et}set compareWith(e){if("function"!=typeof e)throw new Error(`compareWith must be a function, but received ${JSON.stringify(e)}`);this._compareWith=e}writeValue(e){this.value=e;const t=this._getOptionId(e);null==t&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(e,t){return null==e?`${t}`:(t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}(t,e);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(e){this.onChange=(t=>{this.value=this._getOptionValue(t),e(this.value)})}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(e){for(const t of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(t),e))return t;return null}_getOptionValue(e){const t=function(e){return e.split(":")[0]}(e);return this._optionMap.has(t)?this._optionMap.get(t):e}}))(),(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=(e=>{}),this.onTouched=(()=>{}),this._compareWith=Et}set compareWith(e){if("function"!=typeof e)throw new Error(`compareWith must be a function, but received ${JSON.stringify(e)}`);this._compareWith=e}writeValue(e){let t;if(this.value=e,Array.isArray(e)){const n=e.map(e=>this._getOptionId(e));t=((e,t)=>{e._setSelected(n.indexOf(t.toString())>-1)})}else t=((e,t)=>{e._setSelected(!1)});this._optionMap.forEach(t)}registerOnChange(e){this.onChange=(t=>{const n=[];if(t.hasOwnProperty("selectedOptions")){const e=t.selectedOptions;for(let t=0;t{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===Wl}get invalid(){return this.status===Ql}get pending(){return this.status==ql}get disabled(){return this.status===Jl}get enabled(){return this.status!==Jl}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(e){this.validator=Yl(e)}setAsyncValidators(e){this.asyncValidator=Kl(e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(e={}){this.touched=!0,this._parent&&!e.onlySelf&&this._parent.markAsTouched(e)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(e=>e.markAllAsTouched())}markAsUntouched(e={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(e=>{e.markAsUntouched({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}markAsDirty(e={}){this.pristine=!1,this._parent&&!e.onlySelf&&this._parent.markAsDirty(e)}markAsPristine(e={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(e=>{e.markAsPristine({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}markAsPending(e={}){this.status=ql,!1!==e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!e.onlySelf&&this._parent.markAsPending(e)}disable(e={}){const t=this._parentMarkedDirty(e.onlySelf);this.status=Jl,this.errors=null,this._forEachChild(t=>{t.disable(Object.assign({},e,{onlySelf:!0}))}),this._updateValue(),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},e,{skipPristineCheck:t})),this._onDisabledChange.forEach(e=>e(!0))}enable(e={}){const t=this._parentMarkedDirty(e.onlySelf);this.status=Wl,this._forEachChild(t=>{t.enable(Object.assign({},e,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(Object.assign({},e,{skipPristineCheck:t})),this._onDisabledChange.forEach(e=>e(!1))}_updateAncestors(e){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(e){this._parent=e}updateValueAndValidity(e={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==Wl&&this.status!==ql||this._runAsyncValidator(e.emitEvent)),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(e)}_updateTreeValidity(e={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Jl:Wl}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(e){if(this.asyncValidator){this.status=ql;const t=Ol(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(t=>this.setErrors(t,{emitEvent:e}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(e,t={}){this.errors=e,this._updateControlsErrors(!1!==t.emitEvent)}get(e){return function(e,t,n){return null==t?null:(t instanceof Array||(t=t.split(".")),t instanceof Array&&0===t.length?null:t.reduce((e,t)=>e instanceof nc?e.controls.hasOwnProperty(t)?e.controls[t]:null:e instanceof rc&&e.at(t)||null,e))}(this,e)}getError(e,t){const n=t?this.get(t):this;return n&&n.errors?n.errors[e]:null}hasError(e,t){return!!this.getError(e,t)}get root(){let e=this;for(;e._parent;)e=e._parent;return e}_updateControlsErrors(e){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(e)}_initObservables(){this.valueChanges=new as,this.statusChanges=new as}_calculateStatus(){return this._allControlsDisabled()?Jl:this.errors?Ql:this._anyControlsHaveStatus(ql)?ql:this._anyControlsHaveStatus(Ql)?Ql:Wl}_anyControlsHaveStatus(e){return this._anyControls(t=>t.status===e)}_anyControlsDirty(){return this._anyControls(e=>e.dirty)}_anyControlsTouched(){return this._anyControls(e=>e.touched)}_updatePristine(e={}){this.pristine=!this._anyControlsDirty(),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}_updateTouched(e={}){this.touched=this._anyControlsTouched(),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}_isBoxedValue(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}_registerOnCollectionChange(e){this._onCollectionChange=e}_setUpdateStrategy(e){Xl(e)&&null!=e.updateOn&&(this._updateOn=e.updateOn)}_parentMarkedDirty(e){return!e&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class tc extends ec{constructor(e=null,t,n){super(Yl(t),Kl(n,t)),this._onChange=[],this._applyFormState(e),this._setUpdateStrategy(t),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(e,t={}){this.value=this._pendingValue=e,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(e=>e(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(e,t={}){this.setValue(e,t)}reset(e=null,t={}){this._applyFormState(e),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(e){this._onChange.push(e)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(e){this._onDisabledChange.push(e)}_forEachChild(e){}_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(e){this._isBoxedValue(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}}class nc extends ec{constructor(e,t,n){super(Yl(t),Kl(n,t)),this.controls=e,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(e,t){return this.controls[e]?this.controls[e]:(this.controls[e]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(e,t){this.registerControl(e,t),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],this.updateValueAndValidity(),this._onCollectionChange()}setControl(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],t&&this.registerControl(e,t),this.updateValueAndValidity(),this._onCollectionChange()}contains(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}setValue(e,t={}){this._checkAllValuesPresent(e),Object.keys(e).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(e[n],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(e,t={}){Object.keys(e).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(e[n],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}reset(e={},t={}){this._forEachChild((n,r)=>{n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(e,t,n)=>(e[n]=t instanceof tc?t.value:t.getRawValue(),e))}_syncPendingControls(){let e=this._reduceChildren(!1,(e,t)=>!!t._syncPendingControls()||e);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_throwIfControlMissing(e){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[e])throw new Error(`Cannot find form control with name: ${e}.`)}_forEachChild(e){Object.keys(this.controls).forEach(t=>e(this.controls[t],t))}_setUpControls(){this._forEachChild(e=>{e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(e){let t=!1;return this._forEachChild((n,r)=>{t=t||this.contains(r)&&e(n)}),t}_reduceValue(){return this._reduceChildren({},(e,t,n)=>((t.enabled||this.disabled)&&(e[n]=t.value),e))}_reduceChildren(e,t){let n=e;return this._forEachChild((e,r)=>{n=t(n,e,r)}),n}_allControlsDisabled(){for(const e of Object.keys(this.controls))if(this.controls[e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(e){this._forEachChild((t,n)=>{if(void 0===e[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class rc extends ec{constructor(e,t,n){super(Yl(t),Kl(n,t)),this.controls=e,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(e){return this.controls[e]}push(e){this.controls.push(e),this._registerControl(e),this.updateValueAndValidity(),this._onCollectionChange()}insert(e,t){this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity()}removeAt(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),this.controls.splice(e,1),this.updateValueAndValidity()}setControl(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(e,t={}){this._checkAllValuesPresent(e),e.forEach((e,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(e,t={}){e.forEach((e,n)=>{this.at(n)&&this.at(n).patchValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}reset(e=[],t={}){this._forEachChild((n,r)=>{n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this.controls.map(e=>e instanceof tc?e.value:e.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let e=this.controls.reduce((e,t)=>!!t._syncPendingControls()||e,!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_throwIfControlMissing(e){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(e))throw new Error(`Cannot find form control at index ${e}`)}_forEachChild(e){this.controls.forEach((t,n)=>{e(t,n)})}_updateValue(){this.value=this.controls.filter(e=>e.enabled||this.disabled).map(e=>e.value)}_anyControls(e){return this.controls.some(t=>t.enabled&&e(t))}_setUpControls(){this._forEachChild(e=>this._registerControl(e))}_checkAllValuesPresent(e){this._forEachChild((t,n)=>{if(void 0===e[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const e of this.controls)if(e.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}}const sc=(()=>Promise.resolve(null))(),ic=(()=>(class extends xl{constructor(e,t){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new as,this.form=new nc({},Gl(e),$l(t))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){sc.then(()=>{const t=this._findContainer(e.path);e.control=t.registerControl(e.name,e.control),Ul(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){sc.then(()=>{const t=this._findContainer(e.path);t&&t.removeControl(e.name),function(t,n){const r=t.indexOf(e);r>-1&&t.splice(r,1)}(this._directives)})}addFormGroup(e){sc.then(()=>{const t=this._findContainer(e.path),n=new nc({});(function(e,t){null==e&&zl(t,"Cannot find control with"),e.validator=Vl.compose([e.validator,t.validator]),e.asyncValidator=Vl.composeAsync([e.asyncValidator,t.asyncValidator])})(n,e),t.registerControl(e.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){sc.then(()=>{const t=this._findContainer(e.path);t&&t.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,t){sc.then(()=>{this.form.get(e.path).setValue(t)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submitted=!0,t=this._directives,this.form._syncPendingControls(),t.forEach(e=>{const t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)}),this.ngSubmit.emit(e),!1;var t}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}}))();class oc{static modelParentException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup's partner directive "formControlName" instead. Example:\n\n ${Hl.formControlName}\n\n Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n Example:\n\n ${Hl.ngModelWithFormGroup}`)}static formGroupNameException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n ${Hl.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Hl.ngModelGroup}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}static modelGroupParentException(){throw new Error(`\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n ${Hl.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Hl.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const ac=new ge("NgFormSelectorWarning");class lc extends xl{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Ll(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return Gl(this._validators)}get asyncValidator(){return $l(this._asyncValidators)}_checkParentType(){}}const cc=(()=>{class e extends lc{constructor(e,t,n){super(),this._parent=e,this._validators=t,this._asyncValidators=n}_checkParentType(){this._parent instanceof e||this._parent instanceof ic||oc.modelGroupParentException()}}return e})(),uc=(()=>Promise.resolve(null))(),dc=(()=>(class extends Al{constructor(e,t,n,r){super(),this.control=new tc,this._registered=!1,this.update=new as,this._parent=e,this._rawValidators=t||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(e,t){if(!t)return null;Array.isArray(t)||zl(e,"Value accessor was not provided as an array for form control with");let n=void 0,r=void 0,s=void 0;return t.forEach(t=>{t.constructor===Cl?n=t:function(e){return Zl.some(t=>e.constructor===t)}(t)?(r&&zl(e,"More than one built-in value accessor matches form control with"),r=t):(s&&zl(e,"More than one custom value accessor matches form control with"),s=t)}),s||r||n||(zl(e,"No valid value accessor for form control with"),null)}(this,r)}ngOnChanges(e){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in e&&this._updateDisabled(e),function(e,t){if(!e.hasOwnProperty("model"))return!1;const n=e.model;return!!n.isFirstChange()||!Et(t,n.currentValue)}(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Ll(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return Gl(this._rawValidators)}get asyncValidator(){return $l(this._rawAsyncValidators)}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(){Ul(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof cc)&&this._parent instanceof lc?oc.formGroupNameException():this._parent instanceof cc||this._parent instanceof ic||oc.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||oc.missingNameException()}_updateValue(e){uc.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1})})}_updateDisabled(e){const t=e.isDisabled.currentValue,n=""===t||t&&"false"!==t;uc.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),hc=(()=>(class{}))(),pc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:ac,useValue:t.warnOnDeprecatedNgFormSelector}]}}}return e})();var fc=Mn({encapsulation:0,styles:[[".actionBtn[_ngcontent-%COMP%]{margin-top:5px;margin-bottom:2px;font-size:1.2em}.snapshot[_ngcontent-%COMP%]{text-align:center}.snapshot[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:800px;max-height:800px}ul.links[_ngcontent-%COMP%]{padding-bottom:20px}"]],data:{}});function gc(e){return ki(0,[(e()(),fi(0,0,null,null,1,"webcam",[],null,[[null,"imageCapture"],[null,"cameraSwitched"],[null,"initError"]],function(e,t,n){var r=!0,s=e.component;return"imageCapture"===t&&(r=!1!==s.handleImage(n)&&r),"cameraSwitched"===t&&(r=!1!==s.cameraWasSwitched(n)&&r),"initError"===t&&(r=!1!==s.handleInitError(n)&&r),r},oa,sa)),Gr(1,4374528,null,0,ra,[],{width:[0,"width"],height:[1,"height"],videoOptions:[2,"videoOptions"],allowCameraSwitch:[3,"allowCameraSwitch"],imageQuality:[4,"imageQuality"],trigger:[5,"trigger"],switchCamera:[6,"switchCamera"]},{imageCapture:"imageCapture",initError:"initError",cameraSwitched:"cameraSwitched"})],function(e,t){var n=t.component;e(t,1,0,500,500,n.videoOptions,n.allowCameraSwitch,1,n.triggerObservable,n.nextWebcamObservable)},null)}function mc(e){return ki(0,[(e()(),fi(0,0,null,null,3,"div",[["class","snapshot"]],null,null,null,null,null)),(e()(),fi(1,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),Si(-1,null,["Nice one!"])),(e()(),fi(3,0,null,null,0,"img",[],[[8,"src",4]],null,null,null,null))],null,function(e,t){e(t,3,0,t.component.webcamImage.imageAsDataUrl)})}function _c(e){return ki(0,[(e()(),fi(0,0,null,null,1,"h4",[],null,null,null,null,null)),(e()(),Si(-1,null,["Messages:"]))],null,null)}function vc(e){return ki(0,[(e()(),fi(0,0,null,null,3,"ul",[],null,null,null,null,null)),(e()(),fi(1,0,null,null,2,"li",[],null,null,null,null,null)),(e()(),Si(2,null,["",""])),(t=0,n=Xo,r=[],Zr(-1,t|=16,null,0,n,n,r))],null,function(e,t){e(t,2,0,function(e,t,n,r){if(St.isWrapped(r)){r=St.unwrap(r);const t=e.def.nodes[2].bindingIndex+0,n=St.unwrap(e.oldValues[t]);e.oldValues[t]=new St(n)}return r}(t,0,0,Nr(t,3).transform(t.context.$implicit)))});var t,n,r}function yc(e){return ki(0,[(e()(),fi(0,0,null,null,31,"div",[["style","text-align:center"]],null,null,null,null,null)),(e()(),fi(1,0,null,null,1,"h1",[],null,null,null,null,null)),(e()(),Si(-1,null,[" Ngx-Webcam Demo "])),(e()(),fi(3,0,null,null,28,"div",[],null,null,null,null,null)),(e()(),pi(16777216,null,null,1,null,gc)),Gr(5,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),fi(6,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),fi(7,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.triggerSnapshot()&&r),r},null,null)),(e()(),Si(-1,null,["Take A Snapshot"])),(e()(),fi(9,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.toggleWebcam()&&r),r},null,null)),(e()(),Si(-1,null,["Toggle Webcam"])),(e()(),fi(11,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),fi(12,0,null,null,1,"button",[["class","actionBtn"]],[[8,"disabled",0]],[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.showNextWebcam(!0)&&r),r},null,null)),(e()(),Si(-1,null,["Next Webcam"])),(e()(),fi(14,0,null,null,5,"input",[["id","cameraSwitchCheckbox"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(e,t,n){var r=!0,s=e.component;return"change"===t&&(r=!1!==Nr(e,15).onChange(n.target.checked)&&r),"blur"===t&&(r=!1!==Nr(e,15).onTouched()&&r),"ngModelChange"===t&&(r=!1!==(s.allowCameraSwitch=n)&&r),r},null,null)),Gr(15,16384,null,0,wl,[Zt,Ut],null,null),$r(1024,null,yl,function(e){return[e]},[wl]),Gr(17,671744,null,0,dc,[[8,null],[8,null],[8,null],[6,yl]],{model:[0,"model"]},{update:"ngModelChange"}),$r(2048,null,Al,null,[dc]),Gr(19,16384,null,0,Tl,[[4,Al]],null,null),(e()(),fi(20,0,null,null,1,"label",[["for","cameraSwitchCheckbox"]],null,null,null,null,null)),(e()(),Si(-1,null,["Allow Camera Switch"])),(e()(),fi(22,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),Si(-1,null,[" DeviceId: "])),(e()(),fi(24,0,null,null,5,"input",[["id","deviceId"],["style","width: 500px"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(e,t,n){var r=!0,s=e.component;return"input"===t&&(r=!1!==Nr(e,25)._handleInput(n.target.value)&&r),"blur"===t&&(r=!1!==Nr(e,25).onTouched()&&r),"compositionstart"===t&&(r=!1!==Nr(e,25)._compositionStart()&&r),"compositionend"===t&&(r=!1!==Nr(e,25)._compositionEnd(n.target.value)&&r),"ngModelChange"===t&&(r=!1!==(s.deviceId=n)&&r),r},null,null)),Gr(25,16384,null,0,Cl,[Zt,Ut,[2,bl]],null,null),$r(1024,null,yl,function(e){return[e]},[Cl]),Gr(27,671744,null,0,dc,[[8,null],[8,null],[8,null],[6,yl]],{model:[0,"model"]},{update:"ngModelChange"}),$r(2048,null,Al,null,[dc]),Gr(29,16384,null,0,Tl,[[4,Al]],null,null),(e()(),fi(30,0,null,null,1,"button",[],null,[[null,"click"]],function(e,t,n){var r=!0,s=e.component;return"click"===t&&(r=!1!==s.showNextWebcam(s.deviceId)&&r),r},null,null)),(e()(),Si(-1,null,["Activate"])),(e()(),pi(16777216,null,null,1,null,mc)),Gr(33,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),pi(16777216,null,null,1,null,_c)),Gr(35,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),pi(16777216,null,null,1,null,vc)),Gr(37,278528,null,0,Qo,[mn,fn,an],{ngForOf:[0,"ngForOf"]},null),(e()(),fi(38,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),Si(-1,null,["Like this project on GitHub:"])),(e()(),fi(40,0,null,null,4,"ul",[["class","links"]],null,null,null,null,null)),(e()(),fi(41,0,null,null,3,"li",[],null,null,null,null,null)),(e()(),fi(42,0,null,null,2,"h2",[],null,null,null,null,null)),(e()(),fi(43,0,null,null,1,"a",[["href","https://github.com/basst314/ngx-webcam"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(e()(),Si(-1,null,["Ngx-Webcam / GitHub"]))],function(e,t){var n=t.component;e(t,5,0,n.showWebcam),e(t,17,0,n.allowCameraSwitch),e(t,27,0,n.deviceId),e(t,33,0,n.webcamImage),e(t,35,0,n.errors.length>0),e(t,37,0,n.errors)},function(e,t){e(t,12,0,!t.component.multipleWebcamsAvailable),e(t,14,0,Nr(t,19).ngClassUntouched,Nr(t,19).ngClassTouched,Nr(t,19).ngClassPristine,Nr(t,19).ngClassDirty,Nr(t,19).ngClassValid,Nr(t,19).ngClassInvalid,Nr(t,19).ngClassPending),e(t,24,0,Nr(t,29).ngClassUntouched,Nr(t,29).ngClassTouched,Nr(t,29).ngClassPristine,Nr(t,29).ngClassDirty,Nr(t,29).ngClassValid,Nr(t,29).ngClassInvalid,Nr(t,29).ngClassPending)})}function wc(e){return ki(0,[(e()(),fi(0,0,null,null,1,"appRoot",[],null,null,null,yc,fc)),Gr(1,114688,null,0,jo,[],null,null)],function(e,t){e(t,1,0)},null)}var bc=wr("appRoot",jo,wc,{},{},[]);class Cc{}var Ec=Mo(Po,[jo],function(e){return function(e){const t={},n=[];let r=!1;for(let s=0;s(e[t.name]=t.token,e),{}))),()=>Aa)];var t},[[2,Ws]]),dr(512,us,us,[[2,cs]]),dr(131584,Ks,Ks,[Ds,_s,we,Be,Rt,us]),dr(1073742336,hi,hi,[Ks]),dr(1073742336,_l,_l,[[3,_l]]),dr(1073742336,hc,hc,[]),dr(1073742336,pc,pc,[]),dr(1073742336,Cc,Cc,[]),dr(1073742336,Po,Po,[]),dr(256,It,!0,[])])});(function(){if(Ge)throw new Error("Cannot enable prod mode after platform setup.");ze=!1})(),gl().bootstrapModuleFactory(Ec).catch(e=>console.log(e))}},[[0,0]]]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},crnd:function(e,t){function n(e){return Promise.resolve().then(function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="crnd"},zUnb:function(e,t,n){"use strict";function r(e){return"function"==typeof e}n.r(t);let s=!1;const i={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){s=e},get useDeprecatedSynchronousErrorHandling(){return s}};function o(e){setTimeout(()=>{throw e},0)}const a={closed:!0,next(e){},error(e){if(i.useDeprecatedSynchronousErrorHandling)throw e;o(e)},complete(){}},l=Array.isArray||(e=>e&&"number"==typeof e.length);function c(e){return null!==e&&"object"==typeof e}function u(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}u.prototype=Object.create(Error.prototype);const d=u,h=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:s,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(let e=0;ee.concat(t instanceof d?t.errors:t),[])}const f="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class g extends h{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=a;break;case 1:if(!e){this.destination=a;break}if("object"==typeof e){e instanceof g?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,e,t,n)}}[f](){return this}static create(e,t,n){const r=new g(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class m extends g{constructor(e,t,n,s){let i;super(),this._parentSubscriber=e;let o=this;r(t)?i=t:t&&(i=t.next,n=t.error,s=t.complete,t!==a&&(r((o=Object.create(t)).unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=i,this._error=n,this._complete=s}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;i.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=i;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):o(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;o(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);i.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),i.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(e,t,n){if(!i.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return i.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(o(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const _="function"==typeof Symbol&&Symbol.observable||"@@observable";const v=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,s=function(e,t,n){if(e){if(e instanceof g)return e;if(e[f])return e[f]()}return e||t||n?new g(e,t,n):new g(a)}(e,t,n);if(s.add(r?r.call(s,this.source):this.source||i.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),i.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(e){try{return this._subscribe(e)}catch(t){i.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof g?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=y(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(s){n(s),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[_](){return this}pipe(...e){return 0===e.length?this:((t=e)?1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)}:function(){})(this);var t}toPromise(e){return new(e=y(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=(t=>new e(t)),e})();function y(e){if(e||(e=i.Promise||Promise),!e)throw new Error("no Promise impl found");return e}function w(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}w.prototype=Object.create(Error.prototype);const b=w;class C extends h{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class E extends g{constructor(e){super(e),this.destination=e}}const x=(()=>{class e extends v{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[f](){return new E(this)}lift(e){const t=new S(this,this);return t.operator=e,t}next(e){if(this.closed)throw new b;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let s=0;snew S(e,t)),e})();class S extends x{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):h.EMPTY}}class A extends g{constructor(e,t,n){super(),this.parent=e,this.outerValue=t,this.outerIndex=n,this.index=0}_next(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)}_error(e){this.parent.notifyError(e,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=e=>t=>{for(let n=0,r=e.length;ne&&"number"==typeof e.length&&"function"!=typeof e;function N(e){return!!e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}const O=e=>{if(e&&"function"==typeof e[_])return(e=>t=>{const n=e[_]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(t)})(e);if(V(e))return T(e);if(N(e))return(e=>t=>(e.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t))(e);if(e&&"function"==typeof e[I])return(e=>t=>{const n=e[I]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t})(e);{const t=c(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected.`+" You can provide an Observable, Promise, Array, or Iterable.")}};class D extends g{notifyNext(e,t,n,r,s){this.destination.next(t)}notifyError(e,t){this.destination.error(e)}notifyComplete(e){this.destination.complete()}}function M(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new R(e,t))}}class R{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new P(e,this.project,this.thisArg))}}class P extends g{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}function F(e,t){return new v(n=>{const r=new h;let s=0;return r.add(t.schedule(function(){s!==e.length?(n.next(e[s++]),n.closed||r.add(this.schedule())):n.complete()})),r})}function j(e,t){return t?function(e,t){if(null!=e){if(function(e){return e&&"function"==typeof e[_]}(e))return function(e,t){return new v(n=>{const r=new h;return r.add(t.schedule(()=>{const s=e[_]();r.add(s.subscribe({next(e){r.add(t.schedule(()=>n.next(e)))},error(e){r.add(t.schedule(()=>n.error(e)))},complete(){r.add(t.schedule(()=>n.complete()))}}))})),r})}(e,t);if(N(e))return function(e,t){return new v(n=>{const r=new h;return r.add(t.schedule(()=>e.then(e=>{r.add(t.schedule(()=>{n.next(e),r.add(t.schedule(()=>n.complete()))}))},e=>{r.add(t.schedule(()=>n.error(e)))}))),r})}(e,t);if(V(e))return F(e,t);if(function(e){return e&&"function"==typeof e[I]}(e)||"string"==typeof e)return function(e,t){if(!e)throw new Error("Iterable cannot be null");return new v(n=>{const r=new h;let s;return r.add(()=>{s&&"function"==typeof s.return&&s.return()}),r.add(t.schedule(()=>{s=e[I](),r.add(t.schedule(function(){if(n.closed)return;let e,t;try{const i=s.next();e=i.value,t=i.done}catch(r){return void n.error(r)}t?n.complete():(n.next(e),this.schedule())}))})),r})}(e,t)}throw new TypeError((null!==e&&typeof e||e)+" is not observable")}(e,t):e instanceof v?e:new v(O(e))}class H{constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new L(e,this.project,this.concurrent))}}class L extends D{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function U(e){return e}function B(){return function(e){return e.lift(new z(e))}}class z{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new G(e,n),s=t.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class G extends g{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}const $=class extends v{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new h).add(this.source.subscribe(new W(this.getSubject(),this))),e.closed&&(this._connection=null,e=h.EMPTY)),e}refCount(){return B()(this)}}.prototype,Z={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:$._subscribe},_isComplete:{value:$._isComplete,writable:!0},getSubject:{value:$.getSubject},connect:{value:$.connect},refCount:{value:$.refCount}};class W extends E{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}function Q(){return new x}const q="__parameters__";function J(e,t,n){const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function s(...e){if(this instanceof s)return r.apply(this,e),this;const t=new s(...e);return n.annotation=t,n;function n(e,n,r){const s=e.hasOwnProperty(q)?e[q]:Object.defineProperty(e,q,{value:[]})[q];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(t),e}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=e,s.annotationCls=s,s}const Y=J("Inject",e=>({token:e})),K=J("Optional"),X=J("Self"),ee=J("SkipSelf");var te=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function ne(e){for(let t in e)if(e[t]===ne)return t;throw Error("Could not find renamed property on target object.")}function re(e){return{providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function se(e){return e&&e.hasOwnProperty(ie)?e[ie]:null}const ie=ne({ngInjectableDef:ne});function oe(e){if("string"==typeof e)return e;if(e instanceof Array)return"["+e.map(oe).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}const ae=ne({__forward_ref__:ne});function le(e){return e.__forward_ref__=le,e.toString=function(){return oe(this())},e}function ce(e){const t=e;return"function"==typeof t&&t.hasOwnProperty(ae)&&t.__forward_ref__===le?t():e}function ue(){const e="undefined"!=typeof globalThis&&globalThis,t="undefined"!=typeof window&&window,n="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,r="undefined"!=typeof global&&global;return e||r||t||n}const de=ue();let he,pe=void 0;function fe(e){const t=pe;return pe=e,t}class ge{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.ngInjectableDef=re({providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return`InjectionToken ${this._desc}`}}const me="__source",_e=new Object,ve=new ge("INJECTOR",-1);class ye{get(e,t=_e){if(t===_e){const t=new Error(`NullInjectorError: No provider for ${oe(e)}!`);throw t.name="NullInjectorError",t}return t}}const we=(()=>{class e{static create(e,t){return Array.isArray(e)?new Ve(e,t):new Ve(e.providers,e.parent,e.name||null)}}return e.THROW_IF_NOT_FOUND=_e,e.NULL=new ye,e.ngInjectableDef=re({providedIn:"any",factory:()=>(function(e,t=te.Default){return(he||function(e,t=te.Default){if(void 0===pe)throw new Error("inject() must be called from an injection context");return null===pe?function(e,t,n){const r=se(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&te.Optional)return null;throw new Error(`Injector: NOT_FOUND [${oe(e)}]`)}(e,0,t):pe.get(e,t&te.Optional?null:void 0,t)})(e,t)})(ve)}),e.__NG_ELEMENT_ID__=-1,e})(),be=function(e){return e},Ce=[],Ee=be,xe=function(){return Array.prototype.slice.call(arguments)},Se=ne({provide:String,useValue:ne}),Ae="ngTokenPath",Te="ngTempTokenPath",ke=/\n/gm,Ie="\u0275";class Ve{constructor(e,t=we.NULL,n=null){this.parent=t,this.source=n;const r=this._records=new Map;r.set(we,{token:we,fn:be,deps:Ce,value:this,useNew:!1}),r.set(ve,{token:ve,fn:be,deps:Ce,value:this,useNew:!1}),function e(t,n){if(n)if((n=ce(n))instanceof Array)for(let r=0;re.push(oe(n))),`StaticInjector[${e.join(", ")}]`}}function Ne(e){return De("Cannot mix multi providers and regular providers",e)}function Oe(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&e.charAt(1)==Ie?e.substr(2):e;let s=oe(t);if(t instanceof Array)s=t.map(oe).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):oe(r)))}s=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${e.replace(ke,"\n ")}`}function De(e,t){return new Error(Oe(e,t,"StaticInjectorError"))}const Me="ngDebugContext",Re="ngOriginalError",Pe="ngErrorLogger",Fe=function(){var e={Emulated:0,Native:1,None:2,ShadowDom:3};return e[e.Emulated]="Emulated",e[e.Native]="Native",e[e.None]="None",e[e.ShadowDom]="ShadowDom",e}(),je=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(de))();function He(e){return e[Me]}function Le(e){return e[Re]}function Ue(e,...t){e.error(...t)}class Be{constructor(){this._console=console}handleError(e){const t=this._findOriginalError(e),n=this._findContext(e),r=function(e){return e[Pe]||Ue}(e);r(this._console,"ERROR",e),t&&r(this._console,"ORIGINAL ERROR",t),n&&r(this._console,"ERROR CONTEXT",n)}_findContext(e){return e?He(e)?He(e):this._findContext(Le(e)):null}_findOriginalError(e){let t=Le(e);for(;t&&Le(t);)t=Le(t);return t}}let ze=!0,Ge=!1;function $e(){return Ge=!0,ze}class Ze{constructor(e){if(this.defaultDoc=e,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const e=this.inertDocument.createElement("html");this.inertDocument.appendChild(e),this.inertBodyElement=this.inertDocument.createElement("body"),e.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(e){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(e){e=""+e+"";try{e=encodeURI(e)}catch(r){return null}const t=new XMLHttpRequest;t.responseType="document",t.open("GET","data:text/html;charset=utf-8,"+e,!1),t.send(void 0);const n=t.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(e){e=""+e+"";try{const n=(new window.DOMParser).parseFromString(e,"text/html").body;return n.removeChild(n.firstChild),n}catch(t){return null}}getInertBodyElement_InertDocument(e){const t=this.inertDocument.createElement("template");return"content"in t?(t.innerHTML=e,t):(this.inertBodyElement.innerHTML=e,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(e){const t=e.attributes;for(let r=t.length-1;0qe(e.trim())).join(", ")),this.buf.push(" ",t,'="',ut(o),'"')}var r;return this.buf.push(">"),!0}endElement(e){const t=e.nodeName.toLowerCase();nt.hasOwnProperty(t)&&!Ke.hasOwnProperty(t)&&(this.buf.push(""))}chars(e){this.buf.push(ut(e))}checkClobberedElement(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${e.outerHTML}`);return t}}const lt=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,ct=/([^\#-~ |!])/g;function ut(e){return e.replace(/&/g,"&").replace(lt,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(ct,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}let dt;function ht(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}const pt=function(){var e={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return e[e.NONE]="NONE",e[e.HTML]="HTML",e[e.STYLE]="STYLE",e[e.SCRIPT]="SCRIPT",e[e.URL]="URL",e[e.RESOURCE_URL]="RESOURCE_URL",e}();class ft{}const gt=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),mt=/^url\(([^)]+)\)$/,_t=/([A-Z])/g;function vt(e){try{return null!=e?e.toString().slice(0,30):e}catch(t){return"[ERROR] Exception while trying to serialize the value"}}function yt(e){return!!e&&"function"==typeof e.then}function wt(e){return!!e&&"function"==typeof e.subscribe}let bt=null;function Ct(){if(!bt){const e=de.Symbol;if(e&&e.iterator)bt=e.iterator;else{const e=Object.getOwnPropertyNames(Map.prototype);for(let t=0;t{class e{}return e.NULL=new Mt,e})();class Pt{constructor(e,t,n){this._parent=t,this._ngModule=n,this._factories=new Map;for(let r=0;r{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=(()=>Bt(e)),e})(),Bt=Lt;class zt{}class Gt{}const $t=function(){var e={Important:1,DashCase:2};return e[e.Important]="Important",e[e.DashCase]="DashCase",e}(),Zt=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>Wt()),e})(),Wt=Lt;class Qt{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const qt=new Qt("8.0.1");class Jt{constructor(){}supports(e){return At(e)}create(e){return new Kt(e)}}const Yt=(e,t)=>t;class Kt{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||Yt}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,s=null;for(;t||n;){const i=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==s&&Et(s.trackById,r)?(i&&(s=this._verifyReinsertion(s,e,r,t)),Et(s.item,e)||this._addIdentityChange(s,e)):(s=this._mismatch(s,e,r,t),i=!0),s=s._next,t++}),this.length=t;return this._truncate(s),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e,t;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=t)e.previousIndex=e.currentIndex,t=e._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let s;return null===e?s=this._itTail:(s=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Et(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,s,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Et(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,s,r)):e=this._addAfter(new Xt(t,n),s,r),e}_verifyReinsertion(e,t,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?e=this._reinsertAfter(s,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,s=e._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new tn),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t?e:(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e,e)}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new tn),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class Xt{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class en{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Et(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class tn{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new en,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function nn(e,t,n){const r=e.previousIndex;if(null===r)return r;let s=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new on(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Et(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class on{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}const an=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new ee,new K]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.ngInjectableDef=re({providedIn:"root",factory:()=>new e([new Jt])}),e})(),ln=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new ee,new K]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.ngInjectableDef=re({providedIn:"root",factory:()=>new e([new rn])}),e})(),cn=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>un()),e})(),un=(...e)=>{},dn=[new rn],hn=new an([new Jt]),pn=new ln(dn),fn=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>gn(e,Ut)),e})(),gn=Lt,mn=(()=>{class e{}return e.__NG_ELEMENT_ID__=(()=>_n(e,Ut)),e})(),_n=Lt;function vn(e,t,n,r){let s=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${t}'. Current value: '${n}'.`;return r&&(s+=" It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?"),function(e,t){const n=new Error(e);return yn(n,t),n}(s,e)}function yn(e,t){e[Me]=t,e[Pe]=t.logError.bind(t)}function wn(e){return new Error(`ViewDestroyedError: Attempt to use a destroyed view: ${e}`)}function bn(e,t,n){const r=e.state,s=1792&r;return s===t?(e.state=-1793&r|n,e.initIndex=-1,!0):s===n}function Cn(e,t,n){return(1792&e.state)===t&&e.initIndex<=n&&(e.initIndex=n+1,!0)}function En(e,t){return e.nodes[t]}function xn(e,t){return e.nodes[t]}function Sn(e,t){return e.nodes[t]}function An(e,t){return e.nodes[t]}function Tn(e,t){return e.nodes[t]}const kn={setCurrentNode:void 0,createRootView:void 0,createEmbeddedView:void 0,createComponentView:void 0,createNgModuleRef:void 0,overrideProvider:void 0,overrideComponentView:void 0,clearOverrides:void 0,checkAndUpdateView:void 0,checkNoChangesView:void 0,destroyView:void 0,resolveDep:void 0,createDebugContext:void 0,handleEvent:void 0,updateDirectives:void 0,updateRenderer:void 0,dirtyParentQueries:void 0},In=()=>{},Vn=new Map;function Nn(e){let t=Vn.get(e);return t||(t=oe(e)+"_"+Vn.size,Vn.set(e,t)),t}const On="$$undefined",Dn="$$empty";function Mn(e){return{id:On,styles:e.styles,encapsulation:e.encapsulation,data:e.data}}let Rn=0;function Pn(e,t,n,r){return!(!(2&e.state)&&Et(e.oldValues[t.bindingIndex+n],r))}function Fn(e,t,n,r){return!!Pn(e,t,n,r)&&(e.oldValues[t.bindingIndex+n]=r,!0)}function jn(e,t,n,r){const s=e.oldValues[t.bindingIndex+n];if(1&e.state||!xt(s,r)){const i=t.bindings[n].name;throw vn(kn.createDebugContext(e,t.nodeIndex),`${i}: ${s}`,`${i}: ${r}`,0!=(1&e.state))}}function Hn(e){let t=e;for(;t;)2&t.def.flags&&(t.state|=8),t=t.viewContainerParent||t.parent}function Ln(e,t){let n=e;for(;n&&n!==t;)n.state|=64,n=n.viewContainerParent||n.parent}function Un(e,t,n,r){try{return Hn(33554432&e.def.nodes[t].flags?xn(e,t).componentView:e),kn.handleEvent(e,t,n,r)}catch(s){e.root.errorHandler.handleError(s)}}function Bn(e){return e.parent?xn(e.parent,e.parentNodeDef.nodeIndex):null}function zn(e){return e.parent?e.parentNodeDef.parent:null}function Gn(e,t){switch(201347067&t.flags){case 1:return xn(e,t.nodeIndex).renderElement;case 2:return En(e,t.nodeIndex).renderText}}function $n(e){return!!e.parent&&!!(32768&e.parentNodeDef.flags)}function Zn(e){return!(!e.parent||32768&e.parentNodeDef.flags)}function Wn(e){return 1<{"number"==typeof e?(t[e]=s,n|=Wn(e)):r[e]=s}),{matchedQueries:t,references:r,matchedQueryIds:n}}function qn(e,t){return e.map(e=>{let n,r;return Array.isArray(e)?[r,n]=e:(r=0,n=e),n&&("function"==typeof n||"object"==typeof n)&&t&&Object.defineProperty(n,me,{value:t,configurable:!0}),{flags:r,token:n,tokenKey:Nn(n)}})}function Jn(e,t,n){let r=n.renderParent;return r?0==(1&r.flags)||0==(33554432&r.flags)||r.element.componentRendererType&&r.element.componentRendererType.encapsulation===Fe.Native?xn(e,n.renderParent.nodeIndex).renderElement:void 0:t}const Yn=new WeakMap;function Kn(e){let t=Yn.get(e);return t||((t=e(()=>In)).factory=e,Yn.set(e,t)),t}function Xn(e,t,n,r,s){3===t&&(n=e.renderer.parentNode(Gn(e,e.def.lastRenderRootNode))),er(e,t,0,e.def.nodes.length-1,n,r,s)}function er(e,t,n,r,s,i,o){for(let a=n;a<=r;a++){const n=e.def.nodes[a];11&n.flags&&nr(e,n,t,s,i,o),a+=n.childCount}}function tr(e,t,n,r,s,i){let o=e;for(;o&&!$n(o);)o=o.parent;const a=o.parent,l=zn(o),c=l.nodeIndex+l.childCount;for(let u=l.nodeIndex+1;u<=c;u++){const e=a.def.nodes[u];e.ngContentIndex===t&&nr(a,e,n,r,s,i),u+=e.childCount}if(!a.parent){const o=e.root.projectableNodes[t];if(o)for(let t=0;t-1}(s)||"root"===i.providedIn&&s._def.isRoot))){const n=e._providers.length;return e._def.providers[n]=e._def.providersByKey[t.tokenKey]={flags:5120,value:l.factory,deps:[],index:n,token:t.token},e._providers[n]=ar,e._providers[n]=pr(e,e._def.providersByKey[t.tokenKey])}return 4&t.flags?n:e._parent.get(t.token,n)}finally{fe(r)}var s,i}function pr(e,t){let n;switch(201347067&t.flags){case 512:n=function(e,t,n){const r=n.length;switch(r){case 0:return new t;case 1:return new t(hr(e,n[0]));case 2:return new t(hr(e,n[0]),hr(e,n[1]));case 3:return new t(hr(e,n[0]),hr(e,n[1]),hr(e,n[2]));default:const s=new Array(r);for(let t=0;t=n.length)&&(t=n.length-1),t<0)return null;const r=n[t];return r.viewContainerParent=null,vr(n,t),kn.dirtyParentQueries(r),mr(r),r}function gr(e,t,n){const r=t?Gn(t,t.def.lastRenderRootNode):e.renderElement,s=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);Xn(n,2,s,i,void 0)}function mr(e){Xn(e,3,null,null,void 0)}function _r(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function vr(e,t){t>=e.length-1?e.pop():e.splice(t,1)}const yr=new Object;function wr(e,t,n,r,s,i){return new br(e,t,n,r,s,i)}class br extends Nt{constructor(e,t,n,r,s,i){super(),this.selector=e,this.componentType=t,this._inputs=r,this._outputs=s,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const e=[],t=this._inputs;for(let n in t)e.push({propName:n,templateName:t[n]});return e}get outputs(){const e=[];for(let t in this._outputs)e.push({propName:t,templateName:this._outputs[t]});return e}create(e,t,n,r){if(!r)throw new Error("ngModule should be provided");const s=Kn(this.viewDefFactory),i=s.nodes[0].element.componentProvider.nodeIndex,o=kn.createRootView(e,t||[],n,s,r,yr),a=Sn(o,i).instance;return n&&o.renderer.setAttribute(xn(o,0).renderElement,"ng-version",qt.full),new Cr(o,new Ar(o),a)}}class Cr extends Vt{constructor(e,t,n){super(),this._view=e,this._viewRef=t,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=t,this.changeDetectorRef=t,this.instance=n}get location(){return new Ut(xn(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Vr(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(e){this._viewRef.onDestroy(e)}}function Er(e,t,n){return new xr(e,t,n)}class xr{constructor(e,t,n){this._view=e,this._elDef=t,this._data=n,this._embeddedViews=[]}get element(){return new Ut(this._data.renderElement)}get injector(){return new Vr(this._view,this._elDef)}get parentInjector(){let e=this._view,t=this._elDef.parent;for(;!t&&e;)t=zn(e),e=e.parent;return e?new Vr(e,t):new Vr(this._view,null)}clear(){for(let e=this._embeddedViews.length-1;e>=0;e--){const t=fr(this._data,e);kn.destroyView(t)}}get(e){const t=this._embeddedViews[e];if(t){const e=new Ar(t);return e.attachToViewContainerRef(this),e}return null}get length(){return this._embeddedViews.length}createEmbeddedView(e,t,n){const r=e.createEmbeddedView(t||{});return this.insert(r,n),r}createComponent(e,t,n,r,s){const i=n||this.parentInjector;s||e instanceof Ft||(s=i.get(jt));const o=e.create(i,r,void 0,s);return this.insert(o.hostView,t),o}insert(e,t){if(e.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=e;return function(e,t,n,r){let s=t.viewContainer._embeddedViews;null==n&&(n=s.length),r.viewContainerParent=e,_r(s,n,r),function(e,t){const n=Bn(t);if(!n||n===e||16&t.state)return;t.state|=16;let r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(t),function(e,n){if(4&n.flags)return;t.parent.def.nodeFlags|=4,n.flags|=4;let r=n.parent;for(;r;)r.childFlags|=4,r=r.parent}(0,t.parentNodeDef)}(t,r),kn.dirtyParentQueries(r),gr(t,n>0?s[n-1]:null,r)}(this._view,this._data,t,n._view),n.attachToViewContainerRef(this),e}move(e,t){if(e.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(e._view);return function(e,t,r){const s=e.viewContainer._embeddedViews,i=s[n];vr(s,n),null==r&&(r=s.length),_r(s,r,i),kn.dirtyParentQueries(i),mr(i),gr(e,r>0?s[r-1]:null,i)}(this._data,0,t),e}indexOf(e){return this._embeddedViews.indexOf(e._view)}remove(e){const t=fr(this._data,e);t&&kn.destroyView(t)}detach(e){const t=fr(this._data,e);return t?new Ar(t):null}}function Sr(e){return new Ar(e)}class Ar{constructor(e){this._view=e,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(e){const t=[];return Xn(e,0,void 0,void 0,t),t}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){Hn(this._view)}detach(){this._view.state&=-5}detectChanges(){const e=this._view.root.rendererFactory;e.begin&&e.begin();try{kn.checkAndUpdateView(this._view)}finally{e.end&&e.end()}}checkNoChanges(){kn.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(e){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(e)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),kn.destroyView(this._view)}detachFromAppRef(){this._appRef=null,mr(this._view),kn.dirtyParentQueries(this._view)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}}function Tr(e,t){return new kr(e,t)}class kr extends fn{constructor(e,t){super(),this._parentView=e,this._def=t}createEmbeddedView(e){return new Ar(kn.createEmbeddedView(this._parentView,this._def,this._def.element.template,e))}get elementRef(){return new Ut(xn(this._parentView,this._def.nodeIndex).renderElement)}}function Ir(e,t){return new Vr(e,t)}class Vr{constructor(e,t){this.view=e,this.elDef=t}get(e,t=we.THROW_IF_NOT_FOUND){return kn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:e,tokenKey:Nn(e)},t)}}function Nr(e,t){const n=e.def.nodes[t];if(1&n.flags){const t=xn(e,n.nodeIndex);return n.element.template?t.template:t.renderElement}if(2&n.flags)return En(e,n.nodeIndex).renderText;if(20240&n.flags)return Sn(e,n.nodeIndex).instance;throw new Error(`Illegal state: read nodeValue for node index ${t}`)}function Or(e){return new Dr(e.renderer)}class Dr{constructor(e){this.delegate=e}selectRootElement(e){return this.delegate.selectRootElement(e)}createElement(e,t){const[n,r]=ir(t),s=this.delegate.createElement(r,n);return e&&this.delegate.appendChild(e,s),s}createViewRoot(e){return e}createTemplateAnchor(e){const t=this.delegate.createComment("");return e&&this.delegate.appendChild(e,t),t}createText(e,t){const n=this.delegate.createText(t);return e&&this.delegate.appendChild(e,n),n}projectNodes(e,t){for(let n=0;ne())}onDestroy(e){this._destroyListeners.push(e)}}const Pr=Nn(zt),Fr=Nn(Zt),jr=Nn(Ut),Hr=Nn(mn),Lr=Nn(fn),Ur=Nn(cn),Br=Nn(we),zr=Nn(ve);function Gr(e,t,n,r,s,i,o,a){const l=[];if(o)for(let u in o){const[e,t]=o[u];l[e]={flags:8,name:u,nonMinifiedName:t,ns:null,securityContext:null,suffix:null}}const c=[];if(a)for(let u in a)c.push({type:1,propName:u,target:null,eventName:a[u]});return Zr(e,t|=16384,n,r,s,s,i,l,c)}function $r(e,t,n,r,s){return Zr(-1,e,t,0,n,r,s)}function Zr(e,t,n,r,s,i,o,a,l){const{matchedQueries:c,references:u,matchedQueryIds:d}=Qn(n);l||(l=[]),a||(a=[]),i=ce(i);const h=qn(o,oe(s));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:d,references:u,ngContentIndex:-1,childCount:r,bindings:a,bindingFlags:or(a),outputs:l,element:null,provider:{token:s,value:i,deps:h},text:null,query:null,ngContent:null}}function Wr(e,t){return Yr(e,t)}function Qr(e,t){let n=e;for(;n.parent&&!$n(n);)n=n.parent;return Kr(n.parent,zn(n),!0,t.provider.value,t.provider.deps)}function qr(e,t){const n=Kr(e,t.parent,(32768&t.flags)>0,t.provider.value,t.provider.deps);if(t.outputs.length)for(let r=0;rUn(e,t,n,r)}function Yr(e,t){const n=(8192&t.flags)>0,r=t.provider;switch(201347067&t.flags){case 512:return Kr(e,t.parent,n,r.value,r.deps);case 1024:return function(e,t,n,r,s){const i=s.length;switch(i){case 0:return r();case 1:return r(es(e,t,n,s[0]));case 2:return r(es(e,t,n,s[0]),es(e,t,n,s[1]));case 3:return r(es(e,t,n,s[0]),es(e,t,n,s[1]),es(e,t,n,s[2]));default:const o=Array(i);for(let r=0;rje});class as extends x{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,s=e=>null,i=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(s=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(i=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(i=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(r,s,i);return e instanceof h&&e.add(o),o}}class ls{constructor(){this.dirty=!0,this._results=[],this.changes=new as,this.length=0}map(e){return this._results.map(e)}filter(e){return this._results.filter(e)}find(e){return this._results.find(e)}reduce(e,t){return this._results.reduce(e,t)}forEach(e){this._results.forEach(e)}some(e){return this._results.some(e)}toArray(){return this._results.slice()}[Ct()](){return this._results[Ct()]()}toString(){return this._results.toString()}reset(e){this._results=function e(t,n){void 0===n&&(n=t);for(let r=0;r(class{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}))(),ds=new ge("AppId");function hs(){return`${ps()}${ps()}${ps()}`}function ps(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const fs=new ge("Platform Initializer"),gs=new ge("Platform ID"),ms=new ge("appBootstrapListener"),_s=(()=>(class{log(e){console.log(e)}warn(e){console.warn(e)}}))();function vs(){throw new Error("Runtime compiler is not loaded")}const ys=vs,ws=vs,bs=vs,Cs=vs,Es=(()=>(class{constructor(){this.compileModuleSync=ys,this.compileModuleAsync=ws,this.compileModuleAndAllComponentsSync=bs,this.compileModuleAndAllComponentsAsync=Cs}clearCache(){}clearCacheFor(e){}getModuleId(e){}}))();class xs{}let Ss,As;function Ts(){const e=de.wtf;return!(!e||!(Ss=e.trace)||(As=Ss.events,0))}const ks=Ts(),Is=ks?function(e,t=null){return As.createScope(e,t)}:(e,t)=>(function(e,t){return null}),Vs=ks?function(e,t){return Ss.leaveScope(e,t),t}:(e,t)=>t,Ns=(()=>Promise.resolve(0))();function Os(e){"undefined"==typeof Zone?Ns.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class Ds{constructor({enableLongStackTrace:e=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new as(!1),this.onMicrotaskEmpty=new as(!1),this.onStable=new as(!1),this.onError=new as(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var t;Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(t=this)._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(e,n,r,s,i,o)=>{try{return Fs(t),e.invokeTask(r,s,i,o)}finally{js(t)}},onInvoke:(e,n,r,s,i,o,a)=>{try{return Fs(t),e.invoke(r,s,i,o,a)}finally{js(t)}},onHasTask:(e,n,r,s)=>{e.hasTask(r,s),n===r&&("microTask"==s.change?(t.hasPendingMicrotasks=s.microTask,Ps(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,r,s)=>(e.handleError(r,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ds.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Ds.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const s=this._inner,i=s.scheduleEventTask("NgZoneEvent: "+r,e,Rs,Ms,Ms);try{return s.runTask(i,t,n)}finally{s.cancelTask(i)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function Ms(){}const Rs={};function Ps(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function Fs(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function js(e){e._nesting--,Ps(e)}class Hs{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new as,this.onMicrotaskEmpty=new as,this.onStable=new as,this.onError=new as}run(e){return e()}runGuarded(e){return e()}runOutsideAngular(e){return e()}runTask(e){return e()}}const Ls=(()=>(class{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:()=>{Ds.assertNotInAngularZone(),Os(()=>{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())Os(()=>{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(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.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,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}))(),Us=(()=>{class e{constructor(){this._applications=new Map,Gs.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}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,t=!0){return Gs.findTestabilityInTree(this,e,t)}}return e.ctorParameters=(()=>[]),e})();class Bs{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let zs,Gs=new Bs,$s=function(e){return e instanceof Ft};const Zs=new ge("AllowMultipleToken");class Ws{constructor(e,t){this.name=e,this.token=t}}function Qs(e,t,n=[]){const r=`Platform: ${t}`,s=new ge(r);return(t=[])=>{let i=qs();if(!i||i.injector.get(Zs,!1))if(e)e(n.concat(t).concat({provide:s,useValue:!0}));else{const e=n.concat(t).concat({provide:s,useValue:!0});!function(e){if(zs&&!zs.destroyed&&!zs.injector.get(Zs,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");zs=e.get(Js);const t=e.get(fs,null);t&&t.forEach(e=>e())}(we.create({providers:e,name:r}))}return function(e){const t=qs();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(s)}}function qs(){return zs&&!zs.destroyed?zs:null}const Js=(()=>(class{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n="noop"===(s=t?t.ngZone:void 0)?new Hs:("zone.js"===s?void 0:s)||new Ds({enableLongStackTrace:$e()}),r=[{provide:Ds,useValue:n}];var s;return n.run(()=>{const t=we.create({providers:r,parent:this.injector,name:e.moduleType.name}),s=e.create(t),i=s.injector.get(Be,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>Xs(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{i.handleError(e)}})),function(e,t,n){try{const s=n();return yt(s)?s.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):s}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(i,n,()=>{const e=s.injector.get(us);return e.runInitializers(),e.donePromise.then(()=>(this._moduleDoBootstrap(s),s))})})}bootstrapModule(e,t=[]){const n=Ys({},t);return function(e,t,n){return e.get(xs).createCompiler([t]).compileModuleAsync(n)}(this.injector,n,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(Ks);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${oe(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. `+"Please define one of these.");e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}))();function Ys(e,t){return Array.isArray(t)?t.reduce(Ys,e):Object.assign({},e,t)}const Ks=(()=>{class e{constructor(e,t,n,r,s,i){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=$e(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new v(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),a=new v(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{Ds.assertNotInAngularZone(),Os(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Ds.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];var s;return(s=r)&&"function"==typeof s.schedule?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof v?e[0]:function(e=Number.POSITIVE_INFINITY){return function e(t,n,r=Number.POSITIVE_INFINITY){return"function"==typeof n?s=>s.pipe(e((e,r)=>j(t(e,r)).pipe(M((t,s)=>n(e,t,r,s))),r)):("number"==typeof n&&(r=n),e=>e.lift(new H(t,r)))}(U,e)}(t)(function(e,t){return t?F(e,t):new v(T(e))}(e,n))}(o,a.pipe(e=>B()(function(e,t){return function(t){let n;n="function"==typeof e?e:function(){return e};const r=Object.create(t,Z);return r.source=t,r.subjectFactory=n,r}}(Q)(e))))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Nt?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=$s(n)?null:this._injector.get(jt),s=n.create(we.NULL,[],t||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const i=s.injector.get(Ls,null);return i&&s.injector.get(Us).registerApplication(s.location.nativeElement,i),this._loadComponent(s),$e()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const t=e._tickScope();try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,Vs(t)}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;Xs(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(ms,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),Xs(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e._tickScope=Is("ApplicationRef#tick()"),e})();function Xs(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}class ei{constructor(e,t){this.name=e,this.callback=t}}class ti{constructor(e,t,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=e,t&&t instanceof ni&&t.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class ni extends ti{constructor(e,t,n){super(e,t,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=e}addChild(e){e&&(this.childNodes.push(e),e.parent=this)}removeChild(e){const t=this.childNodes.indexOf(e);-1!==t&&(e.parent=null,this.childNodes.splice(t,1))}insertChildrenAfter(e,t){const n=this.childNodes.indexOf(e);-1!==n&&(this.childNodes.splice(n+1,0,...t),t.forEach(t=>{t.parent&&t.parent.removeChild(t),e.parent=this}))}insertBefore(e,t){const n=this.childNodes.indexOf(e);-1===n?this.addChild(t):(t.parent&&t.parent.removeChild(t),t.parent=this,this.childNodes.splice(n,0,t))}query(e){return this.queryAll(e)[0]||null}queryAll(e){const t=[];return function e(t,n,r){t.childNodes.forEach(t=>{t instanceof ni&&(n(t)&&r.push(t),e(t,n,r))})}(this,e,t),t}queryAllNodes(e){const t=[];return function e(t,n,r){t instanceof ni&&t.childNodes.forEach(t=>{n(t)&&r.push(t),t instanceof ni&&e(t,n,r)})}(this,e,t),t}get children(){return this.childNodes.filter(e=>e instanceof ni)}triggerEventHandler(e,t){this.listeners.forEach(n=>{n.name==e&&n.callback(t)})}}const ri=new Map,si=function(e){return ri.get(e)||null};function ii(e){ri.set(e.nativeNode,e)}const oi=Qs(null,"core",[{provide:gs,useValue:"unknown"},{provide:Js,deps:[we]},{provide:Us,deps:[]},{provide:_s,deps:[]}]),ai=new ge("LocaleId");function li(){return hn}function ci(){return pn}function ui(e){return e||"en-US"}function di(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}const hi=(()=>(class{constructor(e){}}))();function pi(e,t,n,r,s,i){e|=1;const{matchedQueries:o,references:a,matchedQueryIds:l}=Qn(t);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:e,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:o,matchedQueryIds:l,references:a,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?Kn(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:s||In},provider:null,text:null,query:null,ngContent:null}}function fi(e,t,n,r,s,i,o=[],a,l,c,u,d){c||(c=In);const{matchedQueries:h,references:p,matchedQueryIds:f}=Qn(n);let g=null,m=null;i&&([g,m]=ir(i)),a=a||[];const _=new Array(a.length);for(let w=0;w{const[n,r]=ir(e);return[n,r,t]});return d=function(e){if(e&&e.id===On){const t=null!=e.encapsulation&&e.encapsulation!==Fe.None||e.styles.length||Object.keys(e.data).length;e.id=t?`c${Rn++}`:Dn}return e&&e.id===Dn&&(e=null),e||null}(d),u&&(t|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:h,matchedQueryIds:f,references:p,ngContentIndex:r,childCount:s,bindings:_,bindingFlags:or(_),outputs:v,element:{ns:g,name:m,attrs:y,template:null,componentProvider:null,componentView:u||null,componentRendererType:d,publicProviders:null,allProviders:null,handleEvent:c||In},provider:null,text:null,query:null,ngContent:null}}function gi(e,t,n){const r=n.element,s=e.root.selectorOrNode,i=e.renderer;let o;if(e.parent||!s){o=r.name?i.createElement(r.name,r.ns):i.createComment("");const s=Jn(e,t,n);s&&i.appendChild(s,o)}else o=i.selectRootElement(s,!!r.componentRendererType&&r.componentRendererType.encapsulation===Fe.ShadowDom);if(r.attrs)for(let a=0;aUn(e,t,n,r)}function vi(e,t,n,r){if(!Fn(e,t,n,r))return!1;const s=t.bindings[n],i=xn(e,t.nodeIndex),o=i.renderElement,a=s.name;switch(15&s.flags){case 1:!function(e,t,n,r,s,i){const o=t.securityContext;let a=o?e.root.sanitizer.sanitize(o,i):i;a=null!=a?a.toString():null;const l=e.renderer;null!=i?l.setAttribute(n,s,a,r):l.removeAttribute(n,s,r)}(e,s,o,s.ns,a,r);break;case 2:!function(e,t,n,r){const s=e.renderer;r?s.addClass(t,n):s.removeClass(t,n)}(e,o,a,r);break;case 4:!function(e,t,n,r,s){let i=e.root.sanitizer.sanitize(pt.STYLE,s);if(null!=i){i=i.toString();const e=t.suffix;null!=e&&(i+=e)}else i=null;const o=e.renderer;null!=i?o.setStyle(n,r,i):o.removeStyle(n,r)}(e,s,o,a,r);break;case 8:!function(e,t,n,r,s){const i=t.securityContext;let o=i?e.root.sanitizer.sanitize(i,s):s;e.renderer.setProperty(n,r,o)}(33554432&t.flags&&32&s.flags?i.componentView:e,s,o,a,r)}return!0}function yi(e,t,n){let r=[];for(let s in n)r.push({propName:s,bindingType:n[s]});return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,ngContentIndex:-1,matchedQueries:{},matchedQueryIds:0,references:{},childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:{id:t,filterId:Wn(t),bindings:r},ngContent:null}}function wi(e){const t=e.def.nodeMatchedQueries;for(;e.parent&&Zn(e);){let n=e.parentNodeDef;e=e.parent;const r=n.nodeIndex+n.childCount;for(let s=0;s<=r;s++){const r=e.def.nodes[s];67108864&r.flags&&536870912&r.flags&&(r.query.filterId&t)===r.query.filterId&&Tn(e,s).setDirty(),!(1&r.flags&&s+r.childCount0)c=e,Ii(e)||(u=e);else for(;c&&f===c.nodeIndex+c.childCount;){const e=c.parent;e&&(e.childFlags|=c.childFlags,e.childMatchedQueries|=c.childMatchedQueries),u=(c=e)&&Ii(c)?c.renderParent:c}}return{factory:null,nodeFlags:o,rootNodeFlags:a,nodeMatchedQueries:l,flags:e,nodes:t,updateDirectives:n||In,updateRenderer:r||In,handleEvent:(e,n,r,s)=>t[n].element.handleEvent(e,r,s),bindingCount:s,outputCount:i,lastRenderRootNode:p}}function Ii(e){return 0!=(1&e.flags)&&null===e.element.name}function Vi(e,t,n){const r=t.element&&t.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.lastRenderRootNode.flags)throw new Error(`Illegal State: Last root node of a template can't have embedded views, at index ${t.nodeIndex}!`)}if(20224&t.flags&&0==(1&(e?e.flags:0)))throw new Error(`Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index ${t.nodeIndex}!`);if(t.query){if(67108864&t.flags&&(!e||0==(16384&e.flags)))throw new Error(`Illegal State: Content Query nodes need to be children of directives, at index ${t.nodeIndex}!`);if(134217728&t.flags&&e)throw new Error(`Illegal State: View Query nodes have to be top level nodes, at index ${t.nodeIndex}!`)}if(t.childCount){const r=e?e.nodeIndex+e.childCount:n-1;if(t.nodeIndex<=r&&t.nodeIndex+t.childCount>r)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${t.nodeIndex}!`)}}function Ni(e,t,n,r){const s=Mi(e.root,e.renderer,e,t,n);return Ri(s,e.component,r),Pi(s),s}function Oi(e,t,n){const r=Mi(e,e.renderer,null,null,t);return Ri(r,n,n),Pi(r),r}function Di(e,t,n,r){const s=t.element.componentRendererType;let i;return i=s?e.root.rendererFactory.createRenderer(r,s):e.root.renderer,Mi(e.root,i,e,t.element.componentProvider,n)}function Mi(e,t,n,r,s){const i=new Array(s.nodes.length),o=s.outputCount?new Array(s.outputCount):null;return{def:s,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:e,renderer:t,oldValues:new Array(s.bindingCount),disposables:o,initIndex:-1}}function Ri(e,t,n){e.component=t,e.context=n}function Pi(e){let t;$n(e)&&(t=xn(e.parent,e.parentNodeDef.parent.nodeIndex).renderElement);const n=e.def,r=e.nodes;for(let s=0;s0&&vi(e,t,0,n)&&(p=!0),h>1&&vi(e,t,1,r)&&(p=!0),h>2&&vi(e,t,2,s)&&(p=!0),h>3&&vi(e,t,3,i)&&(p=!0),h>4&&vi(e,t,4,o)&&(p=!0),h>5&&vi(e,t,5,a)&&(p=!0),h>6&&vi(e,t,6,l)&&(p=!0),h>7&&vi(e,t,7,c)&&(p=!0),h>8&&vi(e,t,8,u)&&(p=!0),h>9&&vi(e,t,9,d)&&(p=!0),p}(e,t,n,r,s,i,o,a,l,c,u,d);case 2:return function(e,t,n,r,s,i,o,a,l,c,u,d){let h=!1;const p=t.bindings,f=p.length;if(f>0&&Fn(e,t,0,n)&&(h=!0),f>1&&Fn(e,t,1,r)&&(h=!0),f>2&&Fn(e,t,2,s)&&(h=!0),f>3&&Fn(e,t,3,i)&&(h=!0),f>4&&Fn(e,t,4,o)&&(h=!0),f>5&&Fn(e,t,5,a)&&(h=!0),f>6&&Fn(e,t,6,l)&&(h=!0),f>7&&Fn(e,t,7,c)&&(h=!0),f>8&&Fn(e,t,8,u)&&(h=!0),f>9&&Fn(e,t,9,d)&&(h=!0),h){let h=t.text.prefix;f>0&&(h+=Ti(n,p[0])),f>1&&(h+=Ti(r,p[1])),f>2&&(h+=Ti(s,p[2])),f>3&&(h+=Ti(i,p[3])),f>4&&(h+=Ti(o,p[4])),f>5&&(h+=Ti(a,p[5])),f>6&&(h+=Ti(l,p[6])),f>7&&(h+=Ti(c,p[7])),f>8&&(h+=Ti(u,p[8])),f>9&&(h+=Ti(d,p[9]));const g=En(e,t.nodeIndex).renderText;e.renderer.setValue(g,h)}return h}(e,t,n,r,s,i,o,a,l,c,u,d);case 16384:return function(e,t,n,r,s,i,o,a,l,c,u,d){const h=Sn(e,t.nodeIndex),p=h.instance;let f=!1,g=void 0;const m=t.bindings.length;return m>0&&Pn(e,t,0,n)&&(f=!0,g=ns(e,h,t,0,n,g)),m>1&&Pn(e,t,1,r)&&(f=!0,g=ns(e,h,t,1,r,g)),m>2&&Pn(e,t,2,s)&&(f=!0,g=ns(e,h,t,2,s,g)),m>3&&Pn(e,t,3,i)&&(f=!0,g=ns(e,h,t,3,i,g)),m>4&&Pn(e,t,4,o)&&(f=!0,g=ns(e,h,t,4,o,g)),m>5&&Pn(e,t,5,a)&&(f=!0,g=ns(e,h,t,5,a,g)),m>6&&Pn(e,t,6,l)&&(f=!0,g=ns(e,h,t,6,l,g)),m>7&&Pn(e,t,7,c)&&(f=!0,g=ns(e,h,t,7,c,g)),m>8&&Pn(e,t,8,u)&&(f=!0,g=ns(e,h,t,8,u,g)),m>9&&Pn(e,t,9,d)&&(f=!0,g=ns(e,h,t,9,d,g)),g&&p.ngOnChanges(g),65536&t.flags&&Cn(e,256,t.nodeIndex)&&p.ngOnInit(),262144&t.flags&&p.ngDoCheck(),f}(e,t,n,r,s,i,o,a,l,c,u,d);case 32:case 64:case 128:return function(e,t,n,r,s,i,o,a,l,c,u,d){const h=t.bindings;let p=!1;const f=h.length;if(f>0&&Fn(e,t,0,n)&&(p=!0),f>1&&Fn(e,t,1,r)&&(p=!0),f>2&&Fn(e,t,2,s)&&(p=!0),f>3&&Fn(e,t,3,i)&&(p=!0),f>4&&Fn(e,t,4,o)&&(p=!0),f>5&&Fn(e,t,5,a)&&(p=!0),f>6&&Fn(e,t,6,l)&&(p=!0),f>7&&Fn(e,t,7,c)&&(p=!0),f>8&&Fn(e,t,8,u)&&(p=!0),f>9&&Fn(e,t,9,d)&&(p=!0),p){const p=An(e,t.nodeIndex);let g;switch(201347067&t.flags){case 32:g=new Array(h.length),f>0&&(g[0]=n),f>1&&(g[1]=r),f>2&&(g[2]=s),f>3&&(g[3]=i),f>4&&(g[4]=o),f>5&&(g[5]=a),f>6&&(g[6]=l),f>7&&(g[7]=c),f>8&&(g[8]=u),f>9&&(g[9]=d);break;case 64:g={},f>0&&(g[h[0].name]=n),f>1&&(g[h[1].name]=r),f>2&&(g[h[2].name]=s),f>3&&(g[h[3].name]=i),f>4&&(g[h[4].name]=o),f>5&&(g[h[5].name]=a),f>6&&(g[h[6].name]=l),f>7&&(g[h[7].name]=c),f>8&&(g[h[8].name]=u),f>9&&(g[h[9].name]=d);break;case 128:const e=n;switch(f){case 1:g=e.transform(n);break;case 2:g=e.transform(r);break;case 3:g=e.transform(r,s);break;case 4:g=e.transform(r,s,i);break;case 5:g=e.transform(r,s,i,o);break;case 6:g=e.transform(r,s,i,o,a);break;case 7:g=e.transform(r,s,i,o,a,l);break;case 8:g=e.transform(r,s,i,o,a,l,c);break;case 9:g=e.transform(r,s,i,o,a,l,c,u);break;case 10:g=e.transform(r,s,i,o,a,l,c,u,d)}}p.value=g}return p}(e,t,n,r,s,i,o,a,l,c,u,d);default:throw"unreachable"}}(e,t,r,s,i,o,a,l,c,u,d,h):function(e,t,n){switch(201347067&t.flags){case 1:return function(e,t,n){let r=!1;for(let s=0;s0&&jn(e,t,0,n),h>1&&jn(e,t,1,r),h>2&&jn(e,t,2,s),h>3&&jn(e,t,3,i),h>4&&jn(e,t,4,o),h>5&&jn(e,t,5,a),h>6&&jn(e,t,6,l),h>7&&jn(e,t,7,c),h>8&&jn(e,t,8,u),h>9&&jn(e,t,9,d)}(e,t,r,s,i,o,a,l,c,u,d,h):function(e,t,n){for(let r=0;r{const r=ro.get(e.token);3840&e.flags&&r&&(t=!0,n=n||r.deprecatedBehavior)}),e.modules.forEach(e=>{so.forEach((r,s)=>{se(s).providedIn===e&&(t=!0,n=n||r.deprecatedBehavior)})}),{hasOverrides:t,hasDeprecatedOverrides:n})}(e);return t?(function(e){for(let t=0;t0){let t=new Set(e.modules);so.forEach((r,s)=>{if(t.has(se(s).providedIn)){let t={token:s,flags:r.flags|(n?4096:0),deps:qn(r.deps),value:r.value,index:e.providers.length};e.providers.push(t),e.providersByKey[Nn(s)]=t}})}}(e=e.factory(()=>In)),e):e}(r))}const ro=new Map,so=new Map,io=new Map;function oo(e){let t;ro.set(e.token,e),"function"==typeof e.token&&(t=se(e.token))&&"function"==typeof t.providedIn&&so.set(e.token,e)}function ao(e,t){const n=Kn(t.viewDefFactory),r=Kn(n.nodes[0].element.componentView);io.set(e,r)}function lo(){ro.clear(),so.clear(),io.clear()}function co(e){if(0===ro.size)return e;const t=function(e){const t=[];let n=null;for(let r=0;rIn);for(let r=0;r"-"+e[1].toLowerCase())}`)]=vt(a))}const r=t.parent,a=xn(e,r.nodeIndex).renderElement;if(r.element.name)for(let t in n){const r=n[t];null!=r?e.renderer.setAttribute(a,t,r):e.renderer.removeAttribute(a,t)}else e.renderer.setValue(a,`bindings=${JSON.stringify(n,null,2)}`)}}var s,i}function So(e,t,n,r){Ui(e,t,n,...r)}function Ao(e,t){for(let n=t;n++i===s?e.error.bind(e,...t):In),inew ko(e,t),handleEvent:bo,updateDirectives:Co,updateRenderer:Eo}:{setCurrentNode:()=>{},createRootView:Yi,createEmbeddedView:Ni,createComponentView:Di,createNgModuleRef:Mr,overrideProvider:In,overrideComponentView:In,clearOverrides:In,checkAndUpdateView:ji,checkNoChangesView:Fi,destroyView:zi,createDebugContext:(e,t)=>new ko(e,t),handleEvent:(e,t,n,r)=>e.def.handleEvent(e,t,n,r),updateDirectives:(e,t)=>e.def.updateDirectives(0===t?uo:ho,e),updateRenderer:(e,t)=>e.def.updateRenderer(0===t?uo:ho,e)};kn.setCurrentNode=e.setCurrentNode,kn.createRootView=e.createRootView,kn.createEmbeddedView=e.createEmbeddedView,kn.createComponentView=e.createComponentView,kn.createNgModuleRef=e.createNgModuleRef,kn.overrideProvider=e.overrideProvider,kn.overrideComponentView=e.overrideComponentView,kn.clearOverrides=e.clearOverrides,kn.checkAndUpdateView=e.checkAndUpdateView,kn.checkNoChangesView=e.checkNoChangesView,kn.destroyView=e.destroyView,kn.resolveDep=es,kn.createDebugContext=e.createDebugContext,kn.handleEvent=e.handleEvent,kn.updateDirectives=e.updateDirectives,kn.updateRenderer=e.updateRenderer,kn.dirtyParentQueries=wi}();const t=function(e){const t=Array.from(e.providers),n=Array.from(e.modules),r={};for(const s in e.providersByKey)r[s]=e.providersByKey[s];return{factory:e.factory,isRoot:e.isRoot,providers:t,modules:n,providersByKey:r}}(Kn(this._ngModuleDefFactory));return kn.createNgModuleRef(this.moduleType,e||we.NULL,this._bootstrapComponents,t)}}class Po{}class Fo{static getAvailableVideoInputs(){return navigator.mediaDevices&&navigator.mediaDevices.enumerateDevices?new Promise((e,t)=>{navigator.mediaDevices.enumerateDevices().then(t=>{e(t.filter(e=>"videoinput"===e.kind))}).catch(e=>{t(e.message||e)})}):Promise.reject("enumerateDevices() not supported.")}}class jo{constructor(){this.showWebcam=!0,this.allowCameraSwitch=!0,this.multipleWebcamsAvailable=!1,this.videoOptions={},this.errors=[],this.webcamImage=null,this.trigger=new x,this.nextWebcam=new x}ngOnInit(){Fo.getAvailableVideoInputs().then(e=>{this.multipleWebcamsAvailable=e&&e.length>1})}triggerSnapshot(){this.trigger.next()}toggleWebcam(){this.showWebcam=!this.showWebcam}handleInitError(e){this.errors.push(e)}showNextWebcam(e){this.nextWebcam.next(e)}handleImage(e){console.log("received webcam image",e),this.webcamImage=e}cameraWasSwitched(e){console.log("active device: "+e),this.deviceId=e}get triggerObservable(){return this.trigger.asObservable()}get nextWebcamObservable(){return this.nextWebcam.asObservable()}}class Ho{}const Lo=void 0;var Uo=["en",[["a","p"],["AM","PM"],Lo],[["AM","PM"],Lo,Lo],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Lo,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Lo,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Lo,"{1} 'at' {0}",Lo],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];const Bo={},zo=function(){var e={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return e[e.Zero]="Zero",e[e.One]="One",e[e.Two]="Two",e[e.Few]="Few",e[e.Many]="Many",e[e.Other]="Other",e}(),Go=new ge("UseV4Plurals");class $o{}const Zo=(()=>(class extends $o{constructor(e,t){super(),this.locale=e,this.deprecatedPluralFn=t}getPluralCategory(e,t){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(t||this.locale,e):function(e){return function(e){const t=e.toLowerCase().replace(/_/g,"-");let n=Bo[t];if(n)return n;const r=t.split("-")[0];if(n=Bo[r])return n;if("en"===r)return Uo;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[18]}(t||this.locale)(e)){case zo.Zero:return"zero";case zo.One:return"one";case zo.Two:return"two";case zo.Few:return"few";case zo.Many:return"many";default:return"other"}}}))();class Wo{constructor(e,t,n,r){this.$implicit=e,this.ngForOf=t,this.index=n,this.count=r}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}}const Qo=(()=>(class{constructor(e,t,n){this._viewContainer=e,this._template=t,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){$e()&&null!=e&&"function"!=typeof e&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(e)}. `+"See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${n}' of type '${e=n,e.name||typeof e}'. NgFor only supports binding to Iterables such as Arrays.`)}}var e;if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const t=[];e.forEachOperation((e,n,r)=>{if(null==e.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Wo(null,this._ngForOf,-1,-1),r),s=new qo(e,n);t.push(s)}else if(null==r)this._viewContainer.remove(n);else{const s=this._viewContainer.get(n);this._viewContainer.move(s,r);const i=new qo(e,s);t.push(i)}});for(let n=0;n{this._viewContainer.get(e.currentIndex).context.$implicit=e.item})}_perViewChange(e,t){e.context.$implicit=t.item}static ngTemplateContextGuard(e,t){return!0}}))();class qo{constructor(e,t){this.record=e,this.view=t}}const Jo=(()=>(class{constructor(e,t){this._viewContainer=e,this._context=new Yo,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=t}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){Ko("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Ko("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 ngTemplateGuard_ngIf(e,t){return!0}}))();class Yo{constructor(){this.$implicit=null,this.ngIf=null}}function Ko(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${oe(t)}'.`)}const Xo=(()=>(class{transform(e){return JSON.stringify(e,null,2)}}))(),ea=(()=>(class{}))(),ta=new ge("DocumentToken");class na{constructor(e,t,n){this._mimeType=null,this._imageAsBase64=null,this._imageAsDataUrl=null,this._imageData=null,this._mimeType=t,this._imageAsDataUrl=e,this._imageData=n}static getDataFromDataUrl(e,t){return e.replace(`data:${t};base64,`,"")}get imageAsBase64(){return this._imageAsBase64?this._imageAsBase64:this._imageAsBase64=na.getDataFromDataUrl(this._imageAsDataUrl,this._mimeType)}get imageAsDataUrl(){return this._imageAsDataUrl}get imageData(){return this._imageData}}const ra=(()=>{class e{constructor(){this.width=640,this.height=480,this.videoOptions=e.DEFAULT_VIDEO_OPTIONS,this.allowCameraSwitch=!0,this.captureImageData=!1,this.imageType=e.DEFAULT_IMAGE_TYPE,this.imageQuality=e.DEFAULT_IMAGE_QUALITY,this.imageCapture=new as,this.initError=new as,this.imageClick=new as,this.cameraSwitched=new as,this.availableVideoInputs=[],this.videoInitialized=!1,this.activeVideoInputIndex=-1,this.mediaStream=null,this.activeVideoSettings=null}set trigger(e){this.triggerSubscription&&this.triggerSubscription.unsubscribe(),this.triggerSubscription=e.subscribe(()=>{this.takeSnapshot()})}set switchCamera(e){this.switchCameraSubscription&&this.switchCameraSubscription.unsubscribe(),this.switchCameraSubscription=e.subscribe(e=>{"string"==typeof e?this.switchToVideoInput(e):this.rotateVideoInput(!1!==e)})}static getMediaConstraintsForDevice(e,t){const n=t||this.DEFAULT_VIDEO_OPTIONS;return e&&(n.deviceId={exact:e}),n}static getDeviceIdFromMediaStreamTrack(t){if(t.getSettings&&t.getSettings()&&t.getSettings().deviceId)return t.getSettings().deviceId;if(t.getConstraints&&t.getConstraints()&&t.getConstraints().deviceId){const n=t.getConstraints().deviceId;return e.getValueFromConstrainDOMString(n)}}static getFacingModeFromMediaStreamTrack(t){if(t){if(t.getSettings&&t.getSettings()&&t.getSettings().facingMode)return t.getSettings().facingMode;if(t.getConstraints&&t.getConstraints()&&t.getConstraints().facingMode){const n=t.getConstraints().facingMode;return e.getValueFromConstrainDOMString(n)}}}static isUserFacing(t){const n=e.getFacingModeFromMediaStreamTrack(t);return!!n&&"user"===n.toLowerCase()}static getValueFromConstrainDOMString(e){if(e){if(e instanceof String)return String(e);if(Array.isArray(e)&&Array(e).length>0)return String(e[0]);if("object"==typeof e){if(e.exact)return String(e.exact);if(e.ideal)return String(e.ideal)}}return null}ngAfterViewInit(){this.detectAvailableDevices().then(e=>{this.switchToVideoInput(e.length>0?e[0].deviceId:null)}).catch(e=>{this.initError.next({message:e}),this.switchToVideoInput(null)})}ngOnDestroy(){this.stopMediaTracks(),this.unsubscribeFromSubscriptions()}takeSnapshot(){const t=this.nativeVideoElement,n={width:this.width,height:this.height};t.videoWidth&&(n.width=t.videoWidth,n.height=t.videoHeight);const r=this.canvas.nativeElement;r.width=n.width,r.height=n.height;const s=r.getContext("2d");s.drawImage(t,0,0);const i=this.imageType?this.imageType:e.DEFAULT_IMAGE_TYPE,o=r.toDataURL(i,this.imageQuality?this.imageQuality:e.DEFAULT_IMAGE_QUALITY);let a=null;this.captureImageData&&(a=s.getImageData(0,0,r.width,r.height)),this.imageCapture.next(new na(o,i,a))}rotateVideoInput(e){this.availableVideoInputs&&this.availableVideoInputs.length>1&&this.switchToVideoInput(this.availableVideoInputs[(this.activeVideoInputIndex+(e?1:this.availableVideoInputs.length-1))%this.availableVideoInputs.length].deviceId)}switchToVideoInput(e){this.videoInitialized=!1,this.stopMediaTracks(),this.initWebcam(e,this.videoOptions)}videoResize(){}get videoWidth(){const e=this.getVideoAspectRatio();return Math.min(this.width,this.height*e)}get videoHeight(){const e=this.getVideoAspectRatio();return Math.min(this.height,this.width/e)}get videoStyleClasses(){let e="";return this.isMirrorImage()&&(e+="mirrored "),e.trim()}get nativeVideoElement(){return this.video.nativeElement}getVideoAspectRatio(){const e=this.nativeVideoElement;return e.videoWidth&&e.videoWidth>0&&e.videoHeight&&e.videoHeight>0?e.videoWidth/e.videoHeight:this.width/this.height}initWebcam(t,n){const r=this.nativeVideoElement;if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){const s=e.getMediaConstraintsForDevice(t,n);navigator.mediaDevices.getUserMedia({video:s}).then(t=>{this.mediaStream=t,r.srcObject=t,r.play(),this.activeVideoSettings=t.getVideoTracks()[0].getSettings();const n=e.getDeviceIdFromMediaStreamTrack(t.getVideoTracks()[0]);this.activeVideoInputIndex=n?this.availableVideoInputs.findIndex(e=>e.deviceId===n):-1,this.videoInitialized=!0,this.cameraSwitched.next(n),this.detectAvailableDevices()}).catch(e=>{this.initError.next({message:e.message,mediaStreamError:e})})}else this.initError.next({message:"Cannot read UserMedia from MediaDevices."})}getActiveVideoTrack(){return this.mediaStream?this.mediaStream.getVideoTracks()[0]:null}isMirrorImage(){if(!this.getActiveVideoTrack())return!1;{let e="auto";switch(this.mirrorImage&&("string"==typeof this.mirrorImage?e=String(this.mirrorImage).toLowerCase():this.mirrorImage.x&&(e=this.mirrorImage.x.toLowerCase())),e){case"always":return!0;case"never":return!1}}return e.isUserFacing(this.getActiveVideoTrack())}stopMediaTracks(){this.mediaStream&&this.mediaStream.getTracks&&this.mediaStream.getTracks().forEach(e=>e.stop())}unsubscribeFromSubscriptions(){this.triggerSubscription&&this.triggerSubscription.unsubscribe(),this.switchCameraSubscription&&this.switchCameraSubscription.unsubscribe()}detectAvailableDevices(){return new Promise((e,t)=>{Fo.getAvailableVideoInputs().then(t=>{this.availableVideoInputs=t,e(t)}).catch(e=>{this.availableVideoInputs=[],t(e)})})}}return e.DEFAULT_VIDEO_OPTIONS={facingMode:"environment"},e.DEFAULT_IMAGE_TYPE="image/jpeg",e.DEFAULT_IMAGE_QUALITY=.92,e})();var sa=Mn({encapsulation:0,styles:[[".webcam-wrapper[_ngcontent-%COMP%]{display:inline-block;position:relative;line-height:0}.webcam-wrapper[_ngcontent-%COMP%] video.mirrored[_ngcontent-%COMP%]{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.webcam-wrapper[_ngcontent-%COMP%] canvas[_ngcontent-%COMP%]{display:none}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]{background-color:rgba(0,0,0,.1);background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAE9UlEQVR42u2aT2hdRRTGf+cRQqghSqihdBFDkRISK2KDfzDWxHaRQHEhaINKqa1gKQhd6EZLN+IidCH+Q0oWIkVRC21BQxXRitVaSbKoJSGtYGoK2tQ/tU1jY5v0c5F54Xl7b/KSO/PyEt+3e5f75p7zzZwzZ74zUEIJJfyfYaEGllQGVAGZlENdBy6Z2cSiYFTSKkkfS/pH/nBF0kFJdUW9AiRVASeAukD8DgNrzOySrwEzng18KaDzALXuG8W3AiStAvqBisBRNg40mtlPxbYCOgvgPO4bncWW+JpVeDQXRQhIygDfA00F5r0XuNfMrgclQFI98DDQCNQA5ZFXqoCWBVp8XwHRHeEqcN7loy/NbHBesyqpQ1KfFj/6nC+ZvFaApFrgPaCZpYVvgCfNbDiRAElNwGFg+RIt/X8H2s2s9wYCJDUAR4HqJX7++RN40MwGpgmQVAH0AQ2BPz4AHHPl8nBOAqtyFWQjsA6oL4Ada81sPDv7uwImod8kvSJp9RyS8O2SXnb/DYVd2Y9VSroQ4ANXJO2WVJmixqh0kzMWwL4LkiqRtDnA4D1zmfE8j9g9AezcnAHaPcfXdbfdnPZ2Yps6+DwAvO/Z1naTdApY7Xng48BDZnY1MpMVQBuw3iXc5Tnb0wBwBPjUzP6eoezuArZ6svM0geJLkvZEYnl3nkntoqROSbckSW2Suj3ZOIangc7GPJuUtNGdFIfmMeavktoSSKiW9LMPw30Q8JqkekmjCbOZRhuclLQjgYSNxUBAj6RyZ9ATgUJpUtJTCSR8vpAEXHAyWK5BXYFIGHOlepSAloUk4NEYgyoknQhEwhFJ0e8h6VSaQeerCb5uZgdi9utxYBNwOUD93hIVXswM4INCi6K9wAszFC2DwLOBDjHbYp59karIUnRdzYy/3ClqVklaUhfwTICj7K25OqA7a4wWagVsm4Me/xzwg2cCqqONFzO7DPxSCAJi436GUBgHHguQD2oTlJ55oSzP9ybccsttSJw1szdjFOSnI/8dTCGZHwcORp4Nx7y3B1iZ8/sm4MW8/Euxg5wIsS/HaAp3zeP4/G7obRDXI4jiTIA22H7Xdc7X+S3A5lC7QBQ357aq3VAjCeSkwUfAJrfvz+R8A9ADLAtZB+TinpjC5JMA+//jwPZZnF8G7J+L8z4IWB/zbG+gIujVWfLBW/NStVMmqaG4POJRsIjix7h8IGnLQuoBbQki5sVAJHyYm7YkNaRRtXwQ8G1cHpX0iKRrgUjYno17Sf0LrQhJUkdCeHWkVITGJI0k1QeS3ikGSUzOyJUJJNznYneuOCnpTldcxa2kP3xJYqOeSDjqZG8ShJLnE8TTuMS6Iyu1BW7djZqkfo9N0QOuYJmYQddfB7RG+gLTNzqAY9FrL+5/nwEbvDdJJe3zzOrhNP3AWRqmk55t3ZcBuj3b2gb0Sbrbo/NNzk7fFzu7s/E5EiC+rrmeQU0Kx2skvRFoOx2ZzlmSdgbsw49JetvtBpk8nM64d/cGbNtJ0s7cGyJlwHeEv+t3nqnLSgPAUOSGyG3AHUxdzqoJbEcvcL+ZTeTeEapzJKxgaeOcc/7Mf06D7kFrguS0VDAMtGadv+E47DT9tcChJej8ISfpD+abgTe45uOkFi8mnQ+JBVQ+d4VXuOptjavcyot8pq86mfwk8LWZnaOEEkoooYQSSojDv8AhQNeGfe0jAAAAAElFTkSuQmCC);background-repeat:no-repeat;border-radius:5px;position:absolute;right:13px;top:10px;height:48px;width:48px;background-size:80%;cursor:pointer;background-position:center;transition:background-color .2s ease}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.18)}"]],data:{}});function ia(e){return ki(0,[(e()(),fi(0,0,null,null,0,"div",[["class","camera-switch"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.rotateVideoInput(!0)&&r),r},null,null))],null,null)}function oa(e){return ki(0,[yi(402653184,1,{video:0}),yi(402653184,2,{canvas:0}),(e()(),fi(2,0,null,null,4,"div",[["class","webcam-wrapper"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.imageClick.next()&&r),r},null,null)),(e()(),fi(3,0,[[1,0],["video",1]],null,0,"video",[["autoplay",""],["muted",""],["playsinline",""]],[[8,"width",0],[8,"height",0],[8,"className",0]],[[null,"resize"]],function(e,t,n){var r=!0;return"resize"===t&&(r=!1!==e.component.videoResize()&&r),r},null,null)),(e()(),pi(16777216,null,null,1,null,ia)),Gr(5,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),fi(6,0,[[2,0],["canvas",1]],null,0,"canvas",[],[[8,"width",0],[8,"height",0]],null,null,null,null))],function(e,t){var n=t.component;e(t,5,0,n.allowCameraSwitch&&n.availableVideoInputs.length>1&&n.videoInitialized)},function(e,t){var n=t.component;e(t,3,0,n.videoWidth,n.videoHeight,n.videoStyleClasses),e(t,6,0,n.width,n.height)})}let aa=null;function la(){return aa}class ca{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(e){this._attrToPropMap=e}}class ua extends ca{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const t=this.createElement("div",document);if(null!=this.getStyle(t,"animationName"))this._animationPrefix="";else{const e=["Webkit","Moz","O","ms"];for(let n=0;n{null!=this.getStyle(t,e)&&(this._transitionEnd=n[e])})}catch(e){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(e){return e.getDistributedNodes()}resolveAndSetHref(e,t,n){e.href=null==n?t:t+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}const da={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},ha=3,pa={"\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"},fa={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"},ga=(()=>{if(de.Node)return de.Node.prototype.contains||function(e){return!!(16&this.compareDocumentPosition(e))}})();class ma extends ua{parse(e){throw new Error("parse not implemented")}static makeCurrent(){var e;e=new ma,aa||(aa=e)}hasProperty(e,t){return t in e}setProperty(e,t,n){e[t]=n}getProperty(e,t){return e[t]}invoke(e,t,n){e[t](...n)}logError(e){window.console&&(console.error?console.error(e):console.log(e))}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return da}contains(e,t){return ga.call(e,t)}querySelector(e,t){return e.querySelector(t)}querySelectorAll(e,t){return e.querySelectorAll(t)}on(e,t,n){e.addEventListener(t,n,!1)}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}createMouseEvent(e){const t=this.getDefaultDocument().createEvent("MouseEvent");return t.initEvent(e,!0,!0),t}createEvent(e){const t=this.getDefaultDocument().createEvent("Event");return t.initEvent(e,!0,!0),t}preventDefault(e){e.preventDefault(),e.returnValue=!1}isPrevented(e){return e.defaultPrevented||null!=e.returnValue&&!e.returnValue}getInnerHTML(e){return e.innerHTML}getTemplateContent(e){return"content"in e&&this.isTemplateElement(e)?e.content:null}getOuterHTML(e){return e.outerHTML}nodeName(e){return e.nodeName}nodeValue(e){return e.nodeValue}type(e){return e.type}content(e){return this.hasProperty(e,"content")?e.content:e}firstChild(e){return e.firstChild}nextSibling(e){return e.nextSibling}parentElement(e){return e.parentNode}childNodes(e){return e.childNodes}childNodesAsList(e){const t=e.childNodes,n=new Array(t.length);for(let r=0;re.insertBefore(n,t))}insertAfter(e,t,n){e.insertBefore(n,t.nextSibling)}setInnerHTML(e,t){e.innerHTML=t}getText(e){return e.textContent}setText(e,t){e.textContent=t}getValue(e){return e.value}setValue(e,t){e.value=t}getChecked(e){return e.checked}setChecked(e,t){e.checked=t}createComment(e){return this.getDefaultDocument().createComment(e)}createTemplate(e){const t=this.getDefaultDocument().createElement("template");return t.innerHTML=e,t}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createElementNS(e,t,n){return(n=n||this.getDefaultDocument()).createElementNS(e,t)}createTextNode(e,t){return(t=t||this.getDefaultDocument()).createTextNode(e)}createScriptTag(e,t,n){const r=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return r.setAttribute(e,t),r}createStyleElement(e,t){const n=(t=t||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(e,t)),n}createShadowRoot(e){return e.createShadowRoot()}getShadowRoot(e){return e.shadowRoot}getHost(e){return e.host}clone(e){return e.cloneNode(!0)}getElementsByClassName(e,t){return e.getElementsByClassName(t)}getElementsByTagName(e,t){return e.getElementsByTagName(t)}classList(e){return Array.prototype.slice.call(e.classList,0)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}hasClass(e,t){return e.classList.contains(t)}setStyle(e,t,n){e.style[t]=n}removeStyle(e,t){e.style[t]=""}getStyle(e,t){return e.style[t]}hasStyle(e,t,n){const r=this.getStyle(e,t)||"";return n?r==n:r.length>0}tagName(e){return e.tagName}attributeMap(e){const t=new Map,n=e.attributes;for(let r=0;r{class e extends Ho{constructor(e){super(),this._doc=e,this._init()}_init(){this.location=la().getLocation(),this._history=la().getHistory()}getBaseHrefFromDOM(){return la().getBaseHref(this._doc)}onPopState(e){la().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",e,!1)}onHashChange(e){la().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",e,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(e){this.location.pathname=e}pushState(e,t,n){ya()?this._history.pushState(e,t,n):this.location.hash=n}replaceState(e,t,n){ya()?this._history.replaceState(e,t,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}}return e.ctorParameters=(()=>[{type:void 0,decorators:[{type:Y,args:[ta]}]}]),e})(),ba=new ge("TRANSITION_ID"),Ca=[{provide:cs,useFactory:function(e,t,n){return()=>{n.get(us).donePromise.then(()=>{const n=la();Array.prototype.slice.apply(n.querySelectorAll(t,"style[ng-transition]")).filter(t=>n.getAttribute(t,"ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[ba,ta,we],multi:!0}];class Ea{static init(){var e;e=new Ea,Gs=e}addToWindow(e){de.getAngularTestability=((t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r}),de.getAllAngularTestabilities=(()=>e.getAllTestabilities()),de.getAllAngularRootElements=(()=>e.getAllRootElements()),de.frameworkStabilizers||(de.frameworkStabilizers=[]),de.frameworkStabilizers.push(e=>{const t=de.getAllAngularTestabilities();let n=t.length,r=!1;const s=function(t){r=r||t,0==--n&&e(r)};t.forEach(function(e){e.whenStable(s)})})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?la().isShadowRoot(t)?this.findTestabilityInTree(e,la().getHost(t),!0):this.findTestabilityInTree(e,la().parentElement(t),!0):null}}function xa(e,t){"undefined"!=typeof COMPILED&&COMPILED||((de.ng=de.ng||{})[e]=t)}const Sa=(()=>({ApplicationRef:Ks,NgZone:Ds}))();function Aa(e){return si(e)}const Ta=new ge("EventManagerPlugins"),ka=(()=>(class{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r(class{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}))(),Na=(()=>(class extends Va{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>la().remove(e))}}))(),Oa={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/"},Da=/%COMP%/g,Ma="_nghost-%COMP%",Ra="_ngcontent-%COMP%";function Pa(e,t,n){for(let r=0;r{!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}const ja=(()=>(class{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new Ha(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Fe.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new Ba(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Fe.Native:case Fe.ShadowDom:return new za(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Pa(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}))();class Ha{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Oa[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=`${r}:${t}`;const s=Oa[r];s?e.setAttributeNS(s,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Oa[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&$t.DashCase?e.style.setProperty(t,n,r&$t.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&$t.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){Ua(t,"property"),e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return Ua(t,"listener"),"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Fa(n)):this.eventManager.addEventListener(e,t,Fa(n))}}const La=(()=>"@".charCodeAt(0))();function Ua(e,t){if(e.charCodeAt(0)===La)throw new Error(`Found the synthetic ${t} ${e}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class Ba extends Ha{constructor(e,t,n,r){super(e),this.component=n;const s=Pa(r+"-"+n.id,n.styles,[]);t.addStyles(s),this.contentAttr=Ra.replace(Da,r+"-"+n.id),this.hostAttr=Ma.replace(Da,r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class za extends Ha{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Fe.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const s=Pa(r.id,r.styles,[]);for(let i=0;i"undefined"!=typeof Zone&&Zone.__symbol__||function(e){return"__zone_symbol__"+e})(),$a=Ga("addEventListener"),Za=Ga("removeEventListener"),Wa={},Qa="__zone_symbol__propagationStopped",qa=(()=>{const e="undefined"!=typeof Zone&&Zone[Ga("BLACK_LISTED_EVENTS")];if(e){const t={};return e.forEach(e=>{t[e]=e}),t}})(),Ja=function(e){return!!qa&&qa.hasOwnProperty(e)},Ya=function(e){const t=Wa[e.type];if(!t)return;const n=this[t];if(!n)return;const r=[e];if(1===n.length){const e=n[0];return e.zone!==Zone.current?e.zone.run(e.handler,this,r):e.handler.apply(this,r)}{const t=n.slice();for(let n=0;n(class extends Ia{constructor(e,t,n){super(e),this.ngZone=t,n&&function(e){return"server"===e}(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const e=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[Qa]=!0),e&&e.apply(this,arguments)}}supports(e){return!0}addEventListener(e,t,n){let r=n;if(!e[$a]||Ds.isInAngularZone()&&!Ja(t))e.addEventListener(t,r,!1);else{let n=Wa[t];n||(n=Wa[t]=Ga("ANGULAR"+t+"FALSE"));let s=e[n];const i=s&&s.length>0;s||(s=e[n]=[]);const o=Ja(t)?Zone.root:Zone.current;if(0===s.length)s.push({zone:o,handler:r});else{let e=!1;for(let t=0;tthis.removeEventListener(e,t,r)}removeEventListener(e,t,n){let r=e[Za];if(!r)return e.removeEventListener.apply(e,[t,n,!1]);let s=Wa[t],i=s&&e[s];if(!i)return e.removeEventListener.apply(e,[t,n,!1]);let o=!1;for(let a=0;a(class{constructor(){this.events=[],this.overrides={}}buildHammer(e){const t=new Hammer(e,this.options);t.get("pinch").set({enable:!0}),t.get("rotate").set({enable:!0});for(const n in this.overrides)t.get(n).set(this.overrides[n]);return t}}))(),rl=(()=>(class extends Ia{constructor(e,t,n,r){super(e),this._config=t,this.console=n,this.loader=r}supports(e){return!(!Xa.hasOwnProperty(e.toLowerCase())&&!this.isCustomEvent(e)||!window.Hammer&&!this.loader&&(this.console.warn(`The "${e}" event cannot be bound because Hammer.JS is not `+"loaded and no custom loader has been specified."),1))}addEventListener(e,t,n){const r=this.manager.getZone();if(t=t.toLowerCase(),!window.Hammer&&this.loader){let r=!1,s=()=>{r=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(s=(()=>{}));r||(s=this.addEventListener(e,t,n))}).catch(()=>{this.console.warn(`The "${t}" event cannot be bound because the custom `+"Hammer.JS loader failed."),s=(()=>{})}),()=>{s()}}return r.runOutsideAngular(()=>{const s=this._config.buildHammer(e),i=function(e){r.runGuarded(function(){n(e)})};return s.on(t,i),()=>{s.off(t,i),"function"==typeof s.destroy&&s.destroy()}})}isCustomEvent(e){return this._config.events.indexOf(e)>-1}}))(),sl=["alt","control","meta","shift"],il={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey},ol=(()=>{class e extends Ia{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const s=e.parseEventName(n),i=e.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>la().onAndCancel(t,s.domEventName,i))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=e._normalizeKey(n.pop());let i="";if(sl.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),i+=e+".")}),i+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=r,o.fullKey=i,o}static getEventFullKey(e){let t="",n=la().getEventKey(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),sl.forEach(r=>{r!=n&&(0,il[r])(e)&&(t+=r+".")}),t+=n}static eventCallback(t,n,r){return s=>{e.getEventFullKey(s)===t&&r.runGuarded(()=>n(s))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e})();class al{}const ll=(()=>(class extends al{constructor(e){super(),this._doc=e}sanitize(e,t){if(null==t)return null;switch(e){case pt.NONE:return t;case pt.HTML:return t instanceof ul?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"HTML"),function(e,t){let n=null;try{dt=dt||new Ze(e);let r=t?String(t):"";n=dt.getInertBodyElement(r);let s=5,i=r;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,r=i,i=n.innerHTML,n=dt.getInertBodyElement(r)}while(r!==i);const o=new at,a=o.sanitizeChildren(ht(n)||n);return $e()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const e=ht(n)||n;for(;e.firstChild;)e.removeChild(e.firstChild)}}}(this._doc,String(t)));case pt.STYLE:return t instanceof dl?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"Style"),function(e){if(!(e=String(e).trim()))return"";const t=e.match(mt);return t&&qe(t[1])===t[1]||e.match(gt)&&function(e){let t=!0,n=!0;for(let r=0;r{class e{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(t){return{ngModule:e,providers:[{provide:ds,useValue:t.appId},{provide:ba,useExisting:ds},Ca]}}}return e})();function vl(e,t){return new v(n=>{const r=e.length;if(0===r)return void n.complete();const s=new Array(r);let i=0,o=0;for(let a=0;a{c||(c=!0,o++),s[a]=e},error:e=>n.error(e),complete:()=>{++i!==r&&c||(o===r&&n.next(t?t.reduce((e,t,n)=>(e[t]=s[n],e),{}):s),n.complete())}}))}})}"undefined"!=typeof window&&window;const yl=new ge("NgValueAccessor"),wl=(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this.onChange=(e=>{}),this.onTouched=(()=>{})}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"checked",e)}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}))(),bl=new ge("CompositionEventMode"),Cl=(()=>(class{constructor(e,t,n){this._renderer=e,this._elementRef=t,this._compositionMode=n,this.onChange=(e=>{}),this.onTouched=(()=>{}),this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const e=la()?la().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==e?"":e)}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",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)}}))();class El{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}reset(e){this.control&&this.control.reset(e)}hasError(e,t){return!!this.control&&this.control.hasError(e,t)}getError(e,t){return this.control?this.control.getError(e,t):null}}class xl extends El{get formDirective(){return null}get path(){return null}}function Sl(){throw new Error("unimplemented")}class Al extends El{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Sl()}get asyncValidator(){return Sl()}}const Tl=(()=>(class extends class{constructor(e){this._cd=e}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(e){super(e)}}))();function kl(e){return null==e||0===e.length}const Il=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+)*@[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 Vl{static min(e){return t=>{if(kl(t.value)||kl(e))return null;const n=parseFloat(t.value);return!isNaN(n)&&n{if(kl(t.value)||kl(e))return null;const n=parseFloat(t.value);return!isNaN(n)&&n>e?{max:{max:e,actual:t.value}}:null}}static required(e){return kl(e.value)?{required:!0}:null}static requiredTrue(e){return!0===e.value?null:{required:!0}}static email(e){return kl(e.value)?null:Il.test(e.value)?null:{email:!0}}static minLength(e){return t=>{if(kl(t.value))return null;const n=t.value?t.value.length:0;return n{const n=t.value?t.value.length:0;return n>e?{maxlength:{requiredLength:e,actualLength:n}}:null}}static pattern(e){if(!e)return Vl.nullValidator;let t,n;return"string"==typeof e?(n="","^"!==e.charAt(0)&&(n+="^"),n+=e,"$"!==e.charAt(e.length-1)&&(n+="$"),t=new RegExp(n)):(n=e.toString(),t=e),e=>{if(kl(e.value))return null;const r=e.value;return t.test(r)?null:{pattern:{requiredPattern:n,actualValue:r}}}}static nullValidator(e){return null}static compose(e){if(!e)return null;const t=e.filter(Nl);return 0==t.length?null:function(e){return Dl(function(e,n){return t.map(t=>t(e))}(e))}}static composeAsync(e){if(!e)return null;const t=e.filter(Nl);return 0==t.length?null:function(e){return function(...e){if(1===e.length){const t=e[0];if(l(t))return vl(t,null);if(c(t)&&Object.getPrototypeOf(t)===Object.prototype){const e=Object.keys(t);return vl(e.map(e=>t[e]),e)}}if("function"==typeof e[e.length-1]){const t=e.pop();return vl(e=1===e.length&&l(e[0])?e[0]:e,null).pipe(M(e=>t(...e)))}return vl(e,null)}(function(e,n){return t.map(t=>t(e))}(e).map(Ol)).pipe(M(Dl))}}}function Nl(e){return null!=e}function Ol(e){const t=yt(e)?j(e):e;if(!wt(t))throw new Error("Expected validator to return Promise or Observable.");return t}function Dl(e){const t=e.reduce((e,t)=>null!=t?Object.assign({},e,t):e,{});return 0===Object.keys(t).length?null:t}function Ml(e){return e.validate?t=>e.validate(t):e}function Rl(e){return e.validate?t=>e.validate(t):e}const Pl=(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this.onChange=(e=>{}),this.onTouched=(()=>{})}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==e?"":e)}registerOnChange(e){this.onChange=(t=>{e(""==t?null:parseFloat(t))})}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}))(),Fl=(()=>(class{constructor(){this._accessors=[]}add(e,t){this._accessors.push([e,t])}remove(e){for(let t=this._accessors.length-1;t>=0;--t)if(this._accessors[t][1]===e)return void this._accessors.splice(t,1)}select(e){this._accessors.forEach(t=>{this._isSameGroup(t,e)&&t[1]!==e&&t[1].fireUncheck(e.value)})}_isSameGroup(e,t){return!!e[0].control&&e[0]._parent===t._control._parent&&e[1].name===t.name}}))(),jl=(()=>(class{constructor(e,t,n,r){this._renderer=e,this._elementRef=t,this._registry=n,this._injector=r,this.onChange=(()=>{}),this.onTouched=(()=>{})}ngOnInit(){this._control=this._injector.get(Al),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(e){this._state=e===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(e){this._fn=e,this.onChange=(()=>{e(this.value),this._registry.select(this)})}fireUncheck(e){this.writeValue(e)}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}))(),Hl={formControlName:'\n

\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',formGroupName:'\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',formArrayName:'\n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });',ngModelGroup:'\n
\n
\n \n
\n
',ngModelWithFormGroup:'\n
\n \n \n
\n '};function Ll(e,t){return[...t.path,e]}function Ul(e,t){e||zl(t,"Cannot find control with"),t.valueAccessor||zl(t,"No value accessor for form control with"),e.validator=Vl.compose([e.validator,t.validator]),e.asyncValidator=Vl.composeAsync([e.asyncValidator,t.asyncValidator]),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(n=>{e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&Bl(e,t)})}(e,t),function(e,t){e.registerOnChange((e,n)=>{t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&Bl(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),t.valueAccessor.setDisabledState&&e.registerOnDisabledChange(e=>{t.valueAccessor.setDisabledState(e)}),t._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(()=>e.updateValueAndValidity())}),t._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(()=>e.updateValueAndValidity())})}function Bl(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function zl(e,t){let n;throw n=e.path.length>1?`path: '${e.path.join(" -> ")}'`:e.path[0]?`name: '${e.path}'`:"unspecified name attribute",new Error(`${t} ${n}`)}function Gl(e){return null!=e?Vl.compose(e.map(Ml)):null}function $l(e){return null!=e?Vl.composeAsync(e.map(Rl)):null}const Zl=[wl,(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this.onChange=(e=>{}),this.onTouched=(()=>{})}writeValue(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(e))}registerOnChange(e){this.onChange=(t=>{e(""==t?null:parseFloat(t))})}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}}))(),Pl,(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=(e=>{}),this.onTouched=(()=>{}),this._compareWith=Et}set compareWith(e){if("function"!=typeof e)throw new Error(`compareWith must be a function, but received ${JSON.stringify(e)}`);this._compareWith=e}writeValue(e){this.value=e;const t=this._getOptionId(e);null==t&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(e,t){return null==e?`${t}`:(t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}(t,e);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(e){this.onChange=(t=>{this.value=this._getOptionValue(t),e(this.value)})}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(e){for(const t of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(t),e))return t;return null}_getOptionValue(e){const t=function(e){return e.split(":")[0]}(e);return this._optionMap.has(t)?this._optionMap.get(t):e}}))(),(()=>(class{constructor(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=(e=>{}),this.onTouched=(()=>{}),this._compareWith=Et}set compareWith(e){if("function"!=typeof e)throw new Error(`compareWith must be a function, but received ${JSON.stringify(e)}`);this._compareWith=e}writeValue(e){let t;if(this.value=e,Array.isArray(e)){const n=e.map(e=>this._getOptionId(e));t=((e,t)=>{e._setSelected(n.indexOf(t.toString())>-1)})}else t=((e,t)=>{e._setSelected(!1)});this._optionMap.forEach(t)}registerOnChange(e){this.onChange=(t=>{const n=[];if(t.hasOwnProperty("selectedOptions")){const e=t.selectedOptions;for(let t=0;t{}),this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return this.status===Wl}get invalid(){return this.status===Ql}get pending(){return this.status==ql}get disabled(){return this.status===Jl}get enabled(){return this.status!==Jl}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(e){this.validator=Yl(e)}setAsyncValidators(e){this.asyncValidator=Kl(e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(e={}){this.touched=!0,this._parent&&!e.onlySelf&&this._parent.markAsTouched(e)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(e=>e.markAllAsTouched())}markAsUntouched(e={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(e=>{e.markAsUntouched({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}markAsDirty(e={}){this.pristine=!1,this._parent&&!e.onlySelf&&this._parent.markAsDirty(e)}markAsPristine(e={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(e=>{e.markAsPristine({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}markAsPending(e={}){this.status=ql,!1!==e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!e.onlySelf&&this._parent.markAsPending(e)}disable(e={}){const t=this._parentMarkedDirty(e.onlySelf);this.status=Jl,this.errors=null,this._forEachChild(t=>{t.disable(Object.assign({},e,{onlySelf:!0}))}),this._updateValue(),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},e,{skipPristineCheck:t})),this._onDisabledChange.forEach(e=>e(!0))}enable(e={}){const t=this._parentMarkedDirty(e.onlySelf);this.status=Wl,this._forEachChild(t=>{t.enable(Object.assign({},e,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(Object.assign({},e,{skipPristineCheck:t})),this._onDisabledChange.forEach(e=>e(!1))}_updateAncestors(e){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(e){this._parent=e}updateValueAndValidity(e={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),this.status!==Wl&&this.status!==ql||this._runAsyncValidator(e.emitEvent)),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(e)}_updateTreeValidity(e={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Jl:Wl}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(e){if(this.asyncValidator){this.status=ql;const t=Ol(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(t=>this.setErrors(t,{emitEvent:e}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(e,t={}){this.errors=e,this._updateControlsErrors(!1!==t.emitEvent)}get(e){return function(e,t,n){return null==t?null:(t instanceof Array||(t=t.split(".")),t instanceof Array&&0===t.length?null:t.reduce((e,t)=>e instanceof nc?e.controls.hasOwnProperty(t)?e.controls[t]:null:e instanceof rc&&e.at(t)||null,e))}(this,e)}getError(e,t){const n=t?this.get(t):this;return n&&n.errors?n.errors[e]:null}hasError(e,t){return!!this.getError(e,t)}get root(){let e=this;for(;e._parent;)e=e._parent;return e}_updateControlsErrors(e){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(e)}_initObservables(){this.valueChanges=new as,this.statusChanges=new as}_calculateStatus(){return this._allControlsDisabled()?Jl:this.errors?Ql:this._anyControlsHaveStatus(ql)?ql:this._anyControlsHaveStatus(Ql)?Ql:Wl}_anyControlsHaveStatus(e){return this._anyControls(t=>t.status===e)}_anyControlsDirty(){return this._anyControls(e=>e.dirty)}_anyControlsTouched(){return this._anyControls(e=>e.touched)}_updatePristine(e={}){this.pristine=!this._anyControlsDirty(),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}_updateTouched(e={}){this.touched=this._anyControlsTouched(),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}_isBoxedValue(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}_registerOnCollectionChange(e){this._onCollectionChange=e}_setUpdateStrategy(e){Xl(e)&&null!=e.updateOn&&(this._updateOn=e.updateOn)}_parentMarkedDirty(e){return!e&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class tc extends ec{constructor(e=null,t,n){super(Yl(t),Kl(n,t)),this._onChange=[],this._applyFormState(e),this._setUpdateStrategy(t),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(e,t={}){this.value=this._pendingValue=e,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(e=>e(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(e,t={}){this.setValue(e,t)}reset(e=null,t={}){this._applyFormState(e),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(e){this._onChange.push(e)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=(()=>{})}registerOnDisabledChange(e){this._onDisabledChange.push(e)}_forEachChild(e){}_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(e){this._isBoxedValue(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}}class nc extends ec{constructor(e,t,n){super(Yl(t),Kl(n,t)),this.controls=e,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(e,t){return this.controls[e]?this.controls[e]:(this.controls[e]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(e,t){this.registerControl(e,t),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],this.updateValueAndValidity(),this._onCollectionChange()}setControl(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],t&&this.registerControl(e,t),this.updateValueAndValidity(),this._onCollectionChange()}contains(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}setValue(e,t={}){this._checkAllValuesPresent(e),Object.keys(e).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(e[n],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(e,t={}){Object.keys(e).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(e[n],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}reset(e={},t={}){this._forEachChild((n,r)=>{n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(e,t,n)=>(e[n]=t instanceof tc?t.value:t.getRawValue(),e))}_syncPendingControls(){let e=this._reduceChildren(!1,(e,t)=>!!t._syncPendingControls()||e);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_throwIfControlMissing(e){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[e])throw new Error(`Cannot find form control with name: ${e}.`)}_forEachChild(e){Object.keys(this.controls).forEach(t=>e(this.controls[t],t))}_setUpControls(){this._forEachChild(e=>{e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(e){let t=!1;return this._forEachChild((n,r)=>{t=t||this.contains(r)&&e(n)}),t}_reduceValue(){return this._reduceChildren({},(e,t,n)=>((t.enabled||this.disabled)&&(e[n]=t.value),e))}_reduceChildren(e,t){let n=e;return this._forEachChild((e,r)=>{n=t(n,e,r)}),n}_allControlsDisabled(){for(const e of Object.keys(this.controls))if(this.controls[e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(e){this._forEachChild((t,n)=>{if(void 0===e[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class rc extends ec{constructor(e,t,n){super(Yl(t),Kl(n,t)),this.controls=e,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(e){return this.controls[e]}push(e){this.controls.push(e),this._registerControl(e),this.updateValueAndValidity(),this._onCollectionChange()}insert(e,t){this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity()}removeAt(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),this.controls.splice(e,1),this.updateValueAndValidity()}setControl(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(e,t={}){this._checkAllValuesPresent(e),e.forEach((e,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(e,t={}){e.forEach((e,n)=>{this.at(n)&&this.at(n).patchValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}reset(e=[],t={}){this._forEachChild((n,r)=>{n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this.controls.map(e=>e instanceof tc?e.value:e.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let e=this.controls.reduce((e,t)=>!!t._syncPendingControls()||e,!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_throwIfControlMissing(e){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(e))throw new Error(`Cannot find form control at index ${e}`)}_forEachChild(e){this.controls.forEach((t,n)=>{e(t,n)})}_updateValue(){this.value=this.controls.filter(e=>e.enabled||this.disabled).map(e=>e.value)}_anyControls(e){return this.controls.some(t=>t.enabled&&e(t))}_setUpControls(){this._forEachChild(e=>this._registerControl(e))}_checkAllValuesPresent(e){this._forEachChild((t,n)=>{if(void 0===e[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const e of this.controls)if(e.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}}const sc=(()=>Promise.resolve(null))(),ic=(()=>(class extends xl{constructor(e,t){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new as,this.form=new nc({},Gl(e),$l(t))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){sc.then(()=>{const t=this._findContainer(e.path);e.control=t.registerControl(e.name,e.control),Ul(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){sc.then(()=>{const t=this._findContainer(e.path);t&&t.removeControl(e.name),function(t,n){const r=t.indexOf(e);r>-1&&t.splice(r,1)}(this._directives)})}addFormGroup(e){sc.then(()=>{const t=this._findContainer(e.path),n=new nc({});(function(e,t){null==e&&zl(t,"Cannot find control with"),e.validator=Vl.compose([e.validator,t.validator]),e.asyncValidator=Vl.composeAsync([e.asyncValidator,t.asyncValidator])})(n,e),t.registerControl(e.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){sc.then(()=>{const t=this._findContainer(e.path);t&&t.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,t){sc.then(()=>{this.form.get(e.path).setValue(t)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submitted=!0,t=this._directives,this.form._syncPendingControls(),t.forEach(e=>{const t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)}),this.ngSubmit.emit(e),!1;var t}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}}))();class oc{static modelParentException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup's partner directive "formControlName" instead. Example:\n\n ${Hl.formControlName}\n\n Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n Example:\n\n ${Hl.ngModelWithFormGroup}`)}static formGroupNameException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n ${Hl.formGroupName}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Hl.ngModelGroup}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}static modelGroupParentException(){throw new Error(`\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n ${Hl.formGroupName}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Hl.ngModelGroup}`)}static ngFormWarning(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")}}const ac=new ge("NgFormSelectorWarning");class lc extends xl{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Ll(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return Gl(this._validators)}get asyncValidator(){return $l(this._asyncValidators)}_checkParentType(){}}const cc=(()=>{class e extends lc{constructor(e,t,n){super(),this._parent=e,this._validators=t,this._asyncValidators=n}_checkParentType(){this._parent instanceof e||this._parent instanceof ic||oc.modelGroupParentException()}}return e})(),uc=(()=>Promise.resolve(null))(),dc=(()=>(class extends Al{constructor(e,t,n,r){super(),this.control=new tc,this._registered=!1,this.update=new as,this._parent=e,this._rawValidators=t||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(e,t){if(!t)return null;Array.isArray(t)||zl(e,"Value accessor was not provided as an array for form control with");let n=void 0,r=void 0,s=void 0;return t.forEach(t=>{t.constructor===Cl?n=t:function(e){return Zl.some(t=>e.constructor===t)}(t)?(r&&zl(e,"More than one built-in value accessor matches form control with"),r=t):(s&&zl(e,"More than one custom value accessor matches form control with"),s=t)}),s||r||n||(zl(e,"No valid value accessor for form control with"),null)}(this,r)}ngOnChanges(e){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in e&&this._updateDisabled(e),function(e,t){if(!e.hasOwnProperty("model"))return!1;const n=e.model;return!!n.isFirstChange()||!Et(t,n.currentValue)}(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Ll(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return Gl(this._rawValidators)}get asyncValidator(){return $l(this._rawAsyncValidators)}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(){Ul(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof cc)&&this._parent instanceof lc?oc.formGroupNameException():this._parent instanceof cc||this._parent instanceof ic||oc.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||oc.missingNameException()}_updateValue(e){uc.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1})})}_updateDisabled(e){const t=e.isDisabled.currentValue,n=""===t||t&&"false"!==t;uc.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}))(),hc=(()=>(class{}))(),pc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:ac,useValue:t.warnOnDeprecatedNgFormSelector}]}}}return e})();var fc=Mn({encapsulation:0,styles:[[".actionBtn[_ngcontent-%COMP%]{margin-top:5px;margin-bottom:2px;font-size:1.2em}.snapshot[_ngcontent-%COMP%]{text-align:center}.snapshot[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:800px;max-height:800px}ul.links[_ngcontent-%COMP%]{padding-bottom:20px}"]],data:{}});function gc(e){return ki(0,[(e()(),fi(0,0,null,null,1,"webcam",[],null,[[null,"imageCapture"],[null,"cameraSwitched"],[null,"initError"]],function(e,t,n){var r=!0,s=e.component;return"imageCapture"===t&&(r=!1!==s.handleImage(n)&&r),"cameraSwitched"===t&&(r=!1!==s.cameraWasSwitched(n)&&r),"initError"===t&&(r=!1!==s.handleInitError(n)&&r),r},oa,sa)),Gr(1,4374528,null,0,ra,[],{width:[0,"width"],height:[1,"height"],videoOptions:[2,"videoOptions"],allowCameraSwitch:[3,"allowCameraSwitch"],imageQuality:[4,"imageQuality"],trigger:[5,"trigger"],switchCamera:[6,"switchCamera"]},{imageCapture:"imageCapture",initError:"initError",cameraSwitched:"cameraSwitched"})],function(e,t){var n=t.component;e(t,1,0,500,500,n.videoOptions,n.allowCameraSwitch,1,n.triggerObservable,n.nextWebcamObservable)},null)}function mc(e){return ki(0,[(e()(),fi(0,0,null,null,3,"div",[["class","snapshot"]],null,null,null,null,null)),(e()(),fi(1,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),Si(-1,null,["Nice one!"])),(e()(),fi(3,0,null,null,0,"img",[],[[8,"src",4]],null,null,null,null))],null,function(e,t){e(t,3,0,t.component.webcamImage.imageAsDataUrl)})}function _c(e){return ki(0,[(e()(),fi(0,0,null,null,1,"h4",[],null,null,null,null,null)),(e()(),Si(-1,null,["Messages:"]))],null,null)}function vc(e){return ki(0,[(e()(),fi(0,0,null,null,3,"ul",[],null,null,null,null,null)),(e()(),fi(1,0,null,null,2,"li",[],null,null,null,null,null)),(e()(),Si(2,null,["",""])),(t=0,n=Xo,r=[],Zr(-1,t|=16,null,0,n,n,r))],null,function(e,t){e(t,2,0,function(e,t,n,r){if(St.isWrapped(r)){r=St.unwrap(r);const t=e.def.nodes[2].bindingIndex+0,n=St.unwrap(e.oldValues[t]);e.oldValues[t]=new St(n)}return r}(t,0,0,Nr(t,3).transform(t.context.$implicit)))});var t,n,r}function yc(e){return ki(0,[(e()(),fi(0,0,null,null,31,"div",[["style","text-align:center"]],null,null,null,null,null)),(e()(),fi(1,0,null,null,1,"h1",[],null,null,null,null,null)),(e()(),Si(-1,null,[" Ngx-Webcam Demo "])),(e()(),fi(3,0,null,null,28,"div",[],null,null,null,null,null)),(e()(),pi(16777216,null,null,1,null,gc)),Gr(5,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),fi(6,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),fi(7,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.triggerSnapshot()&&r),r},null,null)),(e()(),Si(-1,null,["Take A Snapshot"])),(e()(),fi(9,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.toggleWebcam()&&r),r},null,null)),(e()(),Si(-1,null,["Toggle Webcam"])),(e()(),fi(11,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),fi(12,0,null,null,1,"button",[["class","actionBtn"]],[[8,"disabled",0]],[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.showNextWebcam(!0)&&r),r},null,null)),(e()(),Si(-1,null,["Next Webcam"])),(e()(),fi(14,0,null,null,5,"input",[["id","cameraSwitchCheckbox"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(e,t,n){var r=!0,s=e.component;return"change"===t&&(r=!1!==Nr(e,15).onChange(n.target.checked)&&r),"blur"===t&&(r=!1!==Nr(e,15).onTouched()&&r),"ngModelChange"===t&&(r=!1!==(s.allowCameraSwitch=n)&&r),r},null,null)),Gr(15,16384,null,0,wl,[Zt,Ut],null,null),$r(1024,null,yl,function(e){return[e]},[wl]),Gr(17,671744,null,0,dc,[[8,null],[8,null],[8,null],[6,yl]],{model:[0,"model"]},{update:"ngModelChange"}),$r(2048,null,Al,null,[dc]),Gr(19,16384,null,0,Tl,[[4,Al]],null,null),(e()(),fi(20,0,null,null,1,"label",[["for","cameraSwitchCheckbox"]],null,null,null,null,null)),(e()(),Si(-1,null,["Allow Camera Switch"])),(e()(),fi(22,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),Si(-1,null,[" DeviceId: "])),(e()(),fi(24,0,null,null,5,"input",[["id","deviceId"],["style","width: 500px"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(e,t,n){var r=!0,s=e.component;return"input"===t&&(r=!1!==Nr(e,25)._handleInput(n.target.value)&&r),"blur"===t&&(r=!1!==Nr(e,25).onTouched()&&r),"compositionstart"===t&&(r=!1!==Nr(e,25)._compositionStart()&&r),"compositionend"===t&&(r=!1!==Nr(e,25)._compositionEnd(n.target.value)&&r),"ngModelChange"===t&&(r=!1!==(s.deviceId=n)&&r),r},null,null)),Gr(25,16384,null,0,Cl,[Zt,Ut,[2,bl]],null,null),$r(1024,null,yl,function(e){return[e]},[Cl]),Gr(27,671744,null,0,dc,[[8,null],[8,null],[8,null],[6,yl]],{model:[0,"model"]},{update:"ngModelChange"}),$r(2048,null,Al,null,[dc]),Gr(29,16384,null,0,Tl,[[4,Al]],null,null),(e()(),fi(30,0,null,null,1,"button",[],null,[[null,"click"]],function(e,t,n){var r=!0,s=e.component;return"click"===t&&(r=!1!==s.showNextWebcam(s.deviceId)&&r),r},null,null)),(e()(),Si(-1,null,["Activate"])),(e()(),pi(16777216,null,null,1,null,mc)),Gr(33,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),pi(16777216,null,null,1,null,_c)),Gr(35,16384,null,0,Jo,[mn,fn],{ngIf:[0,"ngIf"]},null),(e()(),pi(16777216,null,null,1,null,vc)),Gr(37,278528,null,0,Qo,[mn,fn,an],{ngForOf:[0,"ngForOf"]},null),(e()(),fi(38,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),Si(-1,null,["Like this project on GitHub:"])),(e()(),fi(40,0,null,null,4,"ul",[["class","links"]],null,null,null,null,null)),(e()(),fi(41,0,null,null,3,"li",[],null,null,null,null,null)),(e()(),fi(42,0,null,null,2,"h2",[],null,null,null,null,null)),(e()(),fi(43,0,null,null,1,"a",[["href","https://github.com/basst314/ngx-webcam"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(e()(),Si(-1,null,["Ngx-Webcam / GitHub"]))],function(e,t){var n=t.component;e(t,5,0,n.showWebcam),e(t,17,0,n.allowCameraSwitch),e(t,27,0,n.deviceId),e(t,33,0,n.webcamImage),e(t,35,0,n.errors.length>0),e(t,37,0,n.errors)},function(e,t){e(t,12,0,!t.component.multipleWebcamsAvailable),e(t,14,0,Nr(t,19).ngClassUntouched,Nr(t,19).ngClassTouched,Nr(t,19).ngClassPristine,Nr(t,19).ngClassDirty,Nr(t,19).ngClassValid,Nr(t,19).ngClassInvalid,Nr(t,19).ngClassPending),e(t,24,0,Nr(t,29).ngClassUntouched,Nr(t,29).ngClassTouched,Nr(t,29).ngClassPristine,Nr(t,29).ngClassDirty,Nr(t,29).ngClassValid,Nr(t,29).ngClassInvalid,Nr(t,29).ngClassPending)})}function wc(e){return ki(0,[(e()(),fi(0,0,null,null,1,"appRoot",[],null,null,null,yc,fc)),Gr(1,114688,null,0,jo,[],null,null)],function(e,t){e(t,1,0)},null)}var bc=wr("appRoot",jo,wc,{},{},[]);class Cc{}var Ec=Mo(Po,[jo],function(e){return function(e){const t={},n=[];let r=!1;for(let s=0;s(e[t.name]=t.token,e),{}))),()=>Aa)];var t},[[2,Ws]]),dr(512,us,us,[[2,cs]]),dr(131584,Ks,Ks,[Ds,_s,we,Be,Rt,us]),dr(1073742336,hi,hi,[Ks]),dr(1073742336,_l,_l,[[3,_l]]),dr(1073742336,hc,hc,[]),dr(1073742336,pc,pc,[]),dr(1073742336,Cc,Cc,[]),dr(1073742336,Po,Po,[]),dr(256,It,!0,[])])});(function(){if(Ge)throw new Error("Cannot enable prod mode after platform setup.");ze=!1})(),gl().bootstrapModuleFactory(Ec).catch(e=>console.log(e))}},[[0,0]]]); \ No newline at end of file diff --git a/docs/main-es5.797abddb5dfe48b80f48.js b/docs/main-es5.bd47186c72c3106dc703.js similarity index 60% rename from docs/main-es5.797abddb5dfe48b80f48.js rename to docs/main-es5.bd47186c72c3106dc703.js index c4bb00a..cad58d1 100644 --- a/docs/main-es5.797abddb5dfe48b80f48.js +++ b/docs/main-es5.bd47186c72c3106dc703.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},crnd:function(e,t){function n(e){return Promise.resolve().then(function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id="crnd"},zUnb:function(e,t,n){"use strict";n.r(t);var r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function o(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var i=function(){return(i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=0;u--)(o=e[u])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function u(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function s(e){var t="function"==typeof Symbol&&e[Symbol.iterator],n=0;return t?t.call(e):{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}}}function l(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(u){o={error:u}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function c(){for(var e=[],t=0;t0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(U);function J(e){return e}function Y(){return function(e){return e.lift(new K(e))}}var K=function(){function e(e){this.connectable=e}return e.prototype.call=function(e,t){var n=this.connectable;n._refCount++;var r=new X(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o},e}(),X=function(e){function t(t,n){var r=e.call(this,t)||this;return r.connectable=n,r}return o(t,e),t.prototype._unsubscribe=function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},t}(E),$=function(e){function t(t,n){var r=e.call(this)||this;return r.source=t,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(t,e),t.prototype._subscribe=function(e){return this.getSubject().subscribe(e)},t.prototype.getSubject=function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject},t.prototype.connect=function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new g).add(this.source.subscribe(new te(this.getSubject(),this))),e.closed&&(this._connection=null,e=g.EMPTY)),e},t.prototype.refCount=function(){return Y()(this)},t}(A).prototype,ee={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:$._subscribe},_isComplete:{value:$._isComplete,writable:!0},getSubject:{value:$.getSubject},connect:{value:$.connect},refCount:{value:$.refCount}},te=function(e){function t(t,n){var r=e.call(this,t)||this;return r.connectable=n,r}return o(t,e),t.prototype._error=function(t){this._unsubscribe(),e.prototype._error.call(this,t)},t.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}},t}(V);function ne(){return new N}var re="__parameters__";function oe(e,t,n){var r=function(e){return function(){for(var t=[],n=0;n ");else if("object"==typeof t){var i=[];for(var a in t)if(t.hasOwnProperty(a)){var u=t[a];i.push(a+":"+("string"==typeof u?JSON.stringify(u):he(u)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+e.replace(De,"\n ")}function He(e,t){return new Error(Fe(e,t,"StaticInjectorError"))}var Le="ngDebugContext",Ue="ngOriginalError",Be="ngErrorLogger",ze=function(e){return e[e.Emulated=0]="Emulated",e[e.Native=1]="Native",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e}({}),Ge=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e)}();function Ze(e){return e[Le]}function We(e){return e[Ue]}function Qe(e){for(var t=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(e){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return e.prototype.getInertBodyElement_XHR=function(e){e=""+e+"";try{e=encodeURI(e)}catch(r){return null}var t=new XMLHttpRequest;t.responseType="document",t.open("GET","data:text/html;charset=utf-8,"+e,!1),t.send(void 0);var n=t.response.body;return n.removeChild(n.firstChild),n},e.prototype.getInertBodyElement_DOMParser=function(e){e=""+e+"";try{var t=(new window.DOMParser).parseFromString(e,"text/html").body;return t.removeChild(t.firstChild),t}catch(n){return null}},e.prototype.getInertBodyElement_InertDocument=function(e){var t=this.inertDocument.createElement("template");return"content"in t?(t.innerHTML=e,t):(this.inertBodyElement.innerHTML=e,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},e.prototype.stripCustomNsAttrs=function(e){for(var t=e.attributes,n=t.length-1;0"),!0},e.prototype.endElement=function(e){var t=e.nodeName.toLowerCase();lt.hasOwnProperty(t)&&!it.hasOwnProperty(t)&&(this.buf.push(""))},e.prototype.chars=function(e){this.buf.push(vt(e))},e.prototype.checkClobberedElement=function(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+e.outerHTML);return t},e}(),yt=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,gt=/([^\#-~ |!])/g;function vt(e){return e.replace(/&/g,"&").replace(yt,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(gt,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}function mt(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var bt=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}({}),_t=function(){return function(){}}(),wt=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ct=/^url\(([^)]+)\)$/,Et=/([A-Z])/g;function xt(e){try{return null!=e?e.toString().slice(0,30):e}catch(t){return"[ERROR] Exception while trying to serialize the value"}}function St(e){return!!e&&"function"==typeof e.then}function At(e){return!!e&&"function"==typeof e.subscribe}var Tt=null;function It(){if(!Tt){var e=_e.Symbol;if(e&&e.iterator)Tt=e.iterator;else for(var t=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=e._providers.length;return e._def.providers[c]=e._def.providersByKey[t.tokenKey]={flags:5120,value:u.factory,deps:[],index:c,token:t.token},e._providers[c]=pr,e._providers[c]=mr(e,e._def.providersByKey[t.tokenKey])}return 4&t.flags?n:e._parent.get(t.token,n)}finally{Ce(i)}}function mr(e,t){var n;switch(201347067&t.flags){case 512:n=function(e,t,n){var r=n.length;switch(r){case 0:return new t;case 1:return new t(vr(e,n[0]));case 2:return new t(vr(e,n[0]),vr(e,n[1]));case 3:return new t(vr(e,n[0]),vr(e,n[1]),vr(e,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(t=n.length-1),t<0)return null;var r=n[t];return r.viewContainerParent=null,Er(n,t),Pn.dirtyParentQueries(r),wr(r),r}function _r(e,t,n){var r=t?Jn(t,t.def.lastRenderRootNode):e.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);or(n,2,o,i,void 0)}function wr(e){or(e,3,null,null,void 0)}function Cr(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function Er(e,t){t>=e.length-1?e.pop():e.splice(t,1)}var xr=new Object;function Sr(e,t,n,r,o,i){return new Ar(e,t,n,r,o,i)}var Ar=function(e){function t(t,n,r,o,i,a){var u=e.call(this)||this;return u.selector=t,u.componentType=n,u._inputs=o,u._outputs=i,u.ngContentSelectors=a,u.viewDefFactory=r,u}return o(t,e),Object.defineProperty(t.prototype,"inputs",{get:function(){var e=[],t=this._inputs;for(var n in t)e.push({propName:n,templateName:t[n]});return e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"outputs",{get:function(){var e=[];for(var t in this._outputs)e.push({propName:t,templateName:this._outputs[t]});return e},enumerable:!0,configurable:!0}),t.prototype.create=function(e,t,n,r){if(!r)throw new Error("ngModule should be provided");var o=rr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,a=Pn.createRootView(e,t||[],n,o,r,xr),u=kn(a,i).instance;return n&&a.renderer.setAttribute(On(a,0).renderElement,"ng-version",en.full),new Tr(a,new Vr(a),u)},t}(jt),Tr=function(e){function t(t,n,r){var o=e.call(this)||this;return o._view=t,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(t,e),Object.defineProperty(t.prototype,"location",{get:function(){return new Qt(On(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new Mr(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentType",{get:function(){return this._component.constructor},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){this._viewRef.destroy()},t.prototype.onDestroy=function(e){this._viewRef.onDestroy(e)},t}(Rt);function Ir(e,t,n){return new Or(e,t,n)}var Or=function(){function e(e,t,n){this._view=e,this._elDef=t,this._data=n,this._embeddedViews=[]}return Object.defineProperty(e.prototype,"element",{get:function(){return new Qt(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new Mr(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentInjector",{get:function(){for(var e=this._view,t=this._elDef.parent;!t&&e;)t=qn(e),e=e.parent;return e?new Mr(e,t):new Mr(this._view,null)},enumerable:!0,configurable:!0}),e.prototype.clear=function(){for(var e=this._embeddedViews.length-1;e>=0;e--){var t=br(this._data,e);Pn.destroyView(t)}},e.prototype.get=function(e){var t=this._embeddedViews[e];if(t){var n=new Vr(t);return n.attachToViewContainerRef(this),n}return null},Object.defineProperty(e.prototype,"length",{get:function(){return this._embeddedViews.length},enumerable:!0,configurable:!0}),e.prototype.createEmbeddedView=function(e,t,n){var r=e.createEmbeddedView(t||{});return this.insert(r,n),r},e.prototype.createComponent=function(e,t,n,r,o){var i=n||this.parentInjector;o||e instanceof zt||(o=i.get(Gt));var a=e.create(i,r,void 0,o);return this.insert(a.hostView,t),a},e.prototype.insert=function(e,t){if(e.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,a=e;return i=(n=this._data).viewContainer._embeddedViews,null==(r=t)&&(r=i.length),(o=a._view).viewContainerParent=this._view,Cr(i,r,o),function(e,t){var n=Qn(t);if(n&&n!==e&&!(16&t.state)){t.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(t),function(e,n){if(!(4&n.flags)){t.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,t.parentNodeDef)}}(n,o),Pn.dirtyParentQueries(o),_r(n,r>0?i[r-1]:null,o),a.attachToViewContainerRef(this),e},e.prototype.move=function(e,t){if(e.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");var n,r,o,i,a,u=this._embeddedViews.indexOf(e._view);return o=t,a=(i=(n=this._data).viewContainer._embeddedViews)[r=u],Er(i,r),null==o&&(o=i.length),Cr(i,o,a),Pn.dirtyParentQueries(a),wr(a),_r(n,o>0?i[o-1]:null,a),e},e.prototype.indexOf=function(e){return this._embeddedViews.indexOf(e._view)},e.prototype.remove=function(e){var t=br(this._data,e);t&&Pn.destroyView(t)},e.prototype.detach=function(e){var t=br(this._data,e);return t?new Vr(t):null},e}();function kr(e){return new Vr(e)}var Vr=function(){function e(e){this._view=e,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(e.prototype,"rootNodes",{get:function(){return or(this._view,0,void 0,void 0,e=[]),e;var e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"context",{get:function(){return this._view.context},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"destroyed",{get:function(){return 0!=(128&this._view.state)},enumerable:!0,configurable:!0}),e.prototype.markForCheck=function(){Gn(this._view)},e.prototype.detach=function(){this._view.state&=-5},e.prototype.detectChanges=function(){var e=this._view.root.rendererFactory;e.begin&&e.begin();try{Pn.checkAndUpdateView(this._view)}finally{e.end&&e.end()}},e.prototype.checkNoChanges=function(){Pn.checkNoChangesView(this._view)},e.prototype.reattach=function(){this._view.state|=4},e.prototype.onDestroy=function(e){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(e)},e.prototype.destroy=function(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Pn.destroyView(this._view)},e.prototype.detachFromAppRef=function(){this._appRef=null,wr(this._view),Pn.dirtyParentQueries(this._view)},e.prototype.attachToAppRef=function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e},e.prototype.attachToViewContainerRef=function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e},e}();function Nr(e,t){return new Pr(e,t)}var Pr=function(e){function t(t,n){var r=e.call(this)||this;return r._parentView=t,r._def=n,r}return o(t,e),t.prototype.createEmbeddedView=function(e){return new Vr(Pn.createEmbeddedView(this._parentView,this._def,this._def.element.template,e))},Object.defineProperty(t.prototype,"elementRef",{get:function(){return new Qt(On(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),t}(bn);function Dr(e,t){return new Mr(e,t)}var Mr=function(){function e(e,t){this.view=e,this.elDef=t}return e.prototype.get=function(e,t){return void 0===t&&(t=Ie.THROW_IF_NOT_FOUND),Pn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:e,tokenKey:Rn(e)},t)},e}();function Rr(e,t){var n=e.def.nodes[t];if(1&n.flags){var r=On(e,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return In(e,n.nodeIndex).renderText;if(20240&n.flags)return kn(e,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+t)}function jr(e){return new Fr(e.renderer)}var Fr=function(){function e(e){this.delegate=e}return e.prototype.selectRootElement=function(e){return this.delegate.selectRootElement(e)},e.prototype.createElement=function(e,t){var n=l(cr(t),2),r=this.delegate.createElement(n[1],n[0]);return e&&this.delegate.appendChild(e,r),r},e.prototype.createViewRoot=function(e){return e},e.prototype.createTemplateAnchor=function(e){var t=this.delegate.createComment("");return e&&this.delegate.appendChild(e,t),t},e.prototype.createText=function(e,t){var n=this.delegate.createText(t);return e&&this.delegate.appendChild(e,n),n},e.prototype.projectNodes=function(e,t){for(var n=0;n0,t.provider.value,t.provider.deps);if(t.outputs.length)for(var r=0;r0,r=t.provider;switch(201347067&t.flags){case 512:return ro(e,t.parent,n,r.value,r.deps);case 1024:return function(e,t,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(io(e,t,n,o[0]));case 2:return r(io(e,t,n,o[0]),io(e,t,n,o[1]));case 3:return r(io(e,t,n,o[0]),io(e,t,n,o[1]),io(e,t,n,o[2]));default:for(var a=Array(i),u=0;u0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(e){return e.timeoutId!==o}),e(r._didWork,r.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})},e.prototype.whenStable=function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()},e.prototype.getPendingRequestCount=function(){return this._pendingCount},e.prototype.findProviders=function(e,t,n){return[]},e}(),Jo=function(){function e(){this._applications=new Map,Yo.addToWindow(this)}return e.prototype.registerApplication=function(e,t){this._applications.set(e,t)},e.prototype.unregisterApplication=function(e){this._applications.delete(e)},e.prototype.unregisterAllApplications=function(){this._applications.clear()},e.prototype.getTestability=function(e){return this._applications.get(e)||null},e.prototype.getAllTestabilities=function(){return Array.from(this._applications.values())},e.prototype.getAllRootElements=function(){return Array.from(this._applications.keys())},e.prototype.findTestabilityInTree=function(e,t){return void 0===t&&(t=!0),Yo.findTestabilityInTree(this,e,t)},a([u("design:paramtypes",[])],e)}(),Yo=new(function(){function e(){}return e.prototype.addToWindow=function(e){},e.prototype.findTestabilityInTree=function(e,t,n){return null},e}()),Ko=new Ee("AllowMultipleToken"),Xo=function(){return function(e,t){this.name=e,this.token=t}}();function $o(e,t,n){void 0===n&&(n=[]);var r="Platform: "+t,o=new Ee(r);return function(t){void 0===t&&(t=[]);var i=ei();if(!i||i.injector.get(Ko,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var a=n.concat(t).concat({provide:o,useValue:!0});!function(e){if(Wo&&!Wo.destroyed&&!Wo.injector.get(Ko,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wo=e.get(ti);var t=e.get(_o,null);t&&t.forEach(function(e){return e()})}(Ie.create({providers:a,name:r}))}return function(e){var t=ei();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function ei(){return Wo&&!Wo.destroyed?Wo:null}var ti=function(){function e(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return e.prototype.bootstrapModuleFactory=function(e,t){var n,r=this,o="noop"===(n=t?t.ngZone:void 0)?new Qo:("zone.js"===n?void 0:n)||new Lo({enableLongStackTrace:Ke()}),i=[{provide:Lo,useValue:o}];return o.run(function(){var t=Ie.create({providers:i,parent:r.injector,name:e.moduleType.name}),n=e.create(t),a=n.injector.get(qe,null);if(!a)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return oi(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(e){a.handleError(e)}})}),function(e,t,o){try{var i=((a=n.injector.get(go)).runInitializers(),a.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return St(i)?i.catch(function(n){throw t.runOutsideAngular(function(){return e.handleError(n)}),n}):i}catch(u){throw t.runOutsideAngular(function(){return e.handleError(u)}),u}var a}(a,o)})},e.prototype.bootstrapModule=function(e,t){var n=this;void 0===t&&(t=[]);var r=ni({},t);return function(e,t,n){return e.get(No).createCompiler([t]).compileModuleAsync(n)}(this.injector,r,e).then(function(e){return n.bootstrapModuleFactory(e,r)})},e.prototype._moduleDoBootstrap=function(e){var t=e.injector.get(ri);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(function(e){return t.bootstrap(e)});else{if(!e.instance.ngDoBootstrap)throw new Error("The module "+he(e.instance.constructor)+' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.');e.instance.ngDoBootstrap(t)}this._modules.push(e)},e.prototype.onDestroy=function(e){this._destroyListeners.push(e)},Object.defineProperty(e.prototype,"injector",{get:function(){return this._injector},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(e){return e.destroy()}),this._destroyListeners.forEach(function(e){return e()}),this._destroyed=!0},Object.defineProperty(e.prototype,"destroyed",{get:function(){return this._destroyed},enumerable:!0,configurable:!0}),e}();function ni(e,t){return Array.isArray(t)?t.reduce(ni,e):i({},e,t)}var ri=function(){function e(e,t,n,r,o,i){var a=this;this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Ke(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run(function(){a.tick()})}});var u=new A(function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular(function(){e.next(a._stable),e.complete()})}),s=new A(function(e){var t;a._zone.runOutsideAngular(function(){t=a._zone.onStable.subscribe(function(){Lo.assertNotInAngularZone(),Ho(function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))})})});var n=a._zone.onUnstable.subscribe(function(){Lo.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular(function(){e.next(!1)}))});return function(){t.unsubscribe(),n.unsubscribe()}});this.isStable=function(){for(var e=[],t=0;t1&&"number"==typeof e[e.length-1]&&(r=e.pop())):"number"==typeof i&&(r=e.pop()),null===o&&1===e.length&&e[0]instanceof A?e[0]:function(e){return void 0===e&&(e=Number.POSITIVE_INFINITY),function e(t,n,r){return void 0===r&&(r=Number.POSITIVE_INFINITY),"function"==typeof n?function(o){return o.pipe(e(function(e,r){return W(t(e,r)).pipe(B(function(t,o){return n(e,t,r,o)}))},r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new Q(t,r))})}(J,e)}(r)(function(e,t){return t?Z(e,t):new A(M(e))}(e,o))}(u,s.pipe(function(e){return Y()((t=ne,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,ee);return r.source=e,r.subjectFactory=n,r})(e));var t}))}var t;return t=e,e.prototype.bootstrap=function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof jt?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n instanceof zt?null:this._injector.get(Gt),i=n.create(Ie.NULL,[],t||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var a=i.injector.get(qo,null);return a&&i.injector.get(Jo).registerApplication(i.location.nativeElement,a),this._loadComponent(i),Ke()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},e.prototype.tick=function(){var e,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var a=t._tickScope();try{this._runningTick=!0;try{for(var u=s(this._views),l=u.next();!l.done;l=u.next())l.value.detectChanges()}catch(p){e={error:p}}finally{try{l&&!l.done&&(n=u.return)&&n.call(u)}finally{if(e)throw e.error}}if(this._enforceNoNewChanges)try{for(var c=s(this._views),d=c.next();!d.done;d=c.next())d.value.checkNoChanges()}catch(f){r={error:f}}finally{try{d&&!d.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}}catch(h){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(h)})}finally{this._runningTick=!1,jo(a)}},e.prototype.attachView=function(e){var t=e;this._views.push(t),t.attachToAppRef(this)},e.prototype.detachView=function(e){var t=e;oi(this._views,t),t.detachFromAppRef()},e.prototype._loadComponent=function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Co,[]).concat(this._bootstrapListeners).forEach(function(t){return t(e)})},e.prototype._unloadComponent=function(e){this.detachView(e.hostView),oi(this.components,e)},e.prototype.ngOnDestroy=function(){this._views.slice().forEach(function(e){return e.destroy()})},Object.defineProperty(e.prototype,"viewCount",{get:function(){return this._views.length},enumerable:!0,configurable:!0}),e._tickScope=Ro("ApplicationRef#tick()"),e}();function oi(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var ii=function(){return function(e,t){this.name=e,this.callback=t}}(),ai=function(){function e(e,t,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=e,t&&t instanceof ui&&t.addChild(this)}return Object.defineProperty(e.prototype,"injector",{get:function(){return this._debugContext.injector},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentInstance",{get:function(){return this._debugContext.component},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"context",{get:function(){return this._debugContext.context},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"references",{get:function(){return this._debugContext.references},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"providerTokens",{get:function(){return this._debugContext.providerTokens},enumerable:!0,configurable:!0}),e}(),ui=function(e){function t(t,n,r){var o=e.call(this,t,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=t,o}return o(t,e),t.prototype.addChild=function(e){e&&(this.childNodes.push(e),e.parent=this)},t.prototype.removeChild=function(e){var t=this.childNodes.indexOf(e);-1!==t&&(e.parent=null,this.childNodes.splice(t,1))},t.prototype.insertChildrenAfter=function(e,t){var n,r=this,o=this.childNodes.indexOf(e);-1!==o&&((n=this.childNodes).splice.apply(n,c([o+1,0],t)),t.forEach(function(t){t.parent&&t.parent.removeChild(t),e.parent=r}))},t.prototype.insertBefore=function(e,t){var n=this.childNodes.indexOf(e);-1===n?this.addChild(t):(t.parent&&t.parent.removeChild(t),t.parent=this,this.childNodes.splice(n,0,t))},t.prototype.query=function(e){return this.queryAll(e)[0]||null},t.prototype.queryAll=function(e){var t=[];return function e(t,n,r){t.childNodes.forEach(function(t){t instanceof ui&&(n(t)&&r.push(t),e(t,n,r))})}(this,e,t),t},t.prototype.queryAllNodes=function(e){var t=[];return function e(t,n,r){t instanceof ui&&t.childNodes.forEach(function(t){n(t)&&r.push(t),t instanceof ui&&e(t,n,r)})}(this,e,t),t},Object.defineProperty(t.prototype,"children",{get:function(){return this.childNodes.filter(function(e){return e instanceof t})},enumerable:!0,configurable:!0}),t.prototype.triggerEventHandler=function(e,t){this.listeners.forEach(function(n){n.name==e&&n.callback(t)})},t}(ai),si=new Map,li=function(e){return si.get(e)||null};function ci(e){si.set(e.nativeNode,e)}var di=$o(null,"core",[{provide:wo,useValue:"unknown"},{provide:ti,deps:[Ie]},{provide:Jo,deps:[]},{provide:Eo,deps:[]}]),pi=new Ee("LocaleId");function fi(){return vn}function hi(){return mn}function yi(e){return e||"en-US"}function gi(e){var t=[];return e.onStable.subscribe(function(){for(;t.length;)t.pop()()}),function(e){t.push(e)}}var vi=function(){return function(e){}}();function mi(e,t,n,r,o,i){e|=1;var a=$n(t);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:e,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:a.matchedQueries,matchedQueryIds:a.matchedQueryIds,references:a.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?rr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Dn},provider:null,text:null,query:null,ngContent:null}}function bi(e,t,n,r,o,i,a,u,s,c,d,p){var f;void 0===a&&(a=[]),c||(c=Dn);var h=$n(n),y=h.matchedQueries,g=h.references,v=h.matchedQueryIds,m=null,b=null;i&&(m=(f=l(cr(i),2))[0],b=f[1]),u=u||[];for(var _=new Array(u.length),w=0;w0)l=y,Di(y)||(c=y);else for(;l&&h===l.nodeIndex+l.childCount;){var m=l.parent;m&&(m.childFlags|=l.childFlags,m.childMatchedQueries|=l.childMatchedQueries),c=(l=m)&&Di(l)?l.renderParent:l}}return{factory:null,nodeFlags:a,rootNodeFlags:u,nodeMatchedQueries:s,flags:e,nodes:t,updateDirectives:n||Dn,updateRenderer:r||Dn,handleEvent:function(e,n,r,o){return t[n].element.handleEvent(e,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:f}}function Di(e){return 0!=(1&e.flags)&&null===e.element.name}function Mi(e,t,n){var r=t.element&&t.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.lastRenderRootNode.flags)throw new Error("Illegal State: Last root node of a template can't have embedded views, at index "+t.nodeIndex+"!")}if(20224&t.flags&&0==(1&(e?e.flags:0)))throw new Error("Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index "+t.nodeIndex+"!");if(t.query){if(67108864&t.flags&&(!e||0==(16384&e.flags)))throw new Error("Illegal State: Content Query nodes need to be children of directives, at index "+t.nodeIndex+"!");if(134217728&t.flags&&e)throw new Error("Illegal State: View Query nodes have to be top level nodes, at index "+t.nodeIndex+"!")}if(t.childCount){var o=e?e.nodeIndex+e.childCount:n-1;if(t.nodeIndex<=o&&t.nodeIndex+t.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+t.nodeIndex+"!")}}function Ri(e,t,n,r){var o=Hi(e.root,e.renderer,e,t,n);return Li(o,e.component,r),Ui(o),o}function ji(e,t,n){var r=Hi(e,e.renderer,null,null,t);return Li(r,n,n),Ui(r),r}function Fi(e,t,n,r){var o,i=t.element.componentRendererType;return o=i?e.root.rendererFactory.createRenderer(r,i):e.root.renderer,Hi(e.root,o,e,t.element.componentProvider,n)}function Hi(e,t,n,r,o){var i=new Array(o.nodes.length),a=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:e,renderer:t,oldValues:new Array(o.bindingCount),disposables:a,initIndex:-1}}function Li(e,t,n){e.component=t,e.context=n}function Ui(e){var t;Yn(e)&&(t=On(e.parent,e.parentNodeDef.parent.nodeIndex).renderElement);for(var n=e.def,r=e.nodes,o=0;o0&&Ei(e,t,0,n)&&(f=!0),p>1&&Ei(e,t,1,r)&&(f=!0),p>2&&Ei(e,t,2,o)&&(f=!0),p>3&&Ei(e,t,3,i)&&(f=!0),p>4&&Ei(e,t,4,a)&&(f=!0),p>5&&Ei(e,t,5,u)&&(f=!0),p>6&&Ei(e,t,6,s)&&(f=!0),p>7&&Ei(e,t,7,l)&&(f=!0),p>8&&Ei(e,t,8,c)&&(f=!0),p>9&&Ei(e,t,9,d)&&(f=!0),f}(e,t,n,r,o,i,a,u,s,l,c,d);case 2:return function(e,t,n,r,o,i,a,u,s,l,c,d){var p=!1,f=t.bindings,h=f.length;if(h>0&&Bn(e,t,0,n)&&(p=!0),h>1&&Bn(e,t,1,r)&&(p=!0),h>2&&Bn(e,t,2,o)&&(p=!0),h>3&&Bn(e,t,3,i)&&(p=!0),h>4&&Bn(e,t,4,a)&&(p=!0),h>5&&Bn(e,t,5,u)&&(p=!0),h>6&&Bn(e,t,6,s)&&(p=!0),h>7&&Bn(e,t,7,l)&&(p=!0),h>8&&Bn(e,t,8,c)&&(p=!0),h>9&&Bn(e,t,9,d)&&(p=!0),p){var y=t.text.prefix;h>0&&(y+=Ni(n,f[0])),h>1&&(y+=Ni(r,f[1])),h>2&&(y+=Ni(o,f[2])),h>3&&(y+=Ni(i,f[3])),h>4&&(y+=Ni(a,f[4])),h>5&&(y+=Ni(u,f[5])),h>6&&(y+=Ni(s,f[6])),h>7&&(y+=Ni(l,f[7])),h>8&&(y+=Ni(c,f[8])),h>9&&(y+=Ni(d,f[9]));var g=In(e,t.nodeIndex).renderText;e.renderer.setValue(g,y)}return p}(e,t,n,r,o,i,a,u,s,l,c,d);case 16384:return function(e,t,n,r,o,i,a,u,s,l,c,d){var p=kn(e,t.nodeIndex),f=p.instance,h=!1,y=void 0,g=t.bindings.length;return g>0&&Un(e,t,0,n)&&(h=!0,y=uo(e,p,t,0,n,y)),g>1&&Un(e,t,1,r)&&(h=!0,y=uo(e,p,t,1,r,y)),g>2&&Un(e,t,2,o)&&(h=!0,y=uo(e,p,t,2,o,y)),g>3&&Un(e,t,3,i)&&(h=!0,y=uo(e,p,t,3,i,y)),g>4&&Un(e,t,4,a)&&(h=!0,y=uo(e,p,t,4,a,y)),g>5&&Un(e,t,5,u)&&(h=!0,y=uo(e,p,t,5,u,y)),g>6&&Un(e,t,6,s)&&(h=!0,y=uo(e,p,t,6,s,y)),g>7&&Un(e,t,7,l)&&(h=!0,y=uo(e,p,t,7,l,y)),g>8&&Un(e,t,8,c)&&(h=!0,y=uo(e,p,t,8,c,y)),g>9&&Un(e,t,9,d)&&(h=!0,y=uo(e,p,t,9,d,y)),y&&f.ngOnChanges(y),65536&t.flags&&Tn(e,256,t.nodeIndex)&&f.ngOnInit(),262144&t.flags&&f.ngDoCheck(),h}(e,t,n,r,o,i,a,u,s,l,c,d);case 32:case 64:case 128:return function(e,t,n,r,o,i,a,u,s,l,c,d){var p=t.bindings,f=!1,h=p.length;if(h>0&&Bn(e,t,0,n)&&(f=!0),h>1&&Bn(e,t,1,r)&&(f=!0),h>2&&Bn(e,t,2,o)&&(f=!0),h>3&&Bn(e,t,3,i)&&(f=!0),h>4&&Bn(e,t,4,a)&&(f=!0),h>5&&Bn(e,t,5,u)&&(f=!0),h>6&&Bn(e,t,6,s)&&(f=!0),h>7&&Bn(e,t,7,l)&&(f=!0),h>8&&Bn(e,t,8,c)&&(f=!0),h>9&&Bn(e,t,9,d)&&(f=!0),f){var y=Vn(e,t.nodeIndex),g=void 0;switch(201347067&t.flags){case 32:g=new Array(p.length),h>0&&(g[0]=n),h>1&&(g[1]=r),h>2&&(g[2]=o),h>3&&(g[3]=i),h>4&&(g[4]=a),h>5&&(g[5]=u),h>6&&(g[6]=s),h>7&&(g[7]=l),h>8&&(g[8]=c),h>9&&(g[9]=d);break;case 64:g={},h>0&&(g[p[0].name]=n),h>1&&(g[p[1].name]=r),h>2&&(g[p[2].name]=o),h>3&&(g[p[3].name]=i),h>4&&(g[p[4].name]=a),h>5&&(g[p[5].name]=u),h>6&&(g[p[6].name]=s),h>7&&(g[p[7].name]=l),h>8&&(g[p[8].name]=c),h>9&&(g[p[9].name]=d);break;case 128:var v=n;switch(h){case 1:g=v.transform(n);break;case 2:g=v.transform(r);break;case 3:g=v.transform(r,o);break;case 4:g=v.transform(r,o,i);break;case 5:g=v.transform(r,o,i,a);break;case 6:g=v.transform(r,o,i,a,u);break;case 7:g=v.transform(r,o,i,a,u,s);break;case 8:g=v.transform(r,o,i,a,u,s,l);break;case 9:g=v.transform(r,o,i,a,u,s,l,c);break;case 10:g=v.transform(r,o,i,a,u,s,l,c,d)}}y.value=g}return f}(e,t,n,r,o,i,a,u,s,l,c,d);default:throw"unreachable"}}(e,t,r,o,i,a,u,s,l,d,p,f):function(e,t,n){switch(201347067&t.flags){case 1:return function(e,t,n){for(var r=!1,o=0;o0&&zn(e,t,0,n),p>1&&zn(e,t,1,r),p>2&&zn(e,t,2,o),p>3&&zn(e,t,3,i),p>4&&zn(e,t,4,a),p>5&&zn(e,t,5,u),p>6&&zn(e,t,6,s),p>7&&zn(e,t,7,l),p>8&&zn(e,t,8,c),p>9&&zn(e,t,9,d)}(e,t,r,o,i,a,u,s,l,c,d,p):function(e,t,n){for(var r=0;r0){var i=new Set(e.modules);la.forEach(function(t,r){if(i.has(pe(r).providedIn)){var o={token:r,flags:t.flags|(n?4096:0),deps:er(t.deps),value:t.value,index:e.providers.length};e.providers.push(o),e.providersByKey[Rn(r)]=o}})}}(e=e.factory(function(){return Dn})),e):e}(r))}var sa=new Map,la=new Map,ca=new Map;function da(e){var t;sa.set(e.token,e),"function"==typeof e.token&&(t=pe(e.token))&&"function"==typeof t.providedIn&&la.set(e.token,e)}function pa(e,t){var n=rr(t.viewDefFactory),r=rr(n.nodes[0].element.componentView);ca.set(e,r)}function fa(){sa.clear(),la.clear(),ca.clear()}function ha(e){if(0===sa.size)return e;var t=function(e){for(var t=[],n=null,r=0;r1})},e.prototype.triggerSnapshot=function(){this.trigger.next()},e.prototype.toggleWebcam=function(){this.showWebcam=!this.showWebcam},e.prototype.handleInitError=function(e){this.errors.push(e)},e.prototype.showNextWebcam=function(e){this.nextWebcam.next(e)},e.prototype.handleImage=function(e){console.log("received webcam image",e),this.webcamImage=e},e.prototype.cameraWasSwitched=function(e){console.log("active device: "+e),this.deviceId=e},Object.defineProperty(e.prototype,"triggerObservable",{get:function(){return this.trigger.asObservable()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nextWebcamObservable",{get:function(){return this.nextWebcam.asObservable()},enumerable:!0,configurable:!0}),e}(),za=function(){return function(){}}(),Ga=void 0,Za=["en",[["a","p"],["AM","PM"],Ga],[["AM","PM"],Ga,Ga],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Ga,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Ga,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Ga,"{1} 'at' {0}",Ga],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Wa={},Qa=function(e){return e[e.Zero=0]="Zero",e[e.One=1]="One",e[e.Two=2]="Two",e[e.Few=3]="Few",e[e.Many=4]="Many",e[e.Other=5]="Other",e}({}),qa=new Ee("UseV4Plurals"),Ja=function(){return function(){}}(),Ya=function(e){function t(t,n){var r=e.call(this)||this;return r.locale=t,r.deprecatedPluralFn=n,r}return o(t,e),t.prototype.getPluralCategory=function(e,t){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(t||this.locale,e):function(e){return function(e){var t=e.toLowerCase().replace(/_/g,"-"),n=Wa[t];if(n)return n;var r=t.split("-")[0];if(n=Wa[r])return n;if("en"===r)return Za;throw new Error('Missing locale data for the locale "'+e+'".')}(e)[18]}(t||this.locale)(e)){case Qa.Zero:return"zero";case Qa.One:return"one";case Qa.Two:return"two";case Qa.Few:return"few";case Qa.Many:return"many";default:return"other"}},t}(Ja),Ka=function(){function e(e,t,n,r){this.$implicit=e,this.ngForOf=t,this.index=n,this.count=r}return Object.defineProperty(e.prototype,"first",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"last",{get:function(){return this.index===this.count-1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"even",{get:function(){return this.index%2==0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"odd",{get:function(){return!this.even},enumerable:!0,configurable:!0}),e}(),Xa=function(){function e(e,t,n){this._viewContainer=e,this._template=t,this._differs=n,this._ngForOfDirty=!0,this._differ=null}return Object.defineProperty(e.prototype,"ngForOf",{set:function(e){this._ngForOf=e,this._ngForOfDirty=!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ngForTrackBy",{get:function(){return this._trackByFn},set:function(e){Ke()&&null!=e&&"function"!=typeof e&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(e)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ngForTemplate",{set:function(e){e&&(this._template=e)},enumerable:!0,configurable:!0}),e.prototype.ngDoCheck=function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(r){throw new Error("Cannot find a differ supporting object '"+e+"' of type '"+((t=e).name||typeof t)+"'. NgFor only supports binding to Iterables such as Arrays.")}}var t;if(this._differ){var n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}},e.prototype._applyChanges=function(e){var t=this,n=[];e.forEachOperation(function(e,r,o){if(null==e.previousIndex){var i=t._viewContainer.createEmbeddedView(t._template,new Ka(null,t._ngForOf,-1,-1),o),a=new $a(e,i);n.push(a)}else null==o?t._viewContainer.remove(r):(i=t._viewContainer.get(r),t._viewContainer.move(i,o),a=new $a(e,i),n.push(a))});for(var r=0;r0)return String(e[0]);if("object"==typeof e){if(e.exact)return String(e.exact);if(e.ideal)return String(e.ideal)}}return null},e.prototype.ngAfterViewInit=function(){var e=this;this.detectAvailableDevices().then(function(t){e.switchToVideoInput(t.length>0?t[0].deviceId:null)}).catch(function(t){e.initError.next({message:t}),e.switchToVideoInput(null)})},e.prototype.ngOnDestroy=function(){this.stopMediaTracks(),this.unsubscribeFromSubscriptions()},e.prototype.takeSnapshot=function(){var t=this.video.nativeElement,n={width:this.width,height:this.height};t.videoWidth&&(n.width=t.videoWidth,n.height=t.videoHeight);var r=this.canvas.nativeElement;r.width=n.width,r.height=n.height;var o=r.getContext("2d");o.drawImage(this.video.nativeElement,0,0);var i=this.imageType?this.imageType:e.DEFAULT_IMAGE_TYPE,a=r.toDataURL(i,this.imageQuality?this.imageQuality:e.DEFAULT_IMAGE_QUALITY),u=null;this.captureImageData&&(u=o.getImageData(0,0,r.width,r.height)),this.imageCapture.next(new uu(a,i,u))},e.prototype.rotateVideoInput=function(e){this.availableVideoInputs&&this.availableVideoInputs.length>1&&this.switchToVideoInput(this.availableVideoInputs[(this.activeVideoInputIndex+(e?1:this.availableVideoInputs.length-1))%this.availableVideoInputs.length].deviceId)},e.prototype.switchToVideoInput=function(e){this.videoInitialized=!1,this.stopMediaTracks(),this.initWebcam(e,this.videoOptions)},e.prototype.videoResize=function(){},Object.defineProperty(e.prototype,"videoWidth",{get:function(){var e=this.getVideoAspectRatio();return Math.min(this.width,this.height*e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"videoHeight",{get:function(){var e=this.getVideoAspectRatio();return Math.min(this.height,this.width/e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"videoStyleClasses",{get:function(){var e="";return this.isMirrorImage()&&(e+="mirrored "),e.trim()},enumerable:!0,configurable:!0}),e.prototype.getVideoAspectRatio=function(){var e=this.video.nativeElement;return e.videoWidth&&e.videoWidth>0&&e.videoHeight&&e.videoHeight>0?e.videoWidth/e.videoHeight:this.width/this.height},e.prototype.initWebcam=function(t,n){var r=this,o=this.video.nativeElement;if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){var i=e.getMediaConstraintsForDevice(t,n);navigator.mediaDevices.getUserMedia({video:i}).then(function(t){r.mediaStream=t,o.srcObject=t,o.play(),r.activeVideoSettings=t.getVideoTracks()[0].getSettings();var n=e.getDeviceIdFromMediaStreamTrack(t.getVideoTracks()[0]);r.activeVideoInputIndex=n?r.availableVideoInputs.findIndex(function(e){return e.deviceId===n}):-1,r.videoInitialized=!0,r.cameraSwitched.next(n)}).catch(function(e){r.initError.next({message:e.message,mediaStreamError:e})})}else this.initError.next({message:"Cannot read UserMedia from MediaDevices."})},e.prototype.getActiveVideoTrack=function(){return this.mediaStream?this.mediaStream.getVideoTracks()[0]:null},e.prototype.isMirrorImage=function(){if(!this.getActiveVideoTrack())return!1;var t="auto";switch(this.mirrorImage&&("string"==typeof this.mirrorImage?t=String(this.mirrorImage).toLowerCase():this.mirrorImage.x&&(t=this.mirrorImage.x.toLowerCase())),t){case"always":return!0;case"never":return!1}return e.isUserFacing(this.getActiveVideoTrack())},e.prototype.stopMediaTracks=function(){this.mediaStream&&this.mediaStream.getTracks&&this.mediaStream.getTracks().forEach(function(e){return e.stop()})},e.prototype.unsubscribeFromSubscriptions=function(){this.triggerSubscription&&this.triggerSubscription.unsubscribe(),this.switchCameraSubscription&&this.switchCameraSubscription.unsubscribe()},e.prototype.detectAvailableDevices=function(){var e=this;return new Promise(function(t,n){Ua.getAvailableVideoInputs().then(function(n){e.availableVideoInputs=n,t(n)}).catch(function(t){e.availableVideoInputs=[],n(t)})})},e.DEFAULT_VIDEO_OPTIONS={facingMode:"environment"},e.DEFAULT_IMAGE_TYPE="image/jpeg",e.DEFAULT_IMAGE_QUALITY=.92,e}(),lu=Hn({encapsulation:0,styles:[[".webcam-wrapper[_ngcontent-%COMP%]{display:inline-block;position:relative;line-height:0}.webcam-wrapper[_ngcontent-%COMP%] video.mirrored[_ngcontent-%COMP%]{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.webcam-wrapper[_ngcontent-%COMP%] canvas[_ngcontent-%COMP%]{display:none}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]{background-color:rgba(0,0,0,.1);background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAE9UlEQVR42u2aT2hdRRTGf+cRQqghSqihdBFDkRISK2KDfzDWxHaRQHEhaINKqa1gKQhd6EZLN+IidCH+Q0oWIkVRC21BQxXRitVaSbKoJSGtYGoK2tQ/tU1jY5v0c5F54Xl7b/KSO/PyEt+3e5f75p7zzZwzZ74zUEIJJfyfYaEGllQGVAGZlENdBy6Z2cSiYFTSKkkfS/pH/nBF0kFJdUW9AiRVASeAukD8DgNrzOySrwEzng18KaDzALXuG8W3AiStAvqBisBRNg40mtlPxbYCOgvgPO4bncWW+JpVeDQXRQhIygDfA00F5r0XuNfMrgclQFI98DDQCNQA5ZFXqoCWBVp8XwHRHeEqcN7loy/NbHBesyqpQ1KfFj/6nC+ZvFaApFrgPaCZpYVvgCfNbDiRAElNwGFg+RIt/X8H2s2s9wYCJDUAR4HqJX7++RN40MwGpgmQVAH0AQ2BPz4AHHPl8nBOAqtyFWQjsA6oL4Ada81sPDv7uwImod8kvSJp9RyS8O2SXnb/DYVd2Y9VSroQ4ANXJO2WVJmixqh0kzMWwL4LkiqRtDnA4D1zmfE8j9g9AezcnAHaPcfXdbfdnPZ2Yps6+DwAvO/Z1naTdApY7Xng48BDZnY1MpMVQBuw3iXc5Tnb0wBwBPjUzP6eoezuArZ6svM0geJLkvZEYnl3nkntoqROSbckSW2Suj3ZOIangc7GPJuUtNGdFIfmMeavktoSSKiW9LMPw30Q8JqkekmjCbOZRhuclLQjgYSNxUBAj6RyZ9ATgUJpUtJTCSR8vpAEXHAyWK5BXYFIGHOlepSAloUk4NEYgyoknQhEwhFJ0e8h6VSaQeerCb5uZgdi9utxYBNwOUD93hIVXswM4INCi6K9wAszFC2DwLOBDjHbYp59karIUnRdzYy/3ClqVklaUhfwTICj7K25OqA7a4wWagVsm4Me/xzwg2cCqqONFzO7DPxSCAJi436GUBgHHguQD2oTlJ55oSzP9ybccsttSJw1szdjFOSnI/8dTCGZHwcORp4Nx7y3B1iZ8/sm4MW8/Euxg5wIsS/HaAp3zeP4/G7obRDXI4jiTIA22H7Xdc7X+S3A5lC7QBQ357aq3VAjCeSkwUfAJrfvz+R8A9ADLAtZB+TinpjC5JMA+//jwPZZnF8G7J+L8z4IWB/zbG+gIujVWfLBW/NStVMmqaG4POJRsIjix7h8IGnLQuoBbQki5sVAJHyYm7YkNaRRtXwQ8G1cHpX0iKRrgUjYno17Sf0LrQhJUkdCeHWkVITGJI0k1QeS3ikGSUzOyJUJJNznYneuOCnpTldcxa2kP3xJYqOeSDjqZG8ShJLnE8TTuMS6Iyu1BW7djZqkfo9N0QOuYJmYQddfB7RG+gLTNzqAY9FrL+5/nwEbvDdJJe3zzOrhNP3AWRqmk55t3ZcBuj3b2gb0Sbrbo/NNzk7fFzu7s/E5EiC+rrmeQU0Kx2skvRFoOx2ZzlmSdgbsw49JetvtBpk8nM64d/cGbNtJ0s7cGyJlwHeEv+t3nqnLSgPAUOSGyG3AHUxdzqoJbEcvcL+ZTeTeEapzJKxgaeOcc/7Mf06D7kFrguS0VDAMtGadv+E47DT9tcChJej8ISfpD+abgTe45uOkFi8mnQ+JBVQ+d4VXuOptjavcyot8pq86mfwk8LWZnaOEEkoooYQSSojDv8AhQNeGfe0jAAAAAElFTkSuQmCC);background-repeat:no-repeat;border-radius:5px;position:absolute;right:13px;top:10px;height:48px;width:48px;background-size:80%;cursor:pointer;background-position:center;transition:background-color .2s ease}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.18)}"]],data:{}});function cu(e){return Pi(0,[(e()(),bi(0,0,null,null,0,"div",[["class","camera-switch"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.rotateVideoInput(!0)&&r),r},null,null))],null,null)}function du(e){return Pi(0,[xi(402653184,1,{video:0}),xi(402653184,2,{canvas:0}),(e()(),bi(2,0,null,null,4,"div",[["class","webcam-wrapper"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.imageClick.next()&&r),r},null,null)),(e()(),bi(3,0,[[1,0],["video",1]],null,0,"video",[["autoplay",""],["muted",""],["playsinline",""]],[[8,"width",0],[8,"height",0],[8,"className",0]],[[null,"resize"]],function(e,t,n){var r=!0;return"resize"===t&&(r=!1!==e.component.videoResize()&&r),r},null,null)),(e()(),mi(16777216,null,null,1,null,cu)),Jr(5,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),bi(6,0,[[2,0],["canvas",1]],null,0,"canvas",[],[[8,"width",0],[8,"height",0]],null,null,null,null))],function(e,t){var n=t.component;e(t,5,0,n.allowCameraSwitch&&n.availableVideoInputs.length>1&&n.videoInitialized)},function(e,t){var n=t.component;e(t,3,0,n.videoWidth,n.videoHeight,n.videoStyleClasses),e(t,6,0,n.width,n.height)})}var pu=null;function fu(){return pu}var hu,yu=function(e){function t(){var t=e.call(this)||this;t._animationPrefix=null,t._transitionEnd=null;try{var n=t.createElement("div",document);if(null!=t.getStyle(n,"animationName"))t._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},t.prototype.tagName=function(e){return e.tagName},t.prototype.attributeMap=function(e){for(var t=new Map,n=e.attributes,r=0;r0;a||(a=e[i]=[]);var s=$u(t)?Zone.root:Zone.current;if(0===a.length)a.push({zone:s,handler:o});else{for(var l=!1,c=0;c-1},t}(Nu),us=["alt","control","meta","shift"],ss={alt:function(e){return e.altKey},control:function(e){return e.ctrlKey},meta:function(e){return e.metaKey},shift:function(e){return e.shiftKey}},ls=function(e){function t(t){return e.call(this,t)||this}var n;return o(t,e),n=t,t.prototype.supports=function(e){return null!=n.parseEventName(e)},t.prototype.addEventListener=function(e,t,r){var o=n.parseEventName(t),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return fu().onAndCancel(e,o.domEventName,i)})},t.parseEventName=function(e){var t=e.toLowerCase().split("."),r=t.shift();if(0===t.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(t.pop()),i="";if(us.forEach(function(e){var n=t.indexOf(e);n>-1&&(t.splice(n,1),i+=e+".")}),i+=o,0!=t.length||0===o.length)return null;var a={};return a.domEventName=r,a.fullKey=i,a},t.getEventFullKey=function(e){var t="",n=fu().getEventKey(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),us.forEach(function(r){r!=n&&(0,ss[r])(e)&&(t+=r+".")}),t+=n},t.eventCallback=function(e,t,r){return function(o){n.getEventFullKey(o)===e&&r.runGuarded(function(){return t(o)})}},t._normalizeKey=function(e){switch(e){case"esc":return"escape";default:return e}},t}(Nu),cs=function(){return function(){}}(),ds=function(e){function t(t){var n=e.call(this)||this;return n._doc=t,n}return o(t,e),t.prototype.sanitize=function(e,t){if(null==t)return null;switch(e){case bt.NONE:return t;case bt.HTML:return t instanceof fs?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"HTML"),function(e,t){var n=null;try{ot=ot||new Xe(e);var r=t?String(t):"";n=ot.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=ot.getInertBodyElement(r)}while(r!==i);var a=new ht,u=a.sanitizeChildren(mt(n)||n);return Ke()&&a.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),u}finally{if(n)for(var s=mt(n)||n;s.firstChild;)s.removeChild(s.firstChild)}}(this._doc,String(t)));case bt.STYLE:return t instanceof hs?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"Style"),function(e){if(!(e=String(e).trim()))return"";var t=e.match(Ct);return t&&tt(t[1])===t[1]||e.match(wt)&&function(e){for(var t=!0,n=!0,r=0;re?{max:{max:e,actual:t.value}}:null}},e.required=function(e){return Vs(e.value)?{required:!0}:null},e.requiredTrue=function(e){return!0===e.value?null:{required:!0}},e.email=function(e){return Vs(e.value)?null:Ns.test(e.value)?null:{email:!0}},e.minLength=function(e){return function(t){if(Vs(t.value))return null;var n=t.value?t.value.length:0;return ne?{maxlength:{requiredLength:e,actualLength:n}}:null}},e.pattern=function(t){return t?("string"==typeof t?(r="","^"!==t.charAt(0)&&(r+="^"),r+=t,"$"!==t.charAt(t.length-1)&&(r+="$"),n=new RegExp(r)):(r=t.toString(),n=t),function(e){if(Vs(e.value))return null;var t=e.value;return n.test(t)?null:{pattern:{requiredPattern:r,actualValue:t}}}):e.nullValidator;var n,r},e.nullValidator=function(e){return null},e.compose=function(e){if(!e)return null;var t=e.filter(Ds);return 0==t.length?null:function(e){return Rs(function(e,n){return t.map(function(t){return t(e)})}(e))}},e.composeAsync=function(e){if(!e)return null;var t=e.filter(Ds);return 0==t.length?null:function(e){return function(){for(var e=[],t=0;t=0;--t)if(this._accessors[t][1]===e)return void this._accessors.splice(t,1)},e.prototype.select=function(e){var t=this;this._accessors.forEach(function(n){t._isSameGroup(n,e)&&n[1]!==e&&n[1].fireUncheck(e.value)})},e.prototype._isSameGroup=function(e,t){return!!e[0].control&&e[0]._parent===t._control._parent&&e[1].name===t.name},e}(),Us=function(){function e(e,t,n,r){this._renderer=e,this._elementRef=t,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return e.prototype.ngOnInit=function(){this._control=this._injector.get(Os),this._checkName(),this._registry.add(this._control,this)},e.prototype.ngOnDestroy=function(){this._registry.remove(this)},e.prototype.writeValue=function(e){this._state=e===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)},e.prototype.registerOnChange=function(e){var t=this;this._fn=e,this.onChange=function(){e(t.value),t._registry.select(t)}},e.prototype.fireUncheck=function(e){this.writeValue(e)},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)},e.prototype._checkName=function(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)},e.prototype._throwNameError=function(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')},e}(),Bs='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',zs='\n
\n
\n \n
\n
';function Gs(e,t){return c(t.path,[e])}function Zs(e,t){e||Qs(t,"Cannot find control with"),t.valueAccessor||Qs(t,"No value accessor for form control with"),e.validator=Ps.compose([e.validator,t.validator]),e.asyncValidator=Ps.composeAsync([e.asyncValidator,t.asyncValidator]),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(function(n){e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&Ws(e,t)})}(e,t),function(e,t){e.registerOnChange(function(e,n){t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(function(){e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&Ws(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),t.valueAccessor.setDisabledState&&e.registerOnDisabledChange(function(e){t.valueAccessor.setDisabledState(e)}),t._rawValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(function(){return e.updateValueAndValidity()})}),t._rawAsyncValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(function(){return e.updateValueAndValidity()})})}function Ws(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function Qs(e,t){var n;throw n=e.path.length>1?"path: '"+e.path.join(" -> ")+"'":e.path[0]?"name: '"+e.path+"'":"unspecified name attribute",new Error(t+" "+n)}function qs(e){return null!=e?Ps.compose(e.map(js)):null}function Js(e){return null!=e?Ps.composeAsync(e.map(Fs)):null}var Ys=[Es,function(){function e(e,t){this._renderer=e,this._elementRef=t,this.onChange=function(e){},this.onTouched=function(){}}return e.prototype.writeValue=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(e))},e.prototype.registerOnChange=function(e){this.onChange=function(t){e(""==t?null:parseFloat(t))}},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)},e}(),Hs,function(){function e(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=function(e){},this.onTouched=function(){},this._compareWith=Ot}return Object.defineProperty(e.prototype,"compareWith",{set:function(e){if("function"!=typeof e)throw new Error("compareWith must be a function, but received "+JSON.stringify(e));this._compareWith=e},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(e){this.value=e;var t=this._getOptionId(e);null==t&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);var n=function(e,t){return null==e?""+t:(t&&"object"==typeof t&&(t="Object"),(e+": "+t).slice(0,50))}(t,e);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)},e.prototype.registerOnChange=function(e){var t=this;this.onChange=function(n){t.value=t._getOptionValue(n),e(t.value)}},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)},e.prototype._registerOption=function(){return(this._idCounter++).toString()},e.prototype._getOptionId=function(e){var t,n;try{for(var r=s(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),e))return i}}catch(a){t={error:a}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(t)throw t.error}}return null},e.prototype._getOptionValue=function(e){var t=function(e){return e.split(":")[0]}(e);return this._optionMap.has(t)?this._optionMap.get(t):e},e}(),function(){function e(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=function(e){},this.onTouched=function(){},this._compareWith=Ot}return Object.defineProperty(e.prototype,"compareWith",{set:function(e){if("function"!=typeof e)throw new Error("compareWith must be a function, but received "+JSON.stringify(e));this._compareWith=e},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(e){var t,n=this;if(this.value=e,Array.isArray(e)){var r=e.map(function(e){return n._getOptionId(e)});t=function(e,t){e._setSelected(r.indexOf(t.toString())>-1)}}else t=function(e,t){e._setSelected(!1)};this._optionMap.forEach(t)},e.prototype.registerOnChange=function(e){var t=this;this.onChange=function(n){var r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||this.disabled},t.prototype._checkAllValuesPresent=function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control with name: '"+n+"'.")})},t}(el),rl=function(e){function t(t,n,r){var o=e.call(this,Ks(n),Xs(r,n))||this;return o.controls=t,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(t,e),t.prototype.at=function(e){return this.controls[e]},t.prototype.push=function(e){this.controls.push(e),this._registerControl(e),this.updateValueAndValidity(),this._onCollectionChange()},t.prototype.insert=function(e,t){this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity()},t.prototype.removeAt=function(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),this.updateValueAndValidity()},t.prototype.setControl=function(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity(),this._onCollectionChange()},Object.defineProperty(t.prototype,"length",{get:function(){return this.controls.length},enumerable:!0,configurable:!0}),t.prototype.setValue=function(e,t){var n=this;void 0===t&&(t={}),this._checkAllValuesPresent(e),e.forEach(function(e,r){n._throwIfControlMissing(r),n.at(r).setValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)},t.prototype.patchValue=function(e,t){var n=this;void 0===t&&(t={}),e.forEach(function(e,r){n.at(r)&&n.at(r).patchValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)},t.prototype.reset=function(e,t){void 0===e&&(e=[]),void 0===t&&(t={}),this._forEachChild(function(n,r){n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)},t.prototype.getRawValue=function(){return this.controls.map(function(e){return e instanceof tl?e.value:e.getRawValue()})},t.prototype.clear=function(){this.controls.length<1||(this._forEachChild(function(e){return e._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity())},t.prototype._syncPendingControls=function(){var e=this.controls.reduce(function(e,t){return!!t._syncPendingControls()||e},!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e},t.prototype._throwIfControlMissing=function(e){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(e))throw new Error("Cannot find form control at index "+e)},t.prototype._forEachChild=function(e){this.controls.forEach(function(t,n){e(t,n)})},t.prototype._updateValue=function(){var e=this;this.value=this.controls.filter(function(t){return t.enabled||e.disabled}).map(function(e){return e.value})},t.prototype._anyControls=function(e){return this.controls.some(function(t){return t.enabled&&e(t)})},t.prototype._setUpControls=function(){var e=this;this._forEachChild(function(t){return e._registerControl(t)})},t.prototype._checkAllValuesPresent=function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control at index: "+n+".")})},t.prototype._allControlsDisabled=function(){var e,t;try{for(var n=s(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){e={error:o}}finally{try{r&&!r.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}return this.controls.length>0||this.disabled},t.prototype._registerControl=function(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)},t}(el),ol=function(){return Promise.resolve(null)}(),il=function(e){function t(t,n){var r=e.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new fo,r.form=new nl({},qs(t),Js(n)),r}return o(t,e),t.prototype.ngAfterViewInit=function(){this._setUpdateStrategy()},Object.defineProperty(t.prototype,"formDirective",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"controls",{get:function(){return this.form.controls},enumerable:!0,configurable:!0}),t.prototype.addControl=function(e){var t=this;ol.then(function(){var n=t._findContainer(e.path);e.control=n.registerControl(e.name,e.control),Zs(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),t._directives.push(e)})},t.prototype.getControl=function(e){return this.form.get(e.path)},t.prototype.removeControl=function(e){var t=this;ol.then(function(){var n,r,o=t._findContainer(e.path);o&&o.removeControl(e.name),(r=(n=t._directives).indexOf(e))>-1&&n.splice(r,1)})},t.prototype.addFormGroup=function(e){var t=this;ol.then(function(){var n=t._findContainer(e.path),r=new nl({});(function(e,t){null==e&&Qs(t,"Cannot find control with"),e.validator=Ps.compose([e.validator,t.validator]),e.asyncValidator=Ps.composeAsync([e.asyncValidator,t.asyncValidator])})(r,e),n.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})},t.prototype.removeFormGroup=function(e){var t=this;ol.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name)})},t.prototype.getFormGroup=function(e){return this.form.get(e.path)},t.prototype.updateModel=function(e,t){var n=this;ol.then(function(){n.form.get(e.path).setValue(t)})},t.prototype.setValue=function(e){this.control.setValue(e)},t.prototype.onSubmit=function(e){return this.submitted=!0,t=this._directives,this.form._syncPendingControls(),t.forEach(function(e){var t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)}),this.ngSubmit.emit(e),!1;var t},t.prototype.onReset=function(){this.resetForm()},t.prototype.resetForm=function(e){void 0===e&&(e=void 0),this.form.reset(e),this.submitted=!1},t.prototype._setUpdateStrategy=function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)},t.prototype._findContainer=function(e){return e.pop(),e.length?this.form.get(e):this.form},t}(Ts),al=function(){function e(){}return e.modelParentException=function(){throw new Error('\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup\'s partner directive "formControlName" instead. Example:\n\n \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\n\n Or, if you\'d like to avoid registering this form control, indicate that it\'s standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n ')},e.formGroupNameException=function(){throw new Error("\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n "+Bs+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+zs)},e.missingNameException=function(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')},e.modelGroupParentException=function(){throw new Error("\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n "+Bs+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+zs)},e.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},e}(),ul=new Ee("NgFormSelectorWarning"),sl=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.ngOnInit=function(){this._checkParentType(),this.formDirective.addFormGroup(this)},t.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeFormGroup(this)},Object.defineProperty(t.prototype,"control",{get:function(){return this.formDirective.getFormGroup(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return Gs(this.name,this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"validator",{get:function(){return qs(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"asyncValidator",{get:function(){return Js(this._asyncValidators)},enumerable:!0,configurable:!0}),t.prototype._checkParentType=function(){},t}(Ts),ll=function(e){function t(t,n,r){var o=e.call(this)||this;return o._parent=t,o._validators=n,o._asyncValidators=r,o}var n;return o(t,e),n=t,t.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof il||al.modelGroupParentException()},t}(sl),cl=function(){return Promise.resolve(null)}(),dl=function(e){function t(t,n,r,o){var i=e.call(this)||this;return i.control=new tl,i._registered=!1,i.update=new fo,i._parent=t,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(e,t){if(!t)return null;Array.isArray(t)||Qs(e,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return t.forEach(function(t){var i;t.constructor===Ss?n=t:(i=t,Ys.some(function(e){return i.constructor===e})?(r&&Qs(e,"More than one built-in value accessor matches form control with"),r=t):(o&&Qs(e,"More than one custom value accessor matches form control with"),o=t))}),o||r||n||(Qs(e,"No valid value accessor for form control with"),null)}(i,o),i}return o(t,e),t.prototype.ngOnChanges=function(e){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in e&&this._updateDisabled(e),function(e,t){if(!e.hasOwnProperty("model"))return!1;var n=e.model;return!!n.isFirstChange()||!Ot(t,n.currentValue)}(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)},t.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeControl(this)},Object.defineProperty(t.prototype,"path",{get:function(){return this._parent?Gs(this.name,this._parent):[this.name]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"validator",{get:function(){return qs(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"asyncValidator",{get:function(){return Js(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),t.prototype.viewToModelUpdate=function(e){this.viewModel=e,this.update.emit(e)},t.prototype._setUpControl=function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0},t.prototype._setUpdateStrategy=function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)},t.prototype._isStandalone=function(){return!this._parent||!(!this.options||!this.options.standalone)},t.prototype._setUpStandalone=function(){Zs(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})},t.prototype._checkForErrors=function(){this._isStandalone()||this._checkParentType(),this._checkName()},t.prototype._checkParentType=function(){!(this._parent instanceof ll)&&this._parent instanceof sl?al.formGroupNameException():this._parent instanceof ll||this._parent instanceof il||al.modelParentException()},t.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||al.missingNameException()},t.prototype._updateValue=function(e){var t=this;cl.then(function(){t.control.setValue(e,{emitViewToModelChange:!1})})},t.prototype._updateDisabled=function(e){var t=this,n=e.isDisabled.currentValue,r=""===n||n&&"false"!==n;cl.then(function(){r&&!t.control.disabled?t.control.disable():!r&&t.control.disabled&&t.control.enable()})},t}(Os),pl=function(){return function(){}}(),fl=function(){function e(){}var t;return t=e,e.withConfig=function(e){return{ngModule:t,providers:[{provide:ul,useValue:e.warnOnDeprecatedNgFormSelector}]}},e}(),hl=Hn({encapsulation:0,styles:[[".actionBtn[_ngcontent-%COMP%]{margin-top:5px;margin-bottom:2px;font-size:1.2em}.snapshot[_ngcontent-%COMP%]{text-align:center}.snapshot[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:800px;max-height:800px}ul.links[_ngcontent-%COMP%]{padding-bottom:20px}"]],data:{}});function yl(e){return Pi(0,[(e()(),bi(0,0,null,null,1,"webcam",[],null,[[null,"imageCapture"],[null,"cameraSwitched"],[null,"initError"]],function(e,t,n){var r=!0,o=e.component;return"imageCapture"===t&&(r=!1!==o.handleImage(n)&&r),"cameraSwitched"===t&&(r=!1!==o.cameraWasSwitched(n)&&r),"initError"===t&&(r=!1!==o.handleInitError(n)&&r),r},du,lu)),Jr(1,4374528,null,0,su,[],{width:[0,"width"],height:[1,"height"],videoOptions:[2,"videoOptions"],allowCameraSwitch:[3,"allowCameraSwitch"],imageQuality:[4,"imageQuality"],trigger:[5,"trigger"],switchCamera:[6,"switchCamera"]},{imageCapture:"imageCapture",initError:"initError",cameraSwitched:"cameraSwitched"})],function(e,t){var n=t.component;e(t,1,0,500,500,n.videoOptions,n.allowCameraSwitch,1,n.triggerObservable,n.nextWebcamObservable)},null)}function gl(e){return Pi(0,[(e()(),bi(0,0,null,null,3,"div",[["class","snapshot"]],null,null,null,null,null)),(e()(),bi(1,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),ki(-1,null,["Nice one!"])),(e()(),bi(3,0,null,null,0,"img",[],[[8,"src",4]],null,null,null,null))],null,function(e,t){e(t,3,0,t.component.webcamImage.imageAsDataUrl)})}function vl(e){return Pi(0,[(e()(),bi(0,0,null,null,1,"h4",[],null,null,null,null,null)),(e()(),ki(-1,null,["Messages:"]))],null,null)}function ml(e){return Pi(0,[(e()(),bi(0,0,null,null,3,"ul",[],null,null,null,null,null)),(e()(),bi(1,0,null,null,2,"li",[],null,null,null,null,null)),(e()(),ki(2,null,["",""])),(t=0,n=ru,r=[],Kr(-1,t|=16,null,0,n,n,r))],null,function(e,t){e(t,2,0,function(e,t,n,r){if(Vt.isWrapped(r)){r=Vt.unwrap(r);var o=e.def.nodes[2].bindingIndex+0,i=Vt.unwrap(e.oldValues[o]);e.oldValues[o]=new Vt(i)}return r}(t,0,0,Rr(t,3).transform(t.context.$implicit)))});var t,n,r}function bl(e){return Pi(0,[(e()(),bi(0,0,null,null,31,"div",[["style","text-align:center"]],null,null,null,null,null)),(e()(),bi(1,0,null,null,1,"h1",[],null,null,null,null,null)),(e()(),ki(-1,null,[" Ngx-Webcam Demo "])),(e()(),bi(3,0,null,null,28,"div",[],null,null,null,null,null)),(e()(),mi(16777216,null,null,1,null,yl)),Jr(5,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),bi(6,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),bi(7,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.triggerSnapshot()&&r),r},null,null)),(e()(),ki(-1,null,["Take A Snapshot"])),(e()(),bi(9,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.toggleWebcam()&&r),r},null,null)),(e()(),ki(-1,null,["Toggle Webcam"])),(e()(),bi(11,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),bi(12,0,null,null,1,"button",[["class","actionBtn"]],[[8,"disabled",0]],[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.showNextWebcam(!0)&&r),r},null,null)),(e()(),ki(-1,null,["Next Webcam"])),(e()(),bi(14,0,null,null,5,"input",[["id","cameraSwitchCheckbox"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(e,t,n){var r=!0,o=e.component;return"change"===t&&(r=!1!==Rr(e,15).onChange(n.target.checked)&&r),"blur"===t&&(r=!1!==Rr(e,15).onTouched()&&r),"ngModelChange"===t&&(r=!1!==(o.allowCameraSwitch=n)&&r),r},null,null)),Jr(15,16384,null,0,Es,[Xt,Qt],null,null),Yr(1024,null,Cs,function(e){return[e]},[Es]),Jr(17,671744,null,0,dl,[[8,null],[8,null],[8,null],[6,Cs]],{model:[0,"model"]},{update:"ngModelChange"}),Yr(2048,null,Os,null,[dl]),Jr(19,16384,null,0,ks,[[4,Os]],null,null),(e()(),bi(20,0,null,null,1,"label",[["for","cameraSwitchCheckbox"]],null,null,null,null,null)),(e()(),ki(-1,null,["Allow Camera Switch"])),(e()(),bi(22,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),ki(-1,null,[" DeviceId: "])),(e()(),bi(24,0,null,null,5,"input",[["id","deviceId"],["style","width: 500px"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(e,t,n){var r=!0,o=e.component;return"input"===t&&(r=!1!==Rr(e,25)._handleInput(n.target.value)&&r),"blur"===t&&(r=!1!==Rr(e,25).onTouched()&&r),"compositionstart"===t&&(r=!1!==Rr(e,25)._compositionStart()&&r),"compositionend"===t&&(r=!1!==Rr(e,25)._compositionEnd(n.target.value)&&r),"ngModelChange"===t&&(r=!1!==(o.deviceId=n)&&r),r},null,null)),Jr(25,16384,null,0,Ss,[Xt,Qt,[2,xs]],null,null),Yr(1024,null,Cs,function(e){return[e]},[Ss]),Jr(27,671744,null,0,dl,[[8,null],[8,null],[8,null],[6,Cs]],{model:[0,"model"]},{update:"ngModelChange"}),Yr(2048,null,Os,null,[dl]),Jr(29,16384,null,0,ks,[[4,Os]],null,null),(e()(),bi(30,0,null,null,1,"button",[],null,[[null,"click"]],function(e,t,n){var r=!0,o=e.component;return"click"===t&&(r=!1!==o.showNextWebcam(o.deviceId)&&r),r},null,null)),(e()(),ki(-1,null,["Activate"])),(e()(),mi(16777216,null,null,1,null,gl)),Jr(33,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),mi(16777216,null,null,1,null,vl)),Jr(35,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),mi(16777216,null,null,1,null,ml)),Jr(37,278528,null,0,Xa,[wn,bn,pn],{ngForOf:[0,"ngForOf"]},null),(e()(),bi(38,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),ki(-1,null,["Like this project on GitHub:"])),(e()(),bi(40,0,null,null,4,"ul",[["class","links"]],null,null,null,null,null)),(e()(),bi(41,0,null,null,3,"li",[],null,null,null,null,null)),(e()(),bi(42,0,null,null,2,"h2",[],null,null,null,null,null)),(e()(),bi(43,0,null,null,1,"a",[["href","https://github.com/basst314/ngx-webcam"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(e()(),ki(-1,null,["Ngx-Webcam / GitHub"]))],function(e,t){var n=t.component;e(t,5,0,n.showWebcam),e(t,17,0,n.allowCameraSwitch),e(t,27,0,n.deviceId),e(t,33,0,n.webcamImage),e(t,35,0,n.errors.length>0),e(t,37,0,n.errors)},function(e,t){e(t,12,0,!t.component.multipleWebcamsAvailable),e(t,14,0,Rr(t,19).ngClassUntouched,Rr(t,19).ngClassTouched,Rr(t,19).ngClassPristine,Rr(t,19).ngClassDirty,Rr(t,19).ngClassValid,Rr(t,19).ngClassInvalid,Rr(t,19).ngClassPending),e(t,24,0,Rr(t,29).ngClassUntouched,Rr(t,29).ngClassTouched,Rr(t,29).ngClassPristine,Rr(t,29).ngClassDirty,Rr(t,29).ngClassValid,Rr(t,29).ngClassInvalid,Rr(t,29).ngClassPending)})}function _l(e){return Pi(0,[(e()(),bi(0,0,null,null,1,"appRoot",[],null,null,null,bl,hl)),Jr(1,114688,null,0,Ba,[],null,null)],function(e,t){e(t,1,0)},null)}var wl=Sr("appRoot",Ba,_l,{},{},[]),Cl=function(){return function(){}}(),El=Fa(La,[Ba],function(e){return function(e){for(var t={},n=[],r=!1,o=0;o=0;u--)(o=e[u])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function u(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function s(e){var t="function"==typeof Symbol&&e[Symbol.iterator],n=0;return t?t.call(e):{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}}}function l(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(u){o={error:u}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function c(){for(var e=[],t=0;t0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(U);function J(e){return e}function Y(){return function(e){return e.lift(new K(e))}}var K=function(){function e(e){this.connectable=e}return e.prototype.call=function(e,t){var n=this.connectable;n._refCount++;var r=new X(e,n),o=t.subscribe(r);return r.closed||(r.connection=n.connect()),o},e}(),X=function(e){function t(t,n){var r=e.call(this,t)||this;return r.connectable=n,r}return o(t,e),t.prototype._unsubscribe=function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}else this.connection=null},t}(E),$=function(e){function t(t,n){var r=e.call(this)||this;return r.source=t,r.subjectFactory=n,r._refCount=0,r._isComplete=!1,r}return o(t,e),t.prototype._subscribe=function(e){return this.getSubject().subscribe(e)},t.prototype.getSubject=function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject},t.prototype.connect=function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new g).add(this.source.subscribe(new te(this.getSubject(),this))),e.closed&&(this._connection=null,e=g.EMPTY)),e},t.prototype.refCount=function(){return Y()(this)},t}(A).prototype,ee={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:$._subscribe},_isComplete:{value:$._isComplete,writable:!0},getSubject:{value:$.getSubject},connect:{value:$.connect},refCount:{value:$.refCount}},te=function(e){function t(t,n){var r=e.call(this,t)||this;return r.connectable=n,r}return o(t,e),t.prototype._error=function(t){this._unsubscribe(),e.prototype._error.call(this,t)},t.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}},t}(V);function ne(){return new N}var re="__parameters__";function oe(e,t,n){var r=function(e){return function(){for(var t=[],n=0;n ");else if("object"==typeof t){var i=[];for(var a in t)if(t.hasOwnProperty(a)){var u=t[a];i.push(a+":"+("string"==typeof u?JSON.stringify(u):he(u)))}o="{"+i.join(", ")+"}"}return n+(r?"("+r+")":"")+"["+o+"]: "+e.replace(De,"\n ")}function He(e,t){return new Error(Fe(e,t,"StaticInjectorError"))}var Le="ngDebugContext",Ue="ngOriginalError",Be="ngErrorLogger",ze=function(e){return e[e.Emulated=0]="Emulated",e[e.Native=1]="Native",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e}({}),Ge=function(){return("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(_e)}();function Ze(e){return e[Le]}function We(e){return e[Ue]}function Qe(e){for(var t=[],n=1;n',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='

',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(e){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return e.prototype.getInertBodyElement_XHR=function(e){e=""+e+"";try{e=encodeURI(e)}catch(r){return null}var t=new XMLHttpRequest;t.responseType="document",t.open("GET","data:text/html;charset=utf-8,"+e,!1),t.send(void 0);var n=t.response.body;return n.removeChild(n.firstChild),n},e.prototype.getInertBodyElement_DOMParser=function(e){e=""+e+"";try{var t=(new window.DOMParser).parseFromString(e,"text/html").body;return t.removeChild(t.firstChild),t}catch(n){return null}},e.prototype.getInertBodyElement_InertDocument=function(e){var t=this.inertDocument.createElement("template");return"content"in t?(t.innerHTML=e,t):(this.inertBodyElement.innerHTML=e,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},e.prototype.stripCustomNsAttrs=function(e){for(var t=e.attributes,n=t.length-1;0"),!0},e.prototype.endElement=function(e){var t=e.nodeName.toLowerCase();lt.hasOwnProperty(t)&&!it.hasOwnProperty(t)&&(this.buf.push(""))},e.prototype.chars=function(e){this.buf.push(vt(e))},e.prototype.checkClobberedElement=function(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+e.outerHTML);return t},e}(),yt=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,gt=/([^\#-~ |!])/g;function vt(e){return e.replace(/&/g,"&").replace(yt,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(gt,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}function mt(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var bt=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}({}),_t=function(){return function(){}}(),wt=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Ct=/^url\(([^)]+)\)$/,Et=/([A-Z])/g;function xt(e){try{return null!=e?e.toString().slice(0,30):e}catch(t){return"[ERROR] Exception while trying to serialize the value"}}function St(e){return!!e&&"function"==typeof e.then}function At(e){return!!e&&"function"==typeof e.subscribe}var Tt=null;function It(){if(!Tt){var e=_e.Symbol;if(e&&e.iterator)Tt=e.iterator;else for(var t=Object.getOwnPropertyNames(Map.prototype),n=0;n-1}(r)||"root"===o.providedIn&&r._def.isRoot))){var c=e._providers.length;return e._def.providers[c]=e._def.providersByKey[t.tokenKey]={flags:5120,value:u.factory,deps:[],index:c,token:t.token},e._providers[c]=pr,e._providers[c]=mr(e,e._def.providersByKey[t.tokenKey])}return 4&t.flags?n:e._parent.get(t.token,n)}finally{Ce(i)}}function mr(e,t){var n;switch(201347067&t.flags){case 512:n=function(e,t,n){var r=n.length;switch(r){case 0:return new t;case 1:return new t(vr(e,n[0]));case 2:return new t(vr(e,n[0]),vr(e,n[1]));case 3:return new t(vr(e,n[0]),vr(e,n[1]),vr(e,n[2]));default:for(var o=new Array(r),i=0;i=n.length)&&(t=n.length-1),t<0)return null;var r=n[t];return r.viewContainerParent=null,Er(n,t),Pn.dirtyParentQueries(r),wr(r),r}function _r(e,t,n){var r=t?Jn(t,t.def.lastRenderRootNode):e.renderElement,o=n.renderer.parentNode(r),i=n.renderer.nextSibling(r);or(n,2,o,i,void 0)}function wr(e){or(e,3,null,null,void 0)}function Cr(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function Er(e,t){t>=e.length-1?e.pop():e.splice(t,1)}var xr=new Object;function Sr(e,t,n,r,o,i){return new Ar(e,t,n,r,o,i)}var Ar=function(e){function t(t,n,r,o,i,a){var u=e.call(this)||this;return u.selector=t,u.componentType=n,u._inputs=o,u._outputs=i,u.ngContentSelectors=a,u.viewDefFactory=r,u}return o(t,e),Object.defineProperty(t.prototype,"inputs",{get:function(){var e=[],t=this._inputs;for(var n in t)e.push({propName:n,templateName:t[n]});return e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"outputs",{get:function(){var e=[];for(var t in this._outputs)e.push({propName:t,templateName:this._outputs[t]});return e},enumerable:!0,configurable:!0}),t.prototype.create=function(e,t,n,r){if(!r)throw new Error("ngModule should be provided");var o=rr(this.viewDefFactory),i=o.nodes[0].element.componentProvider.nodeIndex,a=Pn.createRootView(e,t||[],n,o,r,xr),u=kn(a,i).instance;return n&&a.renderer.setAttribute(On(a,0).renderElement,"ng-version",en.full),new Tr(a,new Vr(a),u)},t}(jt),Tr=function(e){function t(t,n,r){var o=e.call(this)||this;return o._view=t,o._viewRef=n,o._component=r,o._elDef=o._view.def.nodes[0],o.hostView=n,o.changeDetectorRef=n,o.instance=r,o}return o(t,e),Object.defineProperty(t.prototype,"location",{get:function(){return new Qt(On(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new Mr(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentType",{get:function(){return this._component.constructor},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){this._viewRef.destroy()},t.prototype.onDestroy=function(e){this._viewRef.onDestroy(e)},t}(Rt);function Ir(e,t,n){return new Or(e,t,n)}var Or=function(){function e(e,t,n){this._view=e,this._elDef=t,this._data=n,this._embeddedViews=[]}return Object.defineProperty(e.prototype,"element",{get:function(){return new Qt(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new Mr(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentInjector",{get:function(){for(var e=this._view,t=this._elDef.parent;!t&&e;)t=qn(e),e=e.parent;return e?new Mr(e,t):new Mr(this._view,null)},enumerable:!0,configurable:!0}),e.prototype.clear=function(){for(var e=this._embeddedViews.length-1;e>=0;e--){var t=br(this._data,e);Pn.destroyView(t)}},e.prototype.get=function(e){var t=this._embeddedViews[e];if(t){var n=new Vr(t);return n.attachToViewContainerRef(this),n}return null},Object.defineProperty(e.prototype,"length",{get:function(){return this._embeddedViews.length},enumerable:!0,configurable:!0}),e.prototype.createEmbeddedView=function(e,t,n){var r=e.createEmbeddedView(t||{});return this.insert(r,n),r},e.prototype.createComponent=function(e,t,n,r,o){var i=n||this.parentInjector;o||e instanceof zt||(o=i.get(Gt));var a=e.create(i,r,void 0,o);return this.insert(a.hostView,t),a},e.prototype.insert=function(e,t){if(e.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n,r,o,i,a=e;return i=(n=this._data).viewContainer._embeddedViews,null==(r=t)&&(r=i.length),(o=a._view).viewContainerParent=this._view,Cr(i,r,o),function(e,t){var n=Qn(t);if(n&&n!==e&&!(16&t.state)){t.state|=16;var r=n.template._projectedViews;r||(r=n.template._projectedViews=[]),r.push(t),function(e,n){if(!(4&n.flags)){t.parent.def.nodeFlags|=4,n.flags|=4;for(var r=n.parent;r;)r.childFlags|=4,r=r.parent}}(0,t.parentNodeDef)}}(n,o),Pn.dirtyParentQueries(o),_r(n,r>0?i[r-1]:null,o),a.attachToViewContainerRef(this),e},e.prototype.move=function(e,t){if(e.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");var n,r,o,i,a,u=this._embeddedViews.indexOf(e._view);return o=t,a=(i=(n=this._data).viewContainer._embeddedViews)[r=u],Er(i,r),null==o&&(o=i.length),Cr(i,o,a),Pn.dirtyParentQueries(a),wr(a),_r(n,o>0?i[o-1]:null,a),e},e.prototype.indexOf=function(e){return this._embeddedViews.indexOf(e._view)},e.prototype.remove=function(e){var t=br(this._data,e);t&&Pn.destroyView(t)},e.prototype.detach=function(e){var t=br(this._data,e);return t?new Vr(t):null},e}();function kr(e){return new Vr(e)}var Vr=function(){function e(e){this._view=e,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(e.prototype,"rootNodes",{get:function(){return or(this._view,0,void 0,void 0,e=[]),e;var e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"context",{get:function(){return this._view.context},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"destroyed",{get:function(){return 0!=(128&this._view.state)},enumerable:!0,configurable:!0}),e.prototype.markForCheck=function(){Gn(this._view)},e.prototype.detach=function(){this._view.state&=-5},e.prototype.detectChanges=function(){var e=this._view.root.rendererFactory;e.begin&&e.begin();try{Pn.checkAndUpdateView(this._view)}finally{e.end&&e.end()}},e.prototype.checkNoChanges=function(){Pn.checkNoChangesView(this._view)},e.prototype.reattach=function(){this._view.state|=4},e.prototype.onDestroy=function(e){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(e)},e.prototype.destroy=function(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Pn.destroyView(this._view)},e.prototype.detachFromAppRef=function(){this._appRef=null,wr(this._view),Pn.dirtyParentQueries(this._view)},e.prototype.attachToAppRef=function(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e},e.prototype.attachToViewContainerRef=function(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e},e}();function Nr(e,t){return new Pr(e,t)}var Pr=function(e){function t(t,n){var r=e.call(this)||this;return r._parentView=t,r._def=n,r}return o(t,e),t.prototype.createEmbeddedView=function(e){return new Vr(Pn.createEmbeddedView(this._parentView,this._def,this._def.element.template,e))},Object.defineProperty(t.prototype,"elementRef",{get:function(){return new Qt(On(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),t}(bn);function Dr(e,t){return new Mr(e,t)}var Mr=function(){function e(e,t){this.view=e,this.elDef=t}return e.prototype.get=function(e,t){return void 0===t&&(t=Ie.THROW_IF_NOT_FOUND),Pn.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:e,tokenKey:Rn(e)},t)},e}();function Rr(e,t){var n=e.def.nodes[t];if(1&n.flags){var r=On(e,n.nodeIndex);return n.element.template?r.template:r.renderElement}if(2&n.flags)return In(e,n.nodeIndex).renderText;if(20240&n.flags)return kn(e,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+t)}function jr(e){return new Fr(e.renderer)}var Fr=function(){function e(e){this.delegate=e}return e.prototype.selectRootElement=function(e){return this.delegate.selectRootElement(e)},e.prototype.createElement=function(e,t){var n=l(cr(t),2),r=this.delegate.createElement(n[1],n[0]);return e&&this.delegate.appendChild(e,r),r},e.prototype.createViewRoot=function(e){return e},e.prototype.createTemplateAnchor=function(e){var t=this.delegate.createComment("");return e&&this.delegate.appendChild(e,t),t},e.prototype.createText=function(e,t){var n=this.delegate.createText(t);return e&&this.delegate.appendChild(e,n),n},e.prototype.projectNodes=function(e,t){for(var n=0;n0,t.provider.value,t.provider.deps);if(t.outputs.length)for(var r=0;r0,r=t.provider;switch(201347067&t.flags){case 512:return ro(e,t.parent,n,r.value,r.deps);case 1024:return function(e,t,n,r,o){var i=o.length;switch(i){case 0:return r();case 1:return r(io(e,t,n,o[0]));case 2:return r(io(e,t,n,o[0]),io(e,t,n,o[1]));case 3:return r(io(e,t,n,o[0]),io(e,t,n,o[1]),io(e,t,n,o[2]));default:for(var a=Array(i),u=0;u0&&(o=setTimeout(function(){r._callbacks=r._callbacks.filter(function(e){return e.timeoutId!==o}),e(r._didWork,r.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:o,updateCb:n})},e.prototype.whenStable=function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()},e.prototype.getPendingRequestCount=function(){return this._pendingCount},e.prototype.findProviders=function(e,t,n){return[]},e}(),Jo=function(){function e(){this._applications=new Map,Yo.addToWindow(this)}return e.prototype.registerApplication=function(e,t){this._applications.set(e,t)},e.prototype.unregisterApplication=function(e){this._applications.delete(e)},e.prototype.unregisterAllApplications=function(){this._applications.clear()},e.prototype.getTestability=function(e){return this._applications.get(e)||null},e.prototype.getAllTestabilities=function(){return Array.from(this._applications.values())},e.prototype.getAllRootElements=function(){return Array.from(this._applications.keys())},e.prototype.findTestabilityInTree=function(e,t){return void 0===t&&(t=!0),Yo.findTestabilityInTree(this,e,t)},a([u("design:paramtypes",[])],e)}(),Yo=new(function(){function e(){}return e.prototype.addToWindow=function(e){},e.prototype.findTestabilityInTree=function(e,t,n){return null},e}()),Ko=new Ee("AllowMultipleToken"),Xo=function(){return function(e,t){this.name=e,this.token=t}}();function $o(e,t,n){void 0===n&&(n=[]);var r="Platform: "+t,o=new Ee(r);return function(t){void 0===t&&(t=[]);var i=ei();if(!i||i.injector.get(Ko,!1))if(e)e(n.concat(t).concat({provide:o,useValue:!0}));else{var a=n.concat(t).concat({provide:o,useValue:!0});!function(e){if(Wo&&!Wo.destroyed&&!Wo.injector.get(Ko,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wo=e.get(ti);var t=e.get(_o,null);t&&t.forEach(function(e){return e()})}(Ie.create({providers:a,name:r}))}return function(e){var t=ei();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(o)}}function ei(){return Wo&&!Wo.destroyed?Wo:null}var ti=function(){function e(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return e.prototype.bootstrapModuleFactory=function(e,t){var n,r=this,o="noop"===(n=t?t.ngZone:void 0)?new Qo:("zone.js"===n?void 0:n)||new Lo({enableLongStackTrace:Ke()}),i=[{provide:Lo,useValue:o}];return o.run(function(){var t=Ie.create({providers:i,parent:r.injector,name:e.moduleType.name}),n=e.create(t),a=n.injector.get(qe,null);if(!a)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.onDestroy(function(){return oi(r._modules,n)}),o.runOutsideAngular(function(){return o.onError.subscribe({next:function(e){a.handleError(e)}})}),function(e,t,o){try{var i=((a=n.injector.get(go)).runInitializers(),a.donePromise.then(function(){return r._moduleDoBootstrap(n),n}));return St(i)?i.catch(function(n){throw t.runOutsideAngular(function(){return e.handleError(n)}),n}):i}catch(u){throw t.runOutsideAngular(function(){return e.handleError(u)}),u}var a}(a,o)})},e.prototype.bootstrapModule=function(e,t){var n=this;void 0===t&&(t=[]);var r=ni({},t);return function(e,t,n){return e.get(No).createCompiler([t]).compileModuleAsync(n)}(this.injector,r,e).then(function(e){return n.bootstrapModuleFactory(e,r)})},e.prototype._moduleDoBootstrap=function(e){var t=e.injector.get(ri);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(function(e){return t.bootstrap(e)});else{if(!e.instance.ngDoBootstrap)throw new Error("The module "+he(e.instance.constructor)+' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.');e.instance.ngDoBootstrap(t)}this._modules.push(e)},e.prototype.onDestroy=function(e){this._destroyListeners.push(e)},Object.defineProperty(e.prototype,"injector",{get:function(){return this._injector},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(e){return e.destroy()}),this._destroyListeners.forEach(function(e){return e()}),this._destroyed=!0},Object.defineProperty(e.prototype,"destroyed",{get:function(){return this._destroyed},enumerable:!0,configurable:!0}),e}();function ni(e,t){return Array.isArray(t)?t.reduce(ni,e):i({},e,t)}var ri=function(){function e(e,t,n,r,o,i){var a=this;this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=o,this._initStatus=i,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Ke(),this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run(function(){a.tick()})}});var u=new A(function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular(function(){e.next(a._stable),e.complete()})}),s=new A(function(e){var t;a._zone.runOutsideAngular(function(){t=a._zone.onStable.subscribe(function(){Lo.assertNotInAngularZone(),Ho(function(){a._stable||a._zone.hasPendingMacrotasks||a._zone.hasPendingMicrotasks||(a._stable=!0,e.next(!0))})})});var n=a._zone.onUnstable.subscribe(function(){Lo.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular(function(){e.next(!1)}))});return function(){t.unsubscribe(),n.unsubscribe()}});this.isStable=function(){for(var e=[],t=0;t1&&"number"==typeof e[e.length-1]&&(r=e.pop())):"number"==typeof i&&(r=e.pop()),null===o&&1===e.length&&e[0]instanceof A?e[0]:function(e){return void 0===e&&(e=Number.POSITIVE_INFINITY),function e(t,n,r){return void 0===r&&(r=Number.POSITIVE_INFINITY),"function"==typeof n?function(o){return o.pipe(e(function(e,r){return W(t(e,r)).pipe(B(function(t,o){return n(e,t,r,o)}))},r))}:("number"==typeof n&&(r=n),function(e){return e.lift(new Q(t,r))})}(J,e)}(r)(function(e,t){return t?Z(e,t):new A(M(e))}(e,o))}(u,s.pipe(function(e){return Y()((t=ne,function(e){var n;n="function"==typeof t?t:function(){return t};var r=Object.create(e,ee);return r.source=e,r.subjectFactory=n,r})(e));var t}))}var t;return t=e,e.prototype.bootstrap=function(e,t){var n,r=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=e instanceof jt?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var o=n instanceof zt?null:this._injector.get(Gt),i=n.create(Ie.NULL,[],t||n.selector,o);i.onDestroy(function(){r._unloadComponent(i)});var a=i.injector.get(qo,null);return a&&i.injector.get(Jo).registerApplication(i.location.nativeElement,a),this._loadComponent(i),Ke()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),i},e.prototype.tick=function(){var e,n,r,o,i=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var a=t._tickScope();try{this._runningTick=!0;try{for(var u=s(this._views),l=u.next();!l.done;l=u.next())l.value.detectChanges()}catch(p){e={error:p}}finally{try{l&&!l.done&&(n=u.return)&&n.call(u)}finally{if(e)throw e.error}}if(this._enforceNoNewChanges)try{for(var c=s(this._views),d=c.next();!d.done;d=c.next())d.value.checkNoChanges()}catch(f){r={error:f}}finally{try{d&&!d.done&&(o=c.return)&&o.call(c)}finally{if(r)throw r.error}}}catch(h){this._zone.runOutsideAngular(function(){return i._exceptionHandler.handleError(h)})}finally{this._runningTick=!1,jo(a)}},e.prototype.attachView=function(e){var t=e;this._views.push(t),t.attachToAppRef(this)},e.prototype.detachView=function(e){var t=e;oi(this._views,t),t.detachFromAppRef()},e.prototype._loadComponent=function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Co,[]).concat(this._bootstrapListeners).forEach(function(t){return t(e)})},e.prototype._unloadComponent=function(e){this.detachView(e.hostView),oi(this.components,e)},e.prototype.ngOnDestroy=function(){this._views.slice().forEach(function(e){return e.destroy()})},Object.defineProperty(e.prototype,"viewCount",{get:function(){return this._views.length},enumerable:!0,configurable:!0}),e._tickScope=Ro("ApplicationRef#tick()"),e}();function oi(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var ii=function(){return function(e,t){this.name=e,this.callback=t}}(),ai=function(){function e(e,t,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=e,t&&t instanceof ui&&t.addChild(this)}return Object.defineProperty(e.prototype,"injector",{get:function(){return this._debugContext.injector},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentInstance",{get:function(){return this._debugContext.component},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"context",{get:function(){return this._debugContext.context},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"references",{get:function(){return this._debugContext.references},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"providerTokens",{get:function(){return this._debugContext.providerTokens},enumerable:!0,configurable:!0}),e}(),ui=function(e){function t(t,n,r){var o=e.call(this,t,n,r)||this;return o.properties={},o.attributes={},o.classes={},o.styles={},o.childNodes=[],o.nativeElement=t,o}return o(t,e),t.prototype.addChild=function(e){e&&(this.childNodes.push(e),e.parent=this)},t.prototype.removeChild=function(e){var t=this.childNodes.indexOf(e);-1!==t&&(e.parent=null,this.childNodes.splice(t,1))},t.prototype.insertChildrenAfter=function(e,t){var n,r=this,o=this.childNodes.indexOf(e);-1!==o&&((n=this.childNodes).splice.apply(n,c([o+1,0],t)),t.forEach(function(t){t.parent&&t.parent.removeChild(t),e.parent=r}))},t.prototype.insertBefore=function(e,t){var n=this.childNodes.indexOf(e);-1===n?this.addChild(t):(t.parent&&t.parent.removeChild(t),t.parent=this,this.childNodes.splice(n,0,t))},t.prototype.query=function(e){return this.queryAll(e)[0]||null},t.prototype.queryAll=function(e){var t=[];return function e(t,n,r){t.childNodes.forEach(function(t){t instanceof ui&&(n(t)&&r.push(t),e(t,n,r))})}(this,e,t),t},t.prototype.queryAllNodes=function(e){var t=[];return function e(t,n,r){t instanceof ui&&t.childNodes.forEach(function(t){n(t)&&r.push(t),t instanceof ui&&e(t,n,r)})}(this,e,t),t},Object.defineProperty(t.prototype,"children",{get:function(){return this.childNodes.filter(function(e){return e instanceof t})},enumerable:!0,configurable:!0}),t.prototype.triggerEventHandler=function(e,t){this.listeners.forEach(function(n){n.name==e&&n.callback(t)})},t}(ai),si=new Map,li=function(e){return si.get(e)||null};function ci(e){si.set(e.nativeNode,e)}var di=$o(null,"core",[{provide:wo,useValue:"unknown"},{provide:ti,deps:[Ie]},{provide:Jo,deps:[]},{provide:Eo,deps:[]}]),pi=new Ee("LocaleId");function fi(){return vn}function hi(){return mn}function yi(e){return e||"en-US"}function gi(e){var t=[];return e.onStable.subscribe(function(){for(;t.length;)t.pop()()}),function(e){t.push(e)}}var vi=function(){return function(e){}}();function mi(e,t,n,r,o,i){e|=1;var a=$n(t);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:e,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:a.matchedQueries,matchedQueryIds:a.matchedQueryIds,references:a.references,ngContentIndex:n,childCount:r,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?rr(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:o||Dn},provider:null,text:null,query:null,ngContent:null}}function bi(e,t,n,r,o,i,a,u,s,c,d,p){var f;void 0===a&&(a=[]),c||(c=Dn);var h=$n(n),y=h.matchedQueries,g=h.references,v=h.matchedQueryIds,m=null,b=null;i&&(m=(f=l(cr(i),2))[0],b=f[1]),u=u||[];for(var _=new Array(u.length),w=0;w0)l=y,Di(y)||(c=y);else for(;l&&h===l.nodeIndex+l.childCount;){var m=l.parent;m&&(m.childFlags|=l.childFlags,m.childMatchedQueries|=l.childMatchedQueries),c=(l=m)&&Di(l)?l.renderParent:l}}return{factory:null,nodeFlags:a,rootNodeFlags:u,nodeMatchedQueries:s,flags:e,nodes:t,updateDirectives:n||Dn,updateRenderer:r||Dn,handleEvent:function(e,n,r,o){return t[n].element.handleEvent(e,r,o)},bindingCount:o,outputCount:i,lastRenderRootNode:f}}function Di(e){return 0!=(1&e.flags)&&null===e.element.name}function Mi(e,t,n){var r=t.element&&t.element.template;if(r){if(!r.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(r.lastRenderRootNode&&16777216&r.lastRenderRootNode.flags)throw new Error("Illegal State: Last root node of a template can't have embedded views, at index "+t.nodeIndex+"!")}if(20224&t.flags&&0==(1&(e?e.flags:0)))throw new Error("Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index "+t.nodeIndex+"!");if(t.query){if(67108864&t.flags&&(!e||0==(16384&e.flags)))throw new Error("Illegal State: Content Query nodes need to be children of directives, at index "+t.nodeIndex+"!");if(134217728&t.flags&&e)throw new Error("Illegal State: View Query nodes have to be top level nodes, at index "+t.nodeIndex+"!")}if(t.childCount){var o=e?e.nodeIndex+e.childCount:n-1;if(t.nodeIndex<=o&&t.nodeIndex+t.childCount>o)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+t.nodeIndex+"!")}}function Ri(e,t,n,r){var o=Hi(e.root,e.renderer,e,t,n);return Li(o,e.component,r),Ui(o),o}function ji(e,t,n){var r=Hi(e,e.renderer,null,null,t);return Li(r,n,n),Ui(r),r}function Fi(e,t,n,r){var o,i=t.element.componentRendererType;return o=i?e.root.rendererFactory.createRenderer(r,i):e.root.renderer,Hi(e.root,o,e,t.element.componentProvider,n)}function Hi(e,t,n,r,o){var i=new Array(o.nodes.length),a=o.outputCount?new Array(o.outputCount):null;return{def:o,parent:n,viewContainerParent:null,parentNodeDef:r,context:null,component:null,nodes:i,state:13,root:e,renderer:t,oldValues:new Array(o.bindingCount),disposables:a,initIndex:-1}}function Li(e,t,n){e.component=t,e.context=n}function Ui(e){var t;Yn(e)&&(t=On(e.parent,e.parentNodeDef.parent.nodeIndex).renderElement);for(var n=e.def,r=e.nodes,o=0;o0&&Ei(e,t,0,n)&&(f=!0),p>1&&Ei(e,t,1,r)&&(f=!0),p>2&&Ei(e,t,2,o)&&(f=!0),p>3&&Ei(e,t,3,i)&&(f=!0),p>4&&Ei(e,t,4,a)&&(f=!0),p>5&&Ei(e,t,5,u)&&(f=!0),p>6&&Ei(e,t,6,s)&&(f=!0),p>7&&Ei(e,t,7,l)&&(f=!0),p>8&&Ei(e,t,8,c)&&(f=!0),p>9&&Ei(e,t,9,d)&&(f=!0),f}(e,t,n,r,o,i,a,u,s,l,c,d);case 2:return function(e,t,n,r,o,i,a,u,s,l,c,d){var p=!1,f=t.bindings,h=f.length;if(h>0&&Bn(e,t,0,n)&&(p=!0),h>1&&Bn(e,t,1,r)&&(p=!0),h>2&&Bn(e,t,2,o)&&(p=!0),h>3&&Bn(e,t,3,i)&&(p=!0),h>4&&Bn(e,t,4,a)&&(p=!0),h>5&&Bn(e,t,5,u)&&(p=!0),h>6&&Bn(e,t,6,s)&&(p=!0),h>7&&Bn(e,t,7,l)&&(p=!0),h>8&&Bn(e,t,8,c)&&(p=!0),h>9&&Bn(e,t,9,d)&&(p=!0),p){var y=t.text.prefix;h>0&&(y+=Ni(n,f[0])),h>1&&(y+=Ni(r,f[1])),h>2&&(y+=Ni(o,f[2])),h>3&&(y+=Ni(i,f[3])),h>4&&(y+=Ni(a,f[4])),h>5&&(y+=Ni(u,f[5])),h>6&&(y+=Ni(s,f[6])),h>7&&(y+=Ni(l,f[7])),h>8&&(y+=Ni(c,f[8])),h>9&&(y+=Ni(d,f[9]));var g=In(e,t.nodeIndex).renderText;e.renderer.setValue(g,y)}return p}(e,t,n,r,o,i,a,u,s,l,c,d);case 16384:return function(e,t,n,r,o,i,a,u,s,l,c,d){var p=kn(e,t.nodeIndex),f=p.instance,h=!1,y=void 0,g=t.bindings.length;return g>0&&Un(e,t,0,n)&&(h=!0,y=uo(e,p,t,0,n,y)),g>1&&Un(e,t,1,r)&&(h=!0,y=uo(e,p,t,1,r,y)),g>2&&Un(e,t,2,o)&&(h=!0,y=uo(e,p,t,2,o,y)),g>3&&Un(e,t,3,i)&&(h=!0,y=uo(e,p,t,3,i,y)),g>4&&Un(e,t,4,a)&&(h=!0,y=uo(e,p,t,4,a,y)),g>5&&Un(e,t,5,u)&&(h=!0,y=uo(e,p,t,5,u,y)),g>6&&Un(e,t,6,s)&&(h=!0,y=uo(e,p,t,6,s,y)),g>7&&Un(e,t,7,l)&&(h=!0,y=uo(e,p,t,7,l,y)),g>8&&Un(e,t,8,c)&&(h=!0,y=uo(e,p,t,8,c,y)),g>9&&Un(e,t,9,d)&&(h=!0,y=uo(e,p,t,9,d,y)),y&&f.ngOnChanges(y),65536&t.flags&&Tn(e,256,t.nodeIndex)&&f.ngOnInit(),262144&t.flags&&f.ngDoCheck(),h}(e,t,n,r,o,i,a,u,s,l,c,d);case 32:case 64:case 128:return function(e,t,n,r,o,i,a,u,s,l,c,d){var p=t.bindings,f=!1,h=p.length;if(h>0&&Bn(e,t,0,n)&&(f=!0),h>1&&Bn(e,t,1,r)&&(f=!0),h>2&&Bn(e,t,2,o)&&(f=!0),h>3&&Bn(e,t,3,i)&&(f=!0),h>4&&Bn(e,t,4,a)&&(f=!0),h>5&&Bn(e,t,5,u)&&(f=!0),h>6&&Bn(e,t,6,s)&&(f=!0),h>7&&Bn(e,t,7,l)&&(f=!0),h>8&&Bn(e,t,8,c)&&(f=!0),h>9&&Bn(e,t,9,d)&&(f=!0),f){var y=Vn(e,t.nodeIndex),g=void 0;switch(201347067&t.flags){case 32:g=new Array(p.length),h>0&&(g[0]=n),h>1&&(g[1]=r),h>2&&(g[2]=o),h>3&&(g[3]=i),h>4&&(g[4]=a),h>5&&(g[5]=u),h>6&&(g[6]=s),h>7&&(g[7]=l),h>8&&(g[8]=c),h>9&&(g[9]=d);break;case 64:g={},h>0&&(g[p[0].name]=n),h>1&&(g[p[1].name]=r),h>2&&(g[p[2].name]=o),h>3&&(g[p[3].name]=i),h>4&&(g[p[4].name]=a),h>5&&(g[p[5].name]=u),h>6&&(g[p[6].name]=s),h>7&&(g[p[7].name]=l),h>8&&(g[p[8].name]=c),h>9&&(g[p[9].name]=d);break;case 128:var v=n;switch(h){case 1:g=v.transform(n);break;case 2:g=v.transform(r);break;case 3:g=v.transform(r,o);break;case 4:g=v.transform(r,o,i);break;case 5:g=v.transform(r,o,i,a);break;case 6:g=v.transform(r,o,i,a,u);break;case 7:g=v.transform(r,o,i,a,u,s);break;case 8:g=v.transform(r,o,i,a,u,s,l);break;case 9:g=v.transform(r,o,i,a,u,s,l,c);break;case 10:g=v.transform(r,o,i,a,u,s,l,c,d)}}y.value=g}return f}(e,t,n,r,o,i,a,u,s,l,c,d);default:throw"unreachable"}}(e,t,r,o,i,a,u,s,l,d,p,f):function(e,t,n){switch(201347067&t.flags){case 1:return function(e,t,n){for(var r=!1,o=0;o0&&zn(e,t,0,n),p>1&&zn(e,t,1,r),p>2&&zn(e,t,2,o),p>3&&zn(e,t,3,i),p>4&&zn(e,t,4,a),p>5&&zn(e,t,5,u),p>6&&zn(e,t,6,s),p>7&&zn(e,t,7,l),p>8&&zn(e,t,8,c),p>9&&zn(e,t,9,d)}(e,t,r,o,i,a,u,s,l,c,d,p):function(e,t,n){for(var r=0;r0){var i=new Set(e.modules);la.forEach(function(t,r){if(i.has(pe(r).providedIn)){var o={token:r,flags:t.flags|(n?4096:0),deps:er(t.deps),value:t.value,index:e.providers.length};e.providers.push(o),e.providersByKey[Rn(r)]=o}})}}(e=e.factory(function(){return Dn})),e):e}(r))}var sa=new Map,la=new Map,ca=new Map;function da(e){var t;sa.set(e.token,e),"function"==typeof e.token&&(t=pe(e.token))&&"function"==typeof t.providedIn&&la.set(e.token,e)}function pa(e,t){var n=rr(t.viewDefFactory),r=rr(n.nodes[0].element.componentView);ca.set(e,r)}function fa(){sa.clear(),la.clear(),ca.clear()}function ha(e){if(0===sa.size)return e;var t=function(e){for(var t=[],n=null,r=0;r1})},e.prototype.triggerSnapshot=function(){this.trigger.next()},e.prototype.toggleWebcam=function(){this.showWebcam=!this.showWebcam},e.prototype.handleInitError=function(e){this.errors.push(e)},e.prototype.showNextWebcam=function(e){this.nextWebcam.next(e)},e.prototype.handleImage=function(e){console.log("received webcam image",e),this.webcamImage=e},e.prototype.cameraWasSwitched=function(e){console.log("active device: "+e),this.deviceId=e},Object.defineProperty(e.prototype,"triggerObservable",{get:function(){return this.trigger.asObservable()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nextWebcamObservable",{get:function(){return this.nextWebcam.asObservable()},enumerable:!0,configurable:!0}),e}(),za=function(){return function(){}}(),Ga=void 0,Za=["en",[["a","p"],["AM","PM"],Ga],[["AM","PM"],Ga,Ga],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Ga,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Ga,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Ga,"{1} 'at' {0}",Ga],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Wa={},Qa=function(e){return e[e.Zero=0]="Zero",e[e.One=1]="One",e[e.Two=2]="Two",e[e.Few=3]="Few",e[e.Many=4]="Many",e[e.Other=5]="Other",e}({}),qa=new Ee("UseV4Plurals"),Ja=function(){return function(){}}(),Ya=function(e){function t(t,n){var r=e.call(this)||this;return r.locale=t,r.deprecatedPluralFn=n,r}return o(t,e),t.prototype.getPluralCategory=function(e,t){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(t||this.locale,e):function(e){return function(e){var t=e.toLowerCase().replace(/_/g,"-"),n=Wa[t];if(n)return n;var r=t.split("-")[0];if(n=Wa[r])return n;if("en"===r)return Za;throw new Error('Missing locale data for the locale "'+e+'".')}(e)[18]}(t||this.locale)(e)){case Qa.Zero:return"zero";case Qa.One:return"one";case Qa.Two:return"two";case Qa.Few:return"few";case Qa.Many:return"many";default:return"other"}},t}(Ja),Ka=function(){function e(e,t,n,r){this.$implicit=e,this.ngForOf=t,this.index=n,this.count=r}return Object.defineProperty(e.prototype,"first",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"last",{get:function(){return this.index===this.count-1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"even",{get:function(){return this.index%2==0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"odd",{get:function(){return!this.even},enumerable:!0,configurable:!0}),e}(),Xa=function(){function e(e,t,n){this._viewContainer=e,this._template=t,this._differs=n,this._ngForOfDirty=!0,this._differ=null}return Object.defineProperty(e.prototype,"ngForOf",{set:function(e){this._ngForOf=e,this._ngForOfDirty=!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ngForTrackBy",{get:function(){return this._trackByFn},set:function(e){Ke()&&null!=e&&"function"!=typeof e&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(e)+". See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information."),this._trackByFn=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"ngForTemplate",{set:function(e){e&&(this._template=e)},enumerable:!0,configurable:!0}),e.prototype.ngDoCheck=function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(r){throw new Error("Cannot find a differ supporting object '"+e+"' of type '"+((t=e).name||typeof t)+"'. NgFor only supports binding to Iterables such as Arrays.")}}var t;if(this._differ){var n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}},e.prototype._applyChanges=function(e){var t=this,n=[];e.forEachOperation(function(e,r,o){if(null==e.previousIndex){var i=t._viewContainer.createEmbeddedView(t._template,new Ka(null,t._ngForOf,-1,-1),o),a=new $a(e,i);n.push(a)}else null==o?t._viewContainer.remove(r):(i=t._viewContainer.get(r),t._viewContainer.move(i,o),a=new $a(e,i),n.push(a))});for(var r=0;r0)return String(e[0]);if("object"==typeof e){if(e.exact)return String(e.exact);if(e.ideal)return String(e.ideal)}}return null},e.prototype.ngAfterViewInit=function(){var e=this;this.detectAvailableDevices().then(function(t){e.switchToVideoInput(t.length>0?t[0].deviceId:null)}).catch(function(t){e.initError.next({message:t}),e.switchToVideoInput(null)})},e.prototype.ngOnDestroy=function(){this.stopMediaTracks(),this.unsubscribeFromSubscriptions()},e.prototype.takeSnapshot=function(){var t=this.nativeVideoElement,n={width:this.width,height:this.height};t.videoWidth&&(n.width=t.videoWidth,n.height=t.videoHeight);var r=this.canvas.nativeElement;r.width=n.width,r.height=n.height;var o=r.getContext("2d");o.drawImage(t,0,0);var i=this.imageType?this.imageType:e.DEFAULT_IMAGE_TYPE,a=r.toDataURL(i,this.imageQuality?this.imageQuality:e.DEFAULT_IMAGE_QUALITY),u=null;this.captureImageData&&(u=o.getImageData(0,0,r.width,r.height)),this.imageCapture.next(new uu(a,i,u))},e.prototype.rotateVideoInput=function(e){this.availableVideoInputs&&this.availableVideoInputs.length>1&&this.switchToVideoInput(this.availableVideoInputs[(this.activeVideoInputIndex+(e?1:this.availableVideoInputs.length-1))%this.availableVideoInputs.length].deviceId)},e.prototype.switchToVideoInput=function(e){this.videoInitialized=!1,this.stopMediaTracks(),this.initWebcam(e,this.videoOptions)},e.prototype.videoResize=function(){},Object.defineProperty(e.prototype,"videoWidth",{get:function(){var e=this.getVideoAspectRatio();return Math.min(this.width,this.height*e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"videoHeight",{get:function(){var e=this.getVideoAspectRatio();return Math.min(this.height,this.width/e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"videoStyleClasses",{get:function(){var e="";return this.isMirrorImage()&&(e+="mirrored "),e.trim()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nativeVideoElement",{get:function(){return this.video.nativeElement},enumerable:!0,configurable:!0}),e.prototype.getVideoAspectRatio=function(){var e=this.nativeVideoElement;return e.videoWidth&&e.videoWidth>0&&e.videoHeight&&e.videoHeight>0?e.videoWidth/e.videoHeight:this.width/this.height},e.prototype.initWebcam=function(t,n){var r=this,o=this.nativeVideoElement;if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){var i=e.getMediaConstraintsForDevice(t,n);navigator.mediaDevices.getUserMedia({video:i}).then(function(t){r.mediaStream=t,o.srcObject=t,o.play(),r.activeVideoSettings=t.getVideoTracks()[0].getSettings();var n=e.getDeviceIdFromMediaStreamTrack(t.getVideoTracks()[0]);r.activeVideoInputIndex=n?r.availableVideoInputs.findIndex(function(e){return e.deviceId===n}):-1,r.videoInitialized=!0,r.cameraSwitched.next(n),r.detectAvailableDevices()}).catch(function(e){r.initError.next({message:e.message,mediaStreamError:e})})}else this.initError.next({message:"Cannot read UserMedia from MediaDevices."})},e.prototype.getActiveVideoTrack=function(){return this.mediaStream?this.mediaStream.getVideoTracks()[0]:null},e.prototype.isMirrorImage=function(){if(!this.getActiveVideoTrack())return!1;var t="auto";switch(this.mirrorImage&&("string"==typeof this.mirrorImage?t=String(this.mirrorImage).toLowerCase():this.mirrorImage.x&&(t=this.mirrorImage.x.toLowerCase())),t){case"always":return!0;case"never":return!1}return e.isUserFacing(this.getActiveVideoTrack())},e.prototype.stopMediaTracks=function(){this.mediaStream&&this.mediaStream.getTracks&&this.mediaStream.getTracks().forEach(function(e){return e.stop()})},e.prototype.unsubscribeFromSubscriptions=function(){this.triggerSubscription&&this.triggerSubscription.unsubscribe(),this.switchCameraSubscription&&this.switchCameraSubscription.unsubscribe()},e.prototype.detectAvailableDevices=function(){var e=this;return new Promise(function(t,n){Ua.getAvailableVideoInputs().then(function(n){e.availableVideoInputs=n,t(n)}).catch(function(t){e.availableVideoInputs=[],n(t)})})},e.DEFAULT_VIDEO_OPTIONS={facingMode:"environment"},e.DEFAULT_IMAGE_TYPE="image/jpeg",e.DEFAULT_IMAGE_QUALITY=.92,e}(),lu=Hn({encapsulation:0,styles:[[".webcam-wrapper[_ngcontent-%COMP%]{display:inline-block;position:relative;line-height:0}.webcam-wrapper[_ngcontent-%COMP%] video.mirrored[_ngcontent-%COMP%]{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.webcam-wrapper[_ngcontent-%COMP%] canvas[_ngcontent-%COMP%]{display:none}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]{background-color:rgba(0,0,0,.1);background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAE9UlEQVR42u2aT2hdRRTGf+cRQqghSqihdBFDkRISK2KDfzDWxHaRQHEhaINKqa1gKQhd6EZLN+IidCH+Q0oWIkVRC21BQxXRitVaSbKoJSGtYGoK2tQ/tU1jY5v0c5F54Xl7b/KSO/PyEt+3e5f75p7zzZwzZ74zUEIJJfyfYaEGllQGVAGZlENdBy6Z2cSiYFTSKkkfS/pH/nBF0kFJdUW9AiRVASeAukD8DgNrzOySrwEzng18KaDzALXuG8W3AiStAvqBisBRNg40mtlPxbYCOgvgPO4bncWW+JpVeDQXRQhIygDfA00F5r0XuNfMrgclQFI98DDQCNQA5ZFXqoCWBVp8XwHRHeEqcN7loy/NbHBesyqpQ1KfFj/6nC+ZvFaApFrgPaCZpYVvgCfNbDiRAElNwGFg+RIt/X8H2s2s9wYCJDUAR4HqJX7++RN40MwGpgmQVAH0AQ2BPz4AHHPl8nBOAqtyFWQjsA6oL4Ada81sPDv7uwImod8kvSJp9RyS8O2SXnb/DYVd2Y9VSroQ4ANXJO2WVJmixqh0kzMWwL4LkiqRtDnA4D1zmfE8j9g9AezcnAHaPcfXdbfdnPZ2Yps6+DwAvO/Z1naTdApY7Xng48BDZnY1MpMVQBuw3iXc5Tnb0wBwBPjUzP6eoezuArZ6svM0geJLkvZEYnl3nkntoqROSbckSW2Suj3ZOIangc7GPJuUtNGdFIfmMeavktoSSKiW9LMPw30Q8JqkekmjCbOZRhuclLQjgYSNxUBAj6RyZ9ATgUJpUtJTCSR8vpAEXHAyWK5BXYFIGHOlepSAloUk4NEYgyoknQhEwhFJ0e8h6VSaQeerCb5uZgdi9utxYBNwOUD93hIVXswM4INCi6K9wAszFC2DwLOBDjHbYp59karIUnRdzYy/3ClqVklaUhfwTICj7K25OqA7a4wWagVsm4Me/xzwg2cCqqONFzO7DPxSCAJi436GUBgHHguQD2oTlJ55oSzP9ybccsttSJw1szdjFOSnI/8dTCGZHwcORp4Nx7y3B1iZ8/sm4MW8/Euxg5wIsS/HaAp3zeP4/G7obRDXI4jiTIA22H7Xdc7X+S3A5lC7QBQ357aq3VAjCeSkwUfAJrfvz+R8A9ADLAtZB+TinpjC5JMA+//jwPZZnF8G7J+L8z4IWB/zbG+gIujVWfLBW/NStVMmqaG4POJRsIjix7h8IGnLQuoBbQki5sVAJHyYm7YkNaRRtXwQ8G1cHpX0iKRrgUjYno17Sf0LrQhJUkdCeHWkVITGJI0k1QeS3ikGSUzOyJUJJNznYneuOCnpTldcxa2kP3xJYqOeSDjqZG8ShJLnE8TTuMS6Iyu1BW7djZqkfo9N0QOuYJmYQddfB7RG+gLTNzqAY9FrL+5/nwEbvDdJJe3zzOrhNP3AWRqmk55t3ZcBuj3b2gb0Sbrbo/NNzk7fFzu7s/E5EiC+rrmeQU0Kx2skvRFoOx2ZzlmSdgbsw49JetvtBpk8nM64d/cGbNtJ0s7cGyJlwHeEv+t3nqnLSgPAUOSGyG3AHUxdzqoJbEcvcL+ZTeTeEapzJKxgaeOcc/7Mf06D7kFrguS0VDAMtGadv+E47DT9tcChJej8ISfpD+abgTe45uOkFi8mnQ+JBVQ+d4VXuOptjavcyot8pq86mfwk8LWZnaOEEkoooYQSSojDv8AhQNeGfe0jAAAAAElFTkSuQmCC);background-repeat:no-repeat;border-radius:5px;position:absolute;right:13px;top:10px;height:48px;width:48px;background-size:80%;cursor:pointer;background-position:center;transition:background-color .2s ease}.webcam-wrapper[_ngcontent-%COMP%] .camera-switch[_ngcontent-%COMP%]:hover{background-color:rgba(0,0,0,.18)}"]],data:{}});function cu(e){return Pi(0,[(e()(),bi(0,0,null,null,0,"div",[["class","camera-switch"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.rotateVideoInput(!0)&&r),r},null,null))],null,null)}function du(e){return Pi(0,[xi(402653184,1,{video:0}),xi(402653184,2,{canvas:0}),(e()(),bi(2,0,null,null,4,"div",[["class","webcam-wrapper"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.imageClick.next()&&r),r},null,null)),(e()(),bi(3,0,[[1,0],["video",1]],null,0,"video",[["autoplay",""],["muted",""],["playsinline",""]],[[8,"width",0],[8,"height",0],[8,"className",0]],[[null,"resize"]],function(e,t,n){var r=!0;return"resize"===t&&(r=!1!==e.component.videoResize()&&r),r},null,null)),(e()(),mi(16777216,null,null,1,null,cu)),Jr(5,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),bi(6,0,[[2,0],["canvas",1]],null,0,"canvas",[],[[8,"width",0],[8,"height",0]],null,null,null,null))],function(e,t){var n=t.component;e(t,5,0,n.allowCameraSwitch&&n.availableVideoInputs.length>1&&n.videoInitialized)},function(e,t){var n=t.component;e(t,3,0,n.videoWidth,n.videoHeight,n.videoStyleClasses),e(t,6,0,n.width,n.height)})}var pu=null;function fu(){return pu}var hu,yu=function(e){function t(){var t=e.call(this)||this;t._animationPrefix=null,t._transitionEnd=null;try{var n=t.createElement("div",document);if(null!=t.getStyle(n,"animationName"))t._animationPrefix="";else for(var r=["Webkit","Moz","O","ms"],o=0;o0},t.prototype.tagName=function(e){return e.tagName},t.prototype.attributeMap=function(e){for(var t=new Map,n=e.attributes,r=0;r0;a||(a=e[i]=[]);var s=$u(t)?Zone.root:Zone.current;if(0===a.length)a.push({zone:s,handler:o});else{for(var l=!1,c=0;c-1},t}(Nu),us=["alt","control","meta","shift"],ss={alt:function(e){return e.altKey},control:function(e){return e.ctrlKey},meta:function(e){return e.metaKey},shift:function(e){return e.shiftKey}},ls=function(e){function t(t){return e.call(this,t)||this}var n;return o(t,e),n=t,t.prototype.supports=function(e){return null!=n.parseEventName(e)},t.prototype.addEventListener=function(e,t,r){var o=n.parseEventName(t),i=n.eventCallback(o.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return fu().onAndCancel(e,o.domEventName,i)})},t.parseEventName=function(e){var t=e.toLowerCase().split("."),r=t.shift();if(0===t.length||"keydown"!==r&&"keyup"!==r)return null;var o=n._normalizeKey(t.pop()),i="";if(us.forEach(function(e){var n=t.indexOf(e);n>-1&&(t.splice(n,1),i+=e+".")}),i+=o,0!=t.length||0===o.length)return null;var a={};return a.domEventName=r,a.fullKey=i,a},t.getEventFullKey=function(e){var t="",n=fu().getEventKey(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),us.forEach(function(r){r!=n&&(0,ss[r])(e)&&(t+=r+".")}),t+=n},t.eventCallback=function(e,t,r){return function(o){n.getEventFullKey(o)===e&&r.runGuarded(function(){return t(o)})}},t._normalizeKey=function(e){switch(e){case"esc":return"escape";default:return e}},t}(Nu),cs=function(){return function(){}}(),ds=function(e){function t(t){var n=e.call(this)||this;return n._doc=t,n}return o(t,e),t.prototype.sanitize=function(e,t){if(null==t)return null;switch(e){case bt.NONE:return t;case bt.HTML:return t instanceof fs?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"HTML"),function(e,t){var n=null;try{ot=ot||new Xe(e);var r=t?String(t):"";n=ot.getInertBodyElement(r);var o=5,i=r;do{if(0===o)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=ot.getInertBodyElement(r)}while(r!==i);var a=new ht,u=a.sanitizeChildren(mt(n)||n);return Ke()&&a.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),u}finally{if(n)for(var s=mt(n)||n;s.firstChild;)s.removeChild(s.firstChild)}}(this._doc,String(t)));case bt.STYLE:return t instanceof hs?t.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(t,"Style"),function(e){if(!(e=String(e).trim()))return"";var t=e.match(Ct);return t&&tt(t[1])===t[1]||e.match(wt)&&function(e){for(var t=!0,n=!0,r=0;re?{max:{max:e,actual:t.value}}:null}},e.required=function(e){return Vs(e.value)?{required:!0}:null},e.requiredTrue=function(e){return!0===e.value?null:{required:!0}},e.email=function(e){return Vs(e.value)?null:Ns.test(e.value)?null:{email:!0}},e.minLength=function(e){return function(t){if(Vs(t.value))return null;var n=t.value?t.value.length:0;return ne?{maxlength:{requiredLength:e,actualLength:n}}:null}},e.pattern=function(t){return t?("string"==typeof t?(r="","^"!==t.charAt(0)&&(r+="^"),r+=t,"$"!==t.charAt(t.length-1)&&(r+="$"),n=new RegExp(r)):(r=t.toString(),n=t),function(e){if(Vs(e.value))return null;var t=e.value;return n.test(t)?null:{pattern:{requiredPattern:r,actualValue:t}}}):e.nullValidator;var n,r},e.nullValidator=function(e){return null},e.compose=function(e){if(!e)return null;var t=e.filter(Ds);return 0==t.length?null:function(e){return Rs(function(e,n){return t.map(function(t){return t(e)})}(e))}},e.composeAsync=function(e){if(!e)return null;var t=e.filter(Ds);return 0==t.length?null:function(e){return function(){for(var e=[],t=0;t=0;--t)if(this._accessors[t][1]===e)return void this._accessors.splice(t,1)},e.prototype.select=function(e){var t=this;this._accessors.forEach(function(n){t._isSameGroup(n,e)&&n[1]!==e&&n[1].fireUncheck(e.value)})},e.prototype._isSameGroup=function(e,t){return!!e[0].control&&e[0]._parent===t._control._parent&&e[1].name===t.name},e}(),Us=function(){function e(e,t,n,r){this._renderer=e,this._elementRef=t,this._registry=n,this._injector=r,this.onChange=function(){},this.onTouched=function(){}}return e.prototype.ngOnInit=function(){this._control=this._injector.get(Os),this._checkName(),this._registry.add(this._control,this)},e.prototype.ngOnDestroy=function(){this._registry.remove(this)},e.prototype.writeValue=function(e){this._state=e===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)},e.prototype.registerOnChange=function(e){var t=this;this._fn=e,this.onChange=function(){e(t.value),t._registry.select(t)}},e.prototype.fireUncheck=function(e){this.writeValue(e)},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)},e.prototype._checkName=function(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)},e.prototype._throwNameError=function(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')},e}(),Bs='\n

\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',zs='\n
\n
\n \n
\n
';function Gs(e,t){return c(t.path,[e])}function Zs(e,t){e||Qs(t,"Cannot find control with"),t.valueAccessor||Qs(t,"No value accessor for form control with"),e.validator=Ps.compose([e.validator,t.validator]),e.asyncValidator=Ps.composeAsync([e.asyncValidator,t.asyncValidator]),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(function(n){e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&Ws(e,t)})}(e,t),function(e,t){e.registerOnChange(function(e,n){t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(function(){e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&Ws(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),t.valueAccessor.setDisabledState&&e.registerOnDisabledChange(function(e){t.valueAccessor.setDisabledState(e)}),t._rawValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(function(){return e.updateValueAndValidity()})}),t._rawAsyncValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(function(){return e.updateValueAndValidity()})})}function Ws(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function Qs(e,t){var n;throw n=e.path.length>1?"path: '"+e.path.join(" -> ")+"'":e.path[0]?"name: '"+e.path+"'":"unspecified name attribute",new Error(t+" "+n)}function qs(e){return null!=e?Ps.compose(e.map(js)):null}function Js(e){return null!=e?Ps.composeAsync(e.map(Fs)):null}var Ys=[Es,function(){function e(e,t){this._renderer=e,this._elementRef=t,this.onChange=function(e){},this.onTouched=function(){}}return e.prototype.writeValue=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(e))},e.prototype.registerOnChange=function(e){this.onChange=function(t){e(""==t?null:parseFloat(t))}},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)},e}(),Hs,function(){function e(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=function(e){},this.onTouched=function(){},this._compareWith=Ot}return Object.defineProperty(e.prototype,"compareWith",{set:function(e){if("function"!=typeof e)throw new Error("compareWith must be a function, but received "+JSON.stringify(e));this._compareWith=e},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(e){this.value=e;var t=this._getOptionId(e);null==t&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);var n=function(e,t){return null==e?""+t:(t&&"object"==typeof t&&(t="Object"),(e+": "+t).slice(0,50))}(t,e);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)},e.prototype.registerOnChange=function(e){var t=this;this.onChange=function(n){t.value=t._getOptionValue(n),e(t.value)}},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",e)},e.prototype._registerOption=function(){return(this._idCounter++).toString()},e.prototype._getOptionId=function(e){var t,n;try{for(var r=s(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var i=o.value;if(this._compareWith(this._optionMap.get(i),e))return i}}catch(a){t={error:a}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(t)throw t.error}}return null},e.prototype._getOptionValue=function(e){var t=function(e){return e.split(":")[0]}(e);return this._optionMap.has(t)?this._optionMap.get(t):e},e}(),function(){function e(e,t){this._renderer=e,this._elementRef=t,this._optionMap=new Map,this._idCounter=0,this.onChange=function(e){},this.onTouched=function(){},this._compareWith=Ot}return Object.defineProperty(e.prototype,"compareWith",{set:function(e){if("function"!=typeof e)throw new Error("compareWith must be a function, but received "+JSON.stringify(e));this._compareWith=e},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(e){var t,n=this;if(this.value=e,Array.isArray(e)){var r=e.map(function(e){return n._getOptionId(e)});t=function(e,t){e._setSelected(r.indexOf(t.toString())>-1)}}else t=function(e,t){e._setSelected(!1)};this._optionMap.forEach(t)},e.prototype.registerOnChange=function(e){var t=this;this.onChange=function(n){var r=[];if(n.hasOwnProperty("selectedOptions"))for(var o=n.selectedOptions,i=0;i0||this.disabled},t.prototype._checkAllValuesPresent=function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control with name: '"+n+"'.")})},t}(el),rl=function(e){function t(t,n,r){var o=e.call(this,Ks(n),Xs(r,n))||this;return o.controls=t,o._initObservables(),o._setUpdateStrategy(n),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),o}return o(t,e),t.prototype.at=function(e){return this.controls[e]},t.prototype.push=function(e){this.controls.push(e),this._registerControl(e),this.updateValueAndValidity(),this._onCollectionChange()},t.prototype.insert=function(e,t){this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity()},t.prototype.removeAt=function(e){this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),this.updateValueAndValidity()},t.prototype.setControl=function(e,t){this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity(),this._onCollectionChange()},Object.defineProperty(t.prototype,"length",{get:function(){return this.controls.length},enumerable:!0,configurable:!0}),t.prototype.setValue=function(e,t){var n=this;void 0===t&&(t={}),this._checkAllValuesPresent(e),e.forEach(function(e,r){n._throwIfControlMissing(r),n.at(r).setValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)},t.prototype.patchValue=function(e,t){var n=this;void 0===t&&(t={}),e.forEach(function(e,r){n.at(r)&&n.at(r).patchValue(e,{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)},t.prototype.reset=function(e,t){void 0===e&&(e=[]),void 0===t&&(t={}),this._forEachChild(function(n,r){n.reset(e[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)},t.prototype.getRawValue=function(){return this.controls.map(function(e){return e instanceof tl?e.value:e.getRawValue()})},t.prototype.clear=function(){this.controls.length<1||(this._forEachChild(function(e){return e._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity())},t.prototype._syncPendingControls=function(){var e=this.controls.reduce(function(e,t){return!!t._syncPendingControls()||e},!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e},t.prototype._throwIfControlMissing=function(e){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(e))throw new Error("Cannot find form control at index "+e)},t.prototype._forEachChild=function(e){this.controls.forEach(function(t,n){e(t,n)})},t.prototype._updateValue=function(){var e=this;this.value=this.controls.filter(function(t){return t.enabled||e.disabled}).map(function(e){return e.value})},t.prototype._anyControls=function(e){return this.controls.some(function(t){return t.enabled&&e(t)})},t.prototype._setUpControls=function(){var e=this;this._forEachChild(function(t){return e._registerControl(t)})},t.prototype._checkAllValuesPresent=function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control at index: "+n+".")})},t.prototype._allControlsDisabled=function(){var e,t;try{for(var n=s(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(o){e={error:o}}finally{try{r&&!r.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}return this.controls.length>0||this.disabled},t.prototype._registerControl=function(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)},t}(el),ol=function(){return Promise.resolve(null)}(),il=function(e){function t(t,n){var r=e.call(this)||this;return r.submitted=!1,r._directives=[],r.ngSubmit=new fo,r.form=new nl({},qs(t),Js(n)),r}return o(t,e),t.prototype.ngAfterViewInit=function(){this._setUpdateStrategy()},Object.defineProperty(t.prototype,"formDirective",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"controls",{get:function(){return this.form.controls},enumerable:!0,configurable:!0}),t.prototype.addControl=function(e){var t=this;ol.then(function(){var n=t._findContainer(e.path);e.control=n.registerControl(e.name,e.control),Zs(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),t._directives.push(e)})},t.prototype.getControl=function(e){return this.form.get(e.path)},t.prototype.removeControl=function(e){var t=this;ol.then(function(){var n,r,o=t._findContainer(e.path);o&&o.removeControl(e.name),(r=(n=t._directives).indexOf(e))>-1&&n.splice(r,1)})},t.prototype.addFormGroup=function(e){var t=this;ol.then(function(){var n=t._findContainer(e.path),r=new nl({});(function(e,t){null==e&&Qs(t,"Cannot find control with"),e.validator=Ps.compose([e.validator,t.validator]),e.asyncValidator=Ps.composeAsync([e.asyncValidator,t.asyncValidator])})(r,e),n.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})},t.prototype.removeFormGroup=function(e){var t=this;ol.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name)})},t.prototype.getFormGroup=function(e){return this.form.get(e.path)},t.prototype.updateModel=function(e,t){var n=this;ol.then(function(){n.form.get(e.path).setValue(t)})},t.prototype.setValue=function(e){this.control.setValue(e)},t.prototype.onSubmit=function(e){return this.submitted=!0,t=this._directives,this.form._syncPendingControls(),t.forEach(function(e){var t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)}),this.ngSubmit.emit(e),!1;var t},t.prototype.onReset=function(){this.resetForm()},t.prototype.resetForm=function(e){void 0===e&&(e=void 0),this.form.reset(e),this.submitted=!1},t.prototype._setUpdateStrategy=function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)},t.prototype._findContainer=function(e){return e.pop(),e.length?this.form.get(e):this.form},t}(Ts),al=function(){function e(){}return e.modelParentException=function(){throw new Error('\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup\'s partner directive "formControlName" instead. Example:\n\n \n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\n\n Or, if you\'d like to avoid registering this form control, indicate that it\'s standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n ')},e.formGroupNameException=function(){throw new Error("\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n "+Bs+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+zs)},e.missingNameException=function(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')},e.modelGroupParentException=function(){throw new Error("\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n "+Bs+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+zs)},e.ngFormWarning=function(){console.warn("\n It looks like you're using 'ngForm'.\n\n Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n in Angular v9.\n\n Use 'ng-form' instead.\n\n Before:\n \n\n After:\n \n ")},e}(),ul=new Ee("NgFormSelectorWarning"),sl=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o(t,e),t.prototype.ngOnInit=function(){this._checkParentType(),this.formDirective.addFormGroup(this)},t.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeFormGroup(this)},Object.defineProperty(t.prototype,"control",{get:function(){return this.formDirective.getFormGroup(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return Gs(this.name,this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"validator",{get:function(){return qs(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"asyncValidator",{get:function(){return Js(this._asyncValidators)},enumerable:!0,configurable:!0}),t.prototype._checkParentType=function(){},t}(Ts),ll=function(e){function t(t,n,r){var o=e.call(this)||this;return o._parent=t,o._validators=n,o._asyncValidators=r,o}var n;return o(t,e),n=t,t.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof il||al.modelGroupParentException()},t}(sl),cl=function(){return Promise.resolve(null)}(),dl=function(e){function t(t,n,r,o){var i=e.call(this)||this;return i.control=new tl,i._registered=!1,i.update=new fo,i._parent=t,i._rawValidators=n||[],i._rawAsyncValidators=r||[],i.valueAccessor=function(e,t){if(!t)return null;Array.isArray(t)||Qs(e,"Value accessor was not provided as an array for form control with");var n=void 0,r=void 0,o=void 0;return t.forEach(function(t){var i;t.constructor===Ss?n=t:(i=t,Ys.some(function(e){return i.constructor===e})?(r&&Qs(e,"More than one built-in value accessor matches form control with"),r=t):(o&&Qs(e,"More than one custom value accessor matches form control with"),o=t))}),o||r||n||(Qs(e,"No valid value accessor for form control with"),null)}(i,o),i}return o(t,e),t.prototype.ngOnChanges=function(e){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in e&&this._updateDisabled(e),function(e,t){if(!e.hasOwnProperty("model"))return!1;var n=e.model;return!!n.isFirstChange()||!Ot(t,n.currentValue)}(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)},t.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeControl(this)},Object.defineProperty(t.prototype,"path",{get:function(){return this._parent?Gs(this.name,this._parent):[this.name]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"validator",{get:function(){return qs(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"asyncValidator",{get:function(){return Js(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),t.prototype.viewToModelUpdate=function(e){this.viewModel=e,this.update.emit(e)},t.prototype._setUpControl=function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0},t.prototype._setUpdateStrategy=function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)},t.prototype._isStandalone=function(){return!this._parent||!(!this.options||!this.options.standalone)},t.prototype._setUpStandalone=function(){Zs(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})},t.prototype._checkForErrors=function(){this._isStandalone()||this._checkParentType(),this._checkName()},t.prototype._checkParentType=function(){!(this._parent instanceof ll)&&this._parent instanceof sl?al.formGroupNameException():this._parent instanceof ll||this._parent instanceof il||al.modelParentException()},t.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||al.missingNameException()},t.prototype._updateValue=function(e){var t=this;cl.then(function(){t.control.setValue(e,{emitViewToModelChange:!1})})},t.prototype._updateDisabled=function(e){var t=this,n=e.isDisabled.currentValue,r=""===n||n&&"false"!==n;cl.then(function(){r&&!t.control.disabled?t.control.disable():!r&&t.control.disabled&&t.control.enable()})},t}(Os),pl=function(){return function(){}}(),fl=function(){function e(){}var t;return t=e,e.withConfig=function(e){return{ngModule:t,providers:[{provide:ul,useValue:e.warnOnDeprecatedNgFormSelector}]}},e}(),hl=Hn({encapsulation:0,styles:[[".actionBtn[_ngcontent-%COMP%]{margin-top:5px;margin-bottom:2px;font-size:1.2em}.snapshot[_ngcontent-%COMP%]{text-align:center}.snapshot[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:800px;max-height:800px}ul.links[_ngcontent-%COMP%]{padding-bottom:20px}"]],data:{}});function yl(e){return Pi(0,[(e()(),bi(0,0,null,null,1,"webcam",[],null,[[null,"imageCapture"],[null,"cameraSwitched"],[null,"initError"]],function(e,t,n){var r=!0,o=e.component;return"imageCapture"===t&&(r=!1!==o.handleImage(n)&&r),"cameraSwitched"===t&&(r=!1!==o.cameraWasSwitched(n)&&r),"initError"===t&&(r=!1!==o.handleInitError(n)&&r),r},du,lu)),Jr(1,4374528,null,0,su,[],{width:[0,"width"],height:[1,"height"],videoOptions:[2,"videoOptions"],allowCameraSwitch:[3,"allowCameraSwitch"],imageQuality:[4,"imageQuality"],trigger:[5,"trigger"],switchCamera:[6,"switchCamera"]},{imageCapture:"imageCapture",initError:"initError",cameraSwitched:"cameraSwitched"})],function(e,t){var n=t.component;e(t,1,0,500,500,n.videoOptions,n.allowCameraSwitch,1,n.triggerObservable,n.nextWebcamObservable)},null)}function gl(e){return Pi(0,[(e()(),bi(0,0,null,null,3,"div",[["class","snapshot"]],null,null,null,null,null)),(e()(),bi(1,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),ki(-1,null,["Nice one!"])),(e()(),bi(3,0,null,null,0,"img",[],[[8,"src",4]],null,null,null,null))],null,function(e,t){e(t,3,0,t.component.webcamImage.imageAsDataUrl)})}function vl(e){return Pi(0,[(e()(),bi(0,0,null,null,1,"h4",[],null,null,null,null,null)),(e()(),ki(-1,null,["Messages:"]))],null,null)}function ml(e){return Pi(0,[(e()(),bi(0,0,null,null,3,"ul",[],null,null,null,null,null)),(e()(),bi(1,0,null,null,2,"li",[],null,null,null,null,null)),(e()(),ki(2,null,["",""])),(t=0,n=ru,r=[],Kr(-1,t|=16,null,0,n,n,r))],null,function(e,t){e(t,2,0,function(e,t,n,r){if(Vt.isWrapped(r)){r=Vt.unwrap(r);var o=e.def.nodes[2].bindingIndex+0,i=Vt.unwrap(e.oldValues[o]);e.oldValues[o]=new Vt(i)}return r}(t,0,0,Rr(t,3).transform(t.context.$implicit)))});var t,n,r}function bl(e){return Pi(0,[(e()(),bi(0,0,null,null,31,"div",[["style","text-align:center"]],null,null,null,null,null)),(e()(),bi(1,0,null,null,1,"h1",[],null,null,null,null,null)),(e()(),ki(-1,null,[" Ngx-Webcam Demo "])),(e()(),bi(3,0,null,null,28,"div",[],null,null,null,null,null)),(e()(),mi(16777216,null,null,1,null,yl)),Jr(5,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),bi(6,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),bi(7,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.triggerSnapshot()&&r),r},null,null)),(e()(),ki(-1,null,["Take A Snapshot"])),(e()(),bi(9,0,null,null,1,"button",[["class","actionBtn"]],null,[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.toggleWebcam()&&r),r},null,null)),(e()(),ki(-1,null,["Toggle Webcam"])),(e()(),bi(11,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),bi(12,0,null,null,1,"button",[["class","actionBtn"]],[[8,"disabled",0]],[[null,"click"]],function(e,t,n){var r=!0;return"click"===t&&(r=!1!==e.component.showNextWebcam(!0)&&r),r},null,null)),(e()(),ki(-1,null,["Next Webcam"])),(e()(),bi(14,0,null,null,5,"input",[["id","cameraSwitchCheckbox"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],function(e,t,n){var r=!0,o=e.component;return"change"===t&&(r=!1!==Rr(e,15).onChange(n.target.checked)&&r),"blur"===t&&(r=!1!==Rr(e,15).onTouched()&&r),"ngModelChange"===t&&(r=!1!==(o.allowCameraSwitch=n)&&r),r},null,null)),Jr(15,16384,null,0,Es,[Xt,Qt],null,null),Yr(1024,null,Cs,function(e){return[e]},[Es]),Jr(17,671744,null,0,dl,[[8,null],[8,null],[8,null],[6,Cs]],{model:[0,"model"]},{update:"ngModelChange"}),Yr(2048,null,Os,null,[dl]),Jr(19,16384,null,0,ks,[[4,Os]],null,null),(e()(),bi(20,0,null,null,1,"label",[["for","cameraSwitchCheckbox"]],null,null,null,null,null)),(e()(),ki(-1,null,["Allow Camera Switch"])),(e()(),bi(22,0,null,null,0,"br",[],null,null,null,null,null)),(e()(),ki(-1,null,[" DeviceId: "])),(e()(),bi(24,0,null,null,5,"input",[["id","deviceId"],["style","width: 500px"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],function(e,t,n){var r=!0,o=e.component;return"input"===t&&(r=!1!==Rr(e,25)._handleInput(n.target.value)&&r),"blur"===t&&(r=!1!==Rr(e,25).onTouched()&&r),"compositionstart"===t&&(r=!1!==Rr(e,25)._compositionStart()&&r),"compositionend"===t&&(r=!1!==Rr(e,25)._compositionEnd(n.target.value)&&r),"ngModelChange"===t&&(r=!1!==(o.deviceId=n)&&r),r},null,null)),Jr(25,16384,null,0,Ss,[Xt,Qt,[2,xs]],null,null),Yr(1024,null,Cs,function(e){return[e]},[Ss]),Jr(27,671744,null,0,dl,[[8,null],[8,null],[8,null],[6,Cs]],{model:[0,"model"]},{update:"ngModelChange"}),Yr(2048,null,Os,null,[dl]),Jr(29,16384,null,0,ks,[[4,Os]],null,null),(e()(),bi(30,0,null,null,1,"button",[],null,[[null,"click"]],function(e,t,n){var r=!0,o=e.component;return"click"===t&&(r=!1!==o.showNextWebcam(o.deviceId)&&r),r},null,null)),(e()(),ki(-1,null,["Activate"])),(e()(),mi(16777216,null,null,1,null,gl)),Jr(33,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),mi(16777216,null,null,1,null,vl)),Jr(35,16384,null,0,eu,[wn,bn],{ngIf:[0,"ngIf"]},null),(e()(),mi(16777216,null,null,1,null,ml)),Jr(37,278528,null,0,Xa,[wn,bn,pn],{ngForOf:[0,"ngForOf"]},null),(e()(),bi(38,0,null,null,1,"h2",[],null,null,null,null,null)),(e()(),ki(-1,null,["Like this project on GitHub:"])),(e()(),bi(40,0,null,null,4,"ul",[["class","links"]],null,null,null,null,null)),(e()(),bi(41,0,null,null,3,"li",[],null,null,null,null,null)),(e()(),bi(42,0,null,null,2,"h2",[],null,null,null,null,null)),(e()(),bi(43,0,null,null,1,"a",[["href","https://github.com/basst314/ngx-webcam"],["rel","noopener"],["target","_blank"]],null,null,null,null,null)),(e()(),ki(-1,null,["Ngx-Webcam / GitHub"]))],function(e,t){var n=t.component;e(t,5,0,n.showWebcam),e(t,17,0,n.allowCameraSwitch),e(t,27,0,n.deviceId),e(t,33,0,n.webcamImage),e(t,35,0,n.errors.length>0),e(t,37,0,n.errors)},function(e,t){e(t,12,0,!t.component.multipleWebcamsAvailable),e(t,14,0,Rr(t,19).ngClassUntouched,Rr(t,19).ngClassTouched,Rr(t,19).ngClassPristine,Rr(t,19).ngClassDirty,Rr(t,19).ngClassValid,Rr(t,19).ngClassInvalid,Rr(t,19).ngClassPending),e(t,24,0,Rr(t,29).ngClassUntouched,Rr(t,29).ngClassTouched,Rr(t,29).ngClassPristine,Rr(t,29).ngClassDirty,Rr(t,29).ngClassValid,Rr(t,29).ngClassInvalid,Rr(t,29).ngClassPending)})}function _l(e){return Pi(0,[(e()(),bi(0,0,null,null,1,"appRoot",[],null,null,null,bl,hl)),Jr(1,114688,null,0,Ba,[],null,null)],function(e,t){e(t,1,0)},null)}var wl=Sr("appRoot",Ba,_l,{},{},[]),Cl=function(){return function(){}}(),El=Fa(La,[Ba],function(e){return function(e){for(var t={},n=[],r=!1,o=0;o 0 && videoElement.videoHeight && videoElement.videoHeight > 0) { @@ -306,7 +310,7 @@ export class WebcamComponent implements AfterViewInit, OnDestroy { * Init webcam live view */ private initWebcam(deviceId: string, userVideoTrackConstraints: MediaTrackConstraints) { - const _video = this.video.nativeElement; + const _video = this.nativeVideoElement; if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { // merge deviceId -> userVideoTrackConstraints @@ -325,6 +329,10 @@ export class WebcamComponent implements AfterViewInit, OnDestroy { this.videoInitialized = true; this.cameraSwitched.next(activeDeviceId); + + // Initial detect may run before user gave permissions, returning no deviceIds. This prevents later camera switches. (#47) + // Run detect once again within getUserMedia callback, to make sure this time we have permissions and get deviceIds. + this.detectAvailableDevices(); }) .catch((err: MediaStreamError) => { this.initError.next({message: err.message, mediaStreamError: err});