-
Notifications
You must be signed in to change notification settings - Fork 1
/
main.34b423ba8777e11935ab.js
1 lines (1 loc) · 401 KB
/
main.34b423ba8777e11935ab.js
1
(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{0:function(n,e,t){n.exports=t("zUnb")},crnd:function(n,e){function t(n){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+n+"'");throw e.code="MODULE_NOT_FOUND",e})}t.keys=function(){return[]},t.resolve=t,n.exports=t,t.id="crnd"},zUnb:function(n,e,t){"use strict";t.r(e);var l=function(n,e){return(l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,e){n.__proto__=e}||function(n,e){for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t])})(n,e)};function r(n,e){function t(){this.constructor=n}l(n,e),n.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)}var o=function(){return(o=Object.assign||function(n){for(var e,t=1,l=arguments.length;t<l;t++)for(var r in e=arguments[t])Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}).apply(this,arguments)};function u(n,e,t,l){var r,o=arguments.length,u=o<3?e:null===l?l=Object.getOwnPropertyDescriptor(e,t):l;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)u=Reflect.decorate(n,e,t,l);else for(var i=n.length-1;i>=0;i--)(r=n[i])&&(u=(o<3?r(u):o>3?r(e,t,u):r(e,t))||u);return o>3&&u&&Object.defineProperty(e,t,u),u}function i(n,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(n,e)}function a(n){var e="function"==typeof Symbol&&n[Symbol.iterator],t=0;return e?e.call(n):{next:function(){return n&&t>=n.length&&(n=void 0),{value:n&&n[t++],done:!n}}}}function s(n,e){var t="function"==typeof Symbol&&n[Symbol.iterator];if(!t)return n;var l,r,o=t.call(n),u=[];try{for(;(void 0===e||e-- >0)&&!(l=o.next()).done;)u.push(l.value)}catch(i){r={error:i}}finally{try{l&&!l.done&&(t=o.return)&&t.call(o)}finally{if(r)throw r.error}}return u}function c(){for(var n=[],e=0;e<arguments.length;e++)n=n.concat(s(arguments[e]));return n}var p=Array.isArray||function(n){return n&&"number"==typeof n.length};function d(n){return null!=n&&"object"==typeof n}function f(n){return"function"==typeof n}var h,g={e:{}};function m(){try{return h.apply(this,arguments)}catch(n){return g.e=n,g}}function v(n){return h=n,m}function y(n){return Error.call(this),this.message=n?n.length+" errors occurred during unsubscription:\n"+n.map(function(n,e){return e+1+") "+n.toString()}).join("\n "):"",this.name="UnsubscriptionError",this.errors=n,this}y.prototype=Object.create(Error.prototype);var b=y,w=function(){function n(n){this.closed=!1,this._parent=null,this._parents=null,this._subscriptions=null,n&&(this._unsubscribe=n)}var e;return n.prototype.unsubscribe=function(){var n,e=!1;if(!this.closed){var t=this._parent,l=this._parents,r=this._unsubscribe,o=this._subscriptions;this.closed=!0,this._parent=null,this._parents=null,this._subscriptions=null;for(var u=-1,i=l?l.length:0;t;)t.remove(this),t=++u<i&&l[u]||null;if(f(r)&&v(r).call(this)===g&&(e=!0,n=n||(g.e instanceof b?_(g.e.errors):[g.e])),p(o))for(u=-1,i=o.length;++u<i;){var a=o[u];if(d(a)&&v(a.unsubscribe).call(a)===g){e=!0,n=n||[];var s=g.e;s instanceof b?n=n.concat(_(s.errors)):n.push(s)}}if(e)throw new b(n)}},n.prototype.add=function(e){if(!e||e===n.EMPTY)return n.EMPTY;if(e===this)return this;var t=e;switch(typeof e){case"function":t=new n(e);case"object":if(t.closed||"function"!=typeof t.unsubscribe)return t;if(this.closed)return t.unsubscribe(),t;if("function"!=typeof t._addParent){var l=t;(t=new n)._subscriptions=[l]}break;default:throw new Error("unrecognized teardown "+e+" added to Subscription.")}return(this._subscriptions||(this._subscriptions=[])).push(t),t._addParent(this),t},n.prototype.remove=function(n){var e=this._subscriptions;if(e){var t=e.indexOf(n);-1!==t&&e.splice(t,1)}},n.prototype._addParent=function(n){var e=this._parent,t=this._parents;e&&e!==n?t?-1===t.indexOf(n)&&t.push(n):this._parents=[n]:this._parent=n},n.EMPTY=((e=new n).closed=!0,e),n}();function _(n){return n.reduce(function(n,e){return n.concat(e instanceof b?e.errors:e)},[])}var C=!1,x={Promise:void 0,set useDeprecatedSynchronousErrorHandling(n){C=n},get useDeprecatedSynchronousErrorHandling(){return C}};function k(n){setTimeout(function(){throw n})}var P={closed:!0,next:function(n){},error:function(n){if(x.useDeprecatedSynchronousErrorHandling)throw n;k(n)},complete:function(){}},O="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random(),M=function(n){function e(t,l,r){var o=n.call(this)||this;switch(o.syncErrorValue=null,o.syncErrorThrown=!1,o.syncErrorThrowable=!1,o.isStopped=!1,o._parentSubscription=null,arguments.length){case 0:o.destination=P;break;case 1:if(!t){o.destination=P;break}if("object"==typeof t){t instanceof e?(o.syncErrorThrowable=t.syncErrorThrowable,o.destination=t,t.add(o)):(o.syncErrorThrowable=!0,o.destination=new S(o,t));break}default:o.syncErrorThrowable=!0,o.destination=new S(o,t,l,r)}return o}return r(e,n),e.prototype[O]=function(){return this},e.create=function(n,t,l){var r=new e(n,t,l);return r.syncErrorThrowable=!1,r},e.prototype.next=function(n){this.isStopped||this._next(n)},e.prototype.error=function(n){this.isStopped||(this.isStopped=!0,this._error(n))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,n.prototype.unsubscribe.call(this))},e.prototype._next=function(n){this.destination.next(n)},e.prototype._error=function(n){this.destination.error(n),this.unsubscribe()},e.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},e.prototype._unsubscribeAndRecycle=function(){var n=this._parent,e=this._parents;return this._parent=null,this._parents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parent=n,this._parents=e,this._parentSubscription=null,this},e}(w),S=function(n){function e(e,t,l,r){var o,u=n.call(this)||this;u._parentSubscriber=e;var i=u;return f(t)?o=t:t&&(o=t.next,l=t.error,r=t.complete,t!==P&&(f((i=Object.create(t)).unsubscribe)&&u.add(i.unsubscribe.bind(i)),i.unsubscribe=u.unsubscribe.bind(u))),u._context=i,u._next=o,u._error=l,u._complete=r,u}return r(e,n),e.prototype.next=function(n){if(!this.isStopped&&this._next){var e=this._parentSubscriber;x.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,n)&&this.unsubscribe():this.__tryOrUnsub(this._next,n)}},e.prototype.error=function(n){if(!this.isStopped){var e=this._parentSubscriber,t=x.useDeprecatedSynchronousErrorHandling;if(this._error)t&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,n),this.unsubscribe()):(this.__tryOrUnsub(this._error,n),this.unsubscribe());else if(e.syncErrorThrowable)t?(e.syncErrorValue=n,e.syncErrorThrown=!0):k(n),this.unsubscribe();else{if(this.unsubscribe(),t)throw n;k(n)}}},e.prototype.complete=function(){var n=this;if(!this.isStopped){var e=this._parentSubscriber;if(this._complete){var t=function(){return n._complete.call(n._context)};x.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}},e.prototype.__tryOrUnsub=function(n,e){try{n.call(this._context,e)}catch(t){if(this.unsubscribe(),x.useDeprecatedSynchronousErrorHandling)throw t;k(t)}},e.prototype.__tryOrSetError=function(n,e,t){if(!x.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,t)}catch(l){return x.useDeprecatedSynchronousErrorHandling?(n.syncErrorValue=l,n.syncErrorThrown=!0,!0):(k(l),!0)}return!1},e.prototype._unsubscribe=function(){var n=this._parentSubscriber;this._context=null,this._parentSubscriber=null,n.unsubscribe()},e}(M),E="function"==typeof Symbol&&Symbol.observable||"@@observable";function A(){}function T(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return L(n)}function L(n){return n?1===n.length?n[0]:function(e){return n.reduce(function(n,e){return e(n)},e)}:A}var I=function(){function n(n){this._isScalar=!1,n&&(this._subscribe=n)}return n.prototype.lift=function(e){var t=new n;return t.source=this,t.operator=e,t},n.prototype.subscribe=function(n,e,t){var l=this.operator,r=function(n,e,t){if(n){if(n instanceof M)return n;if(n[O])return n[O]()}return n||e||t?new M(n,e,t):new M(P)}(n,e,t);if(l?l.call(r,this.source):r.add(this.source||x.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),x.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r},n.prototype._trySubscribe=function(n){try{return this._subscribe(n)}catch(e){x.useDeprecatedSynchronousErrorHandling&&(n.syncErrorThrown=!0,n.syncErrorValue=e),function(n){for(;n;){var e=n.destination;if(n.closed||n.isStopped)return!1;n=e&&e instanceof M?e:null}return!0}(n)?n.error(e):console.warn(e)}},n.prototype.forEach=function(n,e){var t=this;return new(e=R(e))(function(e,l){var r;r=t.subscribe(function(e){try{n(e)}catch(t){l(t),r&&r.unsubscribe()}},l,e)})},n.prototype._subscribe=function(n){var e=this.source;return e&&e.subscribe(n)},n.prototype[E]=function(){return this},n.prototype.pipe=function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return 0===n.length?this:L(n)(this)},n.prototype.toPromise=function(n){var e=this;return new(n=R(n))(function(n,t){var l;e.subscribe(function(n){return l=n},function(n){return t(n)},function(){return n(l)})})},n.create=function(e){return new n(e)},n}();function R(n){if(n||(n=x.Promise||Promise),!n)throw new Error("no Promise impl found");return n}function N(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}N.prototype=Object.create(Error.prototype);var j=N,D=function(n){function e(e,t){var l=n.call(this)||this;return l.subject=e,l.subscriber=t,l.closed=!1,l}return r(e,n),e.prototype.unsubscribe=function(){if(!this.closed){this.closed=!0;var n=this.subject,e=n.observers;if(this.subject=null,e&&0!==e.length&&!n.isStopped&&!n.closed){var t=e.indexOf(this.subscriber);-1!==t&&e.splice(t,1)}}},e}(w),U=function(n){function e(e){var t=n.call(this,e)||this;return t.destination=e,t}return r(e,n),e}(M),B=function(n){function e(){var e=n.call(this)||this;return e.observers=[],e.closed=!1,e.isStopped=!1,e.hasError=!1,e.thrownError=null,e}return r(e,n),e.prototype[O]=function(){return new U(this)},e.prototype.lift=function(n){var e=new q(this,this);return e.operator=n,e},e.prototype.next=function(n){if(this.closed)throw new j;if(!this.isStopped)for(var e=this.observers,t=e.length,l=e.slice(),r=0;r<t;r++)l[r].next(n)},e.prototype.error=function(n){if(this.closed)throw new j;this.hasError=!0,this.thrownError=n,this.isStopped=!0;for(var e=this.observers,t=e.length,l=e.slice(),r=0;r<t;r++)l[r].error(n);this.observers.length=0},e.prototype.complete=function(){if(this.closed)throw new j;this.isStopped=!0;for(var n=this.observers,e=n.length,t=n.slice(),l=0;l<e;l++)t[l].complete();this.observers.length=0},e.prototype.unsubscribe=function(){this.isStopped=!0,this.closed=!0,this.observers=null},e.prototype._trySubscribe=function(e){if(this.closed)throw new j;return n.prototype._trySubscribe.call(this,e)},e.prototype._subscribe=function(n){if(this.closed)throw new j;return this.hasError?(n.error(this.thrownError),w.EMPTY):this.isStopped?(n.complete(),w.EMPTY):(this.observers.push(n),new D(this,n))},e.prototype.asObservable=function(){var n=new I;return n.source=this,n},e.create=function(n,e){return new q(n,e)},e}(I),q=function(n){function e(e,t){var l=n.call(this)||this;return l.destination=e,l.source=t,l}return r(e,n),e.prototype.next=function(n){var e=this.destination;e&&e.next&&e.next(n)},e.prototype.error=function(n){var e=this.destination;e&&e.error&&this.destination.error(n)},e.prototype.complete=function(){var n=this.destination;n&&n.complete&&this.destination.complete()},e.prototype._subscribe=function(n){return this.source?this.source.subscribe(n):w.EMPTY},e}(B);function z(n){return n&&"function"==typeof n.schedule}var V=function(n){function e(e,t,l){var r=n.call(this)||this;return r.parent=e,r.outerValue=t,r.outerIndex=l,r.index=0,r}return r(e,n),e.prototype._next=function(n){this.parent.notifyNext(this.outerValue,n,this.outerIndex,this.index++,this)},e.prototype._error=function(n){this.parent.notifyError(n,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(M),H=function(n){return function(e){for(var t=0,l=n.length;t<l&&!e.closed;t++)e.next(n[t]);e.closed||e.complete()}},F=function(n){return function(e){return n.then(function(n){e.closed||(e.next(n),e.complete())},function(n){return e.error(n)}).then(null,k),e}};function W(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}var G=W(),Z=function(n){return function(e){for(var t=n[G]();;){var l=t.next();if(l.done){e.complete();break}if(e.next(l.value),e.closed)break}return"function"==typeof t.return&&e.add(function(){t.return&&t.return()}),e}},K=function(n){return function(e){var t=n[E]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)}},Q=function(n){return n&&"number"==typeof n.length&&"function"!=typeof n};function Y(n){return n&&"function"!=typeof n.subscribe&&"function"==typeof n.then}var J=function(n){if(n instanceof I)return function(e){return n._isScalar?(e.next(n.value),void e.complete()):n.subscribe(e)};if(n&&"function"==typeof n[E])return K(n);if(Q(n))return H(n);if(Y(n))return F(n);if(n&&"function"==typeof n[G])return Z(n);var e=d(n)?"an invalid object":"'"+n+"'";throw new TypeError("You provided "+e+" where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.")};function $(n,e,t,l,r){if(void 0===r&&(r=new V(n,t,l)),!r.closed)return J(e)(r)}var X=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.notifyNext=function(n,e,t,l,r){this.destination.next(e)},e.prototype.notifyError=function(n,e){this.destination.error(n)},e.prototype.notifyComplete=function(n){this.destination.complete()},e}(M);function nn(n,e){return function(t){if("function"!=typeof n)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return t.lift(new en(n,e))}}var en=function(){function n(n,e){this.project=n,this.thisArg=e}return n.prototype.call=function(n,e){return e.subscribe(new tn(n,this.project,this.thisArg))},n}(),tn=function(n){function e(e,t,l){var r=n.call(this,e)||this;return r.project=t,r.count=0,r.thisArg=l||r,r}return r(e,n),e.prototype._next=function(n){var e;try{e=this.project.call(this.thisArg,n,this.count++)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(M);function ln(n,e){return new I(e?function(t){var l=new w,r=0;return l.add(e.schedule(function(){r!==n.length?(t.next(n[r++]),t.closed||l.add(this.schedule())):t.complete()})),l}:H(n))}function rn(n,e){if(!e)return n instanceof I?n:new I(J(n));if(null!=n){if(function(n){return n&&"function"==typeof n[E]}(n))return function(n,e){return new I(e?function(t){var l=new w;return l.add(e.schedule(function(){var r=n[E]();l.add(r.subscribe({next:function(n){l.add(e.schedule(function(){return t.next(n)}))},error:function(n){l.add(e.schedule(function(){return t.error(n)}))},complete:function(){l.add(e.schedule(function(){return t.complete()}))}}))})),l}:K(n))}(n,e);if(Y(n))return function(n,e){return new I(e?function(t){var l=new w;return l.add(e.schedule(function(){return n.then(function(n){l.add(e.schedule(function(){t.next(n),l.add(e.schedule(function(){return t.complete()}))}))},function(n){l.add(e.schedule(function(){return t.error(n)}))})})),l}:F(n))}(n,e);if(Q(n))return ln(n,e);if(function(n){return n&&"function"==typeof n[G]}(n)||"string"==typeof n)return function(n,e){if(!n)throw new Error("Iterable cannot be null");return new I(e?function(t){var l,r=new w;return r.add(function(){l&&"function"==typeof l.return&&l.return()}),r.add(e.schedule(function(){l=n[G](),r.add(e.schedule(function(){if(!t.closed){var n,e;try{var r=l.next();n=r.value,e=r.done}catch(o){return void t.error(o)}e?t.complete():(t.next(n),this.schedule())}}))})),r}:Z(n))}(n,e)}throw new TypeError((null!==n&&typeof n||n)+" is not observable")}function on(n,e,t){return void 0===t&&(t=Number.POSITIVE_INFINITY),"function"==typeof e?function(l){return l.pipe(on(function(t,l){return rn(n(t,l)).pipe(nn(function(n,r){return e(t,n,l,r)}))},t))}:("number"==typeof e&&(t=e),function(e){return e.lift(new un(n,t))})}var un=function(){function n(n,e){void 0===e&&(e=Number.POSITIVE_INFINITY),this.project=n,this.concurrent=e}return n.prototype.call=function(n,e){return e.subscribe(new an(n,this.project,this.concurrent))},n}(),an=function(n){function e(e,t,l){void 0===l&&(l=Number.POSITIVE_INFINITY);var r=n.call(this,e)||this;return r.project=t,r.concurrent=l,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return r(e,n),e.prototype._next=function(n){this.active<this.concurrent?this._tryNext(n):this.buffer.push(n)},e.prototype._tryNext=function(n){var e,t=this.index++;try{e=this.project(n,t)}catch(l){return void this.destination.error(l)}this.active++,this._innerSub(e,n,t)},e.prototype._innerSub=function(n,e,t){var l=new V(this,void 0,void 0);this.destination.add(l),$(this,n,e,t,l)},e.prototype._complete=function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()},e.prototype.notifyNext=function(n,e,t,l,r){this.destination.next(e)},e.prototype.notifyComplete=function(n){var e=this.buffer;this.remove(n),this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(X);function sn(n){return n}function cn(n){return void 0===n&&(n=Number.POSITIVE_INFINITY),on(sn,n)}function pn(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var t=Number.POSITIVE_INFINITY,l=null,r=n[n.length-1];return z(r)?(l=n.pop(),n.length>1&&"number"==typeof n[n.length-1]&&(t=n.pop())):"number"==typeof r&&(t=n.pop()),null===l&&1===n.length&&n[0]instanceof I?n[0]:cn(t)(ln(n,l))}function dn(){return function(n){return n.lift(new fn(n))}}var fn=function(){function n(n){this.connectable=n}return n.prototype.call=function(n,e){var t=this.connectable;t._refCount++;var l=new hn(n,t),r=e.subscribe(l);return l.closed||(l.connection=t.connect()),r},n}(),hn=function(n){function e(e,t){var l=n.call(this,e)||this;return l.connectable=t,l}return r(e,n),e.prototype._unsubscribe=function(){var n=this.connectable;if(n){this.connectable=null;var e=n._refCount;if(e<=0)this.connection=null;else if(n._refCount=e-1,e>1)this.connection=null;else{var t=this.connection,l=n._connection;this.connection=null,!l||t&&l!==t||l.unsubscribe()}}else this.connection=null},e}(M),gn=function(n){function e(e,t){var l=n.call(this)||this;return l.source=e,l.subjectFactory=t,l._refCount=0,l._isComplete=!1,l}return r(e,n),e.prototype._subscribe=function(n){return this.getSubject().subscribe(n)},e.prototype.getSubject=function(){var n=this._subject;return n&&!n.isStopped||(this._subject=this.subjectFactory()),this._subject},e.prototype.connect=function(){var n=this._connection;return n||(this._isComplete=!1,(n=this._connection=new w).add(this.source.subscribe(new vn(this.getSubject(),this))),n.closed?(this._connection=null,n=w.EMPTY):this._connection=n),n},e.prototype.refCount=function(){return dn()(this)},e}(I).prototype,mn={operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:gn._subscribe},_isComplete:{value:gn._isComplete,writable:!0},getSubject:{value:gn.getSubject},connect:{value:gn.connect},refCount:{value:gn.refCount}},vn=function(n){function e(e,t){var l=n.call(this,e)||this;return l.connectable=t,l}return r(e,n),e.prototype._error=function(e){this._unsubscribe(),n.prototype._error.call(this,e)},e.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),n.prototype._complete.call(this)},e.prototype._unsubscribe=function(){var n=this.connectable;if(n){this.connectable=null;var e=n._connection;n._refCount=0,n._subject=null,n._connection=null,e&&e.unsubscribe()}},e}(U);function yn(n,e){return function(t){var l;if(l="function"==typeof n?n:function(){return n},"function"==typeof e)return t.lift(new bn(l,e));var r=Object.create(t,mn);return r.source=t,r.subjectFactory=l,r}}var bn=function(){function n(n,e){this.subjectFactory=n,this.selector=e}return n.prototype.call=function(n,e){var t=this.selector,l=this.subjectFactory(),r=t(l).subscribe(n);return r.add(e.subscribe(l)),r},n}();function wn(){return new B}function _n(n){for(var e in n)if(n[e]===_n)return e;throw Error("Could not find renamed property on target object.")}function Cn(n,e){for(var t in e)e.hasOwnProperty(t)&&!n.hasOwnProperty(t)&&(n[t]=e[t])}var xn=_n({ngInjectableDef:_n}),kn=_n({ngBaseDef:_n});function Pn(n){return{providedIn:n.providedIn||null,factory:n.factory,value:void 0}}function On(n){return n&&n.hasOwnProperty(xn)?n[xn]:null}var Mn=function(){function n(n,e){this._desc=n,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0!==e?Pn({providedIn:e.providedIn||"root",factory:e.factory}):void 0}return n.prototype.toString=function(){return"InjectionToken "+this._desc},n}(),Sn="__parameters__",En="__prop__metadata__";function An(n){return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];if(n){var l=n.apply(void 0,c(e));for(var r in l)this[r]=l[r]}}}function Tn(n,e,t){var l=An(e);function r(){for(var n,e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];if(this instanceof r)return l.apply(this,e),this;var o=new((n=r).bind.apply(n,c([void 0],e)));return u.annotation=o,u;function u(n,e,t){for(var l=n.hasOwnProperty(Sn)?n[Sn]:Object.defineProperty(n,Sn,{value:[]})[Sn];l.length<=t;)l.push(null);return(l[t]=l[t]||[]).push(o),n}}return t&&(r.prototype=Object.create(t.prototype)),r.prototype.ngMetadataName=n,r.annotationCls=r,r}function Ln(n,e,t,l){var r=An(e);function o(){for(var n,e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];if(this instanceof o)return r.apply(this,e),this;var u=new((n=o).bind.apply(n,c([void 0],e)));return function(n,t){var r=n.constructor,o=r.hasOwnProperty(En)?r[En]:Object.defineProperty(r,En,{value:{}})[En];o[t]=o.hasOwnProperty(t)&&o[t]||[],o[t].unshift(u),l&&l.apply(void 0,c([n,t],e))}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=n,o.annotationCls=o,o}var In=new Mn("AnalyzeForEntryComponents"),Rn="undefined"!=typeof window&&window,Nn="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,jn="undefined"!=typeof global&&global||Rn||Nn,Dn=Promise.resolve(0),Un=null;function Bn(){if(!Un){var n=jn.Symbol;if(n&&n.iterator)Un=n.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),t=0;t<e.length;++t){var l=e[t];"entries"!==l&&"size"!==l&&Map.prototype[l]===Map.prototype.entries&&(Un=l)}}return Un}function qn(n){"undefined"==typeof Zone?Dn.then(function(){n&&n.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",n)}function zn(n,e){return n===e||"number"==typeof n&&"number"==typeof e&&isNaN(n)&&isNaN(e)}function Vn(n){if("string"==typeof n)return n;if(n instanceof Array)return"["+n.map(Vn).join(", ")+"]";if(null==n)return""+n;if(n.overriddenName)return""+n.overriddenName;if(n.name)return""+n.name;var e=n.toString();if(null==e)return""+e;var t=e.indexOf("\n");return-1===t?e:e.substring(0,t)}var Hn=_n({__forward_ref__:_n});function Fn(n){return n.__forward_ref__=Fn,n.toString=function(){return Vn(this())},n}function Wn(n){var e=n;return"function"==typeof e&&e.hasOwnProperty(Hn)&&e.__forward_ref__===Fn?e():n}var Gn,Zn=function(n){return n[n.Emulated=0]="Emulated",n[n.Native=1]="Native",n[n.None=2]="None",n[n.ShadowDom=3]="ShadowDom",n}({}),Kn=Tn("Inject",function(n){return{token:n}}),Qn=Tn("Optional"),Yn=Tn("Self"),Jn=Tn("SkipSelf"),$n=function(n){return n[n.Default=0]="Default",n[n.Host=1]="Host",n[n.Self=2]="Self",n[n.SkipSelf=4]="SkipSelf",n[n.Optional=8]="Optional",n}({}),Xn=void 0;function ne(n){var e=Xn;return Xn=n,e}function ee(n,e){return void 0===e&&(e=$n.Default),(Gn||function(n,e){if(void 0===e&&(e=$n.Default),void 0===Xn)throw new Error("inject() must be called from an injection context");return null===Xn?function(n,e,t){var l=On(n);if(l&&"root"==l.providedIn)return void 0===l.value?l.value=l.factory():l.value;if(t&$n.Optional)return null;throw new Error("Injector: NOT_FOUND ["+Vn(n)+"]")}(n,0,e):Xn.get(n,e&$n.Optional?null:void 0,e)})(n,e)}var te=/([A-Z])/g;function le(n){try{return null!=n?n.toString().slice(0,30):n}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function re(n,e){var t=ie(n),l=ie(e);return t&&l?function(n,e,t){for(var l=n[Bn()](),r=e[Bn()]();;){var o=l.next(),u=r.next();if(o.done&&u.done)return!0;if(o.done||u.done)return!1;if(!t(o.value,u.value))return!1}}(n,e,re):!(t||!n||"object"!=typeof n&&"function"!=typeof n||l||!e||"object"!=typeof e&&"function"!=typeof e)||zn(n,e)}var oe=function(){function n(n){this.wrapped=n}return n.wrap=function(e){return new n(e)},n.unwrap=function(e){return n.isWrapped(e)?e.wrapped:e},n.isWrapped=function(e){return e instanceof n},n}(),ue=function(){function n(n,e,t){this.previousValue=n,this.currentValue=e,this.firstChange=t}return n.prototype.isFirstChange=function(){return this.firstChange},n}();function ie(n){return!!ae(n)&&(Array.isArray(n)||!(n instanceof Map)&&Bn()in n)}function ae(n){return null!==n&&("function"==typeof n||"object"==typeof n)}function se(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e]}var ce="__source",pe=new Object,de=new Mn("INJECTOR"),fe=function(){function n(){}return n.prototype.get=function(n,e){if(void 0===e&&(e=pe),e===pe)throw new Error("NullInjectorError: No provider for "+Vn(n)+"!");return e},n}(),he=function(){function n(){}return n.create=function(n,e){return Array.isArray(n)?new ke(n,e):new ke(n.providers,n.parent,n.name||null)},n.THROW_IF_NOT_FOUND=pe,n.NULL=new fe,n.ngInjectableDef=Pn({providedIn:"any",factory:function(){return ee(de)}}),n.__NG_ELEMENT_ID__=function(){return ge()},n}(),ge=se,me=function(n){return n},ve=[],ye=me,be=function(){return Array.prototype.slice.call(arguments)},we=_n({provide:String,useValue:_n}),_e=he.NULL,Ce=/\n/gm,xe="\u0275",ke=function(){function n(n,e,t){void 0===e&&(e=_e),void 0===t&&(t=null),this.parent=e,this.source=t;var l=this._records=new Map;l.set(he,{token:he,fn:me,deps:ve,value:this,useNew:!1}),l.set(de,{token:de,fn:me,deps:ve,value:this,useNew:!1}),function n(e,t){if(t)if((t=Wn(t))instanceof Array)for(var l=0;l<t.length;l++)n(e,t[l]);else{if("function"==typeof t)throw Me("Function/Class not supported",t);if(!t||"object"!=typeof t||!t.provide)throw Me("Unexpected provider",t);var r=Wn(t.provide),o=function(n){var e=function(n){var e=ve,t=n.deps;if(t&&t.length){e=[];for(var l=0;l<t.length;l++){var r=6;if((a=Wn(t[l]))instanceof Array)for(var o=0,u=a;o<u.length;o++){var i=u[o];i instanceof Qn||i==Qn?r|=1:i instanceof Jn||i==Jn?r&=-3:i instanceof Yn||i==Yn?r&=-5:a=i instanceof Kn?i.token:Wn(i)}e.push({token:a,options:r})}}else if(n.useExisting){var a;e=[{token:a=Wn(n.useExisting),options:6}]}else if(!(t||we in n))throw Me("'deps' required",n);return e}(n),t=me,l=ve,r=!1,o=Wn(n.provide);if(we in n)l=n.useValue;else if(n.useFactory)t=n.useFactory;else if(n.useExisting);else if(n.useClass)r=!0,t=Wn(n.useClass);else{if("function"!=typeof o)throw Me("StaticProvider does not have [useValue|useFactory|useExisting|useClass] or [provide] is not newable",n);r=!0,t=o}return{deps:e,fn:t,useNew:r,value:l}}(t);if(!0===t.multi){var u=e.get(r);if(u){if(u.fn!==be)throw Pe(r)}else e.set(r,u={token:t.provide,deps:[],useNew:!1,fn:be,value:ve});u.deps.push({token:r=t,options:6})}var i=e.get(r);if(i&&i.fn==be)throw Pe(r);e.set(r,o)}}(l,n)}return n.prototype.get=function(n,e,t){void 0===t&&(t=$n.Default);var l=this._records.get(n);try{return function n(e,t,l,r,o,u){try{return function(e,t,l,r,o,u){var i,a;if(!t||u&$n.SkipSelf)u&$n.Self||(a=r.get(e,o,$n.Default));else{if((a=t.value)==ye)throw Error(xe+"Circular dependency");if(a===ve){t.value=ye;var s=t.useNew,p=t.fn,d=t.deps,f=ve;if(d.length){f=[];for(var h=0;h<d.length;h++){var g=d[h],m=g.options,v=2&m?l.get(g.token):void 0;f.push(n(g.token,v,l,v||4&m?r:_e,1&m?null:he.THROW_IF_NOT_FOUND,$n.Default))}}t.value=a=s?new((i=p).bind.apply(i,c([void 0],f))):p.apply(void 0,f)}}return a}(e,t,l,r,o,u)}catch(i){throw i instanceof Error||(i=new Error(i)),(i.ngTempTokenPath=i.ngTempTokenPath||[]).unshift(e),t&&t.value==ye&&(t.value=ve),i}}(n,l,this._records,this.parent,e,t)}catch(o){var r=o.ngTempTokenPath;throw n[ce]&&r.unshift(n[ce]),o.message=Oe("\n"+o.message,r,this.source),o.ngTokenPath=r,o.ngTempTokenPath=null,o}},n.prototype.toString=function(){var n=[];return this._records.forEach(function(e,t){return n.push(Vn(t))}),"StaticInjector["+n.join(", ")+"]"},n}();function Pe(n){return Me("Cannot mix multi providers and regular providers",n)}function Oe(n,e,t){void 0===t&&(t=null),n=n&&"\n"===n.charAt(0)&&n.charAt(1)==xe?n.substr(2):n;var l=Vn(e);if(e instanceof Array)l=e.map(Vn).join(" -> ");else if("object"==typeof e){var r=[];for(var o in e)if(e.hasOwnProperty(o)){var u=e[o];r.push(o+":"+("string"==typeof u?JSON.stringify(u):Vn(u)))}l="{"+r.join(", ")+"}"}return"StaticInjectorError"+(t?"("+t+")":"")+"["+l+"]: "+n.replace(Ce,"\n ")}function Me(n,e){return new Error(Oe(n,e))}var Se=new Mn("The presence of this token marks an injector as being the root injector."),Ee=function(){return function(){}}(),Ae=function(){return function(){}}();function Te(n){var e=Error("No component factory found for "+Vn(n)+". Did you add it to @NgModule.entryComponents?");return e[Le]=n,e}var Le="ngComponent",Ie=function(){function n(){}return n.prototype.resolveComponentFactory=function(n){throw Te(n)},n}(),Re=function(){function n(){}return n.NULL=new Ie,n}(),Ne=function(){function n(n,e,t){this._parent=e,this._ngModule=t,this._factories=new Map;for(var l=0;l<n.length;l++){var r=n[l];this._factories.set(r.componentType,r)}}return n.prototype.resolveComponentFactory=function(n){var e=this._factories.get(n);if(!e&&this._parent&&(e=this._parent.resolveComponentFactory(n)),!e)throw Te(n);return new je(e,this._ngModule)},n}(),je=function(n){function e(e,t){var l=n.call(this)||this;return l.factory=e,l.ngModule=t,l.selector=e.selector,l.componentType=e.componentType,l.ngContentSelectors=e.ngContentSelectors,l.inputs=e.inputs,l.outputs=e.outputs,l}return r(e,n),e.prototype.create=function(n,e,t,l){return this.factory.create(n,e,t,l||this.ngModule)},e}(Ae),De=function(){return function(){}}(),Ue=function(){return function(){}}(),Be=function(){function n(n){this.nativeElement=n}return n.__NG_ELEMENT_ID__=function(){return qe(n)},n}(),qe=se,ze=function(){return function(){}}(),Ve=function(){return function(){}}(),He=function(n){return n[n.Important=1]="Important",n[n.DashCase=2]="DashCase",n}({}),Fe=function(){function n(){}return n.__NG_ELEMENT_ID__=function(){return We()},n}(),We=se,Ge=function(n){return n[n.NONE=0]="NONE",n[n.HTML=1]="HTML",n[n.STYLE=2]="STYLE",n[n.SCRIPT=3]="SCRIPT",n[n.URL=4]="URL",n[n.RESOURCE_URL=5]="RESOURCE_URL",n}({}),Ze=function(){return function(){}}(),Ke=new(function(){return function(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}())("7.2.15"),Qe=!0,Ye=!1;function Je(){return Ye=!0,Qe}var $e=function(){function n(n){if(this.defaultDoc=n,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){var e=this.inertDocument.createElement("html");this.inertDocument.appendChild(e),this.inertBodyElement=this.inertDocument.createElement("body"),e.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='<svg><g onload="this.parentNode.remove()"></g></svg>',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='<svg><p><style><img src="</style><img src=x onerror=alert(1)//">',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(n){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return n.prototype.getInertBodyElement_XHR=function(n){n="<body><remove></remove>"+n+"</body>";try{n=encodeURI(n)}catch(l){return null}var e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+n,!1),e.send(void 0);var t=e.response.body;return t.removeChild(t.firstChild),t},n.prototype.getInertBodyElement_DOMParser=function(n){n="<body><remove></remove>"+n+"</body>";try{var e=(new window.DOMParser).parseFromString(n,"text/html").body;return e.removeChild(e.firstChild),e}catch(t){return null}},n.prototype.getInertBodyElement_InertDocument=function(n){var e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=n,e):(this.inertBodyElement.innerHTML=n,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)},n.prototype.stripCustomNsAttrs=function(n){for(var e=n.attributes,t=e.length-1;0<t;t--){var l=e.item(t).name;"xmlns:ns1"!==l&&0!==l.indexOf("ns1:")||n.removeAttribute(l)}for(var r=n.firstChild;r;)r.nodeType===Node.ELEMENT_NODE&&this.stripCustomNsAttrs(r),r=r.nextSibling},n}(),Xe=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:\/?#]*(?:[\/?#]|$))/gi,nt=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i;function et(n){return(n=String(n)).match(Xe)||n.match(nt)?n:(Je()&&console.warn("WARNING: sanitizing unsafe URL value "+n+" (see http://g.co/ng/security#xss)"),"unsafe:"+n)}function tt(n){var e,t,l={};try{for(var r=a(n.split(",")),o=r.next();!o.done;o=r.next())l[o.value]=!0}catch(u){e={error:u}}finally{try{o&&!o.done&&(t=r.return)&&t.call(r)}finally{if(e)throw e.error}}return l}function lt(){for(var n,e,t=[],l=0;l<arguments.length;l++)t[l]=arguments[l];var r={};try{for(var o=a(t),u=o.next();!u.done;u=o.next()){var i=u.value;for(var s in i)i.hasOwnProperty(s)&&(r[s]=!0)}}catch(c){n={error:c}}finally{try{u&&!u.done&&(e=o.return)&&e.call(o)}finally{if(n)throw n.error}}return r}var rt,ot=tt("area,br,col,hr,img,wbr"),ut=tt("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),it=tt("rp,rt"),at=lt(it,ut),st=lt(ot,lt(ut,tt("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),lt(it,tt("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),at),ct=tt("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),pt=tt("srcset"),dt=lt(ct,pt,tt("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width")),ft=tt("script,style,template"),ht=function(){function n(){this.sanitizedSomething=!1,this.buf=[]}return n.prototype.sanitizeChildren=function(n){for(var e=n.firstChild,t=!0;e;)if(e.nodeType===Node.ELEMENT_NODE?t=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,t&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);var l=this.checkClobberedElement(e,e.nextSibling);if(l){e=l;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")},n.prototype.startElement=function(n){var e,t=n.nodeName.toLowerCase();if(!st.hasOwnProperty(t))return this.sanitizedSomething=!0,!ft.hasOwnProperty(t);this.buf.push("<"),this.buf.push(t);for(var l=n.attributes,r=0;r<l.length;r++){var o=l.item(r),u=o.name,i=u.toLowerCase();if(dt.hasOwnProperty(i)){var a=o.value;ct[i]&&(a=et(a)),pt[i]&&(e=a,a=(e=String(e)).split(",").map(function(n){return et(n.trim())}).join(", ")),this.buf.push(" ",u,'="',vt(a),'"')}else this.sanitizedSomething=!0}return this.buf.push(">"),!0},n.prototype.endElement=function(n){var e=n.nodeName.toLowerCase();st.hasOwnProperty(e)&&!ot.hasOwnProperty(e)&&(this.buf.push("</"),this.buf.push(e),this.buf.push(">"))},n.prototype.chars=function(n){this.buf.push(vt(n))},n.prototype.checkClobberedElement=function(n,e){if(e&&(n.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+n.outerHTML);return e},n}(),gt=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,mt=/([^\#-~ |!])/g;function vt(n){return n.replace(/&/g,"&").replace(gt,function(n){return"&#"+(1024*(n.charCodeAt(0)-55296)+(n.charCodeAt(1)-56320)+65536)+";"}).replace(mt,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(/</g,"<").replace(/>/g,">")}function yt(n){return"content"in n&&function(n){return n.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===n.nodeName}(n)?n.content:null}var bt=function(n){function e(e){void 0===e&&(e=!1);var t=n.call(this)||this;return t.__isAsync=e,t}return r(e,n),e.prototype.emit=function(e){n.prototype.next.call(this,e)},e.prototype.subscribe=function(e,t,l){var r,o=function(n){return null},u=function(){return null};e&&"object"==typeof e?(r=this.__isAsync?function(n){setTimeout(function(){return e.next(n)})}:function(n){e.next(n)},e.error&&(o=this.__isAsync?function(n){setTimeout(function(){return e.error(n)})}:function(n){e.error(n)}),e.complete&&(u=this.__isAsync?function(){setTimeout(function(){return e.complete()})}:function(){e.complete()})):(r=this.__isAsync?function(n){setTimeout(function(){return e(n)})}:function(n){e(n)},t&&(o=this.__isAsync?function(n){setTimeout(function(){return t(n)})}:function(n){t(n)}),l&&(u=this.__isAsync?function(){setTimeout(function(){return l()})}:function(){l()}));var i=n.prototype.subscribe.call(this,r,o,u);return e instanceof w&&e.add(i),i},e}(B),wt=function(){function n(){}return n.__NG_ELEMENT_ID__=function(){return _t(n,Be)},n}(),_t=se,Ct=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"),xt=/^url\(([^)]+)\)$/,kt=function(){return function(){}}(),Pt=Ln("Input",function(n){return{bindingPropertyName:n}},void 0,function(n){return function(n,e){for(var t=[],l=2;l<arguments.length;l++)t[l-2]=arguments[l];var r=n.constructor;r.hasOwnProperty(kn)||function(n){var e=n.constructor,t=e.ngBaseDef,l=e.ngBaseDef={inputs:{},outputs:{},declaredInputs:{}};t&&(Cn(l.inputs,t.inputs),Cn(l.outputs,t.outputs),Cn(l.declaredInputs,t.declaredInputs))}(n),(function(n){return n.inputs||{}}(r.ngBaseDef))[e]=t[0]}}()),Ot=Ln("HostBinding",function(n){return{hostPropertyName:n}}),Mt="ngDebugContext",St="ngOriginalError",Et="ngErrorLogger";function At(n){return n[Mt]}function Tt(n){return n[St]}function Lt(n){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];n.error.apply(n,c(e))}var It=function(){function n(){this._console=console}return n.prototype.handleError=function(n){var e=this._findOriginalError(n),t=this._findContext(n),l=function(n){return n[Et]||Lt}(n);l(this._console,"ERROR",n),e&&l(this._console,"ORIGINAL ERROR",e),t&&l(this._console,"ERROR CONTEXT",t)},n.prototype._findContext=function(n){return n?At(n)?At(n):this._findContext(Tt(n)):null},n.prototype._findOriginalError=function(n){for(var e=Tt(n);e&&Tt(e);)e=Tt(e);return e},n}();function Rt(n){return!!n&&"function"==typeof n.then}function Nt(n){return!!n&&"function"==typeof n.subscribe}var jt=new Mn("Application Initializer"),Dt=function(){function n(n){var e=this;this.appInits=n,this.initialized=!1,this.done=!1,this.donePromise=new Promise(function(n,t){e.resolve=n,e.reject=t})}return n.prototype.runInitializers=function(){var n=this;if(!this.initialized){var e=[],t=function(){n.done=!0,n.resolve()};if(this.appInits)for(var l=0;l<this.appInits.length;l++){var r=this.appInits[l]();Rt(r)&&e.push(r)}Promise.all(e).then(function(){t()}).catch(function(e){n.reject(e)}),0===e.length&&t(),this.initialized=!0}},n}(),Ut=new Mn("AppId");function Bt(){return""+qt()+qt()+qt()}function qt(){return String.fromCharCode(97+Math.floor(25*Math.random()))}var zt=new Mn("Platform Initializer"),Vt=new Mn("Platform ID"),Ht=new Mn("appBootstrapListener"),Ft=function(){function n(){}return n.prototype.log=function(n){console.log(n)},n.prototype.warn=function(n){console.warn(n)},n}();function Wt(){throw new Error("Runtime compiler is not loaded")}var Gt,Zt,Kt=Wt,Qt=Wt,Yt=Wt,Jt=Wt,$t=function(){function n(){this.compileModuleSync=Kt,this.compileModuleAsync=Qt,this.compileModuleAndAllComponentsSync=Yt,this.compileModuleAndAllComponentsAsync=Jt}return n.prototype.clearCache=function(){},n.prototype.clearCacheFor=function(n){},n.prototype.getModuleId=function(n){},n}(),Xt=function(){return function(){}}();function nl(){var n=jn.wtf;return!(!n||!(Gt=n.trace)||(Zt=Gt.events,0))}var el=nl();function tl(n,e){return null}var ll=el?function(n,e){return void 0===e&&(e=null),Zt.createScope(n,e)}:function(n,e){return tl},rl=el?function(n,e){return Gt.leaveScope(n,e),e}:function(n,e){return e},ol=function(){function n(n){var e,t=n.enableLongStackTrace,l=void 0!==t&&t;if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new bt(!1),this.onMicrotaskEmpty=new bt(!1),this.onStable=new bt(!1),this.onError=new bt(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");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)),l&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:function(n,t,l,r,o,u){try{return sl(e),n.invokeTask(l,r,o,u)}finally{cl(e)}},onInvoke:function(n,t,l,r,o,u,i){try{return sl(e),n.invoke(l,r,o,u,i)}finally{cl(e)}},onHasTask:function(n,t,l,r){n.hasTask(l,r),t===l&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,al(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:function(n,t,l,r){return n.handleError(l,r),e.runOutsideAngular(function(){return e.onError.emit(r)}),!1}})}return n.isInAngularZone=function(){return!0===Zone.current.get("isAngularZone")},n.assertInAngularZone=function(){if(!n.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")},n.assertNotInAngularZone=function(){if(n.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")},n.prototype.run=function(n,e,t){return this._inner.run(n,e,t)},n.prototype.runTask=function(n,e,t,l){var r=this._inner,o=r.scheduleEventTask("NgZoneEvent: "+l,n,il,ul,ul);try{return r.runTask(o,e,t)}finally{r.cancelTask(o)}},n.prototype.runGuarded=function(n,e,t){return this._inner.runGuarded(n,e,t)},n.prototype.runOutsideAngular=function(n){return this._outer.run(n)},n}();function ul(){}var il={};function al(n){if(0==n._nesting&&!n.hasPendingMicrotasks&&!n.isStable)try{n._nesting++,n.onMicrotaskEmpty.emit(null)}finally{if(n._nesting--,!n.hasPendingMicrotasks)try{n.runOutsideAngular(function(){return n.onStable.emit(null)})}finally{n.isStable=!0}}}function sl(n){n._nesting++,n.isStable&&(n.isStable=!1,n.onUnstable.emit(null))}function cl(n){n._nesting--,al(n)}var pl,dl=function(){function n(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new bt,this.onMicrotaskEmpty=new bt,this.onStable=new bt,this.onError=new bt}return n.prototype.run=function(n){return n()},n.prototype.runGuarded=function(n){return n()},n.prototype.runOutsideAngular=function(n){return n()},n.prototype.runTask=function(n){return n()},n}(),fl=function(){function n(n){var e=this;this._ngZone=n,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),n.run(function(){e.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}return n.prototype._watchAngularEvents=function(){var n=this;this._ngZone.onUnstable.subscribe({next:function(){n._didWork=!0,n._isZoneStable=!1}}),this._ngZone.runOutsideAngular(function(){n._ngZone.onStable.subscribe({next:function(){ol.assertNotInAngularZone(),qn(function(){n._isZoneStable=!0,n._runCallbacksIfReady()})}})})},n.prototype.increasePendingRequestCount=function(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount},n.prototype.decreasePendingRequestCount=function(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount},n.prototype.isStable=function(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks},n.prototype._runCallbacksIfReady=function(){var n=this;if(this.isStable())qn(function(){for(;0!==n._callbacks.length;){var e=n._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(n._didWork)}n._didWork=!1});else{var e=this.getPendingTasks();this._callbacks=this._callbacks.filter(function(n){return!n.updateCb||!n.updateCb(e)||(clearTimeout(n.timeoutId),!1)}),this._didWork=!0}},n.prototype.getPendingTasks=function(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(function(n){return{source:n.source,creationLocation:n.creationLocation,data:n.data}}):[]},n.prototype.addCallback=function(n,e,t){var l=this,r=-1;e&&e>0&&(r=setTimeout(function(){l._callbacks=l._callbacks.filter(function(n){return n.timeoutId!==r}),n(l._didWork,l.getPendingTasks())},e)),this._callbacks.push({doneCb:n,timeoutId:r,updateCb:t})},n.prototype.whenStable=function(n,e,t){if(t&&!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(n,e,t),this._runCallbacksIfReady()},n.prototype.getPendingRequestCount=function(){return this._pendingCount},n.prototype.findProviders=function(n,e,t){return[]},n}(),hl=function(){function n(){this._applications=new Map,gl.addToWindow(this)}return n.prototype.registerApplication=function(n,e){this._applications.set(n,e)},n.prototype.unregisterApplication=function(n){this._applications.delete(n)},n.prototype.unregisterAllApplications=function(){this._applications.clear()},n.prototype.getTestability=function(n){return this._applications.get(n)||null},n.prototype.getAllTestabilities=function(){return Array.from(this._applications.values())},n.prototype.getAllRootElements=function(){return Array.from(this._applications.keys())},n.prototype.findTestabilityInTree=function(n,e){return void 0===e&&(e=!0),gl.findTestabilityInTree(this,n,e)},u([i("design:paramtypes",[])],n)}(),gl=new(function(){function n(){}return n.prototype.addToWindow=function(n){},n.prototype.findTestabilityInTree=function(n,e,t){return null},n}()),ml=new Mn("AllowMultipleToken"),vl=function(){return function(n,e){this.name=n,this.token=e}}();function yl(n,e,t){void 0===t&&(t=[]);var l="Platform: "+e,r=new Mn(l);return function(e){void 0===e&&(e=[]);var o=bl();if(!o||o.injector.get(ml,!1))if(n)n(t.concat(e).concat({provide:r,useValue:!0}));else{var u=t.concat(e).concat({provide:r,useValue:!0});!function(n){if(pl&&!pl.destroyed&&!pl.injector.get(ml,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");pl=n.get(wl);var e=n.get(zt,null);e&&e.forEach(function(n){return n()})}(he.create({providers:u,name:l}))}return function(n){var e=bl();if(!e)throw new Error("No platform exists!");if(!e.injector.get(n,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}(r)}}function bl(){return pl&&!pl.destroyed?pl:null}var wl=function(){function n(n){this._injector=n,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return n.prototype.bootstrapModuleFactory=function(n,e){var t,l=this,r="noop"===(t=e?e.ngZone:void 0)?new dl:("zone.js"===t?void 0:t)||new ol({enableLongStackTrace:Je()}),o=[{provide:ol,useValue:r}];return r.run(function(){var e=he.create({providers:o,parent:l.injector,name:n.moduleType.name}),t=n.create(e),u=t.injector.get(It,null);if(!u)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return t.onDestroy(function(){return xl(l._modules,t)}),r.runOutsideAngular(function(){return r.onError.subscribe({next:function(n){u.handleError(n)}})}),function(n,e,r){try{var o=((u=t.injector.get(Dt)).runInitializers(),u.donePromise.then(function(){return l._moduleDoBootstrap(t),t}));return Rt(o)?o.catch(function(t){throw e.runOutsideAngular(function(){return n.handleError(t)}),t}):o}catch(i){throw e.runOutsideAngular(function(){return n.handleError(i)}),i}var u}(u,r)})},n.prototype.bootstrapModule=function(n,e){var t=this;void 0===e&&(e=[]);var l=_l({},e);return function(n,e,t){return n.get(Xt).createCompiler([e]).compileModuleAsync(t)}(this.injector,l,n).then(function(n){return t.bootstrapModuleFactory(n,l)})},n.prototype._moduleDoBootstrap=function(n){var e=n.injector.get(Cl);if(n._bootstrapComponents.length>0)n._bootstrapComponents.forEach(function(n){return e.bootstrap(n)});else{if(!n.instance.ngDoBootstrap)throw new Error("The module "+Vn(n.instance.constructor)+' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.');n.instance.ngDoBootstrap(e)}this._modules.push(n)},n.prototype.onDestroy=function(n){this._destroyListeners.push(n)},Object.defineProperty(n.prototype,"injector",{get:function(){return this._injector},enumerable:!0,configurable:!0}),n.prototype.destroy=function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(n){return n.destroy()}),this._destroyListeners.forEach(function(n){return n()}),this._destroyed=!0},Object.defineProperty(n.prototype,"destroyed",{get:function(){return this._destroyed},enumerable:!0,configurable:!0}),n}();function _l(n,e){return Array.isArray(e)?e.reduce(_l,n):o({},n,e)}var Cl=function(){function n(n,e,t,l,r,o){var u=this;this._zone=n,this._console=e,this._injector=t,this._exceptionHandler=l,this._componentFactoryResolver=r,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Je(),this._zone.onMicrotaskEmpty.subscribe({next:function(){u._zone.run(function(){u.tick()})}});var i=new I(function(n){u._stable=u._zone.isStable&&!u._zone.hasPendingMacrotasks&&!u._zone.hasPendingMicrotasks,u._zone.runOutsideAngular(function(){n.next(u._stable),n.complete()})}),a=new I(function(n){var e;u._zone.runOutsideAngular(function(){e=u._zone.onStable.subscribe(function(){ol.assertNotInAngularZone(),qn(function(){u._stable||u._zone.hasPendingMacrotasks||u._zone.hasPendingMicrotasks||(u._stable=!0,n.next(!0))})})});var t=u._zone.onUnstable.subscribe(function(){ol.assertInAngularZone(),u._stable&&(u._stable=!1,u._zone.runOutsideAngular(function(){n.next(!1)}))});return function(){e.unsubscribe(),t.unsubscribe()}});this.isStable=pn(i,a.pipe(function(n){return dn()(yn(wn)(n))}))}var e;return e=n,n.prototype.bootstrap=function(n,e){var t,l=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.");t=n instanceof Ae?n:this._componentFactoryResolver.resolveComponentFactory(n),this.componentTypes.push(t.componentType);var r=t instanceof je?null:this._injector.get(De),o=t.create(he.NULL,[],e||t.selector,r);o.onDestroy(function(){l._unloadComponent(o)});var u=o.injector.get(fl,null);return u&&o.injector.get(hl).registerApplication(o.location.nativeElement,u),this._loadComponent(o),Je()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),o},n.prototype.tick=function(){var n=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");var t=e._tickScope();try{this._runningTick=!0,this._views.forEach(function(n){return n.detectChanges()}),this._enforceNoNewChanges&&this._views.forEach(function(n){return n.checkNoChanges()})}catch(l){this._zone.runOutsideAngular(function(){return n._exceptionHandler.handleError(l)})}finally{this._runningTick=!1,rl(t)}},n.prototype.attachView=function(n){var e=n;this._views.push(e),e.attachToAppRef(this)},n.prototype.detachView=function(n){var e=n;xl(this._views,e),e.detachFromAppRef()},n.prototype._loadComponent=function(n){this.attachView(n.hostView),this.tick(),this.components.push(n),this._injector.get(Ht,[]).concat(this._bootstrapListeners).forEach(function(e){return e(n)})},n.prototype._unloadComponent=function(n){this.detachView(n.hostView),xl(this.components,n)},n.prototype.ngOnDestroy=function(){this._views.slice().forEach(function(n){return n.destroy()})},Object.defineProperty(n.prototype,"viewCount",{get:function(){return this._views.length},enumerable:!0,configurable:!0}),n._tickScope=ll("ApplicationRef#tick()"),n}();function xl(n,e){var t=n.indexOf(e);t>-1&&n.splice(t,1)}var kl=function(){function n(){this.dirty=!0,this._results=[],this.changes=new bt,this.length=0}return n.prototype.map=function(n){return this._results.map(n)},n.prototype.filter=function(n){return this._results.filter(n)},n.prototype.find=function(n){return this._results.find(n)},n.prototype.reduce=function(n,e){return this._results.reduce(n,e)},n.prototype.forEach=function(n){this._results.forEach(n)},n.prototype.some=function(n){return this._results.some(n)},n.prototype.toArray=function(){return this._results.slice()},n.prototype[Bn()]=function(){return this._results[Bn()]()},n.prototype.toString=function(){return this._results.toString()},n.prototype.reset=function(n){this._results=function n(e){return e.reduce(function(e,t){var l=Array.isArray(t)?n(t):t;return e.concat(l)},[])}(n),this.dirty=!1,this.length=this._results.length,this.last=this._results[this.length-1],this.first=this._results[0]},n.prototype.notifyOnChanges=function(){this.changes.emit(this)},n.prototype.setDirty=function(){this.dirty=!0},n.prototype.destroy=function(){this.changes.complete(),this.changes.unsubscribe()},n}(),Pl=function(){return function(){}}(),Ol={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Ml=function(){function n(n,e){this._compiler=n,this._config=e||Ol}return n.prototype.load=function(n){return this._compiler instanceof $t?this.loadFactory(n):this.loadAndCompile(n)},n.prototype.loadAndCompile=function(n){var e=this,l=s(n.split("#"),2),r=l[0],o=l[1];return void 0===o&&(o="default"),t("crnd")(r).then(function(n){return n[o]}).then(function(n){return Sl(n,r,o)}).then(function(n){return e._compiler.compileModuleAsync(n)})},n.prototype.loadFactory=function(n){var e=s(n.split("#"),2),l=e[0],r=e[1],o="NgFactory";return void 0===r&&(r="default",o=""),t("crnd")(this._config.factoryPathPrefix+l+this._config.factoryPathSuffix).then(function(n){return n[r+o]}).then(function(n){return Sl(n,l,r)})},n}();function Sl(n,e,t){if(!n)throw new Error("Cannot find '"+t+"' in '"+e+"'");return n}var El=function(){function n(){}return n.__NG_ELEMENT_ID__=function(){return Al(n,Be)},n}(),Al=se,Tl=function(){function n(){}return n.__NG_ELEMENT_ID__=function(){return Ll()},n}(),Ll=function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e]},Il=function(){return function(n,e){this.name=n,this.callback=e}}(),Rl=function(){function n(n,e,t){this.listeners=[],this.parent=null,this._debugContext=t,this.nativeNode=n,e&&e instanceof Nl&&e.addChild(this)}return Object.defineProperty(n.prototype,"injector",{get:function(){return this._debugContext.injector},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"componentInstance",{get:function(){return this._debugContext.component},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"context",{get:function(){return this._debugContext.context},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"references",{get:function(){return this._debugContext.references},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"providerTokens",{get:function(){return this._debugContext.providerTokens},enumerable:!0,configurable:!0}),n}(),Nl=function(n){function e(e,t,l){var r=n.call(this,e,t,l)||this;return r.properties={},r.attributes={},r.classes={},r.styles={},r.childNodes=[],r.nativeElement=e,r}return r(e,n),e.prototype.addChild=function(n){n&&(this.childNodes.push(n),n.parent=this)},e.prototype.removeChild=function(n){var e=this.childNodes.indexOf(n);-1!==e&&(n.parent=null,this.childNodes.splice(e,1))},e.prototype.insertChildrenAfter=function(n,e){var t,l=this,r=this.childNodes.indexOf(n);-1!==r&&((t=this.childNodes).splice.apply(t,c([r+1,0],e)),e.forEach(function(e){e.parent&&e.parent.removeChild(e),n.parent=l}))},e.prototype.insertBefore=function(n,e){var t=this.childNodes.indexOf(n);-1===t?this.addChild(e):(e.parent&&e.parent.removeChild(e),e.parent=this,this.childNodes.splice(t,0,e))},e.prototype.query=function(n){return this.queryAll(n)[0]||null},e.prototype.queryAll=function(n){var e=[];return function n(e,t,l){e.childNodes.forEach(function(e){e instanceof Nl&&(t(e)&&l.push(e),n(e,t,l))})}(this,n,e),e},e.prototype.queryAllNodes=function(n){var e=[];return function n(e,t,l){e instanceof Nl&&e.childNodes.forEach(function(e){t(e)&&l.push(e),e instanceof Nl&&n(e,t,l)})}(this,n,e),e},Object.defineProperty(e.prototype,"children",{get:function(){return this.childNodes.filter(function(n){return n instanceof e})},enumerable:!0,configurable:!0}),e.prototype.triggerEventHandler=function(n,e){this.listeners.forEach(function(t){t.name==n&&t.callback(e)})},e}(Rl),jl=new Map,Dl=function(n){return jl.get(n)||null};function Ul(n){jl.set(n.nativeNode,n)}var Bl=function(){function n(){}return n.prototype.supports=function(n){return ie(n)},n.prototype.create=function(n){return new zl(n)},n}(),ql=function(n,e){return e},zl=function(){function n(n){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=n||ql}return n.prototype.forEachItem=function(n){var e;for(e=this._itHead;null!==e;e=e._next)n(e)},n.prototype.forEachOperation=function(n){for(var e=this._itHead,t=this._removalsHead,l=0,r=null;e||t;){var o=!t||e&&e.currentIndex<Wl(t,l,r)?e:t,u=Wl(o,l,r),i=o.currentIndex;if(o===t)l--,t=t._nextRemoved;else if(e=e._next,null==o.previousIndex)l++;else{r||(r=[]);var a=u-l,s=i-l;if(a!=s){for(var c=0;c<a;c++){var p=c<r.length?r[c]:r[c]=0,d=p+c;s<=d&&d<a&&(r[c]=p+1)}r[o.previousIndex]=s-a}}u!==i&&n(o,u,i)}},n.prototype.forEachPreviousItem=function(n){var e;for(e=this._previousItHead;null!==e;e=e._nextPrevious)n(e)},n.prototype.forEachAddedItem=function(n){var e;for(e=this._additionsHead;null!==e;e=e._nextAdded)n(e)},n.prototype.forEachMovedItem=function(n){var e;for(e=this._movesHead;null!==e;e=e._nextMoved)n(e)},n.prototype.forEachRemovedItem=function(n){var e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)n(e)},n.prototype.forEachIdentityChange=function(n){var e;for(e=this._identityChangesHead;null!==e;e=e._nextIdentityChange)n(e)},n.prototype.diff=function(n){if(null==n&&(n=[]),!ie(n))throw new Error("Error trying to diff '"+Vn(n)+"'. Only arrays and iterables are allowed");return this.check(n)?this:null},n.prototype.onDestroy=function(){},n.prototype.check=function(n){var e=this;this._reset();var t,l,r,o=this._itHead,u=!1;if(Array.isArray(n)){this.length=n.length;for(var i=0;i<this.length;i++)r=this._trackByFn(i,l=n[i]),null!==o&&zn(o.trackById,r)?(u&&(o=this._verifyReinsertion(o,l,r,i)),zn(o.item,l)||this._addIdentityChange(o,l)):(o=this._mismatch(o,l,r,i),u=!0),o=o._next}else t=0,function(n,e){if(Array.isArray(n))for(var t=0;t<n.length;t++)e(n[t]);else for(var l=n[Bn()](),r=void 0;!(r=l.next()).done;)e(r.value)}(n,function(n){r=e._trackByFn(t,n),null!==o&&zn(o.trackById,r)?(u&&(o=e._verifyReinsertion(o,n,r,t)),zn(o.item,n)||e._addIdentityChange(o,n)):(o=e._mismatch(o,n,r,t),u=!0),o=o._next,t++}),this.length=t;return this._truncate(o),this.collection=n,this.isDirty},Object.defineProperty(n.prototype,"isDirty",{get:function(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead},enumerable:!0,configurable:!0}),n.prototype._reset=function(){if(this.isDirty){var n=void 0,e=void 0;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=e)n.previousIndex=n.currentIndex,e=n._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}},n.prototype._mismatch=function(n,e,t,l){var r;return null===n?r=this._itTail:(r=n._prev,this._remove(n)),null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(t,l))?(zn(n.item,e)||this._addIdentityChange(n,e),this._moveAfter(n,r,l)):null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(t,null))?(zn(n.item,e)||this._addIdentityChange(n,e),this._reinsertAfter(n,r,l)):n=this._addAfter(new Vl(e,t),r,l),n},n.prototype._verifyReinsertion=function(n,e,t,l){var r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(t,null);return null!==r?n=this._reinsertAfter(r,n._prev,l):n.currentIndex!=l&&(n.currentIndex=l,this._addToMoves(n,l)),n},n.prototype._truncate=function(n){for(;null!==n;){var e=n._next;this._addToRemovals(this._unlink(n)),n=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)},n.prototype._reinsertAfter=function(n,e,t){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);var l=n._prevRemoved,r=n._nextRemoved;return null===l?this._removalsHead=r:l._nextRemoved=r,null===r?this._removalsTail=l:r._prevRemoved=l,this._insertAfter(n,e,t),this._addToMoves(n,t),n},n.prototype._moveAfter=function(n,e,t){return this._unlink(n),this._insertAfter(n,e,t),this._addToMoves(n,t),n},n.prototype._addAfter=function(n,e,t){return this._insertAfter(n,e,t),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n},n.prototype._insertAfter=function(n,e,t){var l=null===e?this._itHead:e._next;return n._next=l,n._prev=e,null===l?this._itTail=n:l._prev=n,null===e?this._itHead=n:e._next=n,null===this._linkedRecords&&(this._linkedRecords=new Fl),this._linkedRecords.put(n),n.currentIndex=t,n},n.prototype._remove=function(n){return this._addToRemovals(this._unlink(n))},n.prototype._unlink=function(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);var e=n._prev,t=n._next;return null===e?this._itHead=t:e._next=t,null===t?this._itTail=e:t._prev=e,n},n.prototype._addToMoves=function(n,e){return n.previousIndex===e?n:(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n,n)},n.prototype._addToRemovals=function(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Fl),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n},n.prototype._addIdentityChange=function(n,e){return n.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n},n}(),Vl=function(){return function(n,e){this.item=n,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}(),Hl=function(){function n(){this._head=null,this._tail=null}return n.prototype.add=function(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)},n.prototype.get=function(n,e){var t;for(t=this._head;null!==t;t=t._nextDup)if((null===e||e<=t.currentIndex)&&zn(t.trackById,n))return t;return null},n.prototype.remove=function(n){var e=n._prevDup,t=n._nextDup;return null===e?this._head=t:e._nextDup=t,null===t?this._tail=e:t._prevDup=e,null===this._head},n}(),Fl=function(){function n(){this.map=new Map}return n.prototype.put=function(n){var e=n.trackById,t=this.map.get(e);t||(t=new Hl,this.map.set(e,t)),t.add(n)},n.prototype.get=function(n,e){var t=this.map.get(n);return t?t.get(n,e):null},n.prototype.remove=function(n){var e=n.trackById;return this.map.get(e).remove(n)&&this.map.delete(e),n},Object.defineProperty(n.prototype,"isEmpty",{get:function(){return 0===this.map.size},enumerable:!0,configurable:!0}),n.prototype.clear=function(){this.map.clear()},n}();function Wl(n,e,t){var l=n.previousIndex;if(null===l)return l;var r=0;return t&&l<t.length&&(r=t[l]),l+e+r}var Gl=function(){function n(){}return n.prototype.supports=function(n){return n instanceof Map||ae(n)},n.prototype.create=function(){return new Zl},n}(),Zl=function(){function n(){this._records=new Map,this._mapHead=null,this._appendAfter=null,this._previousMapHead=null,this._changesHead=null,this._changesTail=null,this._additionsHead=null,this._additionsTail=null,this._removalsHead=null,this._removalsTail=null}return Object.defineProperty(n.prototype,"isDirty",{get:function(){return null!==this._additionsHead||null!==this._changesHead||null!==this._removalsHead},enumerable:!0,configurable:!0}),n.prototype.forEachItem=function(n){var e;for(e=this._mapHead;null!==e;e=e._next)n(e)},n.prototype.forEachPreviousItem=function(n){var e;for(e=this._previousMapHead;null!==e;e=e._nextPrevious)n(e)},n.prototype.forEachChangedItem=function(n){var e;for(e=this._changesHead;null!==e;e=e._nextChanged)n(e)},n.prototype.forEachAddedItem=function(n){var e;for(e=this._additionsHead;null!==e;e=e._nextAdded)n(e)},n.prototype.forEachRemovedItem=function(n){var e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)n(e)},n.prototype.diff=function(n){if(n){if(!(n instanceof Map||ae(n)))throw new Error("Error trying to diff '"+Vn(n)+"'. Only maps and objects are allowed")}else n=new Map;return this.check(n)?this:null},n.prototype.onDestroy=function(){},n.prototype.check=function(n){var e=this;this._reset();var t=this._mapHead;if(this._appendAfter=null,this._forEach(n,function(n,l){if(t&&t.key===l)e._maybeAddToChanges(t,n),e._appendAfter=t,t=t._next;else{var r=e._getOrCreateRecordForKey(l,n);t=e._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(var l=t;null!==l;l=l._nextRemoved)l===this._mapHead&&(this._mapHead=null),this._records.delete(l.key),l._nextRemoved=l._next,l.previousValue=l.currentValue,l.currentValue=null,l._prev=null,l._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty},n.prototype._insertBeforeOrAppend=function(n,e){if(n){var t=n._prev;return e._next=n,e._prev=t,n._prev=e,t&&(t._next=e),n===this._mapHead&&(this._mapHead=e),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null},n.prototype._getOrCreateRecordForKey=function(n,e){if(this._records.has(n)){var t=this._records.get(n);this._maybeAddToChanges(t,e);var l=t._prev,r=t._next;return l&&(l._next=r),r&&(r._prev=l),t._next=null,t._prev=null,t}var o=new Kl(n);return this._records.set(n,o),o.currentValue=e,this._addToAdditions(o),o},n.prototype._reset=function(){if(this.isDirty){var n=void 0;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}},n.prototype._maybeAddToChanges=function(n,e){zn(e,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=e,this._addToChanges(n))},n.prototype._addToAdditions=function(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)},n.prototype._addToChanges=function(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)},n.prototype._forEach=function(n,e){n instanceof Map?n.forEach(e):Object.keys(n).forEach(function(t){return e(n[t],t)})},n}(),Kl=function(){return function(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}(),Ql=function(){function n(n){this.factories=n}return n.create=function(e,t){if(null!=t){var l=t.factories.slice();e=e.concat(l)}return new n(e)},n.extend=function(e){return{provide:n,useFactory:function(t){if(!t)throw new Error("Cannot extend IterableDiffers without a parent injector");return n.create(e,t)},deps:[[n,new Jn,new Qn]]}},n.prototype.find=function(n){var e,t=this.factories.find(function(e){return e.supports(n)});if(null!=t)return t;throw new Error("Cannot find a differ supporting object '"+n+"' of type '"+((e=n).name||typeof e)+"'")},n.ngInjectableDef=Pn({providedIn:"root",factory:function(){return new n([new Bl])}}),n}(),Yl=function(){function n(n){this.factories=n}return n.create=function(e,t){if(t){var l=t.factories.slice();e=e.concat(l)}return new n(e)},n.extend=function(e){return{provide:n,useFactory:function(t){if(!t)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return n.create(e,t)},deps:[[n,new Jn,new Qn]]}},n.prototype.find=function(n){var e=this.factories.find(function(e){return e.supports(n)});if(e)return e;throw new Error("Cannot find a differ supporting object '"+n+"'")},n.ngInjectableDef=Pn({providedIn:"root",factory:function(){return new n([new Gl])}}),n}(),Jl=[new Gl],$l=new Ql([new Bl]),Xl=new Yl(Jl),nr=yl(null,"core",[{provide:Vt,useValue:"unknown"},{provide:wl,deps:[he]},{provide:hl,deps:[]},{provide:Ft,deps:[]}]),er=new Mn("LocaleId");function tr(){return $l}function lr(){return Xl}function rr(n){return n||"en-US"}var or=function(){return function(n){}}();function ur(n,e,t){var l=n.state,r=1792&l;return r===e?(n.state=-1793&l|t,n.initIndex=-1,!0):r===t}function ir(n,e,t){return(1792&n.state)===e&&n.initIndex<=t&&(n.initIndex=t+1,!0)}function ar(n,e){return n.nodes[e]}function sr(n,e){return n.nodes[e]}function cr(n,e){return n.nodes[e]}function pr(n,e){return n.nodes[e]}function dr(n,e){return n.nodes[e]}var fr={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};function hr(n,e,t,l){var r="ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '"+e+"'. Current value: '"+t+"'.";return l&&(r+=" 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(n,e){var t=new Error(n);return gr(t,e),t}(r,n)}function gr(n,e){n[Mt]=e,n[Et]=e.logError.bind(e)}function mr(n){return new Error("ViewDestroyedError: Attempt to use a destroyed view: "+n)}var vr=function(){},yr=new Map;function br(n){var e=yr.get(n);return e||(e=Vn(n)+"_"+yr.size,yr.set(n,e)),e}var wr="$$undefined",_r="$$empty";function Cr(n){return{id:wr,styles:n.styles,encapsulation:n.encapsulation,data:n.data}}var xr=0;function kr(n,e,t,l){return!(!(2&n.state)&&zn(n.oldValues[e.bindingIndex+t],l))}function Pr(n,e,t,l){return!!kr(n,e,t,l)&&(n.oldValues[e.bindingIndex+t]=l,!0)}function Or(n,e,t,l){var r=n.oldValues[e.bindingIndex+t];if(1&n.state||!re(r,l)){var o=e.bindings[t].name;throw hr(fr.createDebugContext(n,e.nodeIndex),o+": "+r,o+": "+l,0!=(1&n.state))}}function Mr(n){for(var e=n;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function Sr(n,e){for(var t=n;t&&t!==e;)t.state|=64,t=t.viewContainerParent||t.parent}function Er(n,e,t,l){try{return Mr(33554432&n.def.nodes[e].flags?sr(n,e).componentView:n),fr.handleEvent(n,e,t,l)}catch(r){n.root.errorHandler.handleError(r)}}function Ar(n){return n.parent?sr(n.parent,n.parentNodeDef.nodeIndex):null}function Tr(n){return n.parent?n.parentNodeDef.parent:null}function Lr(n,e){switch(201347067&e.flags){case 1:return sr(n,e.nodeIndex).renderElement;case 2:return ar(n,e.nodeIndex).renderText}}function Ir(n){return!!n.parent&&!!(32768&n.parentNodeDef.flags)}function Rr(n){return!(!n.parent||32768&n.parentNodeDef.flags)}function Nr(n){var e={},t=0,l={};return n&&n.forEach(function(n){var r=s(n,2),o=r[0],u=r[1];"number"==typeof o?(e[o]=u,t|=function(n){return 1<<n%32}(o)):l[o]=u}),{matchedQueries:e,references:l,matchedQueryIds:t}}function jr(n,e){return n.map(function(n){var t,l,r;return Array.isArray(n)?(r=(t=s(n,2))[0],l=t[1]):(r=0,l=n),l&&("function"==typeof l||"object"==typeof l)&&e&&Object.defineProperty(l,ce,{value:e,configurable:!0}),{flags:r,token:l,tokenKey:br(l)}})}function Dr(n,e,t){var l=t.renderParent;return l?0==(1&l.flags)||0==(33554432&l.flags)||l.element.componentRendererType&&l.element.componentRendererType.encapsulation===Zn.Native?sr(n,t.renderParent.nodeIndex).renderElement:void 0:e}var Ur=new WeakMap;function Br(n){var e=Ur.get(n);return e||((e=n(function(){return vr})).factory=n,Ur.set(n,e)),e}function qr(n,e,t,l,r){3===e&&(t=n.renderer.parentNode(Lr(n,n.def.lastRenderRootNode))),zr(n,e,0,n.def.nodes.length-1,t,l,r)}function zr(n,e,t,l,r,o,u){for(var i=t;i<=l;i++){var a=n.def.nodes[i];11&a.flags&&Hr(n,a,e,r,o,u),i+=a.childCount}}function Vr(n,e,t,l,r,o){for(var u=n;u&&!Ir(u);)u=u.parent;for(var i=u.parent,a=Tr(u),s=a.nodeIndex+a.childCount,c=a.nodeIndex+1;c<=s;c++){var p=i.def.nodes[c];p.ngContentIndex===e&&Hr(i,p,t,l,r,o),c+=p.childCount}if(!i.parent){var d=n.root.projectableNodes[e];if(d)for(c=0;c<d.length;c++)Fr(n,d[c],t,l,r,o)}}function Hr(n,e,t,l,r,o){if(8&e.flags)Vr(n,e.ngContent.index,t,l,r,o);else{var u=Lr(n,e);if(3===t&&33554432&e.flags&&48&e.bindingFlags?(16&e.bindingFlags&&Fr(n,u,t,l,r,o),32&e.bindingFlags&&Fr(sr(n,e.nodeIndex).componentView,u,t,l,r,o)):Fr(n,u,t,l,r,o),16777216&e.flags)for(var i=sr(n,e.nodeIndex).viewContainer._embeddedViews,a=0;a<i.length;a++)qr(i[a],t,l,r,o);1&e.flags&&!e.element.name&&zr(n,t,e.nodeIndex+1,e.nodeIndex+e.childCount,l,r,o)}}function Fr(n,e,t,l,r,o){var u=n.renderer;switch(t){case 1:u.appendChild(l,e);break;case 2:u.insertBefore(l,e,r);break;case 3:u.removeChild(l,e);break;case 0:o.push(e)}}var Wr=/^:([^:]+):(.+)$/;function Gr(n){if(":"===n[0]){var e=n.match(Wr);return[e[1],e[2]]}return["",n]}function Zr(n){for(var e=0,t=0;t<n.length;t++)e|=n[t].flags;return e}function Kr(n,e,t,l,r,o,u,i,a,c,p,d){var f;void 0===u&&(u=[]),c||(c=vr);var h=Nr(t),g=h.matchedQueries,m=h.references,v=h.matchedQueryIds,y=null,b=null;o&&(y=(f=s(Gr(o),2))[0],b=f[1]),i=i||[];for(var w=new Array(i.length),_=0;_<i.length;_++){var C=s(i[_],3),x=C[0],k=C[2],P=s(Gr(C[1]),2),O=P[0],M=P[1],S=void 0,E=void 0;switch(15&x){case 4:E=k;break;case 1:case 8:S=k}w[_]={flags:x,ns:O,name:M,nonMinifiedName:M,securityContext:S,suffix:E}}a=a||[];var A=new Array(a.length);for(_=0;_<a.length;_++){var T=s(a[_],2);A[_]={type:0,target:T[0],eventName:T[1],propName:null}}var L=(u=u||[]).map(function(n){var e=s(n,2),t=e[1],l=s(Gr(e[0]),2);return[l[0],l[1],t]});return d=function(n){if(n&&n.id===wr){var e=null!=n.encapsulation&&n.encapsulation!==Zn.None||n.styles.length||Object.keys(n.data).length;n.id=e?"c"+xr++:_r}return n&&n.id===_r&&(n=null),n||null}(d),p&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:n,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:g,matchedQueryIds:v,references:m,ngContentIndex:l,childCount:r,bindings:w,bindingFlags:Zr(w),outputs:A,element:{ns:y,name:b,attrs:L,template:null,componentProvider:null,componentView:p||null,componentRendererType:d,publicProviders:null,allProviders:null,handleEvent:c||vr},provider:null,text:null,query:null,ngContent:null}}function Qr(n,e,t){var l,r=t.element,o=n.root.selectorOrNode,u=n.renderer;if(n.parent||!o){l=r.name?u.createElement(r.name,r.ns):u.createComment("");var i=Dr(n,e,t);i&&u.appendChild(i,l)}else l=u.selectRootElement(o,!!r.componentRendererType&&r.componentRendererType.encapsulation===Zn.ShadowDom);if(r.attrs)for(var a=0;a<r.attrs.length;a++){var c=s(r.attrs[a],3);u.setAttribute(l,c[1],c[2],c[0])}return l}function Yr(n,e,t,l){for(var r=0;r<t.outputs.length;r++){var o=t.outputs[r],u=Jr(n,t.nodeIndex,(p=o.eventName,(c=o.target)?c+":"+p:p)),i=o.target,a=n;"component"===o.target&&(i=null,a=e);var s=a.renderer.listen(i||l,o.eventName,u);n.disposables[t.outputIndex+r]=s}var c,p}function Jr(n,e,t){return function(l){return Er(n,e,t,l)}}function $r(n,e,t,l){if(!Pr(n,e,t,l))return!1;var r=e.bindings[t],o=sr(n,e.nodeIndex),u=o.renderElement,i=r.name;switch(15&r.flags){case 1:!function(n,e,t,l,r,o){var u=e.securityContext,i=u?n.root.sanitizer.sanitize(u,o):o;i=null!=i?i.toString():null;var a=n.renderer;null!=o?a.setAttribute(t,r,i,l):a.removeAttribute(t,r,l)}(n,r,u,r.ns,i,l);break;case 2:!function(n,e,t,l){var r=n.renderer;l?r.addClass(e,t):r.removeClass(e,t)}(n,u,i,l);break;case 4:!function(n,e,t,l,r){var o=n.root.sanitizer.sanitize(Ge.STYLE,r);if(null!=o){o=o.toString();var u=e.suffix;null!=u&&(o+=u)}else o=null;var i=n.renderer;null!=o?i.setStyle(t,l,o):i.removeStyle(t,l)}(n,r,u,i,l);break;case 8:!function(n,e,t,l,r){var o=e.securityContext,u=o?n.root.sanitizer.sanitize(o,r):r;n.renderer.setProperty(t,l,u)}(33554432&e.flags&&32&r.flags?o.componentView:n,r,u,i,l)}return!0}var Xr=new Object,no=br(he),eo=br(de),to=br(De);function lo(n,e,t,l){return t=Wn(t),{index:-1,deps:jr(l,Vn(e)),flags:n,token:e,value:t}}function ro(n,e,t){void 0===t&&(t=he.THROW_IF_NOT_FOUND);var l,r,o=ne(n);try{if(8&e.flags)return e.token;if(2&e.flags&&(t=null),1&e.flags)return n._parent.get(e.token,t);var u=e.tokenKey;switch(u){case no:case eo:case to:return n}var i,a=n._def.providersByKey[u];if(a){var s=n._providers[a.index];return void 0===s&&(s=n._providers[a.index]=oo(n,a)),s===Xr?void 0:s}if((i=On(e.token))&&(l=n,null!=(r=i).providedIn&&(function(n,e){return n._def.modules.indexOf(r.providedIn)>-1}(l)||"root"===r.providedIn&&l._def.isRoot))){var c=n._providers.length;return n._def.providersByKey[e.tokenKey]={flags:5120,value:i.factory,deps:[],index:c,token:e.token},n._providers[c]=Xr,n._providers[c]=oo(n,n._def.providersByKey[e.tokenKey])}return 4&e.flags?t:n._parent.get(e.token,t)}finally{ne(o)}}function oo(n,e){var t;switch(201347067&e.flags){case 512:t=function(n,e,t){var l=t.length;switch(l){case 0:return new e;case 1:return new e(ro(n,t[0]));case 2:return new e(ro(n,t[0]),ro(n,t[1]));case 3:return new e(ro(n,t[0]),ro(n,t[1]),ro(n,t[2]));default:for(var r=new Array(l),o=0;o<l;o++)r[o]=ro(n,t[o]);return new(e.bind.apply(e,c([void 0],r)))}}(n,e.value,e.deps);break;case 1024:t=function(n,e,t){var l=t.length;switch(l){case 0:return e();case 1:return e(ro(n,t[0]));case 2:return e(ro(n,t[0]),ro(n,t[1]));case 3:return e(ro(n,t[0]),ro(n,t[1]),ro(n,t[2]));default:for(var r=Array(l),o=0;o<l;o++)r[o]=ro(n,t[o]);return e.apply(void 0,c(r))}}(n,e.value,e.deps);break;case 2048:t=ro(n,e.deps[0]);break;case 256:t=e.value}return t===Xr||null==t||"object"!=typeof t||131072&e.flags||"function"!=typeof t.ngOnDestroy||(e.flags|=131072),void 0===t?Xr:t}function uo(n,e){var t=n.viewContainer._embeddedViews;if((null==e||e>=t.length)&&(e=t.length-1),e<0)return null;var l=t[e];return l.viewContainerParent=null,co(t,e),fr.dirtyParentQueries(l),ao(l),l}function io(n,e,t){var l=e?Lr(e,e.def.lastRenderRootNode):n.renderElement,r=t.renderer.parentNode(l),o=t.renderer.nextSibling(l);qr(t,2,r,o,void 0)}function ao(n){qr(n,3,null,null,void 0)}function so(n,e,t){e>=n.length?n.push(t):n.splice(e,0,t)}function co(n,e){e>=n.length-1?n.pop():n.splice(e,1)}var po=new Object;function fo(n,e,t,l,r,o){return new ho(n,e,t,l,r,o)}var ho=function(n){function e(e,t,l,r,o,u){var i=n.call(this)||this;return i.selector=e,i.componentType=t,i._inputs=r,i._outputs=o,i.ngContentSelectors=u,i.viewDefFactory=l,i}return r(e,n),Object.defineProperty(e.prototype,"inputs",{get:function(){var n=[],e=this._inputs;for(var t in e)n.push({propName:t,templateName:e[t]});return n},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var n=[];for(var e in this._outputs)n.push({propName:e,templateName:this._outputs[e]});return n},enumerable:!0,configurable:!0}),e.prototype.create=function(n,e,t,l){if(!l)throw new Error("ngModule should be provided");var r=Br(this.viewDefFactory),o=r.nodes[0].element.componentProvider.nodeIndex,u=fr.createRootView(n,e||[],t,r,l,po),i=cr(u,o).instance;return t&&u.renderer.setAttribute(sr(u,0).renderElement,"ng-version",Ke.full),new go(u,new bo(u),i)},e}(Ae),go=function(n){function e(e,t,l){var r=n.call(this)||this;return r._view=e,r._viewRef=t,r._component=l,r._elDef=r._view.def.nodes[0],r.hostView=t,r.changeDetectorRef=t,r.instance=l,r}return r(e,n),Object.defineProperty(e.prototype,"location",{get:function(){return new Be(sr(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new xo(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentType",{get:function(){return this._component.constructor},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){this._viewRef.destroy()},e.prototype.onDestroy=function(n){this._viewRef.onDestroy(n)},e}(Ee);function mo(n,e,t){return new vo(n,e,t)}var vo=function(){function n(n,e,t){this._view=n,this._elDef=e,this._data=t,this._embeddedViews=[]}return Object.defineProperty(n.prototype,"element",{get:function(){return new Be(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"injector",{get:function(){return new xo(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"parentInjector",{get:function(){for(var n=this._view,e=this._elDef.parent;!e&&n;)e=Tr(n),n=n.parent;return n?new xo(n,e):new xo(this._view,null)},enumerable:!0,configurable:!0}),n.prototype.clear=function(){for(var n=this._embeddedViews.length-1;n>=0;n--){var e=uo(this._data,n);fr.destroyView(e)}},n.prototype.get=function(n){var e=this._embeddedViews[n];if(e){var t=new bo(e);return t.attachToViewContainerRef(this),t}return null},Object.defineProperty(n.prototype,"length",{get:function(){return this._embeddedViews.length},enumerable:!0,configurable:!0}),n.prototype.createEmbeddedView=function(n,e,t){var l=n.createEmbeddedView(e||{});return this.insert(l,t),l},n.prototype.createComponent=function(n,e,t,l,r){var o=t||this.parentInjector;r||n instanceof je||(r=o.get(De));var u=n.create(o,l,void 0,r);return this.insert(u.hostView,e),u},n.prototype.insert=function(n,e){if(n.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var t,l,r,o,u=n;return o=(t=this._data).viewContainer._embeddedViews,null==(l=e)&&(l=o.length),(r=u._view).viewContainerParent=this._view,so(o,l,r),function(n,e){var t=Ar(e);if(t&&t!==n&&!(16&e.state)){e.state|=16;var l=t.template._projectedViews;l||(l=t.template._projectedViews=[]),l.push(e),function(n,t){if(!(4&t.flags)){e.parent.def.nodeFlags|=4,t.flags|=4;for(var l=t.parent;l;)l.childFlags|=4,l=l.parent}}(0,e.parentNodeDef)}}(t,r),fr.dirtyParentQueries(r),io(t,l>0?o[l-1]:null,r),u.attachToViewContainerRef(this),n},n.prototype.move=function(n,e){if(n.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");var t,l,r,o,u,i=this._embeddedViews.indexOf(n._view);return r=e,u=(o=(t=this._data).viewContainer._embeddedViews)[l=i],co(o,l),null==r&&(r=o.length),so(o,r,u),fr.dirtyParentQueries(u),ao(u),io(t,r>0?o[r-1]:null,u),n},n.prototype.indexOf=function(n){return this._embeddedViews.indexOf(n._view)},n.prototype.remove=function(n){var e=uo(this._data,n);e&&fr.destroyView(e)},n.prototype.detach=function(n){var e=uo(this._data,n);return e?new bo(e):null},n}();function yo(n){return new bo(n)}var bo=function(){function n(n){this._view=n,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(n.prototype,"rootNodes",{get:function(){return qr(this._view,0,void 0,void 0,n=[]),n;var n},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"context",{get:function(){return this._view.context},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"destroyed",{get:function(){return 0!=(128&this._view.state)},enumerable:!0,configurable:!0}),n.prototype.markForCheck=function(){Mr(this._view)},n.prototype.detach=function(){this._view.state&=-5},n.prototype.detectChanges=function(){var n=this._view.root.rendererFactory;n.begin&&n.begin();try{fr.checkAndUpdateView(this._view)}finally{n.end&&n.end()}},n.prototype.checkNoChanges=function(){fr.checkNoChangesView(this._view)},n.prototype.reattach=function(){this._view.state|=4},n.prototype.onDestroy=function(n){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(n)},n.prototype.destroy=function(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),fr.destroyView(this._view)},n.prototype.detachFromAppRef=function(){this._appRef=null,ao(this._view),fr.dirtyParentQueries(this._view)},n.prototype.attachToAppRef=function(n){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=n},n.prototype.attachToViewContainerRef=function(n){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=n},n}();function wo(n,e){return new _o(n,e)}var _o=function(n){function e(e,t){var l=n.call(this)||this;return l._parentView=e,l._def=t,l}return r(e,n),e.prototype.createEmbeddedView=function(n){return new bo(fr.createEmbeddedView(this._parentView,this._def,this._def.element.template,n))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new Be(sr(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(wt);function Co(n,e){return new xo(n,e)}var xo=function(){function n(n,e){this.view=n,this.elDef=e}return n.prototype.get=function(n,e){return void 0===e&&(e=he.THROW_IF_NOT_FOUND),fr.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:n,tokenKey:br(n)},e)},n}();function ko(n,e){var t=n.def.nodes[e];if(1&t.flags){var l=sr(n,t.nodeIndex);return t.element.template?l.template:l.renderElement}if(2&t.flags)return ar(n,t.nodeIndex).renderText;if(20240&t.flags)return cr(n,t.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function Po(n){return new Oo(n.renderer)}var Oo=function(){function n(n){this.delegate=n}return n.prototype.selectRootElement=function(n){return this.delegate.selectRootElement(n)},n.prototype.createElement=function(n,e){var t=s(Gr(e),2),l=this.delegate.createElement(t[1],t[0]);return n&&this.delegate.appendChild(n,l),l},n.prototype.createViewRoot=function(n){return n},n.prototype.createTemplateAnchor=function(n){var e=this.delegate.createComment("");return n&&this.delegate.appendChild(n,e),e},n.prototype.createText=function(n,e){var t=this.delegate.createText(e);return n&&this.delegate.appendChild(n,t),t},n.prototype.projectNodes=function(n,e){for(var t=0;t<e.length;t++)this.delegate.appendChild(n,e[t])},n.prototype.attachViewAfter=function(n,e){for(var t=this.delegate.parentNode(n),l=this.delegate.nextSibling(n),r=0;r<e.length;r++)this.delegate.insertBefore(t,e[r],l)},n.prototype.detachView=function(n){for(var e=0;e<n.length;e++){var t=n[e],l=this.delegate.parentNode(t);this.delegate.removeChild(l,t)}},n.prototype.destroyView=function(n,e){for(var t=0;t<e.length;t++)this.delegate.destroyNode(e[t])},n.prototype.listen=function(n,e,t){return this.delegate.listen(n,e,t)},n.prototype.listenGlobal=function(n,e,t){return this.delegate.listen(n,e,t)},n.prototype.setElementProperty=function(n,e,t){this.delegate.setProperty(n,e,t)},n.prototype.setElementAttribute=function(n,e,t){var l=s(Gr(e),2),r=l[0],o=l[1];null!=t?this.delegate.setAttribute(n,o,t,r):this.delegate.removeAttribute(n,o,r)},n.prototype.setBindingDebugInfo=function(n,e,t){},n.prototype.setElementClass=function(n,e,t){t?this.delegate.addClass(n,e):this.delegate.removeClass(n,e)},n.prototype.setElementStyle=function(n,e,t){null!=t?this.delegate.setStyle(n,e,t):this.delegate.removeStyle(n,e)},n.prototype.invokeElementMethod=function(n,e,t){n[e].apply(n,t)},n.prototype.setText=function(n,e){this.delegate.setValue(n,e)},n.prototype.animate=function(){throw new Error("Renderer.animate is no longer supported!")},n}();function Mo(n,e,t,l){return new So(n,e,t,l)}var So=function(){function n(n,e,t,l){this._moduleType=n,this._parent=e,this._bootstrapComponents=t,this._def=l,this._destroyListeners=[],this._destroyed=!1,this.injector=this,function(n){for(var e=n._def,t=n._providers=new Array(e.providers.length),l=0;l<e.providers.length;l++){var r=e.providers[l];4096&r.flags||void 0===t[l]&&(t[l]=oo(n,r))}}(this)}return n.prototype.get=function(n,e,t){void 0===e&&(e=he.THROW_IF_NOT_FOUND),void 0===t&&(t=$n.Default);var l=0;return t&$n.SkipSelf?l|=1:t&$n.Self&&(l|=4),ro(this,{token:n,tokenKey:br(n),flags:l},e)},Object.defineProperty(n.prototype,"instance",{get:function(){return this.get(this._moduleType)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"componentFactoryResolver",{get:function(){return this.get(Re)},enumerable:!0,configurable:!0}),n.prototype.destroy=function(){if(this._destroyed)throw new Error("The ng module "+Vn(this.instance.constructor)+" has already been destroyed.");this._destroyed=!0,function(n,e){for(var t=n._def,l=new Set,r=0;r<t.providers.length;r++)if(131072&t.providers[r].flags){var o=n._providers[r];if(o&&o!==Xr){var u=o.ngOnDestroy;"function"!=typeof u||l.has(o)||(u.apply(o),l.add(o))}}}(this),this._destroyListeners.forEach(function(n){return n()})},n.prototype.onDestroy=function(n){this._destroyListeners.push(n)},n}(),Eo=br(ze),Ao=br(Fe),To=br(Be),Lo=br(El),Io=br(wt),Ro=br(Tl),No=br(he),jo=br(de);function Do(n,e,t,l,r,o,u,i){var a=[];if(u)for(var c in u){var p=s(u[c],2);a[p[0]]={flags:8,name:c,nonMinifiedName:p[1],ns:null,securityContext:null,suffix:null}}var d=[];if(i)for(var f in i)d.push({type:1,propName:f,target:null,eventName:i[f]});return function(n,e,t,l,r,o,u,i,a){var s=Nr(t),c=s.matchedQueries,p=s.references,d=s.matchedQueryIds;a||(a=[]),i||(i=[]),o=Wn(o);var f=jr(u,Vn(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:n,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:c,matchedQueryIds:d,references:p,ngContentIndex:-1,childCount:l,bindings:i,bindingFlags:Zr(i),outputs:a,element:null,provider:{token:r,value:o,deps:f},text:null,query:null,ngContent:null}}(n,e|=16384,t,l,r,r,o,a,d)}function Uo(n,e){return Vo(n,e)}function Bo(n,e){for(var t=n;t.parent&&!Ir(t);)t=t.parent;return Ho(t.parent,Tr(t),!0,e.provider.value,e.provider.deps)}function qo(n,e){var t=Ho(n,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(var l=0;l<e.outputs.length;l++){var r=e.outputs[l],o=t[r.propName];if(!Nt(o))throw new Error("@Output "+r.propName+" not initialized in '"+t.constructor.name+"'.");var u=o.subscribe(zo(n,e.parent.nodeIndex,r.eventName));n.disposables[e.outputIndex+l]=u.unsubscribe.bind(u)}return t}function zo(n,e,t){return function(l){return Er(n,e,t,l)}}function Vo(n,e){var t=(8192&e.flags)>0,l=e.provider;switch(201347067&e.flags){case 512:return Ho(n,e.parent,t,l.value,l.deps);case 1024:return function(n,e,t,l,r){var o=r.length;switch(o){case 0:return l();case 1:return l(Wo(n,e,t,r[0]));case 2:return l(Wo(n,e,t,r[0]),Wo(n,e,t,r[1]));case 3:return l(Wo(n,e,t,r[0]),Wo(n,e,t,r[1]),Wo(n,e,t,r[2]));default:for(var u=Array(o),i=0;i<o;i++)u[i]=Wo(n,e,t,r[i]);return l.apply(void 0,c(u))}}(n,e.parent,t,l.value,l.deps);case 2048:return Wo(n,e.parent,t,l.deps[0]);case 256:return l.value}}function Ho(n,e,t,l,r){var o=r.length;switch(o){case 0:return new l;case 1:return new l(Wo(n,e,t,r[0]));case 2:return new l(Wo(n,e,t,r[0]),Wo(n,e,t,r[1]));case 3:return new l(Wo(n,e,t,r[0]),Wo(n,e,t,r[1]),Wo(n,e,t,r[2]));default:for(var u=new Array(o),i=0;i<o;i++)u[i]=Wo(n,e,t,r[i]);return new(l.bind.apply(l,c([void 0],u)))}}var Fo={};function Wo(n,e,t,l,r){if(void 0===r&&(r=he.THROW_IF_NOT_FOUND),8&l.flags)return l.token;var o=n;2&l.flags&&(r=null);var u=l.tokenKey;u===Ro&&(t=!(!e||!e.element.componentView)),e&&1&l.flags&&(t=!1,e=e.parent);for(var i=n;i;){if(e)switch(u){case Eo:return Po(Go(i,e,t));case Ao:return Go(i,e,t).renderer;case To:return new Be(sr(i,e.nodeIndex).renderElement);case Lo:return sr(i,e.nodeIndex).viewContainer;case Io:if(e.element.template)return sr(i,e.nodeIndex).template;break;case Ro:return yo(Go(i,e,t));case No:case jo:return Co(i,e);default:var a=(t?e.element.allProviders:e.element.publicProviders)[u];if(a){var s=cr(i,a.nodeIndex);return s||(s={instance:Vo(i,a)},i.nodes[a.nodeIndex]=s),s.instance}}t=Ir(i),e=Tr(i),i=i.parent,4&l.flags&&(i=null)}var c=o.root.injector.get(l.token,Fo);return c!==Fo||r===Fo?c:o.root.ngModule.injector.get(l.token,r)}function Go(n,e,t){var l;if(t)l=sr(n,e.nodeIndex).componentView;else for(l=n;l.parent&&!Ir(l);)l=l.parent;return l}function Zo(n,e,t,l,r,o){if(32768&t.flags){var u=sr(n,t.parent.nodeIndex).componentView;2&u.def.flags&&(u.state|=8)}if(e.instance[t.bindings[l].name]=r,524288&t.flags){o=o||{};var i=oe.unwrap(n.oldValues[t.bindingIndex+l]);o[t.bindings[l].nonMinifiedName]=new ue(i,r,0!=(2&n.state))}return n.oldValues[t.bindingIndex+l]=r,o}function Ko(n,e){if(n.def.nodeFlags&e)for(var t=n.def.nodes,l=0,r=0;r<t.length;r++){var o=t[r],u=o.parent;for(!u&&o.flags&e&&Yo(n,r,o.flags&e,l++),0==(o.childFlags&e)&&(r+=o.childCount);u&&1&u.flags&&r===u.nodeIndex+u.childCount;)u.directChildFlags&e&&(l=Qo(n,u,e,l)),u=u.parent}}function Qo(n,e,t,l){for(var r=e.nodeIndex+1;r<=e.nodeIndex+e.childCount;r++){var o=n.def.nodes[r];o.flags&t&&Yo(n,r,o.flags&t,l++),r+=o.childCount}return l}function Yo(n,e,t,l){var r=cr(n,e);if(r){var o=r.instance;o&&(fr.setCurrentNode(n,e),1048576&t&&ir(n,512,l)&&o.ngAfterContentInit(),2097152&t&&o.ngAfterContentChecked(),4194304&t&&ir(n,768,l)&&o.ngAfterViewInit(),8388608&t&&o.ngAfterViewChecked(),131072&t&&o.ngOnDestroy())}}function Jo(n){for(var e=n.def.nodeMatchedQueries;n.parent&&Rr(n);){var t=n.parentNodeDef;n=n.parent;for(var l=t.nodeIndex+t.childCount,r=0;r<=l;r++)67108864&(o=n.def.nodes[r]).flags&&536870912&o.flags&&(o.query.filterId&e)===o.query.filterId&&dr(n,r).setDirty(),!(1&o.flags&&r+o.childCount<t.nodeIndex)&&67108864&o.childFlags&&536870912&o.childFlags||(r+=o.childCount)}if(134217728&n.def.nodeFlags)for(r=0;r<n.def.nodes.length;r++){var o;134217728&(o=n.def.nodes[r]).flags&&536870912&o.flags&&dr(n,r).setDirty(),r+=o.childCount}}function $o(n,e){var t=dr(n,e.nodeIndex);if(t.dirty){var l,r=void 0;if(67108864&e.flags){var o=e.parent.parent;r=Xo(n,o.nodeIndex,o.nodeIndex+o.childCount,e.query,[]),l=cr(n,e.parent.nodeIndex).instance}else 134217728&e.flags&&(r=Xo(n,0,n.def.nodes.length-1,e.query,[]),l=n.component);t.reset(r);for(var u=e.query.bindings,i=!1,a=0;a<u.length;a++){var s=u[a],c=void 0;switch(s.bindingType){case 0:c=t.first;break;case 1:c=t,i=!0}l[s.propName]=c}i&&t.notifyOnChanges()}}function Xo(n,e,t,l,r){for(var o=e;o<=t;o++){var u=n.def.nodes[o],i=u.matchedQueries[l.id];if(null!=i&&r.push(nu(n,u,i)),1&u.flags&&u.element.template&&(u.element.template.nodeMatchedQueries&l.filterId)===l.filterId){var a=sr(n,o);if((u.childMatchedQueries&l.filterId)===l.filterId&&(Xo(n,o+1,o+u.childCount,l,r),o+=u.childCount),16777216&u.flags)for(var s=a.viewContainer._embeddedViews,c=0;c<s.length;c++){var p=s[c],d=Ar(p);d&&d===a&&Xo(p,0,p.def.nodes.length-1,l,r)}var f=a.template._projectedViews;if(f)for(c=0;c<f.length;c++){var h=f[c];Xo(h,0,h.def.nodes.length-1,l,r)}}(u.childMatchedQueries&l.filterId)!==l.filterId&&(o+=u.childCount)}return r}function nu(n,e,t){if(null!=t)switch(t){case 1:return sr(n,e.nodeIndex).renderElement;case 0:return new Be(sr(n,e.nodeIndex).renderElement);case 2:return sr(n,e.nodeIndex).template;case 3:return sr(n,e.nodeIndex).viewContainer;case 4:return cr(n,e.nodeIndex).instance}}function eu(n,e,t){var l=Dr(n,e,t);l&&Vr(n,t.ngContent.index,1,l,null,void 0)}function tu(n,e,t){for(var l=new Array(t.length-1),r=1;r<t.length;r++)l[r-1]={flags:8,name:null,ns:null,nonMinifiedName:null,securityContext:null,suffix:t[r]};return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:n,flags:2,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:e,childCount:0,bindings:l,bindingFlags:8,outputs:[],element:null,provider:null,text:{prefix:t[0]},query:null,ngContent:null}}function lu(n,e,t){var l,r=n.renderer;l=r.createText(t.text.prefix);var o=Dr(n,e,t);return o&&r.appendChild(o,l),{renderText:l}}function ru(n,e){return(null!=n?n.toString():"")+e.suffix}function ou(n,e,t,l){for(var r=0,o=0,u=0,i=0,a=0,s=null,c=null,p=!1,d=!1,f=null,h=0;h<e.length;h++){var g=e[h];if(g.nodeIndex=h,g.parent=s,g.bindingIndex=r,g.outputIndex=o,g.renderParent=c,u|=g.flags,a|=g.matchedQueryIds,g.element){var m=g.element;m.publicProviders=s?s.element.publicProviders:Object.create(null),m.allProviders=m.publicProviders,p=!1,d=!1,g.element.template&&(a|=g.element.template.nodeMatchedQueries)}if(iu(s,g,e.length),r+=g.bindings.length,o+=g.outputs.length,!c&&3&g.flags&&(f=g),20224&g.flags){p||(p=!0,s.element.publicProviders=Object.create(s.element.publicProviders),s.element.allProviders=s.element.publicProviders);var v=0!=(32768&g.flags);0==(8192&g.flags)||v?s.element.publicProviders[br(g.provider.token)]=g:(d||(d=!0,s.element.allProviders=Object.create(s.element.publicProviders)),s.element.allProviders[br(g.provider.token)]=g),v&&(s.element.componentProvider=g)}if(s?(s.childFlags|=g.flags,s.directChildFlags|=g.flags,s.childMatchedQueries|=g.matchedQueryIds,g.element&&g.element.template&&(s.childMatchedQueries|=g.element.template.nodeMatchedQueries)):i|=g.flags,g.childCount>0)s=g,uu(g)||(c=g);else for(;s&&h===s.nodeIndex+s.childCount;){var y=s.parent;y&&(y.childFlags|=s.childFlags,y.childMatchedQueries|=s.childMatchedQueries),c=(s=y)&&uu(s)?s.renderParent:s}}return{factory:null,nodeFlags:u,rootNodeFlags:i,nodeMatchedQueries:a,flags:n,nodes:e,updateDirectives:t||vr,updateRenderer:l||vr,handleEvent:function(n,t,l,r){return e[t].element.handleEvent(n,l,r)},bindingCount:r,outputCount:o,lastRenderRootNode:f}}function uu(n){return 0!=(1&n.flags)&&null===n.element.name}function iu(n,e,t){var l=e.element&&e.element.template;if(l){if(!l.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(l.lastRenderRootNode&&16777216&l.lastRenderRootNode.flags)throw new Error("Illegal State: Last root node of a template can't have embedded views, at index "+e.nodeIndex+"!")}if(20224&e.flags&&0==(1&(n?n.flags:0)))throw new Error("Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index "+e.nodeIndex+"!");if(e.query){if(67108864&e.flags&&(!n||0==(16384&n.flags)))throw new Error("Illegal State: Content Query nodes need to be children of directives, at index "+e.nodeIndex+"!");if(134217728&e.flags&&n)throw new Error("Illegal State: View Query nodes have to be top level nodes, at index "+e.nodeIndex+"!")}if(e.childCount){var r=n?n.nodeIndex+n.childCount:t-1;if(e.nodeIndex<=r&&e.nodeIndex+e.childCount>r)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function au(n,e,t,l){var r=pu(n.root,n.renderer,n,e,t);return du(r,n.component,l),fu(r),r}function su(n,e,t){var l=pu(n,n.renderer,null,null,e);return du(l,t,t),fu(l),l}function cu(n,e,t,l){var r,o=e.element.componentRendererType;return r=o?n.root.rendererFactory.createRenderer(l,o):n.root.renderer,pu(n.root,r,n,e.element.componentProvider,t)}function pu(n,e,t,l,r){var o=new Array(r.nodes.length),u=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:t,viewContainerParent:null,parentNodeDef:l,context:null,component:null,nodes:o,state:13,root:n,renderer:e,oldValues:new Array(r.bindingCount),disposables:u,initIndex:-1}}function du(n,e,t){n.component=e,n.context=t}function fu(n){var e;Ir(n)&&(e=sr(n.parent,n.parentNodeDef.parent.nodeIndex).renderElement);for(var t=n.def,l=n.nodes,r=0;r<t.nodes.length;r++){var o=t.nodes[r];fr.setCurrentNode(n,r);var u=void 0;switch(201347067&o.flags){case 1:var i=Qr(n,e,o),a=void 0;if(33554432&o.flags){var s=Br(o.element.componentView);a=fr.createComponentView(n,o,s,i)}Yr(n,a,o,i),u={renderElement:i,componentView:a,viewContainer:null,template:o.element.template?wo(n,o):void 0},16777216&o.flags&&(u.viewContainer=mo(n,o,u));break;case 2:u=lu(n,e,o);break;case 512:case 1024:case 2048:case 256:(u=l[r])||4096&o.flags||(u={instance:Uo(n,o)});break;case 16:u={instance:Bo(n,o)};break;case 16384:(u=l[r])||(u={instance:qo(n,o)}),32768&o.flags&&du(sr(n,o.parent.nodeIndex).componentView,u.instance,u.instance);break;case 32:case 64:case 128:u={value:void 0};break;case 67108864:case 134217728:u=new kl;break;case 8:eu(n,e,o),u=void 0}l[r]=u}Cu(n,_u.CreateViewNodes),Ou(n,201326592,268435456,0)}function hu(n){vu(n),fr.updateDirectives(n,1),xu(n,_u.CheckNoChanges),fr.updateRenderer(n,1),Cu(n,_u.CheckNoChanges),n.state&=-97}function gu(n){1&n.state?(n.state&=-2,n.state|=2):n.state&=-3,ur(n,0,256),vu(n),fr.updateDirectives(n,0),xu(n,_u.CheckAndUpdate),Ou(n,67108864,536870912,0);var e=ur(n,256,512);Ko(n,2097152|(e?1048576:0)),fr.updateRenderer(n,0),Cu(n,_u.CheckAndUpdate),Ou(n,134217728,536870912,0),Ko(n,8388608|((e=ur(n,512,768))?4194304:0)),2&n.def.flags&&(n.state&=-9),n.state&=-97,ur(n,768,1024)}function mu(n,e,t,l,r,o,u,i,a,s,p,d,f){return 0===t?function(n,e,t,l,r,o,u,i,a,s,c,p){switch(201347067&e.flags){case 1:return function(n,e,t,l,r,o,u,i,a,s,c,p){var d=e.bindings.length,f=!1;return d>0&&$r(n,e,0,t)&&(f=!0),d>1&&$r(n,e,1,l)&&(f=!0),d>2&&$r(n,e,2,r)&&(f=!0),d>3&&$r(n,e,3,o)&&(f=!0),d>4&&$r(n,e,4,u)&&(f=!0),d>5&&$r(n,e,5,i)&&(f=!0),d>6&&$r(n,e,6,a)&&(f=!0),d>7&&$r(n,e,7,s)&&(f=!0),d>8&&$r(n,e,8,c)&&(f=!0),d>9&&$r(n,e,9,p)&&(f=!0),f}(n,e,t,l,r,o,u,i,a,s,c,p);case 2:return function(n,e,t,l,r,o,u,i,a,s,c,p){var d=!1,f=e.bindings,h=f.length;if(h>0&&Pr(n,e,0,t)&&(d=!0),h>1&&Pr(n,e,1,l)&&(d=!0),h>2&&Pr(n,e,2,r)&&(d=!0),h>3&&Pr(n,e,3,o)&&(d=!0),h>4&&Pr(n,e,4,u)&&(d=!0),h>5&&Pr(n,e,5,i)&&(d=!0),h>6&&Pr(n,e,6,a)&&(d=!0),h>7&&Pr(n,e,7,s)&&(d=!0),h>8&&Pr(n,e,8,c)&&(d=!0),h>9&&Pr(n,e,9,p)&&(d=!0),d){var g=e.text.prefix;h>0&&(g+=ru(t,f[0])),h>1&&(g+=ru(l,f[1])),h>2&&(g+=ru(r,f[2])),h>3&&(g+=ru(o,f[3])),h>4&&(g+=ru(u,f[4])),h>5&&(g+=ru(i,f[5])),h>6&&(g+=ru(a,f[6])),h>7&&(g+=ru(s,f[7])),h>8&&(g+=ru(c,f[8])),h>9&&(g+=ru(p,f[9]));var m=ar(n,e.nodeIndex).renderText;n.renderer.setValue(m,g)}return d}(n,e,t,l,r,o,u,i,a,s,c,p);case 16384:return function(n,e,t,l,r,o,u,i,a,s,c,p){var d=cr(n,e.nodeIndex),f=d.instance,h=!1,g=void 0,m=e.bindings.length;return m>0&&kr(n,e,0,t)&&(h=!0,g=Zo(n,d,e,0,t,g)),m>1&&kr(n,e,1,l)&&(h=!0,g=Zo(n,d,e,1,l,g)),m>2&&kr(n,e,2,r)&&(h=!0,g=Zo(n,d,e,2,r,g)),m>3&&kr(n,e,3,o)&&(h=!0,g=Zo(n,d,e,3,o,g)),m>4&&kr(n,e,4,u)&&(h=!0,g=Zo(n,d,e,4,u,g)),m>5&&kr(n,e,5,i)&&(h=!0,g=Zo(n,d,e,5,i,g)),m>6&&kr(n,e,6,a)&&(h=!0,g=Zo(n,d,e,6,a,g)),m>7&&kr(n,e,7,s)&&(h=!0,g=Zo(n,d,e,7,s,g)),m>8&&kr(n,e,8,c)&&(h=!0,g=Zo(n,d,e,8,c,g)),m>9&&kr(n,e,9,p)&&(h=!0,g=Zo(n,d,e,9,p,g)),g&&f.ngOnChanges(g),65536&e.flags&&ir(n,256,e.nodeIndex)&&f.ngOnInit(),262144&e.flags&&f.ngDoCheck(),h}(n,e,t,l,r,o,u,i,a,s,c,p);case 32:case 64:case 128:return function(n,e,t,l,r,o,u,i,a,s,c,p){var d=e.bindings,f=!1,h=d.length;if(h>0&&Pr(n,e,0,t)&&(f=!0),h>1&&Pr(n,e,1,l)&&(f=!0),h>2&&Pr(n,e,2,r)&&(f=!0),h>3&&Pr(n,e,3,o)&&(f=!0),h>4&&Pr(n,e,4,u)&&(f=!0),h>5&&Pr(n,e,5,i)&&(f=!0),h>6&&Pr(n,e,6,a)&&(f=!0),h>7&&Pr(n,e,7,s)&&(f=!0),h>8&&Pr(n,e,8,c)&&(f=!0),h>9&&Pr(n,e,9,p)&&(f=!0),f){var g=pr(n,e.nodeIndex),m=void 0;switch(201347067&e.flags){case 32:m=new Array(d.length),h>0&&(m[0]=t),h>1&&(m[1]=l),h>2&&(m[2]=r),h>3&&(m[3]=o),h>4&&(m[4]=u),h>5&&(m[5]=i),h>6&&(m[6]=a),h>7&&(m[7]=s),h>8&&(m[8]=c),h>9&&(m[9]=p);break;case 64:m={},h>0&&(m[d[0].name]=t),h>1&&(m[d[1].name]=l),h>2&&(m[d[2].name]=r),h>3&&(m[d[3].name]=o),h>4&&(m[d[4].name]=u),h>5&&(m[d[5].name]=i),h>6&&(m[d[6].name]=a),h>7&&(m[d[7].name]=s),h>8&&(m[d[8].name]=c),h>9&&(m[d[9].name]=p);break;case 128:var v=t;switch(h){case 1:m=v.transform(t);break;case 2:m=v.transform(l);break;case 3:m=v.transform(l,r);break;case 4:m=v.transform(l,r,o);break;case 5:m=v.transform(l,r,o,u);break;case 6:m=v.transform(l,r,o,u,i);break;case 7:m=v.transform(l,r,o,u,i,a);break;case 8:m=v.transform(l,r,o,u,i,a,s);break;case 9:m=v.transform(l,r,o,u,i,a,s,c);break;case 10:m=v.transform(l,r,o,u,i,a,s,c,p)}}g.value=m}return f}(n,e,t,l,r,o,u,i,a,s,c,p);default:throw"unreachable"}}(n,e,l,r,o,u,i,a,s,p,d,f):function(n,e,t){switch(201347067&e.flags){case 1:return function(n,e,t){for(var l=!1,r=0;r<t.length;r++)$r(n,e,r,t[r])&&(l=!0);return l}(n,e,t);case 2:return function(n,e,t){for(var l=e.bindings,r=!1,o=0;o<t.length;o++)Pr(n,e,o,t[o])&&(r=!0);if(r){var u="";for(o=0;o<t.length;o++)u+=ru(t[o],l[o]);u=e.text.prefix+u;var i=ar(n,e.nodeIndex).renderText;n.renderer.setValue(i,u)}return r}(n,e,t);case 16384:return function(n,e,t){for(var l=cr(n,e.nodeIndex),r=l.instance,o=!1,u=void 0,i=0;i<t.length;i++)kr(n,e,i,t[i])&&(o=!0,u=Zo(n,l,e,i,t[i],u));return u&&r.ngOnChanges(u),65536&e.flags&&ir(n,256,e.nodeIndex)&&r.ngOnInit(),262144&e.flags&&r.ngDoCheck(),o}(n,e,t);case 32:case 64:case 128:return function(n,e,t){for(var l=e.bindings,r=!1,o=0;o<t.length;o++)Pr(n,e,o,t[o])&&(r=!0);if(r){var u=pr(n,e.nodeIndex),i=void 0;switch(201347067&e.flags){case 32:i=t;break;case 64:for(i={},o=0;o<t.length;o++)i[l[o].name]=t[o];break;case 128:var a=t[0],s=t.slice(1);i=a.transform.apply(a,c(s))}u.value=i}return r}(n,e,t);default:throw"unreachable"}}(n,e,l)}function vu(n){var e=n.def;if(4&e.nodeFlags)for(var t=0;t<e.nodes.length;t++){var l=e.nodes[t];if(4&l.flags){var r=sr(n,t).template._projectedViews;if(r)for(var o=0;o<r.length;o++){var u=r[o];u.state|=32,Sr(u,n)}}else 0==(4&l.childFlags)&&(t+=l.childCount)}}function yu(n,e,t,l,r,o,u,i,a,s,c,p,d){return 0===t?function(n,e,t,l,r,o,u,i,a,s,c,p){var d=e.bindings.length;d>0&&Or(n,e,0,t),d>1&&Or(n,e,1,l),d>2&&Or(n,e,2,r),d>3&&Or(n,e,3,o),d>4&&Or(n,e,4,u),d>5&&Or(n,e,5,i),d>6&&Or(n,e,6,a),d>7&&Or(n,e,7,s),d>8&&Or(n,e,8,c),d>9&&Or(n,e,9,p)}(n,e,l,r,o,u,i,a,s,c,p,d):function(n,e,t){for(var l=0;l<t.length;l++)Or(n,e,l,t[l])}(n,e,l),!1}function bu(n,e){if(dr(n,e.nodeIndex).dirty)throw hr(fr.createDebugContext(n,e.nodeIndex),"Query "+e.query.id+" not dirty","Query "+e.query.id+" dirty",0!=(1&n.state))}function wu(n){if(!(128&n.state)){if(xu(n,_u.Destroy),Cu(n,_u.Destroy),Ko(n,131072),n.disposables)for(var e=0;e<n.disposables.length;e++)n.disposables[e]();!function(n){if(16&n.state){var e=Ar(n);if(e){var t=e.template._projectedViews;t&&(co(t,t.indexOf(n)),fr.dirtyParentQueries(n))}}}(n),n.renderer.destroyNode&&function(n){for(var e=n.def.nodes.length,t=0;t<e;t++){var l=n.def.nodes[t];1&l.flags?n.renderer.destroyNode(sr(n,t).renderElement):2&l.flags?n.renderer.destroyNode(ar(n,t).renderText):(67108864&l.flags||134217728&l.flags)&&dr(n,t).destroy()}}(n),Ir(n)&&n.renderer.destroy(),n.state|=128}}var _u=function(n){return n[n.CreateViewNodes=0]="CreateViewNodes",n[n.CheckNoChanges=1]="CheckNoChanges",n[n.CheckNoChangesProjectedViews=2]="CheckNoChangesProjectedViews",n[n.CheckAndUpdate=3]="CheckAndUpdate",n[n.CheckAndUpdateProjectedViews=4]="CheckAndUpdateProjectedViews",n[n.Destroy=5]="Destroy",n}({});function Cu(n,e){var t=n.def;if(33554432&t.nodeFlags)for(var l=0;l<t.nodes.length;l++){var r=t.nodes[l];33554432&r.flags?ku(sr(n,l).componentView,e):0==(33554432&r.childFlags)&&(l+=r.childCount)}}function xu(n,e){var t=n.def;if(16777216&t.nodeFlags)for(var l=0;l<t.nodes.length;l++){var r=t.nodes[l];if(16777216&r.flags)for(var o=sr(n,l).viewContainer._embeddedViews,u=0;u<o.length;u++)ku(o[u],e);else 0==(16777216&r.childFlags)&&(l+=r.childCount)}}function ku(n,e){var t=n.state;switch(e){case _u.CheckNoChanges:0==(128&t)&&(12==(12&t)?hu(n):64&t&&Pu(n,_u.CheckNoChangesProjectedViews));break;case _u.CheckNoChangesProjectedViews:0==(128&t)&&(32&t?hu(n):64&t&&Pu(n,e));break;case _u.CheckAndUpdate:0==(128&t)&&(12==(12&t)?gu(n):64&t&&Pu(n,_u.CheckAndUpdateProjectedViews));break;case _u.CheckAndUpdateProjectedViews:0==(128&t)&&(32&t?gu(n):64&t&&Pu(n,e));break;case _u.Destroy:wu(n);break;case _u.CreateViewNodes:fu(n)}}function Pu(n,e){xu(n,e),Cu(n,e)}function Ou(n,e,t,l){if(n.def.nodeFlags&e&&n.def.nodeFlags&t)for(var r=n.def.nodes.length,o=0;o<r;o++){var u=n.def.nodes[o];if(u.flags&e&&u.flags&t)switch(fr.setCurrentNode(n,u.nodeIndex),l){case 0:$o(n,u);break;case 1:bu(n,u)}u.childFlags&e&&u.childFlags&t||(o+=u.childCount)}}var Mu=!1;function Su(n,e,t,l,r,o){var u=r.injector.get(Ve);return su(Au(n,r,u,e,t),l,o)}function Eu(n,e,t,l,r,o){var u=r.injector.get(Ve),i=Au(n,r,new ai(u),e,t),a=qu(l);return ui(Qu.create,su,null,[i,a,o])}function Au(n,e,t,l,r){var o=e.injector.get(Ze),u=e.injector.get(It),i=t.createRenderer(null,null);return{ngModule:e,injector:n,projectableNodes:l,selectorOrNode:r,sanitizer:o,rendererFactory:t,renderer:i,errorHandler:u}}function Tu(n,e,t,l){var r=qu(t);return ui(Qu.create,au,null,[n,e,r,l])}function Lu(n,e,t,l){return t=ju.get(e.element.componentProvider.provider.token)||qu(t),ui(Qu.create,cu,null,[n,e,t,l])}function Iu(n,e,t,l){return Mo(n,e,t,function(n){var e=function(n){var e=!1,t=!1;return 0===Ru.size?{hasOverrides:e,hasDeprecatedOverrides:t}:(n.providers.forEach(function(n){var l=Ru.get(n.token);3840&n.flags&&l&&(e=!0,t=t||l.deprecatedBehavior)}),n.modules.forEach(function(n){Nu.forEach(function(l,r){On(r).providedIn===n&&(e=!0,t=t||l.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:t})}(n),t=e.hasDeprecatedOverrides;return e.hasOverrides?(function(n){for(var e=0;e<n.providers.length;e++){var l=n.providers[e];t&&(l.flags|=4096);var r=Ru.get(l.token);r&&(l.flags=-3841&l.flags|r.flags,l.deps=jr(r.deps),l.value=r.value)}if(Nu.size>0){var o=new Set(n.modules);Nu.forEach(function(e,l){if(o.has(On(l).providedIn)){var r={token:l,flags:e.flags|(t?4096:0),deps:jr(e.deps),value:e.value,index:n.providers.length};n.providers.push(r),n.providersByKey[br(l)]=r}})}}(n=n.factory(function(){return vr})),n):n}(l))}var Ru=new Map,Nu=new Map,ju=new Map;function Du(n){var e;Ru.set(n.token,n),"function"==typeof n.token&&(e=On(n.token))&&"function"==typeof e.providedIn&&Nu.set(n.token,n)}function Uu(n,e){var t=Br(e.viewDefFactory),l=Br(t.nodes[0].element.componentView);ju.set(n,l)}function Bu(){Ru.clear(),Nu.clear(),ju.clear()}function qu(n){if(0===Ru.size)return n;var e=function(n){for(var e=[],t=null,l=0;l<n.nodes.length;l++){var r=n.nodes[l];1&r.flags&&(t=r),t&&3840&r.flags&&Ru.has(r.provider.token)&&(e.push(t.nodeIndex),t=null)}return e}(n);if(0===e.length)return n;n=n.factory(function(){return vr});for(var t=0;t<e.length;t++)l(n,e[t]);return n;function l(n,e){for(var t=e+1;t<n.nodes.length;t++){var l=n.nodes[t];if(1&l.flags)return;if(3840&l.flags){var r=l.provider,o=Ru.get(r.token);o&&(l.flags=-3841&l.flags|o.flags,r.deps=jr(o.deps),r.value=o.value)}}}}function zu(n,e,t,l,r,o,u,i,a,s,c,p,d){var f=n.def.nodes[e];return mu(n,f,t,l,r,o,u,i,a,s,c,p,d),224&f.flags?pr(n,e).value:void 0}function Vu(n,e,t,l,r,o,u,i,a,s,c,p,d){var f=n.def.nodes[e];return yu(n,f,t,l,r,o,u,i,a,s,c,p,d),224&f.flags?pr(n,e).value:void 0}function Hu(n){return ui(Qu.detectChanges,gu,null,[n])}function Fu(n){return ui(Qu.checkNoChanges,hu,null,[n])}function Wu(n){return ui(Qu.destroy,wu,null,[n])}var Gu,Zu,Ku,Qu=function(n){return n[n.create=0]="create",n[n.detectChanges=1]="detectChanges",n[n.checkNoChanges=2]="checkNoChanges",n[n.destroy=3]="destroy",n[n.handleEvent=4]="handleEvent",n}({});function Yu(n,e){Zu=n,Ku=e}function Ju(n,e,t,l){return Yu(n,e),ui(Qu.handleEvent,n.def.handleEvent,null,[n,e,t,l])}function $u(n,e){if(128&n.state)throw mr(Qu[Gu]);return Yu(n,ti(n,0)),n.def.updateDirectives(function(n,t,l){for(var r=[],o=3;o<arguments.length;o++)r[o-3]=arguments[o];var u=n.def.nodes[t];return 0===e?ni(n,u,l,r):ei(n,u,l,r),16384&u.flags&&Yu(n,ti(n,t)),224&u.flags?pr(n,u.nodeIndex).value:void 0},n)}function Xu(n,e){if(128&n.state)throw mr(Qu[Gu]);return Yu(n,li(n,0)),n.def.updateRenderer(function(n,t,l){for(var r=[],o=3;o<arguments.length;o++)r[o-3]=arguments[o];var u=n.def.nodes[t];return 0===e?ni(n,u,l,r):ei(n,u,l,r),3&u.flags&&Yu(n,li(n,t)),224&u.flags?pr(n,u.nodeIndex).value:void 0},n)}function ni(n,e,t,l){if(mu.apply(void 0,c([n,e,t],l))){var r=1===t?l[0]:l;if(16384&e.flags){for(var o={},u=0;u<e.bindings.length;u++){var i=e.bindings[u],a=r[u];8&i.flags&&(o[(f=i.nonMinifiedName,"ng-reflect-"+f.replace(/[$@]/g,"_").replace(te,function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return"-"+n[1].toLowerCase()}))]=le(a))}var s=e.parent,p=sr(n,s.nodeIndex).renderElement;if(s.element.name)for(var d in o)null!=(a=o[d])?n.renderer.setAttribute(p,d,a):n.renderer.removeAttribute(p,d);else n.renderer.setValue(p,"bindings="+JSON.stringify(o,null,2))}}var f}function ei(n,e,t,l){yu.apply(void 0,c([n,e,t],l))}function ti(n,e){for(var t=e;t<n.def.nodes.length;t++){var l=n.def.nodes[t];if(16384&l.flags&&l.bindings&&l.bindings.length)return t}return null}function li(n,e){for(var t=e;t<n.def.nodes.length;t++){var l=n.def.nodes[t];if(3&l.flags&&l.bindings&&l.bindings.length)return t}return null}var ri=function(){function n(n,e){this.view=n,this.nodeIndex=e,null==e&&(this.nodeIndex=e=0),this.nodeDef=n.def.nodes[e];for(var t=this.nodeDef,l=n;t&&0==(1&t.flags);)t=t.parent;if(!t)for(;!t&&l;)t=Tr(l),l=l.parent;this.elDef=t,this.elView=l}return Object.defineProperty(n.prototype,"elOrCompView",{get:function(){return sr(this.elView,this.elDef.nodeIndex).componentView||this.view},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"injector",{get:function(){return Co(this.elView,this.elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"component",{get:function(){return this.elOrCompView.component},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"context",{get:function(){return this.elOrCompView.context},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"providerTokens",{get:function(){var n=[];if(this.elDef)for(var e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){var t=this.elView.def.nodes[e];20224&t.flags&&n.push(t.provider.token),e+=t.childCount}return n},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"references",{get:function(){var n={};if(this.elDef){oi(this.elView,this.elDef,n);for(var e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){var t=this.elView.def.nodes[e];20224&t.flags&&oi(this.elView,t,n),e+=t.childCount}}return n},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"componentRenderElement",{get:function(){var n=function(n){for(;n&&!Ir(n);)n=n.parent;return n.parent?sr(n.parent,Tr(n).nodeIndex):null}(this.elOrCompView);return n?n.renderElement:void 0},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"renderNode",{get:function(){return 2&this.nodeDef.flags?Lr(this.view,this.nodeDef):Lr(this.elView,this.elDef)},enumerable:!0,configurable:!0}),n.prototype.logError=function(n){for(var e,t,l=[],r=1;r<arguments.length;r++)l[r-1]=arguments[r];2&this.nodeDef.flags?(e=this.view.def,t=this.nodeDef.nodeIndex):(e=this.elView.def,t=this.elDef.nodeIndex);var o=function(n,e){for(var t=-1,l=0;l<=e;l++)3&n.nodes[l].flags&&t++;return t}(e,t),u=-1;e.factory(function(){var e;return++u===o?(e=n.error).bind.apply(e,c([n],l)):vr}),u<o&&(n.error("Illegal state: the ViewDefinitionFactory did not call the logger!"),n.error.apply(n,c(l)))},n}();function oi(n,e,t){for(var l in e.references)t[l]=nu(n,e,e.references[l])}function ui(n,e,t,l){var r=Gu,o=Zu,u=Ku;try{Gu=n;var i=e.apply(t,l);return Zu=o,Ku=u,Gu=r,i}catch(a){if(At(a)||!Zu)throw a;throw function(n,e){return n instanceof Error||(n=new Error(n.toString())),gr(n,e),n}(a,ii())}}function ii(){return Zu?new ri(Zu,Ku):null}var ai=function(){function n(n){this.delegate=n}return n.prototype.createRenderer=function(n,e){return new si(this.delegate.createRenderer(n,e))},n.prototype.begin=function(){this.delegate.begin&&this.delegate.begin()},n.prototype.end=function(){this.delegate.end&&this.delegate.end()},n.prototype.whenRenderingDone=function(){return this.delegate.whenRenderingDone?this.delegate.whenRenderingDone():Promise.resolve(null)},n}(),si=function(){function n(n){this.delegate=n,this.debugContextFactory=ii,this.data=this.delegate.data}return n.prototype.createDebugContext=function(n){return this.debugContextFactory(n)},n.prototype.destroyNode=function(n){!function(n){jl.delete(n.nativeNode)}(Dl(n)),this.delegate.destroyNode&&this.delegate.destroyNode(n)},n.prototype.destroy=function(){this.delegate.destroy()},n.prototype.createElement=function(n,e){var t=this.delegate.createElement(n,e),l=this.createDebugContext(t);if(l){var r=new Nl(t,null,l);r.name=n,Ul(r)}return t},n.prototype.createComment=function(n){var e=this.delegate.createComment(n),t=this.createDebugContext(e);return t&&Ul(new Rl(e,null,t)),e},n.prototype.createText=function(n){var e=this.delegate.createText(n),t=this.createDebugContext(e);return t&&Ul(new Rl(e,null,t)),e},n.prototype.appendChild=function(n,e){var t=Dl(n),l=Dl(e);t&&l&&t instanceof Nl&&t.addChild(l),this.delegate.appendChild(n,e)},n.prototype.insertBefore=function(n,e,t){var l=Dl(n),r=Dl(e),o=Dl(t);l&&r&&l instanceof Nl&&l.insertBefore(o,r),this.delegate.insertBefore(n,e,t)},n.prototype.removeChild=function(n,e){var t=Dl(n),l=Dl(e);t&&l&&t instanceof Nl&&t.removeChild(l),this.delegate.removeChild(n,e)},n.prototype.selectRootElement=function(n,e){var t=this.delegate.selectRootElement(n,e),l=ii();return l&&Ul(new Nl(t,null,l)),t},n.prototype.setAttribute=function(n,e,t,l){var r=Dl(n);r&&r instanceof Nl&&(r.attributes[l?l+":"+e:e]=t),this.delegate.setAttribute(n,e,t,l)},n.prototype.removeAttribute=function(n,e,t){var l=Dl(n);l&&l instanceof Nl&&(l.attributes[t?t+":"+e:e]=null),this.delegate.removeAttribute(n,e,t)},n.prototype.addClass=function(n,e){var t=Dl(n);t&&t instanceof Nl&&(t.classes[e]=!0),this.delegate.addClass(n,e)},n.prototype.removeClass=function(n,e){var t=Dl(n);t&&t instanceof Nl&&(t.classes[e]=!1),this.delegate.removeClass(n,e)},n.prototype.setStyle=function(n,e,t,l){var r=Dl(n);r&&r instanceof Nl&&(r.styles[e]=t),this.delegate.setStyle(n,e,t,l)},n.prototype.removeStyle=function(n,e,t){var l=Dl(n);l&&l instanceof Nl&&(l.styles[e]=null),this.delegate.removeStyle(n,e,t)},n.prototype.setProperty=function(n,e,t){var l=Dl(n);l&&l instanceof Nl&&(l.properties[e]=t),this.delegate.setProperty(n,e,t)},n.prototype.listen=function(n,e,t){if("string"!=typeof n){var l=Dl(n);l&&l.listeners.push(new Il(e,t))}return this.delegate.listen(n,e,t)},n.prototype.parentNode=function(n){return this.delegate.parentNode(n)},n.prototype.nextSibling=function(n){return this.delegate.nextSibling(n)},n.prototype.setValue=function(n,e){return this.delegate.setValue(n,e)},n}();function ci(n,e,t){return new pi(n,e,t)}var pi=function(n){function e(e,t,l){var r=n.call(this)||this;return r.moduleType=e,r._bootstrapComponents=t,r._ngModuleDefFactory=l,r}return r(e,n),e.prototype.create=function(n){!function(){if(!Mu){Mu=!0;var n=Je()?{setCurrentNode:Yu,createRootView:Eu,createEmbeddedView:Tu,createComponentView:Lu,createNgModuleRef:Iu,overrideProvider:Du,overrideComponentView:Uu,clearOverrides:Bu,checkAndUpdateView:Hu,checkNoChangesView:Fu,destroyView:Wu,createDebugContext:function(n,e){return new ri(n,e)},handleEvent:Ju,updateDirectives:$u,updateRenderer:Xu}:{setCurrentNode:function(){},createRootView:Su,createEmbeddedView:au,createComponentView:cu,createNgModuleRef:Mo,overrideProvider:vr,overrideComponentView:vr,clearOverrides:vr,checkAndUpdateView:gu,checkNoChangesView:hu,destroyView:wu,createDebugContext:function(n,e){return new ri(n,e)},handleEvent:function(n,e,t,l){return n.def.handleEvent(n,e,t,l)},updateDirectives:function(n,e){return n.def.updateDirectives(0===e?zu:Vu,n)},updateRenderer:function(n,e){return n.def.updateRenderer(0===e?zu:Vu,n)}};fr.setCurrentNode=n.setCurrentNode,fr.createRootView=n.createRootView,fr.createEmbeddedView=n.createEmbeddedView,fr.createComponentView=n.createComponentView,fr.createNgModuleRef=n.createNgModuleRef,fr.overrideProvider=n.overrideProvider,fr.overrideComponentView=n.overrideComponentView,fr.clearOverrides=n.clearOverrides,fr.checkAndUpdateView=n.checkAndUpdateView,fr.checkNoChangesView=n.checkNoChangesView,fr.destroyView=n.destroyView,fr.resolveDep=Wo,fr.createDebugContext=n.createDebugContext,fr.handleEvent=n.handleEvent,fr.updateDirectives=n.updateDirectives,fr.updateRenderer=n.updateRenderer,fr.dirtyParentQueries=Jo}}();var e=function(n){var e=Array.from(n.providers),t=Array.from(n.modules),l={};for(var r in n.providersByKey)l[r]=n.providersByKey[r];return{factory:n.factory,isRoot:n.isRoot,providers:e,modules:t,providersByKey:l}}(Br(this._ngModuleDefFactory));return fr.createNgModuleRef(this.moduleType,n||he.NULL,this._bootstrapComponents,e)},e}(Ue),di=function(){return function(){}}(),fi=function(){return function(){this.title="tutorial-PWA"}}(),hi=function(){return function(){}}(),gi=new Mn("Location Initialized"),mi=function(){return function(){}}(),vi=new Mn("appBaseHref"),yi=function(){function n(n){var t=this;this._subject=new bt,this._platformStrategy=n;var l=this._platformStrategy.getBaseHref();this._baseHref=e.stripTrailingSlash(bi(l)),this._platformStrategy.onPopState(function(n){t._subject.emit({url:t.path(!0),pop:!0,state:n.state,type:n.type})})}var e;return e=n,n.prototype.path=function(n){return void 0===n&&(n=!1),this.normalize(this._platformStrategy.path(n))},n.prototype.isCurrentPathEqualTo=function(n,t){return void 0===t&&(t=""),this.path()==this.normalize(n+e.normalizeQueryParams(t))},n.prototype.normalize=function(n){return e.stripTrailingSlash(function(n,e){return n&&e.startsWith(n)?e.substring(n.length):e}(this._baseHref,bi(n)))},n.prototype.prepareExternalUrl=function(n){return n&&"/"!==n[0]&&(n="/"+n),this._platformStrategy.prepareExternalUrl(n)},n.prototype.go=function(n,e,t){void 0===e&&(e=""),void 0===t&&(t=null),this._platformStrategy.pushState(t,"",n,e)},n.prototype.replaceState=function(n,e,t){void 0===e&&(e=""),void 0===t&&(t=null),this._platformStrategy.replaceState(t,"",n,e)},n.prototype.forward=function(){this._platformStrategy.forward()},n.prototype.back=function(){this._platformStrategy.back()},n.prototype.subscribe=function(n,e,t){return this._subject.subscribe({next:n,error:e,complete:t})},n.normalizeQueryParams=function(n){return n&&"?"!==n[0]?"?"+n:n},n.joinWithSlash=function(n,e){if(0==n.length)return e;if(0==e.length)return n;var t=0;return n.endsWith("/")&&t++,e.startsWith("/")&&t++,2==t?n+e.substring(1):1==t?n+e:n+"/"+e},n.stripTrailingSlash=function(n){var e=n.match(/#|\?|$/),t=e&&e.index||n.length;return n.slice(0,t-("/"===n[t-1]?1:0))+n.slice(t)},n}();function bi(n){return n.replace(/\/index.html$/,"")}var wi=function(n){function e(e,t){var l=n.call(this)||this;return l._platformLocation=e,l._baseHref="",null!=t&&(l._baseHref=t),l}return r(e,n),e.prototype.onPopState=function(n){this._platformLocation.onPopState(n),this._platformLocation.onHashChange(n)},e.prototype.getBaseHref=function(){return this._baseHref},e.prototype.path=function(n){void 0===n&&(n=!1);var e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e},e.prototype.prepareExternalUrl=function(n){var e=yi.joinWithSlash(this._baseHref,n);return e.length>0?"#"+e:e},e.prototype.pushState=function(n,e,t,l){var r=this.prepareExternalUrl(t+yi.normalizeQueryParams(l));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(n,e,r)},e.prototype.replaceState=function(n,e,t,l){var r=this.prepareExternalUrl(t+yi.normalizeQueryParams(l));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(n,e,r)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(mi),_i=function(n){function e(e,t){var l=n.call(this)||this;if(l._platformLocation=e,null==t&&(t=l._platformLocation.getBaseHrefFromDOM()),null==t)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return l._baseHref=t,l}return r(e,n),e.prototype.onPopState=function(n){this._platformLocation.onPopState(n),this._platformLocation.onHashChange(n)},e.prototype.getBaseHref=function(){return this._baseHref},e.prototype.prepareExternalUrl=function(n){return yi.joinWithSlash(this._baseHref,n)},e.prototype.path=function(n){void 0===n&&(n=!1);var e=this._platformLocation.pathname+yi.normalizeQueryParams(this._platformLocation.search),t=this._platformLocation.hash;return t&&n?""+e+t:e},e.prototype.pushState=function(n,e,t,l){var r=this.prepareExternalUrl(t+yi.normalizeQueryParams(l));this._platformLocation.pushState(n,e,r)},e.prototype.replaceState=function(n,e,t,l){var r=this.prepareExternalUrl(t+yi.normalizeQueryParams(l));this._platformLocation.replaceState(n,e,r)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},e}(mi),Ci=void 0,xi=["en",[["a","p"],["AM","PM"],Ci],[["AM","PM"],Ci,Ci],[["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"]],Ci,[["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"]],Ci,[["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}",Ci,"{1} 'at' {0}",Ci],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"$","US Dollar",{},function(n){var e=Math.floor(Math.abs(n)),t=n.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===t?1:5}],ki={},Pi=function(n){return n[n.Zero=0]="Zero",n[n.One=1]="One",n[n.Two=2]="Two",n[n.Few=3]="Few",n[n.Many=4]="Many",n[n.Other=5]="Other",n}({}),Oi=new Mn("UseV4Plurals"),Mi=function(){return function(){}}(),Si=function(n){function e(e,t){var l=n.call(this)||this;return l.locale=e,l.deprecatedPluralFn=t,l}return r(e,n),e.prototype.getPluralCategory=function(n,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,n):function(n){return function(n){var e=n.toLowerCase().replace(/_/g,"-"),t=ki[e];if(t)return t;var l=e.split("-")[0];if(t=ki[l])return t;if("en"===l)return xi;throw new Error('Missing locale data for the locale "'+n+'".')}(n)[18]}(e||this.locale)(n)){case Pi.Zero:return"zero";case Pi.One:return"one";case Pi.Two:return"two";case Pi.Few:return"few";case Pi.Many:return"many";default:return"other"}},e}(Mi),Ei=function(){return function(){}}(),Ai=new Mn("DocumentToken"),Ti="browser",Li="server";function Ii(n){return n===Ti}var Ri=function(){function n(){}return n.ngInjectableDef=Pn({providedIn:"root",factory:function(){return new Ni(ee(Ai),window,ee(It))}}),n}(),Ni=function(){function n(n,e,t){this.document=n,this.window=e,this.errorHandler=t,this.offset=function(){return[0,0]}}return n.prototype.setOffset=function(n){this.offset=Array.isArray(n)?function(){return n}:n},n.prototype.getScrollPosition=function(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]},n.prototype.scrollToPosition=function(n){this.supportScrollRestoration()&&this.window.scrollTo(n[0],n[1])},n.prototype.scrollToAnchor=function(n){if(this.supportScrollRestoration()){n=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(n):n.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{var e=this.document.querySelector("#"+n);if(e)return void this.scrollToElement(e);var t=this.document.querySelector("[name='"+n+"']");if(t)return void this.scrollToElement(t)}catch(l){this.errorHandler.handleError(l)}}},n.prototype.setHistoryScrollRestoration=function(n){if(this.supportScrollRestoration()){var e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=n)}},n.prototype.scrollToElement=function(n){var e=n.getBoundingClientRect(),t=e.left+this.window.pageXOffset,l=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(t-r[0],l-r[1])},n.prototype.supportScrollRestoration=function(){try{return!!this.window&&!!this.window.scrollTo}catch(n){return!1}},n}(),ji=new I(function(n){return n.complete()});function Di(n){return n?function(n){return new I(function(e){return n.schedule(function(){return e.complete()})})}(n):ji}function Ui(n){var e=new I(function(e){e.next(n),e.complete()});return e._isScalar=!0,e.value=n,e}function Bi(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var t=n[n.length-1];switch(z(t)?n.pop():t=void 0,n.length){case 0:return Di(t);case 1:return t?ln(n,t):Ui(n[0]);default:return ln(n,t)}}var qi=function(n){function e(e){var t=n.call(this)||this;return t._value=e,t}return r(e,n),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var t=n.prototype._subscribe.call(this,e);return t&&!t.closed&&e.next(this._value),t},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new j;return this._value},e.prototype.next=function(e){n.prototype.next.call(this,this._value=e)},e}(B);function zi(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}zi.prototype=Object.create(Error.prototype);var Vi=zi,Hi={},Fi=function(){function n(n){this.resultSelector=n}return n.prototype.call=function(n,e){return e.subscribe(new Wi(n,this.resultSelector))},n}(),Wi=function(n){function e(e,t){var l=n.call(this,e)||this;return l.resultSelector=t,l.active=0,l.values=[],l.observables=[],l}return r(e,n),e.prototype._next=function(n){this.values.push(Hi),this.observables.push(n)},e.prototype._complete=function(){var n=this.observables,e=n.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(var t=0;t<e;t++){var l=n[t];this.add($(this,l,l,t))}}},e.prototype.notifyComplete=function(n){0==(this.active-=1)&&this.destination.complete()},e.prototype.notifyNext=function(n,e,t,l,r){var o=this.values,u=this.toRespond?o[t]===Hi?--this.toRespond:this.toRespond:0;o[t]=e,0===u&&(this.resultSelector?this._tryResultSelector(o):this.destination.next(o.slice()))},e.prototype._tryResultSelector=function(n){var e;try{e=this.resultSelector.apply(this,n)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(X);function Gi(n){return new I(function(e){var t;try{t=n()}catch(l){return void e.error(l)}return(t?rn(t):Di()).subscribe(e)})}function Zi(){return cn(1)}function Ki(n,e){return function(t){return t.lift(new Qi(n,e))}}var Qi=function(){function n(n,e){this.predicate=n,this.thisArg=e}return n.prototype.call=function(n,e){return e.subscribe(new Yi(n,this.predicate,this.thisArg))},n}(),Yi=function(n){function e(e,t,l){var r=n.call(this,e)||this;return r.predicate=t,r.thisArg=l,r.count=0,r}return r(e,n),e.prototype._next=function(n){var e;try{e=this.predicate.call(this.thisArg,n,this.count++)}catch(t){return void this.destination.error(t)}e&&this.destination.next(n)},e}(M);function Ji(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}Ji.prototype=Object.create(Error.prototype);var $i=Ji;function Xi(n){return function(e){return 0===n?Di():e.lift(new na(n))}}var na=function(){function n(n){if(this.total=n,this.total<0)throw new $i}return n.prototype.call=function(n,e){return e.subscribe(new ea(n,this.total))},n}(),ea=function(n){function e(e,t){var l=n.call(this,e)||this;return l.total=t,l.ring=new Array,l.count=0,l}return r(e,n),e.prototype._next=function(n){var e=this.ring,t=this.total,l=this.count++;e.length<t?e.push(n):e[l%t]=n},e.prototype._complete=function(){var n=this.destination,e=this.count;if(e>0)for(var t=this.count>=this.total?this.total:this.count,l=this.ring,r=0;r<t;r++){var o=e++%t;n.next(l[o])}n.complete()},e}(M);function ta(n,e,t){return function(l){return l.lift(new la(n,e,t))}}var la=function(){function n(n,e,t){this.nextOrObserver=n,this.error=e,this.complete=t}return n.prototype.call=function(n,e){return e.subscribe(new ra(n,this.nextOrObserver,this.error,this.complete))},n}(),ra=function(n){function e(e,t,l,r){var o=n.call(this,e)||this;return o._tapNext=A,o._tapError=A,o._tapComplete=A,o._tapError=l||A,o._tapComplete=r||A,f(t)?(o._context=o,o._tapNext=t):t&&(o._context=t,o._tapNext=t.next||A,o._tapError=t.error||A,o._tapComplete=t.complete||A),o}return r(e,n),e.prototype._next=function(n){try{this._tapNext.call(this._context,n)}catch(e){return void this.destination.error(e)}this.destination.next(n)},e.prototype._error=function(n){try{this._tapError.call(this._context,n)}catch(n){return void this.destination.error(n)}this.destination.error(n)},e.prototype._complete=function(){try{this._tapComplete.call(this._context)}catch(n){return void this.destination.error(n)}return this.destination.complete()},e}(M),oa=function(n){return void 0===n&&(n=ua),ta({hasValue:!1,next:function(){this.hasValue=!0},complete:function(){if(!this.hasValue)throw n()}})};function ua(){return new Vi}function ia(n){return void 0===n&&(n=null),function(e){return e.lift(new aa(n))}}var aa=function(){function n(n){this.defaultValue=n}return n.prototype.call=function(n,e){return e.subscribe(new sa(n,this.defaultValue))},n}(),sa=function(n){function e(e,t){var l=n.call(this,e)||this;return l.defaultValue=t,l.isEmpty=!0,l}return r(e,n),e.prototype._next=function(n){this.isEmpty=!1,this.destination.next(n)},e.prototype._complete=function(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()},e}(M);function ca(n,e){var t=arguments.length>=2;return function(l){return l.pipe(n?Ki(function(e,t){return n(e,t,l)}):sn,Xi(1),t?ia(e):oa(function(){return new Vi}))}}function pa(n){return function(e){var t=new da(n),l=e.lift(t);return t.caught=l}}var da=function(){function n(n){this.selector=n}return n.prototype.call=function(n,e){return e.subscribe(new fa(n,this.selector,this.caught))},n}(),fa=function(n){function e(e,t,l){var r=n.call(this,e)||this;return r.selector=t,r.caught=l,r}return r(e,n),e.prototype.error=function(e){if(!this.isStopped){var t=void 0;try{t=this.selector(e,this.caught)}catch(r){return void n.prototype.error.call(this,r)}this._unsubscribeAndRecycle();var l=new V(this,void 0,void 0);this.add(l),$(this,t,void 0,void 0,l)}},e}(X);function ha(n){return function(e){return 0===n?Di():e.lift(new ga(n))}}var ga=function(){function n(n){if(this.total=n,this.total<0)throw new $i}return n.prototype.call=function(n,e){return e.subscribe(new ma(n,this.total))},n}(),ma=function(n){function e(e,t){var l=n.call(this,e)||this;return l.total=t,l.count=0,l}return r(e,n),e.prototype._next=function(n){var e=this.total,t=++this.count;t<=e&&(this.destination.next(n),t===e&&(this.destination.complete(),this.unsubscribe()))},e}(M);function va(n,e){var t=arguments.length>=2;return function(l){return l.pipe(n?Ki(function(e,t){return n(e,t,l)}):sn,ha(1),t?ia(e):oa(function(){return new Vi}))}}var ya=function(){function n(n,e,t){this.predicate=n,this.thisArg=e,this.source=t}return n.prototype.call=function(n,e){return e.subscribe(new ba(n,this.predicate,this.thisArg,this.source))},n}(),ba=function(n){function e(e,t,l,r){var o=n.call(this,e)||this;return o.predicate=t,o.thisArg=l,o.source=r,o.index=0,o.thisArg=l||o,o}return r(e,n),e.prototype.notifyComplete=function(n){this.destination.next(n),this.destination.complete()},e.prototype._next=function(n){var e=!1;try{e=this.predicate.call(this.thisArg,n,this.index++,this.source)}catch(t){return void this.destination.error(t)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(M);function wa(n,e){return"function"==typeof e?function(t){return t.pipe(wa(function(t,l){return rn(n(t,l)).pipe(nn(function(n,r){return e(t,n,l,r)}))}))}:function(e){return e.lift(new _a(n))}}var _a=function(){function n(n){this.project=n}return n.prototype.call=function(n,e){return e.subscribe(new Ca(n,this.project))},n}(),Ca=function(n){function e(e,t){var l=n.call(this,e)||this;return l.project=t,l.index=0,l}return r(e,n),e.prototype._next=function(n){var e,t=this.index++;try{e=this.project(n,t)}catch(l){return void this.destination.error(l)}this._innerSub(e,n,t)},e.prototype._innerSub=function(n,e,t){var l=this.innerSubscription;l&&l.unsubscribe();var r=new V(this,void 0,void 0);this.destination.add(r),this.innerSubscription=$(this,n,e,t,r)},e.prototype._complete=function(){var e=this.innerSubscription;e&&!e.closed||n.prototype._complete.call(this),this.unsubscribe()},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.destination.remove(e),this.innerSubscription=null,this.isStopped&&n.prototype._complete.call(this)},e.prototype.notifyNext=function(n,e,t,l,r){this.destination.next(e)},e}(X);function xa(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return 1===n.length||2===n.length&&z(n[1])?rn(n[0]):Zi()(Bi.apply(void 0,n))}function ka(n,e){var t=!1;return arguments.length>=2&&(t=!0),function(l){return l.lift(new Pa(n,e,t))}}var Pa=function(){function n(n,e,t){void 0===t&&(t=!1),this.accumulator=n,this.seed=e,this.hasSeed=t}return n.prototype.call=function(n,e){return e.subscribe(new Oa(n,this.accumulator,this.seed,this.hasSeed))},n}(),Oa=function(n){function e(e,t,l,r){var o=n.call(this,e)||this;return o.accumulator=t,o._seed=l,o.hasSeed=r,o.index=0,o}return r(e,n),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(n){this.hasSeed=!0,this._seed=n},enumerable:!0,configurable:!0}),e.prototype._next=function(n){if(this.hasSeed)return this._tryNext(n);this.seed=n,this.destination.next(n)},e.prototype._tryNext=function(n){var e,t=this.index++;try{e=this.accumulator(this.seed,n,t)}catch(l){this.destination.error(l)}this.seed=e,this.destination.next(e)},e}(M);function Ma(n,e){return on(n,e,1)}var Sa=function(){function n(n){this.callback=n}return n.prototype.call=function(n,e){return e.subscribe(new Ea(n,this.callback))},n}(),Ea=function(n){function e(e,t){var l=n.call(this,e)||this;return l.add(new w(t)),l}return r(e,n),e}(M),Aa=null;function Ta(){return Aa}var La,Ia={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},Ra={"\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"},Na={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"};jn.Node&&(La=jn.Node.prototype.contains||function(n){return!!(16&this.compareDocumentPosition(n))});var ja,Da=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.parse=function(n){throw new Error("parse not implemented")},e.makeCurrent=function(){var n;n=new e,Aa||(Aa=n)},e.prototype.hasProperty=function(n,e){return e in n},e.prototype.setProperty=function(n,e,t){n[e]=t},e.prototype.getProperty=function(n,e){return n[e]},e.prototype.invoke=function(n,e,t){var l;(l=n)[e].apply(l,c(t))},e.prototype.logError=function(n){window.console&&(console.error?console.error(n):console.log(n))},e.prototype.log=function(n){window.console&&window.console.log&&window.console.log(n)},e.prototype.logGroup=function(n){window.console&&window.console.group&&window.console.group(n)},e.prototype.logGroupEnd=function(){window.console&&window.console.groupEnd&&window.console.groupEnd()},Object.defineProperty(e.prototype,"attrToPropMap",{get:function(){return Ia},enumerable:!0,configurable:!0}),e.prototype.contains=function(n,e){return La.call(n,e)},e.prototype.querySelector=function(n,e){return n.querySelector(e)},e.prototype.querySelectorAll=function(n,e){return n.querySelectorAll(e)},e.prototype.on=function(n,e,t){n.addEventListener(e,t,!1)},e.prototype.onAndCancel=function(n,e,t){return n.addEventListener(e,t,!1),function(){n.removeEventListener(e,t,!1)}},e.prototype.dispatchEvent=function(n,e){n.dispatchEvent(e)},e.prototype.createMouseEvent=function(n){var e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(n,!0,!0),e},e.prototype.createEvent=function(n){var e=this.getDefaultDocument().createEvent("Event");return e.initEvent(n,!0,!0),e},e.prototype.preventDefault=function(n){n.preventDefault(),n.returnValue=!1},e.prototype.isPrevented=function(n){return n.defaultPrevented||null!=n.returnValue&&!n.returnValue},e.prototype.getInnerHTML=function(n){return n.innerHTML},e.prototype.getTemplateContent=function(n){return"content"in n&&this.isTemplateElement(n)?n.content:null},e.prototype.getOuterHTML=function(n){return n.outerHTML},e.prototype.nodeName=function(n){return n.nodeName},e.prototype.nodeValue=function(n){return n.nodeValue},e.prototype.type=function(n){return n.type},e.prototype.content=function(n){return this.hasProperty(n,"content")?n.content:n},e.prototype.firstChild=function(n){return n.firstChild},e.prototype.nextSibling=function(n){return n.nextSibling},e.prototype.parentElement=function(n){return n.parentNode},e.prototype.childNodes=function(n){return n.childNodes},e.prototype.childNodesAsList=function(n){for(var e=n.childNodes,t=new Array(e.length),l=0;l<e.length;l++)t[l]=e[l];return t},e.prototype.clearNodes=function(n){for(;n.firstChild;)n.removeChild(n.firstChild)},e.prototype.appendChild=function(n,e){n.appendChild(e)},e.prototype.removeChild=function(n,e){n.removeChild(e)},e.prototype.replaceChild=function(n,e,t){n.replaceChild(e,t)},e.prototype.remove=function(n){return n.parentNode&&n.parentNode.removeChild(n),n},e.prototype.insertBefore=function(n,e,t){n.insertBefore(t,e)},e.prototype.insertAllBefore=function(n,e,t){t.forEach(function(t){return n.insertBefore(t,e)})},e.prototype.insertAfter=function(n,e,t){n.insertBefore(t,e.nextSibling)},e.prototype.setInnerHTML=function(n,e){n.innerHTML=e},e.prototype.getText=function(n){return n.textContent},e.prototype.setText=function(n,e){n.textContent=e},e.prototype.getValue=function(n){return n.value},e.prototype.setValue=function(n,e){n.value=e},e.prototype.getChecked=function(n){return n.checked},e.prototype.setChecked=function(n,e){n.checked=e},e.prototype.createComment=function(n){return this.getDefaultDocument().createComment(n)},e.prototype.createTemplate=function(n){var e=this.getDefaultDocument().createElement("template");return e.innerHTML=n,e},e.prototype.createElement=function(n,e){return(e=e||this.getDefaultDocument()).createElement(n)},e.prototype.createElementNS=function(n,e,t){return(t=t||this.getDefaultDocument()).createElementNS(n,e)},e.prototype.createTextNode=function(n,e){return(e=e||this.getDefaultDocument()).createTextNode(n)},e.prototype.createScriptTag=function(n,e,t){var l=(t=t||this.getDefaultDocument()).createElement("SCRIPT");return l.setAttribute(n,e),l},e.prototype.createStyleElement=function(n,e){var t=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(t,this.createTextNode(n,e)),t},e.prototype.createShadowRoot=function(n){return n.createShadowRoot()},e.prototype.getShadowRoot=function(n){return n.shadowRoot},e.prototype.getHost=function(n){return n.host},e.prototype.clone=function(n){return n.cloneNode(!0)},e.prototype.getElementsByClassName=function(n,e){return n.getElementsByClassName(e)},e.prototype.getElementsByTagName=function(n,e){return n.getElementsByTagName(e)},e.prototype.classList=function(n){return Array.prototype.slice.call(n.classList,0)},e.prototype.addClass=function(n,e){n.classList.add(e)},e.prototype.removeClass=function(n,e){n.classList.remove(e)},e.prototype.hasClass=function(n,e){return n.classList.contains(e)},e.prototype.setStyle=function(n,e,t){n.style[e]=t},e.prototype.removeStyle=function(n,e){n.style[e]=""},e.prototype.getStyle=function(n,e){return n.style[e]},e.prototype.hasStyle=function(n,e,t){var l=this.getStyle(n,e)||"";return t?l==t:l.length>0},e.prototype.tagName=function(n){return n.tagName},e.prototype.attributeMap=function(n){for(var e=new Map,t=n.attributes,l=0;l<t.length;l++){var r=t.item(l);e.set(r.name,r.value)}return e},e.prototype.hasAttribute=function(n,e){return n.hasAttribute(e)},e.prototype.hasAttributeNS=function(n,e,t){return n.hasAttributeNS(e,t)},e.prototype.getAttribute=function(n,e){return n.getAttribute(e)},e.prototype.getAttributeNS=function(n,e,t){return n.getAttributeNS(e,t)},e.prototype.setAttribute=function(n,e,t){n.setAttribute(e,t)},e.prototype.setAttributeNS=function(n,e,t,l){n.setAttributeNS(e,t,l)},e.prototype.removeAttribute=function(n,e){n.removeAttribute(e)},e.prototype.removeAttributeNS=function(n,e,t){n.removeAttributeNS(e,t)},e.prototype.templateAwareRoot=function(n){return this.isTemplateElement(n)?this.content(n):n},e.prototype.createHtmlDocument=function(){return document.implementation.createHTMLDocument("fakeTitle")},e.prototype.getDefaultDocument=function(){return document},e.prototype.getBoundingClientRect=function(n){try{return n.getBoundingClientRect()}catch(e){return{top:0,bottom:0,left:0,right:0,width:0,height:0}}},e.prototype.getTitle=function(n){return n.title},e.prototype.setTitle=function(n,e){n.title=e||""},e.prototype.elementMatches=function(n,e){return!!this.isElementNode(n)&&(n.matches&&n.matches(e)||n.msMatchesSelector&&n.msMatchesSelector(e)||n.webkitMatchesSelector&&n.webkitMatchesSelector(e))},e.prototype.isTemplateElement=function(n){return this.isElementNode(n)&&"TEMPLATE"===n.nodeName},e.prototype.isTextNode=function(n){return n.nodeType===Node.TEXT_NODE},e.prototype.isCommentNode=function(n){return n.nodeType===Node.COMMENT_NODE},e.prototype.isElementNode=function(n){return n.nodeType===Node.ELEMENT_NODE},e.prototype.hasShadowRoot=function(n){return null!=n.shadowRoot&&n instanceof HTMLElement},e.prototype.isShadowRoot=function(n){return n instanceof DocumentFragment},e.prototype.importIntoDoc=function(n){return document.importNode(this.templateAwareRoot(n),!0)},e.prototype.adoptNode=function(n){return document.adoptNode(n)},e.prototype.getHref=function(n){return n.getAttribute("href")},e.prototype.getEventKey=function(n){var e=n.key;if(null==e){if(null==(e=n.keyIdentifier))return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===n.location&&Na.hasOwnProperty(e)&&(e=Na[e]))}return Ra[e]||e},e.prototype.getGlobalEventTarget=function(n,e){return"window"===e?window:"document"===e?n:"body"===e?n.body:null},e.prototype.getHistory=function(){return window.history},e.prototype.getLocation=function(){return window.location},e.prototype.getBaseHref=function(n){var e,t=Ua||(Ua=document.querySelector("base"))?Ua.getAttribute("href"):null;return null==t?null:(e=t,ja||(ja=document.createElement("a")),ja.setAttribute("href",e),"/"===ja.pathname.charAt(0)?ja.pathname:"/"+ja.pathname)},e.prototype.resetBaseElement=function(){Ua=null},e.prototype.getUserAgent=function(){return window.navigator.userAgent},e.prototype.setData=function(n,e,t){this.setAttribute(n,"data-"+e,t)},e.prototype.getData=function(n,e){return this.getAttribute(n,"data-"+e)},e.prototype.getComputedStyle=function(n){return getComputedStyle(n)},e.prototype.supportsWebAnimation=function(){return"function"==typeof Element.prototype.animate},e.prototype.performanceNow=function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()},e.prototype.supportsCookies=function(){return!0},e.prototype.getCookie=function(n){return function(n,e){var t,l;e=encodeURIComponent(e);try{for(var r=a(n.split(";")),o=r.next();!o.done;o=r.next()){var u=o.value,i=u.indexOf("="),c=s(-1==i?[u,""]:[u.slice(0,i),u.slice(i+1)],2),p=c[1];if(c[0].trim()===e)return decodeURIComponent(p)}}catch(d){t={error:d}}finally{try{o&&!o.done&&(l=r.return)&&l.call(r)}finally{if(t)throw t.error}}return null}(document.cookie,n)},e.prototype.setCookie=function(n,e){document.cookie=encodeURIComponent(n)+"="+encodeURIComponent(e)},e}(function(n){function e(){var e=n.call(this)||this;e._animationPrefix=null,e._transitionEnd=null;try{var t=e.createElement("div",document);if(null!=e.getStyle(t,"animationName"))e._animationPrefix="";else for(var l=["Webkit","Moz","O","ms"],r=0;r<l.length;r++)if(null!=e.getStyle(t,l[r]+"AnimationName")){e._animationPrefix="-"+l[r].toLowerCase()+"-";break}var o={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};Object.keys(o).forEach(function(n){null!=e.getStyle(t,n)&&(e._transitionEnd=o[n])})}catch(u){e._animationPrefix=null,e._transitionEnd=null}return e}return r(e,n),e.prototype.getDistributedNodes=function(n){return n.getDistributedNodes()},e.prototype.resolveAndSetHref=function(n,e,t){n.href=null==t?e:e+"/../"+t},e.prototype.supportsDOMEvents=function(){return!0},e.prototype.supportsNativeShadowDOM=function(){return"function"==typeof document.body.createShadowRoot},e.prototype.getAnimationPrefix=function(){return this._animationPrefix?this._animationPrefix:""},e.prototype.getTransitionEnd=function(){return this._transitionEnd?this._transitionEnd:""},e.prototype.supportsAnimation=function(){return null!=this._animationPrefix&&null!=this._transitionEnd},e}(function(){function n(){this.resourceLoaderType=null}return Object.defineProperty(n.prototype,"attrToPropMap",{get:function(){return this._attrToPropMap},set:function(n){this._attrToPropMap=n},enumerable:!0,configurable:!0}),n}())),Ua=null,Ba=Ai;function qa(){return!!window.history.pushState}var za=function(n){function e(e){var t=n.call(this)||this;return t._doc=e,t._init(),t}var t;return r(e,n),e.prototype._init=function(){this.location=Ta().getLocation(),this._history=Ta().getHistory()},e.prototype.getBaseHrefFromDOM=function(){return Ta().getBaseHref(this._doc)},e.prototype.onPopState=function(n){Ta().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",n,!1)},e.prototype.onHashChange=function(n){Ta().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",n,!1)},Object.defineProperty(e.prototype,"pathname",{get:function(){return this.location.pathname},set:function(n){this.location.pathname=n},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"search",{get:function(){return this.location.search},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hash",{get:function(){return this.location.hash},enumerable:!0,configurable:!0}),e.prototype.pushState=function(n,e,t){qa()?this._history.pushState(n,e,t):this.location.hash=t},e.prototype.replaceState=function(n,e,t){qa()?this._history.replaceState(n,e,t):this.location.hash=t},e.prototype.forward=function(){this._history.forward()},e.prototype.back=function(){this._history.back()},u([(t=Kn(Ba),function(n,e){t(n,e,0)}),i("design:paramtypes",[Object])],e)}(hi),Va=new Mn("TRANSITION_ID"),Ha=[{provide:jt,useFactory:function(n,e,t){return function(){t.get(Dt).donePromise.then(function(){var t=Ta();Array.prototype.slice.apply(t.querySelectorAll(e,"style[ng-transition]")).filter(function(e){return t.getAttribute(e,"ng-transition")===n}).forEach(function(n){return t.remove(n)})})}},deps:[Va,Ba,he],multi:!0}],Fa=function(){function n(){}return n.init=function(){var e;e=new n,gl=e},n.prototype.addToWindow=function(n){jn.getAngularTestability=function(e,t){void 0===t&&(t=!0);var l=n.findTestabilityInTree(e,t);if(null==l)throw new Error("Could not find testability for element.");return l},jn.getAllAngularTestabilities=function(){return n.getAllTestabilities()},jn.getAllAngularRootElements=function(){return n.getAllRootElements()},jn.frameworkStabilizers||(jn.frameworkStabilizers=[]),jn.frameworkStabilizers.push(function(n){var e=jn.getAllAngularTestabilities(),t=e.length,l=!1,r=function(e){l=l||e,0==--t&&n(l)};e.forEach(function(n){n.whenStable(r)})})},n.prototype.findTestabilityInTree=function(n,e,t){if(null==e)return null;var l=n.getTestability(e);return null!=l?l:t?Ta().isShadowRoot(e)?this.findTestabilityInTree(n,Ta().getHost(e),!0):this.findTestabilityInTree(n,Ta().parentElement(e),!0):null},n}();function Wa(n,e){"undefined"!=typeof COMPILED&&COMPILED||((jn.ng=jn.ng||{})[n]=e)}var Ga={ApplicationRef:Cl,NgZone:ol};function Za(n){return Dl(n)}var Ka=new Mn("EventManagerPlugins"),Qa=function(){function n(n,e){var t=this;this._zone=e,this._eventNameToPlugin=new Map,n.forEach(function(n){return n.manager=t}),this._plugins=n.slice().reverse()}return n.prototype.addEventListener=function(n,e,t){return this._findPluginFor(e).addEventListener(n,e,t)},n.prototype.addGlobalEventListener=function(n,e,t){return this._findPluginFor(e).addGlobalEventListener(n,e,t)},n.prototype.getZone=function(){return this._zone},n.prototype._findPluginFor=function(n){var e=this._eventNameToPlugin.get(n);if(e)return e;for(var t=this._plugins,l=0;l<t.length;l++){var r=t[l];if(r.supports(n))return this._eventNameToPlugin.set(n,r),r}throw new Error("No event manager plugin found for event "+n)},n}(),Ya=function(){function n(n){this._doc=n}return n.prototype.addGlobalEventListener=function(n,e,t){var l=Ta().getGlobalEventTarget(this._doc,n);if(!l)throw new Error("Unsupported event target "+l+" for event "+e);return this.addEventListener(l,e,t)},n}(),Ja=function(){function n(){this._stylesSet=new Set}return n.prototype.addStyles=function(n){var e=this,t=new Set;n.forEach(function(n){e._stylesSet.has(n)||(e._stylesSet.add(n),t.add(n))}),this.onStylesAdded(t)},n.prototype.onStylesAdded=function(n){},n.prototype.getAllStyles=function(){return Array.from(this._stylesSet)},n}(),$a=function(n){function e(e){var t=n.call(this)||this;return t._doc=e,t._hostNodes=new Set,t._styleNodes=new Set,t._hostNodes.add(e.head),t}return r(e,n),e.prototype._addStylesToHost=function(n,e){var t=this;n.forEach(function(n){var l=t._doc.createElement("style");l.textContent=n,t._styleNodes.add(e.appendChild(l))})},e.prototype.addHost=function(n){this._addStylesToHost(this._stylesSet,n),this._hostNodes.add(n)},e.prototype.removeHost=function(n){this._hostNodes.delete(n)},e.prototype.onStylesAdded=function(n){var e=this;this._hostNodes.forEach(function(t){return e._addStylesToHost(n,t)})},e.prototype.ngOnDestroy=function(){this._styleNodes.forEach(function(n){return Ta().remove(n)})},e}(Ja),Xa={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/"},ns=/%COMP%/g,es="_nghost-%COMP%",ts="_ngcontent-%COMP%";function ls(n,e,t){for(var l=0;l<e.length;l++){var r=e[l];Array.isArray(r)?ls(n,r,t):(r=r.replace(ns,n),t.push(r))}return t}function rs(n){return function(e){!1===n(e)&&(e.preventDefault(),e.returnValue=!1)}}var os=function(){function n(n,e,t){this.eventManager=n,this.sharedStylesHost=e,this.appId=t,this.rendererByCompId=new Map,this.defaultRenderer=new us(n)}return n.prototype.createRenderer=function(n,e){if(!n||!e)return this.defaultRenderer;switch(e.encapsulation){case Zn.Emulated:var t=this.rendererByCompId.get(e.id);return t||(t=new cs(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,t)),t.applyToHost(n),t;case Zn.Native:case Zn.ShadowDom:return new ps(this.eventManager,this.sharedStylesHost,n,e);default:if(!this.rendererByCompId.has(e.id)){var l=ls(e.id,e.styles,[]);this.sharedStylesHost.addStyles(l),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}},n.prototype.begin=function(){},n.prototype.end=function(){},n}(),us=function(){function n(n){this.eventManager=n,this.data=Object.create(null)}return n.prototype.destroy=function(){},n.prototype.createElement=function(n,e){return e?document.createElementNS(Xa[e],n):document.createElement(n)},n.prototype.createComment=function(n){return document.createComment(n)},n.prototype.createText=function(n){return document.createTextNode(n)},n.prototype.appendChild=function(n,e){n.appendChild(e)},n.prototype.insertBefore=function(n,e,t){n&&n.insertBefore(e,t)},n.prototype.removeChild=function(n,e){n&&n.removeChild(e)},n.prototype.selectRootElement=function(n,e){var t="string"==typeof n?document.querySelector(n):n;if(!t)throw new Error('The selector "'+n+'" did not match any elements');return e||(t.textContent=""),t},n.prototype.parentNode=function(n){return n.parentNode},n.prototype.nextSibling=function(n){return n.nextSibling},n.prototype.setAttribute=function(n,e,t,l){if(l){e=l+":"+e;var r=Xa[l];r?n.setAttributeNS(r,e,t):n.setAttribute(e,t)}else n.setAttribute(e,t)},n.prototype.removeAttribute=function(n,e,t){if(t){var l=Xa[t];l?n.removeAttributeNS(l,e):n.removeAttribute(t+":"+e)}else n.removeAttribute(e)},n.prototype.addClass=function(n,e){n.classList.add(e)},n.prototype.removeClass=function(n,e){n.classList.remove(e)},n.prototype.setStyle=function(n,e,t,l){l&He.DashCase?n.style.setProperty(e,t,l&He.Important?"important":""):n.style[e]=t},n.prototype.removeStyle=function(n,e,t){t&He.DashCase?n.style.removeProperty(e):n.style[e]=""},n.prototype.setProperty=function(n,e,t){as(e,"property"),n[e]=t},n.prototype.setValue=function(n,e){n.nodeValue=e},n.prototype.listen=function(n,e,t){return as(e,"listener"),"string"==typeof n?this.eventManager.addGlobalEventListener(n,e,rs(t)):this.eventManager.addEventListener(n,e,rs(t))},n}(),is="@".charCodeAt(0);function as(n,e){if(n.charCodeAt(0)===is)throw new Error("Found the synthetic "+e+" "+n+'. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.')}var ss,cs=function(n){function e(e,t,l,r){var o=n.call(this,e)||this;o.component=l;var u=ls(r+"-"+l.id,l.styles,[]);return t.addStyles(u),o.contentAttr=ts.replace(ns,r+"-"+l.id),o.hostAttr=es.replace(ns,r+"-"+l.id),o}return r(e,n),e.prototype.applyToHost=function(e){n.prototype.setAttribute.call(this,e,this.hostAttr,"")},e.prototype.createElement=function(e,t){var l=n.prototype.createElement.call(this,e,t);return n.prototype.setAttribute.call(this,l,this.contentAttr,""),l},e}(us),ps=function(n){function e(e,t,l,r){var o=n.call(this,e)||this;o.sharedStylesHost=t,o.hostEl=l,o.component=r,o.shadowRoot=r.encapsulation===Zn.ShadowDom?l.attachShadow({mode:"open"}):l.createShadowRoot(),o.sharedStylesHost.addHost(o.shadowRoot);for(var u=ls(r.id,r.styles,[]),i=0;i<u.length;i++){var a=document.createElement("style");a.textContent=u[i],o.shadowRoot.appendChild(a)}return o}return r(e,n),e.prototype.nodeOrShadowRoot=function(n){return n===this.hostEl?this.shadowRoot:n},e.prototype.destroy=function(){this.sharedStylesHost.removeHost(this.shadowRoot)},e.prototype.appendChild=function(e,t){return n.prototype.appendChild.call(this,this.nodeOrShadowRoot(e),t)},e.prototype.insertBefore=function(e,t,l){return n.prototype.insertBefore.call(this,this.nodeOrShadowRoot(e),t,l)},e.prototype.removeChild=function(e,t){return n.prototype.removeChild.call(this,this.nodeOrShadowRoot(e),t)},e.prototype.parentNode=function(e){return this.nodeOrShadowRoot(n.prototype.parentNode.call(this,this.nodeOrShadowRoot(e)))},e}(us),ds="undefined"!=typeof Zone&&Zone.__symbol__||function(n){return"__zone_symbol__"+n},fs=ds("addEventListener"),hs=ds("removeEventListener"),gs={},ms="__zone_symbol__propagationStopped";"undefined"!=typeof Zone&&Zone[ds("BLACK_LISTED_EVENTS")]&&(ss={});var vs=function(n){return!!ss&&ss.hasOwnProperty(n)},ys=function(n){var e=gs[n.type];if(e){var t=this[e];if(t){var l=[n];if(1===t.length)return(u=t[0]).zone!==Zone.current?u.zone.run(u.handler,this,l):u.handler.apply(this,l);for(var r=t.slice(),o=0;o<r.length&&!0!==n[ms];o++){var u;(u=r[o]).zone!==Zone.current?u.zone.run(u.handler,this,l):u.handler.apply(this,l)}}}},bs=function(n){function e(e,t,l){var r=n.call(this,e)||this;return r.ngZone=t,l&&function(n){return n===Li}(l)||r.patchEvent(),r}return r(e,n),e.prototype.patchEvent=function(){if("undefined"!=typeof Event&&Event&&Event.prototype&&!Event.prototype.__zone_symbol__stopImmediatePropagation){var n=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[ms]=!0),n&&n.apply(this,arguments)}}},e.prototype.supports=function(n){return!0},e.prototype.addEventListener=function(n,e,t){var l=this,r=t;if(!n[fs]||ol.isInAngularZone()&&!vs(e))n.addEventListener(e,r,!1);else{var o=gs[e];o||(o=gs[e]=ds("ANGULAR"+e+"FALSE"));var u=n[o],i=u&&u.length>0;u||(u=n[o]=[]);var a=vs(e)?Zone.root:Zone.current;if(0===u.length)u.push({zone:a,handler:r});else{for(var s=!1,c=0;c<u.length;c++)if(u[c].handler===r){s=!0;break}s||u.push({zone:a,handler:r})}i||n[fs](e,ys,!1)}return function(){return l.removeEventListener(n,e,r)}},e.prototype.removeEventListener=function(n,e,t){var l=n[hs];if(!l)return n.removeEventListener.apply(n,[e,t,!1]);var r=gs[e],o=r&&n[r];if(!o)return n.removeEventListener.apply(n,[e,t,!1]);for(var u=!1,i=0;i<o.length;i++)if(o[i].handler===t){u=!0,o.splice(i,1);break}u?0===o.length&&l.apply(n,[e,ys,!1]):n.removeEventListener.apply(n,[e,t,!1])},e}(Ya),ws={pan:!0,panstart:!0,panmove:!0,panend:!0,pancancel:!0,panleft:!0,panright:!0,panup:!0,pandown:!0,pinch:!0,pinchstart:!0,pinchmove:!0,pinchend:!0,pinchcancel:!0,pinchin:!0,pinchout:!0,press:!0,pressup:!0,rotate:!0,rotatestart:!0,rotatemove:!0,rotateend:!0,rotatecancel:!0,swipe:!0,swipeleft:!0,swiperight:!0,swipeup:!0,swipedown:!0,tap:!0},_s=new Mn("HammerGestureConfig"),Cs=new Mn("HammerLoader"),xs=function(){function n(){this.events=[],this.overrides={}}return n.prototype.buildHammer=function(n){var e=new Hammer(n,this.options);for(var t in e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0}),this.overrides)e.get(t).set(this.overrides[t]);return e},n}(),ks=function(n){function e(e,t,l,r){var o=n.call(this,e)||this;return o._config=t,o.console=l,o.loader=r,o}return r(e,n),e.prototype.supports=function(n){return!(!ws.hasOwnProperty(n.toLowerCase())&&!this.isCustomEvent(n)||!window.Hammer&&!this.loader&&(this.console.warn('The "'+n+'" event cannot be bound because Hammer.JS is not loaded and no custom loader has been specified.'),1))},e.prototype.addEventListener=function(n,e,t){var l=this,r=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){var o=!1,u=function(){o=!0};return this.loader().then(function(){if(!window.Hammer)return l.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(u=function(){});o||(u=l.addEventListener(n,e,t))}).catch(function(){l.console.warn('The "'+e+'" event cannot be bound because the custom Hammer.JS loader failed.'),u=function(){}}),function(){u()}}return r.runOutsideAngular(function(){var o=l._config.buildHammer(n),u=function(n){r.runGuarded(function(){t(n)})};return o.on(e,u),function(){o.off(e,u),"function"==typeof o.destroy&&o.destroy()}})},e.prototype.isCustomEvent=function(n){return this._config.events.indexOf(n)>-1},e}(Ya),Ps=["alt","control","meta","shift"],Os={alt:function(n){return n.altKey},control:function(n){return n.ctrlKey},meta:function(n){return n.metaKey},shift:function(n){return n.shiftKey}},Ms=function(n){function e(e){return n.call(this,e)||this}var t;return r(e,n),t=e,e.prototype.supports=function(n){return null!=t.parseEventName(n)},e.prototype.addEventListener=function(n,e,l){var r=t.parseEventName(e),o=t.eventCallback(r.fullKey,l,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return Ta().onAndCancel(n,r.domEventName,o)})},e.parseEventName=function(n){var e=n.toLowerCase().split("."),l=e.shift();if(0===e.length||"keydown"!==l&&"keyup"!==l)return null;var r=t._normalizeKey(e.pop()),o="";if(Ps.forEach(function(n){var t=e.indexOf(n);t>-1&&(e.splice(t,1),o+=n+".")}),o+=r,0!=e.length||0===r.length)return null;var u={};return u.domEventName=l,u.fullKey=o,u},e.getEventFullKey=function(n){var e="",t=Ta().getEventKey(n);return" "===(t=t.toLowerCase())?t="space":"."===t&&(t="dot"),Ps.forEach(function(l){l!=t&&(0,Os[l])(n)&&(e+=l+".")}),e+=t},e.eventCallback=function(n,e,l){return function(r){t.getEventFullKey(r)===n&&l.runGuarded(function(){return e(r)})}},e._normalizeKey=function(n){switch(n){case"esc":return"escape";default:return n}},e}(Ya),Ss=function(){return function(){}}(),Es=function(n){function e(e){var t=n.call(this)||this;return t._doc=e,t}return r(e,n),e.prototype.sanitize=function(n,e){if(null==e)return null;switch(n){case Ge.NONE:return e;case Ge.HTML:return e instanceof Ts?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),function(n,e){var t=null;try{rt=rt||new $e(n);var l=e?String(e):"";t=rt.getInertBodyElement(l);var r=5,o=l;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,l=o,o=t.innerHTML,t=rt.getInertBodyElement(l)}while(l!==o);var u=new ht,i=u.sanitizeChildren(yt(t)||t);return Je()&&u.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),i}finally{if(t)for(var a=yt(t)||t;a.firstChild;)a.removeChild(a.firstChild)}}(this._doc,String(e)));case Ge.STYLE:return e instanceof Ls?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),function(n){if(!(n=String(n).trim()))return"";var e=n.match(xt);return e&&et(e[1])===e[1]||n.match(Ct)&&function(n){for(var e=!0,t=!0,l=0;l<n.length;l++){var r=n.charAt(l);"'"===r&&t?e=!e:'"'===r&&e&&(t=!t)}return e&&t}(n)?n:(Je()&&console.warn("WARNING: sanitizing unsafe style value "+n+" (see http://g.co/ng/security#xss)."),"unsafe")}(e));case Ge.SCRIPT:if(e instanceof Is)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"Script"),new Error("unsafe value used in a script context");case Ge.URL:return e instanceof Ns||e instanceof Rs?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"URL"),et(String(e)));case Ge.RESOURCE_URL:if(e instanceof Ns)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"ResourceURL"),new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext "+n+" (see http://g.co/ng/security#xss)")}},e.prototype.checkNotSafeValue=function(n,e){if(n instanceof As)throw new Error("Required a safe "+e+", got a "+n.getTypeName()+" (see http://g.co/ng/security#xss)")},e.prototype.bypassSecurityTrustHtml=function(n){return new Ts(n)},e.prototype.bypassSecurityTrustStyle=function(n){return new Ls(n)},e.prototype.bypassSecurityTrustScript=function(n){return new Is(n)},e.prototype.bypassSecurityTrustUrl=function(n){return new Rs(n)},e.prototype.bypassSecurityTrustResourceUrl=function(n){return new Ns(n)},e}(Ss),As=function(){function n(n){this.changingThisBreaksApplicationSecurity=n}return n.prototype.toString=function(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"},n}(),Ts=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.getTypeName=function(){return"HTML"},e}(As),Ls=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.getTypeName=function(){return"Style"},e}(As),Is=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.getTypeName=function(){return"Script"},e}(As),Rs=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.getTypeName=function(){return"URL"},e}(As),Ns=function(n){function e(){return null!==n&&n.apply(this,arguments)||this}return r(e,n),e.prototype.getTypeName=function(){return"ResourceURL"},e}(As),js=yl(nr,"browser",[{provide:Vt,useValue:Ti},{provide:zt,useValue:function(){Da.makeCurrent(),Fa.init()},multi:!0},{provide:hi,useClass:za,deps:[Ba]},{provide:Ba,useFactory:function(){return document},deps:[]}]);function Ds(){return new It}var Us=function(){function n(n){if(n)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.")}var e;return e=n,n.withServerTransition=function(n){return{ngModule:e,providers:[{provide:Ut,useValue:n.appId},{provide:Va,useExisting:Ut},Ha]}},n}();"undefined"!=typeof window&&window;var Bs=function(){return function(n,e){this.id=n,this.url=e}}(),qs=function(n){function e(e,t,l,r){void 0===l&&(l="imperative"),void 0===r&&(r=null);var o=n.call(this,e,t)||this;return o.navigationTrigger=l,o.restoredState=r,o}return r(e,n),e.prototype.toString=function(){return"NavigationStart(id: "+this.id+", url: '"+this.url+"')"},e}(Bs),zs=function(n){function e(e,t,l){var r=n.call(this,e,t)||this;return r.urlAfterRedirects=l,r}return r(e,n),e.prototype.toString=function(){return"NavigationEnd(id: "+this.id+", url: '"+this.url+"', urlAfterRedirects: '"+this.urlAfterRedirects+"')"},e}(Bs),Vs=function(n){function e(e,t,l){var r=n.call(this,e,t)||this;return r.reason=l,r}return r(e,n),e.prototype.toString=function(){return"NavigationCancel(id: "+this.id+", url: '"+this.url+"')"},e}(Bs),Hs=function(n){function e(e,t,l){var r=n.call(this,e,t)||this;return r.error=l,r}return r(e,n),e.prototype.toString=function(){return"NavigationError(id: "+this.id+", url: '"+this.url+"', error: "+this.error+")"},e}(Bs),Fs=function(n){function e(e,t,l,r){var o=n.call(this,e,t)||this;return o.urlAfterRedirects=l,o.state=r,o}return r(e,n),e.prototype.toString=function(){return"RoutesRecognized(id: "+this.id+", url: '"+this.url+"', urlAfterRedirects: '"+this.urlAfterRedirects+"', state: "+this.state+")"},e}(Bs),Ws=function(n){function e(e,t,l,r){var o=n.call(this,e,t)||this;return o.urlAfterRedirects=l,o.state=r,o}return r(e,n),e.prototype.toString=function(){return"GuardsCheckStart(id: "+this.id+", url: '"+this.url+"', urlAfterRedirects: '"+this.urlAfterRedirects+"', state: "+this.state+")"},e}(Bs),Gs=function(n){function e(e,t,l,r,o){var u=n.call(this,e,t)||this;return u.urlAfterRedirects=l,u.state=r,u.shouldActivate=o,u}return r(e,n),e.prototype.toString=function(){return"GuardsCheckEnd(id: "+this.id+", url: '"+this.url+"', urlAfterRedirects: '"+this.urlAfterRedirects+"', state: "+this.state+", shouldActivate: "+this.shouldActivate+")"},e}(Bs),Zs=function(n){function e(e,t,l,r){var o=n.call(this,e,t)||this;return o.urlAfterRedirects=l,o.state=r,o}return r(e,n),e.prototype.toString=function(){return"ResolveStart(id: "+this.id+", url: '"+this.url+"', urlAfterRedirects: '"+this.urlAfterRedirects+"', state: "+this.state+")"},e}(Bs),Ks=function(n){function e(e,t,l,r){var o=n.call(this,e,t)||this;return o.urlAfterRedirects=l,o.state=r,o}return r(e,n),e.prototype.toString=function(){return"ResolveEnd(id: "+this.id+", url: '"+this.url+"', urlAfterRedirects: '"+this.urlAfterRedirects+"', state: "+this.state+")"},e}(Bs),Qs=function(){function n(n){this.route=n}return n.prototype.toString=function(){return"RouteConfigLoadStart(path: "+this.route.path+")"},n}(),Ys=function(){function n(n){this.route=n}return n.prototype.toString=function(){return"RouteConfigLoadEnd(path: "+this.route.path+")"},n}(),Js=function(){function n(n){this.snapshot=n}return n.prototype.toString=function(){return"ChildActivationStart(path: '"+(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"")+"')"},n}(),$s=function(){function n(n){this.snapshot=n}return n.prototype.toString=function(){return"ChildActivationEnd(path: '"+(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"")+"')"},n}(),Xs=function(){function n(n){this.snapshot=n}return n.prototype.toString=function(){return"ActivationStart(path: '"+(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"")+"')"},n}(),nc=function(){function n(n){this.snapshot=n}return n.prototype.toString=function(){return"ActivationEnd(path: '"+(this.snapshot.routeConfig&&this.snapshot.routeConfig.path||"")+"')"},n}(),ec=function(){function n(n,e,t){this.routerEvent=n,this.position=e,this.anchor=t}return n.prototype.toString=function(){return"Scroll(anchor: '"+this.anchor+"', position: '"+(this.position?this.position[0]+", "+this.position[1]:null)+"')"},n}(),tc=function(){return function(){}}(),lc="primary",rc=function(){function n(n){this.params=n||{}}return n.prototype.has=function(n){return this.params.hasOwnProperty(n)},n.prototype.get=function(n){if(this.has(n)){var e=this.params[n];return Array.isArray(e)?e[0]:e}return null},n.prototype.getAll=function(n){if(this.has(n)){var e=this.params[n];return Array.isArray(e)?e:[e]}return[]},Object.defineProperty(n.prototype,"keys",{get:function(){return Object.keys(this.params)},enumerable:!0,configurable:!0}),n}();function oc(n){return new rc(n)}var uc="ngNavigationCancelingError";function ic(n){var e=Error("NavigationCancelingError: "+n);return e[uc]=!0,e}function ac(n,e,t){var l=t.path.split("/");if(l.length>n.length)return null;if("full"===t.pathMatch&&(e.hasChildren()||l.length<n.length))return null;for(var r={},o=0;o<l.length;o++){var u=l[o],i=n[o];if(u.startsWith(":"))r[u.substring(1)]=i;else if(u!==i.path)return null}return{consumed:n.slice(0,l.length),posParams:r}}var sc=function(){return function(n,e){this.routes=n,this.module=e}}();function cc(n,e){void 0===e&&(e="");for(var t=0;t<n.length;t++){var l=n[t];pc(l,dc(e,l))}}function pc(n,e){if(!n)throw new Error("\n Invalid configuration of route '"+e+"': Encountered undefined route.\n The reason might be an extra comma.\n\n Example:\n const routes: Routes = [\n { path: '', redirectTo: '/dashboard', pathMatch: 'full' },\n { path: 'dashboard', component: DashboardComponent },, << two commas\n { path: 'detail/:id', component: HeroDetailComponent }\n ];\n ");if(Array.isArray(n))throw new Error("Invalid configuration of route '"+e+"': Array cannot be specified");if(!n.component&&!n.children&&!n.loadChildren&&n.outlet&&n.outlet!==lc)throw new Error("Invalid configuration of route '"+e+"': a componentless route without children or loadChildren cannot have a named outlet set");if(n.redirectTo&&n.children)throw new Error("Invalid configuration of route '"+e+"': redirectTo and children cannot be used together");if(n.redirectTo&&n.loadChildren)throw new Error("Invalid configuration of route '"+e+"': redirectTo and loadChildren cannot be used together");if(n.children&&n.loadChildren)throw new Error("Invalid configuration of route '"+e+"': children and loadChildren cannot be used together");if(n.redirectTo&&n.component)throw new Error("Invalid configuration of route '"+e+"': redirectTo and component cannot be used together");if(n.path&&n.matcher)throw new Error("Invalid configuration of route '"+e+"': path and matcher cannot be used together");if(void 0===n.redirectTo&&!n.component&&!n.children&&!n.loadChildren)throw new Error("Invalid configuration of route '"+e+"'. One of the following must be provided: component, redirectTo, children or loadChildren");if(void 0===n.path&&void 0===n.matcher)throw new Error("Invalid configuration of route '"+e+"': routes must have either a path or a matcher specified");if("string"==typeof n.path&&"/"===n.path.charAt(0))throw new Error("Invalid configuration of route '"+e+"': path cannot start with a slash");if(""===n.path&&void 0!==n.redirectTo&&void 0===n.pathMatch)throw new Error("Invalid configuration of route '{path: \""+e+'", redirectTo: "'+n.redirectTo+"\"}': please provide 'pathMatch'. The default value of 'pathMatch' is 'prefix', but often the intent is to use 'full'.");if(void 0!==n.pathMatch&&"full"!==n.pathMatch&&"prefix"!==n.pathMatch)throw new Error("Invalid configuration of route '"+e+"': pathMatch can only be set to 'prefix' or 'full'");n.children&&cc(n.children,e)}function dc(n,e){return e?n||e.path?n&&!e.path?n+"/":!n&&e.path?e.path:n+"/"+e.path:"":n}function fc(n){var e=n.children&&n.children.map(fc),t=e?o({},n,{children:e}):o({},n);return!t.component&&(e||t.loadChildren)&&t.outlet&&t.outlet!==lc&&(t.component=tc),t}function hc(n,e){var t,l=Object.keys(n),r=Object.keys(e);if(l.length!=r.length)return!1;for(var o=0;o<l.length;o++)if(n[t=l[o]]!==e[t])return!1;return!0}function gc(n){return Array.prototype.concat.apply([],n)}function mc(n){return n.length>0?n[n.length-1]:null}function vc(n,e){for(var t in n)n.hasOwnProperty(t)&&e(n[t],t)}function yc(n){return Nt(n)?n:Rt(n)?rn(Promise.resolve(n)):Bi(n)}function bc(n,e,t){return t?function(n,e){return hc(n,e)}(n.queryParams,e.queryParams)&&function n(e,t){if(!xc(e.segments,t.segments))return!1;if(e.numberOfChildren!==t.numberOfChildren)return!1;for(var l in t.children){if(!e.children[l])return!1;if(!n(e.children[l],t.children[l]))return!1}return!0}(n.root,e.root):function(n,e){return Object.keys(e).length<=Object.keys(n).length&&Object.keys(e).every(function(t){return e[t]===n[t]})}(n.queryParams,e.queryParams)&&function n(e,t){return function e(t,l,r){if(t.segments.length>r.length)return!!xc(u=t.segments.slice(0,r.length),r)&&!l.hasChildren();if(t.segments.length===r.length){if(!xc(t.segments,r))return!1;for(var o in l.children){if(!t.children[o])return!1;if(!n(t.children[o],l.children[o]))return!1}return!0}var u=r.slice(0,t.segments.length),i=r.slice(t.segments.length);return!!xc(t.segments,u)&&!!t.children[lc]&&e(t.children[lc],l,i)}(e,t,t.segments)}(n.root,e.root)}var wc=function(){function n(n,e,t){this.root=n,this.queryParams=e,this.fragment=t}return Object.defineProperty(n.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=oc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),n.prototype.toString=function(){return Mc.serialize(this)},n}(),_c=function(){function n(n,e){var t=this;this.segments=n,this.children=e,this.parent=null,vc(e,function(n,e){return n.parent=t})}return n.prototype.hasChildren=function(){return this.numberOfChildren>0},Object.defineProperty(n.prototype,"numberOfChildren",{get:function(){return Object.keys(this.children).length},enumerable:!0,configurable:!0}),n.prototype.toString=function(){return Sc(this)},n}(),Cc=function(){function n(n,e){this.path=n,this.parameters=e}return Object.defineProperty(n.prototype,"parameterMap",{get:function(){return this._parameterMap||(this._parameterMap=oc(this.parameters)),this._parameterMap},enumerable:!0,configurable:!0}),n.prototype.toString=function(){return Rc(this)},n}();function xc(n,e){return n.length===e.length&&n.every(function(n,t){return n.path===e[t].path})}function kc(n,e){var t=[];return vc(n.children,function(n,l){l===lc&&(t=t.concat(e(n,l)))}),vc(n.children,function(n,l){l!==lc&&(t=t.concat(e(n,l)))}),t}var Pc=function(){return function(){}}(),Oc=function(){function n(){}return n.prototype.parse=function(n){var e=new Bc(n);return new wc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())},n.prototype.serialize=function(n){var e,t;return"/"+function n(e,t){if(!e.hasChildren())return Sc(e);if(t){var l=e.children[lc]?n(e.children[lc],!1):"",r=[];return vc(e.children,function(e,t){t!==lc&&r.push(t+":"+n(e,!1))}),r.length>0?l+"("+r.join("//")+")":l}var o=kc(e,function(t,l){return l===lc?[n(e.children[lc],!1)]:[l+":"+n(t,!1)]});return Sc(e)+"/("+o.join("//")+")"}(n.root,!0)+(e=n.queryParams,(t=Object.keys(e).map(function(n){var t=e[n];return Array.isArray(t)?t.map(function(e){return Ac(n)+"="+Ac(e)}).join("&"):Ac(n)+"="+Ac(t)})).length?"?"+t.join("&"):"")+("string"==typeof n.fragment?"#"+encodeURI(n.fragment):"")},n}(),Mc=new Oc;function Sc(n){return n.segments.map(function(n){return Rc(n)}).join("/")}function Ec(n){return encodeURIComponent(n).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Ac(n){return Ec(n).replace(/%3B/gi,";")}function Tc(n){return Ec(n).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Lc(n){return decodeURIComponent(n)}function Ic(n){return Lc(n.replace(/\+/g,"%20"))}function Rc(n){return""+Tc(n.path)+(e=n.parameters,Object.keys(e).map(function(n){return";"+Tc(n)+"="+Tc(e[n])}).join(""));var e}var Nc=/^[^\/()?;=#]+/;function jc(n){var e=n.match(Nc);return e?e[0]:""}var Dc=/^[^=?&#]+/,Uc=/^[^?&#]+/,Bc=function(){function n(n){this.url=n,this.remaining=n}return n.prototype.parseRootSegment=function(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new _c([],{}):new _c([],this.parseChildren())},n.prototype.parseQueryParams=function(){var n={};if(this.consumeOptional("?"))do{this.parseQueryParam(n)}while(this.consumeOptional("&"));return n},n.prototype.parseFragment=function(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null},n.prototype.parseChildren=function(){if(""===this.remaining)return{};this.consumeOptional("/");var n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());var e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));var t={};return this.peekStartsWith("(")&&(t=this.parseParens(!1)),(n.length>0||Object.keys(e).length>0)&&(t[lc]=new _c(n,e)),t},n.prototype.parseSegment=function(){var n=jc(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new Error("Empty path url segment cannot have parameters: '"+this.remaining+"'.");return this.capture(n),new Cc(Lc(n),this.parseMatrixParams())},n.prototype.parseMatrixParams=function(){for(var n={};this.consumeOptional(";");)this.parseParam(n);return n},n.prototype.parseParam=function(n){var e=jc(this.remaining);if(e){this.capture(e);var t="";if(this.consumeOptional("=")){var l=jc(this.remaining);l&&this.capture(t=l)}n[Lc(e)]=Lc(t)}},n.prototype.parseQueryParam=function(n){var e,t=(e=this.remaining.match(Dc))?e[0]:"";if(t){this.capture(t);var l="";if(this.consumeOptional("=")){var r=function(n){var e=n.match(Uc);return e?e[0]:""}(this.remaining);r&&this.capture(l=r)}var o=Ic(t),u=Ic(l);if(n.hasOwnProperty(o)){var i=n[o];Array.isArray(i)||(n[o]=i=[i]),i.push(u)}else n[o]=u}},n.prototype.parseParens=function(n){var e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){var t=jc(this.remaining),l=this.remaining[t.length];if("/"!==l&&")"!==l&&";"!==l)throw new Error("Cannot parse url '"+this.url+"'");var r=void 0;t.indexOf(":")>-1?(r=t.substr(0,t.indexOf(":")),this.capture(r),this.capture(":")):n&&(r=lc);var o=this.parseChildren();e[r]=1===Object.keys(o).length?o[lc]:new _c([],o),this.consumeOptional("//")}return e},n.prototype.peekStartsWith=function(n){return this.remaining.startsWith(n)},n.prototype.consumeOptional=function(n){return!!this.peekStartsWith(n)&&(this.remaining=this.remaining.substring(n.length),!0)},n.prototype.capture=function(n){if(!this.consumeOptional(n))throw new Error('Expected "'+n+'".')},n}(),qc=function(){function n(n){this._root=n}return Object.defineProperty(n.prototype,"root",{get:function(){return this._root.value},enumerable:!0,configurable:!0}),n.prototype.parent=function(n){var e=this.pathFromRoot(n);return e.length>1?e[e.length-2]:null},n.prototype.children=function(n){var e=zc(n,this._root);return e?e.children.map(function(n){return n.value}):[]},n.prototype.firstChild=function(n){var e=zc(n,this._root);return e&&e.children.length>0?e.children[0].value:null},n.prototype.siblings=function(n){var e=Vc(n,this._root);return e.length<2?[]:e[e.length-2].children.map(function(n){return n.value}).filter(function(e){return e!==n})},n.prototype.pathFromRoot=function(n){return Vc(n,this._root).map(function(n){return n.value})},n}();function zc(n,e){var t,l;if(n===e.value)return e;try{for(var r=a(e.children),o=r.next();!o.done;o=r.next()){var u=zc(n,o.value);if(u)return u}}catch(i){t={error:i}}finally{try{o&&!o.done&&(l=r.return)&&l.call(r)}finally{if(t)throw t.error}}return null}function Vc(n,e){var t,l;if(n===e.value)return[e];try{for(var r=a(e.children),o=r.next();!o.done;o=r.next()){var u=Vc(n,o.value);if(u.length)return u.unshift(e),u}}catch(i){t={error:i}}finally{try{o&&!o.done&&(l=r.return)&&l.call(r)}finally{if(t)throw t.error}}return[]}var Hc=function(){function n(n,e){this.value=n,this.children=e}return n.prototype.toString=function(){return"TreeNode("+this.value+")"},n}();function Fc(n){var e={};return n&&n.children.forEach(function(n){return e[n.value.outlet]=n}),e}var Wc=function(n){function e(e,t){var l=n.call(this,e)||this;return l.snapshot=t,Jc(l,e),l}return r(e,n),e.prototype.toString=function(){return this.snapshot.toString()},e}(qc);function Gc(n,e){var t=function(n,e){var t=new Qc([],{},{},"",{},lc,e,null,n.root,-1,{});return new Yc("",new Hc(t,[]))}(n,e),l=new qi([new Cc("",{})]),r=new qi({}),o=new qi({}),u=new qi({}),i=new qi(""),a=new Zc(l,r,u,i,o,lc,e,t.root);return a.snapshot=t.root,new Wc(new Hc(a,[]),t)}var Zc=function(){function n(n,e,t,l,r,o,u,i){this.url=n,this.params=e,this.queryParams=t,this.fragment=l,this.data=r,this.outlet=o,this.component=u,this._futureSnapshot=i}return Object.defineProperty(n.prototype,"routeConfig",{get:function(){return this._futureSnapshot.routeConfig},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=this.params.pipe(nn(function(n){return oc(n)}))),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(nn(function(n){return oc(n)}))),this._queryParamMap},enumerable:!0,configurable:!0}),n.prototype.toString=function(){return this.snapshot?this.snapshot.toString():"Future("+this._futureSnapshot+")"},n}();function Kc(n,e){void 0===e&&(e="emptyOnly");var t=n.pathFromRoot,l=0;if("always"!==e)for(l=t.length-1;l>=1;){var r=t[l],u=t[l-1];if(r.routeConfig&&""===r.routeConfig.path)l--;else{if(u.component)break;l--}}return function(n){return n.reduce(function(n,e){return{params:o({},n.params,e.params),data:o({},n.data,e.data),resolve:o({},n.resolve,e._resolvedData)}},{params:{},data:{},resolve:{}})}(t.slice(l))}var Qc=function(){function n(n,e,t,l,r,o,u,i,a,s,c){this.url=n,this.params=e,this.queryParams=t,this.fragment=l,this.data=r,this.outlet=o,this.component=u,this.routeConfig=i,this._urlSegment=a,this._lastPathIndex=s,this._resolve=c}return Object.defineProperty(n.prototype,"root",{get:function(){return this._routerState.root},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"parent",{get:function(){return this._routerState.parent(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"firstChild",{get:function(){return this._routerState.firstChild(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"children",{get:function(){return this._routerState.children(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"pathFromRoot",{get:function(){return this._routerState.pathFromRoot(this)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"paramMap",{get:function(){return this._paramMap||(this._paramMap=oc(this.params)),this._paramMap},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"queryParamMap",{get:function(){return this._queryParamMap||(this._queryParamMap=oc(this.queryParams)),this._queryParamMap},enumerable:!0,configurable:!0}),n.prototype.toString=function(){return"Route(url:'"+this.url.map(function(n){return n.toString()}).join("/")+"', path:'"+(this.routeConfig?this.routeConfig.path:"")+"')"},n}(),Yc=function(n){function e(e,t){var l=n.call(this,t)||this;return l.url=e,Jc(l,t),l}return r(e,n),e.prototype.toString=function(){return $c(this._root)},e}(qc);function Jc(n,e){e.value._routerState=n,e.children.forEach(function(e){return Jc(n,e)})}function $c(n){var e=n.children.length>0?" { "+n.children.map($c).join(", ")+" } ":"";return""+n.value+e}function Xc(n){if(n.snapshot){var e=n.snapshot,t=n._futureSnapshot;n.snapshot=t,hc(e.queryParams,t.queryParams)||n.queryParams.next(t.queryParams),e.fragment!==t.fragment&&n.fragment.next(t.fragment),hc(e.params,t.params)||n.params.next(t.params),function(n,e){if(n.length!==e.length)return!1;for(var t=0;t<n.length;++t)if(!hc(n[t],e[t]))return!1;return!0}(e.url,t.url)||n.url.next(t.url),hc(e.data,t.data)||n.data.next(t.data)}else n.snapshot=n._futureSnapshot,n.data.next(n._futureSnapshot.data)}function np(n,e){var t,l;return hc(n.params,e.params)&&xc(t=n.url,l=e.url)&&t.every(function(n,e){return hc(n.parameters,l[e].parameters)})&&!(!n.parent!=!e.parent)&&(!n.parent||np(n.parent,e.parent))}function ep(n){return"object"==typeof n&&null!=n&&!n.outlets&&!n.segmentPath}function tp(n,e,t,l,r){var o={};return l&&vc(l,function(n,e){o[e]=Array.isArray(n)?n.map(function(n){return""+n}):""+n}),new wc(t.root===n?e:function n(e,t,l){var r={};return vc(e.children,function(e,o){r[o]=e===t?l:n(e,t,l)}),new _c(e.segments,r)}(t.root,n,e),o,r)}var lp=function(){function n(n,e,t){if(this.isAbsolute=n,this.numberOfDoubleDots=e,this.commands=t,n&&t.length>0&&ep(t[0]))throw new Error("Root segment cannot have matrix parameters");var l=t.find(function(n){return"object"==typeof n&&null!=n&&n.outlets});if(l&&l!==mc(t))throw new Error("{outlets:{}} has to be the last command")}return n.prototype.toRoot=function(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]},n}(),rp=function(){return function(n,e,t){this.segmentGroup=n,this.processChildren=e,this.index=t}}();function op(n){return"object"==typeof n&&null!=n&&n.outlets?n.outlets[lc]:""+n}function up(n,e,t){if(n||(n=new _c([],{})),0===n.segments.length&&n.hasChildren())return ip(n,e,t);var l=function(n,e,t){for(var l=0,r=e,o={match:!1,pathIndex:0,commandIndex:0};r<n.segments.length;){if(l>=t.length)return o;var u=n.segments[r],i=op(t[l]),a=l<t.length-1?t[l+1]:null;if(r>0&&void 0===i)break;if(i&&a&&"object"==typeof a&&void 0===a.outlets){if(!pp(i,a,u))return o;l+=2}else{if(!pp(i,{},u))return o;l++}r++}return{match:!0,pathIndex:r,commandIndex:l}}(n,e,t),r=t.slice(l.commandIndex);if(l.match&&l.pathIndex<n.segments.length){var o=new _c(n.segments.slice(0,l.pathIndex),{});return o.children[lc]=new _c(n.segments.slice(l.pathIndex),n.children),ip(o,0,r)}return l.match&&0===r.length?new _c(n.segments,{}):l.match&&!n.hasChildren()?ap(n,e,t):l.match?ip(n,0,r):ap(n,e,t)}function ip(n,e,t){if(0===t.length)return new _c(n.segments,{});var l=function(n){var e,t;return"object"!=typeof n[0]?((e={})[lc]=n,e):void 0===n[0].outlets?((t={})[lc]=n,t):n[0].outlets}(t),r={};return vc(l,function(t,l){null!==t&&(r[l]=up(n.children[l],e,t))}),vc(n.children,function(n,e){void 0===l[e]&&(r[e]=n)}),new _c(n.segments,r)}function ap(n,e,t){for(var l=n.segments.slice(0,e),r=0;r<t.length;){if("object"==typeof t[r]&&void 0!==t[r].outlets){var o=sp(t[r].outlets);return new _c(l,o)}if(0===r&&ep(t[0]))l.push(new Cc(n.segments[e].path,t[0])),r++;else{var u=op(t[r]),i=r<t.length-1?t[r+1]:null;u&&i&&ep(i)?(l.push(new Cc(u,cp(i))),r+=2):(l.push(new Cc(u,{})),r++)}}return new _c(l,{})}function sp(n){var e={};return vc(n,function(n,t){null!==n&&(e[t]=ap(new _c([],{}),0,n))}),e}function cp(n){var e={};return vc(n,function(n,t){return e[t]=""+n}),e}function pp(n,e,t){return n==t.path&&hc(e,t.parameters)}var dp=function(){function n(n,e,t,l){this.routeReuseStrategy=n,this.futureState=e,this.currState=t,this.forwardEvent=l}return n.prototype.activate=function(n){var e=this.futureState._root,t=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,t,n),Xc(this.futureState.root),this.activateChildRoutes(e,t,n)},n.prototype.deactivateChildRoutes=function(n,e,t){var l=this,r=Fc(e);n.children.forEach(function(n){var e=n.value.outlet;l.deactivateRoutes(n,r[e],t),delete r[e]}),vc(r,function(n,e){l.deactivateRouteAndItsChildren(n,t)})},n.prototype.deactivateRoutes=function(n,e,t){var l=n.value,r=e?e.value:null;if(l===r)if(l.component){var o=t.getContext(l.outlet);o&&this.deactivateChildRoutes(n,e,o.children)}else this.deactivateChildRoutes(n,e,t);else r&&this.deactivateRouteAndItsChildren(e,t)},n.prototype.deactivateRouteAndItsChildren=function(n,e){this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,e):this.deactivateRouteAndOutlet(n,e)},n.prototype.detachAndStoreRouteSubtree=function(n,e){var t=e.getContext(n.value.outlet);if(t&&t.outlet){var l=t.outlet.detach(),r=t.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:l,route:n,contexts:r})}},n.prototype.deactivateRouteAndOutlet=function(n,e){var t=this,l=e.getContext(n.value.outlet);if(l){var r=Fc(n),o=n.value.component?l.children:e;vc(r,function(n,e){return t.deactivateRouteAndItsChildren(n,o)}),l.outlet&&(l.outlet.deactivate(),l.children.onOutletDeactivated())}},n.prototype.activateChildRoutes=function(n,e,t){var l=this,r=Fc(e);n.children.forEach(function(n){l.activateRoutes(n,r[n.value.outlet],t),l.forwardEvent(new nc(n.value.snapshot))}),n.children.length&&this.forwardEvent(new $s(n.value.snapshot))},n.prototype.activateRoutes=function(n,e,t){var l=n.value,r=e?e.value:null;if(Xc(l),l===r)if(l.component){var o=t.getOrCreateContext(l.outlet);this.activateChildRoutes(n,e,o.children)}else this.activateChildRoutes(n,e,t);else if(l.component)if(o=t.getOrCreateContext(l.outlet),this.routeReuseStrategy.shouldAttach(l.snapshot)){var u=this.routeReuseStrategy.retrieve(l.snapshot);this.routeReuseStrategy.store(l.snapshot,null),o.children.onOutletReAttached(u.contexts),o.attachRef=u.componentRef,o.route=u.route.value,o.outlet&&o.outlet.attach(u.componentRef,u.route.value),fp(u.route)}else{var i=function(n){for(var e=l.snapshot.parent;e;e=e.parent){var t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(),a=i?i.module.componentFactoryResolver:null;o.attachRef=null,o.route=l,o.resolver=a,o.outlet&&o.outlet.activateWith(l,a),this.activateChildRoutes(n,null,o.children)}else this.activateChildRoutes(n,null,t)},n}();function fp(n){Xc(n.value),n.children.forEach(fp)}function hp(n){return"function"==typeof n}function gp(n){return n instanceof wc}var mp=function(){return function(n){this.segmentGroup=n||null}}(),vp=function(){return function(n){this.urlTree=n}}();function yp(n){return new I(function(e){return e.error(new mp(n))})}function bp(n){return new I(function(e){return e.error(new vp(n))})}function wp(n){return new I(function(e){return e.error(new Error("Only absolute redirects can have named outlets. redirectTo: '"+n+"'"))})}var _p=function(){function n(n,e,t,l,r){this.configLoader=e,this.urlSerializer=t,this.urlTree=l,this.config=r,this.allowRedirects=!0,this.ngModule=n.get(De)}return n.prototype.apply=function(){var n=this;return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,lc).pipe(nn(function(e){return n.createUrlTree(e,n.urlTree.queryParams,n.urlTree.fragment)})).pipe(pa(function(e){if(e instanceof vp)return n.allowRedirects=!1,n.match(e.urlTree);if(e instanceof mp)throw n.noMatchError(e);throw e}))},n.prototype.match=function(n){var e=this;return this.expandSegmentGroup(this.ngModule,this.config,n.root,lc).pipe(nn(function(t){return e.createUrlTree(t,n.queryParams,n.fragment)})).pipe(pa(function(n){if(n instanceof mp)throw e.noMatchError(n);throw n}))},n.prototype.noMatchError=function(n){return new Error("Cannot match any routes. URL Segment: '"+n.segmentGroup+"'")},n.prototype.createUrlTree=function(n,e,t){var l,r=n.segments.length>0?new _c([],((l={})[lc]=n,l)):n;return new wc(r,e,t)},n.prototype.expandSegmentGroup=function(n,e,t,l){return 0===t.segments.length&&t.hasChildren()?this.expandChildren(n,e,t).pipe(nn(function(n){return new _c([],n)})):this.expandSegment(n,t,e,t.segments,l,!0)},n.prototype.expandChildren=function(n,e,t){var l=this;return function(t,r){if(0===Object.keys(t).length)return Bi({});var o=[],u=[],i={};return vc(t,function(t,r){var a,s,c=(a=r,s=t,l.expandSegmentGroup(n,e,s,a)).pipe(nn(function(n){return i[r]=n}));r===lc?o.push(c):u.push(c)}),Bi.apply(null,o.concat(u)).pipe(Zi(),ca(),nn(function(){return i}))}(t.children)},n.prototype.expandSegment=function(n,e,t,l,r,o){var u=this;return Bi.apply(void 0,c(t)).pipe(nn(function(i){return u.expandSegmentAgainstRoute(n,e,t,i,l,r,o).pipe(pa(function(n){if(n instanceof mp)return Bi(null);throw n}))}),Zi(),va(function(n){return!!n}),pa(function(n,t){if(n instanceof Vi||"EmptyError"===n.name){if(u.noLeftoversInUrl(e,l,r))return Bi(new _c([],{}));throw new mp(e)}throw n}))},n.prototype.noLeftoversInUrl=function(n,e,t){return 0===e.length&&!n.children[t]},n.prototype.expandSegmentAgainstRoute=function(n,e,t,l,r,o,u){return Pp(l)!==o?yp(e):void 0===l.redirectTo?this.matchSegmentAgainstRoute(n,e,l,r):u&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(n,e,t,l,r,o):yp(e)},n.prototype.expandSegmentAgainstRouteUsingRedirect=function(n,e,t,l,r,o){return"**"===l.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(n,t,l,o):this.expandRegularSegmentAgainstRouteUsingRedirect(n,e,t,l,r,o)},n.prototype.expandWildCardWithParamsAgainstRouteUsingRedirect=function(n,e,t,l){var r=this,o=this.applyRedirectCommands([],t.redirectTo,{});return t.redirectTo.startsWith("/")?bp(o):this.lineralizeSegments(t,o).pipe(on(function(t){var o=new _c(t,{});return r.expandSegment(n,o,e,t,l,!1)}))},n.prototype.expandRegularSegmentAgainstRouteUsingRedirect=function(n,e,t,l,r,o){var u=this,i=Cp(e,l,r),a=i.consumedSegments,s=i.lastChild,c=i.positionalParamSegments;if(!i.matched)return yp(e);var p=this.applyRedirectCommands(a,l.redirectTo,c);return l.redirectTo.startsWith("/")?bp(p):this.lineralizeSegments(l,p).pipe(on(function(l){return u.expandSegment(n,e,t,l.concat(r.slice(s)),o,!1)}))},n.prototype.matchSegmentAgainstRoute=function(n,e,t,l){var r=this;if("**"===t.path)return t.loadChildren?this.configLoader.load(n.injector,t).pipe(nn(function(n){return t._loadedConfig=n,new _c(l,{})})):Bi(new _c(l,{}));var u=Cp(e,t,l),i=u.consumedSegments,s=u.lastChild;if(!u.matched)return yp(e);var c=l.slice(s);return this.getChildConfig(n,t,l).pipe(on(function(n){var t=n.module,l=n.routes,u=function(n,e,t,l){return t.length>0&&function(n,e,t){return l.some(function(t){return kp(n,e,t)&&Pp(t)!==lc})}(n,t)?{segmentGroup:xp(new _c(e,function(n,e){var t,l,r={};r[lc]=e;try{for(var o=a(n),u=o.next();!u.done;u=o.next()){var i=u.value;""===i.path&&Pp(i)!==lc&&(r[Pp(i)]=new _c([],{}))}}catch(s){t={error:s}}finally{try{u&&!u.done&&(l=o.return)&&l.call(o)}finally{if(t)throw t.error}}return r}(l,new _c(t,n.children)))),slicedSegments:[]}:0===t.length&&function(n,e,t){return l.some(function(t){return kp(n,e,t)})}(n,t)?{segmentGroup:xp(new _c(n.segments,function(n,e,t,l){var r,u,i={};try{for(var s=a(t),c=s.next();!c.done;c=s.next()){var p=c.value;kp(n,e,p)&&!l[Pp(p)]&&(i[Pp(p)]=new _c([],{}))}}catch(d){r={error:d}}finally{try{c&&!c.done&&(u=s.return)&&u.call(s)}finally{if(r)throw r.error}}return o({},l,i)}(n,t,l,n.children))),slicedSegments:t}:{segmentGroup:n,slicedSegments:t}}(e,i,c,l),s=u.segmentGroup,p=u.slicedSegments;return 0===p.length&&s.hasChildren()?r.expandChildren(t,l,s).pipe(nn(function(n){return new _c(i,n)})):0===l.length&&0===p.length?Bi(new _c(i,{})):r.expandSegment(t,s,l,p,lc,!0).pipe(nn(function(n){return new _c(i.concat(n.segments),n.children)}))}))},n.prototype.getChildConfig=function(n,e,t){var l=this;return e.children?Bi(new sc(e.children,n)):e.loadChildren?void 0!==e._loadedConfig?Bi(e._loadedConfig):function(n,e,t){var l,r=e.canLoad;return r&&0!==r.length?rn(r).pipe(nn(function(l){var r,o=n.get(l);if(function(n){return n&&hp(n.canLoad)}(o))r=o.canLoad(e,t);else{if(!hp(o))throw new Error("Invalid CanLoad guard");r=o(e,t)}return yc(r)})).pipe(Zi(),(l=function(n){return!0===n},function(n){return n.lift(new ya(l,void 0,n))})):Bi(!0)}(n.injector,e,t).pipe(on(function(t){return t?l.configLoader.load(n.injector,e).pipe(nn(function(n){return e._loadedConfig=n,n})):function(n){return new I(function(e){return e.error(ic("Cannot load children because the guard of the route \"path: '"+n.path+"'\" returned false"))})}(e)})):Bi(new sc([],n))},n.prototype.lineralizeSegments=function(n,e){for(var t=[],l=e.root;;){if(t=t.concat(l.segments),0===l.numberOfChildren)return Bi(t);if(l.numberOfChildren>1||!l.children[lc])return wp(n.redirectTo);l=l.children[lc]}},n.prototype.applyRedirectCommands=function(n,e,t){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),n,t)},n.prototype.applyRedirectCreatreUrlTree=function(n,e,t,l){var r=this.createSegmentGroup(n,e.root,t,l);return new wc(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)},n.prototype.createQueryParams=function(n,e){var t={};return vc(n,function(n,l){if("string"==typeof n&&n.startsWith(":")){var r=n.substring(1);t[l]=e[r]}else t[l]=n}),t},n.prototype.createSegmentGroup=function(n,e,t,l){var r=this,o=this.createSegments(n,e.segments,t,l),u={};return vc(e.children,function(e,o){u[o]=r.createSegmentGroup(n,e,t,l)}),new _c(o,u)},n.prototype.createSegments=function(n,e,t,l){var r=this;return e.map(function(e){return e.path.startsWith(":")?r.findPosParam(n,e,l):r.findOrReturn(e,t)})},n.prototype.findPosParam=function(n,e,t){var l=t[e.path.substring(1)];if(!l)throw new Error("Cannot redirect to '"+n+"'. Cannot find '"+e.path+"'.");return l},n.prototype.findOrReturn=function(n,e){var t,l,r=0;try{for(var o=a(e),u=o.next();!u.done;u=o.next()){var i=u.value;if(i.path===n.path)return e.splice(r),i;r++}}catch(s){t={error:s}}finally{try{u&&!u.done&&(l=o.return)&&l.call(o)}finally{if(t)throw t.error}}return n},n}();function Cp(n,e,t){if(""===e.path)return"full"===e.pathMatch&&(n.hasChildren()||t.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};var l=(e.matcher||ac)(t,n,e);return l?{matched:!0,consumedSegments:l.consumed,lastChild:l.consumed.length,positionalParamSegments:l.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function xp(n){if(1===n.numberOfChildren&&n.children[lc]){var e=n.children[lc];return new _c(n.segments.concat(e.segments),e.children)}return n}function kp(n,e,t){return(!(n.hasChildren()||e.length>0)||"full"!==t.pathMatch)&&""===t.path&&void 0!==t.redirectTo}function Pp(n){return n.outlet||lc}var Op=function(){return function(n){this.path=n,this.route=this.path[this.path.length-1]}}(),Mp=function(){return function(n,e){this.component=n,this.route=e}}();function Sp(n,e,t){var l=function(n){if(!n)return null;for(var e=n.parent;e;e=e.parent){var t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(l?l.module.injector:t).get(n)}function Ep(n,e,t,l,r){void 0===r&&(r={canDeactivateChecks:[],canActivateChecks:[]});var o=Fc(e);return n.children.forEach(function(n){!function(n,e,t,l,r){void 0===r&&(r={canDeactivateChecks:[],canActivateChecks:[]});var o=n.value,u=e?e.value:null,i=t?t.getContext(n.value.outlet):null;if(u&&o.routeConfig===u.routeConfig){var a=function(n,e,t){if("function"==typeof t)return t(n,e);switch(t){case"pathParamsChange":return!xc(n.url,e.url);case"pathParamsOrQueryParamsChange":return!xc(n.url,e.url)||!hc(n.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!np(n,e)||!hc(n.queryParams,e.queryParams);case"paramsChange":default:return!np(n,e)}}(u,o,o.routeConfig.runGuardsAndResolvers);a?r.canActivateChecks.push(new Op(l)):(o.data=u.data,o._resolvedData=u._resolvedData),Ep(n,e,o.component?i?i.children:null:t,l,r),a&&r.canDeactivateChecks.push(new Mp(i&&i.outlet&&i.outlet.component||null,u))}else u&&Ap(e,i,r),r.canActivateChecks.push(new Op(l)),Ep(n,null,o.component?i?i.children:null:t,l,r)}(n,o[n.value.outlet],t,l.concat([n.value]),r),delete o[n.value.outlet]}),vc(o,function(n,e){return Ap(n,t.getContext(e),r)}),r}function Ap(n,e,t){var l=Fc(n),r=n.value;vc(l,function(n,l){Ap(n,r.component?e?e.children.getContext(l):null:e,t)}),t.canDeactivateChecks.push(new Mp(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}var Tp=Symbol("INITIAL_VALUE");function Lp(){return wa(function(n){return(function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var t=null,l=null;return z(n[n.length-1])&&(l=n.pop()),"function"==typeof n[n.length-1]&&(t=n.pop()),1===n.length&&p(n[0])&&(n=n[0]),ln(n,l).lift(new Fi(t))}).apply(void 0,c(n.map(function(n){return n.pipe(ha(1),function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return function(e){var t=n[n.length-1];z(t)?n.pop():t=null;var l=n.length;return xa(1!==l||t?l>0?ln(n,t):Di(t):Ui(n[0]),e)}}(Tp))}))).pipe(ka(function(n,e){var t=!1;return e.reduce(function(n,l,r){if(n!==Tp)return n;if(l===Tp&&(t=!0),!t){if(!1===l)return l;if(r===e.length-1||gp(l))return l}return n},n)},Tp),Ki(function(n){return n!==Tp}),nn(function(n){return gp(n)?n:!0===n}),ha(1))})}function Ip(n,e){return null!==n&&e&&e(new Xs(n)),Bi(!0)}function Rp(n,e){return null!==n&&e&&e(new Js(n)),Bi(!0)}function Np(n,e,t){var l=e.routeConfig?e.routeConfig.canActivate:null;return l&&0!==l.length?Bi(l.map(function(l){return Gi(function(){var r,o=Sp(l,e,t);if(function(n){return n&&hp(n.canActivate)}(o))r=yc(o.canActivate(e,n));else{if(!hp(o))throw new Error("Invalid CanActivate guard");r=yc(o(e,n))}return r.pipe(va())})})).pipe(Lp()):Bi(!0)}function jp(n,e,t){var l=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(function(n){return function(n){var e=n.routeConfig?n.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:n,guards:e}:null}(n)}).filter(function(n){return null!==n}).map(function(e){return Gi(function(){return Bi(e.guards.map(function(r){var o,u=Sp(r,e.node,t);if(function(n){return n&&hp(n.canActivateChild)}(u))o=yc(u.canActivateChild(l,n));else{if(!hp(u))throw new Error("Invalid CanActivateChild guard");o=yc(u(l,n))}return o.pipe(va())})).pipe(Lp())})});return Bi(r).pipe(Lp())}var Dp=function(){return function(){}}(),Up=function(){function n(n,e,t,l,r,o){this.rootComponentType=n,this.config=e,this.urlTree=t,this.url=l,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=o}return n.prototype.recognize=function(){try{var n=zp(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,n,lc),t=new Qc([],Object.freeze({}),Object.freeze(o({},this.urlTree.queryParams)),this.urlTree.fragment,{},lc,this.rootComponentType,null,this.urlTree.root,-1,{}),l=new Hc(t,e),r=new Yc(this.url,l);return this.inheritParamsAndData(r._root),Bi(r)}catch(u){return new I(function(n){return n.error(u)})}},n.prototype.inheritParamsAndData=function(n){var e=this,t=n.value,l=Kc(t,this.paramsInheritanceStrategy);t.params=Object.freeze(l.params),t.data=Object.freeze(l.data),n.children.forEach(function(n){return e.inheritParamsAndData(n)})},n.prototype.processSegmentGroup=function(n,e,t){return 0===e.segments.length&&e.hasChildren()?this.processChildren(n,e):this.processSegment(n,e,e.segments,t)},n.prototype.processChildren=function(n,e){var t,l=this,r=kc(e,function(e,t){return l.processSegmentGroup(n,e,t)});return t={},r.forEach(function(n){var e=t[n.value.outlet];if(e){var l=e.url.map(function(n){return n.toString()}).join("/"),r=n.value.url.map(function(n){return n.toString()}).join("/");throw new Error("Two segments cannot have the same outlet name: '"+l+"' and '"+r+"'.")}t[n.value.outlet]=n.value}),r.sort(function(n,e){return n.value.outlet===lc?-1:e.value.outlet===lc?1:n.value.outlet.localeCompare(e.value.outlet)}),r},n.prototype.processSegment=function(n,e,t,l){var r,o;try{for(var u=a(n),i=u.next();!i.done;i=u.next()){var s=i.value;try{return this.processSegmentAgainstRoute(s,e,t,l)}catch(c){if(!(c instanceof Dp))throw c}}}catch(p){r={error:p}}finally{try{i&&!i.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}if(this.noLeftoversInUrl(e,t,l))return[];throw new Dp},n.prototype.noLeftoversInUrl=function(n,e,t){return 0===e.length&&!n.children[t]},n.prototype.processSegmentAgainstRoute=function(n,e,t,l){if(n.redirectTo)throw new Dp;if((n.outlet||lc)!==l)throw new Dp;var r,u=[],i=[];if("**"===n.path){var a=t.length>0?mc(t).parameters:{};r=new Qc(t,a,Object.freeze(o({},this.urlTree.queryParams)),this.urlTree.fragment,Fp(n),l,n.component,n,Bp(e),qp(e)+t.length,Wp(n))}else{var s=function(n,e,t){if(""===e.path){if("full"===e.pathMatch&&(n.hasChildren()||t.length>0))throw new Dp;return{consumedSegments:[],lastChild:0,parameters:{}}}var l=(e.matcher||ac)(t,n,e);if(!l)throw new Dp;var r={};vc(l.posParams,function(n,e){r[e]=n.path});var u=l.consumed.length>0?o({},r,l.consumed[l.consumed.length-1].parameters):r;return{consumedSegments:l.consumed,lastChild:l.consumed.length,parameters:u}}(e,n,t);u=s.consumedSegments,i=t.slice(s.lastChild),r=new Qc(u,s.parameters,Object.freeze(o({},this.urlTree.queryParams)),this.urlTree.fragment,Fp(n),l,n.component,n,Bp(e),qp(e)+u.length,Wp(n))}var c=function(n){return n.children?n.children:n.loadChildren?n._loadedConfig.routes:[]}(n),p=zp(e,u,i,c,this.relativeLinkResolution),d=p.segmentGroup,f=p.slicedSegments;if(0===f.length&&d.hasChildren()){var h=this.processChildren(c,d);return[new Hc(r,h)]}if(0===c.length&&0===f.length)return[new Hc(r,[])];var g=this.processSegment(c,d,f,lc);return[new Hc(r,g)]},n}();function Bp(n){for(var e=n;e._sourceSegment;)e=e._sourceSegment;return e}function qp(n){for(var e=n,t=e._segmentIndexShift?e._segmentIndexShift:0;e._sourceSegment;)t+=(e=e._sourceSegment)._segmentIndexShift?e._segmentIndexShift:0;return t-1}function zp(n,e,t,l,r){if(t.length>0&&function(n,e,t){return l.some(function(t){return Vp(n,e,t)&&Hp(t)!==lc})}(n,t)){var u=new _c(e,function(n,e,t,l){var r,o,u={};u[lc]=l,l._sourceSegment=n,l._segmentIndexShift=e.length;try{for(var i=a(t),s=i.next();!s.done;s=i.next()){var c=s.value;if(""===c.path&&Hp(c)!==lc){var p=new _c([],{});p._sourceSegment=n,p._segmentIndexShift=e.length,u[Hp(c)]=p}}}catch(d){r={error:d}}finally{try{s&&!s.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return u}(n,e,l,new _c(t,n.children)));return u._sourceSegment=n,u._segmentIndexShift=e.length,{segmentGroup:u,slicedSegments:[]}}if(0===t.length&&function(n,e,t){return l.some(function(t){return Vp(n,e,t)})}(n,t)){var i=new _c(n.segments,function(n,e,t,l,r,u){var i,s,c={};try{for(var p=a(l),d=p.next();!d.done;d=p.next()){var f=d.value;if(Vp(n,t,f)&&!r[Hp(f)]){var h=new _c([],{});h._sourceSegment=n,h._segmentIndexShift="legacy"===u?n.segments.length:e.length,c[Hp(f)]=h}}}catch(g){i={error:g}}finally{try{d&&!d.done&&(s=p.return)&&s.call(p)}finally{if(i)throw i.error}}return o({},r,c)}(n,e,t,l,n.children,r));return i._sourceSegment=n,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:t}}var s=new _c(n.segments,n.children);return s._sourceSegment=n,s._segmentIndexShift=e.length,{segmentGroup:s,slicedSegments:t}}function Vp(n,e,t){return(!(n.hasChildren()||e.length>0)||"full"!==t.pathMatch)&&""===t.path&&void 0===t.redirectTo}function Hp(n){return n.outlet||lc}function Fp(n){return n.data||{}}function Wp(n){return n.resolve||{}}function Gp(n,e,t,l){var r=Sp(n,e,l);return yc(r.resolve?r.resolve(e,t):r(e,t))}function Zp(n){return function(e){return e.pipe(wa(function(e){var t=n(e);return t?rn(t).pipe(nn(function(){return e})):rn([e])}))}}var Kp=function(){return function(){}}(),Qp=function(){function n(){}return n.prototype.shouldDetach=function(n){return!1},n.prototype.store=function(n,e){},n.prototype.shouldAttach=function(n){return!1},n.prototype.retrieve=function(n){return null},n.prototype.shouldReuseRoute=function(n,e){return n.routeConfig===e.routeConfig},n}(),Yp=new Mn("ROUTES"),Jp=function(){function n(n,e,t,l){this.loader=n,this.compiler=e,this.onLoadStartListener=t,this.onLoadEndListener=l}return n.prototype.load=function(n,e){var t=this;return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(nn(function(l){t.onLoadEndListener&&t.onLoadEndListener(e);var r=l.create(n);return new sc(gc(r.injector.get(Yp)).map(fc),r)}))},n.prototype.loadModuleFactory=function(n){var e=this;return"string"==typeof n?rn(this.loader.load(n)):yc(n()).pipe(on(function(n){return n instanceof Ue?Bi(n):rn(e.compiler.compileModuleAsync(n))}))},n}(),$p=function(){return function(){}}(),Xp=function(){function n(){}return n.prototype.shouldProcessUrl=function(n){return!0},n.prototype.extract=function(n){return n},n.prototype.merge=function(n,e){return n},n}();function nd(n){throw n}function ed(n,e,t){return e.parse("/")}function td(n,e){return Bi(null)}var ld=function(){function n(n,e,t,l,r,o,u,i){var a=this;this.rootComponentType=n,this.urlSerializer=e,this.rootContexts=t,this.location=l,this.config=i,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new B,this.errorHandler=nd,this.malformedUriErrorHandler=ed,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:td,afterPreactivation:td},this.urlHandlingStrategy=new Xp,this.routeReuseStrategy=new Qp,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=r.get(De),this.console=r.get(Ft);var s=r.get(ol);this.isNgZoneEnabled=s instanceof ol,this.resetConfig(i),this.currentUrlTree=new wc(new _c([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new Jp(o,u,function(n){return a.triggerEvent(new Qs(n))},function(n){return a.triggerEvent(new Ys(n))}),this.routerState=Gc(this.currentUrlTree,this.rootComponentType),this.transitions=new qi({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}return n.prototype.setupNavigations=function(n){var e=this,t=this.events;return n.pipe(Ki(function(n){return 0!==n.id}),nn(function(n){return o({},n,{extractedUrl:e.urlHandlingStrategy.extract(n.rawUrl)})}),wa(function(n){var l,r,u,i,s=!1,c=!1;return Bi(n).pipe(ta(function(n){e.currentNavigation={id:n.id,initialUrl:n.currentRawUrl,extractedUrl:n.extractedUrl,trigger:n.source,extras:n.extras,previousNavigation:e.lastSuccessfulNavigation?o({},e.lastSuccessfulNavigation,{previousNavigation:null}):null}}),wa(function(n){var l,r,u,i,a=!e.navigated||n.extractedUrl.toString()!==e.browserUrlTree.toString();if(("reload"===e.onSameUrlNavigation||a)&&e.urlHandlingStrategy.shouldProcessUrl(n.rawUrl))return Bi(n).pipe(wa(function(n){var l=e.transitions.getValue();return t.next(new qs(n.id,e.serializeUrl(n.extractedUrl),n.source,n.restoredState)),l!==e.transitions.getValue()?ji:[n]}),wa(function(n){return Promise.resolve(n)}),(l=e.ngModule.injector,r=e.configLoader,u=e.urlSerializer,i=e.config,function(n){return n.pipe(wa(function(n){return function(e,t,l,r,o){return new _p(e,t,l,n.extractedUrl,o).apply()}(l,r,u,0,i).pipe(nn(function(e){return o({},n,{urlAfterRedirects:e})}))}))}),ta(function(n){e.currentNavigation=o({},e.currentNavigation,{finalUrl:n.urlAfterRedirects})}),function(n,t,l,r,u){return function(l){return l.pipe(on(function(l){return function(n,e,t,l,r,o){return void 0===r&&(r="emptyOnly"),void 0===o&&(o="legacy"),new Up(n,e,t,l,r,o).recognize()}(n,t,l.urlAfterRedirects,(i=l.urlAfterRedirects,e.serializeUrl(i)),r,u).pipe(nn(function(n){return o({},l,{targetSnapshot:n})}));var i}))}}(e.rootComponentType,e.config,0,e.paramsInheritanceStrategy,e.relativeLinkResolution),ta(function(n){"eager"===e.urlUpdateStrategy&&(n.extras.skipLocationChange||e.setBrowserUrl(n.urlAfterRedirects,!!n.extras.replaceUrl,n.id),e.browserUrlTree=n.urlAfterRedirects)}),ta(function(n){var l=new Fs(n.id,e.serializeUrl(n.extractedUrl),e.serializeUrl(n.urlAfterRedirects),n.targetSnapshot);t.next(l)}));if(a&&e.rawUrlTree&&e.urlHandlingStrategy.shouldProcessUrl(e.rawUrlTree)){var s=n.extractedUrl,c=n.source,p=n.restoredState,d=n.extras,f=new qs(n.id,e.serializeUrl(s),c,p);t.next(f);var h=Gc(s,e.rootComponentType).snapshot;return Bi(o({},n,{targetSnapshot:h,urlAfterRedirects:s,extras:o({},d,{skipLocationChange:!1,replaceUrl:!1})}))}return e.rawUrlTree=n.rawUrl,n.resolve(null),ji}),Zp(function(n){var t=n.extras;return e.hooks.beforePreactivation(n.targetSnapshot,{navigationId:n.id,appliedUrlTree:n.extractedUrl,rawUrlTree:n.rawUrl,skipLocationChange:!!t.skipLocationChange,replaceUrl:!!t.replaceUrl})}),ta(function(n){var t=new Ws(n.id,e.serializeUrl(n.extractedUrl),e.serializeUrl(n.urlAfterRedirects),n.targetSnapshot);e.triggerEvent(t)}),nn(function(n){return o({},n,{guards:(t=n.targetSnapshot,l=n.currentSnapshot,r=e.rootContexts,u=t._root,Ep(u,l?l._root:null,r,[u.value]))});var t,l,r,u}),function(n,e){return function(t){return t.pipe(on(function(t){var l=t.targetSnapshot,r=t.currentSnapshot,u=t.guards,i=u.canActivateChecks,a=u.canDeactivateChecks;return 0===a.length&&0===i.length?Bi(o({},t,{guardsResult:!0})):function(n,e,t,l){return rn(a).pipe(on(function(n){return function(n,e,t,l,r){var o=e&&e.routeConfig?e.routeConfig.canDeactivate:null;return o&&0!==o.length?Bi(o.map(function(o){var u,i=Sp(o,e,r);if(function(n){return n&&hp(n.canDeactivate)}(i))u=yc(i.canDeactivate(n,e,t,l));else{if(!hp(i))throw new Error("Invalid CanDeactivate guard");u=yc(i(n,e,t,l))}return u.pipe(va())})).pipe(Lp()):Bi(!0)}(n.component,n.route,t,e,l)}),va(function(n){return!0!==n},!0))}(0,l,r,n).pipe(on(function(t){return t&&"boolean"==typeof t?function(n,e,t,l){return rn(i).pipe(Ma(function(e){return rn([Rp(e.route.parent,l),Ip(e.route,l),jp(n,e.path,t),Np(n,e.route,t)]).pipe(Zi(),va(function(n){return!0!==n},!0))}),va(function(n){return!0!==n},!0))}(l,0,n,e):Bi(t)}),nn(function(n){return o({},t,{guardsResult:n})}))}))}}(e.ngModule.injector,function(n){return e.triggerEvent(n)}),ta(function(n){if(gp(n.guardsResult)){var t=ic('Redirecting to "'+e.serializeUrl(n.guardsResult)+'"');throw t.url=n.guardsResult,t}}),ta(function(n){var t=new Gs(n.id,e.serializeUrl(n.extractedUrl),e.serializeUrl(n.urlAfterRedirects),n.targetSnapshot,!!n.guardsResult);e.triggerEvent(t)}),Ki(function(n){if(!n.guardsResult){e.resetUrlToCurrentUrlTree();var l=new Vs(n.id,e.serializeUrl(n.extractedUrl),"");return t.next(l),n.resolve(!1),!1}return!0}),Zp(function(n){if(n.guards.canActivateChecks.length)return Bi(n).pipe(ta(function(n){var t=new Zs(n.id,e.serializeUrl(n.extractedUrl),e.serializeUrl(n.urlAfterRedirects),n.targetSnapshot);e.triggerEvent(t)}),(t=e.paramsInheritanceStrategy,l=e.ngModule.injector,function(n){return n.pipe(on(function(n){var e=n.targetSnapshot,r=n.guards.canActivateChecks;return r.length?rn(r).pipe(Ma(function(n){return function(n,t,l,r){return function(n,e,t,l){var r=Object.keys(n);if(0===r.length)return Bi({});if(1===r.length){var o=r[0];return Gp(n[o],e,t,l).pipe(nn(function(n){var e;return(e={})[o]=n,e}))}var u={};return rn(r).pipe(on(function(r){return Gp(n[r],e,t,l).pipe(nn(function(n){return u[r]=n,n}))})).pipe(ca(),nn(function(){return u}))}(n._resolve,n,e,r).pipe(nn(function(e){return n._resolvedData=e,n.data=o({},n.data,Kc(n,l).resolve),null}))}(n.route,0,t,l)}),function(n,e){return arguments.length>=2?function(e){return T(ka(n,void 0),Xi(1),ia(void 0))(e)}:function(e){return T(ka(function(e,t,l){return n(e)}),Xi(1))(e)}}(function(n,e){return n}),nn(function(e){return n})):Bi(n)}))}),ta(function(n){var t=new Ks(n.id,e.serializeUrl(n.extractedUrl),e.serializeUrl(n.urlAfterRedirects),n.targetSnapshot);e.triggerEvent(t)}));var t,l}),Zp(function(n){var t=n.extras;return e.hooks.afterPreactivation(n.targetSnapshot,{navigationId:n.id,appliedUrlTree:n.extractedUrl,rawUrlTree:n.rawUrl,skipLocationChange:!!t.skipLocationChange,replaceUrl:!!t.replaceUrl})}),nn(function(n){var t,l,r,u=(r=function n(e,t,l){if(l&&e.shouldReuseRoute(t.value,l.value.snapshot)){(s=l.value)._futureSnapshot=t.value;var r=function(e,t,l){return t.children.map(function(t){var r,o;try{for(var u=a(l.children),i=u.next();!i.done;i=u.next()){var s=i.value;if(e.shouldReuseRoute(s.value.snapshot,t.value))return n(e,t,s)}}catch(c){r={error:c}}finally{try{i&&!i.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}return n(e,t)})}(e,t,l);return new Hc(s,r)}var o=e.retrieve(t.value);if(o){var u=o.route;return function n(e,t){if(e.value.routeConfig!==t.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==t.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");t.value._futureSnapshot=e.value;for(var l=0;l<e.children.length;++l)n(e.children[l],t.children[l])}(t,u),u}var i,s=new Zc(new qi((i=t.value).url),new qi(i.params),new qi(i.queryParams),new qi(i.fragment),new qi(i.data),i.outlet,i.component,i);return r=t.children.map(function(t){return n(e,t)}),new Hc(s,r)}(e.routeReuseStrategy,(t=n.targetSnapshot)._root,(l=n.currentRouterState)?l._root:void 0),new Wc(r,t));return o({},n,{targetRouterState:u})}),ta(function(n){e.currentUrlTree=n.urlAfterRedirects,e.rawUrlTree=e.urlHandlingStrategy.merge(e.currentUrlTree,n.rawUrl),e.routerState=n.targetRouterState,"deferred"===e.urlUpdateStrategy&&(n.extras.skipLocationChange||e.setBrowserUrl(e.rawUrlTree,!!n.extras.replaceUrl,n.id,n.extras.state),e.browserUrlTree=n.urlAfterRedirects)}),(r=e.rootContexts,u=e.routeReuseStrategy,i=function(n){return e.triggerEvent(n)},nn(function(n){return new dp(u,n.targetRouterState,n.currentRouterState,i).activate(r),n})),ta({next:function(){s=!0},complete:function(){s=!0}}),(l=function(){if(!s&&!c){e.resetUrlToCurrentUrlTree();var l=new Vs(n.id,e.serializeUrl(n.extractedUrl),"Navigation ID "+n.id+" is not equal to the current navigation id "+e.navigationId);t.next(l),n.resolve(!1)}e.currentNavigation=null},function(n){return n.lift(new Sa(l))}),pa(function(l){if(c=!0,(i=l)&&i[uc]){var r=gp(l.url);r||(e.navigated=!0,e.resetStateAndUrl(n.currentRouterState,n.currentUrlTree,n.rawUrl));var o=new Vs(n.id,e.serializeUrl(n.extractedUrl),l.message);t.next(o),n.resolve(!1),r&&e.navigateByUrl(l.url)}else{e.resetStateAndUrl(n.currentRouterState,n.currentUrlTree,n.rawUrl);var u=new Hs(n.id,e.serializeUrl(n.extractedUrl),l);t.next(u);try{n.resolve(e.errorHandler(l))}catch(a){n.reject(a)}}var i;return ji}))}))},n.prototype.resetRootComponentType=function(n){this.rootComponentType=n,this.routerState.root.component=this.rootComponentType},n.prototype.getTransition=function(){return this.transitions.value},n.prototype.setTransition=function(n){this.transitions.next(o({},this.getTransition(),n))},n.prototype.initialNavigation=function(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})},n.prototype.setUpLocationChangeListener=function(){var n=this;this.locationSubscription||(this.locationSubscription=this.location.subscribe(function(e){var t=n.parseUrl(e.url),l="popstate"===e.type?"popstate":"hashchange",r=e.state&&e.state.navigationId?e.state:null;setTimeout(function(){n.scheduleNavigation(t,l,r,{replaceUrl:!0})},0)}))},Object.defineProperty(n.prototype,"url",{get:function(){return this.serializeUrl(this.currentUrlTree)},enumerable:!0,configurable:!0}),n.prototype.getCurrentNavigation=function(){return this.currentNavigation},n.prototype.triggerEvent=function(n){this.events.next(n)},n.prototype.resetConfig=function(n){cc(n),this.config=n.map(fc),this.navigated=!1,this.lastSuccessfulId=-1},n.prototype.ngOnDestroy=function(){this.dispose()},n.prototype.dispose=function(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)},n.prototype.createUrlTree=function(n,e){void 0===e&&(e={});var t=e.relativeTo,l=e.queryParams,r=e.fragment,u=e.preserveQueryParams,i=e.queryParamsHandling,a=e.preserveFragment;Je()&&u&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");var s=t||this.routerState.root,p=a?this.currentUrlTree.fragment:r,d=null;if(i)switch(i){case"merge":d=o({},this.currentUrlTree.queryParams,l);break;case"preserve":d=this.currentUrlTree.queryParams;break;default:d=l||null}else d=u?this.currentUrlTree.queryParams:l||null;return null!==d&&(d=this.removeEmptyProps(d)),function(n,e,t,l,r){if(0===t.length)return tp(e.root,e.root,e,l,r);var o=function(n){if("string"==typeof n[0]&&1===n.length&&"/"===n[0])return new lp(!0,0,n);var e=0,t=!1,l=n.reduce(function(n,l,r){if("object"==typeof l&&null!=l){if(l.outlets){var o={};return vc(l.outlets,function(n,e){o[e]="string"==typeof n?n.split("/"):n}),c(n,[{outlets:o}])}if(l.segmentPath)return c(n,[l.segmentPath])}return"string"!=typeof l?c(n,[l]):0===r?(l.split("/").forEach(function(l,r){0==r&&"."===l||(0==r&&""===l?t=!0:".."===l?e++:""!=l&&n.push(l))}),n):c(n,[l])},[]);return new lp(t,e,l)}(t);if(o.toRoot())return tp(e.root,new _c([],{}),e,l,r);var u=function(n,t,l){if(n.isAbsolute)return new rp(e.root,!0,0);if(-1===l.snapshot._lastPathIndex)return new rp(l.snapshot._urlSegment,!0,0);var r=ep(n.commands[0])?0:1;return function(e,t,o){for(var u=l.snapshot._urlSegment,i=l.snapshot._lastPathIndex+r,a=n.numberOfDoubleDots;a>i;){if(a-=i,!(u=u.parent))throw new Error("Invalid number of '../'");i=u.segments.length}return new rp(u,!1,i-a)}()}(o,0,n),i=u.processChildren?ip(u.segmentGroup,u.index,o.commands):up(u.segmentGroup,u.index,o.commands);return tp(u.segmentGroup,i,e,l,r)}(s,this.currentUrlTree,n,d,p)},n.prototype.navigateByUrl=function(n,e){void 0===e&&(e={skipLocationChange:!1}),Je()&&this.isNgZoneEnabled&&!ol.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");var t=gp(n)?n:this.parseUrl(n),l=this.urlHandlingStrategy.merge(t,this.rawUrlTree);return this.scheduleNavigation(l,"imperative",null,e)},n.prototype.navigate=function(n,e){return void 0===e&&(e={skipLocationChange:!1}),function(n){for(var e=0;e<n.length;e++){var t=n[e];if(null==t)throw new Error("The requested path contains "+t+" segment at index "+e)}}(n),this.navigateByUrl(this.createUrlTree(n,e),e)},n.prototype.serializeUrl=function(n){return this.urlSerializer.serialize(n)},n.prototype.parseUrl=function(n){var e;try{e=this.urlSerializer.parse(n)}catch(t){e=this.malformedUriErrorHandler(t,this.urlSerializer,n)}return e},n.prototype.isActive=function(n,e){if(gp(n))return bc(this.currentUrlTree,n,e);var t=this.parseUrl(n);return bc(this.currentUrlTree,t,e)},n.prototype.removeEmptyProps=function(n){return Object.keys(n).reduce(function(e,t){var l=n[t];return null!=l&&(e[t]=l),e},{})},n.prototype.processNavigations=function(){var n=this;this.navigations.subscribe(function(e){n.navigated=!0,n.lastSuccessfulId=e.id,n.events.next(new zs(e.id,n.serializeUrl(e.extractedUrl),n.serializeUrl(n.currentUrlTree))),n.lastSuccessfulNavigation=n.currentNavigation,n.currentNavigation=null,e.resolve(!0)},function(e){n.console.warn("Unhandled Navigation Error: ")})},n.prototype.scheduleNavigation=function(n,e,t,l){var r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===n.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===n.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===n.toString())return Promise.resolve(!0);var o=null,u=null,i=new Promise(function(n,e){o=n,u=e}),a=++this.navigationId;return this.setTransition({id:a,source:e,restoredState:t,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:n,extras:l,resolve:o,reject:u,promise:i,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),i.catch(function(n){return Promise.reject(n)})},n.prototype.setBrowserUrl=function(n,e,t,l){var r=this.urlSerializer.serialize(n);l=l||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",o({},l,{navigationId:t})):this.location.go(r,"",o({},l,{navigationId:t}))},n.prototype.resetStateAndUrl=function(n,e,t){this.routerState=n,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t),this.resetUrlToCurrentUrlTree()},n.prototype.resetUrlToCurrentUrlTree=function(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})},n}(),rd=function(){function n(n,e,t,l,r){this.router=n,this.route=e,this.commands=[],null==t&&l.setAttribute(r.nativeElement,"tabindex","0")}return Object.defineProperty(n.prototype,"routerLink",{set:function(n){this.commands=null!=n?Array.isArray(n)?n:[n]:[]},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"preserveQueryParams",{set:function(n){Je()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated!, use queryParamsHandling instead."),this.preserve=n},enumerable:!0,configurable:!0}),n.prototype.onClick=function(){var n={skipLocationChange:ud(this.skipLocationChange),replaceUrl:ud(this.replaceUrl)};return this.router.navigateByUrl(this.urlTree,n),!0},Object.defineProperty(n.prototype,"urlTree",{get:function(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:ud(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:ud(this.preserveFragment)})},enumerable:!0,configurable:!0}),n}(),od=function(){function n(n,e,t){var l=this;this.router=n,this.route=e,this.locationStrategy=t,this.commands=[],this.subscription=n.events.subscribe(function(n){n instanceof zs&&l.updateTargetUrlAndHref()})}return Object.defineProperty(n.prototype,"routerLink",{set:function(n){this.commands=null!=n?Array.isArray(n)?n:[n]:[]},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"preserveQueryParams",{set:function(n){Je()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead."),this.preserve=n},enumerable:!0,configurable:!0}),n.prototype.ngOnChanges=function(n){this.updateTargetUrlAndHref()},n.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},n.prototype.onClick=function(n,e,t,l){if(0!==n||e||t||l)return!0;if("string"==typeof this.target&&"_self"!=this.target)return!0;var r={skipLocationChange:ud(this.skipLocationChange),replaceUrl:ud(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,r),!1},n.prototype.updateTargetUrlAndHref=function(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))},Object.defineProperty(n.prototype,"urlTree",{get:function(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:ud(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:ud(this.preserveFragment)})},enumerable:!0,configurable:!0}),u([Ot("attr.target"),Pt(),i("design:type",String)],n.prototype,"target",void 0),n}();function ud(n){return""===n||!!n}var id=function(){return function(){this.outlet=null,this.route=null,this.resolver=null,this.children=new ad,this.attachRef=null}}(),ad=function(){function n(){this.contexts=new Map}return n.prototype.onChildOutletCreated=function(n,e){var t=this.getOrCreateContext(n);t.outlet=e,this.contexts.set(n,t)},n.prototype.onChildOutletDestroyed=function(n){var e=this.getContext(n);e&&(e.outlet=null)},n.prototype.onOutletDeactivated=function(){var n=this.contexts;return this.contexts=new Map,n},n.prototype.onOutletReAttached=function(n){this.contexts=n},n.prototype.getOrCreateContext=function(n){var e=this.getContext(n);return e||(e=new id,this.contexts.set(n,e)),e},n.prototype.getContext=function(n){return this.contexts.get(n)||null},n}(),sd=function(){function n(n,e,t,l,r){this.parentContexts=n,this.location=e,this.resolver=t,this.changeDetector=r,this.activated=null,this._activatedRoute=null,this.activateEvents=new bt,this.deactivateEvents=new bt,this.name=l||lc,n.onChildOutletCreated(this.name,this)}return n.prototype.ngOnDestroy=function(){this.parentContexts.onChildOutletDestroyed(this.name)},n.prototype.ngOnInit=function(){if(!this.activated){var n=this.parentContexts.getContext(this.name);n&&n.route&&(n.attachRef?this.attach(n.attachRef,n.route):this.activateWith(n.route,n.resolver||null))}},Object.defineProperty(n.prototype,"isActivated",{get:function(){return!!this.activated},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"component",{get:function(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"activatedRoute",{get:function(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"activatedRouteData",{get:function(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}},enumerable:!0,configurable:!0}),n.prototype.detach=function(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();var n=this.activated;return this.activated=null,this._activatedRoute=null,n},n.prototype.attach=function(n,e){this.activated=n,this._activatedRoute=e,this.location.insert(n.hostView)},n.prototype.deactivate=function(){if(this.activated){var n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}},n.prototype.activateWith=function(n,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=n;var t=(e=e||this.resolver).resolveComponentFactory(n._futureSnapshot.routeConfig.component),l=this.parentContexts.getOrCreateContext(this.name).children,r=new cd(n,l,this.location.injector);this.activated=this.location.createComponent(t,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)},n}(),cd=function(){function n(n,e,t){this.route=n,this.childContexts=e,this.parent=t}return n.prototype.get=function(n,e){return n===Zc?this.route:n===ad?this.childContexts:this.parent.get(n,e)},n}(),pd=function(){return function(){}}(),dd=function(){function n(){}return n.prototype.preload=function(n,e){return e().pipe(pa(function(){return Bi(null)}))},n}(),fd=function(){function n(){}return n.prototype.preload=function(n,e){return Bi(null)},n}(),hd=function(){function n(n,e,t,l,r){this.router=n,this.injector=l,this.preloadingStrategy=r,this.loader=new Jp(e,t,function(e){return n.triggerEvent(new Qs(e))},function(e){return n.triggerEvent(new Ys(e))})}return n.prototype.setUpPreloading=function(){var n=this;this.subscription=this.router.events.pipe(Ki(function(n){return n instanceof zs}),Ma(function(){return n.preload()})).subscribe(function(){})},n.prototype.preload=function(){var n=this.injector.get(De);return this.processRoutes(n,this.router.config)},n.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},n.prototype.processRoutes=function(n,e){var t,l,r=[];try{for(var o=a(e),u=o.next();!u.done;u=o.next()){var i=u.value;if(i.loadChildren&&!i.canLoad&&i._loadedConfig){var s=i._loadedConfig;r.push(this.processRoutes(s.module,s.routes))}else i.loadChildren&&!i.canLoad?r.push(this.preloadConfig(n,i)):i.children&&r.push(this.processRoutes(n,i.children))}}catch(c){t={error:c}}finally{try{u&&!u.done&&(l=o.return)&&l.call(o)}finally{if(t)throw t.error}}return rn(r).pipe(cn(),nn(function(n){}))},n.prototype.preloadConfig=function(n,e){var t=this;return this.preloadingStrategy.preload(e,function(){return t.loader.load(n.injector,e).pipe(on(function(n){return e._loadedConfig=n,t.processRoutes(n.module,n.routes)}))})},n}(),gd=function(){function n(n,e,t){void 0===t&&(t={}),this.router=n,this.viewportScroller=e,this.options=t,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},t.scrollPositionRestoration=t.scrollPositionRestoration||"disabled",t.anchorScrolling=t.anchorScrolling||"disabled"}return n.prototype.init=function(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()},n.prototype.createScrollEvents=function(){var n=this;return this.router.events.subscribe(function(e){e instanceof qs?(n.store[n.lastId]=n.viewportScroller.getScrollPosition(),n.lastSource=e.navigationTrigger,n.restoredId=e.restoredState?e.restoredState.navigationId:0):e instanceof zs&&(n.lastId=e.id,n.scheduleScrollEvent(e,n.router.parseUrl(e.urlAfterRedirects).fragment))})},n.prototype.consumeScrollEvents=function(){var n=this;return this.router.events.subscribe(function(e){e instanceof ec&&(e.position?"top"===n.options.scrollPositionRestoration?n.viewportScroller.scrollToPosition([0,0]):"enabled"===n.options.scrollPositionRestoration&&n.viewportScroller.scrollToPosition(e.position):e.anchor&&"enabled"===n.options.anchorScrolling?n.viewportScroller.scrollToAnchor(e.anchor):"disabled"!==n.options.scrollPositionRestoration&&n.viewportScroller.scrollToPosition([0,0]))})},n.prototype.scheduleScrollEvent=function(n,e){this.router.triggerEvent(new ec(n,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))},n.prototype.ngOnDestroy=function(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()},n}(),md=new Mn("ROUTER_CONFIGURATION"),vd=new Mn("ROUTER_FORROOT_GUARD"),yd=[yi,{provide:Pc,useClass:Oc},{provide:ld,useFactory:Pd,deps:[Cl,Pc,ad,yi,he,kt,$t,Yp,md,[$p,new Qn],[Kp,new Qn]]},ad,{provide:Zc,useFactory:Od,deps:[ld]},{provide:kt,useClass:Ml},hd,fd,dd,{provide:md,useValue:{enableTracing:!1}}];function bd(){return new vl("Router",ld)}var wd=function(){function n(n,e){}var e;return e=n,n.forRoot=function(n,t){return{ngModule:e,providers:[yd,kd(n),{provide:vd,useFactory:xd,deps:[[ld,new Qn,new Jn]]},{provide:md,useValue:t||{}},{provide:mi,useFactory:Cd,deps:[hi,[new Kn(vi),new Qn],md]},{provide:gd,useFactory:_d,deps:[ld,Ri,md]},{provide:pd,useExisting:t&&t.preloadingStrategy?t.preloadingStrategy:fd},{provide:vl,multi:!0,useFactory:bd},[Md,{provide:jt,multi:!0,useFactory:Sd,deps:[Md]},{provide:Ad,useFactory:Ed,deps:[Md]},{provide:Ht,multi:!0,useExisting:Ad}]]}},n.forChild=function(n){return{ngModule:e,providers:[kd(n)]}},n}();function _d(n,e,t){return t.scrollOffset&&e.setOffset(t.scrollOffset),new gd(n,e,t)}function Cd(n,e,t){return void 0===t&&(t={}),t.useHash?new wi(n,e):new _i(n,e)}function xd(n){if(n)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function kd(n){return[{provide:In,multi:!0,useValue:n},{provide:Yp,multi:!0,useValue:n}]}function Pd(n,e,t,l,r,o,u,i,a,s,c){void 0===a&&(a={});var p=new ld(null,e,t,l,r,o,u,gc(i));if(s&&(p.urlHandlingStrategy=s),c&&(p.routeReuseStrategy=c),a.errorHandler&&(p.errorHandler=a.errorHandler),a.malformedUriErrorHandler&&(p.malformedUriErrorHandler=a.malformedUriErrorHandler),a.enableTracing){var d=Ta();p.events.subscribe(function(n){d.logGroup("Router Event: "+n.constructor.name),d.log(n.toString()),d.log(n),d.logGroupEnd()})}return a.onSameUrlNavigation&&(p.onSameUrlNavigation=a.onSameUrlNavigation),a.paramsInheritanceStrategy&&(p.paramsInheritanceStrategy=a.paramsInheritanceStrategy),a.urlUpdateStrategy&&(p.urlUpdateStrategy=a.urlUpdateStrategy),a.relativeLinkResolution&&(p.relativeLinkResolution=a.relativeLinkResolution),p}function Od(n){return n.routerState.root}var Md=function(){function n(n){this.injector=n,this.initNavigation=!1,this.resultOfPreactivationDone=new B}return n.prototype.appInitializer=function(){var n=this;return this.injector.get(gi,Promise.resolve(null)).then(function(){var e=null,t=new Promise(function(n){return e=n}),l=n.injector.get(ld),r=n.injector.get(md);if(n.isLegacyDisabled(r)||n.isLegacyEnabled(r))e(!0);else if("disabled"===r.initialNavigation)l.setUpLocationChangeListener(),e(!0);else{if("enabled"!==r.initialNavigation)throw new Error("Invalid initialNavigation options: '"+r.initialNavigation+"'");l.hooks.afterPreactivation=function(){return n.initNavigation?Bi(null):(n.initNavigation=!0,e(!0),n.resultOfPreactivationDone)},l.initialNavigation()}return t})},n.prototype.bootstrapListener=function(n){var e=this.injector.get(md),t=this.injector.get(hd),l=this.injector.get(gd),r=this.injector.get(ld),o=this.injector.get(Cl);n===o.components[0]&&(this.isLegacyEnabled(e)?r.initialNavigation():this.isLegacyDisabled(e)&&r.setUpLocationChangeListener(),t.setUpPreloading(),l.init(),r.resetRootComponentType(o.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())},n.prototype.isLegacyEnabled=function(n){return"legacy_enabled"===n.initialNavigation||!0===n.initialNavigation||void 0===n.initialNavigation},n.prototype.isLegacyDisabled=function(n){return"legacy_disabled"===n.initialNavigation||!1===n.initialNavigation},n}();function Sd(n){return n.appInitializer.bind(n)}function Ed(n){return n.bootstrapListener.bind(n)}var Ad=new Mn("Router Initializer"),Td=Cr({encapsulation:2,styles:[],data:{}});function Ld(n){return ou(0,[(n()(),Kr(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),Do(1,212992,null,0,sd,[ad,El,Re,[8,null],Tl],null,null)],function(n,e){n(e,1,0)},null)}function Id(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"ng-component",[],null,null,null,Ld,Td)),Do(1,49152,null,0,tc,[],null,null)],null,null)}var Rd=fo("ng-component",tc,Id,{},{},[]),Nd=function(){return function(){this.title="tutorial-PWA"}}(),jd=Cr({encapsulation:0,styles:[["@charset \"UTF-8\";@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,700|Shrikhand);*[_ngcontent-%COMP%]{box-sizing:border-box}body[_ngcontent-%COMP%]{font-family:'Open Sans',sans-serif;font-size:1rem;line-height:1.4;background-image:url(norway.bbc0af752f47c89d82f4.jpg);background-size:cover;margin:0 auto;border-style:none}.page-header[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:space-between;position:fixed;top:0;right:0;left:0;overflow:visible;padding:2rem;z-index:200}.page-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;min-height:100vh;text-align:center;color:#fff}.page-tagline[_ngcontent-%COMP%]{font-size:.75rem;font-weight:700;z-index:100}.page-tagline[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#123965;text-decoration:none}.page-title[_ngcontent-%COMP%]{margin-bottom:1.5rem;font-family:Shrikhand,serif;font-size:2rem;line-height:1.2}nav[_ngcontent-%COMP%]{display:flex;position:absolute;top:0;left:0;padding:3rem 1rem 1rem;width:100vw;min-height:100vh;text-align:center;background-color:#fff;opacity:0;-webkit-transform:translateY(-100%);transform:translateY(-100%);transition:opacity .45s .45s ease,-webkit-transform 0s 1.2s;transition:opacity .45s .45s ease,transform 0s 1.2s;transition:opacity .45s .45s ease,transform 0s 1.2s,-webkit-transform 0s 1.2s}.menu[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;width:100%}@media (min-width:820px){.menu[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{grid-template-columns:repeat(4,1fr)}}.menu[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{display:grid;grid-column:span 1;grid-gap:1rem;overflow:hidden}.menu[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;padding:1rem;width:100%;height:100%;font-size:1.25rem;text-decoration:none;color:#2269bb;background-color:#2269bb;border-radius:2px}.menu[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(n+3){grid-column:span 2}.menu[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%]{padding:0;grid-template-columns:repeat(2,1fr)}.menu[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] li[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{font-size:.85rem;color:#16457a;background-color:#16457a}@media (min-width:450px){body[_ngcontent-%COMP%]{font-size:1.8rem}.page-title[_ngcontent-%COMP%]{font-size:3rem}.menu[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{font-size:1.75rem}.menu[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] li[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{font-size:1rem}}.menu[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:nth-child(3n){grid-column:span 2}@media (min-width:500px){.menu[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%]{grid-template-columns:repeat(3,1fr)}.menu[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:nth-child(3n){grid-column:span 1}}.menu-toggle[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:2px;position:relative;cursor:pointer;width:28px;height:22px;z-index:100}.menu-toggle[_ngcontent-%COMP%]:before{content:'\xd7';position:absolute;top:0;left:0;font-size:2.4rem;line-height:.4;color:#123965;z-index:2;opacity:0;transition:opacity .3s ease}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:block;position:relative;width:100%;height:2px;background-color:#123965;border-radius:2px;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease;-webkit-transform-origin:100% 100%;transform-origin:100% 100%}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1){transition-delay:.35s}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2){transition-delay:.4s}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3){transition-delay:.45s}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4){transition-delay:.5s}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(5){transition-delay:.55s}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(6){transition-delay:.6s}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1), .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2){grid-column:span 3}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3), .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(6){grid-column:span 2}.menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4), .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(5){grid-column:span 4}#menu-toggle-input[_ngcontent-%COMP%]{display:none}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{-webkit-transform:scaleX(0);transform:scaleX(0)}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1){transition-delay:50ms}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2){transition-delay:.1s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3){transition-delay:.15s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4){transition-delay:.2s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(5){transition-delay:.25s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(6){transition-delay:.3s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ .menu-toggle[_ngcontent-%COMP%]:before{opacity:1;transition-delay:.75s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%]{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition-delay:0s}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#fff;-webkit-transform:translate(0,0);transform:translate(0,0)}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(1) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .35s ease;transition:color .3s 825ms,transform .3s .35s ease;transition:color .3s 825ms,transform .3s .35s ease,-webkit-transform .3s .35s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(1) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .5s ease;transition:color .3s 825ms,transform .3s .5s ease;transition:color .3s 825ms,transform .3s .5s ease,-webkit-transform .3s .5s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(2) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .4s ease;transition:color .3s 825ms,transform .3s .4s ease;transition:color .3s 825ms,transform .3s .4s ease,-webkit-transform .3s .4s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(2) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .55s ease;transition:color .3s 825ms,transform .3s .55s ease;transition:color .3s 825ms,transform .3s .55s ease,-webkit-transform .3s .55s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(3) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .45s ease;transition:color .3s 825ms,transform .3s .45s ease;transition:color .3s 825ms,transform .3s .45s ease,-webkit-transform .3s .45s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(3) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .6s ease;transition:color .3s 825ms,transform .3s .6s ease;transition:color .3s 825ms,transform .3s .6s ease,-webkit-transform .3s .6s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(4) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .5s ease;transition:color .3s 825ms,transform .3s .5s ease;transition:color .3s 825ms,transform .3s .5s ease,-webkit-transform .3s .5s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(4) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .65s ease;transition:color .3s 825ms,transform .3s .65s ease;transition:color .3s 825ms,transform .3s .65s ease,-webkit-transform .3s .65s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(5) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .55s ease;transition:color .3s 825ms,transform .3s .55s ease;transition:color .3s 825ms,transform .3s .55s ease,-webkit-transform .3s .55s ease}#menu-toggle-input[_ngcontent-%COMP%]:checked ~ nav[_ngcontent-%COMP%] .sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(5) > a[_ngcontent-%COMP%]{transition:color .3s 825ms,-webkit-transform .3s .7s ease;transition:color .3s 825ms,transform .3s .7s ease;transition:color .3s 825ms,transform .3s .7s ease,-webkit-transform .3s .7s ease}.menu[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(1) > a[_ngcontent-%COMP%]{-webkit-transform:translate(calc(-100% - 12px),0);transform:translate(calc(-100% - 12px),0);transition:color .3s,-webkit-transform .3s .2s ease;transition:color .3s,transform .3s .2s ease;transition:color .3s,transform .3s .2s ease,-webkit-transform .3s .2s ease}.sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(1) > a[_ngcontent-%COMP%]{-webkit-transform:translate(0,calc(-100% - 12px));transform:translate(0,calc(-100% - 12px));transition:color .3s,-webkit-transform .3s .2s ease;transition:color .3s,transform .3s .2s ease;transition:color .3s,transform .3s .2s ease,-webkit-transform .3s .2s ease}.menu[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(2) > a[_ngcontent-%COMP%]{-webkit-transform:translate(calc(-100% - 12px),0);transform:translate(calc(-100% - 12px),0);transition:color .3s,-webkit-transform .3s .25s ease;transition:color .3s,transform .3s .25s ease;transition:color .3s,transform .3s .25s ease,-webkit-transform .3s .25s ease}.sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(2) > a[_ngcontent-%COMP%]{-webkit-transform:translate(0,calc(-100% - 12px));transform:translate(0,calc(-100% - 12px));transition:color .3s,-webkit-transform .3s .25s ease;transition:color .3s,transform .3s .25s ease;transition:color .3s,transform .3s .25s ease,-webkit-transform .3s .25s ease}.menu[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(3) > a[_ngcontent-%COMP%]{-webkit-transform:translate(calc(-100% - 12px),0);transform:translate(calc(-100% - 12px),0);transition:color .3s,-webkit-transform .3s .3s ease;transition:color .3s,transform .3s .3s ease;transition:color .3s,transform .3s .3s ease,-webkit-transform .3s .3s ease}.sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(3) > a[_ngcontent-%COMP%]{-webkit-transform:translate(0,calc(-100% - 12px));transform:translate(0,calc(-100% - 12px));transition:color .3s,-webkit-transform .3s .3s ease;transition:color .3s,transform .3s .3s ease;transition:color .3s,transform .3s .3s ease,-webkit-transform .3s .3s ease}.menu[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(4) > a[_ngcontent-%COMP%]{-webkit-transform:translate(calc(-100% - 12px),0);transform:translate(calc(-100% - 12px),0);transition:color .3s,-webkit-transform .3s .35s ease;transition:color .3s,transform .3s .35s ease;transition:color .3s,transform .3s .35s ease,-webkit-transform .3s .35s ease}.sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(4) > a[_ngcontent-%COMP%]{-webkit-transform:translate(0,calc(-100% - 12px));transform:translate(0,calc(-100% - 12px));transition:color .3s,-webkit-transform .3s .35s ease;transition:color .3s,transform .3s .35s ease;transition:color .3s,transform .3s .35s ease,-webkit-transform .3s .35s ease}.menu[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(5) > a[_ngcontent-%COMP%]{-webkit-transform:translate(calc(-100% - 12px),0);transform:translate(calc(-100% - 12px),0);transition:color .3s,-webkit-transform .3s .4s ease;transition:color .3s,transform .3s .4s ease;transition:color .3s,transform .3s .4s ease,-webkit-transform .3s .4s ease}.sub-menu[_ngcontent-%COMP%] > li[_ngcontent-%COMP%]:nth-child(5) > a[_ngcontent-%COMP%]{-webkit-transform:translate(0,calc(-100% - 12px));transform:translate(0,calc(-100% - 12px));transition:color .3s,-webkit-transform .3s .4s ease;transition:color .3s,transform .3s .4s ease;transition:color .3s,transform .3s .4s ease,-webkit-transform .3s .4s ease}"]],data:{}});function Dd(n){return ou(0,[(n()(),Kr(0,0,null,null,68,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,62,"header",[["class","page-header"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,0,"input",[["id","menu-toggle-input"],["type","checkbox"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,6,"label",[["class","menu-toggle"],["for","menu-toggle-input"]],null,null,null,null,null)),(n()(),Kr(4,0,null,null,0,"span",[],null,null,null,null,null)),(n()(),Kr(5,0,null,null,0,"span",[],null,null,null,null,null)),(n()(),Kr(6,0,null,null,0,"span",[],null,null,null,null,null)),(n()(),Kr(7,0,null,null,0,"span",[],null,null,null,null,null)),(n()(),Kr(8,0,null,null,0,"span",[],null,null,null,null,null)),(n()(),Kr(9,0,null,null,0,"span",[],null,null,null,null,null)),(n()(),Kr(10,0,null,null,2,"div",[["class","page-tagline"]],null,null,null,null,null)),(n()(),Kr(11,0,null,null,1,"a",[["href","https://es.linkedin.com/in/c%C3%A9sar-pe%C3%B3n-lamparero-b2a268162"],["id","linkedIn"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["#LinkedIn de C\xe9sar"])),(n()(),Kr(13,0,null,null,50,"nav",[["class","menu"]],null,null,null,null,null)),(n()(),Kr(14,0,null,null,49,"ol",[],null,null,null,null,null)),(n()(),Kr(15,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(16,0,null,null,2,"a",[["id","introduccion"],["routerLink","/Introduccion"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,17).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(17,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Introducci\xf3n"])),(n()(),Kr(19,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(20,0,null,null,2,"a",[["id","Capitulo0"],["routerLink","/Capitulo0"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,21).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(21,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 0"])),(n()(),Kr(23,0,null,null,16,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(24,0,null,null,12,"ol",[["class","sub-menu"]],null,null,null,null,null)),(n()(),Kr(25,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(26,0,null,null,2,"a",[["id","Capitulo1"],["routerLink","/Capitulo1"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,27).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(27,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 1"])),(n()(),Kr(29,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(30,0,null,null,2,"a",[["id","Capitulo2"],["routerLink","/Capitulo2"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,31).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(31,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 2"])),(n()(),Kr(33,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(34,0,null,null,2,"a",[["id","Capitulo3"],["routerLink","/Capitulo3"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,35).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(35,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 3"])),(n()(),Kr(37,0,null,null,2,"a",[["id","Capitulo4"],["routerLink","/Capitulo4"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,38).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(38,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 4"])),(n()(),Kr(40,0,null,null,19,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(41,0,null,null,12,"ol",[["class","sub-menu"]],null,null,null,null,null)),(n()(),Kr(42,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(43,0,null,null,2,"a",[["id","Capitulo5"],["routerLink","/Capitulo5"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,44).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(44,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 5"])),(n()(),Kr(46,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(47,0,null,null,2,"a",[["id","Capitulo6"],["routerLink","/Capitulo6"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,48).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(48,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 6"])),(n()(),Kr(50,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(51,0,null,null,2,"a",[["id","Capitulo7"],["routerLink","/Capitulo7"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,52).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(52,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 7"])),(n()(),Kr(54,0,null,null,2,"a",[["id","Capitulo8"],["routerLink","/Capitulo8"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,55).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(55,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 8"])),(n()(),Kr(57,0,null,null,2,"a",[["id","Capitulo9"],["routerLink","/Capitulo9"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,58).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(58,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Cap\xedtulo 9"])),(n()(),Kr(60,0,null,null,3,"li",[["class","menu-item"]],null,null,null,null,null)),(n()(),Kr(61,0,null,null,2,"a",[["id","Agradecimientos"],["routerLink","/Agradecimientos"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,62).onClick(t.button,t.ctrlKey,t.metaKey,t.shiftKey)&&l),l},null,null)),Do(62,671744,null,0,od,[ld,Zc,mi],{routerLink:[0,"routerLink"]},null),(n()(),tu(-1,null,["Agradacemientos"])),(n()(),Kr(64,0,null,null,4,"section",[["class","page-content"]],null,null,null,null,null)),(n()(),Kr(65,0,null,null,1,"h1",[["class","page-title"]],null,null,null,null,null)),(n()(),tu(-1,null,["Tutorial para desarrollar una PWA"])),(n()(),Kr(67,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,["Aplicaci\xf3n desarrollada por C\xe9sar Pe\xf3n como TFG del Grado de Ingenier\xeda Inform\xe1tica de la UAH"]))],function(n,e){n(e,17,0,"/Introduccion"),n(e,21,0,"/Capitulo0"),n(e,27,0,"/Capitulo1"),n(e,31,0,"/Capitulo2"),n(e,35,0,"/Capitulo3"),n(e,38,0,"/Capitulo4"),n(e,44,0,"/Capitulo5"),n(e,48,0,"/Capitulo6"),n(e,52,0,"/Capitulo7"),n(e,55,0,"/Capitulo8"),n(e,58,0,"/Capitulo9"),n(e,62,0,"/Agradecimientos")},function(n,e){n(e,16,0,ko(e,17).target,ko(e,17).href),n(e,20,0,ko(e,21).target,ko(e,21).href),n(e,26,0,ko(e,27).target,ko(e,27).href),n(e,30,0,ko(e,31).target,ko(e,31).href),n(e,34,0,ko(e,35).target,ko(e,35).href),n(e,37,0,ko(e,38).target,ko(e,38).href),n(e,43,0,ko(e,44).target,ko(e,44).href),n(e,47,0,ko(e,48).target,ko(e,48).href),n(e,51,0,ko(e,52).target,ko(e,52).href),n(e,54,0,ko(e,55).target,ko(e,55).href),n(e,57,0,ko(e,58).target,ko(e,58).href),n(e,61,0,ko(e,62).target,ko(e,62).href)})}function Ud(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Dd,jd)),Do(1,49152,null,0,Nd,[],null,null)],null,null)}var Bd=fo("app-root",Nd,Ud,{},{},[]),qd=function(){return function(){this.title="Introducci\xf3n al tutorial"}}(),zd=Cr({encapsulation:0,styles:[["body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function Vd(n){return ou(0,[(n()(),Kr(0,0,null,null,38,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,37,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,36,"div",[["style","text-align:center;"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Esta aplicaci\xf3n ha sido desarrolada por C\xe9sar Pe\xf3n Lamparero, estudiante de la Universidad de Alcal\xe1 de Henares, para su Trabajo de Fin de Grado de la carrera de Ingenier\xeda Inform\xe1ctica. "])),(n()(),Kr(7,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En este tutorial se ense\xf1a a desarrollar una aplicaci\xf3n web desde 0, la cual podr\xe1 ser ejecutada en ordenadores y en dispositivos m\xf3viles. Tambi\xe9n se explicar\xe1n conceptos b\xe1sicos sobre las aplicaciones web, h\xedbridas y nativas. As\xed como, los lenguajes de programaci\xf3n CSS y HTML (los m\xe1s utilizados para el desarrollo de aplicaciones web). "])),(n()(),Kr(9,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para realizar este tutorial se va a pedir la descarga de distintos softwares (NPM y Node.js), un editor de c\xf3digo fuente (Visual Studio Code) y un framework (Angular). Todas las descargas se explic\xe1n a lo largo del tutorial. "])),(n()(),Kr(11,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(12,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["INSTRUCCIONES"])),(n()(),Kr(14,0,null,null,3,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para acceder a los cap\xedtulos se puede acceder desde la p\xe1gina principal de la misma forma que has llegado hasta aqu\xed, o pulsando los botones al final de cada cap\xedtulo. Estos botones redirigiran al siguiente cap\xedtulo, o al p\xe1gina de inicio. "])),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" El tutorial se puede leer desde un ordenador o desde un m\xf3vil, pero tiene que realizarse en un ordenador, ya que las aplicaciones mencionadas anteriormente solo tienen soporte para ordenador. "])),(n()(),Kr(18,0,null,null,1,"h3",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xa1Espero que disfrutes y aprendas mucho con este tutorial!"])),(n()(),Kr(20,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para continuar pulsa sobre el siguiente bot\xf3n "])),(n()(),Kr(22,0,null,null,6,"div",[["class","backBtn"],["id","backButton"],["routerLink","/"],["type","button"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,23).onClick()&&l),l},null,null)),Do(23,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(24,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(25,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(26,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(28,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(29,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo0"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,30).onClick()&&l),l},null,null)),Do(30,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(31,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(32,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(33,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(35,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(36,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(37,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(38,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,23,0,"/"),n(e,30,0,"/Capitulo0")},function(n,e){n(e,4,0,e.component.title)})}function Hd(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Vd,zd)),Do(1,49152,null,0,qd,[],null,null)],null,null)}var Fd=fo("app-root",qd,Hd,{},{},[]),Wd=function(){return function(){this.title="Introducci\xf3n a las PWA"}}(),Gd=Cr({encapsulation:0,styles:[["body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function Zd(n){return ou(0,[(n()(),Kr(0,0,null,null,76,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,75,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,74,"div",[["style","text-align:center;"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfQU\xc9 ES UNA APLICACI\xd3N WEB?"])),(n()(),Kr(7,0,null,null,22,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Wikipedia: "])),(n()(),Kr(9,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u201cEs un programa que se codifica en un lenguaje interpretable por los navegadores web en la que se conf\xeda la ejecuci\xf3n al navegador\u201d."])),(n()(),tu(-1,null,[' Es una aplicaci\xf3n desarrollada para ser subida a internet y para que el usuario pueda acceder mediante su navegador (Google Chrome, Mozilla Firefox, Opera, Safari, etc.). Cuando se desarrolla una aplicaci\xf3n "normal" (no web), se desarrolla de manera local (dentro del propio ordenador), y para poder compartirla hay que pasarla de un ordenador a otro o crear un instalador (t\xedpico archivo con extensi\xf3n .exe que se descarga para instalar un programa). Gracias a las aplicaciones web, esto no es necesario. '])),(n()(),Kr(12,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfA que cuando accedes a YouTube desde el navegador no hace falta descargarse ning\xfan programa ni instalador? "])),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(15,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Las ventajas que ofrecen las aplicaciones web son numerosas. Entre ellas, la que m\xe1s destaca es la "])),(n()(),Kr(17,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["accesibilidad"])),(n()(),tu(-1,null,[", ya que es accesible desde cualquier navegador, sistema operativo, especificaciones hardware... Es decir, solo se necesita un dispositivo desde el cual conectarse a estas aplicaciones. "])),(n()(),Kr(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La principal desventaja, es que se requiere de conexi\xf3n para poder acceder a las aplicaciones web. A diferencia de las aplicaciones de los dispositivos moviles (aplicaciones nativas), las cuales, una vez descargadas, ya se puede acceder siempre a ellas. "])),(n()(),Kr(22,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(23,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Gracias a este tutorial vas a aprender a desarrollar una aplicaci\xf3n web con todas las ventajas de las aplicaciones nativas. "])),(n()(),Kr(25,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" \xa1Vas a aprender a desarrollar una "])),(n()(),Kr(27,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["PWA"])),(n()(),tu(-1,null,[" ! "])),(n()(),Kr(30,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfQU\xc9 ES UNA PWA?"])),(n()(),Kr(32,0,null,null,18,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' PWA son las siguientes siglas de \u201cProgressive Web App\u201d, son aplicaciones web, pero que gracias al uso de los "services workers" se comportan como apliaciones nativas. Algunas diferencias entre las aplicaciones nativas y las aplicaciones web son: '])),(n()(),Kr(34,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(35,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" - "])),(n()(),Kr(37,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Descargar archivo"])),(n()(),tu(-1,null,[": una aplicaci\xf3n nativa necesita ser descargada en el dispositivo,mientras que una aplicaci\xf3n web, no. "])),(n()(),Kr(40,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" - "])),(n()(),Kr(42,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Online"])),(n()(),tu(-1,null,[": Una aplicaci\xf3n nativa hace uso de internet mientras se descarga, pero una vez se haya instalado, no se necesita de internet para poder acceder a ella, en cambio, una aplicaci\xf3n web siempre necesita internet para poder hace uso de ella, si no deja de funcionar. "])),(n()(),Kr(45,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" - "])),(n()(),Kr(47,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Desarrollo"])),(n()(),tu(-1,null,[": las aplicaciones nativas se desarrollan espec\xedficamente para un sistema operativo, es decir, si se desarrolla una aplicaci\xf3n nativa para Android, esa aplicaci\xf3n solo se podr\xe1 usar en los dispositivos que tengan el sistema operativo de Android, no se podr\xe1 usar ni en IOS, ni en Windows, ni Linux, etc. En cambio, en una aplicaci\xf3n web da igual el sistema operativo que se utilice ya que funciona en cualquiera. "])),(n()(),Kr(50,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(51,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["SERVICES WORKERS"])),(n()(),Kr(53,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Los services workers son una secuencia de comandos que el navegador ejecuta en segundo plano, y que permiten la navegaci\xf3n offline. Gracias a ellos se pueden utilizar estas aplicaciones web sin conexi\xf3n a internet. "])),(n()(),Kr(55,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Una vez que la aplicaci\xf3n esta cargada en el navegador, y los services workers empiezan a funcionar, ya se queda "almacenada" y se puede utilizar aunque se vaya la conexi\xf3n. Otra gran utilizadad de la PWA es que se puede convertir f\xe1cilmente en una aplicaci\xf3n nativa para poder tenerla instalada en un dispositivo movil y poder utilizarla en cualquier momento sin conexi\xf3n a internet. '])),(n()(),Kr(57,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(58,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Las PWA son un gran avance para las aplicaciones h\xedbridas (aplicaciones que se pueden desarrollar tanto para dispositivos m\xf3viles como para ordenadores con el mismo c\xf3digo). "])),(n()(),Kr(60,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,61).onClick()&&l),l},null,null)),Do(61,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(62,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(63,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(64,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(66,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(67,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo1"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,68).onClick()&&l),l},null,null)),Do(68,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(69,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(70,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(71,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(73,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(74,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(75,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(76,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,61,0,"/"),n(e,68,0,"/Capitulo1")},function(n,e){n(e,4,0,e.component.title)})}function Kd(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Zd,Gd)),Do(1,49152,null,0,Wd,[],null,null)],null,null)}var Qd=fo("app-root",Wd,Kd,{},{},[]),Yd=function(){return function(){this.title="Visual Studio Code"}}(),Jd=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function $d(n){return ou(0,[(n()(),Kr(0,0,null,null,69,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,68,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,67,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,["Visual Studio Code es un editor de c\xf3digo de Microsoft. Mediante esta aplicaci\xf3n vas a desarrollar la pwa."])),(n()(),Kr(7,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfC\xd3MO INSTALAR VISUAL STUDIO CODE?"])),(n()(),Kr(9,0,null,null,4,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para instalarlo tienes que acceder a este "])),(n()(),Kr(11,0,null,null,1,"a",[["href","https://code.visualstudio.com/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["link"])),(n()(),tu(-1,null,[" y descargar el fichero instalador correspondiente a tu sistema operativo. "])),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(15,0,null,null,0,"img",[["src","../../../assets/capitulos/1/install.png"]],null,null,null,null,null)),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(17,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(18,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Despues de descargar el instalador, tienes que ejecutarlo e instalarlo. "])),(n()(),Kr(20,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["RECOMENDACIONES EN VISUAL STUDIO CODE"])),(n()(),Kr(22,0,null,null,3,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Para que te sea m\xe1s comoda la programaci\xf3n, Visual Studio Code tiene un apartado de "extensiones", donde se descargan "aplicaciones" que te ayudar\xe1n m\xe1s adelante. '])),(n()(),Kr(24,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Las extensiones se encuentran en el siguiente apartado "])),(n()(),Kr(26,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(27,0,null,null,0,"img",[["src","../../../assets/capitulos/1/extensiones.png"]],null,null,null,null,null)),(n()(),Kr(28,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(29,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(30,0,null,null,14,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para instalar las extensiones, accede al apartado se\xf1alado en la foto anterior, y en el buscador busca por los siguientes nombres (la parte entre par\xe9ntesis no hay que ponerla al buscar el nombre). "])),(n()(),Kr(32,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La extensiones a instalar son las siguientes "])),(n()(),Kr(34,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(35,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * Bootstrap 4, Font awesome (para la maquetaci\xf3n responsive que veremos m\xe1s adelante) "])),(n()(),Kr(37,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * JavaScript (ES6) code snippets (extensi\xf3n que ayudara al usuario con el lenguaje JavaScript) "])),(n()(),Kr(39,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * Project Manager (Para moverse f\xe1cilmente entre los proyectos) "])),(n()(),Kr(41,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * Spanish Language Pack for Visual Studio Code (para tenerlo en espa\xf1ol) "])),(n()(),Kr(43,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * Vscode-icons (para tener iconos en los diferentes archivos del proyecto) "])),(n()(),Kr(45,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(46,0,null,null,0,"img",[["src","../../../assets/capitulos/1/icons.png"]],null,null,null,null,null)),(n()(),Kr(47,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(48,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(49,0,null,null,2,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Despu\xe9s de instalar las extensiones, cierra y vuelve a abrir Visual Studio Code para que se apliquen los cambios "])),(n()(),Kr(51,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(52,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(53,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,54).onClick()&&l),l},null,null)),Do(54,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(55,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(56,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(57,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(59,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(60,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo2"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,61).onClick()&&l),l},null,null)),Do(61,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(62,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(63,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(64,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(66,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(67,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(68,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(69,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,54,0,"/"),n(e,61,0,"/Capitulo2")},function(n,e){n(e,4,0,e.component.title)})}function Xd(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,$d,Jd)),Do(1,49152,null,0,Yd,[],null,null)],null,null)}var nf=fo("app-root",Yd,Xd,{},{},[]),ef=function(){return function(){this.title="Node.js y NPM"}}(),tf=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function lf(n){return ou(0,[(n()(),Kr(0,0,null,null,121,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,120,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,119,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,0,"a",[["name","arriba"]],null,null,null,null,null)),(n()(),Kr(4,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(5,null,[" "," "])),(n()(),Kr(6,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfQU\xc9 ES NODE.JS?"])),(n()(),Kr(8,0,null,null,13,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Node.js es un entorno en tiempo de ejecuci\xf3n basado en el lenguaje de programaci\xf3n ECMAscript. Este se ejecuta usando Javascript en la parte del servidor de la aplicaci\xf3n mediante programaci\xf3n as\xedncrona. Es una aplicaci\xf3n multiplataforma y gratuita. "])),(n()(),Kr(10,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(11,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" \xbfQu\xe9 hace o puede hacer node.js? "])),(n()(),Kr(13,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["* Generar contenido de p\xe1gina din\xe1mico "])),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["* Crear, abrir, leer, escribir eliminar y cerrar archivos en el servidor "])),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["* Recopilar datos de un formulario "])),(n()(),Kr(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["* Agregar, eliminar, y modificar datos en su base de datos "])),(n()(),Kr(22,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfQU\xc9 ES NPM?"])),(n()(),Kr(24,0,null,null,3,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Las siglas de NPM significan "Node Package Manager", es decir, es el sistema encargado de gestionar los paquetes de Node.js. Este es un entorno de ejecuci\xf3n para el lenguaje de JavaScript. Es gratuito e incluye CLI (Command-Line Interface). '])),(n()(),Kr(26,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Todos los paquetes npm se definen en archivos llamados package.json y su contenido est\xe1 escrito en el lenguaje JSON. "])),(n()(),Kr(28,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["INSTALACI\xd3N"])),(n()(),Kr(30,0,null,null,7,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para la instalaci\xf3n de Node.js, tienes que descargarte el programa mediante el siguiente "])),(n()(),Kr(32,0,null,null,1,"a",[["href","https://nodejs.org/es/download/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["enlace"])),(n()(),Kr(34,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para la descarga, seleccionas las caracter\xedsticas de su ordenador (Windows o MAC) y la arquitectura de su sistema operativo (64 bits por lo general). "])),(n()(),Kr(36,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para conocer la arquitectura del sistema operativo hay que abrir el panel de control "])),(n()(),Kr(38,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(39,0,null,null,0,"img",[["src","../../../assets/capitulos/2/panelDeControl.png"]],null,null,null,null,null)),(n()(),Kr(40,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(41,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(42,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Dentro de Sisitema y seguridad, selecciona "Sistema" '])),(n()(),Kr(44,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(45,0,null,null,0,"img",[["src","../../../assets/capitulos/2/sistema.png"]],null,null,null,null,null)),(n()(),Kr(46,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(47,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(48,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Y dentro de este apartado hay que fijarse en lo siguiente "])),(n()(),Kr(50,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(51,0,null,null,0,"img",[["src","../../../assets/capitulos/2/arquitectura.png"]],null,null,null,null,null)),(n()(),Kr(52,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(53,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(54,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez que sabes la arquitectura de tu ordenador, ya puedes seleccionar tu descarga "])),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(57,0,null,null,0,"img",[["src","../../../assets/capitulos/2/nodeInstall.png"]],null,null,null,null,null)),(n()(),Kr(58,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(59,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(60,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(61,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(62,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez instalado Node.js hay que abrir Visual Studio Code y en la parte de arriba, pulsar sobre \u201cTerminal\u201d, y abrir un terminal nuevo. "])),(n()(),Kr(64,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(65,0,null,null,0,"img",[["src","../../../assets/capitulos/2/nuevaTerminal.png"]],null,null,null,null,null)),(n()(),Kr(66,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(67,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(68,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La nueva terminal aparecer\xe1 en la parte de abajo. Despu\xe9s de ubicarla, copia el siguiente comando: "])),(n()(),Kr(70,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(71,0,null,null,0,"input",[["size","10"],["type","text"],["value","npm i download"]],null,null,null,null,null)),(n()(),Kr(72,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(73,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" y p\xe9galo en la parte se\xf1alada por la flecha roja "])),(n()(),Kr(75,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(76,0,null,null,0,"img",[["src","../../../assets/capitulos/2/terminal.png"]],null,null,null,null,null)),(n()(),Kr(77,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(78,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(79,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Pulsa la tecla Enter y espera a que la barra termine de cargar. "])),(n()(),Kr(81,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(82,0,null,null,0,"img",[["src","../../../assets/capitulos/2/npmI.png"]],null,null,null,null,null)),(n()(),Kr(83,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(84,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(85,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez terminada la instalaci\xf3n, en el mismo terminal que has instalado npm, comprueba la versi\xf3n de Node y npm escribiendo "])),(n()(),Kr(87,0,null,null,0,"input",[["size","10"],["type","text"],["value","node --version"]],null,null,null,null,null)),(n()(),Kr(88,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" y "])),(n()(),Kr(90,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(91,0,null,null,0,"input",[["size","10"],["type","text"],["value","npm --version"]],null,null,null,null,null)),(n()(),Kr(92,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(93,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(94,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Como resultado tendr\xedas que ver la versi\xf3n de los programas "])),(n()(),Kr(96,0,null,null,0,"img",[["src","../../../assets/capitulos/2/npmVersion.png"]],null,null,null,null,null)),(n()(),Kr(97,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(98,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(99,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Si no aparecer\xe1 el siguiente mensaje "])),(n()(),Kr(101,0,null,null,0,"img",[["src","../../../assets/capitulos/2/badCheckNpm.png"]],null,null,null,null,null)),(n()(),Kr(102,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(103,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(104,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(105,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,106).onClick()&&l),l},null,null)),Do(106,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(107,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(108,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(109,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(111,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(112,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo3"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,113).onClick()&&l),l},null,null)),Do(113,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(114,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(115,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(116,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(118,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(119,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(120,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(121,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,106,0,"/"),n(e,113,0,"/Capitulo3")},function(n,e){n(e,5,0,e.component.title)})}function rf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,lf,tf)),Do(1,49152,null,0,ef,[],null,null)],null,null)}var of=fo("app-root",ef,rf,{},{},[]),uf=function(){return function(){this.title="Angular"}}(),af=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function sf(n){return ou(0,[(n()(),Kr(0,0,null,null,116,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,115,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,114,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xbfQU\xc9 ES ANGULAR?"])),(n()(),Kr(7,0,null,null,11,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Angular es un framework (entorno de trabajo) para desarrollar aplicaciones web en TypeScript. Es un framework gratuito y de c\xf3digo abierto mantenido por Google. En este tutorial no se va a ense\xf1ar a programar en Angular, si quieres m\xe1s informaci\xf3n para convertirte en un experto en Angular, te ser\xe1 muy \xfatil este "])),(n()(),Kr(9,0,null,null,1,"a",[["href","https://angular.io/tutorial"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["tutorial"])),(n()(),Kr(11,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(12,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La raz\xf3n por la que se ha elegido el framework de Angular es porque esta plataforma permite acoger aplicaciones progresivas (PWA) y adem\xe1s permite hacer uso de buenas pr\xe1cticas de programaci\xf3n como el TDD (desarrollo guiado por pruebas). "])),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La programaci\xf3n orienta a test (TDD) no se va a explciar en este tutorial, aunque la aplicaci\xf3n haya sido desarrollada usando TDD. Si es de tu inter\xe9s puedes consultar el siguiente "])),(n()(),Kr(16,0,null,null,1,"a",[["href","https://es.wikipedia.org/wiki/Desarrollo_guiado_por_pruebas"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["enlace"])),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(19,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["INSTALACI\xd3N"])),(n()(),Kr(21,0,null,null,9,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para instalar Angular, seguir\xe1s el mismo procedimiento que has utilizado anteriormente para instalar Node.js y npm: mediante l\xednea de comandos. En este caso, el comando a introducir ser\xe1 el siguiente "])),(n()(),Kr(23,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(24,0,null,null,0,"input",[["size","20"],["type","text"],["value","npm install -g @angular/cli"]],null,null,null,null,null)),(n()(),Kr(25,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Despu\xe9s de esperar a que todo quede instalado, comprueba la versi\xf3n de Angular usando el comando "])),(n()(),Kr(27,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(28,0,null,null,0,"input",[["size","7"],["type","text"],["value","ng --version"]],null,null,null,null,null)),(n()(),Kr(29,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Al introducirlo, aparecer\xe1 la versi\xf3n de Angular CLI, la de Node, la del sistema operativo, y la de Angular (adem\xe1s de la versi\xf3n de todos los paquetes que se est\xe1n utilizando) "])),(n()(),Kr(31,0,null,null,0,"img",[["src","../../../assets/capitulos/3/ngVersion.png"]],null,null,null,null,null)),(n()(),Kr(32,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(33,0,null,null,21,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez instalado Angular, tienes que crear el proyecto que finalmente se convertira en PWA. Para esto, utiliza el siguiente comando "])),(n()(),Kr(35,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(36,0,null,null,0,"input",[["size","22"],["type","text"],["value","ng new nombre-del-proyecto"]],null,null,null,null,null)),(n()(),Kr(37,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En nombre-del-proyecto escribe el nombre que quieras para tu proyecto. Una vez introducido el comando, responde a las siguientes preguntas desde el terminal "])),(n()(),Kr(39,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(40,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,['"? Would you like to add Angular routing?"'])),(n()(),tu(-1,null,[" La respuesta es "])),(n()(),Kr(43,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["S\xed"])),(n()(),Kr(45,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Escribir "y" y pulsar la tecla de "Enter" '])),(n()(),Kr(47,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(48,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,['"? Which stylesheet format would you like to use?"'])),(n()(),tu(-1,null,[" La respuesta es "])),(n()(),Kr(51,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["CSS"])),(n()(),Kr(53,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' CSS viene marcada por defecto, con pulsar la tecla de "Enter" es suficiente '])),(n()(),Kr(55,0,null,null,0,"img",[["src","../../../assets/capitulos/3/quest.png"]],null,null,null,null,null)),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(57,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Esperas a que la barra termine de cargar para poder continuar. "])),(n()(),Kr(59,0,null,null,0,"img",[["src","../../../assets/capitulos/3/loading.png"]],null,null,null,null,null)),(n()(),Kr(60,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(61,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Cuando el proyecto este creado, tienes que moverte al directorio donde est\xe1 ubicado dicho proyecto, para esto, escribe lo siguiente en la l\xednea de comandos "])),(n()(),Kr(63,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(64,0,null,null,0,"input",[["type","text"],["value","cd nombre-del-proyecto"]],null,null,null,null,null)),(n()(),Kr(65,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Donde nombre-del-proyecto es el nombre que se le dio al proyecto creado anteriormente. Pulsa Enter para acceder al directorio, y ver\xe1s como la parte de la izquierda del > ahora tambi\xe9n aparece tu proyecto "])),(n()(),Kr(67,0,null,null,0,"img",[["src","../../../assets/capitulos/3/route.png"]],null,null,null,null,null)),(n()(),Kr(68,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(69,0,null,null,3,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" \xa1Ya has creado TU primer proyecto en Angular! "])),(n()(),Kr(71,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para abrir el proyecto que se acaba de crear, hay que pulsar sobre \u201cArchivo\u201d y en \u201cAbrir carpeta\u2026\u201d. Una vez dentro, buscas la carpeta donde has creado el proyecto "])),(n()(),Kr(73,0,null,null,0,"img",[["src","../../../assets/capitulos/3/openFolder.png"]],null,null,null,null,null)),(n()(),Kr(74,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(75,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para saber la ruta en la que est\xe1 ubicado tu proyecto, la tienes descrita en las l\xedneas del del terminal como se puede ver en la siguiente imagen "])),(n()(),Kr(77,0,null,null,0,"img",[["src","../../../assets/capitulos/3/rutaArchivo.png"]],null,null,null,null,null)),(n()(),Kr(78,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(79,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' En mi caso, el proyecto est\xe1 en el disco duro D:/, en la carpeta de documentos, y dentro de la carpeta TFG. Si no sabes ubicarla con estos consejos, copia la ruta que se ha se\xf1alado antes (marcarla con el bot\xf3n izquierdo del rat\xf3n, y pulsar sobre las teclas "control" y "c"), y la pegas aqui '])),(n()(),Kr(81,0,null,null,0,"img",[["src","../../../assets/capitulos/3/rutaArchivo2.png"]],null,null,null,null,null)),(n()(),Kr(82,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(83,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Entras en la carpeta que tiene el nombre que le has puesto al proyecto y pulsas en "Seleccionar carpeta". '])),(n()(),Kr(85,0,null,null,0,"img",[["src","../../../assets/capitulos/3/file.png"]],null,null,null,null,null)),(n()(),Kr(86,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(87,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Despu\xe9s de esto solo te queda instalar los services workers para poder utilizar una PWA. Para esto tienes que escribir la siguiente l\xednea de comandos "])),(n()(),Kr(89,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(90,0,null,null,0,"input",[["size","15"],["type","text"],["value","ng add @angular/pwa"]],null,null,null,null,null)),(n()(),Kr(91,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Tras ejecutar el anterior comando, hay que esperar a que la barra termine de cargar "])),(n()(),Kr(93,0,null,null,0,"img",[["src","../../../assets/capitulos/3/loading2.png"]],null,null,null,null,null)),(n()(),Kr(94,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(95,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(96,0,null,null,0,"img",[["src","../../../assets/capitulos/3/fullLoading.png"]],null,null,null,null,null)),(n()(),Kr(97,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(98,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para continuar con la aplicaci\xf3n, pulsa el siguiente bot\xf3n "])),(n()(),Kr(100,0,null,null,6,"div",[["class","backBtn"],["routerLink","/Inicio"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,101).onClick()&&l),l},null,null)),Do(101,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(102,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(103,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(104,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(106,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(107,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo4"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,108).onClick()&&l),l},null,null)),Do(108,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(109,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(110,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(111,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(113,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(114,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(115,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(116,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,101,0,"/Inicio"),n(e,108,0,"/Capitulo4")},function(n,e){n(e,4,0,e.component.title)})}function cf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,sf,af)),Do(1,49152,null,0,uf,[],null,null)],null,null)}var pf=fo("app-root",uf,cf,{},{},[]),df=function(){return function(){this.title="Personaliza tu aplicaci\xf3n"}}(),ff=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}.button2[_ngcontent-%COMP%]{background-color:#fff;color:#000;border:2px solid #008cba;border-radius:18px}.button2[_ngcontent-%COMP%]:hover{background-color:#008cba;color:#fff;box-shadow:0 12px 16px 0 rgba(0,0,0,.24),0 17px 50px 0 rgba(0,0,0,.19)}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function hf(n){return ou(0,[(n()(),Kr(0,0,null,null,174,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,173,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,172,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["INFORMACI\xd3N B\xc1SICA SOBRE HTML5, CSS3 Y JS"])),(n()(),Kr(7,0,null,null,39,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Se recomienda tener el proyecto abierto dentro de Visual Studio Code "])),(n()(),Kr(9,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["- "])),(n()(),Kr(11,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["HTML"])),(n()(),tu(-1,null,[": archivo \u201capp.component.html\u201d. El lenguaje html funciona por etiquetas, encapsuladas entre los s\xedmbolos mayor y menor que(<>). Todos los elementos que se declaren dentro del archivo van dentro de estas etiquetas. Por ejemplo, "])),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(15,0,null,null,0,"input",[["disabled",""],["size","52"],["type","text"],["value","<h2>INFORMACI\xd3N B\xc1SICA SOBRE HTML5, CSS3 Y JS</h2>"]],null,null,null,null,null)),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Esta l\xednea de c\xf3digo genera un t\xedtulo grande, y la aplicaci\xf3n mostrar\xe1 como t\xedtulo grande lo que este dentro de la etiqueta h2. Los tipos de etiquetas m\xe1s comunes se pueden encontrar (junto con ejemplos de como usarlos) en el siguiente "])),(n()(),Kr(18,0,null,null,1,"a",[["href","https://www.w3schools.com/tags/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["enlace"])),(n()(),Kr(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["- "])),(n()(),Kr(22,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["CSS"])),(n()(),tu(-1,null,[": archivo \u201capp.component.css\u201d. Inicialmente estar\xe1 vac\xedo, pero aqu\xed se ubicar\xe1n todos los estilos que se le dar\xe1n a la p\xe1gina. Los estilos hacen referencia al color, tama\xf1o, forma, etc. de cada elemento. Por ejemplo, si se dise\xf1a un bot\xf3n por defecto aparecer\xe1 de una forma muy b\xe1sica, pero despu\xe9s de aplicarle varios estilos, obtiene una forma m\xe1s bonita. "])),(n()(),Kr(25,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(26,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(27,0,null,null,1,"button",[["style","padding: 0.6rem"],["type","button"]],null,null,null,null,null)),(n()(),tu(-1,null,["Sin aplicar CSS"])),(n()(),Kr(29,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(30,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Despu\xe9s de aplicar algunas modificaciones con CSS: "])),(n()(),Kr(32,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(33,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(34,0,null,null,1,"button",[["class","button2"],["onclick","alert('\xa1Tengo CSS! Los estilos que se han aplicado han sido: \\n * Redondear el contorno con: border-radius.\\n * Dar color al borde con: border.\\n * Poner el color blanco de fondo con: background-color. \\n * Al pasar por encima que aparezca una sombra con: box-shadow.\\n * Aplicar la funci\xf3n hover para que cuando se pase por encima cambie el color de fondo (de blanco a azul).\\n * Una alerta donde estas leyendo esto con: onclick = alert(Y aqui poner lo que salta en el alert) ')"],["style","padding: 0.6rem"],["type","button"]],null,null,null,null,null)),(n()(),tu(-1,null,["Aplicando CSS"])),(n()(),Kr(36,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(37,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Otro ejemplo de un bot\xf3n con CSS es el bot\xf3n que aparece al final de los cap\xedtulos para volver al inicio. "])),(n()(),Kr(39,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["- "])),(n()(),Kr(41,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["JS"])),(n()(),tu(-1,null,[": Com\xfanmente, las p\xe1ginas web utilizan JavaScript como el lenguaje utilizado para el desarrollo de funciones necesarias para la aplicaci\xf3n, pero Angular utiliza TypeScript (lenguaje muy similar a JavaScript, pero m\xe1s intuitivo y menos restrictivo). Este lenguaje no se va a utilizar en este tutorial, en caso de querer profundizar m\xe1s sobre este lenguaje puedes acceder al siguiente "])),(n()(),Kr(44,0,null,null,1,"a",[["href","https://www.w3schools.com/js/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["link"])),(n()(),tu(-1,null,[" . "])),(n()(),Kr(47,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PERSONALIZA TU APLICACI\xd3N"])),(n()(),Kr(49,0,null,null,1,"h4",[],null,null,null,null,null)),(n()(),tu(-1,null,["(OPCIONAL)"])),(n()(),Kr(51,0,null,null,3,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En este apartado te voy a dar varias ideas para retocar la aplicaci\xf3n y hacerla propiamente tuya. En caso de que las ideas que se den aqu\xed, no sean suficientes para lo que quieres hacer, tienes m\xe1s informaci\xf3n en internet y una comunidad que esta esperando a resolver tus preguntas :) "])),(n()(),Kr(53,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Todas las partes que se explican a continuaci\xf3n tienen que escribir dentro del archivo: "app.component.html" entre las siguientes etiquetas '])),(n()(),Kr(55,0,null,null,0,"img",[["src","../../../assets/capitulos/4/etiquetas.png"]],null,null,null,null,null)),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(57,0,null,null,8,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Cada vez que escribas una etiqueta, pulsa enter, escribe "br" entre "<" y ">" para poner un salto de l\xednea, otra vez enter, y escribe la siguiente. '])),(n()(),Kr(59,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Para escribir los CSS se har\xe1 dentro del archivo "app.component.css" '])),(n()(),Kr(61,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(62,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(63,0,null,null,1,"u",[],null,null,null,null,null)),(n()(),tu(-1,null,["En primer lugar: los titulos."])),(n()(),tu(-1,null,[" Hay 4 tama\xf1os diferentes: h1, h2, h3 y h4 (de mas grande a m\xe1s peque\xf1o). "])),(n()(),Kr(66,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(-1,null,["H1"])),(n()(),Kr(68,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["H2"])),(n()(),Kr(70,0,null,null,1,"h3",[],null,null,null,null,null)),(n()(),tu(-1,null,["H3"])),(n()(),Kr(72,0,null,null,1,"h4",[],null,null,null,null,null)),(n()(),tu(-1,null,["H4"])),(n()(),Kr(74,0,null,null,34,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Seg\xfan el tama\xf1o que quieras se pone una etiqueta u otra, y entre medias el mensaje que se quiera: "])),(n()(),Kr(76,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(77,0,null,null,0,"img",[["src","../../../assets/capitulos/4/titulos.png"]],null,null,null,null,null)),(n()(),Kr(78,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(79,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(80,0,null,null,1,"u",[],null,null,null,null,null)),(n()(),tu(-1,null,["En segundo lugar: Como poner un enlace."])),(n()(),tu(-1,null,[" Como ejemplo voy a poner mi perfil de linkedIn. Si se pusiese la direcci\xf3n como tal, saldr\xeda as\xed: https://es.linkedin.com/in/c%C3%A9sar-pe%C3%B3n-lamparero-b2a268162 "])),(n()(),Kr(83,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Pero a no ser que se copie el texto, y se pegue directamente en la barra de b\xfasqueda, no llevar\xeda a ning\xfan sitio. Para poder hacer el enlace, hay que utilzar la etiqueta "a", y quedar\xeda de esta '])),(n()(),Kr(85,0,null,null,1,"a",[["href","https://es.linkedin.com/in/c%C3%A9sar-pe%C3%B3n-lamparero-b2a268162"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["forma"])),(n()(),Kr(87,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(88,0,null,null,0,"img",[["src","../../../assets/capitulos/4/enlace.png"]],null,null,null,null,null)),(n()(),Kr(89,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Como puedes ver en la foto, href es el hipervinculo de referencia, y entre comillas hay que especificar la URL a donde quieres que mande el link, y donde pone "forma", es donde ir\xeda el texto del enlace. '])),(n()(),Kr(91,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(92,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(93,0,null,null,1,"u",[],null,null,null,null,null)),(n()(),tu(-1,null,["En tercer lugar: Como crear un bot\xf3n."])),(n()(),tu(-1,null,[' En este caso, dejo el c\xf3digo que se ha utilizado para el bot\xf3n "con CSS" anterior: '])),(n()(),Kr(96,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" HTML "])),(n()(),Kr(98,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(99,0,null,null,0,"img",[["src","../../../assets/capitulos/4/botonHTML.png"]],null,null,null,null,null)),(n()(),Kr(100,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" CSS "])),(n()(),Kr(102,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(103,0,null,null,0,"img",[["src","../../../assets/capitulos/4/botonCSS.png"]],null,null,null,null,null)),(n()(),Kr(104,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(105,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(106,0,null,null,1,"u",[],null,null,null,null,null)),(n()(),tu(-1,null,["En cuarto lugar: Como crear una p\xe1rrafo de texto."])),(n()(),tu(-1,null,[' Para esto, basta con escribir el texto que desees dentro de la etiqueta "p". Para dar estilos al p\xe1rrafo, se puede hacer de dos formas, o bien declar\xe1ndolo en el fichero CSS, o bien, indicando el estilo que se desea en la propia etiqueta. '])),(n()(),Kr(109,0,null,null,1,"p",[["style","text-align:left"]],null,null,null,null,null)),(n()(),tu(-1,null,["Esto es un ejemplo de un p\xe1rrafo que esta completamente a la izquierda"])),(n()(),Kr(111,0,null,null,1,"p",[["style","text-align:center"]],null,null,null,null,null)),(n()(),tu(-1,null,["Esto es un ejemplo de un p\xe1rrafo que esta en el centro"])),(n()(),Kr(113,0,null,null,1,"p",[["style","text-align:right"]],null,null,null,null,null)),(n()(),tu(-1,null,["Esto es un ejemplo de un p\xe1rrafo que esta completamente a la derecha"])),(n()(),Kr(115,0,null,null,40,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En el fichero CSS "])),(n()(),Kr(117,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(118,0,null,null,0,"img",[["src","../../../assets/capitulos/4/parrafoCSS.png"]],null,null,null,null,null)),(n()(),Kr(119,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En la propia etiqueta "])),(n()(),Kr(121,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(122,0,null,null,0,"img",[["src","../../../assets/capitulos/4/estilosParrafo.png"]],null,null,null,null,null)),(n()(),Kr(123,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(124,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(125,0,null,null,1,"u",[],null,null,null,null,null)),(n()(),tu(-1,null,["En quinto lugar: Como insertar una imagen."])),(n()(),tu(-1,null,[' Para insertar una imagen en el proyecto lo puedes hacer de dos formas, utilizando el link de una imagen de internet, o bien, descargando una imagen y guard\xe1ndola en el proyecto. En ambas forma se utiliza la etiqueta "img". '])),(n()(),Kr(128,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La primera forma tendr\xeda esta forma: "])),(n()(),Kr(130,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(131,0,null,null,0,"img",[["src","https://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Angular_full_color_logo.svg/250px-Angular_full_color_logo.svg.png"]],null,null,null,null,null)),(n()(),Kr(132,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(133,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(134,0,null,null,0,"img",[["src","../../../assets/capitulos/4/imageAngular.png"]],null,null,null,null,null)),(n()(),Kr(135,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Dentro de las comillas de src se pone el link a la imagen. Para obtener este link, se busca la imagen en google, se pulsa sobre la imagen, y despu\xe9s, pulsando bot\xf3n derecho, seleccionar "Copiar direcci\xf3n de imagen": '])),(n()(),Kr(137,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(138,0,null,null,0,"img",[["src","../../../assets/capitulos/4/imageRoute.png"]],null,null,null,null,null)),(n()(),Kr(139,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Y se pega la direcci\xf3n en el apartado de src. "])),(n()(),Kr(141,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(142,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' La segunda forma ser\xeda descargando la imagen en tu ordenador. Localizar la carpeta "assets" dentro del proyecto y crear una nueva carpeta dentro de la carpeta "assets". A\xf1adir la imagen descargada a la carpeta creada anteriormente, y por \xfaltimo, en el HTML, en la parte de src poner la siguiente ruta: "../assets/imagenPWA/pwa.png" '])),(n()(),Kr(144,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(145,0,null,null,0,"img",[["src","../../../assets/imagenPWA/pwa.png"]],null,null,null,null,null)),(n()(),Kr(146,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Asi quedar\xeda: "])),(n()(),Kr(148,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(149,0,null,null,0,"img",[["src","../../../assets/capitulos/4/pwaRoute.png"]],null,null,null,null,null)),(n()(),Kr(150,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(151,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Despu\xe9s de estas personalizaciones, es muy importante guardar todo el proceso que llevas, para esto, pulsa el siguiente bot\xf3n "])),(n()(),Kr(153,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(154,0,null,null,0,"img",[["src","../../../assets/capitulos/4/guardarTodo.png"]],null,null,null,null,null)),(n()(),Kr(155,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(156,0,null,null,1,"h3",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xa1ya puedes hacer una aplicaci\xf3n personalizada!"])),(n()(),Kr(158,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,159).onClick()&&l),l},null,null)),Do(159,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(160,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(161,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(162,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(164,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(165,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo5"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,166).onClick()&&l),l},null,null)),Do(166,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(167,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(168,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(169,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(171,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(172,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(173,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(174,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,159,0,"/"),n(e,166,0,"/Capitulo5")},function(n,e){n(e,4,0,e.component.title)})}function gf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,hf,ff)),Do(1,49152,null,0,df,[],null,null)],null,null)}var mf=fo("app-root",df,gf,{},{},[]),vf=function(){return function(){this.title="Ejecutar la aplicaci\xf3n web"}}(),yf=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function bf(n){return ou(0,[(n()(),Kr(0,0,null,null,58,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,57,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,56,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["ACTUALIZAR NPM"])),(n()(),Kr(7,0,null,null,34,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para arrancar la aplicaci\xf3n, necesitas tener la \xfaltima versi\xf3n de NPM. Para esto, tienes que ejecutar el siguiente comando "])),(n()(),Kr(9,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(10,0,null,null,0,"input",[["size","7"],["type","text"],["value","npm install"]],null,null,null,null,null)),(n()(),Kr(11,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(12,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(13,0,null,null,0,"img",[["src","../../../assets/capitulos/5/loading.png"]],null,null,null,null,null)),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Hay que esperar a que la barra termine de cargarse: "])),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(17,0,null,null,0,"img",[["src","../../../assets/capitulos/5/fullLoad.png"]],null,null,null,null,null)),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" El comando necesario para arrancar la aplicaci\xf3n es: "])),(n()(),Kr(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(21,0,null,null,0,"input",[["size","5"],["type","text"],["value","ng serve"]],null,null,null,null,null)),(n()(),Kr(22,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Tras esto, queda esperar a que en la pantalla salga el siguiente mensaje: "Compiled succesfully". '])),(n()(),Kr(24,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(25,0,null,null,0,"img",[["src","../../../assets/capitulos/5/compiled.png"]],null,null,null,null,null)),(n()(),Kr(26,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Ahora, hay que abrir el navegador y escribir el siguiente enlace: "])),(n()(),Kr(28,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(29,0,null,null,0,"input",[["size","10"],["type","text"],["value","localhost:4200"]],null,null,null,null,null)),(n()(),Kr(30,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" o bien, pulsar en el siguiente "])),(n()(),Kr(32,0,null,null,1,"a",[["href","http://localhost:4200"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["enlace"])),(n()(),Kr(34,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Gracias a esto, veras la aplicaci\xf3n que has creado. La aplicaci\xf3n que est\xe1s ejecutando, todav\xeda no es una PWA, para eso tienes que construirla y ejecutarla de otra forma (lo cual se explica en el cap\xedtulo 6). "])),(n()(),Kr(36,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En caso de que no hayas tocado nada de la personalizaci\xf3n, la aplicaci\xf3n tendr\xe1 la siguiente apariencia "])),(n()(),Kr(38,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(39,0,null,null,0,"img",[["src","../../../assets/capitulos/5/angular.png"]],null,null,null,null,null)),(n()(),Kr(40,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Para parar la conexi\xf3n de la aplicaci\xf3n, desde el terminal se pulsa las teclas "control" y "c". '])),(n()(),Kr(42,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,43).onClick()&&l),l},null,null)),Do(43,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(44,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(45,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(46,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(48,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(49,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo6"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,50).onClick()&&l),l},null,null)),Do(50,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(51,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(52,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(53,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(55,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(57,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(58,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,43,0,"/"),n(e,50,0,"/Capitulo6")},function(n,e){n(e,4,0,e.component.title)})}function wf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,bf,yf)),Do(1,49152,null,0,vf,[],null,null)],null,null)}var _f=fo("app-root",vf,wf,{},{},[]),Cf=function(){return function(){this.title="Construir y ejecutar la PWA"}}(),xf=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function kf(n){return ou(0,[(n()(),Kr(0,0,null,null,98,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,97,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,96,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["COMO CONSTRUIR LA PWA"])),(n()(),Kr(7,0,null,null,74,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Antes de empezar con este cap\xedtulo, cierra la conexi\xf3n de tu terminal pulsando las teclas de "control" y "c" '])),(n()(),Kr(9,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez que has desarrollado todo que quieras para la aplicaci\xf3n, y todos los requisitos necesarios para la PWA, llega el momento de construirla. "])),(n()(),Kr(11,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para esto, ejecuta el siguiente comando "])),(n()(),Kr(13,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(14,0,null,null,0,"input",[["size","9"],["type","text"],["value","ng build --prod"]],null,null,null,null,null)),(n()(),Kr(15,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(17,0,null,null,0,"img",[["src","../../../assets/capitulos/6/build.png"]],null,null,null,null,null)),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Despu\xe9s de esperar a que termine la "construcci\xf3n" de la PWA, se habr\xe1 creado una carpeta llamada "dist" que contiene la informaci\xf3n necesaria para esta. '])),(n()(),Kr(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para poder ejecutar la PWA hay que moverse a dicha carpeta, y para ello tienes que ejecutar el siguiente comando "])),(n()(),Kr(22,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(23,0,null,null,0,"input",[["size","20"],["type","text"],["value","cd dist/nombre-del-proyecto"]],null,null,null,null,null)),(n()(),Kr(24,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(25,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(26,0,null,null,0,"img",[["src","../../../assets/capitulos/6/directorio.png"]],null,null,null,null,null)),(n()(),Kr(27,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para lanzar la aplicaci\xf3n, tienes que instalar unos paquetes de NPM, para ello escribe el siguiente comando: "])),(n()(),Kr(29,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(30,0,null,null,0,"input",[["size","13"],["type","text"],["value","npm i -g http-server"]],null,null,null,null,null)),(n()(),Kr(31,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(32,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(33,0,null,null,0,"img",[["src","../../../assets/capitulos/6/http-server.png"]],null,null,null,null,null)),(n()(),Kr(34,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Por \xfaltimo, para arrancar la aplicaci\xf3n escribe lo siguiente "])),(n()(),Kr(36,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(37,0,null,null,0,"input",[["size","8"],["type","text"],["value","http-server -o"]],null,null,null,null,null)),(n()(),Kr(38,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Tras esto, se abrir\xe1 una pesta\xf1a de Alerta de seguridad de windows preguntando que si se permite el acceso a Node.js, hay que pulsar sobre permitir acceso, y despu\xe9s, se abre directamente una pesta\xf1a del navegador con la siguiente direcci\xf3n: "127.0.0.1:8080" '])),(n()(),Kr(40,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(41,0,null,null,0,"img",[["src","../../../assets/capitulos/6/127.png"]],null,null,null,null,null)),(n()(),Kr(42,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Aparentemente es la misma aplicaci\xf3n que se lanz\xf3 en el cap\xedtulo anterior, pero esta \xfaltima ya tiene todas las ventajas de una PWA. "])),(n()(),Kr(44,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para poder probar el funcionamiento offline de la aplicaci\xf3n web, hay que utilizar esta "])),(n()(),Kr(46,0,null,null,1,"a",[["href","http://localhost:8080/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["ruta"])),(n()(),Kr(48,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(49,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Esto se debe a que la direcci\xf3n 127.0.0.1 est\xe1 trabajando mediante IP (Internet Protocol), lo cual utiliza internet. Al hacer pruebas de ejecutar la aplicaci\xf3n offline, la direcci\xf3n IP dejar\xe1 de funcionar. Por eso, en vez de la direcci\xf3n IP se especifica la ruta local (localhost). Como se puede comprobar la aplicaci\xf3n se sigue ejecutando en el mismo puerto (8080). "])),(n()(),Kr(51,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(52,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En el caso del cap\xedtulo anterior, la aplicaci\xf3n se lanzaba en el puerto 4200 y ahora en el 8080. Antes se utilizaba el puerto definido por defecto de Angular (4200), y en la PWA se utiliza el puerto necesario para lanzar aplicaciones http (8080). "])),(n()(),Kr(54,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para probar que la aplicaci\xf3n funciona correctamente, sigue los siguientes pasos "])),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(57,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 Bot\xf3n derecho sobre el navegador, y se pulsa inspeccionar (o bien pulsa en f12). "])),(n()(),Kr(59,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(60,0,null,null,0,"img",[["src","../../../assets/capitulos/6/127Offline.png"]],null,null,null,null,null)),(n()(),Kr(61,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(62,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 En la ventana que aparece, pulsa sobre network "])),(n()(),Kr(64,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(65,0,null,null,0,"img",[["src","../../../assets/capitulos/6/sources.png"]],null,null,null,null,null)),(n()(),Kr(66,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(67,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 En la ventana que aparece, presiona sobre Offline "])),(n()(),Kr(69,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(70,0,null,null,0,"img",[["src","../../../assets/capitulos/6/network.png"]],null,null,null,null,null)),(n()(),Kr(71,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(72,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 Por \xfaltimo, pulsa sobre el bot\xf3n de recargar la p\xe1gina, y puedes comprobar como la aplicaci\xf3n se mantiene. "])),(n()(),Kr(74,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(75,0,null,null,0,"img",[["src","../../../assets/capitulos/6/finally.png"]],null,null,null,null,null)),(n()(),Kr(76,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" De hecho, dentro de la ventana se inspeccionar se pueden ver como los services workers est\xe1n \u201ctrabajando\u201d: "])),(n()(),Kr(78,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(79,0,null,null,0,"img",[["src","../../../assets/capitulos/6/check.png"]],null,null,null,null,null)),(n()(),Kr(80,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Para parar la conexi\xf3n de la aplicaci\xf3n, desde el terminal se pulsa la tecla "control" y "c". '])),(n()(),Kr(82,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,83).onClick()&&l),l},null,null)),Do(83,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(84,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(85,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(86,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(88,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(89,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Capitulo7"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,90).onClick()&&l),l},null,null)),Do(90,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(91,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(92,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(93,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(95,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(96,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(97,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(98,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,83,0,"/"),n(e,90,0,"/Capitulo7")},function(n,e){n(e,4,0,e.component.title)})}function Pf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,kf,xf)),Do(1,49152,null,0,Cf,[],null,null)],null,null)}var Of=fo("app-root",Cf,Pf,{},{},[]),Mf=function(){return function(){this.title="Hostear la aplicaci\xf3n en Github"}}(),Sf=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:30%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn1[_ngcontent-%COMP%]{width:5rem;left:48%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}div.nextBtn1[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn1[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn1[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn1[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn1[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn2[_ngcontent-%COMP%]{width:5rem;left:63%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn2[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn2[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn2[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn2[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn2[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function Ef(n){return ou(0,[(n()(),Kr(0,0,null,null,137,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,136,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,135,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Github es la plataforma m\xe1s grande de desarrollo colaborativo donde los usuarios comparten en sus repositorios el c\xf3digo de sus programas. En dicha plataforma es donde se va a alojar la aplicaci\xf3n que has creado, para que puedas acceder a ella mediante un link. B\xe1sicamente, esto es hostear una aplicaci\xf3n, \u201csubir\u201d el c\xf3digo a un servidor para que cualquier persona pueda acceder desde cualquier sitio. Github ofrece la posibilidad de un servicio de hosting gratuito para un proyecto por cada cuenta. "])),(n()(),Kr(7,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Antes de nada, te tienes que registrar en la web de "])),(n()(),Kr(9,0,null,null,1,"a",[["href","https://github.com/join?source=header-home"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["github"])),(n()(),Kr(11,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PASO 1"])),(n()(),Kr(13,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Rellena los campos con tus datos personales y pulsa el bot\xf3n de crear cuenta "])),(n()(),Kr(15,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(17,0,null,null,0,"img",[["src","../../../assets/capitulos/7/ghlogin.png"]],null,null,null,null,null)),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(19,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PASO 2"])),(n()(),Kr(21,0,null,null,5,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Elige la subscripci\xf3n gratuita y pulsa en el bot\xf3n de continuar "])),(n()(),Kr(23,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(24,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(25,0,null,null,0,"img",[["src","../../../assets/capitulos/7/welcomegh1.png"]],null,null,null,null,null)),(n()(),Kr(26,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(27,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PASO 3"])),(n()(),Kr(29,0,null,null,8,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Selecciona el nivel que tienes de programaci\xf3n y especifica para qu\xe9 vas a usar la cuenta de GitHub. Al terminar, pulsa sobre el bot\xf3n \u201cEnviar\u201d "])),(n()(),Kr(31,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(32,0,null,null,0,"img",[["src","../../../assets/capitulos/7/welcomegh2.png"]],null,null,null,null,null)),(n()(),Kr(33,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Una vez hayas rellenado el registro, tienes que validarlo desde el correo que has dado. Para esto, accede a esa cuenta de correo, abre el email que hayas recibido de GitHub, y pulsa en el bot\xf3n de "Verify email address". El email ser\xe1 de la siguiente forma '])),(n()(),Kr(35,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(36,0,null,null,0,"img",[["src","../../../assets/capitulos/7/welcomegh3.png"]],null,null,null,null,null)),(n()(),Kr(37,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(38,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PASO 4"])),(n()(),Kr(40,0,null,null,36,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Una vez dentro de tu cuenta de GitHub, accede al apartado de "tus repositorios" '])),(n()(),Kr(42,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(43,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(44,0,null,null,0,"img",[["src","../../../assets/capitulos/7/repositories.png"]],null,null,null,null,null)),(n()(),Kr(45,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Desde est\xe1 p\xe1gina, crea un repositorio nuevo "])),(n()(),Kr(47,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(48,0,null,null,0,"img",[["src","../../../assets/capitulos/7/account.png"]],null,null,null,null,null)),(n()(),Kr(49,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La parte que viene a continuaci\xf3n es muy importante, ya que la informaci\xf3n que vas a rellenar tiene que ser de la siguiente forma "])),(n()(),Kr(51,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 "])),(n()(),Kr(53,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Nombre del repositorio:"])),(n()(),tu(-1,null,[" tiene que tener el siguiente formato: username.github.io "])),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Donde username es tu nombre de usuario (o nombre de la organizaci\xf3n) en GitHub. "])),(n()(),Kr(58,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 "])),(n()(),Kr(60,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Descripci\xf3n:"])),(n()(),tu(-1,null,[" Aqu\xed puedes escribir la descripci\xf3n del proyecto (campo opcional). "])),(n()(),Kr(63,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 "])),(n()(),Kr(65,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Publico/privado:"])),(n()(),tu(-1,null,[' Selecciona "P\xfablico" (si no, NO se puede hostear la aplicaci\xf3n). '])),(n()(),Kr(68,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["\u2022 "])),(n()(),Kr(70,0,null,null,1,"i",[],null,null,null,null,null)),(n()(),tu(-1,null,["Marcar la casilla"])),(n()(),tu(-1,null,[" de inicializar este repositorio con un README. Estos son los \xfanicos requisitos que pide GitHub para dar el servicio de hosting gratuito. "])),(n()(),Kr(73,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(74,0,null,null,0,"img",[["src","../../../assets/capitulos/7/newRepository.png"]],null,null,null,null,null)),(n()(),Kr(75,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Pulsa sobre el bot\xf3n \u201cCreate repository\u201d. "])),(n()(),Kr(77,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PASO 5"])),(n()(),Kr(79,0,null,null,22,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez has creado tu respositorio, abre el apartado de subir archivos "])),(n()(),Kr(81,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(82,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(83,0,null,null,0,"img",[["src","../../../assets/capitulos/7/uploadFiles.png"]],null,null,null,null,null)),(n()(),Kr(84,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Despu\xe9s en tu ordenador, abre la carpeta donde esta ubicada la aplicaci\xf3n (la carpeta que est\xe1 dentro de la carpeta "dist"), selecciona todos los archivos que hay dentro, y arrastralos al repositorio '])),(n()(),Kr(86,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(87,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(88,0,null,null,0,"img",[["src","../../../assets/capitulos/7/dist.png"]],null,null,null,null,null)),(n()(),Kr(89,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(90,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(91,0,null,null,0,"img",[["src","../../../assets/capitulos/7/distToGh.png"]],null,null,null,null,null)),(n()(),Kr(92,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Cuando se hayan cargado todos los archivos (o todos menos uno, que a veces se queda pillado en el \xfaltimo, pero no pasa nada), pulsa sobre el bot\xf3n "Commit changes" '])),(n()(),Kr(94,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(95,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(96,0,null,null,0,"img",[["src","../../../assets/capitulos/7/commit.png"]],null,null,null,null,null)),(n()(),Kr(97,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(98,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(99,0,null,null,0,"img",[["src","../../../assets/capitulos/7/proccessing.png"]],null,null,null,null,null)),(n()(),Kr(100,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Una vez haya terminado de cargar... "])),(n()(),Kr(102,0,null,null,1,"h3",[],null,null,null,null,null)),(n()(),tu(-1,null,["\xa1ya estar\xe1 t\xfa aplicaci\xf3n hosteada!"])),(n()(),Kr(104,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PASO 5"])),(n()(),Kr(106,0,null,null,7,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" El \xfaltimo paso es comprobar que la aplicaci\xf3n se haya subido correctamente, para esto, escribe tu URL en cualquier dispositivo con acceso a internet (ordenador, m\xf3vil Tablet, etc.). "])),(n()(),Kr(108,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,["La URL es: https://username.github.io "])),(n()(),Kr(110,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En mi caso es: "])),(n()(),Kr(112,0,null,null,1,"a",[["href","https://tfg-cesar.github.io/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["TFG-Cesar.github.io"])),(n()(),Kr(114,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,115).onClick()&&l),l},null,null)),Do(115,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(116,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(117,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(118,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(120,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(121,0,null,null,6,"div",[["class","nextBtn1"],["routerLink","/Capitulo8"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,122).onClick()&&l),l},null,null)),Do(122,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(123,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(124,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(125,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Ejecutar Android"])),(n()(),Kr(127,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(128,0,null,null,6,"div",[["class","nextBtn2"],["routerLink","/Capitulo9"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,129).onClick()&&l),l},null,null)),Do(129,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(130,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(131,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(132,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Ejecutar en IOS"])),(n()(),Kr(134,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(135,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(136,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(137,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,115,0,"/"),n(e,122,0,"/Capitulo8"),n(e,129,0,"/Capitulo9")},function(n,e){n(e,4,0,e.component.title)})}function Af(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Ef,Sf)),Do(1,49152,null,0,Mf,[],null,null)],null,null)}var Tf=fo("app-root",Mf,Af,{},{},[]),Lf=function(){return function(){this.title="Generar app de Android"}}(),If=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function Rf(n){return ou(0,[(n()(),Kr(0,0,null,null,57,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,56,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,55,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,1,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,["Para generar una aplicaci\xf3n Android, se puede hacer de dos formas distintas"])),(n()(),Kr(7,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["PRIMERA FORMA"])),(n()(),Kr(9,0,null,null,11,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La manera m\xe1s sencilla es: acceder a la aplicaci\xf3n desde un dispositivo m\xf3vil y a\xf1adir la aplicaci\xf3n a la pantalla de inicio. "])),(n()(),Kr(11,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(12,0,null,null,0,"img",[["src","../../../assets/capitulos/8/pantallaInicio.png"]],null,null,null,null,null)),(n()(),Kr(13,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" De esta manera, se crea una aplicaci\xf3n Android autom\xe1ticamente, sin necesidad de instalar nada. "])),(n()(),Kr(15,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' La primera vez que accedas a la aplicaci\xf3n, aparecer\xe1 un mensaje en la pantalla que te preguntar\xe1 si quieres a\xf1adir la aplicaci\xf3n a la pantalla de inicio, si pulsas en "A\xf1adir", se te a\xf1adir\xe1 directamente '])),(n()(),Kr(17,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(19,0,null,null,0,"img",[["src","../../../assets/capitulos/8/aniadir.png"]],null,null,null,null,null)),(n()(),Kr(20,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(21,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["SEGUNDA FORMA"])),(n()(),Kr(23,0,null,null,17,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La segunda manera es: obteniendo el fichero .apk (extensi\xf3n de las aplicaciones Android), pas\xe1ndolo al m\xf3vil e instal\xe1ndolo. Para generar el fichero .apk introduce la URL de tu aplicaci\xf3n en el siguiente "])),(n()(),Kr(25,0,null,null,1,"a",[["href","https://appmaker.xyz/pwa-to-apk/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["link"])),(n()(),Kr(27,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(28,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(29,0,null,null,0,"img",[["src","../../../assets/capitulos/8/webapk.png"]],null,null,null,null,null)),(n()(),Kr(30,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Despu\xe9s de introducir la URL y pulsar sobre el bot\xf3n "Get started", se redirigir\xe1 a la siguiente pantalla '])),(n()(),Kr(32,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(33,0,null,null,0,"img",[["src","../../../assets/capitulos/8/create.png"]],null,null,null,null,null)),(n()(),Kr(34,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" En el primer campo hay una opci\xf3n para decidir el nombre que tendr\xe1 la aplicaci\xf3n, y m\xe1s abajo, un espacio donde poner el icono de la aplicaci\xf3n que aparecer\xe1 en los dispositivos m\xf3viles. "])),(n()(),Kr(36,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Por \xfaltimo, se pulsa sobre "Create now", y comienza la descarga de t\xfa aplicaci\xf3n. Este archivo se puede pasar al m\xf3vil mediante telegram, correo, conectando el m\xf3vil al ordenador por USB, etc. Una vez este la aplicaci\xf3n en el m\xf3vil, tienes que instalar, pero ya que es una aplicaci\xf3n que ha llegado al dispositivo m\xf3vil desde fuera de un market de confianza (Play Store), puede haber problemas. Para cualquier duda con este tema, dejo aqu\xed un '])),(n()(),Kr(38,0,null,null,1,"a",[["href","https://es.digitaltrends.com/guias/instalar-app-android-fuera-play-store/"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["enlace"])),(n()(),tu(-1,null,[" que te ayudar\xe1. "])),(n()(),Kr(41,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,42).onClick()&&l),l},null,null)),Do(42,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(43,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(44,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(45,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(47,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(48,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Agradecimientos"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,49).onClick()&&l),l},null,null)),Do(49,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(50,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(51,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(52,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(54,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(55,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(56,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(57,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,42,0,"/"),n(e,49,0,"/Agradecimientos")},function(n,e){n(e,4,0,e.component.title)})}function Nf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Rf,If)),Do(1,49152,null,0,Lf,[],null,null)],null,null)}var jf=fo("app-root",Lf,Nf,{},{},[]),Df=function(){return function(){this.title="Generar app de IOS"}}(),Uf=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:35%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}.label[_ngcontent-%COMP%]{left:0;transition:all .4s ease;position:absolute;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}div.nextBtn[_ngcontent-%COMP%]{width:5rem;left:60%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}div.nextBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.nextBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.nextBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.nextBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.nextBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function Bf(n){return ou(0,[(n()(),Kr(0,0,null,null,62,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,61,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,60,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,40,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Para poder generar la app de IOS solo se puede hacer de una manera, y es haciendo uso del navegador. "])),(n()(),Kr(7,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[' Para la descarga de la aplicaci\xf3n es necesario utilizar el navegador "Safari" de Apple, el cual viene instalado en el dispositivo. '])),(n()(),Kr(9,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * "])),(n()(),Kr(11,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["Primer paso:"])),(n()(),tu(-1,null,[" Accede a la PWA poniendo la URL en el buscador. "])),(n()(),Kr(14,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(15,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(16,0,null,null,0,"img",[["src","../../../assets/capitulos/9/enlace.png"]],null,null,null,null,null)),(n()(),Kr(17,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(18,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * "])),(n()(),Kr(20,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["Segundo paso:"])),(n()(),tu(-1,null,[" Una vez dentro de la aplicaci\xf3n, pulsa el bot\xf3n de compartir (se\xf1alado en la foto anterior). "])),(n()(),Kr(23,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * "])),(n()(),Kr(25,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["Tercer paso:"])),(n()(),tu(-1,null,[' Pulsa sobre la opci\xf3n "A\xf1adir a la pantalla de inicio" '])),(n()(),Kr(28,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(29,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(30,0,null,null,0,"img",[["src","../../../assets/capitulos/9/pantallaDeInicio.png"]],null,null,null,null,null)),(n()(),Kr(31,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(32,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" * "])),(n()(),Kr(34,0,null,null,1,"b",[],null,null,null,null,null)),(n()(),tu(-1,null,["Cuarto paso:"])),(n()(),tu(-1,null,[" Verifica que el nombre que aparece en la pantalla de inicio es el que quieres que tenga la aplicaci\xf3n. Por \xfaltimo, haz clic en \u201cA\xf1adir\u201d. "])),(n()(),Kr(37,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(38,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(39,0,null,null,0,"img",[["src","../../../assets/capitulos/9/titulo.png"]],null,null,null,null,null)),(n()(),Kr(40,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" La aplicaci\xf3n la puedes encontrar en la pantalla de inicio "])),(n()(),Kr(42,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(43,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(44,0,null,null,0,"img",[["src","../../../assets/capitulos/9/aplicacion.png"]],null,null,null,null,null)),(n()(),Kr(45,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(46,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,47).onClick()&&l),l},null,null)),Do(47,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(48,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(49,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(50,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(52,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(53,0,null,null,6,"div",[["class","nextBtn"],["routerLink","/Agradecimientos"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,54).onClick()&&l),l},null,null)),Do(54,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(55,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(56,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(57,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Siguiente cap\xedtulo"])),(n()(),Kr(59,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(60,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(61,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(62,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,47,0,"/"),n(e,54,0,"/Agradecimientos")},function(n,e){n(e,4,0,e.component.title)})}function qf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Bf,Uf)),Do(1,49152,null,0,Df,[],null,null)],null,null)}var zf=fo("app-root",Df,qf,{},{},[]),Vf=function(){return function(){this.title="MUCHAS GRACIAS"}}(),Hf=Cr({encapsulation:0,styles:[["img[_ngcontent-%COMP%]{max-width:100%}body[_ngcontent-%COMP%]{background:url(agua.9f824bb9a7578ec40771.jpg) center center/cover no-repeat fixed}.content[_ngcontent-%COMP%]{text-align:center;font-family:'Open Sans',sans-serif;color:#fff;margin:40px auto;background:rgba(22,22,22,.5);width:100%;max-width:960px;border-radius:5px;padding-bottom:32px}h1[_ngcontent-%COMP%], h1[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{min-height:120px;width:90%;max-width:700px;vertical-align:middle;text-align:center;margin:0 auto;text-decoration:none;color:#fff;padding-top:80px}p[_ngcontent-%COMP%]{width:90%;max-width:700px;text-align:center;margin:0 auto;padding-bottom:32px}div.backBtn[_ngcontent-%COMP%]{width:5rem;left:48%;background-color:#f4f4f4;transition:all .4s ease;position:-webkit-sticky;position:sticky;cursor:pointer}span.line[_ngcontent-%COMP%]{bottom:auto;right:auto;top:auto;background-color:#333;border-radius:1rem;width:100%;left:0;height:.2rem;display:block;position:absolute;transition:width .2s ease .1s,left .2s ease,background-color .2s ease,-webkit-transform .2s ease .3s;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease;transition:width .2s ease .1s,left .2s ease,transform .2s ease .3s,background-color .2s ease,-webkit-transform .2s ease .3s}span.tLine[_ngcontent-%COMP%]{top:0}span.mLine[_ngcontent-%COMP%]{top:.8rem;opacity:0}span.bLine[_ngcontent-%COMP%]{top:1.8rem}.label[_ngcontent-%COMP%]{position:absolute;left:0;top:.4rem;width:100%;text-align:center;transition:all .4s ease;font-size:1.1em}div.backBtn[_ngcontent-%COMP%]:hover span.label[_ngcontent-%COMP%]{left:25px}div.backBtn[_ngcontent-%COMP%]:hover span.line[_ngcontent-%COMP%]{left:-10px;height:5px;background-color:#f76060}div.backBtn[_ngcontent-%COMP%]:hover span.tLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);left:-15px;top:6px}div.backBtn[_ngcontent-%COMP%]:hover span.mLine[_ngcontent-%COMP%]{opacity:1;width:30px}div.backBtn[_ngcontent-%COMP%]:hover span.bLine[_ngcontent-%COMP%]{width:25px;-webkit-transform:rotate(45deg);transform:rotate(45deg);left:-15px;top:20px}"]],data:{}});function Ff(n){return ou(0,[(n()(),Kr(0,0,null,null,27,"body",[],null,null,null,null,null)),(n()(),Kr(1,0,null,null,26,"div",[["class","content"]],null,null,null,null,null)),(n()(),Kr(2,0,null,null,25,"div",[["style","text-align:center"]],null,null,null,null,null)),(n()(),Kr(3,0,null,null,1,"h1",[],null,null,null,null,null)),(n()(),tu(4,null,[" "," "])),(n()(),Kr(5,0,null,null,3,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Espero de todo coraz\xf3n que te haya sido \xfatil, y que si no conoc\xedas el mundo de la inform\xe1tica a bajo nivel, me alegro de haberte ayudado a adentrarte en las profundidades del c\xf3digo. "])),(n()(),Kr(7,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Si te ha surgido cualquier tipo de duda, o quieres m\xe1s informaci\xf3n sobre esto, he dejado un enlace a mi linkedIn personal donde estare encantado de ayudarte con cualquier pregunta. "])),(n()(),Kr(9,0,null,null,1,"h2",[],null,null,null,null,null)),(n()(),tu(-1,null,["CONCLUSIONES Y OPINI\xd3N PERSONAL"])),(n()(),Kr(11,0,null,null,6,"p",[],null,null,null,null,null)),(n()(),tu(-1,null,[" El desarrollo de las aplicaciones h\xedbridas est\xe1 avanzando r\xe1pidamente. Hace unos a\xf1os era impensable poder realizar aplicaciones web, m\xf3viles y de escritorio con un solo desarrollo, y hoy en d\xeda, no solo es viable, si no que las aplicaciones m\xf3viles y de escritorio, se generan autom\xe1ticamente. Quiero agradecer al autor de este "])),(n()(),Kr(13,0,null,null,1,"a",[["href","https://medium.com/@firt/google-play-store-now-open-for-progressive-web-apps-ec6f3c6ff3cc"],["style","color:#09DBAA; font-weight: bold; font-size: 1.1em"],["target","_blank"]],null,null,null,null,null)),(n()(),tu(-1,null,["art\xedculo"])),(n()(),tu(-1,null,[" que me habriese la senda hac\xeda el camino de las aplicaciones h\xedbridas utilizando PWA. "])),(n()(),Kr(16,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),tu(-1,null,[" Y sobre todo a ti, por llegar hasta esta parte del tutorial, \xa1MUCHAS GRACIAS! "])),(n()(),Kr(18,0,null,null,6,"div",[["class","backBtn"],["routerLink","/"]],null,[[null,"click"]],function(n,e,t){var l=!0;return"click"===e&&(l=!1!==ko(n,19).onClick()&&l),l},null,null)),Do(19,16384,null,0,rd,[ld,Zc,[8,null],Fe,Be],{routerLink:[0,"routerLink"]},null),(n()(),Kr(20,0,null,null,0,"span",[["class","line tLine"]],null,null,null,null,null)),(n()(),Kr(21,0,null,null,0,"span",[["class","line mLine"]],null,null,null,null,null)),(n()(),Kr(22,0,null,null,1,"span",[["class","label"]],null,null,null,null,null)),(n()(),tu(-1,null,["Volver al inicio"])),(n()(),Kr(24,0,null,null,0,"span",[["class","line bLine"]],null,null,null,null,null)),(n()(),Kr(25,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(26,0,null,null,0,"br",[],null,null,null,null,null)),(n()(),Kr(27,0,null,null,0,"br",[],null,null,null,null,null))],function(n,e){n(e,19,0,"/")},function(n,e){n(e,4,0,e.component.title)})}function Wf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Ff,Hf)),Do(1,49152,null,0,Vf,[],null,null)],null,null)}var Gf=fo("app-root",Vf,Wf,{},{},[]),Zf=Cr({encapsulation:0,styles:[[""]],data:{}});function Kf(n){return ou(0,[(n()(),Kr(0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),Do(1,212992,null,0,sd,[ad,El,Re,[8,null],Tl],null,null)],function(n,e){n(e,1,0)},null)}function Qf(n){return ou(0,[(n()(),Kr(0,0,null,null,1,"app-root",[],null,null,null,Kf,Zf)),Do(1,49152,null,0,fi,[],null,null)],null,null)}var Yf=fo("app-root",fi,Qf,{},{},[]);function Jf(n,e,t,l){return f(t)&&(l=t,t=void 0),l?Jf(n,e,t).pipe(nn(function(n){return p(n)?l.apply(void 0,n):l(n)})):new I(function(l){!function n(e,t,l,r,o){var u;if(function(n){return n&&"function"==typeof n.addEventListener&&"function"==typeof n.removeEventListener}(e)){var i=e;e.addEventListener(t,l,o),u=function(){return i.removeEventListener(t,l,o)}}else if(function(n){return n&&"function"==typeof n.on&&"function"==typeof n.off}(e)){var a=e;e.on(t,l),u=function(){return a.off(t,l)}}else if(function(n){return n&&"function"==typeof n.addListener&&"function"==typeof n.removeListener}(e)){var s=e;e.addListener(t,l),u=function(){return s.removeListener(t,l)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var c=0,p=e.length;c<p;c++)n(e[c],t,l,r,o)}r.add(u)}(n,e,function(n){l.next(arguments.length>1?Array.prototype.slice.call(arguments):n)},l,t)})}var $f=new I(A),Xf="Service workers are disabled or not supported by this browser",nh=function(){function n(n){if(this.serviceWorker=n,n){var e=Jf(n,"controllerchange").pipe(nn(function(){return n.controller})),t=xa(Gi(function(){return Bi(n.controller)}),e);this.worker=t.pipe(Ki(function(n){return!!n})),this.registration=this.worker.pipe(wa(function(){return n.getRegistration()}));var l=Jf(n,"message").pipe(nn(function(n){return n.data})).pipe(Ki(function(n){return n&&n.type})).pipe(yn(new B));l.connect(),this.events=l}else this.worker=this.events=this.registration=(r=Xf,Gi(function(){return n=new Error(r),new I(function(e){return e.error(n)});var n}));var r}return n.prototype.postMessage=function(n,e){return this.worker.pipe(ha(1),ta(function(t){t.postMessage(o({action:n},e))})).toPromise().then(function(){})},n.prototype.postMessageWithStatus=function(n,e,t){var l=this.waitForStatus(t),r=this.postMessage(n,e);return Promise.all([l,r]).then(function(){})},n.prototype.generateNonce=function(){return Math.round(1e7*Math.random())},n.prototype.eventsOfType=function(n){return this.events.pipe(Ki(function(e){return e.type===n}))},n.prototype.nextEventOfType=function(n){return this.eventsOfType(n).pipe(ha(1))},n.prototype.waitForStatus=function(n){return this.eventsOfType("STATUS").pipe(Ki(function(e){return e.nonce===n}),ha(1),nn(function(n){if(!n.status)throw new Error(n.error)})).toPromise()},Object.defineProperty(n.prototype,"isEnabled",{get:function(){return!!this.serviceWorker},enumerable:!0,configurable:!0}),n}(),eh=function(){function n(n){if(this.sw=n,this.subscriptionChanges=new B,!n.isEnabled)return this.messages=$f,this.notificationClicks=$f,void(this.subscription=$f);this.messages=this.sw.eventsOfType("PUSH").pipe(nn(function(n){return n.data})),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(nn(function(n){return n.data})),this.pushManager=this.sw.registration.pipe(nn(function(n){return n.pushManager}));var e=this.pushManager.pipe(wa(function(n){return n.getSubscription()}));this.subscription=pn(e,this.subscriptionChanges)}return Object.defineProperty(n.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),n.prototype.requestSubscription=function(n){var e=this;if(!this.sw.isEnabled)return Promise.reject(new Error(Xf));for(var t={userVisibleOnly:!0},l=this.decodeBase64(n.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),r=new Uint8Array(new ArrayBuffer(l.length)),o=0;o<l.length;o++)r[o]=l.charCodeAt(o);return t.applicationServerKey=r,this.pushManager.pipe(wa(function(n){return n.subscribe(t)}),ha(1)).toPromise().then(function(n){return e.subscriptionChanges.next(n),n})},n.prototype.unsubscribe=function(){var n=this;return this.sw.isEnabled?this.subscription.pipe(ha(1),wa(function(e){if(null===e)throw new Error("Not subscribed to push notifications.");return e.unsubscribe().then(function(e){if(!e)throw new Error("Unsubscribe failed!");n.subscriptionChanges.next(null)})})).toPromise():Promise.reject(new Error(Xf))},n.prototype.decodeBase64=function(n){return atob(n)},n}(),th=function(){function n(n){if(this.sw=n,!n.isEnabled)return this.available=$f,void(this.activated=$f);this.available=this.sw.eventsOfType("UPDATE_AVAILABLE"),this.activated=this.sw.eventsOfType("UPDATE_ACTIVATED")}return Object.defineProperty(n.prototype,"isEnabled",{get:function(){return this.sw.isEnabled},enumerable:!0,configurable:!0}),n.prototype.checkForUpdate=function(){if(!this.sw.isEnabled)return Promise.reject(new Error(Xf));var n=this.sw.generateNonce();return this.sw.postMessageWithStatus("CHECK_FOR_UPDATES",{statusNonce:n},n)},n.prototype.activateUpdate=function(){if(!this.sw.isEnabled)return Promise.reject(new Error(Xf));var n=this.sw.generateNonce();return this.sw.postMessageWithStatus("ACTIVATE_UPDATE",{statusNonce:n},n)},n}(),lh=function(){return function(){}}(),rh=new Mn("NGSW_REGISTER_SCRIPT");function oh(n,e,t,l){return function(){var r=n.get(Cl);if(Ii(l)&&"serviceWorker"in navigator&&!1!==t.enabled){var o=r.isStable.pipe(Ki(function(n){return!!n}),ha(1)).toPromise();navigator.serviceWorker.addEventListener("controllerchange",function(){null!==navigator.serviceWorker.controller&&navigator.serviceWorker.controller.postMessage({action:"INITIALIZE"})}),o.then(function(){return navigator.serviceWorker.register(e,{scope:t.scope})})}}}function uh(n,e){return new nh(Ii(e)&&!1!==n.enabled?navigator.serviceWorker:void 0)}var ih=function(){function n(){}var e;return e=n,n.register=function(n,t){return void 0===t&&(t={}),{ngModule:e,providers:[{provide:rh,useValue:n},{provide:lh,useValue:t},{provide:nh,useFactory:uh,deps:[lh,Vt]},{provide:jt,useFactory:oh,deps:[he,rh,lh,Vt],multi:!0}]}},n}(),ah=(wd.forRoot([{path:"",pathMatch:"full",redirectTo:"/"},{path:"",component:Nd},{path:"Introduccion",component:qd},{path:"Capitulo0",component:Wd},{path:"Capitulo1",component:Yd},{path:"Capitulo2",component:ef},{path:"Capitulo3",component:uf},{path:"Capitulo4",component:df},{path:"Capitulo5",component:vf},{path:"Capitulo6",component:Cf},{path:"Capitulo7",component:Mf},{path:"Capitulo8",component:Lf},{path:"Capitulo9",component:Df},{path:"Capitulo9",component:Df},{path:"Agradecimientos",component:Vf},{path:"**",pathMatch:"full",redirectTo:"/"}]),function(){return function(){}}()),sh=ci(di,[fi],function(n){return function(n){for(var e={},t=[],l=!1,r=0;r<n.length;r++){var o=n[r];o.token===Se&&!0===o.value&&(l=!0),1073741824&o.flags&&t.push(o.token),o.index=r,e[br(o.token)]=o}return{factory:null,providersByKey:e,providers:n,modules:t,isRoot:l}}([lo(512,Re,Ne,[[8,[Rd,Bd,Fd,Qd,nf,of,pf,mf,_f,Of,Tf,jf,zf,Gf,Yf]],[3,Re],De]),lo(5120,er,rr,[[3,er]]),lo(4608,Mi,Si,[er,[2,Oi]]),lo(5120,Ut,Bt,[]),lo(5120,Ql,tr,[]),lo(5120,Yl,lr,[]),lo(4608,Ss,Es,[Ai]),lo(6144,Ze,null,[Ss]),lo(4608,_s,xs,[]),lo(5120,Ka,function(n,e,t,l,r,o,u,i){return[new bs(n,e,t),new Ms(l),new ks(r,o,u,i)]},[Ai,ol,Vt,Ai,Ai,_s,Ft,[2,Cs]]),lo(4608,Qa,Qa,[Ka,ol]),lo(135680,$a,$a,[Ai]),lo(4608,os,os,[Qa,$a,Ut]),lo(6144,Ve,null,[os]),lo(6144,Ja,null,[$a]),lo(4608,fl,fl,[ol]),lo(5120,Zc,Od,[ld]),lo(4608,fd,fd,[]),lo(6144,pd,null,[fd]),lo(135680,hd,hd,[ld,kt,$t,he,pd]),lo(4608,dd,dd,[]),lo(5120,gd,_d,[ld,Ri,md]),lo(5120,Ad,Ed,[Md]),lo(5120,Ht,function(n){return[n]},[Ad]),lo(5120,nh,uh,[lh,Vt]),lo(4608,eh,eh,[nh]),lo(4608,th,th,[nh]),lo(1073742336,Ei,Ei,[]),lo(1024,It,Ds,[]),lo(1024,vl,function(){return[bd()]},[]),lo(512,Md,Md,[he]),lo(256,rh,"ngsw-worker.js",[]),lo(256,lh,{enabled:!0},[]),lo(1024,jt,function(n,e,t,l,r,u){return[(i=n,Wa("probe",Za),Wa("coreTokens",o({},Ga,(i||[]).reduce(function(n,e){return n[e.name]=e.token,n},{}))),function(){return Za}),Sd(e),oh(t,l,r,u)];var i},[[2,vl],Md,he,rh,lh,Vt]),lo(512,Dt,Dt,[[2,jt]]),lo(131584,Cl,Cl,[ol,Ft,he,It,Re,Dt]),lo(1073742336,or,or,[Cl]),lo(1073742336,Us,Us,[[3,Us]]),lo(1024,vd,xd,[[3,ld]]),lo(512,Pc,Oc,[]),lo(512,ad,ad,[]),lo(256,md,{},[]),lo(1024,mi,Cd,[hi,[2,vi],md]),lo(512,yi,yi,[mi]),lo(512,$t,$t,[]),lo(512,kt,Ml,[$t,[2,Pl]]),lo(1024,Yp,function(){return[[{path:"",pathMatch:"full",redirectTo:"/"},{path:"",component:Nd},{path:"Introduccion",component:qd},{path:"Capitulo0",component:Wd},{path:"Capitulo1",component:Yd},{path:"Capitulo2",component:ef},{path:"Capitulo3",component:uf},{path:"Capitulo4",component:df},{path:"Capitulo5",component:vf},{path:"Capitulo6",component:Cf},{path:"Capitulo7",component:Mf},{path:"Capitulo8",component:Lf},{path:"Capitulo9",component:Df},{path:"Capitulo9",component:Df},{path:"Agradecimientos",component:Vf},{path:"**",pathMatch:"full",redirectTo:"/"}]]},[]),lo(1024,ld,Pd,[Cl,Pc,ad,yi,he,kt,$t,Yp,md,[2,$p],[2,Kp]]),lo(1073742336,wd,wd,[[2,vd],[2,ld]]),lo(1073742336,ah,ah,[]),lo(1073742336,ih,ih,[]),lo(1073742336,di,di,[]),lo(256,Se,!0,[])])});(function(){if(Ye)throw new Error("Cannot enable prod mode after platform setup.");Qe=!1})(),js().bootstrapModuleFactory(sh).catch(function(n){return console.error(n)})}},[[0,0]]]);