Socket
Socket
Sign inDemoInstall

angular-i18next

Package Overview
Dependencies
Maintainers
1
Versions
93
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular-i18next - npm Package Compare versions

Comparing version 6.1.0-beta to 6.1.0

129

bundles/angular-i18next.umd.js

@@ -11,3 +11,3 @@ (function (global, factory) {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -85,3 +85,3 @@ /** @type {?} */

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -159,3 +159,6 @@ var I18NextPipe = /** @class */ (function () {

keysWithScope.push.apply(// Do not set scope, if key contains a namespace
keysWithScope, __spread(scope.map(function (sc) { return _this.joinStrings(keySeparator, sc, k); })));
keysWithScope, __spread(scope.map(( /**
* @param {?} sc
* @return {?}
*/function (sc) { return _this.joinStrings(keySeparator, sc, k); }))));
}

@@ -199,3 +202,6 @@ keysWithScope.push(k);

keysWithNamespace.push.apply(// Do not set namespace, if key contains a namespace
keysWithNamespace, __spread(ns.map(function (n) { return _this.joinStrings(nsSeparator, n, k); })));
keysWithNamespace, __spread(ns.map(( /**
* @param {?} n
* @return {?}
*/function (n) { return _this.joinStrings(nsSeparator, n, k); }))));
}

