Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ngx-loadable

Package Overview
Dependencies
Maintainers
1
Versions
29
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ngx-loadable - npm Package Compare versions

Comparing version 2.0.0 to 3.0.0-alpha.4

LICENSE

141

bundles/ngx-loadable.umd.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/router')) :
typeof define === 'function' && define.amd ? define('ngx-loadable', ['exports', '@angular/core', '@angular/common', '@angular/router'], factory) :
(global = global || self, factory(global['ngx-loadable'] = {}, global.ng.core, global.ng.common, global.ng.router));
}(this, function (exports, core, common, router) { 'use strict';
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common')) :
typeof define === 'function' && define.amd ? define('ngx-loadable', ['exports', '@angular/core', '@angular/common'], factory) :
(global = global || self, factory(global['ngx-loadable'] = {}, global.ng.core, global.ng.common));
}(this, function (exports, core, common) { 'use strict';

@@ -212,7 +212,5 @@ /*! *****************************************************************************

var LOADABLE_ROOT_OPTIONS = new core.InjectionToken('LOADABLE_ROOT_OPTIONS');
/** @type {?} */
var LOG_PREFIX = 'ngx-loadable';
var LoadableService = /** @class */ (function () {
function LoadableService(loader, cfr) {
this.loader = loader;
function LoadableService(compiler, cfr) {
this.compiler = compiler;
this.cfr = cfr;

@@ -230,19 +228,5 @@ this.modules = [];

function (config) {
var _this = this;
config.forEach((/**
* @param {?} newModule
* @return {?}
*/
function (newModule) {
/** @type {?} */
var existingModule = _this.getModule(newModule.name);
if (existingModule.loadChildren) {
console.warn(
// tslint:disable-next-line:max-line-length
LOG_PREFIX + " - ModuleConfig with name '" + newModule.name + "' was previously added, it will not be added multiple times, continue...");
}
else {
_this.modules.push(newModule);
}
}));
if (config) {
this.modules = __spread(this.modules, config);
}
};

@@ -258,7 +242,9 @@ /**

function (module) {
return this.modules.find((/**
/** @type {?} */
var mod = this.modules.find((/**
* @param {?} m
* @return {?}
*/
function (m) { return m.name === module; })) || ((/** @type {?} */ ({})));
function (m) { return m.name === module; }));
return mod;
};

@@ -269,13 +255,2 @@ /**

*/
LoadableService.prototype.getModulePath = /**
* @param {?} module
* @return {?}
*/
function (module) {
return this.getModule(module).loadChildren;
};
/**
* @param {?} module
* @return {?}
*/
LoadableService.prototype.preload = /**

@@ -286,4 +261,11 @@ * @param {?} module

function (module) {
return this.loader
.load(this.getModulePath(module));
var _this = this;
if (typeof module === 'string') {
module = this.getModule(module).load;
}
return module().then((/**
* @param {?} Module
* @return {?}
*/
function (Module) { return _this.compiler.compileModuleAsync(Module); }));
};

@@ -305,3 +287,3 @@ /**

*/
function (m) { return m.name; }));
function (m) { return m.load; }));
}

@@ -329,5 +311,2 @@ return Promise.all(modules.map((/**

var factory;
if (!mr) {
return;
}
if (mr instanceof core.TemplateRef) {

@@ -337,6 +316,6 @@ vcr.remove();

}
if (((/** @type {?} */ (mr))).componentFactoryResolver) {
if (mr instanceof core.NgModuleRef) {
/** @type {?} */
var rootComponent = ((/** @type {?} */ (mr)))._bootstrapComponents[0];
factory = ((/** @type {?} */ (mr))).componentFactoryResolver.resolveComponentFactory(rootComponent);
factory = mr.componentFactoryResolver.resolveComponentFactory(rootComponent);
}

@@ -356,6 +335,6 @@ else {

LoadableService.ctorParameters = function () { return [
{ type: core.NgModuleFactoryLoader },
{ type: core.Compiler },
{ type: core.ComponentFactoryResolver }
]; };
/** @nocollapse */ LoadableService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(core.ɵɵinject(core.NgModuleFactoryLoader), core.ɵɵinject(core.ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
/** @nocollapse */ LoadableService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(core.ɵɵinject(core.Compiler), core.ɵɵinject(core.ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
return LoadableService;

@@ -370,3 +349,3 @@ }());

*/
LoadableService.prototype.loader;
LoadableService.prototype.compiler;
/**

@@ -384,8 +363,9 @@ * @type {?}

var LoadableComponent = /** @class */ (function () {
function LoadableComponent(inj, ls, el, options) {
function LoadableComponent(inj, ls, options, el) {
this.inj = inj;
this.ls = ls;
this.options = options;
this.el = el;
this.options = options;
this.show = false;
this.isElement = false;
this.init = new core.EventEmitter();

@@ -490,3 +470,5 @@ this.loading = false;

this.loading = true;
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
if (this.options.loadingComponent) {
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
}
if (this.timeout === 0) {

@@ -496,3 +478,3 @@ this._renderTimeoutTemplate();

else if (this.timeout > 0) {
this.timeoutRef = setTimeout((/**
setTimeout((/**
* @return {?}

@@ -510,5 +492,2 @@ */

function (mf) {
if (_this.timeoutRef) {
clearTimeout(_this.timeoutRef);
}
if (mf instanceof Error) {

@@ -548,4 +527,4 @@ return;

{ type: LoadableService },
{ type: core.ElementRef },
{ type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [LOADABLE_ROOT_OPTIONS,] }] }
{ type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [LOADABLE_ROOT_OPTIONS,] }] },
{ type: core.ElementRef }
]; };

@@ -556,8 +535,8 @@ LoadableComponent.propDecorators = {

timeout: [{ type: core.Input }],
loadingTemplate: [{ type: core.Input }],
errorTemplate: [{ type: core.Input }],
timeoutTemplate: [{ type: core.Input }],
isElement: [{ type: core.Input }],
init: [{ type: core.Output }],
content: [{ type: core.ViewChild, args: ['content', { read: core.ViewContainerRef, static: true },] }],
loadingTemplate: [{ type: core.ContentChild, args: ['loading', { read: core.TemplateRef, static: false },] }],
errorTemplate: [{ type: core.ContentChild, args: ['error', { read: core.TemplateRef, static: false },] }],
timeoutTemplate: [{ type: core.ContentChild, args: ['timedOut', { read: core.TemplateRef, static: false },] }]
content: [{ type: core.ViewChild, args: ['content', { read: core.ViewContainerRef, static: true },] }]
};

@@ -574,2 +553,8 @@ return LoadableComponent;

/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/** @type {?} */
LoadableComponent.prototype.isElement;

@@ -580,8 +565,2 @@ /** @type {?} */

LoadableComponent.prototype.content;
/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/**

@@ -600,4 +579,2 @@ * @type {?}

LoadableComponent.prototype.timedOut;
/** @type {?} */
LoadableComponent.prototype.timeoutRef;
/**

@@ -617,3 +594,3 @@ * @type {?}

*/
LoadableComponent.prototype.el;
LoadableComponent.prototype.options;
/**

@@ -623,3 +600,3 @@ * @type {?}

*/
LoadableComponent.prototype.options;
LoadableComponent.prototype.el;
}

@@ -656,3 +633,2 @@

{ provide: core.ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
router.provideRoutes(config.moduleConfigs),
]

@@ -677,4 +653,3 @@ };

{ provide: core.ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
router.provideRoutes(config.moduleConfigs),
]
],
};

@@ -688,5 +663,3 @@ };

],
providers: [
{ provide: core.NgModuleFactoryLoader, useClass: core.SystemJsNgModuleLoader }
],
providers: [],
exports: [LoadableComponent]

@@ -703,13 +676,2 @@ },] }

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @return {?}
*/
function matcher() {
return null;
}
exports.LOADABLE_CONFIG = LOADABLE_CONFIG;

@@ -720,3 +682,2 @@ exports.LOADABLE_ROOT_OPTIONS = LOADABLE_ROOT_OPTIONS;

exports.LoadableService = LoadableService;
exports.matcher = matcher;

@@ -723,0 +684,0 @@ Object.defineProperty(exports, '__esModule', { value: true });

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/router")):"function"==typeof define&&define.amd?define("ngx-loadable",["exports","@angular/core","@angular/common","@angular/router"],t):t((e=e||self)["ngx-loadable"]={},e.ng.core,e.ng.common,e.ng.router)}(this,(function(e,t,o,n){"use strict";function r(e,t){var o,n,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(o)throw new TypeError("Generator is already executing.");for(;a;)try{if(o=1,n&&(r=2&i[0]?n.return:i[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,i[1])).done)return r;switch(n=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(r=(r=a.trys).length>0&&r[r.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){a.label=i[1];break}if(6===i[0]&&a.label<r[1]){a.label=r[1],r=i;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(i);break}r[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{o=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}var i=new t.InjectionToken("LOADABLE_CONFIG"),a=new t.InjectionToken("LOADABLE_ROOT_OPTIONS"),s=function(){function e(e,t){this.loader=e,this.cfr=t,this.modules=[]}return e.prototype.addConfig=function(e){var t=this;e.forEach((function(e){t.getModule(e.name).loadChildren?console.warn("ngx-loadable - ModuleConfig with name '"+e.name+"' was previously added, it will not be added multiple times, continue..."):t.modules.push(e)}))},e.prototype.getModule=function(e){return this.modules.find((function(t){return t.name===e}))||{}},e.prototype.getModulePath=function(e){return this.getModule(e).loadChildren},e.prototype.preload=function(e){return this.loader.load(this.getModulePath(e))},e.prototype.preloadAll=function(e){var t=this;return e||(e=this.modules.map((function(e){return e.name}))),Promise.all(e.map((function(e){return t.preload(e)})))},e.prototype._renderVCR=function(e,o){var n;if(e){if(e instanceof t.TemplateRef)return o.remove(),o.createEmbeddedView(e);if(e.componentFactoryResolver){var r=e._bootstrapComponents[0];n=e.componentFactoryResolver.resolveComponentFactory(r)}else n=this.cfr.resolveComponentFactory(e);return o.remove(),o.createComponent(n)}},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:t.NgModuleFactoryLoader},{type:t.ComponentFactoryResolver}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(t.NgModuleFactoryLoader),t.ɵɵinject(t.ComponentFactoryResolver))},token:e,providedIn:"root"}),e}();var u=function(){function e(e,o,n,r){this.inj=e,this.ls=o,this.el=n,this.options=r,this.show=!1,this.init=new t.EventEmitter,this.loading=!1,this.loaded=!1,this.error=!1}return e.prototype.preload=function(){return e=this,t=void 0,n=function(){var e,t;return r(this,(function(o){switch(o.label){case 0:if(!this.module)return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,this.ls.preload(this.module)];case 2:return e=o.sent(),this.loaded=!0,this.timedOut=!1,this.mr=e.create(this.inj),[2,e];case 3:return t=o.sent(),this.error=t,this.ls._renderVCR(this.errorTemplate||this.ls.getModule(this.module).errorComponent||this.options.errorComponent,this.content),[2,t];case 4:return[2]}}))},new((o=void 0)||(o=Promise))((function(r,i){function a(e){try{u(n.next(e))}catch(e){i(e)}}function s(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){e.done?r(e.value):new o((function(t){t(e.value)})).then(a,s)}u((n=n.apply(e,t||[])).next())}));var e,t,o,n},e.prototype._render=function(){var e=this.ls.getModule(this.module);if(this.isElement||e.isElement||this.options.isElement){var t=document.createElement(e.name);return this.init.next({instance:t}),this.el.nativeElement.appendChild(t),void(this.loading=!1)}var o=this.ls._renderVCR(this.mr,this.content);this.init.next(o),this.loading=!1},e.prototype.reload=function(){this.timedOut=!1,this.error=void 0,this.loadFn()},e.prototype._renderTimeoutTemplate=function(){this.timedOut=!0,this.ls._renderVCR(this.timeoutTemplate||this.ls.getModule(this.module).timeoutTemplate||this.options.timeoutTemplate,this.content)},e.prototype.loadFn=function(){var e=this;"string"==typeof this.timeout&&(this.timeout=parseInt(this.timeout,10)),this.loading=!0,this.ls._renderVCR(this.loadingTemplate||this.ls.getModule(this.module).loadingComponent||this.options.loadingComponent,this.content),0===this.timeout?this._renderTimeoutTemplate():this.timeout>0&&(this.timeoutRef=setTimeout((function(){e._renderTimeoutTemplate()}),this.timeout)),this.preload().then((function(t){e.timeoutRef&&clearTimeout(e.timeoutRef),t instanceof Error||(e.loading=!1,e._render())}))},e.prototype.ngOnChanges=function(e){if(e.show&&e.show.currentValue){if(this.loaded)return void this._render();this.loadFn()}},e.decorators=[{type:t.Component,args:[{selector:"ngx-loadable",template:"\n <ng-template #content></ng-template>\n "}]}],e.ctorParameters=function(){return[{type:t.Injector},{type:s},{type:t.ElementRef},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[a]}]}]},e.propDecorators={module:[{type:t.Input}],show:[{type:t.Input}],timeout:[{type:t.Input}],isElement:[{type:t.Input}],init:[{type:t.Output}],content:[{type:t.ViewChild,args:["content",{read:t.ViewContainerRef,static:!0}]}],loadingTemplate:[{type:t.ContentChild,args:["loading",{read:t.TemplateRef,static:!1}]}],errorTemplate:[{type:t.ContentChild,args:["error",{read:t.TemplateRef,static:!1}]}],timeoutTemplate:[{type:t.ContentChild,args:["timedOut",{read:t.TemplateRef,static:!1}]}]},e}();var l=function(){function e(e,t){void 0===t&&(t=[]),t&&e.addConfig(t[t.length-1])}return e.forRoot=function(o){return void 0===o&&(o={}),{ngModule:e,providers:[{provide:i,useValue:{},multi:!0,deps:[s]},{provide:i,useValue:o.moduleConfigs,multi:!0},{provide:a,useValue:o.rootOptions||{}},{provide:t.ANALYZE_FOR_ENTRY_COMPONENTS,useValue:o,multi:!0},n.provideRoutes(o.moduleConfigs)]}},e.forFeature=function(o){return void 0===o&&(o={}),{ngModule:e,providers:[{provide:i,useValue:{},multi:!0,deps:[s]},{provide:i,useValue:o.moduleConfigs,multi:!0},{provide:t.ANALYZE_FOR_ENTRY_COMPONENTS,useValue:o,multi:!0},n.provideRoutes(o.moduleConfigs)]}},e.decorators=[{type:t.NgModule,args:[{declarations:[u],imports:[o.CommonModule],providers:[{provide:t.NgModuleFactoryLoader,useClass:t.SystemJsNgModuleLoader}],exports:[u]}]}],e.ctorParameters=function(){return[{type:s},{type:Array,decorators:[{type:t.Optional},{type:t.Inject,args:[i]}]}]},e}();e.LOADABLE_CONFIG=i,e.LOADABLE_ROOT_OPTIONS=a,e.LoadableComponent=u,e.LoadableModule=l,e.LoadableService=s,e.matcher=function(){return null},Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common")):"function"==typeof define&&define.amd?define("ngx-loadable",["exports","@angular/core","@angular/common"],t):t((e=e||self)["ngx-loadable"]={},e.ng.core,e.ng.common)}(this,function(e,t,o){"use strict";function n(e,t){var o,n,r,i,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){return function(i){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,n&&(r=2&i[0]?n.return:i[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,i[1])).done)return r;switch(n=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,n=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){s.label=i[1];break}if(6===i[0]&&s.label<r[1]){s.label=r[1],r=i;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(i);break}r[2]&&s.ops.pop(),s.trys.pop();continue}i=t.call(e,s)}catch(e){i=[6,e],n=0}finally{o=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,l])}}}function r(e,t){var o="function"==typeof Symbol&&e[Symbol.iterator];if(!o)return e;var n,r,i=o.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return s}var i=new t.InjectionToken("LOADABLE_CONFIG"),s=new t.InjectionToken("LOADABLE_ROOT_OPTIONS"),l=function(){function e(e,t){this.compiler=e,this.cfr=t,this.modules=[]}return e.prototype.addConfig=function(e){e&&(this.modules=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(r(arguments[t]));return e}(this.modules,e))},e.prototype.getModule=function(e){return this.modules.find(function(t){return t.name===e})},e.prototype.preload=function(e){var t=this;return"string"==typeof e&&(e=this.getModule(e).load),e().then(function(e){return t.compiler.compileModuleAsync(e)})},e.prototype.preloadAll=function(e){var t=this;return e||(e=this.modules.map(function(e){return e.load})),Promise.all(e.map(function(e){return t.preload(e)}))},e.prototype._renderVCR=function(e,o){var n;if(e instanceof t.TemplateRef)return o.remove(),o.createEmbeddedView(e);if(e instanceof t.NgModuleRef){var r=e._bootstrapComponents[0];n=e.componentFactoryResolver.resolveComponentFactory(r)}else n=this.cfr.resolveComponentFactory(e);return o.remove(),o.createComponent(n)},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:t.Compiler},{type:t.ComponentFactoryResolver}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(t.Compiler),t.ɵɵinject(t.ComponentFactoryResolver))},token:e,providedIn:"root"}),e}();var u=function(){function e(e,o,n,r){this.inj=e,this.ls=o,this.options=n,this.el=r,this.show=!1,this.isElement=!1,this.init=new t.EventEmitter,this.loading=!1,this.loaded=!1,this.error=!1}return e.prototype.preload=function(){return e=this,t=void 0,r=function(){var e,t;return n(this,function(o){switch(o.label){case 0:if(!this.module)return[2];o.label=1;case 1:return o.trys.push([1,3,,4]),[4,this.ls.preload(this.module)];case 2:return e=o.sent(),this.loaded=!0,this.timedOut=!1,this.mr=e.create(this.inj),[2,e];case 3:return t=o.sent(),this.error=t,this.ls._renderVCR(this.errorTemplate||this.ls.getModule(this.module).errorComponent||this.options.errorComponent,this.content),[2,t];case 4:return[2]}})},new((o=void 0)||(o=Promise))(function(n,i){function s(e){try{u(r.next(e))}catch(e){i(e)}}function l(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){e.done?n(e.value):new o(function(t){t(e.value)}).then(s,l)}u((r=r.apply(e,t||[])).next())});var e,t,o,r},e.prototype._render=function(){var e=this.ls.getModule(this.module);if(this.isElement||e.isElement||this.options.isElement){var t=document.createElement(e.name);return this.init.next({instance:t}),this.el.nativeElement.appendChild(t),void(this.loading=!1)}var o=this.ls._renderVCR(this.mr,this.content);this.init.next(o),this.loading=!1},e.prototype.reload=function(){this.timedOut=!1,this.error=void 0,this.loadFn()},e.prototype._renderTimeoutTemplate=function(){this.timedOut=!0,this.ls._renderVCR(this.timeoutTemplate||this.ls.getModule(this.module).timeoutTemplate||this.options.timeoutTemplate,this.content)},e.prototype.loadFn=function(){var e=this;"string"==typeof this.timeout&&(this.timeout=parseInt(this.timeout,10)),this.loading=!0,this.options.loadingComponent&&this.ls._renderVCR(this.loadingTemplate||this.ls.getModule(this.module).loadingComponent||this.options.loadingComponent,this.content),0===this.timeout?this._renderTimeoutTemplate():this.timeout>0&&setTimeout(function(){e._renderTimeoutTemplate()},this.timeout),this.preload().then(function(t){t instanceof Error||(e.loading=!1,e._render())})},e.prototype.ngOnChanges=function(e){if(e.show&&e.show.currentValue){if(this.loaded)return void this._render();this.loadFn()}},e.decorators=[{type:t.Component,args:[{selector:"ngx-loadable",template:"\n <ng-template #content></ng-template>\n "}]}],e.ctorParameters=function(){return[{type:t.Injector},{type:l},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[s]}]},{type:t.ElementRef}]},e.propDecorators={module:[{type:t.Input}],show:[{type:t.Input}],timeout:[{type:t.Input}],loadingTemplate:[{type:t.Input}],errorTemplate:[{type:t.Input}],timeoutTemplate:[{type:t.Input}],isElement:[{type:t.Input}],init:[{type:t.Output}],content:[{type:t.ViewChild,args:["content",{read:t.ViewContainerRef,static:!0}]}]},e}();var a=function(){function e(e,t){void 0===t&&(t=[]),t&&e.addConfig(t[t.length-1])}return e.forRoot=function(o){return void 0===o&&(o={}),{ngModule:e,providers:[{provide:i,useValue:{},multi:!0,deps:[l]},{provide:i,useValue:o.moduleConfigs,multi:!0},{provide:s,useValue:o.rootOptions||{}},{provide:t.ANALYZE_FOR_ENTRY_COMPONENTS,useValue:o,multi:!0}]}},e.forFeature=function(o){return void 0===o&&(o={}),{ngModule:e,providers:[{provide:i,useValue:{},multi:!0,deps:[l]},{provide:i,useValue:o.moduleConfigs,multi:!0},{provide:t.ANALYZE_FOR_ENTRY_COMPONENTS,useValue:o,multi:!0}]}},e.decorators=[{type:t.NgModule,args:[{declarations:[u],imports:[o.CommonModule],providers:[],exports:[u]}]}],e.ctorParameters=function(){return[{type:l},{type:Array,decorators:[{type:t.Optional},{type:t.Inject,args:[i]}]}]},e}();e.LOADABLE_CONFIG=i,e.LOADABLE_ROOT_OPTIONS=s,e.LoadableComponent=u,e.LoadableModule=a,e.LoadableService=l,Object.defineProperty(e,"__esModule",{value:!0})});
//# sourceMappingURL=ngx-loadable.umd.min.js.map

