@abp/ng.core 8.0.4 → 8.1.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/abstracts/auth.guard.mjs +3 -3
- package/esm2022/lib/abstracts/auth.service.mjs +27 -4
- package/esm2022/lib/abstracts/ng-model.component.mjs +4 -4
- package/esm2022/lib/clients/http.client.mjs +4 -4
- package/esm2022/lib/components/dynamic-layout.component.mjs +4 -4
- package/esm2022/lib/components/replaceable-route-container.component.mjs +3 -3
- package/esm2022/lib/components/router-outlet.component.mjs +3 -3
- package/esm2022/lib/core.module.mjs +19 -14
- package/esm2022/lib/directives/autofocus.directive.mjs +3 -3
- package/esm2022/lib/directives/caps-lock.directive.mjs +4 -4
- package/esm2022/lib/directives/debounce.directive.mjs +3 -3
- package/esm2022/lib/directives/for.directive.mjs +4 -4
- package/esm2022/lib/directives/form-submit.directive.mjs +4 -4
- package/esm2022/lib/directives/init.directive.mjs +3 -3
- package/esm2022/lib/directives/permission.directive.mjs +4 -4
- package/esm2022/lib/directives/replaceable-template.directive.mjs +4 -4
- package/esm2022/lib/directives/show-password.directive.mjs +3 -3
- package/esm2022/lib/directives/stop-propagation.directive.mjs +3 -3
- package/esm2022/lib/guards/permission.guard.mjs +4 -4
- package/esm2022/lib/handlers/routes.handler.mjs +4 -4
- package/esm2022/lib/interceptors/api.interceptor.mjs +3 -3
- package/esm2022/lib/localization.module.mjs +4 -4
- package/esm2022/lib/models/dtos.mjs +1 -1
- package/esm2022/lib/pipes/localization.pipe.mjs +5 -5
- package/esm2022/lib/pipes/safe-html.pipe.mjs +4 -4
- package/esm2022/lib/pipes/short-date-time.pipe.mjs +3 -3
- package/esm2022/lib/pipes/short-date.pipe.mjs +3 -3
- package/esm2022/lib/pipes/short-time.pipe.mjs +3 -3
- package/esm2022/lib/pipes/sort.pipe.mjs +5 -5
- package/esm2022/lib/pipes/to-injector.pipe.mjs +3 -3
- package/esm2022/lib/providers/locale.provider.mjs +1 -1
- package/esm2022/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +3 -3
- package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +3 -3
- package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +3 -3
- package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +3 -3
- package/esm2022/lib/services/config-state.service.mjs +4 -4
- package/esm2022/lib/services/content-projection.service.mjs +3 -3
- package/esm2022/lib/services/dom-insertion.service.mjs +4 -4
- package/esm2022/lib/services/environment.service.mjs +4 -4
- package/esm2022/lib/services/http-error-reporter.service.mjs +3 -3
- package/esm2022/lib/services/http-wait.service.mjs +4 -4
- package/esm2022/lib/services/internet-connection-service.mjs +3 -3
- package/esm2022/lib/services/lazy-load.service.mjs +3 -3
- package/esm2022/lib/services/list.service.mjs +4 -4
- package/esm2022/lib/services/local-storage.service.mjs +3 -3
- package/esm2022/lib/services/localization.service.mjs +4 -4
- package/esm2022/lib/services/multi-tenancy.service.mjs +3 -3
- package/esm2022/lib/services/permission.service.mjs +4 -4
- package/esm2022/lib/services/replaceable-components.service.mjs +4 -4
- package/esm2022/lib/services/resource-wait.service.mjs +3 -3
- package/esm2022/lib/services/rest.service.mjs +6 -6
- package/esm2022/lib/services/router-events.service.mjs +3 -3
- package/esm2022/lib/services/router-wait.service.mjs +3 -3
- package/esm2022/lib/services/routes.service.mjs +7 -7
- package/esm2022/lib/services/session-state.service.mjs +4 -4
- package/esm2022/lib/services/subscription.service.mjs +4 -4
- package/esm2022/lib/services/title-strategy.service.mjs +43 -0
- package/esm2022/lib/services/track-by.service.mjs +3 -3
- package/esm2022/lib/services/window.service.mjs +3 -3
- package/esm2022/lib/strategies/content-security.strategy.mjs +1 -1
- package/esm2022/lib/strategies/content.strategy.mjs +1 -1
- package/esm2022/lib/strategies/cross-origin.strategy.mjs +1 -1
- package/esm2022/lib/tokens/localization.token.mjs +1 -1
- package/esm2022/lib/utils/environment-utils.mjs +1 -1
- package/esm2022/lib/utils/generator-utils.mjs +1 -1
- package/esm2022/lib/utils/initial-utils.mjs +1 -1
- package/esm2022/lib/utils/internal-store-utils.mjs +1 -1
- package/esm2022/lib/utils/localization-utils.mjs +1 -1
- package/esm2022/lib/utils/multi-tenancy-utils.mjs +1 -1
- package/esm2022/lib/utils/object-utils.mjs +1 -1
- package/esm2022/lib/utils/queue.mjs +1 -1
- package/esm2022/lib/utils/tree-utils.mjs +1 -1
- package/esm2022/lib/validators/credit-card.validator.mjs +1 -1
- package/esm2022/lib/validators/url.validator.mjs +1 -1
- package/esm2022/locale/utils/register-locale.mjs +1 -1
- package/esm2022/testing/lib/core-testing.module.mjs +4 -4
- package/esm2022/testing/lib/services/mock-permission.service.mjs +3 -3
- package/esm2022/testing/lib/services/mock-rest.service.mjs +3 -3
- package/fesm2022/abp-ng.core-locale.mjs.map +1 -1
- package/fesm2022/abp-ng.core-testing.mjs +10 -10
- package/fesm2022/abp-ng.core.mjs +253 -189
- package/fesm2022/abp-ng.core.mjs.map +1 -1
- package/lib/abstracts/auth.service.d.ts +11 -0
- package/lib/services/title-strategy.service.d.ts +17 -0
- package/package.json +2 -2
|
@@ -179,10 +179,10 @@ export class LocalizationService {
|
|
|
179
179
|
localization = '';
|
|
180
180
|
return localization || defaultValue || key;
|
|
181
181
|
}
|
|
182
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
183
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
182
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LocalizationService, deps: [{ token: i1.SessionStateService }, { token: i0.Injector }, { token: LocalizationService, optional: true, skipSelf: true }, { token: i2.ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
183
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LocalizationService, providedIn: 'root' }); }
|
|
184
184
|
}
|
|
185
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: LocalizationService, decorators: [{
|
|
186
186
|
type: Injectable,
|
|
187
187
|
args: [{ providedIn: 'root' }]
|
|
188
188
|
}], ctorParameters: () => [{ type: i1.SessionStateService }, { type: i0.Injector }, { type: LocalizationService, decorators: [{
|
|
@@ -214,4 +214,4 @@ function combineLegacyandNewResources(legacy, resource) {
|
|
|
214
214
|
return { ...acc, [key]: value.texts };
|
|
215
215
|
}, legacy);
|
|
216
216
|
}
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvbG9jYWxpemF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU94RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFHOUQsTUFBTSxPQUFPLG1CQUFtQjtJQVU5Qjs7Ozs7T0FLRztJQUNILElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7SUFD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LEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRCxTQUFTLDRCQUE0QixDQUNuQyxNQUF5QixFQUN6QixRQUFxQjtJQUVyQixNQUFNLGNBQWMsR0FBRyw4QkFBOEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVoRSxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7UUFDakUsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgaXNEZXZNb2RlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmcm9tLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscy9jb21tb24nO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25XaXRoRGVmYXVsdCB9IGZyb20gJy4uL21vZGVscy9sb2NhbGl6YXRpb24nO1xyXG5pbXBvcnQge1xyXG4gIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICBBcHBsaWNhdGlvbkxvY2FsaXphdGlvblJlc291cmNlRHRvLFxyXG59IGZyb20gJy4uL3Byb3h5L3ZvbG8vYWJwL2FzcC1uZXQtY29yZS9tdmMvYXBwbGljYXRpb24tY29uZmlndXJhdGlvbnMvbW9kZWxzJztcclxuaW1wb3J0IHsgbG9jYWxpemF0aW9ucyQgfSBmcm9tICcuLi90b2tlbnMvbG9jYWxpemF0aW9uLnRva2VuJztcclxuaW1wb3J0IHsgQ09SRV9PUFRJT05TIH0gZnJvbSAnLi4vdG9rZW5zL29wdGlvbnMudG9rZW4nO1xyXG5pbXBvcnQgeyBjcmVhdGVMb2NhbGl6ZXIsIGNyZWF0ZUxvY2FsaXplcldpdGhGYWxsYmFjayB9IGZyb20gJy4uL3V0aWxzL2xvY2FsaXphdGlvbi11dGlscyc7XHJcbmltcG9ydCB7IGludGVycG9sYXRlIH0gZnJvbSAnLi4vdXRpbHMvc3RyaW5nLXV0aWxzJztcclxuaW1wb3J0IHsgQ29uZmlnU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWctc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TdGF0ZVNlcnZpY2UgfSBmcm9tICcuL3Nlc3Npb24tc3RhdGUuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxpemF0aW9uU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBsYXRlc3RMYW5nID0gdGhpcy5zZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UoKTtcclxuICBwcml2YXRlIF9sYW5ndWFnZUNoYW5nZSQgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcblxyXG4gIHByaXZhdGUgdWlMb2NhbGl6YXRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoXHJcbiAgICBuZXcgTWFwPHN0cmluZywgTWFwPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4+KCksXHJcbiAgKTtcclxuXHJcbiAgcHJpdmF0ZSBsb2NhbGl6YXRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3QobmV3IE1hcDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KCkpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGN1cnJlbnRseSBzZWxlY3RlZCBsYW5ndWFnZVxyXG4gICAqIEV2ZW4gdGhvdWdoIHRoaXMgbG9va3MgbGlrZSBpdCdzIHJlZHVuZGFudCB0byByZXR1cm4gdGhlIHNhbWUgdmFsdWUgYXMgYGdldExhbmd1YWdlKClgLFxyXG4gICAqIGl0J3MgYWN0dWFsbHkgbm90LiBUaGlzIGNvdWxkIGJlIGludm9rZWQgYW55IHRpbWUsIGFuZCB0aGUgbGF0ZXN0TGFuZyBjb3VsZCBiZSBkaWZmZXJlbnQgZnJvbSB0aGVcclxuICAgKiBzZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UoKSB2YWx1ZS5cclxuICAgKi9cclxuICBnZXQgY3VycmVudExhbmcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmxhdGVzdExhbmcgfHwgdGhpcy5zZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UoKTtcclxuICB9XHJcblxyXG4gIGdldCBjdXJyZW50TGFuZyQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLnNlc3Npb25TdGF0ZS5nZXRMYW5ndWFnZSQoKTtcclxuICB9XHJcblxyXG4gIGdldCBsYW5ndWFnZUNoYW5nZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLl9sYW5ndWFnZUNoYW5nZSQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc2Vzc2lvblN0YXRlOiBTZXNzaW9uU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBAT3B0aW9uYWwoKVxyXG4gICAgQFNraXBTZWxmKClcclxuICAgIG90aGVySW5zdGFuY2U6IExvY2FsaXphdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBpZiAob3RoZXJJbnN0YW5jZSkgdGhyb3cgbmV3IEVycm9yKCdMb2NhbGl6YXRpb25TZXJ2aWNlIHNob3VsZCBoYXZlIG9ubHkgb25lIGluc3RhbmNlLicpO1xyXG5cclxuICAgIHRoaXMubGlzdGVuVG9TZXRMYW5ndWFnZSgpO1xyXG4gICAgdGhpcy5pbml0TG9jYWxpemF0aW9uVmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRMb2NhbGl6YXRpb25WYWx1ZXMoKSB7XHJcbiAgICBsb2NhbGl6YXRpb25zJC5zdWJzY3JpYmUodmFsID0+IHRoaXMuYWRkTG9jYWxpemF0aW9uKHZhbCkpO1xyXG5cclxuICAgIGNvbnN0IGxlZ2FjeVJlc291cmNlcyQgPSB0aGlzLmNvbmZpZ1N0YXRlLmdldERlZXAkKCdsb2NhbGl6YXRpb24udmFsdWVzJykgYXMgT2JzZXJ2YWJsZTxcclxuICAgICAgUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj5cclxuICAgID47XHJcblxyXG4gICAgY29uc3QgcmVtb3RlTG9jYWxpemF0aW9ucyQgPSB0aGlzLmNvbmZpZ1N0YXRlLmdldERlZXAkKCdsb2NhbGl6YXRpb24ucmVzb3VyY2VzJykgYXMgT2JzZXJ2YWJsZTxcclxuICAgICAgUmVjb3JkPHN0cmluZywgQXBwbGljYXRpb25Mb2NhbGl6YXRpb25SZXNvdXJjZUR0bz5cclxuICAgID47XHJcblxyXG4gICAgY29uc3QgY3VycmVudExhbmd1YWdlJCA9IHRoaXMuc2Vzc2lvblN0YXRlLmdldExhbmd1YWdlJCgpO1xyXG5cclxuICAgIGNvbnN0IHVpTG9jYWxpemF0aW9ucyQgPSBjb21iaW5lTGF0ZXN0KFtjdXJyZW50TGFuZ3VhZ2UkLCB0aGlzLnVpTG9jYWxpemF0aW9ucyRdKS5waXBlKFxyXG4gICAgICBtYXAoKFtjdXJyZW50TGFuZywgbG9jYWxpemF0aW9uc10pID0+IGxvY2FsaXphdGlvbnMuZ2V0KGN1cnJlbnRMYW5nKSksXHJcbiAgICApO1xyXG5cclxuICAgIGNvbWJpbmVMYXRlc3QoW2xlZ2FjeVJlc291cmNlcyQsIHJlbW90ZUxvY2FsaXphdGlvbnMkLCB1aUxvY2FsaXphdGlvbnMkXSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChbbGVnYWN5LCByZXNvdXJjZSwgbG9jYWxdKSA9PiB7XHJcbiAgICAgICAgICBpZiAoIXJlc291cmNlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbnN0IHJlbW90ZSA9IGNvbWJpbmVMZWdhY3lhbmROZXdSZXNvdXJjZXMobGVnYWN5IHx8IHt9LCByZXNvdXJjZSk7XHJcbiAgICAgICAgICBpZiAocmVtb3RlKSB7XHJcbiAgICAgICAgICAgIGlmICghbG9jYWwpIHtcclxuICAgICAgICAgICAgICBsb2NhbCA9IG5ldyBNYXAoKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMocmVtb3RlKS5mb3JFYWNoKGVudHJ5ID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCByZXNvdXJjZU5hbWUgPSBlbnRyeVswXTtcclxuICAgICAgICAgICAgICBjb25zdCByZW1vdGVUZXh0cyA9IGVudHJ5WzFdO1xyXG4gICAgICAgICAgICAgIGxldCByZXNvdXJjZSA9IGxvY2FsPy5nZXQocmVzb3VyY2VOYW1lKSB8fCB7fTtcclxuICAgICAgICAgICAgICByZXNvdXJjZSA9IHsgLi4ucmVzb3VyY2UsIC4uLnJlbW90ZVRleHRzIH07XHJcblxyXG4gICAgICAgICAgICAgIGxvY2FsPy5zZXQocmVzb3VyY2VOYW1lLCByZXNvdXJjZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHJldHVybiBsb2NhbDtcclxuICAgICAgICB9KSxcclxuICAgICAgICBmaWx0ZXIoQm9vbGVhbilcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKHZhbCA9PiB0aGlzLmxvY2FsaXphdGlvbnMkLm5leHQodmFsKSk7XHJcbiAgfVxyXG5cclxuICBhZGRMb2NhbGl6YXRpb24obG9jYWxpemF0aW9ucz86IEFCUC5Mb2NhbGl6YXRpb25bXSkge1xyXG4gICAgaWYgKCFsb2NhbGl6YXRpb25zKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uTWFwID0gdGhpcy51aUxvY2FsaXphdGlvbnMkLnZhbHVlO1xyXG5cclxuICAgIGxvY2FsaXphdGlvbnMuZm9yRWFjaChsb2MgPT4ge1xyXG4gICAgICBjb25zdCBjdWx0dXJlTWFwID1cclxuICAgICAgICBsb2NhbGl6YXRpb25NYXAuZ2V0KGxvYy5jdWx0dXJlKSB8fCBuZXcgTWFwPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4oKTtcclxuXHJcbiAgICAgIGxvYy5yZXNvdXJjZXMuZm9yRWFjaChyZXMgPT4ge1xyXG4gICAgICAgIGxldCByZXNvdXJjZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IGN1bHR1cmVNYXAuZ2V0KHJlcy5yZXNvdXJjZU5hbWUpIHx8IHt9O1xyXG5cclxuICAgICAgICByZXNvdXJjZSA9IHsgLi4ucmVzb3VyY2UsIC4uLnJlcy50ZXh0cyB9O1xyXG5cclxuICAgICAgICBjdWx0dXJlTWFwLnNldChyZXMucmVzb3VyY2VOYW1lLCByZXNvdXJjZSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgbG9jYWxpemF0aW9uTWFwLnNldChsb2MuY3VsdHVyZSwgY3VsdHVyZU1hcCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnVpTG9jYWxpemF0aW9ucyQubmV4dChsb2NhbGl6YXRpb25NYXApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsaXN0ZW5Ub1NldExhbmd1YWdlKCkge1xyXG4gICAgdGhpcy5zZXNzaW9uU3RhdGVcclxuICAgICAgLm9uTGFuZ3VhZ2VDaGFuZ2UkKClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKFxyXG4gICAgICAgICAgbGFuZyA9PiB0aGlzLmNvbmZpZ1N0YXRlLmdldERlZXAoJ2xvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZScpICE9PSBsYW5nLFxyXG4gICAgICAgICksXHJcbiAgICAgICAgc3dpdGNoTWFwKGxhbmcgPT4gdGhpcy5jb25maWdTdGF0ZS5yZWZyZXNoQXBwU3RhdGUoKS5waXBlKG1hcCgoKSA9PiBsYW5nKSkpLFxyXG4gICAgICAgIGZpbHRlcihCb29sZWFuKSxcclxuICAgICAgICBzd2l0Y2hNYXAobGFuZyA9PiBmcm9tKHRoaXMucmVnaXN0ZXJMb2NhbGUobGFuZykudGhlbigoKSA9PiBsYW5nKSkpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUobGFuZyA9PiB0aGlzLl9sYW5ndWFnZUNoYW5nZSQubmV4dChsYW5nKSk7XHJcbiAgfVxyXG5cclxuICByZWdpc3RlckxvY2FsZShsb2NhbGU6IHN0cmluZykge1xyXG4gICAgY29uc3QgeyByZWdpc3RlckxvY2FsZUZuIH06IEFCUC5Sb290ID0gdGhpcy5pbmplY3Rvci5nZXQoQ09SRV9PUFRJT05TKTtcclxuXHJcbiAgICByZXR1cm4gcmVnaXN0ZXJMb2NhbGVGbihsb2NhbGUpLnRoZW4obW9kdWxlID0+IHtcclxuICAgICAgaWYgKG1vZHVsZT8uZGVmYXVsdCkgcmVnaXN0ZXJMb2NhbGVEYXRhKG1vZHVsZS5kZWZhdWx0KTtcclxuICAgICAgdGhpcy5sYXRlc3RMYW5nID0gbG9jYWxlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGFuIG9ic2VydmFibGUgbG9jYWxpemVkIHRleHQgd2l0aCB0aGUgZ2l2ZW4gaW50ZXJwb2xhdGlvbiBwYXJhbWV0ZXJzIGluIGN1cnJlbnQgbGFuZ3VhZ2UuXHJcbiAgICogQHBhcmFtIGtleSBMb2NhbGl6YXRvbiBrZXkgdG8gcmVwbGFjZSB3aXRoIGxvY2FsaXplZCB0ZXh0XHJcbiAgICogQHBhcmFtIGludGVycG9sYXRlUGFyYW1zIFZhbHVlcyB0byBpbnRlcnBvbGF0ZVxyXG4gICAqL1xyXG4gIGdldChrZXk6IHN0cmluZyB8IExvY2FsaXphdGlvbldpdGhEZWZhdWx0LCAuLi5pbnRlcnBvbGF0ZVBhcmFtczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU3RhdGVcclxuICAgICAgLmdldEFsbCQoKVxyXG4gICAgICAucGlwZShtYXAoc3RhdGUgPT4gdGhpcy5nZXRMb2NhbGl6YXRpb24oc3RhdGUsIGtleSwgLi4uaW50ZXJwb2xhdGVQYXJhbXMpKSk7XHJcbiAgfVxyXG5cclxuICBnZXRSZXNvdXJjZShyZXNvdXJjZU5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMubG9jYWxpemF0aW9ucyQudmFsdWUuZ2V0KHJlc291cmNlTmFtZSk7XHJcbiAgfVxyXG5cclxuICBnZXRSZXNvdXJjZSQocmVzb3VyY2VOYW1lOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmxvY2FsaXphdGlvbnMkLnBpcGUobWFwKHJlcyA9PiByZXMuZ2V0KHJlc291cmNlTmFtZSkpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgbG9jYWxpemVkIHRleHQgd2l0aCB0aGUgZ2l2ZW4gaW50ZXJwb2xhdGlvbiBwYXJhbWV0ZXJzIGluIGN1cnJlbnQgbGFuZ3VhZ2UuXHJcbiAgICogQHBhcmFtIGtleSBMb2NhbGl6YXRpb24ga2V5IHRvIHJlcGxhY2Ugd2l0aCBsb2NhbGl6ZWQgdGV4dFxyXG4gICAqIEBwYXJhbSBpbnRlcnBvbGF0ZVBhcmFtcyBWYWx1ZXMgdG8gaW50ZXBvbGF0ZS5cclxuICAgKi9cclxuICBpbnN0YW50KGtleTogc3RyaW5nIHwgTG9jYWxpemF0aW9uV2l0aERlZmF1bHQsIC4uLmludGVycG9sYXRlUGFyYW1zOiBzdHJpbmdbXSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRMb2NhbGl6YXRpb24odGhpcy5jb25maWdTdGF0ZS5nZXRBbGwoKSwga2V5LCAuLi5pbnRlcnBvbGF0ZVBhcmFtcyk7XHJcbiAgfVxyXG5cclxuICBsb2NhbGl6ZShyZXNvdXJjZU5hbWU6IHN0cmluZywga2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWdTdGF0ZS5nZXRPbmUkKCdsb2NhbGl6YXRpb24nKS5waXBlKFxyXG4gICAgICBtYXAoY3JlYXRlTG9jYWxpemVyKSxcclxuICAgICAgbWFwKGxvY2FsaXplID0+IGxvY2FsaXplKHJlc291cmNlTmFtZSwga2V5LCBkZWZhdWx0VmFsdWUpKSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBsb2NhbGl6ZVN5bmMocmVzb3VyY2VOYW1lOiBzdHJpbmcsIGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uID0gdGhpcy5jb25maWdTdGF0ZS5nZXRPbmUoJ2xvY2FsaXphdGlvbicpO1xyXG4gICAgcmV0dXJuIGNyZWF0ZUxvY2FsaXplcihsb2NhbGl6YXRpb24pKHJlc291cmNlTmFtZSwga2V5LCBkZWZhdWx0VmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgbG9jYWxpemVXaXRoRmFsbGJhY2soXHJcbiAgICByZXNvdXJjZU5hbWVzOiBzdHJpbmdbXSxcclxuICAgIGtleXM6IHN0cmluZ1tdLFxyXG4gICAgZGVmYXVsdFZhbHVlOiBzdHJpbmcsXHJcbiAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N0YXRlLmdldE9uZSQoJ2xvY2FsaXphdGlvbicpLnBpcGUoXHJcbiAgICAgIG1hcChjcmVhdGVMb2NhbGl6ZXJXaXRoRmFsbGJhY2spLFxyXG4gICAgICBtYXAobG9jYWxpemVXaXRoRmFsbGJhY2sgPT4gbG9jYWxpemVXaXRoRmFsbGJhY2socmVzb3VyY2VOYW1lcywga2V5cywgZGVmYXVsdFZhbHVlKSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbG9jYWxpemVXaXRoRmFsbGJhY2tTeW5jKHJlc291cmNlTmFtZXM6IHN0cmluZ1tdLCBrZXlzOiBzdHJpbmdbXSwgZGVmYXVsdFZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uID0gdGhpcy5jb25maWdTdGF0ZS5nZXRPbmUoJ2xvY2FsaXphdGlvbicpO1xyXG4gICAgcmV0dXJuIGNyZWF0ZUxvY2FsaXplcldpdGhGYWxsYmFjayhsb2NhbGl6YXRpb24pKHJlc291cmNlTmFtZXMsIGtleXMsIGRlZmF1bHRWYWx1ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldExvY2FsaXphdGlvbihcclxuICAgIHN0YXRlOiBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25EdG8sXHJcbiAgICBrZXk6IHN0cmluZyB8IExvY2FsaXphdGlvbldpdGhEZWZhdWx0LFxyXG4gICAgLi4uaW50ZXJwb2xhdGVQYXJhbXM6IHN0cmluZ1tdXHJcbiAgKSB7XHJcbiAgICBpZiAoIWtleSkga2V5ID0gJyc7XHJcbiAgICBsZXQgZGVmYXVsdFZhbHVlID0gJyc7XHJcblxyXG4gICAgaWYgKHR5cGVvZiBrZXkgIT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIGRlZmF1bHRWYWx1ZSA9IGtleS5kZWZhdWx0VmFsdWU7XHJcbiAgICAgIGtleSA9IGtleS5rZXk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qga2V5cyA9IGtleS5zcGxpdCgnOjonKSBhcyBzdHJpbmdbXTtcclxuICAgIGNvbnN0IHdhcm4gPSAobWVzc2FnZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkgY29uc29sZS53YXJuKG1lc3NhZ2UpO1xyXG4gICAgfTtcclxuXHJcbiAgICBpZiAoa2V5cy5sZW5ndGggPCAyKSB7XHJcbiAgICAgIHdhcm4oJ1RoZSBsb2NhbGl6YXRpb24gc291cmNlIHNlcGFyYXRvciAoOjopIG5vdCBmb3VuZC4nKTtcclxuICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZSB8fCAoa2V5IGFzIHN0cmluZyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXN0YXRlLmxvY2FsaXphdGlvbikgcmV0dXJuIGRlZmF1bHRWYWx1ZSB8fCBrZXlzWzFdO1xyXG5cclxuICAgIGNvbnN0IHNvdXJjZU5hbWUgPSBrZXlzWzBdIHx8IHN0YXRlLmxvY2FsaXphdGlvbi5kZWZhdWx0UmVzb3VyY2VOYW1lO1xyXG4gICAgY29uc3Qgc291cmNlS2V5ID0ga2V5c1sxXTtcclxuXHJcbiAgICBpZiAoc291cmNlTmFtZSA9PT0gJ18nKSB7XHJcbiAgICAgIHJldHVybiBkZWZhdWx0VmFsdWUgfHwgc291cmNlS2V5O1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghc291cmNlTmFtZSkge1xyXG4gICAgICB3YXJuKFxyXG4gICAgICAgICdMb2NhbGl6YXRpb24gc291cmNlIG5hbWUgaXMgbm90IHNwZWNpZmllZCBhbmQgdGhlIGRlZmF1bHRSZXNvdXJjZU5hbWUgd2FzIG5vdCBkZWZpbmVkIScsXHJcbiAgICAgICk7XHJcblxyXG4gICAgICByZXR1cm4gZGVmYXVsdFZhbHVlIHx8IHNvdXJjZUtleTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzb3VyY2UgPSB0aGlzLmxvY2FsaXphdGlvbnMkLnZhbHVlLmdldChzb3VyY2VOYW1lKTtcclxuICAgIGlmICghc291cmNlKSB7XHJcbiAgICAgIHdhcm4oJ0NvdWxkIG5vdCBmaW5kIGxvY2FsaXphdGlvbiBzb3VyY2U6ICcgKyBzb3VyY2VOYW1lKTtcclxuICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZSB8fCBzb3VyY2VLZXk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGxvY2FsaXphdGlvbiA9IHNvdXJjZVtzb3VyY2VLZXldO1xyXG4gICAgaWYgKHR5cGVvZiBsb2NhbGl6YXRpb24gPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIHJldHVybiBkZWZhdWx0VmFsdWUgfHwgc291cmNlS2V5O1xyXG4gICAgfVxyXG5cclxuICAgIGludGVycG9sYXRlUGFyYW1zID0gaW50ZXJwb2xhdGVQYXJhbXMuZmlsdGVyKHBhcmFtcyA9PiBwYXJhbXMgIT0gbnVsbCk7XHJcbiAgICBpZiAobG9jYWxpemF0aW9uKSBsb2NhbGl6YXRpb24gPSBpbnRlcnBvbGF0ZShsb2NhbGl6YXRpb24sIGludGVycG9sYXRlUGFyYW1zKTtcclxuXHJcbiAgICBpZiAodHlwZW9mIGxvY2FsaXphdGlvbiAhPT0gJ3N0cmluZycpIGxvY2FsaXphdGlvbiA9ICcnO1xyXG5cclxuICAgIHJldHVybiBsb2NhbGl6YXRpb24gfHwgZGVmYXVsdFZhbHVlIHx8IChrZXkgYXMgc3RyaW5nKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlY3Vyc2l2ZWx5TWVyZ2VCYXNlUmVzb3VyY2VzKGJhc2VSZXNvdXJjZU5hbWU6IHN0cmluZywgc291cmNlOiBSZXNvdXJjZUR0byk6IEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uUmVzb3VyY2VEdG8ge1xyXG4gIGNvbnN0IGl0ZW0gPSBzb3VyY2VbYmFzZVJlc291cmNlTmFtZV07XHJcblxyXG4gIGlmIChpdGVtLmJhc2VSZXNvdXJjZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICByZXR1cm4gaXRlbTtcclxuICB9XHJcblxyXG4gIHJldHVybiBpdGVtLmJhc2VSZXNvdXJjZXMucmVkdWNlKChhY2MsIGJhc2VSZXNvdXJjZSkgPT4ge1xyXG4gICAgY29uc3QgYmFzZUl0ZW0gPSByZWN1cnNpdmVseU1lcmdlQmFzZVJlc291cmNlcyhiYXNlUmVzb3VyY2UsIHNvdXJjZSk7XHJcbiAgICBjb25zdCB0ZXh0cyA9IHsgLi4uYmFzZUl0ZW0udGV4dHMsIC4uLml0ZW0udGV4dHMgfTtcclxuICAgIHJldHVybiB7IC4uLmFjYywgdGV4dHMgfTtcclxuICB9LCBpdGVtKTtcclxufVxyXG5cclxuZnVuY3Rpb24gbWVyZ2VSZXNvdXJjZXNXaXRoQmFzZVJlc291cmNlKHJlc291cmNlOiBSZXNvdXJjZUR0byk6IFJlc291cmNlRHRvIHtcclxuICBjb25zdCBlbnRpdGllczogQXJyYXk8W3N0cmluZywgQXBwbGljYXRpb25Mb2NhbGl6YXRpb25SZXNvdXJjZUR0b10+ID0gT2JqZWN0LmtleXMocmVzb3VyY2UpLm1hcChrZXkgPT4ge1xyXG4gICAgY29uc3QgbmV3VmFsdWUgPSByZWN1cnNpdmVseU1lcmdlQmFzZVJlc291cmNlcyhrZXksIHJlc291cmNlKTtcclxuICAgIHJldHVybiBba2V5LCBuZXdWYWx1ZV07XHJcbiAgfSk7XHJcbiAgcmV0dXJuIGVudGl0aWVzLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7IC4uLmFjYywgW2tleV06IHZhbHVlIH0pLCB7fSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNvbWJpbmVMZWdhY3lhbmROZXdSZXNvdXJjZXMoXHJcbiAgbGVnYWN5OiBMZWdhY3lMYW5ndWFnZUR0byxcclxuICByZXNvdXJjZTogUmVzb3VyY2VEdG8sXHJcbik6IExlZ2FjeUxhbmd1YWdlRHRvIHtcclxuICBjb25zdCBtZXJnZWRSZXNvdXJjZSA9IG1lcmdlUmVzb3VyY2VzV2l0aEJhc2VSZXNvdXJjZShyZXNvdXJjZSk7XHJcblxyXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhtZXJnZWRSZXNvdXJjZSkucmVkdWNlKChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xyXG4gICAgcmV0dXJuIHsgLi4uYWNjLCBba2V5XTogdmFsdWUudGV4dHMgfTtcclxuICB9LCBsZWdhY3kpO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBMZWdhY3lMYW5ndWFnZUR0byA9IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+O1xyXG5leHBvcnQgdHlwZSBSZXNvdXJjZUR0byA9IFJlY29yZDxzdHJpbmcsIEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uUmVzb3VyY2VEdG8+O1xyXG4iXX0=
|
|
217
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvbG9jYWxpemF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU94RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFHOUQsTUFBTSxPQUFPLG1CQUFtQjtJQVU5Qjs7Ozs7T0FLRztJQUNILElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7SUFD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RyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ2hGLENBQUM7QUFFRCxTQUFTLDRCQUE0QixDQUNuQyxNQUF5QixFQUN6QixRQUFxQjtJQUVyQixNQUFNLGNBQWMsR0FBRyw4QkFBOEIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVoRSxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7UUFDakUsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWdpc3RlckxvY2FsZURhdGEgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgaXNEZXZNb2RlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBmcm9tLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscy9jb21tb24nO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25XaXRoRGVmYXVsdCB9IGZyb20gJy4uL21vZGVscy9sb2NhbGl6YXRpb24nO1xyXG5pbXBvcnQge1xyXG4gIEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byxcclxuICBBcHBsaWNhdGlvbkxvY2FsaXphdGlvblJlc291cmNlRHRvLFxyXG59IGZyb20gJy4uL3Byb3h5L3ZvbG8vYWJwL2FzcC1uZXQtY29yZS9tdmMvYXBwbGljYXRpb24tY29uZmlndXJhdGlvbnMvbW9kZWxzJztcclxuaW1wb3J0IHsgbG9jYWxpemF0aW9ucyQgfSBmcm9tICcuLi90b2tlbnMvbG9jYWxpemF0aW9uLnRva2VuJztcclxuaW1wb3J0IHsgQ09SRV9PUFRJT05TIH0gZnJvbSAnLi4vdG9rZW5zL29wdGlvbnMudG9rZW4nO1xyXG5pbXBvcnQgeyBjcmVhdGVMb2NhbGl6ZXIsIGNyZWF0ZUxvY2FsaXplcldpdGhGYWxsYmFjayB9IGZyb20gJy4uL3V0aWxzL2xvY2FsaXphdGlvbi11dGlscyc7XHJcbmltcG9ydCB7IGludGVycG9sYXRlIH0gZnJvbSAnLi4vdXRpbHMvc3RyaW5nLXV0aWxzJztcclxuaW1wb3J0IHsgQ29uZmlnU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWctc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TdGF0ZVNlcnZpY2UgfSBmcm9tICcuL3Nlc3Npb24tc3RhdGUuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgTG9jYWxpemF0aW9uU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBsYXRlc3RMYW5nID0gdGhpcy5zZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UoKTtcclxuICBwcml2YXRlIF9sYW5ndWFnZUNoYW5nZSQgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcblxyXG4gIHByaXZhdGUgdWlMb2NhbGl6YXRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoXHJcbiAgICBuZXcgTWFwPHN0cmluZywgTWFwPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4+KCksXHJcbiAgKTtcclxuXHJcbiAgcHJpdmF0ZSBsb2NhbGl6YXRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3QobmV3IE1hcDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KCkpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGN1cnJlbnRseSBzZWxlY3RlZCBsYW5ndWFnZVxyXG4gICAqIEV2ZW4gdGhvdWdoIHRoaXMgbG9va3MgbGlrZSBpdCdzIHJlZHVuZGFudCB0byByZXR1cm4gdGhlIHNhbWUgdmFsdWUgYXMgYGdldExhbmd1YWdlKClgLFxyXG4gICAqIGl0J3MgYWN0dWFsbHkgbm90LiBUaGlzIGNvdWxkIGJlIGludm9rZWQgYW55IHRpbWUsIGFuZCB0aGUgbGF0ZXN0TGFuZyBjb3VsZCBiZSBkaWZmZXJlbnQgZnJvbSB0aGVcclxuICAgKiBzZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UoKSB2YWx1ZS5cclxuICAgKi9cclxuICBnZXQgY3VycmVudExhbmcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmxhdGVzdExhbmcgfHwgdGhpcy5zZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UoKTtcclxuICB9XHJcblxyXG4gIGdldCBjdXJyZW50TGFuZyQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLnNlc3Npb25TdGF0ZS5nZXRMYW5ndWFnZSQoKTtcclxuICB9XHJcblxyXG4gIGdldCBsYW5ndWFnZUNoYW5nZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLl9sYW5ndWFnZUNoYW5nZSQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc2Vzc2lvblN0YXRlOiBTZXNzaW9uU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBAT3B0aW9uYWwoKVxyXG4gICAgQFNraXBTZWxmKClcclxuICAgIG90aGVySW5zdGFuY2U6IExvY2FsaXphdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBpZiAob3RoZXJJbnN0YW5jZSkgdGhyb3cgbmV3IEVycm9yKCdMb2NhbGl6YXRpb25TZXJ2aWNlIHNob3VsZCBoYXZlIG9ubHkgb25lIGluc3RhbmNlLicpO1xyXG5cclxuICAgIHRoaXMubGlzdGVuVG9TZXRMYW5ndWFnZSgpO1xyXG4gICAgdGhpcy5pbml0TG9jYWxpemF0aW9uVmFsdWVzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRMb2NhbGl6YXRpb25WYWx1ZXMoKSB7XHJcbiAgICBsb2NhbGl6YXRpb25zJC5zdWJzY3JpYmUodmFsID0+IHRoaXMuYWRkTG9jYWxpemF0aW9uKHZhbCkpO1xyXG5cclxuICAgIGNvbnN0IGxlZ2FjeVJlc291cmNlcyQgPSB0aGlzLmNvbmZpZ1N0YXRlLmdldERlZXAkKCdsb2NhbGl6YXRpb24udmFsdWVzJykgYXMgT2JzZXJ2YWJsZTxcclxuICAgICAgUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj5cclxuICAgID47XHJcblxyXG4gICAgY29uc3QgcmVtb3RlTG9jYWxpemF0aW9ucyQgPSB0aGlzLmNvbmZpZ1N0YXRlLmdldERlZXAkKCdsb2NhbGl6YXRpb24ucmVzb3VyY2VzJykgYXMgT2JzZXJ2YWJsZTxcclxuICAgICAgUmVjb3JkPHN0cmluZywgQXBwbGljYXRpb25Mb2NhbGl6YXRpb25SZXNvdXJjZUR0bz5cclxuICAgID47XHJcblxyXG4gICAgY29uc3QgY3VycmVudExhbmd1YWdlJCA9IHRoaXMuc2Vzc2lvblN0YXRlLmdldExhbmd1YWdlJCgpO1xyXG5cclxuICAgIGNvbnN0IHVpTG9jYWxpemF0aW9ucyQgPSBjb21iaW5lTGF0ZXN0KFtjdXJyZW50TGFuZ3VhZ2UkLCB0aGlzLnVpTG9jYWxpemF0aW9ucyRdKS5waXBlKFxyXG4gICAgICBtYXAoKFtjdXJyZW50TGFuZywgbG9jYWxpemF0aW9uc10pID0+IGxvY2FsaXphdGlvbnMuZ2V0KGN1cnJlbnRMYW5nKSksXHJcbiAgICApO1xyXG5cclxuICAgIGNvbWJpbmVMYXRlc3QoW2xlZ2FjeVJlc291cmNlcyQsIHJlbW90ZUxvY2FsaXphdGlvbnMkLCB1aUxvY2FsaXphdGlvbnMkXSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKChbbGVnYWN5LCByZXNvdXJjZSwgbG9jYWxdKSA9PiB7XHJcbiAgICAgICAgICBpZiAoIXJlc291cmNlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbnN0IHJlbW90ZSA9IGNvbWJpbmVMZWdhY3lhbmROZXdSZXNvdXJjZXMobGVnYWN5IHx8IHt9LCByZXNvdXJjZSk7XHJcbiAgICAgICAgICBpZiAocmVtb3RlKSB7XHJcbiAgICAgICAgICAgIGlmICghbG9jYWwpIHtcclxuICAgICAgICAgICAgICBsb2NhbCA9IG5ldyBNYXAoKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMocmVtb3RlKS5mb3JFYWNoKGVudHJ5ID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCByZXNvdXJjZU5hbWUgPSBlbnRyeVswXTtcclxuICAgICAgICAgICAgICBjb25zdCByZW1vdGVUZXh0cyA9IGVudHJ5WzFdO1xyXG4gICAgICAgICAgICAgIGxldCByZXNvdXJjZSA9IGxvY2FsPy5nZXQocmVzb3VyY2VOYW1lKSB8fCB7fTtcclxuICAgICAgICAgICAgICByZXNvdXJjZSA9IHsgLi4ucmVzb3VyY2UsIC4uLnJlbW90ZVRleHRzIH07XHJcblxyXG4gICAgICAgICAgICAgIGxvY2FsPy5zZXQocmVzb3VyY2VOYW1lLCByZXNvdXJjZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHJldHVybiBsb2NhbDtcclxuICAgICAgICB9KSxcclxuICAgICAgICBmaWx0ZXIoQm9vbGVhbilcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKHZhbCA9PiB0aGlzLmxvY2FsaXphdGlvbnMkLm5leHQodmFsKSk7XHJcbiAgfVxyXG5cclxuICBhZGRMb2NhbGl6YXRpb24obG9jYWxpemF0aW9ucz86IEFCUC5Mb2NhbGl6YXRpb25bXSkge1xyXG4gICAgaWYgKCFsb2NhbGl6YXRpb25zKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uTWFwID0gdGhpcy51aUxvY2FsaXphdGlvbnMkLnZhbHVlO1xyXG5cclxuICAgIGxvY2FsaXphdGlvbnMuZm9yRWFjaChsb2MgPT4ge1xyXG4gICAgICBjb25zdCBjdWx0dXJlTWFwID1cclxuICAgICAgICBsb2NhbGl6YXRpb25NYXAuZ2V0KGxvYy5jdWx0dXJlKSB8fCBuZXcgTWFwPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4oKTtcclxuXHJcbiAgICAgIGxvYy5yZXNvdXJjZXMuZm9yRWFjaChyZXMgPT4ge1xyXG4gICAgICAgIGxldCByZXNvdXJjZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IGN1bHR1cmVNYXAuZ2V0KHJlcy5yZXNvdXJjZU5hbWUpIHx8IHt9O1xyXG5cclxuICAgICAgICByZXNvdXJjZSA9IHsgLi4ucmVzb3VyY2UsIC4uLnJlcy50ZXh0cyB9O1xyXG5cclxuICAgICAgICBjdWx0dXJlTWFwLnNldChyZXMucmVzb3VyY2VOYW1lLCByZXNvdXJjZSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgbG9jYWxpemF0aW9uTWFwLnNldChsb2MuY3VsdHVyZSwgY3VsdHVyZU1hcCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnVpTG9jYWxpemF0aW9ucyQubmV4dChsb2NhbGl6YXRpb25NYXApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsaXN0ZW5Ub1NldExhbmd1YWdlKCkge1xyXG4gICAgdGhpcy5zZXNzaW9uU3RhdGVcclxuICAgICAgLm9uTGFuZ3VhZ2VDaGFuZ2UkKClcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKFxyXG4gICAgICAgICAgbGFuZyA9PiB0aGlzLmNvbmZpZ1N0YXRlLmdldERlZXAoJ2xvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZScpICE9PSBsYW5nLFxyXG4gICAgICAgICksXHJcbiAgICAgICAgc3dpdGNoTWFwKGxhbmcgPT4gdGhpcy5jb25maWdTdGF0ZS5yZWZyZXNoQXBwU3RhdGUoKS5waXBlKG1hcCgoKSA9PiBsYW5nKSkpLFxyXG4gICAgICAgIGZpbHRlcihCb29sZWFuKSxcclxuICAgICAgICBzd2l0Y2hNYXAobGFuZyA9PiBmcm9tKHRoaXMucmVnaXN0ZXJMb2NhbGUobGFuZykudGhlbigoKSA9PiBsYW5nKSkpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUobGFuZyA9PiB0aGlzLl9sYW5ndWFnZUNoYW5nZSQubmV4dChsYW5nKSk7XHJcbiAgfVxyXG5cclxuICByZWdpc3RlckxvY2FsZShsb2NhbGU6IHN0cmluZykge1xyXG4gICAgY29uc3QgeyByZWdpc3RlckxvY2FsZUZuIH06IEFCUC5Sb290ID0gdGhpcy5pbmplY3Rvci5nZXQoQ09SRV9PUFRJT05TKTtcclxuXHJcbiAgICByZXR1cm4gcmVnaXN0ZXJMb2NhbGVGbihsb2NhbGUpLnRoZW4obW9kdWxlID0+IHtcclxuICAgICAgaWYgKG1vZHVsZT8uZGVmYXVsdCkgcmVnaXN0ZXJMb2NhbGVEYXRhKG1vZHVsZS5kZWZhdWx0KTtcclxuICAgICAgdGhpcy5sYXRlc3RMYW5nID0gbG9jYWxlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm5zIGFuIG9ic2VydmFibGUgbG9jYWxpemVkIHRleHQgd2l0aCB0aGUgZ2l2ZW4gaW50ZXJwb2xhdGlvbiBwYXJhbWV0ZXJzIGluIGN1cnJlbnQgbGFuZ3VhZ2UuXHJcbiAgICogQHBhcmFtIGtleSBMb2NhbGl6YXRvbiBrZXkgdG8gcmVwbGFjZSB3aXRoIGxvY2FsaXplZCB0ZXh0XHJcbiAgICogQHBhcmFtIGludGVycG9sYXRlUGFyYW1zIFZhbHVlcyB0byBpbnRlcnBvbGF0ZVxyXG4gICAqL1xyXG4gIGdldChrZXk6IHN0cmluZyB8IExvY2FsaXphdGlvbldpdGhEZWZhdWx0LCAuLi5pbnRlcnBvbGF0ZVBhcmFtczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU3RhdGVcclxuICAgICAgLmdldEFsbCQoKVxyXG4gICAgICAucGlwZShtYXAoc3RhdGUgPT4gdGhpcy5nZXRMb2NhbGl6YXRpb24oc3RhdGUsIGtleSwgLi4uaW50ZXJwb2xhdGVQYXJhbXMpKSk7XHJcbiAgfVxyXG5cclxuICBnZXRSZXNvdXJjZShyZXNvdXJjZU5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMubG9jYWxpemF0aW9ucyQudmFsdWUuZ2V0KHJlc291cmNlTmFtZSk7XHJcbiAgfVxyXG5cclxuICBnZXRSZXNvdXJjZSQocmVzb3VyY2VOYW1lOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmxvY2FsaXphdGlvbnMkLnBpcGUobWFwKHJlcyA9PiByZXMuZ2V0KHJlc291cmNlTmFtZSkpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgbG9jYWxpemVkIHRleHQgd2l0aCB0aGUgZ2l2ZW4gaW50ZXJwb2xhdGlvbiBwYXJhbWV0ZXJzIGluIGN1cnJlbnQgbGFuZ3VhZ2UuXHJcbiAgICogQHBhcmFtIGtleSBMb2NhbGl6YXRpb24ga2V5IHRvIHJlcGxhY2Ugd2l0aCBsb2NhbGl6ZWQgdGV4dFxyXG4gICAqIEBwYXJhbSBpbnRlcnBvbGF0ZVBhcmFtcyBWYWx1ZXMgdG8gaW50ZXBvbGF0ZS5cclxuICAgKi9cclxuICBpbnN0YW50KGtleTogc3RyaW5nIHwgTG9jYWxpemF0aW9uV2l0aERlZmF1bHQsIC4uLmludGVycG9sYXRlUGFyYW1zOiBzdHJpbmdbXSk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRMb2NhbGl6YXRpb24odGhpcy5jb25maWdTdGF0ZS5nZXRBbGwoKSwga2V5LCAuLi5pbnRlcnBvbGF0ZVBhcmFtcyk7XHJcbiAgfVxyXG5cclxuICBsb2NhbGl6ZShyZXNvdXJjZU5hbWU6IHN0cmluZywga2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWdTdGF0ZS5nZXRPbmUkKCdsb2NhbGl6YXRpb24nKS5waXBlKFxyXG4gICAgICBtYXAoY3JlYXRlTG9jYWxpemVyKSxcclxuICAgICAgbWFwKGxvY2FsaXplID0+IGxvY2FsaXplKHJlc291cmNlTmFtZSwga2V5LCBkZWZhdWx0VmFsdWUpKSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBsb2NhbGl6ZVN5bmMocmVzb3VyY2VOYW1lOiBzdHJpbmcsIGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uID0gdGhpcy5jb25maWdTdGF0ZS5nZXRPbmUoJ2xvY2FsaXphdGlvbicpO1xyXG4gICAgcmV0dXJuIGNyZWF0ZUxvY2FsaXplcihsb2NhbGl6YXRpb24pKHJlc291cmNlTmFtZSwga2V5LCBkZWZhdWx0VmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgbG9jYWxpemVXaXRoRmFsbGJhY2soXHJcbiAgICByZXNvdXJjZU5hbWVzOiBzdHJpbmdbXSxcclxuICAgIGtleXM6IHN0cmluZ1tdLFxyXG4gICAgZGVmYXVsdFZhbHVlOiBzdHJpbmcsXHJcbiAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N0YXRlLmdldE9uZSQoJ2xvY2FsaXphdGlvbicpLnBpcGUoXHJcbiAgICAgIG1hcChjcmVhdGVMb2NhbGl6ZXJXaXRoRmFsbGJhY2spLFxyXG4gICAgICBtYXAobG9jYWxpemVXaXRoRmFsbGJhY2sgPT4gbG9jYWxpemVXaXRoRmFsbGJhY2socmVzb3VyY2VOYW1lcywga2V5cywgZGVmYXVsdFZhbHVlKSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbG9jYWxpemVXaXRoRmFsbGJhY2tTeW5jKHJlc291cmNlTmFtZXM6IHN0cmluZ1tdLCBrZXlzOiBzdHJpbmdbXSwgZGVmYXVsdFZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbG9jYWxpemF0aW9uID0gdGhpcy5jb25maWdTdGF0ZS5nZXRPbmUoJ2xvY2FsaXphdGlvbicpO1xyXG4gICAgcmV0dXJuIGNyZWF0ZUxvY2FsaXplcldpdGhGYWxsYmFjayhsb2NhbGl6YXRpb24pKHJlc291cmNlTmFtZXMsIGtleXMsIGRlZmF1bHRWYWx1ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldExvY2FsaXphdGlvbihcclxuICAgIHN0YXRlOiBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25EdG8sXHJcbiAgICBrZXk6IHN0cmluZyB8IExvY2FsaXphdGlvbldpdGhEZWZhdWx0LFxyXG4gICAgLi4uaW50ZXJwb2xhdGVQYXJhbXM6IHN0cmluZ1tdXHJcbiAgKSB7XHJcbiAgICBpZiAoIWtleSkga2V5ID0gJyc7XHJcbiAgICBsZXQgZGVmYXVsdFZhbHVlID0gJyc7XHJcblxyXG4gICAgaWYgKHR5cGVvZiBrZXkgIT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIGRlZmF1bHRWYWx1ZSA9IGtleS5kZWZhdWx0VmFsdWU7XHJcbiAgICAgIGtleSA9IGtleS5rZXk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qga2V5cyA9IGtleS5zcGxpdCgnOjonKSBhcyBzdHJpbmdbXTtcclxuICAgIGNvbnN0IHdhcm4gPSAobWVzc2FnZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkgY29uc29sZS53YXJuKG1lc3NhZ2UpO1xyXG4gICAgfTtcclxuXHJcbiAgICBpZiAoa2V5cy5sZW5ndGggPCAyKSB7XHJcbiAgICAgIHdhcm4oJ1RoZSBsb2NhbGl6YXRpb24gc291cmNlIHNlcGFyYXRvciAoOjopIG5vdCBmb3VuZC4nKTtcclxuICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZSB8fCAoa2V5IGFzIHN0cmluZyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXN0YXRlLmxvY2FsaXphdGlvbikgcmV0dXJuIGRlZmF1bHRWYWx1ZSB8fCBrZXlzWzFdO1xyXG5cclxuICAgIGNvbnN0IHNvdXJjZU5hbWUgPSBrZXlzWzBdIHx8IHN0YXRlLmxvY2FsaXphdGlvbi5kZWZhdWx0UmVzb3VyY2VOYW1lO1xyXG4gICAgY29uc3Qgc291cmNlS2V5ID0ga2V5c1sxXTtcclxuXHJcbiAgICBpZiAoc291cmNlTmFtZSA9PT0gJ18nKSB7XHJcbiAgICAgIHJldHVybiBkZWZhdWx0VmFsdWUgfHwgc291cmNlS2V5O1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghc291cmNlTmFtZSkge1xyXG4gICAgICB3YXJuKFxyXG4gICAgICAgICdMb2NhbGl6YXRpb24gc291cmNlIG5hbWUgaXMgbm90IHNwZWNpZmllZCBhbmQgdGhlIGRlZmF1bHRSZXNvdXJjZU5hbWUgd2FzIG5vdCBkZWZpbmVkIScsXHJcbiAgICAgICk7XHJcblxyXG4gICAgICByZXR1cm4gZGVmYXVsdFZhbHVlIHx8IHNvdXJjZUtleTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzb3VyY2UgPSB0aGlzLmxvY2FsaXphdGlvbnMkLnZhbHVlLmdldChzb3VyY2VOYW1lKTtcclxuICAgIGlmICghc291cmNlKSB7XHJcbiAgICAgIHdhcm4oJ0NvdWxkIG5vdCBmaW5kIGxvY2FsaXphdGlvbiBzb3VyY2U6ICcgKyBzb3VyY2VOYW1lKTtcclxuICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZSB8fCBzb3VyY2VLZXk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGxvY2FsaXphdGlvbiA9IHNvdXJjZVtzb3VyY2VLZXldO1xyXG4gICAgaWYgKHR5cGVvZiBsb2NhbGl6YXRpb24gPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIHJldHVybiBkZWZhdWx0VmFsdWUgfHwgc291cmNlS2V5O1xyXG4gICAgfVxyXG5cclxuICAgIGludGVycG9sYXRlUGFyYW1zID0gaW50ZXJwb2xhdGVQYXJhbXMuZmlsdGVyKHBhcmFtcyA9PiBwYXJhbXMgIT0gbnVsbCk7XHJcbiAgICBpZiAobG9jYWxpemF0aW9uKSBsb2NhbGl6YXRpb24gPSBpbnRlcnBvbGF0ZShsb2NhbGl6YXRpb24sIGludGVycG9sYXRlUGFyYW1zKTtcclxuXHJcbiAgICBpZiAodHlwZW9mIGxvY2FsaXphdGlvbiAhPT0gJ3N0cmluZycpIGxvY2FsaXphdGlvbiA9ICcnO1xyXG5cclxuICAgIHJldHVybiBsb2NhbGl6YXRpb24gfHwgZGVmYXVsdFZhbHVlIHx8IChrZXkgYXMgc3RyaW5nKTtcclxuICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlY3Vyc2l2ZWx5TWVyZ2VCYXNlUmVzb3VyY2VzKGJhc2VSZXNvdXJjZU5hbWU6IHN0cmluZywgc291cmNlOiBSZXNvdXJjZUR0byk6IEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uUmVzb3VyY2VEdG8ge1xyXG4gIGNvbnN0IGl0ZW0gPSBzb3VyY2VbYmFzZVJlc291cmNlTmFtZV07XHJcblxyXG4gIGlmIChpdGVtLmJhc2VSZXNvdXJjZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICByZXR1cm4gaXRlbTtcclxuICB9XHJcblxyXG4gIHJldHVybiBpdGVtLmJhc2VSZXNvdXJjZXMucmVkdWNlKChhY2MsIGJhc2VSZXNvdXJjZSkgPT4ge1xyXG4gICAgY29uc3QgYmFzZUl0ZW0gPSByZWN1cnNpdmVseU1lcmdlQmFzZVJlc291cmNlcyhiYXNlUmVzb3VyY2UsIHNvdXJjZSk7XHJcbiAgICBjb25zdCB0ZXh0cyA9IHsgLi4uYmFzZUl0ZW0udGV4dHMsIC4uLml0ZW0udGV4dHMgfTtcclxuICAgIHJldHVybiB7IC4uLmFjYywgdGV4dHMgfTtcclxuICB9LCBpdGVtKTtcclxufVxyXG5cclxuZnVuY3Rpb24gbWVyZ2VSZXNvdXJjZXNXaXRoQmFzZVJlc291cmNlKHJlc291cmNlOiBSZXNvdXJjZUR0byk6IFJlc291cmNlRHRvIHtcclxuICBjb25zdCBlbnRpdGllczogQXJyYXk8W3N0cmluZywgQXBwbGljYXRpb25Mb2NhbGl6YXRpb25SZXNvdXJjZUR0b10+ID0gT2JqZWN0LmtleXMocmVzb3VyY2UpLm1hcChrZXkgPT4ge1xyXG4gICAgY29uc3QgbmV3VmFsdWUgPSByZWN1cnNpdmVseU1lcmdlQmFzZVJlc291cmNlcyhrZXksIHJlc291cmNlKTtcclxuICAgIHJldHVybiBba2V5LCBuZXdWYWx1ZV07XHJcbiAgfSk7XHJcbiAgcmV0dXJuIGVudGl0aWVzLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7IC4uLmFjYywgW2tleV06IHZhbHVlIH0pLCB7fSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGNvbWJpbmVMZWdhY3lhbmROZXdSZXNvdXJjZXMoXHJcbiAgbGVnYWN5OiBMZWdhY3lMYW5ndWFnZUR0byxcclxuICByZXNvdXJjZTogUmVzb3VyY2VEdG8sXHJcbik6IExlZ2FjeUxhbmd1YWdlRHRvIHtcclxuICBjb25zdCBtZXJnZWRSZXNvdXJjZSA9IG1lcmdlUmVzb3VyY2VzV2l0aEJhc2VSZXNvdXJjZShyZXNvdXJjZSk7XHJcblxyXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhtZXJnZWRSZXNvdXJjZSkucmVkdWNlKChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xyXG4gICAgcmV0dXJuIHsgLi4uYWNjLCBba2V5XTogdmFsdWUudGV4dHMgfTtcclxuICB9LCBsZWdhY3kpO1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBMZWdhY3lMYW5ndWFnZUR0byA9IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHN0cmluZz4+O1xyXG5leHBvcnQgdHlwZSBSZXNvdXJjZUR0byA9IFJlY29yZDxzdHJpbmcsIEFwcGxpY2F0aW9uTG9jYWxpemF0aW9uUmVzb3VyY2VEdG8+O1xyXG4iXX0=
|
|
@@ -35,10 +35,10 @@ export class MultiTenancyService {
|
|
|
35
35
|
.findTenantById(tenantId)
|
|
36
36
|
.pipe(switchMap(this.setTenantToState));
|
|
37
37
|
}
|
|
38
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
39
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: MultiTenancyService, deps: [{ token: i1.RestService }, { token: i2.SessionStateService }, { token: i3.AbpTenantService }, { token: i4.ConfigStateService }, { token: TENANT_KEY }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
39
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: MultiTenancyService, providedIn: 'root' }); }
|
|
40
40
|
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: MultiTenancyService, decorators: [{
|
|
42
42
|
type: Injectable,
|
|
43
43
|
args: [{ providedIn: 'root' }]
|
|
44
44
|
}], ctorParameters: () => [{ type: i1.RestService }, { type: i2.SessionStateService }, { type: i3.AbpTenantService }, { type: i4.ConfigStateService }, { type: undefined, decorators: [{
|
|
@@ -53,11 +53,11 @@ export class PermissionService {
|
|
|
53
53
|
getPolicy(key, grantedPolicies) {
|
|
54
54
|
return grantedPolicies[key] || false;
|
|
55
55
|
}
|
|
56
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
57
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PermissionService, deps: [{ token: i1.ConfigStateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
57
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PermissionService, providedIn: 'root' }); }
|
|
58
58
|
}
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: PermissionService, decorators: [{
|
|
60
60
|
type: Injectable,
|
|
61
61
|
args: [{ providedIn: 'root' }]
|
|
62
62
|
}], ctorParameters: () => [{ type: i1.ConfigStateService }] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Blcm1pc3Npb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRzVELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBc0IsV0FBK0I7UUFBL0IsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO0lBQUcsQ0FBQztJQUV6RCxpQkFBaUIsQ0FBQyxHQUFXO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FDbkUsQ0FBQztJQUNKLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUF1QjtRQUN0QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsbUJBQW1CLENBQTBCLEtBQWU7UUFDMUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BDLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FDakIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUNwRixDQUFDO0lBQ0osQ0FBQztJQUVELG9CQUFvQixDQUEwQixLQUFlO1FBQzNELE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQ2IsS0FBSyxDQUFDLE1BQU0sQ0FDVixJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLENBQ3BGLENBQ0YsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVTLGVBQWUsQ0FBQyxHQUF1QixFQUFFLGVBQXdDO1FBQ3pGLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFFdEIsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3pCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztRQUV4Qix3Q0FBd0M7UUFDeEMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUM7WUFFbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUNuRSxDQUFDO2FBQU0sSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQUUsT0FBTyxLQUFLLENBQUM7WUFFbEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUNwRSxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRVMsU0FBUztRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRVMsV0FBVztRQUNuQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFUyxhQUFhLENBQUMsd0JBQXFEO1FBQzNFLE9BQU8sd0JBQXdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsSUFBSSxFQUFFLENBQUM7SUFDL0QsQ0FBQztJQUVTLFNBQVMsQ0FBQyxHQUFXLEVBQUUsZUFBd0M7UUFDdkUsT0FBTyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDO0lBQ3ZDLENBQUM7OEdBckVVLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREosTUFBTTs7MkZBQ25CLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi4vbW9kZWxzL2NvbW1vbic7XHJcbmltcG9ydCB7IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0byB9IGZyb20gJy4uL3Byb3h5L3ZvbG8vYWJwL2FzcC1uZXQtY29yZS9tdmMvYXBwbGljYXRpb24tY29uZmlndXJhdGlvbnMvbW9kZWxzJztcclxuaW1wb3J0IHsgQ29uZmlnU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWctc3RhdGUuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvblNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlKSB7fVxyXG5cclxuICBnZXRHcmFudGVkUG9saWN5JChrZXk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0U3RyZWFtKCkucGlwZShcclxuICAgICAgbWFwKGdyYW50ZWRQb2xpY2llcyA9PiB0aGlzLmlzUG9saWN5R3JhbnRlZChrZXksIGdyYW50ZWRQb2xpY2llcykpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEdyYW50ZWRQb2xpY3koa2V5OiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcclxuICAgIGNvbnN0IHBvbGljaWVzID0gdGhpcy5nZXRTbmFwc2hvdCgpO1xyXG4gICAgcmV0dXJuIHRoaXMuaXNQb2xpY3lHcmFudGVkKGtleSwgcG9saWNpZXMpO1xyXG4gIH1cclxuXHJcbiAgZmlsdGVySXRlbXNCeVBvbGljeTxUIGV4dGVuZHMgQUJQLkhhc1BvbGljeT4oaXRlbXM6IEFycmF5PFQ+KSB7XHJcbiAgICBjb25zdCBwb2xpY2llcyA9IHRoaXMuZ2V0U25hcHNob3QoKTtcclxuICAgIHJldHVybiBpdGVtcy5maWx0ZXIoXHJcbiAgICAgIGl0ZW0gPT4gIWl0ZW0ucmVxdWlyZWRQb2xpY3kgfHwgdGhpcy5pc1BvbGljeUdyYW50ZWQoaXRlbS5yZXF1aXJlZFBvbGljeSwgcG9saWNpZXMpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGZpbHRlckl0ZW1zQnlQb2xpY3kkPFQgZXh0ZW5kcyBBQlAuSGFzUG9saWN5PihpdGVtczogQXJyYXk8VD4pIHtcclxuICAgIHJldHVybiB0aGlzLmdldFN0cmVhbSgpLnBpcGUoXHJcbiAgICAgIG1hcChwb2xpY2llcyA9PlxyXG4gICAgICAgIGl0ZW1zLmZpbHRlcihcclxuICAgICAgICAgIGl0ZW0gPT4gIWl0ZW0ucmVxdWlyZWRQb2xpY3kgfHwgdGhpcy5pc1BvbGljeUdyYW50ZWQoaXRlbS5yZXF1aXJlZFBvbGljeSwgcG9saWNpZXMpLFxyXG4gICAgICAgICksXHJcbiAgICAgICksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGlzUG9saWN5R3JhbnRlZChrZXk6IHN0cmluZyB8IHVuZGVmaW5lZCwgZ3JhbnRlZFBvbGljaWVzOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPikge1xyXG4gICAgaWYgKCFrZXkpIHJldHVybiB0cnVlO1xyXG5cclxuICAgIGNvbnN0IG9yUmVnZXhwID0gL1xcfFxcfC9nO1xyXG4gICAgY29uc3QgYW5kUmVnZXhwID0gLyYmL2c7XHJcblxyXG4gICAgLy8gVE9ETzogQWxsb3cgY29tYmluYXRpb24gb2YgQU5EcyAmIE9Sc1xyXG4gICAgaWYgKG9yUmVnZXhwLnRlc3Qoa2V5KSkge1xyXG4gICAgICBjb25zdCBrZXlzID0ga2V5LnNwbGl0KCd8fCcpLmZpbHRlcihCb29sZWFuKTtcclxuXHJcbiAgICAgIGlmIChrZXlzLmxlbmd0aCA8IDIpIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICAgIHJldHVybiBrZXlzLnNvbWUoayA9PiB0aGlzLmdldFBvbGljeShrLnRyaW0oKSwgZ3JhbnRlZFBvbGljaWVzKSk7XHJcbiAgICB9IGVsc2UgaWYgKGFuZFJlZ2V4cC50ZXN0KGtleSkpIHtcclxuICAgICAgY29uc3Qga2V5cyA9IGtleS5zcGxpdCgnJiYnKS5maWx0ZXIoQm9vbGVhbik7XHJcblxyXG4gICAgICBpZiAoa2V5cy5sZW5ndGggPCAyKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICByZXR1cm4ga2V5cy5ldmVyeShrID0+IHRoaXMuZ2V0UG9saWN5KGsudHJpbSgpLCBncmFudGVkUG9saWNpZXMpKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5nZXRQb2xpY3koa2V5LCBncmFudGVkUG9saWNpZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldFN0cmVhbSgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1N0YXRlLmdldEFsbCQoKS5waXBlKG1hcCh0aGlzLm1hcFRvUG9saWNpZXMpKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRTbmFwc2hvdCgpIHtcclxuICAgIHJldHVybiB0aGlzLm1hcFRvUG9saWNpZXModGhpcy5jb25maWdTdGF0ZS5nZXRBbGwoKSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgbWFwVG9Qb2xpY2llcyhhcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb246IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbkR0bykge1xyXG4gICAgcmV0dXJuIGFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbj8uYXV0aD8uZ3JhbnRlZFBvbGljaWVzIHx8IHt9O1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldFBvbGljeShrZXk6IHN0cmluZywgZ3JhbnRlZFBvbGljaWVzOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPikge1xyXG4gICAgcmV0dXJuIGdyYW50ZWRQb2xpY2llc1trZXldIHx8IGZhbHNlO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -39,11 +39,11 @@ export class ReplaceableComponentsService {
|
|
|
39
39
|
get$(replaceableComponentKey) {
|
|
40
40
|
return this.replaceableComponents$.pipe(map(components => components.find(component => component.key === replaceableComponentKey)));
|
|
41
41
|
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
43
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ReplaceableComponentsService, deps: [{ token: i0.NgZone }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
43
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ReplaceableComponentsService, providedIn: 'root' }); }
|
|
44
44
|
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ReplaceableComponentsService, decorators: [{
|
|
46
46
|
type: Injectable,
|
|
47
47
|
args: [{ providedIn: 'root' }]
|
|
48
48
|
}], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.Router }] });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZWFibGUtY29tcG9uZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3JlcGxhY2VhYmxlLWNvbXBvbmVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUduRCxNQUFNLE9BQU8sNEJBQTRCO0lBR3ZDLElBQUksc0JBQXNCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSSxxQkFBcUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxZQUFvQixNQUFjLEVBQVUsTUFBYztRQUF0QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUN4RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksYUFBYSxDQUFDLEVBQWtELENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQsR0FBRyxDQUFDLG9CQUFnRSxFQUFFLE1BQWdCO1FBQ3BGLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFcEQsTUFBTSxLQUFLLEdBQUcscUJBQXFCLENBQUMsU0FBUyxDQUMzQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssb0JBQW9CLENBQUMsR0FBRyxDQUN4RCxDQUFDO1FBRUYsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNmLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxHQUFHLG9CQUFvQixDQUFDO1FBQ3RELENBQUM7YUFBTSxDQUFDO1lBQ04scUJBQXFCLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFdEMsSUFBSSxNQUFNO1lBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxHQUFHLENBQUMsdUJBQStCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEtBQUssdUJBQXVCLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSSxDQUFDLHVCQUErQjtRQUNsQyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQ3JDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxLQUFLLHVCQUF1QixDQUFDLENBQUMsQ0FDM0YsQ0FBQztJQUNKLENBQUM7OEdBN0NVLDRCQUE0QjtrSEFBNUIsNEJBQTRCLGNBRGYsTUFBTTs7MkZBQ25CLDRCQUE0QjtrQkFEeEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFJlcGxhY2VhYmxlQ29tcG9uZW50cyB9IGZyb20gJy4uL21vZGVscy9yZXBsYWNlYWJsZS1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgSW50ZXJuYWxTdG9yZSB9IGZyb20gJy4uL3V0aWxzL2ludGVybmFsLXN0b3JlLXV0aWxzJztcclxuaW1wb3J0IHsgcmVsb2FkUm91dGUgfSBmcm9tICcuLi91dGlscy9yb3V0ZS11dGlscyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgUmVwbGFjZWFibGVDb21wb25lbnRzU2VydmljZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdG9yZTogSW50ZXJuYWxTdG9yZTxSZXBsYWNlYWJsZUNvbXBvbmVudHMuUmVwbGFjZWFibGVDb21wb25lbnRbXT47XHJcblxyXG4gIGdldCByZXBsYWNlYWJsZUNvbXBvbmVudHMkKCk6IE9ic2VydmFibGU8UmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlQ29tcG9uZW50W10+IHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoc3RhdGUgPT4gc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHJlcGxhY2VhYmxlQ29tcG9uZW50cygpOiBSZXBsYWNlYWJsZUNvbXBvbmVudHMuUmVwbGFjZWFibGVDb21wb25lbnRbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZTtcclxuICB9XHJcblxyXG4gIGdldCBvblVwZGF0ZSQoKTogT2JzZXJ2YWJsZTxSZXBsYWNlYWJsZUNvbXBvbmVudHMuUmVwbGFjZWFibGVDb21wb25lbnRbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VVcGRhdGUoc3RhdGUgPT4gc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xyXG4gICAgdGhpcy5zdG9yZSA9IG5ldyBJbnRlcm5hbFN0b3JlKFtdIGFzIFJlcGxhY2VhYmxlQ29tcG9uZW50cy5SZXBsYWNlYWJsZUNvbXBvbmVudFtdKTtcclxuICB9XHJcblxyXG4gIGFkZChyZXBsYWNlYWJsZUNvbXBvbmVudDogUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlQ29tcG9uZW50LCByZWxvYWQ/OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBjb25zdCByZXBsYWNlYWJsZUNvbXBvbmVudHMgPSBbLi4udGhpcy5zdG9yZS5zdGF0ZV07XHJcblxyXG4gICAgY29uc3QgaW5kZXggPSByZXBsYWNlYWJsZUNvbXBvbmVudHMuZmluZEluZGV4KFxyXG4gICAgICBjb21wb25lbnQgPT4gY29tcG9uZW50LmtleSA9PT0gcmVwbGFjZWFibGVDb21wb25lbnQua2V5LFxyXG4gICAgKTtcclxuXHJcbiAgICBpZiAoaW5kZXggPiAtMSkge1xyXG4gICAgICByZXBsYWNlYWJsZUNvbXBvbmVudHNbaW5kZXhdID0gcmVwbGFjZWFibGVDb21wb25lbnQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXBsYWNlYWJsZUNvbXBvbmVudHMucHVzaChyZXBsYWNlYWJsZUNvbXBvbmVudCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdG9yZS5zZXQocmVwbGFjZWFibGVDb21wb25lbnRzKTtcclxuXHJcbiAgICBpZiAocmVsb2FkKSByZWxvYWRSb3V0ZSh0aGlzLnJvdXRlciwgdGhpcy5uZ1pvbmUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0KHJlcGxhY2VhYmxlQ29tcG9uZW50S2V5OiBzdHJpbmcpOiBSZXBsYWNlYWJsZUNvbXBvbmVudHMuUmVwbGFjZWFibGVDb21wb25lbnQgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMucmVwbGFjZWFibGVDb21wb25lbnRzLmZpbmQoY29tcG9uZW50ID0+IGNvbXBvbmVudC5rZXkgPT09IHJlcGxhY2VhYmxlQ29tcG9uZW50S2V5KTtcclxuICB9XHJcblxyXG4gIGdldCQocmVwbGFjZWFibGVDb21wb25lbnRLZXk6IHN0cmluZyk6IE9ic2VydmFibGU8UmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlQ29tcG9uZW50IHwgdW5kZWZpbmVkPiB7XHJcbiAgICByZXR1cm4gdGhpcy5yZXBsYWNlYWJsZUNvbXBvbmVudHMkLnBpcGUoXHJcbiAgICAgIG1hcChjb21wb25lbnRzID0+IGNvbXBvbmVudHMuZmluZChjb21wb25lbnQgPT4gY29tcG9uZW50LmtleSA9PT0gcmVwbGFjZWFibGVDb21wb25lbnRLZXkpKSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -27,10 +27,10 @@ export class ResourceWaitService {
|
|
|
27
27
|
resources.delete(resource);
|
|
28
28
|
this.store.patch({ resources });
|
|
29
29
|
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
31
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ResourceWaitService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
31
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ResourceWaitService, providedIn: 'root' }); }
|
|
32
32
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ResourceWaitService, decorators: [{
|
|
34
34
|
type: Injectable,
|
|
35
35
|
args: [{
|
|
36
36
|
providedIn: 'root',
|
|
@@ -25,7 +25,7 @@ export class RestService {
|
|
|
25
25
|
}
|
|
26
26
|
handleError(err) {
|
|
27
27
|
this.httpErrorReporter.reportError(err);
|
|
28
|
-
return throwError(err);
|
|
28
|
+
return throwError(() => err);
|
|
29
29
|
}
|
|
30
30
|
request(request, config, api) {
|
|
31
31
|
config = config || {};
|
|
@@ -42,7 +42,7 @@ export class RestService {
|
|
|
42
42
|
}),
|
|
43
43
|
...options,
|
|
44
44
|
})
|
|
45
|
-
.pipe(catchError(err => (skipHandleError ? throwError(err) : this.handleError(err))));
|
|
45
|
+
.pipe(catchError(err => (skipHandleError ? throwError(() => err) : this.handleError(err))));
|
|
46
46
|
}
|
|
47
47
|
getHttpClient(isExternal) {
|
|
48
48
|
return isExternal ? this.externalHttp : this.http;
|
|
@@ -63,10 +63,10 @@ export class RestService {
|
|
|
63
63
|
removeDuplicateSlashes(url) {
|
|
64
64
|
return url.replace(/([^:]\/)\/+/g, '$1');
|
|
65
65
|
}
|
|
66
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
67
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RestService, deps: [{ token: CORE_OPTIONS }, { token: i1.HttpClient }, { token: i2.ExternalHttpClient }, { token: i3.EnvironmentService }, { token: i4.HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
67
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RestService, providedIn: 'root' }); }
|
|
68
68
|
}
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RestService, decorators: [{
|
|
70
70
|
type: Injectable,
|
|
71
71
|
args: [{
|
|
72
72
|
providedIn: 'root',
|
|
@@ -75,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImpor
|
|
|
75
75
|
type: Inject,
|
|
76
76
|
args: [CORE_OPTIONS]
|
|
77
77
|
}] }, { type: i1.HttpClient }, { type: i2.ExternalHttpClient }, { type: i3.EnvironmentService }, { type: i4.HttpErrorReporterService }] });
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Jlc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFzQixVQUFVLEVBQWUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUc1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7OztBQUt6RSxNQUFNLE9BQU8sV0FBVztJQUN0QixZQUNrQyxPQUFpQixFQUN2QyxJQUFnQixFQUNoQixZQUFnQyxFQUNoQyxXQUErQixFQUMvQixpQkFBMkM7UUFKckIsWUFBTyxHQUFQLE9BQU8sQ0FBVTtRQUN2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0Isc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtJQUNuRCxDQUFDO0lBRUssZUFBZSxDQUFDLE9BQTJCO1FBQ25ELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJ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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1ldGVyQ29kZWMsIEh0dHBQYXJhbXMsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBFeHRlcm5hbEh0dHBDbGllbnQgfSBmcm9tICcuLi9jbGllbnRzL2h0dHAuY2xpZW50JztcclxuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi4vbW9kZWxzL2NvbW1vbic7XHJcbmltcG9ydCB7IFJlc3QgfSBmcm9tICcuLi9tb2RlbHMvcmVzdCc7XHJcbmltcG9ydCB7IENPUkVfT1BUSU9OUyB9IGZyb20gJy4uL3Rva2Vucy9vcHRpb25zLnRva2VuJztcclxuaW1wb3J0IHsgaXNVbmRlZmluZWRPckVtcHR5U3RyaW5nIH0gZnJvbSAnLi4vdXRpbHMvY29tbW9uLXV0aWxzJztcclxuaW1wb3J0IHsgRW52aXJvbm1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9lbnZpcm9ubWVudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVwb3J0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9odHRwLWVycm9yLXJlcG9ydGVyLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlc3RTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoQ09SRV9PUFRJT05TKSBwcm90ZWN0ZWQgb3B0aW9uczogQUJQLlJvb3QsXHJcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByb3RlY3RlZCBleHRlcm5hbEh0dHA6IEV4dGVybmFsSHR0cENsaWVudCxcclxuICAgIHByb3RlY3RlZCBlbnZpcm9ubWVudDogRW52aXJvbm1lbnRTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGh0dHBFcnJvclJlcG9ydGVyOiBIdHRwRXJyb3JSZXBvcnRlclNlcnZpY2UsXHJcbiAgKSB7IH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldEFwaUZyb21TdG9yZShhcGlOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZW52aXJvbm1lbnQuZ2V0QXBpVXJsKGFwaU5hbWUpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRXJyb3IoZXJyOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgdGhpcy5odHRwRXJyb3JSZXBvcnRlci5yZXBvcnRFcnJvcihlcnIpO1xyXG4gICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyKTtcclxuICB9XHJcblxyXG4gIHJlcXVlc3Q8VCwgUj4oXHJcbiAgICByZXF1ZXN0OiBIdHRwUmVxdWVzdDxUPiB8IFJlc3QuUmVxdWVzdDxUPixcclxuICAgIGNvbmZpZz86IFJlc3QuQ29uZmlnLFxyXG4gICAgYXBpPzogc3RyaW5nLFxyXG4gICk6IE9ic2VydmFibGU8Uj4ge1xyXG4gICAgY29uZmlnID0gY29uZmlnIHx8ICh7fSBhcyBSZXN0LkNvbmZpZyk7XHJcbiAgICBhcGkgPSBhcGkgfHwgdGhpcy5nZXRBcGlGcm9tU3RvcmUoY29uZmlnLmFwaU5hbWUpO1xyXG4gICAgY29uc3QgeyBtZXRob2QsIHBhcmFtcywgLi4ub3B0aW9ucyB9ID0gcmVxdWVzdDtcclxuICAgIGNvbnN0IHsgb2JzZXJ2ZSA9IFJlc3QuT2JzZXJ2ZS5Cb2R5LCBza2lwSGFuZGxlRXJyb3IgfSA9IGNvbmZpZztcclxuICAgIGNvbnN0IHVybCA9IHRoaXMucmVtb3ZlRHVwbGljYXRlU2xhc2hlcyhhcGkgKyByZXF1ZXN0LnVybCk7XHJcblxyXG4gICAgY29uc3QgaHR0cENsaWVudDogSHR0cENsaWVudCA9IHRoaXMuZ2V0SHR0cENsaWVudChjb25maWcuc2tpcEFkZGluZ0hlYWRlcik7XHJcbiAgICByZXR1cm4gaHR0cENsaWVudFxyXG4gICAgICAucmVxdWVzdDxSPihtZXRob2QsIHVybCwge1xyXG4gICAgICAgIG9ic2VydmUsXHJcbiAgICAgICAgLi4uKHBhcmFtcyAmJiB7XHJcbiAgICAgICAgICBwYXJhbXM6IHRoaXMuZ2V0UGFyYW1zKHBhcmFtcywgY29uZmlnLmh0dHBQYXJhbUVuY29kZXIpLFxyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIC4uLm9wdGlvbnMsXHJcbiAgICAgIH0gYXMgYW55KVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKGVyciA9PiAoc2tpcEhhbmRsZUVycm9yID8gdGhyb3dFcnJvcigoKSA9PiBlcnIpIDogdGhpcy5oYW5kbGVFcnJvcihlcnIpKSkpO1xyXG4gIH1cclxuICBwcml2YXRlIGdldEh0dHBDbGllbnQoaXNFeHRlcm5hbDogYm9vbGVhbikge1xyXG4gICAgcmV0dXJuIGlzRXh0ZXJuYWwgPyB0aGlzLmV4dGVybmFsSHR0cCA6IHRoaXMuaHR0cDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UGFyYW1zKHBhcmFtczogUmVzdC5QYXJhbXMsIGVuY29kZXI/OiBIdHRwUGFyYW1ldGVyQ29kZWMpOiBIdHRwUGFyYW1zIHtcclxuICAgIGNvbnN0IGZpbHRlcmVkUGFyYW1zID0gT2JqZWN0LmVudHJpZXMocGFyYW1zKS5yZWR1Y2UoKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgIGlmIChpc1VuZGVmaW5lZE9yRW1wdHlTdHJpbmcodmFsdWUpKSByZXR1cm4gYWNjO1xyXG4gICAgICBpZiAodmFsdWUgPT09IG51bGwgJiYgIXRoaXMub3B0aW9ucy5zZW5kTnVsbHNBc1F1ZXJ5UGFyYW0pIHJldHVybiBhY2M7XHJcbiAgICAgIGFjY1trZXldID0gdmFsdWU7XHJcbiAgICAgIHJldHVybiBhY2M7XHJcbiAgICB9LCB7fSBhcyBhbnkpO1xyXG4gICAgcmV0dXJuIGVuY29kZXJcclxuICAgICAgPyBuZXcgSHR0cFBhcmFtcyh7IGVuY29kZXIsIGZyb21PYmplY3Q6IGZpbHRlcmVkUGFyYW1zIH0pXHJcbiAgICAgIDogbmV3IEh0dHBQYXJhbXMoeyBmcm9tT2JqZWN0OiBmaWx0ZXJlZFBhcmFtcyB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlRHVwbGljYXRlU2xhc2hlcyh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdXJsLnJlcGxhY2UoLyhbXjpdXFwvKVxcLysvZywgJyQxJyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -28,10 +28,10 @@ export class RouterEvents {
|
|
|
28
28
|
const keys = Object.keys(NavigationEvent);
|
|
29
29
|
return this.getNavigationEvents(...keys);
|
|
30
30
|
}
|
|
31
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
32
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RouterEvents, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RouterEvents, providedIn: 'root' }); }
|
|
33
33
|
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RouterEvents, decorators: [{
|
|
35
35
|
type: Injectable,
|
|
36
36
|
args: [{ providedIn: 'root' }]
|
|
37
37
|
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
@@ -39,10 +39,10 @@ export class RouterWaitService {
|
|
|
39
39
|
setLoading(loading) {
|
|
40
40
|
this.store.patch({ loading });
|
|
41
41
|
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
43
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RouterWaitService, deps: [{ token: i1.RouterEvents }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
43
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RouterWaitService, providedIn: 'root' }); }
|
|
44
44
|
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RouterWaitService, decorators: [{
|
|
46
46
|
type: Injectable,
|
|
47
47
|
args: [{
|
|
48
48
|
providedIn: 'root',
|
|
@@ -135,10 +135,10 @@ export class AbstractNavTreeService extends AbstractTreeService {
|
|
|
135
135
|
ngOnDestroy() {
|
|
136
136
|
this.subscription.unsubscribe();
|
|
137
137
|
}
|
|
138
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
139
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
138
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AbstractNavTreeService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
139
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AbstractNavTreeService }); }
|
|
140
140
|
}
|
|
141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
141
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: AbstractNavTreeService, decorators: [{
|
|
142
142
|
type: Injectable
|
|
143
143
|
}], ctorParameters: () => [{ type: i0.Injector }] });
|
|
144
144
|
export class RoutesService extends AbstractNavTreeService {
|
|
@@ -151,11 +151,11 @@ export class RoutesService extends AbstractNavTreeService {
|
|
|
151
151
|
get groupedVisible$() {
|
|
152
152
|
return this.visible$.pipe(map(items => items.filter(item => this.hasPathOrChild(item))), map(visible => this.createGroupedTree(visible)));
|
|
153
153
|
}
|
|
154
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
155
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
154
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RoutesService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
155
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RoutesService, providedIn: 'root' }); }
|
|
156
156
|
}
|
|
157
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
157
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: RoutesService, decorators: [{
|
|
158
158
|
type: Injectable,
|
|
159
159
|
args: [{ providedIn: 'root' }]
|
|
160
160
|
}] });
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvcm91dGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBNEIsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXRFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFDTCxZQUFZLEVBQ1osa0JBQWtCLEVBR2xCLGNBQWMsR0FDZixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUVqRSx3REFBd0Q7QUFDeEQsTUFBTSxPQUFnQixtQkFBbUI7SUFBekM7UUFNVSxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQU0sRUFBRSxDQUFDLENBQUM7UUFDdEMsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFFLENBQUMsQ0FBQztRQUNoRCxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBK0g3RCxDQUFDO0lBM0hDLElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04s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dEIsc0JBQXNCO2tCQUQzQyxVQUFVOztBQStDWCxNQUFNLE9BQU8sYUFBYyxTQUFRLHNCQUFpQztJQUMxRCxjQUFjLENBQUMsSUFBeUI7UUFDOUMsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDN0QsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQ2hELENBQUM7SUFDSixDQUFDOzhHQWRVLGFBQWE7a0hBQWIsYUFBYSxjQURBLE1BQU07OzJGQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIG1hcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcclxuaW1wb3J0IHsgT1RIRVJTX0dST1VQIH0gZnJvbSAnLi4vdG9rZW5zJztcclxuaW1wb3J0IHsgcHVzaFZhbHVlVG8gfSBmcm9tICcuLi91dGlscy9hcnJheS11dGlscyc7XHJcbmltcG9ydCB7XHJcbiAgQmFzZVRyZWVOb2RlLFxyXG4gIGNyZWF0ZVRyZWVGcm9tTGlzdCxcclxuICBUcmVlTm9kZSxcclxuICBSb3V0ZUdyb3VwLFxyXG4gIGNyZWF0ZUdyb3VwTWFwLFxyXG59IGZyb20gJy4uL3V0aWxzL3RyZWUtdXRpbHMnO1xyXG5pbXBvcnQgeyBDb25maWdTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy1zdGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuL3Blcm1pc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFNPUlRfQ09NUEFSRV9GVU5DIH0gZnJvbSAnLi4vdG9rZW5zL2NvbXBhcmUtZnVuYy50b2tlbic7XHJcblxyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RUcmVlU2VydmljZTxUIGV4dGVuZHMgeyBba2V5OiBzdHJpbmcgfCBudW1iZXIgfCBzeW1ib2xdOiBhbnkgfT4ge1xyXG4gIGFic3RyYWN0IGlkOiBzdHJpbmc7XHJcbiAgYWJzdHJhY3QgcGFyZW50SWQ6IHN0cmluZztcclxuICBhYnN0cmFjdCBoaWRlOiAoaXRlbTogVCkgPT4gYm9vbGVhbjtcclxuICBhYnN0cmFjdCBzb3J0OiAoYTogVCwgYjogVCkgPT4gbnVtYmVyO1xyXG5cclxuICBwcml2YXRlIF9mbGF0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VFtdPihbXSk7XHJcbiAgcHJpdmF0ZSBfdHJlZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRyZWVOb2RlPFQ+W10+KFtdKTtcclxuICBwcml2YXRlIF92aXNpYmxlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VHJlZU5vZGU8VD5bXT4oW10pO1xyXG5cclxuICBwcm90ZWN0ZWQgb3RoZXJzR3JvdXA6IHN0cmluZztcclxuXHJcbiAgZ2V0IGZsYXQoKTogVFtdIHtcclxuICAgIHJldHVybiB0aGlzLl9mbGF0JC52YWx1ZTtcclxuICB9XHJcblxyXG4gIGdldCBmbGF0JCgpOiBPYnNlcnZhYmxlPFRbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZsYXQkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHRyZWUoKTogVHJlZU5vZGU8VD5bXSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJlZSQudmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXQgdHJlZSQoKTogT2JzZXJ2YWJsZTxUcmVlTm9kZTxUPltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHJlZSQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgdmlzaWJsZSgpOiBUcmVlTm9kZTxUPltdIHtcclxuICAgIHJldHVybiB0aGlzLl92aXNpYmxlJC52YWx1ZTtcclxuICB9XHJcblxyXG4gIGdldCB2aXNpYmxlJCgpOiBPYnNlcnZhYmxlPFRyZWVOb2RlPFQ+W10+IHtcclxuICAgIHJldHVybiB0aGlzLl92aXNpYmxlJC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjcmVhdGVUcmVlKGl0ZW1zOiBUW10pOiBUcmVlTm9kZTxUPltdIHtcclxuICAgIHJldHVybiBjcmVhdGVUcmVlRnJvbUxpc3Q8VCwgVHJlZU5vZGU8VD4+KFxyXG4gICAgICBpdGVtcyxcclxuICAgICAgaXRlbSA9PiBpdGVtW3RoaXMuaWRdLFxyXG4gICAgICBpdGVtID0+IGl0ZW1bdGhpcy5wYXJlbnRJZF0sXHJcbiAgICAgIGl0ZW0gPT4gQmFzZVRyZWVOb2RlLmNyZWF0ZShpdGVtKSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgY3JlYXRlR3JvdXBlZFRyZWUobGlzdDogVHJlZU5vZGU8VD5bXSk6IFJvdXRlR3JvdXA8VD5bXSB8IHVuZGVmaW5lZCB7XHJcbiAgICBjb25zdCBtYXAgPSBjcmVhdGVHcm91cE1hcDxUPihsaXN0LCB0aGlzLm90aGVyc0dyb3VwKTtcclxuICAgIGlmICghbWFwKSB7XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIEFycmF5LmZyb20obWFwLCAoW2tleSwgaXRlbXNdKSA9PiAoeyBncm91cDoga2V5LCBpdGVtcyB9KSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbHRlcldpdGgoc2V0T3JNYXA6IFNldDxzdHJpbmc+IHwgTWFwPHN0cmluZywgVD4pOiBUW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZsYXQkLnZhbHVlLmZpbHRlcihpdGVtID0+ICFzZXRPck1hcC5oYXMoaXRlbVt0aGlzLmlkXSkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kSXRlbXNUb1JlbW92ZShzZXQ6IFNldDxzdHJpbmc+KTogU2V0PHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZsYXQkLnZhbHVlLnJlZHVjZSgoYWNjLCBpdGVtKSA9PiB7XHJcbiAgICAgIGlmICghYWNjLmhhcyhpdGVtW3RoaXMucGFyZW50SWRdKSkgcmV0dXJuIGFjYztcclxuICAgICAgY29uc3QgY2hpbGRTZXQgPSBuZXcgU2V0KFtpdGVtW3RoaXMuaWRdXSk7XHJcbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gdGhpcy5maW5kSXRlbXNUb1JlbW92ZShjaGlsZFNldCk7XHJcbiAgICAgIHJldHVybiBuZXcgU2V0KFsuLi5hY2MsIC4uLmNoaWxkcmVuXSk7XHJcbiAgICB9LCBzZXQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwdWJsaXNoKGZsYXRJdGVtczogVFtdLCB2aXNpYmxlSXRlbXM6IFRbXSk6IFRbXSB7XHJcbiAgICB0aGlzLl9mbGF0JC5uZXh0KGZsYXRJdGVtcyk7XHJcbiAgICB0aGlzLl90cmVlJC5uZXh0KHRoaXMuY3JlYXRlVHJlZShmbGF0SXRlbXMpKTtcclxuICAgIHRoaXMuX3Zpc2libGUkLm5leHQodGhpcy5jcmVhdGVUcmVlKHZpc2libGVJdGVtcykpO1xyXG4gICAgcmV0dXJuIGZsYXRJdGVtcztcclxuICB9XHJcblxyXG4gIGFkZChpdGVtczogVFtdKTogVFtdIHtcclxuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCBUPigpO1xyXG4gICAgaXRlbXMuZm9yRWFjaChpdGVtID0+IG1hcC5zZXQoaXRlbVt0aGlzLmlkXSwgaXRlbSkpO1xyXG5cclxuICAgIGNvbnN0IGZsYXRJdGVtcyA9IHRoaXMuZmlsdGVyV2l0aChtYXApO1xyXG4gICAgbWFwLmZvckVhY2gocHVzaFZhbHVlVG8oZmxhdEl0ZW1zKSk7XHJcblxyXG4gICAgZmxhdEl0ZW1zLnNvcnQodGhpcy5zb3J0KTtcclxuICAgIGNvbnN0IHZpc2libGVJdGVtcyA9IGZsYXRJdGVtcy5maWx0ZXIoaXRlbSA9PiAhdGhpcy5oaWRlKGl0ZW0pKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5wdWJsaXNoKGZsYXRJdGVtcywgdmlzaWJsZUl0ZW1zKTtcclxuICB9XHJcblxyXG4gIGZpbmQocHJlZGljYXRlOiAoaXRlbTogVHJlZU5vZGU8VD4pID0+IGJvb2xlYW4sIHRyZWUgPSB0aGlzLnRyZWUpOiBUcmVlTm9kZTxUPiB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRyZWUucmVkdWNlPFRyZWVOb2RlPFQ+IHwgbnVsbD4oXHJcbiAgICAgIChhY2MsIG5vZGUpID0+IChhY2MgPyBhY2MgOiBwcmVkaWNhdGUobm9kZSkgPyBub2RlIDogdGhpcy5maW5kKHByZWRpY2F0ZSwgbm9kZS5jaGlsZHJlbikpLFxyXG4gICAgICBudWxsLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHBhdGNoKGlkZW50aWZpZXI6IHN0cmluZywgcHJvcHM6IFBhcnRpYWw8VD4pOiBUW10gfCBmYWxzZSB7XHJcbiAgICBjb25zdCBmbGF0SXRlbXMgPSB0aGlzLl9mbGF0JC52YWx1ZTtcclxuICAgIGNvbnN0IGluZGV4ID0gZmxhdEl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW1bdGhpcy5pZF0gPT09IGlkZW50aWZpZXIpO1xyXG4gICAgaWYgKGluZGV4IDwgMCkgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGZsYXRJdGVtc1tpbmRleF0gPSB7IC4uLmZsYXRJdGVtc1tpbmRleF0sIC4uLnByb3BzIH07XHJcblxyXG4gICAgZmxhdEl0ZW1zLnNvcnQodGhpcy5zb3J0KTtcclxuICAgIGNvbnN0IHZpc2libGVJdGVtcyA9IGZsYXRJdGVtcy5maWx0ZXIoaXRlbSA9PiAhdGhpcy5oaWRlKGl0ZW0pKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5wdWJsaXNoKGZsYXRJdGVtcywgdmlzaWJsZUl0ZW1zKTtcclxuICB9XHJcblxyXG4gIHJlZnJlc2goKTogVFtdIHtcclxuICAgIHJldHVybiB0aGlzLmFkZChbXSk7XHJcbiAgfVxyXG5cclxuICByZW1vdmUoaWRlbnRpZmllcnM6IHN0cmluZ1tdKTogVFtdIHtcclxuICAgIGNvbnN0IHNldCA9IG5ldyBTZXQ8c3RyaW5nPigpO1xyXG4gICAgaWRlbnRpZmllcnMuZm9yRWFjaChpZCA9PiBzZXQuYWRkKGlkKSk7XHJcblxyXG4gICAgY29uc3Qgc2V0VG9SZW1vdmUgPSB0aGlzLmZpbmRJdGVtc1RvUmVtb3ZlKHNldCk7XHJcbiAgICBjb25zdCBmbGF0SXRlbXMgPSB0aGlzLmZpbHRlcldpdGgoc2V0VG9SZW1vdmUpO1xyXG4gICAgY29uc3QgdmlzaWJsZUl0ZW1zID0gZmxhdEl0ZW1zLmZpbHRlcihpdGVtID0+ICF0aGlzLmhpZGUoaXRlbSkpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLnB1Ymxpc2goZmxhdEl0ZW1zLCB2aXNpYmxlSXRlbXMpO1xyXG4gIH1cclxuXHJcbiAgc2VhcmNoKHBhcmFtczogUGFydGlhbDxUPiwgdHJlZSA9IHRoaXMudHJlZSk6IFRyZWVOb2RlPFQ+IHwgbnVsbCB7XHJcbiAgICBjb25zdCBzZWFyY2hLZXlzID0gT2JqZWN0LmtleXMocGFyYW1zKSBhcyBBcnJheTxrZXlvZiBQYXJ0aWFsPFQ+PjtcclxuXHJcbiAgICByZXR1cm4gdHJlZS5yZWR1Y2U8VHJlZU5vZGU8VD4gfCBudWxsPihcclxuICAgICAgKGFjYywgbm9kZSkgPT5cclxuICAgICAgICBhY2NcclxuICAgICAgICAgID8gYWNjXHJcbiAgICAgICAgICA6IHNlYXJjaEtleXMuZXZlcnkoa2V5ID0+IG5vZGVba2V5XSA9PT0gcGFyYW1zW2tleV0pXHJcbiAgICAgICAgICA/IG5vZGVcclxuICAgICAgICAgIDogdGhpcy5zZWFyY2gocGFyYW1zLCBub2RlLmNoaWxkcmVuKSxcclxuICAgICAgbnVsbCxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdE5hdlRyZWVTZXJ2aWNlPFQgZXh0ZW5kcyBBQlAuTmF2PlxyXG4gIGV4dGVuZHMgQWJzdHJhY3RUcmVlU2VydmljZTxUPlxyXG4gIGltcGxlbWVudHMgT25EZXN0cm95XHJcbntcclxuICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgcGVybWlzc2lvblNlcnZpY2U6IFBlcm1pc3Npb25TZXJ2aWNlO1xyXG4gIHByaXZhdGUgY29tcGFyZUZ1bmM7XHJcbiAgcmVhZG9ubHkgaWQgPSAnbmFtZSc7XHJcbiAgcmVhZG9ubHkgcGFyZW50SWQgPSAncGFyZW50TmFtZSc7XHJcbiAgcmVhZG9ubHkgaGlkZSA9IChpdGVtOiBUKSA9PiBpdGVtLmludmlzaWJsZSB8fCAhdGhpcy5pc0dyYW50ZWQoaXRlbSk7XHJcbiAgcmVhZG9ubHkgc29ydCA9IChhOiBULCBiOiBUKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21wYXJlRnVuYyhhLGIpXHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIGNvbnN0IGNvbmZpZ1N0YXRlID0gdGhpcy5pbmplY3Rvci5nZXQoQ29uZmlnU3RhdGVTZXJ2aWNlKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gY29uZmlnU3RhdGVcclxuICAgICAgLmNyZWF0ZU9uVXBkYXRlU3RyZWFtKHN0YXRlID0+IHN0YXRlKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVmcmVzaCgpKTtcclxuICAgIHRoaXMucGVybWlzc2lvblNlcnZpY2UgPSBpbmplY3Rvci5nZXQoUGVybWlzc2lvblNlcnZpY2UpO1xyXG4gICAgdGhpcy5vdGhlcnNHcm91cCA9IGluamVjdG9yLmdldChPVEhFUlNfR1JPVVApO1xyXG4gICAgdGhpcy5jb21wYXJlRnVuYyA9IGluamVjdG9yLmdldChTT1JUX0NPTVBBUkVfRlVOQyk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgaXNHcmFudGVkKHsgcmVxdWlyZWRQb2xpY3kgfTogVCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvblNlcnZpY2UuZ2V0R3JhbnRlZFBvbGljeShyZXF1aXJlZFBvbGljeSk7XHJcbiAgfVxyXG5cclxuICBoYXNDaGlsZHJlbihpZGVudGlmaWVyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG5vZGUgPSB0aGlzLmZpbmQoaXRlbSA9PiBpdGVtW3RoaXMuaWRdID09PSBpZGVudGlmaWVyKTtcclxuICAgIHJldHVybiBCb29sZWFuKG5vZGU/LmNoaWxkcmVuPy5sZW5ndGgpO1xyXG4gIH1cclxuXHJcbiAgaGFzSW52aXNpYmxlQ2hpbGQoaWRlbnRpZmllcjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBub2RlID0gdGhpcy5maW5kKGl0ZW0gPT4gaXRlbVt0aGlzLmlkXSA9PT0gaWRlbnRpZmllcik7XHJcbiAgICByZXR1cm4gbm9kZT8uY2hpbGRyZW4/LnNvbWUoY2hpbGQgPT4gY2hpbGQuaW52aXNpYmxlKSB8fCBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFJvdXRlc1NlcnZpY2UgZXh0ZW5kcyBBYnN0cmFjdE5hdlRyZWVTZXJ2aWNlPEFCUC5Sb3V0ZT4ge1xyXG4gIHByaXZhdGUgaGFzUGF0aE9yQ2hpbGQoaXRlbTogVHJlZU5vZGU8QUJQLlJvdXRlPik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIEJvb2xlYW4oaXRlbS5wYXRoKSB8fCB0aGlzLmhhc0NoaWxkcmVuKGl0ZW0ubmFtZSk7XHJcbiAgfVxyXG5cclxuICBnZXQgZ3JvdXBlZFZpc2libGUoKTogUm91dGVHcm91cDxBQlAuUm91dGU+W10gfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlR3JvdXBlZFRyZWUodGhpcy52aXNpYmxlLmZpbHRlcihpdGVtID0+IHRoaXMuaGFzUGF0aE9yQ2hpbGQoaXRlbSkpKTtcclxuICB9XHJcblxyXG4gIGdldCBncm91cGVkVmlzaWJsZSQoKTogT2JzZXJ2YWJsZTxSb3V0ZUdyb3VwPEFCUC5Sb3V0ZT5bXSB8IHVuZGVmaW5lZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZSQucGlwZShcclxuICAgICAgbWFwKGl0ZW1zID0+IGl0ZW1zLmZpbHRlcihpdGVtID0+IHRoaXMuaGFzUGF0aE9yQ2hpbGQoaXRlbSkpKSxcclxuICAgICAgbWFwKHZpc2libGUgPT4gdGhpcy5jcmVhdGVHcm91cGVkVHJlZSh2aXNpYmxlKSksXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
161
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvcm91dGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBNEIsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXRFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFDTCxZQUFZLEVBQ1osa0JBQWtCLEVBR2xCLGNBQWMsR0FDZixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUVqRSx3REFBd0Q7QUFDeEQsTUFBTSxPQUFnQixtQkFBbUI7SUFBekM7UUFNVSxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQU0sRUFBRSxDQUFDLENBQUM7UUFDdEMsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFnQixFQUFFLENBQUMsQ0FBQztRQUNoRCxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBK0g3RCxDQUFDO0lBM0hDLElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04s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QUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFEM0MsVUFBVTs7QUErQ1gsTUFBTSxPQUFPLGFBQWMsU0FBUSxzQkFBaUM7SUFDMUQsY0FBYyxDQUFDLElBQXlCO1FBQzlDLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUN2QixHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQzdELEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUNoRCxDQUFDO0lBQ0osQ0FBQzs4R0FkVSxhQUFhO2tIQUFiLGFBQWEsY0FEQSxNQUFNOzsyRkFDbkIsYUFBYTtrQkFEekIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCBtYXAgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi4vbW9kZWxzL2NvbW1vbic7XHJcbmltcG9ydCB7IE9USEVSU19HUk9VUCB9IGZyb20gJy4uL3Rva2Vucyc7XHJcbmltcG9ydCB7IHB1c2hWYWx1ZVRvIH0gZnJvbSAnLi4vdXRpbHMvYXJyYXktdXRpbHMnO1xyXG5pbXBvcnQge1xyXG4gIEJhc2VUcmVlTm9kZSxcclxuICBjcmVhdGVUcmVlRnJvbUxpc3QsXHJcbiAgVHJlZU5vZGUsXHJcbiAgUm91dGVHcm91cCxcclxuICBjcmVhdGVHcm91cE1hcCxcclxufSBmcm9tICcuLi91dGlscy90cmVlLXV0aWxzJztcclxuaW1wb3J0IHsgQ29uZmlnU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWctc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9wZXJtaXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTT1JUX0NPTVBBUkVfRlVOQyB9IGZyb20gJy4uL3Rva2Vucy9jb21wYXJlLWZ1bmMudG9rZW4nO1xyXG5cclxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHlwZXNcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VHJlZVNlcnZpY2U8VCBleHRlbmRzIHsgW2tleTogc3RyaW5nIHwgbnVtYmVyIHwgc3ltYm9sXTogYW55IH0+IHtcclxuICBhYnN0cmFjdCBpZDogc3RyaW5nO1xyXG4gIGFic3RyYWN0IHBhcmVudElkOiBzdHJpbmc7XHJcbiAgYWJzdHJhY3QgaGlkZTogKGl0ZW06IFQpID0+IGJvb2xlYW47XHJcbiAgYWJzdHJhY3Qgc29ydDogKGE6IFQsIGI6IFQpID0+IG51bWJlcjtcclxuXHJcbiAgcHJpdmF0ZSBfZmxhdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRbXT4oW10pO1xyXG4gIHByaXZhdGUgX3RyZWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUcmVlTm9kZTxUPltdPihbXSk7XHJcbiAgcHJpdmF0ZSBfdmlzaWJsZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRyZWVOb2RlPFQ+W10+KFtdKTtcclxuXHJcbiAgcHJvdGVjdGVkIG90aGVyc0dyb3VwOiBzdHJpbmc7XHJcblxyXG4gIGdldCBmbGF0KCk6IFRbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmxhdCQudmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXQgZmxhdCQoKTogT2JzZXJ2YWJsZTxUW10+IHtcclxuICAgIHJldHVybiB0aGlzLl9mbGF0JC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIGdldCB0cmVlKCk6IFRyZWVOb2RlPFQ+W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyZWUkLnZhbHVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHRyZWUkKCk6IE9ic2VydmFibGU8VHJlZU5vZGU8VD5bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RyZWUkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHZpc2libGUoKTogVHJlZU5vZGU8VD5bXSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQudmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXQgdmlzaWJsZSQoKTogT2JzZXJ2YWJsZTxUcmVlTm9kZTxUPltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgY3JlYXRlVHJlZShpdGVtczogVFtdKTogVHJlZU5vZGU8VD5bXSB7XHJcbiAgICByZXR1cm4gY3JlYXRlVHJlZUZyb21MaXN0PFQsIFRyZWVOb2RlPFQ+PihcclxuICAgICAgaXRlbXMsXHJcbiAgICAgIGl0ZW0gPT4gaXRlbVt0aGlzLmlkXSxcclxuICAgICAgaXRlbSA9PiBpdGVtW3RoaXMucGFyZW50SWRdLFxyXG4gICAgICBpdGVtID0+IEJhc2VUcmVlTm9kZS5jcmVhdGUoaXRlbSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGNyZWF0ZUdyb3VwZWRUcmVlKGxpc3Q6IFRyZWVOb2RlPFQ+W10pOiBSb3V0ZUdyb3VwPFQ+W10gfCB1bmRlZmluZWQge1xyXG4gICAgY29uc3QgbWFwID0gY3JlYXRlR3JvdXBNYXA8VD4obGlzdCwgdGhpcy5vdGhlcnNHcm91cCk7XHJcbiAgICBpZiAoIW1hcCkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBBcnJheS5mcm9tKG1hcCwgKFtrZXksIGl0ZW1zXSkgPT4gKHsgZ3JvdXA6IGtleSwgaXRlbXMgfSkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaWx0ZXJXaXRoKHNldE9yTWFwOiBTZXQ8c3RyaW5nPiB8IE1hcDxzdHJpbmcsIFQ+KTogVFtdIHtcclxuICAgIHJldHVybiB0aGlzLl9mbGF0JC52YWx1ZS5maWx0ZXIoaXRlbSA9PiAhc2V0T3JNYXAuaGFzKGl0ZW1bdGhpcy5pZF0pKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZEl0ZW1zVG9SZW1vdmUoc2V0OiBTZXQ8c3RyaW5nPik6IFNldDxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLl9mbGF0JC52YWx1ZS5yZWR1Y2UoKGFjYywgaXRlbSkgPT4ge1xyXG4gICAgICBpZiAoIWFjYy5oYXMoaXRlbVt0aGlzLnBhcmVudElkXSkpIHJldHVybiBhY2M7XHJcbiAgICAgIGNvbnN0IGNoaWxkU2V0ID0gbmV3IFNldChbaXRlbVt0aGlzLmlkXV0pO1xyXG4gICAgICBjb25zdCBjaGlsZHJlbiA9IHRoaXMuZmluZEl0ZW1zVG9SZW1vdmUoY2hpbGRTZXQpO1xyXG4gICAgICByZXR1cm4gbmV3IFNldChbLi4uYWNjLCAuLi5jaGlsZHJlbl0pO1xyXG4gICAgfSwgc2V0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHVibGlzaChmbGF0SXRlbXM6IFRbXSwgdmlzaWJsZUl0ZW1zOiBUW10pOiBUW10ge1xyXG4gICAgdGhpcy5fZmxhdCQubmV4dChmbGF0SXRlbXMpO1xyXG4gICAgdGhpcy5fdHJlZSQubmV4dCh0aGlzLmNyZWF0ZVRyZWUoZmxhdEl0ZW1zKSk7XHJcbiAgICB0aGlzLl92aXNpYmxlJC5uZXh0KHRoaXMuY3JlYXRlVHJlZSh2aXNpYmxlSXRlbXMpKTtcclxuICAgIHJldHVybiBmbGF0SXRlbXM7XHJcbiAgfVxyXG5cclxuICBhZGQoaXRlbXM6IFRbXSk6IFRbXSB7XHJcbiAgICBjb25zdCBtYXAgPSBuZXcgTWFwPHN0cmluZywgVD4oKTtcclxuICAgIGl0ZW1zLmZvckVhY2goaXRlbSA9PiBtYXAuc2V0KGl0ZW1bdGhpcy5pZF0sIGl0ZW0pKTtcclxuXHJcbiAgICBjb25zdCBmbGF0SXRlbXMgPSB0aGlzLmZpbHRlcldpdGgobWFwKTtcclxuICAgIG1hcC5mb3JFYWNoKHB1c2hWYWx1ZVRvKGZsYXRJdGVtcykpO1xyXG5cclxuICAgIGZsYXRJdGVtcy5zb3J0KHRoaXMuc29ydCk7XHJcbiAgICBjb25zdCB2aXNpYmxlSXRlbXMgPSBmbGF0SXRlbXMuZmlsdGVyKGl0ZW0gPT4gIXRoaXMuaGlkZShpdGVtKSk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucHVibGlzaChmbGF0SXRlbXMsIHZpc2libGVJdGVtcyk7XHJcbiAgfVxyXG5cclxuICBmaW5kKHByZWRpY2F0ZTogKGl0ZW06IFRyZWVOb2RlPFQ+KSA9PiBib29sZWFuLCB0cmVlID0gdGhpcy50cmVlKTogVHJlZU5vZGU8VD4gfCBudWxsIHtcclxuICAgIHJldHVybiB0cmVlLnJlZHVjZTxUcmVlTm9kZTxUPiB8IG51bGw+KFxyXG4gICAgICAoYWNjLCBub2RlKSA9PiAoYWNjID8gYWNjIDogcHJlZGljYXRlKG5vZGUpID8gbm9kZSA6IHRoaXMuZmluZChwcmVkaWNhdGUsIG5vZGUuY2hpbGRyZW4pKSxcclxuICAgICAgbnVsbCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwYXRjaChpZGVudGlmaWVyOiBzdHJpbmcsIHByb3BzOiBQYXJ0aWFsPFQ+KTogVFtdIHwgZmFsc2Uge1xyXG4gICAgY29uc3QgZmxhdEl0ZW1zID0gdGhpcy5fZmxhdCQudmFsdWU7XHJcbiAgICBjb25zdCBpbmRleCA9IGZsYXRJdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtW3RoaXMuaWRdID09PSBpZGVudGlmaWVyKTtcclxuICAgIGlmIChpbmRleCA8IDApIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICBmbGF0SXRlbXNbaW5kZXhdID0geyAuLi5mbGF0SXRlbXNbaW5kZXhdLCAuLi5wcm9wcyB9O1xyXG5cclxuICAgIGZsYXRJdGVtcy5zb3J0KHRoaXMuc29ydCk7XHJcbiAgICBjb25zdCB2aXNpYmxlSXRlbXMgPSBmbGF0SXRlbXMuZmlsdGVyKGl0ZW0gPT4gIXRoaXMuaGlkZShpdGVtKSk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucHVibGlzaChmbGF0SXRlbXMsIHZpc2libGVJdGVtcyk7XHJcbiAgfVxyXG5cclxuICByZWZyZXNoKCk6IFRbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5hZGQoW10pO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlKGlkZW50aWZpZXJzOiBzdHJpbmdbXSk6IFRbXSB7XHJcbiAgICBjb25zdCBzZXQgPSBuZXcgU2V0PHN0cmluZz4oKTtcclxuICAgIGlkZW50aWZpZXJzLmZvckVhY2goaWQgPT4gc2V0LmFkZChpZCkpO1xyXG5cclxuICAgIGNvbnN0IHNldFRvUmVtb3ZlID0gdGhpcy5maW5kSXRlbXNUb1JlbW92ZShzZXQpO1xyXG4gICAgY29uc3QgZmxhdEl0ZW1zID0gdGhpcy5maWx0ZXJXaXRoKHNldFRvUmVtb3ZlKTtcclxuICAgIGNvbnN0IHZpc2libGVJdGVtcyA9IGZsYXRJdGVtcy5maWx0ZXIoaXRlbSA9PiAhdGhpcy5oaWRlKGl0ZW0pKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5wdWJsaXNoKGZsYXRJdGVtcywgdmlzaWJsZUl0ZW1zKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaChwYXJhbXM6IFBhcnRpYWw8VD4sIHRyZWUgPSB0aGlzLnRyZWUpOiBUcmVlTm9kZTxUPiB8IG51bGwge1xyXG4gICAgY29uc3Qgc2VhcmNoS2V5cyA9IE9iamVjdC5rZXlzKHBhcmFtcykgYXMgQXJyYXk8a2V5b2YgUGFydGlhbDxUPj47XHJcblxyXG4gICAgcmV0dXJuIHRyZWUucmVkdWNlPFRyZWVOb2RlPFQ+IHwgbnVsbD4oXHJcbiAgICAgIChhY2MsIG5vZGUpID0+XHJcbiAgICAgICAgYWNjXHJcbiAgICAgICAgICA/IGFjY1xyXG4gICAgICAgICAgOiBzZWFyY2hLZXlzLmV2ZXJ5KGtleSA9PiBub2RlW2tleV0gPT09IHBhcmFtc1trZXldKVxyXG4gICAgICAgICAgPyBub2RlXHJcbiAgICAgICAgICA6IHRoaXMuc2VhcmNoKHBhcmFtcywgbm9kZS5jaGlsZHJlbiksXHJcbiAgICAgIG51bGwsXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3ROYXZUcmVlU2VydmljZTxUIGV4dGVuZHMgQUJQLk5hdj5cclxuICBleHRlbmRzIEFic3RyYWN0VHJlZVNlcnZpY2U8VD5cclxuICBpbXBsZW1lbnRzIE9uRGVzdHJveVxyXG57XHJcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIHBlcm1pc3Npb25TZXJ2aWNlOiBQZXJtaXNzaW9uU2VydmljZTtcclxuICBwcml2YXRlIGNvbXBhcmVGdW5jO1xyXG4gIHJlYWRvbmx5IGlkID0gJ25hbWUnO1xyXG4gIHJlYWRvbmx5IHBhcmVudElkID0gJ3BhcmVudE5hbWUnO1xyXG4gIHJlYWRvbmx5IGhpZGUgPSAoaXRlbTogVCkgPT4gaXRlbS5pbnZpc2libGUgfHwgIXRoaXMuaXNHcmFudGVkKGl0ZW0pO1xyXG4gIHJlYWRvbmx5IHNvcnQgPSAoYTogVCwgYjogVCkgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcGFyZUZ1bmMoYSxiKVxyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICBjb25zdCBjb25maWdTdGF0ZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KENvbmZpZ1N0YXRlU2VydmljZSk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IGNvbmZpZ1N0YXRlXHJcbiAgICAgIC5jcmVhdGVPblVwZGF0ZVN0cmVhbShzdGF0ZSA9PiBzdGF0ZSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlZnJlc2goKSk7XHJcbiAgICB0aGlzLnBlcm1pc3Npb25TZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFBlcm1pc3Npb25TZXJ2aWNlKTtcclxuICAgIHRoaXMub3RoZXJzR3JvdXAgPSBpbmplY3Rvci5nZXQoT1RIRVJTX0dST1VQKTtcclxuICAgIHRoaXMuY29tcGFyZUZ1bmMgPSBpbmplY3Rvci5nZXQoU09SVF9DT01QQVJFX0ZVTkMpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGlzR3JhbnRlZCh7IHJlcXVpcmVkUG9saWN5IH06IFQpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnBlcm1pc3Npb25TZXJ2aWNlLmdldEdyYW50ZWRQb2xpY3kocmVxdWlyZWRQb2xpY3kpO1xyXG4gIH1cclxuXHJcbiAgaGFzQ2hpbGRyZW4oaWRlbnRpZmllcjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBub2RlID0gdGhpcy5maW5kKGl0ZW0gPT4gaXRlbVt0aGlzLmlkXSA9PT0gaWRlbnRpZmllcik7XHJcbiAgICByZXR1cm4gQm9vbGVhbihub2RlPy5jaGlsZHJlbj8ubGVuZ3RoKTtcclxuICB9XHJcblxyXG4gIGhhc0ludmlzaWJsZUNoaWxkKGlkZW50aWZpZXI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3Qgbm9kZSA9IHRoaXMuZmluZChpdGVtID0+IGl0ZW1bdGhpcy5pZF0gPT09IGlkZW50aWZpZXIpO1xyXG4gICAgcmV0dXJuIG5vZGU/LmNoaWxkcmVuPy5zb21lKGNoaWxkID0+IGNoaWxkLmludmlzaWJsZSkgfHwgZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBSb3V0ZXNTZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3ROYXZUcmVlU2VydmljZTxBQlAuUm91dGU+IHtcclxuICBwcml2YXRlIGhhc1BhdGhPckNoaWxkKGl0ZW06IFRyZWVOb2RlPEFCUC5Sb3V0ZT4pOiBib29sZWFuIHtcclxuICAgIHJldHVybiBCb29sZWFuKGl0ZW0ucGF0aCkgfHwgdGhpcy5oYXNDaGlsZHJlbihpdGVtLm5hbWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdyb3VwZWRWaXNpYmxlKCk6IFJvdXRlR3JvdXA8QUJQLlJvdXRlPltdIHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLmNyZWF0ZUdyb3VwZWRUcmVlKHRoaXMudmlzaWJsZS5maWx0ZXIoaXRlbSA9PiB0aGlzLmhhc1BhdGhPckNoaWxkKGl0ZW0pKSk7XHJcbiAgfVxyXG5cclxuICBnZXQgZ3JvdXBlZFZpc2libGUkKCk6IE9ic2VydmFibGU8Um91dGVHcm91cDxBQlAuUm91dGU+W10gfCB1bmRlZmluZWQ+IHtcclxuICAgIHJldHVybiB0aGlzLnZpc2libGUkLnBpcGUoXHJcbiAgICAgIG1hcChpdGVtcyA9PiBpdGVtcy5maWx0ZXIoaXRlbSA9PiB0aGlzLmhhc1BhdGhPckNoaWxkKGl0ZW0pKSksXHJcbiAgICAgIG1hcCh2aXNpYmxlID0+IHRoaXMuY3JlYXRlR3JvdXBlZFRyZWUodmlzaWJsZSkpLFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -68,13 +68,13 @@ export class SessionStateService {
|
|
|
68
68
|
this.store.patch({ language });
|
|
69
69
|
document.documentElement.setAttribute('lang', language);
|
|
70
70
|
}
|
|
71
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
72
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
71
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SessionStateService, deps: [{ token: i1.ConfigStateService }, { token: i2.AbpLocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
72
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SessionStateService, providedIn: 'root' }); }
|
|
73
73
|
}
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SessionStateService, decorators: [{
|
|
75
75
|
type: Injectable,
|
|
76
76
|
args: [{
|
|
77
77
|
providedIn: 'root',
|
|
78
78
|
}]
|
|
79
79
|
}], ctorParameters: () => [{ type: i1.ConfigStateService }, { type: i2.AbpLocalStorageService }] });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL3NlcnZpY2VzL3Nlc3Npb24tc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUtqRSxNQUFNLE9BQU8sbUJBQW1CO0lBTzlCLFlBQ1UsV0FBK0IsRUFDL0IsbUJBQTJDO1FBRDNDLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXdCO1FBUnBDLFVBQUssR0FBRyxJQUFJLGFBQWEsQ0FBQyxFQUFtQixDQUFDLENBQUM7UUFFeEQsdUJBQWtCLEdBQUcsR0FBRyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25GLENBQUMsQ0FBQztRQU1BLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxJQUFJO1FBQ1YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMv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QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcclxuaW1wb3J0IHsgZmlsdGVyLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTZXNzaW9uIH0gZnJvbSAnLi4vbW9kZWxzL3Nlc3Npb24nO1xyXG5pbXBvcnQgeyBDdXJyZW50VGVuYW50RHRvIH0gZnJvbSAnLi4vcHJveHkvdm9sby9hYnAvYXNwLW5ldC1jb3JlL212Yy9tdWx0aS10ZW5hbmN5L21vZGVscyc7XHJcbmltcG9ydCB7IEludGVybmFsU3RvcmUgfSBmcm9tICcuLi91dGlscy9pbnRlcm5hbC1zdG9yZS11dGlscyc7XHJcbmltcG9ydCB7IENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJy4vY29uZmlnLXN0YXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBYnBMb2NhbFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlc3Npb25TdGF0ZVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RvcmUgPSBuZXcgSW50ZXJuYWxTdG9yZSh7fSBhcyBTZXNzaW9uLlN0YXRlKTtcclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVMb2NhbFN0b3JhZ2UgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnYWJwU2Vzc2lvbicsIEpTT04uc3RyaW5naWZ5KHRoaXMuc3RvcmUuc3RhdGUpKTtcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgbG9jYWxTdG9yYWdlU2VydmljZTogQWJwTG9jYWxTdG9yYWdlU2VydmljZSxcclxuICApIHtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgdGhpcy5zZXRJbml0aWFsTGFuZ3VhZ2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdCgpIHtcclxuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgnYWJwU2Vzc2lvbicpO1xyXG4gICAgaWYgKHNlc3Npb24pIHtcclxuICAgICAgdGhpcy5zdG9yZS5zZXQoSlNPTi5wYXJzZShzZXNzaW9uKSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zdG9yZS5zbGljZVVwZGF0ZShzdGF0ZSA9PiBzdGF0ZSkuc3Vic2NyaWJlKHRoaXMudXBkYXRlTG9jYWxTdG9yYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0SW5pdGlhbExhbmd1YWdlKCkge1xyXG4gICAgY29uc3QgYXBwTGFuZ3VhZ2UgPSB0aGlzLmdldExhbmd1YWdlKCk7XHJcblxyXG4gICAgdGhpcy5jb25maWdTdGF0ZVxyXG4gICAgICAuZ2V0RGVlcCQoJ2xvY2FsaXphdGlvbi5jdXJyZW50Q3VsdHVyZS5jdWx0dXJlTmFtZScpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihjdWx0dXJlTmFtZSA9PiAhIWN1bHR1cmVOYW1lKSxcclxuICAgICAgICB0YWtlKDEpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUobGFuZyA9PiB7XHJcbiAgICAgICAgaWYgKGxhbmcuaW5jbHVkZXMoJzsnKSkge1xyXG4gICAgICAgICAgbGFuZyA9IGxhbmcuc3BsaXQoJzsnKVswXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGFwcExhbmd1YWdlICE9PSBsYW5nKSB7XHJcbiAgICAgICAgICB0aGlzLnNldExhbmd1YWdlKGxhbmcpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbkxhbmd1YWdlQ2hhbmdlJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLmxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIG9uVGVuYW50Q2hhbmdlJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNsaWNlVXBkYXRlKHN0YXRlID0+IHN0YXRlLnRlbmFudCk7XHJcbiAgfVxyXG5cclxuICBnZXRMYW5ndWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLnN0YXRlLmxhbmd1YWdlO1xyXG4gIH1cclxuXHJcbiAgZ2V0TGFuZ3VhZ2UkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS5sYW5ndWFnZSk7XHJcbiAgfVxyXG5cclxuICBnZXRUZW5hbnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zdGF0ZS50ZW5hbnQ7XHJcbiAgfVxyXG5cclxuICBnZXRUZW5hbnQkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2xpY2VTdGF0ZShzdGF0ZSA9PiBzdGF0ZS50ZW5hbnQpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGVuYW50KHRlbmFudDogQ3VycmVudFRlbmFudER0byB8IG51bGwpIHtcclxuICAgIGlmIChjb21wYXJlKHRlbmFudCwgdGhpcy5zdG9yZS5zdGF0ZS50ZW5hbnQpKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5zdG9yZS5zZXQoeyAuLi50aGlzLnN0b3JlLnN0YXRlLCB0ZW5hbnQgfSk7XHJcbiAgfVxyXG5cclxuICBzZXRMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKSB7XHJcbiAgICBpZiAobGFuZ3VhZ2UgPT09IHRoaXMuc3RvcmUuc3RhdGUubGFuZ3VhZ2UpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLnN0b3JlLnBhdGNoKHsgbGFuZ3VhZ2UgfSk7XHJcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKCdsYW5nJywgbGFuZ3VhZ2UpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -34,10 +34,10 @@ export class SubscriptionService {
|
|
|
34
34
|
this.subscription.unsubscribe();
|
|
35
35
|
this.subscription = new Subscription();
|
|
36
36
|
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
38
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SubscriptionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
38
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SubscriptionService }); }
|
|
39
39
|
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SubscriptionService, decorators: [{
|
|
41
41
|
type: Injectable
|
|
42
42
|
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUdwQyxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRVUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBOEMzQztJQTVDQyxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFRRCxNQUFNLENBQ0osT0FBc0IsRUFDdEIsY0FBNkMsRUFDN0MsS0FBNEI7UUFFNUIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxjQUF5QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BDLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUSxDQUFDLFlBQTZDO1FBQ3BELElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsU0FBUyxDQUFDLFlBQTZDO1FBQ3JELElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7OEdBOUNVLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgdHlwZSB7IE9ic2VydmFibGUsIFBhcnRpYWxPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFN1YnNjcmlwdGlvblNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBnZXQgaXNDbG9zZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb24uY2xvc2VkO1xyXG4gIH1cclxuXHJcbiAgYWRkT25lPFQ+KFxyXG4gICAgc291cmNlJDogT2JzZXJ2YWJsZTxUPixcclxuICAgIG5leHQ/OiAodmFsdWU6IFQpID0+IHZvaWQsXHJcbiAgICBlcnJvcj86IChlcnJvcjogYW55KSA9PiB2b2lkLFxyXG4gICk6IFN1YnNjcmlwdGlvbjtcclxuICBhZGRPbmU8VD4oc291cmNlJDogT2JzZXJ2YWJsZTxUPiwgb2JzZXJ2ZXI/OiBQYXJ0aWFsT2JzZXJ2ZXI8VD4pOiBTdWJzY3JpcHRpb247XHJcbiAgYWRkT25lPFQ+KFxyXG4gICAgc291cmNlJDogT2JzZXJ2YWJsZTxUPixcclxuICAgIG5leHRPck9ic2VydmVyPzogUGFydGlhbE9ic2VydmVyPFQ+IHwgTmV4dDxUPixcclxuICAgIGVycm9yPzogKGVycm9yOiBhbnkpID0+IHZvaWQsXHJcbiAgKTogU3Vic2NyaXB0aW9uIHtcclxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHNvdXJjZSQuc3Vic2NyaWJlKG5leHRPck9ic2VydmVyIGFzIE5leHQ8VD4sIGVycm9yKTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChzdWJzY3JpcHRpb24pO1xyXG4gICAgcmV0dXJuIHN1YnNjcmlwdGlvbjtcclxuICB9XHJcblxyXG4gIGNsb3NlQWxsKCkge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlT25lKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xyXG4gICAgdGhpcy5yZW1vdmVPbmUoc3Vic2NyaXB0aW9uKTtcclxuICAgIGlmIChzdWJzY3JpcHRpb24pIHtcclxuICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVPbmUoc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQgfCBudWxsKSB7XHJcbiAgICBpZiAoIXN1YnNjcmlwdGlvbikgcmV0dXJuO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24ucmVtb3ZlKHN1YnNjcmlwdGlvbik7XHJcbiAgfVxyXG5cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICB9XHJcbn1cclxuXHJcbnR5cGUgTmV4dDxUPiA9ICh2YWx1ZTogVCkgPT4gdm9pZDtcclxuIl19
|