@@ -279,3 +285,3 @@ keysWithNamespace.push(k);

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -321,3 +327,3 @@ var I18NextCapPipe = /** @class */ (function (_super) {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -338,3 +344,7 @@ var NativeErrorHandlingStrategy = /** @class */ (function () {

function (resolve, reject) {
return function (err, t) {
return ( /**
* @param {?} err
* @param {?=} t
* @return {?}
*/function (err, t) {
/** @type {?} */

@@ -346,3 +356,3 @@ var result = {

resolve(result);
};
});
};

@@ -365,3 +375,7 @@ return NativeErrorHandlingStrategy;

function (resolve, reject) {
return function (err, t) {
return ( /**
* @param {?} err
* @param {?=} t
* @return {?}
*/function (err, t) {
/** @type {?} */

@@ -377,3 +391,3 @@ var result = {

reject(err);
};
});
};

@@ -385,3 +399,3 @@ return StrictErrorHandlingStrategy;

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -424,3 +438,3 @@ var I18NextFormatPipe = /** @class */ (function () {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -442,3 +456,3 @@ var I18NextEvents = /** @class */ (function () {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -491,5 +505,9 @@ /** @type {?} */

this.subscribeEvents();
return new Promise(function (resolve, reject) {
return new Promise(( /**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/function (resolve, reject) {
i18next.init.call(i18next, Object.assign({}, options), _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -586,5 +604,9 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise(( /**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/function (resolve, reject) {
i18next.changeLanguage.call(i18next, lng, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -601,5 +623,9 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise(( /**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/function (resolve, reject) {
i18next.loadNamespaces.call(i18next, namespaces, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -618,5 +644,9 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise(( /**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/function (resolve, reject) {
i18next.loadLanguages.call(i18next, lngs, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -765,17 +795,45 @@ //#region resource handling

var _this = this;
i18next.on.call(i18next, 'initialized', function (options) {
i18next.on.call(i18next, 'initialized', ( /**
* @param {?} options
* @return {?}
*/function (options) {
_this.language = i18next.language;
_this.languages = i18next.languages;
_this.events.initialized.next(options);
});
i18next.on.call(i18next, 'loaded', function (loaded) { return _this.events.loaded.next(loaded); });
i18next.on.call(i18next, 'failedLoading', function (lng, ns, msg) { return _this.events.failedLoading.next({ lng: lng, ns: ns, msg: msg }); });
i18next.on.call(i18next, 'languageChanged', function (lng) {
}));
i18next.on.call(i18next, 'loaded', ( /**
* @param {?} loaded
* @return {?}
*/function (loaded) { return _this.events.loaded.next(loaded); }));
i18next.on.call(i18next, 'failedLoading', ( /**
* @param {?} lng
* @param {?} ns
* @param {?} msg
* @return {?}
*/function (lng, ns, msg) { return _this.events.failedLoading.next({ lng: lng, ns: ns, msg: msg }); }));
i18next.on.call(i18next, 'languageChanged', ( /**
* @param {?} lng
* @return {?}
*/function (lng) {
_this.language = i18next.language;
_this.languages = i18next.languages;
_this.events.languageChanged.next(lng);
});
i18next.on.call(i18next, 'missingKey', function (lngs, namespace, key, res) { return _this.events.missingKey.next({ lngs: lngs, namespace: namespace, key: key, res: res }); });
i18next.on.call(i18next, 'added', function (lng, ns) { return _this.events.added.next({ lng: lng, ns: ns }); });
i18next.on.call(i18next, 'removed', function (lng, ns) { return _this.events.removed.next({ lng: lng, ns: ns }); });
}));
i18next.on.call(i18next, 'missingKey', ( /**
* @param {?} lngs
* @param {?} namespace
* @param {?} key
* @param {?} res
* @return {?}
*/function (lngs, namespace, key, res) { return _this.events.missingKey.next({ lngs: lngs, namespace: namespace, key: key, res: res }); }));
i18next.on.call(i18next, 'added', ( /**
* @param {?} lng
* @param {?} ns
* @return {?}
*/function (lng, ns) { return _this.events.added.next({ lng: lng, ns: ns }); }));
i18next.on.call(i18next, 'removed', ( /**
* @param {?} lng
* @param {?} ns
* @return {?}
*/function (lng, ns) { return _this.events.removed.next({ lng: lng, ns: ns }); }));
};

@@ -796,3 +854,3 @@ I18NextService.decorators = [

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -845,3 +903,3 @@ var I18NextTitle = /** @class */ (function (_super) {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

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

namespaces = activatedRouteSnapshot.data && activatedRouteSnapshot.data.i18nextNamespaces || namespaces;
return this.loadNamespaces(namespaces.filter(function (n) { return n; }));
return this.loadNamespaces(namespaces.filter(( /**
* @param {?} n
* @return {?}
*/function (n) { return n; })));
}

@@ -995,3 +1056,3 @@ /**

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -998,0 +1059,0 @@

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

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("i18next"),require("rxjs"),require("@angular/common"),require("@angular/core"),require("@angular/platform-browser")):"function"==typeof define&&define.amd?define("angular-i18next",["exports","i18next","rxjs","@angular/common","@angular/core","@angular/platform-browser"],t):t(e["angular-i18next"]={},e.i18n,e.rxjs,e.ng.common,e.ng.core,e.ng.platformBrowser)}(this,function(e,t,n,o,a,r){"use strict";var i="default"in t?t["default"]:t,u=new a.InjectionToken("I18NEXT_SCOPE"),s=new a.InjectionToken("I18NEXT_NAMESPACE"),c=new a.InjectionToken("I18NEXT_SERVICE"),p=new a.InjectionToken("I18NEXT_NAMESPACE_RESOLVER"),l=new a.InjectionToken("I18NEXT_ERROR_HANDLING_STRATEGY"),f=function(e,t){return(f=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function d(e,t){function n(){this.constructor=e}f(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function g(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||0<t--)&&!(r=a.next()).done;)i.push(r.value)}catch(u){o={error:u}}finally{try{r&&!r.done&&(n=a["return"])&&n.call(a)}finally{if(o)throw o.error}}return i}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}var h=function(){function e(e,t,n){this.translateI18Next=e,this.ns=t,this.scope=n}return e.prototype.transform=function(e,t){t=this.prepareOptions(t);var n=this.translateI18Next.options;t.prependScope!==undefined&&!0!==t.prependScope||this.scope&&(e=this.prependScope(e,this.scope,n.keySeparator,n.nsSeparator)),t.prependNamespace!==undefined&&!0!==t.prependNamespace||this.ns&&(e=this.prependNamespace(e,this.ns,n.nsSeparator));var r=this.translateI18Next.t(e,t);return t.format&&r&&(r=this.translateI18Next.format(r,t.format,this.translateI18Next.language)),r},e.prototype.prependScope=function(n,r,o,a){var i=this;"string"==typeof n&&(n=[n]),"string"==typeof r&&(r=[r]);for(var u=[],e=function(e){var t=n[e];s.keyContainsNsSeparator(t,a)||u.push.apply(u,y(r.map(function(e){return i.joinStrings(o,e,t)}))),u.push(t)},s=this,t=0;t<n.length;t++)e(t);return u},e.prototype.prependNamespace=function(n,r,o){var a=this;"string"==typeof n&&(n=[n]),"string"==typeof r&&(r=[r]);for(var i=[],e=function(e){var t=n[e];u.keyContainsNsSeparator(t,o)||i.push.apply(i,y(r.map(function(e){return a.joinStrings(o,e,t)}))),i.push(t)},u=this,t=0;t<n.length;t++)e(t);return i},e.prototype.joinStrings=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return y(t).join(e)},e.prototype.keyContainsNsSeparator=function(e,t){return-1!==e.indexOf(t)},e.prototype.prepareOptions=function(e){return null!=(e=e||{}).context&&(e.context=e.context.toString()),e},e.decorators=[{type:a.Injectable},{type:a.Pipe,args:[{name:"i18next"}]}],e.ctorParameters=function(){return[{type:undefined,decorators:[{type:a.Inject,args:[c]}]},{type:undefined,decorators:[{type:a.Inject,args:[s]}]},{type:undefined,decorators:[{type:a.Inject,args:[u]}]}]},e}(),m=function(r){function e(e,t,n){return r.call(this,e,t,n)||this}return d(e,r),e.prototype.transform=function(e,t){return(t=t||{}).format="cap",r.prototype.transform.call(this,e,t)},e.decorators=[{type:a.Injectable},{type:a.Pipe,args:[{name:"i18nextCap"}]}],e.ctorParameters=function(){return[{type:undefined,decorators:[{type:a.Inject,args:[c]}]},{type:undefined,decorators:[{type:a.Inject,args:[s]}]},{type:undefined,decorators:[{type:a.Inject,args:[u]}]}]},e}(h),v=function(){function e(){}return e.prototype.handle=function(n,e){return function(e,t){n({err:e,t:t})}},e}(),N=function(){function e(){}return e.prototype.handle=function(r,o){return function(e,t){var n={err:e,t:t};e?o(e):r(n)}},e}(),x=function(){function e(e){this.translateI18Next=e}return e.prototype.transform=function(e,t){var n="string"==typeof t?{format:t}:t;return this.translateI18Next.format(e,n.format,n.lng)},e.decorators=[{type:a.Injectable},{type:a.Pipe,args:[{name:"i18nextFormat"}]}],e.ctorParameters=function(){return[{type:undefined,decorators:[{type:a.Inject,args:[c]}]}]},e}(),I=function T(){this.initialized=new n.BehaviorSubject(!1),this.loaded=new n.BehaviorSubject(!1),this.failedLoading=new n.Subject,this.missingKey=new n.Subject,this.added=new n.Subject,this.removed=new n.Subject,this.languageChanged=new n.BehaviorSubject(null)},S=i,j=function(){function e(e){this.errorHandlingStrategy=e,this.events=new I,this.language="",this.languages=[]}return Object.defineProperty(e.prototype,"options",{get:function(){return S.options},enumerable:!0,configurable:!0}),e.prototype.use=function(e){return S.use.call(S,e),this},e.prototype.init=function(n){var r=this;return n=n||{},this.subscribeEvents(),new Promise(function(e,t){S.init.call(S,Object.assign({},n),r.errorHandlingStrategy.handle(e,t))})},e.prototype.t=function(e,t){return t=t||{},S.t.call(S,e,t)},e.prototype.format=function(e,t,n){return S.format.call(S,e,t,n)},e.prototype.exists=function(e,t){return S.exists.call(S,e,t)},e.prototype.getFixedT=function(e,t){return S.getFixedT.call(S,e,t)},e.prototype.setDefaultNamespace=function(e){S.setDefaultNamespace.call(S,e)},e.prototype.dir=function(e){return void 0===e&&(e=undefined),S.dir.call(S,e)},e.prototype.changeLanguage=function(n){var r=this;return new Promise(function(e,t){S.changeLanguage.call(S,n,r.errorHandlingStrategy.handle(e,t))})},e.prototype.loadNamespaces=function(n){var r=this;return new Promise(function(e,t){S.loadNamespaces.call(S,n,r.errorHandlingStrategy.handle(e,t))})},e.prototype.loadLanguages=function(n,e){var r=this;return new Promise(function(e,t){S.loadLanguages.call(S,n,r.errorHandlingStrategy.handle(e,t))})},e.prototype.reloadResources=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];S.reloadResources.apply(S,e)},e.prototype.getResource=function(e,t,n,r){return S.getResource.call(S,e,t,n,r)},e.prototype.addResource=function(e,t,n,r,o){S.addResource.call(S,e,t,n,r,o)},e.prototype.addResources=function(e,t,n){S.addResources.call(S,e,t,n)},e.prototype.addResourceBundle=function(e,t,n,r,o){S.addResourceBundle.call(S,e,t,n,r,o)},e.prototype.hasResourceBundle=function(e,t){return S.hasResourceBundle.call(S,e,t)},e.prototype.getResourceBundle=function(e,t){return S.getResourceBundle.call(S,e,t)},e.prototype.removeResourceBundle=function(e,t){S.removeResourceBundle.call(S,e,t)},e.prototype.subscribeEvents=function(){var o=this;S.on.call(S,"initialized",function(e){o.language=S.language,o.languages=S.languages,o.events.initialized.next(e)}),S.on.call(S,"loaded",function(e){return o.events.loaded.next(e)}),S.on.call(S,"failedLoading",function(e,t,n){return o.events.failedLoading.next({lng:e,ns:t,msg:n})}),S.on.call(S,"languageChanged",function(e){o.language=S.language,o.languages=S.languages,o.events.languageChanged.next(e)}),S.on.call(S,"missingKey",function(e,t,n,r){return o.events.missingKey.next({lngs:e,namespace:t,key:n,res:r})}),S.on.call(S,"added",function(e,t){return o.events.added.next({lng:e,ns:t})}),S.on.call(S,"removed",function(e,t){return o.events.removed.next({lng:e,ns:t})})},e.decorators=[{type:a.Injectable}],e.ctorParameters=function(){return[{type:undefined,decorators:[{type:a.Inject,args:[l]}]}]},e}(),E=function(r){function e(e,t){var n=r.call(this,t)||this;return n.i18nextPipe=e,n}return d(e,r),e.prototype.setTitle=function(e){return r.prototype.setTitle.call(this,this.translate(e))},e.prototype.translate=function(e){return this.i18nextPipe.transform(e,{format:"cap"})},e.decorators=[{type:a.Injectable}],e.ctorParameters=function(){return[{type:h},{type:undefined,decorators:[{type:a.Inject,args:[o.DOCUMENT]}]}]},e}(r.Title);function R(e,t){var n=[];return n=e.data&&e.data.i18nextNamespaces||n,this.loadNamespaces(n.filter(function(e){return e}))}function b(e){return R.bind(e)}var w=function(){function t(){}return t.forRoot=function(e){return void 0===e&&(e={}),{ngModule:t,providers:[{provide:c,useClass:j},{provide:l,useClass:e.errorHandlingStrategy||v},j,h,m,x,E,{provide:p,useFactory:b,deps:[c]}]}},t.interpolationFormat=function(o){return void 0===o&&(o=null),function a(e,t,n){var r=P(e,t,n);return null===o?r:o(r,t,n)}},t.decorators=[{type:a.NgModule,args:[{providers:[{provide:s,useValue:""},{provide:u,useValue:""},h,m,x,E],declarations:[h,m,x],exports:[h,m,x]}]}],t}();function P(e,t,n){if(void 0===n&&(n=undefined),!e)return e;switch(t){case"upper":case"uppercase":return e.toUpperCase();case"lower":case"lowercase":return e.toLowerCase();case"cap":case"capitalize":return e.charAt(0).toUpperCase()+e.slice(1);case null:case undefined:case"none":default:return e}}e.resolver=R,e.i18nextNamespaceResolverFactory=b,e.defaultInterpolationFormat=P,e.I18NextModule=w,e.I18NEXT_SCOPE=u,e.I18NEXT_NAMESPACE=s,e.I18NEXT_SERVICE=c,e.I18NEXT_NAMESPACE_RESOLVER=p,e.I18NEXT_ERROR_HANDLING_STRATEGY=l,e.I18NextPipe=h,e.I18NextCapPipe=m,e.I18NextFormatPipe=x,e.I18NextService=j,e.I18NextTitle=E,e.NativeErrorHandlingStrategy=v,e.StrictErrorHandlingStrategy=N,Object.defineProperty(e,"__esModule",{value:!0})});
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("i18next"),require("rxjs"),require("@angular/common"),require("@angular/core"),require("@angular/platform-browser")):"function"==typeof define&&define.amd?define("angular-i18next",["exports","i18next","rxjs","@angular/common","@angular/core","@angular/platform-browser"],t):t(e["angular-i18next"]={},e.i18n,e.rxjs,e.ng.common,e.ng.core,e.ng.platformBrowser)}(this,function(e,t,n,r,o,a){"use strict";var i="default"in t?t["default"]:t,s=new o.InjectionToken("I18NEXT_SCOPE"),u=new o.InjectionToken("I18NEXT_NAMESPACE"),c=new o.InjectionToken("I18NEXT_SERVICE"),p=new o.InjectionToken("I18NEXT_NAMESPACE_RESOLVER"),l=new o.InjectionToken("I18NEXT_ERROR_HANDLING_STRATEGY"),d=function(e,t){return(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function f(e,t){function n(){this.constructor=e}d(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function g(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,a=n.call(e),i=[];try{for(;(void 0===t||0<t--)&&!(r=a.next()).done;)i.push(r.value)}catch(s){o={error:s}}finally{try{r&&!r.done&&(n=a["return"])&&n.call(a)}finally{if(o)throw o.error}}return i}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}var h=(v.prototype.transform=function(e,t){t=this.prepareOptions(t);var n=this.translateI18Next.options;t.prependScope!==undefined&&!0!==t.prependScope||this.scope&&(e=this.prependScope(e,this.scope,n.keySeparator,n.nsSeparator)),t.prependNamespace!==undefined&&!0!==t.prependNamespace||this.ns&&(e=this.prependNamespace(e,this.ns,n.nsSeparator));var r=this.translateI18Next.t(e,t);return t.format&&r&&(r=this.translateI18Next.format(r,t.format,this.translateI18Next.language)),r},v.prototype.prependScope=function(n,r,o,a){var i=this;"string"==typeof n&&(n=[n]),"string"==typeof r&&(r=[r]);for(var s=[],e=function(e){var t=n[e];u.keyContainsNsSeparator(t,a)||s.push.apply(s,y(r.map(function(e){return i.joinStrings(o,e,t)}))),s.push(t)},u=this,t=0;t<n.length;t++)e(t);return s},v.prototype.prependNamespace=function(n,r,o){var a=this;"string"==typeof n&&(n=[n]),"string"==typeof r&&(r=[r]);for(var i=[],e=function(e){var t=n[e];s.keyContainsNsSeparator(t,o)||i.push.apply(i,y(r.map(function(e){return a.joinStrings(o,e,t)}))),i.push(t)},s=this,t=0;t<n.length;t++)e(t);return i},v.prototype.joinStrings=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return y(t).join(e)},v.prototype.keyContainsNsSeparator=function(e,t){return-1!==e.indexOf(t)},v.prototype.prepareOptions=function(e){return null!=(e=e||{}).context&&(e.context=e.context.toString()),e},v.decorators=[{type:o.Injectable},{type:o.Pipe,args:[{name:"i18next"}]}],v.ctorParameters=function(){return[{type:undefined,decorators:[{type:o.Inject,args:[c]}]},{type:undefined,decorators:[{type:o.Inject,args:[u]}]},{type:undefined,decorators:[{type:o.Inject,args:[s]}]}]},v);function v(e,t,n){this.translateI18Next=e,this.ns=t,this.scope=n}var m,N=(f(x,m=h),x.prototype.transform=function(e,t){return(t=t||{}).format="cap",m.prototype.transform.call(this,e,t)},x.decorators=[{type:o.Injectable},{type:o.Pipe,args:[{name:"i18nextCap"}]}],x.ctorParameters=function(){return[{type:undefined,decorators:[{type:o.Inject,args:[c]}]},{type:undefined,decorators:[{type:o.Inject,args:[u]}]},{type:undefined,decorators:[{type:o.Inject,args:[s]}]}]},x);function x(e,t,n){return m.call(this,e,t,n)||this}var I=(S.prototype.handle=function(n,e){return function(e,t){n({err:e,t:t})}},S);function S(){}var j=(E.prototype.handle=function(r,o){return function(e,t){var n={err:e,t:t};e?o(e):r(n)}},E);function E(){}var R=(b.prototype.transform=function(e,t){var n="string"==typeof t?{format:t}:t;return this.translateI18Next.format(e,n.format,n.lng)},b.decorators=[{type:o.Injectable},{type:o.Pipe,args:[{name:"i18nextFormat"}]}],b.ctorParameters=function(){return[{type:undefined,decorators:[{type:o.Inject,args:[c]}]}]},b);function b(e){this.translateI18Next=e}var w=function M(){this.initialized=new n.BehaviorSubject(!1),this.loaded=new n.BehaviorSubject(!1),this.failedLoading=new n.Subject,this.missingKey=new n.Subject,this.added=new n.Subject,this.removed=new n.Subject,this.languageChanged=new n.BehaviorSubject(null)},P=i,T=(Object.defineProperty(_.prototype,"options",{get:function(){return P.options},enumerable:!0,configurable:!0}),_.prototype.use=function(e){return P.use.call(P,e),this},_.prototype.init=function(n){var r=this;return n=n||{},this.subscribeEvents(),new Promise(function(e,t){P.init.call(P,Object.assign({},n),r.errorHandlingStrategy.handle(e,t))})},_.prototype.t=function(e,t){return t=t||{},P.t.call(P,e,t)},_.prototype.format=function(e,t,n){return P.format.call(P,e,t,n)},_.prototype.exists=function(e,t){return P.exists.call(P,e,t)},_.prototype.getFixedT=function(e,t){return P.getFixedT.call(P,e,t)},_.prototype.setDefaultNamespace=function(e){P.setDefaultNamespace.call(P,e)},_.prototype.dir=function(e){return void 0===e&&(e=undefined),P.dir.call(P,e)},_.prototype.changeLanguage=function(n){var r=this;return new Promise(function(e,t){P.changeLanguage.call(P,n,r.errorHandlingStrategy.handle(e,t))})},_.prototype.loadNamespaces=function(n){var r=this;return new Promise(function(e,t){P.loadNamespaces.call(P,n,r.errorHandlingStrategy.handle(e,t))})},_.prototype.loadLanguages=function(n,e){var r=this;return new Promise(function(e,t){P.loadLanguages.call(P,n,r.errorHandlingStrategy.handle(e,t))})},_.prototype.reloadResources=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];P.reloadResources.apply(P,e)},_.prototype.getResource=function(e,t,n,r){return P.getResource.call(P,e,t,n,r)},_.prototype.addResource=function(e,t,n,r,o){P.addResource.call(P,e,t,n,r,o)},_.prototype.addResources=function(e,t,n){P.addResources.call(P,e,t,n)},_.prototype.addResourceBundle=function(e,t,n,r,o){P.addResourceBundle.call(P,e,t,n,r,o)},_.prototype.hasResourceBundle=function(e,t){return P.hasResourceBundle.call(P,e,t)},_.prototype.getResourceBundle=function(e,t){return P.getResourceBundle.call(P,e,t)},_.prototype.removeResourceBundle=function(e,t){P.removeResourceBundle.call(P,e,t)},_.prototype.subscribeEvents=function(){var o=this;P.on.call(P,"initialized",function(e){o.language=P.language,o.languages=P.languages,o.events.initialized.next(e)}),P.on.call(P,"loaded",function(e){return o.events.loaded.next(e)}),P.on.call(P,"failedLoading",function(e,t,n){return o.events.failedLoading.next({lng:e,ns:t,msg:n})}),P.on.call(P,"languageChanged",function(e){o.language=P.language,o.languages=P.languages,o.events.languageChanged.next(e)}),P.on.call(P,"missingKey",function(e,t,n,r){return o.events.missingKey.next({lngs:e,namespace:t,key:n,res:r})}),P.on.call(P,"added",function(e,t){return o.events.added.next({lng:e,ns:t})}),P.on.call(P,"removed",function(e,t){return o.events.removed.next({lng:e,ns:t})})},_.decorators=[{type:o.Injectable}],_.ctorParameters=function(){return[{type:undefined,decorators:[{type:o.Inject,args:[l]}]}]},_);function _(e){this.errorHandlingStrategy=e,this.events=new w,this.language="",this.languages=[]}var C,O=(f(A,C=a.Title),A.prototype.setTitle=function(e){return C.prototype.setTitle.call(this,this.translate(e))},A.prototype.translate=function(e){return this.i18nextPipe.transform(e,{format:"cap"})},A.decorators=[{type:o.Injectable}],A.ctorParameters=function(){return[{type:h},{type:undefined,decorators:[{type:o.Inject,args:[r.DOCUMENT]}]}]},A);function A(e,t){var n=C.call(this,t)||this;return n.i18nextPipe=e,n}function B(e,t){var n=[];return n=e.data&&e.data.i18nextNamespaces||n,this.loadNamespaces(n.filter(function(e){return e}))}function L(e){return B.bind(e)}var k=(H.forRoot=function(e){return void 0===e&&(e={}),{ngModule:H,providers:[{provide:c,useClass:T},{provide:l,useClass:e.errorHandlingStrategy||I},T,h,N,R,O,{provide:p,useFactory:L,deps:[c]}]}},H.interpolationFormat=function(o){return void 0===o&&(o=null),function a(e,t,n){var r=X(e,t,n);return null===o?r:o(r,t,n)}},H.decorators=[{type:o.NgModule,args:[{providers:[{provide:u,useValue:""},{provide:s,useValue:""},h,N,R,O],declarations:[h,N,R],exports:[h,N,R]}]}],H);function H(){}function X(e,t,n){if(void 0===n&&(n=undefined),!e)return e;switch(t){case"upper":case"uppercase":return e.toUpperCase();case"lower":case"lowercase":return e.toLowerCase();case"cap":case"capitalize":return e.charAt(0).toUpperCase()+e.slice(1);case null:case undefined:case"none":default:return e}}e.resolver=B,e.i18nextNamespaceResolverFactory=L,e.defaultInterpolationFormat=X,e.I18NextModule=k,e.I18NEXT_SCOPE=s,e.I18NEXT_NAMESPACE=u,e.I18NEXT_SERVICE=c,e.I18NEXT_NAMESPACE_RESOLVER=p,e.I18NEXT_ERROR_HANDLING_STRATEGY=l,e.I18NextPipe=h,e.I18NextCapPipe=N,e.I18NextFormatPipe=R,e.I18NextService=T,e.I18NextTitle=O,e.NativeErrorHandlingStrategy=I,e.StrictErrorHandlingStrategy=j,Object.defineProperty(e,"__esModule",{value:!0})});
//# sourceMappingURL=angular-i18next.umd.min.js.map

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

# [6.1.0](https://github.com/Romanchuk/angular-i18next/compare/v6.1.0-beta...v6.1.0) (2019-05-27)
# [6.1.0-beta](https://github.com/Romanchuk/angular-i18next/compare/v6.0.1...v6.1.0-beta) (2019-05-25)

@@ -2,0 +6,0 @@

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { InjectionToken } from '@angular/core';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { Inject, Injectable, Pipe } from '@angular/core';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

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

handle(resolve, reject) {
return (err, t) => {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
(err, t) => {
/** @type {?} */

@@ -32,3 +37,3 @@ let result = {

resolve(result);
};
});
}

@@ -43,3 +48,8 @@ }

handle(resolve, reject) {
return (err, t) => {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
(err, t) => {
/** @type {?} */

@@ -55,5 +65,5 @@ let result = {

reject(err);
};
});
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1pMThuZXh0LyIsInNvdXJjZXMiOlsiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQSxrREFLQzs7Ozs7OztJQUpHLCtFQUdROztBQUdaLE1BQU0sT0FBTywyQkFBMkI7Ozs7OztJQUNwQyxNQUFNLENBQ0YsT0FBdUQsRUFDdkQsTUFBNEI7UUFFNUIsT0FBTyxDQUFDLEdBQVEsRUFBRSxDQUFZLEVBQUUsRUFBRTs7Z0JBQzFCLE1BQU0sR0FBc0I7Z0JBQzVCLEdBQUcsRUFBRSxHQUFHO2dCQUNSLENBQUMsRUFBRSxDQUFDO2FBQ1A7WUFDRCxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDO0lBQ04sQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLDJCQUEyQjs7Ozs7O0lBQ3BDLE1BQU0sQ0FDRixPQUF1RCxFQUN2RCxNQUE0QjtRQUU1QixPQUFPLENBQUMsR0FBUSxFQUFFLENBQU8sRUFBRSxFQUFFOztnQkFDckIsTUFBTSxHQUFzQjtnQkFDNUIsR0FBRyxFQUFFLEdBQUc7Z0JBQ1IsQ0FBQyxFQUFFLENBQUM7YUFDUDtZQUNELElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ04sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNoQixPQUFPO2FBQ1Y7WUFDRCxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEIsQ0FBQyxDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSTE4TmV4dExvYWRSZXN1bHQgfSBmcm9tICcuL0kxOE5leHRMb2FkUmVzdWx0JztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSB7XHJcbiAgICBoYW5kbGUoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICApOiB2b2lkO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTmF0aXZlRXJyb3JIYW5kbGluZ1N0cmF0ZWd5IGltcGxlbWVudHMgSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSB7XHJcbiAgICBoYW5kbGUoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICApIHtcclxuICAgICAgICByZXR1cm4gKGVycjogYW55LCB0PzogRnVuY3Rpb24pID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlc3VsdDogSTE4TmV4dExvYWRSZXN1bHQgPSB7XHJcbiAgICAgICAgICAgICAgICBlcnI6IGVycixcclxuICAgICAgICAgICAgICAgIHQ6IHRcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBTdHJpY3RFcnJvckhhbmRsaW5nU3RyYXRlZ3kgaW1wbGVtZW50cyBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IHtcclxuICAgIGhhbmRsZShcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICkge1xyXG4gICAgICAgIHJldHVybiAoZXJyOiBhbnksIHQ/OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlc3VsdDogSTE4TmV4dExvYWRSZXN1bHQgPSB7XHJcbiAgICAgICAgICAgICAgICBlcnI6IGVycixcclxuICAgICAgICAgICAgICAgIHQ6IHRcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgaWYgKCFlcnIpIHtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZWplY3QoZXJyKTtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1pMThuZXh0LyIsInNvdXJjZXMiOlsiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQSxrREFLQzs7Ozs7OztJQUpHLCtFQUdROztBQUdaLE1BQU0sT0FBTywyQkFBMkI7Ozs7OztJQUNwQyxNQUFNLENBQ0YsT0FBdUQsRUFDdkQsTUFBNEI7UUFFNUI7Ozs7O1FBQU8sQ0FBQyxHQUFRLEVBQUUsQ0FBWSxFQUFFLEVBQUU7O2dCQUMxQixNQUFNLEdBQXNCO2dCQUM1QixHQUFHLEVBQUUsR0FBRztnQkFDUixDQUFDLEVBQUUsQ0FBQzthQUNQO1lBQ0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLENBQUMsRUFBQztJQUNOLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTywyQkFBMkI7Ozs7OztJQUNwQyxNQUFNLENBQ0YsT0FBdUQsRUFDdkQsTUFBNEI7UUFFNUI7Ozs7O1FBQU8sQ0FBQyxHQUFRLEVBQUUsQ0FBTyxFQUFFLEVBQUU7O2dCQUNyQixNQUFNLEdBQXNCO2dCQUM1QixHQUFHLEVBQUUsR0FBRztnQkFDUixDQUFDLEVBQUUsQ0FBQzthQUNQO1lBQ0QsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDTixPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2hCLE9BQU87YUFDVjtZQUNELE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQixDQUFDLEVBQUM7SUFDTixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJMThOZXh0TG9hZFJlc3VsdCB9IGZyb20gJy4vSTE4TmV4dExvYWRSZXN1bHQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IHtcclxuICAgIGhhbmRsZShcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICk6IHZvaWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBOYXRpdmVFcnJvckhhbmRsaW5nU3RyYXRlZ3kgaW1wbGVtZW50cyBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IHtcclxuICAgIGhhbmRsZShcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICkge1xyXG4gICAgICAgIHJldHVybiAoZXJyOiBhbnksIHQ/OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICAgICAgICBsZXQgcmVzdWx0OiBJMThOZXh0TG9hZFJlc3VsdCA9IHtcclxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxyXG4gICAgICAgICAgICAgICAgdDogdFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgICAgfTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFN0cmljdEVycm9ySGFuZGxpbmdTdHJhdGVneSBpbXBsZW1lbnRzIEkxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ3kge1xyXG4gICAgaGFuZGxlKFxyXG4gICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgKSB7XHJcbiAgICAgICAgcmV0dXJuIChlcnI6IGFueSwgdD86IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgcmVzdWx0OiBJMThOZXh0TG9hZFJlc3VsdCA9IHtcclxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxyXG4gICAgICAgICAgICAgICAgdDogdFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBpZiAoIWVycikge1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbn1cclxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { BehaviorSubject, Subject } from 'rxjs';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { Inject, Injectable, Pipe } from '@angular/core';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -68,3 +68,7 @@ import { Inject, Injectable, Pipe } from '@angular/core';

if (!this.keyContainsNsSeparator(k, nsSeparator)) { // Do not set scope, if key contains a namespace
keysWithScope.push(...scope.map(sc => this.joinStrings(keySeparator, sc, k)));
keysWithScope.push(...scope.map((/**
* @param {?} sc
* @return {?}
*/
sc => this.joinStrings(keySeparator, sc, k))));
}

@@ -95,3 +99,7 @@ keysWithScope.push(k);

if (!this.keyContainsNsSeparator(k, nsSeparator)) { // Do not set namespace, if key contains a namespace
keysWithNamespace.push(...ns.map(n => this.joinStrings(nsSeparator, n, k)));
keysWithNamespace.push(...ns.map((/**
* @param {?} n
* @return {?}
*/
n => this.joinStrings(nsSeparator, n, k))));
}

@@ -161,2 +169,2 @@ keysWithNamespace.push(k);

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0UGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBTXJGLE1BQU0sT0FBTyxXQUFXOzs7Ozs7SUFFdEIsWUFDcUMsZ0JBQXFDLEVBQ25DLEVBQXFCLEVBQ3pCLEtBQXdCO1FBRnRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDbkMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDekIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7SUFBRyxDQUFDOzs7Ozs7SUFFeEQsU0FBUyxDQUFDLEdBQXNCLEVBQUUsT0FBYTtRQUNwRCxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQzs7WUFFbkMsUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPO1FBQzVDLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJLEVBQUU7WUFDdkUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNkLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ3ZGO1NBQ0Y7UUFDRCxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLGdCQUFnQixLQUFLLElBQUksRUFBRTtZQUMvRSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsR0FBRyxHQUFHLElB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QyxDQUFDO0lBQ2xDLENBQUM7Ozs7Ozs7SUFFTyxzQkFBc0IsQ0FBQyxHQUFXLEVBQUUsV0FBbUI7UUFDN0QsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Ozs7OztJQUVPLGNBQWMsQ0FBQyxPQUFZO1FBQ2pDLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3hCLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxJQUFJO1lBQ3pCLE9BQU8sQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvQyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDOzs7WUFwRkYsVUFBVTtZQUNWLElBQUksU0FBQztnQkFDRixJQUFJLEVBQUUsU0FBUzthQUNsQjs7Ozs0Q0FJTSxNQUFNLFNBQUMsZUFBZTs0Q0FDdEIsTUFBTSxTQUFDLGlCQUFpQjs0Q0FDeEIsTUFBTSxTQUFDLGFBQWE7Ozs7Ozs7SUFGckIsdUNBQXNFOzs7OztJQUN0RSx5QkFBd0Q7Ozs7O0lBQ3hELDRCQUF1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSTE4TkVYVF9OQU1FU1BBQ0UsIEkxOE5FWFRfU0NPUEUsIEkxOE5FWFRfU0VSVklDRSB9IGZyb20gJy4vSTE4TkVYVF9UT0tFTlMnO1xyXG5pbXBvcnQgeyBJVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9JVHJhbnNsYXRpb25TZXJ2aWNlJztcclxuQEluamVjdGFibGUoKVxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiAnaTE4bmV4dCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEkxOE5leHRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgICBASW5qZWN0KEkxOE5FWFRfU0VSVklDRSkgcHJpdmF0ZSB0cmFuc2xhdGVJMThOZXh0OiBJVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgICBASW5qZWN0KEkxOE5FWFRfTkFNRVNQQUNFKSBwcml2YXRlIG5zOiBzdHJpbmcgfCBzdHJpbmdbXSxcclxuICAgICAgQEluamVjdChJMThORVhUX1NDT1BFKSBwcml2YXRlIHNjb3BlOiBzdHJpbmcgfCBzdHJpbmdbXSkge31cclxuXHJcbiAgcHVibGljIHRyYW5zZm9ybShrZXk6IHN0cmluZyB8IHN0cmluZ1tdLCBvcHRpb25zPzogYW55KTogc3RyaW5nIHtcclxuICAgIG9wdGlvbnMgPSB0aGlzLnByZXBhcmVPcHRpb25zKG9wdGlvbnMpO1xyXG5cclxuICAgIGxldCBpMThuT3B0cyA9IHRoaXMudHJhbnNsYXRlSTE4TmV4dC5vcHRpb25zO1xyXG4gICAgaWYgKG9wdGlvbnMucHJlcGVuZFNjb3BlID09PSB1bmRlZmluZWQgfHwgb3B0aW9ucy5wcmVwZW5kU2NvcGUgPT09IHRydWUpIHtcclxuICAgICAgaWYgKHRoaXMuc2NvcGUpIHtcclxuICAgICAgICBrZXkgPSB0aGlzLnByZXBlbmRTY29wZShrZXksIHRoaXMuc2NvcGUsIGkxOG5PcHRzLmtleVNlcGFyYXRvciwgaTE4bk9wdHMubnNTZXBhcmF0b3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAob3B0aW9ucy5wcmVwZW5kTmFtZXNwYWNlID09PSB1bmRlZmluZWQgfHwgb3B0aW9ucy5wcmVwZW5kTmFtZXNwYWNlID09PSB0cnVlKSB7XHJcbiAgICAgIGlmICh0aGlzLm5zKSB7XHJcbiAgICAgICAga2V5ID0gdGhpcy5wcmVwZW5kTmFtZXNwYWNlKGtleSwgdGhpcy5ucywgaTE4bk9wdHMubnNTZXBhcmF0b3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBsZXQgcmVzdWx0ID0gdGhpcy50cmFuc2xhdGVJMThOZXh0LnQoa2V5LCBvcHRpb25zKTtcclxuICAgIGlmIChvcHRpb25zLmZvcm1hdCkge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgcmVzdWx0ID0gdGhpcy50cmFuc2xhdGVJMThOZXh0XHJcbiAgICAgICAgICAuZm9ybWF0KHJlc3VsdCwgb3B0aW9ucy5mb3JtYXQsIHRoaXMudHJhbnNsYXRlSTE4TmV4dC5sYW5ndWFnZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXBlbmRTY29wZShrZXk6IHN0cmluZyB8IHN0cmluZ1tdLCBzY29wZTogc3RyaW5nIHwgc3RyaW5nW10sIGtleVNlcGFyYXRvcjogc3RyaW5nLCAgbnNTZXBhcmF0b3I6IHN0cmluZyk6IHN0cmluZ1tdIHtcclxuICAgIGlmICh0eXBlb2Yoa2V5KSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAga2V5ID0gW2tleV07XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mKHNjb3BlKSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgc2NvcGUgPSBbc2NvcGVdO1xyXG4gICAgfVxyXG4gICAgbGV0IGtleXNXaXRoU2NvcGUgPSBbXTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGsgPSBrZXlbaV07XHJcbiAgICAgIGlmICghdGhpcy5rZXlDb250YWluc05zU2VwYXJhdG9yKGssIG5zU2VwYXJhdG9yKSkgeyAvLyBEbyBub3Qgc2V0IHNjb3BlLCBpZiBrZXkgY29udGFpbnMgYSBuYW1lc3BhY2VcclxuICAgICAgICBrZXlzV2l0aFNjb3BlLnB1c2goLi4uc2NvcGUubWFwKHNjID0+IHRoaXMuam9pblN0cmluZ3Moa2V5U2VwYXJhdG9yLCBzYywgaykpKTtcclxuICAgICAgfVxyXG4gICAgICBrZXlzV2l0aFNjb3BlLnB1c2goayk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ga2V5c1dpdGhTY29wZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJlcGVuZE5hbWVzcGFjZShrZXk6IHN0cmluZyB8IHN0cmluZ1tdLCBuczogc3RyaW5nIHwgc3RyaW5nW10sIG5zU2VwYXJhdG9yOiBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgICBpZiAodHlwZW9mKGtleSkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIGtleSA9IFtrZXldO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZihucykgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIG5zID0gW25zXTtcclxuICAgIH1cclxuICAgIGxldCBrZXlzV2l0aE5hbWVzcGFjZSA9IFtdO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgayA9IGtleVtpXTtcclxuICAgICAgaWYgKCF0aGlzLmtleUNvbnRhaW5zTnNTZXBhcmF0b3IoaywgbnNTZXBhcmF0b3IpKSB7IC8vIERvIG5vdCBzZXQgbmFtZXNwYWNlLCBpZiBrZXkgY29udGFpbnMgYSBuYW1lc3BhY2VcclxuICAgICAgICBrZXlzV2l0aE5hbWVzcGFjZS5wdXNoKC4uLm5zLm1hcChuID0+IHRoaXMuam9pblN0cmluZ3MobnNTZXBhcmF0b3IsIG4sIGspKSk7XHJcbiAgICAgIH1cclxuICAgICAga2V5c1dpdGhOYW1lc3BhY2UucHVzaChrKTtcclxuICAgIH1cclxuICAgIHJldHVybiBrZXlzV2l0aE5hbWVzcGFjZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgam9pblN0cmluZ3Moc2VwYXJhdG9yOiBzdHJpbmcsIC4uLnN0cjogc3RyaW5nW10pIHtcclxuICAgIHJldHVybiBbLi4uc3RyXS5qb2luKHNlcGFyYXRvcik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGtleUNvbnRhaW5zTnNTZXBhcmF0b3Ioa2V5OiBzdHJpbmcsIG5zU2VwYXJhdG9yOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBrZXkuaW5kZXhPZihuc1NlcGFyYXRvcikgIT09IC0xO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwcmVwYXJlT3B0aW9ucyhvcHRpb25zOiBhbnkpIHtcclxuICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG4gICAgaWYgKG9wdGlvbnMuY29udGV4dCAhPSBudWxsKVxyXG4gICAgICBvcHRpb25zLmNvbnRleHQgPSBvcHRpb25zLmNvbnRleHQudG9TdHJpbmcoKTtcclxuICAgIHJldHVybiBvcHRpb25zO1xyXG4gIH1cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0UGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUV4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBTXJGLE1BQU0sT0FBTyxXQUFXOzs7Ozs7SUFFdEIsWUFDcUMsZ0JBQXFDLEVBQ25DLEVBQXFCLEVBQ3pCLEtBQXdCO1FBRnRCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBcUI7UUFDbkMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDekIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7SUFBRyxDQUFDOzs7Ozs7SUFFeEQsU0FBUyxDQUFDLEdBQXNCLEVBQUUsT0FBYTtRQUNwRCxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQzs7WUFFbkMsUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPO1FBQzVDLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJLEVBQUU7WUFDdkUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNkLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ3ZGO1NBQ0Y7UUFDRCxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLGdCQUFnQixLQUFLLElBQUksRUFBRTtZQUMvRSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsR0FBRyxHQUFHLElB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U0FBUyxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7Ozs7OztJQUVPLHNCQUFzQixDQUFDLEdBQVcsRUFBRSxXQUFtQjtRQUM3RCxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekMsQ0FBQzs7Ozs7O0lBRU8sY0FBYyxDQUFDLE9BQVk7UUFDakMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUk7WUFDekIsT0FBTyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQy9DLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7OztZQXBGRixVQUFVO1lBQ1YsSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxTQUFTO2FBQ2xCOzs7OzRDQUlNLE1BQU0sU0FBQyxlQUFlOzRDQUN0QixNQUFNLFNBQUMsaUJBQWlCOzRDQUN4QixNQUFNLFNBQUMsYUFBYTs7Ozs7OztJQUZyQix1Q0FBc0U7Ozs7O0lBQ3RFLHlCQUF3RDs7Ozs7SUFDeEQsNEJBQXVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBJMThORVhUX05BTUVTUEFDRSwgSTE4TkVYVF9TQ09QRSwgSTE4TkVYVF9TRVJWSUNFIH0gZnJvbSAnLi9JMThORVhUX1RPS0VOUyc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5ASW5qZWN0YWJsZSgpXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6ICdpMThuZXh0J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSTE4TmV4dFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAgIEBJbmplY3QoSTE4TkVYVF9TRVJWSUNFKSBwcml2YXRlIHRyYW5zbGF0ZUkxOE5leHQ6IElUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICAgIEBJbmplY3QoSTE4TkVYVF9OQU1FU1BBQ0UpIHByaXZhdGUgbnM6IHN0cmluZyB8IHN0cmluZ1tdLFxyXG4gICAgICBASW5qZWN0KEkxOE5FWFRfU0NPUEUpIHByaXZhdGUgc2NvcGU6IHN0cmluZyB8IHN0cmluZ1tdKSB7fVxyXG5cclxuICBwdWJsaWMgdHJhbnNmb3JtKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgb3B0aW9ucyA9IHRoaXMucHJlcGFyZU9wdGlvbnMob3B0aW9ucyk7XHJcblxyXG4gICAgbGV0IGkxOG5PcHRzID0gdGhpcy50cmFuc2xhdGVJMThOZXh0Lm9wdGlvbnM7XHJcbiAgICBpZiAob3B0aW9ucy5wcmVwZW5kU2NvcGUgPT09IHVuZGVmaW5lZCB8fCBvcHRpb25zLnByZXBlbmRTY29wZSA9PT0gdHJ1ZSkge1xyXG4gICAgICBpZiAodGhpcy5zY29wZSkge1xyXG4gICAgICAgIGtleSA9IHRoaXMucHJlcGVuZFNjb3BlKGtleSwgdGhpcy5zY29wZSwgaTE4bk9wdHMua2V5U2VwYXJhdG9yLCBpMThuT3B0cy5uc1NlcGFyYXRvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChvcHRpb25zLnByZXBlbmROYW1lc3BhY2UgPT09IHVuZGVmaW5lZCB8fCBvcHRpb25zLnByZXBlbmROYW1lc3BhY2UgPT09IHRydWUpIHtcclxuICAgICAgaWYgKHRoaXMubnMpIHtcclxuICAgICAgICBrZXkgPSB0aGlzLnByZXBlbmROYW1lc3BhY2Uoa2V5LCB0aGlzLm5zLCBpMThuT3B0cy5uc1NlcGFyYXRvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGxldCByZXN1bHQgPSB0aGlzLnRyYW5zbGF0ZUkxOE5leHQudChrZXksIG9wdGlvbnMpO1xyXG4gICAgaWYgKG9wdGlvbnMuZm9ybWF0KSB7XHJcbiAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLnRyYW5zbGF0ZUkxOE5leHRcclxuICAgICAgICAgIC5mb3JtYXQocmVzdWx0LCBvcHRpb25zLmZvcm1hdCwgdGhpcy50cmFuc2xhdGVJMThOZXh0Lmxhbmd1YWdlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJlcGVuZFNjb3BlKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIHNjb3BlOiBzdHJpbmcgfCBzdHJpbmdbXSwga2V5U2VwYXJhdG9yOiBzdHJpbmcsICBuc1NlcGFyYXRvcjogc3RyaW5nKTogc3RyaW5nW10ge1xyXG4gICAgaWYgKHR5cGVvZihrZXkpID09PSAnc3RyaW5nJykge1xyXG4gICAgICBrZXkgPSBba2V5XTtcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2Yoc2NvcGUpID09PSAnc3RyaW5nJykge1xyXG4gICAgICBzY29wZSA9IFtzY29wZV07XHJcbiAgICB9XHJcbiAgICBsZXQga2V5c1dpdGhTY29wZSA9IFtdO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgayA9IGtleVtpXTtcclxuICAgICAgaWYgKCF0aGlzLmtleUNvbnRhaW5zTnNTZXBhcmF0b3IoaywgbnNTZXBhcmF0b3IpKSB7IC8vIERvIG5vdCBzZXQgc2NvcGUsIGlmIGtleSBjb250YWlucyBhIG5hbWVzcGFjZVxyXG4gICAgICAgIGtleXNXaXRoU2NvcGUucHVzaCguLi5zY29wZS5tYXAoc2MgPT4gdGhpcy5qb2luU3RyaW5ncyhrZXlTZXBhcmF0b3IsIHNjLCBrKSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGtleXNXaXRoU2NvcGUucHVzaChrKTtcclxuICAgIH1cclxuICAgIHJldHVybiBrZXlzV2l0aFNjb3BlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwcmVwZW5kTmFtZXNwYWNlKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIG5zOiBzdHJpbmcgfCBzdHJpbmdbXSwgbnNTZXBhcmF0b3I6IHN0cmluZyk6IHN0cmluZ1tdIHtcclxuICAgIGlmICh0eXBlb2Yoa2V5KSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAga2V5ID0gW2tleV07XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mKG5zKSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgbnMgPSBbbnNdO1xyXG4gICAgfVxyXG4gICAgbGV0IGtleXNXaXRoTmFtZXNwYWNlID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtleS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBrID0ga2V5W2ldO1xyXG4gICAgICBpZiAoIXRoaXMua2V5Q29udGFpbnNOc1NlcGFyYXRvcihrLCBuc1NlcGFyYXRvcikpIHsgLy8gRG8gbm90IHNldCBuYW1lc3BhY2UsIGlmIGtleSBjb250YWlucyBhIG5hbWVzcGFjZVxyXG4gICAgICAgIGtleXNXaXRoTmFtZXNwYWNlLnB1c2goLi4ubnMubWFwKG4gPT4gdGhpcy5qb2luU3RyaW5ncyhuc1NlcGFyYXRvciwgbiwgaykpKTtcclxuICAgICAgfVxyXG4gICAgICBrZXlzV2l0aE5hbWVzcGFjZS5wdXNoKGspO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGtleXNXaXRoTmFtZXNwYWNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBqb2luU3RyaW5ncyhzZXBhcmF0b3I6IHN0cmluZywgLi4uc3RyOiBzdHJpbmdbXSkge1xyXG4gICAgcmV0dXJuIFsuLi5zdHJdLmpvaW4oc2VwYXJhdG9yKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUga2V5Q29udGFpbnNOc1NlcGFyYXRvcihrZXk6IHN0cmluZywgbnNTZXBhcmF0b3I6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGtleS5pbmRleE9mKG5zU2VwYXJhdG9yKSAhPT0gLTE7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXBhcmVPcHRpb25zKG9wdGlvbnM6IGFueSkge1xyXG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcbiAgICBpZiAob3B0aW9ucy5jb250ZXh0ICE9IG51bGwpXHJcbiAgICAgIG9wdGlvbnMuY29udGV4dCA9IG9wdGlvbnMuY29udGV4dC50b1N0cmluZygpO1xyXG4gICAgcmV0dXJuIG9wdGlvbnM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -44,5 +44,10 @@ import { Inject, Injectable } from '@angular/core';

this.subscribeEvents();
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.init.call(i18next, Object.assign({}, options), this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -102,5 +107,10 @@ /**

changeLanguage(lng) {
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.changeLanguage.call(i18next, lng, this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -112,5 +122,10 @@ /**

loadNamespaces(namespaces) {
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.loadNamespaces.call(i18next, namespaces, this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -123,5 +138,10 @@ /**

loadLanguages(lngs, callback) {
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.loadLanguages.call(i18next, lngs, this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -207,17 +227,52 @@ //#region resource handling

subscribeEvents() {
i18next.on.call(i18next, 'initialized', options => {
i18next.on.call(i18next, 'initialized', (/**
* @param {?} options
* @return {?}
*/
options => {
this.language = i18next.language;
this.languages = i18next.languages;
this.events.initialized.next(options);
});
i18next.on.call(i18next, 'loaded', loaded => this.events.loaded.next(loaded));
i18next.on.call(i18next, 'failedLoading', (lng, ns, msg) => this.events.failedLoading.next({ lng, ns, msg }));
i18next.on.call(i18next, 'languageChanged', lng => {
}));
i18next.on.call(i18next, 'loaded', (/**
* @param {?} loaded
* @return {?}
*/
loaded => this.events.loaded.next(loaded)));
i18next.on.call(i18next, 'failedLoading', (/**
* @param {?} lng
* @param {?} ns
* @param {?} msg
* @return {?}
*/
(lng, ns, msg) => this.events.failedLoading.next({ lng, ns, msg })));
i18next.on.call(i18next, 'languageChanged', (/**
* @param {?} lng
* @return {?}
*/
lng => {
this.language = i18next.language;
this.languages = i18next.languages;
this.events.languageChanged.next(lng);
});
i18next.on.call(i18next, 'missingKey', (lngs, namespace, key, res) => this.events.missingKey.next({ lngs, namespace, key, res }));
i18next.on.call(i18next, 'added', (lng, ns) => this.events.added.next({ lng, ns }));
i18next.on.call(i18next, 'removed', (lng, ns) => this.events.removed.next({ lng, ns }));
}));
i18next.on.call(i18next, 'missingKey', (/**
* @param {?} lngs
* @param {?} namespace
* @param {?} key
* @param {?} res
* @return {?}
*/
(lngs, namespace, key, res) => this.events.missingKey.next({ lngs, namespace, key, res })));
i18next.on.call(i18next, 'added', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
(lng, ns) => this.events.added.next({ lng, ns })));
i18next.on.call(i18next, 'removed', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
(lng, ns) => this.events.removed.next({ lng, ns })));
}

@@ -245,2 +300,2 @@ }

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxLQUFLLElBQUksTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztNQU0xQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU87QUFHNUIsTUFBTSxPQUFPLGNBQWM7Ozs7SUFVekIsWUFBNkQscUJBQW1EO1FBQW5ELDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFSaEgsV0FBTSxHQUF1QixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2pELGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsY0FBUyxHQUFhLEVBQUUsQ0FBQztJQU0wRixDQUFDOzs7O0lBSnBILElBQUksT0FBTztRQUNULE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUN6QixDQUFDOzs7Ozs7O0lBSU0sR0FBRyxDQUFDLE1BQVc7UUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sbUJBQUEsSUFBSSxFQUFBLENBQUM7SUFDZCxDQUFDOzs7OztJQUVNLElBQUksQ0FBQyxPQUFhO1FBQ3ZCLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV2QixPQUFPLElBQUksT0FBTyxDQUNkLENBQ0UsT0FBdUQsRUFDdkQsTUFBNEIsRUFDNUIsRUFBRTtZQUNGLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFB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Q0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQztRQUNoSSxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUMsR0FBRyxFQUFFLEVBQUUsRUFBQyxDQUFDLENBQUMsQ0FBQztRQUNsRixPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUMsR0FBRyxFQUFFLEVBQUUsRUFBQyxDQUFDLENBQUMsQ0FBQztJQUV4RixDQUFDOzs7WUFqSkYsVUFBVTs7Ozs0Q0FXSSxNQUFNLFNBQUMsK0JBQStCOzs7O0lBUm5ELGdDQUFpRDs7SUFDakQsa0NBQXNCOztJQUN0QixtQ0FBeUI7Ozs7O0lBTWIsK0NBQW9HIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzIGkxOG4gZnJvbSAnaTE4bmV4dCc7XHJcblxyXG5pbXBvcnQgeyBJMThORVhUX0VSUk9SX0hBTkRMSU5HX1NUUkFURUdZIH0gZnJvbSAnLi9JMThORVhUX1RPS0VOUyc7XHJcbmltcG9ydCB7IEkxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ3kgfSBmcm9tICcuL0kxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ2llcyc7XHJcbmltcG9ydCB7IEkxOE5leHRFdmVudHMgfSBmcm9tICcuL0kxOE5leHRFdmVudHMnO1xyXG5pbXBvcnQgeyBJMThOZXh0TG9hZFJlc3VsdCB9IGZyb20gJy4vSTE4TmV4dExvYWRSZXN1bHQnO1xyXG5pbXBvcnQgeyBJVHJhbnNsYXRpb25FdmVudHMgfSBmcm9tICcuL0lUcmFuc2xhdGlvbkV2ZW50cyc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5cclxuXHJcbmNvbnN0IGkxOG5leHQgPSBpMThuLmRlZmF1bHQ7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBJMThOZXh0U2VydmljZSBpbXBsZW1lbnRzIElUcmFuc2xhdGlvblNlcnZpY2Uge1xyXG5cclxuICBldmVudHM6IElUcmFuc2xhdGlvbkV2ZW50cyA9IG5ldyBJMThOZXh0RXZlbnRzKCk7XHJcbiAgbGFuZ3VhZ2U6IHN0cmluZyA9ICcnO1xyXG4gIGxhbmd1YWdlczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgZ2V0IG9wdGlvbnMoKTogYW55IHtcclxuICAgIHJldHVybiBpMThuZXh0Lm9wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEkxOE5FWFRfRVJST1JfSEFORExJTkdfU1RSQVRFR1kpIHByaXZhdGUgZXJyb3JIYW5kbGluZ1N0cmF0ZWd5OiBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5KSB7fVxyXG5cclxuICBwdWJsaWMgdXNlKHBsdWdpbjogYW55KSB7XHJcbiAgICBpMThuZXh0LnVzZS5jYWxsKGkxOG5leHQsIHBsdWdpbik7XHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbml0KG9wdGlvbnM/OiBhbnkpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpYmVFdmVudHMoKTtcclxuXHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+KFxyXG4gICAgICAgIChcclxuICAgICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICAgICAgKSA9PiB7XHJcbiAgICAgICAgICBpMThuZXh0LmluaXQuY2FsbChpMThuZXh0LCBPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zKSwgdGhpcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kuaGFuZGxlKHJlc29sdmUsIHJlamVjdCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdChrZXk6IHN0cmluZyB8IHN0cmluZ1tdLCBvcHRpb25zPzogYW55KTogc3RyaW5nIHtcclxuICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG4gICAgcmV0dXJuIGkxOG5leHQudC5jYWxsKGkxOG5leHQsIDxhbnk+a2V5LCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBmb3JtYXQodmFsdWU6IGFueSwgZm9ybWF0OiBzdHJpbmcsIGxuZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBpMThuZXh0LmZvcm1hdC5jYWxsKGkxOG5leHQsIHZhbHVlLCBmb3JtYXQsIGxuZyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZXhpc3RzKGtleSwgb3B0aW9ucykge1xyXG4gICAgcmV0dXJuIGkxOG5leHQuZXhpc3RzLmNhbGwoaTE4bmV4dCwga2V5LCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRGaXhlZFQobG5nLCBucykge1xyXG4gICAgcmV0dXJuIGkxOG5leHQuZ2V0Rml4ZWRULmNhbGwoaTE4bmV4dCwgbG5nLCBucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RGVmYXVsdE5hbWVzcGFjZShuczogc3RyaW5nKSB7XHJcbiAgICBpMThuZXh0LnNldERlZmF1bHROYW1lc3BhY2UuY2FsbChpMThuZXh0LCBucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGlyKGxuZzogc3RyaW5nID0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiBpMThuZXh0LmRpci5jYWxsKGkxOG5leHQsIGxuZyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2hhbmdlTGFuZ3VhZ2UobG5nOiBzdHJpbmcpOiBQcm9taXNlPEkxOE5leHRMb2FkUmVzdWx0PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+KFxyXG4gICAgICAoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICAgICkgPT4ge1xyXG4gICAgICAgICAgaTE4bmV4dC5jaGFuZ2VMYW5ndWFnZS5jYWxsKGkxOG5leHQsIGxuZywgdGhpcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kuaGFuZGxlKHJlc29sdmUsIHJlamVjdCkpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvYWROYW1lc3BhY2VzKG5hbWVzcGFjZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4oXHJcbiAgICAgIChcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICAgKSA9PiB7XHJcbiAgICAgICAgICBpMThuZXh0LmxvYWROYW1lc3BhY2VzLmNhbGwoaTE4bmV4dCwgbmFtZXNwYWNlcywgdGhpcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kuaGFuZGxlKHJlc29sdmUsIHJlamVjdCkpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvYWRMYW5ndWFnZXMobG5nczogc3RyaW5nIHwgc3RyaW5nW10sIGNhbGxiYWNrOiBGdW5jdGlvbikge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEkxOE5leHRMb2FkUmVzdWx0PihcclxuICAgICAgKFxyXG4gICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgICApID0+IHtcclxuICAgICAgICAgIGkxOG5leHQubG9hZExhbmd1YWdlcy5jYWxsKGkxOG5leHQsIGxuZ3MsIHRoaXMuZXJyb3JIYW5kbGluZ1N0cmF0ZWd5LmhhbmRsZShyZXNvbHZlLCByZWplY3QpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiByZXNvdXJjZSBoYW5kbGluZ1xyXG5cclxuICBwdWJsaWMgcmVsb2FkUmVzb3VyY2VzKC4uLnBhcmFtcykge1xyXG4gICAgaTE4bmV4dC5yZWxvYWRSZXNvdXJjZXMuYXBwbHkoaTE4bmV4dCwgcGFyYW1zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRSZXNvdXJjZShsbmcsIG5zLCBrZXksIG9wdGlvbnMpIHtcclxuICAgICAgcmV0dXJuIGkxOG5leHQuZ2V0UmVzb3VyY2UuY2FsbChpMThuZXh0LCBsbmcsIG5zLCBrZXksIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFkZFJlc291cmNlKGxuZywgbnMsIGtleSwgdmFsdWUsIG9wdGlvbnMpIHtcclxuICAgICAgaTE4bmV4dC5hZGRSZXNvdXJjZS5jYWxsKGkxOG5leHQsIGxuZywgbnMsIGtleSwgdmFsdWUsIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFkZFJlc291cmNlcyhsbmcsIG5zLCByZXNvdXJjZXMpIHtcclxuICAgICAgaTE4bmV4dC5hZGRSZXNvdXJjZXMuY2FsbChpMThuZXh0LCBsbmcsIG5zLCByZXNvdXJjZXMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFkZFJlc291cmNlQnVuZGxlKGxuZywgbnMsIHJlc291cmNlcywgZGVlcCwgb3ZlcndyaXRlKSB7XHJcbiAgICAgIGkxOG5leHQuYWRkUmVzb3VyY2VCdW5kbGUuY2FsbChpMThuZXh0LCBsbmcsIG5zLCByZXNvdXJjZXMsIGRlZXAsIG92ZXJ3cml0ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFzUmVzb3VyY2VCdW5kbGUobG5nLCBucykge1xyXG4gICAgICByZXR1cm4gaTE4bmV4dC5oYXNSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFJlc291cmNlQnVuZGxlKGxuZywgbnMpIHtcclxuICAgICAgcmV0dXJuIGkxOG5leHQuZ2V0UmVzb3VyY2VCdW5kbGUuY2FsbChpMThuZXh0LCBsbmcsIG5zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZW1vdmVSZXNvdXJjZUJ1bmRsZShsbmcsIG5zKSB7XHJcbiAgICAgIGkxOG5leHQucmVtb3ZlUmVzb3VyY2VCdW5kbGUuY2FsbChpMThuZXh0LCBsbmcsIG5zKTtcclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBwcml2YXRlIHN1YnNjcmliZUV2ZW50cygpIHtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnaW5pdGlhbGl6ZWQnLCBvcHRpb25zID0+IHtcclxuICAgICAgdGhpcy5sYW5ndWFnZSA9IGkxOG5leHQubGFuZ3VhZ2U7XHJcbiAgICAgIHRoaXMubGFuZ3VhZ2VzID0gaTE4bmV4dC5sYW5ndWFnZXM7XHJcbiAgICAgIHRoaXMuZXZlbnRzLmluaXRpYWxpemVkLm5leHQob3B0aW9ucyk7XHJcbiAgICB9KTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnbG9hZGVkJywgbG9hZGVkID0+IHRoaXMuZXZlbnRzLmxvYWRlZC5uZXh0KGxvYWRlZCkpO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdmYWlsZWRMb2FkaW5nJywgKGxuZywgbnMsIG1zZykgPT4gdGhpcy5ldmVudHMuZmFpbGVkTG9hZGluZy5uZXh0KHtsbmcsIG5zLCBtc2d9KSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2xhbmd1YWdlQ2hhbmdlZCcsIGxuZyA9PiB7XHJcbiAgICAgIHRoaXMubGFuZ3VhZ2UgPSBpMThuZXh0Lmxhbmd1YWdlO1xyXG4gICAgICB0aGlzLmxhbmd1YWdlcyA9IGkxOG5leHQubGFuZ3VhZ2VzO1xyXG4gICAgICB0aGlzLmV2ZW50cy5sYW5ndWFnZUNoYW5nZWQubmV4dChsbmcpO1xyXG4gICAgfSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ21pc3NpbmdLZXknLCAobG5ncywgbmFtZXNwYWNlLCBrZXksIHJlcykgPT4gdGhpcy5ldmVudHMubWlzc2luZ0tleS5uZXh0KHtsbmdzLCBuYW1lc3BhY2UsIGtleSwgcmVzfSkpO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdhZGRlZCcsIChsbmcsIG5zKSA9PiB0aGlzLmV2ZW50cy5hZGRlZC5uZXh0KHtsbmcsIG5zfSkpO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdyZW1vdmVkJywgKGxuZywgbnMpID0+IHRoaXMuZXZlbnRzLnJlbW92ZWQubmV4dCh7bG5nLCBuc30pKTtcclxuXHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxLQUFLLElBQUksTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztNQU0xQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU87QUFHNUIsTUFBTSxPQUFPLGNBQWM7Ozs7SUFVekIsWUFBNkQscUJBQW1EO1FBQW5ELDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFSaEgsV0FBTSxHQUF1QixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2pELGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsY0FBUyxHQUFhLEVBQUUsQ0FBQztJQU0wRixDQUFDOzs7O0lBSnBILElBQUksT0FBTztRQUNULE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUN6QixDQUFDOzs7Ozs7O0lBSU0sR0FBRyxDQUFDLE1BQVc7UUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2xDLE9BQU8sbUJBQUEsSUFBSSxFQUFBLENBQUM7SUFDZCxDQUFDOzs7OztJQUVNLElBQUksQ0FBQyxPQUFhO1FBQ3ZCLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV2QixPQUFPLElBQUksT0FBTzs7Ozs7UUFDZCxDQUNFLE9BQXVELEVBQ3ZELE1BQTRCLEVBQzVCLEVBQUU7WUFDRixPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFP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QUN4QyxDQUFDLEVBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxZQUFZOzs7Ozs7O1FBQUUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBQyxDQUFDLEVBQUMsQ0FBQztRQUNoSSxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTzs7Ozs7UUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUMsQ0FBQyxFQUFDLENBQUM7UUFDbEYsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVM7Ozs7O1FBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLEVBQUUsRUFBRSxFQUFDLENBQUMsRUFBQyxDQUFDO0lBRXhGLENBQUM7OztZQWpKRixVQUFVOzs7OzRDQVdJLE1BQU0sU0FBQywrQkFBK0I7Ozs7SUFSbkQsZ0NBQWlEOztJQUNqRCxrQ0FBc0I7O0lBQ3RCLG1DQUF5Qjs7Ozs7SUFNYiwrQ0FBb0ciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgaTE4biBmcm9tICdpMThuZXh0JztcclxuXHJcbmltcG9ydCB7IEkxOE5FWFRfRVJST1JfSEFORExJTkdfU1RSQVRFR1kgfSBmcm9tICcuL0kxOE5FWFRfVE9LRU5TJztcclxuaW1wb3J0IHsgSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSB9IGZyb20gJy4vSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzJztcclxuaW1wb3J0IHsgSTE4TmV4dEV2ZW50cyB9IGZyb20gJy4vSTE4TmV4dEV2ZW50cyc7XHJcbmltcG9ydCB7IEkxOE5leHRMb2FkUmVzdWx0IH0gZnJvbSAnLi9JMThOZXh0TG9hZFJlc3VsdCc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvbkV2ZW50cyB9IGZyb20gJy4vSVRyYW5zbGF0aW9uRXZlbnRzJztcclxuaW1wb3J0IHsgSVRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4vSVRyYW5zbGF0aW9uU2VydmljZSc7XHJcblxyXG5cclxuY29uc3QgaTE4bmV4dCA9IGkxOG4uZGVmYXVsdDtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEkxOE5leHRTZXJ2aWNlIGltcGxlbWVudHMgSVRyYW5zbGF0aW9uU2VydmljZSB7XHJcblxyXG4gIGV2ZW50czogSVRyYW5zbGF0aW9uRXZlbnRzID0gbmV3IEkxOE5leHRFdmVudHMoKTtcclxuICBsYW5ndWFnZTogc3RyaW5nID0gJyc7XHJcbiAgbGFuZ3VhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBnZXQgb3B0aW9ucygpOiBhbnkge1xyXG4gICAgcmV0dXJuIGkxOG5leHQub3B0aW9ucztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoSTE4TkVYVF9FUlJPUl9IQU5ETElOR19TVFJBVEVHWSkgcHJpdmF0ZSBlcnJvckhhbmRsaW5nU3RyYXRlZ3k6IEkxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ3kpIHt9XHJcblxyXG4gIHB1YmxpYyB1c2UocGx1Z2luOiBhbnkpIHtcclxuICAgIGkxOG5leHQudXNlLmNhbGwoaTE4bmV4dCwgcGx1Z2luKTtcclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXQob3B0aW9ucz86IGFueSk6IFByb21pc2U8YW55PiB7XHJcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmliZUV2ZW50cygpO1xyXG5cclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4oXHJcbiAgICAgICAgKFxyXG4gICAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICAgICApID0+IHtcclxuICAgICAgICAgIGkxOG5leHQuaW5pdC5jYWxsKGkxOG5leHQsIE9iamVjdC5hc3NpZ24oe30sIG9wdGlvbnMpLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyB0KGtleTogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcbiAgICByZXR1cm4gaTE4bmV4dC50LmNhbGwoaTE4bmV4dCwgPGFueT5rZXksIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGZvcm1hdCh2YWx1ZTogYW55LCBmb3JtYXQ6IHN0cmluZywgbG5nOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGkxOG5leHQuZm9ybWF0LmNhbGwoaTE4bmV4dCwgdmFsdWUsIGZvcm1hdCwgbG5nKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBleGlzdHMoa2V5LCBvcHRpb25zKSB7XHJcbiAgICByZXR1cm4gaTE4bmV4dC5leGlzdHMuY2FsbChpMThuZXh0LCBrZXksIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEZpeGVkVChsbmcsIG5zKSB7XHJcbiAgICByZXR1cm4gaTE4bmV4dC5nZXRGaXhlZFQuY2FsbChpMThuZXh0LCBsbmcsIG5zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXREZWZhdWx0TmFtZXNwYWNlKG5zOiBzdHJpbmcpIHtcclxuICAgIGkxOG5leHQuc2V0RGVmYXVsdE5hbWVzcGFjZS5jYWxsKGkxOG5leHQsIG5zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkaXIobG5nOiBzdHJpbmcgPSB1bmRlZmluZWQpIHtcclxuICAgICAgcmV0dXJuIGkxOG5leHQuZGlyLmNhbGwoaTE4bmV4dCwgbG5nKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VMYW5ndWFnZShsbmc6IHN0cmluZyk6IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4oXHJcbiAgICAgIChcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICAgKSA9PiB7XHJcbiAgICAgICAgICBpMThuZXh0LmNoYW5nZUxhbmd1YWdlLmNhbGwoaTE4bmV4dCwgbG5nLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9hZE5hbWVzcGFjZXMobmFtZXNwYWNlczogc3RyaW5nIHwgc3RyaW5nW10pOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEkxOE5leHRMb2FkUmVzdWx0PihcclxuICAgICAgKFxyXG4gICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgICApID0+IHtcclxuICAgICAgICAgIGkxOG5leHQubG9hZE5hbWVzcGFjZXMuY2FsbChpMThuZXh0LCBuYW1lc3BhY2VzLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9hZExhbmd1YWdlcyhsbmdzOiBzdHJpbmcgfCBzdHJpbmdbXSwgY2FsbGJhY2s6IEZ1bmN0aW9uKSB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+KFxyXG4gICAgICAoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICAgICkgPT4ge1xyXG4gICAgICAgICAgaTE4bmV4dC5sb2FkTGFuZ3VhZ2VzLmNhbGwoaTE4bmV4dCwgbG5ncywgdGhpcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kuaGFuZGxlKHJlc29sdmUsIHJlamVjdCkpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIHJlc291cmNlIGhhbmRsaW5nXHJcblxyXG4gIHB1YmxpYyByZWxvYWRSZXNvdXJjZXMoLi4ucGFyYW1zKSB7XHJcbiAgICBpMThuZXh0LnJlbG9hZFJlc291cmNlcy5hcHBseShpMThuZXh0LCBwYXJhbXMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFJlc291cmNlKGxuZywgbnMsIGtleSwgb3B0aW9ucykge1xyXG4gICAgICByZXR1cm4gaTE4bmV4dC5nZXRSZXNvdXJjZS5jYWxsKGkxOG5leHQsIGxuZywgbnMsIGtleSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUmVzb3VyY2UobG5nLCBucywga2V5LCB2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgICBpMThuZXh0LmFkZFJlc291cmNlLmNhbGwoaTE4bmV4dCwgbG5nLCBucywga2V5LCB2YWx1ZSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUmVzb3VyY2VzKGxuZywgbnMsIHJlc291cmNlcykge1xyXG4gICAgICBpMThuZXh0LmFkZFJlc291cmNlcy5jYWxsKGkxOG5leHQsIGxuZywgbnMsIHJlc291cmNlcyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUmVzb3VyY2VCdW5kbGUobG5nLCBucywgcmVzb3VyY2VzLCBkZWVwLCBvdmVyd3JpdGUpIHtcclxuICAgICAgaTE4bmV4dC5hZGRSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMsIHJlc291cmNlcywgZGVlcCwgb3ZlcndyaXRlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYXNSZXNvdXJjZUJ1bmRsZShsbmcsIG5zKSB7XHJcbiAgICAgIHJldHVybiBpMThuZXh0Lmhhc1Jlc291cmNlQnVuZGxlLmNhbGwoaTE4bmV4dCwgbG5nLCBucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UmVzb3VyY2VCdW5kbGUobG5nLCBucykge1xyXG4gICAgICByZXR1cm4gaTE4bmV4dC5nZXRSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlbW92ZVJlc291cmNlQnVuZGxlKGxuZywgbnMpIHtcclxuICAgICAgaTE4bmV4dC5yZW1vdmVSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMpO1xyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaWJlRXZlbnRzKCkge1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdpbml0aWFsaXplZCcsIG9wdGlvbnMgPT4ge1xyXG4gICAgICB0aGlzLmxhbmd1YWdlID0gaTE4bmV4dC5sYW5ndWFnZTtcclxuICAgICAgdGhpcy5sYW5ndWFnZXMgPSBpMThuZXh0Lmxhbmd1YWdlcztcclxuICAgICAgdGhpcy5ldmVudHMuaW5pdGlhbGl6ZWQubmV4dChvcHRpb25zKTtcclxuICAgIH0pO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdsb2FkZWQnLCBsb2FkZWQgPT4gdGhpcy5ldmVudHMubG9hZGVkLm5leHQobG9hZGVkKSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2ZhaWxlZExvYWRpbmcnLCAobG5nLCBucywgbXNnKSA9PiB0aGlzLmV2ZW50cy5mYWlsZWRMb2FkaW5nLm5leHQoe2xuZywgbnMsIG1zZ30pKTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnbGFuZ3VhZ2VDaGFuZ2VkJywgbG5nID0+IHtcclxuICAgICAgdGhpcy5sYW5ndWFnZSA9IGkxOG5leHQubGFuZ3VhZ2U7XHJcbiAgICAgIHRoaXMubGFuZ3VhZ2VzID0gaTE4bmV4dC5sYW5ndWFnZXM7XHJcbiAgICAgIHRoaXMuZXZlbnRzLmxhbmd1YWdlQ2hhbmdlZC5uZXh0KGxuZyk7XHJcbiAgICB9KTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnbWlzc2luZ0tleScsIChsbmdzLCBuYW1lc3BhY2UsIGtleSwgcmVzKSA9PiB0aGlzLmV2ZW50cy5taXNzaW5nS2V5Lm5leHQoe2xuZ3MsIG5hbWVzcGFjZSwga2V5LCByZXN9KSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2FkZGVkJywgKGxuZywgbnMpID0+IHRoaXMuZXZlbnRzLmFkZGVkLm5leHQoe2xuZywgbnN9KSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ3JlbW92ZWQnLCAobG5nLCBucykgPT4gdGhpcy5ldmVudHMucmVtb3ZlZC5uZXh0KHtsbmcsIG5zfSkpO1xyXG5cclxuICB9XHJcbn1cclxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { DOCUMENT } from '@angular/common';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -33,3 +33,7 @@ import { NgModule } from '@angular/core';

namespaces = activatedRouteSnapshot.data && activatedRouteSnapshot.data.i18nextNamespaces || namespaces;
return this.loadNamespaces(namespaces.filter(n => n));
return this.loadNamespaces(namespaces.filter((/**
* @param {?} n
* @return {?}
*/
n => n)));
}