@@ -6,3 +6,3 @@ /**

import * as tslib_1 from "tslib";
import { Component, Input, ViewContainerRef, Injector, ViewChild, Output, EventEmitter, TemplateRef, ContentChild, ElementRef, Optional, Inject } from '@angular/core';
import { Component, Input, ViewContainerRef, Injector, ViewChild, Output, EventEmitter, Optional, Inject, ElementRef, TemplateRef, } from '@angular/core';
import { LoadableService, LOADABLE_ROOT_OPTIONS } from './loadable.service';

@@ -13,11 +13,12 @@ export class LoadableComponent {

* @param {?} ls
* @param {?} options
* @param {?} el
* @param {?} options
*/
constructor(inj, ls, el, options) {
constructor(inj, ls, options, el) {
this.inj = inj;
this.ls = ls;
this.options = options;
this.el = el;
this.options = options;
this.show = false;
this.isElement = false;
this.init = new EventEmitter();

@@ -96,3 +97,5 @@ this.loading = false;

this.loading = true;
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
if (this.options.loadingComponent) {
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
}
if (this.timeout === 0) {

@@ -102,3 +105,3 @@ this._renderTimeoutTemplate();

else if (this.timeout > 0) {
this.timeoutRef = setTimeout((/**
setTimeout((/**
* @return {?}

@@ -116,5 +119,2 @@ */

(mf) => {
if (this.timeoutRef) {
clearTimeout(this.timeoutRef);
}
if (mf instanceof Error) {

@@ -153,4 +153,4 @@ return;

{ type: LoadableService },
{ type: ElementRef },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] }
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] },
{ type: ElementRef }
];

@@ -161,8 +161,8 @@ LoadableComponent.propDecorators = {

timeout: [{ type: Input }],
loadingTemplate: [{ type: Input }],
errorTemplate: [{ type: Input }],
timeoutTemplate: [{ type: Input }],
isElement: [{ type: Input }],
init: [{ type: Output }],
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }],
loadingTemplate: [{ type: ContentChild, args: ['loading', { read: TemplateRef, static: false },] }],
errorTemplate: [{ type: ContentChild, args: ['error', { read: TemplateRef, static: false },] }],
timeoutTemplate: [{ type: ContentChild, args: ['timedOut', { read: TemplateRef, static: false },] }]
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }]
};

@@ -177,2 +177,8 @@ if (false) {

/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/** @type {?} */
LoadableComponent.prototype.isElement;

@@ -183,8 +189,2 @@ /** @type {?} */

LoadableComponent.prototype.content;
/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/**

@@ -203,4 +203,2 @@ * @type {?}

LoadableComponent.prototype.timedOut;
/** @type {?} */
LoadableComponent.prototype.timeoutRef;
/**

@@ -220,3 +218,3 @@ * @type {?}

*/
LoadableComponent.prototype.el;
LoadableComponent.prototype.options;
/**

@@ -226,4 +224,4 @@ * @type {?}

*/
LoadableComponent.prototype.options;
LoadableComponent.prototype.el;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUNMLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsU0FBUyxFQUdULE1BQU0sRUFDTixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFVNUUsTUFBTSxPQUFPLGlCQUFpQjs7Ozs7OztJQWtCNUIsWUFDVSxHQUFhLEVBQ2IsRUFBbUIsRUFDbkIsRUFBYyxFQUM2QixPQUE2QjtRQUh4RSxRQUFHLEdBQUgsR0FBRyxDQUFVO1FBQ2IsT0FBRSxHQUFGLEVBQUUsQ0FBaUI7UUFDbkIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUM2QixZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQXBCekUsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUdaLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBT3BDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLFVBQUssR0FBRyxLQUFLLENBQUM7SUFTWCxDQUFDOzs7O0lBRVMsT0FBTzs7WUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLE9BQU87YUFDUjtZQUVELElBQUk7O3NCQUNJLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUNuQixJQUFJLENBQUMsUUFBUSxHQUFH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SSxFQUFFOzhCQUM3RCxZQUFZLFNBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOzRCQUM1RCxZQUFZLFNBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOzhCQUMxRCxZQUFZLFNBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOzs7O0lBVDlELG1DQUF3Qjs7SUFDeEIsaUNBQXNCOztJQUN0QixvQ0FBcUM7O0lBQ3JDLHNDQUE0Qjs7SUFDNUIsaUNBQW9DOztJQUVwQyxvQ0FBMEY7O0lBQzFGLDRDQUFpRzs7SUFDakcsMENBQTZGOztJQUM3Riw0Q0FBa0c7Ozs7O0lBQ2xHLCtCQUE2Qjs7SUFDN0Isb0NBQWdCOztJQUNoQixtQ0FBZTs7SUFDZixrQ0FBYzs7SUFDZCxxQ0FBa0I7O0lBQ2xCLHVDQUFXOzs7OztJQUdULGdDQUFxQjs7Ozs7SUFDckIsK0JBQTJCOzs7OztJQUMzQiwrQkFBc0I7Ozs7O0lBQ3RCLG9DQUFnRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgTmdNb2R1bGVSZWYsXG4gIElucHV0LFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBJbmplY3RvcixcbiAgVmlld0NoaWxkLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBUZW1wbGF0ZVJlZixcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBPcHRpb25hbCxcbiAgSW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9hZGFibGVTZXJ2aWNlLCBMT0FEQUJMRV9ST09UX09QVElPTlMgfSBmcm9tICcuL2xvYWRhYmxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSUxvYWRhYmxlUm9vdE9wdGlvbnMgfSBmcm9tICcuL2xvYWRhYmxlLmNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC1sb2FkYWJsZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlICNjb250ZW50PjwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIExvYWRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgbW9kdWxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3cgPSBmYWxzZTtcbiAgQElucHV0KCkgdGltZW91dDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBpc0VsZW1lbnQ6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBjb250ZW50OiBWaWV3Q29udGFpbmVyUmVmO1xuICBAQ29udGVudENoaWxkKCdsb2FkaW5nJywgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiBmYWxzZSB9KSBsb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBDb250ZW50Q2hpbGQoJ2Vycm9yJywgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiBmYWxzZSB9KSBlcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAQ29udGVudENoaWxkKCd0aW1lZE91dCcsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogZmFsc2UgfSkgdGltZW91dFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwcml2YXRlIG1yOiBOZ01vZHVsZVJlZjxhbnk+O1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGxvYWRlZCA9IGZhbHNlO1xuICBlcnJvciA9IGZhbHNlO1xuICB0aW1lZE91dDogYm9vbGVhbjtcbiAgdGltZW91dFJlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluajogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChMT0FEQUJMRV9ST09UX09QVElPTlMpIHByaXZhdGUgb3B0aW9uczogSUxvYWRhYmxlUm9vdE9wdGlvbnMsXG4gICkge31cblxuICBwdWJsaWMgYXN5bmMgcHJlbG9hZCgpIHtcbiAgICBpZiAoIXRoaXMubW9kdWxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG1mID0gYXdhaXQgdGhpcy5scy5wcmVsb2FkKHRoaXMubW9kdWxlKTtcbiAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMudGltZWRPdXQgPSBmYWxzZTtcbiAgICAgIHRoaXMubXIgPSBtZi5jcmVhdGUodGhpcy5pbmopO1xuICAgICAgcmV0dXJuIG1mO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yID0gZXJyb3I7XG4gICAgICB0aGlzLmxzLl9yZW5kZXJWQ1IoXG4gICAgICAgIHRoaXMuZXJyb3JUZW1wbGF0ZSB8fCB0aGlzLmxzLmdldE1vZHVsZSh0aGlzLm1vZHVsZSkuZXJyb3JDb21wb25lbnQgfHwgdGhpcy5vcHRpb25zLmVycm9yQ29tcG9uZW50LFxuICAgICAgICB0aGlzLmNvbnRlbnQsXG4gICAgICApO1xuICAgICAgcmV0dXJuIGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlcigpIHtcbiAgICBjb25zdCBtb2R1bGUgPSB0aGlzLmxzLmdldE1vZHVsZSh0aGlzLm1vZHVsZSk7XG4gICAgaWYgKHRoaXMuaXNFbGVtZW50IHx8IG1vZHVsZS5pc0VsZW1lbnQgfHwgdGhpcy5vcHRpb25zLmlzRWxlbWVudCkge1xuICAgICAgY29uc3QgY29tcG9uZW50SW5zdGFuY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KG1vZHVsZS5uYW1lKTtcbiAgICAgIHRoaXMuaW5pdC5uZXh0KHtcbiAgICAgICAgaW5zdGFuY2U6IGNvbXBvbmVudEluc3RhbmNlLFxuICAgICAgfSk7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoY29tcG9uZW50SW5zdGFuY2UpO1xuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMubHMuX3JlbmRlclZDUih0aGlzLm1yLCB0aGlzLmNvbnRlbnQpO1xuICAgIHRoaXMuaW5pdC5uZXh0KGNvbXBvbmVudFJlZik7XG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gIH1cblxuICByZWxvYWQoKSB7XG4gICAgdGhpcy50aW1lZE91dCA9IGZhbHNlO1xuICAgIHRoaXMuZXJyb3IgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5sb2FkRm4oKTtcbiAgfVxuXG4gIF9yZW5kZXJUaW1lb3V0VGVtcGxhdGUoKSB7XG4gICAgdGhpcy50aW1lZE91dCA9IHRydWU7XG4gICAgdGhpcy5scy5fcmVuZGVyVkNSKFxuICAgICAgdGhpcy50aW1lb3V0VGVtcGxhdGUgfHwgdGhpcy5scy5nZXRNb2R1bGUodGhpcy5tb2R1bGUpLnRpbWVvdXRUZW1wbGF0ZSB8fCB0aGlzLm9wdGlvbnMudGltZW91dFRlbXBsYXRlLFxuICAgICAgdGhpcy5jb250ZW50XG4gICAgKTtcbiAgfVxuXG4gIGxvYWRGbigpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMudGltZW91dCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMudGltZW91dCA9IHBhcnNlSW50KHRoaXMudGltZW91dCwgMTApO1xuICAgIH1cbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgIHRoaXMubG9hZGluZ1RlbXBsYXRlIHx8IHRoaXMubHMuZ2V0TW9kdWxlKHRoaXMubW9kdWxlKS5sb2FkaW5nQ29tcG9uZW50IHx8IHRoaXMub3B0aW9ucy5sb2FkaW5nQ29tcG9uZW50LFxuICAgICAgdGhpcy5jb250ZW50LFxuICAgICk7XG4gICAgaWYgKHRoaXMudGltZW91dCA9PT0gMCkge1xuICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnRpbWVvdXQgPiAwKSB7XG4gICAgICB0aGlzLnRpbWVvdXRSZWYgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgICB9LCB0aGlzLnRpbWVvdXQpO1xuICAgIH1cbiAgICB0aGlzLnByZWxvYWQoKVxuICAgICAgLnRoZW4oKG1mKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnRpbWVvdXRSZWYpIHtcbiAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0UmVmKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWYgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fcmVuZGVyKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5zaG93ICYmIGNoYW5nZXMuc2hvdy5jdXJyZW50VmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLmxvYWRlZCkge1xuICAgICAgICB0aGlzLl9yZW5kZXIoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5sb2FkRm4oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUNMLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsU0FBUyxFQUdULE1BQU0sRUFDTixZQUFZLEVBQ1osUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQVU1RSxNQUFNLE9BQU8saUJBQWlCOzs7Ozs7O0lBa0I1QixZQUNVLEdBQWEsRUFDYixFQUFtQixFQUN3QixPQUE2QixFQUN4RSxFQUFjO1FBSGQsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUNiLE9BQUUsR0FBRixFQUFFLENBQWlCO1FBQ3dCLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBQ3hFLE9BQUUsR0FBRixFQUFFLENBQVk7UUFwQmYsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUtiLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDakIsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLcEMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsVUFBSyxHQUFHLEtBQUssQ0FBQztJQVFYLENBQUM7Ozs7SUFFUyxPQUFPOztZQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsT0FBTzthQUNSO1lBRUQsSUFBSTs7c0JBQ0ksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ25CLElBQUks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QUU7Ozs7SUFUOUQsbUNBQXdCOztJQUN4QixpQ0FBc0I7O0lBQ3RCLG9DQUFxQzs7SUFDckMsNENBQTJDOztJQUMzQywwQ0FBeUM7O0lBQ3pDLDRDQUEyQzs7SUFDM0Msc0NBQTJCOztJQUMzQixpQ0FBb0M7O0lBRXBDLG9DQUEwRjs7Ozs7SUFFMUYsK0JBQTZCOztJQUM3QixvQ0FBZ0I7O0lBQ2hCLG1DQUFlOztJQUNmLGtDQUFjOztJQUNkLHFDQUFrQjs7Ozs7SUFHaEIsZ0NBQXFCOzs7OztJQUNyQiwrQkFBMkI7Ozs7O0lBQzNCLG9DQUFnRjs7Ozs7SUFDaEYsK0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBOZ01vZHVsZVJlZixcbiAgSW5wdXQsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIEluamVjdG9yLFxuICBWaWV3Q2hpbGQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9wdGlvbmFsLFxuICBJbmplY3QsXG4gIEVsZW1lbnRSZWYsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvYWRhYmxlU2VydmljZSwgTE9BREFCTEVfUk9PVF9PUFRJT05TIH0gZnJvbSAnLi9sb2FkYWJsZS5zZXJ2aWNlJztcbmltcG9ydCB7IElMb2FkYWJsZVJvb3RPcHRpb25zIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbG9hZGFibGUnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZSAjY29udGVudD48L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdHlsZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIG1vZHVsZTogc3RyaW5nO1xuICBASW5wdXQoKSBzaG93ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpbWVvdXQ6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgbG9hZGluZ1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSBlcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSB0aW1lb3V0VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBJbnB1dCgpIGlzRWxlbWVudCA9IGZhbHNlO1xuICBAT3V0cHV0KCkgaW5pdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdjb250ZW50JywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSkgY29udGVudDogVmlld0NvbnRhaW5lclJlZjtcblxuICBwcml2YXRlIG1yOiBOZ01vZHVsZVJlZjxhbnk+O1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGxvYWRlZCA9IGZhbHNlO1xuICBlcnJvciA9IGZhbHNlO1xuICB0aW1lZE91dDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluajogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTE9BREFCTEVfUk9PVF9PUFRJT05TKSBwcml2YXRlIG9wdGlvbnM6IElMb2FkYWJsZVJvb3RPcHRpb25zLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWZcbiAgKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBwcmVsb2FkKCkge1xuICAgIGlmICghdGhpcy5tb2R1bGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgbWYgPSBhd2FpdCB0aGlzLmxzLnByZWxvYWQodGhpcy5tb2R1bGUpO1xuICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xuICAgICAgdGhpcy50aW1lZE91dCA9IGZhbHNlO1xuICAgICAgdGhpcy5tciA9IG1mLmNyZWF0ZSh0aGlzLmluaik7XG4gICAgICByZXR1cm4gbWY7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjtcbiAgICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgICAgdGhpcy5lcnJvclRlbXBsYXRlIHx8IHRoaXMubHMuZ2V0TW9kdWxlKHRoaXMubW9kdWxlKS5lcnJvckNvbXBvbmVudCB8fCB0aGlzLm9wdGlvbnMuZXJyb3JDb21wb25lbnQsXG4gICAgICAgIHRoaXMuY29udGVudFxuICAgICAgKTtcbiAgICAgIHJldHVybiBlcnJvcjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXIoKSB7XG4gICAgY29uc3QgbW9kdWxlID0gdGhpcy5scy5nZXRNb2R1bGUodGhpcy5tb2R1bGUpO1xuICAgIGlmICh0aGlzLmlzRWxlbWVudCB8fCBtb2R1bGUuaXNFbGVtZW50IHx8IHRoaXMub3B0aW9ucy5pc0VsZW1lbnQpIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudEluc3RhbmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChtb2R1bGUubmFtZSk7XG4gICAgICB0aGlzLmluaXQubmV4dCh7XG4gICAgICAgIGluc3RhbmNlOiBjb21wb25lbnRJbnN0YW5jZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGNvbXBvbmVudEluc3RhbmNlKTtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmxzLl9yZW5kZXJWQ1IodGhpcy5tciwgdGhpcy5jb250ZW50KTtcbiAgICB0aGlzLmluaXQubmV4dChjb21wb25lbnRSZWYpO1xuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICB9XG5cbiAgcmVsb2FkKCkge1xuICAgIHRoaXMudGltZWRPdXQgPSBmYWxzZTtcbiAgICB0aGlzLmVycm9yID0gdW5kZWZpbmVkO1xuICAgIHRoaXMubG9hZEZuKCk7XG4gIH1cblxuICBfcmVuZGVyVGltZW91dFRlbXBsYXRlKCkge1xuICAgIHRoaXMudGltZWRPdXQgPSB0cnVlO1xuICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgIHRoaXMudGltZW91dFRlbXBsYXRlIHx8IHRoaXMubHMuZ2V0TW9kdWxlKHRoaXMubW9kdWxlKS50aW1lb3V0VGVtcGxhdGUgfHwgdGhpcy5vcHRpb25zLnRpbWVvdXRUZW1wbGF0ZSxcbiAgICAgIHRoaXMuY29udGVudFxuICAgICk7XG4gIH1cblxuICBsb2FkRm4oKSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLnRpbWVvdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLnRpbWVvdXQgPSBwYXJzZUludCh0aGlzLnRpbWVvdXQsIDEwKTtcbiAgICB9XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5vcHRpb25zLmxvYWRpbmdDb21wb25lbnQpIHtcbiAgICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgICAgdGhpcy5sb2FkaW5nVGVtcGxhdGUgfHwgdGhpcy5scy5nZXRNb2R1bGUodGhpcy5tb2R1bGUpLmxvYWRpbmdDb21wb25lbnQgfHwgdGhpcy5vcHRpb25zLmxvYWRpbmdDb21wb25lbnQsXG4gICAgICAgIHRoaXMuY29udGVudFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudGltZW91dCA9PT0gMCkge1xuICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnRpbWVvdXQgPiAwKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgICB9LCB0aGlzLnRpbWVvdXQpO1xuICAgIH1cblxuICAgIHRoaXMucHJlbG9hZCgpXG4gICAgICAudGhlbigobWYpID0+IHtcbiAgICAgICAgaWYgKG1mIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3JlbmRlcigpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMuc2hvdyAmJiBjaGFuZ2VzLnNob3cuY3VycmVudFZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5sb2FkZWQpIHtcbiAgICAgICAgdGhpcy5fcmVuZGVyKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMubG9hZEZuKCk7XG4gICAgfVxuICB9XG59XG4iXX0=

@@ -12,6 +12,4 @@ /**

ModuleConfig.prototype.name;
/** @type {?|undefined} */
ModuleConfig.prototype.loadChildren;
/** @type {?} */
ModuleConfig.prototype.matcher;
ModuleConfig.prototype.load;
/** @type {?|undefined} */

@@ -24,2 +22,4 @@ ModuleConfig.prototype.loadingComponent;

/** @type {?|undefined} */
ModuleConfig.prototype.timeout;
/** @type {?|undefined} */
ModuleConfig.prototype.isElement;

@@ -30,5 +30,23 @@ }