@@ -148,2 +152,2 @@ /**

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUF1QixRQUFRLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEosT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5QywrSEFBYyxrQkFBa0IsQ0FBQztBQUNqQyw0QkFBYyxlQUFlLENBQUM7QUFDOUIsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsa0NBQWMscUJBQXFCLENBQUM7QUFDcEMsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsNkJBQWMsZ0JBQWdCLENBQUM7QUFDL0IseUVBQWMsa0NBQWtDLENBQUM7QUFDakQsZUFBYyx1QkFBdUIsQ0FBQztBQUN0QyxlQUFjLHFCQUFxQixDQUFDO0FBRXBDLGVBQWMsdUJBQXVCLENBQUM7QUFDdEMsZUFBYyxzQkFBc0IsQ0FBQzs7Ozs7O0FBR3JDLE1BQU0sVUFBVSxRQUFRLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1COztRQUM5RCxVQUFVLEdBQWEsRUFBRTtJQUM3QixVQUFVLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxp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b3ZpZGVycywgTmdNb2R1bGUsIEZhY3RvcnlQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5cclxuaW1wb3J0IHsgSTE4TkVYVF9FUlJPUl9IQU5ETElOR19TVFJBVEVHWSwgSTE4TkVYVF9OQU1FU1BBQ0UsIEkxOE5FWFRfU0NPUEUsIEkxOE5FWFRfU0VSVklDRSwgSTE4TkVYVF9OQU1FU1BBQ0VfUkVTT0xWRVIgfSBmcm9tICcuL0kxOE5FWFRfVE9LRU5TJztcclxuaW1wb3J0IHsgSTE4TmV4dENhcFBpcGUgfSBmcm9tICcuL0kxOE5leHRDYXBQaXBlJztcclxuaW1wb3J0IHsgTmF0aXZlRXJyb3JIYW5kbGluZ1N0cmF0ZWd5IH0gZnJvbSAnLi9JMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWdpZXMnO1xyXG5pbXBvcnQgeyBJMThOZXh0Rm9ybWF0UGlwZSB9IGZyb20gJy4vSTE4TmV4dEZvcm1hdFBpcGUnO1xyXG5pbXBvcnQgeyBJMThOZXh0TW9kdWxlUGFyYW1zIH0gZnJvbSAnLi9JMThOZXh0TW9kdWxlUGFyYW1zJztcclxuaW1wb3J0IHsgSTE4TmV4dFBpcGUgfSBmcm9tICcuL0kxOE5leHRQaXBlJztcclxuaW1wb3J0IHsgSTE4TmV4dFNlcnZpY2UgfSBmcm9tICcuL0kxOE5leHRTZXJ2aWNlJztcclxuaW1wb3J0IHsgSTE4TmV4dFRpdGxlIH0gZnJvbSAnLi9JMThOZXh0VGl0bGUnO1xyXG5pbXBvcnQgeyBJVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9JVHJhbnNsYXRpb25TZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TkVYVF9UT0tFTlMnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRQaXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0Q2FwUGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dEZvcm1hdFBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRTZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0VGl0bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ2llcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dE1vZHVsZVBhcmFtcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dExvYWRSZXN1bHQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9JVHJhbnNsYXRpb25TZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JVHJhbnNsYXRpb25FdmVudHMnO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlcihhY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCByb3V0ZXJTdGF0ZVNuYXBzaG90KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgbGV0IG5hbWVzcGFjZXM6IHN0cmluZ1tdID0gW107XHJcbiAgbmFtZXNwYWNlcyA9IGFjdGl2YXRlZFJvdXRlU25hcHNob3QuZGF0YSAmJiBhY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LmRhdGEuaTE4bmV4dE5hbWVzcGFjZXMgfHwgbmFtZXNwYWNlcztcclxuICByZXR1cm4gdGhpcy5sb2FkTmFtZXNwYWNlcyhuYW1lc3BhY2VzLmZpbHRlcihuID0+IG4pKTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaTE4bmV4dE5hbWVzcGFjZVJlc29sdmVyRmFjdG9yeShpMThuZXh0OiBJVHJhbnNsYXRpb25TZXJ2aWNlKSB7XHJcbiAgcmV0dXJuIHJlc29sdmVyLmJpbmQoaTE4bmV4dCk7XHJcbn1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEkxOE5FWFRfTkFNRVNQQUNFLFxyXG4gICAgICB1c2VWYWx1ZTogJydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEkxOE5FWFRfU0NPUEUsXHJcbiAgICAgIHVzZVZhbHVlOiAnJ1xyXG4gICAgfSxcclxuICAgIEkxOE5leHRQaXBlLFxyXG4gICAgSTE4TmV4dENhcFBpcGUsXHJcbiAgICBJMThOZXh0Rm9ybWF0UGlwZSxcclxuICAgIEkxOE5leHRUaXRsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBJMThOZXh0UGlwZSxcclxuICAgIEkxOE5leHRDYXBQaXBlLFxyXG4gICAgSTE4TmV4dEZvcm1hdFBpcGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIEkxOE5leHRQaXBlLFxyXG4gICAgSTE4TmV4dENhcFBpcGUsXHJcbiAgICBJMThOZXh0Rm9ybWF0UGlwZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEkxOE5leHRNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KHBhcmFtczogSTE4TmV4dE1vZHVsZVBhcmFtcyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogSTE4TmV4dE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogSTE4TkVYVF9TRVJWSUNFLFxyXG4gICAgICAgICAgdXNlQ2xhc3M6IEkxOE5leHRTZXJ2aWNlXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBJMThORVhUX0VSUk9SX0hBTkRMSU5HX1NUUkFURUdZLFxyXG4gICAgICAgICAgdXNlQ2xhc3M6IHBhcmFtcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kgfHwgTmF0aXZlRXJyb3JIYW5kbGluZ1N0cmF0ZWd5XHJcbiAgICAgICAgfSxcclxuICAgICAgICBJMThOZXh0U2VydmljZSxcclxuICAgICAgICBJMThOZXh0UGlwZSxcclxuICAgICAgICBJMThOZXh0Q2FwUGlwZSxcclxuICAgICAgICBJMThOZXh0Rm9ybWF0UGlwZSxcclxuICAgICAgICBJMThOZXh0VGl0bGUsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogSTE4TkVYVF9OQU1FU1BBQ0VfUkVTT0xWRVIsXHJcbiAgICAgICAgICB1c2VGYWN0b3J5OiBpMThuZXh0TmFtZXNwYWNlUmVzb2x2ZXJGYWN0b3J5LFxyXG4gICAgICAgICAgZGVwczogW0kxOE5FWFRfU0VSVklDRV1cclxuICAgICAgICB9XHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaW50ZXJwb2xhdGlvbkZvcm1hdChjdXN0b21Gb3JtYXQ6IEZ1bmN0aW9uID0gbnVsbCk6IEZ1bmN0aW9uIHtcclxuICAgIGZ1bmN0aW9uIGZvcm1hdERlbGVnYXRlKHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nLCBsbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgIGxldCBmb3JtYXRlZFZhbHVlOiBzdHJpbmcgPSBkZWZhdWx0SW50ZXJwb2xhdGlvbkZvcm1hdCh2YWx1ZSwgZm9ybWF0LCBsbmcpO1xyXG4gICAgICBpZiAoY3VzdG9tRm9ybWF0ID09PSBudWxsKVxyXG4gICAgICAgIHJldHVybiBmb3JtYXRlZFZhbHVlO1xyXG4gICAgICByZXR1cm4gY3VzdG9tRm9ybWF0KGZvcm1hdGVkVmFsdWUsIGZvcm1hdCwgbG5nKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmb3JtYXREZWxlZ2F0ZTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0SW50ZXJwb2xhdGlvbkZvcm1hdCh2YWx1ZTogYW55LCBmb3JtYXQ6IHN0cmluZywgbG5nOiBzdHJpbmcgPSB1bmRlZmluZWQpOiBzdHJpbmcge1xyXG4gIGlmICghdmFsdWUpXHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgc3dpdGNoIChmb3JtYXQpIHtcclxuICAgIGNhc2UgJ3VwcGVyJzpcclxuICAgIGNhc2UgJ3VwcGVyY2FzZSc6XHJcbiAgICAgIHJldHVybiB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgY2FzZSAnbG93ZXInOlxyXG4gICAgY2FzZSAnbG93ZXJjYXNlJzpcclxuICAgICAgcmV0dXJuIHZhbHVlLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBjYXNlICdjYXAnOlxyXG4gICAgY2FzZSAnY2FwaXRhbGl6ZSc6XHJcbiAgICAgIHJldHVybiB2YWx1ZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHZhbHVlLnNsaWNlKDEpO1xyXG4gICAgY2FzZSBudWxsOlxyXG4gICAgY2FzZSB1bmRlZmluZWQ6XHJcbiAgICBjYXNlICdub25lJzpcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUF1QixRQUFRLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEosT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5QywrSEFBYyxrQkFBa0IsQ0FBQztBQUNqQyw0QkFBYyxlQUFlLENBQUM7QUFDOUIsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsa0NBQWMscUJBQXFCLENBQUM7QUFDcEMsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsNkJBQWMsZ0JBQWdCLENBQUM7QUFDL0IseUVBQWMsa0NBQWtDLENBQUM7QUFDakQsZUFBYyx1QkFBdUIsQ0FBQztBQUN0QyxlQUFjLHFCQUFxQixDQUFDO0FBRXBDLGVBQWMsdUJBQXVCLENBQUM7QUFDdEMsZUFBYyxzQkFBc0IsQ0FBQzs7Ozs7O0FBR3JDLE1BQU0sVUFBVSxRQUFRLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1COztRQUM5RCxVQUFVLEdBQWEsRUFBRTtJQUM3QixVQUFVLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxp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aFByb3ZpZGVycywgTmdNb2R1bGUsIEZhY3RvcnlQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5cclxuaW1wb3J0IHsgSTE4TkVYVF9FUlJPUl9IQU5ETElOR19TVFJBVEVHWSwgSTE4TkVYVF9OQU1FU1BBQ0UsIEkxOE5FWFRfU0NPUEUsIEkxOE5FWFRfU0VSVklDRSwgSTE4TkVYVF9OQU1FU1BBQ0VfUkVTT0xWRVIgfSBmcm9tICcuL0kxOE5FWFRfVE9LRU5TJztcclxuaW1wb3J0IHsgSTE4TmV4dENhcFBpcGUgfSBmcm9tICcuL0kxOE5leHRDYXBQaXBlJztcclxuaW1wb3J0IHsgTmF0aXZlRXJyb3JIYW5kbGluZ1N0cmF0ZWd5IH0gZnJvbSAnLi9JMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWdpZXMnO1xyXG5pbXBvcnQgeyBJMThOZXh0Rm9ybWF0UGlwZSB9IGZyb20gJy4vSTE4TmV4dEZvcm1hdFBpcGUnO1xyXG5pbXBvcnQgeyBJMThOZXh0TW9kdWxlUGFyYW1zIH0gZnJvbSAnLi9JMThOZXh0TW9kdWxlUGFyYW1zJztcclxuaW1wb3J0IHsgSTE4TmV4dFBpcGUgfSBmcm9tICcuL0kxOE5leHRQaXBlJztcclxuaW1wb3J0IHsgSTE4TmV4dFNlcnZpY2UgfSBmcm9tICcuL0kxOE5leHRTZXJ2aWNlJztcclxuaW1wb3J0IHsgSTE4TmV4dFRpdGxlIH0gZnJvbSAnLi9JMThOZXh0VGl0bGUnO1xyXG5pbXBvcnQgeyBJVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9JVHJhbnNsYXRpb25TZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TkVYVF9UT0tFTlMnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRQaXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0Q2FwUGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dEZvcm1hdFBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRTZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0VGl0bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ2llcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dE1vZHVsZVBhcmFtcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dExvYWRSZXN1bHQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9JVHJhbnNsYXRpb25TZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JVHJhbnNsYXRpb25FdmVudHMnO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlcihhY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCByb3V0ZXJTdGF0ZVNuYXBzaG90KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgbGV0IG5hbWVzcGFjZXM6IHN0cmluZ1tdID0gW107XHJcbiAgbmFtZXNwYWNlcyA9IGFjdGl2YXRlZFJvdXRlU25hcHNob3QuZGF0YSAmJiBhY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LmRhdGEuaTE4bmV4dE5hbWVzcGFjZXMgfHwgbmFtZXNwYWNlcztcclxuICByZXR1cm4gdGhpcy5sb2FkTmFtZXNwYWNlcyhuYW1lc3BhY2VzLmZpbHRlcihuID0+IG4pKTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gaTE4bmV4dE5hbWVzcGFjZVJlc29sdmVyRmFjdG9yeShpMThuZXh0OiBJVHJhbnNsYXRpb25TZXJ2aWNlKSB7XHJcbiAgcmV0dXJuIHJlc29sdmVyLmJpbmQoaTE4bmV4dCk7XHJcbn1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEkxOE5FWFRfTkFNRVNQQUNFLFxyXG4gICAgICB1c2VWYWx1ZTogJydcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEkxOE5FWFRfU0NPUEUsXHJcbiAgICAgIHVzZVZhbHVlOiAnJ1xyXG4gICAgfSxcclxuICAgIEkxOE5leHRQaXBlLFxyXG4gICAgSTE4TmV4dENhcFBpcGUsXHJcbiAgICBJMThOZXh0Rm9ybWF0UGlwZSxcclxuICAgIEkxOE5leHRUaXRsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBJMThOZXh0UGlwZSxcclxuICAgIEkxOE5leHRDYXBQaXBlLFxyXG4gICAgSTE4TmV4dEZvcm1hdFBpcGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIEkxOE5leHRQaXBlLFxyXG4gICAgSTE4TmV4dENhcFBpcGUsXHJcbiAgICBJMThOZXh0Rm9ybWF0UGlwZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEkxOE5leHRNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KHBhcmFtczogSTE4TmV4dE1vZHVsZVBhcmFtcyA9IHt9KTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogSTE4TmV4dE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogSTE4TkVYVF9TRVJWSUNFLFxyXG4gICAgICAgICAgdXNlQ2xhc3M6IEkxOE5leHRTZXJ2aWNlXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBJMThORVhUX0VSUk9SX0hBTkRMSU5HX1NUUkFURUdZLFxyXG4gICAgICAgICAgdXNlQ2xhc3M6IHBhcmFtcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kgfHwgTmF0aXZlRXJyb3JIYW5kbGluZ1N0cmF0ZWd5XHJcbiAgICAgICAgfSxcclxuICAgICAgICBJMThOZXh0U2VydmljZSxcclxuICAgICAgICBJMThOZXh0UGlwZSxcclxuICAgICAgICBJMThOZXh0Q2FwUGlwZSxcclxuICAgICAgICBJMThOZXh0Rm9ybWF0UGlwZSxcclxuICAgICAgICBJMThOZXh0VGl0bGUsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogSTE4TkVYVF9OQU1FU1BBQ0VfUkVTT0xWRVIsXHJcbiAgICAgICAgICB1c2VGYWN0b3J5OiBpMThuZXh0TmFtZXNwYWNlUmVzb2x2ZXJGYWN0b3J5LFxyXG4gICAgICAgICAgZGVwczogW0kxOE5FWFRfU0VSVklDRV1cclxuICAgICAgICB9XHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgaW50ZXJwb2xhdGlvbkZvcm1hdChjdXN0b21Gb3JtYXQ6IEZ1bmN0aW9uID0gbnVsbCk6IEZ1bmN0aW9uIHtcclxuICAgIGZ1bmN0aW9uIGZvcm1hdERlbGVnYXRlKHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nLCBsbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgIGxldCBmb3JtYXRlZFZhbHVlOiBzdHJpbmcgPSBkZWZhdWx0SW50ZXJwb2xhdGlvbkZvcm1hdCh2YWx1ZSwgZm9ybWF0LCBsbmcpO1xyXG4gICAgICBpZiAoY3VzdG9tRm9ybWF0ID09PSBudWxsKVxyXG4gICAgICAgIHJldHVybiBmb3JtYXRlZFZhbHVlO1xyXG4gICAgICByZXR1cm4gY3VzdG9tRm9ybWF0KGZvcm1hdGVkVmFsdWUsIGZvcm1hdCwgbG5nKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmb3JtYXREZWxlZ2F0ZTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0SW50ZXJwb2xhdGlvbkZvcm1hdCh2YWx1ZTogYW55LCBmb3JtYXQ6IHN0cmluZywgbG5nOiBzdHJpbmcgPSB1bmRlZmluZWQpOiBzdHJpbmcge1xyXG4gIGlmICghdmFsdWUpXHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgc3dpdGNoIChmb3JtYXQpIHtcclxuICAgIGNhc2UgJ3VwcGVyJzpcclxuICAgIGNhc2UgJ3VwcGVyY2FzZSc6XHJcbiAgICAgIHJldHVybiB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgY2FzZSAnbG93ZXInOlxyXG4gICAgY2FzZSAnbG93ZXJjYXNlJzpcclxuICAgICAgcmV0dXJuIHZhbHVlLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBjYXNlICdjYXAnOlxyXG4gICAgY2FzZSAnY2FwaXRhbGl6ZSc6XHJcbiAgICAgIHJldHVybiB2YWx1ZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHZhbHVlLnNsaWNlKDEpO1xyXG4gICAgY2FzZSBudWxsOlxyXG4gICAgY2FzZSB1bmRlZmluZWQ6XHJcbiAgICBjYXNlICdub25lJzpcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcbn1cclxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { InjectionToken } from '@angular/core';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import * as tslib_1 from "tslib";

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

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

function (resolve, reject) {
return function (err, t) {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
function (err, t) {
/** @type {?} */

@@ -39,3 +44,3 @@ var result = {

resolve(result);
};
});
};

@@ -59,3 +64,8 @@ return NativeErrorHandlingStrategy;

function (resolve, reject) {
return function (err, t) {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
function (err, t) {
/** @type {?} */

@@ -71,3 +81,3 @@ var result = {

reject(err);
};
});
};

@@ -77,2 +87,2 @@ return StrictErrorHandlingStrategy;

export { StrictErrorHandlingStrategy };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1pMThuZXh0LyIsInNvdXJjZXMiOlsiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQSxrREFLQzs7Ozs7OztJQUpHLCtFQUdROztBQUdaO0lBQUE7SUFhQSxDQUFDOzs7Ozs7SUFaRyw0Q0FBTTs7Ozs7SUFBTixVQUNJLE9BQXVELEVBQ3ZELE1BQTRCO1FBRTVCLE9BQU8sVUFBQyxHQUFRLEVBQUUsQ0FBWTs7Z0JBQ3RCLE1BQU0sR0FBc0I7Z0JBQzVCLEdBQUcsRUFBRSxHQUFHO2dCQUNSLENBQUMsRUFBRSxDQUFDO2FBQ1A7WUFDRCxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUNMLGtDQUFDO0FBQUQsQ0FBQyxBQWJELElBYUM7O0FBRUQ7SUFBQTtJQWlCQSxDQUFDOzs7Ozs7SUFoQkcsNENBQU07Ozs7O0lBQU4sVUFDSSxPQUF1RCxFQUN2RCxNQUE0QjtRQUU1QixPQUFPLFVBQUMsR0FBUSxFQUFFLENBQU87O2dCQUNqQixNQUFNLEdBQXNCO2dCQUM1QixHQUFHLEVBQUUsR0FBRztnQkFDUixDQUFDLEVBQUUsQ0FBQzthQUNQO1lBQ0QsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDTixPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2hCLE9BQU87YUFDVjtZQUNELE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQixDQUFDLENBQUM7SUFDTixDQUFDO0lBQ0wsa0NBQUM7QUFBRCxDQUFDLEFBakJELElBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSTE4TmV4dExvYWRSZXN1bHQgfSBmcm9tICcuL0kxOE5leHRMb2FkUmVzdWx0JztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSB7XHJcbiAgICBoYW5kbGUoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICApOiB2b2lkO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTmF0aXZlRXJyb3JIYW5kbGluZ1N0cmF0ZWd5IGltcGxlbWVudHMgSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSB7XHJcbiAgICBoYW5kbGUoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICApIHtcclxuICAgICAgICByZXR1cm4gKGVycjogYW55LCB0PzogRnVuY3Rpb24pID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlc3VsdDogSTE4TmV4dExvYWRSZXN1bHQgPSB7XHJcbiAgICAgICAgICAgICAgICBlcnI6IGVycixcclxuICAgICAgICAgICAgICAgIHQ6IHRcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBTdHJpY3RFcnJvckhhbmRsaW5nU3RyYXRlZ3kgaW1wbGVtZW50cyBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IHtcclxuICAgIGhhbmRsZShcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICkge1xyXG4gICAgICAgIHJldHVybiAoZXJyOiBhbnksIHQ/OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlc3VsdDogSTE4TmV4dExvYWRSZXN1bHQgPSB7XHJcbiAgICAgICAgICAgICAgICBlcnI6IGVycixcclxuICAgICAgICAgICAgICAgIHQ6IHRcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgaWYgKCFlcnIpIHtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZWplY3QoZXJyKTtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1pMThuZXh0LyIsInNvdXJjZXMiOlsiSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFQSxrREFLQzs7Ozs7OztJQUpHLCtFQUdROztBQUdaO0lBQUE7SUFhQSxDQUFDOzs7Ozs7SUFaRyw0Q0FBTTs7Ozs7SUFBTixVQUNJLE9BQXVELEVBQ3ZELE1BQTRCO1FBRTVCOzs7OztRQUFPLFVBQUMsR0FBUSxFQUFFLENBQVk7O2dCQUN0QixNQUFNLEdBQXNCO2dCQUM1QixHQUFHLEVBQUUsR0FBRztnQkFDUixDQUFDLEVBQUUsQ0FBQzthQUNQO1lBQ0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BCLENBQUMsRUFBQztJQUNOLENBQUM7SUFDTCxrQ0FBQztBQUFELENBQUMsQUFiRCxJQWFDOztBQUVEO0lBQUE7SUFpQkEsQ0FBQzs7Ozs7O0lBaEJHLDRDQUFNOzs7OztJQUFOLFVBQ0ksT0FBdUQsRUFDdkQsTUFBNEI7UUFFNUI7Ozs7O1FBQU8sVUFBQyxHQUFRLEVBQUUsQ0FBTzs7Z0JBQ2pCLE1BQU0sR0FBc0I7Z0JBQzVCLEdBQUcsRUFBRSxHQUFHO2dCQUNSLENBQUMsRUFBRSxDQUFDO2FBQ1A7WUFDRCxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNOLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDaEIsT0FBTzthQUNWO1lBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLENBQUMsRUFBQztJQUNOLENBQUM7SUFDTCxrQ0FBQztBQUFELENBQUMsQUFqQkQsSUFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJMThOZXh0TG9hZFJlc3VsdCB9IGZyb20gJy4vSTE4TmV4dExvYWRSZXN1bHQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IHtcclxuICAgIGhhbmRsZShcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICk6IHZvaWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBOYXRpdmVFcnJvckhhbmRsaW5nU3RyYXRlZ3kgaW1wbGVtZW50cyBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IHtcclxuICAgIGhhbmRsZShcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICkge1xyXG4gICAgICAgIHJldHVybiAoZXJyOiBhbnksIHQ/OiBGdW5jdGlvbikgPT4ge1xyXG4gICAgICAgICAgICBsZXQgcmVzdWx0OiBJMThOZXh0TG9hZFJlc3VsdCA9IHtcclxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxyXG4gICAgICAgICAgICAgICAgdDogdFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgICAgfTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFN0cmljdEVycm9ySGFuZGxpbmdTdHJhdGVneSBpbXBsZW1lbnRzIEkxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ3kge1xyXG4gICAgaGFuZGxlKFxyXG4gICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgKSB7XHJcbiAgICAgICAgcmV0dXJuIChlcnI6IGFueSwgdD86IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgcmVzdWx0OiBJMThOZXh0TG9hZFJlc3VsdCA9IHtcclxuICAgICAgICAgICAgICAgIGVycjogZXJyLFxyXG4gICAgICAgICAgICAgICAgdDogdFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBpZiAoIWVycikge1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJlamVjdChlcnIpO1xyXG4gICAgICAgIH07XHJcbiAgICB9XHJcbn1cclxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { BehaviorSubject, Subject } from 'rxjs';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import { Inject, Injectable, Pipe } from '@angular/core';

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -79,3 +79,7 @@ import * as tslib_1 from "tslib";