*/
export function ExtraOptions() { }
if (false) {
/** @type {?|undefined} */
ExtraOptions.prototype.timeout;
/** @type {?|undefined} */
ExtraOptions.prototype.loadingComponent;
/** @type {?|undefined} */
ExtraOptions.prototype.errorComponent;
/** @type {?|undefined} */
ExtraOptions.prototype.timeoutTemplate;
/** @type {?|undefined} */
ExtraOptions.prototype.elements;
}
/**
* @record
*/
export function ILoadableRootOptions() { }
if (false) {
/** @type {?|undefined} */
ILoadableRootOptions.prototype.timeout;
/** @type {?|undefined} */
ILoadableRootOptions.prototype.loadingComponent;

@@ -60,2 +78,2 @@ /** @type {?|undefined} */

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsa0NBUUM7OztJQVBDLDRCQUFhOztJQUNiLG9DQUFzQjs7SUFDdEIsK0JBQW9COztJQUNwQix3Q0FBNkI7O0lBQzdCLHNDQUEyQjs7SUFDM0IsdUNBQTRCOztJQUM1QixpQ0FBb0I7Ozs7O0FBR3RCLDBDQUtDOzs7SUFKQyxnREFBNkI7O0lBQzdCLDhDQUEyQjs7SUFDM0IsK0NBQTRCOztJQUM1Qix5Q0FBb0I7Ozs7O0FBR3RCLHFDQUVDOzs7SUFEQyx3Q0FBK0I7Ozs7O0FBR2pDLHlDQUdDOzs7SUFGQyw0Q0FBK0I7O0lBQy9CLDBDQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVDb25maWcge1xuICBuYW1lOiBzdHJpbmc7XG4gIGxvYWRDaGlsZHJlbj86IHN0cmluZztcbiAgbWF0Y2hlcjogKCkgPT4gbnVsbDtcbiAgbG9hZGluZ0NvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgZXJyb3JDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIHRpbWVvdXRUZW1wbGF0ZT86IFR5cGU8YW55PjtcbiAgaXNFbGVtZW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9hZGFibGVSb290T3B0aW9ucyB7XG4gIGxvYWRpbmdDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIGVycm9yQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICB0aW1lb3V0VGVtcGxhdGU/OiBUeXBlPGFueT47XG4gIGlzRWxlbWVudD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvYWRhYmxlQ29uZmlnIHtcbiAgbW9kdWxlQ29uZmlncz86IE1vZHVsZUNvbmZpZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2FkYWJsZVJvb3RDb25maWcge1xuICBtb2R1bGVDb25maWdzPzogTW9kdWxlQ29uZmlnW107XG4gIHJvb3RPcHRpb25zPzogSUxvYWRhYmxlUm9vdE9wdGlvbnM7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa0NBUUM7OztJQVBDLDRCQUFhOztJQUNiLDRCQUErQjs7SUFDL0Isd0NBQTZCOztJQUM3QixzQ0FBMkI7O0lBQzNCLHVDQUE0Qjs7SUFDNUIsK0JBQWlCOztJQUNqQixpQ0FBb0I7Ozs7O0FBR3RCLGtDQU1DOzs7SUFMQywrQkFBaUI7O0lBQ2pCLHdDQUE2Qjs7SUFDN0Isc0NBQTJCOztJQUMzQix1Q0FBNEI7O0lBQzVCLGdDQUFtQjs7Ozs7QUFLckIsMENBTUM7OztJQUxDLHVDQUFpQjs7SUFDakIsZ0RBQTZCOztJQUM3Qiw4Q0FBMkI7O0lBQzNCLCtDQUE0Qjs7SUFDNUIseUNBQW9COzs7OztBQUd0QixxQ0FFQzs7O0lBREMsd0NBQStCOzs7OztBQUdqQyx5Q0FHQzs7O0lBRkMsNENBQStCOztJQUMvQiwwQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IHR5cGUgRnVuY3Rpb25SZXR1cm5pbmdQcm9taXNlID0gKCkgPT4gUHJvbWlzZTxhbnk+O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZHVsZUNvbmZpZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgbG9hZDogRnVuY3Rpb25SZXR1cm5pbmdQcm9taXNlO1xuICBsb2FkaW5nQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICBlcnJvckNvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgdGltZW91dFRlbXBsYXRlPzogVHlwZTxhbnk+O1xuICB0aW1lb3V0PzogbnVtYmVyO1xuICBpc0VsZW1lbnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4dHJhT3B0aW9ucyB7XG4gIHRpbWVvdXQ/OiBudW1iZXI7XG4gIGxvYWRpbmdDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIGVycm9yQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICB0aW1lb3V0VGVtcGxhdGU/OiBUeXBlPGFueT47XG4gIGVsZW1lbnRzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgTW9kdWxlc0NvbmZpZyA9IE1vZHVsZUNvbmZpZ1tdO1xuXG5leHBvcnQgaW50ZXJmYWNlIElMb2FkYWJsZVJvb3RPcHRpb25zIHtcbiAgdGltZW91dD86IG51bWJlcjtcbiAgbG9hZGluZ0NvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgZXJyb3JDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIHRpbWVvdXRUZW1wbGF0ZT86IFR5cGU8YW55PjtcbiAgaXNFbGVtZW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9hZGFibGVDb25maWcge1xuICBtb2R1bGVDb25maWdzPzogTW9kdWxlQ29uZmlnW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvYWRhYmxlUm9vdENvbmZpZyB7XG4gIG1vZHVsZUNvbmZpZ3M/OiBNb2R1bGVDb25maWdbXTtcbiAgcm9vdE9wdGlvbnM/OiBJTG9hZGFibGVSb290T3B0aW9ucztcbn1cbiJdfQ==

@@ -5,5 +5,4 @@ /**

*/
import { NgModule, Inject, Optional, NgModuleFactoryLoader, SystemJsNgModuleLoader, ANALYZE_FOR_ENTRY_COMPONENTS } from '@angular/core';
import { NgModule, Inject, Optional, ANALYZE_FOR_ENTRY_COMPONENTS } from '@angular/core';
import { CommonModule } from '@angular/common';
import { provideRoutes } from '@angular/router';
import { LoadableComponent } from './loadable.component';

@@ -34,3 +33,2 @@ import { LOADABLE_CONFIG, LoadableService, LOADABLE_ROOT_OPTIONS } from './loadable.service';

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]

@@ -50,4 +48,3 @@ };

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]
],
};

@@ -62,5 +59,3 @@ }

],
providers: [
{ provide: NgModuleFactoryLoader, useClass: SystemJsNgModuleLoader }
],
providers: [],
exports: [LoadableComponent]

@@ -74,2 +69,2 @@ },] }

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLDRCQUE0QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQWE3RixNQUFNLE9BQU8sY0FBYzs7Ozs7SUEwQnpCLFlBQ0UsRUFBbUIsRUFDa0IsVUFBNEIsRUFBRTtRQUVuRSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTztTQUNSO1FBRUQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7Ozs7O0lBbENELE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBOEIsRUFBRTtRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUU7Z0JBQ2hGLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUN6RSxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7Z0JBQ3RFLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtnQkFDeEUsYUFBYSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7YUFDcEM7U0FDRixDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLFNBQTBCLEVBQUU7UUFDNUMsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNoRixFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtnQkFDekUsRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUN4RSxhQUFhLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQzthQUNwQztTQUNGLENBQUM7SUFDSixDQUFDOzs7WUFsQ0YsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO2dCQUNqQyxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtpQkFDYjtnQkFDRCxTQUFTLEVBQUU7b0JBQ1QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFO2lCQUNyRTtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzthQUM3Qjs7OztZQVp5QixlQUFlO3dDQXlDcEMsUUFBUSxZQUFJLE1BQU0sU0FBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIEluamVjdCwgT3B0aW9uYWwsIE5nTW9kdWxlRmFjdG9yeUxvYWRlciwgU3lzdGVtSnNOZ01vZHVsZUxvYWRlciwgQU5BTFlaRV9GT1JfRU5UUllfQ09NUE9ORU5UUyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBwcm92aWRlUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgTG9hZGFibGVDb21wb25lbnQgfSBmcm9tICcuL2xvYWRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMT0FEQUJMRV9DT05GSUcsIExvYWRhYmxlU2VydmljZSwgTE9BREFCTEVfUk9PVF9PUFRJT05TIH0gZnJvbSAnLi9sb2FkYWJsZS5zZXJ2aWNlJztcbmltcG9ydCB7IElMb2FkYWJsZUNvbmZpZywgTW9kdWxlQ29uZmlnLCBJTG9hZGFibGVSb290Q29uZmlnIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtMb2FkYWJsZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBOZ01vZHVsZUZhY3RvcnlMb2FkZXIsIHVzZUNsYXNzOiBTeXN0ZW1Kc05nTW9kdWxlTG9hZGVyIH1cbiAgXSxcbiAgZXhwb3J0czogW0xvYWRhYmxlQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZzogSUxvYWRhYmxlUm9vdENvbmZpZyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVycyAge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTG9hZGFibGVNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBMT0FEQUJMRV9DT05GSUcsIHVzZVZhbHVlOiB7fSwgbXVsdGk6IHRydWUsIGRlcHM6IFtMb2FkYWJsZVNlcnZpY2VdIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZTogY29uZmlnLm1vZHVsZUNvbmZpZ3MsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfUk9PVF9PUFRJT05TLCB1c2VWYWx1ZTogY29uZmlnLnJvb3RPcHRpb25zIHx8IHt9IH0sXG4gICAgICAgIHsgcHJvdmlkZTogQU5BTFlaRV9GT1JfRU5UUllfQ09NUE9ORU5UUywgdXNlVmFsdWU6IGNvbmZpZywgbXVsdGk6IHRydWUgfSxcbiAgICAgICAgcHJvdmlkZVJvdXRlcyhjb25maWcubW9kdWxlQ29uZmlncyksXG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JGZWF0dXJlKGNvbmZpZzogSUxvYWRhYmxlQ29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IExvYWRhYmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZToge30sIG11bHRpOiB0cnVlLCBkZXBzOiBbTG9hZGFibGVTZXJ2aWNlXSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZy5tb2R1bGVDb25maWdzLCBtdWx0aTogdHJ1ZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFOQUxZWkVfRk9SX0VOVFJZX0NPTVBPTkVOVFMsIHVzZVZhbHVlOiBjb25maWcsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHByb3ZpZGVSb3V0ZXMoY29uZmlnLm1vZHVsZUNvbmZpZ3MpLFxuICAgICAgXVxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTE9BREFCTEVfQ09ORklHKSBjb25maWdzOiBNb2R1bGVDb25maWdbXVtdID0gW10sXG4gICkge1xuICAgIGlmICghY29uZmlncykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxzLmFkZENvbmZpZyhjb25maWdzW2NvbmZpZ3MubGVuZ3RoIC0gMV0pO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFrQiw0QkFBNEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQVc3RixNQUFNLE9BQU8sY0FBYzs7Ozs7SUF3QnpCLFlBQ0UsRUFBbUIsRUFDa0IsVUFBMkIsRUFBRTtRQUVsRSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTztTQUNSO1FBRUQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7Ozs7O0lBaENELE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBOEIsRUFBRTtRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUU7Z0JBQ2hGLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUN6RSxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUU7Z0JBQ3RFLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTthQUN6RTtTQUNGLENBQUM7SUFDSixDQUFDOzs7OztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsU0FBMEIsRUFBRTtRQUM1QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUU7Z0JBQ2hGLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUN6RSxFQUFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7YUFDekU7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBOUJGLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDakMsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7YUFDN0I7Ozs7WUFWeUIsZUFBZTt3Q0FxQ3BDLFFBQVEsWUFBSSxNQUFNLFNBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBJbmplY3QsIE9wdGlvbmFsLCBJbmplY3Rpb25Ub2tlbiwgQU5BTFlaRV9GT1JfRU5UUllfQ09NUE9ORU5UUyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IExvYWRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkYWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTE9BREFCTEVfQ09ORklHLCBMb2FkYWJsZVNlcnZpY2UsIExPQURBQkxFX1JPT1RfT1BUSU9OUyB9IGZyb20gJy4vbG9hZGFibGUuc2VydmljZSc7XG5pbXBvcnQgeyBNb2R1bGVzQ29uZmlnLCBFeHRyYU9wdGlvbnMsIElMb2FkYWJsZVJvb3RDb25maWcsIElMb2FkYWJsZUNvbmZpZyB9IGZyb20gJy4vbG9hZGFibGUuY29uZmlnJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTG9hZGFibGVDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW10sXG4gIGV4cG9ydHM6IFtMb2FkYWJsZUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTG9hZGFibGVNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IElMb2FkYWJsZVJvb3RDb25maWcgPSB7fSk6IE1vZHVsZVdpdGhQcm92aWRlcnMgIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IExvYWRhYmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZToge30sIG11bHRpOiB0cnVlLCBkZXBzOiBbTG9hZGFibGVTZXJ2aWNlXSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZy5tb2R1bGVDb25maWdzLCBtdWx0aTogdHJ1ZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX1JPT1RfT1BUSU9OUywgdXNlVmFsdWU6IGNvbmZpZy5yb290T3B0aW9ucyB8fCB7fSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFOQUxZWkVfRk9SX0VOVFJZX0NPTVBPTkVOVFMsIHVzZVZhbHVlOiBjb25maWcsIG11bHRpOiB0cnVlIH0sXG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JGZWF0dXJlKGNvbmZpZzogSUxvYWRhYmxlQ29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IExvYWRhYmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZToge30sIG11bHRpOiB0cnVlLCBkZXBzOiBbTG9hZGFibGVTZXJ2aWNlXSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZy5tb2R1bGVDb25maWdzLCBtdWx0aTogdHJ1ZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFOQUxZWkVfRk9SX0VOVFJZX0NPTVBPTkVOVFMsIHVzZVZhbHVlOiBjb25maWcsIG11bHRpOiB0cnVlIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTE9BREFCTEVfQ09ORklHKSBjb25maWdzOiBNb2R1bGVzQ29uZmlnW10gPSBbXSxcbiAgKSB7XG4gICAgaWYgKCFjb25maWdzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbHMuYWRkQ29uZmlnKGNvbmZpZ3NbY29uZmlncy5sZW5ndGggLSAxXSk7XG4gIH1cbn1cbiJdfQ==

@@ -5,3 +5,3 @@ /**

*/
import { Injectable, InjectionToken, NgModuleFactoryLoader, TemplateRef, ComponentFactoryResolver } from '@angular/core';
import { Injectable, InjectionToken, NgModuleRef, Compiler, ComponentFactoryResolver, TemplateRef, } from '@angular/core';
import * as i0 from "@angular/core";

@@ -12,11 +12,9 @@ /** @type {?} */

export const LOADABLE_ROOT_OPTIONS = new InjectionToken('LOADABLE_ROOT_OPTIONS');
/** @type {?} */
const LOG_PREFIX = 'ngx-loadable';
export class LoadableService {
/**
* @param {?} loader
* @param {?} compiler
* @param {?} cfr
*/
constructor(loader, cfr) {
this.loader = loader;
constructor(compiler, cfr) {
this.compiler = compiler;
this.cfr = cfr;

@@ -30,18 +28,8 @@ this.modules = [];

addConfig(config) {
config.forEach((/**
* @param {?} newModule
* @return {?}
*/
newModule => {
/** @type {?} */
const existingModule = this.getModule(newModule.name);
if (existingModule.loadChildren) {
console.warn(
// tslint:disable-next-line:max-line-length
`${LOG_PREFIX} - ModuleConfig with name '${newModule.name}' was previously added, it will not be added multiple times, continue...`);
}
else {
this.modules.push(newModule);
}
}));
if (config) {
this.modules = [
...this.modules,
...config,
];
}
}

@@ -53,7 +41,9 @@ /**

getModule(module) {
return this.modules.find((/**
/** @type {?} */
const mod = this.modules.find((/**
* @param {?} m
* @return {?}
*/
m => m.name === module)) || ((/** @type {?} */ ({})));
m => m.name === module));
return mod;
}

@@ -64,12 +54,11 @@ /**

*/
getModulePath(module) {
return this.getModule(module).loadChildren;
}
/**
* @param {?} module
* @return {?}
*/
preload(module) {
return this.loader
.load(this.getModulePath(module));
if (typeof module === 'string') {
module = this.getModule(module).load;
}
return module().then((/**
* @param {?} Module
* @return {?}
*/
Module => this.compiler.compileModuleAsync(Module)));
}

@@ -86,3 +75,3 @@ /**

*/
m => m.name));
m => m.load));
}