keysWithScope.push.apply(// Do not set scope, if key contains a namespace
keysWithScope, tslib_1.__spread(scope.map(function (sc) { return _this.joinStrings(keySeparator, sc, k); })));
keysWithScope, tslib_1.__spread(scope.map((/**
* @param {?} sc
* @return {?}
*/
function (sc) { return _this.joinStrings(keySeparator, sc, k); }))));
}

@@ -119,3 +123,7 @@ keysWithScope.push(k);

keysWithNamespace.push.apply(// Do not set namespace, if key contains a namespace
keysWithNamespace, tslib_1.__spread(ns.map(function (n) { return _this.joinStrings(nsSeparator, n, k); })));
keysWithNamespace, tslib_1.__spread(ns.map((/**
* @param {?} n
* @return {?}
*/
function (n) { return _this.joinStrings(nsSeparator, n, k); }))));
}

@@ -212,2 +220,2 @@ keysWithNamespace.push(k);

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0UGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyRjtJQU1FLHFCQUNxQyxnQkFBcUMsRUFDbkMsRUFBcUIsRUFDekIsS0FBd0I7UUFGdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFxQjtRQUNuQyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUN6QixVQUFLLEdBQUwsS0FBSyxDQUFtQjtJQUFHLENBQUM7Ozs7OztJQUV4RCwrQkFBUzs7Ozs7SUFBaEIsVUFBaUIsR0FBc0IsRUFBRSxPQUFhO1FBQ3BELE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDOztZQUVuQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU87UUFDNUMsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLElBQUksRUFBRTtZQUN2RSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ2QsR0FBRyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDdkY7U0FDRjtRQUNELElBQUksT0FBTyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLEtBQUssSUFBSSxFQUFFO1lBQy9FLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtnQkFDWCxHQUFHLEdBQUcsSUFBSSxDQUFD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RTtvQkFBMUIsQ0FBQztTQU1UO1FBQ0QsT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDOzs7Ozs7O0lBRU8saUNBQVc7Ozs7OztJQUFuQixVQUFvQixTQUFpQjtRQUFFLGFBQWdCO2FBQWhCLFVBQWdCLEVBQWhCLHFCQUFnQixFQUFoQixJQUFnQjtZQUFoQiw0QkFBZ0I7O1FBQ3JELE9BQU8saUJBQUksR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDOzs7Ozs7O0lBRU8sNENBQXNCOzs7Ozs7SUFBOUIsVUFBK0IsR0FBVyxFQUFFLFdBQW1CO1FBQzdELE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDOzs7Ozs7SUFFTyxvQ0FBYzs7Ozs7SUFBdEIsVUFBdUIsT0FBWTtRQUNqQyxPQUFPLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSTtZQUN6QixPQUFPLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDL0MsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs7Z0JBcEZGLFVBQVU7Z0JBQ1YsSUFBSSxTQUFDO29CQUNGLElBQUksRUFBRSxTQUFTO2lCQUNsQjs7OztnREFJTSxNQUFNLFNBQUMsZUFBZTtnREFDdEIsTUFBTSxTQUFDLGlCQUFpQjtnREFDeEIsTUFBTSxTQUFDLGFBQWE7O0lBNEUzQixrQkFBQztDQUFBLEFBckZELElBcUZDO1NBakZZLFdBQVc7Ozs7OztJQUdsQix1Q0FBc0U7Ozs7O0lBQ3RFLHlCQUF3RDs7Ozs7SUFDeEQsNEJBQXVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBJMThORVhUX05BTUVTUEFDRSwgSTE4TkVYVF9TQ09QRSwgSTE4TkVYVF9TRVJWSUNFIH0gZnJvbSAnLi9JMThORVhUX1RPS0VOUyc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5ASW5qZWN0YWJsZSgpXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6ICdpMThuZXh0J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSTE4TmV4dFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICAgIEBJbmplY3QoSTE4TkVYVF9TRVJWSUNFKSBwcml2YXRlIHRyYW5zbGF0ZUkxOE5leHQ6IElUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICAgIEBJbmplY3QoSTE4TkVYVF9OQU1FU1BBQ0UpIHByaXZhdGUgbnM6IHN0cmluZyB8IHN0cmluZ1tdLFxyXG4gICAgICBASW5qZWN0KEkxOE5FWFRfU0NPUEUpIHByaXZhdGUgc2NvcGU6IHN0cmluZyB8IHN0cmluZ1tdKSB7fVxyXG5cclxuICBwdWJsaWMgdHJhbnNmb3JtKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgb3B0aW9ucyA9IHRoaXMucHJlcGFyZU9wdGlvbnMob3B0aW9ucyk7XHJcblxyXG4gICAgbGV0IGkxOG5PcHRzID0gdGhpcy50cmFuc2xhdGVJMThOZXh0Lm9wdGlvbnM7XHJcbiAgICBpZiAob3B0aW9ucy5wcmVwZW5kU2NvcGUgPT09IHVuZGVmaW5lZCB8fCBvcHRpb25zLnByZXBlbmRTY29wZSA9PT0gdHJ1ZSkge1xyXG4gICAgICBpZiAodGhpcy5zY29wZSkge1xyXG4gICAgICAgIGtleSA9IHRoaXMucHJlcGVuZFNjb3BlKGtleSwgdGhpcy5zY29wZSwgaTE4bk9wdHMua2V5U2VwYXJhdG9yLCBpMThuT3B0cy5uc1NlcGFyYXRvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChvcHRpb25zLnByZXBlbmROYW1lc3BhY2UgPT09IHVuZGVmaW5lZCB8fCBvcHRpb25zLnByZXBlbmROYW1lc3BhY2UgPT09IHRydWUpIHtcclxuICAgICAgaWYgKHRoaXMubnMpIHtcclxuICAgICAgICBrZXkgPSB0aGlzLnByZXBlbmROYW1lc3BhY2Uoa2V5LCB0aGlzLm5zLCBpMThuT3B0cy5uc1NlcGFyYXRvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGxldCByZXN1bHQgPSB0aGlzLnRyYW5zbGF0ZUkxOE5leHQudChrZXksIG9wdGlvbnMpO1xyXG4gICAgaWYgKG9wdGlvbnMuZm9ybWF0KSB7XHJcbiAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICByZXN1bHQgPSB0aGlzLnRyYW5zbGF0ZUkxOE5leHRcclxuICAgICAgICAgIC5mb3JtYXQocmVzdWx0LCBvcHRpb25zLmZvcm1hdCwgdGhpcy50cmFuc2xhdGVJMThOZXh0Lmxhbmd1YWdlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJlcGVuZFNjb3BlKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIHNjb3BlOiBzdHJpbmcgfCBzdHJpbmdbXSwga2V5U2VwYXJhdG9yOiBzdHJpbmcsICBuc1NlcGFyYXRvcjogc3RyaW5nKTogc3RyaW5nW10ge1xyXG4gICAgaWYgKHR5cGVvZihrZXkpID09PSAnc3RyaW5nJykge1xyXG4gICAgICBrZXkgPSBba2V5XTtcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2Yoc2NvcGUpID09PSAnc3RyaW5nJykge1xyXG4gICAgICBzY29wZSA9IFtzY29wZV07XHJcbiAgICB9XHJcbiAgICBsZXQga2V5c1dpdGhTY29wZSA9IFtdO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgayA9IGtleVtpXTtcclxuICAgICAgaWYgKCF0aGlzLmtleUNvbnRhaW5zTnNTZXBhcmF0b3IoaywgbnNTZXBhcmF0b3IpKSB7IC8vIERvIG5vdCBzZXQgc2NvcGUsIGlmIGtleSBjb250YWlucyBhIG5hbWVzcGFjZVxyXG4gICAgICAgIGtleXNXaXRoU2NvcGUucHVzaCguLi5zY29wZS5tYXAoc2MgPT4gdGhpcy5qb2luU3RyaW5ncyhrZXlTZXBhcmF0b3IsIHNjLCBrKSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGtleXNXaXRoU2NvcGUucHVzaChrKTtcclxuICAgIH1cclxuICAgIHJldHVybiBrZXlzV2l0aFNjb3BlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwcmVwZW5kTmFtZXNwYWNlKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIG5zOiBzdHJpbmcgfCBzdHJpbmdbXSwgbnNTZXBhcmF0b3I6IHN0cmluZyk6IHN0cmluZ1tdIHtcclxuICAgIGlmICh0eXBlb2Yoa2V5KSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAga2V5ID0gW2tleV07XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mKG5zKSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgbnMgPSBbbnNdO1xyXG4gICAgfVxyXG4gICAgbGV0IGtleXNXaXRoTmFtZXNwYWNlID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtleS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBrID0ga2V5W2ldO1xyXG4gICAgICBpZiAoIXRoaXMua2V5Q29udGFpbnNOc1NlcGFyYXRvcihrLCBuc1NlcGFyYXRvcikpIHsgLy8gRG8gbm90IHNldCBuYW1lc3BhY2UsIGlmIGtleSBjb250YWlucyBhIG5hbWVzcGFjZVxyXG4gICAgICAgIGtleXNXaXRoTmFtZXNwYWNlLnB1c2goLi4ubnMubWFwKG4gPT4gdGhpcy5qb2luU3RyaW5ncyhuc1NlcGFyYXRvciwgbiwgaykpKTtcclxuICAgICAgfVxyXG4gICAgICBrZXlzV2l0aE5hbWVzcGFjZS5wdXNoKGspO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGtleXNXaXRoTmFtZXNwYWNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBqb2luU3RyaW5ncyhzZXBhcmF0b3I6IHN0cmluZywgLi4uc3RyOiBzdHJpbmdbXSkge1xyXG4gICAgcmV0dXJuIFsuLi5zdHJdLmpvaW4oc2VwYXJhdG9yKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUga2V5Q29udGFpbnNOc1NlcGFyYXRvcihrZXk6IHN0cmluZywgbnNTZXBhcmF0b3I6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGtleS5pbmRleE9mKG5zU2VwYXJhdG9yKSAhPT0gLTE7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXBhcmVPcHRpb25zKG9wdGlvbnM6IGFueSkge1xyXG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcbiAgICBpZiAob3B0aW9ucy5jb250ZXh0ICE9IG51bGwpXHJcbiAgICAgIG9wdGlvbnMuY29udGV4dCA9IG9wdGlvbnMuY29udGV4dC50b1N0cmluZygpO1xyXG4gICAgcmV0dXJuIG9wdGlvbnM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFBpcGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0UGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyRjtJQU1FLHFCQUNxQyxnQkFBcUMsRUFDbkMsRUFBcUIsRUFDekIsS0FBd0I7UUFGdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFxQjtRQUNuQyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUN6QixVQUFLLEdBQUwsS0FBSyxDQUFtQjtJQUFHLENBQUM7Ozs7OztJQUV4RCwrQkFBUzs7Ozs7SUFBaEIsVUFBaUIsR0FBc0IsRUFBRSxPQUFhO1FBQ3BELE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDOztZQUVuQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU87UUFDNUMsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLElBQUksRUFBRTtZQUN2RSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ2QsR0FBRyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDdkY7U0FDRjtRQUNELElBQUksT0FBTyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLEtBQUssSUFBSSxFQUFFO1lBQy9FLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRTtnQkFDWCxHQUFHLEdBQUcsSUFBSSxDQUFD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Q0FBQyxFQUFFO29CQUExQixDQUFDO1NBTVQ7UUFDRCxPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7Ozs7Ozs7SUFFTyxpQ0FBVzs7Ozs7O0lBQW5CLFVBQW9CLFNBQWlCO1FBQUUsYUFBZ0I7YUFBaEIsVUFBZ0IsRUFBaEIscUJBQWdCLEVBQWhCLElBQWdCO1lBQWhCLDRCQUFnQjs7UUFDckQsT0FBTyxpQkFBSSxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Ozs7Ozs7SUFFTyw0Q0FBc0I7Ozs7OztJQUE5QixVQUErQixHQUFXLEVBQUUsV0FBbUI7UUFDN0QsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Ozs7OztJQUVPLG9DQUFjOzs7OztJQUF0QixVQUF1QixPQUFZO1FBQ2pDLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3hCLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxJQUFJO1lBQ3pCLE9BQU8sQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvQyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDOztnQkFwRkYsVUFBVTtnQkFDVixJQUFJLFNBQUM7b0JBQ0YsSUFBSSxFQUFFLFNBQVM7aUJBQ2xCOzs7O2dEQUlNLE1BQU0sU0FBQyxlQUFlO2dEQUN0QixNQUFNLFNBQUMsaUJBQWlCO2dEQUN4QixNQUFNLFNBQUMsYUFBYTs7SUE0RTNCLGtCQUFDO0NBQUEsQUFyRkQsSUFxRkM7U0FqRlksV0FBVzs7Ozs7O0lBR2xCLHVDQUFzRTs7Ozs7SUFDdEUseUJBQXdEOzs7OztJQUN4RCw0QkFBdUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEkxOE5FWFRfTkFNRVNQQUNFLCBJMThORVhUX1NDT1BFLCBJMThORVhUX1NFUlZJQ0UgfSBmcm9tICcuL0kxOE5FWFRfVE9LRU5TJztcclxuaW1wb3J0IHsgSVRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4vSVRyYW5zbGF0aW9uU2VydmljZSc7XHJcbkBJbmplY3RhYmxlKClcclxuQFBpcGUoe1xyXG4gICAgbmFtZTogJ2kxOG5leHQnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJMThOZXh0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgICAgQEluamVjdChJMThORVhUX1NFUlZJQ0UpIHByaXZhdGUgdHJhbnNsYXRlSTE4TmV4dDogSVRyYW5zbGF0aW9uU2VydmljZSxcclxuICAgICAgQEluamVjdChJMThORVhUX05BTUVTUEFDRSkgcHJpdmF0ZSBuczogc3RyaW5nIHwgc3RyaW5nW10sXHJcbiAgICAgIEBJbmplY3QoSTE4TkVYVF9TQ09QRSkgcHJpdmF0ZSBzY29wZTogc3RyaW5nIHwgc3RyaW5nW10pIHt9XHJcblxyXG4gIHB1YmxpYyB0cmFuc2Zvcm0oa2V5OiBzdHJpbmcgfCBzdHJpbmdbXSwgb3B0aW9ucz86IGFueSk6IHN0cmluZyB7XHJcbiAgICBvcHRpb25zID0gdGhpcy5wcmVwYXJlT3B0aW9ucyhvcHRpb25zKTtcclxuXHJcbiAgICBsZXQgaTE4bk9wdHMgPSB0aGlzLnRyYW5zbGF0ZUkxOE5leHQub3B0aW9ucztcclxuICAgIGlmIChvcHRpb25zLnByZXBlbmRTY29wZSA9PT0gdW5kZWZpbmVkIHx8IG9wdGlvbnMucHJlcGVuZFNjb3BlID09PSB0cnVlKSB7XHJcbiAgICAgIGlmICh0aGlzLnNjb3BlKSB7XHJcbiAgICAgICAga2V5ID0gdGhpcy5wcmVwZW5kU2NvcGUoa2V5LCB0aGlzLnNjb3BlLCBpMThuT3B0cy5rZXlTZXBhcmF0b3IsIGkxOG5PcHRzLm5zU2VwYXJhdG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKG9wdGlvbnMucHJlcGVuZE5hbWVzcGFjZSA9PT0gdW5kZWZpbmVkIHx8IG9wdGlvbnMucHJlcGVuZE5hbWVzcGFjZSA9PT0gdHJ1ZSkge1xyXG4gICAgICBpZiAodGhpcy5ucykge1xyXG4gICAgICAgIGtleSA9IHRoaXMucHJlcGVuZE5hbWVzcGFjZShrZXksIHRoaXMubnMsIGkxOG5PcHRzLm5zU2VwYXJhdG9yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGV0IHJlc3VsdCA9IHRoaXMudHJhbnNsYXRlSTE4TmV4dC50KGtleSwgb3B0aW9ucyk7XHJcbiAgICBpZiAob3B0aW9ucy5mb3JtYXQpIHtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIHJlc3VsdCA9IHRoaXMudHJhbnNsYXRlSTE4TmV4dFxyXG4gICAgICAgICAgLmZvcm1hdChyZXN1bHQsIG9wdGlvbnMuZm9ybWF0LCB0aGlzLnRyYW5zbGF0ZUkxOE5leHQubGFuZ3VhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwcmVwZW5kU2NvcGUoa2V5OiBzdHJpbmcgfCBzdHJpbmdbXSwgc2NvcGU6IHN0cmluZyB8IHN0cmluZ1tdLCBrZXlTZXBhcmF0b3I6IHN0cmluZywgIG5zU2VwYXJhdG9yOiBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgICBpZiAodHlwZW9mKGtleSkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIGtleSA9IFtrZXldO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZihzY29wZSkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHNjb3BlID0gW3Njb3BlXTtcclxuICAgIH1cclxuICAgIGxldCBrZXlzV2l0aFNjb3BlID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtleS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBrID0ga2V5W2ldO1xyXG4gICAgICBpZiAoIXRoaXMua2V5Q29udGFpbnNOc1NlcGFyYXRvcihrLCBuc1NlcGFyYXRvcikpIHsgLy8gRG8gbm90IHNldCBzY29wZSwgaWYga2V5IGNvbnRhaW5zIGEgbmFtZXNwYWNlXHJcbiAgICAgICAga2V5c1dpdGhTY29wZS5wdXNoKC4uLnNjb3BlLm1hcChzYyA9PiB0aGlzLmpvaW5TdHJpbmdzKGtleVNlcGFyYXRvciwgc2MsIGspKSk7XHJcbiAgICAgIH1cclxuICAgICAga2V5c1dpdGhTY29wZS5wdXNoKGspO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGtleXNXaXRoU2NvcGU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXBlbmROYW1lc3BhY2Uoa2V5OiBzdHJpbmcgfCBzdHJpbmdbXSwgbnM6IHN0cmluZyB8IHN0cmluZ1tdLCBuc1NlcGFyYXRvcjogc3RyaW5nKTogc3RyaW5nW10ge1xyXG4gICAgaWYgKHR5cGVvZihrZXkpID09PSAnc3RyaW5nJykge1xyXG4gICAgICBrZXkgPSBba2V5XTtcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2YobnMpID09PSAnc3RyaW5nJykge1xyXG4gICAgICBucyA9IFtuc107XHJcbiAgICB9XHJcbiAgICBsZXQga2V5c1dpdGhOYW1lc3BhY2UgPSBbXTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGsgPSBrZXlbaV07XHJcbiAgICAgIGlmICghdGhpcy5rZXlDb250YWluc05zU2VwYXJhdG9yKGssIG5zU2VwYXJhdG9yKSkgeyAvLyBEbyBub3Qgc2V0IG5hbWVzcGFjZSwgaWYga2V5IGNvbnRhaW5zIGEgbmFtZXNwYWNlXHJcbiAgICAgICAga2V5c1dpdGhOYW1lc3BhY2UucHVzaCguLi5ucy5tYXAobiA9PiB0aGlzLmpvaW5TdHJpbmdzKG5zU2VwYXJhdG9yLCBuLCBrKSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGtleXNXaXRoTmFtZXNwYWNlLnB1c2goayk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ga2V5c1dpdGhOYW1lc3BhY2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGpvaW5TdHJpbmdzKHNlcGFyYXRvcjogc3RyaW5nLCAuLi5zdHI6IHN0cmluZ1tdKSB7XHJcbiAgICByZXR1cm4gWy4uLnN0cl0uam9pbihzZXBhcmF0b3IpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBrZXlDb250YWluc05zU2VwYXJhdG9yKGtleTogc3RyaW5nLCBuc1NlcGFyYXRvcjogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4ga2V5LmluZGV4T2YobnNTZXBhcmF0b3IpICE9PSAtMTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJlcGFyZU9wdGlvbnMob3B0aW9uczogYW55KSB7XHJcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuICAgIGlmIChvcHRpb25zLmNvbnRleHQgIT0gbnVsbClcclxuICAgICAgb3B0aW9ucy5jb250ZXh0ID0gb3B0aW9ucy5jb250ZXh0LnRvU3RyaW5nKCk7XHJcbiAgICByZXR1cm4gb3B0aW9ucztcclxuICB9XHJcbn1cclxuIl19
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -56,5 +56,10 @@ import { Inject, Injectable } from '@angular/core';

this.subscribeEvents();
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.init.call(i18next, Object.assign({}, options), _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -149,5 +154,10 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.changeLanguage.call(i18next, lng, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -164,5 +174,10 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.loadNamespaces.call(i18next, namespaces, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -181,5 +196,10 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.loadLanguages.call(i18next, lngs, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -328,17 +348,52 @@ //#region resource handling

var _this = this;
i18next.on.call(i18next, 'initialized', function (options) {
i18next.on.call(i18next, 'initialized', (/**
* @param {?} options
* @return {?}
*/
function (options) {
_this.language = i18next.language;
_this.languages = i18next.languages;
_this.events.initialized.next(options);
});
i18next.on.call(i18next, 'loaded', function (loaded) { return _this.events.loaded.next(loaded); });
i18next.on.call(i18next, 'failedLoading', function (lng, ns, msg) { return _this.events.failedLoading.next({ lng: lng, ns: ns, msg: msg }); });
i18next.on.call(i18next, 'languageChanged', function (lng) {
}));
i18next.on.call(i18next, 'loaded', (/**
* @param {?} loaded
* @return {?}
*/
function (loaded) { return _this.events.loaded.next(loaded); }));
i18next.on.call(i18next, 'failedLoading', (/**
* @param {?} lng
* @param {?} ns
* @param {?} msg
* @return {?}
*/
function (lng, ns, msg) { return _this.events.failedLoading.next({ lng: lng, ns: ns, msg: msg }); }));
i18next.on.call(i18next, 'languageChanged', (/**
* @param {?} lng
* @return {?}
*/
function (lng) {
_this.language = i18next.language;
_this.languages = i18next.languages;
_this.events.languageChanged.next(lng);
});
i18next.on.call(i18next, 'missingKey', function (lngs, namespace, key, res) { return _this.events.missingKey.next({ lngs: lngs, namespace: namespace, key: key, res: res }); });
i18next.on.call(i18next, 'added', function (lng, ns) { return _this.events.added.next({ lng: lng, ns: ns }); });
i18next.on.call(i18next, 'removed', function (lng, ns) { return _this.events.removed.next({ lng: lng, ns: ns }); });
}));
i18next.on.call(i18next, 'missingKey', (/**
* @param {?} lngs
* @param {?} namespace
* @param {?} key
* @param {?} res
* @return {?}
*/
function (lngs, namespace, key, res) { return _this.events.missingKey.next({ lngs: lngs, namespace: namespace, key: key, res: res }); }));
i18next.on.call(i18next, 'added', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
function (lng, ns) { return _this.events.added.next({ lng: lng, ns: ns }); }));
i18next.on.call(i18next, 'removed', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
function (lng, ns) { return _this.events.removed.next({ lng: lng, ns: ns }); }));
};

@@ -368,2 +423,2 @@ I18NextService.decorators = [

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxLQUFLLElBQUksTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztJQU0xQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU87QUFFNUI7SUFXRSx3QkFBNkQscUJBQW1EO1FBQW5ELDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFSaEgsV0FBTSxHQUF1QixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2pELGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsY0FBUyxHQUFhLEVBQUUsQ0FBQztJQU0wRixDQUFDO0lBSnBILHNCQUFJLG1DQUFPOzs7O1FBQVg7WUFDRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDekIsQ0FBQzs7O09BQUE7Ozs7Ozs7SUFJTSw0QkFBRzs7Ozs7O0lBQVYsVUFBVyxNQUFXO1FBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNsQyxPQUFPLG1CQUFBLElBQUksRUFBQSxDQUFDO0lBQ2QsQ0FBQzs7Ozs7SUFFTSw2QkFBSTs7OztJQUFYLFVBQVksT0FBYTtRQUF6QixpQkFjQztRQWJDLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV2QixPQUFPLElBQUksT0FBTyxDQUNkLFVBQ0UsT0FBdUQsRUFDdkQsTUFBNEI7WUFFNUIsT0FBTyxDQUFDLElBQUksQ0FBQyxJ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QUEsRUFBRSxFQUFFLElBQUEsRUFBQyxDQUFDLEVBQW5DLENBQW1DLENBQUMsQ0FBQztJQUV4RixDQUFDOztnQkFqSkYsVUFBVTs7OztnREFXSSxNQUFNLFNBQUMsK0JBQStCOztJQXVJckQscUJBQUM7Q0FBQSxBQWxKRCxJQWtKQztTQWpKWSxjQUFjOzs7SUFFekIsZ0NBQWlEOztJQUNqRCxrQ0FBc0I7O0lBQ3RCLG1DQUF5Qjs7Ozs7SUFNYiwrQ0FBb0ciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgaTE4biBmcm9tICdpMThuZXh0JztcclxuXHJcbmltcG9ydCB7IEkxOE5FWFRfRVJST1JfSEFORExJTkdfU1RSQVRFR1kgfSBmcm9tICcuL0kxOE5FWFRfVE9LRU5TJztcclxuaW1wb3J0IHsgSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSB9IGZyb20gJy4vSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzJztcclxuaW1wb3J0IHsgSTE4TmV4dEV2ZW50cyB9IGZyb20gJy4vSTE4TmV4dEV2ZW50cyc7XHJcbmltcG9ydCB7IEkxOE5leHRMb2FkUmVzdWx0IH0gZnJvbSAnLi9JMThOZXh0TG9hZFJlc3VsdCc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvbkV2ZW50cyB9IGZyb20gJy4vSVRyYW5zbGF0aW9uRXZlbnRzJztcclxuaW1wb3J0IHsgSVRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4vSVRyYW5zbGF0aW9uU2VydmljZSc7XHJcblxyXG5cclxuY29uc3QgaTE4bmV4dCA9IGkxOG4uZGVmYXVsdDtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEkxOE5leHRTZXJ2aWNlIGltcGxlbWVudHMgSVRyYW5zbGF0aW9uU2VydmljZSB7XHJcblxyXG4gIGV2ZW50czogSVRyYW5zbGF0aW9uRXZlbnRzID0gbmV3IEkxOE5leHRFdmVudHMoKTtcclxuICBsYW5ndWFnZTogc3RyaW5nID0gJyc7XHJcbiAgbGFuZ3VhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBnZXQgb3B0aW9ucygpOiBhbnkge1xyXG4gICAgcmV0dXJuIGkxOG5leHQub3B0aW9ucztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoSTE4TkVYVF9FUlJPUl9IQU5ETElOR19TVFJBVEVHWSkgcHJpdmF0ZSBlcnJvckhhbmRsaW5nU3RyYXRlZ3k6IEkxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ3kpIHt9XHJcblxyXG4gIHB1YmxpYyB1c2UocGx1Z2luOiBhbnkpIHtcclxuICAgIGkxOG5leHQudXNlLmNhbGwoaTE4bmV4dCwgcGx1Z2luKTtcclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXQob3B0aW9ucz86IGFueSk6IFByb21pc2U8YW55PiB7XHJcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmliZUV2ZW50cygpO1xyXG5cclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4oXHJcbiAgICAgICAgKFxyXG4gICAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICAgICApID0+IHtcclxuICAgICAgICAgIGkxOG5leHQuaW5pdC5jYWxsKGkxOG5leHQsIE9iamVjdC5hc3NpZ24oe30sIG9wdGlvbnMpLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyB0KGtleTogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcbiAgICByZXR1cm4gaTE4bmV4dC50LmNhbGwoaTE4bmV4dCwgPGFueT5rZXksIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGZvcm1hdCh2YWx1ZTogYW55LCBmb3JtYXQ6IHN0cmluZywgbG5nOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGkxOG5leHQuZm9ybWF0LmNhbGwoaTE4bmV4dCwgdmFsdWUsIGZvcm1hdCwgbG5nKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBleGlzdHMoa2V5LCBvcHRpb25zKSB7XHJcbiAgICByZXR1cm4gaTE4bmV4dC5leGlzdHMuY2FsbChpMThuZXh0LCBrZXksIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEZpeGVkVChsbmcsIG5zKSB7XHJcbiAgICByZXR1cm4gaTE4bmV4dC5nZXRGaXhlZFQuY2FsbChpMThuZXh0LCBsbmcsIG5zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXREZWZhdWx0TmFtZXNwYWNlKG5zOiBzdHJpbmcpIHtcclxuICAgIGkxOG5leHQuc2V0RGVmYXVsdE5hbWVzcGFjZS5jYWxsKGkxOG5leHQsIG5zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkaXIobG5nOiBzdHJpbmcgPSB1bmRlZmluZWQpIHtcclxuICAgICAgcmV0dXJuIGkxOG5leHQuZGlyLmNhbGwoaTE4bmV4dCwgbG5nKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGFuZ2VMYW5ndWFnZShsbmc6IHN0cmluZyk6IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4oXHJcbiAgICAgIChcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICAgKSA9PiB7XHJcbiAgICAgICAgICBpMThuZXh0LmNoYW5nZUxhbmd1YWdlLmNhbGwoaTE4bmV4dCwgbG5nLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9hZE5hbWVzcGFjZXMobmFtZXNwYWNlczogc3RyaW5nIHwgc3RyaW5nW10pOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEkxOE5leHRMb2FkUmVzdWx0PihcclxuICAgICAgKFxyXG4gICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgICApID0+IHtcclxuICAgICAgICAgIGkxOG5leHQubG9hZE5hbWVzcGFjZXMuY2FsbChpMThuZXh0LCBuYW1lc3BhY2VzLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9hZExhbmd1YWdlcyhsbmdzOiBzdHJpbmcgfCBzdHJpbmdbXSwgY2FsbGJhY2s6IEZ1bmN0aW9uKSB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+KFxyXG4gICAgICAoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICAgICkgPT4ge1xyXG4gICAgICAgICAgaTE4bmV4dC5sb2FkTGFuZ3VhZ2VzLmNhbGwoaTE4bmV4dCwgbG5ncywgdGhpcy5lcnJvckhhbmRsaW5nU3RyYXRlZ3kuaGFuZGxlKHJlc29sdmUsIHJlamVjdCkpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIHJlc291cmNlIGhhbmRsaW5nXHJcblxyXG4gIHB1YmxpYyByZWxvYWRSZXNvdXJjZXMoLi4ucGFyYW1zKSB7XHJcbiAgICBpMThuZXh0LnJlbG9hZFJlc291cmNlcy5hcHBseShpMThuZXh0LCBwYXJhbXMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFJlc291cmNlKGxuZywgbnMsIGtleSwgb3B0aW9ucykge1xyXG4gICAgICByZXR1cm4gaTE4bmV4dC5nZXRSZXNvdXJjZS5jYWxsKGkxOG5leHQsIGxuZywgbnMsIGtleSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUmVzb3VyY2UobG5nLCBucywga2V5LCB2YWx1ZSwgb3B0aW9ucykge1xyXG4gICAgICBpMThuZXh0LmFkZFJlc291cmNlLmNhbGwoaTE4bmV4dCwgbG5nLCBucywga2V5LCB2YWx1ZSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUmVzb3VyY2VzKGxuZywgbnMsIHJlc291cmNlcykge1xyXG4gICAgICBpMThuZXh0LmFkZFJlc291cmNlcy5jYWxsKGkxOG5leHQsIGxuZywgbnMsIHJlc291cmNlcyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUmVzb3VyY2VCdW5kbGUobG5nLCBucywgcmVzb3VyY2VzLCBkZWVwLCBvdmVyd3JpdGUpIHtcclxuICAgICAgaTE4bmV4dC5hZGRSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMsIHJlc291cmNlcywgZGVlcCwgb3ZlcndyaXRlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYXNSZXNvdXJjZUJ1bmRsZShsbmcsIG5zKSB7XHJcbiAgICAgIHJldHVybiBpMThuZXh0Lmhhc1Jlc291cmNlQnVuZGxlLmNhbGwoaTE4bmV4dCwgbG5nLCBucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UmVzb3VyY2VCdW5kbGUobG5nLCBucykge1xyXG4gICAgICByZXR1cm4gaTE4bmV4dC5nZXRSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlbW92ZVJlc291cmNlQnVuZGxlKGxuZywgbnMpIHtcclxuICAgICAgaTE4bmV4dC5yZW1vdmVSZXNvdXJjZUJ1bmRsZS5jYWxsKGkxOG5leHQsIGxuZywgbnMpO1xyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaWJlRXZlbnRzKCkge1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdpbml0aWFsaXplZCcsIG9wdGlvbnMgPT4ge1xyXG4gICAgICB0aGlzLmxhbmd1YWdlID0gaTE4bmV4dC5sYW5ndWFnZTtcclxuICAgICAgdGhpcy5sYW5ndWFnZXMgPSBpMThuZXh0Lmxhbmd1YWdlcztcclxuICAgICAgdGhpcy5ldmVudHMuaW5pdGlhbGl6ZWQubmV4dChvcHRpb25zKTtcclxuICAgIH0pO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdsb2FkZWQnLCBsb2FkZWQgPT4gdGhpcy5ldmVudHMubG9hZGVkLm5leHQobG9hZGVkKSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2ZhaWxlZExvYWRpbmcnLCAobG5nLCBucywgbXNnKSA9PiB0aGlzLmV2ZW50cy5mYWlsZWRMb2FkaW5nLm5leHQoe2xuZywgbnMsIG1zZ30pKTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnbGFuZ3VhZ2VDaGFuZ2VkJywgbG5nID0+IHtcclxuICAgICAgdGhpcy5sYW5ndWFnZSA9IGkxOG5leHQubGFuZ3VhZ2U7XHJcbiAgICAgIHRoaXMubGFuZ3VhZ2VzID0gaTE4bmV4dC5sYW5ndWFnZXM7XHJcbiAgICAgIHRoaXMuZXZlbnRzLmxhbmd1YWdlQ2hhbmdlZC5uZXh0KGxuZyk7XHJcbiAgICB9KTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnbWlzc2luZ0tleScsIChsbmdzLCBuYW1lc3BhY2UsIGtleSwgcmVzKSA9PiB0aGlzLmV2ZW50cy5taXNzaW5nS2V5Lm5leHQoe2xuZ3MsIG5hbWVzcGFjZSwga2V5LCByZXN9KSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2FkZGVkJywgKGxuZywgbnMpID0+IHRoaXMuZXZlbnRzLmFkZGVkLm5leHQoe2xuZywgbnN9KSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ3JlbW92ZWQnLCAobG5nLCBucykgPT4gdGhpcy5ldmVudHMucmVtb3ZlZC5uZXh0KHtsbmcsIG5zfSkpO1xyXG5cclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSTE4TmV4dFNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJJMThOZXh0U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxLQUFLLElBQUksTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztJQU0xQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU87QUFFNUI7SUFXRSx3QkFBNkQscUJBQW1EO1FBQW5ELDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFSaEgsV0FBTSxHQUF1QixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2pELGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsY0FBUyxHQUFhLEVBQUUsQ0FBQztJQU0wRixDQUFDO0lBSnBILHNCQUFJLG1DQUFPOzs7O1FBQVg7WUFDRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDekIsQ0FBQzs7O09BQUE7Ozs7Ozs7SUFJTSw0QkFBRzs7Ozs7O0lBQVYsVUFBVyxNQUFXO1FBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNsQyxPQUFPLG1CQUFBLElBQUksRUFBQSxDQUFDO0lBQ2QsQ0FBQzs7Ozs7SUFFTSw2QkFBSTs7OztJQUFYLFVBQVksT0FBYTtRQUF6QixpQkFjQztRQWJDLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV2QixPQUFPLElBQUksT0FBTzs7Ozs7UUFDZCxVQUNFLE9BQXVELEVBQ3ZELE1BQTRCO1lBRTVCLE9BQU8sQ0FBQyxJQUFJLENB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QyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFDLEdBQUcsS0FBQSxFQUFFLEVBQUUsSUFBQSxFQUFDLENBQUMsRUFBbkMsQ0FBbUMsRUFBQyxDQUFDO0lBRXhGLENBQUM7O2dCQWpKRixVQUFVOzs7O2dEQVdJLE1BQU0sU0FBQywrQkFBK0I7O0lBdUlyRCxxQkFBQztDQUFBLEFBbEpELElBa0pDO1NBakpZLGNBQWM7OztJQUV6QixnQ0FBaUQ7O0lBQ2pELGtDQUFzQjs7SUFDdEIsbUNBQXlCOzs7OztJQU1iLCtDQUFvRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBpMThuIGZyb20gJ2kxOG5leHQnO1xyXG5cclxuaW1wb3J0IHsgSTE4TkVYVF9FUlJPUl9IQU5ETElOR19TVFJBVEVHWSB9IGZyb20gJy4vSTE4TkVYVF9UT0tFTlMnO1xyXG5pbXBvcnQgeyBJMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWd5IH0gZnJvbSAnLi9JMThOZXh0RXJyb3JIYW5kbGluZ1N0cmF0ZWdpZXMnO1xyXG5pbXBvcnQgeyBJMThOZXh0RXZlbnRzIH0gZnJvbSAnLi9JMThOZXh0RXZlbnRzJztcclxuaW1wb3J0IHsgSTE4TmV4dExvYWRSZXN1bHQgfSBmcm9tICcuL0kxOE5leHRMb2FkUmVzdWx0JztcclxuaW1wb3J0IHsgSVRyYW5zbGF0aW9uRXZlbnRzIH0gZnJvbSAnLi9JVHJhbnNsYXRpb25FdmVudHMnO1xyXG5pbXBvcnQgeyBJVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9JVHJhbnNsYXRpb25TZXJ2aWNlJztcclxuXHJcblxyXG5jb25zdCBpMThuZXh0ID0gaTE4bi5kZWZhdWx0O1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgSTE4TmV4dFNlcnZpY2UgaW1wbGVtZW50cyBJVHJhbnNsYXRpb25TZXJ2aWNlIHtcclxuXHJcbiAgZXZlbnRzOiBJVHJhbnNsYXRpb25FdmVudHMgPSBuZXcgSTE4TmV4dEV2ZW50cygpO1xyXG4gIGxhbmd1YWdlOiBzdHJpbmcgPSAnJztcclxuICBsYW5ndWFnZXM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gIGdldCBvcHRpb25zKCk6IGFueSB7XHJcbiAgICByZXR1cm4gaTE4bmV4dC5vcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoQEluamVjdChJMThORVhUX0VSUk9SX0hBTkRMSU5HX1NUUkFURUdZKSBwcml2YXRlIGVycm9ySGFuZGxpbmdTdHJhdGVneTogSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVneSkge31cclxuXHJcbiAgcHVibGljIHVzZShwbHVnaW46IGFueSkge1xyXG4gICAgaTE4bmV4dC51c2UuY2FsbChpMThuZXh0LCBwbHVnaW4pO1xyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5pdChvcHRpb25zPzogYW55KTogUHJvbWlzZTxhbnk+IHtcclxuICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG5cclxuICAgIHRoaXMuc3Vic2NyaWJlRXZlbnRzKCk7XHJcblxyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEkxOE5leHRMb2FkUmVzdWx0PihcclxuICAgICAgICAoXHJcbiAgICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgICAgICkgPT4ge1xyXG4gICAgICAgICAgaTE4bmV4dC5pbml0LmNhbGwoaTE4bmV4dCwgT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucyksIHRoaXMuZXJyb3JIYW5kbGluZ1N0cmF0ZWd5LmhhbmRsZShyZXNvbHZlLCByZWplY3QpKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIHQoa2V5OiBzdHJpbmcgfCBzdHJpbmdbXSwgb3B0aW9ucz86IGFueSk6IHN0cmluZyB7XHJcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuICAgIHJldHVybiBpMThuZXh0LnQuY2FsbChpMThuZXh0LCA8YW55PmtleSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybWF0KHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nLCBsbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gaTE4bmV4dC5mb3JtYXQuY2FsbChpMThuZXh0LCB2YWx1ZSwgZm9ybWF0LCBsbmcpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGV4aXN0cyhrZXksIG9wdGlvbnMpIHtcclxuICAgIHJldHVybiBpMThuZXh0LmV4aXN0cy5jYWxsKGkxOG5leHQsIGtleSwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0Rml4ZWRUKGxuZywgbnMpIHtcclxuICAgIHJldHVybiBpMThuZXh0LmdldEZpeGVkVC5jYWxsKGkxOG5leHQsIGxuZywgbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERlZmF1bHROYW1lc3BhY2UobnM6IHN0cmluZykge1xyXG4gICAgaTE4bmV4dC5zZXREZWZhdWx0TmFtZXNwYWNlLmNhbGwoaTE4bmV4dCwgbnMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRpcihsbmc6IHN0cmluZyA9IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gaTE4bmV4dC5kaXIuY2FsbChpMThuZXh0LCBsbmcpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZUxhbmd1YWdlKGxuZzogc3RyaW5nKTogUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEkxOE5leHRMb2FkUmVzdWx0PihcclxuICAgICAgKFxyXG4gICAgICAgIHJlc29sdmU6ICh0aGVuYWJsZU9yUmVzdWx0PzogSTE4TmV4dExvYWRSZXN1bHQpID0+IHZvaWQsXHJcbiAgICAgICAgcmVqZWN0OiAoZXJyb3I6IGFueSkgPT4gdm9pZFxyXG4gICAgICApID0+IHtcclxuICAgICAgICAgIGkxOG5leHQuY2hhbmdlTGFuZ3VhZ2UuY2FsbChpMThuZXh0LCBsbmcsIHRoaXMuZXJyb3JIYW5kbGluZ1N0cmF0ZWd5LmhhbmRsZShyZXNvbHZlLCByZWplY3QpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2FkTmFtZXNwYWNlcyhuYW1lc3BhY2VzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8STE4TmV4dExvYWRSZXN1bHQ+KFxyXG4gICAgICAoXHJcbiAgICAgICAgcmVzb2x2ZTogKHRoZW5hYmxlT3JSZXN1bHQ/OiBJMThOZXh0TG9hZFJlc3VsdCkgPT4gdm9pZCxcclxuICAgICAgICByZWplY3Q6IChlcnJvcjogYW55KSA9PiB2b2lkXHJcbiAgICAgICkgPT4ge1xyXG4gICAgICAgICAgaTE4bmV4dC5sb2FkTmFtZXNwYWNlcy5jYWxsKGkxOG5leHQsIG5hbWVzcGFjZXMsIHRoaXMuZXJyb3JIYW5kbGluZ1N0cmF0ZWd5LmhhbmRsZShyZXNvbHZlLCByZWplY3QpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2FkTGFuZ3VhZ2VzKGxuZ3M6IHN0cmluZyB8IHN0cmluZ1tdLCBjYWxsYmFjazogRnVuY3Rpb24pIHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxJMThOZXh0TG9hZFJlc3VsdD4oXHJcbiAgICAgIChcclxuICAgICAgICByZXNvbHZlOiAodGhlbmFibGVPclJlc3VsdD86IEkxOE5leHRMb2FkUmVzdWx0KSA9PiB2b2lkLFxyXG4gICAgICAgIHJlamVjdDogKGVycm9yOiBhbnkpID0+IHZvaWRcclxuICAgICAgKSA9PiB7XHJcbiAgICAgICAgICBpMThuZXh0LmxvYWRMYW5ndWFnZXMuY2FsbChpMThuZXh0LCBsbmdzLCB0aGlzLmVycm9ySGFuZGxpbmdTdHJhdGVneS5oYW5kbGUocmVzb2x2ZSwgcmVqZWN0KSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvLyNyZWdpb24gcmVzb3VyY2UgaGFuZGxpbmdcclxuXHJcbiAgcHVibGljIHJlbG9hZFJlc291cmNlcyguLi5wYXJhbXMpIHtcclxuICAgIGkxOG5leHQucmVsb2FkUmVzb3VyY2VzLmFwcGx5KGkxOG5leHQsIHBhcmFtcyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UmVzb3VyY2UobG5nLCBucywga2V5LCBvcHRpb25zKSB7XHJcbiAgICAgIHJldHVybiBpMThuZXh0LmdldFJlc291cmNlLmNhbGwoaTE4bmV4dCwgbG5nLCBucywga2V5LCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRSZXNvdXJjZShsbmcsIG5zLCBrZXksIHZhbHVlLCBvcHRpb25zKSB7XHJcbiAgICAgIGkxOG5leHQuYWRkUmVzb3VyY2UuY2FsbChpMThuZXh0LCBsbmcsIG5zLCBrZXksIHZhbHVlLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRSZXNvdXJjZXMobG5nLCBucywgcmVzb3VyY2VzKSB7XHJcbiAgICAgIGkxOG5leHQuYWRkUmVzb3VyY2VzLmNhbGwoaTE4bmV4dCwgbG5nLCBucywgcmVzb3VyY2VzKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRSZXNvdXJjZUJ1bmRsZShsbmcsIG5zLCByZXNvdXJjZXMsIGRlZXAsIG92ZXJ3cml0ZSkge1xyXG4gICAgICBpMThuZXh0LmFkZFJlc291cmNlQnVuZGxlLmNhbGwoaTE4bmV4dCwgbG5nLCBucywgcmVzb3VyY2VzLCBkZWVwLCBvdmVyd3JpdGUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhc1Jlc291cmNlQnVuZGxlKGxuZywgbnMpIHtcclxuICAgICAgcmV0dXJuIGkxOG5leHQuaGFzUmVzb3VyY2VCdW5kbGUuY2FsbChpMThuZXh0LCBsbmcsIG5zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRSZXNvdXJjZUJ1bmRsZShsbmcsIG5zKSB7XHJcbiAgICAgIHJldHVybiBpMThuZXh0LmdldFJlc291cmNlQnVuZGxlLmNhbGwoaTE4bmV4dCwgbG5nLCBucyk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVtb3ZlUmVzb3VyY2VCdW5kbGUobG5nLCBucykge1xyXG4gICAgICBpMThuZXh0LnJlbW92ZVJlc291cmNlQnVuZGxlLmNhbGwoaTE4bmV4dCwgbG5nLCBucyk7XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgcHJpdmF0ZSBzdWJzY3JpYmVFdmVudHMoKSB7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2luaXRpYWxpemVkJywgb3B0aW9ucyA9PiB7XHJcbiAgICAgIHRoaXMubGFuZ3VhZ2UgPSBpMThuZXh0Lmxhbmd1YWdlO1xyXG4gICAgICB0aGlzLmxhbmd1YWdlcyA9IGkxOG5leHQubGFuZ3VhZ2VzO1xyXG4gICAgICB0aGlzLmV2ZW50cy5pbml0aWFsaXplZC5uZXh0KG9wdGlvbnMpO1xyXG4gICAgfSk7XHJcbiAgICBpMThuZXh0Lm9uLmNhbGwoaTE4bmV4dCwgJ2xvYWRlZCcsIGxvYWRlZCA9PiB0aGlzLmV2ZW50cy5sb2FkZWQubmV4dChsb2FkZWQpKTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnZmFpbGVkTG9hZGluZycsIChsbmcsIG5zLCBtc2cpID0+IHRoaXMuZXZlbnRzLmZhaWxlZExvYWRpbmcubmV4dCh7bG5nLCBucywgbXNnfSkpO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdsYW5ndWFnZUNoYW5nZWQnLCBsbmcgPT4ge1xyXG4gICAgICB0aGlzLmxhbmd1YWdlID0gaTE4bmV4dC5sYW5ndWFnZTtcclxuICAgICAgdGhpcy5sYW5ndWFnZXMgPSBpMThuZXh0Lmxhbmd1YWdlcztcclxuICAgICAgdGhpcy5ldmVudHMubGFuZ3VhZ2VDaGFuZ2VkLm5leHQobG5nKTtcclxuICAgIH0pO1xyXG4gICAgaTE4bmV4dC5vbi5jYWxsKGkxOG5leHQsICdtaXNzaW5nS2V5JywgKGxuZ3MsIG5hbWVzcGFjZSwga2V5LCByZXMpID0+IHRoaXMuZXZlbnRzLm1pc3NpbmdLZXkubmV4dCh7bG5ncywgbmFtZXNwYWNlLCBrZXksIHJlc30pKTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAnYWRkZWQnLCAobG5nLCBucykgPT4gdGhpcy5ldmVudHMuYWRkZWQubmV4dCh7bG5nLCBuc30pKTtcclxuICAgIGkxOG5leHQub24uY2FsbChpMThuZXh0LCAncmVtb3ZlZCcsIChsbmcsIG5zKSA9PiB0aGlzLmV2ZW50cy5yZW1vdmVkLm5leHQoe2xuZywgbnN9KSk7XHJcblxyXG4gIH1cclxufVxyXG4iXX0=
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ import * as tslib_1 from "tslib";

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -33,3 +33,7 @@ import { NgModule } from '@angular/core';

namespaces = activatedRouteSnapshot.data && activatedRouteSnapshot.data.i18nextNamespaces || namespaces;
return this.loadNamespaces(namespaces.filter(function (n) { return n; }));
return this.loadNamespaces(namespaces.filter((/**
* @param {?} n
* @return {?}
*/
function (n) { return n; })));
}

@@ -163,2 +167,2 @@ /**

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUF1QixRQUFRLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEosT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5QywrSEFBYyxrQkFBa0IsQ0FBQztBQUNqQyw0QkFBYyxlQUFlLENBQUM7QUFDOUIsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsa0NBQWMscUJBQXFCLENBQUM7QUFDcEMsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsNkJBQWMsZ0JBQWdCLENBQUM7QUFDL0IseUVBQWMsa0NBQWtDLENBQUM7QUFDakQsZUFBYyx1QkFBdUIsQ0FBQztBQUN0QyxlQUFjLHFCQUFxQixDQUFDO0FBRXBDLGVBQWMsdUJBQXVCLENBQUM7QUFDdEMsZUFBYyxzQkFBc0IsQ0FBQzs7Ozs7O0FBR3JDLE1BQU0sVUFBVSxRQUFRLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1COztRQUM5RCxVQUFVLEdBQWEsRUFBRTtJQUM3QixVQUFVLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxp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Q0FBQztRQUNmLEtBQUssTUFBTSxDQUFDO1FBQ1o7WUFDRSxPQUFPLEtBQUssQ0FBQztLQUNoQjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgRmFjdG9yeVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5pbXBvcnQgeyBJMThORVhUX0VSUk9SX0hBTkRMSU5HX1NUUkFURUdZLCBJMThORVhUX05BTUVTUEFDRSwgSTE4TkVYVF9TQ09QRSwgSTE4TkVYVF9TRVJWSUNFLCBJMThORVhUX05BTUVTUEFDRV9SRVNPTFZFUiB9IGZyb20gJy4vSTE4TkVYVF9UT0tFTlMnO1xyXG5pbXBvcnQgeyBJMThOZXh0Q2FwUGlwZSB9IGZyb20gJy4vSTE4TmV4dENhcFBpcGUnO1xyXG5pbXBvcnQgeyBOYXRpdmVFcnJvckhhbmRsaW5nU3RyYXRlZ3kgfSBmcm9tICcuL0kxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ2llcyc7XHJcbmltcG9ydCB7IEkxOE5leHRGb3JtYXRQaXBlIH0gZnJvbSAnLi9JMThOZXh0Rm9ybWF0UGlwZSc7XHJcbmltcG9ydCB7IEkxOE5leHRNb2R1bGVQYXJhbXMgfSBmcm9tICcuL0kxOE5leHRNb2R1bGVQYXJhbXMnO1xyXG5pbXBvcnQgeyBJMThOZXh0UGlwZSB9IGZyb20gJy4vSTE4TmV4dFBpcGUnO1xyXG5pbXBvcnQgeyBJMThOZXh0U2VydmljZSB9IGZyb20gJy4vSTE4TmV4dFNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJMThOZXh0VGl0bGUgfSBmcm9tICcuL0kxOE5leHRUaXRsZSc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9JMThORVhUX1RPS0VOUyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dFBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRDYXBQaXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0Rm9ybWF0UGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dFNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRUaXRsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0TW9kdWxlUGFyYW1zJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0TG9hZFJlc3VsdCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL0lUcmFuc2xhdGlvbkV2ZW50cyc7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVyKGFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPHZvaWQ+IHtcclxuICBsZXQgbmFtZXNwYWNlczogc3RyaW5nW10gPSBbXTtcclxuICBuYW1lc3BhY2VzID0gYWN0aXZhdGVkUm91dGVTbmFwc2hvdC5kYXRhICYmIGFjdGl2YXRlZFJvdXRlU25hcHNob3QuZGF0YS5pMThuZXh0TmFtZXNwYWNlcyB8fCBuYW1lc3BhY2VzO1xyXG4gIHJldHVybiB0aGlzLmxvYWROYW1lc3BhY2VzKG5hbWVzcGFjZXMuZmlsdGVyKG4gPT4gbikpO1xyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBpMThuZXh0TmFtZXNwYWNlUmVzb2x2ZXJGYWN0b3J5KGkxOG5leHQ6IElUcmFuc2xhdGlvblNlcnZpY2UpIHtcclxuICByZXR1cm4gcmVzb2x2ZXIuYmluZChpMThuZXh0KTtcclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogSTE4TkVYVF9OQU1FU1BBQ0UsXHJcbiAgICAgIHVzZVZhbHVlOiAnJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogSTE4TkVYVF9TQ09QRSxcclxuICAgICAgdXNlVmFsdWU6ICcnXHJcbiAgICB9LFxyXG4gICAgSTE4TmV4dFBpcGUsXHJcbiAgICBJMThOZXh0Q2FwUGlwZSxcclxuICAgIEkxOE5leHRGb3JtYXRQaXBlLFxyXG4gICAgSTE4TmV4dFRpdGxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIEkxOE5leHRQaXBlLFxyXG4gICAgSTE4TmV4dENhcFBpcGUsXHJcbiAgICBJMThOZXh0Rm9ybWF0UGlwZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgSTE4TmV4dFBpcGUsXHJcbiAgICBJMThOZXh0Q2FwUGlwZSxcclxuICAgIEkxOE5leHRGb3JtYXRQaXBlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSTE4TmV4dE1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QocGFyYW1zOiBJMThOZXh0TW9kdWxlUGFyYW1zID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBJMThOZXh0TW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBJMThORVhUX1NFUlZJQ0UsXHJcbiAgICAgICAgICB1c2VDbGFzczogSTE4TmV4dFNlcnZpY2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEkxOE5FWFRfRVJST1JfSEFORExJTkdfU1RSQVRFR1ksXHJcbiAgICAgICAgICB1c2VDbGFzczogcGFyYW1zLmVycm9ySGFuZGxpbmdTdHJhdGVneSB8fCBOYXRpdmVFcnJvckhhbmRsaW5nU3RyYXRlZ3lcclxuICAgICAgICB9LFxyXG4gICAgICAgIEkxOE5leHRTZXJ2aWNlLFxyXG4gICAgICAgIEkxOE5leHRQaXBlLFxyXG4gICAgICAgIEkxOE5leHRDYXBQaXBlLFxyXG4gICAgICAgIEkxOE5leHRGb3JtYXRQaXBlLFxyXG4gICAgICAgIEkxOE5leHRUaXRsZSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBJMThORVhUX05BTUVTUEFDRV9SRVNPTFZFUixcclxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGkxOG5leHROYW1lc3BhY2VSZXNvbHZlckZhY3RvcnksXHJcbiAgICAgICAgICBkZXBzOiBbSTE4TkVYVF9TRVJWSUNFXVxyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBpbnRlcnBvbGF0aW9uRm9ybWF0KGN1c3RvbUZvcm1hdDogRnVuY3Rpb24gPSBudWxsKTogRnVuY3Rpb24ge1xyXG4gICAgZnVuY3Rpb24gZm9ybWF0RGVsZWdhdGUodmFsdWU6IGFueSwgZm9ybWF0OiBzdHJpbmcsIGxuZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgbGV0IGZvcm1hdGVkVmFsdWU6IHN0cmluZyA9IGRlZmF1bHRJbnRlcnBvbGF0aW9uRm9ybWF0KHZhbHVlLCBmb3JtYXQsIGxuZyk7XHJcbiAgICAgIGlmIChjdXN0b21Gb3JtYXQgPT09IG51bGwpXHJcbiAgICAgICAgcmV0dXJuIGZvcm1hdGVkVmFsdWU7XHJcbiAgICAgIHJldHVybiBjdXN0b21Gb3JtYXQoZm9ybWF0ZWRWYWx1ZSwgZm9ybWF0LCBsbmcpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZvcm1hdERlbGVnYXRlO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRJbnRlcnBvbGF0aW9uRm9ybWF0KHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nLCBsbmc6IHN0cmluZyA9IHVuZGVmaW5lZCk6IHN0cmluZyB7XHJcbiAgaWYgKCF2YWx1ZSlcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICBzd2l0Y2ggKGZvcm1hdCkge1xyXG4gICAgY2FzZSAndXBwZXInOlxyXG4gICAgY2FzZSAndXBwZXJjYXNlJzpcclxuICAgICAgcmV0dXJuIHZhbHVlLnRvVXBwZXJDYXNlKCk7XHJcbiAgICBjYXNlICdsb3dlcic6XHJcbiAgICBjYXNlICdsb3dlcmNhc2UnOlxyXG4gICAgICByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKTtcclxuICAgIGNhc2UgJ2NhcCc6XHJcbiAgICBjYXNlICdjYXBpdGFsaXplJzpcclxuICAgICAgcmV0dXJuIHZhbHVlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdmFsdWUuc2xpY2UoMSk7XHJcbiAgICBjYXNlIG51bGw6XHJcbiAgICBjYXNlIHVuZGVmaW5lZDpcclxuICAgIGNhc2UgJ25vbmUnOlxyXG4gICAgZGVmYXVsdDpcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWkxOG5leHQvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUF1QixRQUFRLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEosT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5QywrSEFBYyxrQkFBa0IsQ0FBQztBQUNqQyw0QkFBYyxlQUFlLENBQUM7QUFDOUIsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsa0NBQWMscUJBQXFCLENBQUM7QUFDcEMsK0JBQWMsa0JBQWtCLENBQUM7QUFDakMsNkJBQWMsZ0JBQWdCLENBQUM7QUFDL0IseUVBQWMsa0NBQWtDLENBQUM7QUFDakQsZUFBYyx1QkFBdUIsQ0FBQztBQUN0QyxlQUFjLHFCQUFxQixDQUFDO0FBRXBDLGVBQWMsdUJBQXVCLENBQUM7QUFDdEMsZUFBYyxzQkFBc0IsQ0FBQzs7Ozs7O0FBR3JDLE1BQU0sVUFBVSxRQUFRLENBQUMsc0JBQXNCLEVBQUUsbUJBQW1COztRQUM5RCxVQUFVLEdBQWEsRUFBRTtJQUM3QixVQUFVLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxp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QVMsQ0FBQztRQUNmLEtBQUssTUFBTSxDQUFDO1FBQ1o7WUFDRSxPQUFPLEtBQUssQ0FBQztLQUNoQjtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgRmFjdG9yeVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5pbXBvcnQgeyBJMThORVhUX0VSUk9SX0hBTkRMSU5HX1NUUkFURUdZLCBJMThORVhUX05BTUVTUEFDRSwgSTE4TkVYVF9TQ09QRSwgSTE4TkVYVF9TRVJWSUNFLCBJMThORVhUX05BTUVTUEFDRV9SRVNPTFZFUiB9IGZyb20gJy4vSTE4TkVYVF9UT0tFTlMnO1xyXG5pbXBvcnQgeyBJMThOZXh0Q2FwUGlwZSB9IGZyb20gJy4vSTE4TmV4dENhcFBpcGUnO1xyXG5pbXBvcnQgeyBOYXRpdmVFcnJvckhhbmRsaW5nU3RyYXRlZ3kgfSBmcm9tICcuL0kxOE5leHRFcnJvckhhbmRsaW5nU3RyYXRlZ2llcyc7XHJcbmltcG9ydCB7IEkxOE5leHRGb3JtYXRQaXBlIH0gZnJvbSAnLi9JMThOZXh0Rm9ybWF0UGlwZSc7XHJcbmltcG9ydCB7IEkxOE5leHRNb2R1bGVQYXJhbXMgfSBmcm9tICcuL0kxOE5leHRNb2R1bGVQYXJhbXMnO1xyXG5pbXBvcnQgeyBJMThOZXh0UGlwZSB9IGZyb20gJy4vSTE4TmV4dFBpcGUnO1xyXG5pbXBvcnQgeyBJMThOZXh0U2VydmljZSB9IGZyb20gJy4vSTE4TmV4dFNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJMThOZXh0VGl0bGUgfSBmcm9tICcuL0kxOE5leHRUaXRsZSc7XHJcbmltcG9ydCB7IElUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9JMThORVhUX1RPS0VOUyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dFBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRDYXBQaXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0Rm9ybWF0UGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dFNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL0kxOE5leHRUaXRsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vSTE4TmV4dEVycm9ySGFuZGxpbmdTdHJhdGVnaWVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0TW9kdWxlUGFyYW1zJztcclxuZXhwb3J0ICogZnJvbSAnLi9JMThOZXh0TG9hZFJlc3VsdCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL0lUcmFuc2xhdGlvblNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL0lUcmFuc2xhdGlvbkV2ZW50cyc7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVyKGFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHJvdXRlclN0YXRlU25hcHNob3QpOiBQcm9taXNlPHZvaWQ+IHtcclxuICBsZXQgbmFtZXNwYWNlczogc3RyaW5nW10gPSBbXTtcclxuICBuYW1lc3BhY2VzID0gYWN0aXZhdGVkUm91dGVTbmFwc2hvdC5kYXRhICYmIGFjdGl2YXRlZFJvdXRlU25hcHNob3QuZGF0YS5pMThuZXh0TmFtZXNwYWNlcyB8fCBuYW1lc3BhY2VzO1xyXG4gIHJldHVybiB0aGlzLmxvYWROYW1lc3BhY2VzKG5hbWVzcGFjZXMuZmlsdGVyKG4gPT4gbikpO1xyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBpMThuZXh0TmFtZXNwYWNlUmVzb2x2ZXJGYWN0b3J5KGkxOG5leHQ6IElUcmFuc2xhdGlvblNlcnZpY2UpIHtcclxuICByZXR1cm4gcmVzb2x2ZXIuYmluZChpMThuZXh0KTtcclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogSTE4TkVYVF9OQU1FU1BBQ0UsXHJcbiAgICAgIHVzZVZhbHVlOiAnJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogSTE4TkVYVF9TQ09QRSxcclxuICAgICAgdXNlVmFsdWU6ICcnXHJcbiAgICB9LFxyXG4gICAgSTE4TmV4dFBpcGUsXHJcbiAgICBJMThOZXh0Q2FwUGlwZSxcclxuICAgIEkxOE5leHRGb3JtYXRQaXBlLFxyXG4gICAgSTE4TmV4dFRpdGxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIEkxOE5leHRQaXBlLFxyXG4gICAgSTE4TmV4dENhcFBpcGUsXHJcbiAgICBJMThOZXh0Rm9ybWF0UGlwZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgSTE4TmV4dFBpcGUsXHJcbiAgICBJMThOZXh0Q2FwUGlwZSxcclxuICAgIEkxOE5leHRGb3JtYXRQaXBlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSTE4TmV4dE1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QocGFyYW1zOiBJMThOZXh0TW9kdWxlUGFyYW1zID0ge30pOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBJMThOZXh0TW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBJMThORVhUX1NFUlZJQ0UsXHJcbiAgICAgICAgICB1c2VDbGFzczogSTE4TmV4dFNlcnZpY2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEkxOE5FWFRfRVJST1JfSEFORExJTkdfU1RSQVRFR1ksXHJcbiAgICAgICAgICB1c2VDbGFzczogcGFyYW1zLmVycm9ySGFuZGxpbmdTdHJhdGVneSB8fCBOYXRpdmVFcnJvckhhbmRsaW5nU3RyYXRlZ3lcclxuICAgICAgICB9LFxyXG4gICAgICAgIEkxOE5leHRTZXJ2aWNlLFxyXG4gICAgICAgIEkxOE5leHRQaXBlLFxyXG4gICAgICAgIEkxOE5leHRDYXBQaXBlLFxyXG4gICAgICAgIEkxOE5leHRGb3JtYXRQaXBlLFxyXG4gICAgICAgIEkxOE5leHRUaXRsZSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBJMThORVhUX05BTUVTUEFDRV9SRVNPTFZFUixcclxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGkxOG5leHROYW1lc3BhY2VSZXNvbHZlckZhY3RvcnksXHJcbiAgICAgICAgICBkZXBzOiBbSTE4TkVYVF9TRVJWSUNFXVxyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBpbnRlcnBvbGF0aW9uRm9ybWF0KGN1c3RvbUZvcm1hdDogRnVuY3Rpb24gPSBudWxsKTogRnVuY3Rpb24ge1xyXG4gICAgZnVuY3Rpb24gZm9ybWF0RGVsZWdhdGUodmFsdWU6IGFueSwgZm9ybWF0OiBzdHJpbmcsIGxuZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgbGV0IGZvcm1hdGVkVmFsdWU6IHN0cmluZyA9IGRlZmF1bHRJbnRlcnBvbGF0aW9uRm9ybWF0KHZhbHVlLCBmb3JtYXQsIGxuZyk7XHJcbiAgICAgIGlmIChjdXN0b21Gb3JtYXQgPT09IG51bGwpXHJcbiAgICAgICAgcmV0dXJuIGZvcm1hdGVkVmFsdWU7XHJcbiAgICAgIHJldHVybiBjdXN0b21Gb3JtYXQoZm9ybWF0ZWRWYWx1ZSwgZm9ybWF0LCBsbmcpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZvcm1hdERlbGVnYXRlO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRJbnRlcnBvbGF0aW9uRm9ybWF0KHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nLCBsbmc6IHN0cmluZyA9IHVuZGVmaW5lZCk6IHN0cmluZyB7XHJcbiAgaWYgKCF2YWx1ZSlcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICBzd2l0Y2ggKGZvcm1hdCkge1xyXG4gICAgY2FzZSAndXBwZXInOlxyXG4gICAgY2FzZSAndXBwZXJjYXNlJzpcclxuICAgICAgcmV0dXJuIHZhbHVlLnRvVXBwZXJDYXNlKCk7XHJcbiAgICBjYXNlICdsb3dlcic6XHJcbiAgICBjYXNlICdsb3dlcmNhc2UnOlxyXG4gICAgICByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2UoKTtcclxuICAgIGNhc2UgJ2NhcCc6XHJcbiAgICBjYXNlICdjYXBpdGFsaXplJzpcclxuICAgICAgcmV0dXJuIHZhbHVlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdmFsdWUuc2xpY2UoMSk7XHJcbiAgICBjYXNlIG51bGw6XHJcbiAgICBjYXNlIHVuZGVmaW5lZDpcclxuICAgIGNhc2UgJ25vbmUnOlxyXG4gICAgZGVmYXVsdDpcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -5,0 +5,0 @@ /**

@@ -9,3 +9,3 @@ import i18n__default from 'i18next';

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -25,3 +25,3 @@ /** @type {?} */

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -89,3 +89,7 @@ class I18NextPipe {

if (!this.keyContainsNsSeparator(k, nsSeparator)) { // Do not set scope, if key contains a namespace
keysWithScope.push(...scope.map(sc => this.joinStrings(keySeparator, sc, k)));
keysWithScope.push(...scope.map((/**
* @param {?} sc
* @return {?}
*/
sc => this.joinStrings(keySeparator, sc, k))));
}

@@ -116,3 +120,7 @@ keysWithScope.push(k);

if (!this.keyContainsNsSeparator(k, nsSeparator)) { // Do not set namespace, if key contains a namespace
keysWithNamespace.push(...ns.map(n => this.joinStrings(nsSeparator, n, k)));
keysWithNamespace.push(...ns.map((/**
* @param {?} n
* @return {?}
*/
n => this.joinStrings(nsSeparator, n, k))));
}

@@ -168,3 +176,3 @@ keysWithNamespace.push(k);

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -206,3 +214,3 @@ class I18NextCapPipe extends I18NextPipe {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -216,3 +224,8 @@ class NativeErrorHandlingStrategy {

handle(resolve, reject) {
return (err, t) => {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
(err, t) => {
/** @type {?} */

@@ -224,3 +237,3 @@ let result = {

resolve(result);
};
});
}

@@ -235,3 +248,8 @@ }

handle(resolve, reject) {
return (err, t) => {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
(err, t) => {
/** @type {?} */

@@ -247,3 +265,3 @@ let result = {

reject(err);
};
});
}

@@ -254,3 +272,3 @@ }

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -288,3 +306,3 @@ class I18NextFormatPipe {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -305,3 +323,3 @@ class I18NextEvents {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -343,5 +361,10 @@ /** @type {?} */

this.subscribeEvents();
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.init.call(i18next, Object.assign({}, options), this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -401,5 +424,10 @@ /**

changeLanguage(lng) {
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.changeLanguage.call(i18next, lng, this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -411,5 +439,10 @@ /**

loadNamespaces(namespaces) {
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.loadNamespaces.call(i18next, namespaces, this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -422,5 +455,10 @@ /**

loadLanguages(lngs, callback) {
return new Promise((resolve, reject) => {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
i18next.loadLanguages.call(i18next, lngs, this.errorHandlingStrategy.handle(resolve, reject));
});
}));
}

@@ -506,17 +544,52 @@ //#region resource handling

subscribeEvents() {
i18next.on.call(i18next, 'initialized', options => {
i18next.on.call(i18next, 'initialized', (/**
* @param {?} options
* @return {?}
*/
options => {
this.language = i18next.language;
this.languages = i18next.languages;
this.events.initialized.next(options);
});
i18next.on.call(i18next, 'loaded', loaded => this.events.loaded.next(loaded));
i18next.on.call(i18next, 'failedLoading', (lng, ns, msg) => this.events.failedLoading.next({ lng, ns, msg }));
i18next.on.call(i18next, 'languageChanged', lng => {
}));
i18next.on.call(i18next, 'loaded', (/**
* @param {?} loaded
* @return {?}
*/
loaded => this.events.loaded.next(loaded)));
i18next.on.call(i18next, 'failedLoading', (/**
* @param {?} lng
* @param {?} ns
* @param {?} msg
* @return {?}
*/
(lng, ns, msg) => this.events.failedLoading.next({ lng, ns, msg })));
i18next.on.call(i18next, 'languageChanged', (/**
* @param {?} lng
* @return {?}
*/
lng => {
this.language = i18next.language;
this.languages = i18next.languages;
this.events.languageChanged.next(lng);
});
i18next.on.call(i18next, 'missingKey', (lngs, namespace, key, res) => this.events.missingKey.next({ lngs, namespace, key, res }));
i18next.on.call(i18next, 'added', (lng, ns) => this.events.added.next({ lng, ns }));
i18next.on.call(i18next, 'removed', (lng, ns) => this.events.removed.next({ lng, ns }));
}));
i18next.on.call(i18next, 'missingKey', (/**
* @param {?} lngs
* @param {?} namespace
* @param {?} key
* @param {?} res
* @return {?}
*/
(lngs, namespace, key, res) => this.events.missingKey.next({ lngs, namespace, key, res })));
i18next.on.call(i18next, 'added', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
(lng, ns) => this.events.added.next({ lng, ns })));
i18next.on.call(i18next, 'removed', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
(lng, ns) => this.events.removed.next({ lng, ns })));
}