@@ -105,5 +94,2 @@ return Promise.all(modules.map((/**

let factory;
if (!mr) {
return;
}
if (mr instanceof TemplateRef) {

@@ -113,6 +99,6 @@ vcr.remove();

}
if (((/** @type {?} */ (mr))).componentFactoryResolver) {
if (mr instanceof NgModuleRef) {
/** @type {?} */
const rootComponent = ((/** @type {?} */ (mr)))._bootstrapComponents[0];
factory = ((/** @type {?} */ (mr))).componentFactoryResolver.resolveComponentFactory(rootComponent);
factory = mr.componentFactoryResolver.resolveComponentFactory(rootComponent);
}

@@ -133,6 +119,6 @@ else {

LoadableService.ctorParameters = () => [
{ type: NgModuleFactoryLoader },
{ type: Compiler },
{ type: ComponentFactoryResolver }
];
/** @nocollapse */ LoadableService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(i0.ɵɵinject(i0.NgModuleFactoryLoader), i0.ɵɵinject(i0.ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
/** @nocollapse */ LoadableService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(i0.ɵɵinject(i0.Compiler), i0.ɵɵinject(i0.ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
if (false) {

@@ -145,3 +131,3 @@ /** @type {?} */

*/
LoadableService.prototype.loader;
LoadableService.prototype.compiler;
/**

@@ -153,2 +139,2 @@ * @type {?}

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbImxpYi9sb2FkYWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBbUIscUJBQXFCLEVBQXVDLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSy9LLE1BQU0sT0FBTyxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQWlCLGlCQUFpQixDQUFDOztBQUNwRixNQUFNLE9BQU8scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHVCQUF1QixDQUFDOztNQUVoRyxVQUFVLEdBQUcsY0FBYztBQU1qQyxNQUFNLE9BQU8sZUFBZTs7Ozs7SUFFMUIsWUFDVSxNQUE2QixFQUM3QixHQUE2QjtRQUQ3QixXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQUM3QixRQUFHLEdBQUgsR0FBRyxDQUEwQjtRQUhoQyxZQUFPLEdBQW1CLEVBQUUsQ0FBQztJQUloQyxDQUFDOzs7OztJQUVMLFNBQVMsQ0FBQyxNQUFzQjtRQUM5QixNQUFNLENBQUMsT0FBTzs7OztRQUFDLFNBQVMsQ0FBQyxFQUFFOztrQkFDbkIsY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztZQUNyRCxJQUFJLGNBQWMsQ0FBQyxZQUFZLEVBQUU7Z0JBQy9CLE9BQU8sQ0FBQyxJQUFJO2dCQUNWLDJDQUEyQztnQkFDM0MsR0FBRyxVQUFVLDhCQUE4QixTQUFTLENBQUMsSUFBSSwwRUFBMEUsQ0FDcEksQ0FBQzthQUNIO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQzlCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVELFNBQVMsQ0FBQyxNQUFjO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBQyxJQUFJLENBQUMsbUJBQUEsRUFBRSxFQUFnQixDQUFDLENBQUM7SUFDM0UsQ0FBQzs7Ozs7SUFFRCxhQUFhLENBQUMsTUFBYztRQUMxQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQzdDLENBQUM7Ozs7O0lBRUQsT0FBTyxDQUFDLE1BQWM7UUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTTthQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7Ozs7SUFFRCxVQUFVLENBQUMsT0FBa0I7UUFDM0IsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUc7Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUMsQ0FBQztTQUN6QztRQUNELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztRQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixDQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzs7Ozs7O0lBRUQsVUFBVSxDQUFDLEVBQW1ELEVBQUUsR0FBcUI7O1lBQy9FLE9BQU87UUFDWCxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1AsT0FBTztTQUNSO1FBQ0QsSUFBSSxFQUFFLFlBQVksV0FBVyxFQUFFO1lBQzdCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNiLE9BQU8sR0FBRyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxDQUFDLG1CQUFBLEVBQUUsRUFBb0IsQ0FBQyxDQUFDLHdCQUF3QixFQUFFOztrQkFDL0MsYUFBYSxHQUFHLENBQUMsbUJBQUEsRUFBRSxFQUFPLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7WUFDekQsT0FBTyxHQUFHLENBQUMsbUJBQUEsRUFBRSxFQUFvQixDQUFDLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQ2pGLGFBQWEsQ0FDZCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUN4QyxDQUFDLG1CQUFBLEVBQUUsRUFBYSxDQUFDLENBQ2xCLENBQUM7U0FDSDtRQUNELEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNiLE9BQU8sR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDOzs7WUFuRUYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBYnFELHFCQUFxQjtZQUFvRCx3QkFBd0I7Ozs7O0lBZXJKLGtDQUFvQzs7Ozs7SUFFbEMsaUNBQXFDOzs7OztJQUNyQyw4QkFBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgTmdNb2R1bGVGYWN0b3J5LCBOZ01vZHVsZUZhY3RvcnlMb2FkZXIsIFZpZXdDb250YWluZXJSZWYsIE5nTW9kdWxlUmVmLCBUeXBlLCBUZW1wbGF0ZVJlZiwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IHBhc2NhbENhc2UgfSBmcm9tICcuL3V0aWwnO1xuaW1wb3J0IHsgSUxvYWRhYmxlQ29uZmlnLCBNb2R1bGVDb25maWcsIElMb2FkYWJsZVJvb3RPcHRpb25zIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5leHBvcnQgY29uc3QgTE9BREFCTEVfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPE1vZHVsZUNvbmZpZ1tdPignTE9BREFCTEVfQ09ORklHJyk7XG5leHBvcnQgY29uc3QgTE9BREFCTEVfUk9PVF9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPElMb2FkYWJsZVJvb3RPcHRpb25zPignTE9BREFCTEVfUk9PVF9PUFRJT05TJyk7XG5cbmNvbnN0IExPR19QUkVGSVggPSAnbmd4LWxvYWRhYmxlJztcblxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZVNlcnZpY2Uge1xuICBwdWJsaWMgbW9kdWxlczogTW9kdWxlQ29uZmlnW10gPSBbXTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsb2FkZXI6IE5nTW9kdWxlRmFjdG9yeUxvYWRlcixcbiAgICBwcml2YXRlIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICApIHsgfVxuXG4gIGFkZENvbmZpZyhjb25maWc6IE1vZHVsZUNvbmZpZ1tdKSB7XG4gICAgY29uZmlnLmZvckVhY2gobmV3TW9kdWxlID0+IHtcbiAgICAgIGNvbnN0IGV4aXN0aW5nTW9kdWxlID0gdGhpcy5nZXRNb2R1bGUobmV3TW9kdWxlLm5hbWUpO1xuICAgICAgaWYgKGV4aXN0aW5nTW9kdWxlLmxvYWRDaGlsZHJlbikge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm1heC1saW5lLWxlbmd0aFxuICAgICAgICAgIGAke0xPR19QUkVGSVh9IC0gTW9kdWxlQ29uZmlnIHdpdGggbmFtZSAnJHtuZXdNb2R1bGUubmFtZX0nIHdhcyBwcmV2aW91c2x5IGFkZGVkLCBpdCB3aWxsIG5vdCBiZSBhZGRlZCBtdWx0aXBsZSB0aW1lcywgY29udGludWUuLi5gXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm1vZHVsZXMucHVzaChuZXdNb2R1bGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0TW9kdWxlKG1vZHVsZTogc3RyaW5nKTogTW9kdWxlQ29uZmlnIHtcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVzLmZpbmQobSA9PiBtLm5hbWUgPT09IG1vZHVsZSkgfHwgKHt9IGFzIE1vZHVsZUNvbmZpZyk7XG4gIH1cblxuICBnZXRNb2R1bGVQYXRoKG1vZHVsZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TW9kdWxlKG1vZHVsZSkubG9hZENoaWxkcmVuO1xuICB9XG5cbiAgcHJlbG9hZChtb2R1bGU6IHN0cmluZyk6IFByb21pc2U8TmdNb2R1bGVGYWN0b3J5PGFueT4+IHtcbiAgICByZXR1cm4gdGhpcy5sb2FkZXJcbiAgICAgIC5sb2FkKHRoaXMuZ2V0TW9kdWxlUGF0aChtb2R1bGUpKTtcbiAgfVxuXG4gIHByZWxvYWRBbGwobW9kdWxlcz86IHN0cmluZ1tdKTogUHJvbWlzZTxOZ01vZHVsZUZhY3Rvcnk8YW55PltdPiB7XG4gICAgaWYgKCFtb2R1bGVzKSB7XG4gICAgICBtb2R1bGVzID0gdGhpcy5tb2R1bGVzLm1hcChtID0+IG0ubmFtZSk7XG4gICAgfVxuICAgIHJldHVybiBQcm9taXNlLmFsbChtb2R1bGVzLm1hcChtb2R1bGUgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMucHJlbG9hZChtb2R1bGUpO1xuICAgIH0pKTtcbiAgfVxuXG4gIF9yZW5kZXJWQ1IobXI6IE5nTW9kdWxlUmVmPGFueT4gfCBUeXBlPGFueT4gfCBUZW1wbGF0ZVJlZjxhbnk+LCB2Y3I6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICBsZXQgZmFjdG9yeTtcbiAgICBpZiAoIW1yKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChtciBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICB2Y3IucmVtb3ZlKCk7XG4gICAgICByZXR1cm4gdmNyLmNyZWF0ZUVtYmVkZGVkVmlldyhtcik7XG4gICAgfVxuICAgIGlmICgobXIgYXMgTmdNb2R1bGVSZWY8YW55PikuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICBjb25zdCByb290Q29tcG9uZW50ID0gKG1yIGFzIGFueSkuX2Jvb3RzdHJhcENvbXBvbmVudHNbMF07XG4gICAgICBmYWN0b3J5ID0gKG1yIGFzIE5nTW9kdWxlUmVmPGFueT4pLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShcbiAgICAgICAgcm9vdENvbXBvbmVudFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmFjdG9yeSA9IHRoaXMuY2ZyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFxuICAgICAgICAobXIgYXMgVHlwZTxhbnk+KSxcbiAgICAgICk7XG4gICAgfVxuICAgIHZjci5yZW1vdmUoKTtcbiAgICByZXR1cm4gdmNyLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbImxpYi9sb2FkYWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLGNBQWMsRUFHZCxXQUFXLEVBQ1gsUUFBUSxFQUVSLHdCQUF3QixFQUN4QixXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUM7OztBQUd2QixNQUFNLE9BQU8sZUFBZSxHQUFHLElBQUksY0FBYyxDQUFrQixpQkFBaUIsQ0FBQzs7QUFFckYsTUFBTSxPQUFPLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFlLHVCQUF1QixDQUFDO0FBSzlGLE1BQU0sT0FBTyxlQUFlOzs7OztJQUUxQixZQUNVLFFBQWtCLEVBQ2xCLEdBQTZCO1FBRDdCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsUUFBRyxHQUFILEdBQUcsQ0FBMEI7UUFIaEMsWUFBTyxHQUFrQixFQUFFLENBQUM7SUFJL0IsQ0FBQzs7Ozs7SUFFTCxTQUFTLENBQUMsTUFBcUI7UUFDN0IsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsT0FBTyxHQUFHO2dCQUNiLEdBQUcsSUFBSSxDQUFDLE9BQU87Z0JBQ2YsR0FBRyxNQUFNO2FBQ1YsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7Ozs7SUFFRCxTQUFTLENBQUMsTUFBYzs7Y0FDaEIsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSTs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUM7UUFDckQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOzs7OztJQUVELE9BQU8sQ0FBQyxNQUF5QztRQUMvQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtZQUM5QixNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDdEM7UUFDRCxPQUFPLE1BQU0sRUFBRSxDQUFDLElBQUk7Ozs7UUFBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEVBQUMsQ0FBQztJQUMzRSxDQUFDOzs7OztJQUVELFVBQVUsQ0FBQyxPQUErQztRQUN4RCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztZQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBQyxDQUFDO1NBQ3pDO1FBQ0QsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHOzs7O1FBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLENBQUMsRUFBQyxDQUFDLENBQUM7SUFDTixDQUFDOzs7Ozs7SUFFRCxVQUFVLENBQUMsRUFBbUQsRUFBRSxHQUFxQjs7WUFDL0UsT0FBTztRQUNYLElBQUksRUFBRSxZQUFZLFdBQVcsRUFBRTtZQUM3QixHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDYixPQUFPLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQztRQUNELElBQUksRUFBRSxZQUFZLFdBQVcsRUFBRTs7a0JBQ3ZCLGFBQWEsR0FBRyxDQUFDLG1CQUFBLEVBQUUsRUFBTyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1lBQ3pELE9BQU8sR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQzNELGFBQWEsQ0FDZCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUN4QyxDQUFDLG1CQUFBLEVBQUUsRUFBYSxDQUFDLENBQ2xCLENBQUM7U0FDSDtRQUNELEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNiLE9BQU8sR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDOzs7WUExREYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7O1lBYkMsUUFBUTtZQUVSLHdCQUF3Qjs7Ozs7SUFheEIsa0NBQW1DOzs7OztJQUVqQyxtQ0FBMEI7Ozs7O0lBQzFCLDhCQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGUsXG4gIEluamVjdGlvblRva2VuLFxuICBOZ01vZHVsZUZhY3RvcnksXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIE5nTW9kdWxlUmVmLFxuICBDb21waWxlcixcbiAgVHlwZSxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2R1bGVzQ29uZmlnLCBGdW5jdGlvblJldHVybmluZ1Byb21pc2UsIE1vZHVsZUNvbmZpZywgRXh0cmFPcHRpb25zIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5leHBvcnQgY29uc3QgTE9BREFCTEVfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPExvYWRhYmxlU2VydmljZT4oJ0xPQURBQkxFX0NPTkZJRycpO1xuXG5leHBvcnQgY29uc3QgTE9BREFCTEVfUk9PVF9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPEV4dHJhT3B0aW9ucz4oJ0xPQURBQkxFX1JPT1RfT1BUSU9OUycpO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZVNlcnZpY2Uge1xuICBwdWJsaWMgbW9kdWxlczogTW9kdWxlc0NvbmZpZyA9IFtdO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbXBpbGVyOiBDb21waWxlcixcbiAgICBwcml2YXRlIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyXG4gICkgeyB9XG5cbiAgYWRkQ29uZmlnKGNvbmZpZzogTW9kdWxlc0NvbmZpZykge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMubW9kdWxlcyA9IFtcbiAgICAgICAgLi4udGhpcy5tb2R1bGVzLFxuICAgICAgICAuLi5jb25maWcsXG4gICAgICBdO1xuICAgIH1cbiAgfVxuXG4gIGdldE1vZHVsZShtb2R1bGU6IHN0cmluZyk6IE1vZHVsZUNvbmZpZyB7XG4gICAgY29uc3QgbW9kID0gdGhpcy5tb2R1bGVzLmZpbmQobSA9PiBtLm5hbWUgPT09IG1vZHVsZSk7XG4gICAgcmV0dXJuIG1vZDtcbiAgfVxuXG4gIHByZWxvYWQobW9kdWxlOiBzdHJpbmcgfCBGdW5jdGlvblJldHVybmluZ1Byb21pc2UpOiBQcm9taXNlPE5nTW9kdWxlRmFjdG9yeTxhbnk+PiB7XG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBtb2R1bGUgPSB0aGlzLmdldE1vZHVsZShtb2R1bGUpLmxvYWQ7XG4gICAgfVxuICAgIHJldHVybiBtb2R1bGUoKS50aGVuKE1vZHVsZSA9PiB0aGlzLmNvbXBpbGVyLmNvbXBpbGVNb2R1bGVBc3luYyhNb2R1bGUpKTtcbiAgfVxuXG4gIHByZWxvYWRBbGwobW9kdWxlcz86IChzdHJpbmcgfCBGdW5jdGlvblJldHVybmluZ1Byb21pc2UpW10pOiBQcm9taXNlPE5nTW9kdWxlRmFjdG9yeTxhbnk+W10+IHtcbiAgICBpZiAoIW1vZHVsZXMpIHtcbiAgICAgIG1vZHVsZXMgPSB0aGlzLm1vZHVsZXMubWFwKG0gPT4gbS5sb2FkKTtcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UuYWxsKG1vZHVsZXMubWFwKG1vZHVsZSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5wcmVsb2FkKG1vZHVsZSk7XG4gICAgfSkpO1xuICB9XG5cbiAgX3JlbmRlclZDUihtcjogTmdNb2R1bGVSZWY8YW55PiB8IFRlbXBsYXRlUmVmPGFueT4gfCBUeXBlPGFueT4sIHZjcjogVmlld0NvbnRhaW5lclJlZikge1xuICAgIGxldCBmYWN0b3J5O1xuICAgIGlmIChtciBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICB2Y3IucmVtb3ZlKCk7XG4gICAgICByZXR1cm4gdmNyLmNyZWF0ZUVtYmVkZGVkVmlldyhtcik7XG4gICAgfVxuICAgIGlmIChtciBpbnN0YW5jZW9mIE5nTW9kdWxlUmVmKSB7XG4gICAgICBjb25zdCByb290Q29tcG9uZW50ID0gKG1yIGFzIGFueSkuX2Jvb3RzdHJhcENvbXBvbmVudHNbMF07XG4gICAgICBmYWN0b3J5ID0gbXIuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFxuICAgICAgICByb290Q29tcG9uZW50XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBmYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoXG4gICAgICAgIChtciBhcyBUeXBlPGFueT4pLFxuICAgICAgKTtcbiAgICB9XG4gICAgdmNyLnJlbW92ZSgpO1xuICAgIHJldHVybiB2Y3IuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICB9XG59XG4iXX0=

@@ -8,3 +8,3 @@ /**

*/
export { matcher, LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableService, LoadableComponent, LoadableModule } from './public_api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRhYmxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibmd4LWxvYWRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxvSEFBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7SUxvYWRhYmxlUm9vdE9wdGlvbnMgYXMgybViLE1vZHVsZUNvbmZpZyBhcyDJtWF9IGZyb20gJy4vbGliL2xvYWRhYmxlLmNvbmZpZyc7Il19
export { LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableService, LoadableComponent, LoadableModule } from './public_api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRhYmxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibmd4LWxvYWRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwyR0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7SUxvYWRhYmxlUm9vdE9wdGlvbnMgYXMgybViLE1vZHVsZXNDb25maWcgYXMgybVhfSBmcm9tICcuL2xpYi9sb2FkYWJsZS5jb25maWcnOyJdfQ==

@@ -11,8 +11,2 @@ /**

export { LoadableModule } from './lib/loadable.module';
/**
* @return {?}
*/
export function matcher() {
return null;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHdFQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGtDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLCtCQUFjLHVCQUF1QixDQUFDOzs7O0FBQ3RDLE1BQU0sVUFBVSxPQUFPO0lBQ3JCLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbG9hZGFibGVcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkYWJsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkYWJsZS5tb2R1bGUnO1xuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoZXIoKSB7XG4gIHJldHVybiBudWxsO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHdFQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGtDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLCtCQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBsb2FkYWJsZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRhYmxlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9hZGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRhYmxlLm1vZHVsZSc7XG4iXX0=

@@ -6,11 +6,12 @@ /**

import * as tslib_1 from "tslib";
import { Component, Input, ViewContainerRef, Injector, ViewChild, Output, EventEmitter, TemplateRef, ContentChild, ElementRef, Optional, Inject } from '@angular/core';
import { Component, Input, ViewContainerRef, Injector, ViewChild, Output, EventEmitter, Optional, Inject, ElementRef, TemplateRef, } from '@angular/core';
import { LoadableService, LOADABLE_ROOT_OPTIONS } from './loadable.service';
var LoadableComponent = /** @class */ (function () {
function LoadableComponent(inj, ls, el, options) {
function LoadableComponent(inj, ls, options, el) {
this.inj = inj;
this.ls = ls;
this.options = options;
this.el = el;
this.options = options;
this.show = false;
this.isElement = false;
this.init = new EventEmitter();

@@ -115,3 +116,5 @@ this.loading = false;

this.loading = true;
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
if (this.options.loadingComponent) {
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
}
if (this.timeout === 0) {

@@ -121,3 +124,3 @@ this._renderTimeoutTemplate();

else if (this.timeout > 0) {
this.timeoutRef = setTimeout((/**
setTimeout((/**
* @return {?}

@@ -135,5 +138,2 @@ */

function (mf) {
if (_this.timeoutRef) {
clearTimeout(_this.timeoutRef);
}
if (mf instanceof Error) {

@@ -173,4 +173,4 @@ return;

{ type: LoadableService },
{ type: ElementRef },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] }
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] },
{ type: ElementRef }
]; };

@@ -181,8 +181,8 @@ LoadableComponent.propDecorators = {

timeout: [{ type: Input }],
loadingTemplate: [{ type: Input }],
errorTemplate: [{ type: Input }],
timeoutTemplate: [{ type: Input }],
isElement: [{ type: Input }],
init: [{ type: Output }],
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }],
loadingTemplate: [{ type: ContentChild, args: ['loading', { read: TemplateRef, static: false },] }],
errorTemplate: [{ type: ContentChild, args: ['error', { read: TemplateRef, static: false },] }],
timeoutTemplate: [{ type: ContentChild, args: ['timedOut', { read: TemplateRef, static: false },] }]
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }]
};

@@ -200,2 +200,8 @@ return LoadableComponent;

/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/** @type {?} */
LoadableComponent.prototype.isElement;

@@ -206,8 +212,2 @@ /** @type {?} */

LoadableComponent.prototype.content;
/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/**

@@ -226,4 +226,2 @@ * @type {?}

LoadableComponent.prototype.timedOut;
/** @type {?} */
LoadableComponent.prototype.timeoutRef;
/**

@@ -243,3 +241,3 @@ * @type {?}

*/
LoadableComponent.prototype.el;
LoadableComponent.prototype.options;
/**

@@ -249,4 +247,4 @@ * @type {?}

*/
LoadableComponent.prototype.options;
LoadableComponent.prototype.el;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUNMLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsU0FBUyxFQUdULE1BQU0sRUFDTixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHNUU7SUF5QkUsMkJBQ1UsR0FBYSxFQUNiLEVBQW1CLEVBQ25CLEVBQWMsRUFDNkIsT0FBNkI7UUFIeEUsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUNiLE9BQUUsR0FBRixFQUFFLENBQWlCO1FBQ25CLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDNkIsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7UUFwQnpFLFNBQUksR0FBRyxLQUFLLENBQUM7UUFHWixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU9wQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixVQUFLLEdBQUcsS0FBSyxDQUFDO0lBU1gsQ0FBQzs7OztJQUVTLG1DQUFPOzs7SUFBcEI7Ozs7Ozt3QkFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTs0QkFDaEIsc0JBQU87eUJBQ1I7Ozs7d0JBR1kscUJBQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFBOzt3QkFBdkMsRUFBRSxHQUFHLFNBQWtDO3dCQUM3QyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQzt3QkFDbkIsSUFBSSxDQUFDLFFBQVEs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QU0sRUFBRSxJQUFJLEVBQUU7a0NBQzdELFlBQVksU0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0NBQzVELFlBQVksU0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7a0NBQzFELFlBQVksU0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7O0lBd0doRSx3QkFBQztDQUFBLEFBekhELElBeUhDO1NBbEhZLGlCQUFpQjs7O0lBQzVCLG1DQUF3Qjs7SUFDeEIsaUNBQXNCOztJQUN0QixvQ0FBcUM7O0lBQ3JDLHNDQUE0Qjs7SUFDNUIsaUNBQW9DOztJQUVwQyxvQ0FBMEY7O0lBQzFGLDRDQUFpRzs7SUFDakcsMENBQTZGOztJQUM3Riw0Q0FBa0c7Ozs7O0lBQ2xHLCtCQUE2Qjs7SUFDN0Isb0NBQWdCOztJQUNoQixtQ0FBZTs7SUFDZixrQ0FBYzs7SUFDZCxxQ0FBa0I7O0lBQ2xCLHVDQUFXOzs7OztJQUdULGdDQUFxQjs7Ozs7SUFDckIsK0JBQTJCOzs7OztJQUMzQiwrQkFBc0I7Ozs7O0lBQ3RCLG9DQUFnRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgTmdNb2R1bGVSZWYsXG4gIElucHV0LFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBJbmplY3RvcixcbiAgVmlld0NoaWxkLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBUZW1wbGF0ZVJlZixcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBPcHRpb25hbCxcbiAgSW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9hZGFibGVTZXJ2aWNlLCBMT0FEQUJMRV9ST09UX09QVElPTlMgfSBmcm9tICcuL2xvYWRhYmxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSUxvYWRhYmxlUm9vdE9wdGlvbnMgfSBmcm9tICcuL2xvYWRhYmxlLmNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC1sb2FkYWJsZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlICNjb250ZW50PjwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIExvYWRhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgbW9kdWxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3cgPSBmYWxzZTtcbiAgQElucHV0KCkgdGltZW91dDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBpc0VsZW1lbnQ6IGJvb2xlYW47XG4gIEBPdXRwdXQoKSBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBjb250ZW50OiBWaWV3Q29udGFpbmVyUmVmO1xuICBAQ29udGVudENoaWxkKCdsb2FkaW5nJywgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiBmYWxzZSB9KSBsb2FkaW5nVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBDb250ZW50Q2hpbGQoJ2Vycm9yJywgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiBmYWxzZSB9KSBlcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAQ29udGVudENoaWxkKCd0aW1lZE91dCcsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogZmFsc2UgfSkgdGltZW91dFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBwcml2YXRlIG1yOiBOZ01vZHVsZVJlZjxhbnk+O1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGxvYWRlZCA9IGZhbHNlO1xuICBlcnJvciA9IGZhbHNlO1xuICB0aW1lZE91dDogYm9vbGVhbjtcbiAgdGltZW91dFJlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluajogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChMT0FEQUJMRV9ST09UX09QVElPTlMpIHByaXZhdGUgb3B0aW9uczogSUxvYWRhYmxlUm9vdE9wdGlvbnMsXG4gICkge31cblxuICBwdWJsaWMgYXN5bmMgcHJlbG9hZCgpIHtcbiAgICBpZiAoIXRoaXMubW9kdWxlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG1mID0gYXdhaXQgdGhpcy5scy5wcmVsb2FkKHRoaXMubW9kdWxlKTtcbiAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMudGltZWRPdXQgPSBmYWxzZTtcbiAgICAgIHRoaXMubXIgPSBtZi5jcmVhdGUodGhpcy5pbmopO1xuICAgICAgcmV0dXJuIG1mO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yID0gZXJyb3I7XG4gICAgICB0aGlzLmxzLl9yZW5kZXJWQ1IoXG4gICAgICAgIHRoaXMuZXJyb3JUZW1wbGF0ZSB8fCB0aGlzLmxzLmdldE1vZHVsZSh0aGlzLm1vZHVsZSkuZXJyb3JDb21wb25lbnQgfHwgdGhpcy5vcHRpb25zLmVycm9yQ29tcG9uZW50LFxuICAgICAgICB0aGlzLmNvbnRlbnQsXG4gICAgICApO1xuICAgICAgcmV0dXJuIGVycm9yO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlcigpIHtcbiAgICBjb25zdCBtb2R1bGUgPSB0aGlzLmxzLmdldE1vZHVsZSh0aGlzLm1vZHVsZSk7XG4gICAgaWYgKHRoaXMuaXNFbGVtZW50IHx8IG1vZHVsZS5pc0VsZW1lbnQgfHwgdGhpcy5vcHRpb25zLmlzRWxlbWVudCkge1xuICAgICAgY29uc3QgY29tcG9uZW50SW5zdGFuY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KG1vZHVsZS5uYW1lKTtcbiAgICAgIHRoaXMuaW5pdC5uZXh0KHtcbiAgICAgICAgaW5zdGFuY2U6IGNvbXBvbmVudEluc3RhbmNlLFxuICAgICAgfSk7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQoY29tcG9uZW50SW5zdGFuY2UpO1xuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMubHMuX3JlbmRlclZDUih0aGlzLm1yLCB0aGlzLmNvbnRlbnQpO1xuICAgIHRoaXMuaW5pdC5uZXh0KGNvbXBvbmVudFJlZik7XG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gIH1cblxuICByZWxvYWQoKSB7XG4gICAgdGhpcy50aW1lZE91dCA9IGZhbHNlO1xuICAgIHRoaXMuZXJyb3IgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5sb2FkRm4oKTtcbiAgfVxuXG4gIF9yZW5kZXJUaW1lb3V0VGVtcGxhdGUoKSB7XG4gICAgdGhpcy50aW1lZE91dCA9IHRydWU7XG4gICAgdGhpcy5scy5fcmVuZGVyVkNSKFxuICAgICAgdGhpcy50aW1lb3V0VGVtcGxhdGUgfHwgdGhpcy5scy5nZXRNb2R1bGUodGhpcy5tb2R1bGUpLnRpbWVvdXRUZW1wbGF0ZSB8fCB0aGlzLm9wdGlvbnMudGltZW91dFRlbXBsYXRlLFxuICAgICAgdGhpcy5jb250ZW50XG4gICAgKTtcbiAgfVxuXG4gIGxvYWRGbigpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMudGltZW91dCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMudGltZW91dCA9IHBhcnNlSW50KHRoaXMudGltZW91dCwgMTApO1xuICAgIH1cbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgIHRoaXMubG9hZGluZ1RlbXBsYXRlIHx8IHRoaXMubHMuZ2V0TW9kdWxlKHRoaXMubW9kdWxlKS5sb2FkaW5nQ29tcG9uZW50IHx8IHRoaXMub3B0aW9ucy5sb2FkaW5nQ29tcG9uZW50LFxuICAgICAgdGhpcy5jb250ZW50LFxuICAgICk7XG4gICAgaWYgKHRoaXMudGltZW91dCA9PT0gMCkge1xuICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnRpbWVvdXQgPiAwKSB7XG4gICAgICB0aGlzLnRpbWVvdXRSZWYgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgICB9LCB0aGlzLnRpbWVvdXQpO1xuICAgIH1cbiAgICB0aGlzLnByZWxvYWQoKVxuICAgICAgLnRoZW4oKG1mKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnRpbWVvdXRSZWYpIHtcbiAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0UmVmKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWYgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fcmVuZGVyKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcy5zaG93ICYmIGNoYW5nZXMuc2hvdy5jdXJyZW50VmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLmxvYWRlZCkge1xuICAgICAgICB0aGlzLl9yZW5kZXIoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhpcy5sb2FkRm4oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUNMLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsU0FBUyxFQUdULE1BQU0sRUFDTixZQUFZLEVBQ1osUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUc1RTtJQXlCRSwyQkFDVSxHQUFhLEVBQ2IsRUFBbUIsRUFDd0IsT0FBNkIsRUFDeEUsRUFBYztRQUhkLFFBQUcsR0FBSCxHQUFHLENBQVU7UUFDYixPQUFFLEdBQUYsRUFBRSxDQUFpQjtRQUN3QixZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQUN4RSxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBcEJmLFNBQUksR0FBRyxLQUFLLENBQUM7UUFLYixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBS3BDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLFVBQUssR0FBRyxLQUFLLENBQUM7SUFRWCxDQUFDOzs7O0lBRVMsbUNBQU87OztJQUFwQjs7Ozs7O3dCQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFOzRCQUNoQixzQkFBTzt5QkFDUjs7Ozt3QkFHWSxxQkFBTSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUE7O3dCQUF2QyxFQUFFLEdBQUcsU0FBa0M7d0JBQzdDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO3dCQUNuQixJ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QUFFLElBQUksRUFBRTs7SUF3R2hFLHdCQUFDO0NBQUEsQUF6SEQsSUF5SEM7U0FsSFksaUJBQWlCOzs7SUFDNUIsbUNBQXdCOztJQUN4QixpQ0FBc0I7O0lBQ3RCLG9DQUFxQzs7SUFDckMsNENBQTJDOztJQUMzQywwQ0FBeUM7O0lBQ3pDLDRDQUEyQzs7SUFDM0Msc0NBQTJCOztJQUMzQixpQ0FBb0M7O0lBRXBDLG9DQUEwRjs7Ozs7SUFFMUYsK0JBQTZCOztJQUM3QixvQ0FBZ0I7O0lBQ2hCLG1DQUFlOztJQUNmLGtDQUFjOztJQUNkLHFDQUFrQjs7Ozs7SUFHaEIsZ0NBQXFCOzs7OztJQUNyQiwrQkFBMkI7Ozs7O0lBQzNCLG9DQUFnRjs7Ozs7SUFDaEYsK0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBOZ01vZHVsZVJlZixcbiAgSW5wdXQsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIEluamVjdG9yLFxuICBWaWV3Q2hpbGQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIE9uQ2hhbmdlcyxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9wdGlvbmFsLFxuICBJbmplY3QsXG4gIEVsZW1lbnRSZWYsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvYWRhYmxlU2VydmljZSwgTE9BREFCTEVfUk9PVF9PUFRJT05TIH0gZnJvbSAnLi9sb2FkYWJsZS5zZXJ2aWNlJztcbmltcG9ydCB7IElMb2FkYWJsZVJvb3RPcHRpb25zIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbG9hZGFibGUnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZSAjY29udGVudD48L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdHlsZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIG1vZHVsZTogc3RyaW5nO1xuICBASW5wdXQoKSBzaG93ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpbWVvdXQ6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgbG9hZGluZ1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSBlcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSB0aW1lb3V0VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gIEBJbnB1dCgpIGlzRWxlbWVudCA9IGZhbHNlO1xuICBAT3V0cHV0KCkgaW5pdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdjb250ZW50JywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmLCBzdGF0aWM6IHRydWUgfSkgY29udGVudDogVmlld0NvbnRhaW5lclJlZjtcblxuICBwcml2YXRlIG1yOiBOZ01vZHVsZVJlZjxhbnk+O1xuICBsb2FkaW5nID0gZmFsc2U7XG4gIGxvYWRlZCA9IGZhbHNlO1xuICBlcnJvciA9IGZhbHNlO1xuICB0aW1lZE91dDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluajogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTE9BREFCTEVfUk9PVF9PUFRJT05TKSBwcml2YXRlIG9wdGlvbnM6IElMb2FkYWJsZVJvb3RPcHRpb25zLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWZcbiAgKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBwcmVsb2FkKCkge1xuICAgIGlmICghdGhpcy5tb2R1bGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgbWYgPSBhd2FpdCB0aGlzLmxzLnByZWxvYWQodGhpcy5tb2R1bGUpO1xuICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xuICAgICAgdGhpcy50aW1lZE91dCA9IGZhbHNlO1xuICAgICAgdGhpcy5tciA9IG1mLmNyZWF0ZSh0aGlzLmluaik7XG4gICAgICByZXR1cm4gbWY7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSBlcnJvcjtcbiAgICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgICAgdGhpcy5lcnJvclRlbXBsYXRlIHx8IHRoaXMubHMuZ2V0TW9kdWxlKHRoaXMubW9kdWxlKS5lcnJvckNvbXBvbmVudCB8fCB0aGlzLm9wdGlvbnMuZXJyb3JDb21wb25lbnQsXG4gICAgICAgIHRoaXMuY29udGVudFxuICAgICAgKTtcbiAgICAgIHJldHVybiBlcnJvcjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXIoKSB7XG4gICAgY29uc3QgbW9kdWxlID0gdGhpcy5scy5nZXRNb2R1bGUodGhpcy5tb2R1bGUpO1xuICAgIGlmICh0aGlzLmlzRWxlbWVudCB8fCBtb2R1bGUuaXNFbGVtZW50IHx8IHRoaXMub3B0aW9ucy5pc0VsZW1lbnQpIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudEluc3RhbmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChtb2R1bGUubmFtZSk7XG4gICAgICB0aGlzLmluaXQubmV4dCh7XG4gICAgICAgIGluc3RhbmNlOiBjb21wb25lbnRJbnN0YW5jZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGNvbXBvbmVudEluc3RhbmNlKTtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmxzLl9yZW5kZXJWQ1IodGhpcy5tciwgdGhpcy5jb250ZW50KTtcbiAgICB0aGlzLmluaXQubmV4dChjb21wb25lbnRSZWYpO1xuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICB9XG5cbiAgcmVsb2FkKCkge1xuICAgIHRoaXMudGltZWRPdXQgPSBmYWxzZTtcbiAgICB0aGlzLmVycm9yID0gdW5kZWZpbmVkO1xuICAgIHRoaXMubG9hZEZuKCk7XG4gIH1cblxuICBfcmVuZGVyVGltZW91dFRlbXBsYXRlKCkge1xuICAgIHRoaXMudGltZWRPdXQgPSB0cnVlO1xuICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgIHRoaXMudGltZW91dFRlbXBsYXRlIHx8IHRoaXMubHMuZ2V0TW9kdWxlKHRoaXMubW9kdWxlKS50aW1lb3V0VGVtcGxhdGUgfHwgdGhpcy5vcHRpb25zLnRpbWVvdXRUZW1wbGF0ZSxcbiAgICAgIHRoaXMuY29udGVudFxuICAgICk7XG4gIH1cblxuICBsb2FkRm4oKSB7XG4gICAgaWYgKHR5cGVvZiB0aGlzLnRpbWVvdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLnRpbWVvdXQgPSBwYXJzZUludCh0aGlzLnRpbWVvdXQsIDEwKTtcbiAgICB9XG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5vcHRpb25zLmxvYWRpbmdDb21wb25lbnQpIHtcbiAgICAgIHRoaXMubHMuX3JlbmRlclZDUihcbiAgICAgICAgdGhpcy5sb2FkaW5nVGVtcGxhdGUgfHwgdGhpcy5scy5nZXRNb2R1bGUodGhpcy5tb2R1bGUpLmxvYWRpbmdDb21wb25lbnQgfHwgdGhpcy5vcHRpb25zLmxvYWRpbmdDb21wb25lbnQsXG4gICAgICAgIHRoaXMuY29udGVudFxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudGltZW91dCA9PT0gMCkge1xuICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnRpbWVvdXQgPiAwKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fcmVuZGVyVGltZW91dFRlbXBsYXRlKCk7XG4gICAgICB9LCB0aGlzLnRpbWVvdXQpO1xuICAgIH1cblxuICAgIHRoaXMucHJlbG9hZCgpXG4gICAgICAudGhlbigobWYpID0+IHtcbiAgICAgICAgaWYgKG1mIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3JlbmRlcigpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMuc2hvdyAmJiBjaGFuZ2VzLnNob3cuY3VycmVudFZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5sb2FkZWQpIHtcbiAgICAgICAgdGhpcy5fcmVuZGVyKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMubG9hZEZuKCk7XG4gICAgfVxuICB9XG59XG4iXX0=

@@ -12,6 +12,4 @@ /**

ModuleConfig.prototype.name;
/** @type {?|undefined} */
ModuleConfig.prototype.loadChildren;
/** @type {?} */
ModuleConfig.prototype.matcher;
ModuleConfig.prototype.load;
/** @type {?|undefined} */

@@ -24,2 +22,4 @@ ModuleConfig.prototype.loadingComponent;

/** @type {?|undefined} */
ModuleConfig.prototype.timeout;
/** @type {?|undefined} */
ModuleConfig.prototype.isElement;

@@ -30,5 +30,23 @@ }

*/
export function ExtraOptions() { }
if (false) {
/** @type {?|undefined} */
ExtraOptions.prototype.timeout;
/** @type {?|undefined} */
ExtraOptions.prototype.loadingComponent;
/** @type {?|undefined} */
ExtraOptions.prototype.errorComponent;
/** @type {?|undefined} */
ExtraOptions.prototype.timeoutTemplate;
/** @type {?|undefined} */
ExtraOptions.prototype.elements;
}
/**
* @record
*/
export function ILoadableRootOptions() { }
if (false) {
/** @type {?|undefined} */
ILoadableRootOptions.prototype.timeout;
/** @type {?|undefined} */
ILoadableRootOptions.prototype.loadingComponent;

@@ -60,2 +78,2 @@ /** @type {?|undefined} */

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRUEsa0NBUUM7OztJQVBDLDRCQUFhOztJQUNiLG9DQUFzQjs7SUFDdEIsK0JBQW9COztJQUNwQix3Q0FBNkI7O0lBQzdCLHNDQUEyQjs7SUFDM0IsdUNBQTRCOztJQUM1QixpQ0FBb0I7Ozs7O0FBR3RCLDBDQUtDOzs7SUFKQyxnREFBNkI7O0lBQzdCLDhDQUEyQjs7SUFDM0IsK0NBQTRCOztJQUM1Qix5Q0FBb0I7Ozs7O0FBR3RCLHFDQUVDOzs7SUFEQyx3Q0FBK0I7Ozs7O0FBR2pDLHlDQUdDOzs7SUFGQyw0Q0FBK0I7O0lBQy9CLDBDQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVDb25maWcge1xuICBuYW1lOiBzdHJpbmc7XG4gIGxvYWRDaGlsZHJlbj86IHN0cmluZztcbiAgbWF0Y2hlcjogKCkgPT4gbnVsbDtcbiAgbG9hZGluZ0NvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgZXJyb3JDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIHRpbWVvdXRUZW1wbGF0ZT86IFR5cGU8YW55PjtcbiAgaXNFbGVtZW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9hZGFibGVSb290T3B0aW9ucyB7XG4gIGxvYWRpbmdDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIGVycm9yQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICB0aW1lb3V0VGVtcGxhdGU/OiBUeXBlPGFueT47XG4gIGlzRWxlbWVudD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvYWRhYmxlQ29uZmlnIHtcbiAgbW9kdWxlQ29uZmlncz86IE1vZHVsZUNvbmZpZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2FkYWJsZVJvb3RDb25maWcge1xuICBtb2R1bGVDb25maWdzPzogTW9kdWxlQ29uZmlnW107XG4gIHJvb3RPcHRpb25zPzogSUxvYWRhYmxlUm9vdE9wdGlvbnM7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa0NBUUM7OztJQVBDLDRCQUFhOztJQUNiLDRCQUErQjs7SUFDL0Isd0NBQTZCOztJQUM3QixzQ0FBMkI7O0lBQzNCLHVDQUE0Qjs7SUFDNUIsK0JBQWlCOztJQUNqQixpQ0FBb0I7Ozs7O0FBR3RCLGtDQU1DOzs7SUFMQywrQkFBaUI7O0lBQ2pCLHdDQUE2Qjs7SUFDN0Isc0NBQTJCOztJQUMzQix1Q0FBNEI7O0lBQzVCLGdDQUFtQjs7Ozs7QUFLckIsMENBTUM7OztJQUxDLHVDQUFpQjs7SUFDakIsZ0RBQTZCOztJQUM3Qiw4Q0FBMkI7O0lBQzNCLCtDQUE0Qjs7SUFDNUIseUNBQW9COzs7OztBQUd0QixxQ0FFQzs7O0lBREMsd0NBQStCOzs7OztBQUdqQyx5Q0FHQzs7O0lBRkMsNENBQStCOztJQUMvQiwwQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IHR5cGUgRnVuY3Rpb25SZXR1cm5pbmdQcm9taXNlID0gKCkgPT4gUHJvbWlzZTxhbnk+O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZHVsZUNvbmZpZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgbG9hZDogRnVuY3Rpb25SZXR1cm5pbmdQcm9taXNlO1xuICBsb2FkaW5nQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICBlcnJvckNvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgdGltZW91dFRlbXBsYXRlPzogVHlwZTxhbnk+O1xuICB0aW1lb3V0PzogbnVtYmVyO1xuICBpc0VsZW1lbnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4dHJhT3B0aW9ucyB7XG4gIHRpbWVvdXQ/OiBudW1iZXI7XG4gIGxvYWRpbmdDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIGVycm9yQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICB0aW1lb3V0VGVtcGxhdGU/OiBUeXBlPGFueT47XG4gIGVsZW1lbnRzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgTW9kdWxlc0NvbmZpZyA9IE1vZHVsZUNvbmZpZ1tdO1xuXG5leHBvcnQgaW50ZXJmYWNlIElMb2FkYWJsZVJvb3RPcHRpb25zIHtcbiAgdGltZW91dD86IG51bWJlcjtcbiAgbG9hZGluZ0NvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgZXJyb3JDb21wb25lbnQ/OiBUeXBlPGFueT47XG4gIHRpbWVvdXRUZW1wbGF0ZT86IFR5cGU8YW55PjtcbiAgaXNFbGVtZW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9hZGFibGVDb25maWcge1xuICBtb2R1bGVDb25maWdzPzogTW9kdWxlQ29uZmlnW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvYWRhYmxlUm9vdENvbmZpZyB7XG4gIG1vZHVsZUNvbmZpZ3M/OiBNb2R1bGVDb25maWdbXTtcbiAgcm9vdE9wdGlvbnM/OiBJTG9hZGFibGVSb290T3B0aW9ucztcbn1cbiJdfQ==

@@ -5,5 +5,4 @@ /**

*/
import { NgModule, Inject, Optional, NgModuleFactoryLoader, SystemJsNgModuleLoader, ANALYZE_FOR_ENTRY_COMPONENTS } from '@angular/core';
import { NgModule, Inject, Optional, ANALYZE_FOR_ENTRY_COMPONENTS } from '@angular/core';
import { CommonModule } from '@angular/common';
import { provideRoutes } from '@angular/router';
import { LoadableComponent } from './loadable.component';

@@ -36,3 +35,2 @@ import { LOADABLE_CONFIG, LoadableService, LOADABLE_ROOT_OPTIONS } from './loadable.service';

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]

@@ -57,4 +55,3 @@ };

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]
],
};

@@ -68,5 +65,3 @@ };

],
providers: [
{ provide: NgModuleFactoryLoader, useClass: SystemJsNgModuleLoader }
],
providers: [],
exports: [LoadableComponent]

@@ -83,2 +78,2 @@ },] }

export { LoadableModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLHFCQUFxQixFQUFFLHNCQUFzQixFQUFFLDRCQUE0QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUc3RjtJQW9DRSx3QkFDRSxFQUFtQixFQUNrQixPQUE4QjtRQUFuRSx3QkFBQSxFQUFBLFlBQW1FO1FBRW5FLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPO1NBQ1I7UUFFRCxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7Ozs7SUFsQ00sc0JBQU87Ozs7SUFBZCxVQUFlLE1BQWdDO1FBQWhDLHVCQUFBLEVBQUEsV0FBZ0M7UUFDN0MsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNoRixFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtnQkFDekUsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFO2dCQUN0RSxFQUFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7Z0JBQ3hFLGFBQWEsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO2FBQ3BDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Ozs7O0lBRU0seUJBQVU7Ozs7SUFBakIsVUFBa0IsTUFBNEI7UUFBNUIsdUJBQUEsRUFBQSxXQUE0QjtRQUM1QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLEVBQUU7Z0JBQ2hGLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO2dCQUN6RSxFQUFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7Z0JBQ3hFLGFBQWEsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO2FBQ3BDO1NBQ0YsQ0FBQztJQUNKLENBQUM7O2dCQWxDRixRQUFRLFNBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUU7cUJBQ3JFO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3Qjs7OztnQkFaeUIsZUFBZTs0Q0F5Q3BDLFFBQVEsWUFBSSxNQUFNLFNBQUMsZUFBZTs7SUFRdkMscUJBQUM7Q0FBQSxBQTlDRCxJQThDQztTQXBDWSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIEluamVjdCwgT3B0aW9uYWwsIE5nTW9kdWxlRmFjdG9yeUxvYWRlciwgU3lzdGVtSnNOZ01vZHVsZUxvYWRlciwgQU5BTFlaRV9GT1JfRU5UUllfQ09NUE9ORU5UUyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBwcm92aWRlUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgTG9hZGFibGVDb21wb25lbnQgfSBmcm9tICcuL2xvYWRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMT0FEQUJMRV9DT05GSUcsIExvYWRhYmxlU2VydmljZSwgTE9BREFCTEVfUk9PVF9PUFRJT05TIH0gZnJvbSAnLi9sb2FkYWJsZS5zZXJ2aWNlJztcbmltcG9ydCB7IElMb2FkYWJsZUNvbmZpZywgTW9kdWxlQ29uZmlnLCBJTG9hZGFibGVSb290Q29uZmlnIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtMb2FkYWJsZUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBOZ01vZHVsZUZhY3RvcnlMb2FkZXIsIHVzZUNsYXNzOiBTeXN0ZW1Kc05nTW9kdWxlTG9hZGVyIH1cbiAgXSxcbiAgZXhwb3J0czogW0xvYWRhYmxlQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZzogSUxvYWRhYmxlUm9vdENvbmZpZyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVycyAge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTG9hZGFibGVNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBMT0FEQUJMRV9DT05GSUcsIHVzZVZhbHVlOiB7fSwgbXVsdGk6IHRydWUsIGRlcHM6IFtMb2FkYWJsZVNlcnZpY2VdIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZTogY29uZmlnLm1vZHVsZUNvbmZpZ3MsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfUk9PVF9PUFRJT05TLCB1c2VWYWx1ZTogY29uZmlnLnJvb3RPcHRpb25zIHx8IHt9IH0sXG4gICAgICAgIHsgcHJvdmlkZTogQU5BTFlaRV9GT1JfRU5UUllfQ09NUE9ORU5UUywgdXNlVmFsdWU6IGNvbmZpZywgbXVsdGk6IHRydWUgfSxcbiAgICAgICAgcHJvdmlkZVJvdXRlcyhjb25maWcubW9kdWxlQ29uZmlncyksXG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JGZWF0dXJlKGNvbmZpZzogSUxvYWRhYmxlQ29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IExvYWRhYmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZToge30sIG11bHRpOiB0cnVlLCBkZXBzOiBbTG9hZGFibGVTZXJ2aWNlXSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZy5tb2R1bGVDb25maWdzLCBtdWx0aTogdHJ1ZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFOQUxZWkVfRk9SX0VOVFJZX0NPTVBPTkVOVFMsIHVzZVZhbHVlOiBjb25maWcsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHByb3ZpZGVSb3V0ZXMoY29uZmlnLm1vZHVsZUNvbmZpZ3MpLFxuICAgICAgXVxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTE9BREFCTEVfQ09ORklHKSBjb25maWdzOiBNb2R1bGVDb25maWdbXVtdID0gW10sXG4gICkge1xuICAgIGlmICghY29uZmlncykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxzLmFkZENvbmZpZyhjb25maWdzW2NvbmZpZ3MubGVuZ3RoIC0gMV0pO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibGliL2xvYWRhYmxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFrQiw0QkFBNEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUc3RjtJQWdDRSx3QkFDRSxFQUFtQixFQUNrQixPQUE2QjtRQUFsRSx3QkFBQSxFQUFBLFlBQWtFO1FBRWxFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPO1NBQ1I7UUFFRCxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7Ozs7SUFoQ00sc0JBQU87Ozs7SUFBZCxVQUFlLE1BQWdDO1FBQWhDLHVCQUFBLEVBQUEsV0FBZ0M7UUFDN0MsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNoRixFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtnQkFDekUsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFO2dCQUN0RSxFQUFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7YUFDekU7U0FDRixDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFFTSx5QkFBVTs7OztJQUFqQixVQUFrQixNQUE0QjtRQUE1Qix1QkFBQSxFQUFBLFdBQTRCO1FBQzVDLE9BQU87WUFDTCxRQUFRLEVBQUUsY0FBYztZQUN4QixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBRTtnQkFDaEYsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsYUFBYSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7Z0JBQ3pFLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTthQUN6RTtTQUNGLENBQUM7SUFDSixDQUFDOztnQkE5QkYsUUFBUSxTQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUNqQyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxTQUFTLEVBQUUsRUFBRTtvQkFDYixPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztpQkFDN0I7Ozs7Z0JBVnlCLGVBQWU7NENBcUNwQyxRQUFRLFlBQUksTUFBTSxTQUFDLGVBQWU7O0lBUXZDLHFCQUFDO0NBQUEsQUExQ0QsSUEwQ0M7U0FsQ1ksY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBJbmplY3QsIE9wdGlvbmFsLCBJbmplY3Rpb25Ub2tlbiwgQU5BTFlaRV9GT1JfRU5UUllfQ09NUE9ORU5UUyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB7IExvYWRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkYWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTE9BREFCTEVfQ09ORklHLCBMb2FkYWJsZVNlcnZpY2UsIExPQURBQkxFX1JPT1RfT1BUSU9OUyB9IGZyb20gJy4vbG9hZGFibGUuc2VydmljZSc7XG5pbXBvcnQgeyBNb2R1bGVzQ29uZmlnLCBFeHRyYU9wdGlvbnMsIElMb2FkYWJsZVJvb3RDb25maWcsIElMb2FkYWJsZUNvbmZpZyB9IGZyb20gJy4vbG9hZGFibGUuY29uZmlnJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTG9hZGFibGVDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW10sXG4gIGV4cG9ydHM6IFtMb2FkYWJsZUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgTG9hZGFibGVNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IElMb2FkYWJsZVJvb3RDb25maWcgPSB7fSk6IE1vZHVsZVdpdGhQcm92aWRlcnMgIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IExvYWRhYmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZToge30sIG11bHRpOiB0cnVlLCBkZXBzOiBbTG9hZGFibGVTZXJ2aWNlXSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZy5tb2R1bGVDb25maWdzLCBtdWx0aTogdHJ1ZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX1JPT1RfT1BUSU9OUywgdXNlVmFsdWU6IGNvbmZpZy5yb290T3B0aW9ucyB8fCB7fSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFOQUxZWkVfRk9SX0VOVFJZX0NPTVBPTkVOVFMsIHVzZVZhbHVlOiBjb25maWcsIG11bHRpOiB0cnVlIH0sXG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JGZWF0dXJlKGNvbmZpZzogSUxvYWRhYmxlQ29uZmlnID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IExvYWRhYmxlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTE9BREFCTEVfQ09ORklHLCB1c2VWYWx1ZToge30sIG11bHRpOiB0cnVlLCBkZXBzOiBbTG9hZGFibGVTZXJ2aWNlXSB9LFxuICAgICAgICB7IHByb3ZpZGU6IExPQURBQkxFX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZy5tb2R1bGVDb25maWdzLCBtdWx0aTogdHJ1ZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFOQUxZWkVfRk9SX0VOVFJZX0NPTVBPTkVOVFMsIHVzZVZhbHVlOiBjb25maWcsIG11bHRpOiB0cnVlIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBsczogTG9hZGFibGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTE9BREFCTEVfQ09ORklHKSBjb25maWdzOiBNb2R1bGVzQ29uZmlnW10gPSBbXSxcbiAgKSB7XG4gICAgaWYgKCFjb25maWdzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbHMuYWRkQ29uZmlnKGNvbmZpZ3NbY29uZmlncy5sZW5ndGggLSAxXSk7XG4gIH1cbn1cbiJdfQ==

@@ -5,3 +5,4 @@ /**

*/
import { Injectable, InjectionToken, NgModuleFactoryLoader, TemplateRef, ComponentFactoryResolver } from '@angular/core';
import * as tslib_1 from "tslib";
import { Injectable, InjectionToken, NgModuleRef, Compiler, ComponentFactoryResolver, TemplateRef, } from '@angular/core';
import * as i0 from "@angular/core";

@@ -12,7 +13,5 @@ /** @type {?} */

export var LOADABLE_ROOT_OPTIONS = new InjectionToken('LOADABLE_ROOT_OPTIONS');
/** @type {?} */
var LOG_PREFIX = 'ngx-loadable';
var LoadableService = /** @class */ (function () {
function LoadableService(loader, cfr) {
this.loader = loader;
function LoadableService(compiler, cfr) {
this.compiler = compiler;
this.cfr = cfr;

@@ -30,19 +29,5 @@ this.modules = [];

function (config) {
var _this = this;
config.forEach((/**
* @param {?} newModule
* @return {?}
*/
function (newModule) {
/** @type {?} */
var existingModule = _this.getModule(newModule.name);
if (existingModule.loadChildren) {
console.warn(
// tslint:disable-next-line:max-line-length
LOG_PREFIX + " - ModuleConfig with name '" + newModule.name + "' was previously added, it will not be added multiple times, continue...");
}
else {
_this.modules.push(newModule);
}
}));
if (config) {
this.modules = tslib_1.__spread(this.modules, config);
}
};

@@ -58,7 +43,9 @@ /**

function (module) {
return this.modules.find((/**
/** @type {?} */
var mod = this.modules.find((/**
* @param {?} m
* @return {?}
*/
function (m) { return m.name === module; })) || ((/** @type {?} */ ({})));
function (m) { return m.name === module; }));
return mod;
};

@@ -69,13 +56,2 @@ /**

*/
LoadableService.prototype.getModulePath = /**
* @param {?} module
* @return {?}
*/
function (module) {
return this.getModule(module).loadChildren;
};
/**
* @param {?} module
* @return {?}
*/
LoadableService.prototype.preload = /**

@@ -86,4 +62,11 @@ * @param {?} module

function (module) {
return this.loader
.load(this.getModulePath(module));
var _this = this;
if (typeof module === 'string') {
module = this.getModule(module).load;
}
return module().then((/**
* @param {?} Module
* @return {?}
*/
function (Module) { return _this.compiler.compileModuleAsync(Module); }));
};

@@ -105,3 +88,3 @@ /**

*/
function (m) { return m.name; }));
function (m) { return m.load; }));
}

@@ -129,5 +112,2 @@ return Promise.all(modules.map((/**

var factory;
if (!mr) {
return;
}
if (mr instanceof TemplateRef) {

@@ -137,6 +117,6 @@ vcr.remove();

}
if (((/** @type {?} */ (mr))).componentFactoryResolver) {
if (mr instanceof NgModuleRef) {
/** @type {?} */
var rootComponent = ((/** @type {?} */ (mr)))._bootstrapComponents[0];
factory = ((/** @type {?} */ (mr))).componentFactoryResolver.resolveComponentFactory(rootComponent);
factory = mr.componentFactoryResolver.resolveComponentFactory(rootComponent);
}

@@ -156,6 +136,6 @@ else {

LoadableService.ctorParameters = function () { return [
{ type: NgModuleFactoryLoader },
{ type: Compiler },
{ type: ComponentFactoryResolver }
]; };
/** @nocollapse */ LoadableService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(i0.ɵɵinject(i0.NgModuleFactoryLoader), i0.ɵɵinject(i0.ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
/** @nocollapse */ LoadableService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(i0.ɵɵinject(i0.Compiler), i0.ɵɵinject(i0.ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
return LoadableService;

@@ -171,3 +151,3 @@ }());

*/
LoadableService.prototype.loader;
LoadableService.prototype.compiler;
/**

@@ -179,2 +159,2 @@ * @type {?}

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbImxpYi9sb2FkYWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBbUIscUJBQXFCLEVBQXVDLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBSy9LLE1BQU0sS0FBTyxlQUFlLEdBQUcsSUFBSSxjQUFjLENBQWlCLGlCQUFpQixDQUFDOztBQUNwRixNQUFNLEtBQU8scUJBQXFCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHVCQUF1QixDQUFDOztJQUVoRyxVQUFVLEdBQUcsY0FBYztBQUdqQztJQUtFLHlCQUNVLE1BQTZCLEVBQzdCLEdBQTZCO1FBRDdCLFdBQU0sR0FBTixNQUFNLENBQXVCO1FBQzdCLFFBQUcsR0FBSCxHQUFHLENBQTBCO1FBSGhDLFlBQU8sR0FBbUIsRUFBRSxDQUFDO0lBSWhDLENBQUM7Ozs7O0lBRUwsbUNBQVM7Ozs7SUFBVCxVQUFVLE1BQXNCO1FBQWhDLGlCQVlDO1FBWEMsTUFBTSxDQUFDLE9BQU87Ozs7UUFBQyxVQUFBLFNBQVM7O2dCQUNoQixjQUFjLEdBQUcsS0FBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ3JELElBQUksY0FBYyxDQUFDLFlBQVksRUFBRTtnQkFDL0IsT0FBTyxDQUFDLElBQUk7Z0JBQ1YsMkNBQTJDO2dCQUN4QyxVQUFVLG1DQUE4QixTQUFTLENBQUMsSUFBSSw2RUFBMEUsQ0FDcEksQ0FBQzthQUNIO2lCQUFNO2dCQUNMLEtBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQzlCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVELG1DQUFTOzs7O0lBQVQsVUFBVSxNQUFjO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBakIsQ0FBaUIsRUFBQyxJQUFJLENBQUMsbUJBQUEsRUFBRSxFQUFnQixDQUFDLENBQUM7SUFDM0UsQ0FBQzs7Ozs7SUFFRCx1Q0FBYTs7OztJQUFiLFVBQWMsTUFBYztRQUMxQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQzdDLENBQUM7Ozs7O0lBRUQsaUNBQU87Ozs7SUFBUCxVQUFRLE1BQWM7UUFDcEIsT0FBTyxJQUFJLENBQUMsTUFBTTthQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7Ozs7SUFFRCxvQ0FBVTs7OztJQUFWLFVBQVcsT0FBa0I7UUFBN0IsaUJBT0M7UUFOQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztZQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBTixDQUFNLEVBQUMsQ0FBQztTQUN6QztRQUNELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztRQUFDLFVBQUEsTUFBTTtZQUNuQyxPQUFPLEtBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7Ozs7OztJQUVELG9DQUFVOzs7OztJQUFWLFVBQVcsRUFBbUQsRUFBRSxHQUFxQjs7WUFDL0UsT0FBTztRQUNYLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDUCxPQUFPO1NBQ1I7UUFDRCxJQUFJLEVBQUUsWUFBWSxXQUFXLEVBQUU7WUFDN0IsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2IsT0FBTyxHQUFHLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbkM7UUFDRCxJQUFJLENBQUMsbUJBQUEsRUFBRSxFQUFvQixDQUFDLENBQUMsd0JBQXdCLEVBQUU7O2dCQUMvQyxhQUFhLEdBQUcsQ0FBQyxtQkFBQSxFQUFFLEVBQU8sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQztZQUN6RCxPQUFPLEdBQUcsQ0FBQyxtQkFBQSxFQUFFLEVBQW9CLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FDakYsYUFBYSxDQUNkLENBQUM7U0FDSDthQUFNO1lBQ0wsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQ3hDLENBQUMsbUJBQUEsRUFBRSxFQUFhLENBQUMsQ0FDbEIsQ0FBQztTQUNIO1FBQ0QsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2IsT0FBTyxHQUFHLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O2dCQW5FRixVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQWJxRCxxQkFBcUI7Z0JBQW9ELHdCQUF3Qjs7OzBCQUF2SjtDQStFQyxBQXBFRCxJQW9FQztTQWpFWSxlQUFlOzs7SUFDMUIsa0NBQW9DOzs7OztJQUVsQyxpQ0FBcUM7Ozs7O0lBQ3JDLDhCQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBOZ01vZHVsZUZhY3RvcnksIE5nTW9kdWxlRmFjdG9yeUxvYWRlciwgVmlld0NvbnRhaW5lclJlZiwgTmdNb2R1bGVSZWYsIFR5cGUsIFRlbXBsYXRlUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgcGFzY2FsQ2FzZSB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBJTG9hZGFibGVDb25maWcsIE1vZHVsZUNvbmZpZywgSUxvYWRhYmxlUm9vdE9wdGlvbnMgfSBmcm9tICcuL2xvYWRhYmxlLmNvbmZpZyc7XG5cbmV4cG9ydCBjb25zdCBMT0FEQUJMRV9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48TW9kdWxlQ29uZmlnW10+KCdMT0FEQUJMRV9DT05GSUcnKTtcbmV4cG9ydCBjb25zdCBMT0FEQUJMRV9ST09UX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48SUxvYWRhYmxlUm9vdE9wdGlvbnM+KCdMT0FEQUJMRV9ST09UX09QVElPTlMnKTtcblxuY29uc3QgTE9HX1BSRUZJWCA9ICduZ3gtbG9hZGFibGUnO1xuXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExvYWRhYmxlU2VydmljZSB7XG4gIHB1YmxpYyBtb2R1bGVzOiBNb2R1bGVDb25maWdbXSA9IFtdO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvYWRlcjogTmdNb2R1bGVGYWN0b3J5TG9hZGVyLFxuICAgIHByaXZhdGUgY2ZyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICkgeyB9XG5cbiAgYWRkQ29uZmlnKGNvbmZpZzogTW9kdWxlQ29uZmlnW10pIHtcbiAgICBjb25maWcuZm9yRWFjaChuZXdNb2R1bGUgPT4ge1xuICAgICAgY29uc3QgZXhpc3RpbmdNb2R1bGUgPSB0aGlzLmdldE1vZHVsZShuZXdNb2R1bGUubmFtZSk7XG4gICAgICBpZiAoZXhpc3RpbmdNb2R1bGUubG9hZENoaWxkcmVuKSB7XG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXG4gICAgICAgICAgYCR7TE9HX1BSRUZJWH0gLSBNb2R1bGVDb25maWcgd2l0aCBuYW1lICcke25ld01vZHVsZS5uYW1lfScgd2FzIHByZXZpb3VzbHkgYWRkZWQsIGl0IHdpbGwgbm90IGJlIGFkZGVkIG11bHRpcGxlIHRpbWVzLCBjb250aW51ZS4uLmBcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubW9kdWxlcy5wdXNoKG5ld01vZHVsZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXRNb2R1bGUobW9kdWxlOiBzdHJpbmcpOiBNb2R1bGVDb25maWcge1xuICAgIHJldHVybiB0aGlzLm1vZHVsZXMuZmluZChtID0+IG0ubmFtZSA9PT0gbW9kdWxlKSB8fCAoe30gYXMgTW9kdWxlQ29uZmlnKTtcbiAgfVxuXG4gIGdldE1vZHVsZVBhdGgobW9kdWxlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNb2R1bGUobW9kdWxlKS5sb2FkQ2hpbGRyZW47XG4gIH1cblxuICBwcmVsb2FkKG1vZHVsZTogc3RyaW5nKTogUHJvbWlzZTxOZ01vZHVsZUZhY3Rvcnk8YW55Pj4ge1xuICAgIHJldHVybiB0aGlzLmxvYWRlclxuICAgICAgLmxvYWQodGhpcy5nZXRNb2R1bGVQYXRoKG1vZHVsZSkpO1xuICB9XG5cbiAgcHJlbG9hZEFsbChtb2R1bGVzPzogc3RyaW5nW10pOiBQcm9taXNlPE5nTW9kdWxlRmFjdG9yeTxhbnk+W10+IHtcbiAgICBpZiAoIW1vZHVsZXMpIHtcbiAgICAgIG1vZHVsZXMgPSB0aGlzLm1vZHVsZXMubWFwKG0gPT4gbS5uYW1lKTtcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UuYWxsKG1vZHVsZXMubWFwKG1vZHVsZSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5wcmVsb2FkKG1vZHVsZSk7XG4gICAgfSkpO1xuICB9XG5cbiAgX3JlbmRlclZDUihtcjogTmdNb2R1bGVSZWY8YW55PiB8IFR5cGU8YW55PiB8IFRlbXBsYXRlUmVmPGFueT4sIHZjcjogVmlld0NvbnRhaW5lclJlZikge1xuICAgIGxldCBmYWN0b3J5O1xuICAgIGlmICghbXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKG1yIGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcbiAgICAgIHZjci5yZW1vdmUoKTtcbiAgICAgIHJldHVybiB2Y3IuY3JlYXRlRW1iZWRkZWRWaWV3KG1yKTtcbiAgICB9XG4gICAgaWYgKChtciBhcyBOZ01vZHVsZVJlZjxhbnk+KS5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpIHtcbiAgICAgIGNvbnN0IHJvb3RDb21wb25lbnQgPSAobXIgYXMgYW55KS5fYm9vdHN0cmFwQ29tcG9uZW50c1swXTtcbiAgICAgIGZhY3RvcnkgPSAobXIgYXMgTmdNb2R1bGVSZWY8YW55PikuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFxuICAgICAgICByb290Q29tcG9uZW50XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBmYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoXG4gICAgICAgIChtciBhcyBUeXBlPGFueT4pLFxuICAgICAgKTtcbiAgICB9XG4gICAgdmNyLnJlbW92ZSgpO1xuICAgIHJldHVybiB2Y3IuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbImxpYi9sb2FkYWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixjQUFjLEVBR2QsV0FBVyxFQUNYLFFBQVEsRUFFUix3QkFBd0IsRUFDeEIsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDOzs7QUFHdkIsTUFBTSxLQUFPLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FBa0IsaUJBQWlCLENBQUM7O0FBRXJGLE1BQU0sS0FBTyxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBZSx1QkFBdUIsQ0FBQztBQUU5RjtJQUtFLHlCQUNVLFFBQWtCLEVBQ2xCLEdBQTZCO1FBRDdCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsUUFBRyxHQUFILEdBQUcsQ0FBMEI7UUFIaEMsWUFBTyxHQUFrQixFQUFFLENBQUM7SUFJL0IsQ0FBQzs7Ozs7SUFFTCxtQ0FBUzs7OztJQUFULFVBQVUsTUFBcUI7UUFDN0IsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsT0FBTyxvQkFDUCxJQUFJLENBQUMsT0FBTyxFQUNaLE1BQU0sQ0FDVixDQUFDO1NBQ0g7SUFDSCxDQUFDOzs7OztJQUVELG1DQUFTOzs7O0lBQVQsVUFBVSxNQUFjOztZQUNoQixHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBakIsQ0FBaUIsRUFBQztRQUNyRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Ozs7O0lBRUQsaUNBQU87Ozs7SUFBUCxVQUFRLE1BQXlDO1FBQWpELGlCQUtDO1FBSkMsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDOUIsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ3RDO1FBQ0QsT0FBTyxNQUFNLEVBQUUsQ0FBQyxJQUFJOzs7O1FBQUMsVUFBQSxNQUFNLElBQUksT0FBQSxLQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxFQUF4QyxDQUF3QyxFQUFDLENBQUM7SUFDM0UsQ0FBQzs7Ozs7SUFFRCxvQ0FBVTs7OztJQUFWLFVBQVcsT0FBK0M7UUFBMUQsaUJBT0M7UUFOQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztZQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBTixDQUFNLEVBQUMsQ0FBQztTQUN6QztRQUNELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRzs7OztRQUFDLFVBQUEsTUFBTTtZQUNuQyxPQUFPLEtBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxFQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7Ozs7OztJQUVELG9DQUFVOzs7OztJQUFWLFVBQVcsRUFBbUQsRUFBRSxHQUFxQjs7WUFDL0UsT0FBTztRQUNYLElBQUksRUFBRSxZQUFZLFdBQVcsRUFBRTtZQUM3QixHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDYixPQUFPLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQztRQUNELElBQUksRUFBRSxZQUFZLFdBQVcsRUFBRTs7Z0JBQ3ZCLGFBQWEsR0FBRyxDQUFDLG1CQUFBLEVBQUUsRUFBTyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1lBQ3pELE9BQU8sR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQzNELGFBQWEsQ0FDZCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUN4QyxDQUFDLG1CQUFBLEVBQUUsRUFBYSxDQUFDLENBQ2xCLENBQUM7U0FDSDtRQUNELEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNiLE9BQU8sR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDOztnQkExREYsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7OztnQkFiQyxRQUFRO2dCQUVSLHdCQUF3Qjs7OzBCQVIxQjtDQTRFQyxBQTNERCxJQTJEQztTQXhEWSxlQUFlOzs7SUFDMUIsa0NBQW1DOzs7OztJQUVqQyxtQ0FBMEI7Ozs7O0lBQzFCLDhCQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGUsXG4gIEluamVjdGlvblRva2VuLFxuICBOZ01vZHVsZUZhY3RvcnksXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIE5nTW9kdWxlUmVmLFxuICBDb21waWxlcixcbiAgVHlwZSxcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2R1bGVzQ29uZmlnLCBGdW5jdGlvblJldHVybmluZ1Byb21pc2UsIE1vZHVsZUNvbmZpZywgRXh0cmFPcHRpb25zIH0gZnJvbSAnLi9sb2FkYWJsZS5jb25maWcnO1xuXG5leHBvcnQgY29uc3QgTE9BREFCTEVfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPExvYWRhYmxlU2VydmljZT4oJ0xPQURBQkxFX0NPTkZJRycpO1xuXG5leHBvcnQgY29uc3QgTE9BREFCTEVfUk9PVF9PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPEV4dHJhT3B0aW9ucz4oJ0xPQURBQkxFX1JPT1RfT1BUSU9OUycpO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMb2FkYWJsZVNlcnZpY2Uge1xuICBwdWJsaWMgbW9kdWxlczogTW9kdWxlc0NvbmZpZyA9IFtdO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbXBpbGVyOiBDb21waWxlcixcbiAgICBwcml2YXRlIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyXG4gICkgeyB9XG5cbiAgYWRkQ29uZmlnKGNvbmZpZzogTW9kdWxlc0NvbmZpZykge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMubW9kdWxlcyA9IFtcbiAgICAgICAgLi4udGhpcy5tb2R1bGVzLFxuICAgICAgICAuLi5jb25maWcsXG4gICAgICBdO1xuICAgIH1cbiAgfVxuXG4gIGdldE1vZHVsZShtb2R1bGU6IHN0cmluZyk6IE1vZHVsZUNvbmZpZyB7XG4gICAgY29uc3QgbW9kID0gdGhpcy5tb2R1bGVzLmZpbmQobSA9PiBtLm5hbWUgPT09IG1vZHVsZSk7XG4gICAgcmV0dXJuIG1vZDtcbiAgfVxuXG4gIHByZWxvYWQobW9kdWxlOiBzdHJpbmcgfCBGdW5jdGlvblJldHVybmluZ1Byb21pc2UpOiBQcm9taXNlPE5nTW9kdWxlRmFjdG9yeTxhbnk+PiB7XG4gICAgaWYgKHR5cGVvZiBtb2R1bGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBtb2R1bGUgPSB0aGlzLmdldE1vZHVsZShtb2R1bGUpLmxvYWQ7XG4gICAgfVxuICAgIHJldHVybiBtb2R1bGUoKS50aGVuKE1vZHVsZSA9PiB0aGlzLmNvbXBpbGVyLmNvbXBpbGVNb2R1bGVBc3luYyhNb2R1bGUpKTtcbiAgfVxuXG4gIHByZWxvYWRBbGwobW9kdWxlcz86IChzdHJpbmcgfCBGdW5jdGlvblJldHVybmluZ1Byb21pc2UpW10pOiBQcm9taXNlPE5nTW9kdWxlRmFjdG9yeTxhbnk+W10+IHtcbiAgICBpZiAoIW1vZHVsZXMpIHtcbiAgICAgIG1vZHVsZXMgPSB0aGlzLm1vZHVsZXMubWFwKG0gPT4gbS5sb2FkKTtcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UuYWxsKG1vZHVsZXMubWFwKG1vZHVsZSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5wcmVsb2FkKG1vZHVsZSk7XG4gICAgfSkpO1xuICB9XG5cbiAgX3JlbmRlclZDUihtcjogTmdNb2R1bGVSZWY8YW55PiB8IFRlbXBsYXRlUmVmPGFueT4gfCBUeXBlPGFueT4sIHZjcjogVmlld0NvbnRhaW5lclJlZikge1xuICAgIGxldCBmYWN0b3J5O1xuICAgIGlmIChtciBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICB2Y3IucmVtb3ZlKCk7XG4gICAgICByZXR1cm4gdmNyLmNyZWF0ZUVtYmVkZGVkVmlldyhtcik7XG4gICAgfVxuICAgIGlmIChtciBpbnN0YW5jZW9mIE5nTW9kdWxlUmVmKSB7XG4gICAgICBjb25zdCByb290Q29tcG9uZW50ID0gKG1yIGFzIGFueSkuX2Jvb3RzdHJhcENvbXBvbmVudHNbMF07XG4gICAgICBmYWN0b3J5ID0gbXIuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFxuICAgICAgICByb290Q29tcG9uZW50XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBmYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoXG4gICAgICAgIChtciBhcyBUeXBlPGFueT4pLFxuICAgICAgKTtcbiAgICB9XG4gICAgdmNyLnJlbW92ZSgpO1xuICAgIHJldHVybiB2Y3IuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICB9XG59XG4iXX0=

@@ -8,3 +8,3 @@ /**

*/
export { matcher, LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableService, LoadableComponent, LoadableModule } from './public_api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRhYmxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibmd4LWxvYWRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxvSEFBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7SUxvYWRhYmxlUm9vdE9wdGlvbnMgYXMgybViLE1vZHVsZUNvbmZpZyBhcyDJtWF9IGZyb20gJy4vbGliL2xvYWRhYmxlLmNvbmZpZyc7Il19
export { LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableService, LoadableComponent, LoadableModule } from './public_api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWxvYWRhYmxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxvYWRhYmxlLyIsInNvdXJjZXMiOlsibmd4LWxvYWRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwyR0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG5cbmV4cG9ydCB7SUxvYWRhYmxlUm9vdE9wdGlvbnMgYXMgybViLE1vZHVsZXNDb25maWcgYXMgybVhfSBmcm9tICcuL2xpYi9sb2FkYWJsZS5jb25maWcnOyJdfQ==

@@ -11,8 +11,2 @@ /**

export { LoadableModule } from './lib/loadable.module';
/**
* @return {?}
*/
export function matcher() {
return null;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHdFQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGtDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLCtCQUFjLHVCQUF1QixDQUFDOzs7O0FBQ3RDLE1BQU0sVUFBVSxPQUFPO0lBQ3JCLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbG9hZGFibGVcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkYWJsZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9sb2FkYWJsZS5tb2R1bGUnO1xuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoZXIoKSB7XG4gIHJldHVybiBudWxsO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1sb2FkYWJsZS8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLHdFQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGtDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLCtCQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBsb2FkYWJsZVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRhYmxlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbG9hZGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xvYWRhYmxlLm1vZHVsZSc7XG4iXX0=

@@ -1,5 +0,4 @@

import { InjectionToken, TemplateRef, Injectable, NgModuleFactoryLoader, ComponentFactoryResolver, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Injector, ElementRef, Optional, Inject, Input, Output, ViewChild, ViewContainerRef, ContentChild, ANALYZE_FOR_ENTRY_COMPONENTS, NgModule, SystemJsNgModuleLoader } from '@angular/core';
import { InjectionToken, TemplateRef, NgModuleRef, Injectable, Compiler, ComponentFactoryResolver, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Injector, Optional, Inject, ElementRef, Input, Output, ViewChild, ViewContainerRef, ANALYZE_FOR_ENTRY_COMPONENTS, NgModule } from '@angular/core';
import { __awaiter } from 'tslib';
import { CommonModule } from '@angular/common';
import { provideRoutes } from '@angular/router';

@@ -14,11 +13,9 @@ /**

const LOADABLE_ROOT_OPTIONS = new InjectionToken('LOADABLE_ROOT_OPTIONS');
/** @type {?} */
const LOG_PREFIX = 'ngx-loadable';
class LoadableService {
/**
* @param {?} loader
* @param {?} compiler
* @param {?} cfr
*/
constructor(loader, cfr) {
this.loader = loader;
constructor(compiler, cfr) {
this.compiler = compiler;
this.cfr = cfr;

@@ -32,18 +29,8 @@ this.modules = [];

addConfig(config) {
config.forEach((/**
* @param {?} newModule
* @return {?}
*/
newModule => {
/** @type {?} */
const existingModule = this.getModule(newModule.name);
if (existingModule.loadChildren) {
console.warn(
// tslint:disable-next-line:max-line-length
`${LOG_PREFIX} - ModuleConfig with name '${newModule.name}' was previously added, it will not be added multiple times, continue...`);
}
else {
this.modules.push(newModule);
}
}));
if (config) {
this.modules = [
...this.modules,
...config,
];
}
}

@@ -55,7 +42,9 @@ /**

getModule(module) {
return this.modules.find((/**
/** @type {?} */
const mod = this.modules.find((/**
* @param {?} m
* @return {?}
*/
m => m.name === module)) || ((/** @type {?} */ ({})));
m => m.name === module));
return mod;
}

@@ -66,12 +55,11 @@ /**

*/
getModulePath(module) {
return this.getModule(module).loadChildren;
}
/**
* @param {?} module
* @return {?}
*/
preload(module) {
return this.loader
.load(this.getModulePath(module));
if (typeof module === 'string') {
module = this.getModule(module).load;
}
return module().then((/**
* @param {?} Module
* @return {?}
*/
Module => this.compiler.compileModuleAsync(Module)));
}

@@ -88,3 +76,3 @@ /**

*/
m => m.name));
m => m.load));
}