@@ -534,3 +607,3 @@ }

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -573,3 +646,3 @@ class I18NextTitle extends Title {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -579,3 +652,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -585,3 +658,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -591,3 +664,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -597,3 +670,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -609,3 +682,7 @@ /**

namespaces = activatedRouteSnapshot.data && activatedRouteSnapshot.data.i18nextNamespaces || namespaces;
return this.loadNamespaces(namespaces.filter(n => n));
return this.loadNamespaces(namespaces.filter((/**
* @param {?} n
* @return {?}
*/
n => n)));
}

@@ -727,3 +804,3 @@ /**

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -730,0 +807,0 @@

@@ -10,3 +10,3 @@ import i18n__default from 'i18next';

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -26,3 +26,3 @@ /** @type {?} */

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -100,3 +100,7 @@ var I18NextPipe = /** @class */ (function () {

keysWithScope.push.apply(// Do not set scope, if key contains a namespace
keysWithScope, __spread(scope.map(function (sc) { return _this.joinStrings(keySeparator, sc, k); })));
keysWithScope, __spread(scope.map((/**
* @param {?} sc
* @return {?}
*/
function (sc) { return _this.joinStrings(keySeparator, sc, k); }))));
}

@@ -140,3 +144,7 @@ keysWithScope.push(k);

keysWithNamespace.push.apply(// Do not set namespace, if key contains a namespace
keysWithNamespace, __spread(ns.map(function (n) { return _this.joinStrings(nsSeparator, n, k); })));
keysWithNamespace, __spread(ns.map((/**
* @param {?} n
* @return {?}
*/
function (n) { return _this.joinStrings(nsSeparator, n, k); }))));
}

@@ -218,3 +226,3 @@ keysWithNamespace.push(k);

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -258,3 +266,3 @@ var I18NextCapPipe = /** @class */ (function (_super) {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -275,3 +283,8 @@ var NativeErrorHandlingStrategy = /** @class */ (function () {

function (resolve, reject) {
return function (err, t) {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
function (err, t) {
/** @type {?} */

@@ -283,3 +296,3 @@ var result = {

resolve(result);
};
});
};

@@ -302,3 +315,8 @@ return NativeErrorHandlingStrategy;

function (resolve, reject) {
return function (err, t) {
return (/**
* @param {?} err
* @param {?=} t
* @return {?}
*/
function (err, t) {
/** @type {?} */

@@ -314,3 +332,3 @@ var result = {

reject(err);
};
});
};

@@ -322,3 +340,3 @@ return StrictErrorHandlingStrategy;

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -359,3 +377,3 @@ var I18NextFormatPipe = /** @class */ (function () {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -377,3 +395,3 @@ var I18NextEvents = /** @class */ (function () {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -427,5 +445,10 @@ /** @type {?} */

this.subscribeEvents();
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.init.call(i18next, Object.assign({}, options), _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -520,5 +543,10 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.changeLanguage.call(i18next, lng, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -535,5 +563,10 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.loadNamespaces.call(i18next, namespaces, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -552,5 +585,10 @@ /**

var _this = this;
return new Promise(function (resolve, reject) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
i18next.loadLanguages.call(i18next, lngs, _this.errorHandlingStrategy.handle(resolve, reject));
});
}));
};

@@ -699,17 +737,52 @@ //#region resource handling

var _this = this;
i18next.on.call(i18next, 'initialized', function (options) {
i18next.on.call(i18next, 'initialized', (/**
* @param {?} options
* @return {?}
*/
function (options) {
_this.language = i18next.language;
_this.languages = i18next.languages;
_this.events.initialized.next(options);
});
i18next.on.call(i18next, 'loaded', function (loaded) { return _this.events.loaded.next(loaded); });
i18next.on.call(i18next, 'failedLoading', function (lng, ns, msg) { return _this.events.failedLoading.next({ lng: lng, ns: ns, msg: msg }); });
i18next.on.call(i18next, 'languageChanged', function (lng) {
}));
i18next.on.call(i18next, 'loaded', (/**
* @param {?} loaded
* @return {?}
*/
function (loaded) { return _this.events.loaded.next(loaded); }));
i18next.on.call(i18next, 'failedLoading', (/**
* @param {?} lng
* @param {?} ns
* @param {?} msg
* @return {?}
*/
function (lng, ns, msg) { return _this.events.failedLoading.next({ lng: lng, ns: ns, msg: msg }); }));
i18next.on.call(i18next, 'languageChanged', (/**
* @param {?} lng
* @return {?}
*/
function (lng) {
_this.language = i18next.language;
_this.languages = i18next.languages;
_this.events.languageChanged.next(lng);
});
i18next.on.call(i18next, 'missingKey', function (lngs, namespace, key, res) { return _this.events.missingKey.next({ lngs: lngs, namespace: namespace, key: key, res: res }); });
i18next.on.call(i18next, 'added', function (lng, ns) { return _this.events.added.next({ lng: lng, ns: ns }); });
i18next.on.call(i18next, 'removed', function (lng, ns) { return _this.events.removed.next({ lng: lng, ns: ns }); });
}));
i18next.on.call(i18next, 'missingKey', (/**
* @param {?} lngs
* @param {?} namespace
* @param {?} key
* @param {?} res
* @return {?}
*/
function (lngs, namespace, key, res) { return _this.events.missingKey.next({ lngs: lngs, namespace: namespace, key: key, res: res }); }));
i18next.on.call(i18next, 'added', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
function (lng, ns) { return _this.events.added.next({ lng: lng, ns: ns }); }));
i18next.on.call(i18next, 'removed', (/**
* @param {?} lng
* @param {?} ns
* @return {?}
*/
function (lng, ns) { return _this.events.removed.next({ lng: lng, ns: ns }); }));
};

@@ -728,3 +801,3 @@ I18NextService.decorators = [

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -775,3 +848,3 @@ var I18NextTitle = /** @class */ (function (_super) {

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -781,3 +854,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -787,3 +860,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -793,3 +866,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -799,3 +872,3 @@

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -811,3 +884,7 @@ /**

namespaces = activatedRouteSnapshot.data && activatedRouteSnapshot.data.i18nextNamespaces || namespaces;
return this.loadNamespaces(namespaces.filter(function (n) { return n; }));
return this.loadNamespaces(namespaces.filter((/**
* @param {?} n
* @return {?}
*/
function (n) { return n; })));
}

@@ -943,3 +1020,3 @@ /**

* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/

@@ -946,0 +1023,0 @@

{
"name": "angular-i18next",
"version": "6.1.0-beta",
"version": "6.1.0",
"author": {

@@ -5,0 +5,0 @@ "name": "Sergey Romanchuk"

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