@@ -107,5 +95,2 @@ return Promise.all(modules.map((/**

let factory;
if (!mr) {
return;
}
if (mr instanceof TemplateRef) {

@@ -115,6 +100,6 @@ vcr.remove();

}
if (((/** @type {?} */ (mr))).componentFactoryResolver) {
if (mr instanceof NgModuleRef) {
/** @type {?} */
const rootComponent = ((/** @type {?} */ (mr)))._bootstrapComponents[0];
factory = ((/** @type {?} */ (mr))).componentFactoryResolver.resolveComponentFactory(rootComponent);
factory = mr.componentFactoryResolver.resolveComponentFactory(rootComponent);
}

@@ -135,6 +120,6 @@ else {

LoadableService.ctorParameters = () => [
{ type: NgModuleFactoryLoader },
{ type: Compiler },
{ type: ComponentFactoryResolver }
];
/** @nocollapse */ LoadableService.ngInjectableDef = ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(ɵɵinject(NgModuleFactoryLoader), ɵɵinject(ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
/** @nocollapse */ LoadableService.ngInjectableDef = ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(ɵɵinject(Compiler), ɵɵinject(ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
if (false) {

@@ -147,3 +132,3 @@ /** @type {?} */

*/
LoadableService.prototype.loader;
LoadableService.prototype.compiler;
/**

@@ -164,11 +149,12 @@ * @type {?}

* @param {?} ls
* @param {?} options
* @param {?} el
* @param {?} options
*/
constructor(inj, ls, el, options) {
constructor(inj, ls, options, el) {
this.inj = inj;
this.ls = ls;
this.options = options;
this.el = el;
this.options = options;
this.show = false;
this.isElement = false;
this.init = new EventEmitter();

@@ -247,3 +233,5 @@ this.loading = false;

this.loading = true;
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
if (this.options.loadingComponent) {
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
}
if (this.timeout === 0) {

@@ -253,3 +241,3 @@ this._renderTimeoutTemplate();

else if (this.timeout > 0) {
this.timeoutRef = setTimeout((/**
setTimeout((/**
* @return {?}

@@ -267,5 +255,2 @@ */

(mf) => {
if (this.timeoutRef) {
clearTimeout(this.timeoutRef);
}
if (mf instanceof Error) {

@@ -304,4 +289,4 @@ return;

{ type: LoadableService },
{ type: ElementRef },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] }
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] },
{ type: ElementRef }
];

@@ -312,8 +297,8 @@ LoadableComponent.propDecorators = {

timeout: [{ type: Input }],
loadingTemplate: [{ type: Input }],
errorTemplate: [{ type: Input }],
timeoutTemplate: [{ type: Input }],
isElement: [{ type: Input }],
init: [{ type: Output }],
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }],
loadingTemplate: [{ type: ContentChild, args: ['loading', { read: TemplateRef, static: false },] }],
errorTemplate: [{ type: ContentChild, args: ['error', { read: TemplateRef, static: false },] }],
timeoutTemplate: [{ type: ContentChild, args: ['timedOut', { read: TemplateRef, static: false },] }]
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }]
};

@@ -328,2 +313,8 @@ if (false) {

/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/** @type {?} */
LoadableComponent.prototype.isElement;

@@ -334,8 +325,2 @@ /** @type {?} */

LoadableComponent.prototype.content;
/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/**

@@ -354,4 +339,2 @@ * @type {?}

LoadableComponent.prototype.timedOut;
/** @type {?} */
LoadableComponent.prototype.timeoutRef;
/**

@@ -371,3 +354,3 @@ * @type {?}

*/
LoadableComponent.prototype.el;
LoadableComponent.prototype.options;
/**

@@ -377,3 +360,3 @@ * @type {?}

*/
LoadableComponent.prototype.options;
LoadableComponent.prototype.el;
}

@@ -408,3 +391,2 @@

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]

@@ -424,4 +406,3 @@ };

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]
],
};

@@ -436,5 +417,3 @@ }

],
providers: [
{ provide: NgModuleFactoryLoader, useClass: SystemJsNgModuleLoader }
],
providers: [],
exports: [LoadableComponent]

@@ -453,8 +432,2 @@ },] }

*/
/**
* @return {?}
*/
function matcher() {
return null;
}

@@ -466,3 +439,3 @@ /**

export { LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableComponent, LoadableModule, LoadableService, matcher };
export { LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableComponent, LoadableModule, LoadableService };
//# sourceMappingURL=ngx-loadable.js.map

@@ -1,5 +0,4 @@

import { InjectionToken, TemplateRef, Injectable, NgModuleFactoryLoader, ComponentFactoryResolver, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Injector, ElementRef, Optional, Inject, Input, Output, ViewChild, ViewContainerRef, ContentChild, ANALYZE_FOR_ENTRY_COMPONENTS, NgModule, SystemJsNgModuleLoader } from '@angular/core';
import { __awaiter, __generator } from 'tslib';
import { __spread, __awaiter, __generator } from 'tslib';
import { InjectionToken, TemplateRef, NgModuleRef, Injectable, Compiler, ComponentFactoryResolver, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Injector, Optional, Inject, ElementRef, Input, Output, ViewChild, ViewContainerRef, ANALYZE_FOR_ENTRY_COMPONENTS, NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { provideRoutes } from '@angular/router';

@@ -14,7 +13,5 @@ /**

var LOADABLE_ROOT_OPTIONS = new InjectionToken('LOADABLE_ROOT_OPTIONS');
/** @type {?} */
var LOG_PREFIX = 'ngx-loadable';
var LoadableService = /** @class */ (function () {
function LoadableService(loader, cfr) {
this.loader = loader;
function LoadableService(compiler, cfr) {
this.compiler = compiler;
this.cfr = cfr;

@@ -32,19 +29,5 @@ this.modules = [];

function (config) {
var _this = this;
config.forEach((/**
* @param {?} newModule
* @return {?}
*/
function (newModule) {
/** @type {?} */
var existingModule = _this.getModule(newModule.name);
if (existingModule.loadChildren) {
console.warn(
// tslint:disable-next-line:max-line-length
LOG_PREFIX + " - ModuleConfig with name '" + newModule.name + "' was previously added, it will not be added multiple times, continue...");
}
else {
_this.modules.push(newModule);
}
}));
if (config) {
this.modules = __spread(this.modules, config);
}
};

@@ -60,7 +43,9 @@ /**

function (module) {
return this.modules.find((/**
/** @type {?} */
var mod = this.modules.find((/**
* @param {?} m
* @return {?}
*/
function (m) { return m.name === module; })) || ((/** @type {?} */ ({})));
function (m) { return m.name === module; }));
return mod;
};

@@ -71,13 +56,2 @@ /**

*/
LoadableService.prototype.getModulePath = /**
* @param {?} module
* @return {?}
*/
function (module) {
return this.getModule(module).loadChildren;
};
/**
* @param {?} module
* @return {?}
*/
LoadableService.prototype.preload = /**

@@ -88,4 +62,11 @@ * @param {?} module

function (module) {
return this.loader
.load(this.getModulePath(module));
var _this = this;
if (typeof module === 'string') {
module = this.getModule(module).load;
}
return module().then((/**
* @param {?} Module
* @return {?}
*/
function (Module) { return _this.compiler.compileModuleAsync(Module); }));
};

@@ -107,3 +88,3 @@ /**

*/
function (m) { return m.name; }));
function (m) { return m.load; }));
}

@@ -131,5 +112,2 @@ return Promise.all(modules.map((/**

var factory;
if (!mr) {
return;
}
if (mr instanceof TemplateRef) {

@@ -139,6 +117,6 @@ vcr.remove();

}
if (((/** @type {?} */ (mr))).componentFactoryResolver) {
if (mr instanceof NgModuleRef) {
/** @type {?} */
var rootComponent = ((/** @type {?} */ (mr)))._bootstrapComponents[0];
factory = ((/** @type {?} */ (mr))).componentFactoryResolver.resolveComponentFactory(rootComponent);
factory = mr.componentFactoryResolver.resolveComponentFactory(rootComponent);
}

@@ -158,6 +136,6 @@ else {

LoadableService.ctorParameters = function () { return [
{ type: NgModuleFactoryLoader },
{ type: Compiler },
{ type: ComponentFactoryResolver }
]; };
/** @nocollapse */ LoadableService.ngInjectableDef = ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(ɵɵinject(NgModuleFactoryLoader), ɵɵinject(ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
/** @nocollapse */ LoadableService.ngInjectableDef = ɵɵdefineInjectable({ factory: function LoadableService_Factory() { return new LoadableService(ɵɵinject(Compiler), ɵɵinject(ComponentFactoryResolver)); }, token: LoadableService, providedIn: "root" });
return LoadableService;

@@ -172,3 +150,3 @@ }());

*/
LoadableService.prototype.loader;
LoadableService.prototype.compiler;
/**

@@ -186,8 +164,9 @@ * @type {?}

var LoadableComponent = /** @class */ (function () {
function LoadableComponent(inj, ls, el, options) {
function LoadableComponent(inj, ls, options, el) {
this.inj = inj;
this.ls = ls;
this.options = options;
this.el = el;
this.options = options;
this.show = false;
this.isElement = false;
this.init = new EventEmitter();

@@ -292,3 +271,5 @@ this.loading = false;

this.loading = true;
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
if (this.options.loadingComponent) {
this.ls._renderVCR(this.loadingTemplate || this.ls.getModule(this.module).loadingComponent || this.options.loadingComponent, this.content);
}
if (this.timeout === 0) {

@@ -298,3 +279,3 @@ this._renderTimeoutTemplate();

else if (this.timeout > 0) {
this.timeoutRef = setTimeout((/**
setTimeout((/**
* @return {?}

@@ -312,5 +293,2 @@ */

function (mf) {
if (_this.timeoutRef) {
clearTimeout(_this.timeoutRef);
}
if (mf instanceof Error) {

@@ -350,4 +328,4 @@ return;

{ type: LoadableService },
{ type: ElementRef },
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] }
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [LOADABLE_ROOT_OPTIONS,] }] },
{ type: ElementRef }
]; };

@@ -358,8 +336,8 @@ LoadableComponent.propDecorators = {

timeout: [{ type: Input }],
loadingTemplate: [{ type: Input }],
errorTemplate: [{ type: Input }],
timeoutTemplate: [{ type: Input }],
isElement: [{ type: Input }],
init: [{ type: Output }],
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }],
loadingTemplate: [{ type: ContentChild, args: ['loading', { read: TemplateRef, static: false },] }],
errorTemplate: [{ type: ContentChild, args: ['error', { read: TemplateRef, static: false },] }],
timeoutTemplate: [{ type: ContentChild, args: ['timedOut', { read: TemplateRef, static: false },] }]
content: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }]
};

@@ -376,2 +354,8 @@ return LoadableComponent;

/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/** @type {?} */
LoadableComponent.prototype.isElement;

@@ -382,8 +366,2 @@ /** @type {?} */

LoadableComponent.prototype.content;
/** @type {?} */
LoadableComponent.prototype.loadingTemplate;
/** @type {?} */
LoadableComponent.prototype.errorTemplate;
/** @type {?} */
LoadableComponent.prototype.timeoutTemplate;
/**

@@ -402,4 +380,2 @@ * @type {?}

LoadableComponent.prototype.timedOut;
/** @type {?} */
LoadableComponent.prototype.timeoutRef;
/**

@@ -419,3 +395,3 @@ * @type {?}

*/
LoadableComponent.prototype.el;
LoadableComponent.prototype.options;
/**

@@ -425,3 +401,3 @@ * @type {?}

*/
LoadableComponent.prototype.options;
LoadableComponent.prototype.el;
}

@@ -458,3 +434,2 @@

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]

@@ -479,4 +454,3 @@ };

{ provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: config, multi: true },
provideRoutes(config.moduleConfigs),
]
],
};

@@ -490,5 +464,3 @@ };

],
providers: [
{ provide: NgModuleFactoryLoader, useClass: SystemJsNgModuleLoader }
],
providers: [],
exports: [LoadableComponent]

@@ -509,8 +481,2 @@ },] }

*/
/**
* @return {?}
*/
function matcher() {
return null;
}

@@ -522,3 +488,3 @@ /**

export { LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableComponent, LoadableModule, LoadableService, matcher };
export { LOADABLE_CONFIG, LOADABLE_ROOT_OPTIONS, LoadableComponent, LoadableModule, LoadableService };
//# sourceMappingURL=ngx-loadable.js.map

@@ -1,2 +0,2 @@

import { ViewContainerRef, Injector, SimpleChanges, OnChanges, EventEmitter, TemplateRef, ElementRef } from '@angular/core';
import { ViewContainerRef, Injector, SimpleChanges, OnChanges, EventEmitter, ElementRef, TemplateRef } from '@angular/core';
import { LoadableService } from './loadable.service';

@@ -7,13 +7,13 @@ import { ILoadableRootOptions } from './loadable.config';

private ls;
private options;
private el;
private options;
module: string;
show: boolean;
timeout: number | undefined;
loadingTemplate: TemplateRef<any>;
errorTemplate: TemplateRef<any>;
timeoutTemplate: TemplateRef<any>;
isElement: boolean;
init: EventEmitter<any>;
content: ViewContainerRef;
loadingTemplate: TemplateRef<any>;
errorTemplate: TemplateRef<any>;
timeoutTemplate: TemplateRef<any>;
private mr;

@@ -24,4 +24,3 @@ loading: boolean;

timedOut: boolean;
timeoutRef: any;
constructor(inj: Injector, ls: LoadableService, el: ElementRef, options: ILoadableRootOptions);
constructor(inj: Injector, ls: LoadableService, options: ILoadableRootOptions, el: ElementRef);
preload(): Promise<any>;

@@ -28,0 +27,0 @@ private _render;

import { Type } from '@angular/core';
export declare type FunctionReturningPromise = () => Promise<any>;
export interface ModuleConfig {
name: string;
loadChildren?: string;
matcher: () => null;
load: FunctionReturningPromise;
loadingComponent?: Type<any>;
errorComponent?: Type<any>;
timeoutTemplate?: Type<any>;
timeout?: number;
isElement?: boolean;
}
export interface ExtraOptions {
timeout?: number;
loadingComponent?: Type<any>;
errorComponent?: Type<any>;
timeoutTemplate?: Type<any>;
elements?: boolean;
}
export declare type ModulesConfig = ModuleConfig[];
export interface ILoadableRootOptions {
timeout?: number;
loadingComponent?: Type<any>;

@@ -13,0 +23,0 @@ errorComponent?: Type<any>;

import { ModuleWithProviders } from '@angular/compiler/src/core';
import { LoadableService } from './loadable.service';
import { ILoadableConfig, ModuleConfig, ILoadableRootConfig } from './loadable.config';
import { ModulesConfig, ILoadableRootConfig, ILoadableConfig } from './loadable.config';
export declare class LoadableModule {
static forRoot(config?: ILoadableRootConfig): ModuleWithProviders;
static forFeature(config?: ILoadableConfig): ModuleWithProviders;
constructor(ls: LoadableService, configs?: ModuleConfig[][]);
constructor(ls: LoadableService, configs?: ModulesConfig[]);
}

@@ -1,16 +0,15 @@

import { InjectionToken, NgModuleFactory, NgModuleFactoryLoader, ViewContainerRef, NgModuleRef, Type, TemplateRef, ComponentFactoryResolver } from '@angular/core';
import { ModuleConfig, ILoadableRootOptions } from './loadable.config';
export declare const LOADABLE_CONFIG: InjectionToken<ModuleConfig[]>;
export declare const LOADABLE_ROOT_OPTIONS: InjectionToken<ILoadableRootOptions>;
import { InjectionToken, NgModuleFactory, ViewContainerRef, NgModuleRef, Compiler, Type, ComponentFactoryResolver, TemplateRef } from '@angular/core';
import { ModulesConfig, FunctionReturningPromise, ModuleConfig, ExtraOptions } from './loadable.config';
export declare const LOADABLE_CONFIG: InjectionToken<LoadableService>;
export declare const LOADABLE_ROOT_OPTIONS: InjectionToken<ExtraOptions>;
export declare class LoadableService {
private loader;
private compiler;
private cfr;
modules: ModuleConfig[];
constructor(loader: NgModuleFactoryLoader, cfr: ComponentFactoryResolver);
addConfig(config: ModuleConfig[]): void;
modules: ModulesConfig;
constructor(compiler: Compiler, cfr: ComponentFactoryResolver);
addConfig(config: ModulesConfig): void;
getModule(module: string): ModuleConfig;
getModulePath(module: string): string;
preload(module: string): Promise<NgModuleFactory<any>>;
preloadAll(modules?: string[]): Promise<NgModuleFactory<any>[]>;
_renderVCR(mr: NgModuleRef<any> | Type<any> | TemplateRef<any>, vcr: ViewContainerRef): import("@angular/core").EmbeddedViewRef<any> | import("@angular/core").ComponentRef<unknown>;
preload(module: string | FunctionReturningPromise): Promise<NgModuleFactory<any>>;
preloadAll(modules?: (string | FunctionReturningPromise)[]): Promise<NgModuleFactory<any>[]>;
_renderVCR(mr: NgModuleRef<any> | TemplateRef<any> | Type<any>, vcr: ViewContainerRef): import("@angular/core").EmbeddedViewRef<any> | import("@angular/core").ComponentRef<unknown>;
}

@@ -5,2 +5,2 @@ /**

export * from './public_api';
export { ILoadableRootOptions as ɵb, ModuleConfig as ɵa } from './lib/loadable.config';
export { ILoadableRootOptions as ɵb, ModulesConfig as ɵa } from './lib/loadable.config';

@@ -1,1 +0,1 @@

{"__symbolic":"module","version":4,"metadata":{"matcher":{"__symbolic":"function","parameters":[],"value":null},"LOADABLE_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":5,"character":35},"arguments":["LOADABLE_CONFIG"]},"LOADABLE_ROOT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":6,"character":41},"arguments":["LOADABLE_ROOT_OPTIONS"]},"LoadableService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":11,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":17,"character":20},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":18,"character":17}]}],"addConfig":[{"__symbolic":"method"}],"getModule":[{"__symbolic":"method"}],"getModulePath":[{"__symbolic":"method"}],"preload":[{"__symbolic":"method"}],"preloadAll":[{"__symbolic":"method"}],"_renderVCR":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"LoadableComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"ngx-loadable","template":"\n <ng-template #content></ng-template>\n ","styles":[]}]}],"members":{"module":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"show":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"timeout":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"isElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":32,"character":3}}]}],"content":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":34,"character":3},"arguments":["content",{"read":{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":34,"character":32},"static":true}]}]}],"loadingTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":35,"character":3},"arguments":["loading",{"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":35,"character":35},"static":false}]}]}],"errorTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":36,"character":3},"arguments":["error",{"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":36,"character":33},"static":false}]}]}],"timeoutTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":37,"character":3},"arguments":["timedOut",{"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":37,"character":36},"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":49,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":49,"character":17},"arguments":[{"__symbolic":"reference","name":"LOADABLE_ROOT_OPTIONS"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":46,"character":17},{"__symbolic":"reference","name":"LoadableService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":48,"character":16},{"__symbolic":"reference","name":"ɵb"}]}],"preload":[{"__symbolic":"method"}],"_render":[{"__symbolic":"method"}],"reload":[{"__symbolic":"method"}],"_renderTimeoutTemplate":[{"__symbolic":"method"}],"loadFn":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"LoadableModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"LoadableComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":12,"character":4}],"providers":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"NgModuleFactoryLoader","line":15,"character":15},"useClass":{"__symbolic":"reference","module":"@angular/core","name":"SystemJsNgModuleLoader","line":15,"character":48}}],"exports":[{"__symbolic":"reference","name":"LoadableComponent"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":47,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":47,"character":17},"arguments":[{"__symbolic":"reference","name":"LOADABLE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","name":"LoadableService"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"ɵa"}]}]}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"LoadableModule"},"providers":[{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{},"multi":true,"deps":[{"__symbolic":"reference","name":"LoadableService"}]},{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"moduleConfigs"},"multi":true},{"provide":{"__symbolic":"reference","name":"LOADABLE_ROOT_OPTIONS"},"useValue":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"rootOptions"},"right":{}}},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"ANALYZE_FOR_ENTRY_COMPONENTS","line":27,"character":19},"useValue":{"__symbolic":"reference","name":"config"},"multi":true},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/router","name":"provideRoutes","line":28,"character":8},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"moduleConfigs"}]}]}},"forFeature":{"__symbolic":"function","parameters":["config"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"LoadableModule"},"providers":[{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{},"multi":true,"deps":[{"__symbolic":"reference","name":"LoadableService"}]},{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"moduleConfigs"},"multi":true},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"ANALYZE_FOR_ENTRY_COMPONENTS","line":39,"character":19},"useValue":{"__symbolic":"reference","name":"config"},"multi":true},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/router","name":"provideRoutes","line":40,"character":8},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"moduleConfigs"}]}]}}}},"ɵa":{"__symbolic":"interface"},"ɵb":{"__symbolic":"interface"}},"origins":{"matcher":"./public_api","LOADABLE_CONFIG":"./lib/loadable.service","LOADABLE_ROOT_OPTIONS":"./lib/loadable.service","LoadableService":"./lib/loadable.service","LoadableComponent":"./lib/loadable.component","LoadableModule":"./lib/loadable.module","ɵa":"./lib/loadable.config","ɵb":"./lib/loadable.config"},"importAs":"ngx-loadable"}
{"__symbolic":"module","version":4,"metadata":{"LOADABLE_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":13,"character":35},"arguments":["LOADABLE_CONFIG"]},"LOADABLE_ROOT_OPTIONS":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":15,"character":41},"arguments":["LOADABLE_ROOT_OPTIONS"]},"LoadableService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":17,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":23,"character":22},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":24,"character":17}]}],"addConfig":[{"__symbolic":"method"}],"getModule":[{"__symbolic":"method"}],"preload":[{"__symbolic":"method"}],"preloadAll":[{"__symbolic":"method"}],"_renderVCR":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"LoadableComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":19,"character":1},"arguments":[{"selector":"ngx-loadable","template":"\n <ng-template #content></ng-template>\n ","styles":[]}]}],"members":{"module":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"show":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"timeout":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"loadingTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"errorTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"timeoutTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"isElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"content":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":36,"character":3},"arguments":["content",{"read":{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":36,"character":32},"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":47,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":47,"character":17},"arguments":[{"__symbolic":"reference","name":"LOADABLE_ROOT_OPTIONS"}]}],null],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":45,"character":17},{"__symbolic":"reference","name":"LoadableService"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":48,"character":16}]}],"preload":[{"__symbolic":"method"}],"_render":[{"__symbolic":"method"}],"reload":[{"__symbolic":"method"}],"_renderTimeoutTemplate":[{"__symbolic":"method"}],"loadFn":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"LoadableModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"LoadableComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":11,"character":4}],"providers":[],"exports":[{"__symbolic":"reference","name":"LoadableComponent"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":42,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":42,"character":17},"arguments":[{"__symbolic":"reference","name":"LOADABLE_CONFIG"}]}]],"parameters":[{"__symbolic":"reference","name":"LoadableService"},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"reference","name":"ɵa"}]}]}]},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"LoadableModule"},"providers":[{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{},"multi":true,"deps":[{"__symbolic":"reference","name":"LoadableService"}]},{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"moduleConfigs"},"multi":true},{"provide":{"__symbolic":"reference","name":"LOADABLE_ROOT_OPTIONS"},"useValue":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"rootOptions"},"right":{}}},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"ANALYZE_FOR_ENTRY_COMPONENTS","line":24,"character":19},"useValue":{"__symbolic":"reference","name":"config"},"multi":true}]}},"forFeature":{"__symbolic":"function","parameters":["config"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"LoadableModule"},"providers":[{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{},"multi":true,"deps":[{"__symbolic":"reference","name":"LoadableService"}]},{"provide":{"__symbolic":"reference","name":"LOADABLE_CONFIG"},"useValue":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"config"},"member":"moduleConfigs"},"multi":true},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"ANALYZE_FOR_ENTRY_COMPONENTS","line":35,"character":19},"useValue":{"__symbolic":"reference","name":"config"},"multi":true}]}}}},"ɵa":{"__symbolic":"interface"},"ɵb":{"__symbolic":"interface"}},"origins":{"LOADABLE_CONFIG":"./lib/loadable.service","LOADABLE_ROOT_OPTIONS":"./lib/loadable.service","LoadableService":"./lib/loadable.service","LoadableComponent":"./lib/loadable.component","LoadableModule":"./lib/loadable.module","ɵa":"./lib/loadable.config","ɵb":"./lib/loadable.config"},"importAs":"ngx-loadable"}
{
"name": "ngx-loadable",
"version": "2.0.0",
"version": "3.0.0-alpha.4",
"description": "ngx-loadable: Simpler Lazy Loading Non Routable Angular Modules",

@@ -17,5 +17,4 @@ "keywords": [

"peerDependencies": {
"@angular/common": ">7.0.0 <9.0.0",
"@angular/core": ">7.0.0 <9.0.0",
"@angular/router": ">7.0.0 <9.0.0"
"@angular/common": ">9.0.0",
"@angular/core": ">9.0.0"
},

@@ -22,0 +21,0 @@ "main": "bundles/ngx-loadable.umd.js",

export * from './lib/loadable.service';
export * from './lib/loadable.component';
export * from './lib/loadable.module';
export declare function matcher(): any;

@@ -1,24 +0,100 @@

# Loadable
# ngx-loadable
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.
[![npm](https://badgen.net/npm/v/ngx-loadable)](https://www.npmjs.com/package/ngx-loadable) [![license](https://img.shields.io/github/license/mohammedzamakhan/ngx-loadable.svg)](https://github.com/mohammedzamakhan/ngx-loadable/master/LICENSE) [![size](https://badgen.net/bundlephobia/minzip/ngx-loadable)](https://bundlephobia.com/result?p=ngx-loadable)
## Code scaffolding
![ngx-loadable logo](https://cdn-images-1.medium.com/max/1600/1*D-rdCEVxbkbGOVdrA3v4bA.png)
*The library logo represents faster application like speed of wind*
Run `ng generate component component-name --project loadable` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project loadable`.
> Note: Don't forget to add `--project loadable` or else it will be added to the default project in your `angular.json` file.
## Table of Contents
- [Problem](#problem)
- [Solution](#solution)
- [Install](#install)
- [Usage](#usage)
- [Contribute](#contribute)
- [License](#license)
## Build
## Problem
Run `ng build loadable` to build the project. The build artifacts will be stored in the `dist/` directory.
Angular provides an easy way for adding route based lazy loading modules. But in most of the projects, each route tends to have a lot of different components. It could be because of lots of modals, tabs, and components that appear based on user interaction in a single route.
## Publishing
## Solution
After building your library with `ng build loadable`, go to the dist folder `cd dist/loadable` and run `npm publish`.
The `ngx-loadable` wraps the complex implementation for lazy loading non routable modules in a simple API. It provides a component `ngx-loadable` and a service `LoadableService` to lazy load modules. A component can be used to control the loading of one module and to display different states, i.e. loading, error, timedOut and loaded.
## Install
## Running unit tests
Install and manage the ngx-loadable using NPM. You may use `yarn` or `npm`.
Run `ng test loadable` to execute the unit tests via [Karma](https://karma-runner.github.io).
`npm install ngx-loadable --save`
## Further help
or
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
`yarn add ngx-loadable`
## Usage
### NgModule
Import the LoadableModule in the NgModule and declare them in the "imports", you can also use the `forRoot()` for `forChild()` function.
- Step 1:
``` ts
import { LoadableModule } from 'ngx-loadable';
@NgModule({
imports: [
LoadableModule
]
})
```
- Step 2:
Create a Module with a Component bootstrapped to the Module
- Step 3:
Include the module path in the lazyModules array in angular.json file, for it to be created as a lazy module by Angular CLI
- Step 4:
Use the `ngx-loadable` component
```html
<button (click)="show = true" (mouseenter)="loginModalModule.preload()">
Preload on mouseenter and show on click
</button>
<ngx-loadable
#loginModalModule
[module]="'login-modal'"
[show]="show"
[timeout]="1000"
>
<div loading>Loading...</div>
<div error>Error</div>
<div timedOut>
TimedOut!
<button (click)="loginModalModule.reload()">
Reload
</button>
</div>
</ngx-loadable>
```
or use the `LoadableService`
```ts
import { LoadableService } from 'ngx-loadable';
...
class YourComponent {
contructor(private loadableService: LoadableService) { }
load() {
this.loadableService.preload('lazy')
.then(() => console.log('loaded'))
.catch((error) => console.error(error));
}
}
}
```
## Contribute
Please contribute by creating issues/PRs
## License
[© 2019 ngx-loadable. All Rights Reserved.](../LICENSE)

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc